mn-angular-lib 1.0.154 → 1.0.156

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.
@@ -78,6 +78,11 @@ type MnAlertConfig = {
78
78
  cssClasses?: Partial<Record<MnAlertKind, string>>;
79
79
  icons?: Partial<Record<MnAlertKind, unknown>>;
80
80
  fallbackDuration?: number | null;
81
+ /**
82
+ * How many alerts may be on screen at once. Showing one past this cap drops the oldest
83
+ * alert still visible, so a burst of alerts never grows into an unreadable stack.
84
+ */
85
+ maxVisible?: number;
81
86
  finalize?: (a: MnAlert) => MnAlert;
82
87
  };
83
88
  declare const MN_ALERT_CONFIG: InjectionToken<MnAlertConfig>;
@@ -116,9 +121,18 @@ declare class MnAlertService {
116
121
  declare class MnAlertStore {
117
122
  private readonly _alerts$;
118
123
  readonly alerts$: rxjs.Observable<MnAlert[]>;
124
+ /** Host configuration, when the app provided one. Only `maxVisible` is read here — the
125
+ * per-kind durations are resolved by {@link MnAlertService} before an alert reaches the store. */
126
+ private readonly cfg;
127
+ /** In-flight auto-dismiss timers keyed by alert id, so an alert that leaves early (dismissed
128
+ * by hand, or pushed out by the visible cap) never fires a stale timeout later. */
129
+ private readonly timers;
130
+ /** How many alerts stay on screen at once; showing more drops the oldest ones. */
131
+ private get maxVisible();
119
132
  show(partial: Omit<MnAlert, 'id'>): MnAlertId;
120
133
  dismiss(id: MnAlertId): void;
121
134
  clear(): void;
135
+ private clearTimer;
122
136
  static ɵfac: i0.ɵɵFactoryDeclaration<MnAlertStore, never>;
123
137
  static ɵprov: i0.ɵɵInjectableDeclaration<MnAlertStore>;
124
138
  }
@@ -205,6 +219,12 @@ declare class MnAlertOutletComponent {
205
219
  constructor();
206
220
  trackById: (_: number, v: MnAlertView) => string;
207
221
  getAlertClasses(a: MnAlert): string;
222
+ /**
223
+ * The lifetime (ms) to run the countdown bar over, or null when no bar should show: an alert
224
+ * that never auto-dismisses has nothing to count down, and one already leaving would only
225
+ * restart the animation mid-exit.
226
+ */
227
+ countdownDuration(v: MnAlertView): number | null;
208
228
  contextFor(a: MnAlert): {
209
229
  readonly $implicit: MnAlert;
210
230
  readonly alert: MnAlert;
@@ -1554,7 +1574,8 @@ declare class MnTextarea implements OnInit {
1554
1574
  * Mirrors the styling vocabulary of {@link mnInputFieldVariants} (size,
1555
1575
  * borderRadius, shadow, fullWidth, disabled) so a file input visually matches the
1556
1576
  * rest of the input family, and adds a `dropzone` toggle for the large dashed
1557
- * drop area used by the default display mode.
1577
+ * drop area used by the default display mode plus a `dragging` toggle for the
1578
+ * "release to drop" state while files hover over that dropzone.
1558
1579
  */
1559
1580
  declare const mnFileInputVariants: tailwind_variants.TVReturnType<{
1560
1581
  /** Inner padding scale of the clickable control. */
@@ -1587,11 +1608,15 @@ declare const mnFileInputVariants: tailwind_variants.TVReturnType<{
1587
1608
  dropzone: {
1588
1609
  true: string;
1589
1610
  };
1611
+ /** Highlighted "release to drop" appearance while files hover the dropzone. */
1612
+ dragging: {
1613
+ true: string;
1614
+ };
1590
1615
  /** Dimmed, non-interactive appearance. */
1591
1616
  disabled: {
1592
1617
  true: string;
1593
1618
  };
1594
- }, undefined, "bg-base-100 border-1 border-base-300 text-base-content text-sm outline-none transition-colors duration-300 ease-in-out", {
1619
+ }, undefined, "bg-base-100 border-1 border-base-300 text-base-content text-sm outline-none transition-all duration-300 ease-in-out", {
1595
1620
  /** Inner padding scale of the clickable control. */
1596
1621
  size: {
1597
1622
  sm: string;
@@ -1622,6 +1647,10 @@ declare const mnFileInputVariants: tailwind_variants.TVReturnType<{
1622
1647
  dropzone: {
1623
1648
  true: string;
1624
1649
  };
1650
+ /** Highlighted "release to drop" appearance while files hover the dropzone. */
1651
+ dragging: {
1652
+ true: string;
1653
+ };
1625
1654
  /** Dimmed, non-interactive appearance. */
1626
1655
  disabled: {
1627
1656
  true: string;
@@ -1657,11 +1686,15 @@ declare const mnFileInputVariants: tailwind_variants.TVReturnType<{
1657
1686
  dropzone: {
1658
1687
  true: string;
1659
1688
  };
1689
+ /** Highlighted "release to drop" appearance while files hover the dropzone. */
1690
+ dragging: {
1691
+ true: string;
1692
+ };
1660
1693
  /** Dimmed, non-interactive appearance. */
1661
1694
  disabled: {
1662
1695
  true: string;
1663
1696
  };
1664
- }, undefined, "bg-base-100 border-1 border-base-300 text-base-content text-sm outline-none transition-colors duration-300 ease-in-out", unknown, unknown, undefined>>;
1697
+ }, undefined, "bg-base-100 border-1 border-base-300 text-base-content text-sm outline-none transition-all duration-300 ease-in-out", unknown, unknown, undefined>>;
1665
1698
  /** Variant prop types derived from {@link mnFileInputVariants}. */
1666
1699
  type MnFileInputVariants = VariantProps<typeof mnFileInputVariants>;
1667
1700
 
@@ -1674,7 +1707,9 @@ type MnFileInputErrorMessageData = string | MnErrorMessageFn;
1674
1707
  */
1675
1708
  type MnFileInputErrorMessagesData = Partial<Record<string, MnFileInputErrorMessageData>>;
1676
1709
  /**
1677
- * Controls how the selected file(s) are presented.
1710
+ * Controls how the selected file(s) are presented. Every mode but `compact`
1711
+ * doubles as a drop target and shows a "release to drop" state while files are
1712
+ * dragged over it.
1678
1713
  * - `dropzone` — large dashed drop area with icon + hint, previews/rows below (default).
1679
1714
  * - `thumbnail` — grid of image tiles (file icon for non-images), with an add tile.
1680
1715
  * - `list` — compact rows of file icon + name + size + remove.
@@ -1694,6 +1729,11 @@ type MnFileInputProps = {
1694
1729
  label?: string;
1695
1730
  /** Hint shown inside the empty dropzone (overrides config when provided). */
1696
1731
  dropzoneHint?: string;
1732
+ /**
1733
+ * Hint that replaces {@link dropzoneHint} while files are dragged over the
1734
+ * dropzone (overrides config when provided).
1735
+ */
1736
+ dropActiveHint?: string;
1697
1737
  /** Label for the "choose/replace file" affordance (overrides config when provided). */
1698
1738
  replaceLabel?: string;
1699
1739
  /** Accessible label for the per-file remove button (overrides config when provided). */
@@ -1751,6 +1791,8 @@ type MnFileInputUIConfig = {
1751
1791
  ariaLabel?: string;
1752
1792
  /** Hint shown inside the empty dropzone. */
1753
1793
  dropzoneHint?: string;
1794
+ /** Hint shown inside the dropzone while files are dragged over it. */
1795
+ dropActiveHint?: string;
1754
1796
  /** Label for the "choose/replace file" affordance. */
1755
1797
  replaceLabel?: string;
1756
1798
  /** Accessible label for the per-file remove button. */
@@ -1782,6 +1824,10 @@ type MnFileDisplayItem = {
1782
1824
  * (and a file icon + name for non-images), supports single or multiple selection,
1783
1825
  * several display layouts, and client-side `accept` / `maxSize` / `maxFiles` limits.
1784
1826
  *
1827
+ * Every display mode but `compact` is also a real drop target: dragging files
1828
+ * over it switches the area to a highlighted "release to drop" state, and
1829
+ * dropping runs the files through the same validation as the file picker.
1830
+ *
1785
1831
  * The form control value is the plain selection: `File | null` (single) or
1786
1832
  * `File[]` (multiple). An optional `currentUrl`/`currentUrls` renders an
1787
1833
  * already-saved image; removing it leaves the value untouched and emits `cleared`.
@@ -1807,6 +1853,8 @@ declare class MnFileInput implements OnInit {
1807
1853
  protected uiConfig: MnFileInputUIConfig;
1808
1854
  /** Currently selected files (always an array internally). */
1809
1855
  protected readonly files: i0.WritableSignal<File[]>;
1856
+ /** True while files are dragged over the dropzone ("release to drop" state). */
1857
+ protected readonly isDragging: i0.WritableSignal<boolean>;
1810
1858
  /** Transient message for a rejected selection (accept/maxSize/maxFiles). */
1811
1859
  protected readonly internalError: i0.WritableSignal<string | null>;
1812
1860
  private readonly configService;
@@ -1824,6 +1872,11 @@ declare class MnFileInput implements OnInit {
1824
1872
  readonly displayItems: i0.Signal<MnFileDisplayItem[]>;
1825
1873
  /** Disabled state pushed by the forms API. */
1826
1874
  private formDisabled;
1875
+ /**
1876
+ * Nesting depth of the current drag, so that moving across child elements of
1877
+ * the dropzone does not flicker {@link isDragging} off and on again.
1878
+ */
1879
+ private dragDepth;
1827
1880
  /**
1828
1881
  * Built-in default error messages in English.
1829
1882
  * Used when `useBuiltInErrorMessages` is true (default); overridable per-field.
@@ -1833,6 +1886,11 @@ declare class MnFileInput implements OnInit {
1833
1886
  constructor();
1834
1887
  /** The effective display mode. */
1835
1888
  get displayMode(): MnFileInputDisplayMode;
1889
+ /**
1890
+ * Whether the current display mode acts as a drop target. `compact` is an
1891
+ * inline button sized for a form row, too small to aim a drag at.
1892
+ */
1893
+ get supportsDrop(): boolean;
1836
1894
  /** Whether the control is disabled (via props or the forms API). */
1837
1895
  get isDisabled(): boolean;
1838
1896
  /** Native `accept` attribute value, or null for no restriction when unset. */
@@ -1878,6 +1936,28 @@ declare class MnFileInput implements OnInit {
1878
1936
  * @param event The native change event from the hidden file input.
1879
1937
  */
1880
1938
  onFileSelected(event: Event): void;
1939
+ /**
1940
+ * Arms the "release to drop" state when a file drag enters the dropzone.
1941
+ * @param event The native dragenter event.
1942
+ */
1943
+ onDragEnter(event: DragEvent): void;
1944
+ /**
1945
+ * Keeps the drop target alive; without a prevented dragover the browser never
1946
+ * fires a drop event.
1947
+ * @param event The native dragover event.
1948
+ */
1949
+ onDragOver(event: DragEvent): void;
1950
+ /**
1951
+ * Disarms the "release to drop" state once the drag has left the dropzone
1952
+ * entirely (and not merely crossed into one of its children).
1953
+ * @param event The native dragleave event.
1954
+ */
1955
+ onDragLeave(event: DragEvent): void;
1956
+ /**
1957
+ * Accepts the dropped files through the same validation as the file picker.
1958
+ * @param event The native drop event.
1959
+ */
1960
+ onDrop(event: DragEvent): void;
1881
1961
  /**
1882
1962
  * Removes a newly-selected file by index.
1883
1963
  * @param index Index into the current selection.
@@ -1922,6 +2002,15 @@ declare class MnFileInput implements OnInit {
1922
2002
  * inputs: custom props > config > built-in > fallback > default.
1923
2003
  */
1924
2004
  private resolveMessage;
2005
+ /**
2006
+ * Whether a drag event should be treated as a file drop on this control.
2007
+ * Ignores disabled controls, modes without a drop target, and drags that
2008
+ * carry something other than files (selected text, a link, …) so the page
2009
+ * keeps its default behaviour.
2010
+ */
2011
+ private acceptsDrag;
2012
+ /** Clears the drag state and its nesting counter. */
2013
+ private resetDrag;
1925
2014
  /** Checks a file against the configured `accept` filter (extensions and MIME globs). */
1926
2015
  private matchesAccept;
1927
2016
  /** Formats a byte count as a human-readable size. */
@@ -2759,8 +2848,14 @@ declare class MnMultiSelect implements OnInit {
2759
2848
  /** Layout classes for the anchored popover panel. The mobile sheet is rendered by
2760
2849
  * mn-bottom-sheet instead, so it no longer needs a branch here. */
2761
2850
  readonly panelClasses = "fixed z-9999 bg-base-100 border border-base-300 rounded-md shadow-lg max-h-60 overflow-auto";
2851
+ /** Layout classes for the invisible click shield rendered under the anchored panel.
2852
+ * One step below the panel's z-index so the panel itself stays clickable, and above
2853
+ * any modal/drawer chrome (which tops out well under 9998). */
2854
+ readonly shieldClasses = "fixed inset-0 z-9998";
2762
2855
  /** The anchored popover panel currently moved into `document.body`, if any. */
2763
2856
  private movedPanel;
2857
+ /** The click shield currently moved into `document.body`, if any. */
2858
+ private movedShield;
2764
2859
  /** Option count at which the search input auto-enables when `searchable` is unset. */
2765
2860
  private static readonly DEFAULT_SEARCH_THRESHOLD;
2766
2861
  /** Tailwind's `sm` breakpoint — below this the panel renders as a bottom sheet.
@@ -2804,6 +2899,11 @@ declare class MnMultiSelect implements OnInit {
2804
2899
  * broken on iOS). Cleanup is handled when the query clears on close/destroy.
2805
2900
  */
2806
2901
  set dropdownRef(ref: ElementRef<HTMLElement> | undefined);
2902
+ /**
2903
+ * The click shield sitting under the anchored panel, portalled alongside it for the same
2904
+ * reason: `position: fixed` must resolve against the viewport, not a transformed ancestor.
2905
+ */
2906
+ set shieldRef(ref: ElementRef<HTMLElement> | undefined);
2807
2907
  /** Currently selected values */
2808
2908
  selectedValues: unknown[];
2809
2909
  isOpen: boolean;
@@ -2849,6 +2949,15 @@ declare class MnMultiSelect implements OnInit {
2849
2949
  * otherwise auto-enabled once the option count reaches the threshold.
2850
2950
  */
2851
2951
  get isSearchable(): boolean;
2952
+ /**
2953
+ * Dismisses the anchored panel from a shield click, and stops the event there.
2954
+ *
2955
+ * Swallowing it is the point: the shield spans the viewport, so the click would otherwise
2956
+ * land on whatever the panel was floating over. Inside a modal that is the modal's own
2957
+ * backdrop, and "close the dropdown" would double as "throw away the modal". A first click
2958
+ * that only dismisses the overlay is also how native selects and menus behave.
2959
+ */
2960
+ onShieldClick(event: Event): void;
2852
2961
  onDocumentClick(event: Event): void;
2853
2962
  /**
2854
2963
  * Records the sheet's opened height as its `min-height` floor. Measured on the next
@@ -3540,6 +3649,129 @@ declare class MnBottomSheet {
3540
3649
  static ɵcmp: i0.ɵɵComponentDeclaration<MnBottomSheet, "mn-bottom-sheet", never, { "showBackdrop": { "alias": "showBackdrop"; "required": false; }; "showGrabber": { "alias": "showGrabber"; "required": false; }; "dismissible": { "alias": "dismissible"; "required": false; }; "minHeightPx": { "alias": "minHeightPx"; "required": false; }; "maxHeightVh": { "alias": "maxHeightVh"; "required": false; }; "containerClass": { "alias": "containerClass"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaLabelledby": { "alias": "ariaLabelledby"; "required": false; }; "growWithKeyboard": { "alias": "growWithKeyboard"; "required": false; }; "dismissGuard": { "alias": "dismissGuard"; "required": false; }; }, { "dismiss": "dismiss"; }, never, ["*"], true, never>;
3541
3650
  }
3542
3651
 
3652
+ /**
3653
+ * Which keys a {@link MnKeyboard} renders.
3654
+ *
3655
+ * `alphanumeric` is the full QWERTY block with a digit row on top — the layout for
3656
+ * a field that accepts either a membership number or a name. `numeric` is a phone-
3657
+ * style 3x4 pad for digits only. `alpha` drops the digit row for name-only fields.
3658
+ */
3659
+ type MnKeyboardLayout = 'alphanumeric' | 'numeric' | 'alpha';
3660
+ /**
3661
+ * How a {@link MnKeyboard} presents itself.
3662
+ *
3663
+ * `inline` renders the keys in normal document flow. `sheet` mounts them in an
3664
+ * {@link MnBottomSheet}, so the keyboard rises from the bottom of the screen over
3665
+ * whatever the user was looking at and can be swiped away.
3666
+ */
3667
+ type MnKeyboardPresentation = 'inline' | 'sheet';
3668
+ /**
3669
+ * Labels for a {@link MnKeyboard}'s named keys.
3670
+ *
3671
+ * Supplied by the consumer rather than defaulted in the component: the library
3672
+ * ships no user-facing English, so the host app translates these in its own
3673
+ * bundles. The character keys need no labels — a digit and a letter read the same
3674
+ * in every supported language.
3675
+ */
3676
+ type MnKeyboardLabels = {
3677
+ /** The backspace key (also its accessible name). */
3678
+ backspace: string;
3679
+ /** The clear-everything key. */
3680
+ clear: string;
3681
+ /** The space key. */
3682
+ space: string;
3683
+ /** The confirm/submit key. */
3684
+ submit: string;
3685
+ /** Accessible name for the keyboard as a whole. */
3686
+ keyboard: string;
3687
+ };
3688
+
3689
+ /**
3690
+ * An on-screen keyboard for touch devices that have no keyboard of their own.
3691
+ *
3692
+ * It exists for unattended screens — a tablet on a wall, a kiosk by a door — where
3693
+ * the OS keyboard is either unavailable or unwanted, and where the same field may
3694
+ * need to take a membership number *or* a name. Hence one component with a
3695
+ * {@link layout} switch rather than a separate number pad and text pad.
3696
+ *
3697
+ * It is a controlled component: it never owns the text. The host passes {@link value}
3698
+ * and reacts to {@link valueChange}, exactly like a form control, so the same value
3699
+ * can also be filled by a barcode scanner or a real keyboard without this component
3700
+ * fighting it.
3701
+ *
3702
+ * With {@link presentation} set to `sheet` it mounts inside an {@link MnBottomSheet},
3703
+ * rising from the bottom of the screen and swipeable away — the shape a kiosk wants
3704
+ * so the keys do not permanently occupy half the display.
3705
+ *
3706
+ * The library ships no user-facing English, so every named key takes its caption
3707
+ * from {@link labels}.
3708
+ */
3709
+ declare class MnKeyboard {
3710
+ /** The current text. This component never mutates it — see {@link valueChange}. */
3711
+ value: string;
3712
+ /** Which keys to render. */
3713
+ layout: MnKeyboardLayout;
3714
+ /** Whether the keys sit in the page or rise from the bottom as a sheet. */
3715
+ presentation: MnKeyboardPresentation;
3716
+ /**
3717
+ * Captions and accessible names for the named keys.
3718
+ *
3719
+ * The defaults are language-neutral glyphs rather than words, so a consumer that
3720
+ * forgets to translate still ships no English (or Dutch) from the library. The
3721
+ * accessible name for the keyboard as a whole has no neutral glyph, so it
3722
+ * defaults to empty and the attribute is simply omitted until a host supplies one.
3723
+ */
3724
+ labels: MnKeyboardLabels;
3725
+ /** Whether letters are rendered (and typed) upper-case. */
3726
+ uppercase: boolean;
3727
+ /** Whether to offer a space key. Off for a field that can never contain one. */
3728
+ allowSpace: boolean;
3729
+ /** Whether to offer a submit key. */
3730
+ showSubmit: boolean;
3731
+ /** Whether the submit key is currently actionable. */
3732
+ submitDisabled: boolean;
3733
+ /** Hard cap on the text length, or null for none. */
3734
+ maxLength: number | null;
3735
+ /** Cap on the sheet height as a fraction of the viewport, in vh (sheet presentation only). */
3736
+ sheetMaxHeightVh: number;
3737
+ /** Emits the full text after every key press, so the host can drive its own field. */
3738
+ valueChange: EventEmitter<string>;
3739
+ /** Emits when the submit key is pressed. */
3740
+ submitted: EventEmitter<string>;
3741
+ /** Emits when a sheet-presented keyboard is swiped or tapped away. */
3742
+ dismissed: EventEmitter<void>;
3743
+ get hostClasses(): string;
3744
+ /** The character rows to render, driven by {@link layout}. */
3745
+ get rows(): readonly string[][];
3746
+ /** Whether the space key should be offered (never on a digits-only pad). */
3747
+ get spaceVisible(): boolean;
3748
+ /**
3749
+ * Appends a character, respecting {@link maxLength}.
3750
+ * @param key The character pressed.
3751
+ */
3752
+ press(key: string): void;
3753
+ /** Appends a space. */
3754
+ pressSpace(): void;
3755
+ /** Removes the last character. */
3756
+ backspace(): void;
3757
+ /** Empties the field. */
3758
+ clear(): void;
3759
+ /** Reports a submit press. The host decides what submitting means. */
3760
+ submit(): void;
3761
+ /** Reports that a sheet-presented keyboard was dismissed. */
3762
+ onDismiss(): void;
3763
+ /**
3764
+ * Emits a new value, clamped to {@link maxLength}.
3765
+ *
3766
+ * Clamping happens here rather than in each key handler so a paste-like burst
3767
+ * from a scanner and a tapped key are bounded the same way.
3768
+ * @param next The candidate text.
3769
+ */
3770
+ private emit;
3771
+ static ɵfac: i0.ɵɵFactoryDeclaration<MnKeyboard, never>;
3772
+ static ɵcmp: i0.ɵɵComponentDeclaration<MnKeyboard, "mn-keyboard", never, { "value": { "alias": "value"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "presentation": { "alias": "presentation"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; "uppercase": { "alias": "uppercase"; "required": false; }; "allowSpace": { "alias": "allowSpace"; "required": false; }; "showSubmit": { "alias": "showSubmit"; "required": false; }; "submitDisabled": { "alias": "submitDisabled"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "sheetMaxHeightVh": { "alias": "sheetMaxHeightVh"; "required": false; }; }, { "valueChange": "valueChange"; "submitted": "submitted"; "dismissed": "dismissed"; }, never, never, true, never>;
3773
+ }
3774
+
3543
3775
  declare const mnSelectVariants: tailwind_variants.TVReturnType<{
3544
3776
  shadow: {
3545
3777
  true: string;
@@ -5706,6 +5938,8 @@ type FileFieldConfig<TModel = unknown> = {
5706
5938
  displayMode?: 'dropzone' | 'thumbnail' | 'list' | 'compact';
5707
5939
  /** Hint shown inside the empty dropzone */
5708
5940
  dropzoneHint?: string;
5941
+ /** Hint shown inside the dropzone while files are dragged over it */
5942
+ dropActiveHint?: string;
5709
5943
  /** Label for the "choose/replace file" affordance */
5710
5944
  replaceLabel?: string;
5711
5945
  /** Accessible label for the per-file remove button */
@@ -6462,6 +6696,7 @@ type FormFieldView<TModel> = FormFieldConfig<TModel> & {
6462
6696
  multiple?: boolean;
6463
6697
  displayMode?: 'dropzone' | 'thumbnail' | 'list' | 'compact';
6464
6698
  dropzoneHint?: string;
6699
+ dropActiveHint?: string;
6465
6700
  replaceLabel?: string;
6466
6701
  removeLabel?: string;
6467
6702
  currentUrl?: string | null;
@@ -7238,6 +7473,7 @@ declare class CalendarViewComponent implements OnInit, OnDestroy {
7238
7473
  private readonly mnConfigRef;
7239
7474
  private readonly destroyRef;
7240
7475
  private readonly lang;
7476
+ private readonly cdr;
7241
7477
  constructor();
7242
7478
  onResize(): void;
7243
7479
  ngOnInit(): void;
@@ -7443,6 +7679,7 @@ declare class CalendarDayComponent implements OnInit, OnDestroy {
7443
7679
  */
7444
7680
  declare class CalendarMonthComponent implements OnInit, OnDestroy {
7445
7681
  private readonly lang;
7682
+ private readonly cdr;
7446
7683
  /**
7447
7684
  * Accessible name for this control. Resolved through the conventional
7448
7685
  * `mnCalendar.monthView` key so an app can translate it, falling back to English when the
@@ -7537,6 +7774,7 @@ declare class CalendarEventDefaultComponent implements CalendarEventData, OnInit
7537
7774
  */
7538
7775
  declare class UpcomingEventsComponent implements OnInit, OnChanges, OnDestroy {
7539
7776
  private readonly lang;
7777
+ private readonly cdr;
7540
7778
  /**
7541
7779
  * Accessible name for this control. Resolved through the conventional
7542
7780
  * `mnCalendar.upcomingEvents` key so an app can translate it, falling back to English when the
@@ -7728,6 +7966,17 @@ declare class CalendarUtility {
7728
7966
  type MnTabItem = {
7729
7967
  /** Translation key or label text for the tab. */
7730
7968
  label: string;
7969
+ /**
7970
+ * Stable value this tab is written as in the URL while the tab bar mirrors
7971
+ * its selection there (see {@link MnTabDataSource.urlParam}).
7972
+ *
7973
+ * Defaults to a slug of the last segment of {@link label}
7974
+ * (`matches.hub.tab.entrants` → `entrants`, `members.tabMembers` →
7975
+ * `tab-members`). Set it when that slug is not the URL you want to hand out,
7976
+ * or when the label key may be renamed — a shared link is only as stable as
7977
+ * the value in it.
7978
+ */
7979
+ id?: string;
7731
7980
  /** Callback invoked when this tab becomes active. */
7732
7981
  onClick?: () => void;
7733
7982
  /** Callback invoked when this tab is deactivated. */
@@ -7755,13 +8004,59 @@ type MnTabDataSource = {
7755
8004
  * (e.g. tabs that depend on data being fetched) to predict the final count.
7756
8005
  */
7757
8006
  skeletonCount?: number;
8007
+ /**
8008
+ * Query parameter the active tab is mirrored in, so a reload or a shared
8009
+ * link lands on the tab the user was looking at. Defaults to `'tab'`; pass
8010
+ * `false` to keep this tab bar out of the URL.
8011
+ *
8012
+ * Each tab bar that can be on screen at the same time as another needs its
8013
+ * own parameter name — two bars sharing one name fight over it. Turn it off
8014
+ * for a tab bar whose selection is not worth sharing, such as one inside a
8015
+ * modal, which would otherwise write to the URL of the page behind it.
8016
+ *
8017
+ * Only user selections are written, so a page nobody has clicked a tab on
8018
+ * keeps a clean URL and falls back to {@link defaultActive}. Restoring a tab
8019
+ * from the URL runs that tab's {@link MnTabItem.onClick} and emits
8020
+ * `activeChange`, so a consumer tracking the active tab itself hears about
8021
+ * the restored one.
8022
+ */
8023
+ urlParam?: string | false;
7758
8024
  };
7759
8025
 
7760
8026
  /**
7761
8027
  * Tab component that renders a horizontal tab bar.
7762
8028
  * Supports translation keys for labels via MnTranslatePipe.
8029
+ *
8030
+ * The active tab is mirrored in the URL query string by default, so a reload,
8031
+ * a back button or a shared link lands on the same tab; see
8032
+ * {@link MnTabDataSource.urlParam} to rename that parameter or switch it off.
7763
8033
  */
7764
8034
  declare class MnTabComponent implements DoCheck, AfterViewInit, OnDestroy {
8035
+ /**
8036
+ * Router the active tab is written to. Optional: a tab bar used outside a
8037
+ * routed application still works, it just has no URL to mirror into.
8038
+ */
8039
+ private readonly router;
8040
+ /** Route the tab value is read back from; absent for the same reason as {@link router}. */
8041
+ private readonly route;
8042
+ /** Watches the URL so a deep link, a back button or an in-app link moves the tab bar. */
8043
+ private readonly queryParamsSub?;
8044
+ /**
8045
+ * URL keys of the current items, memoised on the items array so a slug is
8046
+ * computed once per tab set rather than on every change-detection pass.
8047
+ */
8048
+ private urlKeyCache?;
8049
+ /** URL key of {@link currentActive}, so a rebuilt tab set can be recognised as the same tab. */
8050
+ private currentKey?;
8051
+ /**
8052
+ * Key of a selection whose URL write has not landed yet. Navigation is
8053
+ * asynchronous, so a consumer that rebuilds its tabs in response to the click
8054
+ * can be resolved against a URL that still names the previous tab; until the
8055
+ * write completes, this is the truth about what the user picked.
8056
+ */
8057
+ private pendingKey?;
8058
+ /** Set on destroy so a deferred restore can't announce a tab nobody is showing. */
8059
+ private destroyed;
7765
8060
  /** The horizontally-scrolling wrapper the edge fade is painted onto. */
7766
8061
  private scrollContainer?;
7767
8062
  /** The tab row; queried for the active tab so the indicator can measure it. */
@@ -7819,6 +8114,7 @@ declare class MnTabComponent implements DoCheck, AfterViewInit, OnDestroy {
7819
8114
  * otherwise the number of known items, falling back to a default when none.
7820
8115
  */
7821
8116
  get skeletonTabs(): number[];
8117
+ constructor();
7822
8118
  /**
7823
8119
  * Re-resolves the active tab on every change-detection pass.
7824
8120
  *
@@ -7845,10 +8141,19 @@ declare class MnTabComponent implements DoCheck, AfterViewInit, OnDestroy {
7845
8141
  */
7846
8142
  updateEdgeFades(): void;
7847
8143
  /**
7848
- * Sets the given tab item as active, invoking deactivate/activate callbacks.
8144
+ * Sets the given tab item as active, invoking deactivate/activate callbacks,
8145
+ * and records the selection in the URL so it survives a reload or a share.
7849
8146
  * @param item - The tab item to activate.
7850
8147
  */
7851
8148
  setActive(item: MnTabItem): void;
8149
+ /**
8150
+ * Moves the selection to `item` and tells the consumer about it: the
8151
+ * deactivate/activate/emit sequence a click produces, shared by the click
8152
+ * path and the URL-driven ones (deep link, back button), which owe the
8153
+ * consumer the same notifications.
8154
+ * @param item - The tab item to activate.
8155
+ */
8156
+ private activate;
7852
8157
  /**
7853
8158
  * Marks a click-driven slide as in progress and schedules the guard to lift
7854
8159
  * once the transition has finished. A timeout (not `transitionend`) so the
@@ -7876,10 +8181,54 @@ declare class MnTabComponent implements DoCheck, AfterViewInit, OnDestroy {
7876
8181
  getBadge(item: MnTabItem): number | undefined;
7877
8182
  /**
7878
8183
  * Ensures {@link currentActive} references a tab that still exists in the data
7879
- * source, falling back to the configured default tab when the current
7880
- * selection is missing or stale (e.g. after the items array is replaced).
8184
+ * source, preferring the tab named in the URL and falling back to the
8185
+ * configured default tab when the current selection is missing or stale
8186
+ * (e.g. after the items array is replaced).
7881
8187
  */
7882
8188
  private syncActiveTab;
8189
+ /**
8190
+ * Records `item` as the selection, remembering its URL key so the same tab is
8191
+ * recognised after the consumer rebuilds the items array.
8192
+ * @param item - The newly selected tab.
8193
+ */
8194
+ private select;
8195
+ /**
8196
+ * Runs the restored tab's callbacks a change-detection pass later, unless the
8197
+ * selection moved on in the meantime (a click, or another tab set arriving).
8198
+ * @param item - The tab restored from the URL.
8199
+ */
8200
+ private announceRestored;
8201
+ /**
8202
+ * Activates the tab a URL value names, when it is not the tab already on
8203
+ * screen. Values naming no known tab are ignored: another tab bar on the page
8204
+ * may own that parameter, and a stale link should leave the default standing.
8205
+ * @param key - The value read from the query parameter, if any.
8206
+ */
8207
+ private activateUrlKey;
8208
+ /**
8209
+ * The query parameter this tab bar mirrors into, or undefined when there is
8210
+ * nothing to mirror into (no router) or the consumer switched it off.
8211
+ */
8212
+ private urlParam;
8213
+ /**
8214
+ * The tab the current URL asks for, if it names one of `items`.
8215
+ * @param items - The tab set to resolve the URL value against.
8216
+ */
8217
+ private itemFromUrl;
8218
+ /**
8219
+ * Records the active tab in the query string, replacing the current history
8220
+ * entry: switching tabs is not a navigation to walk back through, and back
8221
+ * should leave the page rather than retrace its tabs.
8222
+ * @param item - The tab that just became active.
8223
+ */
8224
+ private writeUrl;
8225
+ /**
8226
+ * The URL key of every tab, in item order: the item's `id`, else a slug of
8227
+ * its label. Repeats are numbered so each tab still round-trips through the
8228
+ * URL; give such tabs an explicit `id` to choose the value yourself.
8229
+ * @param items - The tab set to key.
8230
+ */
8231
+ private urlKeys;
7883
8232
  static ɵfac: i0.ɵɵFactoryDeclaration<MnTabComponent, never>;
7884
8233
  static ɵcmp: i0.ɵɵComponentDeclaration<MnTabComponent, "mn-tab", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "scrollable": { "alias": "scrollable"; "required": false; }; "justified": { "alias": "justified"; "required": false; }; }, { "activeChange": "activeChange"; }, never, never, true, never>;
7885
8234
  }
@@ -8768,5 +9117,5 @@ type MnPreviewMessage = {
8768
9117
  */
8769
9118
  declare function enableMnPreviewMode(configService: MnConfigService, langService: MnLanguageService, allowedOrigins?: string[]): void;
8770
9119
 
8771
- export { API_BASE_URL, ActionStyle, BackdropMode, BaseModalBuilder, CALENDAR_CONFIG, CALENDAR_DATE_FORMATTER, CalendarDayComponent, CalendarEventComponent, CalendarEventDefaultComponent, CalendarEventLayoutService, CalendarMonthComponent, CalendarUtility, CalendarView, CalendarViewComponent, CalendarWeekComponent, CloseMode, ColumnSortType, ConfirmationModalBuilder, ConfirmationTone, CrudService, CustomModalBuilder, DEFAULT_CALENDAR_CONFIG, DEFAULT_MN_ALERT_CONFIG, DefaultCalendarDateFormatter, FieldAppearance, FieldKind, FormLayoutMode, FormModalBuilder, KeyboardMode, MN_ALERT_CONFIG, MN_CALENDAR_COMPONENT_NAME, MN_CALENDAR_CONFIG, MN_CHECKBOX_CONFIG, MN_DATETIME_CONFIG, MN_DROPDOWN_CONFIG, MN_HAPTICS, MN_ICON_MAP, MN_INPUT_FIELD_CONFIG, MN_INSTANCE_ID, MN_LIB_DUAL_HORIZONTAL_IMAGE, MN_MODAL_ACTION_ICONS, MN_MULTI_SELECT_CONFIG, MN_SECTION_PATH, MN_SELECT_CONFIG, MN_TEXTAREA_CONFIG, MODAL_ACTION_ICON_SIZE, MODAL_ACTION_ICON_SIZE_SM, MnAlertOutletComponent, MnAlertService, MnAlertStore, MnBadge, MnBottomSheet, MnBreadcrumbs, MnButton, MnCheckbox, MnCollectionBase, MnCollectionPagination, MnCollectionState, MnConfigService, MnConfirmationBodyComponent, MnCustomBodyHostComponent, MnDateSelectorBar, MnDatetime, MnDropdown, MnDualHorizontalImage, MnFileInput, MnFormBodyComponent, MnGrid, MnHiddenBelowDirective, MnHttpService, MnIcon, MnIconAttributes, MnInformationCard, MnInputField, MnInstanceDirective, MnLanguageService, MnList, MnModalRef, MnModalService, MnModalShellComponent, MnMultiSelect, MnRichTextEditor, MnSectionDirective, MnSelect, MnSelectableCollectionBase, MnShowAboveDirective, MnShowBelowDirective, MnSkeleton, MnTabComponent, MnTable, MnTextarea, MnTranslatePipe, MnWizardBodyComponent, ModalBuilder, ModalCloseReason, ModalIntent, ModalKind, ModalSize, NavigationDirection, OptionState, SelectionMode, StepBuilder, StepState, SubmitMode, UpcomingEventRowComponent, UpcomingEventsComponent, ValidationCode, ValidationStatus, WizardFlowMode, WizardModalBuilder, dateTimeAdapter, defaultFilterPredicate, defaultIconForStyle, defaultTextAdapter, emptyFilterValue, enableMnPreviewMode, isFilterValueActive, isTranslatable, matchesColumnFilter, mnAlertVariants, mnBadgeVariants, mnBreadcrumbsVariants, mnButtonVariants, mnCheckboxVariants, mnCheckboxWrapperVariants, mnDatetimeVariants, mnDropdownTriggerVariants, mnFileInputVariants, mnIconVariants, mnInformationCardVariants, mnInputFieldVariants, mnMultiSelectVariants, mnSelectVariants, mnSkeletonVariants, mnTextareaVariants, numberAdapter, pickAdapter, provideMnAlerts, provideMnCalendarConfig, provideMnComponentConfig, provideMnConfig, provideMnLanguage, resolveCalendarConfig, resolveFilterableValue };
8772
- export type { AnimationOptions, ApiError, BaseModalConfig, CalendarButton, CalendarConfig, CalendarDateFormatter, CalendarEvent, CalendarEventData, CancellationActionConfig, CheckboxFieldConfig, ColorFieldConfig, ColorPreset, ColumnBase, ColumnDay, ColumnDefinition, ColumnFilterOption, ColumnFilterState, ColumnFilterType, ColumnFilterValue, ColumnSkeleton, ConfirmationActionConfig, ConfirmationModalConfig, CrudConfig, CurrentTimeCalendarEvent, CursorPaginationStrategy, CustomFieldConfig, CustomModalConfig, DateFieldConfig, DateSelectorBarLayout, DatetimeFieldConfig, DayTile, FailureResult, FieldDataSource, FieldRequiredCondition, FieldValidator, FieldVisibilityCondition, FileFieldConfig, FormFieldConfig, FormFieldGroup, FormModalConfig, FormRow, FormRowField, FormValidator, GridDataSource, GridLayout, GridSkeleton, HourRow, ListAppearance, ListDataSource, ListLabels, ListSkeleton, MnActionIcon, MnAlert, MnAlertConfig, MnAlertId, MnAlertKind, MnAlertTemplateContext, MnAlertVariants, MnBadgeTypes, MnBadgeVariants, MnBreadcrumbItem, MnBreadcrumbsData, MnBreadcrumbsVariants, MnButtonTypes, MnButtonVariants, MnCheckboxErrorMessageData, MnCheckboxErrorMessagesData, MnCheckboxProps, MnCheckboxUIConfig, MnCheckboxVariants, MnCheckboxWrapperVariants, MnCollectionDataSource, MnCollectionLabels, MnColumnFilter, MnConfigFile, MnConfigSettings, MnConfigValue, MnDatetimeErrorMessageData, MnDatetimeErrorMessagesData, MnDatetimeMode, MnDatetimeProps, MnDatetimeUIConfig, MnDatetimeVariants, MnDomAttrs, MnDropdownAction, MnDropdownActionColor, MnDropdownItem, MnDropdownProps, MnDropdownSeparator, MnDropdownTriggerVariants, MnDropdownUIConfig, MnDualHorizontalImageConfig, MnDualHorizontalImageTypes, MnErrorMessageData, MnErrorMessageFn, MnErrorMessagesData, MnFileDisplayItem, MnFileInputDisplayMode, MnFileInputErrorMessageData, MnFileInputErrorMessagesData, MnFileInputProps, MnFileInputUIConfig, MnFileInputVariants, MnHapticStyle, MnHapticsHandler, MnIconTypes, MnIconVariants, MnImageType, MnInformationCardBaseData, MnInformationCardData, MnInformationCardVariants, MnInputAdapter, MnInputBaseProps, MnInputDateTimeProps, MnInputFieldProps, MnInputFieldUIConfig, MnInputProps, MnInputType, MnInputVariants, MnLanguageConfig, MnMultiSelectErrorMessageData, MnMultiSelectErrorMessagesData, MnMultiSelectOption, MnMultiSelectProps, MnMultiSelectUIConfig, MnMultiSelectVariants, MnPageSlot, MnPreviewMessage, MnQueryParams, MnRichTextEditorControl, MnRichTextEditorLabels, MnRichTextEditorToolbar, MnRowValue, MnSelectErrorMessageData, MnSelectErrorMessagesData, MnSelectOption, MnSelectProps, MnSelectUIConfig, MnSelectVariants, MnSelectableCollectionDataSource, MnShowInput, MnSkeletonProps, MnSkeletonShape, MnSkeletonVariantProps, MnTabDataSource, MnTabItem, MnTableFilterLabels, MnTableRowAction, MnTextareaErrorMessageData, MnTextareaErrorMessagesData, MnTextareaProps, MnTextareaUIConfig, MnTextareaVariants, MnTranslatable, MnTranslationMap, MnTranslations, MnValidationErrorArgs, ModalCancelHandler, ModalCloseEvent, ModalConfig, ModalFooterAction, ModalI18nLabels, ModalInputMap, ModalPollingConfig, ModalRef, ModalResultHandler, ModalStepId, MonthItem, MultiSelectFieldConfig, MultiSelectTableFieldConfig, NumberFieldConfig, OffsetPaginationStrategy, PaginationMode, PaginationStrategy, PasswordFieldConfig, Primitive, QueryParams, QueryValue, RatingFieldConfig, Result, ResultMeta, SelectFieldConfig, SelectOption, SingleSelectTableFieldConfig, SliderFieldConfig, SortState, StepBodyConfig, StepGuard, StepValidator, SuccessResult, TableAppearance, TableDataSource, TableLabels, TextFieldConfig, TextareaFieldConfig, ValidationResult, WizardBeforeCompleteValidator, WizardModalConfig, WizardResult, WizardStepChangeEvent, WizardStepChangeHandler, WizardStepConfig };
9120
+ export { API_BASE_URL, ActionStyle, BackdropMode, BaseModalBuilder, CALENDAR_CONFIG, CALENDAR_DATE_FORMATTER, CalendarDayComponent, CalendarEventComponent, CalendarEventDefaultComponent, CalendarEventLayoutService, CalendarMonthComponent, CalendarUtility, CalendarView, CalendarViewComponent, CalendarWeekComponent, CloseMode, ColumnSortType, ConfirmationModalBuilder, ConfirmationTone, CrudService, CustomModalBuilder, DEFAULT_CALENDAR_CONFIG, DEFAULT_MN_ALERT_CONFIG, DefaultCalendarDateFormatter, FieldAppearance, FieldKind, FormLayoutMode, FormModalBuilder, KeyboardMode, MN_ALERT_CONFIG, MN_CALENDAR_COMPONENT_NAME, MN_CALENDAR_CONFIG, MN_CHECKBOX_CONFIG, MN_DATETIME_CONFIG, MN_DROPDOWN_CONFIG, MN_HAPTICS, MN_ICON_MAP, MN_INPUT_FIELD_CONFIG, MN_INSTANCE_ID, MN_LIB_DUAL_HORIZONTAL_IMAGE, MN_MODAL_ACTION_ICONS, MN_MULTI_SELECT_CONFIG, MN_SECTION_PATH, MN_SELECT_CONFIG, MN_TEXTAREA_CONFIG, MODAL_ACTION_ICON_SIZE, MODAL_ACTION_ICON_SIZE_SM, MnAlertOutletComponent, MnAlertService, MnAlertStore, MnBadge, MnBottomSheet, MnBreadcrumbs, MnButton, MnCheckbox, MnCollectionBase, MnCollectionPagination, MnCollectionState, MnConfigService, MnConfirmationBodyComponent, MnCustomBodyHostComponent, MnDateSelectorBar, MnDatetime, MnDropdown, MnDualHorizontalImage, MnFileInput, MnFormBodyComponent, MnGrid, MnHiddenBelowDirective, MnHttpService, MnIcon, MnIconAttributes, MnInformationCard, MnInputField, MnInstanceDirective, MnKeyboard, MnLanguageService, MnList, MnModalRef, MnModalService, MnModalShellComponent, MnMultiSelect, MnRichTextEditor, MnSectionDirective, MnSelect, MnSelectableCollectionBase, MnShowAboveDirective, MnShowBelowDirective, MnSkeleton, MnTabComponent, MnTable, MnTextarea, MnTranslatePipe, MnWizardBodyComponent, ModalBuilder, ModalCloseReason, ModalIntent, ModalKind, ModalSize, NavigationDirection, OptionState, SelectionMode, StepBuilder, StepState, SubmitMode, UpcomingEventRowComponent, UpcomingEventsComponent, ValidationCode, ValidationStatus, WizardFlowMode, WizardModalBuilder, dateTimeAdapter, defaultFilterPredicate, defaultIconForStyle, defaultTextAdapter, emptyFilterValue, enableMnPreviewMode, isFilterValueActive, isTranslatable, matchesColumnFilter, mnAlertVariants, mnBadgeVariants, mnBreadcrumbsVariants, mnButtonVariants, mnCheckboxVariants, mnCheckboxWrapperVariants, mnDatetimeVariants, mnDropdownTriggerVariants, mnFileInputVariants, mnIconVariants, mnInformationCardVariants, mnInputFieldVariants, mnMultiSelectVariants, mnSelectVariants, mnSkeletonVariants, mnTextareaVariants, numberAdapter, pickAdapter, provideMnAlerts, provideMnCalendarConfig, provideMnComponentConfig, provideMnConfig, provideMnLanguage, resolveCalendarConfig, resolveFilterableValue };
9121
+ export type { AnimationOptions, ApiError, BaseModalConfig, CalendarButton, CalendarConfig, CalendarDateFormatter, CalendarEvent, CalendarEventData, CancellationActionConfig, CheckboxFieldConfig, ColorFieldConfig, ColorPreset, ColumnBase, ColumnDay, ColumnDefinition, ColumnFilterOption, ColumnFilterState, ColumnFilterType, ColumnFilterValue, ColumnSkeleton, ConfirmationActionConfig, ConfirmationModalConfig, CrudConfig, CurrentTimeCalendarEvent, CursorPaginationStrategy, CustomFieldConfig, CustomModalConfig, DateFieldConfig, DateSelectorBarLayout, DatetimeFieldConfig, DayTile, FailureResult, FieldDataSource, FieldRequiredCondition, FieldValidator, FieldVisibilityCondition, FileFieldConfig, FormFieldConfig, FormFieldGroup, FormModalConfig, FormRow, FormRowField, FormValidator, GridDataSource, GridLayout, GridSkeleton, HourRow, ListAppearance, ListDataSource, ListLabels, ListSkeleton, MnActionIcon, MnAlert, MnAlertConfig, MnAlertId, MnAlertKind, MnAlertTemplateContext, MnAlertVariants, MnBadgeTypes, MnBadgeVariants, MnBreadcrumbItem, MnBreadcrumbsData, MnBreadcrumbsVariants, MnButtonTypes, MnButtonVariants, MnCheckboxErrorMessageData, MnCheckboxErrorMessagesData, MnCheckboxProps, MnCheckboxUIConfig, MnCheckboxVariants, MnCheckboxWrapperVariants, MnCollectionDataSource, MnCollectionLabels, MnColumnFilter, MnConfigFile, MnConfigSettings, MnConfigValue, MnDatetimeErrorMessageData, MnDatetimeErrorMessagesData, MnDatetimeMode, MnDatetimeProps, MnDatetimeUIConfig, MnDatetimeVariants, MnDomAttrs, MnDropdownAction, MnDropdownActionColor, MnDropdownItem, MnDropdownProps, MnDropdownSeparator, MnDropdownTriggerVariants, MnDropdownUIConfig, MnDualHorizontalImageConfig, MnDualHorizontalImageTypes, MnErrorMessageData, MnErrorMessageFn, MnErrorMessagesData, MnFileDisplayItem, MnFileInputDisplayMode, MnFileInputErrorMessageData, MnFileInputErrorMessagesData, MnFileInputProps, MnFileInputUIConfig, MnFileInputVariants, MnHapticStyle, MnHapticsHandler, MnIconTypes, MnIconVariants, MnImageType, MnInformationCardBaseData, MnInformationCardData, MnInformationCardVariants, MnInputAdapter, MnInputBaseProps, MnInputDateTimeProps, MnInputFieldProps, MnInputFieldUIConfig, MnInputProps, MnInputType, MnInputVariants, MnKeyboardLabels, MnKeyboardLayout, MnKeyboardPresentation, MnLanguageConfig, MnMultiSelectErrorMessageData, MnMultiSelectErrorMessagesData, MnMultiSelectOption, MnMultiSelectProps, MnMultiSelectUIConfig, MnMultiSelectVariants, MnPageSlot, MnPreviewMessage, MnQueryParams, MnRichTextEditorControl, MnRichTextEditorLabels, MnRichTextEditorToolbar, MnRowValue, MnSelectErrorMessageData, MnSelectErrorMessagesData, MnSelectOption, MnSelectProps, MnSelectUIConfig, MnSelectVariants, MnSelectableCollectionDataSource, MnShowInput, MnSkeletonProps, MnSkeletonShape, MnSkeletonVariantProps, MnTabDataSource, MnTabItem, MnTableFilterLabels, MnTableRowAction, MnTextareaErrorMessageData, MnTextareaErrorMessagesData, MnTextareaProps, MnTextareaUIConfig, MnTextareaVariants, MnTranslatable, MnTranslationMap, MnTranslations, MnValidationErrorArgs, ModalCancelHandler, ModalCloseEvent, ModalConfig, ModalFooterAction, ModalI18nLabels, ModalInputMap, ModalPollingConfig, ModalRef, ModalResultHandler, ModalStepId, MonthItem, MultiSelectFieldConfig, MultiSelectTableFieldConfig, NumberFieldConfig, OffsetPaginationStrategy, PaginationMode, PaginationStrategy, PasswordFieldConfig, Primitive, QueryParams, QueryValue, RatingFieldConfig, Result, ResultMeta, SelectFieldConfig, SelectOption, SingleSelectTableFieldConfig, SliderFieldConfig, SortState, StepBodyConfig, StepGuard, StepValidator, SuccessResult, TableAppearance, TableDataSource, TableLabels, TextFieldConfig, TextareaFieldConfig, ValidationResult, WizardBeforeCompleteValidator, WizardModalConfig, WizardResult, WizardStepChangeEvent, WizardStepChangeHandler, WizardStepConfig };