@grafloria/element 0.1.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.
Files changed (61) hide show
  1. package/package.json +41 -0
  2. package/src/index.d.ts +87 -0
  3. package/src/index.js +547 -0
  4. package/src/index.js.map +1 -0
  5. package/src/lib/dashboard-kit/dashboard.d.ts +345 -0
  6. package/src/lib/dashboard-kit/dashboard.js +594 -0
  7. package/src/lib/dashboard-kit/dashboard.js.map +1 -0
  8. package/src/lib/dashboard-kit/grid-binder.d.ts +277 -0
  9. package/src/lib/dashboard-kit/grid-binder.js +1635 -0
  10. package/src/lib/dashboard-kit/grid-binder.js.map +1 -0
  11. package/src/lib/dashboard-kit/grid-mapping.d.ts +141 -0
  12. package/src/lib/dashboard-kit/grid-mapping.js +176 -0
  13. package/src/lib/dashboard-kit/grid-mapping.js.map +1 -0
  14. package/src/lib/dashboard-kit/index.d.ts +5 -0
  15. package/src/lib/dashboard-kit/index.js +33 -0
  16. package/src/lib/dashboard-kit/index.js.map +1 -0
  17. package/src/lib/dashboard-kit/styles.d.ts +25 -0
  18. package/src/lib/dashboard-kit/styles.js +203 -0
  19. package/src/lib/dashboard-kit/styles.js.map +1 -0
  20. package/src/lib/dashboard-kit/widgets.d.ts +112 -0
  21. package/src/lib/dashboard-kit/widgets.js +389 -0
  22. package/src/lib/dashboard-kit/widgets.js.map +1 -0
  23. package/src/lib/diagram-kit/card.d.ts +75 -0
  24. package/src/lib/diagram-kit/card.js +209 -0
  25. package/src/lib/diagram-kit/card.js.map +1 -0
  26. package/src/lib/diagram-kit/editing.d.ts +54 -0
  27. package/src/lib/diagram-kit/editing.js +289 -0
  28. package/src/lib/diagram-kit/editing.js.map +1 -0
  29. package/src/lib/diagram-kit/er.d.ts +73 -0
  30. package/src/lib/diagram-kit/er.js +163 -0
  31. package/src/lib/diagram-kit/er.js.map +1 -0
  32. package/src/lib/diagram-kit/handles.d.ts +181 -0
  33. package/src/lib/diagram-kit/handles.js +325 -0
  34. package/src/lib/diagram-kit/handles.js.map +1 -0
  35. package/src/lib/diagram-kit/index.d.ts +8 -0
  36. package/src/lib/diagram-kit/index.js +38 -0
  37. package/src/lib/diagram-kit/index.js.map +1 -0
  38. package/src/lib/diagram-kit/rows.d.ts +53 -0
  39. package/src/lib/diagram-kit/rows.js +147 -0
  40. package/src/lib/diagram-kit/rows.js.map +1 -0
  41. package/src/lib/diagram-kit/styles.d.ts +18 -0
  42. package/src/lib/diagram-kit/styles.js +114 -0
  43. package/src/lib/diagram-kit/styles.js.map +1 -0
  44. package/src/lib/diagram-kit/uml.d.ts +59 -0
  45. package/src/lib/diagram-kit/uml.js +138 -0
  46. package/src/lib/diagram-kit/uml.js.map +1 -0
  47. package/src/lib/diagram-kit/update.d.ts +133 -0
  48. package/src/lib/diagram-kit/update.js +251 -0
  49. package/src/lib/diagram-kit/update.js.map +1 -0
  50. package/src/lib/grafloria-flow-element.d.ts +48 -0
  51. package/src/lib/grafloria-flow-element.js +271 -0
  52. package/src/lib/grafloria-flow-element.js.map +1 -0
  53. package/src/lib/grafloria.d.ts +61 -0
  54. package/src/lib/grafloria.js +72 -0
  55. package/src/lib/grafloria.js.map +1 -0
  56. package/src/lib/load.d.ts +72 -0
  57. package/src/lib/load.js +255 -0
  58. package/src/lib/load.js.map +1 -0
  59. package/src/lib/node-type-registry.d.ts +39 -0
  60. package/src/lib/node-type-registry.js +50 -0
  61. package/src/lib/node-type-registry.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-binder.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/dashboard-kit/grid-binder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * Dashboard-kit pure math — Phase 2 of the dashboard-grid plan
3
+ * (`documentation/api-architecture/dashboard-grid-plan.html`).
4
+ *
5
+ * Everything here is DOM-free and instance-free so it can be table-driven from
6
+ * a jest spec: the cell↔pixel mapping in both sizing modes, the
7
+ * GridItemConfig↔GridPackItem round-trip, and the gesture commit-batch
8
+ * construction. The stateful binder (`grid-binder.ts`) is a thin pointer loop
9
+ * over these functions plus the engine's `GridPackEngine` — the engine owns
10
+ * ALL cell math (push/swap/gate/settle); this module owns only how cells and
11
+ * pixels convert into each other and into undoable commands.
12
+ *
13
+ * SIZING MODES (user decision, recorded in the plan's Section 6):
14
+ * 'fit' — DevExtreme-style compact. The board keeps its DESIGN height and
15
+ * the row height re-derives from the content's row count, so every
16
+ * widget always stays inside the frame — nothing can be pushed out
17
+ * of reach. Guarded by `minRowHeight` so a pathological row count
18
+ * squeezes to a floor instead of zero.
19
+ * 'grow' — rows keep `baseRowHeight` and the board frame extends downward
20
+ * to hold them (never below the design height). Camera refit after
21
+ * growth is the page's concern (its existing `frameTab`).
22
+ */
23
+ import { type Command, type GridItemConfig } from '@grafloria/engine';
24
+ /** One tile in integer board cells — the shape `GridPackEngine` speaks. */
25
+ export interface CellRect {
26
+ x: number;
27
+ y: number;
28
+ w: number;
29
+ h: number;
30
+ }
31
+ /** A world-space rectangle (the group frame, or a projected tile). */
32
+ export interface WorldRect {
33
+ x: number;
34
+ y: number;
35
+ width: number;
36
+ height: number;
37
+ }
38
+ export interface DashboardGridGeometry {
39
+ /** Column count of the board (default 12). */
40
+ columns: number;
41
+ /** Gap between cells, px. */
42
+ gap: number;
43
+ /** Padding between the board frame and the outermost cells, px. */
44
+ padding: number;
45
+ sizing: 'fit' | 'grow';
46
+ /** Row height in 'grow' mode, px. */
47
+ baseRowHeight: number;
48
+ /** Floor for the derived 'fit' row height, px. */
49
+ minRowHeight: number;
50
+ /** The board's design height — 'fit' keeps it, 'grow' never shrinks below it. */
51
+ designHeight: number;
52
+ /**
53
+ * RIGHT-TO-LEFT boards. The MODEL is direction-agnostic — cell x=0 is always
54
+ * "the first column" and every rule in `GridPackEngine` (push, swap, gravity,
55
+ * the anti-jitter gate) is written in cells, so none of it changes. ONLY this
56
+ * module's pixel mapping mirrors: x=0 renders at the board's RIGHT edge and
57
+ * columns run leftwards. A layout saved in one direction therefore renders
58
+ * mirrored in the other with byte-identical cells, which is the property the
59
+ * kit's spec and the e2e battery both assert.
60
+ */
61
+ rtl?: boolean;
62
+ }
63
+ /** Row height for a board currently `rows` rows tall (both modes). */
64
+ export declare function rowHeightFor(g: DashboardGridGeometry, rows: number): number;
65
+ /** The board frame height the mode implies for `rows` rows. */
66
+ export declare function boardHeightFor(g: DashboardGridGeometry, rows: number): number;
67
+ /** Width of one column cell for a board `width` px wide. */
68
+ export declare function columnUnitFor(g: DashboardGridGeometry, width: number): number;
69
+ /** Width in px of a `w`-column span (the pitch identity used by both mappings). */
70
+ export declare function spanWidthPx(w: number, g: DashboardGridGeometry, frameWidth: number): number;
71
+ /**
72
+ * Project integer cells into a world rectangle inside `frame`.
73
+ *
74
+ * RTL mirrors about the board's vertical centre line: the distance from the
75
+ * board's RIGHT padding edge to the tile's RIGHT edge equals what the LTR
76
+ * distance from the left padding edge to the tile's LEFT edge would be. Only
77
+ * the x term changes — rows, heights and spans are direction-agnostic.
78
+ */
79
+ export declare function cellToRect(cell: CellRect, frame: WorldRect, g: DashboardGridGeometry, rows: number): WorldRect;
80
+ /**
81
+ * The cell whose slot a tile TOP-LEFT at world (x, y) is closest to — the
82
+ * prototype's margin-adjusted midpoint rounding (`round(L / cellPitch)`).
83
+ * Clamping to the board is the ENGINE's job (moveCheck clamps), not ours.
84
+ *
85
+ * `spanW` is the tile's COLUMN SPAN and is used only when `g.rtl`: mirrored,
86
+ * the cell is decided by the tile's RIGHT edge (its leading edge), so the
87
+ * span is what converts the given left edge into it. LTR ignores it entirely,
88
+ * which is why every existing call site keeps its exact behaviour. Getting
89
+ * this wrong is the classic RTL drag bug — the tile lands a span away from
90
+ * the placeholder — so the e2e battery asserts drop-on-placeholder in RTL.
91
+ */
92
+ export declare function pointToCell(x: number, y: number, frame: WorldRect, g: DashboardGridGeometry, rows: number, spanW?: number): {
93
+ x: number;
94
+ y: number;
95
+ };
96
+ /**
97
+ * The integer span a fluid pixel size rounds to — the prototype's
98
+ * `round((W + margin) / cellPitch)`, floored at 1×1.
99
+ */
100
+ export declare function sizeToSpan(widthPx: number, heightPx: number, frame: WorldRect, g: DashboardGridGeometry, rows: number): {
101
+ w: number;
102
+ h: number;
103
+ };
104
+ /** Engine cells → the GridItemConfig that persists them. */
105
+ export declare function gridItemFromCell(cell: CellRect): GridItemConfig;
106
+ /**
107
+ * GridItemConfig → engine cells, or null when the config carries no usable
108
+ * placement (absent, or 'auto' lines). `fallback` fills spans a partial
109
+ * config omits — the first-adoption path uses metadata `columnSpan` there.
110
+ */
111
+ export declare function cellFromGridItem(gi: GridItemConfig | undefined, fallback?: {
112
+ w?: number;
113
+ h?: number;
114
+ }): CellRect | null;
115
+ export interface TileDelta {
116
+ id: string;
117
+ locked?: boolean;
118
+ /** Group members (layout slabs) get cells-only commands — never Move/Resize. */
119
+ isGroup?: boolean;
120
+ cellBefore: CellRect;
121
+ cellAfter: CellRect;
122
+ posBefore: {
123
+ x: number;
124
+ y: number;
125
+ };
126
+ posAfter: {
127
+ x: number;
128
+ y: number;
129
+ };
130
+ sizeBefore: {
131
+ width: number;
132
+ height: number;
133
+ depth?: number;
134
+ };
135
+ sizeAfter: {
136
+ width: number;
137
+ height: number;
138
+ depth?: number;
139
+ };
140
+ }
141
+ export declare function buildCommitCommands(deltas: TileDelta[]): Command[];
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+ /**
3
+ * Dashboard-kit pure math — Phase 2 of the dashboard-grid plan
4
+ * (`documentation/api-architecture/dashboard-grid-plan.html`).
5
+ *
6
+ * Everything here is DOM-free and instance-free so it can be table-driven from
7
+ * a jest spec: the cell↔pixel mapping in both sizing modes, the
8
+ * GridItemConfig↔GridPackItem round-trip, and the gesture commit-batch
9
+ * construction. The stateful binder (`grid-binder.ts`) is a thin pointer loop
10
+ * over these functions plus the engine's `GridPackEngine` — the engine owns
11
+ * ALL cell math (push/swap/gate/settle); this module owns only how cells and
12
+ * pixels convert into each other and into undoable commands.
13
+ *
14
+ * SIZING MODES (user decision, recorded in the plan's Section 6):
15
+ * 'fit' — DevExtreme-style compact. The board keeps its DESIGN height and
16
+ * the row height re-derives from the content's row count, so every
17
+ * widget always stays inside the frame — nothing can be pushed out
18
+ * of reach. Guarded by `minRowHeight` so a pathological row count
19
+ * squeezes to a floor instead of zero.
20
+ * 'grow' — rows keep `baseRowHeight` and the board frame extends downward
21
+ * to hold them (never below the design height). Camera refit after
22
+ * growth is the page's concern (its existing `frameTab`).
23
+ */
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.rowHeightFor = rowHeightFor;
26
+ exports.boardHeightFor = boardHeightFor;
27
+ exports.columnUnitFor = columnUnitFor;
28
+ exports.spanWidthPx = spanWidthPx;
29
+ exports.cellToRect = cellToRect;
30
+ exports.pointToCell = pointToCell;
31
+ exports.sizeToSpan = sizeToSpan;
32
+ exports.gridItemFromCell = gridItemFromCell;
33
+ exports.cellFromGridItem = cellFromGridItem;
34
+ exports.buildCommitCommands = buildCommitCommands;
35
+ const engine_1 = require("@grafloria/engine");
36
+ /** Row height for a board currently `rows` rows tall (both modes). */
37
+ function rowHeightFor(g, rows) {
38
+ if (g.sizing === 'grow')
39
+ return g.baseRowHeight;
40
+ const r = Math.max(1, rows);
41
+ // design = 2*padding + r*rowH + (r-1)*gap → solve for rowH.
42
+ return Math.max(g.minRowHeight, (g.designHeight - 2 * g.padding - (r - 1) * g.gap) / r);
43
+ }
44
+ /** The board frame height the mode implies for `rows` rows. */
45
+ function boardHeightFor(g, rows) {
46
+ if (g.sizing === 'fit')
47
+ return g.designHeight;
48
+ const r = Math.max(0, rows);
49
+ const content = 2 * g.padding + (r === 0 ? 0 : r * g.baseRowHeight + (r - 1) * g.gap);
50
+ return Math.max(g.designHeight, content);
51
+ }
52
+ /** Width of one column cell for a board `width` px wide. */
53
+ function columnUnitFor(g, width) {
54
+ return (width - 2 * g.padding - (g.columns - 1) * g.gap) / g.columns;
55
+ }
56
+ /** Width in px of a `w`-column span (the pitch identity used by both mappings). */
57
+ function spanWidthPx(w, g, frameWidth) {
58
+ const cu = columnUnitFor(g, frameWidth);
59
+ return w * cu + (w - 1) * g.gap;
60
+ }
61
+ /**
62
+ * Project integer cells into a world rectangle inside `frame`.
63
+ *
64
+ * RTL mirrors about the board's vertical centre line: the distance from the
65
+ * board's RIGHT padding edge to the tile's RIGHT edge equals what the LTR
66
+ * distance from the left padding edge to the tile's LEFT edge would be. Only
67
+ * the x term changes — rows, heights and spans are direction-agnostic.
68
+ */
69
+ function cellToRect(cell, frame, g, rows) {
70
+ const cu = columnUnitFor(g, frame.width);
71
+ const rh = rowHeightFor(g, rows);
72
+ const width = cell.w * cu + (cell.w - 1) * g.gap;
73
+ return {
74
+ x: g.rtl
75
+ ? frame.x + frame.width - g.padding - cell.x * (cu + g.gap) - width
76
+ : frame.x + g.padding + cell.x * (cu + g.gap),
77
+ y: frame.y + g.padding + cell.y * (rh + g.gap),
78
+ width,
79
+ height: cell.h * rh + (cell.h - 1) * g.gap,
80
+ };
81
+ }
82
+ /**
83
+ * The cell whose slot a tile TOP-LEFT at world (x, y) is closest to — the
84
+ * prototype's margin-adjusted midpoint rounding (`round(L / cellPitch)`).
85
+ * Clamping to the board is the ENGINE's job (moveCheck clamps), not ours.
86
+ *
87
+ * `spanW` is the tile's COLUMN SPAN and is used only when `g.rtl`: mirrored,
88
+ * the cell is decided by the tile's RIGHT edge (its leading edge), so the
89
+ * span is what converts the given left edge into it. LTR ignores it entirely,
90
+ * which is why every existing call site keeps its exact behaviour. Getting
91
+ * this wrong is the classic RTL drag bug — the tile lands a span away from
92
+ * the placeholder — so the e2e battery asserts drop-on-placeholder in RTL.
93
+ */
94
+ function pointToCell(x, y, frame, g, rows, spanW = 1) {
95
+ const cu = columnUnitFor(g, frame.width);
96
+ const rh = rowHeightFor(g, rows);
97
+ const right = x + spanWidthPx(spanW, g, frame.width);
98
+ return {
99
+ x: g.rtl
100
+ ? Math.round((frame.x + frame.width - g.padding - right) / (cu + g.gap))
101
+ : Math.round((x - frame.x - g.padding) / (cu + g.gap)),
102
+ y: Math.round((y - frame.y - g.padding) / (rh + g.gap)),
103
+ };
104
+ }
105
+ /**
106
+ * The integer span a fluid pixel size rounds to — the prototype's
107
+ * `round((W + margin) / cellPitch)`, floored at 1×1.
108
+ */
109
+ function sizeToSpan(widthPx, heightPx, frame, g, rows) {
110
+ const cu = columnUnitFor(g, frame.width);
111
+ const rh = rowHeightFor(g, rows);
112
+ return {
113
+ w: Math.max(1, Math.round((widthPx + g.gap) / (cu + g.gap))),
114
+ h: Math.max(1, Math.round((heightPx + g.gap) / (rh + g.gap))),
115
+ };
116
+ }
117
+ // ---------------------------------------------------------------------------
118
+ // GridItemConfig ↔ engine cells.
119
+ //
120
+ // The cell state lives in the EXISTING GridItemConfig (1-based, exclusive-end
121
+ // line numbers — CSS grid vocabulary): columnStart/rowStart are the cell + 1,
122
+ // columnEnd/rowEnd are cell + span + 1. Nothing new is persisted; save/load
123
+ // already round-trips gridItem.
124
+ // ---------------------------------------------------------------------------
125
+ /** Engine cells → the GridItemConfig that persists them. */
126
+ function gridItemFromCell(cell) {
127
+ return {
128
+ columnStart: cell.x + 1,
129
+ columnEnd: cell.x + cell.w + 1,
130
+ rowStart: cell.y + 1,
131
+ rowEnd: cell.y + cell.h + 1,
132
+ };
133
+ }
134
+ /**
135
+ * GridItemConfig → engine cells, or null when the config carries no usable
136
+ * placement (absent, or 'auto' lines). `fallback` fills spans a partial
137
+ * config omits — the first-adoption path uses metadata `columnSpan` there.
138
+ */
139
+ function cellFromGridItem(gi, fallback) {
140
+ var _a, _b;
141
+ if (!gi)
142
+ return null;
143
+ const num = (v) => typeof v === 'number' && Number.isFinite(v) ? v : null;
144
+ const cs = num(gi.columnStart);
145
+ const rs = num(gi.rowStart);
146
+ if (cs === null || rs === null)
147
+ return null;
148
+ const ce = num(gi.columnEnd);
149
+ const re = num(gi.rowEnd);
150
+ const w = ce !== null ? ce - cs : (_a = fallback === null || fallback === void 0 ? void 0 : fallback.w) !== null && _a !== void 0 ? _a : 1;
151
+ const h = re !== null ? re - rs : (_b = fallback === null || fallback === void 0 ? void 0 : fallback.h) !== null && _b !== void 0 ? _b : 1;
152
+ return { x: cs - 1, y: rs - 1, w: Math.max(1, w), h: Math.max(1, h) };
153
+ }
154
+ const cellsDiffer = (a, b) => a.x !== b.x || a.y !== b.y || a.w !== b.w || a.h !== b.h;
155
+ const EPS = 0.5;
156
+ function buildCommitCommands(deltas) {
157
+ const commands = [];
158
+ for (const d of deltas) {
159
+ const cellChanged = cellsDiffer(d.cellBefore, d.cellAfter);
160
+ if (cellChanged && !d.isGroup) {
161
+ commands.push(new engine_1.SetGridItemCommand(d.id, gridItemFromCell(d.cellAfter)));
162
+ }
163
+ if (d.locked || d.isGroup)
164
+ continue;
165
+ if (Math.abs(d.posAfter.x - d.posBefore.x) > EPS ||
166
+ Math.abs(d.posAfter.y - d.posBefore.y) > EPS) {
167
+ commands.push(new engine_1.MoveNodeCommand(d.id, Object.assign({}, d.posAfter), Object.assign({}, d.posBefore), { mergeable: false }));
168
+ }
169
+ if (Math.abs(d.sizeAfter.width - d.sizeBefore.width) > EPS ||
170
+ Math.abs(d.sizeAfter.height - d.sizeBefore.height) > EPS) {
171
+ commands.push(new engine_1.ResizeNodeCommand(d.id, Object.assign({ depth: 0 }, d.sizeAfter), Object.assign({ depth: 0 }, d.sizeBefore)));
172
+ }
173
+ }
174
+ return commands;
175
+ }
176
+ //# sourceMappingURL=grid-mapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-mapping.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/dashboard-kit/grid-mapping.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { bindDashboardGrid, type DashboardGridApi, type DashboardGridOptions, type DashboardGridHandle, type DashboardResponsiveOptions, } from './grid-binder';
2
+ export { rowHeightFor, boardHeightFor, columnUnitFor, cellToRect, pointToCell, sizeToSpan, spanWidthPx, gridItemFromCell, cellFromGridItem, buildCommitCommands, type CellRect, type WorldRect, type DashboardGridGeometry, type TileDelta, } from './grid-mapping';
3
+ export { ensureDashboardKitStyles, DASHBOARD_KIT_STYLE_ID } from './styles';
4
+ export { dashboard, type DashboardOptions, type DashboardSpec, type DashboardHandle, type DashboardViewSpec, type DashboardWidgetSpec, type WidgetHandle, } from './dashboard';
5
+ export { defaultWidgetRenderer, renderKpiWidget, renderLineWidget, renderBarWidget, renderDonutWidget, renderFunnelWidget, renderTableWidget, BUILT_IN_WIDGET_KINDS, type WidgetRenderer, type KpiWidgetData, type LineWidgetData, type LineSeries, type BarWidgetData, type DonutWidgetData, type FunnelWidgetData, type TableWidgetData, } from './widgets';
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BUILT_IN_WIDGET_KINDS = exports.renderTableWidget = exports.renderFunnelWidget = exports.renderDonutWidget = exports.renderBarWidget = exports.renderLineWidget = exports.renderKpiWidget = exports.defaultWidgetRenderer = exports.dashboard = exports.DASHBOARD_KIT_STYLE_ID = exports.ensureDashboardKitStyles = exports.buildCommitCommands = exports.cellFromGridItem = exports.gridItemFromCell = exports.spanWidthPx = exports.sizeToSpan = exports.pointToCell = exports.cellToRect = exports.columnUnitFor = exports.boardHeightFor = exports.rowHeightFor = exports.bindDashboardGrid = void 0;
4
+ var grid_binder_1 = require("./grid-binder");
5
+ Object.defineProperty(exports, "bindDashboardGrid", { enumerable: true, get: function () { return grid_binder_1.bindDashboardGrid; } });
6
+ var grid_mapping_1 = require("./grid-mapping");
7
+ Object.defineProperty(exports, "rowHeightFor", { enumerable: true, get: function () { return grid_mapping_1.rowHeightFor; } });
8
+ Object.defineProperty(exports, "boardHeightFor", { enumerable: true, get: function () { return grid_mapping_1.boardHeightFor; } });
9
+ Object.defineProperty(exports, "columnUnitFor", { enumerable: true, get: function () { return grid_mapping_1.columnUnitFor; } });
10
+ Object.defineProperty(exports, "cellToRect", { enumerable: true, get: function () { return grid_mapping_1.cellToRect; } });
11
+ Object.defineProperty(exports, "pointToCell", { enumerable: true, get: function () { return grid_mapping_1.pointToCell; } });
12
+ Object.defineProperty(exports, "sizeToSpan", { enumerable: true, get: function () { return grid_mapping_1.sizeToSpan; } });
13
+ Object.defineProperty(exports, "spanWidthPx", { enumerable: true, get: function () { return grid_mapping_1.spanWidthPx; } });
14
+ Object.defineProperty(exports, "gridItemFromCell", { enumerable: true, get: function () { return grid_mapping_1.gridItemFromCell; } });
15
+ Object.defineProperty(exports, "cellFromGridItem", { enumerable: true, get: function () { return grid_mapping_1.cellFromGridItem; } });
16
+ Object.defineProperty(exports, "buildCommitCommands", { enumerable: true, get: function () { return grid_mapping_1.buildCommitCommands; } });
17
+ var styles_1 = require("./styles");
18
+ Object.defineProperty(exports, "ensureDashboardKitStyles", { enumerable: true, get: function () { return styles_1.ensureDashboardKitStyles; } });
19
+ Object.defineProperty(exports, "DASHBOARD_KIT_STYLE_ID", { enumerable: true, get: function () { return styles_1.DASHBOARD_KIT_STYLE_ID; } });
20
+ // The DATA-FIRST authoring API (the erDiagram/umlDiagram equivalent).
21
+ var dashboard_1 = require("./dashboard");
22
+ Object.defineProperty(exports, "dashboard", { enumerable: true, get: function () { return dashboard_1.dashboard; } });
23
+ // The built-in renderers behind `kind` — dashboard()'s default renderWidget.
24
+ var widgets_1 = require("./widgets");
25
+ Object.defineProperty(exports, "defaultWidgetRenderer", { enumerable: true, get: function () { return widgets_1.defaultWidgetRenderer; } });
26
+ Object.defineProperty(exports, "renderKpiWidget", { enumerable: true, get: function () { return widgets_1.renderKpiWidget; } });
27
+ Object.defineProperty(exports, "renderLineWidget", { enumerable: true, get: function () { return widgets_1.renderLineWidget; } });
28
+ Object.defineProperty(exports, "renderBarWidget", { enumerable: true, get: function () { return widgets_1.renderBarWidget; } });
29
+ Object.defineProperty(exports, "renderDonutWidget", { enumerable: true, get: function () { return widgets_1.renderDonutWidget; } });
30
+ Object.defineProperty(exports, "renderFunnelWidget", { enumerable: true, get: function () { return widgets_1.renderFunnelWidget; } });
31
+ Object.defineProperty(exports, "renderTableWidget", { enumerable: true, get: function () { return widgets_1.renderTableWidget; } });
32
+ Object.defineProperty(exports, "BUILT_IN_WIDGET_KINDS", { enumerable: true, get: function () { return widgets_1.BUILT_IN_WIDGET_KINDS; } });
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/dashboard-kit/index.ts"],"names":[],"mappings":";;;AAAA,6CAMuB;AALrB,gHAAA,iBAAiB,OAAA;AAMnB,+CAewB;AAdtB,4GAAA,YAAY,OAAA;AACZ,8GAAA,cAAc,OAAA;AACd,6GAAA,aAAa,OAAA;AACb,0GAAA,UAAU,OAAA;AACV,2GAAA,WAAW,OAAA;AACX,0GAAA,UAAU,OAAA;AACV,2GAAA,WAAW,OAAA;AACX,gHAAA,gBAAgB,OAAA;AAChB,gHAAA,gBAAgB,OAAA;AAChB,mHAAA,mBAAmB,OAAA;AAMrB,mCAA4E;AAAnE,kHAAA,wBAAwB,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AAEzD,sEAAsE;AACtE,yCAQqB;AAPnB,sGAAA,SAAS,OAAA;AASX,6EAA6E;AAC7E,qCAiBmB;AAhBjB,gHAAA,qBAAqB,OAAA;AACrB,0GAAA,eAAe,OAAA;AACf,2GAAA,gBAAgB,OAAA;AAChB,0GAAA,eAAe,OAAA;AACf,4GAAA,iBAAiB,OAAA;AACjB,6GAAA,kBAAkB,OAAA;AAClB,4GAAA,iBAAiB,OAAA;AACjB,gHAAA,qBAAqB,OAAA"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Dashboard-kit stylesheet — injected once, on first `bindDashboardGrid`.
3
+ *
4
+ * Everything is prefixed `axdb-` and scoped under `.grafloria-html-layer`, so
5
+ * binding the kit can never restyle a host's own DOM. Four jobs:
6
+ *
7
+ * - GLIDE: the reflow transition (the pattern from commit 180a27974) that
8
+ * makes displaced tiles slide to their new slot while a gesture is live.
9
+ * The kit arms `.axdb-glide` on the html layer for the WHOLE gesture, so
10
+ * every accepted moveCheck/resizeCheck animates the neighbours.
11
+ * - GHOST: the held tile is transition-EXEMPT (it must track the pointer
12
+ * 1:1), floats above everything, and dims + lifts like the prototype's
13
+ * `.tile.drag`. When a drag leaves the board (drag-out-to-remove) the
14
+ * ghost dims further as the "release deletes" affordance.
15
+ * - PLACEHOLDER: the dashed slab that always shows the exact drop result
16
+ * (the prototype's `#ph`). It JUMPS — never animates — so it is always
17
+ * truthful about the engine's current cell.
18
+ * - RESIZE HANDLE: a corner affordance INSIDE each widget card, bottom-right,
19
+ * radius-matched via `--axdb-rs-radius`, revealed on hover. The binder
20
+ * injects it into each member host and re-injects if the host repaints
21
+ * (pages own their card innerHTML).
22
+ */
23
+ export declare const DASHBOARD_KIT_STYLE_ID = "grafloria-dashboard-kit-styles";
24
+ /** Idempotently inject the kit stylesheet (safe to call per binder). */
25
+ export declare function ensureDashboardKitStyles(doc?: Document): void;