vunor 0.3.2 → 0.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 (57) hide show
  1. package/README.md +6 -1
  2. package/dist/AppLayout.mjs +17 -68
  3. package/dist/AppToasts.d.mts +3 -0
  4. package/dist/AppToasts.mjs +59 -76
  5. package/dist/Button.d.mts +26 -10
  6. package/dist/Button.mjs +95 -60
  7. package/dist/ButtonBase.mjs +26 -40
  8. package/dist/Calendar.d.mts +14 -2
  9. package/dist/Calendar.mjs +37 -85
  10. package/dist/Card.mjs +6 -25
  11. package/dist/CardHeader.mjs +3 -12
  12. package/dist/Checkbox.d.mts +7 -2
  13. package/dist/Checkbox.mjs +37 -45
  14. package/dist/Combobox.d.mts +24 -8
  15. package/dist/Combobox.mjs +274 -350
  16. package/dist/DatePicker.d.mts +18 -4
  17. package/dist/DatePicker.mjs +93 -216
  18. package/dist/DatePickerBase.d.mts +21 -8
  19. package/dist/DatePickerBase.mjs +108 -257
  20. package/dist/DatePickerPopup.d.mts +27 -2
  21. package/dist/DatePickerPopup.mjs +62 -13
  22. package/dist/DelayedSwitch.mjs +3 -14
  23. package/dist/DevTools.mjs +377 -388
  24. package/dist/Dialog.d.mts +8 -3
  25. package/dist/Dialog.mjs +77 -107
  26. package/dist/Icon.mjs +1 -4
  27. package/dist/InnerLoading.mjs +1 -4
  28. package/dist/Input.mjs +35 -126
  29. package/dist/InputBase.mjs +28 -93
  30. package/dist/LoadingIndicator.mjs +1 -5
  31. package/dist/Menu.mjs +44 -65
  32. package/dist/MenuItem.mjs +4 -16
  33. package/dist/OverflowContainer.mjs +9 -11
  34. package/dist/Pagination.mjs +11 -29
  35. package/dist/Popover.d.mts +39 -11
  36. package/dist/Popover.mjs +80 -99
  37. package/dist/ProgressBar.d.mts +9 -2
  38. package/dist/ProgressBar.mjs +11 -27
  39. package/dist/RadioGroup.d.mts +2 -1
  40. package/dist/RadioGroup.mjs +33 -47
  41. package/dist/Select.d.mts +24 -7
  42. package/dist/Select.mjs +94 -186
  43. package/dist/SelectBase.d.mts +26 -11
  44. package/dist/SelectBase.mjs +59 -83
  45. package/dist/Slider.d.mts +6 -1
  46. package/dist/Slider.mjs +34 -103
  47. package/dist/Tabs.mjs +13 -49
  48. package/dist/forward-root-DPGTBptG.js +125 -0
  49. package/dist/nuxt.mjs +36 -1
  50. package/dist/theme.d.mts +1 -1
  51. package/dist/theme.mjs +15 -4
  52. package/dist/{utils-6bTTIoaw.js → utils-BCBGEM10.js} +30 -1
  53. package/dist/utils.mjs +1 -1
  54. package/dist/vite.d.mts +13 -4
  55. package/dist/vite.mjs +5 -0
  56. package/package.json +24 -9
  57. package/dist/utils-Z0nPSAzb.js +0 -42
@@ -1,14 +1,26 @@
1
1
  import type { DateValue } from '@internationalized/date';
2
2
  import type { CalendarRootProps } from 'reka-ui';
3
- type __VLS_Props = CalendarRootProps;
3
+ type __VLS_Props = Omit<CalendarRootProps, 'as' | 'asChild'>;
4
4
  type __VLS_ModelProps = {
5
5
  modelValue?: DateValue | DateValue[];
6
6
  };
7
7
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
8
8
  declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
9
9
  "update:modelValue": (value: DateValue | DateValue[] | undefined) => any;
10
+ } & {
11
+ "update:placeholder": (date: DateValue) => any;
10
12
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
11
13
  "onUpdate:modelValue"?: ((value: DateValue | DateValue[] | undefined) => any) | undefined;
12
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined;
15
+ }>, {
16
+ disabled: boolean;
17
+ readonly: boolean;
18
+ multiple: boolean;
19
+ pagedNavigation: boolean;
20
+ preventDeselect: boolean;
21
+ fixedWeeks: boolean;
22
+ initialFocus: boolean;
23
+ disableDaysOutsideCurrentView: boolean;
24
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
25
  declare const _default: typeof __VLS_export;
14
26
  export default _default;
package/dist/Calendar.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ import { n as useForwardToRoot } from "./forward-root-DPGTBptG.js";
1
2
  import { Fragment, createBlock, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeModels, mergeProps, openBlock, renderList, toDisplayString, unref, useModel, withCtx } from "vue";
2
3
  import { CalendarCell, CalendarCellTrigger, CalendarGrid, CalendarGridBody, CalendarGridHead, CalendarGridRow, CalendarHeadCell, CalendarHeader, CalendarHeading, CalendarNext, CalendarPrev, CalendarRoot } from "reka-ui";
3
4
  import VuButton from "vunor/Button";
@@ -7,122 +8,73 @@ const _hoisted_1 = { class: "calendar-month-grid" };
7
8
  //#endregion
8
9
  //#region src/components/Calendar/Calendar.vue
9
10
  var Calendar_default = /* @__PURE__ */ defineComponent({
11
+ inheritAttrs: false,
10
12
  __name: "Calendar",
11
13
  props: /* @__PURE__ */ mergeModels({
12
- defaultValue: {
13
- type: Object,
14
- required: false
15
- },
16
- defaultPlaceholder: {
17
- type: Object,
18
- required: false
19
- },
20
- placeholder: {
21
- type: Object,
22
- required: false
23
- },
14
+ defaultValue: {},
15
+ defaultPlaceholder: {},
16
+ placeholder: {},
24
17
  pagedNavigation: {
25
18
  type: Boolean,
26
- required: false
19
+ default: void 0
27
20
  },
28
21
  preventDeselect: {
29
22
  type: Boolean,
30
- required: false
31
- },
32
- weekStartsOn: {
33
- type: Number,
34
- required: false
35
- },
36
- weekdayFormat: {
37
- type: String,
38
- required: false
39
- },
40
- calendarLabel: {
41
- type: String,
42
- required: false
23
+ default: void 0
43
24
  },
25
+ weekStartsOn: {},
26
+ weekdayFormat: {},
27
+ calendarLabel: {},
44
28
  fixedWeeks: {
45
29
  type: Boolean,
46
- required: false
47
- },
48
- maxValue: {
49
- type: Object,
50
- required: false
51
- },
52
- minValue: {
53
- type: Object,
54
- required: false
55
- },
56
- locale: {
57
- type: String,
58
- required: false
59
- },
60
- numberOfMonths: {
61
- type: Number,
62
- required: false
30
+ default: void 0
63
31
  },
32
+ maxValue: {},
33
+ minValue: {},
34
+ locale: {},
35
+ numberOfMonths: {},
64
36
  disabled: {
65
37
  type: Boolean,
66
- required: false
38
+ default: void 0
67
39
  },
68
40
  readonly: {
69
41
  type: Boolean,
70
- required: false
42
+ default: void 0
71
43
  },
72
44
  initialFocus: {
73
45
  type: Boolean,
74
- required: false
75
- },
76
- isDateDisabled: {
77
- type: Function,
78
- required: false
79
- },
80
- isDateUnavailable: {
81
- type: Function,
82
- required: false
83
- },
84
- dir: {
85
- type: String,
86
- required: false
87
- },
88
- nextPage: {
89
- type: Function,
90
- required: false
91
- },
92
- prevPage: {
93
- type: Function,
94
- required: false
95
- },
96
- modelValue: {
97
- type: null,
98
- required: false
99
- },
46
+ default: void 0
47
+ },
48
+ isDateDisabled: {},
49
+ isDateUnavailable: {},
50
+ dir: {},
51
+ nextPage: {},
52
+ prevPage: {},
53
+ modelValue: {},
100
54
  multiple: {
101
55
  type: Boolean,
102
- required: false
56
+ default: void 0
103
57
  },
104
58
  disableDaysOutsideCurrentView: {
105
59
  type: Boolean,
106
- required: false
107
- },
108
- asChild: {
109
- type: Boolean,
110
- required: false
111
- },
112
- as: {
113
- type: null,
114
- required: false
60
+ default: void 0
115
61
  }
116
62
  }, {
117
- "modelValue": { type: [Object, Array] },
63
+ "modelValue": {},
118
64
  "modelModifiers": {}
119
65
  }),
120
- emits: ["update:modelValue"],
121
- setup(__props) {
66
+ emits: /* @__PURE__ */ mergeModels(["update:placeholder"], ["update:modelValue"]),
67
+ setup(__props, { emit: __emit }) {
122
68
  const props = __props;
123
69
  const modelValue = useModel(__props, "modelValue");
70
+ const rootProps = useForwardToRoot(CalendarRoot, props, __emit, [
71
+ "modelValue",
72
+ "as",
73
+ "asChild",
74
+ "update:modelValue"
75
+ ]);
124
76
  return (_ctx, _cache) => {
125
- return openBlock(), createBlock(unref(CalendarRoot), mergeProps(props, {
77
+ return openBlock(), createBlock(unref(CalendarRoot), mergeProps(unref(rootProps), {
126
78
  "as-child": "",
127
79
  modelValue: modelValue.value,
128
80
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event)
package/dist/Card.mjs CHANGED
@@ -6,31 +6,12 @@ import { useCardPI } from "vunor";
6
6
  var Card_default = /* @__PURE__ */ defineComponent({
7
7
  __name: "Card",
8
8
  props: {
9
- as: {
10
- type: String,
11
- required: false,
12
- default: "div"
13
- },
14
- asChild: {
15
- type: Boolean,
16
- required: false
17
- },
18
- noPadding: {
19
- type: Boolean,
20
- required: false
21
- },
22
- level: {
23
- type: String,
24
- required: false
25
- },
26
- dense: {
27
- type: Boolean,
28
- required: false
29
- },
30
- rounded: {
31
- type: Boolean,
32
- required: false
33
- }
9
+ as: { default: "div" },
10
+ asChild: { type: Boolean },
11
+ noPadding: { type: Boolean },
12
+ level: {},
13
+ dense: { type: Boolean },
14
+ rounded: { type: Boolean }
34
15
  },
35
16
  setup(__props) {
36
17
  const props = __props;
@@ -6,18 +6,9 @@ import { useCardPI } from "vunor";
6
6
  var CardHeader_default = /* @__PURE__ */ defineComponent({
7
7
  __name: "CardHeader",
8
8
  props: {
9
- as: {
10
- type: String,
11
- required: false
12
- },
13
- asChild: {
14
- type: Boolean,
15
- required: false
16
- },
17
- level: {
18
- type: String,
19
- required: false
20
- }
9
+ as: {},
10
+ asChild: { type: Boolean },
11
+ level: {}
21
12
  },
22
13
  setup(__props) {
23
14
  const props = __props;
@@ -1,4 +1,7 @@
1
- type __VLS_Props = {
1
+ import type { CheckboxRootProps } from 'reka-ui';
2
+ type __VLS_Props = Pick<CheckboxRootProps, 'defaultValue' | 'value' | 'trueValue' | 'falseValue' | 'name'> & {
3
+ /** Id of the checkbox control (the focusable element), for `<label for>` */
4
+ id?: string;
2
5
  label?: string;
3
6
  disabled?: boolean;
4
7
  error?: string | boolean;
@@ -21,7 +24,9 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
21
24
  "update:modelValue": (value: boolean | "indeterminate" | undefined) => any;
22
25
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
23
26
  "onUpdate:modelValue"?: ((value: boolean | "indeterminate" | undefined) => any) | undefined;
24
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
27
+ }>, {
28
+ defaultValue: boolean | "indeterminate";
29
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
25
30
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
26
31
  declare const _default: typeof __VLS_export;
27
32
  export default _default;
package/dist/Checkbox.mjs CHANGED
@@ -1,4 +1,5 @@
1
- import { Fragment, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeModels, normalizeClass, normalizeStyle, openBlock, renderSlot, toDisplayString, unref, useModel, withCtx } from "vue";
1
+ import { n as useForwardToRoot } from "./forward-root-DPGTBptG.js";
2
+ import { createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeModels, mergeProps, normalizeClass, normalizeStyle, openBlock, renderSlot, toDisplayString, unref, useModel, withCtx } from "vue";
2
3
  import { CheckboxIndicator, CheckboxRoot } from "reka-ui";
3
4
  import VuIcon from "vunor/Icon";
4
5
  //#region src/components/Checkbox/Checkbox.vue?vue&type=script&setup=true&lang.ts
@@ -16,46 +17,38 @@ const _hoisted_2 = {
16
17
  var Checkbox_default = /* @__PURE__ */ defineComponent({
17
18
  __name: "Checkbox",
18
19
  props: /* @__PURE__ */ mergeModels({
19
- label: {
20
- type: String,
21
- required: false
22
- },
23
- disabled: {
24
- type: Boolean,
25
- required: false
26
- },
27
- error: {
28
- type: [String, Boolean],
29
- required: false
30
- },
31
- required: {
32
- type: Boolean,
33
- required: false
34
- },
35
- verticalMiddle: {
36
- type: Boolean,
37
- required: false
38
- },
39
- reverse: {
40
- type: Boolean,
41
- required: false
42
- },
43
- readonly: {
44
- type: Boolean,
45
- required: false
46
- }
20
+ defaultValue: { default: void 0 },
21
+ value: {},
22
+ trueValue: {},
23
+ falseValue: {},
24
+ name: {},
25
+ id: {},
26
+ label: {},
27
+ disabled: { type: Boolean },
28
+ error: { type: [String, Boolean] },
29
+ required: { type: Boolean },
30
+ verticalMiddle: { type: Boolean },
31
+ reverse: { type: Boolean },
32
+ readonly: { type: Boolean }
47
33
  }, {
48
34
  "modelValue": {
49
35
  type: [Boolean, String],
50
- skipCheck: true
36
+ default: void 0
51
37
  },
52
38
  "modelModifiers": {}
53
39
  }),
54
40
  emits: ["update:modelValue"],
55
41
  setup(__props) {
56
42
  const modelValue = useModel(__props, "modelValue");
43
+ const rootProps = useForwardToRoot(CheckboxRoot, __props, void 0, [
44
+ "modelValue",
45
+ "disabled",
46
+ "required",
47
+ "asChild",
48
+ "as"
49
+ ]);
57
50
  return (_ctx, _cache) => {
58
- return openBlock(), createElementBlock(Fragment, null, [createCommentVNode(" [&>.checkbox]:hover:bg-neutral-100 "), createElementVNode("div", null, [createElementVNode("label", {
51
+ return openBlock(), createElementBlock("div", null, [createElementVNode("label", {
59
52
  style: normalizeStyle({ "pointer-events": __props.readonly ? "none" : void 0 }),
60
53
  "aria-disabled": __props.disabled,
61
54
  class: normalizeClass(["checkbox-root group/cb", {
@@ -65,39 +58,38 @@ var Checkbox_default = /* @__PURE__ */ defineComponent({
65
58
  }]),
66
59
  "aria-readonly": __props.readonly || void 0,
67
60
  "data-error": !!__props.error
68
- }, [createVNode(unref(CheckboxRoot), {
61
+ }, [createVNode(unref(CheckboxRoot), mergeProps(unref(rootProps), {
69
62
  disabled: __props.disabled,
70
- required: true,
71
- "aria-required": __props.required,
63
+ required: __props.required,
72
64
  modelValue: modelValue.value,
73
65
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => modelValue.value = $event),
74
66
  tabindex: __props.readonly ? "-1" : void 0,
75
67
  class: "checkbox",
76
68
  "aria-readonly": __props.readonly || void 0
77
- }, {
78
- default: withCtx(() => [createVNode(unref(CheckboxIndicator), { class: "checkbox-indicator" }, {
79
- default: withCtx(() => [modelValue.value === "indeterminate" ? (openBlock(), createBlock(VuIcon, {
69
+ }), {
70
+ default: withCtx(({ state }) => [createVNode(unref(CheckboxIndicator), { class: "checkbox-indicator" }, {
71
+ default: withCtx(() => [state === "indeterminate" ? (openBlock(), createBlock(VuIcon, {
80
72
  key: 0,
81
73
  name: "i--dash",
82
74
  class: "checkbox-icon"
83
- })) : createCommentVNode("v-if", true), modelValue.value === true ? (openBlock(), createBlock(VuIcon, {
75
+ })) : createCommentVNode("", true), state === true ? (openBlock(), createBlock(VuIcon, {
84
76
  key: 1,
85
77
  name: "i--checkmark",
86
78
  class: "checkbox-icon"
87
- })) : createCommentVNode("v-if", true)]),
88
- _: 1
89
- })]),
79
+ })) : createCommentVNode("", true)]),
80
+ _: 2
81
+ }, 1024)]),
90
82
  _: 1
91
- }, 8, [
83
+ }, 16, [
92
84
  "disabled",
93
- "aria-required",
85
+ "required",
94
86
  "modelValue",
95
87
  "tabindex",
96
88
  "aria-readonly"
97
- ]), __props.label || _ctx.$slots.label ? (openBlock(), createElementBlock("span", _hoisted_2, [renderSlot(_ctx.$slots, "default", { label: __props.label }, () => [createTextVNode(toDisplayString(__props.label), 1)])])) : createCommentVNode("v-if", true)], 14, _hoisted_1), !!__props.error && typeof __props.error === "string" ? (openBlock(), createElementBlock("div", {
89
+ ]), __props.label || _ctx.$slots.label ? (openBlock(), createElementBlock("span", _hoisted_2, [renderSlot(_ctx.$slots, "default", { label: __props.label }, () => [createTextVNode(toDisplayString(__props.label), 1)])])) : createCommentVNode("", true)], 14, _hoisted_1), !!__props.error && typeof __props.error === "string" ? (openBlock(), createElementBlock("div", {
98
90
  key: 0,
99
91
  class: normalizeClass(["text-caption text-error-500 text-mt-$s", { "text-right": __props.reverse }])
100
- }, toDisplayString(__props.error), 3)) : createCommentVNode("v-if", true)])], 2112);
92
+ }, toDisplayString(__props.error), 3)) : createCommentVNode("", true)]);
101
93
  };
102
94
  }
103
95
  });
@@ -84,13 +84,25 @@ interface TComboboxProps<T extends TComboboxItem> {
84
84
  multiple?: boolean;
85
85
  checkboxItems?: boolean;
86
86
  dropdownIcon?: string;
87
+ /** Initial open state when `v-model:open` is not used. */
88
+ defaultOpen?: boolean;
89
+ resetSearchTermOnBlur?: boolean;
90
+ resetSearchTermOnSelect?: boolean;
91
+ openOnFocus?: boolean;
92
+ openOnClick?: boolean;
93
+ ignoreFilter?: boolean;
94
+ resetModelValueOnClear?: boolean;
95
+ highlightOnHover?: boolean;
96
+ by?: string | ((a: unknown, b: unknown) => boolean);
97
+ dir?: 'ltr' | 'rtl';
98
+ /** Form field name: the value is submitted with the enclosing `<form>`. */
99
+ name?: string;
87
100
  }
88
101
 
89
102
 
90
103
  declare const __VLS_export: <T extends TComboboxItem = TComboboxItem>(__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<{
91
104
  props: import("vue").PublicProps & __VLS_PrettifyLocal<(Omit<TInputProps & TInputBaseProps, "active"> & TComboboxProps<T> & {
92
105
  align?: "start" | "center" | "end";
93
- resetSearchTermOnBlur?: boolean;
94
106
  } & {
95
107
  open?: boolean;
96
108
  modelValue?: string | string[];
@@ -103,16 +115,21 @@ declare const __VLS_export: <T extends TComboboxItem = TComboboxItem>(__VLS_prop
103
115
  onBeforeClick?: ((event: MouseEvent) => any) | undefined;
104
116
  onAfterClick?: ((event: MouseEvent) => any) | undefined;
105
117
  onClick?: ((event: MouseEvent) => any) | undefined;
106
- onEnter?: ((event: KeyboardEvent) => any) | undefined;
107
- "onUpdate:open"?: ((value: boolean | undefined) => any) | undefined;
118
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
108
119
  "onUpdate:modelValue"?: ((value: string | string[] | undefined) => any) | undefined;
120
+ onHighlight?: ((payload: unknown) => any) | undefined;
109
121
  "onUpdate:searchTerm"?: ((value: string | undefined) => any) | undefined;
122
+ onEnter?: ((event: KeyboardEvent) => any) | undefined;
110
123
  }> & (typeof globalThis extends {
111
124
  __VLS_PROPS_FALLBACK: infer P;
112
125
  } ? P : {});
113
126
  expose: (exposed: {}) => void;
114
127
  attrs: any;
115
128
  slots: {
129
+ prepend?: (props: {}) => any;
130
+ } & {
131
+ append?: (props: {}) => any;
132
+ } & {
116
133
  empty?: (props: {}) => any;
117
134
  } & {
118
135
  'group-label'?: (props: {
@@ -127,10 +144,6 @@ declare const __VLS_export: <T extends TComboboxItem = TComboboxItem>(__VLS_prop
127
144
  prepend?: (props: {}) => any;
128
145
  } & {
129
146
  append?: (props: {}) => any;
130
- } & {
131
- prepend?: (props: {}) => any;
132
- } & {
133
- append?: (props: {}) => any;
134
147
  } & {
135
148
  before?: (props: {}) => any;
136
149
  } & {
@@ -155,7 +168,10 @@ declare const __VLS_export: <T extends TComboboxItem = TComboboxItem>(__VLS_prop
155
168
  } & {
156
169
  after?: (props: {}) => any;
157
170
  };
158
- emit: (TInputEmits & ((e: "enter", event: KeyboardEvent) => void)) & (((event: "update:open", value: boolean | undefined) => void) & ((event: "update:modelValue", value: string | string[] | undefined) => void) & ((event: "update:searchTerm", value: string | undefined) => void));
171
+ emit: (TInputEmits & {
172
+ (e: "enter", event: KeyboardEvent): void;
173
+ (e: "highlight", payload: unknown): void;
174
+ }) & (((event: "update:open", value: boolean) => void) & ((event: "update:modelValue", value: string | string[] | undefined) => void) & ((event: "update:searchTerm", value: string | undefined) => void));
159
175
  }>) => import("vue").VNode & {
160
176
  __ctx?: Awaited<typeof __VLS_setup>;
161
177
  };