@wikicasa-dev/components 2.2.6 → 2.2.8-alpha.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.
package/dist/index.js CHANGED
@@ -1,88 +1,89 @@
1
- import { default as p } from "./packages/components/lib/UIKit/Accordion/BaseAccordion.vue.js";
2
- import { default as d } from "./packages/components/lib/UIKit/Accordion/BaseAccordionBtn.vue.js";
3
- import { default as x } from "./packages/components/lib/UIKit/Accordion/BaseAccordionContent.vue.js";
4
- import { default as B } from "./packages/components/lib/UIKit/Accordion/BaseAccordionItem.vue.js";
5
- import { default as c } from "./packages/components/lib/UIKit/BaseSelect/SelectItem.vue.js";
6
- import { default as b } from "./UIKit/Checkbox/CheckboxBtn.js";
7
- import { default as C } from "./packages/components/lib/UIKit/Checkbox/CheckboxGroup.vue.js";
8
- import { default as A } from "./packages/components/lib/UIKit/Tab/BaseTabView.vue.js";
9
- import { default as I } from "./packages/components/lib/UIKit/Tab/BaseTab.vue.js";
10
- import { default as L } from "./packages/components/lib/UIKit/Radio/RadioButton.vue.js";
11
- import { default as D } from "./packages/components/lib/UIKit/Radio/RadioGroup.vue.js";
12
- import { default as F } from "./packages/components/lib/UIKit/AccessibleSelect.vue.js";
13
- import { default as M } from "./packages/components/lib/UIKit/BaseAlert.vue.js";
14
- import './assets/BaseSnackbar.css';import './assets/BaseModal.css';import './assets/BaseDropDown.css';import './assets/BaseBadge.css';import './assets/BaseAutocomplete.css';import './assets/BaseAlert.css';/* empty css */
15
- import { default as R } from "./packages/components/lib/UIKit/BaseAutocomplete.vue.js";
1
+ import { default as m } from "./packages/components/lib/UIKit/Accordion/BaseAccordion.vue.js";
2
+ import { default as u } from "./packages/components/lib/UIKit/Accordion/BaseAccordionBtn.vue.js";
3
+ import { default as i } from "./packages/components/lib/UIKit/Accordion/BaseAccordionContent.vue.js";
4
+ import { default as n } from "./packages/components/lib/UIKit/Accordion/BaseAccordionItem.vue.js";
5
+ import './assets/BaseSnackbar.css';import './assets/BaseModal.css';import './assets/BaseDropDown.css';import './assets/BaseBadge.css';import './assets/BaseAutocomplete.css';import './assets/BaseAlert.css';import './assets/BaseAccordionItem.css';/* empty css */
6
+ import { default as S } from "./packages/components/lib/UIKit/BaseSelect/SelectItem.vue.js";
7
+ import { default as g } from "./packages/components/lib/UIKit/Checkbox/CheckboxBtn.vue.js";
8
+ import { default as h } from "./packages/components/lib/UIKit/Checkbox/CheckboxGroup.vue.js";
9
+ import { default as T } from "./packages/components/lib/UIKit/Tab/BaseTabView.vue.js";
10
+ import { default as w } from "./packages/components/lib/UIKit/Tab/BaseTab.vue.js";
11
+ import { default as k } from "./packages/components/lib/UIKit/Radio/RadioButton.vue.js";
12
+ import { default as v } from "./packages/components/lib/UIKit/Radio/RadioGroup.vue.js";
13
+ import { default as G } from "./packages/components/lib/UIKit/AccessibleSelect.vue.js";
14
+ import { default as O } from "./packages/components/lib/UIKit/BaseAlert.vue.js";
15
+ /* empty css */
16
+ import { default as P } from "./packages/components/lib/UIKit/BaseAutocomplete.vue.js";
16
17
  /* empty css */
17
- import { default as U } from "./packages/components/lib/UIKit/BaseBadge.vue.js";
18
+ import { default as V } from "./packages/components/lib/UIKit/BaseBadge.vue.js";
18
19
  /* empty css */
19
- import { default as j } from "./packages/components/lib/UIKit/BaseButton.vue.js";
20
- import { default as y } from "./UIKit/BaseCard.js";
21
- import { default as E } from "./UIKit/BaseComplexToggle.js";
22
- import { default as J } from "./packages/components/lib/UIKit/BaseDropDown.vue.js";
20
+ import { default as q } from "./packages/components/lib/UIKit/BaseButton.vue.js";
21
+ import { default as z } from "./UIKit/BaseCard.js";
22
+ import { default as H } from "./UIKit/BaseComplexToggle.js";
23
+ import { default as K } from "./packages/components/lib/UIKit/BaseDropDown.vue.js";
23
24
  /* empty css */
24
- import { default as N } from "./UIKit/BaseFloatingLabel.js";
25
- import { default as W } from "./UIKit/BaseInput.js";
26
- import { default as Y } from "./packages/components/lib/UIKit/BasePagination.vue.js";
27
- import { default as _ } from "./UIKit/BaseSlider.js";
28
- import { default as ee } from "./UIKit/BaseTextarea.js";
29
- import { default as oe } from "./UIKit/BaseToggle.js";
30
- import { default as re } from "./UIKit/BaseTooltip.js";
31
- import { default as se } from "./packages/components/lib/UIKit/BaseUploadFile.vue.js";
32
- import { default as pe } from "./packages/components/lib/UIKit/BaseModal.vue.js";
25
+ import { default as Q } from "./UIKit/BaseFloatingLabel.js";
26
+ import { default as X } from "./UIKit/BaseInput.js";
27
+ import { default as Z } from "./packages/components/lib/UIKit/BasePagination.vue.js";
28
+ import { default as $ } from "./UIKit/BaseSlider.js";
29
+ import { default as ae } from "./UIKit/BaseTextarea.js";
30
+ import { default as te } from "./UIKit/BaseToggle.js";
31
+ import { default as fe } from "./UIKit/BaseTooltip.js";
32
+ import { default as le } from "./packages/components/lib/UIKit/BaseUploadFile.vue.js";
33
+ import { default as me } from "./packages/components/lib/UIKit/BaseModal.vue.js";
33
34
  /* empty css */
34
- import { default as de } from "./UIKit/StaticSpinner.js";
35
- import { default as xe } from "./UIKit/ShimmerLoader/BaseShimmerLoader.js";
36
- import { default as Be } from "./packages/components/lib/UIKit/ShimmerLoader/ShimmerMultiLine.vue.js";
37
- import { default as ce } from "./packages/components/lib/chart/DoughnutChart.vue.js";
38
- import { default as be } from "./packages/components/lib/chart/LineChart.vue.js";
39
- import { default as Ce } from "./UIKit/Slider/SimpleSlider.js";
40
- import { default as Ae } from "./packages/components/lib/UIKit/BaseSnackbar.vue.js";
35
+ import { default as ue } from "./UIKit/StaticSpinner.js";
36
+ import { default as ie } from "./UIKit/ShimmerLoader/BaseShimmerLoader.js";
37
+ import { default as ne } from "./packages/components/lib/UIKit/ShimmerLoader/ShimmerMultiLine.vue.js";
38
+ import { default as Se } from "./packages/components/lib/chart/DoughnutChart.vue.js";
39
+ import { default as ge } from "./packages/components/lib/chart/LineChart.vue.js";
40
+ import { default as he } from "./UIKit/Slider/SimpleSlider.js";
41
+ import { default as Te } from "./packages/components/lib/UIKit/BaseSnackbar.vue.js";
41
42
  /* empty css */
42
- import { default as Ie } from "./packages/components/lib/components/IntersectionObserver/IntersectionObservable.vue.js";
43
- import { default as Le } from "./packages/components/lib/components/IntersectionObserver/IntersectionObserver.vue.js";
44
- import { default as De } from "./components/carousel/SwiperCarousel.js";
45
- import { default as Fe } from "./components/carousel/SwiperSlide.js";
46
- import { default as Me } from "./packages/components/lib/UIKit/BaseBreadcrumb.vue.js";
43
+ import { default as we } from "./packages/components/lib/components/IntersectionObserver/IntersectionObservable.vue.js";
44
+ import { default as ke } from "./packages/components/lib/components/IntersectionObserver/IntersectionObserver.vue.js";
45
+ import { default as ve } from "./components/carousel/SwiperCarousel.js";
46
+ import { default as Ge } from "./components/carousel/SwiperSlide.js";
47
+ import { default as Oe } from "./packages/components/lib/UIKit/BaseBreadcrumb.vue.js";
47
48
  export {
48
- F as AccessibleSelect,
49
- p as BaseAccordion,
50
- d as BaseAccordionBtn,
51
- x as BaseAccordionContent,
52
- B as BaseAccordionItem,
53
- M as BaseAlert,
54
- R as BaseAutocomplete,
55
- U as BaseBadge,
56
- Me as BaseBreadcrumb,
57
- j as BaseButton,
58
- y as BaseCard,
59
- E as BaseComplexToggle,
60
- J as BaseDropDown,
61
- N as BaseFloatingLabel,
62
- W as BaseInput,
63
- pe as BaseModal,
64
- Y as BasePagination,
65
- xe as BaseShimmerLoader,
66
- _ as BaseSlider,
67
- Ae as BaseSnackbar,
68
- I as BaseTab,
69
- A as BaseTabView,
70
- ee as BaseTextarea,
71
- oe as BaseToggle,
72
- re as BaseTooltip,
73
- se as BaseUploadFile,
74
- b as CheckboxBtn,
75
- C as CheckboxGroup,
76
- ce as DoughnutChart,
77
- Ie as IntersectionObservable,
78
- Le as IntersectionObserver,
79
- be as LineChart,
80
- L as RadioButton,
81
- D as RadioGroup,
82
- c as SelectItem,
83
- Be as ShimmerMultiLine,
84
- Ce as SimpleSlider,
85
- de as StaticSpinner,
86
- De as SwiperCarousel,
87
- Fe as SwiperSlide
49
+ G as AccessibleSelect,
50
+ m as BaseAccordion,
51
+ u as BaseAccordionBtn,
52
+ i as BaseAccordionContent,
53
+ n as BaseAccordionItem,
54
+ O as BaseAlert,
55
+ P as BaseAutocomplete,
56
+ V as BaseBadge,
57
+ Oe as BaseBreadcrumb,
58
+ q as BaseButton,
59
+ z as BaseCard,
60
+ H as BaseComplexToggle,
61
+ K as BaseDropDown,
62
+ Q as BaseFloatingLabel,
63
+ X as BaseInput,
64
+ me as BaseModal,
65
+ Z as BasePagination,
66
+ ie as BaseShimmerLoader,
67
+ $ as BaseSlider,
68
+ Te as BaseSnackbar,
69
+ w as BaseTab,
70
+ T as BaseTabView,
71
+ ae as BaseTextarea,
72
+ te as BaseToggle,
73
+ fe as BaseTooltip,
74
+ le as BaseUploadFile,
75
+ g as CheckboxBtn,
76
+ h as CheckboxGroup,
77
+ Se as DoughnutChart,
78
+ we as IntersectionObservable,
79
+ ke as IntersectionObserver,
80
+ ge as LineChart,
81
+ k as RadioButton,
82
+ v as RadioGroup,
83
+ S as SelectItem,
84
+ ne as ShimmerMultiLine,
85
+ he as SimpleSlider,
86
+ ue as StaticSpinner,
87
+ ve as SwiperCarousel,
88
+ Ge as SwiperSlide
88
89
  };
@@ -1,31 +1,30 @@
1
- import { defineComponent as d, ref as u, provide as c, renderSlot as f } from "vue";
2
- import { isEmptyObject as p } from "@wikicasa-dev/utilities";
3
- const h = /* @__PURE__ */ d({
1
+ import { defineComponent as i, mergeModels as d, useModel as r, provide as u, createBlock as n, openBlock as s, unref as p, withCtx as m, renderSlot as c } from "vue";
2
+ import { AccordionRoot as f } from "reka-ui";
3
+ const b = /* @__PURE__ */ i({
4
4
  __name: "BaseAccordion",
5
- props: {
6
- autoClose: { type: Boolean, default: !0 },
7
- autoUpdate: { type: Boolean, default: !0 }
8
- },
9
- setup(l) {
10
- const n = u(null), o = u(
11
- {}
12
- ), i = (e, t) => {
13
- if (l.autoClose && t && !p(t))
14
- for (const r in t)
15
- r !== `${e}` && (t[r].active = !1);
16
- }, s = (e, t) => {
17
- t && (t[e].active = !(t[e].active ?? !1));
18
- }, a = (e, t) => {
19
- i(e.id, t ?? o.value), n.value = e, s(e.id, t ?? o.value);
20
- };
21
- return c("handleClick", (e) => {
22
- l.autoUpdate && a(e);
23
- }), c("accordionItems", o), (e, t) => f(e.$slots, "default", {
24
- updatePrev: a,
25
- prev: n.value
26
- });
5
+ props: /* @__PURE__ */ d({
6
+ collapsible: { type: Boolean },
7
+ type: {}
8
+ }, {
9
+ modelValue: {},
10
+ modelModifiers: {}
11
+ }),
12
+ emits: ["update:modelValue"],
13
+ setup(t) {
14
+ const e = r(t, "modelValue");
15
+ return u("isActive", (l) => typeof e.value == "string" ? e.value === l : !!e.value?.find((o) => o === l)), (l, o) => (s(), n(p(f), {
16
+ collapsible: t.collapsible,
17
+ type: t.type,
18
+ modelValue: e.value,
19
+ "onUpdate:modelValue": o[0] || (o[0] = (a) => e.value = a)
20
+ }, {
21
+ default: m(() => [
22
+ c(l.$slots, "default")
23
+ ]),
24
+ _: 3
25
+ }, 8, ["collapsible", "type", "modelValue"]));
27
26
  }
28
27
  });
29
28
  export {
30
- h as default
29
+ b as default
31
30
  };
@@ -38,10 +38,13 @@ const C = ["id"], w = ["aria-expanded", "aria-controls"], b = /* @__PURE__ */ l(
38
38
  }, ["prevent", "stop"]))
39
39
  }, [
40
40
  m(f(g), {
41
- class: n(["uikit-transition-transform motion-reduce:uikit-transition-none", [
42
- t.accordionOpen ? "uikit-rotate-180" : "",
43
- o.$attrs["arrow-classes"]
44
- ]]),
41
+ class: n([
42
+ "uikit-transition-transform motion-reduce:uikit-transition-none",
43
+ [
44
+ t.accordionOpen ? "uikit-rotate-180" : "",
45
+ o.$attrs["arrow-classes"]
46
+ ]
47
+ ]),
45
48
  "stroke-color": t.arrowColor ?? "#222",
46
49
  width: t.arrowWidth,
47
50
  height: t.arrowWidth
@@ -1,139 +1,73 @@
1
- import { defineComponent as $, ref as y, inject as v, watch as r, unref as d, createElementBlock as f, openBlock as u, normalizeClass as m, createBlock as g, createCommentVNode as O, renderSlot as a, createElementVNode as k, withModifiers as A, createVNode as w, withCtx as n } from "vue";
2
- import B from "./BaseAccordionBtn.vue.js";
3
- import E from "./BaseAccordionContent.vue.js";
4
- import { ArrowIcon as W } from "@wikicasa-dev/svg-icons";
5
- const x = { key: 0 }, I = ["id", "data-cy", "aria-expanded", "aria-controls"], M = ["itemprop", "innerHTML"], L = /* @__PURE__ */ $({
6
- inheritAttrs: !1,
1
+ import { defineComponent as n, inject as c, createBlock as u, openBlock as d, unref as t, withCtx as s, createVNode as a, renderSlot as r, normalizeClass as l, createTextVNode as k, toDisplayString as f } from "vue";
2
+ import { AccordionItem as h, AccordionHeader as m, AccordionTrigger as C, AccordionContent as w } from "reka-ui";
3
+ import { ArrowIcon as g } from "@wikicasa-dev/svg-icons";
4
+ const b = /* @__PURE__ */ n({
7
5
  __name: "BaseAccordionItem",
8
6
  props: {
9
7
  title: {},
10
- id: {},
11
- active: { type: Boolean, default: !1 },
12
8
  arrowColor: {},
13
9
  arrowWidth: { default: 12 },
14
- onContainerClickExpand: { type: Boolean, default: !1 },
15
- rootClasses: {},
16
10
  dataCy: {},
17
- btnClasses: {},
18
- itemProp: {},
19
- arrowClasses: {},
20
- btnWrapperClasses: {},
21
- accordionContentClasses: {},
22
- accordionOpenClasses: {},
23
- accordionCloseClasses: {},
24
- accordionClasses: {}
11
+ value: {},
12
+ triggerClasses: {},
13
+ headerClasses: {},
14
+ contentClasses: {},
15
+ arrowClasses: {}
25
16
  },
26
- emits: ["click", "accordionOpened", "accordionClosed", "update:accordionState"],
27
- setup(e, { emit: b }) {
28
- const s = b, i = y(!1), l = v(
29
- "accordionItems",
30
- () => {
31
- },
32
- !0
33
- ), h = v(
34
- "handleClick",
35
- () => {
36
- },
37
- !0
38
- ), C = (t, o = !1) => {
39
- s(o ? "accordionOpened" : "accordionClosed", t), s("update:accordionState", o);
40
- };
41
- l && (l.value[e.id] = { id: e.id, title: e.title, active: e.active }), r(
42
- () => d(l),
43
- (t) => {
44
- const o = t?.[e.id];
45
- !o || i.value === o.active || (i.value = o.active ?? !1, C(
46
- { id: e.id, title: e.title, active: o.active },
47
- o.active
48
- ));
49
- },
50
- { deep: !0, immediate: !0 }
51
- ), r(i, (t) => {
52
- i.value = t, C({ id: e.id, title: e.title, active: i.value }, t);
53
- }), r(
54
- () => e.active,
55
- (t) => {
56
- i.value = t;
57
- },
58
- { immediate: !0 }
59
- );
60
- const c = () => {
61
- i.value = !i.value;
62
- };
63
- return (t, o) => (u(), f("div", {
64
- class: m(e.rootClasses)
65
- }, [
66
- !t.$slots.custom_content && !t.$slots.custom_btn && !t.$slots.custom_accordion ? (u(), f("div", x, [
67
- k("button", {
68
- id: `accordion-title-${e.id}`,
69
- type: "button",
70
- class: m(["uikit-flex uikit-w-full uikit-items-center uikit-justify-between uikit-border-0 uikit-bg-white uikit-px-5 uikit-py-4 uikit-text-left uikit-font-semibold uikit-transition-colors active:max-sm:uikit-bg-w-cultured hover:sm:uikit-bg-w-cultured", e.btnClasses]),
71
- "data-cy": e.dataCy,
72
- "aria-expanded": i.value,
73
- "aria-controls": `accordion-text-${e.id}`,
74
- onClick: o[0] || (o[0] = A((N) => {
75
- c(), d(h)?.({ id: e.id, title: e.title, active: i.value }), s("click");
76
- }, ["prevent", "stop"]))
77
- }, [
78
- k("span", {
79
- itemprop: e.itemProp,
80
- innerHTML: e.title
81
- }, null, 8, M),
82
- w(d(W), {
83
- class: m(["uikit-flex-shrink-0 uikit-transition-transform motion-reduce:uikit-transition-none", [i.value ? "uikit-rotate-180" : "", e.arrowClasses]]),
84
- "arrow-classes": e.arrowClasses,
85
- width: e.arrowWidth,
86
- height: e.arrowWidth
87
- }, null, 8, ["class", "arrow-classes", "width", "height"])
88
- ], 10, I)
89
- ])) : (t.$slots.custom_content || t.$slots.custom_btn) && !t.$slots.custom_accordion ? (u(), g(B, {
90
- key: 1,
91
- id: e.id,
92
- "btn-wrapper-classes": e.btnWrapperClasses,
93
- "btn-classes": e.btnClasses,
94
- "arrow-color": e.arrowColor,
95
- "arrow-classes": e.arrowClasses,
96
- "toggle-accordion": c,
97
- "on-container-click-expand": e.onContainerClickExpand,
98
- "accordion-open": i.value
99
- }, {
100
- custom_content: n(() => [
101
- a(t.$slots, "custom_content")
102
- ]),
103
- custom_btn: n(() => [
104
- a(t.$slots, "custom_btn", {
105
- btnId: `btn-${e.id}`,
106
- isOpen: i.value,
107
- toggleAccordion: c
108
- })
109
- ]),
110
- _: 3
111
- }, 8, ["id", "btn-wrapper-classes", "btn-classes", "arrow-color", "arrow-classes", "on-container-click-expand", "accordion-open"])) : O("", !0),
112
- a(t.$slots, "custom_accordion", {
113
- id: e.id,
114
- isOpen: i.value,
115
- toggleAccordion: c
116
- }, () => [
117
- w(E, {
118
- id: e.id,
119
- "accordion-open": i.value,
120
- "accordion-open-classes": e.accordionOpenClasses,
121
- "accordion-close-classes": e.accordionCloseClasses,
122
- "accordion-content-classes": e.accordionContentClasses,
123
- "accordion-classes": e.accordionClasses
17
+ setup(e) {
18
+ const o = c("isActive");
19
+ return (i, v) => (d(), u(t(h), {
20
+ value: e.value,
21
+ "data-cy": e.dataCy
22
+ }, {
23
+ default: s(() => [
24
+ a(t(m), {
25
+ class: "uikit-flex uikit-items-center uikit-justify-between",
26
+ "header-classes": e.headerClasses
124
27
  }, {
125
- custom_accordion_content: n(() => [
126
- a(t.$slots, "custom_accordion_content", { isOpen: i.value })
28
+ default: s(() => [
29
+ r(i.$slots, "headerContent"),
30
+ a(t(C), {
31
+ class: l([
32
+ e.triggerClasses,
33
+ {
34
+ "uikit-00inline-flex uikit-cursor-pointer uikit-items-center uikit-justify-between uikit-border-0 uikit-bg-transparent uikit-px-[16px] uikit-py-[16px] uikit-text-left uikit-font-semibold": !i.$slots.trigger,
35
+ "uikit-w-full": !i.$slots.headerContent
36
+ }
37
+ ])
38
+ }, {
39
+ default: s(() => [
40
+ r(i.$slots, "trigger", {
41
+ active: t(o)(e.value)
42
+ }, () => [
43
+ k(f(e.title) + " ", 1),
44
+ a(t(g), {
45
+ class: l(["uikit-flex-shrink-0 uikit-transition-transform motion-reduce:uikit-transition-none", [t(o)(e.value) ? "uikit-rotate-180" : "", e.arrowClasses]]),
46
+ "arrow-classes": e.arrowClasses,
47
+ width: e.arrowWidth,
48
+ height: e.arrowWidth
49
+ }, null, 8, ["class", "arrow-classes", "width", "height"])
50
+ ])
51
+ ]),
52
+ _: 3
53
+ }, 8, ["class"])
127
54
  ]),
128
- default: n(() => [
129
- a(t.$slots, "default", { isOpen: i.value })
55
+ _: 3
56
+ }, 8, ["header-classes"]),
57
+ a(t(w), {
58
+ class: "uikit-base-accordion-item-content uikit-px-[16px]",
59
+ "content-classes": e.contentClasses
60
+ }, {
61
+ default: s(() => [
62
+ r(i.$slots, "default")
130
63
  ]),
131
64
  _: 3
132
- }, 8, ["id", "accordion-open", "accordion-open-classes", "accordion-close-classes", "accordion-content-classes", "accordion-classes"])
133
- ])
134
- ], 2));
65
+ }, 8, ["content-classes"])
66
+ ]),
67
+ _: 3
68
+ }, 8, ["value", "data-cy"]));
135
69
  }
136
70
  });
137
71
  export {
138
- L as default
72
+ b as default
139
73
  };
@@ -1,5 +1,7 @@
1
- import { defineComponent as f, useId as h, computed as m, createElementBlock as o, openBlock as c, withModifiers as n, normalizeClass as l, createElementVNode as r, renderSlot as C, createCommentVNode as g, toDisplayString as y } from "vue";
2
- const x = ["id"], V = ["id", "data-cy", "checked", "disabled"], v = ["for"], w = /* @__PURE__ */ f({
1
+ import { defineComponent as m, useId as f, computed as h, watch as b, createElementBlock as C, openBlock as u, createVNode as c, renderSlot as x, unref as l, normalizeClass as y, withCtx as n, createBlock as V, createCommentVNode as g, createTextVNode as B, toDisplayString as w } from "vue";
2
+ import { CheckIcon as I } from "@wikicasa-dev/svg-icons";
3
+ import { CheckboxRoot as p, CheckboxIndicator as v } from "reka-ui";
4
+ const N = ["for"], j = /* @__PURE__ */ m({
3
5
  __name: "CheckboxBtn",
4
6
  props: {
5
7
  id: {},
@@ -9,67 +11,65 @@ const x = ["id"], V = ["id", "data-cy", "checked", "disabled"], v = ["for"], w =
9
11
  } },
10
12
  required: { type: Boolean },
11
13
  inputClass: {},
12
- inline: { type: Boolean, default: !1 },
13
14
  label: { default: "" },
14
- labelClass: {},
15
- isValid: { type: [Boolean, null], default: null },
16
- containerId: {},
17
- handleLabelClick: { type: Boolean, default: !0 },
18
15
  modelValue: { type: Boolean, default: !1 }
19
16
  },
20
17
  emits: ["click", "change", "update:modelValue"],
21
- setup(e, { emit: s }) {
22
- const a = s, d = h(), u = m(() => `${e.id ?? d}`), k = () => {
23
- const i = e.checked ?? e.modelValue;
24
- a("change", {
25
- id: e.id ?? d,
18
+ setup(e, { emit: r }) {
19
+ const i = f(), d = h(() => `${e.id ?? i}`), a = r;
20
+ b(
21
+ () => e.checked,
22
+ (t) => {
23
+ t !== void 0 && a("update:modelValue", t);
24
+ }
25
+ );
26
+ const k = (t) => {
27
+ t !== "indeterminate" && (a("change", {
28
+ id: e.id ?? i,
26
29
  label: e.label,
27
- checked: !i
28
- }), a("update:modelValue", !i);
29
- }, b = () => {
30
- k(), e.handleLabelClick && a("click");
30
+ checked: t
31
+ }), a("update:modelValue", t));
31
32
  };
32
- return (i, t) => (c(), o("div", {
33
- id: e.containerId,
34
- class: l(["uikit-group uikit-relative uikit-items-center uikit-pl-30px hover:uikit-cursor-pointer", [
35
- { "uikit-inline-flex": e.inline },
36
- { "uikit-flex": !e.inline },
37
- i.$attrs["wrapper-classes"]
38
- ]]),
39
- onClick: n(b, ["stop"])
33
+ return (t, o) => (u(), C("label", {
34
+ class: "uikit-flex uikit-items-center uikit-gap-[12px] uikit-text-16",
35
+ for: d.value,
36
+ onClick: o[0] || (o[0] = (s) => a("click", s))
40
37
  }, [
41
- r("input", {
42
- id: u.value,
43
- ref: "checkbox",
38
+ c(l(p), {
39
+ id: d.value,
40
+ "model-value": e.modelValue,
44
41
  "data-cy": e.dataCy,
45
- class: l(["uikit-pointer-events-none uikit-absolute uikit-left-0 uikit-size-4 uikit-appearance-none uikit-rounded-3xs uikit-border uikit-border-solid uikit-border-w-secondary uikit-bg-white checked:uikit-bg-center checked:uikit-bg-no-repeat group-hover:uikit-cursor-pointer", [
46
- { "!uikit-border-w-danger": e.isValid === !1 },
47
- e.inputClass,
48
- e.isValid === !1 ? "checked-bg-invalid" : "checked-bg"
49
- ]]),
50
- type: "checkbox",
51
- checked: e.checked ?? e.modelValue,
52
42
  disabled: e.disabled,
53
- onChange: t[0] || (t[0] = n(() => {
54
- }, ["prevent", "stop"])),
55
- onClick: t[1] || (t[1] = n(() => {
56
- }, ["prevent", "stop"]))
57
- }, null, 42, V),
58
- C(i.$slots, "label", {}, () => [
59
- r("label", {
60
- class: l(["uikit-text-sm group-hover:uikit-cursor-pointer", [e.labelClass, { "uikit-text-w-danger": e.isValid === !1 }]]),
61
- for: u.value
62
- }, y(e.label), 11, v),
63
- e.required ? (c(), o("span", {
64
- key: 0,
65
- class: l(["required after:uikit-content-['*']", [
66
- e.isValid !== !1 ? "after:uikit-text-w-primary" : "after:uikit-text-w-danger"
67
- ]])
68
- }, null, 2)) : g("", !0)
69
- ], !0)
70
- ], 10, x));
43
+ class: y(["data-[state='unchecked']:uikit-border-w-lightgray uikit-inline-flex uikit-size-[20px] uikit-items-center uikit-justify-center uikit-rounded-[4px] uikit-p-0 data-[state='unchecked']:uikit-border data-[state='unchecked']:uikit-border-solid", [
44
+ {
45
+ "uikit-bg-white": !e.modelValue,
46
+ "uikit-bg-w-blue": e.modelValue
47
+ },
48
+ e.inputClass
49
+ ]]),
50
+ "onUpdate:modelValue": k
51
+ }, {
52
+ default: n(() => [
53
+ c(l(v), { class: "uikit-flex" }, {
54
+ default: n(() => [
55
+ e.modelValue === !0 ? (u(), V(l(I), {
56
+ key: 0,
57
+ "fill-color": "#fff",
58
+ width: 12,
59
+ height: 14
60
+ })) : g("", !0)
61
+ ]),
62
+ _: 1
63
+ })
64
+ ]),
65
+ _: 1
66
+ }, 8, ["id", "model-value", "data-cy", "disabled", "class"]),
67
+ x(t.$slots, "label", {}, () => [
68
+ B(w(e.label), 1)
69
+ ])
70
+ ], 8, N));
71
71
  }
72
72
  });
73
73
  export {
74
- w as default
74
+ j as default
75
75
  };