@nxgt/material-vue 0.24.0 → 0.25.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 (139) hide show
  1. package/README.md +17 -19
  2. package/dist/{Button-DOcT4Pej.js → Button-C1aaI0Gw.js} +1 -1
  3. package/dist/{HoverCardTrigger-WQe85PCH.js → HoverCardTrigger-JtHn0IFQ.js} +2 -2
  4. package/dist/{camera-BNbLUPb1.js → camera-BacVyXl0.js} +13 -13
  5. package/dist/{components-YlYuHLEI.js → components-DRBKkOqk.js} +15333 -13879
  6. package/dist/components.js +8 -8
  7. package/dist/composables.js +2 -2
  8. package/dist/dnd.js +1 -1
  9. package/dist/form-scope-VxlJuvFe.js +43 -0
  10. package/dist/{i18n-provider-DTuxugHO.js → i18n-provider-D0oYv0XS.js} +1 -1
  11. package/dist/i18n.js +4 -4
  12. package/dist/{icon-button-DKLuZ2c-.js → icon-button-B2FQtIHS.js} +1 -1
  13. package/dist/lib/components/ui/collections/tree/use-tree.d.ts +2 -0
  14. package/dist/lib/components/ui/dates/date-field/date-field.vue.d.ts +10 -1
  15. package/dist/lib/components/ui/dates/date-field/date-form-field.vue.d.ts +3 -1
  16. package/dist/lib/components/ui/dates/date-field/day-matcher.d.ts +26 -0
  17. package/dist/lib/components/ui/dates/date-field/index.d.ts +1 -0
  18. package/dist/lib/components/ui/dates/date-field/partials/date-field-content.vue.d.ts +2 -0
  19. package/dist/lib/components/ui/dates/date-range-field/date-range-field.utils.d.ts +11 -0
  20. package/dist/lib/components/ui/dates/date-range-field/date-range-field.vue.d.ts +26 -1
  21. package/dist/lib/components/ui/dates/date-range-field/date-range-form-field.vue.d.ts +3 -1
  22. package/dist/lib/components/ui/dates/date-range-field/index.d.ts +1 -0
  23. package/dist/lib/components/ui/dates/date-range-field/partials/date-range-calendar.vue.d.ts +5 -0
  24. package/dist/lib/components/ui/dates/date-range-field/partials/date-range-field-trigger.vue.d.ts +2 -0
  25. package/dist/lib/components/ui/dates/date-range-field/partials/date-range-presets.vue.d.ts +12 -0
  26. package/dist/lib/components/ui/dates/date-range-field/partials/date-range-times.vue.d.ts +13 -0
  27. package/dist/lib/components/ui/dates/date-range-field/use-date-range-presets.d.ts +23 -0
  28. package/dist/lib/components/ui/dates/time-picker/time-picker-utils.d.ts +7 -0
  29. package/dist/lib/components/ui/display/accordion-card/accordion-card.vue.d.ts +29 -1
  30. package/dist/lib/components/ui/display/avatar/Avatar.vue.d.ts +14 -3
  31. package/dist/lib/components/ui/display/avatar/index.d.ts +1 -0
  32. package/dist/lib/components/ui/display/cards/cards.gallery.d.ts +5 -9
  33. package/dist/lib/components/ui/display/qrcode/qrcode.vue.d.ts +5 -3
  34. package/dist/lib/components/ui/display/status-indicator/status-tone.d.ts +3 -0
  35. package/dist/lib/components/ui/feedback/confirmation-dialog/async-form-scope.d.ts +15 -0
  36. package/dist/lib/components/ui/feedback/confirmation-dialog/confirmation-dialog.vue.d.ts +37 -24
  37. package/dist/lib/components/ui/feedback/confirmation-dialog/index.d.ts +1 -1
  38. package/dist/lib/components/ui/feedback/confirmation-dialog/partials/confirmation-dialog-form-error.vue.d.ts +3 -0
  39. package/dist/lib/components/ui/fields/attributes/form-schema.d.ts +24 -22
  40. package/dist/lib/components/ui/fields/contacts/consts.d.ts +1 -1
  41. package/dist/lib/components/ui/fields/number-field/number-field.vue.d.ts +2 -0
  42. package/dist/lib/components/ui/fields/slider/partials/slider-field-row.vue.d.ts +32 -0
  43. package/dist/lib/components/ui/fields/slider/slider-field.vue.d.ts +22 -1
  44. package/dist/lib/components/ui/fields/slider/slider-form-field.vue.d.ts +13 -1
  45. package/dist/lib/components/ui/forms/form-scope-schema.d.ts +43 -0
  46. package/dist/lib/components/ui/forms/form-scope.vue.d.ts +33 -0
  47. package/dist/lib/components/ui/media/file-preview/file-preview-pdf.lazy.d.ts +8 -0
  48. package/dist/lib/components/ui/media/file-preview/file-preview.vue.d.ts +9 -0
  49. package/dist/lib/components/ui/media/file-preview/index.d.ts +3 -0
  50. package/dist/lib/components/ui/media/file-preview/partials/file-preview-body.vue.d.ts +21 -0
  51. package/dist/lib/components/ui/media/file-preview/partials/file-preview-card.vue.d.ts +15 -0
  52. package/dist/lib/components/ui/media/file-preview/partials/file-preview-download.vue.d.ts +11 -0
  53. package/dist/lib/components/ui/media/file-preview/partials/file-preview-media.vue.d.ts +17 -0
  54. package/dist/lib/components/ui/media/file-preview/partials/file-preview-pdf.vue.d.ts +21 -0
  55. package/dist/lib/components/ui/media/file-preview/partials/file-preview-status.vue.d.ts +22 -0
  56. package/dist/lib/components/ui/media/file-preview/partials/file-preview-text.vue.d.ts +16 -0
  57. package/dist/lib/components/ui/media/file-preview/types.d.ts +19 -0
  58. package/dist/lib/components/ui/media/file-preview/use-file-preview.d.ts +21 -0
  59. package/dist/lib/components/ui/media/file-preview/use-text-preview.d.ts +17 -0
  60. package/dist/lib/components/ui/media/files-form-field/files-form-field.vue.d.ts +29 -0
  61. package/dist/lib/components/ui/media/files-form-field/index.d.ts +2 -0
  62. package/dist/lib/components/ui/media/image-cropper/partials/image-cropper-canvas.vue.d.ts +1 -1
  63. package/dist/lib/components/ui/media/index.d.ts +2 -0
  64. package/dist/lib/components/ui/media/pdf-viewer/partials/pdf-page.vue.d.ts +1 -1
  65. package/dist/lib/components/ui/media/pdf-viewer/partials/pdf-reader-body.vue.d.ts +2 -2
  66. package/dist/lib/components/ui/media/upload/network-upload-field/use-image-preview.d.ts +9 -1
  67. package/dist/lib/components/ui/primitives/tabs/Tabs.vue.d.ts +3 -0
  68. package/dist/lib/components/ui/primitives/tabs/index.d.ts +1 -0
  69. package/dist/lib/components/ui/primitives/tabs/tabs-variant.d.ts +9 -0
  70. package/dist/lib/components/ui/selection/autocomplete/autocomplete-form-field.vue.d.ts +31 -5
  71. package/dist/lib/components/ui/selection/autocomplete/autocomplete-items.d.ts +23 -0
  72. package/dist/lib/components/ui/selection/autocomplete/autocomplete.vue.d.ts +48 -13
  73. package/dist/lib/components/ui/selection/autocomplete/filter-options.d.ts +2 -1
  74. package/dist/lib/components/ui/selection/autocomplete/partials/autocomplete-box.vue.d.ts +13 -1
  75. package/dist/lib/components/ui/selection/autocomplete/partials/autocomplete-list.vue.d.ts +17 -3
  76. package/dist/lib/components/ui/selection/autocomplete/use-autocomplete-items.d.ts +15 -0
  77. package/dist/lib/components/ui/selection/autocomplete/use-autocomplete-open.d.ts +15 -0
  78. package/dist/lib/components/ui/selection/autocomplete/use-autocomplete-texts.d.ts +14 -0
  79. package/dist/lib/components/ui/selection/autocomplete/use-autocomplete.d.ts +34 -0
  80. package/dist/lib/components/ui/selection/index.d.ts +1 -0
  81. package/dist/lib/components/ui/selection/select-field/select-field.vue.d.ts +16 -1
  82. package/dist/lib/components/ui/selection/select-field/select-form-field.vue.d.ts +16 -2
  83. package/dist/lib/components/ui/selection/tree-select-field/index.d.ts +3 -0
  84. package/dist/lib/components/ui/selection/tree-select-field/partials/tree-select-panel.vue.d.ts +27 -0
  85. package/dist/lib/components/ui/selection/tree-select-field/partials/tree-select-trigger.vue.d.ts +28 -0
  86. package/dist/lib/components/ui/selection/tree-select-field/tree-select-field.vue.d.ts +8 -0
  87. package/dist/lib/components/ui/selection/tree-select-field/tree-select-form-field.vue.d.ts +8 -0
  88. package/dist/lib/components/ui/selection/tree-select-field/tree-select.utils.d.ts +29 -0
  89. package/dist/lib/components/ui/selection/tree-select-field/types.d.ts +28 -0
  90. package/dist/lib/components/ui/selection/tree-select-field/use-tree-select-field.d.ts +19 -0
  91. package/dist/lib/components/ui/widgets/code-editor/code-editor-options.d.ts +4 -1
  92. package/dist/lib/components/ui/widgets/code-editor/code-editor.vue.d.ts +7 -0
  93. package/dist/lib/components/ui/widgets/code-editor/index.d.ts +1 -0
  94. package/dist/lib/components/ui/widgets/code-editor/monaco-editor.vue.d.ts +3 -0
  95. package/dist/lib/i18n/resources/en/en.d.ts +33 -0
  96. package/dist/lib/i18n/resources/en/material.json.d.ts +36 -3
  97. package/dist/lib/i18n/resources/fr/fr.d.ts +33 -0
  98. package/dist/lib/i18n/resources/fr/material.json.d.ts +36 -3
  99. package/dist/lib/i18n/resources/resources.d.ts +66 -0
  100. package/dist/lib/i18n/translator.d.ts +1 -1
  101. package/dist/lib/nuxt/component-names.d.ts +1 -1
  102. package/dist/lib.js +2 -2
  103. package/dist/main.js +17 -17
  104. package/dist/map.js +4 -4
  105. package/dist/material-vue.css +1 -1
  106. package/dist/{pdf-outline-sidebar-0I-LGrgY.js → pdf-outline-sidebar-jJfhNjnN.js} +2 -2
  107. package/dist/{pdf-page-C74-6lyZ.js → pdf-page-BW1hXzPu.js} +1 -1
  108. package/dist/{pdf-page-list-DPsquYPY.js → pdf-page-list-D277RtWS.js} +2 -2
  109. package/dist/{pdf-reader-Bkpp7UZ7.js → pdf-reader-BReUTsn_.js} +73 -71
  110. package/dist/{pdf-sidebar-BH-1jvy-.js → pdf-sidebar-Bk6PowY1.js} +3 -3
  111. package/dist/{pdf-thumbnail-sidebar-ByqNaYfz.js → pdf-thumbnail-sidebar-BcNDFsks.js} +3 -3
  112. package/dist/{pdf-toolbar-BRnmzddi.js → pdf-toolbar-CHjaMhH9.js} +4 -4
  113. package/dist/pdf.js +2 -2
  114. package/dist/{sortable-provider-CC9eO1nm.js → sortable-provider-C83VBfGl.js} +2 -2
  115. package/dist/{stored-language-N_UoPJsY.js → stored-language-CC_vdcCN.js} +72 -6
  116. package/dist/{stx-player-BGKIDqNX.js → stx-player-BMQ1D2Li.js} +20 -20
  117. package/dist/{translator-CU0jKvzB.js → translator-B-X_1taI.js} +1 -1
  118. package/dist/{use-heading-spy-Bw1LIAkC.js → use-heading-spy-C_ySuvTl.js} +1 -1
  119. package/dist/{use-material-translation-8hUB2M-S.js → use-material-translation-B6sIk0mF.js} +3 -3
  120. package/docs/components/README.md +2 -1
  121. package/docs/components/data-display.md +51 -10
  122. package/docs/components/data-table-filter-and-lists.md +4 -0
  123. package/docs/components/date-and-time.md +116 -9
  124. package/docs/components/feedback-and-status.md +56 -4
  125. package/docs/components/form-fields.md +15 -5
  126. package/docs/components/media-and-files.md +119 -5
  127. package/docs/components/navigation-and-layout.md +2 -1
  128. package/docs/components/primitives.md +21 -4
  129. package/docs/components/rich-widgets.md +20 -3
  130. package/docs/components/selection-and-choice.md +135 -9
  131. package/docs/guides/forms.md +3 -4
  132. package/docs/guides/i18n.md +44 -4
  133. package/docs/previews/date-time-daterangefield.webp +0 -0
  134. package/docs/previews/media-files-filepreview.webp +0 -0
  135. package/docs/previews/selection-choice-treeselectfield.webp +0 -0
  136. package/docs/roadmap.md +43 -37
  137. package/docs/troubleshooting.md +110 -1
  138. package/lib/nuxt/component-names.ts +4 -0
  139. package/package.json +2 -2
@@ -12,3 +12,4 @@ export * from './select-field';
12
12
  export * from './sortable-list';
13
13
  export * from './switcher';
14
14
  export * from './transfer-list';
15
+ export * from './tree-select-field';
@@ -15,10 +15,25 @@ export type SelectFieldProps = {
15
15
  options: SelectOption[];
16
16
  class?: HTMLAttributes['class'];
17
17
  };
18
- declare const __VLS_export: import('vue').DefineComponent<SelectFieldProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
18
+ /** `#option` is `@nxgt/material`'s `renderOption`. */
19
+ type __VLS_Slots = {
20
+ /** One option's content in the list. Defaults to its `label`. */
21
+ option?: (props: {
22
+ option: SelectOption;
23
+ index: number;
24
+ selected: boolean;
25
+ }) => unknown;
26
+ };
27
+ declare const __VLS_base: import('vue').DefineComponent<SelectFieldProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
19
28
  "update:modelValue": (value: string) => any;
20
29
  }, string, import('vue').PublicProps, Readonly<SelectFieldProps> & Readonly<{
21
30
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
22
31
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
32
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
23
33
  declare const _default: typeof __VLS_export;
24
34
  export default _default;
35
+ type __VLS_WithSlots<T, S> = T & {
36
+ new (): {
37
+ $slots: S;
38
+ };
39
+ };
@@ -1,7 +1,21 @@
1
- import { SelectFieldProps } from './select-field.vue';
1
+ import { SelectFieldProps, SelectOption } from './select-field.vue';
2
2
  type __VLS_Props = {
3
3
  name: string;
4
4
  } & Omit<SelectFieldProps, 'modelValue' | 'error' | 'name'>;
5
- declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
5
+ type __VLS_Slots = {
6
+ /** One option's content in the list, as on `SelectField`. */
7
+ option?: (props: {
8
+ option: SelectOption;
9
+ index: number;
10
+ selected: boolean;
11
+ }) => unknown;
12
+ };
13
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
14
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
6
15
  declare const _default: typeof __VLS_export;
7
16
  export default _default;
17
+ type __VLS_WithSlots<T, S> = T & {
18
+ new (): {
19
+ $slots: S;
20
+ };
21
+ };
@@ -0,0 +1,3 @@
1
+ export { default as TreeSelectField } from './tree-select-field.vue';
2
+ export { default as TreeSelectFormField } from './tree-select-form-field.vue';
3
+ export type { TreeSelectFieldProps, TreeSelectFieldValue } from './types';
@@ -0,0 +1,27 @@
1
+ import { TreeNode } from '../../../collections/tree/types';
2
+ /** What the popover holds: the optional filter input, then the tree. */
3
+ type __VLS_Props = {
4
+ nodes: TreeNode[];
5
+ multiple?: boolean;
6
+ selectedIds: string[];
7
+ expandedIds: string[];
8
+ /** Names the tree: the field's label. */
9
+ treeLabel?: string;
10
+ searchable?: boolean;
11
+ query: string;
12
+ searchLabel: string;
13
+ emptyText: string;
14
+ };
15
+ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
16
+ select: (id: string) => any;
17
+ "update:selectedIds": (ids: string[]) => any;
18
+ "update:expandedIds": (ids: string[]) => any;
19
+ "update:query": (query: string) => any;
20
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
21
+ onSelect?: ((id: string) => any) | undefined;
22
+ "onUpdate:selectedIds"?: ((ids: string[]) => any) | undefined;
23
+ "onUpdate:expandedIds"?: ((ids: string[]) => any) | undefined;
24
+ "onUpdate:query"?: ((query: string) => any) | undefined;
25
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
26
+ declare const _default: typeof __VLS_export;
27
+ export default _default;
@@ -0,0 +1,28 @@
1
+ import { TreeNode } from '../../../collections/tree/types';
2
+ /**
3
+ * The field's box: in multiple mode, a chip per picked node, then the
4
+ * `combobox` button that opens the tree. The chips sit beside the button, not
5
+ * in it — a chip's remove button may not be nested in another button — and the
6
+ * box is the popover's anchor, so the tree opens under all of it.
7
+ */
8
+ type __VLS_Props = {
9
+ open: boolean;
10
+ multiple?: boolean;
11
+ disabled?: boolean;
12
+ error?: boolean;
13
+ name?: string;
14
+ /** What the button shows while nothing is picked. */
15
+ placeholder: string;
16
+ /** What the button shows in multiple mode once something is picked. */
17
+ countText: string;
18
+ selectedNodes: TreeNode[];
19
+ /** The combobox's attributes, role, name and description (`pickerTriggerBindings`). */
20
+ a11y: Record<string, unknown>;
21
+ };
22
+ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
23
+ remove: (id: string) => any;
24
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
25
+ onRemove?: ((id: string) => any) | undefined;
26
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
27
+ declare const _default: typeof __VLS_export;
28
+ export default _default;
@@ -0,0 +1,8 @@
1
+ import { TreeSelectFieldProps, TreeSelectFieldValue } from './types';
2
+ declare const __VLS_export: import('vue').DefineComponent<TreeSelectFieldProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
3
+ "update:modelValue": (value: TreeSelectFieldValue) => any;
4
+ }, string, import('vue').PublicProps, Readonly<TreeSelectFieldProps> & Readonly<{
5
+ "onUpdate:modelValue"?: ((value: TreeSelectFieldValue) => any) | undefined;
6
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
@@ -0,0 +1,8 @@
1
+ import { TreeSelectFieldProps } from './types';
2
+ /** `TreeSelectField` bound to vee-validate: touched when focus leaves it. */
3
+ type __VLS_Props = {
4
+ name: string;
5
+ } & Omit<TreeSelectFieldProps, 'modelValue' | 'error' | 'name'>;
6
+ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
@@ -0,0 +1,29 @@
1
+ import { TreeNode } from '../../collections/tree/types';
2
+ /** The text a node shows, which the search matches against. */
3
+ export declare function treeNodeText(node: TreeNode): string;
4
+ export type FilteredTree = {
5
+ /** The matches, each under its ancestors; a match keeps its own subtree. */
6
+ nodes: TreeNode[];
7
+ /** The ancestors kept for a match below them: open, so the match shows. */
8
+ expandedIds: string[];
9
+ };
10
+ /**
11
+ * The tree narrowed to the nodes whose text contains `query` (case- and
12
+ * accent-insensitive), with every match's ancestors kept so it stays in place.
13
+ * An empty query keeps the whole tree, with nothing forced open.
14
+ */
15
+ export declare function filterTree(nodes: TreeNode[], query: string): FilteredTree;
16
+ /** The ids of the ancestors of `ids`: opened, so a picked node is in view. */
17
+ export declare function ancestorIds(nodes: TreeNode[], ids: string[]): string[];
18
+ /** The nodes of `ids`, in the order of `ids`; an id the tree lacks is skipped. */
19
+ export declare function treeNodesOf(nodes: TreeNode[], ids: string[]): TreeNode[];
20
+ /** The value as a list of ids, whatever the mode. */
21
+ export declare function toIds(value: string | string[] | null | undefined): string[];
22
+ /** The first tree item a keyboard user lands on: the roving one, else the first. */
23
+ export declare function treeEntry(root: ParentNode | null | undefined): HTMLElement | null;
24
+ /**
25
+ * Before a chip is removed, hand focus on, so a keyboard user is not dropped
26
+ * to `<body>` (which also blurs, so touches, the form field): the next chip's
27
+ * remove button, else the previous one's, else the combobox trigger.
28
+ */
29
+ export declare function focusAfterChipRemoval(box: ParentNode | null | undefined, index: number): void;
@@ -0,0 +1,28 @@
1
+ import { HTMLAttributes } from 'vue';
2
+ import { TreeNode } from '../../collections/tree/types';
3
+ export type TreeSelectFieldProps = {
4
+ /** The tree to pick from: `Tree`'s node shape. */
5
+ items: TreeNode[];
6
+ /** The picked node's id, or the picked ids with `multiple` (`v-model`). */
7
+ modelValue?: string | string[] | null;
8
+ /** Checkboxes in the tree, and the picked nodes as chips in the trigger. */
9
+ multiple?: boolean;
10
+ label?: string;
11
+ helperText?: string;
12
+ error?: boolean;
13
+ /** Shown while nothing is picked; `material.tree-select-field.placeholder` otherwise. */
14
+ placeholder?: string;
15
+ disabled?: boolean;
16
+ required?: boolean;
17
+ /** A filter input above the tree: matches stay under their ancestors. */
18
+ searchable?: boolean;
19
+ /** The filter input's placeholder and name; `material.tree-select-field.search` otherwise. */
20
+ searchPlaceholder?: string;
21
+ name?: string;
22
+ class?: HTMLAttributes['class'];
23
+ /** Names the trigger (`aria-label`); it wins over `label`. */
24
+ ariaLabel?: string;
25
+ ariaLabelledby?: string;
26
+ };
27
+ /** What the field emits: one id (or `null`), or the ids with `multiple`. */
28
+ export type TreeSelectFieldValue = string | string[] | null;
@@ -0,0 +1,19 @@
1
+ import { TreeSelectFieldProps, TreeSelectFieldValue } from './types';
2
+ /**
3
+ * A `TreeSelectField`'s chrome — open, the search query, the open branches —
4
+ * and what picking does. The value stays the caller's (`v-model`); three
5
+ * local refs need no store, as in `Autocomplete`.
6
+ */
7
+ export declare function useTreeSelectField(props: TreeSelectFieldProps, change: (value: TreeSelectFieldValue) => void): {
8
+ open: import('vue').Ref<boolean, boolean>;
9
+ setOpen: (next: boolean) => void;
10
+ query: import('vue').Ref<string, string>;
11
+ search: (next: string) => void;
12
+ nodes: import('vue').ComputedRef<import('../../collections').TreeNode[]>;
13
+ expandedIds: import('vue').Ref<string[], string[]>;
14
+ selectedIds: import('vue').ComputedRef<string[]>;
15
+ selectedNodes: import('vue').ComputedRef<import('../../collections').TreeNode[]>;
16
+ onSelectedIdsChange: (ids: string[]) => void;
17
+ onSelect: (id: string) => void;
18
+ remove: (id: string) => void;
19
+ };
@@ -6,11 +6,14 @@ export type CodeEditorOptionsInput = {
6
6
  wordWrap?: boolean;
7
7
  /** The field's label: it names Monaco's textarea. */
8
8
  label?: string;
9
+ /** Monaco's own construction options, passed through; they win. */
10
+ options?: CodeEditorOptions;
9
11
  };
10
12
  /**
11
13
  * Monaco's options for `CodeEditor`, at creation and on every change of
12
14
  * these inputs. `ariaRequired` puts `aria-required` on Monaco's own textarea,
13
15
  * the element a screen reader lands on, and `ariaLabel` names it with the
14
16
  * field's label: the `Label` cannot be `for` a textarea Monaco creates.
17
+ * Caller `options` win, as on `@nxgt/material`.
15
18
  */
16
- export declare function codeEditorOptions({ readOnly, required, wordWrap, label, }: CodeEditorOptionsInput): any;
19
+ export declare function codeEditorOptions({ readOnly, required, wordWrap, label, options, }: CodeEditorOptionsInput): CodeEditorOptions;
@@ -1,3 +1,4 @@
1
+ import { CodeEditorOptions } from './code-editor-options';
1
2
  export type CodeEditorProps = {
2
3
  label?: string;
3
4
  helperText?: string;
@@ -12,6 +13,12 @@ export type CodeEditorProps = {
12
13
  scheme?: 'dark' | 'light';
13
14
  height?: string | number;
14
15
  modelValue?: string;
16
+ /**
17
+ * Monaco's own options (`IStandaloneEditorConstructionOptions`), passed
18
+ * through at creation and through `updateOptions` when they change. They
19
+ * win over the editor's defaults (`minimap`, `fontSize`, `wordWrap`…).
20
+ */
21
+ options?: CodeEditorOptions;
15
22
  };
16
23
  declare const __VLS_export: import('vue').DefineComponent<CodeEditorProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
17
24
  "update:modelValue": (value: string) => any;
@@ -1,3 +1,4 @@
1
1
  export type { CodeEditorProps } from './code-editor.vue';
2
2
  export { default as CodeEditor } from './code-editor.vue';
3
3
  export { default as CodeEditorFormField } from './code-editor-form-field.vue';
4
+ export type { CodeEditorOptions } from './code-editor-options';
@@ -1,3 +1,4 @@
1
+ import { CodeEditorOptions } from './code-editor-options';
1
2
  type __VLS_Props = {
2
3
  modelValue: string;
3
4
  language: string;
@@ -8,6 +9,8 @@ type __VLS_Props = {
8
9
  required?: boolean;
9
10
  /** Names Monaco's textarea; a new one reaches it through `updateOptions`. */
10
11
  label?: string;
12
+ /** Monaco's own options; they win over the defaults above. */
13
+ options?: CodeEditorOptions;
11
14
  };
12
15
  declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
13
16
  "update:modelValue": (value: string) => any;
@@ -48,6 +48,7 @@ export declare const en: {
48
48
  cancel: string;
49
49
  processing: string;
50
50
  failed: string;
51
+ "form-failed": string;
51
52
  };
52
53
  "location-field": {
53
54
  placeholder: string;
@@ -631,6 +632,12 @@ export declare const en: {
631
632
  expand: string;
632
633
  collapse: string;
633
634
  };
635
+ "tree-select-field": {
636
+ placeholder: string;
637
+ search: string;
638
+ empty: string;
639
+ selected: string;
640
+ };
634
641
  "image-cropper": {
635
642
  title: string;
636
643
  zoom: string;
@@ -1162,6 +1169,7 @@ export declare const en: {
1162
1169
  slider: {
1163
1170
  minimum: string;
1164
1171
  maximum: string;
1172
+ value: string;
1165
1173
  };
1166
1174
  "scroll-to-top": {
1167
1175
  label: string;
@@ -1198,6 +1206,31 @@ export declare const en: {
1198
1206
  "time-picker": {
1199
1207
  am: string;
1200
1208
  pm: string;
1209
+ hours: string;
1210
+ minutes: string;
1211
+ };
1212
+ "date-range-field": {
1213
+ presets: string;
1214
+ preset: {
1215
+ today: string;
1216
+ yesterday: string;
1217
+ "last-7-days": string;
1218
+ "last-30-days": string;
1219
+ "this-month": string;
1220
+ "last-month": string;
1221
+ "this-year": string;
1222
+ };
1223
+ "start-time": string;
1224
+ "end-time": string;
1225
+ };
1226
+ "file-preview": {
1227
+ label: string;
1228
+ untitled: string;
1229
+ loading: string;
1230
+ error: string;
1231
+ download: string;
1232
+ truncated: string;
1233
+ content: string;
1201
1234
  };
1202
1235
  };
1203
1236
  };
@@ -37,7 +37,8 @@ declare const _default: {
37
37
  "confirm": "Confirm",
38
38
  "cancel": "Cancel",
39
39
  "processing": "Processing...",
40
- "failed": "The action failed."
40
+ "failed": "The action failed.",
41
+ "form-failed": "The form could not be loaded."
41
42
  },
42
43
  "location-field": {
43
44
  "placeholder": "No location selected",
@@ -621,6 +622,12 @@ declare const _default: {
621
622
  "expand": "Expand",
622
623
  "collapse": "Collapse"
623
624
  },
625
+ "tree-select-field": {
626
+ "placeholder": "Select…",
627
+ "search": "Search",
628
+ "empty": "No match found.",
629
+ "selected": "{count} selected"
630
+ },
624
631
  "image-cropper": {
625
632
  "title": "Crop image",
626
633
  "zoom": "Zoom",
@@ -1151,7 +1158,8 @@ declare const _default: {
1151
1158
  },
1152
1159
  "slider": {
1153
1160
  "minimum": "Minimum",
1154
- "maximum": "Maximum"
1161
+ "maximum": "Maximum",
1162
+ "value": "Value"
1155
1163
  },
1156
1164
  "scroll-to-top": {
1157
1165
  "label": "Scroll to top"
@@ -1187,7 +1195,32 @@ declare const _default: {
1187
1195
  },
1188
1196
  "time-picker": {
1189
1197
  "am": "AM",
1190
- "pm": "PM"
1198
+ "pm": "PM",
1199
+ "hours": "Hours",
1200
+ "minutes": "Minutes"
1201
+ },
1202
+ "date-range-field": {
1203
+ "presets": "Presets",
1204
+ "preset": {
1205
+ "today": "Today",
1206
+ "yesterday": "Yesterday",
1207
+ "last-7-days": "Last 7 days",
1208
+ "last-30-days": "Last 30 days",
1209
+ "this-month": "This month",
1210
+ "last-month": "Last month",
1211
+ "this-year": "This year"
1212
+ },
1213
+ "start-time": "Start time",
1214
+ "end-time": "End time"
1215
+ },
1216
+ "file-preview": {
1217
+ "label": "Preview of {name}",
1218
+ "untitled": "Untitled file",
1219
+ "loading": "Loading preview…",
1220
+ "error": "This file could not be previewed.",
1221
+ "download": "Download",
1222
+ "truncated": "Showing the first {size} of this file.",
1223
+ "content": "Contents of {name}"
1191
1224
  }
1192
1225
  }
1193
1226
  ;
@@ -48,6 +48,7 @@ export declare const fr: {
48
48
  cancel: string;
49
49
  processing: string;
50
50
  failed: string;
51
+ "form-failed": string;
51
52
  };
52
53
  "location-field": {
53
54
  placeholder: string;
@@ -631,6 +632,12 @@ export declare const fr: {
631
632
  expand: string;
632
633
  collapse: string;
633
634
  };
635
+ "tree-select-field": {
636
+ placeholder: string;
637
+ search: string;
638
+ empty: string;
639
+ selected: string;
640
+ };
634
641
  "image-cropper": {
635
642
  title: string;
636
643
  zoom: string;
@@ -1162,6 +1169,7 @@ export declare const fr: {
1162
1169
  slider: {
1163
1170
  minimum: string;
1164
1171
  maximum: string;
1172
+ value: string;
1165
1173
  };
1166
1174
  "scroll-to-top": {
1167
1175
  label: string;
@@ -1198,6 +1206,31 @@ export declare const fr: {
1198
1206
  "time-picker": {
1199
1207
  am: string;
1200
1208
  pm: string;
1209
+ hours: string;
1210
+ minutes: string;
1211
+ };
1212
+ "date-range-field": {
1213
+ presets: string;
1214
+ preset: {
1215
+ today: string;
1216
+ yesterday: string;
1217
+ "last-7-days": string;
1218
+ "last-30-days": string;
1219
+ "this-month": string;
1220
+ "last-month": string;
1221
+ "this-year": string;
1222
+ };
1223
+ "start-time": string;
1224
+ "end-time": string;
1225
+ };
1226
+ "file-preview": {
1227
+ label: string;
1228
+ untitled: string;
1229
+ loading: string;
1230
+ error: string;
1231
+ download: string;
1232
+ truncated: string;
1233
+ content: string;
1201
1234
  };
1202
1235
  };
1203
1236
  };
@@ -37,7 +37,8 @@ declare const _default: {
37
37
  "confirm": "Confirmer",
38
38
  "cancel": "Annuler",
39
39
  "processing": "Traitement en cours…",
40
- "failed": "L’action a échoué."
40
+ "failed": "L’action a échoué.",
41
+ "form-failed": "Le formulaire n’a pas pu être chargé."
41
42
  },
42
43
  "location-field": {
43
44
  "placeholder": "Aucun emplacement sélectionné",
@@ -621,6 +622,12 @@ declare const _default: {
621
622
  "expand": "Déplier",
622
623
  "collapse": "Replier"
623
624
  },
625
+ "tree-select-field": {
626
+ "placeholder": "Sélectionner…",
627
+ "search": "Rechercher",
628
+ "empty": "Aucun résultat.",
629
+ "selected": "{count, plural, one {# sélectionné} other {# sélectionnés}}"
630
+ },
624
631
  "image-cropper": {
625
632
  "title": "Recadrer l'image",
626
633
  "zoom": "Zoom",
@@ -1151,7 +1158,8 @@ declare const _default: {
1151
1158
  },
1152
1159
  "slider": {
1153
1160
  "minimum": "Minimum",
1154
- "maximum": "Maximum"
1161
+ "maximum": "Maximum",
1162
+ "value": "Valeur"
1155
1163
  },
1156
1164
  "scroll-to-top": {
1157
1165
  "label": "Retour en haut"
@@ -1187,7 +1195,32 @@ declare const _default: {
1187
1195
  },
1188
1196
  "time-picker": {
1189
1197
  "am": "a.m.",
1190
- "pm": "p.m."
1198
+ "pm": "p.m.",
1199
+ "hours": "Heures",
1200
+ "minutes": "Minutes"
1201
+ },
1202
+ "date-range-field": {
1203
+ "presets": "Plages prédéfinies",
1204
+ "preset": {
1205
+ "today": "Aujourd’hui",
1206
+ "yesterday": "Hier",
1207
+ "last-7-days": "7 derniers jours",
1208
+ "last-30-days": "30 derniers jours",
1209
+ "this-month": "Ce mois-ci",
1210
+ "last-month": "Le mois dernier",
1211
+ "this-year": "Cette année"
1212
+ },
1213
+ "start-time": "Heure de début",
1214
+ "end-time": "Heure de fin"
1215
+ },
1216
+ "file-preview": {
1217
+ "label": "Aperçu de {name}",
1218
+ "untitled": "Fichier sans nom",
1219
+ "loading": "Chargement de l’aperçu…",
1220
+ "error": "Impossible d’afficher l’aperçu de ce fichier.",
1221
+ "download": "Télécharger",
1222
+ "truncated": "Seuls les premiers {size} de ce fichier sont affichés.",
1223
+ "content": "Contenu de {name}"
1191
1224
  }
1192
1225
  }
1193
1226
  ;
@@ -46,6 +46,7 @@ export declare const resources: {
46
46
  cancel: string;
47
47
  processing: string;
48
48
  failed: string;
49
+ "form-failed": string;
49
50
  };
50
51
  "location-field": {
51
52
  placeholder: string;
@@ -629,6 +630,12 @@ export declare const resources: {
629
630
  expand: string;
630
631
  collapse: string;
631
632
  };
633
+ "tree-select-field": {
634
+ placeholder: string;
635
+ search: string;
636
+ empty: string;
637
+ selected: string;
638
+ };
632
639
  "image-cropper": {
633
640
  title: string;
634
641
  zoom: string;
@@ -1160,6 +1167,7 @@ export declare const resources: {
1160
1167
  slider: {
1161
1168
  minimum: string;
1162
1169
  maximum: string;
1170
+ value: string;
1163
1171
  };
1164
1172
  "scroll-to-top": {
1165
1173
  label: string;
@@ -1196,6 +1204,31 @@ export declare const resources: {
1196
1204
  "time-picker": {
1197
1205
  am: string;
1198
1206
  pm: string;
1207
+ hours: string;
1208
+ minutes: string;
1209
+ };
1210
+ "date-range-field": {
1211
+ presets: string;
1212
+ preset: {
1213
+ today: string;
1214
+ yesterday: string;
1215
+ "last-7-days": string;
1216
+ "last-30-days": string;
1217
+ "this-month": string;
1218
+ "last-month": string;
1219
+ "this-year": string;
1220
+ };
1221
+ "start-time": string;
1222
+ "end-time": string;
1223
+ };
1224
+ "file-preview": {
1225
+ label: string;
1226
+ untitled: string;
1227
+ loading: string;
1228
+ error: string;
1229
+ download: string;
1230
+ truncated: string;
1231
+ content: string;
1199
1232
  };
1200
1233
  };
1201
1234
  };
@@ -1240,6 +1273,7 @@ export declare const resources: {
1240
1273
  cancel: string;
1241
1274
  processing: string;
1242
1275
  failed: string;
1276
+ "form-failed": string;
1243
1277
  };
1244
1278
  "location-field": {
1245
1279
  placeholder: string;
@@ -1823,6 +1857,12 @@ export declare const resources: {
1823
1857
  expand: string;
1824
1858
  collapse: string;
1825
1859
  };
1860
+ "tree-select-field": {
1861
+ placeholder: string;
1862
+ search: string;
1863
+ empty: string;
1864
+ selected: string;
1865
+ };
1826
1866
  "image-cropper": {
1827
1867
  title: string;
1828
1868
  zoom: string;
@@ -2354,6 +2394,7 @@ export declare const resources: {
2354
2394
  slider: {
2355
2395
  minimum: string;
2356
2396
  maximum: string;
2397
+ value: string;
2357
2398
  };
2358
2399
  "scroll-to-top": {
2359
2400
  label: string;
@@ -2390,6 +2431,31 @@ export declare const resources: {
2390
2431
  "time-picker": {
2391
2432
  am: string;
2392
2433
  pm: string;
2434
+ hours: string;
2435
+ minutes: string;
2436
+ };
2437
+ "date-range-field": {
2438
+ presets: string;
2439
+ preset: {
2440
+ today: string;
2441
+ yesterday: string;
2442
+ "last-7-days": string;
2443
+ "last-30-days": string;
2444
+ "this-month": string;
2445
+ "last-month": string;
2446
+ "this-year": string;
2447
+ };
2448
+ "start-time": string;
2449
+ "end-time": string;
2450
+ };
2451
+ "file-preview": {
2452
+ label: string;
2453
+ untitled: string;
2454
+ loading: string;
2455
+ error: string;
2456
+ download: string;
2457
+ truncated: string;
2458
+ content: string;
2393
2459
  };
2394
2460
  };
2395
2461
  };