@kouji-ui/core 0.11.1 → 0.12.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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kouji-ui/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "Headless Angular UI primitives — signal-driven directives with WCAG 2.1 AAA semantics, no CDK, and a handful of opt-in global stylesheets.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
package/types/kouji-ui-core.d.ts
CHANGED
|
@@ -2527,6 +2527,12 @@ declare class KjListNavigator {
|
|
|
2527
2527
|
readonly kjPageSize: _angular_core.InputSignal<number>;
|
|
2528
2528
|
/** Activate item on pointer hover. Default: `false`. */
|
|
2529
2529
|
readonly kjActivateOnHover: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2530
|
+
/**
|
|
2531
|
+
* Publish `aria-activedescendant` on this host in `'activedescendant'`
|
|
2532
|
+
* mode. Turn off when another element keeps DOM focus and publishes
|
|
2533
|
+
* `activeId` itself (a search field above the list). Default: `true`.
|
|
2534
|
+
*/
|
|
2535
|
+
readonly kjHostActiveDescendant: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2530
2536
|
/**
|
|
2531
2537
|
* Focus model. `'activedescendant'` (default) keeps DOM focus on the
|
|
2532
2538
|
* navigator host and signals the active option via
|
|
@@ -2630,7 +2636,7 @@ declare class KjListNavigator {
|
|
|
2630
2636
|
/** @internal Keydown handler bound via host binding. */
|
|
2631
2637
|
_onKeydown(e: KeyboardEvent): void;
|
|
2632
2638
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<KjListNavigator, never>;
|
|
2633
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<KjListNavigator, "[kjListNavigator]", ["kjListNavigator"], { "kjOrientation": { "alias": "kjOrientation"; "required": false; "isSignal": true; }; "kjWrap": { "alias": "kjWrap"; "required": false; "isSignal": true; }; "kjPageSize": { "alias": "kjPageSize"; "required": false; "isSignal": true; }; "kjActivateOnHover": { "alias": "kjActivateOnHover"; "required": false; "isSignal": true; }; "kjFocusMode": { "alias": "kjFocusMode"; "required": false; "isSignal": true; }; }, { "kjActiveChange": "kjActiveChange"; }, never, never, true, never>;
|
|
2639
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<KjListNavigator, "[kjListNavigator]", ["kjListNavigator"], { "kjOrientation": { "alias": "kjOrientation"; "required": false; "isSignal": true; }; "kjWrap": { "alias": "kjWrap"; "required": false; "isSignal": true; }; "kjPageSize": { "alias": "kjPageSize"; "required": false; "isSignal": true; }; "kjActivateOnHover": { "alias": "kjActivateOnHover"; "required": false; "isSignal": true; }; "kjHostActiveDescendant": { "alias": "kjHostActiveDescendant"; "required": false; "isSignal": true; }; "kjFocusMode": { "alias": "kjFocusMode"; "required": false; "isSignal": true; }; }, { "kjActiveChange": "kjActiveChange"; }, never, never, true, never>;
|
|
2634
2640
|
}
|
|
2635
2641
|
|
|
2636
2642
|
/**
|
|
@@ -14453,6 +14459,8 @@ declare class KjSelect implements KjListNavigatorConfig {
|
|
|
14453
14459
|
readonly _multiple: WritableSignal<boolean>;
|
|
14454
14460
|
/** Whether multi-select is enabled. */
|
|
14455
14461
|
readonly multiple: Signal<boolean>;
|
|
14462
|
+
/** @internal — written by `KjSelectContent`'s `kjSearchable` input. */
|
|
14463
|
+
readonly _searchable: WritableSignal<boolean>;
|
|
14456
14464
|
/** @internal — set by `KjSelectTrigger` at construction time. */
|
|
14457
14465
|
readonly _triggerEl: WritableSignal<ElementRef<HTMLElement> | null>;
|
|
14458
14466
|
/**
|
|
@@ -14478,6 +14486,12 @@ declare class KjSelect implements KjListNavigatorConfig {
|
|
|
14478
14486
|
* not to this one.
|
|
14479
14487
|
*/
|
|
14480
14488
|
readonly items: Signal<readonly KjListItem<unknown>[]>;
|
|
14489
|
+
/**
|
|
14490
|
+
* Implements `KjListNavigatorConfig.visibleItems`: the items a wrapper has
|
|
14491
|
+
* not hidden through `KjListItem.setVisible` (a search filter, a folded
|
|
14492
|
+
* group). The navigator and type-ahead walk only these.
|
|
14493
|
+
*/
|
|
14494
|
+
readonly visibleItems: Signal<KjListItem<unknown>[]>;
|
|
14481
14495
|
/** Implements `KjListNavigatorConfig.mode`. */
|
|
14482
14496
|
readonly mode: Signal<KjListSelectionMode>;
|
|
14483
14497
|
/** Implements `KjListNavigatorConfig.compareBy`. */
|
|
@@ -14515,7 +14529,7 @@ declare class KjSelect implements KjListNavigatorConfig {
|
|
|
14515
14529
|
declare class KjSelectTrigger {
|
|
14516
14530
|
/** @internal — same instance as the one provided on KjSelect root. */
|
|
14517
14531
|
readonly controller: KjOverlayController;
|
|
14518
|
-
|
|
14532
|
+
protected readonly select: _kouji_ui_core.KjSelect | null;
|
|
14519
14533
|
/** Whether the listbox supports multiple selection (absorbs `multi-select`). Defaults to `false`. */
|
|
14520
14534
|
readonly kjMultiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
14521
14535
|
/**
|
|
@@ -14611,9 +14625,15 @@ declare class KjSelectContent {
|
|
|
14611
14625
|
readonly kjAlign: _angular_core.InputSignal<KjAlign>;
|
|
14612
14626
|
/** Pixel offset between trigger and panel. */
|
|
14613
14627
|
readonly kjOffset: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
14628
|
+
/**
|
|
14629
|
+
* The panel holds a search field above an inner listbox the consumer
|
|
14630
|
+
* renders: the panel becomes `role="dialog"` and the trigger advertises
|
|
14631
|
+
* `aria-haspopup="dialog"`. Defaults to `false`.
|
|
14632
|
+
*/
|
|
14633
|
+
readonly kjSearchable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
14614
14634
|
constructor();
|
|
14615
14635
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<KjSelectContent, never>;
|
|
14616
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjSelectContent, "kj-select-content", never, { "kjSide": { "alias": "kjSide"; "required": false; "isSignal": true; }; "kjAlign": { "alias": "kjAlign"; "required": false; "isSignal": true; }; "kjOffset": { "alias": "kjOffset"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof KjOverlayPanel; inputs: { "kjFor": "kjFor"; }; outputs: {}; }, { directive: typeof KjListNavigator; inputs: {}; outputs: {}; }, { directive: typeof KjListPanelFocus; inputs: {}; outputs: {}; }]>;
|
|
14636
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<KjSelectContent, "kj-select-content", never, { "kjSide": { "alias": "kjSide"; "required": false; "isSignal": true; }; "kjAlign": { "alias": "kjAlign"; "required": false; "isSignal": true; }; "kjOffset": { "alias": "kjOffset"; "required": false; "isSignal": true; }; "kjSearchable": { "alias": "kjSearchable"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof KjOverlayPanel; inputs: { "kjFor": "kjFor"; }; outputs: {}; }, { directive: typeof KjListNavigator; inputs: { "kjFocusMode": "kjFocusMode"; "kjHostActiveDescendant": "kjHostActiveDescendant"; }; outputs: {}; }, { directive: typeof KjListPanelFocus; inputs: {}; outputs: {}; }]>;
|
|
14617
14637
|
}
|
|
14618
14638
|
|
|
14619
14639
|
/**
|