@vectoriox/iox-ui 4.2.10 → 4.2.11
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.
|
@@ -1227,6 +1227,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
1227
1227
|
type: Input
|
|
1228
1228
|
}] } });
|
|
1229
1229
|
|
|
1230
|
+
/**
|
|
1231
|
+
* Directive-host Heading: the real `<h1>`…`<h6>` IS the host — no `app-builder-heading`
|
|
1232
|
+
* wrapper, no inner/outer split. The tag is chosen by whoever CREATES the component
|
|
1233
|
+
* (engine: `createComponent({ hostElement: document.createElement(level) })`; builder:
|
|
1234
|
+
* RenderDirective does the same), NOT by an internal ngSwitch. `level` is kept as an input
|
|
1235
|
+
* for that creation logic + serialization. Editing (contenteditable) runs in the builder only.
|
|
1236
|
+
*/
|
|
1230
1237
|
class BuilderHeadingComponent {
|
|
1231
1238
|
constructor(events, cdr) {
|
|
1232
1239
|
this.events = events;
|
|
@@ -1263,11 +1270,12 @@ class BuilderHeadingComponent {
|
|
|
1263
1270
|
this.syncTraitToPanel('content', newValue);
|
|
1264
1271
|
}
|
|
1265
1272
|
onKeyDown(event) {
|
|
1266
|
-
|
|
1273
|
+
const ke = event;
|
|
1274
|
+
if (ke.key === 'Enter' && !ke.shiftKey) {
|
|
1267
1275
|
event.preventDefault();
|
|
1268
1276
|
event.target.blur();
|
|
1269
1277
|
}
|
|
1270
|
-
if (
|
|
1278
|
+
if (ke.key === 'Escape') {
|
|
1271
1279
|
this.editing = false;
|
|
1272
1280
|
this.cdr.reattach();
|
|
1273
1281
|
event.target.blur();
|
|
@@ -1287,65 +1295,18 @@ class BuilderHeadingComponent {
|
|
|
1287
1295
|
this.events.emit('elementselect', { node: this.node, componentRef: null, isCanvasUpdate: true });
|
|
1288
1296
|
}
|
|
1289
1297
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: BuilderHeadingComponent, deps: [{ token: IOX_BUILDER_EVENTS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1290
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: BuilderHeadingComponent, isStandalone: false, selector: "
|
|
1291
|
-
<ng-container [ngSwitch]="level">
|
|
1292
|
-
<h1 *ngSwitchCase="'h1'" [ngClass]="'iox-node-' + nodeId"
|
|
1293
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1294
|
-
(mousedown)="onMouseDown($event)"
|
|
1295
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h1>
|
|
1296
|
-
<h2 *ngSwitchCase="'h2'" [ngClass]="'iox-node-' + nodeId"
|
|
1297
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1298
|
-
(mousedown)="onMouseDown($event)"
|
|
1299
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h2>
|
|
1300
|
-
<h3 *ngSwitchCase="'h3'" [ngClass]="'iox-node-' + nodeId"
|
|
1301
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1302
|
-
(mousedown)="onMouseDown($event)"
|
|
1303
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h3>
|
|
1304
|
-
<h4 *ngSwitchCase="'h4'" [ngClass]="'iox-node-' + nodeId"
|
|
1305
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1306
|
-
(mousedown)="onMouseDown($event)"
|
|
1307
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h4>
|
|
1308
|
-
<h5 *ngSwitchCase="'h5'" [ngClass]="'iox-node-' + nodeId"
|
|
1309
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1310
|
-
(mousedown)="onMouseDown($event)"
|
|
1311
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h5>
|
|
1312
|
-
<h6 *ngSwitchDefault [ngClass]="'iox-node-' + nodeId"
|
|
1313
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1314
|
-
(mousedown)="onMouseDown($event)"
|
|
1315
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h6>
|
|
1316
|
-
</ng-container>
|
|
1317
|
-
`, isInline: true, styles: ["h1,h2,h3,h4,h5,h6{margin:0}[contenteditable]{outline:none;cursor:text}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgSwitchDefault, selector: "[ngSwitchDefault]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1298
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: BuilderHeadingComponent, isStandalone: false, selector: "h1[iox-heading],h2[iox-heading],h3[iox-heading],h4[iox-heading],h5[iox-heading],h6[iox-heading]", inputs: { content: "content", level: "level", nodeId: "nodeId", node: "node" }, host: { listeners: { "mousedown": "onMouseDown($event)", "dblclick": "startEdit($event)", "blur": "commitEdit($event)", "keydown": "onKeyDown($event)" }, properties: { "class": "'iox-node-' + nodeId", "attr.contenteditable": "editing ? 'true' : null" } }, ngImport: i0, template: `{{ content }}`, isInline: true, styles: [":host{margin:0}:host[contenteditable]{outline:none;cursor:text}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1318
1299
|
}
|
|
1319
1300
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: BuilderHeadingComponent, decorators: [{
|
|
1320
1301
|
type: Component,
|
|
1321
|
-
args: [{ selector: '
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
(mousedown)="onMouseDown($event)"
|
|
1330
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h2>
|
|
1331
|
-
<h3 *ngSwitchCase="'h3'" [ngClass]="'iox-node-' + nodeId"
|
|
1332
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1333
|
-
(mousedown)="onMouseDown($event)"
|
|
1334
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h3>
|
|
1335
|
-
<h4 *ngSwitchCase="'h4'" [ngClass]="'iox-node-' + nodeId"
|
|
1336
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1337
|
-
(mousedown)="onMouseDown($event)"
|
|
1338
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h4>
|
|
1339
|
-
<h5 *ngSwitchCase="'h5'" [ngClass]="'iox-node-' + nodeId"
|
|
1340
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1341
|
-
(mousedown)="onMouseDown($event)"
|
|
1342
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h5>
|
|
1343
|
-
<h6 *ngSwitchDefault [ngClass]="'iox-node-' + nodeId"
|
|
1344
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1345
|
-
(mousedown)="onMouseDown($event)"
|
|
1346
|
-
(dblclick)="startEdit($event)" (blur)="commitEdit($event)" (keydown)="onKeyDown($event)">{{ content }}</h6>
|
|
1347
|
-
</ng-container>
|
|
1348
|
-
`, standalone: false, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["h1,h2,h3,h4,h5,h6{margin:0}[contenteditable]{outline:none;cursor:text}\n"] }]
|
|
1302
|
+
args: [{ selector: 'h1[iox-heading],h2[iox-heading],h3[iox-heading],h4[iox-heading],h5[iox-heading],h6[iox-heading]', template: `{{ content }}`, host: {
|
|
1303
|
+
'[class]': "'iox-node-' + nodeId",
|
|
1304
|
+
'[attr.contenteditable]': "editing ? 'true' : null",
|
|
1305
|
+
'(mousedown)': 'onMouseDown($event)',
|
|
1306
|
+
'(dblclick)': 'startEdit($event)',
|
|
1307
|
+
'(blur)': 'commitEdit($event)',
|
|
1308
|
+
'(keydown)': 'onKeyDown($event)',
|
|
1309
|
+
}, standalone: false, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{margin:0}:host[contenteditable]{outline:none;cursor:text}\n"] }]
|
|
1349
1310
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
1350
1311
|
type: Optional
|
|
1351
1312
|
}, {
|
|
@@ -1361,6 +1322,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
1361
1322
|
type: Input
|
|
1362
1323
|
}] } });
|
|
1363
1324
|
|
|
1325
|
+
/**
|
|
1326
|
+
* Directive-host Text: the real `<p>`/`<span>` IS the host — no `app-text-block` wrapper,
|
|
1327
|
+
* no inner/outer split. The tag is chosen by whoever CREATES the component (engine/builder
|
|
1328
|
+
* pass `hostElement`), NOT an internal ngSwitch. Content is rich HTML (Quill) → bound via
|
|
1329
|
+
* `[innerHTML]` on the host. Editing (contenteditable) runs in the builder only.
|
|
1330
|
+
*/
|
|
1364
1331
|
class TextBlockComponent {
|
|
1365
1332
|
constructor(events, cdr) {
|
|
1366
1333
|
this.events = events;
|
|
@@ -1409,7 +1376,7 @@ class TextBlockComponent {
|
|
|
1409
1376
|
const newValue = el.innerText;
|
|
1410
1377
|
this.content = newValue;
|
|
1411
1378
|
// Explicitly reset to plain text so any pasted HTML nodes are gone
|
|
1412
|
-
// before Angular re-renders
|
|
1379
|
+
// before Angular re-renders [innerHTML]
|
|
1413
1380
|
el.textContent = newValue;
|
|
1414
1381
|
this.cdr.reattach();
|
|
1415
1382
|
this.syncTraitToPanel('content', newValue);
|
|
@@ -1435,57 +1402,21 @@ class TextBlockComponent {
|
|
|
1435
1402
|
this.events.emit('elementselect', { node: this.node, componentRef: null, isCanvasUpdate: true });
|
|
1436
1403
|
}
|
|
1437
1404
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: TextBlockComponent, deps: [{ token: IOX_BUILDER_EVENTS, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1438
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: TextBlockComponent, isStandalone: false, selector: "
|
|
1439
|
-
<ng-container [ngSwitch]="tag">
|
|
1440
|
-
<p *ngSwitchDefault
|
|
1441
|
-
[ngClass]="'iox-node-' + nodeId"
|
|
1442
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1443
|
-
(pointerdown)="onPointerDown($event)"
|
|
1444
|
-
(mousedown)="onMouseDown($event)"
|
|
1445
|
-
(dblclick)="startEdit($event)"
|
|
1446
|
-
(blur)="commitEdit($event)"
|
|
1447
|
-
(keydown)="onKeyDown($event)"
|
|
1448
|
-
(paste)="onPaste($event)"
|
|
1449
|
-
[innerHTML]="content"></p>
|
|
1450
|
-
<span *ngSwitchCase="'span'"
|
|
1451
|
-
[ngClass]="'iox-node-' + nodeId"
|
|
1452
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1453
|
-
(pointerdown)="onPointerDown($event)"
|
|
1454
|
-
(mousedown)="onMouseDown($event)"
|
|
1455
|
-
(dblclick)="startEdit($event)"
|
|
1456
|
-
(blur)="commitEdit($event)"
|
|
1457
|
-
(keydown)="onKeyDown($event)"
|
|
1458
|
-
(paste)="onPaste($event)"
|
|
1459
|
-
[innerHTML]="content"></span>
|
|
1460
|
-
</ng-container>
|
|
1461
|
-
`, isInline: true, styles: ["p,span{margin:0;white-space:pre-wrap}[contenteditable]{outline:none;cursor:text}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$2.NgSwitchDefault, selector: "[ngSwitchDefault]" }] }); }
|
|
1405
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: TextBlockComponent, isStandalone: false, selector: "p[iox-text],span[iox-text]", inputs: { content: "content", tag: "tag", style: "style", nodeId: "nodeId", node: "node" }, host: { listeners: { "pointerdown": "onPointerDown($event)", "mousedown": "onMouseDown($event)", "dblclick": "startEdit($event)", "blur": "commitEdit($event)", "keydown": "onKeyDown($event)", "paste": "onPaste($event)" }, properties: { "class": "'iox-node-' + nodeId", "innerHTML": "content", "attr.contenteditable": "editing ? 'true' : null" } }, ngImport: i0, template: ``, isInline: true, styles: [":host{margin:0;white-space:pre-wrap}:host[contenteditable]{outline:none;cursor:text}\n"] }); }
|
|
1462
1406
|
}
|
|
1463
1407
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: TextBlockComponent, decorators: [{
|
|
1464
1408
|
type: Component,
|
|
1465
|
-
args: [{ selector: '
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
[innerHTML]="content"></p>
|
|
1477
|
-
<span *ngSwitchCase="'span'"
|
|
1478
|
-
[ngClass]="'iox-node-' + nodeId"
|
|
1479
|
-
[attr.contenteditable]="editing ? 'true' : null"
|
|
1480
|
-
(pointerdown)="onPointerDown($event)"
|
|
1481
|
-
(mousedown)="onMouseDown($event)"
|
|
1482
|
-
(dblclick)="startEdit($event)"
|
|
1483
|
-
(blur)="commitEdit($event)"
|
|
1484
|
-
(keydown)="onKeyDown($event)"
|
|
1485
|
-
(paste)="onPaste($event)"
|
|
1486
|
-
[innerHTML]="content"></span>
|
|
1487
|
-
</ng-container>
|
|
1488
|
-
`, standalone: false, styles: ["p,span{margin:0;white-space:pre-wrap}[contenteditable]{outline:none;cursor:text}\n"] }]
|
|
1409
|
+
args: [{ selector: 'p[iox-text],span[iox-text]', template: ``, host: {
|
|
1410
|
+
'[class]': "'iox-node-' + nodeId",
|
|
1411
|
+
'[innerHTML]': 'content',
|
|
1412
|
+
'[attr.contenteditable]': "editing ? 'true' : null",
|
|
1413
|
+
'(pointerdown)': 'onPointerDown($event)',
|
|
1414
|
+
'(mousedown)': 'onMouseDown($event)',
|
|
1415
|
+
'(dblclick)': 'startEdit($event)',
|
|
1416
|
+
'(blur)': 'commitEdit($event)',
|
|
1417
|
+
'(keydown)': 'onKeyDown($event)',
|
|
1418
|
+
'(paste)': 'onPaste($event)',
|
|
1419
|
+
}, standalone: false, styles: [":host{margin:0;white-space:pre-wrap}:host[contenteditable]{outline:none;cursor:text}\n"] }]
|
|
1489
1420
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
1490
1421
|
type: Optional
|
|
1491
1422
|
}, {
|
|
@@ -1627,6 +1558,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
1627
1558
|
args: ['childrenHost', { read: ViewContainerRef, static: true }]
|
|
1628
1559
|
}] } });
|
|
1629
1560
|
|
|
1561
|
+
/**
|
|
1562
|
+
* Directive-host ButtonBlock: the real `<a>`/`<button>` IS the host — no `app-button-block`
|
|
1563
|
+
* wrapper, no inner/outer split. The tag is chosen by whoever CREATES the component (engine
|
|
1564
|
+
* passes `hostElement`: `<a>` when `tag==='a'`, else `<button>`), NOT an internal `*ngIf`.
|
|
1565
|
+
* The `iox-btn-block` class (UA resets: inline-flex, color/font inherit, no border) matches the
|
|
1566
|
+
* string renderer and lives in the engine's global styles.scss — kept OFF `:host` so styleProps
|
|
1567
|
+
* (`.iox-node-{id}`) can override it. Children render into the host via `childrenHost`.
|
|
1568
|
+
*/
|
|
1630
1569
|
class ButtonBlockComponent {
|
|
1631
1570
|
constructor() {
|
|
1632
1571
|
this.tag = 'button';
|
|
@@ -1635,39 +1574,17 @@ class ButtonBlockComponent {
|
|
|
1635
1574
|
this.type = 'button';
|
|
1636
1575
|
this.nodeId = '';
|
|
1637
1576
|
}
|
|
1638
|
-
get childrenHost() {
|
|
1639
|
-
return this.tag === 'a' ? this.linkHost : this.buttonHost;
|
|
1640
|
-
}
|
|
1641
1577
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: ButtonBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1642
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: ButtonBlockComponent, isStandalone: false, selector: "
|
|
1643
|
-
<button *ngIf="tag !== 'a'"
|
|
1644
|
-
[ngClass]="'iox-node-' + nodeId"
|
|
1645
|
-
[attr.type]="type">
|
|
1646
|
-
<ng-container #buttonHost></ng-container>
|
|
1647
|
-
</button>
|
|
1648
|
-
<a *ngIf="tag === 'a'"
|
|
1649
|
-
[ngClass]="'iox-node-' + nodeId"
|
|
1650
|
-
[attr.href]="href || null"
|
|
1651
|
-
[attr.target]="target || null">
|
|
1652
|
-
<ng-container #linkHost></ng-container>
|
|
1653
|
-
</a>
|
|
1654
|
-
`, isInline: true, styles: ["button,a{width:100%;font:inherit;color:inherit;text-decoration:none;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
1578
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: ButtonBlockComponent, isStandalone: false, selector: "a[iox-button-block],button[iox-button-block]", inputs: { tag: "tag", href: "href", target: "target", type: "type", nodeId: "nodeId" }, host: { properties: { "class": "'iox-btn-block iox-node-' + nodeId", "attr.href": "tag === 'a' ? (href || null) : null", "attr.target": "tag === 'a' ? (target || null) : null", "attr.type": "tag === 'a' ? null : type" } }, viewQueries: [{ propertyName: "childrenHost", first: true, predicate: ["childrenHost"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `<ng-container #childrenHost></ng-container>`, isInline: true, styles: [":host{box-sizing:border-box}\n"] }); }
|
|
1655
1579
|
}
|
|
1656
1580
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: ButtonBlockComponent, decorators: [{
|
|
1657
1581
|
type: Component,
|
|
1658
|
-
args: [{ selector: '
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
<a *ngIf="tag === 'a'"
|
|
1665
|
-
[ngClass]="'iox-node-' + nodeId"
|
|
1666
|
-
[attr.href]="href || null"
|
|
1667
|
-
[attr.target]="target || null">
|
|
1668
|
-
<ng-container #linkHost></ng-container>
|
|
1669
|
-
</a>
|
|
1670
|
-
`, standalone: false, styles: ["button,a{width:100%;font:inherit;color:inherit;text-decoration:none;box-sizing:border-box}\n"] }]
|
|
1582
|
+
args: [{ selector: 'a[iox-button-block],button[iox-button-block]', template: `<ng-container #childrenHost></ng-container>`, host: {
|
|
1583
|
+
'[class]': "'iox-btn-block iox-node-' + nodeId",
|
|
1584
|
+
'[attr.href]': "tag === 'a' ? (href || null) : null",
|
|
1585
|
+
'[attr.target]': "tag === 'a' ? (target || null) : null",
|
|
1586
|
+
'[attr.type]': "tag === 'a' ? null : type",
|
|
1587
|
+
}, standalone: false, styles: [":host{box-sizing:border-box}\n"] }]
|
|
1671
1588
|
}], propDecorators: { tag: [{
|
|
1672
1589
|
type: Input
|
|
1673
1590
|
}], href: [{
|
|
@@ -1678,12 +1595,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
1678
1595
|
type: Input
|
|
1679
1596
|
}], nodeId: [{
|
|
1680
1597
|
type: Input
|
|
1681
|
-
}],
|
|
1682
|
-
type: ViewChild,
|
|
1683
|
-
args: ['buttonHost', { read: ViewContainerRef, static: false }]
|
|
1684
|
-
}], linkHost: [{
|
|
1598
|
+
}], childrenHost: [{
|
|
1685
1599
|
type: ViewChild,
|
|
1686
|
-
args: ['
|
|
1600
|
+
args: ['childrenHost', { read: ViewContainerRef, static: true }]
|
|
1687
1601
|
}] } });
|
|
1688
1602
|
|
|
1689
1603
|
class ClientSliderContainerComponent {
|
|
@@ -1915,12 +1829,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
1915
1829
|
}] } });
|
|
1916
1830
|
|
|
1917
1831
|
/**
|
|
1918
|
-
*
|
|
1919
|
-
*
|
|
1920
|
-
* `
|
|
1921
|
-
*
|
|
1922
|
-
* The host is chosen from a `*ngIf` branch, so its ViewContainerRef only resolves after change
|
|
1923
|
-
* detection — ClientTreeRendererService detects changes before reading `childrenHost`.
|
|
1832
|
+
* Directive-host List: the real `<ul>`/`<ol>` IS the host — no `iox-list` wrapper, no
|
|
1833
|
+
* inner/outer split. The tag is chosen by whoever CREATES the component (engine passes
|
|
1834
|
+
* `hostElement: document.createElement(htmlTag)`), NOT an internal `*ngIf`. Children render
|
|
1835
|
+
* into the host via `childrenHost`. `start`/`reversed` are host attrs (only meaningful on `<ol>`).
|
|
1924
1836
|
*/
|
|
1925
1837
|
class ClientListComponent {
|
|
1926
1838
|
constructor() {
|
|
@@ -1929,33 +1841,16 @@ class ClientListComponent {
|
|
|
1929
1841
|
this.reversed = false;
|
|
1930
1842
|
this.nodeId = '';
|
|
1931
1843
|
}
|
|
1932
|
-
get childrenHost() {
|
|
1933
|
-
return this.htmlTag === 'ol' ? this.olHost : this.ulHost;
|
|
1934
|
-
}
|
|
1935
1844
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: ClientListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1936
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: ClientListComponent, isStandalone: false, selector: "iox-list", inputs: { htmlTag: "htmlTag", start: "start", reversed: "reversed", nodeId: "nodeId" },
|
|
1937
|
-
<ol *ngIf="htmlTag === 'ol'" [ngClass]="'iox-node-' + nodeId"
|
|
1938
|
-
[attr.start]="start !== '' && start != null ? start : null"
|
|
1939
|
-
[attr.reversed]="reversed ? '' : null">
|
|
1940
|
-
<ng-container #olHost></ng-container>
|
|
1941
|
-
</ol>
|
|
1942
|
-
<ul *ngIf="htmlTag !== 'ol'" [ngClass]="'iox-node-' + nodeId">
|
|
1943
|
-
<ng-container #ulHost></ng-container>
|
|
1944
|
-
</ul>
|
|
1945
|
-
`, isInline: true, styles: [":host{display:contents}ul,ol{margin:0;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
1845
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: ClientListComponent, isStandalone: false, selector: "ul[iox-list],ol[iox-list]", inputs: { htmlTag: "htmlTag", start: "start", reversed: "reversed", nodeId: "nodeId" }, host: { properties: { "class": "'iox-node-' + nodeId", "attr.start": "htmlTag === 'ol' && start !== '' && start != null ? start : null", "attr.reversed": "htmlTag === 'ol' && reversed ? '' : null" } }, viewQueries: [{ propertyName: "childrenHost", first: true, predicate: ["childrenHost"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `<ng-container #childrenHost></ng-container>`, isInline: true, styles: [":host{margin:0;box-sizing:border-box}\n"] }); }
|
|
1946
1846
|
}
|
|
1947
1847
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: ClientListComponent, decorators: [{
|
|
1948
1848
|
type: Component,
|
|
1949
|
-
args: [{ selector: 'iox-list', template:
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
</ol>
|
|
1955
|
-
<ul *ngIf="htmlTag !== 'ol'" [ngClass]="'iox-node-' + nodeId">
|
|
1956
|
-
<ng-container #ulHost></ng-container>
|
|
1957
|
-
</ul>
|
|
1958
|
-
`, standalone: false, styles: [":host{display:contents}ul,ol{margin:0;box-sizing:border-box}\n"] }]
|
|
1849
|
+
args: [{ selector: 'ul[iox-list],ol[iox-list]', template: `<ng-container #childrenHost></ng-container>`, host: {
|
|
1850
|
+
'[class]': "'iox-node-' + nodeId",
|
|
1851
|
+
'[attr.start]': "htmlTag === 'ol' && start !== '' && start != null ? start : null",
|
|
1852
|
+
'[attr.reversed]': "htmlTag === 'ol' && reversed ? '' : null",
|
|
1853
|
+
}, standalone: false, styles: [":host{margin:0;box-sizing:border-box}\n"] }]
|
|
1959
1854
|
}], propDecorators: { htmlTag: [{
|
|
1960
1855
|
type: Input
|
|
1961
1856
|
}], start: [{
|
|
@@ -1964,29 +1859,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImpo
|
|
|
1964
1859
|
type: Input
|
|
1965
1860
|
}], nodeId: [{
|
|
1966
1861
|
type: Input
|
|
1967
|
-
}],
|
|
1968
|
-
type: ViewChild,
|
|
1969
|
-
args: ['olHost', { read: ViewContainerRef }]
|
|
1970
|
-
}], ulHost: [{
|
|
1862
|
+
}], childrenHost: [{
|
|
1971
1863
|
type: ViewChild,
|
|
1972
|
-
args: ['
|
|
1864
|
+
args: ['childrenHost', { read: ViewContainerRef, static: true }]
|
|
1973
1865
|
}] } });
|
|
1974
1866
|
|
|
1975
1867
|
/**
|
|
1976
|
-
*
|
|
1977
|
-
*
|
|
1978
|
-
*
|
|
1868
|
+
* Directive-host List item: the real `<li>` IS the host — no `iox-list-item` wrapper, no
|
|
1869
|
+
* inner/outer split. Children render into the `<li>` via `childrenHost`. Fixed tag (`<li>`),
|
|
1870
|
+
* so the engine creates it with `vcr.createComponent` (no `hostElement` needed).
|
|
1979
1871
|
*/
|
|
1980
1872
|
class ClientListItemComponent {
|
|
1981
1873
|
constructor() {
|
|
1982
1874
|
this.nodeId = '';
|
|
1983
1875
|
}
|
|
1984
1876
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: ClientListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1985
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: ClientListItemComponent, isStandalone: false, selector: "iox-list-item", inputs: { nodeId: "nodeId" }, viewQueries: [{ propertyName: "childrenHost", first: true, predicate: ["childrenHost"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `<
|
|
1877
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: ClientListItemComponent, isStandalone: false, selector: "li[iox-list-item]", inputs: { nodeId: "nodeId" }, host: { properties: { "class": "'iox-node-' + nodeId" } }, viewQueries: [{ propertyName: "childrenHost", first: true, predicate: ["childrenHost"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `<ng-container #childrenHost></ng-container>`, isInline: true, styles: [":host{box-sizing:border-box}\n"] }); }
|
|
1986
1878
|
}
|
|
1987
1879
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: ClientListItemComponent, decorators: [{
|
|
1988
1880
|
type: Component,
|
|
1989
|
-
args: [{ selector: 'iox-list-item', template: `<
|
|
1881
|
+
args: [{ selector: 'li[iox-list-item]', template: `<ng-container #childrenHost></ng-container>`, host: { '[class]': "'iox-node-' + nodeId" }, standalone: false, styles: [":host{box-sizing:border-box}\n"] }]
|
|
1990
1882
|
}], propDecorators: { nodeId: [{
|
|
1991
1883
|
type: Input
|
|
1992
1884
|
}], childrenHost: [{
|