@nxgt/material 3.46.0 → 3.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/README.md +3 -3
  3. package/dist/{async-slice-DPM9l8dd.js → async-slice-DlvKCKAa.js} +2 -2
  4. package/dist/{button-DR_EdcfV.js → button-yaltbQmC.js} +1 -1
  5. package/dist/charts.js +3 -3
  6. package/dist/{chip-olzYjs30.js → chip-BqWbbr1b.js} +1 -1
  7. package/dist/{code-editor-CCc-piPv.js → code-editor-C9qBNoYb.js} +4 -4
  8. package/dist/code-editor.js +4 -4
  9. package/dist/{code-language-items-mjN3a33n.js → code-language-items-DAHtfQ7W.js} +2 -2
  10. package/dist/{components-CfttRxBs.js → components-Ox6FHmpx.js} +13953 -13551
  11. package/dist/components.js +15 -15
  12. package/dist/{dialog-DOhEoEP2.js → dialog-CCCcnTIx.js} +1 -1
  13. package/dist/dnd.js +1 -1
  14. package/dist/{dropdown-menu-CFO3E-rO.js → dropdown-menu-Df8785nt.js} +1 -1
  15. package/dist/editor.js +7 -7
  16. package/dist/{empty-state-CTX0gKR3.js → empty-state-DcF4TBzi.js} +1 -1
  17. package/dist/hooks.js +2 -2
  18. package/dist/{i18n-provider-BnVQVqAF.js → i18n-provider-C0fB0sEL.js} +1 -1
  19. package/dist/i18n.js +5 -5
  20. package/dist/{icon-badge-BRys8Tuo.js → icon-badge-aJ22mKGh.js} +1 -1
  21. package/dist/lib/components/ui/collections/filter/query/filter-query-context.d.ts +1 -1
  22. package/dist/lib/components/ui/collections/filter/query/filter-query-model.d.ts +49 -0
  23. package/dist/lib/components/ui/collections/filter/query/types.d.ts +8 -0
  24. package/dist/lib/components/ui/collections/filter/query/use-filter-query-options.d.ts +2 -1
  25. package/dist/lib/components/ui/collections/filter/query/use-filter-query-value.d.ts +1 -0
  26. package/dist/lib/components/ui/collections/filter/query/use-filter-query.d.ts +3 -47
  27. package/dist/lib/components/ui/collections/filter/sections/filter-form-error.d.ts +16 -4
  28. package/dist/lib/components/ui/collections/server-table/types.d.ts +5 -0
  29. package/dist/lib/components/ui/display/timeline/index.d.ts +1 -1
  30. package/dist/lib/components/ui/display/timeline/partials/timeline-day-heading.d.ts +14 -0
  31. package/dist/lib/components/ui/display/timeline/partials/timeline-empty.d.ts +8 -0
  32. package/dist/lib/components/ui/display/timeline/partials/timeline-groups.d.ts +22 -0
  33. package/dist/lib/components/ui/display/timeline/partials/timeline-item-body.d.ts +13 -0
  34. package/dist/lib/components/ui/display/timeline/partials/timeline-item-card.d.ts +5 -0
  35. package/dist/lib/components/ui/display/timeline/partials/timeline-item-rail.d.ts +8 -0
  36. package/dist/lib/components/ui/display/timeline/partials/timeline-item-time.d.ts +12 -0
  37. package/dist/lib/components/ui/display/timeline/partials/timeline-skeleton.d.ts +4 -0
  38. package/dist/lib/components/ui/display/timeline/timeline-item.d.ts +13 -2
  39. package/dist/lib/components/ui/display/timeline/timeline-marker.d.ts +12 -0
  40. package/dist/lib/components/ui/display/timeline/timeline-rows.d.ts +23 -0
  41. package/dist/lib/components/ui/display/timeline/timeline.d.ts +32 -2
  42. package/dist/lib/components/ui/display/timeline/types.d.ts +6 -0
  43. package/dist/lib/components/ui/fields/contacts/placeholders.d.ts +1 -1
  44. package/dist/lib/components/ui/fields/opening-hours/logic/status.d.ts +13 -2
  45. package/dist/lib/components/ui/fields/opening-hours/opening-hours-summary.d.ts +7 -3
  46. package/dist/lib/components/ui/layout/stepper/partials/header-nav.d.ts +10 -0
  47. package/dist/lib/components/ui/layout/stepper/partials/header-segments.d.ts +6 -0
  48. package/dist/lib/components/ui/layout/stepper/partials/header-summary.d.ts +12 -0
  49. package/dist/lib/components/ui/layout/stepper/partials/stepper-content.d.ts +8 -0
  50. package/dist/lib/components/ui/layout/stepper/partials/stepper-step-text.d.ts +13 -0
  51. package/dist/lib/components/ui/layout/stepper/stepper-connector.d.ts +6 -0
  52. package/dist/lib/components/ui/layout/stepper/stepper-header.d.ts +12 -0
  53. package/dist/lib/components/ui/layout/stepper/stepper-icon.d.ts +5 -0
  54. package/dist/lib/components/ui/layout/stepper/stepper-layout.d.ts +25 -0
  55. package/dist/lib/components/ui/layout/stepper/stepper-step.d.ts +9 -2
  56. package/dist/lib/components/ui/layout/stepper/stepper.d.ts +13 -3
  57. package/dist/lib/i18n/resources/en/en.d.ts +7 -0
  58. package/dist/lib/i18n/resources/en/material.json.d.ts +9 -2
  59. package/dist/lib/i18n/resources/fr/fr.d.ts +7 -0
  60. package/dist/lib/i18n/resources/fr/material.json.d.ts +9 -2
  61. package/dist/lib/i18n/resources/resources.d.ts +14 -0
  62. package/dist/lib/i18n/translator.d.ts +1 -1
  63. package/dist/lib.js +1 -1
  64. package/dist/main.js +21 -21
  65. package/dist/map.js +4 -4
  66. package/dist/material.css +1 -1
  67. package/dist/pdf-reader.js +1 -1
  68. package/dist/print.js +2 -2
  69. package/dist/{public-BmA6r0EK.js → public-zVb_Nq_D.js} +6 -6
  70. package/dist/{rich-code-block-BgPtzSnv.js → rich-code-block-DMWZZJma.js} +4 -4
  71. package/dist/{sortable-provider-CceARBYP.js → sortable-provider-DstbgMVf.js} +1 -1
  72. package/dist/{spinner-7orqNAEy.js → spinner-C4CgDEYm.js} +1 -1
  73. package/dist/{stored-language-BHmxU75w.js → stored-language-IaL1Ftn_.js} +18 -4
  74. package/dist/styles.css +8 -0
  75. package/dist/theme-picker.js +2 -2
  76. package/dist/{theme-toggle-_RJgLHs9.js → theme-toggle-CGW2_K54.js} +1 -1
  77. package/dist/{toolbar-items-BCy6DMzb.js → toolbar-items-CsLGJMEJ.js} +2 -2
  78. package/dist/{translate-material-n0YBXLGp.js → translate-material-v9u-e7Kd.js} +2 -2
  79. package/dist/{translator-B_ue2XEg.js → translator-Dk4_qE6U.js} +1 -1
  80. package/dist/{use-chat-composer-FDmwZSua.js → use-chat-composer-Brcb5f7r.js} +12 -12
  81. package/dist/{use-heading-spy-O6_EATtA.js → use-heading-spy-DjKixjLm.js} +1 -1
  82. package/dist/{use-material-translation-CkPcqI6q.js → use-material-translation-DOkTaWK_.js} +2 -2
  83. package/docs/components/data-display.md +43 -4
  84. package/docs/components/data-table-filter-and-lists.md +28 -1
  85. package/docs/components/form-fields.md +1 -1
  86. package/docs/components/navigation-and-layout.md +66 -23
  87. package/docs/guides/i18n.md +4 -1
  88. package/docs/guides/ssr.md +3 -1
  89. package/docs/previews/data-display-timeline.webp +0 -0
  90. package/docs/previews/data-table-filter-lists-filter.webp +0 -0
  91. package/docs/previews/navigation-layout-stepper.webp +0 -0
  92. package/docs/roadmap.md +24 -0
  93. package/docs/troubleshooting.md +24 -0
  94. package/lib/styles.css +8 -0
  95. package/package.json +1 -1
  96. package/dist/lib/components/ui/fields/opening-hours/logic/zoned.d.ts +0 -10
@@ -0,0 +1,6 @@
1
+ import { Step } from '../stepper.js';
2
+ /** The segmented progress bar of the phone header: one segment per step. */
3
+ export declare function HeaderSegments({ steps, active, }: {
4
+ steps: Step[];
5
+ active: number;
6
+ }): import("react").JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { Step } from '../stepper.js';
2
+ /**
3
+ * The live part of the phone header: the chip, the title, the description
4
+ * and, for a screen reader only, the current step's state when it failed and
5
+ * how many steps failed. A change of step is announced as one message.
6
+ */
7
+ export declare function HeaderSummary({ steps, active, chipId, stepOf, }: {
8
+ steps: Step[];
9
+ active: number;
10
+ chipId: string;
11
+ stepOf: string;
12
+ }): import("react").JSX.Element;
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ /** Under the steps of a horizontal or responsive Stepper: the current step's
3
+ * `content` card and its description. */
4
+ export declare function StepperContent({ content, description, helperClassName, }: {
5
+ content?: ReactNode;
6
+ description?: ReactNode;
7
+ helperClassName: string;
8
+ }): import("react").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { ReactNode } from 'react';
2
+ import { StepperState } from '../step-state.js';
3
+ import { StepperOrientation } from '../stepper-layout.js';
4
+ /** The words of one step: "Step 02 · Optional", the title, the vertical
5
+ * description and the state, which a screen reader gets as text. */
6
+ export declare function StepperStepText({ state, orientation, label, title, optional, description, }: {
7
+ state: StepperState;
8
+ orientation: StepperOrientation;
9
+ label: ReactNode;
10
+ title: ReactNode;
11
+ optional?: boolean;
12
+ description?: ReactNode;
13
+ }): import("react").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { StepperOrientation } from './stepper-layout.js';
2
+ /** The pill track between two steps; its fill slides in with the spring. */
3
+ export declare function StepperConnector({ orientation, done, }: {
4
+ orientation: StepperOrientation;
5
+ done: boolean;
6
+ }): import("react").JSX.Element;
@@ -0,0 +1,12 @@
1
+ import { Step } from './stepper.js';
2
+ /**
3
+ * The phone header (below `sm`): "Step 3 of 5", the title, the description, a
4
+ * segmented progress bar and, with `onChange`, Back / Next. Always rendered;
5
+ * CSS hides it from `sm`, so the server and the client agree. The group is
6
+ * named by the visible chip, not by a copy of its text.
7
+ */
8
+ export declare function StepperHeader({ steps, active, onChange, }: {
9
+ steps: Step[];
10
+ active: number;
11
+ onChange?: (value: number) => void;
12
+ }): import("react").JSX.Element;
@@ -1,5 +1,10 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { StepperState } from './step-state.js';
3
+ /**
4
+ * The indicator of one step: a 48px box holding a shape that springs between
5
+ * 40px (rest) and 48px (current / failed), and pops when the state changes
6
+ * (not on the first render, so the server and the client agree).
7
+ */
3
8
  export declare function StepperIcon({ icon, state, fallback, }: {
4
9
  icon?: ReactNode;
5
10
  state: StepperState;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * The class tables of a `Stepper`. The layout is chosen by CSS breakpoints,
3
+ * never by a media query hook, so the server and the client render the same
4
+ * markup. Literal strings, so Tailwind finds every class.
5
+ *
6
+ * - `horizontal`: a row from `sm`; the phone header below.
7
+ * - `vertical`: a column from `sm`; the phone header below.
8
+ * - `responsive`: a column below `sm`, a row from `sm`; no header.
9
+ */
10
+ export type StepperOrientation = 'horizontal' | 'vertical' | 'responsive';
11
+ type Layout = {
12
+ root: string;
13
+ list: string;
14
+ item: string;
15
+ button: string;
16
+ text: string;
17
+ connector: string;
18
+ connectorFill: {
19
+ rest: string;
20
+ done: string;
21
+ };
22
+ helper: string;
23
+ };
24
+ export declare const LAYOUTS: Record<StepperOrientation, Layout>;
25
+ export {};
@@ -1,17 +1,24 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { StepperState } from './step-state.js';
3
+ import { StepperOrientation } from './stepper-layout.js';
3
4
  export type StepperStepProps = {
4
5
  id: string;
5
6
  index: number;
6
7
  state: StepperState;
7
8
  current: boolean;
8
- hidden: boolean;
9
+ last: boolean;
10
+ done: boolean;
11
+ orientation: StepperOrientation;
9
12
  icon?: ReactNode;
10
13
  label: ReactNode;
11
14
  title: ReactNode;
15
+ optional?: boolean;
16
+ /** Vertical only: the current step's description, under its title. */
12
17
  description?: ReactNode;
18
+ /** Vertical only: the card under the current step. */
19
+ content?: ReactNode;
13
20
  name?: string;
14
21
  onSelect?: () => void;
15
22
  };
16
23
  /** One `<li>` of a `Stepper`. Internal: not exported from the barrel. */
17
- export declare function StepperStep({ id, index, state, current, hidden, icon, label, title, description, name, onSelect, }: StepperStepProps): import("react").JSX.Element;
24
+ export declare function StepperStep({ id, index, state, current, last, done, orientation, icon, label, title, optional, description, content, name, onSelect, }: StepperStepProps): import("react").JSX.Element;
@@ -6,14 +6,24 @@ export type Step = {
6
6
  title: ReactNode;
7
7
  description?: ReactNode;
8
8
  status?: StepperStatus;
9
+ /** Marks the step "· Optional" (and "Optional" in the phone header). */
10
+ optional?: boolean;
11
+ /**
12
+ * A card shown while this step is current: under it in the vertical
13
+ * layout, under the steps in the others (and under the header on a phone).
14
+ */
15
+ content?: ReactNode;
9
16
  };
10
17
  export type StepperProps = {
11
18
  steps: Step[];
12
19
  active?: number;
13
20
  /**
14
- * `'responsive'` lists every step in a column below `sm` (640px) and lays
15
- * them in a row from there; `'vertical'` is a column from `md`, a phone
16
- * keeping the compact bar.
21
+ * `'horizontal'` is a row from `sm` (640px) and `'vertical'` a column at
22
+ * every width; below `sm` both swap the step list for a compact header
23
+ * card with Back / Next (when `onChange` is given). `'responsive'` lists
24
+ * every step in a column below `sm` and lays them in a row from there,
25
+ * with no header. The layout is chosen by CSS, so the server and the
26
+ * client render the same markup.
17
27
  */
18
28
  orientation?: 'horizontal' | 'vertical' | 'responsive';
19
29
  renderStepLabel?: (step: Step, index: number) => ReactNode;
@@ -1192,6 +1192,7 @@ export declare const en: {
1192
1192
  timeline: {
1193
1193
  label: string;
1194
1194
  empty: string;
1195
+ events: string;
1195
1196
  };
1196
1197
  copy: {
1197
1198
  copy: string;
@@ -1335,6 +1336,12 @@ export declare const en: {
1335
1336
  step: string;
1336
1337
  completed: string;
1337
1338
  error: string;
1339
+ "step-of": string;
1340
+ back: string;
1341
+ next: string;
1342
+ optional: string;
1343
+ attention: string;
1344
+ failed: string;
1338
1345
  };
1339
1346
  "location-field": {
1340
1347
  placeholder: string;
@@ -1181,7 +1181,8 @@ declare const _default: {
1181
1181
  },
1182
1182
  "timeline": {
1183
1183
  "label": "Timeline",
1184
- "empty": "No activity yet"
1184
+ "empty": "No activity yet",
1185
+ "events": "{count, plural, one {# event} other {# events}}"
1185
1186
  },
1186
1187
  "copy": {
1187
1188
  "copy": "Copy",
@@ -1324,7 +1325,13 @@ declare const _default: {
1324
1325
  "stepper": {
1325
1326
  "step": "Step {step}",
1326
1327
  "completed": "Completed",
1327
- "error": "Error"
1328
+ "error": "Error",
1329
+ "step-of": "Step {step} of {total}",
1330
+ "back": "Back",
1331
+ "next": "Next",
1332
+ "optional": "Optional",
1333
+ "attention": "Needs attention",
1334
+ "failed": "Steps needing attention: {count}"
1328
1335
  },
1329
1336
  "location-field": {
1330
1337
  "placeholder": "No location selected",
@@ -1192,6 +1192,7 @@ export declare const fr: {
1192
1192
  timeline: {
1193
1193
  label: string;
1194
1194
  empty: string;
1195
+ events: string;
1195
1196
  };
1196
1197
  copy: {
1197
1198
  copy: string;
@@ -1335,6 +1336,12 @@ export declare const fr: {
1335
1336
  step: string;
1336
1337
  completed: string;
1337
1338
  error: string;
1339
+ "step-of": string;
1340
+ back: string;
1341
+ next: string;
1342
+ optional: string;
1343
+ attention: string;
1344
+ failed: string;
1338
1345
  };
1339
1346
  "location-field": {
1340
1347
  placeholder: string;
@@ -1181,7 +1181,8 @@ declare const _default: {
1181
1181
  },
1182
1182
  "timeline": {
1183
1183
  "label": "Chronologie",
1184
- "empty": "Aucune activité"
1184
+ "empty": "Aucune activité",
1185
+ "events": "{count, plural, one {# événement} other {# événements}}"
1185
1186
  },
1186
1187
  "copy": {
1187
1188
  "copy": "Copier",
@@ -1324,7 +1325,13 @@ declare const _default: {
1324
1325
  "stepper": {
1325
1326
  "step": "Étape {step}",
1326
1327
  "completed": "Terminée",
1327
- "error": "Erreur"
1328
+ "error": "Erreur",
1329
+ "step-of": "Étape {step} sur {total}",
1330
+ "back": "Précédent",
1331
+ "next": "Suivant",
1332
+ "optional": "Facultative",
1333
+ "attention": "À corriger",
1334
+ "failed": "Étapes à corriger : {count}"
1328
1335
  },
1329
1336
  "location-field": {
1330
1337
  "placeholder": "Aucun emplacement sélectionné",
@@ -1190,6 +1190,7 @@ export declare const resources: {
1190
1190
  timeline: {
1191
1191
  label: string;
1192
1192
  empty: string;
1193
+ events: string;
1193
1194
  };
1194
1195
  copy: {
1195
1196
  copy: string;
@@ -1333,6 +1334,12 @@ export declare const resources: {
1333
1334
  step: string;
1334
1335
  completed: string;
1335
1336
  error: string;
1337
+ "step-of": string;
1338
+ back: string;
1339
+ next: string;
1340
+ optional: string;
1341
+ attention: string;
1342
+ failed: string;
1336
1343
  };
1337
1344
  "location-field": {
1338
1345
  placeholder: string;
@@ -4083,6 +4090,7 @@ export declare const resources: {
4083
4090
  timeline: {
4084
4091
  label: string;
4085
4092
  empty: string;
4093
+ events: string;
4086
4094
  };
4087
4095
  copy: {
4088
4096
  copy: string;
@@ -4226,6 +4234,12 @@ export declare const resources: {
4226
4234
  step: string;
4227
4235
  completed: string;
4228
4236
  error: string;
4237
+ "step-of": string;
4238
+ back: string;
4239
+ next: string;
4240
+ optional: string;
4241
+ attention: string;
4242
+ failed: string;
4229
4243
  };
4230
4244
  "location-field": {
4231
4245
  placeholder: string;