@onereach/ui-components 26.15.2-beta.6070.0 → 26.15.2

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 (26) hide show
  1. package/dist/esm/{OrCheckbox-B_121oYu.mjs → OrCheckbox-WPBzlvaV.mjs} +53 -84
  2. package/dist/esm/OrCheckbox-WPBzlvaV.mjs.map +1 -0
  3. package/dist/esm/{OrCheckboxGroup-Db0mdVfM.mjs → OrCheckboxGroup-C76zxQ10.mjs} +2 -2
  4. package/dist/esm/{OrCheckboxGroup-Db0mdVfM.mjs.map → OrCheckboxGroup-C76zxQ10.mjs.map} +1 -1
  5. package/dist/esm/OrCheckboxTree-D5Ejbly0.mjs +197 -0
  6. package/dist/esm/OrCheckboxTree-D5Ejbly0.mjs.map +1 -0
  7. package/dist/esm/{OrDataGrid-BJiaRanm.mjs → OrDataGrid-DxOxl9Wd.mjs} +3 -3
  8. package/dist/esm/{OrDataGrid-BJiaRanm.mjs.map → OrDataGrid-DxOxl9Wd.mjs.map} +1 -1
  9. package/dist/esm/{OrSelect-DBhNKmRX.mjs → OrSelect-2NJLacxt.mjs} +2 -2
  10. package/dist/esm/{OrSelect-DBhNKmRX.mjs.map → OrSelect-2NJLacxt.mjs.map} +1 -1
  11. package/dist/esm/components/index.mjs +5 -5
  12. package/dist/esm/components/or-checkbox-group-v3/index.mjs +1 -1
  13. package/dist/esm/components/or-checkbox-tree-v3/index.mjs +1 -1
  14. package/dist/esm/components/or-checkbox-v3/index.mjs +1 -1
  15. package/dist/esm/components/or-data-grid-v3/index.mjs +1 -1
  16. package/dist/esm/components/or-select-v3/index.mjs +1 -1
  17. package/dist/esm/index.mjs +5 -5
  18. package/dist/types/components/or-checkbox-tree-v3/OrCheckboxTree.vue.d.ts +1 -11
  19. package/dist/types/components/or-checkbox-tree-v3/types.d.ts +0 -2
  20. package/dist/types/components/or-checkbox-tree-v3/utils/extractChildrenValues.d.ts +1 -1
  21. package/dist/types/components/or-checkbox-v3/OrCheckbox.vue.d.ts +0 -10
  22. package/dist/types/components/or-checkbox-v3/styles.d.ts +0 -1
  23. package/package.json +6 -4
  24. package/dist/esm/OrCheckbox-B_121oYu.mjs.map +0 -1
  25. package/dist/esm/OrCheckboxTree-Com4vL18.mjs +0 -199
  26. package/dist/esm/OrCheckboxTree-Com4vL18.mjs.map +0 -1
@@ -1,15 +1,14 @@
1
- import { useIdAttribute as V, useControlAttributes as $, useProxyModelValue as B } from "@onereach/ui-components-common/hooks";
2
- import { isArray as f, isUndefined as b, include as S, exclude as L } from "@onereach/ui-components-common/utils";
3
- import { O as q, L as A } from "./OrLabel-K7_HgvcK.mjs";
4
- import { O as E } from "./OrLoader-2SaTMxmZ.mjs";
5
- import { defineComponent as N, reactive as j, ref as y, computed as d, toRef as z, resolveComponent as h, openBlock as n, createElementBlock as u, normalizeClass as p, mergeProps as P, createVNode as T, createBlock as D, withCtx as v, renderSlot as g, createTextVNode as F, toDisplayString as H, createCommentVNode as I } from "vue";
6
- import { _ as M } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
7
- const R = [
1
+ import { useIdAttribute as g, useControlAttributes as C, useProxyModelValue as V } from "@onereach/ui-components-common/hooks";
2
+ import { isArray as m, isUndefined as c, include as $, exclude as w } from "@onereach/ui-components-common/utils";
3
+ import { O as B, L as O } from "./OrLabel-K7_HgvcK.mjs";
4
+ import { defineComponent as S, reactive as q, ref as k, computed as d, toRef as L, resolveComponent as E, openBlock as b, createElementBlock as A, normalizeClass as N, createElementVNode as P, mergeProps as T, createBlock as j, withCtx as f, renderSlot as h, createTextVNode as z, toDisplayString as D, createCommentVNode as F } from "vue";
5
+ import { _ as H } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
6
+ const I = [
8
7
  // Layout
9
8
  "layout-row",
10
9
  // Spacing
11
10
  "md:gap-sm"
12
- ], U = [
11
+ ], M = [
13
12
  // Layout
14
13
  "layout-inline-row justify-center",
15
14
  // Interactivity
@@ -54,25 +53,15 @@ const R = [
54
53
  "interactivity-click",
55
54
  // Interactivity (read-only)
56
55
  "read-only:interactivity-none"
57
- ], G = [
56
+ ], R = [
58
57
  // Content (checked / children)
59
58
  "after:checked:content-checkbox-checked",
60
59
  // Content (indeterminate / children)
61
60
  "after:indeterminate:content-checkbox-indeterminate"
62
- ], J = [
63
- // Layout
64
- "layout-inline-row justify-center",
65
- // Shape
66
- "rounded-sm",
67
- // Box
68
- "w-md+ md:w-md",
69
- "h-md+ md:h-md",
70
- "m-[10px] md:m-none"
71
- ], K = N({
61
+ ], U = S({
72
62
  name: "OrCheckbox",
73
63
  components: {
74
- OrLabel: q,
75
- OrLoader: E
64
+ OrLabel: B
76
65
  },
77
66
  model: {
78
67
  prop: "modelValue",
@@ -93,16 +82,12 @@ const R = [
93
82
  },
94
83
  labelVariant: {
95
84
  type: String,
96
- default: () => A.Toggle
85
+ default: () => O.Toggle
97
86
  },
98
87
  indeterminate: {
99
88
  type: Boolean,
100
89
  default: !1
101
90
  },
102
- loading: {
103
- type: Boolean,
104
- default: !1
105
- },
106
91
  required: {
107
92
  type: Boolean,
108
93
  default: !1
@@ -129,75 +114,59 @@ const R = [
129
114
  "blur"
130
115
  ],
131
116
  setup(e, o) {
132
- const s = j({
133
- id: V(),
134
- ...$()
135
- }), m = y(), c = d(() => [
117
+ const l = q({
118
+ id: g(),
119
+ ...C()
120
+ }), i = k(), u = d(() => [
136
121
  "or-checkbox-v3",
122
+ ...I
123
+ ]), a = k(), n = d(() => [
124
+ ...M,
137
125
  ...R
138
- ]), a = y(), l = d(() => [
139
- ...U,
140
- ...G
141
- ]), i = d(() => [
142
- ...J
143
- ]), r = B(z(e, "modelValue"), o.emit), k = d(() => {
144
- if (f(r.value)) {
145
- if (b(e.value))
126
+ ]), r = V(L(e, "modelValue"), o.emit), s = d(() => {
127
+ if (m(r.value)) {
128
+ if (c(e.value))
146
129
  throw new Error("[OrCheckbox]: `value` must be specified.");
147
130
  return r.value.includes(e.value);
148
131
  }
149
132
  return !!r.value;
150
133
  });
151
- function C() {
152
- if (f(r.value)) {
153
- if (b(e.value))
134
+ function y() {
135
+ if (m(r.value)) {
136
+ if (c(e.value))
154
137
  throw new Error("[OrCheckbox]: `value` must be specified.");
155
- k.value ? r.value = L(e.value, r.value) : r.value = S(e.value, r.value);
138
+ s.value ? r.value = w(e.value, r.value) : r.value = $(e.value, r.value);
156
139
  } else
157
140
  r.value = !r.value;
158
141
  }
159
- function O() {
142
+ function p() {
160
143
  var t;
161
144
  (t = a.value) == null || t.focus();
162
145
  }
163
- function w() {
146
+ function v() {
164
147
  var t;
165
148
  (t = a.value) == null || t.blur();
166
149
  }
167
150
  return {
168
- attributes: s,
169
- root: m,
170
- rootStyles: c,
151
+ attributes: l,
152
+ root: i,
153
+ rootStyles: u,
171
154
  control: a,
172
- controlStyles: l,
173
- loaderStyles: i,
174
- checked: k,
175
- onChange: C,
176
- focus: O,
177
- blur: w
155
+ controlStyles: n,
156
+ checked: s,
157
+ onChange: y,
158
+ focus: p,
159
+ blur: v
178
160
  };
179
161
  }
180
- }), Q = ["checked", ".indeterminate", "required", "disabled", "readonly"];
181
- function W(e, o, s, m, c, a) {
182
- const l = h("OrLoader"), i = h("OrLabel");
183
- return n(), u("div", {
162
+ }), G = ["checked", ".indeterminate", "required", "disabled", "readonly"];
163
+ function J(e, o, l, i, u, a) {
164
+ const n = E("OrLabel");
165
+ return b(), A("div", {
184
166
  ref: "root",
185
- class: p(e.rootStyles)
167
+ class: N(e.rootStyles)
186
168
  }, [
187
- e.loading ? (n(), u("div", {
188
- key: 1,
189
- class: p(e.loaderStyles),
190
- "aria-busy": "true"
191
- }, [
192
- T(l, {
193
- variant: "circular",
194
- color: "primary",
195
- size: "s"
196
- })
197
- ], 2)) : (n(), u("input", P({
198
- key: 0,
199
- ref: "control"
200
- }, e.attributes, {
169
+ P("input", T({ ref: "control" }, e.attributes, {
201
170
  class: e.controlStyles,
202
171
  type: "checkbox",
203
172
  checked: e.checked,
@@ -211,9 +180,9 @@ function W(e, o, s, m, c, a) {
211
180
  onClick: o[1] || (o[1] = (r) => e.$emit("click", r)),
212
181
  onFocus: o[2] || (o[2] = (r) => e.$emit("focus", r)),
213
182
  onBlur: o[3] || (o[3] = (r) => e.$emit("blur", r))
214
- }), null, 16, Q)),
215
- e.$slots.default || e.label ? (n(), D(i, {
216
- key: 2,
183
+ }), null, 16, G),
184
+ e.$slots.default || e.label ? (b(), j(n, {
185
+ key: 0,
217
186
  "control-id": e.attributes.id,
218
187
  variant: e.labelVariant,
219
188
  selected: e.checked,
@@ -221,20 +190,20 @@ function W(e, o, s, m, c, a) {
221
190
  disabled: e.disabled,
222
191
  readonly: e.readonly
223
192
  }, {
224
- addon: v(() => [
225
- g(e.$slots, "addon")
193
+ addon: f(() => [
194
+ h(e.$slots, "addon")
226
195
  ]),
227
- default: v(() => [
228
- g(e.$slots, "default", {}, () => [
229
- F(H(e.label), 1)
196
+ default: f(() => [
197
+ h(e.$slots, "default", {}, () => [
198
+ z(D(e.label), 1)
230
199
  ])
231
200
  ]),
232
201
  _: 3
233
- }, 8, ["control-id", "variant", "selected", "required", "disabled", "readonly"])) : I("", !0)
202
+ }, 8, ["control-id", "variant", "selected", "required", "disabled", "readonly"])) : F("", !0)
234
203
  ], 2);
235
204
  }
236
- const re = /* @__PURE__ */ M(K, [["render", W]]);
205
+ const Z = /* @__PURE__ */ H(U, [["render", J]]);
237
206
  export {
238
- re as O
207
+ Z as O
239
208
  };
240
- //# sourceMappingURL=OrCheckbox-B_121oYu.mjs.map
209
+ //# sourceMappingURL=OrCheckbox-WPBzlvaV.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrCheckbox-WPBzlvaV.mjs","sources":["../../../components/or-checkbox-v3/src/styles.ts","../../../components/or-checkbox-v3/src/OrCheckbox.vue"],"sourcesContent":["export const Checkbox: string[] = [\n // Layout\n 'layout-row',\n\n // Spacing\n 'md:gap-sm',\n];\n\nexport const CheckboxControl: string[] = [\n // Layout\n 'layout-inline-row justify-center',\n\n // Interactivity\n 'interactivity-click',\n\n // Shape\n 'rounded-sm leading-[0]',\n\n // Box\n 'w-md+ md:w-md',\n 'h-md+ md:h-md',\n\n 'm-[10px] md:m-none',\n\n // Iconography\n 'iconography-outlined',\n\n // Theme\n 'appearance-none',\n\n 'theme-preset-3-primary',\n 'dark:theme-preset-3-primary-dark',\n\n 'theme-background-default',\n 'dark:theme-background-default-dark',\n\n 'theme-border-outline border-1',\n 'dark:theme-border-outline-dark',\n\n // Theme (focus)\n 'focus-visible:theme-outline-primary focus-visible:outline-2',\n 'dark:focus-visible:theme-outline-primary-dark',\n\n // Theme (checked)\n 'checked:theme-preset-1-primary',\n 'dark:checked:theme-preset-1-primary-dark',\n\n // Theme (indeterminate)\n 'indeterminate:theme-preset-1-primary',\n 'dark:indeterminate:theme-preset-1-primary-dark',\n\n // Theme (read-only)\n 'read-only:theme-border-outline',\n 'read-only:dark:theme-border-outline-dark',\n\n 'checked:read-only:theme-background-base',\n 'checked:read-only:dark:theme-background-base-dark',\n\n 'checked:read-only:theme-foreground-outline',\n 'checked:read-only:dark:theme-foreground-outline-dark',\n\n 'indeterminate:read-only:theme-background-base',\n 'indeterminate:read-only:dark:theme-background-base-dark',\n\n 'indeterminate:read-only:theme-foreground-outline',\n 'indeterminate:read-only:dark:theme-foreground-outline-dark',\n\n // Interactivity\n 'interactivity-click',\n\n // Interactivity (read-only)\n 'read-only:interactivity-none',\n];\n\nexport const CheckboxControlHandle: string[] = [\n // Content (checked / children)\n 'after:checked:content-checkbox-checked',\n\n // Content (indeterminate / children)\n 'after:indeterminate:content-checkbox-indeterminate',\n];\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <input\n :ref=\"'control'\"\n v-bind=\"attributes\"\n :class=\"controlStyles\"\n :type=\"'checkbox'\"\n :checked=\"checked\"\n :indeterminate.prop=\"indeterminate\"\n :required=\"required\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @change=\"$emit('change', $event); onChange()\"\n @click=\"$emit('click', $event)\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n >\n\n <template v-if=\"$slots.default || label\">\n <OrLabel\n :control-id=\"attributes.id\"\n :variant=\"labelVariant\"\n :selected=\"checked\"\n :required=\"required\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n >\n <slot>{{ label }}</slot>\n\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n </OrLabel>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useControlAttributes, useIdAttribute, useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { exclude, include, isArray, isUndefined } from '@onereach/ui-components-common/utils';\nimport { LabelVariant, OrLabelV3 as OrLabel } from '@onereach/ui-components.or-label-v3';\nimport { PropType, computed, defineComponent, reactive, ref, toRef } from 'vue';\n\nimport * as Styles from './styles';\nimport { CheckboxModelValue, CheckboxValue } from './types';\n\nexport default defineComponent({\n name: 'OrCheckbox',\n\n components: {\n OrLabel,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: undefined as unknown as PropType<CheckboxModelValue>,\n default: undefined,\n },\n\n value: {\n type: undefined as unknown as PropType<CheckboxValue>,\n default: undefined,\n },\n\n label: {\n type: String,\n default: undefined,\n },\n\n labelVariant: {\n type: String as PropType<`${LabelVariant}`>,\n default: () => LabelVariant.Toggle,\n },\n\n indeterminate: {\n type: Boolean,\n default: false,\n },\n\n required: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n },\n\n emits: [\n 'update:modelValue',\n\n 'change',\n 'click',\n 'focus',\n 'blur',\n ],\n\n expose: [\n 'root',\n\n 'focus',\n 'blur',\n ],\n\n setup(props, context) {\n const attributes = reactive({\n id: useIdAttribute(),\n ...useControlAttributes(),\n });\n\n // Refs & Styles\n const root = ref<HTMLElement>();\n\n const rootStyles = computed(() => [\n 'or-checkbox-v3',\n ...Styles.Checkbox,\n ]);\n\n const control = ref<HTMLElement>();\n\n const controlStyles = computed(() => [\n ...Styles.CheckboxControl,\n ...Styles.CheckboxControlHandle,\n ]);\n\n // State\n const model = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n\n const checked = computed(() => {\n if (isArray(model.value)) {\n if (isUndefined(props.value)) {\n throw new Error('[OrCheckbox]: `value` must be specified.');\n }\n\n return model.value.includes(props.value);\n }\n\n return Boolean(model.value);\n });\n\n // Handlers\n function onChange(): void {\n if (isArray(model.value)) {\n if (isUndefined(props.value)) {\n throw new Error('[OrCheckbox]: `value` must be specified.');\n }\n\n if (!checked.value) {\n model.value = include(props.value, model.value);\n } else {\n model.value = exclude(props.value, model.value);\n }\n } else {\n model.value = !model.value;\n }\n }\n\n // Methods\n function focus(): void {\n control.value?.focus();\n }\n\n function blur(): void {\n control.value?.blur();\n }\n\n return {\n attributes,\n\n root,\n rootStyles,\n\n control,\n controlStyles,\n\n checked,\n\n onChange,\n\n focus,\n blur,\n };\n },\n});\n</script>\n"],"names":["Checkbox","CheckboxControl","CheckboxControlHandle","_sfc_main","defineComponent","OrLabel","LabelVariant","props","context","attributes","reactive","useIdAttribute","useControlAttributes","root","ref","rootStyles","computed","Styles.Checkbox","control","controlStyles","Styles.CheckboxControl","Styles.CheckboxControlHandle","model","useProxyModelValue","toRef","checked","isArray","isUndefined","onChange","exclude","include","focus","_a","blur","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_createElementVNode","_mergeProps","_cache","$event","_hoisted_1","_createBlock","_component_OrLabel","_renderSlot"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { useProxyModelValue as f, useResponsive as b } from "@onereach/ui-components-common/hooks";
2
- import { O as y } from "./OrCheckboxTree-Com4vL18.mjs";
2
+ import { O as y } from "./OrCheckboxTree-D5Ejbly0.mjs";
3
3
  import { O as g, F as O, a as t } from "./OrFormGroup-CUNdt7UL.mjs";
4
4
  import { defineComponent as V, toRef as S, computed as h, resolveComponent as p, openBlock as l, createBlock as i, withCtx as s, renderSlot as k, createElementBlock as C, Fragment as F, renderList as G } from "vue";
5
5
  import { _ as M } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
@@ -91,4 +91,4 @@ const R = /* @__PURE__ */ M(v, [["render", B]]);
91
91
  export {
92
92
  R as O
93
93
  };
94
- //# sourceMappingURL=OrCheckboxGroup-Db0mdVfM.mjs.map
94
+ //# sourceMappingURL=OrCheckboxGroup-C76zxQ10.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrCheckboxGroup-Db0mdVfM.mjs","sources":["../../../components/or-checkbox-group-v3/src/OrCheckboxGroup.vue"],"sourcesContent":["<template>\n <OrFormGroup\n :label=\"label\"\n :error=\"error\"\n :hint=\"hint\"\n :disabled=\"disabled\"\n :direction=\"direction\"\n :spacing=\"localSpacing\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n <OrCheckboxTree\n v-for=\"option in options\"\n :key=\"option.value\"\n v-model=\"proxyModelValue\"\n :item=\"option\"\n :disabled=\"disabled || option.disabled\"\n :readonly=\"readonly || option.readonly\"\n :collapsible=\"option.collapsible\"\n :expanded=\"option.expanded\"\n />\n </OrFormGroup>\n</template>\n\n<script lang=\"ts\">\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { CheckboxTreeNode, OrCheckboxTreeV3 as OrCheckboxTree } from '@onereach/ui-components.or-checkbox-tree-v3';\nimport { FormGroupDirection, OrFormGroupV3 as OrFormGroup, FormGroupSpacing } from '@onereach/ui-components.or-form-group-v3';\nimport { defineComponent, PropType, toRef, computed } from 'vue';\n\n\nexport default defineComponent({\n name: 'OrCheckboxGroup',\n components: {\n OrCheckboxTree,\n OrFormGroup,\n },\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n label: {\n type: String,\n default: '',\n },\n\n error: {\n type: String,\n default: '',\n },\n\n hint: {\n type: String,\n default: '',\n },\n\n direction: {\n type: String as PropType<`${FormGroupDirection}`>,\n default: () => FormGroupDirection.Vertical,\n },\n\n options: {\n type: Array as PropType<CheckboxTreeNode[]>,\n default: () => [],\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n spacing: {\n type: String as PropType<`${FormGroupSpacing}`>,\n default: FormGroupSpacing.SM,\n },\n },\n\n setup(props, context) {\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const { isMobile } = useResponsive();\n\n const localSpacing = computed(() => isMobile.value ? FormGroupSpacing.NONE : props.spacing);\n\n return {\n proxyModelValue,\n localSpacing,\n };\n },\n});\n\n</script>\n"],"names":["_sfc_main","defineComponent","OrCheckboxTree","OrFormGroup","FormGroupDirection","FormGroupSpacing","props","context","proxyModelValue","useProxyModelValue","toRef","isMobile","useResponsive","localSpacing","computed","_resolveComponent","_openBlock","_createBlock","_component_OrFormGroup","_ctx","_renderSlot","_createElementBlock","_Fragment","_renderList","option","_component_OrCheckboxTree","_cache","$event"],"mappings":";;;;;AAgCA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,gBAAAC;AAAA,IACA,aAAAC;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EACA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAMC,EAAmB;AAAA,IACpC;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAASC,EAAiB;AAAA,IAC5B;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AACpB,UAAMC,IAAkBC,EAAmBC,EAAMJ,GAAO,YAAY,GAAGC,EAAQ,IAAI,GAC7E,EAAE,UAAAI,MAAaC,KAEfC,IAAeC,EAAS,MAAMH,EAAS,QAAQN,EAAiB,OAAOC,EAAM,OAAO;AAEnF,WAAA;AAAA,MACL,iBAAAE;AAAA,MACA,cAAAK;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;qCAnGCE,EAqBc,aAAA;SAnBNC,EAAO,GAAAC,EAAAC,GAAA;AAAA,IACZ,OAAMC,EAAA;AAAA,IACN,OAAUA,EAAA;AAAA,IACV,MAAWA,EAAA;AAAA,IACX,UAASA,EAAA;AAAA,IAAA,WAAAA,EAAA;AAAA,IAEO,SAAKA,EAAA;AAAA,EAAA,GAAA;AAAA;MAIKC,EAAAD,EAAA,QAAA,OAAA;AAAA,IAAA,CAAA;AAAA;OACnBH,EAAA,EAAO,GAAKK,EAAAC,GAAA,MAAAC,EAAAJ,EAAA,SAAA,CAAAK,YACMP,EAAAQ,GAAA;AAAA,QAAA,KAAAD,EAAA;AAAA,QACvB,YAAYL,EAAA;AAAA,QACZ,uBAAkBO,EAAI,CAAA,MAAOA,EAAQ,CAAA,IAAA,CAAAC,MAAAR,EAAA,kBAAAQ;AAAA,QACrC,MAAAH;AAAA,QACA,UAAAL,EAAa,YAAOK,EAAW;AAAA,QAC/B,UAAUL,EAAe,YAAAK,EAAA;AAAA,QAAA,aAAAA,EAAA;AAAA;;;;;;;"}
1
+ {"version":3,"file":"OrCheckboxGroup-C76zxQ10.mjs","sources":["../../../components/or-checkbox-group-v3/src/OrCheckboxGroup.vue"],"sourcesContent":["<template>\n <OrFormGroup\n :label=\"label\"\n :error=\"error\"\n :hint=\"hint\"\n :disabled=\"disabled\"\n :direction=\"direction\"\n :spacing=\"localSpacing\"\n >\n <template v-slot:addon>\n <slot name=\"addon\" />\n </template>\n <OrCheckboxTree\n v-for=\"option in options\"\n :key=\"option.value\"\n v-model=\"proxyModelValue\"\n :item=\"option\"\n :disabled=\"disabled || option.disabled\"\n :readonly=\"readonly || option.readonly\"\n :collapsible=\"option.collapsible\"\n :expanded=\"option.expanded\"\n />\n </OrFormGroup>\n</template>\n\n<script lang=\"ts\">\nimport { useProxyModelValue, useResponsive } from '@onereach/ui-components-common/hooks';\nimport { CheckboxTreeNode, OrCheckboxTreeV3 as OrCheckboxTree } from '@onereach/ui-components.or-checkbox-tree-v3';\nimport { FormGroupDirection, OrFormGroupV3 as OrFormGroup, FormGroupSpacing } from '@onereach/ui-components.or-form-group-v3';\nimport { defineComponent, PropType, toRef, computed } from 'vue';\n\n\nexport default defineComponent({\n name: 'OrCheckboxGroup',\n components: {\n OrCheckboxTree,\n OrFormGroup,\n },\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n label: {\n type: String,\n default: '',\n },\n\n error: {\n type: String,\n default: '',\n },\n\n hint: {\n type: String,\n default: '',\n },\n\n direction: {\n type: String as PropType<`${FormGroupDirection}`>,\n default: () => FormGroupDirection.Vertical,\n },\n\n options: {\n type: Array as PropType<CheckboxTreeNode[]>,\n default: () => [],\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n spacing: {\n type: String as PropType<`${FormGroupSpacing}`>,\n default: FormGroupSpacing.SM,\n },\n },\n\n setup(props, context) {\n const proxyModelValue = useProxyModelValue(toRef(props, 'modelValue'), context.emit);\n const { isMobile } = useResponsive();\n\n const localSpacing = computed(() => isMobile.value ? FormGroupSpacing.NONE : props.spacing);\n\n return {\n proxyModelValue,\n localSpacing,\n };\n },\n});\n\n</script>\n"],"names":["_sfc_main","defineComponent","OrCheckboxTree","OrFormGroup","FormGroupDirection","FormGroupSpacing","props","context","proxyModelValue","useProxyModelValue","toRef","isMobile","useResponsive","localSpacing","computed","_resolveComponent","_openBlock","_createBlock","_component_OrFormGroup","_ctx","_renderSlot","_createElementBlock","_Fragment","_renderList","option","_component_OrCheckboxTree","_cache","$event"],"mappings":";;;;;AAgCA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,gBAAAC;AAAA,IACA,aAAAC;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO;AAAA,EACT;AAAA,EACA,OAAO;AAAA,IACL,YAAY;AAAA,MACV,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,SAAS,MAAMC,EAAmB;AAAA,IACpC;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAAS,MAAM,CAAC;AAAA,IAClB;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IAEA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,SAASC,EAAiB;AAAA,IAC5B;AAAA,EACF;AAAA,EAEA,MAAMC,GAAOC,GAAS;AACpB,UAAMC,IAAkBC,EAAmBC,EAAMJ,GAAO,YAAY,GAAGC,EAAQ,IAAI,GAC7E,EAAE,UAAAI,MAAaC,KAEfC,IAAeC,EAAS,MAAMH,EAAS,QAAQN,EAAiB,OAAOC,EAAM,OAAO;AAEnF,WAAA;AAAA,MACL,iBAAAE;AAAA,MACA,cAAAK;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;;qCAnGCE,EAqBc,aAAA;SAnBNC,EAAO,GAAAC,EAAAC,GAAA;AAAA,IACZ,OAAMC,EAAA;AAAA,IACN,OAAUA,EAAA;AAAA,IACV,MAAWA,EAAA;AAAA,IACX,UAASA,EAAA;AAAA,IAAA,WAAAA,EAAA;AAAA,IAEO,SAAKA,EAAA;AAAA,EAAA,GAAA;AAAA;MAIKC,EAAAD,EAAA,QAAA,OAAA;AAAA,IAAA,CAAA;AAAA;OACnBH,EAAA,EAAO,GAAKK,EAAAC,GAAA,MAAAC,EAAAJ,EAAA,SAAA,CAAAK,YACMP,EAAAQ,GAAA;AAAA,QAAA,KAAAD,EAAA;AAAA,QACvB,YAAYL,EAAA;AAAA,QACZ,uBAAkBO,EAAI,CAAA,MAAOA,EAAQ,CAAA,IAAA,CAAAC,MAAAR,EAAA,kBAAAQ;AAAA,QACrC,MAAAH;AAAA,QACA,UAAAL,EAAa,YAAOK,EAAW;AAAA,QAC/B,UAAUL,EAAe,YAAAK,EAAA;AAAA,QAAA,aAAAA,EAAA;AAAA;;;;;;;"}
@@ -0,0 +1,197 @@
1
+ import { useProxyModelValue as A } from "@onereach/ui-components-common/hooks";
2
+ import { O as N } from "./OrButton-ZxDr22t7.mjs";
3
+ import { O as x } from "./OrCheckbox-WPBzlvaV.mjs";
4
+ import { O as R } from "./OrIcon-k8cyvh-D.mjs";
5
+ import { useToggle as z } from "@vueuse/core";
6
+ import { defineComponent as D, toRefs as E, computed as t, watch as U, resolveComponent as b, openBlock as d, createElementBlock as c, normalizeClass as u, Fragment as T, createElementVNode as j, createBlock as C, withCtx as f, createVNode as $, createCommentVNode as I, renderSlot as O, createTextVNode as V, toDisplayString as h, renderList as q } from "vue";
7
+ import { flattenDeep as F } from "@onereach/ui-components-common/utils";
8
+ import { _ as G } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
9
+ const H = [
10
+ // Layout
11
+ "flex",
12
+ "flex-col",
13
+ // Spacing
14
+ "md:gap-sm"
15
+ ], J = [
16
+ // Layout
17
+ "flex",
18
+ "flex-row",
19
+ "gap-xs"
20
+ ], w = (e) => e == null ? void 0 : e.map((o) => {
21
+ if (!o.disabled)
22
+ return o.children ? w(o.children) : o.value;
23
+ });
24
+ function K(e) {
25
+ return F(w(e)).filter(Boolean);
26
+ }
27
+ const Q = D({
28
+ name: "OrCheckboxTree",
29
+ components: {
30
+ OrIcon: R,
31
+ OrCheckbox: x,
32
+ OrButton: N
33
+ },
34
+ model: {
35
+ prop: "modelValue",
36
+ event: "update:modelValue"
37
+ },
38
+ props: {
39
+ modelValue: {
40
+ type: Array,
41
+ default: () => []
42
+ },
43
+ item: {
44
+ type: Object,
45
+ required: !0
46
+ },
47
+ collapsible: {
48
+ type: Boolean,
49
+ default: !1
50
+ },
51
+ disabled: {
52
+ type: Boolean,
53
+ default: !1
54
+ },
55
+ readonly: {
56
+ type: Boolean,
57
+ default: !1
58
+ },
59
+ expanded: {
60
+ type: Boolean,
61
+ default: !0
62
+ }
63
+ },
64
+ emits: [
65
+ "update:modelValue"
66
+ ],
67
+ setup(e, o) {
68
+ const { modelValue: g, item: B, expanded: v } = E(e), y = t(() => B.value.children || []), m = t(() => y.value.length > 0), n = t(() => m.value ? K(y.value) : []), a = A(g, o.emit), p = t(() => {
69
+ var r;
70
+ return (r = a.value) == null ? void 0 : r.some((k) => {
71
+ var i;
72
+ return (i = n.value) == null ? void 0 : i.includes(k);
73
+ });
74
+ }), l = t(() => {
75
+ var r;
76
+ return n.value.length > 0 && ((r = n.value) == null ? void 0 : r.every((k) => {
77
+ var i;
78
+ return (i = a.value) == null ? void 0 : i.includes(k);
79
+ }));
80
+ }), s = t(() => p.value && !l.value), [M, S] = z(v.value);
81
+ U(v, (r) => {
82
+ r !== void 0 && S(r);
83
+ });
84
+ const L = t(() => [
85
+ "or-checkbox-tree-v3",
86
+ ...H
87
+ ]), P = t(() => [
88
+ ...J
89
+ ]);
90
+ return {
91
+ rootStyles: L,
92
+ parentStyles: P,
93
+ hasChildren: m,
94
+ proxyModelValue: a,
95
+ isOpen: M,
96
+ setIsOpen: S,
97
+ isIntermediate: s,
98
+ isAllChildrenSelected: l,
99
+ isAnyChildrenSelected: p,
100
+ childrenValues: n,
101
+ handleParentClick: () => {
102
+ l.value ? a.value = a.value.filter((r) => !n.value.includes(r)) : a.value = [
103
+ .../* @__PURE__ */ new Set([
104
+ ...a.value,
105
+ ...n.value
106
+ ])
107
+ ];
108
+ }
109
+ };
110
+ }
111
+ });
112
+ function W(e, o, g, B, v, y) {
113
+ const m = b("OrIcon"), n = b("OrButton"), a = b("OrCheckbox"), p = b("OrCheckboxTree", !0);
114
+ return d(), c("div", {
115
+ ref: "root",
116
+ class: u(e.rootStyles)
117
+ }, [
118
+ e.hasChildren ? (d(), c(T, { key: 0 }, [
119
+ j("div", {
120
+ class: u(e.parentStyles)
121
+ }, [
122
+ e.collapsible ? (d(), C(n, {
123
+ key: 0,
124
+ variant: "link",
125
+ disabled: e.disabled,
126
+ onClick: o[0] || (o[0] = (l) => e.setIsOpen(!e.isOpen))
127
+ }, {
128
+ default: f(() => [
129
+ $(m, {
130
+ class: u([e.isOpen ? "rotate-[180deg]" : "rotate-0"]),
131
+ icon: "arrow_drop_down",
132
+ size: "l"
133
+ }, null, 8, ["class"])
134
+ ]),
135
+ _: 1
136
+ }, 8, ["disabled"])) : I("", !0),
137
+ $(a, {
138
+ "model-value": e.isAllChildrenSelected,
139
+ value: !0,
140
+ indeterminate: e.isIntermediate,
141
+ disabled: e.disabled,
142
+ readonly: e.readonly,
143
+ onClick: e.handleParentClick
144
+ }, {
145
+ default: f(() => [
146
+ O(e.$slots, "checkboxLabel", { item: e.item }, () => [
147
+ V(h(e.item.label), 1)
148
+ ])
149
+ ]),
150
+ _: 3
151
+ }, 8, ["model-value", "indeterminate", "disabled", "readonly", "onClick"])
152
+ ], 2),
153
+ e.hasChildren && e.isOpen ? (d(), c("div", {
154
+ key: 0,
155
+ class: u([e.collapsible ? "ml-2xl" : "ml-lg"])
156
+ }, [
157
+ (d(!0), c(T, null, q(e.item.children, (l) => (d(), C(p, {
158
+ key: l.value || l.label,
159
+ modelValue: e.proxyModelValue,
160
+ "onUpdate:modelValue": o[1] || (o[1] = (s) => e.proxyModelValue = s),
161
+ class: u(["mt-xs"]),
162
+ item: l,
163
+ collapsible: l.collapsible,
164
+ expanded: l.expanded,
165
+ disabled: e.disabled || l.disabled,
166
+ readonly: e.readonly || l.readonly
167
+ }, {
168
+ checkboxLabel: f(({ item: s }) => [
169
+ O(e.$slots, "checkboxLabel", { item: s }, () => [
170
+ V(h(s.label), 1)
171
+ ])
172
+ ]),
173
+ _: 2
174
+ }, 1032, ["modelValue", "item", "collapsible", "expanded", "disabled", "readonly"]))), 128))
175
+ ], 2)) : I("", !0)
176
+ ], 64)) : (d(), C(a, {
177
+ key: 1,
178
+ modelValue: e.proxyModelValue,
179
+ "onUpdate:modelValue": o[2] || (o[2] = (l) => e.proxyModelValue = l),
180
+ value: e.item.value,
181
+ disabled: e.disabled || e.item.disabled,
182
+ readonly: e.readonly || e.item.readonly
183
+ }, {
184
+ default: f(() => [
185
+ O(e.$slots, "checkboxLabel", { item: e.item }, () => [
186
+ V(h(e.item.label), 1)
187
+ ])
188
+ ]),
189
+ _: 3
190
+ }, 8, ["modelValue", "value", "disabled", "readonly"]))
191
+ ], 2);
192
+ }
193
+ const ne = /* @__PURE__ */ G(Q, [["render", W]]);
194
+ export {
195
+ ne as O
196
+ };
197
+ //# sourceMappingURL=OrCheckboxTree-D5Ejbly0.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrCheckboxTree-D5Ejbly0.mjs","sources":["../../../components/or-checkbox-tree-v3/src/styles.ts","../../../components/or-checkbox-tree-v3/src/utils/extractChildrenValues.ts","../../../components/or-checkbox-tree-v3/src/OrCheckboxTree.vue"],"sourcesContent":["export const CheckboxTreeRoot: string[] = [\n // Layout\n 'flex',\n 'flex-col',\n\n // Spacing\n 'md:gap-sm',\n];\n\nexport const CheckboxTreeRootParent: string[] = [\n // Layout\n 'flex',\n 'flex-row',\n 'gap-xs',\n];\n","import { flattenDeep } from '@onereach/ui-components-common/utils';\n\nimport { CheckboxTreeNode } from '../types';\n\nconst getChildValues = (children?: CheckboxTreeNode[]): any[] | undefined => {\n return children?.map((child) => {\n if (child.disabled) {\n return undefined;\n }\n if (child.children) {\n return getChildValues(child.children);\n } else {\n return child.value;\n }\n });\n};\nexport function extractChildrenValues(children: CheckboxTreeNode[]): any[] {\n return flattenDeep(getChildValues(children)).filter(Boolean);\n}\n\n","<template>\n <div\n :ref=\"'root'\"\n :class=\"rootStyles\"\n >\n <template v-if=\"hasChildren\">\n <div :class=\"parentStyles\">\n <template v-if=\"collapsible\">\n <OrButton\n :variant=\"'link'\"\n :disabled=\"disabled\"\n @click=\"setIsOpen(!isOpen)\"\n >\n <OrIcon\n :class=\"[isOpen ? 'rotate-[180deg]': 'rotate-0']\"\n :icon=\"'arrow_drop_down'\"\n :size=\"'l'\"\n />\n </OrButton>\n </template>\n\n <OrCheckbox\n :model-value=\"isAllChildrenSelected\"\n :value=\"true\"\n :indeterminate=\"isIntermediate\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n @click=\"handleParentClick\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </div>\n\n <div\n v-if=\"hasChildren && isOpen\"\n :class=\"[collapsible ? 'ml-2xl' : 'ml-lg']\"\n >\n <OrCheckboxTree\n v-for=\"child in item.children\"\n :key=\"child.value || child.label\"\n v-model=\"proxyModelValue\"\n :class=\"['mt-xs']\"\n :item=\"child\"\n :collapsible=\"child.collapsible\"\n :expanded=\"child.expanded\"\n :disabled=\"disabled || child.disabled\"\n :readonly=\"readonly || child.readonly\"\n >\n <template v-slot:checkboxLabel=\"{ item }\">\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </template>\n </OrCheckboxTree>\n </div>\n </template>\n\n <template v-else>\n <OrCheckbox\n v-model=\"proxyModelValue\"\n :value=\"item.value\"\n :disabled=\"disabled || item.disabled\"\n :readonly=\"readonly || item.readonly\"\n >\n <slot\n name=\"checkboxLabel\"\n :item=\"item\"\n >\n {{ item.label }}\n </slot>\n </OrCheckbox>\n </template>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { useProxyModelValue } from '@onereach/ui-components-common/hooks';\nimport { OrButtonV3 as OrButton } from '@onereach/ui-components.or-button-v3';\nimport { OrCheckboxV3 as OrCheckbox } from '@onereach/ui-components.or-checkbox-v3';\nimport { OrIconV3 as OrIcon } from '@onereach/ui-components.or-icon-v3';\nimport { useToggle } from '@vueuse/core';\nimport { PropType, computed, defineComponent, toRefs, watch } from 'vue';\n\nimport { CheckboxTreeRoot, CheckboxTreeRootParent } from './styles';\nimport { CheckboxTreeNode } from './types';\nimport { extractChildrenValues } from './utils/extractChildrenValues';\n\nexport default defineComponent({\n name: 'OrCheckboxTree',\n\n components: {\n OrIcon,\n OrCheckbox,\n OrButton,\n },\n\n model: {\n prop: 'modelValue',\n event: 'update:modelValue',\n },\n\n props: {\n modelValue: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n\n item: {\n type: Object as PropType<CheckboxTreeNode>,\n required: true,\n },\n\n collapsible: {\n type: Boolean,\n default: false,\n },\n\n disabled: {\n type: Boolean,\n default: false,\n },\n\n readonly: {\n type: Boolean,\n default: false,\n },\n\n expanded: {\n type: Boolean,\n default: true,\n },\n },\n\n emits: [\n 'update:modelValue',\n ],\n\n setup(props, context) {\n // State\n const { modelValue, item, expanded } = toRefs(props);\n const children = computed(() => item.value.children || []);\n const hasChildren = computed(() => children.value.length > 0);\n\n const childrenValues = computed(() => {\n return hasChildren.value ? extractChildrenValues(children.value) : [];\n });\n\n const proxyModelValue = useProxyModelValue(modelValue, context.emit);\n\n const isAnyChildrenSelected = computed(() => {\n return proxyModelValue.value?.some((value: any) => childrenValues.value?.includes(value));\n });\n\n const isAllChildrenSelected = computed(() => {\n return childrenValues.value.length > 0 && childrenValues.value?.every((value) => proxyModelValue.value?.includes(value));\n });\n\n const isIntermediate = computed(() => {\n return isAnyChildrenSelected.value && !isAllChildrenSelected.value;\n });\n\n const [isOpen, setIsOpen] = useToggle(expanded.value);\n\n watch(expanded, (value) => {\n if (value !== undefined) {\n setIsOpen(value);\n }\n });\n\n // Styles\n const rootStyles = computed(() => [\n 'or-checkbox-tree-v3',\n ...CheckboxTreeRoot,\n ]);\n\n // Styles\n const parentStyles = computed(() => [\n ...CheckboxTreeRootParent,\n ]);\n\n // Methods\n const handleParentClick = () => {\n if (isAllChildrenSelected.value) {\n proxyModelValue.value = proxyModelValue.value.filter((value: any) => !childrenValues.value.includes(value));\n } else {\n proxyModelValue.value = [\n ...new Set([\n ...proxyModelValue.value,\n ...childrenValues.value,\n ]),\n ];\n }\n };\n\n return {\n rootStyles,\n parentStyles,\n hasChildren,\n proxyModelValue,\n isOpen,\n setIsOpen,\n isIntermediate,\n isAllChildrenSelected,\n isAnyChildrenSelected,\n childrenValues,\n handleParentClick,\n };\n },\n});\n</script>\n"],"names":["CheckboxTreeRoot","CheckboxTreeRootParent","getChildValues","children","child","extractChildrenValues","flattenDeep","_sfc_main","defineComponent","OrIcon","OrCheckbox","OrButton","props","context","modelValue","item","expanded","toRefs","computed","hasChildren","childrenValues","proxyModelValue","useProxyModelValue","isAnyChildrenSelected","_a","value","isAllChildrenSelected","isIntermediate","isOpen","setIsOpen","useToggle","watch","rootStyles","parentStyles","_resolveComponent","_openBlock","_createElementBlock","_normalizeClass","_ctx","_Fragment","_createElementVNode","_createBlock","_component_OrButton","_cache","$event","_withCtx","_createVNode","_component_OrIcon","_createCommentVNode","_component_OrCheckbox","_renderList","_component_OrCheckboxTree","_renderSlot"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { flatten as Se } from "@onereach/ui-components-common/helpers";
2
- import { O as fe } from "./OrCheckbox-B_121oYu.mjs";
2
+ import { O as fe } from "./OrCheckbox-WPBzlvaV.mjs";
3
3
  import { O as Ce } from "./OrIconButton-D1pxfMA_.mjs";
4
4
  import { O as Te } from "./OrPagination-DRBRRL2g.mjs";
5
5
  import { O as Ge } from "./OrSearch-Csld1hBq.mjs";
@@ -13,7 +13,7 @@ import "./OrDateTimePicker.vue_vue_type_script_lang-8aFx3wpJ.mjs";
13
13
  import "@onereach/ui-components-common/types";
14
14
  import { O as Pe } from "./OrInput-CzRxZM3i.mjs";
15
15
  import { O as Ne } from "./OrRating-CAwz23JA.mjs";
16
- import { O as Ue } from "./OrSelect-DBhNKmRX.mjs";
16
+ import { O as Ue } from "./OrSelect-2NJLacxt.mjs";
17
17
  import { O as Ae } from "./OrSwitch-BtoXDsZx.mjs";
18
18
  import { O as Le } from "./OrTagInput-DIMSvMNK.mjs";
19
19
  import { O as qe } from "./OrTimePicker-C_pYA5Yn.mjs";
@@ -1944,4 +1944,4 @@ export {
1944
1944
  ca as q,
1945
1945
  ha as r
1946
1946
  };
1947
- //# sourceMappingURL=OrDataGrid-BJiaRanm.mjs.map
1947
+ //# sourceMappingURL=OrDataGrid-DxOxl9Wd.mjs.map