@youcan/celeste 0.6.14 → 0.6.16

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 (91) hide show
  1. package/dist/celeste.css +613 -214
  2. package/dist/cjs/chunks/combobox-anchor.js +31 -0
  3. package/dist/cjs/chunks/combobox-root.js +38 -0
  4. package/dist/cjs/chunks/index.js +17 -0
  5. package/dist/cjs/combobox-anchor.js +3 -0
  6. package/dist/cjs/combobox-empty.js +32 -0
  7. package/dist/cjs/combobox-group.js +42 -0
  8. package/dist/cjs/combobox-input.js +67 -0
  9. package/dist/cjs/combobox-item.js +109 -0
  10. package/dist/cjs/combobox-list.js +62 -0
  11. package/dist/cjs/combobox-root.js +3 -0
  12. package/dist/cjs/combobox-separator.js +32 -0
  13. package/dist/cjs/combobox-trigger.js +46 -0
  14. package/dist/cjs/combobox.js +208 -0
  15. package/dist/cjs/dropdown.js +10 -3
  16. package/dist/cjs/index.js +30 -0
  17. package/dist/cjs/link-button.js +2 -2
  18. package/dist/cjs/text-input-icon.js +2 -2
  19. package/dist/components/combobox/combobox-anchor.d.ts +22 -0
  20. package/dist/components/combobox/combobox-empty.d.ts +22 -0
  21. package/dist/components/combobox/combobox-group.d.ts +23 -0
  22. package/dist/components/combobox/combobox-input.d.ts +17 -0
  23. package/dist/components/combobox/combobox-item.d.ts +31 -0
  24. package/dist/components/combobox/combobox-list.d.ts +36 -0
  25. package/dist/components/combobox/combobox-root.d.ts +29 -0
  26. package/dist/components/combobox/combobox-separator.d.ts +22 -0
  27. package/dist/components/combobox/combobox-trigger.d.ts +20 -0
  28. package/dist/components/combobox/combobox.d.ts +53 -0
  29. package/dist/components/combobox/index.d.ts +20 -0
  30. package/dist/components/dropdown/dropdown.d.ts +5 -1
  31. package/dist/components/dropdown-menu/dropdown-menu-sub-content.d.ts +4 -4
  32. package/dist/components/index.d.ts +1 -0
  33. package/dist/components/modal/modal-content.d.ts +2 -2
  34. package/dist/components/popover/popover-content.d.ts +2 -2
  35. package/dist/es/chunks/combobox-anchor.js +32 -0
  36. package/dist/es/chunks/combobox-root.js +39 -0
  37. package/dist/es/chunks/index.js +59 -42
  38. package/dist/es/combobox-anchor.js +4 -0
  39. package/dist/es/combobox-empty.js +33 -0
  40. package/dist/es/combobox-group.js +43 -0
  41. package/dist/es/combobox-input.js +68 -0
  42. package/dist/es/combobox-item.js +110 -0
  43. package/dist/es/combobox-list.js +63 -0
  44. package/dist/es/combobox-root.js +4 -0
  45. package/dist/es/combobox-separator.js +33 -0
  46. package/dist/es/combobox-trigger.js +47 -0
  47. package/dist/es/combobox.js +209 -0
  48. package/dist/es/command-group.js +1 -1
  49. package/dist/es/command-input.js +1 -1
  50. package/dist/es/command-separator.js +1 -1
  51. package/dist/es/dropdown-menu-group.js +1 -1
  52. package/dist/es/dropdown-menu-item.js +1 -1
  53. package/dist/es/dropdown-menu-label.js +1 -1
  54. package/dist/es/dropdown-menu-separator.js +1 -1
  55. package/dist/es/dropdown-menu-trigger.js +1 -1
  56. package/dist/es/dropdown-menu.js +1 -1
  57. package/dist/es/dropdown.js +11 -4
  58. package/dist/es/index.js +75 -45
  59. package/dist/es/label.js +1 -1
  60. package/dist/es/link-button.js +2 -2
  61. package/dist/es/modal-content.js +1 -1
  62. package/dist/es/modal-header.js +1 -1
  63. package/dist/es/popover-content.js +1 -1
  64. package/dist/es/popover-trigger.js +1 -1
  65. package/dist/es/segmented-control-item.js +1 -1
  66. package/dist/es/segmented-control.js +1 -1
  67. package/dist/es/select-content.js +1 -1
  68. package/dist/es/select-item.js +1 -1
  69. package/dist/es/select-trigger.js +1 -1
  70. package/dist/es/select-value.js +1 -1
  71. package/dist/es/tab-menu-content.js +1 -1
  72. package/dist/es/tab-menu-item.js +1 -1
  73. package/dist/es/tab-menu-list.js +1 -1
  74. package/dist/es/text-input-icon.js +2 -2
  75. package/dist/es/tooltip.js +1 -1
  76. package/package.json +3 -3
  77. package/src/components/button/link-button.vue +1 -1
  78. package/src/components/combobox/combobox-anchor.vue +25 -0
  79. package/src/components/combobox/combobox-empty.vue +30 -0
  80. package/src/components/combobox/combobox-group.vue +42 -0
  81. package/src/components/combobox/combobox-input.vue +64 -0
  82. package/src/components/combobox/combobox-item.vue +196 -0
  83. package/src/components/combobox/combobox-list.vue +100 -0
  84. package/src/components/combobox/combobox-root.vue +14 -0
  85. package/src/components/combobox/combobox-separator.vue +31 -0
  86. package/src/components/combobox/combobox-trigger.vue +249 -0
  87. package/src/components/combobox/combobox.vue +257 -0
  88. package/src/components/combobox/index.ts +29 -0
  89. package/src/components/combobox/stories/combobox.stories.ts +99 -0
  90. package/src/components/dropdown/dropdown.vue +33 -2
  91. package/src/components/index.ts +1 -0
@@ -0,0 +1,47 @@
1
+ import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
2
+ import { c as clsx } from "./chunks/clsx.js";
3
+ import { A as At, U as Uv } from "./chunks/index.js";
4
+ import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
5
+ const _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "combobox-trigger",
7
+ props: {
8
+ class: {},
9
+ size: {},
10
+ filled: { type: Boolean },
11
+ type: { default: "normal" },
12
+ error: { type: Boolean },
13
+ disabled: { type: Boolean },
14
+ asChild: { type: Boolean },
15
+ as: {}
16
+ },
17
+ setup(__props) {
18
+ const props = __props;
19
+ const delegatedProps = computed(() => {
20
+ const { class: _, ...delegated } = props;
21
+ return delegated;
22
+ });
23
+ const forwarded = At(delegatedProps);
24
+ return (_ctx, _cache) => {
25
+ return openBlock(), createBlock(unref(Uv), mergeProps(unref(forwarded), {
26
+ tabindex: "0",
27
+ class: unref(clsx)(
28
+ "celeste-dropdown-anchor-trigger",
29
+ `celeste-dropdown-anchor-trigger-size-${props.size}`,
30
+ `celeste-dropdown-anchor-trigger-type-${props.type}`,
31
+ { "celeste-dropdown-anchor-trigger-error": props.error },
32
+ { "celeste-dropdown-anchor-trigger-filled": _ctx.filled },
33
+ props.class
34
+ )
35
+ }), {
36
+ default: withCtx(() => [
37
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
38
+ ]),
39
+ _: 3
40
+ }, 16, ["class"]);
41
+ };
42
+ }
43
+ });
44
+ const ComboboxTrigger = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1d007d84"]]);
45
+ export {
46
+ ComboboxTrigger as default
47
+ };
@@ -0,0 +1,209 @@
1
+ import { defineComponent, computed, ref, openBlock, createElementBlock, createVNode, mergeProps, unref, withCtx, createElementVNode, normalizeClass, createCommentVNode, renderSlot, normalizeProps, guardReactiveProps, toDisplayString, createBlock, createSlots, createTextVNode, Fragment, renderList } from "vue";
2
+ import { x as xe } from "./chunks/index.js";
3
+ import Badge from "./badge.js";
4
+ import { _ as _sfc_main$2 } from "./chunks/combobox-anchor.js";
5
+ import ComboboxEmpty from "./combobox-empty.js";
6
+ import ComboboxGroup from "./combobox-group.js";
7
+ import ComboboxInput from "./combobox-input.js";
8
+ import ComboboxItem from "./combobox-item.js";
9
+ import ComboboxList from "./combobox-list.js";
10
+ import { _ as _sfc_main$1 } from "./chunks/combobox-root.js";
11
+ import ComboboxSeparator from "./combobox-separator.js";
12
+ import ComboboxTrigger from "./combobox-trigger.js";
13
+ import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
14
+ const _hoisted_1 = { class: "root" };
15
+ const _hoisted_2 = { class: "celeste-dropdown-anchor-trigger-prefix" };
16
+ const _hoisted_3 = {
17
+ key: 0,
18
+ class: "celeste-dropdown-anchor-trigger-prefix-selected"
19
+ };
20
+ const _hoisted_4 = { key: 1 };
21
+ const _hoisted_5 = ["src"];
22
+ const _hoisted_6 = {
23
+ key: 0,
24
+ class: "celeste-dropdown-input"
25
+ };
26
+ const _hoisted_7 = { key: 0 };
27
+ const _hoisted_8 = { key: 1 };
28
+ const _hoisted_9 = {
29
+ key: 2,
30
+ class: "celeste-input-badge"
31
+ };
32
+ const _hoisted_10 = ["src"];
33
+ const _sfc_main = /* @__PURE__ */ defineComponent({
34
+ __name: "combobox",
35
+ props: {
36
+ options: {},
37
+ valueBy: {},
38
+ placeholder: { default: "Select" },
39
+ type: {},
40
+ size: { default: "sm" },
41
+ emptyLabel: {},
42
+ badgeProps: {},
43
+ searchable: { type: Boolean },
44
+ modelValue: {},
45
+ defaultValue: {},
46
+ open: { type: Boolean },
47
+ defaultOpen: { type: Boolean },
48
+ searchTerm: {},
49
+ selectedValue: {},
50
+ multiple: { type: Boolean },
51
+ disabled: { type: Boolean },
52
+ name: {},
53
+ dir: {},
54
+ filterFunction: {},
55
+ displayValue: {},
56
+ resetSearchTermOnBlur: { type: Boolean },
57
+ asChild: { type: Boolean },
58
+ as: {}
59
+ },
60
+ emits: ["update:modelValue", "update:open", "update:searchTerm", "update:selectedValue"],
61
+ setup(__props, { emit: __emit }) {
62
+ const props = __props;
63
+ const emits = __emit;
64
+ const delegatedProps = computed(() => {
65
+ const { open, modelValue, filterFunction: filterFunction2, ...delegated } = props;
66
+ return delegated;
67
+ });
68
+ const forwarded = xe(delegatedProps, emits);
69
+ const selected = ref(props.multiple ? [] : void 0);
70
+ function isSelected(value) {
71
+ if (!Array.isArray(selected.value) || !props.multiple)
72
+ return;
73
+ if (value === void 0 || value === null)
74
+ return false;
75
+ return selected.value.some((selectedItem) => {
76
+ const { value: selectedValue } = selectedItem;
77
+ if (props.valueBy && Object.prototype.hasOwnProperty.call(value, props.valueBy) && Object.prototype.hasOwnProperty.call(selectedValue, props.valueBy)) {
78
+ return value[props.valueBy] === selectedValue[props.valueBy];
79
+ }
80
+ return selectedValue === value;
81
+ });
82
+ }
83
+ function filterFunction(list, searchTerm) {
84
+ return list.filter((option) => {
85
+ const { value, label } = option;
86
+ if (!value || !label)
87
+ return false;
88
+ if (props.valueBy && typeof value === "object" && props.valueBy in value) {
89
+ return String(value[props.valueBy]).toLowerCase().includes(searchTerm.toLowerCase()) || label.toString().toLowerCase().includes(searchTerm.toLowerCase());
90
+ }
91
+ return value.toString().toLowerCase().includes(searchTerm.toLowerCase()) || label.toString().toLowerCase().includes(searchTerm.toLowerCase());
92
+ });
93
+ }
94
+ const mergedBadgeProps = computed(() => ({
95
+ ...props.badgeProps,
96
+ disabled: props.disabled
97
+ }));
98
+ return (_ctx, _cache) => {
99
+ return openBlock(), createElementBlock("div", _hoisted_1, [
100
+ createVNode(_sfc_main$1, mergeProps(unref(forwarded), {
101
+ "model-value": selected.value,
102
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => selected.value = $event),
103
+ "filter-function": filterFunction
104
+ }), {
105
+ default: withCtx(() => [
106
+ createVNode(_sfc_main$2, { "as-child": "" }, {
107
+ default: withCtx(() => [
108
+ createVNode(ComboboxTrigger, {
109
+ type: _ctx.type,
110
+ filled: !!selected.value,
111
+ size: _ctx.size
112
+ }, {
113
+ default: withCtx(() => [
114
+ createElementVNode("div", _hoisted_2, [
115
+ selected.value && !Array.isArray(selected.value) ? (openBlock(), createElementBlock("div", _hoisted_3, [
116
+ selected.value.icon ? (openBlock(), createElementBlock("i", {
117
+ key: 0,
118
+ class: normalizeClass(selected.value.icon)
119
+ }, null, 2)) : createCommentVNode("", true),
120
+ selected.value.image ? (openBlock(), createElementBlock("div", _hoisted_4, [
121
+ renderSlot(_ctx.$slots, "image", normalizeProps(guardReactiveProps({ selected: selected.value })), () => [
122
+ createElementVNode("img", {
123
+ src: selected.value.image,
124
+ alt: "Selected option",
125
+ class: "selected-dropdown-image"
126
+ }, null, 8, _hoisted_5)
127
+ ], true)
128
+ ])) : createCommentVNode("", true)
129
+ ])) : renderSlot(_ctx.$slots, "prefix", {
130
+ key: 1,
131
+ class: "celeste-dropdown-anchor-trigger-prefix-default"
132
+ }, void 0, true)
133
+ ]),
134
+ _ctx.type !== "inline" ? (openBlock(), createElementBlock("div", _hoisted_6, [
135
+ _ctx.multiple ? (openBlock(), createElementBlock("span", _hoisted_7, toDisplayString(_ctx.placeholder), 1)) : (openBlock(), createElementBlock("span", _hoisted_8, toDisplayString(selected.value && !Array.isArray(selected.value) ? selected.value.label : props.placeholder), 1)),
136
+ mergedBadgeProps.value && _ctx.badgeProps ? (openBlock(), createElementBlock("span", _hoisted_9, [
137
+ createVNode(Badge, normalizeProps(guardReactiveProps(mergedBadgeProps.value)), null, 16)
138
+ ])) : createCommentVNode("", true)
139
+ ])) : createCommentVNode("", true),
140
+ _cache[1] || (_cache[1] = createElementVNode("div", { class: "celeste-dropdown-trigger" }, [
141
+ createElementVNode("i", { class: "i-celeste-arrow-down-s-line" })
142
+ ], -1))
143
+ ]),
144
+ _: 3
145
+ }, 8, ["type", "filled", "size"])
146
+ ]),
147
+ _: 3
148
+ }),
149
+ createVNode(ComboboxList, null, {
150
+ default: withCtx(() => [
151
+ createElementVNode("div", {
152
+ class: normalizeClass(["celeste-dropdown-inner-input", { "sr-only": !_ctx.searchable }])
153
+ }, [
154
+ createVNode(ComboboxInput, { searchable: _ctx.searchable }, null, 8, ["searchable"]),
155
+ _ctx.searchable ? (openBlock(), createBlock(ComboboxSeparator, { key: 0 })) : createCommentVNode("", true)
156
+ ], 2),
157
+ createVNode(ComboboxEmpty, null, createSlots({ _: 2 }, [
158
+ _ctx.emptyLabel ? {
159
+ name: "default",
160
+ fn: withCtx(() => [
161
+ createTextVNode(toDisplayString(_ctx.emptyLabel), 1)
162
+ ]),
163
+ key: "0"
164
+ } : void 0
165
+ ]), 1024),
166
+ createVNode(ComboboxGroup, null, {
167
+ default: withCtx(() => [
168
+ (openBlock(true), createElementBlock(Fragment, null, renderList(props.options, (option) => {
169
+ return openBlock(), createBlock(ComboboxItem, {
170
+ key: option.label,
171
+ label: option.label,
172
+ sublabel: option.sublabel,
173
+ description: option.description,
174
+ checkbox: props.multiple,
175
+ value: option,
176
+ selected: isSelected(option.value)
177
+ }, {
178
+ prefix: withCtx(() => [
179
+ option.icon ? (openBlock(), createElementBlock("i", {
180
+ key: 0,
181
+ class: normalizeClass(option.icon)
182
+ }, null, 2)) : createCommentVNode("", true),
183
+ option.image ? (openBlock(), createElementBlock("img", {
184
+ key: 1,
185
+ src: option.image,
186
+ alt: "option",
187
+ class: "celeste-dropdown-item-image"
188
+ }, null, 8, _hoisted_10)) : createCommentVNode("", true)
189
+ ]),
190
+ _: 2
191
+ }, 1032, ["label", "sublabel", "description", "checkbox", "value", "selected"]);
192
+ }), 128))
193
+ ]),
194
+ _: 1
195
+ })
196
+ ]),
197
+ _: 1
198
+ })
199
+ ]),
200
+ _: 3
201
+ }, 16, ["model-value"])
202
+ ]);
203
+ };
204
+ }
205
+ });
206
+ const combobox = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-424c9dad"]]);
207
+ export {
208
+ combobox as default
209
+ };
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, withCtx, createTextVNode, toDisplayString, createCommentVNode, renderSlot } from "vue";
2
- import { D as qv, ao as Yv } from "./chunks/index.js";
2
+ import { B as qv, Y as Yv } from "./chunks/index.js";
3
3
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "command-group",
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, computed, openBlock, createElementBlock, createElementVNode, createVNode, unref, mergeProps } from "vue";
2
2
  import { c as clsx } from "./chunks/clsx.js";
3
- import { A as At, an as Wv } from "./chunks/index.js";
3
+ import { A as At, D as Wv } from "./chunks/index.js";
4
4
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
5
5
  const _hoisted_1 = {
6
6
  class: "celeste-command-input",
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
2
2
  import { c as clsx } from "./chunks/clsx.js";
3
- import { B as tm } from "./chunks/index.js";
3
+ import { L as tm } from "./chunks/index.js";
4
4
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
6
6
  __name: "command-separator",
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
2
- import { I as fh } from "./chunks/index.js";
2
+ import { P as fh } from "./chunks/index.js";
3
3
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "dropdown-menu-group",
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, createElementVNode, renderSlot, toDisplayString, createElementBlock, createCommentVNode } from "vue";
2
2
  import { useDelegatedProps } from "./use-delegated-props.js";
3
3
  import { c as clsx } from "./chunks/clsx.js";
4
- import { A as At, L as ch } from "./chunks/index.js";
4
+ import { A as At, R as ch } from "./chunks/index.js";
5
5
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
6
6
  const _hoisted_1 = { class: "celeste-dropdown-menu-item-prefix" };
7
7
  const _hoisted_2 = { class: "celeste-dropdown-menu-item-body" };
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
2
2
  import { useDelegatedProps } from "./use-delegated-props.js";
3
3
  import { c as clsx } from "./chunks/clsx.js";
4
- import { A as At, P as hh } from "./chunks/index.js";
4
+ import { A as At, S as hh } from "./chunks/index.js";
5
5
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
6
6
  const _sfc_main = /* @__PURE__ */ defineComponent({
7
7
  __name: "dropdown-menu-label",
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, openBlock, createBlock, unref, mergeProps } from "vue";
2
2
  import { useDelegatedProps } from "./use-delegated-props.js";
3
3
  import { c as clsx } from "./chunks/clsx.js";
4
- import { R as ph } from "./chunks/index.js";
4
+ import { T as ph } from "./chunks/index.js";
5
5
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
6
6
  const _sfc_main = /* @__PURE__ */ defineComponent({
7
7
  __name: "dropdown-menu-separator",
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
2
- import { A as At, S as rh } from "./chunks/index.js";
2
+ import { A as At, _ as rh } from "./chunks/index.js";
3
3
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
4
4
  const _sfc_main = /* @__PURE__ */ defineComponent({
5
5
  __name: "dropdown-menu-trigger",
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, openBlock, createBlock, unref, mergeProps, withCtx, renderSlot } from "vue";
2
2
  import { useDelegatedProps } from "./use-delegated-props.js";
3
- import { T as sh } from "./chunks/index.js";
3
+ import { $ as sh } from "./chunks/index.js";
4
4
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
6
6
  __name: "dropdown-menu",
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, mergeModels, useModel, ref, computed, watch, openBlock, createElementBlock, withKeys, createVNode, unref, withCtx, normalizeClass, createElementVNode, createCommentVNode, renderSlot, normalizeProps, guardReactiveProps, toDisplayString, createBlock, createSlots, Fragment, renderList } from "vue";
2
2
  import { c as clsx } from "./chunks/clsx.js";
3
- import { H as Hv, v as jv, U as Uv, X as Xv, J as Jv, B as tm, Z as Zv, D as qv, E as Qv } from "./chunks/index.js";
3
+ import { H as Hv, j as jv, U as Uv, X as Xv, J as Jv, L as tm, Z as Zv, B as qv, E as Qv } from "./chunks/index.js";
4
4
  import Badge from "./badge.js";
5
5
  import TextInput from "./text-input.js";
6
6
  import DropdownItem from "./dropdown-item.js";
@@ -36,6 +36,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
36
36
  error: { type: Boolean },
37
37
  size: { default: "sm" },
38
38
  type: { default: "normal" },
39
+ position: { default: "bottom" },
40
+ align: { default: "start" },
39
41
  multiple: { type: Boolean, default: false },
40
42
  emptyLabel: { default: "No options available" },
41
43
  searchable: { type: Boolean, default: false },
@@ -191,7 +193,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
191
193
  key: 0,
192
194
  "force-mount": "",
193
195
  dismissable: "",
194
- class: "celeste-dropdown-content"
196
+ "avoid-collisions": true,
197
+ class: normalizeClass(["celeste-dropdown-content", unref(clsx)(
198
+ "celeste-dropdown-content",
199
+ `celeste-dropdown-content-size-${_ctx.position}`,
200
+ `celeste-dropdown-content-align-${_ctx.align}`
201
+ )])
195
202
  }, {
196
203
  default: withCtx(() => [
197
204
  createVNode(unref(Jv), { class: "celeste-dropdown-items-viewport" }, {
@@ -271,7 +278,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
271
278
  })
272
279
  ]),
273
280
  _: 1
274
- })) : createCommentVNode("", true)
281
+ }, 8, ["class"])) : createCommentVNode("", true)
275
282
  ]),
276
283
  _: 3
277
284
  }, 8, ["modelValue", "open", "disabled", "multiple", "display-value"])
@@ -279,7 +286,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
279
286
  };
280
287
  }
281
288
  });
282
- const dropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-2cc18da8"]]);
289
+ const dropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-dd43a899"]]);
283
290
  export {
284
291
  dropdown as default
285
292
  };
package/dist/es/index.js CHANGED
@@ -7,53 +7,63 @@ import fancyButton from "./fancy-button.js";
7
7
  import linkButton from "./link-button.js";
8
8
  import socialButton from "./social-button.js";
9
9
  import { _ as _sfc_main } from "./chunks/checkbox.vue_vue_type_style_index_0_lang.js";
10
- import { _ as _sfc_main$1 } from "./chunks/content-divider.vue_vue_type_style_index_0_lang.js";
10
+ import { _ as _sfc_main$1 } from "./chunks/combobox-anchor.js";
11
+ import ComboboxEmpty from "./combobox-empty.js";
12
+ import ComboboxGroup from "./combobox-group.js";
13
+ import ComboboxInput from "./combobox-input.js";
14
+ import ComboboxItem from "./combobox-item.js";
15
+ import ComboboxList from "./combobox-list.js";
16
+ import { _ as _sfc_main$2 } from "./chunks/combobox-root.js";
17
+ import ComboboxSeparator from "./combobox-separator.js";
18
+ import ComboboxTrigger from "./combobox-trigger.js";
19
+ import combobox from "./combobox.js";
20
+ import { _ as _sfc_main$3 } from "./chunks/content-divider.vue_vue_type_style_index_0_lang.js";
11
21
  import contextMenuItem from "./context-menu-item.js";
12
22
  import DropdownItem from "./dropdown-item.js";
13
23
  import dropdown from "./dropdown.js";
14
- import { _ as _sfc_main$2 } from "./chunks/dropdown-menu-content.vue_vue_type_style_index_0_lang.js";
24
+ import { _ as _sfc_main$4 } from "./chunks/dropdown-menu-content.vue_vue_type_style_index_0_lang.js";
15
25
  import dropdownMenuGroup from "./dropdown-menu-group.js";
16
26
  import dropdownMenuItem from "./dropdown-menu-item.js";
17
27
  import dropdownMenuLabel from "./dropdown-menu-label.js";
18
28
  import dropdownMenuSeparator from "./dropdown-menu-separator.js";
19
- import { _ as _sfc_main$4 } from "./chunks/dropdown-menu-sub-content.vue_vue_type_style_index_0_lang.js";
20
- import { _ as _sfc_main$5 } from "./chunks/dropdown-menu-sub-trigger.vue_vue_type_style_index_0_lang.js";
21
- import { _ as _sfc_main$3 } from "./chunks/dropdown-menu-sub.js";
29
+ import { _ as _sfc_main$6 } from "./chunks/dropdown-menu-sub-content.vue_vue_type_style_index_0_lang.js";
30
+ import { _ as _sfc_main$7 } from "./chunks/dropdown-menu-sub-trigger.vue_vue_type_style_index_0_lang.js";
31
+ import { _ as _sfc_main$5 } from "./chunks/dropdown-menu-sub.js";
22
32
  import dropdownMenuTrigger from "./dropdown-menu-trigger.js";
23
33
  import dropdownMenu from "./dropdown-menu.js";
24
34
  import hintText from "./hint-text.js";
25
35
  import label from "./label.js";
26
36
  import modalBody from "./modal-body.js";
27
- import { _ as _sfc_main$7 } from "./chunks/modal-close.js";
37
+ import { _ as _sfc_main$9 } from "./chunks/modal-close.js";
28
38
  import modalContent from "./modal-content.js";
29
39
  import modalFooter from "./modal-footer.js";
30
40
  import modalHeader from "./modal-header.js";
31
- import { _ as _sfc_main$8 } from "./chunks/modal-trigger.js";
32
- import { _ as _sfc_main$6 } from "./chunks/modal.js";
41
+ import { _ as _sfc_main$a } from "./chunks/modal-trigger.js";
42
+ import { _ as _sfc_main$8 } from "./chunks/modal.js";
33
43
  import PopoverContent from "./popover-content.js";
34
44
  import PopoverTrigger from "./popover-trigger.js";
35
- import { _ as _sfc_main$9 } from "./chunks/popover.js";
36
- import { _ as _sfc_main$a } from "./chunks/scroll-area.js";
45
+ import { _ as _sfc_main$b } from "./chunks/popover.js";
46
+ import { _ as _sfc_main$c } from "./chunks/scroll-area.js";
37
47
  import segmentedControlItem from "./segmented-control-item.js";
38
48
  import segmentedControl from "./segmented-control.js";
39
49
  import SelectContent from "./select-content.js";
40
- import { _ as _sfc_main$c } from "./chunks/select-group.js";
50
+ import { _ as _sfc_main$e } from "./chunks/select-group.js";
41
51
  import selectIcon from "./select-icon.js";
42
52
  import SelectItem from "./select-item.js";
43
53
  import selectLabel from "./select-label.js";
44
54
  import selectSeparator from "./select-separator.js";
45
55
  import SelectTrigger from "./select-trigger.js";
46
56
  import SelectValue from "./select-value.js";
47
- import { _ as _sfc_main$b } from "./chunks/select.js";
48
- import { _ as _sfc_main$d } from "./chunks/slider.vue_vue_type_style_index_0_lang.js";
49
- import { _ as _sfc_main$e } from "./chunks/switch.vue_vue_type_style_index_0_lang.js";
57
+ import { _ as _sfc_main$d } from "./chunks/select.js";
58
+ import { _ as _sfc_main$f } from "./chunks/slider.vue_vue_type_style_index_0_lang.js";
59
+ import { _ as _sfc_main$g } from "./chunks/switch.vue_vue_type_style_index_0_lang.js";
50
60
  import tabMenuContent from "./tab-menu-content.js";
51
61
  import tabMenuItem from "./tab-menu-item.js";
52
62
  import tabMenuList from "./tab-menu-list.js";
53
63
  import tabMenu from "./tab-menu.js";
54
64
  import textInputAffix from "./text-input-affix.js";
55
65
  import textInputButton from "./text-input-button.js";
56
- import textInputIcon from "./text-input-icon.js";
66
+ import TextInputIcon from "./text-input-icon.js";
57
67
  import TextInput from "./text-input.js";
58
68
  import textarea from "./textarea.js";
59
69
  import Tooltip from "./tooltip.js";
@@ -63,51 +73,61 @@ const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
63
73
  Badge,
64
74
  Button,
65
75
  Checkbox: _sfc_main,
76
+ Combobox: combobox,
77
+ ComboboxAnchor: _sfc_main$1,
78
+ ComboboxEmpty,
79
+ ComboboxGroup,
80
+ ComboboxInput,
81
+ ComboboxItem,
82
+ ComboboxList,
83
+ ComboboxRoot: _sfc_main$2,
84
+ ComboboxSeparator,
85
+ ComboboxTrigger,
66
86
  CompactButton,
67
- ContentDivider: _sfc_main$1,
87
+ ContentDivider: _sfc_main$3,
68
88
  ContextMenuItem: contextMenuItem,
69
89
  Dropdown: dropdown,
70
90
  DropdownItem,
71
91
  DropdownMenu: dropdownMenu,
72
- DropdownMenuContent: _sfc_main$2,
92
+ DropdownMenuContent: _sfc_main$4,
73
93
  DropdownMenuGroup: dropdownMenuGroup,
74
94
  DropdownMenuItem: dropdownMenuItem,
75
95
  DropdownMenuLabel: dropdownMenuLabel,
76
96
  DropdownMenuSeparator: dropdownMenuSeparator,
77
- DropdownMenuSub: _sfc_main$3,
78
- DropdownMenuSubContent: _sfc_main$4,
79
- DropdownMenuSubTrigger: _sfc_main$5,
97
+ DropdownMenuSub: _sfc_main$5,
98
+ DropdownMenuSubContent: _sfc_main$6,
99
+ DropdownMenuSubTrigger: _sfc_main$7,
80
100
  DropdownMenuTrigger: dropdownMenuTrigger,
81
101
  FancyButton: fancyButton,
82
102
  HintText: hintText,
83
103
  Label: label,
84
104
  LinkButton: linkButton,
85
- Modal: _sfc_main$6,
105
+ Modal: _sfc_main$8,
86
106
  ModalBody: modalBody,
87
- ModalClose: _sfc_main$7,
107
+ ModalClose: _sfc_main$9,
88
108
  ModalContent: modalContent,
89
109
  ModalFooter: modalFooter,
90
110
  ModalHeader: modalHeader,
91
- ModalTrigger: _sfc_main$8,
92
- Popover: _sfc_main$9,
111
+ ModalTrigger: _sfc_main$a,
112
+ Popover: _sfc_main$b,
93
113
  PopoverContent,
94
114
  PopoverTrigger,
95
- ScrollArea: _sfc_main$a,
115
+ ScrollArea: _sfc_main$c,
96
116
  SegmentedControl: segmentedControl,
97
117
  SegmentedControlItem: segmentedControlItem,
98
- Select: _sfc_main$b,
118
+ Select: _sfc_main$d,
99
119
  SelectContent,
100
- SelectGroup: _sfc_main$c,
120
+ SelectGroup: _sfc_main$e,
101
121
  SelectIcon: selectIcon,
102
122
  SelectItem,
103
123
  SelectLabel: selectLabel,
104
124
  SelectSeparator: selectSeparator,
105
125
  SelectTrigger,
106
126
  SelectValue,
107
- Slider: _sfc_main$d,
127
+ Slider: _sfc_main$f,
108
128
  SocialButton: socialButton,
109
129
  StatusBadge: statusBadge,
110
- Switch: _sfc_main$e,
130
+ Switch: _sfc_main$g,
111
131
  TabMenu: tabMenu,
112
132
  TabMenuContent: tabMenuContent,
113
133
  TabMenuItem: tabMenuItem,
@@ -115,7 +135,7 @@ const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
115
135
  TextInput,
116
136
  TextInputAffix: textInputAffix,
117
137
  TextInputButton: textInputButton,
118
- TextInputIcon: textInputIcon,
138
+ TextInputIcon,
119
139
  Textarea: textarea,
120
140
  Tooltip
121
141
  }, Symbol.toStringTag, { value: "Module" }));
@@ -132,51 +152,61 @@ export {
132
152
  Button,
133
153
  Celeste,
134
154
  _sfc_main as Checkbox,
155
+ combobox as Combobox,
156
+ _sfc_main$1 as ComboboxAnchor,
157
+ ComboboxEmpty,
158
+ ComboboxGroup,
159
+ ComboboxInput,
160
+ ComboboxItem,
161
+ ComboboxList,
162
+ _sfc_main$2 as ComboboxRoot,
163
+ ComboboxSeparator,
164
+ ComboboxTrigger,
135
165
  CompactButton,
136
- _sfc_main$1 as ContentDivider,
166
+ _sfc_main$3 as ContentDivider,
137
167
  contextMenuItem as ContextMenuItem,
138
168
  dropdown as Dropdown,
139
169
  DropdownItem,
140
170
  dropdownMenu as DropdownMenu,
141
- _sfc_main$2 as DropdownMenuContent,
171
+ _sfc_main$4 as DropdownMenuContent,
142
172
  dropdownMenuGroup as DropdownMenuGroup,
143
173
  dropdownMenuItem as DropdownMenuItem,
144
174
  dropdownMenuLabel as DropdownMenuLabel,
145
175
  dropdownMenuSeparator as DropdownMenuSeparator,
146
- _sfc_main$3 as DropdownMenuSub,
147
- _sfc_main$4 as DropdownMenuSubContent,
148
- _sfc_main$5 as DropdownMenuSubTrigger,
176
+ _sfc_main$5 as DropdownMenuSub,
177
+ _sfc_main$6 as DropdownMenuSubContent,
178
+ _sfc_main$7 as DropdownMenuSubTrigger,
149
179
  dropdownMenuTrigger as DropdownMenuTrigger,
150
180
  fancyButton as FancyButton,
151
181
  hintText as HintText,
152
182
  label as Label,
153
183
  linkButton as LinkButton,
154
- _sfc_main$6 as Modal,
184
+ _sfc_main$8 as Modal,
155
185
  modalBody as ModalBody,
156
- _sfc_main$7 as ModalClose,
186
+ _sfc_main$9 as ModalClose,
157
187
  modalContent as ModalContent,
158
188
  modalFooter as ModalFooter,
159
189
  modalHeader as ModalHeader,
160
- _sfc_main$8 as ModalTrigger,
161
- _sfc_main$9 as Popover,
190
+ _sfc_main$a as ModalTrigger,
191
+ _sfc_main$b as Popover,
162
192
  PopoverContent,
163
193
  PopoverTrigger,
164
- _sfc_main$a as ScrollArea,
194
+ _sfc_main$c as ScrollArea,
165
195
  segmentedControl as SegmentedControl,
166
196
  segmentedControlItem as SegmentedControlItem,
167
- _sfc_main$b as Select,
197
+ _sfc_main$d as Select,
168
198
  SelectContent,
169
- _sfc_main$c as SelectGroup,
199
+ _sfc_main$e as SelectGroup,
170
200
  selectIcon as SelectIcon,
171
201
  SelectItem,
172
202
  selectLabel as SelectLabel,
173
203
  selectSeparator as SelectSeparator,
174
204
  SelectTrigger,
175
205
  SelectValue,
176
- _sfc_main$d as Slider,
206
+ _sfc_main$f as Slider,
177
207
  socialButton as SocialButton,
178
208
  statusBadge as StatusBadge,
179
- _sfc_main$e as Switch,
209
+ _sfc_main$g as Switch,
180
210
  tabMenu as TabMenu,
181
211
  tabMenuContent as TabMenuContent,
182
212
  tabMenuItem as TabMenuItem,
@@ -184,7 +214,7 @@ export {
184
214
  TextInput,
185
215
  textInputAffix as TextInputAffix,
186
216
  textInputButton as TextInputButton,
187
- textInputIcon as TextInputIcon,
217
+ TextInputIcon,
188
218
  textarea as Textarea,
189
219
  Tooltip
190
220
  };
package/dist/es/label.js CHANGED
@@ -2,7 +2,7 @@ import { defineComponent, openBlock, createBlock, unref, mergeProps, withCtx, re
2
2
  import Tooltip from "./tooltip.js";
3
3
  import { useDelegatedProps } from "./use-delegated-props.js";
4
4
  import { c as clsx } from "./chunks/clsx.js";
5
- import { Y as Oh } from "./chunks/index.js";
5
+ import { a0 as Oh } from "./chunks/index.js";
6
6
  import { _ as _export_sfc } from "./chunks/_plugin-vue_export-helper.js";
7
7
  const _hoisted_1 = {
8
8
  key: 0,