@grafloria/element 0.3.8 → 0.3.10

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grafloria/element",
3
- "version": "0.3.8",
3
+ "version": "0.3.10",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
@@ -5,4 +5,5 @@ export { bindRowInteractions, type RowRef, type RowInteractionsHandle } from './
5
5
  export { updateEntity, updateClass, addColumnAt, removeColumnAt, renameColumnAt, type ErEntityDelta, type UmlClassDelta, } from './update';
6
6
  export { bindCardEditing, type CardEditingHandle } from './editing';
7
7
  export { matchColumns, rowIndexFromY } from './card';
8
+ export { entityCardContent, entityAutoHeight, classCardContent, classAutoHeight } from './card';
8
9
  export { erTable, umlClass, erTables, umlClasses, CardHandle, ErTable, ErField, ErColumnList, UmlClass, UmlMemberList, type HandleApi, } from './handles';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UmlMemberList = exports.UmlClass = exports.ErColumnList = exports.ErField = exports.ErTable = exports.CardHandle = exports.umlClasses = exports.erTables = exports.umlClass = exports.erTable = exports.rowIndexFromY = exports.matchColumns = exports.bindCardEditing = exports.renameColumnAt = exports.removeColumnAt = exports.addColumnAt = exports.updateClass = exports.updateEntity = exports.bindRowInteractions = exports.DIAGRAM_KIT_STYLE_ID = exports.ensureDiagramKitStyles = exports.umlDiagram = exports.ER_HEAD_H = exports.ER_ROW_H = exports.erRowCenterY = exports.erDiagram = void 0;
3
+ exports.UmlMemberList = exports.UmlClass = exports.ErColumnList = exports.ErField = exports.ErTable = exports.CardHandle = exports.umlClasses = exports.erTables = exports.umlClass = exports.erTable = exports.classAutoHeight = exports.classCardContent = exports.entityAutoHeight = exports.entityCardContent = exports.rowIndexFromY = exports.matchColumns = exports.bindCardEditing = exports.renameColumnAt = exports.removeColumnAt = exports.addColumnAt = exports.updateClass = exports.updateEntity = exports.bindRowInteractions = exports.DIAGRAM_KIT_STYLE_ID = exports.ensureDiagramKitStyles = exports.umlDiagram = exports.ER_HEAD_H = exports.ER_ROW_H = exports.erRowCenterY = exports.erDiagram = void 0;
4
4
  var er_1 = require("./er");
5
5
  Object.defineProperty(exports, "erDiagram", { enumerable: true, get: function () { return er_1.erDiagram; } });
6
6
  Object.defineProperty(exports, "erRowCenterY", { enumerable: true, get: function () { return er_1.erRowCenterY; } });
@@ -24,6 +24,13 @@ Object.defineProperty(exports, "bindCardEditing", { enumerable: true, get: funct
24
24
  var card_1 = require("./card");
25
25
  Object.defineProperty(exports, "matchColumns", { enumerable: true, get: function () { return card_1.matchColumns; } });
26
26
  Object.defineProperty(exports, "rowIndexFromY", { enumerable: true, get: function () { return card_1.rowIndexFromY; } });
27
+ // The card CONTENT builders — shared with the stencil palette so a dropped
28
+ // "Entity"/"Class" is the identical card erDiagram()/umlDiagram() produce.
29
+ var card_2 = require("./card");
30
+ Object.defineProperty(exports, "entityCardContent", { enumerable: true, get: function () { return card_2.entityCardContent; } });
31
+ Object.defineProperty(exports, "entityAutoHeight", { enumerable: true, get: function () { return card_2.entityAutoHeight; } });
32
+ Object.defineProperty(exports, "classCardContent", { enumerable: true, get: function () { return card_2.classCardContent; } });
33
+ Object.defineProperty(exports, "classAutoHeight", { enumerable: true, get: function () { return card_2.classAutoHeight; } });
27
34
  var handles_1 = require("./handles");
28
35
  Object.defineProperty(exports, "erTable", { enumerable: true, get: function () { return handles_1.erTable; } });
29
36
  Object.defineProperty(exports, "umlClass", { enumerable: true, get: function () { return handles_1.umlClass; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/diagram-kit/index.ts"],"names":[],"mappings":";;;AAAA,2BAWc;AAVZ,+FAAA,SAAS,OAAA;AACT,kGAAA,YAAY,OAAA;AACZ,8FAAA,QAAQ,OAAA;AACR,+FAAA,SAAS,OAAA;AAQX,6BAOe;AANb,iGAAA,UAAU,OAAA;AAOZ,mCAAwE;AAA/D,gHAAA,sBAAsB,OAAA;AAAE,8GAAA,oBAAoB,OAAA;AACrD,+BAAsF;AAA7E,2GAAA,mBAAmB,OAAA;AAC5B,mCAQkB;AAPhB,sGAAA,YAAY,OAAA;AACZ,qGAAA,WAAW,OAAA;AACX,qGAAA,WAAW,OAAA;AACX,wGAAA,cAAc,OAAA;AACd,wGAAA,cAAc,OAAA;AAIhB,qCAAoE;AAA3D,0GAAA,eAAe,OAAA;AACxB,+BAAqD;AAA5C,oGAAA,YAAY,OAAA;AAAE,qGAAA,aAAa,OAAA;AACpC,qCAYmB;AAXjB,kGAAA,OAAO,OAAA;AACP,mGAAA,QAAQ,OAAA;AACR,mGAAA,QAAQ,OAAA;AACR,qGAAA,UAAU,OAAA;AACV,qGAAA,UAAU,OAAA;AACV,kGAAA,OAAO,OAAA;AACP,kGAAA,OAAO,OAAA;AACP,uGAAA,YAAY,OAAA;AACZ,mGAAA,QAAQ,OAAA;AACR,wGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/diagram-kit/index.ts"],"names":[],"mappings":";;;AAAA,2BAWc;AAVZ,+FAAA,SAAS,OAAA;AACT,kGAAA,YAAY,OAAA;AACZ,8FAAA,QAAQ,OAAA;AACR,+FAAA,SAAS,OAAA;AAQX,6BAOe;AANb,iGAAA,UAAU,OAAA;AAOZ,mCAAwE;AAA/D,gHAAA,sBAAsB,OAAA;AAAE,8GAAA,oBAAoB,OAAA;AACrD,+BAAsF;AAA7E,2GAAA,mBAAmB,OAAA;AAC5B,mCAQkB;AAPhB,sGAAA,YAAY,OAAA;AACZ,qGAAA,WAAW,OAAA;AACX,qGAAA,WAAW,OAAA;AACX,wGAAA,cAAc,OAAA;AACd,wGAAA,cAAc,OAAA;AAIhB,qCAAoE;AAA3D,0GAAA,eAAe,OAAA;AACxB,+BAAqD;AAA5C,oGAAA,YAAY,OAAA;AAAE,qGAAA,aAAa,OAAA;AACpC,2EAA2E;AAC3E,2EAA2E;AAC3E,+BAAgG;AAAvF,yGAAA,iBAAiB,OAAA;AAAE,wGAAA,gBAAgB,OAAA;AAAE,wGAAA,gBAAgB,OAAA;AAAE,uGAAA,eAAe,OAAA;AAC/E,qCAYmB;AAXjB,kGAAA,OAAO,OAAA;AACP,mGAAA,QAAQ,OAAA;AACR,mGAAA,QAAQ,OAAA;AACR,qGAAA,UAAU,OAAA;AACV,qGAAA,UAAU,OAAA;AACV,kGAAA,OAAO,OAAA;AACP,kGAAA,OAAO,OAAA;AACP,uGAAA,YAAY,OAAA;AACZ,mGAAA,QAAQ,OAAA;AACR,wGAAA,aAAa,OAAA"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Stencil BUILDERS — how a dropped master becomes node(s).
3
+ *
4
+ * Most masters are a silhouette plus a label, and `NodeFactory` builds those
5
+ * perfectly well. A few are not shapes at all: an ER entity or a UML class is a
6
+ * CARD with rows you select, rename and add to. The diagram kits already build
7
+ * exactly those cards, with inline editing, row-selection events and an undoable
8
+ * update funnel — and the palette had no way to reach them, so dropping "Entity"
9
+ * produced a rectangle.
10
+ *
11
+ * Rather than special-case ids inside the palette (which would hardcode ER/UML
12
+ * knowledge into a module that should not have it, and would lock a host's own
13
+ * stencils out of the same capability), a master resolves to a REGISTERED
14
+ * builder. The default builder is the template path; the ER and UML kits
15
+ * register card builders; anyone can register their own.
16
+ *
17
+ * registerStencilBuilder('erd-entity', myBuilder);
18
+ */
19
+ import type { NodeTemplate } from '@grafloria/engine';
20
+ /** What a builder is handed. */
21
+ export interface StencilBuildContext {
22
+ /** The live diagram instance (engine + model + container). */
23
+ api: any;
24
+ /** The master being placed. */
25
+ master: NodeTemplate;
26
+ /** World position for the node's TOP-LEFT (the palette centres before calling). */
27
+ at: {
28
+ x: number;
29
+ y: number;
30
+ };
31
+ }
32
+ /**
33
+ * Build the node(s) for a master. Return the created root node — the palette
34
+ * takes it from there (undo entry, membership, onPlace). Return `null` to fall
35
+ * through to the default template path.
36
+ */
37
+ export type StencilBuilder = (ctx: StencilBuildContext) => any | null;
38
+ /** Register the builder for a master id. Last registration wins. */
39
+ export declare function registerStencilBuilder(masterId: string, builder: StencilBuilder): void;
40
+ /** The builder for a master id, or undefined for the default template path. */
41
+ export declare function getStencilBuilder(masterId: string): StencilBuilder | undefined;
42
+ /** Drop a registration (tests, or a host replacing a built-in). */
43
+ export declare function unregisterStencilBuilder(masterId: string): boolean;
44
+ /** Every master id that currently resolves to a card builder. */
45
+ export declare function registeredStencilBuilders(): string[];
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerStencilBuilder = registerStencilBuilder;
4
+ exports.getStencilBuilder = getStencilBuilder;
5
+ exports.unregisterStencilBuilder = unregisterStencilBuilder;
6
+ exports.registeredStencilBuilders = registeredStencilBuilders;
7
+ const builders = new Map();
8
+ /** Register the builder for a master id. Last registration wins. */
9
+ function registerStencilBuilder(masterId, builder) {
10
+ builders.set(masterId, builder);
11
+ }
12
+ /** The builder for a master id, or undefined for the default template path. */
13
+ function getStencilBuilder(masterId) {
14
+ return builders.get(masterId);
15
+ }
16
+ /** Drop a registration (tests, or a host replacing a built-in). */
17
+ function unregisterStencilBuilder(masterId) {
18
+ return builders.delete(masterId);
19
+ }
20
+ /** Every master id that currently resolves to a card builder. */
21
+ function registeredStencilBuilders() {
22
+ return [...builders.keys()].sort();
23
+ }
24
+ //# sourceMappingURL=builders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builders.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/stencil-kit/builders.ts"],"names":[],"mappings":";;AAwCA,wDAEC;AAGD,8CAEC;AAGD,4DAEC;AAGD,8DAEC;AApBD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;AAEnD,oEAAoE;AACpE,SAAgB,sBAAsB,CAAC,QAAgB,EAAE,OAAuB;IAC9E,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,+EAA+E;AAC/E,SAAgB,iBAAiB,CAAC,QAAgB;IAChD,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAChC,CAAC;AAED,mEAAmE;AACnE,SAAgB,wBAAwB,CAAC,QAAgB;IACvD,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED,iEAAiE;AACjE,SAAgB,yBAAyB;IACvC,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACrC,CAAC"}
@@ -0,0 +1,2 @@
1
+ /** Register the built-in card builders (ER entity/table, UML classifiers). */
2
+ export declare function registerCardBuilders(): void;
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerCardBuilders = registerCardBuilders;
4
+ /**
5
+ * Card builders for the stencil palette — the bridge that finally lets a
6
+ * dropped "Entity" or "Class" be a REAL kit card instead of a rectangle.
7
+ *
8
+ * Everything here is reuse. `entityCardContent` / `classCardContent` and their
9
+ * auto-height helpers are the same functions `erDiagram()` / `umlDiagram()`
10
+ * use, so a dropped card is byte-for-byte the card those kits produce — which
11
+ * means the row-selection layer (`axk:row-select`), the inline editors and the
12
+ * `erTable(api, id)` / `umlClass(api, id)` handles all work on it for free.
13
+ *
14
+ * The kit's own bindings are idempotent per container, so binding them again
15
+ * after a drop is safe and is what makes the FIRST dropped card interactive on
16
+ * a canvas that was never built by a kit.
17
+ */
18
+ const engine_1 = require("@grafloria/engine");
19
+ const diagram_kit_1 = require("../diagram-kit");
20
+ const builders_1 = require("./builders");
21
+ /** Cards are transparent: the HTML body IS the card, the shape must not paint. */
22
+ const CARD_SHAPE = { type: 'rect', fill: 'none', stroke: 'none' };
23
+ const CARD_STYLE = { fill: 'transparent', stroke: 'transparent', strokeWidth: 0 };
24
+ let seq = 0;
25
+ const nextId = (prefix) => `${prefix}-${++seq}`;
26
+ /** Turn the kit's card spec into a live node, and make the canvas interactive. */
27
+ function mountCard(ctx, opts) {
28
+ var _a, _b, _c, _d;
29
+ (0, diagram_kit_1.ensureDiagramKitStyles)();
30
+ const node = new engine_1.NodeModel({
31
+ id: opts.id,
32
+ type: 'kit-card',
33
+ position: { x: ctx.at.x, y: ctx.at.y },
34
+ size: { width: opts.width, height: opts.height },
35
+ });
36
+ // The SAME metadata shape erDiagram()/umlDiagram() stamp — that is what the
37
+ // row and editing layers key off.
38
+ node.setMetadata('html', { content: opts.content, interactive: true });
39
+ node.setMetadata(opts.metaKey, opts.spec);
40
+ node.setMetadata('kitEditable', true);
41
+ node.setMetadata('shape', CARD_SHAPE);
42
+ (_a = node.setStyle) === null || _a === void 0 ? void 0 : _a.call(node, CARD_STYLE);
43
+ ctx.api.getModel().addNode(node);
44
+ // Bind the kit runtime for this container. Both are idempotent, so a canvas
45
+ // that already ran a kit's finalize() is unaffected, and one that never did
46
+ // becomes editable on the first drop.
47
+ const container = (_b = ctx.api.container) !== null && _b !== void 0 ? _b : (_d = (_c = ctx.api).getContainer) === null || _d === void 0 ? void 0 : _d.call(_c);
48
+ if (container) {
49
+ const kitApi = Object.assign(Object.assign({}, ctx.api), { container });
50
+ try {
51
+ (0, diagram_kit_1.bindRowInteractions)(kitApi);
52
+ }
53
+ catch ( /* optional */_e) { /* optional */ }
54
+ try {
55
+ (0, diagram_kit_1.bindCardEditing)(kitApi);
56
+ }
57
+ catch ( /* optional */_f) { /* optional */ }
58
+ }
59
+ return node;
60
+ }
61
+ /** Register the built-in card builders (ER entity/table, UML classifiers). */
62
+ function registerCardBuilders() {
63
+ for (const masterId of ['erd-entity', 'erd-table', 'erd-associative-entity', 'erd-bridge-entity']) {
64
+ (0, builders_1.registerStencilBuilder)(masterId, (ctx) => {
65
+ var _a, _b;
66
+ const id = nextId('entity');
67
+ const spec = {
68
+ id,
69
+ name: (_b = (_a = ctx.master.meta) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : 'Entity',
70
+ columns: [
71
+ { name: 'id', type: 'uuid', pk: true },
72
+ { name: 'name', type: 'varchar' },
73
+ ],
74
+ };
75
+ return mountCard(ctx, {
76
+ id,
77
+ width: 220,
78
+ height: (0, diagram_kit_1.entityAutoHeight)(spec, true),
79
+ content: (0, diagram_kit_1.entityCardContent)(spec, true),
80
+ metaKey: 'kitEntity',
81
+ spec,
82
+ });
83
+ });
84
+ }
85
+ for (const masterId of ['uml-class', 'uml-abstract-class', 'uml-interface']) {
86
+ (0, builders_1.registerStencilBuilder)(masterId, (ctx) => {
87
+ var _a, _b;
88
+ const id = nextId('class');
89
+ const spec = {
90
+ id,
91
+ name: (_b = (_a = ctx.master.meta) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : 'Class',
92
+ abstract: masterId === 'uml-abstract-class',
93
+ stereotype: masterId === 'uml-interface' ? 'interface' : undefined,
94
+ attributes: ['- field: Type'],
95
+ methods: ['+ method(): void'],
96
+ };
97
+ return mountCard(ctx, {
98
+ id,
99
+ width: 220,
100
+ height: (0, diagram_kit_1.classAutoHeight)(spec, true),
101
+ content: (0, diagram_kit_1.classCardContent)(spec, true),
102
+ metaKey: 'kitClass',
103
+ spec,
104
+ });
105
+ });
106
+ }
107
+ }
108
+ //# sourceMappingURL=card-builders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card-builders.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/stencil-kit/card-builders.ts"],"names":[],"mappings":"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"}
@@ -3,3 +3,5 @@ export type { StencilPaletteApi, StencilPaletteOptions, StencilPaletteHandle, }
3
3
  export { bindShapeDataPanel } from './shape-data';
4
4
  export type { ShapeDataPanelApi, ShapeDataPanelOptions, ShapeDataPanelHandle } from './shape-data';
5
5
  export { ensureStencilKitStyles } from './styles';
6
+ export { registerStencilBuilder, getStencilBuilder, unregisterStencilBuilder, registeredStencilBuilders, } from './builders';
7
+ export type { StencilBuilder, StencilBuildContext } from './builders';
@@ -1,10 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ensureStencilKitStyles = exports.bindShapeDataPanel = exports.bindStencilPalette = void 0;
3
+ exports.registeredStencilBuilders = exports.unregisterStencilBuilder = exports.getStencilBuilder = exports.registerStencilBuilder = exports.ensureStencilKitStyles = exports.bindShapeDataPanel = exports.bindStencilPalette = void 0;
4
4
  var palette_1 = require("./palette");
5
5
  Object.defineProperty(exports, "bindStencilPalette", { enumerable: true, get: function () { return palette_1.bindStencilPalette; } });
6
6
  var shape_data_1 = require("./shape-data");
7
7
  Object.defineProperty(exports, "bindShapeDataPanel", { enumerable: true, get: function () { return shape_data_1.bindShapeDataPanel; } });
8
8
  var styles_1 = require("./styles");
9
9
  Object.defineProperty(exports, "ensureStencilKitStyles", { enumerable: true, get: function () { return styles_1.ensureStencilKitStyles; } });
10
+ var builders_1 = require("./builders");
11
+ Object.defineProperty(exports, "registerStencilBuilder", { enumerable: true, get: function () { return builders_1.registerStencilBuilder; } });
12
+ Object.defineProperty(exports, "getStencilBuilder", { enumerable: true, get: function () { return builders_1.getStencilBuilder; } });
13
+ Object.defineProperty(exports, "unregisterStencilBuilder", { enumerable: true, get: function () { return builders_1.unregisterStencilBuilder; } });
14
+ Object.defineProperty(exports, "registeredStencilBuilders", { enumerable: true, get: function () { return builders_1.registeredStencilBuilders; } });
15
+ const card_builders_1 = require("./card-builders");
16
+ // The ER/UML card builders ship registered — dropping "Entity" gives a real,
17
+ // editable table out of the box.
18
+ (0, card_builders_1.registerCardBuilders)();
10
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/stencil-kit/index.ts"],"names":[],"mappings":";;;AAAA,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAM3B,2CAAkD;AAAzC,gHAAA,kBAAkB,OAAA;AAE3B,mCAAkD;AAAzC,gHAAA,sBAAsB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/stencil-kit/index.ts"],"names":[],"mappings":";;;AAAA,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA;AAM3B,2CAAkD;AAAzC,gHAAA,kBAAkB,OAAA;AAE3B,mCAAkD;AAAzC,gHAAA,sBAAsB,OAAA;AAC/B,uCAEoB;AADlB,kHAAA,sBAAsB,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AAAE,oHAAA,wBAAwB,OAAA;AAAE,qHAAA,yBAAyB,OAAA;AAGhG,mDAAuD;AACvD,6EAA6E;AAC7E,iCAAiC;AACjC,IAAA,oCAAoB,GAAE,CAAC"}
@@ -63,9 +63,9 @@ export interface StencilPaletteOptions {
63
63
  stroke?: string;
64
64
  }>;
65
65
  /**
66
- * Keep `useHTMLLayer` on placed masters. Only set this when the host really
67
- * runs an HTML layer that paints `node.data._html`; with the plain SVG
68
- * renderer the flag makes the node render as an empty group (see `place`).
66
+ * Opt a placed master INTO `useHTMLLayer`. Only set this when the host really
67
+ * runs an HTML layer that paints `node.data._html` with the plain SVG
68
+ * renderer the flag makes the node render as an empty group.
69
69
  */
70
70
  htmlLayer?: boolean;
71
71
  }
@@ -20,6 +20,7 @@ const tslib_1 = require("tslib");
20
20
  const engine_1 = require("@grafloria/engine");
21
21
  const renderer_1 = require("@grafloria/renderer");
22
22
  const styles_1 = require("./styles");
23
+ const builders_1 = require("./builders");
23
24
  const SVG_NS = 'http://www.w3.org/2000/svg';
24
25
  /** The MIME the palette drags with — namespaced so a page's other DnD is untouched. */
25
26
  const DND_TYPE = 'application/x-grafloria-master';
@@ -309,7 +310,7 @@ function bindStencilPalette(api, hosts, options = {}) {
309
310
  */
310
311
  function place(masterId, world) {
311
312
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
312
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
313
+ var _a, _b, _c, _d, _e, _f, _g, _h;
313
314
  const engine = api.getEngine();
314
315
  const diagram = api.getModel();
315
316
  const registry = engine === null || engine === void 0 ? void 0 : engine.templateRegistry;
@@ -320,24 +321,23 @@ function bindStencilPalette(api, hosts, options = {}) {
320
321
  const w = Number((_b = struct.size) === null || _b === void 0 ? void 0 : _b.width) || 100;
321
322
  const h = Number((_c = struct.size) === null || _c === void 0 ? void 0 : _c.height) || 60;
322
323
  const at = { x: world.x - w / 2, y: world.y - h / 2 }; // drop centres on the cursor
323
- const factory = new engine_1.NodeFactory(registry, diagram);
324
- const root = factory.createFromTemplate(masterId, (_e = (_d = options.data) === null || _d === void 0 ? void 0 : _d.call(options, master)) !== null && _e !== void 0 ? _e : {}, at);
325
- const created = subtree(diagram, root);
326
- // `NodeFactory` flags any master carrying `structure.html` as `useHTMLLayer`
327
- // and the SVG renderer answers that flag with an EMPTY <g> (it expects an
328
- // HTML layer to paint the body from `metadata.html`, while the factory
329
- // stashes its config on `node.data._html` instead). All 80 generated masters
330
- // declare html, so every dropped shape rendered as nothing at all.
331
- //
332
- // The geometry the palette already drew as a thumbnail is right there in
333
- // `metadata.shape`, so drop the flag and let the SVG path paint the real
334
- // silhouette + label. Hosts that DO run an HTML layer can opt back in with
335
- // `htmlLayer: true`.
336
- if (options.htmlLayer !== true) {
337
- for (const n of created) {
338
- if (((_f = n.getMetadata) === null || _f === void 0 ? void 0 : _f.call(n, 'useHTMLLayer')) === true)
339
- n.setMetadata('useHTMLLayer', false);
340
- }
324
+ // A master may resolve to a registered BUILDER (an ER entity / UML class is
325
+ // a kit card, not a silhouette). Anything without one takes the template
326
+ // path see stencil-kit/builders.ts for why this is a registry and not an
327
+ // id check inside the palette.
328
+ const builder = (0, builders_1.getStencilBuilder)(masterId);
329
+ const built = builder ? builder({ api, master, at }) : null;
330
+ const factory = built ? null : new engine_1.NodeFactory(registry, diagram);
331
+ const root = built !== null && built !== void 0 ? built : factory.createFromTemplate(masterId, (_e = (_d = options.data) === null || _d === void 0 ? void 0 : _d.call(options, master)) !== null && _e !== void 0 ? _e : {}, at);
332
+ const created = built ? [built] : subtree(diagram, root);
333
+ // NOTE: masters used to need `useHTMLLayer` stripped here or they rendered
334
+ // as empty groups. That is fixed at the source now (NodeFactory no longer
335
+ // sets the flag see NodeFactory.html-contract.spec.ts), so the workaround
336
+ // is gone. `htmlLayer: true` is still honoured for hosts that set the flag
337
+ // themselves and DO run a layer that paints it.
338
+ if (options.htmlLayer === true) {
339
+ for (const n of created)
340
+ n.setMetadata('useHTMLLayer', true);
341
341
  }
342
342
  // COMPARTMENTS & EVENT MARKERS. `metadata.panel` drives the renderer's
343
343
  // composite-panel overlay (header band + stacked rows + a corner glyph) —
@@ -353,8 +353,8 @@ function bindStencilPalette(api, hosts, options = {}) {
353
353
  const cmds = created.map((n) => new engine_1.AddNodeCommand(n));
354
354
  for (const n of [...created].reverse())
355
355
  diagram.removeNode(n.id);
356
- yield engine.commandManager.execute(new engine_1.BatchCommand(`Place ${(_h = (_g = master.meta) === null || _g === void 0 ? void 0 : _g.name) !== null && _h !== void 0 ? _h : masterId}`, cmds));
357
- (_j = options.onPlace) === null || _j === void 0 ? void 0 : _j.call(options, { master, nodeId: root.id, x: at.x, y: at.y });
356
+ yield engine.commandManager.execute(new engine_1.BatchCommand(`Place ${(_g = (_f = master.meta) === null || _f === void 0 ? void 0 : _f.name) !== null && _g !== void 0 ? _g : masterId}`, cmds));
357
+ (_h = options.onPlace) === null || _h === void 0 ? void 0 : _h.call(options, { master, nodeId: root.id, x: at.x, y: at.y });
358
358
  return root.id;
359
359
  });
360
360
  }
@@ -1 +1 @@
1
- {"version":3,"file":"palette.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/stencil-kit/palette.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"palette.js","sourceRoot":"","sources":["../../../../../../libs/element/src/lib/stencil-kit/palette.ts"],"names":[],"mappings":"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"}