@toclocoinc/lattice-grid 1.65.0 → 1.67.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/README.md +6 -4
- package/angular/LICENSE +111 -0
- package/angular/README.md +78 -0
- package/angular/fesm2022/toclocoinc-lattice-grid-angular.mjs +2843 -0
- package/angular/package.json +16 -0
- package/angular/types/toclocoinc-lattice-grid-angular.d.ts +1366 -0
- package/docs/API.html +741 -27
- package/docs/api-detail.html +137 -4
- package/lattice-grid.d.ts +9 -6
- package/lattice-grid.esm.min.js +26 -10
- package/lattice-grid.min.cjs +26 -10
- package/lattice-grid.min.css +1 -1
- package/lattice-grid.min.js +26 -10
- package/modules/ai.d.ts +1 -1
- package/modules/ai.esm.min.js +3 -3
- package/modules/ai.min.cjs +3 -3
- package/modules/ai.min.js +3 -3
- package/modules/angular.d.ts +1 -1
- package/modules/angular.esm.min.js +7 -7
- package/modules/angular.min.cjs +7 -7
- package/modules/angular.min.js +7 -7
- package/modules/chart-alluvial.d.ts +1 -1
- package/modules/chart-alluvial.esm.min.js +1 -1
- package/modules/chart-alluvial.min.cjs +1 -1
- package/modules/chart-alluvial.min.js +1 -1
- package/modules/chart-arc.d.ts +1 -1
- package/modules/chart-arc.esm.min.js +1 -1
- package/modules/chart-arc.min.cjs +1 -1
- package/modules/chart-arc.min.js +1 -1
- package/modules/chart-bubblemap.d.ts +1 -1
- package/modules/chart-bubblemap.esm.min.js +1 -1
- package/modules/chart-bubblemap.min.cjs +1 -1
- package/modules/chart-bubblemap.min.js +1 -1
- package/modules/chart-bump.d.ts +1 -1
- package/modules/chart-bump.esm.min.js +1 -1
- package/modules/chart-bump.min.cjs +1 -1
- package/modules/chart-bump.min.js +1 -1
- package/modules/chart-calendar.d.ts +1 -1
- package/modules/chart-calendar.esm.min.js +1 -1
- package/modules/chart-calendar.min.cjs +1 -1
- package/modules/chart-calendar.min.js +1 -1
- package/modules/chart-decomposition.d.ts +1 -1
- package/modules/chart-decomposition.esm.min.js +1 -1
- package/modules/chart-decomposition.min.cjs +1 -1
- package/modules/chart-decomposition.min.js +1 -1
- package/modules/chart-diverging.d.ts +1 -1
- package/modules/chart-diverging.esm.min.js +1 -1
- package/modules/chart-diverging.min.cjs +1 -1
- package/modules/chart-diverging.min.js +1 -1
- package/modules/chart-dumbbell.d.ts +1 -1
- package/modules/chart-dumbbell.esm.min.js +1 -1
- package/modules/chart-dumbbell.min.cjs +1 -1
- package/modules/chart-dumbbell.min.js +1 -1
- package/modules/chart-fan.d.ts +1 -1
- package/modules/chart-fan.esm.min.js +1 -1
- package/modules/chart-fan.min.cjs +1 -1
- package/modules/chart-fan.min.js +1 -1
- package/modules/chart-hexbin.d.ts +1 -1
- package/modules/chart-hexbin.esm.min.js +1 -1
- package/modules/chart-hexbin.min.cjs +1 -1
- package/modules/chart-hexbin.min.js +1 -1
- package/modules/chart-hexmap.d.ts +1 -1
- package/modules/chart-hexmap.esm.min.js +1 -1
- package/modules/chart-hexmap.min.cjs +1 -1
- package/modules/chart-hexmap.min.js +1 -1
- package/modules/chart-icicle.d.ts +1 -1
- package/modules/chart-icicle.esm.min.js +1 -1
- package/modules/chart-icicle.min.cjs +1 -1
- package/modules/chart-icicle.min.js +1 -1
- package/modules/chart-markermap.d.ts +1 -1
- package/modules/chart-markermap.esm.min.js +1 -1
- package/modules/chart-markermap.min.cjs +1 -1
- package/modules/chart-markermap.min.js +1 -1
- package/modules/chart-parallel.d.ts +1 -1
- package/modules/chart-parallel.esm.min.js +1 -1
- package/modules/chart-parallel.min.cjs +1 -1
- package/modules/chart-parallel.min.js +1 -1
- package/modules/chart-ridgeline.d.ts +1 -1
- package/modules/chart-ridgeline.esm.min.js +1 -1
- package/modules/chart-ridgeline.min.cjs +1 -1
- package/modules/chart-ridgeline.min.js +1 -1
- package/modules/chart-roc.d.ts +1 -1
- package/modules/chart-roc.esm.min.js +1 -1
- package/modules/chart-roc.min.cjs +1 -1
- package/modules/chart-roc.min.js +1 -1
- package/modules/chart-slope.d.ts +1 -1
- package/modules/chart-slope.esm.min.js +1 -1
- package/modules/chart-slope.min.cjs +1 -1
- package/modules/chart-slope.min.js +1 -1
- package/modules/chart-splom.d.ts +1 -1
- package/modules/chart-splom.esm.min.js +1 -1
- package/modules/chart-splom.min.cjs +1 -1
- package/modules/chart-splom.min.js +1 -1
- package/modules/chart-waffle.d.ts +1 -1
- package/modules/chart-waffle.esm.min.js +1 -1
- package/modules/chart-waffle.min.cjs +1 -1
- package/modules/chart-waffle.min.js +1 -1
- package/modules/charts.d.ts +1 -1
- package/modules/charts.esm.min.js +261 -48
- package/modules/charts.min.cjs +261 -48
- package/modules/charts.min.js +261 -48
- package/modules/data-router.d.ts +8 -3
- package/modules/data-router.esm.min.js +28 -6
- package/modules/data-router.min.cjs +28 -6
- package/modules/data-router.min.js +28 -6
- package/modules/devtools.d.ts +1 -1
- package/modules/devtools.esm.min.js +1 -1
- package/modules/devtools.min.cjs +1 -1
- package/modules/devtools.min.js +1 -1
- package/modules/dhtmlx-compat.d.ts +1 -1
- package/modules/dhtmlx-compat.esm.min.js +3 -3
- package/modules/dhtmlx-compat.min.cjs +3 -3
- package/modules/dhtmlx-compat.min.js +3 -3
- package/modules/gantt.d.ts +8 -3
- package/modules/gantt.esm.min.js +27 -4
- package/modules/gantt.min.cjs +27 -4
- package/modules/gantt.min.js +27 -4
- package/modules/geo-europe-nuts.d.ts +1 -1
- package/modules/geo-europe-nuts.esm.min.js +1 -1
- package/modules/geo-uk.d.ts +1 -1
- package/modules/geo-uk.esm.min.js +1 -1
- package/modules/geo-us-states.d.ts +1 -1
- package/modules/geo-us-states.esm.min.js +1 -1
- package/modules/geo-world-110m.d.ts +1 -1
- package/modules/geo-world-110m.esm.min.js +1 -1
- package/modules/geo-world-50m.d.ts +1 -1
- package/modules/geo-world-50m.esm.min.js +1 -1
- package/modules/htmx.d.ts +1 -1
- package/modules/htmx.esm.min.js +26 -10
- package/modules/htmx.min.cjs +26 -10
- package/modules/htmx.min.js +26 -10
- package/modules/kanban.d.ts +10 -3
- package/modules/kanban.esm.min.js +24 -4
- package/modules/kanban.min.cjs +24 -4
- package/modules/kanban.min.js +24 -4
- package/modules/kpi.d.ts +10 -3
- package/modules/kpi.esm.min.js +27 -4
- package/modules/kpi.min.cjs +27 -4
- package/modules/kpi.min.js +27 -4
- package/modules/layout.d.ts +1 -1
- package/modules/layout.esm.min.js +3 -3
- package/modules/layout.min.cjs +3 -3
- package/modules/layout.min.js +3 -3
- package/modules/mock-socket.d.ts +1 -1
- package/modules/mock-socket.esm.min.js +1 -1
- package/modules/mock-socket.min.cjs +1 -1
- package/modules/mock-socket.min.js +1 -1
- package/modules/react.d.ts +1 -1
- package/modules/react.esm.min.js +3 -3
- package/modules/react.min.cjs +3 -3
- package/modules/react.min.js +3 -3
- package/modules/svelte.d.ts +251 -2
- package/modules/svelte.esm.min.js +960 -6
- package/modules/svelte.min.cjs +942 -5
- package/modules/svelte.min.js +942 -5
- package/modules/tabs.d.ts +1 -1
- package/modules/tabs.esm.min.js +3 -3
- package/modules/tabs.min.cjs +3 -3
- package/modules/tabs.min.js +3 -3
- package/modules/vue.d.ts +398 -9
- package/modules/vue.esm.min.js +1163 -31
- package/modules/vue.min.cjs +1147 -30
- package/modules/vue.min.js +1147 -30
- package/modules/webcomponent.d.ts +233 -1
- package/modules/webcomponent.esm.min.js +1274 -41
- package/modules/webcomponent.min.cjs +1256 -41
- package/modules/webcomponent.min.js +1256 -41
- package/package.json +27 -2
- package/svelte/Chart.svelte +34 -0
- package/svelte/Gantt.svelte +34 -0
- package/svelte/Grid.svelte +30 -0
- package/svelte/GridProvider.svelte +13 -0
- package/svelte/KPI.svelte +34 -0
- package/svelte/Kanban.svelte +34 -0
- package/svelte/Layout.svelte +34 -0
- package/svelte/Router.svelte +16 -0
- package/svelte/Tabs.svelte +53 -0
package/modules/kanban.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kanban module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -215,7 +215,13 @@ interface KanbanSla {
|
|
|
215
215
|
interface KanbanConfig {
|
|
216
216
|
rows?: KanbanRow[];
|
|
217
217
|
grid?: unknown;
|
|
218
|
-
|
|
218
|
+
/**
|
|
219
|
+
* Card identity (a field or fn, returning a string or number); default
|
|
220
|
+
* 'id'. Composite (`string[]`) keys are core-grid-only: a board keys its
|
|
221
|
+
* own card identity from one value, so there is nothing for an array to
|
|
222
|
+
* join into here.
|
|
223
|
+
*/
|
|
224
|
+
rowKey?: string | ((row: KanbanRow) => string | number);
|
|
219
225
|
columnProperty?: string;
|
|
220
226
|
columns?: KanbanColumnDef[];
|
|
221
227
|
columnOrder?: string[];
|
|
@@ -376,7 +382,8 @@ interface KanbanFilters {
|
|
|
376
382
|
*/
|
|
377
383
|
interface Kanban {
|
|
378
384
|
readonly el: unknown | null;
|
|
379
|
-
|
|
385
|
+
/** The resolved card identity; see `KanbanConfig.rowKey`. */
|
|
386
|
+
readonly rowKey: string | ((row: KanbanRow) => string | number);
|
|
380
387
|
rows: KanbanRows;
|
|
381
388
|
/** The card-aging / SLA monitor, present only when a `sla` config was supplied. */
|
|
382
389
|
sla?: KanbanSla;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kanban module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -52,12 +52,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
52
52
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
53
53
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
54
54
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
55
|
-
const STAMPED_VERSION="1.
|
|
55
|
+
const STAMPED_VERSION="1.67.0";
|
|
56
56
|
async function resolveVersion(){
|
|
57
57
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
58
58
|
return STAMPED_VERSION;
|
|
59
59
|
}
|
|
60
|
-
const VERSION="1.
|
|
60
|
+
const VERSION="1.67.0";
|
|
61
61
|
const warned=new Set();
|
|
62
62
|
const WARNED_LIMIT=2000;
|
|
63
63
|
function rememberWarned(key){
|
|
@@ -444,8 +444,28 @@ if(isFunction(accessor))return accessor;
|
|
|
444
444
|
if(typeof accessor==='string')return(row)=>getPath(row,accessor);
|
|
445
445
|
return()=>undefined;
|
|
446
446
|
}
|
|
447
|
+
function rowKeyTypeName(v){
|
|
448
|
+
if(Array.isArray(v))return'array';
|
|
449
|
+
if(v===null)return'null';
|
|
450
|
+
return typeof v;
|
|
451
|
+
}
|
|
447
452
|
function keyFn(rowKey){
|
|
448
|
-
if(
|
|
453
|
+
if(rowKey!==undefined&&typeof rowKey!=='function'
|
|
454
|
+
&&!(typeof rowKey==='string'&&rowKey.length>0)){
|
|
455
|
+
throw new Error(
|
|
456
|
+
'lattice-kanban: rowKey must be a property name or a function; composite keys are not supported on boards.',
|
|
457
|
+
);
|
|
458
|
+
}
|
|
459
|
+
if(isFunction(rowKey)){
|
|
460
|
+
return(row)=>{
|
|
461
|
+
const key=rowKey(row);
|
|
462
|
+
if(typeof key==='string')return key;
|
|
463
|
+
if(typeof key==='number'&&Number.isFinite(key))return key;
|
|
464
|
+
throw new Error(
|
|
465
|
+
`lattice-kanban: rowKey function must return a string or number; got ${rowKeyTypeName(key)}.`,
|
|
466
|
+
);
|
|
467
|
+
};
|
|
468
|
+
}
|
|
449
469
|
const path=typeof rowKey==='string'?rowKey:'id';
|
|
450
470
|
return(row)=>getPath(row,path);
|
|
451
471
|
}
|
package/modules/kanban.min.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kanban module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
|
@@ -446,8 +446,28 @@ if(isFunction(accessor))return accessor;
|
|
|
446
446
|
if(typeof accessor==='string')return(row)=>getPath(row,accessor);
|
|
447
447
|
return()=>undefined;
|
|
448
448
|
}
|
|
449
|
+
function rowKeyTypeName(v){
|
|
450
|
+
if(Array.isArray(v))return'array';
|
|
451
|
+
if(v===null)return'null';
|
|
452
|
+
return typeof v;
|
|
453
|
+
}
|
|
449
454
|
function keyFn(rowKey){
|
|
450
|
-
if(
|
|
455
|
+
if(rowKey!==undefined&&typeof rowKey!=='function'
|
|
456
|
+
&&!(typeof rowKey==='string'&&rowKey.length>0)){
|
|
457
|
+
throw new Error(
|
|
458
|
+
'lattice-kanban: rowKey must be a property name or a function; composite keys are not supported on boards.',
|
|
459
|
+
);
|
|
460
|
+
}
|
|
461
|
+
if(isFunction(rowKey)){
|
|
462
|
+
return(row)=>{
|
|
463
|
+
const key=rowKey(row);
|
|
464
|
+
if(typeof key==='string')return key;
|
|
465
|
+
if(typeof key==='number'&&Number.isFinite(key))return key;
|
|
466
|
+
throw new Error(
|
|
467
|
+
`lattice-kanban: rowKey function must return a string or number; got ${rowKeyTypeName(key)}.`,
|
|
468
|
+
);
|
|
469
|
+
};
|
|
470
|
+
}
|
|
451
471
|
const path=typeof rowKey==='string'?rowKey:'id';
|
|
452
472
|
return(row)=>getPath(row,path);
|
|
453
473
|
}
|
package/modules/kanban.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kanban module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
|
@@ -446,8 +446,28 @@ if(isFunction(accessor))return accessor;
|
|
|
446
446
|
if(typeof accessor==='string')return(row)=>getPath(row,accessor);
|
|
447
447
|
return()=>undefined;
|
|
448
448
|
}
|
|
449
|
+
function rowKeyTypeName(v){
|
|
450
|
+
if(Array.isArray(v))return'array';
|
|
451
|
+
if(v===null)return'null';
|
|
452
|
+
return typeof v;
|
|
453
|
+
}
|
|
449
454
|
function keyFn(rowKey){
|
|
450
|
-
if(
|
|
455
|
+
if(rowKey!==undefined&&typeof rowKey!=='function'
|
|
456
|
+
&&!(typeof rowKey==='string'&&rowKey.length>0)){
|
|
457
|
+
throw new Error(
|
|
458
|
+
'lattice-kanban: rowKey must be a property name or a function; composite keys are not supported on boards.',
|
|
459
|
+
);
|
|
460
|
+
}
|
|
461
|
+
if(isFunction(rowKey)){
|
|
462
|
+
return(row)=>{
|
|
463
|
+
const key=rowKey(row);
|
|
464
|
+
if(typeof key==='string')return key;
|
|
465
|
+
if(typeof key==='number'&&Number.isFinite(key))return key;
|
|
466
|
+
throw new Error(
|
|
467
|
+
`lattice-kanban: rowKey function must return a string or number; got ${rowKeyTypeName(key)}.`,
|
|
468
|
+
);
|
|
469
|
+
};
|
|
470
|
+
}
|
|
451
471
|
const path=typeof rowKey==='string'?rowKey:'id';
|
|
452
472
|
return(row)=>getPath(row,path);
|
|
453
473
|
}
|
package/modules/kpi.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kpi module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -224,7 +224,13 @@ interface KPIEvent {
|
|
|
224
224
|
interface KPIConfig {
|
|
225
225
|
rows?: KPIRow[];
|
|
226
226
|
grid?: unknown;
|
|
227
|
-
|
|
227
|
+
/**
|
|
228
|
+
* Row identity (a field or fn, returning a string or number); default
|
|
229
|
+
* 'id'. Composite (`string[]`) keys are core-grid-only: a panel keys its
|
|
230
|
+
* own tile identity from one value, so there is nothing for an array to
|
|
231
|
+
* join into here.
|
|
232
|
+
*/
|
|
233
|
+
rowKey?: string | ((row: KPIRow) => string | number);
|
|
228
234
|
/**
|
|
229
235
|
* Extra columns of the bound `grid` to project onto the rows a tile `filter`
|
|
230
236
|
* sees, beyond the fields the tiles themselves declare. A grid-bound panel
|
|
@@ -274,7 +280,8 @@ interface KPIRows {
|
|
|
274
280
|
*/
|
|
275
281
|
interface KPI {
|
|
276
282
|
readonly el: unknown | null;
|
|
277
|
-
|
|
283
|
+
/** The resolved row identity; see `KPIConfig.rowKey`. */
|
|
284
|
+
readonly rowKey: string | ((row: KPIRow) => string | number);
|
|
278
285
|
/** Whether the panel renders as a hierarchy rather than a flat tile grid. */
|
|
279
286
|
readonly tree: boolean;
|
|
280
287
|
rows: KPIRows;
|
package/modules/kpi.esm.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kpi module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -52,12 +52,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
52
52
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
53
53
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
54
54
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
55
|
-
const STAMPED_VERSION="1.
|
|
55
|
+
const STAMPED_VERSION="1.67.0";
|
|
56
56
|
async function resolveVersion(){
|
|
57
57
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
58
58
|
return STAMPED_VERSION;
|
|
59
59
|
}
|
|
60
|
-
const VERSION="1.
|
|
60
|
+
const VERSION="1.67.0";
|
|
61
61
|
const warned=new Set();
|
|
62
62
|
const WARNED_LIMIT=2000;
|
|
63
63
|
function rememberWarned(key){
|
|
@@ -5854,8 +5854,30 @@ onTileContextMenu:'tile:contextmenu',
|
|
|
5854
5854
|
onNodeToggle:'node:toggle',
|
|
5855
5855
|
onChange:'change',
|
|
5856
5856
|
});
|
|
5857
|
+
function rowKeyTypeName(v){
|
|
5858
|
+
if(Array.isArray(v))return'array';
|
|
5859
|
+
if(v===null)return'null';
|
|
5860
|
+
return typeof v;
|
|
5861
|
+
}
|
|
5862
|
+
function assertRowKeyShape(rowKey){
|
|
5863
|
+
if(rowKey===undefined)return;
|
|
5864
|
+
if(typeof rowKey==='string'&&rowKey.length>0)return;
|
|
5865
|
+
if(typeof rowKey==='function')return;
|
|
5866
|
+
throw new Error(
|
|
5867
|
+
'lattice-kpi: rowKey must be a property name or a function; composite keys are not supported on tiles.',
|
|
5868
|
+
);
|
|
5869
|
+
}
|
|
5857
5870
|
function keyFn(rowKey){
|
|
5858
|
-
if(isFunction(rowKey))
|
|
5871
|
+
if(isFunction(rowKey)){
|
|
5872
|
+
return(row)=>{
|
|
5873
|
+
const key=rowKey(row);
|
|
5874
|
+
if(typeof key==='string')return key;
|
|
5875
|
+
if(typeof key==='number'&&Number.isFinite(key))return key;
|
|
5876
|
+
throw new Error(
|
|
5877
|
+
`lattice-kpi: rowKey function must return a string or number; got ${rowKeyTypeName(key)}.`,
|
|
5878
|
+
);
|
|
5879
|
+
};
|
|
5880
|
+
}
|
|
5859
5881
|
const get=pathGetter(typeof rowKey==='string'&&rowKey?rowKey:'id');
|
|
5860
5882
|
return(row)=>get(row);
|
|
5861
5883
|
}
|
|
@@ -6036,6 +6058,7 @@ return rows;
|
|
|
6036
6058
|
}
|
|
6037
6059
|
function createKPI(el,config={}){
|
|
6038
6060
|
const cfg=isObject(config)?config:{};
|
|
6061
|
+
assertRowKeyShape(cfg.rowKey);
|
|
6039
6062
|
const gridBound=!!cfg.grid&&!Array.isArray(cfg.rows);
|
|
6040
6063
|
const key=gridBound?keyFn('__kpiKey'):keyFn(cfg.rowKey);
|
|
6041
6064
|
const nullText=typeof cfg.nullText==='string'?cfg.nullText:'—';
|
package/modules/kpi.min.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kpi module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
|
@@ -5856,8 +5856,30 @@ onTileContextMenu:'tile:contextmenu',
|
|
|
5856
5856
|
onNodeToggle:'node:toggle',
|
|
5857
5857
|
onChange:'change',
|
|
5858
5858
|
});
|
|
5859
|
+
function rowKeyTypeName(v){
|
|
5860
|
+
if(Array.isArray(v))return'array';
|
|
5861
|
+
if(v===null)return'null';
|
|
5862
|
+
return typeof v;
|
|
5863
|
+
}
|
|
5864
|
+
function assertRowKeyShape(rowKey){
|
|
5865
|
+
if(rowKey===undefined)return;
|
|
5866
|
+
if(typeof rowKey==='string'&&rowKey.length>0)return;
|
|
5867
|
+
if(typeof rowKey==='function')return;
|
|
5868
|
+
throw new Error(
|
|
5869
|
+
'lattice-kpi: rowKey must be a property name or a function; composite keys are not supported on tiles.',
|
|
5870
|
+
);
|
|
5871
|
+
}
|
|
5859
5872
|
function keyFn(rowKey){
|
|
5860
|
-
if(isFunction(rowKey))
|
|
5873
|
+
if(isFunction(rowKey)){
|
|
5874
|
+
return(row)=>{
|
|
5875
|
+
const key=rowKey(row);
|
|
5876
|
+
if(typeof key==='string')return key;
|
|
5877
|
+
if(typeof key==='number'&&Number.isFinite(key))return key;
|
|
5878
|
+
throw new Error(
|
|
5879
|
+
`lattice-kpi: rowKey function must return a string or number; got ${rowKeyTypeName(key)}.`,
|
|
5880
|
+
);
|
|
5881
|
+
};
|
|
5882
|
+
}
|
|
5861
5883
|
const get=pathGetter(typeof rowKey==='string'&&rowKey?rowKey:'id');
|
|
5862
5884
|
return(row)=>get(row);
|
|
5863
5885
|
}
|
|
@@ -6038,6 +6060,7 @@ return rows;
|
|
|
6038
6060
|
}
|
|
6039
6061
|
function createKPI(el,config={}){
|
|
6040
6062
|
const cfg=isObject(config)?config:{};
|
|
6063
|
+
assertRowKeyShape(cfg.rowKey);
|
|
6041
6064
|
const gridBound=!!cfg.grid&&!Array.isArray(cfg.rows);
|
|
6042
6065
|
const key=gridBound?keyFn('__kpiKey'):keyFn(cfg.rowKey);
|
|
6043
6066
|
const nullText=typeof cfg.nullText==='string'?cfg.nullText:'—';
|
package/modules/kpi.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, kpi module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
|
@@ -5856,8 +5856,30 @@ onTileContextMenu:'tile:contextmenu',
|
|
|
5856
5856
|
onNodeToggle:'node:toggle',
|
|
5857
5857
|
onChange:'change',
|
|
5858
5858
|
});
|
|
5859
|
+
function rowKeyTypeName(v){
|
|
5860
|
+
if(Array.isArray(v))return'array';
|
|
5861
|
+
if(v===null)return'null';
|
|
5862
|
+
return typeof v;
|
|
5863
|
+
}
|
|
5864
|
+
function assertRowKeyShape(rowKey){
|
|
5865
|
+
if(rowKey===undefined)return;
|
|
5866
|
+
if(typeof rowKey==='string'&&rowKey.length>0)return;
|
|
5867
|
+
if(typeof rowKey==='function')return;
|
|
5868
|
+
throw new Error(
|
|
5869
|
+
'lattice-kpi: rowKey must be a property name or a function; composite keys are not supported on tiles.',
|
|
5870
|
+
);
|
|
5871
|
+
}
|
|
5859
5872
|
function keyFn(rowKey){
|
|
5860
|
-
if(isFunction(rowKey))
|
|
5873
|
+
if(isFunction(rowKey)){
|
|
5874
|
+
return(row)=>{
|
|
5875
|
+
const key=rowKey(row);
|
|
5876
|
+
if(typeof key==='string')return key;
|
|
5877
|
+
if(typeof key==='number'&&Number.isFinite(key))return key;
|
|
5878
|
+
throw new Error(
|
|
5879
|
+
`lattice-kpi: rowKey function must return a string or number; got ${rowKeyTypeName(key)}.`,
|
|
5880
|
+
);
|
|
5881
|
+
};
|
|
5882
|
+
}
|
|
5861
5883
|
const get=pathGetter(typeof rowKey==='string'&&rowKey?rowKey:'id');
|
|
5862
5884
|
return(row)=>get(row);
|
|
5863
5885
|
}
|
|
@@ -6038,6 +6060,7 @@ return rows;
|
|
|
6038
6060
|
}
|
|
6039
6061
|
function createKPI(el,config={}){
|
|
6040
6062
|
const cfg=isObject(config)?config:{};
|
|
6063
|
+
assertRowKeyShape(cfg.rowKey);
|
|
6041
6064
|
const gridBound=!!cfg.grid&&!Array.isArray(cfg.rows);
|
|
6042
6065
|
const key=gridBound?keyFn('__kpiKey'):keyFn(cfg.rowKey);
|
|
6043
6066
|
const nullText=typeof cfg.nullText==='string'?cfg.nullText:'—';
|
package/modules/layout.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, layout module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -52,12 +52,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
52
52
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
53
53
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
54
54
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
55
|
-
const STAMPED_VERSION="1.
|
|
55
|
+
const STAMPED_VERSION="1.67.0";
|
|
56
56
|
async function resolveVersion(){
|
|
57
57
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
58
58
|
return STAMPED_VERSION;
|
|
59
59
|
}
|
|
60
|
-
const VERSION="1.
|
|
60
|
+
const VERSION="1.67.0";
|
|
61
61
|
const warned=new Set();
|
|
62
62
|
const WARNED_LIMIT=2000;
|
|
63
63
|
function rememberWarned(key){
|
package/modules/layout.min.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, layout module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
package/modules/layout.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, layout module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
package/modules/mock-socket.d.ts
CHANGED
package/modules/react.d.ts
CHANGED
package/modules/react.esm.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, react module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -52,12 +52,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
52
52
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
53
53
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
54
54
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
55
|
-
const STAMPED_VERSION="1.
|
|
55
|
+
const STAMPED_VERSION="1.67.0";
|
|
56
56
|
async function resolveVersion(){
|
|
57
57
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
58
58
|
return STAMPED_VERSION;
|
|
59
59
|
}
|
|
60
|
-
const VERSION="1.
|
|
60
|
+
const VERSION="1.67.0";
|
|
61
61
|
const warned=new Set();
|
|
62
62
|
const WARNED_LIMIT=2000;
|
|
63
63
|
function rememberWarned(key){
|
package/modules/react.min.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, react module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
package/modules/react.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.67.0, react module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -54,12 +54,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
54
54
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
55
55
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
56
56
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
57
|
-
const STAMPED_VERSION="1.
|
|
57
|
+
const STAMPED_VERSION="1.67.0";
|
|
58
58
|
async function resolveVersion(){
|
|
59
59
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
60
60
|
return STAMPED_VERSION;
|
|
61
61
|
}
|
|
62
|
-
const VERSION="1.
|
|
62
|
+
const VERSION="1.67.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|