@ac-design/design-system 2.2.1 → 2.4.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 (77) hide show
  1. package/dist/lib/compat.css +421 -0
  2. package/dist/lib/components/AcAppSwitcher.vue.d.ts +1 -1
  3. package/dist/lib/components/AcAppSwitcher.vue_vue_type_script_setup_true_lang.js +23 -23
  4. package/dist/lib/components/AcAreaChart.vue.d.ts +1 -1
  5. package/dist/lib/components/AcBarChart.vue.d.ts +1 -1
  6. package/dist/lib/components/AcButton.vue.d.ts +25 -13
  7. package/dist/lib/components/AcButton.vue_vue_type_script_setup_true_lang.js +122 -71
  8. package/dist/lib/components/AcCard.vue.d.ts +11 -5
  9. package/dist/lib/components/AcCard.vue_vue_type_script_setup_true_lang.js +99 -51
  10. package/dist/lib/components/AcCellValue.vue.d.ts +3 -3
  11. package/dist/lib/components/AcCellValue.vue_vue_type_script_setup_true_lang.js +20 -20
  12. package/dist/lib/components/AcCheckBox.vue.d.ts +4 -1
  13. package/dist/lib/components/AcCheckBox.vue_vue_type_script_setup_true_lang.js +50 -50
  14. package/dist/lib/components/AcCircularProgress.vue.d.ts +1 -1
  15. package/dist/lib/components/AcCodeEditor.vue.d.ts +12 -0
  16. package/dist/lib/components/AcCodeEditor.vue_vue_type_script_setup_true_lang.js +240 -207
  17. package/dist/lib/components/AcColorInput.vue.d.ts +4 -4
  18. package/dist/lib/components/AcColorInput.vue_vue_type_script_setup_true_lang.js +72 -66
  19. package/dist/lib/components/AcCostSummary.vue.d.ts +1 -1
  20. package/dist/lib/components/AcDatePicker.vue.d.ts +41 -10
  21. package/dist/lib/components/AcDatePicker.vue_vue_type_script_setup_true_lang.js +554 -446
  22. package/dist/lib/components/AcDeleteModal.vue.d.ts +1 -1
  23. package/dist/lib/components/AcDonutChart.vue.d.ts +2 -2
  24. package/dist/lib/components/AcDropdown.vue.d.ts +1 -1
  25. package/dist/lib/components/AcDropdown.vue_vue_type_script_setup_true_lang.js +8 -8
  26. package/dist/lib/components/AcErrorState.vue.d.ts +1 -1
  27. package/dist/lib/components/AcFormFooter.vue_vue_type_script_setup_true_lang.js +8 -8
  28. package/dist/lib/components/AcGraphChart.vue.d.ts +2 -2
  29. package/dist/lib/components/AcHeader.vue.d.ts +1 -1
  30. package/dist/lib/components/AcInput.vue.d.ts +86 -44
  31. package/dist/lib/components/AcInput.vue_vue_type_script_setup_true_lang.js +319 -86
  32. package/dist/lib/components/AcKeyValueInput.vue.d.ts +34 -54
  33. package/dist/lib/components/AcKeyValueInput.vue_vue_type_script_setup_true_lang.js +134 -106
  34. package/dist/lib/components/AcLineChart.vue.d.ts +1 -1
  35. package/dist/lib/components/AcLocaleSwitcher.vue.d.ts +6 -0
  36. package/dist/lib/components/AcLocaleSwitcher.vue_vue_type_script_setup_true_lang.js +74 -58
  37. package/dist/lib/components/AcMapChart.vue.d.ts +2 -2
  38. package/dist/lib/components/AcModal.vue.d.ts +1 -1
  39. package/dist/lib/components/AcNavbar.vue.d.ts +2 -0
  40. package/dist/lib/components/AcNavbar.vue_vue_type_script_setup_true_lang.js +31 -25
  41. package/dist/lib/components/AcNotificationMenu.vue.d.ts +1 -1
  42. package/dist/lib/components/AcNotificationMenu.vue_vue_type_script_setup_true_lang.js +24 -24
  43. package/dist/lib/components/AcNumberInput.vue.d.ts +55 -45
  44. package/dist/lib/components/AcNumberInput.vue_vue_type_script_setup_true_lang.js +159 -99
  45. package/dist/lib/components/AcRadioCard.js +5 -0
  46. package/dist/lib/components/AcRadioCard.vue.d.ts +55 -0
  47. package/dist/lib/components/AcRadioCard.vue_vue_type_script_setup_true_lang.js +135 -0
  48. package/dist/lib/components/AcSelect.vue.d.ts +46 -6
  49. package/dist/lib/components/AcSelect.vue_vue_type_script_setup_true_lang.js +309 -197
  50. package/dist/lib/components/AcSidePanel.vue.d.ts +1 -1
  51. package/dist/lib/components/AcSidebar.vue.d.ts +9 -0
  52. package/dist/lib/components/AcSidebar.vue_vue_type_script_setup_true_lang.js +113 -94
  53. package/dist/lib/components/AcSidebarSection.vue_vue_type_script_setup_true_lang.js +19 -18
  54. package/dist/lib/components/AcSlider.vue.d.ts +2 -2
  55. package/dist/lib/components/AcSwitch.vue_vue_type_script_setup_true_lang.js +23 -23
  56. package/dist/lib/components/AcTable.vue.d.ts +50 -5
  57. package/dist/lib/components/AcTable.vue_vue_type_script_setup_true_lang.js +257 -129
  58. package/dist/lib/components/AcTagInput.vue.d.ts +23 -4
  59. package/dist/lib/components/AcTagInput.vue_vue_type_script_setup_true_lang.js +126 -114
  60. package/dist/lib/components/AcTaintInput.js +5 -0
  61. package/dist/lib/components/AcTaintInput.vue.d.ts +44 -0
  62. package/dist/lib/components/AcTaintInput.vue_vue_type_script_setup_true_lang.js +208 -0
  63. package/dist/lib/components/AcTextarea.vue.d.ts +64 -4
  64. package/dist/lib/components/AcTextarea.vue_vue_type_script_setup_true_lang.js +159 -68
  65. package/dist/lib/components/AcThemeMode.vue.d.ts +10 -2
  66. package/dist/lib/components/AcThemeMode.vue_vue_type_script_setup_true_lang.js +53 -42
  67. package/dist/lib/components/AcTimePicker.vue.d.ts +36 -11
  68. package/dist/lib/components/AcTimePicker.vue_vue_type_script_setup_true_lang.js +232 -168
  69. package/dist/lib/components/AcTooltip.vue.d.ts +3 -3
  70. package/dist/lib/components/AcUserMenu.vue.d.ts +8 -0
  71. package/dist/lib/components/AcUserMenu.vue_vue_type_script_setup_true_lang.js +126 -109
  72. package/dist/lib/components/index.d.ts +2 -0
  73. package/dist/lib/components/types.d.ts +2 -0
  74. package/dist/lib/composables/useToast.d.ts +2 -2
  75. package/dist/lib/index.d.ts +2 -1
  76. package/dist/lib/index.js +51 -49
  77. package/package.json +1 -1
@@ -34,8 +34,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
34
34
  onConfirm?: ((itemName: string) => any) | undefined;
35
35
  }>, {
36
36
  title: string;
37
- loading: boolean;
38
37
  message: string;
38
+ loading: boolean;
39
39
  confirmText: string;
40
40
  itemName: string;
41
41
  detail: string;
@@ -58,10 +58,10 @@ declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, i
58
58
  value: ChartAccessor<number>;
59
59
  description: string;
60
60
  height: number;
61
- loading: boolean;
62
61
  animation: boolean;
63
- index: ChartAccessor<string>;
64
62
  tooltip: boolean;
63
+ loading: boolean;
64
+ index: ChartAccessor<string>;
65
65
  emptyText: string;
66
66
  renderer: ChartRenderer;
67
67
  categories: Record<string, ChartCategory>;
@@ -34,8 +34,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
34
34
  variant: "menu" | "panel";
35
35
  label: string;
36
36
  disabled: boolean;
37
- align: "start" | "end";
38
37
  placement: "bottom" | "top";
38
+ align: "start" | "end";
39
39
  menuLabel: string;
40
40
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
41
41
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,5 +1,5 @@
1
- import e from "./AcButton.js";
2
- import { fixedFrame as t } from "./fixedFrame.js";
1
+ import { fixedFrame as e } from "./fixedFrame.js";
2
+ import t from "./AcButton.js";
3
3
  import { Teleport as n, Transition as r, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createVNode as c, defineComponent as l, mergeModels as u, nextTick as d, normalizeClass as f, normalizeStyle as ee, onBeforeUnmount as te, onMounted as p, onUpdated as m, openBlock as h, provide as g, ref as _, renderSlot as v, toRef as y, unref as b, useId as x, useModel as S, useSlots as C, watch as w, withCtx as T } from "vue";
4
4
  import { ChevronDown as E, Ellipsis as D } from "@lucide/vue";
5
5
  //#region src/lib/components/AcDropdown.vue?vue&type=script&setup=true&lang.ts
@@ -55,11 +55,11 @@ var O = ["aria-label", "disabled"], k = ["aria-labelledby", "aria-label"], A = "
55
55
  }
56
56
  function X() {
57
57
  if (!B || !I.value) return;
58
- let e = B.getBoundingClientRect(), n = t(), r = `${Math.min(Math.max(e.width, ne[u.variant]), n.width - 16)}px`;
58
+ let t = B.getBoundingClientRect(), n = e(), r = `${Math.min(Math.max(t.width, ne[u.variant]), n.width - 16)}px`;
59
59
  I.value.style.minWidth = r;
60
- let { offsetWidth: i, offsetHeight: a } = I.value, o = n.bottom - e.bottom - 8 - 8, s = e.top - n.top - 8 - 8, c = u.placement === "top" ? s >= a || s > o : o < a && s > o, l = (u.align === "end" ? e.right - i : e.left) - n.left;
60
+ let { offsetWidth: i, offsetHeight: a } = I.value, o = n.bottom - t.bottom - 8 - 8, s = t.top - n.top - 8 - 8, c = u.placement === "top" ? s >= a || s > o : o < a && s > o, l = (u.align === "end" ? t.right - i : t.left) - n.left;
61
61
  R.value = !c, L.value = {
62
- [c ? "bottom" : "top"]: `${c ? n.bottom - e.top + 8 : e.bottom + 8 - n.top}px`,
62
+ [c ? "bottom" : "top"]: `${c ? n.bottom - t.top + 8 : t.bottom + 8 - n.top}px`,
63
63
  left: `${Math.max(8, Math.min(l, n.width - i - 8))}px`,
64
64
  minWidth: r,
65
65
  maxHeight: `${Math.max(c ? s : o, 120)}px`
@@ -108,7 +108,7 @@ var O = ["aria-label", "disabled"], k = ["aria-labelledby", "aria-label"], A = "
108
108
  G(), $(e), e && (await d(), X(), V === "menu" ? I.value?.focus() : q(V), V = "menu");
109
109
  }), p(G), m(G), te(() => {
110
110
  $(!1), clearTimeout(U);
111
- }), (t, i) => (h(), s("div", {
111
+ }), (e, i) => (h(), s("div", {
112
112
  ref_key: "root",
113
113
  ref: F,
114
114
  class: "inline-flex",
@@ -116,7 +116,7 @@ var O = ["aria-label", "disabled"], k = ["aria-labelledby", "aria-label"], A = "
116
116
  "data-testid": "ac-dropdown",
117
117
  onClick: ae,
118
118
  onKeydown: oe
119
- }, [M.trigger ? v(t.$slots, "trigger", { open: j.value }, void 0, void 0, 0) : l.label ? (h(), a(e, {
119
+ }, [M.trigger ? v(e.$slots, "trigger", { open: j.value }, void 0, void 0, 0) : l.label ? (h(), a(t, {
120
120
  key: 1,
121
121
  title: l.label,
122
122
  color: "white",
@@ -157,7 +157,7 @@ var O = ["aria-label", "disabled"], k = ["aria-labelledby", "aria-label"], A = "
157
157
  "data-ac-ds": "",
158
158
  "data-testid": "ac-dropdown-menu",
159
159
  onKeydown: se
160
- }, [v(t.$slots, "default")], 46, k)) : o("", !0)]),
160
+ }, [v(e.$slots, "default")], 46, k)) : o("", !0)]),
161
161
  _: 3
162
162
  })]))], 544));
163
163
  }
@@ -30,11 +30,11 @@ declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, i
30
30
  title: string;
31
31
  description: string;
32
32
  error: undefined;
33
+ titleTag: "h2" | "h3" | "h4" | "p";
33
34
  compact: boolean;
34
35
  retrying: boolean;
35
36
  retryText: string;
36
37
  hideRetry: boolean;
37
- titleTag: "h2" | "h3" | "h4" | "p";
38
38
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
39
39
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
40
40
  declare const _default: typeof __VLS_export;
@@ -1,5 +1,5 @@
1
- import e from "./AcButton.js";
2
- import { fixedFrame as t } from "./fixedFrame.js";
1
+ import { fixedFrame as e } from "./fixedFrame.js";
2
+ import t from "./AcButton.js";
3
3
  import { computed as n, createBlock as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineComponent as c, inject as l, normalizeClass as u, normalizeStyle as d, onBeforeUnmount as f, onMounted as p, openBlock as m, ref as h, renderSlot as g, watch as _ } from "vue";
4
4
  //#region src/lib/components/AcFormFooter.vue?vue&type=script&setup=true&lang.ts
5
5
  var v = { class: "flex min-w-0 items-center gap-2 text-base text-muted" }, y = { class: "ml-auto flex items-center gap-3" }, b = /*@__PURE__*/ c({
@@ -34,10 +34,10 @@ var v = { class: "flex min-w-0 items-center gap-2 text-base text-muted" }, y = {
34
34
  }
35
35
  function A() {
36
36
  if (!w.value || !T.value) return;
37
- let e = w.value.getBoundingClientRect();
37
+ let t = w.value.getBoundingClientRect();
38
38
  E.value = {
39
- left: e.left - t().left,
40
- width: e.width,
39
+ left: t.left - e().left,
40
+ width: t.width,
41
41
  height: T.value.offsetHeight
42
42
  };
43
43
  }
@@ -47,7 +47,7 @@ var v = { class: "flex min-w-0 items-center gap-2 text-base text-muted" }, y = {
47
47
  function M() {
48
48
  D?.disconnect(), D = void 0, window.removeEventListener("resize", A);
49
49
  }
50
- return _(() => x.sticky, j, { flush: "post" }), p(j), f(M), (t, n) => (m(), a("div", {
50
+ return _(() => x.sticky, j, { flush: "post" }), p(j), f(M), (e, n) => (m(), a("div", {
51
51
  ref_key: "root",
52
52
  ref: w,
53
53
  class: u(["mt-4 w-full", [c.sticky === "container" && "sticky bottom-0 z-10", c.sticky !== "viewport" && O.value]]),
@@ -62,13 +62,13 @@ var v = { class: "flex min-w-0 items-center gap-2 text-base text-muted" }, y = {
62
62
  left: `${E.value.left}px`,
63
63
  width: `${E.value.width}px`
64
64
  } : void 0)
65
- }, [o("div", { class: u(["flex w-full flex-wrap items-center justify-between gap-x-4 gap-y-2", O.value]) }, [o("div", v, [g(t.$slots, "left")]), o("div", y, [g(t.$slots, "right", {}, () => [c.hideCancel ? i("", !0) : (m(), r(e, {
65
+ }, [o("div", { class: u(["flex w-full flex-wrap items-center justify-between gap-x-4 gap-y-2", O.value]) }, [o("div", v, [g(e.$slots, "left")]), o("div", y, [g(e.$slots, "right", {}, () => [c.hideCancel ? i("", !0) : (m(), r(t, {
66
66
  key: 0,
67
67
  title: c.cancelLabel,
68
68
  color: "white",
69
69
  disabled: c.loading,
70
70
  onClick: n[0] ||= (e) => S("cancel")
71
- }, null, 8, ["title", "disabled"])), s(e, {
71
+ }, null, 8, ["title", "disabled"])), s(t, {
72
72
  title: c.submitLabel,
73
73
  type: "submit",
74
74
  form: c.form || void 0,
@@ -102,10 +102,10 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
102
102
  description: string;
103
103
  height: number;
104
104
  direction: "LR" | "TB";
105
- loading: boolean;
106
105
  animation: boolean;
107
- shape: "circle" | "square";
108
106
  tooltip: boolean;
107
+ loading: boolean;
108
+ shape: "circle" | "square";
109
109
  emptyText: string;
110
110
  links: GraphLink[];
111
111
  renderer: ChartRenderer;
@@ -48,8 +48,8 @@ declare const __VLS_base: import("vue").DefineComponent<Props, {}, {}, {}, {}, i
48
48
  size: "normal" | "compact";
49
49
  top: string;
50
50
  subtitle: string;
51
- sticky: boolean;
52
51
  titleTag: "h1" | "h2" | "h3" | "h4";
52
+ sticky: boolean;
53
53
  countLabel: string;
54
54
  docsHref: string;
55
55
  backButton: boolean;
@@ -1,23 +1,59 @@
1
- import type { Component } from "vue";
1
+ import type { Component, HTMLAttributes } from "vue";
2
2
  export interface Props {
3
- /** Label above the field. Pass `placeholder` for an example value inside it. */
4
- label: string;
3
+ /** Label above the field. Pass `placeholder` for an example value inside it. Without a label, pass `aria-label`; the placeholder is the accessible name otherwise. */
4
+ label?: string;
5
5
  /** Native `name` attribute. */
6
6
  name?: string;
7
+ /** Example value shown inside the empty field. */
8
+ placeholder?: string;
9
+ /** Native `autocomplete` hint, e.g. `off`, `email` or `new-password`. Cloud-ui fields passed `off`. */
10
+ autocomplete?: string;
7
11
  /** Native input type. `password` adds a show/hide toggle. */
8
- type?: "text" | "password" | "email" | "number" | "url" | "search";
12
+ type?: "text" | "password" | "email" | "number" | "url" | "search" | "tel" | "date" | "file";
9
13
  /** Marks the field required and adds a red asterisk. */
10
14
  required?: boolean;
15
+ /** Adds the red asterisk without native `required`, for forms that run their own validation on submit. */
16
+ requiredMark?: boolean;
17
+ /** Error shown under the field when the viewer clears it or leaves it empty, e.g. "Please enter a VPC name". `error-msg` shows when this one doesn't. */
18
+ requiredMessage?: string;
19
+ /** With `required-message`, an empty field emits no `input` or `focusout`, as cloud-ui's v1 AcInput did. */
20
+ silentWhenEmpty?: boolean;
11
21
  /** Disables the field. */
12
22
  disabled?: boolean;
13
23
  /** Read-only field: a muted fill, and "(read only)" after the label. */
14
24
  readonly?: boolean;
25
+ /** Text after the label of a read-only field, e.g. "(Read Only)". */
26
+ readonlyText?: string;
27
+ /** Keeps the editable fill on a read-only field, as cloud-ui's v1 AcInput did. */
28
+ plainReadonly?: boolean;
29
+ /** Disables the field without dimming it or changing the cursor, as cloud-ui's v1 AcInput did. */
30
+ plainDisabled?: boolean;
31
+ /** Cloud-ui v1 error look: no field fill while it shows an error, and the message in the base `text-danger` red instead of the AA `-strong` shade. */
32
+ plainError?: boolean;
33
+ /** No gap around `#label-icon` and `#label-extra`, for slot content that brings its own margin. */
34
+ flushLabelSlots?: boolean;
35
+ /** Lays `#prefix` over the field's left padding (a 12–24px box, 10–20px in) and starts the value 40px in, like cloud-ui's v1 `left-icon`. */
36
+ prefixOverlay?: boolean;
15
37
  /** Error text under the field. Turns the border and label red and sets `aria-invalid`. */
16
38
  errorMsg?: string;
39
+ /** Turns the border red and sets `aria-invalid` without a message, for forms that print their own. */
40
+ invalid?: boolean;
17
41
  /** Help text between the label and the field. */
18
42
  hint?: string;
19
- /** `small` 36px or `normal` 42px tall. */
20
- size?: "small" | "normal";
43
+ /** Height: `xs` 26px with 12px text, `xsmall` 34px, `small` 36px, `medium` 38px, `normal` 42px or `large` 50px with 16px text. */
44
+ size?: "xs" | "xsmall" | "small" | "medium" | "normal" | "large";
45
+ /** Field look: `outline` (border on the page fill), `soft` (grey fill, no border), `ghost` (no fill or border until focus) or `none` (bare text, no focus style). */
46
+ variant?: "outline" | "soft" | "ghost" | "none";
47
+ /** Draws a 2px primary halo around the field to point the viewer at it. */
48
+ highlight?: boolean;
49
+ /** Classes for the `<input>` element itself, e.g. `font-mono`. `class` goes on the wrapper. */
50
+ inputClass?: HTMLAttributes["class"];
51
+ /** Keeps the model a string with `type="number"`, instead of the number Vue casts it to. */
52
+ numberAsString?: boolean;
53
+ /** Shows a spinner in the password toggle and disables it, e.g. while `update:showValue` fetches a stored secret. */
54
+ revealing?: boolean;
55
+ /** Fetches a stored password the first time the viewer shows it while the field is empty; the result fills the model. A rejected promise leaves the field masked. */
56
+ reveal?: () => Promise<string>;
21
57
  /** Text of a button attached to the right edge, such as "Copy", "Generate" or "Browse". It emits `addon` when clicked. Also its accessible name when `addon-icon-only` is set. */
22
58
  addonLabel?: string;
23
59
  /** A Lucide icon component shown in the attached button, before `addon-label`. */
@@ -25,44 +61,50 @@ export interface Props {
25
61
  /** Shows only `addon-icon` in the attached button; `addon-label` becomes its `aria-label` and tooltip. */
26
62
  addonIconOnly?: boolean;
27
63
  }
28
- type __VLS_Props = Props;
29
- type __VLS_Slots = {
30
- /** Content inside the field before the value: a 16px icon or fixed text such as `https://`. */
31
- prefix?: () => unknown;
32
- /** Content inside the field after the value: a unit such as `Gi` or `%`, or a status icon. */
33
- suffix?: () => unknown;
34
- };
35
- type __VLS_ModelProps = {
36
- modelValue?: string | number;
64
+ declare const __VLS_export: <V extends string | number = string | number>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
65
+ props: import("vue").PublicProps & __VLS_PrettifyLocal<(Props & {
66
+ modelValue?: V;
67
+ /** Whether a password shows as plain text. Bind `v-model:show-value` to fetch a stored value before it shows. */
68
+ showValue?: boolean;
69
+ }) & {
70
+ onInput?: ((event: Event) => any) | undefined;
71
+ "onUpdate:modelValue"?: ((value: V) => any) | undefined;
72
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
73
+ onBlur?: ((event: FocusEvent) => any) | undefined;
74
+ onChange?: ((event: Event) => any) | undefined;
75
+ onFocus?: ((event: FocusEvent) => any) | undefined;
76
+ onFocusout?: ((event: FocusEvent) => any) | undefined;
77
+ onKeyup?: ((event: KeyboardEvent) => any) | undefined;
78
+ onAddon?: ((event: MouseEvent) => any) | undefined;
79
+ "onUpdate:showValue"?: ((value: boolean) => any) | undefined;
80
+ }> & (typeof globalThis extends {
81
+ __VLS_PROPS_FALLBACK: infer P;
82
+ } ? P : {});
83
+ expose: (exposed: import("vue").ShallowUnwrapRef<{
84
+ /** Moves focus to the input. */
85
+ focus: () => void | undefined;
86
+ }>) => void;
87
+ attrs: any;
88
+ slots: {
89
+ /** Content inside the field before the value: a 16px icon or fixed text such as `https://`. */
90
+ prefix?: () => unknown;
91
+ /** Content inside the field after the value: a unit such as `Gi` or `%`, or a status icon. */
92
+ suffix?: () => unknown;
93
+ /** Content before the label text, such as a 14px icon. */
94
+ "label-icon"?: () => unknown;
95
+ /** Content after the label text, such as "(Optional)" or an info tooltip. */
96
+ "label-extra"?: () => unknown;
97
+ /** Content under the field and its error, such as a note or a helper button. */
98
+ message?: () => unknown;
99
+ };
100
+ emit: (((evt: "input", event: Event) => void) & ((evt: "keydown", event: KeyboardEvent) => void) & ((evt: "blur", event: FocusEvent) => void) & ((evt: "change", event: Event) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "focusout", event: FocusEvent) => void) & ((evt: "keyup", event: KeyboardEvent) => void) & ((evt: "addon", event: MouseEvent) => void)) & (((event: "update:modelValue", value: V) => void) & ((event: "update:showValue", value: boolean) => void));
101
+ }>) => import("vue").VNode & {
102
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
37
103
  };
38
- type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
39
- declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {
40
- /** Moves focus to the input. */
41
- focus: () => void | undefined;
42
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
43
- "update:modelValue": (value: string | number) => any;
44
- addon: (event: MouseEvent) => any;
45
- }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
46
- "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
47
- onAddon?: ((event: MouseEvent) => any) | undefined;
48
- }>, {
49
- type: "text" | "password" | "email" | "number" | "url" | "search";
50
- required: boolean;
51
- disabled: boolean;
52
- name: string;
53
- size: "small" | "normal";
54
- readonly: boolean;
55
- hint: string;
56
- errorMsg: string;
57
- addonLabel: string;
58
- addonIcon: Component;
59
- addonIconOnly: boolean;
60
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
61
- declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
62
104
  declare const _default: typeof __VLS_export;
63
105
  export default _default;
64
- type __VLS_WithSlots<T, S> = T & {
65
- new (): {
66
- $slots: S;
67
- };
68
- };
106
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
107
+ [K in keyof T]: T[K];
108
+ } : {
109
+ [K in keyof T as K]: T[K];
110
+ }) & {};