@magmonium/one 0.2.24 → 0.2.26

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.
@@ -2580,65 +2580,6 @@ declare class SectionSearchComponent extends BaseTextInputComponent<SearchInput>
2580
2580
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionSearchComponent, "m-section-search, m-one-section-search", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "focused": { "alias": "focused"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "searchLabel": { "alias": "searchLabel"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "debounce": { "alias": "debounce"; "required": false; "isSignal": true; }; "startOpen": { "alias": "startOpen"; "required": false; "isSignal": true; }; "sticky": { "alias": "sticky"; "required": false; "isSignal": true; }; "element": { "alias": "element"; "required": false; "isSignal": true; }; "resultInput": { "alias": "resultInput"; "required": false; "isSignal": true; }; "elementInputs": { "alias": "elementInputs"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; "searchChange": "searchChange"; }, never, ["*"], true, never>;
2581
2581
  }
2582
2582
 
2583
- type FilterOption = {
2584
- value: string;
2585
- label: string;
2586
- disabled?: boolean;
2587
- };
2588
-
2589
- declare class SectionFilterPanelComponent {
2590
- readonly options: _angular_core.InputSignal<FilterOption[]>;
2591
- readonly selected: _angular_core.InputSignal<string[]>;
2592
- readonly multiple: _angular_core.InputSignal<boolean>;
2593
- readonly action: _angular_core.OutputEmitterRef<FilterOption>;
2594
- protected readonly isSelected: (val: string) => boolean;
2595
- protected readonly selectOption: (opt: FilterOption) => void;
2596
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionFilterPanelComponent, never>;
2597
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionFilterPanelComponent, "m-section-filter-panel", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; }, { "action": "action"; }, never, never, true, never>;
2598
- }
2599
-
2600
- declare class SectionFilterComponent {
2601
- readonly label: _angular_core.InputSignal<string>;
2602
- /**
2603
- * The key this Filter's slice carries in a FilterGroup's `{name, value}[]`.
2604
- * Falls back to `label`, which is a TranslationAsset key rather than an
2605
- * identity — good enough alone, wrong to rely on in a group (ADR 0025).
2606
- */
2607
- readonly name: _angular_core.InputSignal<string>;
2608
- readonly options: _angular_core.InputSignal<FilterOption[]>;
2609
- readonly optionsAsset: _angular_core.InputSignal<string | undefined>;
2610
- readonly multiple: _angular_core.InputSignal<boolean>;
2611
- readonly value: _angular_core.ModelSignal<string[]>;
2612
- readonly filterChange: _angular_core.OutputEmitterRef<string[]>;
2613
- protected readonly isOpen: _angular_core.WritableSignal<boolean>;
2614
- /**
2615
- * Present only inside a FilterGroup. With one, the group owns the selection
2616
- * and this Filter reads its slice down and emits nothing of its own — one
2617
- * click, one emit (ADR 0025). Without one, the `value` model below is the
2618
- * source of truth and nothing about this component has changed.
2619
- */
2620
- protected readonly group: _magmonium_one.FilterGroupContext | null;
2621
- private readonly sectionContext;
2622
- protected readonly sidepanel: _angular_core.Signal<boolean>;
2623
- protected readonly noBorder: _angular_core.Signal<boolean>;
2624
- protected readonly resolvedName: _angular_core.Signal<string>;
2625
- /** The group's slice when there is one, this Filter's own model otherwise. */
2626
- protected readonly selected: _angular_core.Signal<string[]>;
2627
- protected readonly toggleConfig: _angular_core.Signal<Button>;
2628
- private readonly dropdownRef;
2629
- private readonly assetStore;
2630
- private readonly assetOptionsResource;
2631
- protected readonly resolvedOptions: _angular_core.Signal<FilterOption[]>;
2632
- protected readonly hasSelection: _angular_core.Signal<boolean>;
2633
- protected readonly selectedOptions: _angular_core.Signal<FilterOption[]>;
2634
- protected readonly selectorConfig: _angular_core.Signal<SelectorConfig<SectionFilterPanelComponent>>;
2635
- protected readonly selectOption: (opt: FilterOption) => void;
2636
- protected readonly removeOption: (val: string) => void;
2637
- constructor();
2638
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionFilterComponent, never>;
2639
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionFilterComponent, "m-section-filter", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionsAsset": { "alias": "optionsAsset"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "filterChange": "filterChange"; }, never, never, true, never>;
2640
- }
2641
-
2642
2583
  type BadgeVariant = 'saas' | 'status' | 'minimal' | 'default' | 'primary' | 'danger' | 'chip';
2643
2584
  type BadgePosition = 'static' | 'absolute' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
2644
2585
  type BadgeAnimation = 'pulse' | 'shimmer' | 'none';
@@ -2650,6 +2591,41 @@ type Badge = Config & {
2650
2591
  animation?: BadgeAnimation;
2651
2592
  };
2652
2593
 
2594
+ type FilterOption = {
2595
+ value: string;
2596
+ label: string;
2597
+ disabled?: boolean;
2598
+ };
2599
+ /**
2600
+ * Which affordance a Filter draws, and what its key carries as a result — the
2601
+ * one axis a Filter is authored along. `single` picks one option and its key
2602
+ * carries that value; `multi` picks any number and its key carries the list;
2603
+ * `range` picks two numeric bounds and its key carries them as a `[min, max]`
2604
+ * pair, which is a list to every reader that already existed (ADR 0026).
2605
+ *
2606
+ * `single` is the default: a Filter that says nothing about itself asks one
2607
+ * question and takes one answer, and the two variants that hold more than one
2608
+ * value say so on the tag.
2609
+ *
2610
+ * Replaces the `multiple` boolean, which spelled two of these three and had no
2611
+ * room for the third. Not a visual variant in the sense a Badge or a Button
2612
+ * carries one — those choose a skin, and this chooses what leaves the Filter.
2613
+ */
2614
+ type FilterVariant = 'single' | 'multi' | 'range';
2615
+ declare const FILTER_VARIANTS: readonly FilterVariant[];
2616
+ /** The default a Filter falls back to, and the one variant left off the tag. */
2617
+ declare const DEFAULT_FILTER_VARIANT: FilterVariant;
2618
+ /**
2619
+ * Whether this variant's key carries a list rather than one value. `range`
2620
+ * counts: a pair is a list, which is what keeps `FilterValue` unchanged and
2621
+ * `filterList` working over every variant that has ever shipped.
2622
+ */
2623
+ declare const filterHoldsList: (variant: FilterVariant) => boolean;
2624
+ /** Whether this variant is authored with bounds rather than with options. */
2625
+ declare const filterHoldsRange: (variant: FilterVariant) => boolean;
2626
+ /** Whether this variant picks from an OptionSet. The complement of the above. */
2627
+ declare const filterHoldsOptions: (variant: FilterVariant) => boolean;
2628
+
2653
2629
  /**
2654
2630
  * What one Filter's key carries in a group's selection. A scalar for a
2655
2631
  * single-select Filter and a list for a `multiple` one, so the payload reads
@@ -2681,16 +2657,111 @@ interface SectionFilterGroupConfig extends Config {
2681
2657
  align?: 'left' | 'center' | 'right';
2682
2658
  }
2683
2659
 
2660
+ declare class SectionFilterComponent {
2661
+ readonly label: _angular_core.InputSignal<string>;
2662
+ /**
2663
+ * The key this Filter's slice carries in a FilterGroup's payload.
2664
+ * Falls back to `label`, which is a TranslationAsset key rather than an
2665
+ * identity — good enough alone, wrong to rely on in a group (ADR 0025).
2666
+ */
2667
+ readonly name: _angular_core.InputSignal<string>;
2668
+ readonly options: _angular_core.InputSignal<FilterOption[]>;
2669
+ readonly optionsAsset: _angular_core.InputSignal<string | undefined>;
2670
+ /**
2671
+ * Which question this Filter asks and what its key carries as a result.
2672
+ * `single` by default: a Filter that says nothing about itself takes one
2673
+ * answer, and the variants holding more than one value say so on the tag.
2674
+ *
2675
+ * Replaces the `multiple` boolean, which spelled two of three variants and
2676
+ * had no room for `range`.
2677
+ */
2678
+ readonly variant: _angular_core.InputSignal<FilterVariant>;
2679
+ /** A `range` variant's bounds. Ignored by the option-picking variants. */
2680
+ readonly min: _angular_core.InputSignal<number | undefined>;
2681
+ readonly max: _angular_core.InputSignal<number | undefined>;
2682
+ readonly step: _angular_core.InputSignal<number | undefined>;
2683
+ /**
2684
+ * The glyph on the dropdown toggle, an IconAsset name. Unset keeps the
2685
+ * `adjust` tuning icon every Filter wears by default — this replaces that
2686
+ * one rather than adding a second mark, a Filter having one affordance and
2687
+ * therefore one place for an icon to sit.
2688
+ */
2689
+ readonly icon: _angular_core.InputSignal<string | undefined>;
2690
+ /**
2691
+ * A list whatever the variant: the badges and every panel read one, and only
2692
+ * what *leaves* the component is narrowed. A `range` holds its pair here,
2693
+ * which is why the entries are no longer `string` alone.
2694
+ */
2695
+ readonly value: _angular_core.ModelSignal<(string | number)[]>;
2696
+ /**
2697
+ * The picked value, shaped the way this Filter was authored: the value
2698
+ * itself under `single` and the list under `multi` and `range`, matching the
2699
+ * slice a FilterGroup's key would carry (ADR 0026). A `single` cleared emits
2700
+ * `''` — a group deletes the key instead, and a bare Filter has no key to
2701
+ * delete.
2702
+ */
2703
+ readonly filterChange: _angular_core.OutputEmitterRef<FilterValue>;
2704
+ protected readonly isOpen: _angular_core.WritableSignal<boolean>;
2705
+ /**
2706
+ * Present only inside a FilterGroup. With one, the group owns the selection
2707
+ * and this Filter reads its slice down and emits nothing of its own — one
2708
+ * click, one emit (ADR 0025). Without one, the `value` model below is the
2709
+ * source of truth and nothing about this component has changed.
2710
+ */
2711
+ protected readonly group: _magmonium_one.FilterGroupContext | null;
2712
+ private readonly sectionContext;
2713
+ protected readonly sidepanel: _angular_core.Signal<boolean>;
2714
+ protected readonly noBorder: _angular_core.Signal<boolean>;
2715
+ protected readonly resolvedName: _angular_core.Signal<string>;
2716
+ /** The group's slice when there is one, this Filter's own model otherwise. */
2717
+ protected readonly selected: _angular_core.Signal<readonly (string | number)[]>;
2718
+ protected readonly toggleConfig: _angular_core.Signal<Button>;
2719
+ protected readonly chipConfig: _angular_core.Signal<Partial<Badge>>;
2720
+ private readonly dropdownRef;
2721
+ private readonly assetStore;
2722
+ private readonly assetOptionsResource;
2723
+ protected readonly resolvedOptions: _angular_core.Signal<FilterOption[]>;
2724
+ protected readonly hasSelection: _angular_core.Signal<boolean>;
2725
+ protected readonly selectedOptions: _angular_core.Signal<FilterOption[]>;
2726
+ /** The pair drawn as one chip, or `undefined` for the option variants. */
2727
+ protected readonly rangeLabel: _angular_core.Signal<string | undefined>;
2728
+ protected readonly selectorConfig: _angular_core.Signal<SelectorConfig<unknown>>;
2729
+ protected readonly selectOption: (opt: FilterOption) => void;
2730
+ /**
2731
+ * A bound moved. Stays open whichever half was typed: a range is two numbers
2732
+ * and closing on the first would take the box away mid-answer.
2733
+ */
2734
+ protected readonly writeRange: (next: readonly [number, number] | undefined) => void;
2735
+ protected readonly clearRange: () => void;
2736
+ protected readonly removeOption: (val: string | number) => void;
2737
+ /**
2738
+ * The model is a list whatever the variant, the badges and every panel
2739
+ * reading one; only what leaves the component is narrowed.
2740
+ */
2741
+ private readonly write;
2742
+ constructor();
2743
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionFilterComponent, never>;
2744
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionFilterComponent, "m-section-filter", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "optionsAsset": { "alias": "optionsAsset"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "filterChange": "filterChange"; }, never, never, true, never>;
2745
+ }
2746
+
2684
2747
  /**
2685
- * What a Filter registers about itself so the group can build the squeezed
2686
- * menu without rendering the Filter's own bar. Signals rather than values —
2748
+ * What a Filter registers about itself so the group can draw the squeezed
2749
+ * drill-in without rendering the Filter's own bar. Signals rather than values —
2687
2750
  * a Filter's options arrive asynchronously when they come from an OptionSet.
2751
+ *
2752
+ * Carries everything a panel needs and not only what a menu row needed: the
2753
+ * group opens the *same* panel component the Filter's own dropdown opens
2754
+ * (`filterPanelOf`), so a `range` Filter's bounds have to reach the group the
2755
+ * way its options always did.
2688
2756
  */
2689
2757
  interface FilterGroupMember {
2690
2758
  readonly name: Signal<string>;
2691
2759
  readonly label: Signal<string>;
2692
2760
  readonly options: Signal<readonly FilterOption[]>;
2693
- readonly multiple: Signal<boolean>;
2761
+ readonly variant: Signal<FilterVariant>;
2762
+ readonly min: Signal<number | undefined>;
2763
+ readonly max: Signal<number | undefined>;
2764
+ readonly step: Signal<number | undefined>;
2694
2765
  }
2695
2766
  /**
2696
2767
  * The group's side of the contract. A Filter injects this optionally: with one
@@ -2704,22 +2775,87 @@ interface FilterGroupContext {
2704
2775
  readonly squeeze: Signal<boolean>;
2705
2776
  register(member: FilterGroupMember): void;
2706
2777
  unregister(member: FilterGroupMember): void;
2707
- /** Reactive: called from a `computed` in the Filter, tracks the group's value. */
2708
- valueOf(name: string): string[];
2709
- toggle(name: string, option: FilterOption, multiple: boolean): void;
2710
- remove(name: string, value: string): void;
2778
+ /**
2779
+ * Reactive: called from a `computed` in the Filter, tracks the group's value.
2780
+ * Widened past `string[]` for `range`, whose pair is numeric — the exported
2781
+ * `filterList` still narrows to strings for the generated code that reads a
2782
+ * payload, and this is the in-component read that must not.
2783
+ */
2784
+ valueOf(name: string): readonly (string | number)[];
2785
+ toggle(name: string, option: FilterOption, variant: FilterVariant): void;
2786
+ /** A `range` member's new pair; `undefined` deletes the key. */
2787
+ setRange(name: string, next: readonly [number, number] | undefined): void;
2788
+ remove(name: string, value: string | number): void;
2711
2789
  }
2712
2790
  declare const FILTER_GROUP_CONTEXT: InjectionToken<FilterGroupContext>;
2713
2791
 
2792
+ type MenuRow = {
2793
+ readonly name: string;
2794
+ readonly label: string;
2795
+ /** What this Filter currently holds, drawn beside its name. */
2796
+ readonly detail: string;
2797
+ readonly selected: boolean;
2798
+ };
2799
+ /**
2800
+ * What a squeezed FilterGroup opens: one row per Filter beneath it, drilling
2801
+ * into that Filter's *own* panel rather than into a list of MenuItems.
2802
+ *
2803
+ * A ContextMenuBox was what this used to be, and it could only ever draw rows
2804
+ * — which is a `range` Filter's bounds spelled as a list of options it does
2805
+ * not have. Drilling into `filterPanelOf` instead means the group draws
2806
+ * whatever the Filter draws, and a fourth variant needs nothing here at all
2807
+ * (ADR 0025 superseded).
2808
+ */
2809
+ declare class SectionFilterMenuComponent {
2810
+ readonly members: _angular_core.InputSignal<readonly FilterGroupMember[]>;
2811
+ /**
2812
+ * The group's own contract, handed in rather than injected: this component
2813
+ * is created by the selector outside the group's element injector, so DI
2814
+ * would not reach it.
2815
+ */
2816
+ readonly ctx: _angular_core.InputSignal<FilterGroupContext | undefined>;
2817
+ protected readonly activeName: _angular_core.WritableSignal<string | undefined>;
2818
+ protected readonly backConfig: _angular_core.Signal<Button>;
2819
+ protected readonly forwardIcon: _angular_core.Signal<{
2820
+ name: string;
2821
+ }>;
2822
+ protected readonly rows: _angular_core.Signal<MenuRow[]>;
2823
+ private readonly active;
2824
+ protected readonly activeRow: _angular_core.Signal<{
2825
+ name: string;
2826
+ label: string;
2827
+ } | undefined>;
2828
+ private readonly panelHost;
2829
+ private readonly activeVariant;
2830
+ private readonly activeLabel;
2831
+ private readonly activeOptions;
2832
+ private readonly activeSelected;
2833
+ private readonly activeMin;
2834
+ private readonly activeMax;
2835
+ private readonly activeStep;
2836
+ constructor();
2837
+ private readonly pick;
2838
+ private readonly setRange;
2839
+ /**
2840
+ * A range says what it holds and an option list says how many: two picked
2841
+ * options are two of a set the row cannot show, while two bounds *are* the
2842
+ * answer and fit.
2843
+ */
2844
+ private readonly detailOf;
2845
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionFilterMenuComponent, never>;
2846
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionFilterMenuComponent, "m-section-filter-menu", never, { "members": { "alias": "members"; "required": false; "isSignal": true; }; "ctx": { "alias": "ctx"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2847
+ }
2848
+
2714
2849
  /**
2715
2850
  * A Row-like container that owns the selection for every Filter beneath it and
2716
2851
  * emits one aggregate whenever any of them changes (ADR 0025). Admits Cols, so
2717
2852
  * a Filter may sit any depth down — DI, not a content query, is what finds it.
2718
2853
  *
2719
2854
  * Squeezed, it collapses to one icon whose menu drills into each Filter in
2720
- * turn. The children are still projected in that mode, only hidden: a Filter
2721
- * that never instantiates never registers, and the menu is built from
2722
- * registrations.
2855
+ * turn into that Filter's own panel, so a `range` Filter offers its bounds
2856
+ * there exactly as it would in its own dropdown. The children are still
2857
+ * projected in that mode, only hidden: a Filter that never instantiates never
2858
+ * registers, and the menu is built from registrations.
2723
2859
  */
2724
2860
  declare class SectionFilterGroupComponent {
2725
2861
  readonly squeeze: _angular_core.InputSignal<boolean | undefined>;
@@ -2731,16 +2867,15 @@ declare class SectionFilterGroupComponent {
2731
2867
  readonly config: _angular_core.InputSignal<SectionFilterGroupConfig | undefined>;
2732
2868
  /**
2733
2869
  * The whole group's selection, keyed by each Filter's `name` — one key per
2734
- * Filter holding something, and none for a Filter holding nothing. A
2735
- * `multiple` Filter's key carries its list, a single-select one's carries the
2736
- * value itself (ADR 0026).
2870
+ * Filter holding something, and none for a Filter holding nothing. A `multi`
2871
+ * Filter's key carries its list, a `range` one's carries its `[min, max]`
2872
+ * pair, and a `single` one's carries the value itself (ADR 0026).
2737
2873
  */
2738
2874
  readonly value: _angular_core.ModelSignal<FilterSelectionMap>;
2739
2875
  readonly filterChange: _angular_core.OutputEmitterRef<FilterSelectionMap>;
2740
2876
  protected readonly isOpen: _angular_core.WritableSignal<boolean>;
2741
2877
  private readonly members;
2742
2878
  protected readonly isDesignMode: boolean;
2743
- private readonly translateService;
2744
2879
  private readonly sectionContext;
2745
2880
  private readonly selectorDir;
2746
2881
  protected readonly squeezed: _angular_core.Signal<boolean>;
@@ -2759,14 +2894,13 @@ declare class SectionFilterGroupComponent {
2759
2894
  protected readonly toggleConfig: _angular_core.Signal<Button>;
2760
2895
  protected readonly countBadgeConfig: _angular_core.Signal<Partial<Badge>>;
2761
2896
  /**
2762
- * One MenuItem per registered Filter, its own options nested underneath.
2763
- * MenuComponent drills into `options` with a back button rather than
2764
- * expanding in place, which is what makes a group of many Filters legible in
2765
- * one icon's worth of space.
2897
+ * The drill-in, handed the registrations and this group's own contract. Not
2898
+ * a ContextMenuBox: a MenuItem is a row with a nested list of rows, which is
2899
+ * the one shape a `range` Filter's bounds do not take. What it opens per
2900
+ * Filter is `filterPanelOf` — the same answer the Filter's own dropdown gets
2901
+ * (ADR 0025 superseded).
2766
2902
  */
2767
- protected readonly menuOptions: _angular_core.Signal<MenuItem[][]>;
2768
- protected readonly selectorConfig: _angular_core.Signal<SelectorConfig<ContextMenuBoxComponent>>;
2769
- private readonly onMenuAction;
2903
+ protected readonly selectorConfig: _angular_core.Signal<SelectorConfig<SectionFilterMenuComponent>>;
2770
2904
  /**
2771
2905
  * A Filter reads its slice as the list it draws badges from, whatever shape
2772
2906
  * the key holds — the map is the payload's shape and not the row's, so the
@@ -2775,14 +2909,20 @@ declare class SectionFilterGroupComponent {
2775
2909
  */
2776
2910
  private readonly valueOf;
2777
2911
  /**
2778
- * Whether this Filter's key carries a list. Read off the registration rather
2779
- * than passed in, because `remove` is called from a badge and knows only the
2780
- * value it is dropping. An unregistered name is `multiple`, the input's own
2781
- * default.
2912
+ * Which variant this Filter was authored as. Read off the registration
2913
+ * rather than passed in, because `remove` is called from a badge and knows
2914
+ * only the value it is dropping. An unregistered name reads as the input's
2915
+ * own default.
2782
2916
  */
2783
- private readonly isMultiple;
2917
+ private readonly variantOf;
2784
2918
  private readonly write;
2785
2919
  private readonly toggle;
2920
+ /**
2921
+ * A `range` member's new pair, or the deletion of its key. Goes through the
2922
+ * same `write` every other variant does — one selection, one owner, whatever
2923
+ * shape the key holds (ADR 0025).
2924
+ */
2925
+ private readonly setRange;
2786
2926
  readonly context: FilterGroupContext;
2787
2927
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionFilterGroupComponent, never>;
2788
2928
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionFilterGroupComponent, "m-section-filter-group", never, { "squeeze": { "alias": "squeeze"; "required": false; "isSignal": true; }; "padding": { "alias": "padding"; "required": false; "isSignal": true; }; "paddingX": { "alias": "paddingX"; "required": false; "isSignal": true; }; "paddingY": { "alias": "paddingY"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "filterChange": "filterChange"; }, never, ["*"], true, never>;
@@ -3328,6 +3468,128 @@ declare class SectionTabsComponent extends ConfigComponent<TabGroup> implements
3328
3468
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionTabsComponent, "m-section-tabs", never, { "xs": { "alias": "xs"; "required": false; "isSignal": true; }; "sm": { "alias": "sm"; "required": false; "isSignal": true; }; "md": { "alias": "md"; "required": false; "isSignal": true; }; "lg": { "alias": "lg"; "required": false; "isSignal": true; }; "xl": { "alias": "xl"; "required": false; "isSignal": true; }; "xxl": { "alias": "xxl"; "required": false; "isSignal": true; }; "sticky": { "alias": "sticky"; "required": false; "isSignal": true; }; "inverse": { "alias": "inverse"; "required": false; "isSignal": true; }; }, { "action": "action"; }, never, never, true, never>;
3329
3469
  }
3330
3470
 
3471
+ declare class SectionFilterPanelComponent {
3472
+ readonly options: _angular_core.InputSignal<readonly FilterOption[]>;
3473
+ readonly selected: _angular_core.InputSignal<readonly (string | number)[]>;
3474
+ /**
3475
+ * The two option-picking variants and no others: a `range` Filter opens
3476
+ * `SectionFilterRangePanelComponent` instead, the two panels being what the
3477
+ * variant chooses between rather than a mode inside one of them.
3478
+ */
3479
+ readonly variant: _angular_core.InputSignal<FilterVariant>;
3480
+ readonly action: _angular_core.OutputEmitterRef<FilterOption>;
3481
+ protected readonly multiple: _angular_core.Signal<boolean>;
3482
+ protected readonly isSelected: (val: string) => boolean;
3483
+ protected readonly selectOption: (opt: FilterOption) => void;
3484
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionFilterPanelComponent, never>;
3485
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionFilterPanelComponent, "m-section-filter-panel", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, { "action": "action"; }, never, never, true, never>;
3486
+ }
3487
+
3488
+ type BoundConfig = Partial<Input> & {
3489
+ type: InputType.NUMBER;
3490
+ min?: number;
3491
+ max?: number;
3492
+ step?: number;
3493
+ };
3494
+ /**
3495
+ * The panel a `range` Filter opens: two numeric bounds, and nothing else.
3496
+ *
3497
+ * Two inputs rather than the `m-multi-range` slider beside them because this
3498
+ * panel opens inside a selector 260px wide, and narrower still inside a
3499
+ * squeezed FilterGroup's drill-in — a slider needs a pixel width to be usable
3500
+ * and has no keyboard story at that size. The authored bounds clamp the boxes
3501
+ * and stand in as their placeholders rather than being drawn to scale.
3502
+ *
3503
+ * The two boxes are prefixed `≥` and `≤` rather than labelled with words. A
3504
+ * bound reads the same in every locale, and libs/one's TranslationAssets carry
3505
+ * ~150 languages each — two of them for a mark the symbol already makes.
3506
+ */
3507
+ declare class SectionFilterRangePanelComponent {
3508
+ /**
3509
+ * The pair this Filter's key carries, read the way every other panel reads
3510
+ * its slice — as the list the group hands down. Empty when nothing is picked,
3511
+ * because a Filter holding nothing carries no key (ADR 0026).
3512
+ */
3513
+ readonly value: _angular_core.InputSignal<readonly (string | number)[]>;
3514
+ readonly min: _angular_core.InputSignal<number | undefined>;
3515
+ readonly max: _angular_core.InputSignal<number | undefined>;
3516
+ readonly step: _angular_core.InputSignal<number | undefined>;
3517
+ /** The Filter's own heading, already a TranslationAsset key. */
3518
+ readonly label: _angular_core.InputSignal<string>;
3519
+ /**
3520
+ * The new pair, or `undefined` once both boxes are empty — which is what
3521
+ * deletes the key rather than writing a pair of blanks into it.
3522
+ */
3523
+ readonly action: _angular_core.OutputEmitterRef<readonly [number, number] | undefined>;
3524
+ protected readonly from: _angular_core.Signal<number | undefined>;
3525
+ protected readonly to: _angular_core.Signal<number | undefined>;
3526
+ protected readonly fromText: _angular_core.Signal<string>;
3527
+ protected readonly toText: _angular_core.Signal<string>;
3528
+ protected readonly fromConfig: _angular_core.Signal<BoundConfig>;
3529
+ protected readonly toConfig: _angular_core.Signal<BoundConfig>;
3530
+ protected readonly writeFrom: (raw: string) => void;
3531
+ protected readonly writeTo: (raw: string) => void;
3532
+ /**
3533
+ * The authored bound stands in as the placeholder: it says what the box will
3534
+ * do if left empty, which is the one thing a range's empty half means.
3535
+ */
3536
+ private readonly boundConfig;
3537
+ private readonly bound;
3538
+ /**
3539
+ * A half-filled range is still a range: the empty side falls back to the
3540
+ * authored bound, so typing one number filters from it rather than waiting
3541
+ * for the other box. Both empty and there is nothing to filter on, which is
3542
+ * the `undefined` that drops the key.
3543
+ */
3544
+ private readonly emit;
3545
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SectionFilterRangePanelComponent, never>;
3546
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SectionFilterRangePanelComponent, "m-section-filter-range-panel", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "action": "action"; }, never, never, true, never>;
3547
+ }
3548
+
3549
+ /**
3550
+ * What a host hands a Filter's panel, whichever variant it turns out to be.
3551
+ * Signals rather than values: a Filter's options arrive asynchronously when
3552
+ * they come from an OptionSet, and its slice changes under it while the panel
3553
+ * is open.
3554
+ */
3555
+ type FilterPanelIo = {
3556
+ readonly variant: Signal<FilterVariant>;
3557
+ readonly label: Signal<string>;
3558
+ readonly options: Signal<readonly FilterOption[]>;
3559
+ readonly selected: Signal<readonly (string | number)[]>;
3560
+ readonly min: Signal<number | undefined>;
3561
+ readonly max: Signal<number | undefined>;
3562
+ readonly step: Signal<number | undefined>;
3563
+ /** An option-picking variant picked one. */
3564
+ readonly pick: (option: FilterOption) => void;
3565
+ /** A `range` variant moved a bound; `undefined` once both boxes are empty. */
3566
+ readonly setRange: (next: readonly [number, number] | undefined) => void;
3567
+ };
3568
+ /** A component and the bindings that drive it, ready for `createComponent`. */
3569
+ type FilterPanel = {
3570
+ readonly component: Type<unknown>;
3571
+ readonly bindings: Binding[];
3572
+ };
3573
+ /**
3574
+ * Which panel a variant opens, and what drives it — the one place that answers
3575
+ * it, because two hosts ask: a Filter's own dropdown, and the drill-in a
3576
+ * squeezed FilterGroup draws for each Filter beneath it. A `switch` in each
3577
+ * would be the same answer written twice, and the second copy is the one that
3578
+ * would be forgotten when a fourth variant lands (ADR 0025 superseded).
3579
+ *
3580
+ * A flat result object rather than a discriminated union: the `assets:wc`
3581
+ * build runs without `strict`, where a union arm does not narrow, so a shape
3582
+ * that type-checks here would fail to build there.
3583
+ */
3584
+ declare const filterPanelOf: (io: FilterPanelIo) => FilterPanel;
3585
+ /**
3586
+ * How wide that panel wants to be. A range's two boxes need more than an
3587
+ * option list's rows, and the group's drill-in is the narrower of the two
3588
+ * hosts — so the width rides with the panel rather than being guessed at each
3589
+ * call site.
3590
+ */
3591
+ declare const filterPanelWidth: (variant: FilterVariant) => string;
3592
+
3331
3593
  /**
3332
3594
  * One key of a group's selection read as the list a `multiple` Filter carries.
3333
3595
  * A scalar is widened back into a one-element list and an absent key reads as
@@ -3347,6 +3609,40 @@ declare function filterList(selection: FilterSelectionMap | undefined, name: str
3347
3609
  * value of the type it now declares.
3348
3610
  */
3349
3611
  declare function filterOne(selection: FilterSelectionMap | undefined, name: string): string | undefined;
3612
+ /**
3613
+ * One Filter's own emit read as a list, whichever shape it was authored to
3614
+ * carry — a standalone `multiple` Filter emits its list and a single-select one
3615
+ * emits the value itself (ADR 0026). What `filterList` does for a key of a
3616
+ * group's map, for the Filter that has no group and therefore no map.
3617
+ *
3618
+ * The empty string drops out: a cleared single-select Filter emits it where a
3619
+ * group would delete the key, so the two spellings of "nothing picked" read
3620
+ * the same. `filterList` keeps it — a key a group wrote is a value a User
3621
+ * picked, and a group writes no key at all for nothing.
3622
+ */
3623
+ declare function filterValueList(value: FilterValue | undefined): string[];
3624
+ /**
3625
+ * One key read without the narrowing `filterList` does — the entries as the
3626
+ * map actually holds them. What a panel inside the library reads, because a
3627
+ * `range` key's pair is numeric and `String`-ing it would make a bound into
3628
+ * text the boxes then have to parse back.
3629
+ *
3630
+ * Not what generated code reads: a payload leaving the library goes through
3631
+ * `filterList` or `filterOne`, whose `string` return is what a StoreMethod
3632
+ * parameter takes (ADR 0026).
3633
+ */
3634
+ declare function filterValues(selection: FilterSelectionMap | undefined, name: string): readonly (string | number)[];
3635
+ /**
3636
+ * One key read as the numeric pair a `range` Filter carries, or `undefined`
3637
+ * when the Filter holds nothing — a Filter holding nothing carries no key at
3638
+ * all, which is the absence a consumer drops from a query rather than sending
3639
+ * as a pair of blanks (ADR 0026).
3640
+ *
3641
+ * A key holding anything but two finite numbers reads as `undefined`: a
3642
+ * variant flipped after a selection was made leaves an option list behind, and
3643
+ * a list of labels is not a range whatever its length.
3644
+ */
3645
+ declare function filterRange(selection: FilterSelectionMap | undefined, name: string): [number, number] | undefined;
3350
3646
 
3351
3647
  type ColSpan = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
3352
3648
  type ColBreakpoint = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
@@ -8496,5 +8792,5 @@ interface AuthResult {
8496
8792
  }
8497
8793
  declare function injectAuthenticate(): () => Promise<AuthResult>;
8498
8794
 
8499
- export { ACCESS_DOMAINS, APP_CONTEXT_REF, ASSET_BASE_URL, AccordionBodyDirective, AccordionComponent, AccordionGroupComponent, ActionComponent, AnimatedGraphsComponent, AppCardComponent, AppRelationType, AppTileComponent, AssetStore, AssetUrlPipe, Assets, AuthActivityPageComponent, AuthApiService, AuthStore, AutosizeDirective, BadgeComponent, BandingComponent, BaseArrayInputComponent, BaseRootWebComponent, BaseWebComponent, ButtonComponent, ButtonGroupComponent, COMPONENT_INPUT_REGISTRY, CardComponent, CardWrapperComponent, CarouselComponent, ChartComponent, CheckboxInputComponent, ClearableInputComponent, ColComponent, ColorPickerInputComponent, CommentItemComponent, CommentsApiService, CommentsComponent, CommentsStore, ComponentInputComponent, ComponentStepperComponent, ConfigComponent, ConfirmComponent, ContextMenuComponent, CustomIconClass, CustomIconEditComponent, DEFAULT_SIZE, DashboardCardComponent, DateInputComponent, DatePickerComponent, DeviceService, DomService, Domain, DotGridComponent, DragListDirective, DragListItemDirective, DraggableDirective, DropdownInputComponent, FILTER_GROUP_CONTEXT, FLEX_VARIANTS, FOLDER_PICK_LISTENER, FORM_ASSET_FOLDER, FileService, FileUploadDirective, FileUploadInputComponent, FlexComponent, FlexItemComponent, FormGroupComponent, FrameComponent, FreezeService, GRID_BREAKPOINTS, GetNavService, HeaderComponent, HighlightDirective, HttpService, ICON_SOURCE, IS_DESIGN_MODE, IS_SIDE_PANEL, IconComponent, ImgComponent, InputType, InstrumentScoreComponent, InterceptorObservables, JumbotronComponent, KeyValueComponent, LAYOUT_ASSET_FOLDER, LOGIN_COMPONENT, LOGIN_STORE, LanguageComponent, LogoComponent, MAG_SOCKET_EVENT, MHeroColorDirective, MHeroComponent, MODAL_REF, MODAL_STORE_REF, MRefDirective, MStepComponent, MURL_PARAM, MURL_SEP, ManifestEnrichmentService, MenuComponent, ModalDirective, ModalRef, ModalStore, MoneyPipe, MultiRangeInputComponent, MurlUrlSerializer, NAV_DEFAULT_MURL, NAV_ID_SEP, NAV_MAIN_BUTTONS, NAV_SEGMENT_RE, NAV_STORE_REF, NAV_WC_COMPONENTS, NAV_WIDGET_MAP, NavComponent, NavDetailsComponent, NavHeaderComponent, NavMenuComponent, NavStore, NavTrailComponent, NothingComponent, NotificationElementComponent, NotificationGroupComponent, NotificationPopupComponent, NotificationService, NotificationStore, NotificationType, NotificationWidgetComponent, ONE_ASSET_BASE_URL, OPTIONS_SOURCE, OVERLAY_WIDGETS, OneApp, OptionsSourceDirective, OverlayBodyComponent, OverlayRef, OverlayService, PLATFORM_BUTTON_NAV_IDS, PLATFORM_EXTENSIBLE_NAV_IDS, PLATFORM_NAV_MAP, PLATFORM_ROOT_CHILDREN, PaginationComponent, PanelComponent, PercentagePipe, PlaygroundComponent, PositionDirective, PwaInstallComponent, ROOT_NAV, RadioGroupComponent, RadioInputComponent, RangeInputComponent, RatingInputComponent, ReactiveElementComponent, RemoteComponent, RemoteLoaderService, ResizeElementComponent, RouteContainer, RowComponent, SEARCH_QUERY, SEARCH_RESULTS_EVENT, SECTION_ACCORDION_GROUP, SECTION_FORM_CONTEXT, SHARED_ICONS, SIZE_CONTEXT, ScoreComponent, ScrollComponent, ScrollService, SearchPanelComponent, SearchStore, SearchUserPanelComponent, SectionAccordionDirective, SectionAccordionGroupDirective, SectionBackComponent, SectionBadgesComponent, SectionButtonGroupComponent, SectionCardComponent, SectionCarouselComponent, SectionComponent, SectionFilterComponent, SectionFilterGroupComponent, SectionFooterComponent, SectionFormComponent, SectionFormItemComponent, SectionHeaderComponent, SectionHeroComponent, SectionPaginationComponent, SectionSearchComponent, SectionStepperComponent, SectionTabsComponent, SectionToggleComponent, SectionToggleItemDirective, SelectableCardInputComponent, SelectorDirective, SettingsSearchBarComponent, SettingsSearchService, ShapeComponent, SharedStoreRegistry, SidePanelDirective, Size, SocketStore, SortComponent, StatComponent, StepComponent, StepperComponent, StepsComponent, StorageService, StrokeLinecap, StrokeLinejoin, SummaryComponent, SvgGeneratorComponent, SvgGeneratorService, SvgService, TOTAL_COLUMNS, TRANSLATION_SOURCE, TableComponent, TableFilterCondition, TechnicalMeterComponent, TextInputComponent, TextOutputComponent, TextareaInputComponent, ThemeComponent, ThemeDataService, ThemeService, ThemeStore, TimeAgoPipe, TimelineComponent, ToggleButtonComponent, ToggleInputComponent, ToggleRadioInputComponent, ToolTipDirective, TooltipComponent, TranslatePipe, TranslateService, TreeGridComponent, URL_SEP, USER_STORE_REF, USER_TAB_MAP, UlComponent, UniverseComponent, UserApiService, UserAvatarComponent, UserComponent, UserNavComponent, UserSettingsComponent, UserStore, WC_ROUTE_CHANGED_EVENT, WC_SEARCH_GROUPS, WIN_USER_TAB_HOOK, WIN_USER_TAB_KEY, WatermarkComponent, WcRouterStore, WrapperInputComponent, anchorNavId, applyColorsToElement, bootstrapMagApp, bootstrapPwaInstall, buildWcBaseUrl, calculateLuminance, calculateRanks, cellText, checkFilterCondition, childNavId, classListSignal, coerceSize, cornerEdge, cornerSide, createMap, createPlatformNavMap, deriveAvatarGradient, deriveContrastColor, deriveOppositeColor, derivePropertyName, emailValidation, evaluate, evaluateBool, filterList, filterOne, flattenTreeGridRows, formatBadgeCount, fullName, generateClipPath, generateTransform, getClassList, getProperty, getScrollParent, getTierFromPreviewPath, getTreeGridRow, getUniqueId, getValue, hasErrorComputed, hexToRgb, hslToRgb, initMagmoniumApp, initialNotificationState, initialState, initials, injectAuthenticate, injectInstallApp, injectParentSize, injectScrollSticky, isButtonName, isCancelledComputed, isExtensiblePlatformNavId, isJson, isLoadingComputed, isLocalhost, isPlatformNavId, isSize, isTierPreview, isUrlLocalhost, isValidNavId, isValidNavSegment, isWebComponent, linkToId, linkToNav, loadingActions, mInterceptor, manualValidation, matchFieldValidation, maxLengthValidation, maxValidation, mergePlatformNav, mergeUnique, mergeUniqueBy, mergeUniqueWith, minAgeValidation, minLengthValidation, minValidation, miniMarkToHtml, navIdChain, navIdFor, navIdSegment, navIdToRoutePath, navIdToSegments, navToId, parentNavId, parseAddress, parseColor, parsePatternNames, patternValidation, patternsValidation, platformNavWidgets, privateGuard, processImageToSvg, provideAppContext, provideMagAppConfig, provideMagWcConfig, provideMagWcRoutes, provideModalComponents, provideMurlUrlSerializer, provideNavWidgets, provideOverlayWidgets, providePlatformNavWidgets, provideSearch, provideSizeContext, provideUserTabs, publicGuard, readFieldPatterns, renderAddress, requiredValidation, resolveConfigAsset, resolveIconSize, resolvePallet, resolvePatternRules, resolveSize, rgbToHex, rgbToHsl, rowHasChildren, samePatterns, segmentsToNavId, setProperty, setTreeGridChildren, settingsWidgets, shouldShowBadge, splitNavId, stringToColor, toAttrBool, toAttrNumber, toCssLength, toHostNavId, toLength, toLocalNavId, toggleTreeGridRow, unfetchedPlatformNav, urlValidation };
8500
- export type { Accordion, AccordionGroup, AccordionVariant, ActionNotification, Align, AnimatedGraphConfig, AnimatedGraphCurveInput, AppCardData, AppCardInputs, AppCardVariant, AppContextRef, AppHint, AppManifest, AppRelation, AppTileData, AuthEmailCreate404Response, AuthEmailCreate422Response, AuthEmailCreateRequest, AuthEmailCreateResponse, AuthIdentitiesListResponse, AuthOtpCreateRequest, AuthOtpCreateResponse, AuthOtpUpdateRequest, AuthOtpUpdateResponse, AuthPasswordCreateRequest, AuthPasswordCreateResponse, AuthPasswordCreateResponseTokens, AuthPasswordCreateResponseUser, AuthPasswordUpdateRequest, AuthPasswordUpdateResponse, AuthPasswordUpdateResponseTokens, AuthPasswordUpdateResponseUser, AuthResult, AuthSignupCreateRequest, AuthSignupCreateRequestUser, AuthSignupCreateResponse, AuthSignupCreateResponseTokens, AuthState, AuthUser, Badge, BadgePosition, BadgeVariant, BandingConfig, BreadCrumb, BreadcrumbTrail, Button, ButtonGroup, Carousel, CarouselIndicatorPosition, CarouselIndicatorShape, CarouselPosition, CarouselSlide, CellChangeEvent, CellClickEvent, Chart, ChartSeries, ColBreakpoint, ColSpan, ColorInput, ColorPallet, ColorPropertyType, ColumnDef, Comment, CommentItem, ComponentInput, Config, ContextMenu, ContextMenuEvent, CropData, Cursor, CustomIcon, DateInput, Direction$2 as Direction, DotGridVariant, DragListReorder, Draggable, DraggableState, DropdownInput, DropdownOption, ElementType, FieldPatterns, FileUploadConfig, FileUploadEvent, FileUploadInput, FilterGroupContext, FilterGroupMember, FilterOption, FilterSelectionMap, FilterValue, FlatTreeGridRow, FlexAlign, FlexAlignSelf, FlexConfig, FlexDirection, FlexItemConfig, FlexJustify, FlexVariant, FolderPickListener, Form, FormState, Genre, GridAlignX, GridAlignY, GridBreakpoint, Header, HeaderLevel, HeldShelf, HeroDataRecord, HeroDimensions, HslColor, Icon, Input, InputModel, InputSpan, InputState, InputValue, Jumbotron, JumbotronAnimation, KeyValueVariant, LoadingActionsApi, LoginStoreContract, LogoVariant, MagAppConfigOptions, MagWcConfigOptions, ManualErrorValidator, MenuItem, Modal, ModalOverlayConfig, ModalStoreRef, ModalStoreTrigger, ModalTrigger, MoneySystem, MultiRangeInput, Nav, NavIdKey, NavKind, NavMap, NavPresentation, NavStoreRef, NavWidgetConfig, NavWidgetEntry, NavWidgetMap, Notification, NotificationSeverity, NotificationState, NotificationUser, NumberInput, Option, OtpInput, OverlayConfig, OverlayWidgetLoader, OverlayWidgetMap, PageChangeEvent, Pagination, PaginationWindow, PanelOverlayConfig, PanelTrigger, PasswordInput, PatternRule, Position, QueryParams, QueryValue, RadioGroupInput, RadioInput, RangeInput, RatingInput, RemoteSelectorConfig, ResolvedUserTab, RgbColor, SearchChangeEvent, SearchInput, SearchResult, SearchSourceGroup, SearchState, SectionAccordion, SectionAccordionGroup, SectionAccordionGroupContext, SectionAccordionRef, SectionButtonGroupConfig, SectionCarousel, SectionCarouselContext, SectionCarouselItem, SectionFilterGroupConfig, SectionFormConfig, SectionFormContext, SectionHero, SectionHeroVariant, SectionToggleItem, SectionToggleItemContext, SelectableCardContext, SelectableCardInput, SelectableCardItem, SelectionAction, SelectionActionEvent, SelectionChangeEvent, SelectorConfig, Shape, ShapeType, ShapeVariant, SharedToken, SharedUser, SizeContext, SizeDeclarer, SocketMessage, Sort, SortChange, SortChangeEvent, SortOption, SortOrder, SqueezeMode, StatAlign, StatCornerEdge, StatCornerPosition, StatCornerSide, StatSurface, StatVariant, Step, Stepper, StepperResponsiveConfig, StepperStep, Steps, StickyBehavior, Summary, SummaryAction, SummaryRow, SummaryRowType, Svg, SvgGenOptions, SvgGeneratorCoreOptions, SvgGeneratorEditOptions, TabGroup, TableConfig, TableFilterDef, TextInput, TextNotification, TextOutputAlign, TextOutputConfig, TextOutputVariant, TextareaInput, Timeline, TimelineItem, ToggleInput, ToggleRadioInput, Tokens, TreeGridCellClickEvent, TreeGridLoadChildrenEvent, TreeGridRow, TreeGridRowSelectEvent, TreeGridToggleEvent, UniverseColorScheme, User, UserStoreRef, Version, Watermark, WebComponentConfig, WeeklyData };
8795
+ export { ACCESS_DOMAINS, APP_CONTEXT_REF, ASSET_BASE_URL, AccordionBodyDirective, AccordionComponent, AccordionGroupComponent, ActionComponent, AnimatedGraphsComponent, AppCardComponent, AppRelationType, AppTileComponent, AssetStore, AssetUrlPipe, Assets, AuthActivityPageComponent, AuthApiService, AuthStore, AutosizeDirective, BadgeComponent, BandingComponent, BaseArrayInputComponent, BaseRootWebComponent, BaseWebComponent, ButtonComponent, ButtonGroupComponent, COMPONENT_INPUT_REGISTRY, CardComponent, CardWrapperComponent, CarouselComponent, ChartComponent, CheckboxInputComponent, ClearableInputComponent, ColComponent, ColorPickerInputComponent, CommentItemComponent, CommentsApiService, CommentsComponent, CommentsStore, ComponentInputComponent, ComponentStepperComponent, ConfigComponent, ConfirmComponent, ContextMenuComponent, CustomIconClass, CustomIconEditComponent, DEFAULT_FILTER_VARIANT, DEFAULT_SIZE, DashboardCardComponent, DateInputComponent, DatePickerComponent, DeviceService, DomService, Domain, DotGridComponent, DragListDirective, DragListItemDirective, DraggableDirective, DropdownInputComponent, FILTER_GROUP_CONTEXT, FILTER_VARIANTS, FLEX_VARIANTS, FOLDER_PICK_LISTENER, FORM_ASSET_FOLDER, FileService, FileUploadDirective, FileUploadInputComponent, FlexComponent, FlexItemComponent, FormGroupComponent, FrameComponent, FreezeService, GRID_BREAKPOINTS, GetNavService, HeaderComponent, HighlightDirective, HttpService, ICON_SOURCE, IS_DESIGN_MODE, IS_SIDE_PANEL, IconComponent, ImgComponent, InputType, InstrumentScoreComponent, InterceptorObservables, JumbotronComponent, KeyValueComponent, LAYOUT_ASSET_FOLDER, LOGIN_COMPONENT, LOGIN_STORE, LanguageComponent, LogoComponent, MAG_SOCKET_EVENT, MHeroColorDirective, MHeroComponent, MODAL_REF, MODAL_STORE_REF, MRefDirective, MStepComponent, MURL_PARAM, MURL_SEP, ManifestEnrichmentService, MenuComponent, ModalDirective, ModalRef, ModalStore, MoneyPipe, MultiRangeInputComponent, MurlUrlSerializer, NAV_DEFAULT_MURL, NAV_ID_SEP, NAV_MAIN_BUTTONS, NAV_SEGMENT_RE, NAV_STORE_REF, NAV_WC_COMPONENTS, NAV_WIDGET_MAP, NavComponent, NavDetailsComponent, NavHeaderComponent, NavMenuComponent, NavStore, NavTrailComponent, NothingComponent, NotificationElementComponent, NotificationGroupComponent, NotificationPopupComponent, NotificationService, NotificationStore, NotificationType, NotificationWidgetComponent, ONE_ASSET_BASE_URL, OPTIONS_SOURCE, OVERLAY_WIDGETS, OneApp, OptionsSourceDirective, OverlayBodyComponent, OverlayRef, OverlayService, PLATFORM_BUTTON_NAV_IDS, PLATFORM_EXTENSIBLE_NAV_IDS, PLATFORM_NAV_MAP, PLATFORM_ROOT_CHILDREN, PaginationComponent, PanelComponent, PercentagePipe, PlaygroundComponent, PositionDirective, PwaInstallComponent, ROOT_NAV, RadioGroupComponent, RadioInputComponent, RangeInputComponent, RatingInputComponent, ReactiveElementComponent, RemoteComponent, RemoteLoaderService, ResizeElementComponent, RouteContainer, RowComponent, SEARCH_QUERY, SEARCH_RESULTS_EVENT, SECTION_ACCORDION_GROUP, SECTION_FORM_CONTEXT, SHARED_ICONS, SIZE_CONTEXT, ScoreComponent, ScrollComponent, ScrollService, SearchPanelComponent, SearchStore, SearchUserPanelComponent, SectionAccordionDirective, SectionAccordionGroupDirective, SectionBackComponent, SectionBadgesComponent, SectionButtonGroupComponent, SectionCardComponent, SectionCarouselComponent, SectionComponent, SectionFilterComponent, SectionFilterGroupComponent, SectionFilterMenuComponent, SectionFilterPanelComponent, SectionFilterRangePanelComponent, SectionFooterComponent, SectionFormComponent, SectionFormItemComponent, SectionHeaderComponent, SectionHeroComponent, SectionPaginationComponent, SectionSearchComponent, SectionStepperComponent, SectionTabsComponent, SectionToggleComponent, SectionToggleItemDirective, SelectableCardInputComponent, SelectorDirective, SettingsSearchBarComponent, SettingsSearchService, ShapeComponent, SharedStoreRegistry, SidePanelDirective, Size, SocketStore, SortComponent, StatComponent, StepComponent, StepperComponent, StepsComponent, StorageService, StrokeLinecap, StrokeLinejoin, SummaryComponent, SvgGeneratorComponent, SvgGeneratorService, SvgService, TOTAL_COLUMNS, TRANSLATION_SOURCE, TableComponent, TableFilterCondition, TechnicalMeterComponent, TextInputComponent, TextOutputComponent, TextareaInputComponent, ThemeComponent, ThemeDataService, ThemeService, ThemeStore, TimeAgoPipe, TimelineComponent, ToggleButtonComponent, ToggleInputComponent, ToggleRadioInputComponent, ToolTipDirective, TooltipComponent, TranslatePipe, TranslateService, TreeGridComponent, URL_SEP, USER_STORE_REF, USER_TAB_MAP, UlComponent, UniverseComponent, UserApiService, UserAvatarComponent, UserComponent, UserNavComponent, UserSettingsComponent, UserStore, WC_ROUTE_CHANGED_EVENT, WC_SEARCH_GROUPS, WIN_USER_TAB_HOOK, WIN_USER_TAB_KEY, WatermarkComponent, WcRouterStore, WrapperInputComponent, anchorNavId, applyColorsToElement, bootstrapMagApp, bootstrapPwaInstall, buildWcBaseUrl, calculateLuminance, calculateRanks, cellText, checkFilterCondition, childNavId, classListSignal, coerceSize, cornerEdge, cornerSide, createMap, createPlatformNavMap, deriveAvatarGradient, deriveContrastColor, deriveOppositeColor, derivePropertyName, emailValidation, evaluate, evaluateBool, filterHoldsList, filterHoldsOptions, filterHoldsRange, filterList, filterOne, filterPanelOf, filterPanelWidth, filterRange, filterValueList, filterValues, flattenTreeGridRows, formatBadgeCount, fullName, generateClipPath, generateTransform, getClassList, getProperty, getScrollParent, getTierFromPreviewPath, getTreeGridRow, getUniqueId, getValue, hasErrorComputed, hexToRgb, hslToRgb, initMagmoniumApp, initialNotificationState, initialState, initials, injectAuthenticate, injectInstallApp, injectParentSize, injectScrollSticky, isButtonName, isCancelledComputed, isExtensiblePlatformNavId, isJson, isLoadingComputed, isLocalhost, isPlatformNavId, isSize, isTierPreview, isUrlLocalhost, isValidNavId, isValidNavSegment, isWebComponent, linkToId, linkToNav, loadingActions, mInterceptor, manualValidation, matchFieldValidation, maxLengthValidation, maxValidation, mergePlatformNav, mergeUnique, mergeUniqueBy, mergeUniqueWith, minAgeValidation, minLengthValidation, minValidation, miniMarkToHtml, navIdChain, navIdFor, navIdSegment, navIdToRoutePath, navIdToSegments, navToId, parentNavId, parseAddress, parseColor, parsePatternNames, patternValidation, patternsValidation, platformNavWidgets, privateGuard, processImageToSvg, provideAppContext, provideMagAppConfig, provideMagWcConfig, provideMagWcRoutes, provideModalComponents, provideMurlUrlSerializer, provideNavWidgets, provideOverlayWidgets, providePlatformNavWidgets, provideSearch, provideSizeContext, provideUserTabs, publicGuard, readFieldPatterns, renderAddress, requiredValidation, resolveConfigAsset, resolveIconSize, resolvePallet, resolvePatternRules, resolveSize, rgbToHex, rgbToHsl, rowHasChildren, samePatterns, segmentsToNavId, setProperty, setTreeGridChildren, settingsWidgets, shouldShowBadge, splitNavId, stringToColor, toAttrBool, toAttrNumber, toCssLength, toHostNavId, toLength, toLocalNavId, toggleTreeGridRow, unfetchedPlatformNav, urlValidation };
8796
+ export type { Accordion, AccordionGroup, AccordionVariant, ActionNotification, Align, AnimatedGraphConfig, AnimatedGraphCurveInput, AppCardData, AppCardInputs, AppCardVariant, AppContextRef, AppHint, AppManifest, AppRelation, AppTileData, AuthEmailCreate404Response, AuthEmailCreate422Response, AuthEmailCreateRequest, AuthEmailCreateResponse, AuthIdentitiesListResponse, AuthOtpCreateRequest, AuthOtpCreateResponse, AuthOtpUpdateRequest, AuthOtpUpdateResponse, AuthPasswordCreateRequest, AuthPasswordCreateResponse, AuthPasswordCreateResponseTokens, AuthPasswordCreateResponseUser, AuthPasswordUpdateRequest, AuthPasswordUpdateResponse, AuthPasswordUpdateResponseTokens, AuthPasswordUpdateResponseUser, AuthResult, AuthSignupCreateRequest, AuthSignupCreateRequestUser, AuthSignupCreateResponse, AuthSignupCreateResponseTokens, AuthState, AuthUser, Badge, BadgePosition, BadgeVariant, BandingConfig, BreadCrumb, BreadcrumbTrail, Button, ButtonGroup, Carousel, CarouselIndicatorPosition, CarouselIndicatorShape, CarouselPosition, CarouselSlide, CellChangeEvent, CellClickEvent, Chart, ChartSeries, ColBreakpoint, ColSpan, ColorInput, ColorPallet, ColorPropertyType, ColumnDef, Comment, CommentItem, ComponentInput, Config, ContextMenu, ContextMenuEvent, CropData, Cursor, CustomIcon, DateInput, Direction$2 as Direction, DotGridVariant, DragListReorder, Draggable, DraggableState, DropdownInput, DropdownOption, ElementType, FieldPatterns, FileUploadConfig, FileUploadEvent, FileUploadInput, FilterGroupContext, FilterGroupMember, FilterOption, FilterPanel, FilterPanelIo, FilterSelectionMap, FilterValue, FilterVariant, FlatTreeGridRow, FlexAlign, FlexAlignSelf, FlexConfig, FlexDirection, FlexItemConfig, FlexJustify, FlexVariant, FolderPickListener, Form, FormState, Genre, GridAlignX, GridAlignY, GridBreakpoint, Header, HeaderLevel, HeldShelf, HeroDataRecord, HeroDimensions, HslColor, Icon, Input, InputModel, InputSpan, InputState, InputValue, Jumbotron, JumbotronAnimation, KeyValueVariant, LoadingActionsApi, LoginStoreContract, LogoVariant, MagAppConfigOptions, MagWcConfigOptions, ManualErrorValidator, MenuItem, Modal, ModalOverlayConfig, ModalStoreRef, ModalStoreTrigger, ModalTrigger, MoneySystem, MultiRangeInput, Nav, NavIdKey, NavKind, NavMap, NavPresentation, NavStoreRef, NavWidgetConfig, NavWidgetEntry, NavWidgetMap, Notification, NotificationSeverity, NotificationState, NotificationUser, NumberInput, Option, OtpInput, OverlayConfig, OverlayWidgetLoader, OverlayWidgetMap, PageChangeEvent, Pagination, PaginationWindow, PanelOverlayConfig, PanelTrigger, PasswordInput, PatternRule, Position, QueryParams, QueryValue, RadioGroupInput, RadioInput, RangeInput, RatingInput, RemoteSelectorConfig, ResolvedUserTab, RgbColor, SearchChangeEvent, SearchInput, SearchResult, SearchSourceGroup, SearchState, SectionAccordion, SectionAccordionGroup, SectionAccordionGroupContext, SectionAccordionRef, SectionButtonGroupConfig, SectionCarousel, SectionCarouselContext, SectionCarouselItem, SectionFilterGroupConfig, SectionFormConfig, SectionFormContext, SectionHero, SectionHeroVariant, SectionToggleItem, SectionToggleItemContext, SelectableCardContext, SelectableCardInput, SelectableCardItem, SelectionAction, SelectionActionEvent, SelectionChangeEvent, SelectorConfig, Shape, ShapeType, ShapeVariant, SharedToken, SharedUser, SizeContext, SizeDeclarer, SocketMessage, Sort, SortChange, SortChangeEvent, SortOption, SortOrder, SqueezeMode, StatAlign, StatCornerEdge, StatCornerPosition, StatCornerSide, StatSurface, StatVariant, Step, Stepper, StepperResponsiveConfig, StepperStep, Steps, StickyBehavior, Summary, SummaryAction, SummaryRow, SummaryRowType, Svg, SvgGenOptions, SvgGeneratorCoreOptions, SvgGeneratorEditOptions, TabGroup, TableConfig, TableFilterDef, TextInput, TextNotification, TextOutputAlign, TextOutputConfig, TextOutputVariant, TextareaInput, Timeline, TimelineItem, ToggleInput, ToggleRadioInput, Tokens, TreeGridCellClickEvent, TreeGridLoadChildrenEvent, TreeGridRow, TreeGridRowSelectEvent, TreeGridToggleEvent, UniverseColorScheme, User, UserStoreRef, Version, Watermark, WebComponentConfig, WeeklyData };