@akcelik/strct 0.22.0 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/akcelik-strct.mjs +118 -19
- package/fesm2022/akcelik-strct.mjs.map +1 -1
- package/package.json +1 -1
- package/types/akcelik-strct.d.ts +45 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@akcelik/strct",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.24.0",
|
|
4
4
|
"description": "UIStruct — a standalone Angular component library with a tokenised, multi-palette theme system, built for datacenter / infrastructure management UIs.",
|
|
5
5
|
"author": "Serkan Akcelik <serkan.akcelik@gmail.com>",
|
|
6
6
|
"license": "MIT",
|
package/types/akcelik-strct.d.ts
CHANGED
|
@@ -450,20 +450,51 @@ declare class StrctSpeedDial {
|
|
|
450
450
|
|
|
451
451
|
/**
|
|
452
452
|
* Surface container. Compose with the header / block / footer pieces:
|
|
453
|
-
*
|
|
454
|
-
*
|
|
455
|
-
* <strct-card-
|
|
453
|
+
*
|
|
454
|
+
* <strct-card status="warning" collapsible [(collapsed)]="hidden">
|
|
455
|
+
* <strct-card-header icon="host">Host hv-02</strct-card-header>
|
|
456
|
+
* <strct-card-block>…</strct-card-block>
|
|
456
457
|
* <strct-card-footer><button strct-button>OK</button></strct-card-footer>
|
|
457
458
|
* </strct-card>
|
|
459
|
+
*
|
|
460
|
+
* Rich options (all opt-in; defaults preserve the plain card):
|
|
461
|
+
* - `status` — tone rail on the leading edge (same language as alert / hero).
|
|
462
|
+
* - `interactive` — hover lift + accent border for clickable cards.
|
|
463
|
+
* - `selected` — accent ring for picker layouts.
|
|
464
|
+
* - `dense` — tighter paddings for dashboards.
|
|
465
|
+
* - `loading` — indeterminate top bar + `aria-busy` (reduced-motion safe).
|
|
466
|
+
* - `collapsible` + two-way `collapsed` — the header gains a chevron toggle;
|
|
467
|
+
* block and footer hide while collapsed.
|
|
458
468
|
*/
|
|
459
469
|
declare class StrctCard {
|
|
470
|
+
/** Tone rail on the leading edge. */
|
|
471
|
+
readonly status: _angular_core.InputSignal<StrctStatus>;
|
|
472
|
+
/** Hover lift + accent border for clickable cards (style-only affordance). */
|
|
473
|
+
readonly interactive: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
474
|
+
/** Accent ring — for picker / multi-select card layouts. */
|
|
475
|
+
readonly selected: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
476
|
+
/** Tighter paddings for dense dashboards. */
|
|
477
|
+
readonly dense: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
478
|
+
/** Indeterminate top bar + aria-busy; body/footer dim and ignore input. */
|
|
479
|
+
readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
480
|
+
/** Allow collapsing to just the header (a chevron appears in the header). */
|
|
481
|
+
readonly collapsible: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
482
|
+
/** Collapsed state (two-way; only meaningful with `collapsible`). */
|
|
483
|
+
readonly collapsed: _angular_core.ModelSignal<boolean>;
|
|
484
|
+
toggle(): void;
|
|
460
485
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrctCard, never>;
|
|
461
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrctCard, "strct-card", never, {}, {}, never, ["*"], true, never>;
|
|
486
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrctCard, "strct-card", never, { "status": { "alias": "status"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "dense": { "alias": "dense"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; }, { "collapsed": "collapsedChange"; }, never, ["*"], true, never>;
|
|
462
487
|
}
|
|
463
488
|
/** Header section of a {@link StrctCard}. */
|
|
464
489
|
declare class StrctCardHeader {
|
|
490
|
+
/** Optional leading icon (StrctIcon set). */
|
|
491
|
+
readonly icon: _angular_core.InputSignal<string>;
|
|
492
|
+
/** Accessible labels for the collapse toggle (localizable). */
|
|
493
|
+
readonly collapseLabel: _angular_core.InputSignal<string>;
|
|
494
|
+
readonly expandLabel: _angular_core.InputSignal<string>;
|
|
495
|
+
protected readonly card: StrctCard | null;
|
|
465
496
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrctCardHeader, never>;
|
|
466
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrctCardHeader, "strct-card-header", never, {}, {}, never, ["*"], true, never>;
|
|
497
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrctCardHeader, "strct-card-header", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "collapseLabel": { "alias": "collapseLabel"; "required": false; "isSignal": true; }; "expandLabel": { "alias": "expandLabel"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
467
498
|
}
|
|
468
499
|
/** Body section of a {@link StrctCard}. */
|
|
469
500
|
declare class StrctCardBlock {
|
|
@@ -687,6 +718,8 @@ declare class StrctTreeNode {
|
|
|
687
718
|
protected readonly menuItems: _angular_core.Signal<StrctMenuItem[]>;
|
|
688
719
|
/** The owning `<strct-tree>` (null only for standalone nodes outside a tree). */
|
|
689
720
|
protected readonly tree: StrctTree | null;
|
|
721
|
+
/** Node icon scales with the owning tree's density (16 native → 18 comfortable). */
|
|
722
|
+
protected readonly iconSize: _angular_core.Signal<16 | 18>;
|
|
690
723
|
/** Parent tree node (element-injector ancestor); drives aria-level + ArrowLeft. */
|
|
691
724
|
readonly parent: StrctTreeNode | null;
|
|
692
725
|
/** 1-based depth, exposed as aria-level. */
|
|
@@ -722,6 +755,12 @@ declare class StrctTreeNode {
|
|
|
722
755
|
declare class StrctTree {
|
|
723
756
|
/** Data-driven node list; when set, projected content is ignored. */
|
|
724
757
|
readonly nodes: _angular_core.InputSignal<StrctTreeNodeData[] | null>;
|
|
758
|
+
/**
|
|
759
|
+
* Row density. `compact` (default) is the dense inventory layout —
|
|
760
|
+
* 13px text / 16px icons; `comfortable` relaxes to 14px text / 18px icons
|
|
761
|
+
* with taller rows for touch-friendly or low-density consoles.
|
|
762
|
+
*/
|
|
763
|
+
readonly density: _angular_core.InputSignal<"compact" | "comfortable">;
|
|
725
764
|
/** Per-node right-click menu resolver. */
|
|
726
765
|
readonly nodeMenu: _angular_core.InputSignal<StrctTreeNodeMenuFn | null>;
|
|
727
766
|
/** Emitted when any data-driven node is clicked. */
|
|
@@ -768,7 +807,7 @@ declare class StrctTree {
|
|
|
768
807
|
/** Toggle a node's expansion, updating state and emitting outputs. */
|
|
769
808
|
toggleNode(node: StrctTreeNodeData): void;
|
|
770
809
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrctTree, never>;
|
|
771
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrctTree, "strct-tree", never, { "nodes": { "alias": "nodes"; "required": false; "isSignal": true; }; "nodeMenu": { "alias": "nodeMenu"; "required": false; "isSignal": true; }; "expandedIds": { "alias": "expandedIds"; "required": false; "isSignal": true; }; }, { "nodeActivated": "nodeActivated"; "nodeMenuSelect": "nodeMenuSelect"; "expandedIds": "expandedIdsChange"; "expandedChange": "expandedChange"; "nodeToggled": "nodeToggled"; }, never, ["*"], true, never>;
|
|
810
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrctTree, "strct-tree", never, { "nodes": { "alias": "nodes"; "required": false; "isSignal": true; }; "density": { "alias": "density"; "required": false; "isSignal": true; }; "nodeMenu": { "alias": "nodeMenu"; "required": false; "isSignal": true; }; "expandedIds": { "alias": "expandedIds"; "required": false; "isSignal": true; }; }, { "nodeActivated": "nodeActivated"; "nodeMenuSelect": "nodeMenuSelect"; "expandedIds": "expandedIdsChange"; "expandedChange": "expandedChange"; "nodeToggled": "nodeToggled"; }, never, ["*"], true, never>;
|
|
772
811
|
}
|
|
773
812
|
|
|
774
813
|
/** Fixed modal width presets: sm 480 · md 640 · lg 860 · xl 1080 (px). */
|