Skip to content

@mieweb/ui/datavis (NITRO grid) imports an unpublished datavis package — subpath unbuildable #250

@horner

Description

@horner

@mieweb/ui/datavis (NITRO grid) is unusable — imports an unpublished datavis package

Summary

The NITRO grid exported from the @mieweb/ui/datavis subpath cannot be built by
consumers. Its compiled bundle (dist/datavis.js) imports modules from a bare
datavis package that is not declared as a dependency and is not published
to any registry
. Installing the one declared peer (datavis-ace) is not
sufficient.

  • Affected version: @mieweb/ui@0.6.1
  • Affected export: @mieweb/ui/datavis (DataVisNitroGrid, DataVisNitroSource)

Details

dist/datavis.js resolves two distinct packages:

Import specifier Provides Status
datavis-ace (Source, ComputedView) data/compute engine Declared as an optional peer dep (datavis-ace@4.0.0-PRE.2); published to npm; installable
datavis/src/components/DataGrid, datavis/src/adapters/*, datavis/src/components/table/TableRenderer the actual grid React UI Not in peerDependencies/dependencies; not resolvable

The published datavis-ace@4.0.0-PRE.2 tarball contains only the engine (34
files, src/**/*.js) — no React components, no DataGrid/TableRenderer. So
the grid UI imports remain unresolved even after installing it.

The datavis React-component package is not available under any public name we
could find:

  • datavis → resolves to an unrelated legacy 1.0.0 package (HTML/CSS + vim
    swap files), not these components.
  • @mieweb/datavis, @mieweb/datavis-react, datavis-react, @datavis/react
    → all 404.

Reproduction

npm install @mieweb/ui@0.6.1 datavis-ace@4.0.0-PRE.2
// Any module that pulls in the NITRO grid:
import { DataVisNitroGrid, DataVisNitroSource } from '@mieweb/ui/datavis';

A production build (Vite/Rollup/webpack) fails to resolve
datavis/src/components/DataGrid (and the sibling datavis/src/... imports).

node -e "require.resolve('datavis/src/components/DataGrid')"
# Error: Cannot find module 'datavis/src/components/DataGrid' (MODULE_NOT_FOUND)

Secondary issue: local-data API is not surfaced

Even if the package resolved, DataVisNitroSource type="local" exposes no
declarative data prop. It constructs new Source({ type: 'local' }) and a
ComputedView, then provides them via React context. Feeding an in-memory array
appears to require imperative datavis-ace Source/ComputedView calls that
@mieweb/ui does not re-export or document. Please document (or add a data
prop / rows convenience) for the common "render a local array" case.

Suggested fixes (any one unblocks consumers)

  1. Bundle the datavis/src/... component sources into dist/datavis.js so
    the subpath has no external bare datavis import.
  2. Publish the datavis React-component package and declare it as a
    (peer) dependency of @mieweb/ui, with an accurate version range.
  3. Document the required install set and the local-data loading API for the
    NITRO grid.

Metadata

Metadata

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions