@grafloria/element 0.3.9 → 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.9",
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"}
@@ -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';
@@ -320,9 +321,15 @@ 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);
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);
326
333
  // NOTE: masters used to need `useHTMLLayer` stripped here or they rendered
327
334
  // as empty groups. That is fixed at the source now (NodeFactory no longer
328
335
  // sets the flag — see NodeFactory.html-contract.spec.ts), so the workaround
@@ -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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"}