@toclocoinc/lattice-grid 1.64.0 → 1.66.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 -3
- 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 +791 -8
- package/docs/api-detail.html +172 -4
- package/lattice-grid.d.ts +241 -205
- package/lattice-grid.esm.min.js +19 -7
- package/lattice-grid.min.cjs +19 -7
- package/lattice-grid.min.css +1 -1
- package/lattice-grid.min.js +19 -7
- package/modules/ai.d.ts +10 -13
- 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 +2 -2
- package/modules/angular.esm.min.js +433 -7
- package/modules/angular.min.cjs +433 -7
- package/modules/angular.min.js +433 -7
- package/modules/chart-alluvial.d.ts +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +4 -5
- 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 +5 -6
- package/modules/data-router.esm.min.js +3 -3
- package/modules/data-router.min.cjs +3 -3
- package/modules/data-router.min.js +3 -3
- 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 +37 -43
- package/modules/gantt.esm.min.js +3 -3
- package/modules/gantt.min.cjs +3 -3
- package/modules/gantt.min.js +3 -3
- package/modules/geo-europe-nuts.d.ts +2 -2
- package/modules/geo-europe-nuts.esm.min.js +1 -1
- package/modules/geo-uk.d.ts +2 -2
- package/modules/geo-uk.esm.min.js +1 -1
- package/modules/geo-us-states.d.ts +2 -2
- package/modules/geo-us-states.esm.min.js +1 -1
- package/modules/geo-world-110m.d.ts +2 -2
- package/modules/geo-world-110m.esm.min.js +1 -1
- package/modules/geo-world-50m.d.ts +2 -2
- package/modules/geo-world-50m.esm.min.js +1 -1
- package/modules/htmx.d.ts +2 -2
- package/modules/htmx.esm.min.js +19 -7
- package/modules/htmx.min.cjs +19 -7
- package/modules/htmx.min.js +19 -7
- package/modules/kanban.d.ts +14 -14
- package/modules/kanban.esm.min.js +3 -3
- package/modules/kanban.min.cjs +3 -3
- package/modules/kanban.min.js +3 -3
- package/modules/kpi.d.ts +5 -5
- package/modules/kpi.esm.min.js +3 -3
- package/modules/kpi.min.cjs +3 -3
- package/modules/kpi.min.js +3 -3
- package/modules/layout.d.ts +2 -2
- 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 +4 -5
- 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 +252 -4
- 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 +2 -3
- 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 +234 -2
- package/modules/webcomponent.esm.min.js +1267 -38
- package/modules/webcomponent.min.cjs +1249 -38
- package/modules/webcomponent.min.js +1249 -38
- 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
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, data-router 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.66.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.66.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, data-router 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.66.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.66.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
package/modules/devtools.d.ts
CHANGED
package/modules/devtools.min.cjs
CHANGED
package/modules/devtools.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, dhtmlx-compat module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -62,12 +62,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
62
62
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
63
63
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
64
64
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
65
|
-
const STAMPED_VERSION="1.
|
|
65
|
+
const STAMPED_VERSION="1.66.0";
|
|
66
66
|
async function resolveVersion(){
|
|
67
67
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
68
68
|
return STAMPED_VERSION;
|
|
69
69
|
}
|
|
70
|
-
const VERSION="1.
|
|
70
|
+
const VERSION="1.66.0";
|
|
71
71
|
const warned=new Set();
|
|
72
72
|
const WARNED_LIMIT=2000;
|
|
73
73
|
function rememberWarned(key){
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, dhtmlx-compat module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -63,12 +63,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
63
63
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
64
64
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
65
65
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
66
|
-
const STAMPED_VERSION="1.
|
|
66
|
+
const STAMPED_VERSION="1.66.0";
|
|
67
67
|
async function resolveVersion(){
|
|
68
68
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
69
69
|
return STAMPED_VERSION;
|
|
70
70
|
}
|
|
71
|
-
const VERSION="1.
|
|
71
|
+
const VERSION="1.66.0";
|
|
72
72
|
const warned=new Set();
|
|
73
73
|
const WARNED_LIMIT=2000;
|
|
74
74
|
function rememberWarned(key){
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, dhtmlx-compat module
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -63,12 +63,12 @@ Object.defineProperty(__exports,"frameBatched",{enumerable:true,get:function(){r
|
|
|
63
63
|
Object.defineProperty(__exports,"settleDebounce",{enumerable:true,get:function(){return settleDebounce;}});
|
|
64
64
|
Object.defineProperty(__exports,"whenIdle",{enumerable:true,get:function(){return whenIdle;}});
|
|
65
65
|
Object.defineProperty(__exports,"uid",{enumerable:true,get:function(){return uid;}});
|
|
66
|
-
const STAMPED_VERSION="1.
|
|
66
|
+
const STAMPED_VERSION="1.66.0";
|
|
67
67
|
async function resolveVersion(){
|
|
68
68
|
if(STAMPED_VERSION!=='0.0.0-source')return STAMPED_VERSION;
|
|
69
69
|
return STAMPED_VERSION;
|
|
70
70
|
}
|
|
71
|
-
const VERSION="1.
|
|
71
|
+
const VERSION="1.66.0";
|
|
72
72
|
const warned=new Set();
|
|
73
73
|
const WARNED_LIMIT=2000;
|
|
74
74
|
function rememberWarned(key){
|
package/modules/gantt.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, gantt module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -42,14 +42,14 @@ export interface GanttTask {
|
|
|
42
42
|
assignees?: string[];
|
|
43
43
|
owner?: string;
|
|
44
44
|
/**
|
|
45
|
-
* Explicit resource assignments with fractional units
|
|
45
|
+
* Explicit resource assignments with fractional units:
|
|
46
46
|
* `units` is a multiplier where 1 is a full-time booking. Use this when a
|
|
47
47
|
* task books a resource at less (or more) than 100%; a bare `assignee` is
|
|
48
48
|
* `units: 1`.
|
|
49
49
|
*/
|
|
50
50
|
assignments?: Array<{ resource?: string; name?: string; id?: string; units?: number }>;
|
|
51
51
|
/**
|
|
52
|
-
* The task's effort, in one of two forms
|
|
52
|
+
* The task's effort, in one of two forms.
|
|
53
53
|
*
|
|
54
54
|
* A **number** is the task's TOTAL hours; the workload band divides it
|
|
55
55
|
* between the assignments in proportion to their units and spreads each
|
|
@@ -73,20 +73,18 @@ export interface GanttTask {
|
|
|
73
73
|
/** An explicit row height (px) for the split view; applied to both panels. */
|
|
74
74
|
height?: number;
|
|
75
75
|
/**
|
|
76
|
-
* The budgeted cost (BAC) for earned-value analysis
|
|
76
|
+
* The budgeted cost (BAC) for earned-value analysis. When
|
|
77
77
|
* omitted the task's duration is used as the budget, giving schedule-only EVM.
|
|
78
78
|
*/
|
|
79
79
|
cost?: number;
|
|
80
80
|
/**
|
|
81
|
-
* The actual cost incurred (ACWP) for earned-value analysis
|
|
82
|
-
* (BACKLOG-0000958). Left out, the task's cost variance/CPI are `null`.
|
|
81
|
+
* The actual cost incurred (ACWP) for earned-value analysis. Left out, the task's cost variance/CPI are `null`.
|
|
83
82
|
*/
|
|
84
83
|
actualCost?: number;
|
|
85
84
|
}
|
|
86
85
|
|
|
87
86
|
/**
|
|
88
|
-
* Resource capacities for over-allocation detection and leveling
|
|
89
|
-
* (BACKLOG-0000948): either a list of resources with a capacity (max
|
|
87
|
+
* Resource capacities for over-allocation detection and leveling: either a list of resources with a capacity (max
|
|
90
88
|
* concurrent units, default 1) or a name→capacity map.
|
|
91
89
|
*/
|
|
92
90
|
export type GanttResourceSpec =
|
|
@@ -97,8 +95,7 @@ export type GanttResourceSpec =
|
|
|
97
95
|
* A typed dependency between two tasks (by id), with optional lag/lead. `type`
|
|
98
96
|
* defaults to `'FS'`; either endpoint may be a leaf or a summary.
|
|
99
97
|
*
|
|
100
|
-
* `type` also accepts the MS Project string shorthand — `'FS+2'`, `'SS-1'
|
|
101
|
-
* (BACKLOG-0001072). It is normalised to the structured form on the way in, so
|
|
98
|
+
* `type` also accepts the MS Project string shorthand — `'FS+2'`, `'SS-1'`. It is normalised to the structured form on the way in, so
|
|
102
99
|
* `gantt.dependencies` always reads back `{ type, lag }` and there is no second
|
|
103
100
|
* internal representation. Giving both a shorthand lag and a conflicting `lag`
|
|
104
101
|
* field warns; the explicit field wins.
|
|
@@ -158,9 +155,9 @@ interface GanttSchedule {
|
|
|
158
155
|
conflicts?: GanttConflict[];
|
|
159
156
|
/** Whether a working-time calendar was applied. */
|
|
160
157
|
calendar?: boolean;
|
|
161
|
-
/** The resource over-allocations for this schedule
|
|
158
|
+
/** The resource over-allocations for this schedule. */
|
|
162
159
|
overAllocations?: GanttOverAllocation[];
|
|
163
|
-
/** The full resource-load report for this schedule
|
|
160
|
+
/** The full resource-load report for this schedule. */
|
|
164
161
|
resourceLoad?: GanttResourceLoad;
|
|
165
162
|
}
|
|
166
163
|
|
|
@@ -172,7 +169,7 @@ interface GanttResourceSegment {
|
|
|
172
169
|
taskIds: string[];
|
|
173
170
|
}
|
|
174
171
|
|
|
175
|
-
/** A resource booked beyond its capacity across concurrent tasks
|
|
172
|
+
/** A resource booked beyond its capacity across concurrent tasks. */
|
|
176
173
|
interface GanttOverAllocation {
|
|
177
174
|
resource: string;
|
|
178
175
|
capacity: number;
|
|
@@ -182,7 +179,7 @@ interface GanttOverAllocation {
|
|
|
182
179
|
taskIds: string[];
|
|
183
180
|
}
|
|
184
181
|
|
|
185
|
-
/** The per-resource load and the over-allocations across a schedule
|
|
182
|
+
/** The per-resource load and the over-allocations across a schedule. */
|
|
186
183
|
interface GanttResourceLoad {
|
|
187
184
|
ok: boolean;
|
|
188
185
|
resources: Array<{ resource: string; capacity: number; peak: number; segments: GanttResourceSegment[] }>;
|
|
@@ -190,7 +187,7 @@ interface GanttResourceLoad {
|
|
|
190
187
|
byResource: Map<string, { capacity: number; peak: number; segments: GanttResourceSegment[] }>;
|
|
191
188
|
}
|
|
192
189
|
|
|
193
|
-
/** The result of resource leveling: the shifted tasks and what moved
|
|
190
|
+
/** The result of resource leveling: the shifted tasks and what moved. */
|
|
194
191
|
interface GanttLevelResult {
|
|
195
192
|
ok: boolean;
|
|
196
193
|
resolved?: boolean;
|
|
@@ -229,7 +226,7 @@ export function findViolations(tasks: GanttTask[], schedule: GanttSchedule): Gan
|
|
|
229
226
|
/** Format an engine day-number as an ISO calendar date (`YYYY-MM-DD`, UTC). */
|
|
230
227
|
export function toISODate(day: number): string | null;
|
|
231
228
|
|
|
232
|
-
/** Earned-value metrics for one task or the whole project
|
|
229
|
+
/** Earned-value metrics for one task or the whole project. */
|
|
233
230
|
interface GanttEarnedValueRow {
|
|
234
231
|
id: string;
|
|
235
232
|
name: string;
|
|
@@ -258,7 +255,7 @@ interface GanttEarnedValueRow {
|
|
|
258
255
|
cpi: number | null;
|
|
259
256
|
}
|
|
260
257
|
|
|
261
|
-
/** The earned-value result at a status date
|
|
258
|
+
/** The earned-value result at a status date. */
|
|
262
259
|
interface GanttEarnedValue {
|
|
263
260
|
ok: boolean;
|
|
264
261
|
error?: { code: string; message: string };
|
|
@@ -274,7 +271,7 @@ interface GanttEarnedValue {
|
|
|
274
271
|
|
|
275
272
|
/**
|
|
276
273
|
* Compute earned-value management (EVM) metrics for a scheduled plan at a
|
|
277
|
-
* status date
|
|
274
|
+
* status date: PV/BCWS from the baseline, EV/BCWP from
|
|
278
275
|
* %complete, AC/ACWP from the per-task `actualCost`, and the derived SV/CV and
|
|
279
276
|
* SPI/CPI — per leaf, rolled up to summaries and the project. The math is
|
|
280
277
|
* implemented locally in the module (no core-compute dependency).
|
|
@@ -295,9 +292,9 @@ interface Gantt {
|
|
|
295
292
|
readonly conflicts: GanttConflict[];
|
|
296
293
|
readonly autoSchedule: boolean;
|
|
297
294
|
readonly grid: unknown;
|
|
298
|
-
/** The over-allocations from the latest schedule
|
|
295
|
+
/** The over-allocations from the latest schedule. */
|
|
299
296
|
readonly overAllocations: GanttOverAllocation[];
|
|
300
|
-
/** The latest resource-load report, or null before a successful schedule
|
|
297
|
+
/** The latest resource-load report, or null before a successful schedule. */
|
|
301
298
|
readonly resourceLoad: GanttResourceLoad | null;
|
|
302
299
|
setTasks(tasks: GanttTask[]): GanttSchedule;
|
|
303
300
|
setDependencies(deps: GanttDependency[]): GanttSchedule;
|
|
@@ -305,7 +302,7 @@ interface Gantt {
|
|
|
305
302
|
* Apply one task edit and recompute — the single gated choke point every
|
|
306
303
|
* drag, keypress, table cell and workload cell commits through.
|
|
307
304
|
*
|
|
308
|
-
* A `work` ARRAY is the task's per-day contour
|
|
305
|
+
* A `work` ARRAY is the task's per-day contour. Given
|
|
309
306
|
* without an explicit `start`/`end`/`duration` it SETS the span: the task
|
|
310
307
|
* starts on the contour's first day and runs through its last, so booking
|
|
311
308
|
* hours beyond the bar extends it and clearing an edge bucket pulls it
|
|
@@ -317,13 +314,13 @@ interface Gantt {
|
|
|
317
314
|
compute(): GanttSchedule;
|
|
318
315
|
findViolations(): GanttViolation[];
|
|
319
316
|
/**
|
|
320
|
-
* Compute the resource load and over-allocations on demand
|
|
317
|
+
* Compute the resource load and over-allocations on demand,
|
|
321
318
|
* optionally overriding the capacities for this call.
|
|
322
319
|
*/
|
|
323
320
|
resources(loadOpts?: { resources?: GanttResourceSpec; defaultCapacity?: number }): GanttResourceLoad;
|
|
324
321
|
/**
|
|
325
322
|
* Resolve resource over-allocation by shifting tasks later — resource
|
|
326
|
-
* leveling
|
|
323
|
+
* leveling. Honours the CPM dependencies and the
|
|
327
324
|
* working-time calendar. Mutates the model unless `{ dryRun: true }`; with
|
|
328
325
|
* `{ writeBack: true }` and a bound grid the moved tasks are pushed through
|
|
329
326
|
* the grid's edit surface.
|
|
@@ -339,7 +336,7 @@ interface Gantt {
|
|
|
339
336
|
/** Export the scheduled tasks as CSV; `{ dates: true }` writes ISO dates. */
|
|
340
337
|
toCSV(csvOpts?: { dates?: boolean }): string;
|
|
341
338
|
/**
|
|
342
|
-
* Export the current plan as Microsoft Project (MSPDI) XML
|
|
339
|
+
* Export the current plan as Microsoft Project (MSPDI) XML:
|
|
343
340
|
* tasks, dependencies, constraints, baseline, resources and assignments, plus
|
|
344
341
|
* the working-time calendar, serialised with the computed schedule.
|
|
345
342
|
*/
|
|
@@ -365,7 +362,7 @@ interface Gantt {
|
|
|
365
362
|
* The plot width. `'container'` (the default) measures the element it was
|
|
366
363
|
* mounted into and keeps following it, so a plan in a tab, drawer,
|
|
367
364
|
* accordion or split pane fits without the host writing a
|
|
368
|
-
* `ResizeObserver
|
|
365
|
+
* `ResizeObserver`; a container with no box yet holds a
|
|
369
366
|
* 720px fallback rather than drawing at zero. A number is honoured
|
|
370
367
|
* exactly and installs no observer. Ignored under `zoom`, which warns.
|
|
371
368
|
*/
|
|
@@ -379,12 +376,12 @@ interface Gantt {
|
|
|
379
376
|
dateAxis?: boolean;
|
|
380
377
|
/**
|
|
381
378
|
* The today line, as a plan day-number or a calendar date. A date is
|
|
382
|
-
* converted into plan space through `projectEpoch
|
|
379
|
+
* converted into plan space through `projectEpoch`, so
|
|
383
380
|
* "put the line on the real today" is expressible for a relative plan.
|
|
384
381
|
*/
|
|
385
382
|
today?: number | string | Date;
|
|
386
383
|
/**
|
|
387
|
-
* The calendar date plan day 0 stands for
|
|
384
|
+
* The calendar date plan day 0 stands for.
|
|
388
385
|
*
|
|
389
386
|
* Display-only: axis ticks, bar labels, tooltips, screen-reader text and
|
|
390
387
|
* the built-in `'weekends'` shading move with it; the schedule, `getState`
|
|
@@ -414,15 +411,15 @@ interface Gantt {
|
|
|
414
411
|
moveStep?: number;
|
|
415
412
|
}): unknown;
|
|
416
413
|
/**
|
|
417
|
-
* Mount the JOINED split view
|
|
414
|
+
* Mount the JOINED split view: one continuous, row-aligned
|
|
418
415
|
* surface with a left task-grid panel — by default the Task Name tree with
|
|
419
416
|
* expand/collapse, start, finish, duration, assignee avatars and a circular
|
|
420
|
-
* % ring
|
|
417
|
+
* % ring, plus any host columns — and the right timeline,
|
|
421
418
|
* sharing a single vertical scroll so every grid row lines up exactly with
|
|
422
419
|
* its bar row. The timeline scrolls horizontally on its own. Composes the
|
|
423
420
|
* controller's schedule; makes no change to grid core.
|
|
424
421
|
*
|
|
425
|
-
* The plan is editable from BOTH panes
|
|
422
|
+
* The plan is editable from BOTH panes: every gesture
|
|
426
423
|
* `mount` has — pointer drag to move, drag on the right edge to resize,
|
|
427
424
|
* arrow-key move, Shift+arrow resize, `l` to link, Delete — works on the
|
|
428
425
|
* timeline here, and a `start`/`end`/`duration`/`progress`/`name` column in
|
|
@@ -437,7 +434,7 @@ interface Gantt {
|
|
|
437
434
|
* focusable bars, the arrow-key gestures and the ARIA announcements while
|
|
438
435
|
* leaving pointer editing alone; and `resizeZone` (default 6) is how many
|
|
439
436
|
* pixels in from a bar's right edge begin a resize rather than a move.
|
|
440
|
-
* `workload` adds the resource band beneath the plan
|
|
437
|
+
* `workload` adds the resource band beneath the plan,
|
|
441
438
|
* which is display-only — it reports hours, it does not accept them.
|
|
442
439
|
*/
|
|
443
440
|
mountSplit(container: unknown, options?: {
|
|
@@ -455,7 +452,7 @@ interface Gantt {
|
|
|
455
452
|
showBaseline?: boolean;
|
|
456
453
|
barLabel?: 'name' | 'percent' | 'dates' | 'none' | ((task: GanttScheduledTask) => string);
|
|
457
454
|
/**
|
|
458
|
-
* Surface earned-value metrics in `kind: 'evm'` columns
|
|
455
|
+
* Surface earned-value metrics in `kind: 'evm'` columns.
|
|
459
456
|
* `true` computes EVM at the today line (or the project finish); an object
|
|
460
457
|
* overrides the status date and the cost field names.
|
|
461
458
|
*/
|
|
@@ -488,13 +485,12 @@ interface Gantt {
|
|
|
488
485
|
* the avatars, `'progress'` the % ring (edits `percentComplete`), `'evm'`
|
|
489
486
|
* an earned-value `metric`, and `'start'`/`'end'`/`'duration'` the
|
|
490
487
|
* scheduled window — an ISO date, an ISO date, and a whole number of days,
|
|
491
|
-
* each of which edits the plan through the same path a bar drag takes
|
|
492
|
-
* (BACKLOG-0001280). A column with no `kind` shows the raw task's `key`
|
|
488
|
+
* each of which edits the plan through the same path a bar drag takes. A column with no `kind` shows the raw task's `key`
|
|
493
489
|
* and edits it only with `editable: true`.
|
|
494
490
|
*/
|
|
495
491
|
columns?: Array<{ key: string; title?: string; width?: number; kind?: 'name' | 'assignee' | 'progress' | 'evm' | 'start' | 'end' | 'duration' | 'number'; metric?: 'bac' | 'pv' | 'ev' | 'ac' | 'sv' | 'cv' | 'spi' | 'cpi'; digits?: number; editable?: boolean; editField?: string; render?: (task: GanttScheduledTask, ctx: { rawTask: GanttTask; depth: number }) => unknown }>;
|
|
496
492
|
/**
|
|
497
|
-
* A resource workload band beneath the split view
|
|
493
|
+
* A resource workload band beneath the split view:
|
|
498
494
|
* one row per resource on the left and, on the right, that resource's
|
|
499
495
|
* hours per time bucket — aligned column-for-column with the timeline's
|
|
500
496
|
* scale header, scroll-locked to it horizontally (vertically it scrolls
|
|
@@ -502,7 +498,7 @@ interface Gantt {
|
|
|
502
498
|
* plan changes. `true` takes the defaults below; an object overrides
|
|
503
499
|
* them; omitted, no band is drawn.
|
|
504
500
|
*
|
|
505
|
-
* **Editing
|
|
501
|
+
* **Editing.** A resource row expands (a disclosure
|
|
506
502
|
* button, `aria-expanded`) into one sub-row per task it carries. The
|
|
507
503
|
* resource's own cell is the read-only aggregate; a SUB-ROW cell accepts
|
|
508
504
|
* a typed number of hours on a double-click whenever the view's
|
|
@@ -547,8 +543,7 @@ interface Gantt {
|
|
|
547
543
|
*/
|
|
548
544
|
captureBaseline(): Array<{ id: string; baselineStart: number; baselineEnd: number; baselineDuration: number }>;
|
|
549
545
|
/**
|
|
550
|
-
* Compute earned-value (EVM) metrics for the current plan at a status date
|
|
551
|
-
* (BACKLOG-0000958): PV/EV/AC and the derived SV/CV/SPI/CPI per task, rolled
|
|
546
|
+
* Compute earned-value (EVM) metrics for the current plan at a status date: PV/EV/AC and the derived SV/CV/SPI/CPI per task, rolled
|
|
552
547
|
* up to summaries and the project. Budget (BAC) is the task's `cost`, or its
|
|
553
548
|
* duration when no cost is given; AC comes from `actualCost`.
|
|
554
549
|
*/
|
|
@@ -576,7 +571,7 @@ export function createGantt(opts?: {
|
|
|
576
571
|
deadline?: number | string | Date;
|
|
577
572
|
/** A working-time calendar: skip weekends/holidays, durations in working days. */
|
|
578
573
|
calendar?: GanttCalendar | null;
|
|
579
|
-
/** Resource capacities for over-allocation detection and leveling
|
|
574
|
+
/** Resource capacities for over-allocation detection and leveling. */
|
|
580
575
|
resources?: GanttResourceSpec;
|
|
581
576
|
/** The capacity for a resource with none stated (default 1 = one full-time booking). */
|
|
582
577
|
defaultCapacity?: number;
|
|
@@ -601,8 +596,7 @@ export function createGantt(opts?: {
|
|
|
601
596
|
* schedule.
|
|
602
597
|
*
|
|
603
598
|
* A mapping to a field NAME is two-way: `applyEdit` writes back to that
|
|
604
|
-
* name, so an edit on a mapped plan lands instead of springing back
|
|
605
|
-
* (BACKLOG-0001280). A mapping to a READER FUNCTION has no inverse, so an
|
|
599
|
+
* name, so an edit on a mapped plan lands instead of springing back. A mapping to a READER FUNCTION has no inverse, so an
|
|
606
600
|
* edit to such a field writes the canonical property and says so once, and
|
|
607
601
|
* `level()` refuses a mapped `start` outright rather than writing where
|
|
608
602
|
* nothing reads. `assignee`, `cost` and `actualCost` belong to the resource
|
|
@@ -625,7 +619,7 @@ interface GanttMSPDIModel {
|
|
|
625
619
|
}
|
|
626
620
|
|
|
627
621
|
/**
|
|
628
|
-
* Import a Microsoft Project (MSPDI) XML document
|
|
622
|
+
* Import a Microsoft Project (MSPDI) XML document into the
|
|
629
623
|
* module's model: the task tree, typed dependencies with lag, constraints,
|
|
630
624
|
* baseline, %complete, resources with capacity, the resource assignments, and
|
|
631
625
|
* the working-time calendar. The result is ready to pass to {@link createGantt}.
|
|
@@ -641,7 +635,7 @@ export function importMSPDI(xml: string, opts?: { hoursPerDay?: number }): {
|
|
|
641
635
|
};
|
|
642
636
|
|
|
643
637
|
/**
|
|
644
|
-
* Export a Gantt model to Microsoft Project (MSPDI) XML
|
|
638
|
+
* Export a Gantt model to Microsoft Project (MSPDI) XML. A
|
|
645
639
|
* scheduled model may be passed so start/finish dates are the computed ones.
|
|
646
640
|
*/
|
|
647
641
|
export function exportMSPDI(model: GanttMSPDIModel, opts?: { hoursPerDay?: number; projectName?: string }): string;
|
package/modules/gantt.esm.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, gantt 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.66.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.66.0";
|
|
61
61
|
const warned=new Set();
|
|
62
62
|
const WARNED_LIMIT=2000;
|
|
63
63
|
function rememberWarned(key){
|
package/modules/gantt.min.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, gantt 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.66.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.66.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
package/modules/gantt.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, gantt 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.66.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.66.0";
|
|
63
63
|
const warned=new Set();
|
|
64
64
|
const WARNED_LIMIT=2000;
|
|
65
65
|
function rememberWarned(key){
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, geo-europe-nuts module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -8,7 +8,7 @@ import type {
|
|
|
8
8
|
} from '../lattice-grid.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Europe by NUTS level 0–2 — an optional geometry pack
|
|
11
|
+
* Europe by NUTS level 0–2 — an optional geometry pack.
|
|
12
12
|
* Generated from Eurostat GISCO; its licence requires the attribution line
|
|
13
13
|
* the pack carries, which the map draws automatically.
|
|
14
14
|
*/
|
package/modules/geo-uk.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, geo-uk module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -9,7 +9,7 @@ import type {
|
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* United Kingdom: regions, local authorities and constituencies, in one
|
|
12
|
-
* multi-layer pack — an optional geometry pack
|
|
12
|
+
* multi-layer pack — an optional geometry pack. Generated
|
|
13
13
|
* from the ONS Open Geography Portal (Open Government Licence v3.0), whose
|
|
14
14
|
* required attribution the pack carries and the map draws automatically. Pick
|
|
15
15
|
* the grain with `layer: 'regions' | 'local-authorities' | 'constituencies'`.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, geo-us-states module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -8,7 +8,7 @@ import type {
|
|
|
8
8
|
} from '../lattice-grid.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* United States, states and DC — an optional geometry pack
|
|
11
|
+
* United States, states and DC — an optional geometry pack.
|
|
12
12
|
* Generated from the US Census Bureau via `us-atlas` (public domain); joins on
|
|
13
13
|
* USPS, FIPS or ISO codes.
|
|
14
14
|
*/
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, geo-world-110m module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -8,7 +8,7 @@ import type {
|
|
|
8
8
|
} from '../lattice-grid.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* World countries at 1:110m — an optional geometry pack
|
|
11
|
+
* World countries at 1:110m — an optional geometry pack.
|
|
12
12
|
* Generated from Natural Earth (public domain) by `tools/build-geo-packs.mjs`;
|
|
13
13
|
* 177 countries. Pass as `shapes` on a `geomap` chart, or register it and name
|
|
14
14
|
* it by id: `shapes: { pack: 'world-110m' }`.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Lattice Grid 1.
|
|
2
|
+
* Lattice Grid 1.66.0, geo-world-50m module type declarations
|
|
3
3
|
* Copyright (c) 2026 TOCLOCO Inc. All rights reserved.
|
|
4
4
|
* https://latticegrid.dev
|
|
5
5
|
*/
|
|
@@ -8,7 +8,7 @@ import type {
|
|
|
8
8
|
} from '../lattice-grid.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* World countries at 1:50m — an optional geometry pack
|
|
11
|
+
* World countries at 1:50m — an optional geometry pack.
|
|
12
12
|
* Generated from Natural Earth (public domain); 241 countries, including the
|
|
13
13
|
* micro-states the 1:110m pack omits.
|
|
14
14
|
*/
|