@synopackageland/ui 0.17.12 → 0.17.14

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.
package/README.md CHANGED
@@ -508,7 +508,7 @@ Primitives:
508
508
 
509
509
  - Button / IconButton / CopyButton
510
510
  - Input / Textarea
511
- - Checkbox / CheckboxGroup / RadioGroup / Switch
511
+ - Checkbox / CheckboxGroup / RadioGroup / Switch — use RadioGroup for 2–4 mutually exclusive settings; Checkbox for independent options; Switch for immediate on/off. Reserve primary-filled, capsule-shaped SegmentControl for toolbar views ([choice policy](docs/layout-rules.md)).
512
512
  - Select
513
513
  - Badge / StatusDot / Separator / Spinner / LoadingMask / LoadingArea / Progress / SizeBar / Skeleton / Surface
514
514
  - SplitButton
@@ -522,7 +522,7 @@ DSM-style application building blocks:
522
522
 
523
523
  - SearchField
524
524
  - SettingsRow / SettingsSection
525
- - Form / FormItem / FormGroup / FormNote / InfoBox / FormActions / Fieldset (DSM-native settings structure, see [docs/layout-rules.md](docs/layout-rules.md))
525
+ - SettingsPage / Form / FormItem / FormGroup / FormNote / InfoBox / FormActions / Fieldset (DSM-native settings structure, see [docs/layout-rules.md](docs/layout-rules.md))
526
526
  - Callout (see [docs/callout.md](docs/callout.md) for when to use a Callout, a toast or an inline note) / EmptyState / StepList
527
527
  - ConnectionTopology
528
528
  - DataTable / DataGrid
@@ -553,6 +553,12 @@ and End move focus between tabs; Enter or Space selects one. In a grid or flex p
553
553
  </SectionTabs>
554
554
  ```
555
555
 
556
+ For unsaved drafts inside those panels, use `<SectionTabs fill keep-mounted>`.
557
+ `keep-mounted` mounts every supplied item panel and hides inactive ones with
558
+ `v-show`, preserving component state and DOM; hidden panels' effects remain
559
+ active. It also works without `fill`. Without this option, switching tabs
560
+ unmounts the previous panel; `fill` alone only controls layout.
561
+
556
562
  Page actions for the shown section go in `#actions`, on the tab row at the
557
563
  right edge over the same baseline; when the row is too narrow for both, the
558
564
  actions wrap onto a line of their own above the tabs, still right-aligned.
@@ -7,12 +7,22 @@ type __VLS_Props = {
7
7
  ariaLabel?: string;
8
8
  modelValue: string;
9
9
  items: SectionTab[];
10
+ /**
11
+ * Fills the container's height: the strip stays at the top and the panel
12
+ * takes the rest, for a SettingsPage that scrolls its body over a fixed
13
+ * footer. Without a height to fill (a phone page) the strip sticks to the top.
14
+ */
15
+ fill?: boolean;
16
+ /** Mount all supplied item panels and hide inactive ones, preserving local drafts. */
17
+ keepMounted?: boolean;
10
18
  };
11
- declare var __VLS_7: {}, __VLS_10: `panel-${string}`, __VLS_11: {};
19
+ declare var __VLS_14: {}, __VLS_17: `panel-${string}`, __VLS_18: {}, __VLS_21: `panel-${string}`, __VLS_22: {};
12
20
  type __VLS_Slots = {} & {
13
- [K in NonNullable<typeof __VLS_10>]?: (props: typeof __VLS_11) => any;
21
+ [K in NonNullable<typeof __VLS_17>]?: (props: typeof __VLS_18) => any;
14
22
  } & {
15
- actions?: (props: typeof __VLS_7) => any;
23
+ [K in NonNullable<typeof __VLS_21>]?: (props: typeof __VLS_22) => any;
24
+ } & {
25
+ actions?: (props: typeof __VLS_14) => any;
16
26
  };
17
27
  declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
18
28
  "update:modelValue": (value: string) => any;
@@ -0,0 +1,15 @@
1
+ declare var __VLS_1: {}, __VLS_9: {};
2
+ type __VLS_Slots = {} & {
3
+ default?: (props: typeof __VLS_1) => any;
4
+ } & {
5
+ footer?: (props: typeof __VLS_9) => any;
6
+ };
7
+ declare const __VLS_base: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
8
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
9
+ declare const _default: typeof __VLS_export;
10
+ export default _default;
11
+ type __VLS_WithSlots<T, S> = T & {
12
+ new (): {
13
+ $slots: S;
14
+ };
15
+ };
@@ -3,7 +3,14 @@ type __VLS_Props = {
3
3
  /** `soft`: a compact tinted panel. `inline`: a status line with no panel, for a short note under a field or a section. */
4
4
  variant?: 'soft' | 'inline';
5
5
  title?: string;
6
- closable?: boolean;
6
+ /**
7
+ * Shows a close button (default). Closing hides the callout until its
8
+ * tone, title or text (or `dismissKey`) changes. Turn it off only for a
9
+ * state that must stay in view, such as a blocking setup requirement.
10
+ */
11
+ dismissible?: boolean;
12
+ /** What a dismissal is remembered by, instead of the tone and the rendered text. */
13
+ dismissKey?: string;
7
14
  closeLabel?: string;
8
15
  /** A machine code (e.g. `login_wait_timeout`), shown after the message in a quieter style. */
9
16
  code?: string;
@@ -36,7 +43,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {
36
43
  fill: boolean;
37
44
  variant: "soft" | "inline";
38
45
  tone: "info" | "success" | "warning" | "danger";
39
- closable: boolean;
46
+ dismissible: boolean;
40
47
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
41
48
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
42
49
  declare const _default: typeof __VLS_export;
@@ -185,6 +185,13 @@ type __VLS_Props = {
185
185
  refreshable?: boolean;
186
186
  refreshing?: boolean;
187
187
  maxHeight?: string;
188
+ /**
189
+ * Fills the height its flex-column container leaves (the default, DSM's
190
+ * list): the header stays, the rows scroll inside, and the footer sits at
191
+ * the container's bottom whatever the row count. `false` sizes the grid
192
+ * to its rows, for a short table inside a form or a dialog.
193
+ */
194
+ fill?: boolean;
188
195
  labels?: Partial<DataGridLabels>;
189
196
  /** @deprecated Use `labels.empty`. */
190
197
  emptyText?: string;
@@ -293,6 +300,7 @@ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {
293
300
  footer: boolean;
294
301
  filter: string;
295
302
  sort: DataGridSort | null;
303
+ fill: boolean;
296
304
  loading: boolean;
297
305
  group: DataGridGroup | null;
298
306
  loadingText: string;
@@ -18,6 +18,12 @@ type __VLS_Props = {
18
18
  mobileView?: 'auto' | 'cards' | 'table' | 'container';
19
19
  /** Width in px under which `mobileView="container"` shows cards. */
20
20
  containerBreakpoint?: number;
21
+ /**
22
+ * Fills the height its flex-column container leaves (the default): the
23
+ * header stays and the rows scroll inside. `false` sizes the table to its
24
+ * rows, for a short table inside a form or a dialog.
25
+ */
26
+ fill?: boolean;
21
27
  };
22
28
  declare var __VLS_2: `cell-${string}`, __VLS_3: {
23
29
  row: Record<string, unknown>;
@@ -40,6 +46,7 @@ type __VLS_Slots = {} & {
40
46
  [K in NonNullable<typeof __VLS_16>]?: (props: typeof __VLS_17) => any;
41
47
  };
42
48
  declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
49
+ fill: boolean;
43
50
  compact: boolean;
44
51
  rowKey: string;
45
52
  mobileView: "auto" | "cards" | "table" | "container";
@@ -31,8 +31,8 @@ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {
31
31
  onCancelAll?: (() => any) | undefined;
32
32
  }>, {
33
33
  collapsible: boolean;
34
- closable: boolean;
35
34
  processing: number;
35
+ closable: boolean;
36
36
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
37
37
  declare const _default: typeof __VLS_export;
38
38
  export default _default;
@@ -7,6 +7,7 @@ type __VLS_Props = {
7
7
  title?: FieldsetTitle;
8
8
  /** One line under the title, across the whole width (DSM's "Enter the server name, ..."). */
9
9
  description?: string;
10
+ /** Shows the disclosure chevron by default; set false for a fixed section. */
10
11
  collapsible?: boolean;
11
12
  /** Mouse gesture that toggles; Enter/Space always works on the header. */
12
13
  collapseTriggerEvent?: FieldsetCollapseTrigger;
@@ -8,7 +8,7 @@ type __VLS_Props = {
8
8
  ariaLabelledby?: string;
9
9
  /** Disables every item of the group. */
10
10
  disabled?: boolean;
11
- /** `sheet` draws joined sheet tabs on a rule, as above a table, instead of a segmented control. */
11
+ /** Toolbar view switcher; use RadioGroup for form choices. `sheet` draws joined tabs on a rule. */
12
12
  variant?: SegmentVariant;
13
13
  };
14
14
  declare var __VLS_1: {};
@@ -2,8 +2,13 @@ type __VLS_Props = {
2
2
  modelValue?: boolean;
3
3
  disabled?: boolean;
4
4
  label?: string;
5
+ description?: string;
5
6
  };
6
- declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
7
+ declare var __VLS_14: {};
8
+ type __VLS_Slots = {} & {
9
+ description?: (props: typeof __VLS_14) => any;
10
+ };
11
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
7
12
  "update:modelValue": (value: boolean) => any;
8
13
  }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
9
14
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
@@ -11,5 +16,11 @@ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {
11
16
  disabled: boolean;
12
17
  modelValue: boolean;
13
18
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
19
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
14
20
  declare const _default: typeof __VLS_export;
15
21
  export default _default;
22
+ type __VLS_WithSlots<T, S> = T & {
23
+ new (): {
24
+ $slots: S;
25
+ };
26
+ };
package/dist/index.d.ts CHANGED
@@ -224,6 +224,7 @@ export { default as StackedBar } from './components/composite/stacked-bar/Stacke
224
224
  export type { StackedBarSegment, StackedBarTone } from './components/composite/stacked-bar/StackedBar.vue';
225
225
  export { default as PageContent } from './components/app/page-content/PageContent.vue';
226
226
  export { default as SectionTabs } from './components/app/section-tabs/SectionTabs.vue';
227
+ export { default as SettingsPage } from './components/app/settings-page/SettingsPage.vue';
227
228
  export type { SectionTab } from './components/app/section-tabs/SectionTabs.vue';
228
229
  export { default as ConfigProvider } from './components/composite/config-provider/ConfigProvider.vue';
229
230
  export { useProps, provideConfigManager } from './composables/configCascade';