tsgrid-ui 2.10.0 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,43 @@
2
2
 
3
3
  All notable changes to **TsGrid UI** will be documented in this file.
4
4
 
5
+ ## v2.11.0 — 2026-05-15
6
+
7
+ ### Added: `tsgrid-ui/grid` ESM subpath
8
+
9
+ The `./grid` subpath is now available, resolving amendment #983 which deferred this entry at v2.8.0
10
+ pending the introduction of `splitting: true`. With tsup `splitting: true` active since v2.8.1, the
11
+ deduplication guarantee is in place: `import { TsGrid } from 'tsgrid-ui/grid'` resolves to the same
12
+ class identity as the barrel `import { TsGrid } from 'tsgrid-ui'`. The 12-subpath surface is now
13
+ complete.
14
+
15
+ ### Implementation
16
+
17
+ - `tsup.config.ts`: added `'grid.es6': 'src/tsgrid.ts'` to the ESM entry block and `'grid': 'src/tsgrid.ts'` to the dts-only entry block. No stub file created — direct-source entry, matching the `./popup` pattern.
18
+ - `package.json#exports`: inserted `"./grid": { "types": "./dist/grid.d.ts", "import": "./dist/grid.es6.js" }` after `./form`. No `require` condition (ESM-only). Total exports keys: 15.
19
+ - `scripts/bundle-snapshot.mjs`: appended `grid` entry to `SUBPATH_INVENTORY` (12 subpaths total).
20
+ - `test/unit/subpath-exports.test.ts`: `SUBPATHS` array includes `'grid'`; count assertion bumped 14 → 15.
21
+ - `test/unit/bundle-snapshot.test.ts`: new `describe('subpathEffective block (v2.11.0+)')` suite with 12-key assertion, effectiveBytes range guard, and determinism test.
22
+ - `test/consumer-smoke.ts`: added `TsGrid` value import and all 9 public grid type-only imports from `tsgrid-ui/grid`.
23
+ - `reports/bundle/v2.11.0-baseline.json`: generated and committed (schema v3, 12 subpathEffective entries). Built with tsup 8.5.1.
24
+
25
+ ### Known limitations
26
+
27
+ - **CSS pairing required**: consumers importing `tsgrid-ui/grid` MUST also import `tsgrid-ui/css`
28
+ (or `dist/tsgrid-ui.css` directly) for styles. A per-component CSS split is tracked in a future
29
+ `grid-css-pairing` cycle.
30
+ - **ESM-only**: no `require` condition in `exports["./grid"]`. CJS subpath parity will land
31
+ uniformly across all 12 subpaths in Phase 4 of the v3.0 roadmap.
32
+ - **Effective load**: `tsgrid-ui/grid` transitively loads ~704 KB of shared chunks (measured in
33
+ v2.11.0 baseline) because `grid-render.ts` pulls in `tstoolbar`, `tstooltip`, and `tsfield`. The
34
+ real tree-shaking benefit accrues to consumers using grid AND NOT form/sidebar/etc. who can avoid
35
+ loading those transitive deps.
36
+
37
+ ### BC
38
+
39
+ - Public API surface: **purely additive**. All existing imports (`tsgrid-ui`, all 11 prior subpaths) work unchanged.
40
+ - SEMVER MINOR per SemVer §7. No breaking changes.
41
+
5
42
  ## v2.10.0 — 2026-05-15
6
43
 
7
44
  ### Tree-shake-friendly lazy singletons