@nxgt/material 3.16.0 → 3.18.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 (79) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +1 -1
  3. package/dist/{async-slice-ChtlTP8W.js → async-slice-gqif7FX9.js} +2 -2
  4. package/dist/{button-BrgyWw7T.js → button-Ck1Bif-Q.js} +1 -1
  5. package/dist/charts.js +3 -3
  6. package/dist/{chip-BZu-bvAJ.js → chip-B9pZFWbi.js} +1 -1
  7. package/dist/{code-editor-DjY7_8TH.js → code-editor-M4DcaX-P.js} +4 -4
  8. package/dist/code-editor.js +4 -4
  9. package/dist/{code-language-items-D1lpNQ6J.js → code-language-items-Bnm_WDVg.js} +2 -2
  10. package/dist/{components-BOF9frx3.js → components-nq1rUKCK.js} +18648 -18025
  11. package/dist/components.js +15 -15
  12. package/dist/{dialog-YHZJjDrI.js → dialog-jYcWDh9G.js} +1 -1
  13. package/dist/dnd.js +1 -1
  14. package/dist/{dropdown-menu-BEyP-A0J.js → dropdown-menu-BEZhNnhr.js} +1 -1
  15. package/dist/editor.js +7 -7
  16. package/dist/{empty-state-ZtqqpX0S.js → empty-state-BBUsR0_X.js} +1 -1
  17. package/dist/hooks.js +2 -2
  18. package/dist/{i18n-provider-GV4Ukoe2.js → i18n-provider-3TsMIGn1.js} +1 -1
  19. package/dist/i18n.js +5 -5
  20. package/dist/{icon-badge-C0TGvF9o.js → icon-badge-92uhu2o6.js} +1 -1
  21. package/dist/lib/components/ui/collections/filter/editors/text-editor.d.ts +6 -1
  22. package/dist/lib/components/ui/collections/filter/index.d.ts +1 -1
  23. package/dist/lib/components/ui/collections/filter/query/types.d.ts +20 -1
  24. package/dist/lib/components/ui/collections/filter/query/use-filter-query-value.d.ts +3 -0
  25. package/dist/lib/components/ui/collections/filter/query/use-filter-query.d.ts +6 -2
  26. package/dist/lib/components/ui/collections/filter/sections/filter-search.d.ts +7 -1
  27. package/dist/lib/components/ui/collections/server-table/types.d.ts +12 -1
  28. package/dist/lib/components/ui/collections/server-table/use-table-answer.d.ts +1 -1
  29. package/dist/lib/components/ui/fields/search-field/search-field.d.ts +6 -1
  30. package/dist/lib/components/ui/selection/switcher/partials/switcher-footer.d.ts +13 -0
  31. package/dist/lib/components/ui/selection/switcher/partials/switcher-groups.d.ts +9 -0
  32. package/dist/lib/components/ui/selection/switcher/partials/switcher-list.d.ts +8 -0
  33. package/dist/lib/components/ui/selection/switcher/partials/switcher-menu.d.ts +13 -0
  34. package/dist/lib/components/ui/selection/switcher/partials/switcher-popover.d.ts +12 -0
  35. package/dist/lib/components/ui/selection/switcher/partials/switcher-row.d.ts +22 -0
  36. package/dist/lib/components/ui/selection/switcher/partials/switcher-search.d.ts +14 -0
  37. package/dist/lib/components/ui/selection/switcher/partials/switcher-sheet.d.ts +12 -0
  38. package/dist/lib/components/ui/selection/switcher/partials/switcher-tile.d.ts +7 -0
  39. package/dist/lib/components/ui/selection/switcher/partials/switcher-tooltip.d.ts +9 -0
  40. package/dist/lib/components/ui/selection/switcher/partials/switcher-trigger.d.ts +17 -0
  41. package/dist/lib/components/ui/selection/switcher/switcher.d.ts +10 -15
  42. package/dist/lib/components/ui/selection/switcher/switcher.utils.d.ts +13 -0
  43. package/dist/lib/components/ui/selection/switcher/types.d.ts +73 -0
  44. package/dist/lib/components/ui/selection/switcher/use-clipped.d.ts +3 -0
  45. package/dist/lib/components/ui/selection/switcher/use-switcher-list.d.ts +21 -0
  46. package/dist/lib/i18n/resources/en/en.d.ts +11 -0
  47. package/dist/lib/i18n/resources/en/material.json.d.ts +11 -0
  48. package/dist/lib/i18n/resources/fr/fr.d.ts +11 -0
  49. package/dist/lib/i18n/resources/fr/material.json.d.ts +11 -0
  50. package/dist/lib/i18n/resources/resources.d.ts +22 -0
  51. package/dist/lib/i18n/translator.d.ts +1 -1
  52. package/dist/lib.js +1 -1
  53. package/dist/main.js +21 -21
  54. package/dist/map.js +4 -4
  55. package/dist/material.css +1 -1
  56. package/dist/pdf-reader.js +1 -1
  57. package/dist/print.js +2 -2
  58. package/dist/{public-Bj3rGSfS.js → public-BLw13izR.js} +6 -6
  59. package/dist/{rich-code-block-RN-EpeTA.js → rich-code-block-DPe5USBG.js} +4 -4
  60. package/dist/{sortable-provider-Iej7IS4n.js → sortable-provider-CtAb1Q02.js} +1 -1
  61. package/dist/{spinner-BwWDXIbg.js → spinner-CcmXeIHf.js} +1 -1
  62. package/dist/{stored-language-BAAP7qS3.js → stored-language-CsDEJDR7.js} +24 -2
  63. package/dist/theme-picker.js +2 -2
  64. package/dist/{theme-toggle-8zHeXSD1.js → theme-toggle-CWovcIQY.js} +1 -1
  65. package/dist/{toolbar-items-CVQBYp4K.js → toolbar-items-CrATPuOX.js} +2 -2
  66. package/dist/{translate-material-C0aOnHpZ.js → translate-material-X1daoGxE.js} +2 -2
  67. package/dist/{translator-BU07gNva.js → translator-BUVKAo4l.js} +1 -1
  68. package/dist/{use-chat-composer-CoXmJCkr.js → use-chat-composer-UZVFm8Tw.js} +52 -52
  69. package/dist/{use-heading-spy-DETdqnB6.js → use-heading-spy-ByraZUf9.js} +1 -1
  70. package/dist/{use-material-translation-DGeVp-qP.js → use-material-translation-tD9XqIBm.js} +2 -2
  71. package/docs/components/data-table-filter-and-lists.md +35 -3
  72. package/docs/components/form-fields.md +1 -0
  73. package/docs/components/overlays-and-menus.md +1 -1
  74. package/docs/components/selection-and-choice.md +76 -6
  75. package/docs/guides/i18n.md +1 -1
  76. package/docs/guides/server-lists-url.md +12 -0
  77. package/docs/previews/selection-choice-switcher.webp +0 -0
  78. package/docs/troubleshooting.md +18 -1
  79. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # @nxgt/material
2
2
 
3
+ ## 3.18.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#1580](https://github.com/softistx/nxgt-material/pull/1580) [`c9531e1`](https://github.com/softistx/nxgt-material/commit/c9531e162625998083cb8364cbfd29e48afffe57) Thanks [@SteveGT96](https://github.com/SteveGT96)! - A modern `Switcher`, with no API break (`options`, `label`, `value` and `onValueChange` keep their meaning). **The default trigger changes visibly**: a 44px card tile (a tinted tile with the initial or the icon, the title, the subtitle and an up-down chevron) replaces the grey button, and the options open as a menu (up to 7: tint, start bar and check on the chosen row) or, from 8 or with `searchable`, as a panel with a search (a combobox over a listbox), groups and a "Manage…" footer; on a phone it is a bottom sheet. `variant="expressive"` is a pill with a larger panel, "Recent" tiles (`recent`, up to 3 ids) and soft badges (`badge`). `SwitcherItem` gains `group`, `initial`, `tone`, `badge`, `href` and `disabled`, and the `Switcher` gains `variant`, `searchable`, `recent`, `getHref` with `linkComponent` (link mode: a `nav` of links with `aria-current="page"` in place of the listbox, the arrows move real focus), `footer`, `emptyLabel` and `sheet`; its trigger props are button props. The initial tile renders again ([#1039](https://github.com/softistx/nxgt-material/issues/1039)), and a clipped title carries the full title in `aria-label`, shows it in a tooltip, and stays whole in the trigger's accessible name ([#1419](https://github.com/softistx/nxgt-material/issues/1419)). New `material.switcher.*` strings, in English and French. Core: the Free sprites draw `angles-up-down` as `sort`.
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [[`c9531e1`](https://github.com/softistx/nxgt-material/commit/c9531e162625998083cb8364cbfd29e48afffe57)]:
12
+ - @nxgt/material-core@0.32.1
13
+
14
+ ## 3.17.0
15
+
16
+ ### Minor Changes
17
+
18
+ - [#1576](https://github.com/softistx/nxgt-material/pull/1576) [`f27096b`](https://github.com/softistx/nxgt-material/commit/f27096bafd6f89bae15a8c3b110d024064ce8763) Thanks [@SteveGT96](https://github.com/SteveGT96)! - `Filter` and `ServerTable`'s `filter` take `searchApply: 'live' | 'enter'` and `searchMinLength`. With `searchApply="enter"` the search text (also on a phone) reaches the query and the URL only when Enter is pressed, and then at once; clearing it applies at once. A `text` field's editor inherits `searchApply`. Below `searchMinLength` nothing is applied or written and a hint (`material.filter.bar.search-min`) is announced politely. Both default to the old behaviour (live, no minimum). `SearchField` gains `onClear`. `@nxgt/material-core/filter` exports `searchReaches`, `searchIsShort`, `searchSendsOnType` and `FilterSearchApplyMode`.
19
+
20
+ `ServerTable`'s `filter` takes `codec: { keepKnownValues?, encoding? }`, used to parse and write the URL, its filtered state and "clear" alike, so the chips agree with a loader that parses with the same options. `isFiltered` and `withoutFilters` (`@nxgt/material-core/table-url`) now honour `keepKnownValues`.
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies [[`f27096b`](https://github.com/softistx/nxgt-material/commit/f27096bafd6f89bae15a8c3b110d024064ce8763)]:
25
+ - @nxgt/material-core@0.32.0
26
+
3
27
  ## 3.16.0
4
28
 
5
29
  ### Minor Changes
package/README.md CHANGED
@@ -586,7 +586,7 @@ Not components: what the stylesheet gives any element.
586
586
  | <img src="https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/previews/selection-choice-transferlist.webp" width="120" alt="TransferList"> | [`TransferList`](https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/components/selection-and-choice.md#transferlist) · `TransferListFormField` | Two-pane picker with search, counts, select-all, Shift-range checks, drag-and-drop between panes, reordering and a `max`; avatar and badge slots, a `compact` density, and panes that stack in a narrow container. | `TransferList`, `TransferListFormField` |
587
587
  | <img src="https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/previews/selection-choice-sortablelist.webp" width="120" alt="SortableList"> | [`SortableList`](https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/components/selection-and-choice.md#sortablelist) · `SortableListFormField` | Searchable list you reorder by dragging (row or grip) or with the keyboard (Space to pick up, arrows, Space to drop, Escape to cancel), each step announced; `numbered`, `removable`, locked rows, `cards` or `plain`, `compact`. | `SortableList`, `SortableListFormField` |
588
588
  | <img src="https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/previews/selection-choice-treeselectfield.webp" width="120" alt="TreeSelectField"> | [`TreeSelectField`](https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/components/selection-and-choice.md#treeselectfield) · `TreeSelectFormField` | A field that opens a `Tree` in a popover: pick one node, or several as chips, with an optional filter. | `TreeSelectField`, `TreeSelectFormField` |
589
- | <img src="https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/previews/selection-choice-switcher.webp" width="120" alt="Switcher"> | [`Switcher`](https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/components/selection-and-choice.md#switcher) | Dropdown for switching the active workspace or account, with an avatar. | `Switcher` |
589
+ | <img src="https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/previews/selection-choice-switcher.webp" width="120" alt="Switcher"> | [`Switcher`](https://cdn.jsdelivr.net/npm/@nxgt/material@3/docs/components/selection-and-choice.md#switcher) | Switches the active workspace, establishment or class: a menu, or a searchable panel with groups and links; an expressive variant. | `Switcher` |
590
590
 
591
591
  ### Data display
592
592
 
@@ -1,5 +1,5 @@
1
- import { i as e, r as t, t as n } from "./stored-language-BAAP7qS3.js";
2
- import { r } from "./translator-BU07gNva.js";
1
+ import { i as e, r as t, t as n } from "./stored-language-CsDEJDR7.js";
2
+ import { r } from "./translator-BUVKAo4l.js";
3
3
  import { t as i } from "./_baseIsEqual-C6ksIHya.js";
4
4
  import { useMemo as a } from "react";
5
5
  import { asyncThunkCreator as o, buildCreateSlice as s } from "@reduxjs/toolkit";
@@ -2,7 +2,7 @@ import { t as e } from "./utils-BLfntITJ.js";
2
2
  import { n as t, t as n } from "./dist-DVRQkaTK.js";
3
3
  import { o as r, t as i } from "./tooltip-CkttDIab.js";
4
4
  import { t as a } from "./is-production-GLw59WU8.js";
5
- import { t as o } from "./spinner-BwWDXIbg.js";
5
+ import { t as o } from "./spinner-CcmXeIHf.js";
6
6
  import { a as s, i as c, r as l, t as u } from "./button-tones-BwuVvAmd.js";
7
7
  import { t as d } from "./button-group-context-CaP0X5p_.js";
8
8
  import { t as f } from "./has-text-content-Ds2dkHX_.js";
package/dist/charts.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { t as e } from "./ui.utils-CAnKTCw5.js";
2
2
  import { t } from "./utils-BLfntITJ.js";
3
- import { t as n } from "./use-material-translation-DGeVp-qP.js";
4
- import { t as r } from "./button-BrgyWw7T.js";
3
+ import { t as n } from "./use-material-translation-tD9XqIBm.js";
4
+ import { t as r } from "./button-Ck1Bif-Q.js";
5
5
  import { t as i } from "./use-ssr-media-query-C6M5m8sf.js";
6
6
  import { i as a, n as o, r as s, t as c } from "./util-4heV2LPI.js";
7
7
  import { t as l } from "./useIsomorphicLayoutEffect-DfgAhWcH.js";
8
8
  import { t as u } from "./warn-once-C_e47JM8.js";
9
- import { t as d } from "./chip-BZu-bvAJ.js";
9
+ import { t as d } from "./chip-B9pZFWbi.js";
10
10
  import { c as f, d as p, f as m, i as h, o as g, p as _, s as v, t as y } from "./line-path-C5pZGC49.js";
11
11
  import { t as b } from "./live-status-BGPaN8r8.js";
12
12
  import { t as x } from "./linear-G97mfnKF.js";
@@ -1,6 +1,6 @@
1
1
  import { t as e } from "./utils-BLfntITJ.js";
2
2
  import { t } from "./tooltip-CkttDIab.js";
3
- import { t as n } from "./use-material-translation-DGeVp-qP.js";
3
+ import { t as n } from "./use-material-translation-tD9XqIBm.js";
4
4
  import { a as r } from "./button-tones-BwuVvAmd.js";
5
5
  import { t as i } from "./react-node-text-Crkpfpco.js";
6
6
  import { Check as a, X as o } from "lucide-react";
@@ -1,12 +1,12 @@
1
1
  import { r as e } from "./rolldown-runtime-BFFgcFxR.js";
2
2
  import { t } from "./utils-BLfntITJ.js";
3
3
  import { a as n } from "./dist-lmHmz_bu.js";
4
- import { c as r, d as i, f as a, n as o, t as s } from "./dropdown-menu-BEyP-A0J.js";
4
+ import { c as r, d as i, f as a, n as o, t as s } from "./dropdown-menu-BEZhNnhr.js";
5
5
  import { a as c, i as l, n as u } from "./field-blur-context-Cft9s7Hg.js";
6
- import { a as d, d as f, r as p, t as m, u as h } from "./toolbar-items-CVQBYp4K.js";
6
+ import { a as d, d as f, r as p, t as m, u as h } from "./toolbar-items-CrATPuOX.js";
7
7
  import { t as g } from "./is-production-GLw59WU8.js";
8
- import { t as _ } from "./use-material-translation-DGeVp-qP.js";
9
- import { i as v, n as y, o as b, t as x } from "./code-language-items-D1lpNQ6J.js";
8
+ import { t as _ } from "./use-material-translation-tD9XqIBm.js";
9
+ import { i as v, n as y, o as b, t as x } from "./code-language-items-Bnm_WDVg.js";
10
10
  import { t as S } from "./useIsomorphicLayoutEffect-DfgAhWcH.js";
11
11
  import { n as C, t as w } from "./escape-owner-C4W_sOAU.js";
12
12
  import { t as T } from "./skeleton-DSdtr2qc.js";
@@ -1,14 +1,14 @@
1
1
  import { t as e } from "./utils-BLfntITJ.js";
2
2
  import { a as t } from "./dist-lmHmz_bu.js";
3
- import { d as n, r, t as i, u as a } from "./toolbar-items-CVQBYp4K.js";
4
- import { t as o } from "./use-material-translation-DGeVp-qP.js";
5
- import { i as s, n as c, o as l } from "./code-language-items-D1lpNQ6J.js";
3
+ import { d as n, r, t as i, u as a } from "./toolbar-items-CrATPuOX.js";
4
+ import { t as o } from "./use-material-translation-tD9XqIBm.js";
5
+ import { i as s, n as c, o as l } from "./code-language-items-Bnm_WDVg.js";
6
6
  import { r as u, t as d } from "./field-blur-CJHzVSh9.js";
7
7
  import { t as f } from "./skeleton-DSdtr2qc.js";
8
8
  import { t as p } from "./live-status-BGPaN8r8.js";
9
9
  import { t as m } from "./use-mobile-BDro060N.js";
10
10
  import { t as h } from "./react-node-text-Crkpfpco.js";
11
- import { a as g, c as _, d as v, f as y, i as b, l as x, m as S, o as C, p as w, r as T, s as E, t as D, u as O } from "./code-editor-DjY7_8TH.js";
11
+ import { a as g, c as _, d as v, f as y, i as b, l as x, m as S, o as C, p as w, r as T, s as E, t as D, u as O } from "./code-editor-M4DcaX-P.js";
12
12
  import { ChevronDown as k, ChevronUp as A, Columns2 as j } from "lucide-react";
13
13
  import { useEffect as M, useRef as N, useState as P } from "react";
14
14
  import { Fragment as F, jsx as I, jsxs as L } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
- import { d as e, f as t } from "./dropdown-menu-BEyP-A0J.js";
2
- import { t as n } from "./use-material-translation-DGeVp-qP.js";
1
+ import { d as e, f as t } from "./dropdown-menu-BEZhNnhr.js";
2
+ import { t as n } from "./use-material-translation-tD9XqIBm.js";
3
3
  import { t as r } from "./live-status-BGPaN8r8.js";
4
4
  import { useEffect as i, useRef as a, useState as o } from "react";
5
5
  import { jsx as s } from "react/jsx-runtime";