@solfacil/girassol 0.1.11 → 0.2.3

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 (47) hide show
  1. package/dist/README.md.d.ts +2 -0
  2. package/dist/cli/readme.md.d.ts +2 -0
  3. package/dist/components.d.ts +1 -0
  4. package/dist/components.json +1 -1
  5. package/dist/girassol.es.js +1390 -1321
  6. package/dist/girassol.umd.js +6 -22
  7. package/dist/style.css +1 -1
  8. package/dist/theme/safelist.d.ts +14 -0
  9. package/dist/theme/solfacil/colors.d.ts +28 -4
  10. package/dist/theme/solfacil/effects.d.ts +8 -6
  11. package/dist/theme/solfacil/index.d.ts +1 -0
  12. package/dist/theme/solfacil/spacing.d.ts +3 -0
  13. package/dist/theme/solfacil/typography.d.ts +1 -1
  14. package/dist/theme/solfacil/utilities.d.ts +1 -0
  15. package/dist/types/components/accordion/Accordion.vue.d.ts +75 -10
  16. package/dist/types/components/dropdown/Dropdown.vue.d.ts +188 -31
  17. package/dist/types/components/forms/button/Button.vue.d.ts +102 -20
  18. package/dist/types/components/forms/button/ButtonDestructive.vue.d.ts +73 -0
  19. package/dist/types/components/forms/button/index.d.ts +2 -1
  20. package/dist/types/components/forms/checkbox/Checkbox.vue.d.ts +77 -11
  21. package/dist/types/components/forms/checkbox/CheckboxGroup.vue.d.ts +114 -19
  22. package/dist/types/components/forms/input/Input.vue.d.ts +76 -10
  23. package/dist/types/components/forms/radio/Radio.vue.d.ts +77 -11
  24. package/dist/types/components/forms/radio/RadioGroup.vue.d.ts +114 -19
  25. package/dist/types/components/forms/select/ListOption.vue.d.ts +149 -0
  26. package/dist/types/components/forms/select/Select.vue.d.ts +298 -27
  27. package/dist/types/components/forms/switch/Switch.vue.d.ts +83 -13
  28. package/dist/types/components/forms/textarea/Textarea.vue.d.ts +108 -19
  29. package/dist/types/components/forms/textfield/Textfield.vue.d.ts +100 -16
  30. package/dist/types/components/forms/textfield/TextfieldPassword.vue.d.ts +71 -9
  31. package/dist/types/components/informations/chip/Chip.vue.d.ts +94 -15
  32. package/dist/types/components/loader/CircleLoader.vue.d.ts +86 -0
  33. package/dist/types/composables/use-toast/Toast.vue.d.ts +130 -24
  34. package/dist/types/composables/use-toast/index.d.ts +1 -1
  35. package/dist/types/index.d.ts +2425 -459
  36. package/dist/windi.config.d.ts +1 -1
  37. package/package.json +33 -33
  38. package/theme/safelist.ts +104 -0
  39. package/theme/solfacil/borders.ts +2 -1
  40. package/theme/solfacil/colors.ts +44 -22
  41. package/theme/solfacil/effects.ts +9 -7
  42. package/theme/solfacil/index.ts +2 -1
  43. package/theme/solfacil/spacing.ts +3 -0
  44. package/theme/solfacil/typography.ts +8 -9
  45. package/theme/solfacil/utilities.ts +239 -3
  46. package/vite.config.ts +1 -0
  47. package/windi.config.ts +14 -1
@@ -1,69 +1,120 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- }
17
- return a;
18
- };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
- import { defineComponent, useSlots, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, renderSlot, ref, toDisplayString, createCommentVNode, createVNode, mergeProps, isRef, createBlock, withCtx, withDirectives, vShow, vModelText, Fragment, renderList, getCurrentScope, onScopeDispose, watch, reactive, withModifiers, createTextVNode, Transition as Transition$1, normalizeStyle, withKeys, onMounted, onUnmounted, render as render$9 } from "vue";
21
- var Button_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-button-core{border-radius:.5rem;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;font-family:Rubik;font-weight:500;font-size:.875rem;line-height:1.15;padding:.75rem 1.5rem;width:fit-content;min-width:40px;transition:filter .15s ease}.sol-button-core.-has-icon{padding-left:1rem;padding-right:1rem}.sol-button-core.-only-icon{padding:.5rem}.sol-button-core:not(.-only-icon)>.icon:empty{display:none}.sol-button-core:not(.-only-icon)>.icon.-left{margin-right:.5rem}.sol-button-core:not(.-only-icon)>.icon.-right{margin-left:.5rem}.sol-button-core:focus-visible{outline:4px solid #292929}.sol-button-core.-block{width:100%}.sol-button-core.-dense{padding:.5rem 1rem}.sol-button-core.-primary{--tw-bg-opacity: 1;background-color:rgba(255,176,31,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}.sol-button-core.-primary:hover{--tw-outline-opacity: 1;outline-color:rgba(143,143,143,var(--tw-outline-opacity));outline-width:2px;outline-style:solid}.sol-button-core.-primary:active{filter:brightness(1.2) drop-shadow(0px 3px 2px rgba(33,33,34,.5647058824))}.sol-button-core.-primary.-invert{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}.sol-button-core.-primary.-invert:hover{--tw-bg-opacity: .8;--tw-bg-opacity: 1;background-color:rgba(82,82,82,var(--tw-bg-opacity));--tw-outline-opacity: 1;outline-color:rgba(82,82,82,var(--tw-outline-opacity))}.sol-button-core.-primary.-invert:focus-visible{--tw-outline-opacity: 1;outline-color:rgba(143,143,143,var(--tw-outline-opacity))}.sol-button-core.-secondary{background-color:transparent;--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity));border-width:1px;--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity))}.sol-button-core.-secondary:hover{--tw-bg-opacity: 1;background-color:rgba(143,143,143,var(--tw-bg-opacity))}.sol-button-core.-secondary.-invert{--tw-border-opacity: 1;border-color:rgba(255,255,255,var(--tw-border-opacity));--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.sol-button-core.-secondary.-invert:hover{--tw-bg-opacity: 1;background-color:rgba(143,143,143,var(--tw-bg-opacity))}.sol-button-core.-secondary.-invert:focus-visible{--tw-outline-opacity: 1;outline-color:rgba(255,255,255,var(--tw-outline-opacity));outline-width:200px}.sol-button-core.-flat{background-color:transparent;--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}.sol-button-core.-flat:hover{--tw-bg-opacity: 1;background-color:rgba(255,248,235,var(--tw-bg-opacity))}.sol-button-core.-flat.-invert{--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.sol-button-core.-flat.-invert:hover{--tw-bg-opacity: 1;background-color:rgba(143,143,143,var(--tw-bg-opacity))}.sol-button-core.-flat.-invert:focus{outline-color:#fff}.sol-button-core:disabled{cursor:not-allowed;filter:brightness(.8) grayscale(1)}\n")();
22
- const _hoisted_1$n = ["data-testid"];
23
- const _hoisted_2$l = { class: "icon -left" };
24
- const _hoisted_3$j = { class: "icon -right" };
25
- const _sfc_main$e = /* @__PURE__ */ defineComponent({
1
+ import { defineComponent as V, openBlock as s, createElementBlock as r, normalizeClass as S, createElementVNode as h, useSlots as Oe, computed as E, unref as g, renderSlot as y, createVNode as M, createCommentVNode as T, createBlock as p, withCtx as D, ref as I, toDisplayString as x, mergeProps as N, isRef as Be, withDirectives as W, vShow as le, vModelText as De, Fragment as J, renderList as X, getCurrentScope as Re, onScopeDispose as pe, watch as He, reactive as Z, withModifiers as H, createTextVNode as O, Transition as we, normalizeStyle as ne, withKeys as j, onMounted as Te, onUnmounted as Ne, render as Me } from "vue";
2
+ const Ue = /* @__PURE__ */ h("path", {
3
+ class: "path",
4
+ d: "M16.0008 1.5C17.905 1.5 19.7905 1.87506 21.5497 2.60375C23.3089 3.33244 24.9074 4.4005 26.2538 5.74695C27.6003 7.0934 28.6684 8.69187 29.397 10.4511C30.1257 12.2103 30.5008 14.0958 30.5008 16C30.5008 17.9042 30.1257 19.7897 29.397 21.5489C28.6684 23.3081 27.6003 24.9066 26.2538 26.2531C24.9074 27.5995 23.3089 28.6676 21.5497 29.3963C19.7905 30.1249 17.905 30.5 16.0008 30.5C14.0966 30.5 12.2111 30.1249 10.4519 29.3963C8.69266 28.6676 7.09419 27.5995 5.74774 26.253C4.4013 24.9066 3.33323 23.3081 2.60454 21.5489C1.87585 19.7897 1.50079 17.9042 1.50079 16C1.5008 14.0958 1.87585 12.2103 2.60454 10.4511C3.33324 8.69187 4.4013 7.0934 5.74775 5.74695C7.0942 4.4005 8.69267 3.33244 10.4519 2.60375C12.2111 1.87505 14.0966 1.5 16.0008 1.5L16.0008 1.5Z"
5
+ }, null, -1), Ge = [
6
+ Ue
7
+ ], Fe = /* @__PURE__ */ V({
8
+ __name: "CircleLoader",
9
+ props: {
10
+ size: { default: "large" },
11
+ dark: { type: Boolean }
12
+ },
13
+ setup(e) {
14
+ return (l, t) => (s(), r("svg", {
15
+ class: S(["sol-inner-loader", `-${e.size}`]),
16
+ viewBox: "0 0 32 32",
17
+ fill: "none",
18
+ xmlns: "http://www.w3.org/2000/svg"
19
+ }, Ge, 2));
20
+ }
21
+ });
22
+ const Ke = ["data-testid", "disabled"], Ye = { class: "icon -left" }, We = { class: "icon -right" }, Ze = {
23
+ key: 0,
24
+ class: "loading"
25
+ }, q = /* @__PURE__ */ V({
26
26
  __name: "Button",
27
27
  props: {
28
- variant: { default: "primary" },
29
- dense: { type: Boolean, default: false },
30
- invert: { type: Boolean, default: false },
31
- id: null
28
+ id: null,
29
+ loading: { type: Boolean },
30
+ onColor: { type: Boolean, default: !1 },
31
+ disabled: { type: Boolean },
32
+ size: { default: "large" },
33
+ variant: { default: "primary" }
32
34
  },
33
- setup(__props) {
34
- function hasVariant(variant, variantClass) {
35
- return variant ? variantClass : "";
35
+ setup(e) {
36
+ function l(a, o) {
37
+ return a ? o : "";
36
38
  }
37
- const slots = useSlots();
38
- const hasContentWithIcon = computed(() => !!(slots == null ? void 0 : slots.default) && (!!(slots == null ? void 0 : slots["icon-right"]) || !!(slots == null ? void 0 : slots["icon-left"])));
39
- const onlyIcon = computed(() => !(slots == null ? void 0 : slots.default) && (!!(slots == null ? void 0 : slots["icon-right"]) || !!(slots == null ? void 0 : slots["icon-left"])));
40
- return (_ctx, _cache) => {
41
- return openBlock(), createElementBlock("button", {
42
- "data-testid": `button-${__props.id}`,
43
- class: normalizeClass(["sol-button-core", `-${__props.variant}
44
- ${hasVariant(__props.dense, "-dense")} ${hasVariant(__props.invert, "-invert")}
45
- ${hasVariant(unref(hasContentWithIcon), "-has-icon")}
46
- ${hasVariant(unref(onlyIcon), "-only-icon")}
39
+ const t = Oe(), i = E(
40
+ () => !!(t != null && t.default) && (!!(t != null && t["icon-right"]) || !!(t != null && t["icon-left"]))
41
+ ), n = E(
42
+ () => !(t != null && t.default) && (!!(t != null && t["icon-right"]) || !!(t != null && t["icon-left"]))
43
+ );
44
+ return (a, o) => (s(), r("button", {
45
+ "data-testid": `button-${e.id}`,
46
+ class: S(["sol-button-core", `-${e.variant} -${e.size}
47
+ ${l(e.loading, "-loading-helper")}
48
+ ${l(e.onColor, "-on-color")}
49
+ ${l(g(i), "-has-icon")}
50
+ ${l(g(n), "-only-icon")}
47
51
  `]),
48
- type: "button"
49
- }, [
50
- createElementVNode("div", _hoisted_2$l, [
51
- renderSlot(_ctx.$slots, "icon-left")
52
- ]),
53
- renderSlot(_ctx.$slots, "default"),
54
- createElementVNode("div", _hoisted_3$j, [
55
- renderSlot(_ctx.$slots, "icon-right")
56
- ])
57
- ], 10, _hoisted_1$n);
58
- };
52
+ type: "button",
53
+ disabled: e.disabled || e.loading
54
+ }, [
55
+ h("div", Ye, [
56
+ y(a.$slots, "icon-left")
57
+ ]),
58
+ y(a.$slots, "default"),
59
+ h("div", We, [
60
+ y(a.$slots, "icon-right")
61
+ ]),
62
+ e.loading ? (s(), r("div", Ze, [
63
+ M(Fe, {
64
+ "data-testid": `button-loader-${e.id}`,
65
+ size: e.size === "small" ? "small" : "medium",
66
+ dark: e.onColor
67
+ }, null, 8, ["data-testid", "size", "dark"])
68
+ ])) : T("", !0)
69
+ ], 10, Ke));
70
+ }
71
+ });
72
+ const je = {
73
+ preserveAspectRatio: "xMidYMid meet",
74
+ viewBox: "0 0 24 24",
75
+ width: "1em",
76
+ height: "1em"
77
+ }, qe = /* @__PURE__ */ h("path", {
78
+ fill: "currentColor",
79
+ d: "M7 21q-.825 0-1.412-.587Q5 19.825 5 19V6H4V4h5V3h6v1h5v2h-1v13q0 .825-.587 1.413Q17.825 21 17 21ZM17 6H7v13h10ZM9 17h2V8H9Zm4 0h2V8h-2ZM7 6v13Z"
80
+ }, null, -1), Qe = [
81
+ qe
82
+ ];
83
+ function Je(e, l) {
84
+ return s(), r("svg", je, Qe);
85
+ }
86
+ const Xe = { name: "material-symbols-delete-outline", render: Je }, ze = /* @__PURE__ */ V({
87
+ __name: "ButtonDestructive",
88
+ props: {
89
+ id: null,
90
+ size: null,
91
+ loading: { type: Boolean }
92
+ },
93
+ setup(e) {
94
+ return (l, t) => (s(), p(q, {
95
+ id: `destructive-${e.id}`,
96
+ size: e.size,
97
+ loading: e.loading,
98
+ variant: "primary",
99
+ class: "button-destructive"
100
+ }, {
101
+ "icon-left": D(() => [
102
+ M(g(Xe))
103
+ ]),
104
+ default: D(() => [
105
+ y(l.$slots, "default")
106
+ ]),
107
+ _: 3
108
+ }, 8, ["id", "size", "loading"]));
59
109
  }
60
110
  });
61
- _sfc_main$e.install = (app) => {
62
- app.component("SolButton", _sfc_main$e);
111
+ q.install = (e) => {
112
+ e.component("SolButton", q);
113
+ };
114
+ ze.install = (e) => {
115
+ e.component("SolButton", q);
63
116
  };
64
- var Input_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-input-core{--tw-border-opacity: 1;border-color:rgba(143,143,143,var(--tw-border-opacity));border-radius:.5rem;border-width:2px;cursor:pointer;font-family:Rubik;font-size:.875rem;max-height:2.5rem;padding:.75rem;--tw-caret-opacity: 1;caret-color:rgba(255,176,31,var(--tw-caret-opacity));--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity))}.sol-input-core::placeholder{color:#8f8f8f!important;font-size:undefined!important;font-family:undefined!important;line-height:undefined!important}.sol-input-core:focus-visible{--tw-border-opacity: 1;border-color:rgba(41,41,41,var(--tw-border-opacity));outline:3px solid #292929;outline-offset:0px}.sol-input-core.-invert{--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity));--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-input-core.-invert:focus-visible{--tw-border-opacity: 1;border-color:rgba(41,41,41,var(--tw-border-opacity));outline:3px solid #ffffff;outline-offset:0px}.sol-input-core.-invert:not(:placeholder-shown):invalid,.sol-input-core.-invert.-error{--tw-border-opacity: 1;border-color:rgba(255,37,31,var(--tw-border-opacity))}.sol-input-core.-invert:disabled{--tw-bg-opacity: 1;background-color:rgba(82,82,82,var(--tw-bg-opacity));border-color:transparent}.sol-input-core:not(:placeholder-shown):invalid,.sol-input-core.-error{--tw-border-opacity: 1;border-color:rgba(255,37,31,var(--tw-border-opacity))}.sol-input-core:not(:placeholder-shown):invalid:focus-visible,.sol-input-core.-error:focus-visible{--tw-outline-opacity: 1;outline-color:rgba(255,37,31,var(--tw-outline-opacity))}.sol-input-core:disabled{--tw-bg-opacity: 1;background-color:rgba(245,245,245,var(--tw-bg-opacity));--tw-border-opacity: 1;border-color:rgba(224,224,224,var(--tw-border-opacity));cursor:not-allowed}\n")();
65
- const _hoisted_1$m = ["id", "data-testid", "value"];
66
- const _sfc_main$d = /* @__PURE__ */ defineComponent({
117
+ const _e = ["id", "data-testid", "value"], F = /* @__PURE__ */ V({
67
118
  __name: "Input",
68
119
  props: {
69
120
  id: null,
@@ -72,37 +123,28 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
72
123
  error: { type: Boolean }
73
124
  },
74
125
  emits: ["update:modelValue"],
75
- setup(__props, { expose, emit }) {
76
- function emitInput({ target }) {
77
- emit("update:modelValue", target == null ? void 0 : target.value);
126
+ setup(e, { expose: l, emit: t }) {
127
+ function i({ target: a }) {
128
+ t("update:modelValue", a == null ? void 0 : a.value);
78
129
  }
79
- const input = ref("");
80
- expose({
81
- input
82
- });
83
- return (_ctx, _cache) => {
84
- return openBlock(), createElementBlock("input", {
85
- id: `input-${__props.id}`,
86
- ref_key: "input",
87
- ref: input,
88
- "data-testid": `input-${__props.id}`,
89
- value: __props.modelValue,
90
- class: normalizeClass(["sol-input-core", { "-invert": __props.invert, "-error": __props.error }]),
91
- onInput: emitInput
92
- }, null, 42, _hoisted_1$m);
93
- };
130
+ const n = I("");
131
+ return l({
132
+ input: n
133
+ }), (a, o) => (s(), r("input", {
134
+ id: `input-${e.id}`,
135
+ ref_key: "input",
136
+ ref: n,
137
+ "data-testid": `input-${e.id}`,
138
+ value: e.modelValue,
139
+ class: S(["sol-input-core", { "-invert": e.invert, "-error": e.error }]),
140
+ onInput: i
141
+ }, null, 42, _e));
94
142
  }
95
143
  });
96
- _sfc_main$d.install = (app) => {
97
- app.component("SolInput", _sfc_main$d);
144
+ F.install = (e) => {
145
+ e.component("SolInput", F);
98
146
  };
99
- var Textfield_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => '.sol-textfield-core{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.sol-textfield-core.-invert>.label,.sol-textfield-core.-invert>.hint{--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.sol-textfield-core:is([required=true],[required=""])>.label:after{position:absolute;top:30%;right:0px;content:"*"}.sol-textfield-core>.label{font-family:Rubik;font-weight:400;font-size:.875rem;line-height:1.15;margin-bottom:.25rem;position:relative;text-align:left;--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity))}.sol-textfield-core>.container-input{position:relative}.sol-textfield-core>.container-input>.input{width:100%;scroll-margin-top:14rem}.sol-textfield-core>.container-input>.input~*{position:absolute;top:calc(50% - 8px);right:12px}.sol-textfield-core>.hint,.sol-textfield-core>.error{font-family:Rubik;font-weight:400;font-size:.75rem;line-height:1.15;margin-top:.25rem;text-align:left;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-textfield-core>.hint{--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-textfield-core>.error{--tw-text-opacity: 1;color:rgba(255,37,31,var(--tw-text-opacity))}\n')();
100
- const _hoisted_1$l = ["id", "data-testid"];
101
- const _hoisted_2$k = ["for"];
102
- const _hoisted_3$i = { class: "container-input" };
103
- const _hoisted_4$6 = ["id"];
104
- const _hoisted_5$3 = ["id"];
105
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
147
+ const et = ["id", "data-testid"], tt = ["for"], lt = { class: "container-input" }, nt = ["id"], it = ["id"], ie = /* @__PURE__ */ V({
106
148
  __name: "Textfield",
107
149
  props: {
108
150
  id: null,
@@ -114,154 +156,134 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
114
156
  error: null
115
157
  },
116
158
  emits: ["update:modelValue"],
117
- setup(__props, { emit }) {
118
- const props = __props;
119
- const model = computed({
120
- get: () => props.modelValue,
121
- set: (inputValue) => {
122
- emit("update:modelValue", inputValue);
159
+ setup(e, { emit: l }) {
160
+ const t = e, i = E({
161
+ get: () => t.modelValue,
162
+ set: (o) => {
163
+ l("update:modelValue", o);
123
164
  }
124
165
  });
125
- function showHint(hint, error) {
126
- return !!hint && !error;
166
+ function n(o, c) {
167
+ return !!o && !c;
127
168
  }
128
- function ariaDescribedby(hint, error) {
129
- if (error)
130
- return `error-${props.id}`;
131
- if (showHint(hint, error))
132
- return `hint-${props.id}`;
133
- return null;
169
+ function a(o, c) {
170
+ return c ? `error-${t.id}` : n(o, c) ? `hint-${t.id}` : null;
134
171
  }
135
- return (_ctx, _cache) => {
136
- var _a2;
137
- return openBlock(), createElementBlock("div", {
138
- id: `textfield-${__props.id}`,
139
- "data-testid": `textfield-${__props.id}`,
140
- class: normalizeClass([[`${(_a2 = _ctx.$props.class) != null ? _a2 : ""}`, { "-invert": __props.invert }], "sol-textfield-core"])
172
+ return (o, c) => {
173
+ var u;
174
+ return s(), r("div", {
175
+ id: `textfield-${e.id}`,
176
+ "data-testid": `textfield-${e.id}`,
177
+ class: S([[`${(u = o.$props.class) != null ? u : ""}`, { "-invert": e.invert }], "sol-textfield-core"])
141
178
  }, [
142
- renderSlot(_ctx.$slots, "label", {}, () => [
143
- __props.label ? (openBlock(), createElementBlock("label", {
179
+ y(o.$slots, "label", {}, () => [
180
+ e.label ? (s(), r("label", {
144
181
  key: 0,
145
- for: `input-${__props.id}`,
182
+ for: `input-${e.id}`,
146
183
  class: "label"
147
184
  }, [
148
- createElementVNode("span", null, toDisplayString(__props.label), 1)
149
- ], 8, _hoisted_2$k)) : createCommentVNode("", true)
185
+ h("span", null, x(e.label), 1)
186
+ ], 8, tt)) : T("", !0)
150
187
  ]),
151
- createElementVNode("div", _hoisted_3$i, [
152
- renderSlot(_ctx.$slots, "default", {}, () => [
153
- createVNode(_sfc_main$d, mergeProps(_ctx.$attrs, {
154
- id: __props.id,
155
- modelValue: unref(model),
156
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(model) ? model.value = $event : null),
157
- "data-testid": `input-${__props.id}`,
158
- class: [__props.error && "-error", "input"],
159
- invert: __props.invert,
160
- "aria-invalid": !!__props.error,
161
- "aria-describedby": ariaDescribedby(__props.hint, __props.error)
188
+ h("div", lt, [
189
+ y(o.$slots, "default", {}, () => [
190
+ M(F, N(o.$attrs, {
191
+ id: e.id,
192
+ modelValue: g(i),
193
+ "onUpdate:modelValue": c[0] || (c[0] = (f) => Be(i) ? i.value = f : null),
194
+ "data-testid": `input-${e.id}`,
195
+ class: [e.error && "-error", "input"],
196
+ invert: e.invert,
197
+ "aria-invalid": !!e.error,
198
+ "aria-describedby": a(e.hint, e.error)
162
199
  }), null, 16, ["id", "modelValue", "data-testid", "class", "invert", "aria-invalid", "aria-describedby"])
163
200
  ]),
164
- renderSlot(_ctx.$slots, "icon")
201
+ y(o.$slots, "icon")
165
202
  ]),
166
- showHint(__props.hint, __props.error) ? (openBlock(), createElementBlock("span", {
203
+ n(e.hint, e.error) ? (s(), r("span", {
167
204
  key: 0,
168
- id: `hint-${__props.id}`,
205
+ id: `hint-${e.id}`,
169
206
  class: "hint"
170
- }, toDisplayString(__props.hint), 9, _hoisted_4$6)) : __props.error ? (openBlock(), createElementBlock("span", {
207
+ }, x(e.hint), 9, nt)) : e.error ? (s(), r("span", {
171
208
  key: 1,
172
- id: `error-${__props.id}`,
209
+ id: `error-${e.id}`,
173
210
  class: "error"
174
- }, toDisplayString(__props.error), 9, _hoisted_5$3)) : createCommentVNode("", true)
175
- ], 10, _hoisted_1$l);
211
+ }, x(e.error), 9, it)) : T("", !0)
212
+ ], 10, et);
176
213
  };
177
214
  }
178
215
  });
179
- const _hoisted_1$k = {
216
+ const at = {
180
217
  preserveAspectRatio: "xMidYMid meet",
181
218
  viewBox: "0 0 24 24",
182
- width: "1.2em",
183
- height: "1.2em"
184
- };
185
- const _hoisted_2$j = /* @__PURE__ */ createElementVNode("g", { fill: "currentColor" }, [
186
- /* @__PURE__ */ createElementVNode("path", { d: "M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0z" }),
187
- /* @__PURE__ */ createElementVNode("path", { d: "M21.894 11.553C19.736 7.236 15.904 5 12 5c-3.903 0-7.736 2.236-9.894 6.553a1 1 0 0 0 0 .894C4.264 16.764 8.096 19 12 19c3.903 0 7.736-2.236 9.894-6.553a1 1 0 0 0 0-.894zM12 17c-2.969 0-6.002-1.62-7.87-5C5.998 8.62 9.03 7 12 7c2.969 0 6.002 1.62 7.87 5c-1.868 3.38-4.901 5-7.87 5z" })
188
- ], -1);
189
- const _hoisted_3$h = [
190
- _hoisted_2$j
219
+ width: "1em",
220
+ height: "1em"
221
+ }, ot = /* @__PURE__ */ h("g", { fill: "currentColor" }, [
222
+ /* @__PURE__ */ h("path", { d: "M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0z" }),
223
+ /* @__PURE__ */ h("path", { d: "M21.894 11.553C19.736 7.236 15.904 5 12 5c-3.903 0-7.736 2.236-9.894 6.553a1 1 0 0 0 0 .894C4.264 16.764 8.096 19 12 19c3.903 0 7.736-2.236 9.894-6.553a1 1 0 0 0 0-.894zM12 17c-2.969 0-6.002-1.62-7.87-5C5.998 8.62 9.03 7 12 7c2.969 0 6.002 1.62 7.87 5c-1.868 3.38-4.901 5-7.87 5z" })
224
+ ], -1), st = [
225
+ ot
191
226
  ];
192
- function render$8(_ctx, _cache) {
193
- return openBlock(), createElementBlock("svg", _hoisted_1$k, _hoisted_3$h);
227
+ function dt(e, l) {
228
+ return s(), r("svg", at, st);
194
229
  }
195
- var EyeOn = { name: "mi-eye", render: render$8 };
196
- const _hoisted_1$j = {
230
+ const ct = { name: "mi-eye", render: dt }, rt = {
197
231
  preserveAspectRatio: "xMidYMid meet",
198
232
  viewBox: "0 0 24 24",
199
- width: "1.2em",
200
- height: "1.2em"
201
- };
202
- const _hoisted_2$i = /* @__PURE__ */ createElementVNode("path", {
233
+ width: "1em",
234
+ height: "1em"
235
+ }, ut = /* @__PURE__ */ h("path", {
203
236
  fill: "currentColor",
204
237
  d: "M4.707 3.293a1 1 0 0 0-1.414 1.414l2.424 2.424c-1.43 1.076-2.678 2.554-3.611 4.422a1 1 0 0 0 0 .894C4.264 16.764 8.096 19 12 19c1.555 0 3.1-.355 4.53-1.055l2.763 2.762a1 1 0 0 0 1.414-1.414l-16-16zm10.307 13.135c-.98.383-2 .572-3.014.572c-2.969 0-6.002-1.62-7.87-5c.817-1.479 1.858-2.62 3.018-3.437l2.144 2.144a3 3 0 0 0 4.001 4.001l1.72 1.72zm3.538-2.532c.483-.556.926-1.187 1.318-1.896c-1.868-3.38-4.9-5-7.87-5c-.112 0-.224.002-.336.007L9.879 5.223A10.215 10.215 0 0 1 12 5c3.903 0 7.736 2.236 9.894 6.553a1 1 0 0 1 0 .894a13.106 13.106 0 0 1-1.925 2.865l-1.417-1.416z"
205
- }, null, -1);
206
- const _hoisted_3$g = [
207
- _hoisted_2$i
238
+ }, null, -1), ht = [
239
+ ut
208
240
  ];
209
- function render$7(_ctx, _cache) {
210
- return openBlock(), createElementBlock("svg", _hoisted_1$j, _hoisted_3$g);
241
+ function ft(e, l) {
242
+ return s(), r("svg", rt, ht);
211
243
  }
212
- var EyeOff = { name: "mi-eye-off", render: render$7 };
213
- const _hoisted_1$i = ["aria-label"];
214
- const _sfc_main$b = /* @__PURE__ */ defineComponent({
244
+ const mt = { name: "mi-eye-off", render: ft }, $t = ["aria-label"], ce = /* @__PURE__ */ V({
215
245
  __name: "TextfieldPassword",
216
246
  props: {
217
247
  id: { default: "" },
218
248
  label: { default: "Sua senha" }
219
249
  },
220
- setup(__props) {
221
- const passwordIsVisible = ref(false);
222
- const inputType = computed(() => passwordIsVisible.value ? "text" : "password");
223
- return (_ctx, _cache) => {
224
- return openBlock(), createBlock(_sfc_main$c, {
225
- id: __props.id,
226
- required: "",
227
- type: unref(inputType),
228
- label: __props.label,
229
- placeholder: "Insira sua senha"
230
- }, {
231
- icon: withCtx(() => [
232
- createElementVNode("button", {
233
- type: "button",
234
- "data-testid": "toggle-type-password",
235
- "aria-label": passwordIsVisible.value ? "Hide password" : "Show password",
236
- onClick: _cache[0] || (_cache[0] = ($event) => passwordIsVisible.value = !passwordIsVisible.value)
237
- }, [
238
- withDirectives(createVNode(unref(EyeOn), { "aria-hidden": "true" }, null, 512), [
239
- [vShow, passwordIsVisible.value]
240
- ]),
241
- withDirectives(createVNode(unref(EyeOff), { "aria-hidden": "true" }, null, 512), [
242
- [vShow, !passwordIsVisible.value]
243
- ])
244
- ], 8, _hoisted_1$i)
245
- ]),
246
- _: 1
247
- }, 8, ["id", "type", "label"]);
248
- };
250
+ setup(e) {
251
+ const l = I(!1), t = E(
252
+ () => l.value ? "text" : "password"
253
+ );
254
+ return (i, n) => (s(), p(ie, {
255
+ id: e.id,
256
+ required: "",
257
+ type: g(t),
258
+ label: e.label,
259
+ placeholder: "Insira sua senha"
260
+ }, {
261
+ icon: D(() => [
262
+ h("button", {
263
+ type: "button",
264
+ "data-testid": "toggle-type-password",
265
+ "aria-label": l.value ? "Hide password" : "Show password",
266
+ onClick: n[0] || (n[0] = (a) => l.value = !l.value)
267
+ }, [
268
+ W(M(g(ct), { "aria-hidden": "true" }, null, 512), [
269
+ [le, l.value]
270
+ ]),
271
+ W(M(g(mt), { "aria-hidden": "true" }, null, 512), [
272
+ [le, !l.value]
273
+ ])
274
+ ], 8, $t)
275
+ ]),
276
+ _: 1
277
+ }, 8, ["id", "type", "label"]));
249
278
  }
250
279
  });
251
- _sfc_main$c.install = (app) => {
252
- app.component("SolTextfield", _sfc_main$c);
280
+ ie.install = (e) => {
281
+ e.component("SolTextfield", ie);
253
282
  };
254
- _sfc_main$b.install = (app) => {
255
- app.component("SolTextfieldPassword", _sfc_main$b);
283
+ ce.install = (e) => {
284
+ e.component("SolTextfieldPassword", ce);
256
285
  };
257
- var Textarea_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => '.sol-textarea-core{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.sol-textarea-core.-invert>.label,.sol-textarea-core.-invert>.hint{--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.sol-textarea-core:is([required=true],[required=""])>.label:after{position:absolute;top:30%;right:0px;content:"*"}.sol-textarea-core>.label{font-family:Rubik;font-weight:400;font-size:.875rem;line-height:1.15;margin-bottom:.25rem;position:relative;text-align:left;--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity))}.sol-textarea-core>.container-textarea{position:relative}.sol-textarea-core>.container-textarea>.textarea{--tw-border-opacity: 1;border-color:rgba(143,143,143,var(--tw-border-opacity));border-radius:.5rem;border-width:2px;cursor:pointer;font-family:Rubik;height:100%;font-size:.875rem;max-width:100%;padding:.75rem;--tw-caret-opacity: 1;caret-color:rgba(255,176,31,var(--tw-caret-opacity));--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity));scroll-margin-top:14rem}.sol-textarea-core>.container-textarea>.textarea.-invert{--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity));--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-textarea-core>.container-textarea>.textarea.-invert:focus-visible{--tw-border-opacity: 1;border-color:rgba(41,41,41,var(--tw-border-opacity));outline:3px solid #ffffff;outline-offset:0px}.sol-textarea-core>.container-textarea>.textarea.-invert:not(:placeholder-shown):invalid,.sol-textarea-core>.container-textarea>.textarea.-invert.-error{--tw-border-opacity: 1;border-color:rgba(255,37,31,var(--tw-border-opacity))}.sol-textarea-core>.container-textarea>.textarea.-invert:disabled{--tw-bg-opacity: 1;background-color:rgba(82,82,82,var(--tw-bg-opacity));border-color:transparent}.sol-textarea-core>.container-textarea>.textarea:not(:placeholder-shown):invalid,.sol-textarea-core>.container-textarea>.textarea.-error{--tw-border-opacity: 1;border-color:rgba(255,37,31,var(--tw-border-opacity))}.sol-textarea-core>.container-textarea>.textarea:not(:placeholder-shown):invalid:focus-visible,.sol-textarea-core>.container-textarea>.textarea.-error:focus-visible{--tw-outline-opacity: 1;outline-color:rgba(255,37,31,var(--tw-outline-opacity))}.sol-textarea-core>.container-textarea>.textarea:disabled{--tw-bg-opacity: 1;background-color:rgba(245,245,245,var(--tw-bg-opacity));--tw-border-opacity: 1;border-color:rgba(224,224,224,var(--tw-border-opacity));cursor:not-allowed}.sol-textarea-core>.hint,.sol-textarea-core>.error{font-family:Rubik;font-weight:400;font-size:.75rem;line-height:1.15;margin-top:.25rem;text-align:left;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-textarea-core>.hint{--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-textarea-core>.error{--tw-text-opacity: 1;color:rgba(255,37,31,var(--tw-text-opacity))}\n')();
258
- const _hoisted_1$h = ["id", "data-testid"];
259
- const _hoisted_2$h = ["for"];
260
- const _hoisted_3$f = { class: "container-textarea" };
261
- const _hoisted_4$5 = ["id", "data-testid", "invert", "aria-invalid", "aria-describedby"];
262
- const _hoisted_5$2 = ["id"];
263
- const _hoisted_6$2 = ["id"];
264
- const _sfc_main$a = /* @__PURE__ */ defineComponent({
286
+ const vt = ["id", "data-testid"], bt = ["for"], yt = { class: "container-textarea" }, gt = ["id", "data-testid", "invert", "aria-invalid", "aria-describedby"], wt = ["id"], xt = ["id"], re = /* @__PURE__ */ V({
265
287
  __name: "Textarea",
266
288
  props: {
267
289
  id: null,
@@ -274,76 +296,68 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
274
296
  error: null
275
297
  },
276
298
  emits: ["update:modelValue"],
277
- setup(__props, { emit }) {
278
- const props = __props;
279
- const model = computed({
280
- get: () => props.modelValue,
281
- set: (inputValue) => {
282
- emit("update:modelValue", inputValue);
299
+ setup(e, { emit: l }) {
300
+ const t = e, i = E({
301
+ get: () => t.modelValue,
302
+ set: (o) => {
303
+ l("update:modelValue", o);
283
304
  }
284
305
  });
285
- function showHint(hint, error) {
286
- return !!hint && !error;
306
+ function n(o, c) {
307
+ return !!o && !c;
287
308
  }
288
- function ariaDescribedby(hint, error) {
289
- if (error)
290
- return `error-${props.id}`;
291
- if (showHint(hint, error))
292
- return `hint-${props.id}`;
293
- return null;
309
+ function a(o, c) {
310
+ return c ? `error-${t.id}` : n(o, c) ? `hint-${t.id}` : null;
294
311
  }
295
- return (_ctx, _cache) => {
296
- var _a2;
297
- return openBlock(), createElementBlock("div", {
298
- id: `textarea-${__props.id}`,
299
- "data-testid": `textarea-${__props.id}`,
300
- class: normalizeClass([[`${(_a2 = _ctx.$props.class) != null ? _a2 : ""}`, { "-invert": __props.invert }], "sol-textarea-core"])
312
+ return (o, c) => {
313
+ var u;
314
+ return s(), r("div", {
315
+ id: `textarea-${e.id}`,
316
+ "data-testid": `textarea-${e.id}`,
317
+ class: S([[`${(u = o.$props.class) != null ? u : ""}`, { "-invert": e.invert }], "sol-textarea-core"])
301
318
  }, [
302
- renderSlot(_ctx.$slots, "label", {}, () => [
303
- __props.label ? (openBlock(), createElementBlock("label", {
319
+ y(o.$slots, "label", {}, () => [
320
+ e.label ? (s(), r("label", {
304
321
  key: 0,
305
- for: `input-${__props.id}`,
322
+ for: `input-${e.id}`,
306
323
  class: "label"
307
324
  }, [
308
- createElementVNode("span", null, toDisplayString(__props.label), 1)
309
- ], 8, _hoisted_2$h)) : createCommentVNode("", true)
325
+ h("span", null, x(e.label), 1)
326
+ ], 8, bt)) : T("", !0)
310
327
  ]),
311
- createElementVNode("div", _hoisted_3$f, [
312
- renderSlot(_ctx.$slots, "default", {}, () => [
313
- withDirectives(createElementVNode("textarea", mergeProps(_ctx.$attrs, {
314
- id: `input-${__props.id}`,
315
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(model) ? model.value = $event : null),
316
- "data-testid": `input-${__props.id}`,
317
- class: [__props.error && "-error", "textarea"],
318
- invert: __props.invert,
319
- style: { resize: __props.resize },
320
- "aria-invalid": !!__props.error,
321
- "aria-describedby": ariaDescribedby(__props.hint, __props.error)
322
- }), null, 16, _hoisted_4$5), [
323
- [vModelText, unref(model)]
328
+ h("div", yt, [
329
+ y(o.$slots, "default", {}, () => [
330
+ W(h("textarea", N(o.$attrs, {
331
+ id: `input-${e.id}`,
332
+ "onUpdate:modelValue": c[0] || (c[0] = (f) => Be(i) ? i.value = f : null),
333
+ "data-testid": `input-${e.id}`,
334
+ class: [e.error && "-error", "textarea"],
335
+ invert: e.invert,
336
+ style: { resize: e.resize },
337
+ "aria-invalid": !!e.error,
338
+ "aria-describedby": a(e.hint, e.error)
339
+ }), null, 16, gt), [
340
+ [De, g(i)]
324
341
  ])
325
342
  ])
326
343
  ]),
327
- showHint(__props.hint, __props.error) ? (openBlock(), createElementBlock("span", {
344
+ n(e.hint, e.error) ? (s(), r("span", {
328
345
  key: 0,
329
- id: `hint-${__props.id}`,
346
+ id: `hint-${e.id}`,
330
347
  class: "hint"
331
- }, toDisplayString(__props.hint), 9, _hoisted_5$2)) : __props.error ? (openBlock(), createElementBlock("span", {
348
+ }, x(e.hint), 9, wt)) : e.error ? (s(), r("span", {
332
349
  key: 1,
333
- id: `error-${__props.id}`,
350
+ id: `error-${e.id}`,
334
351
  class: "error"
335
- }, toDisplayString(__props.error), 9, _hoisted_6$2)) : createCommentVNode("", true)
336
- ], 10, _hoisted_1$h);
352
+ }, x(e.error), 9, xt)) : T("", !0)
353
+ ], 10, vt);
337
354
  };
338
355
  }
339
356
  });
340
- _sfc_main$a.install = (app) => {
341
- app.component("SolTextarea", _sfc_main$a);
357
+ re.install = (e) => {
358
+ e.component("SolTextarea", re);
342
359
  };
343
- var Radio_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-radio-core{border-radius:.25rem;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center}.sol-radio-core:focus-within{outline:3px solid #292929;outline-offset:0px}.sol-radio-core>.radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));--tw-border-opacity: 1;border-color:rgba(41,41,41,var(--tw-border-opacity));border-radius:100%;border-style:solid;border-width:2px;cursor:pointer;height:1rem;margin-right:.5rem;width:1rem}.sol-radio-core>.radio:checked{--tw-bg-opacity: 1;background-color:rgba(255,176,31,var(--tw-bg-opacity))}.sol-radio-core>.radio:disabled{--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity));cursor:not-allowed}.sol-radio-core>.radio:disabled~.label{cursor:not-allowed;--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-radio-core>.label{cursor:pointer;display:inline-block;font-family:Rubik;font-weight:500;height:1rem;font-size:.875rem;line-height:1.33;padding-right:.5rem;--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}\n")();
344
- const _hoisted_1$g = ["id", "data-testid", "checked", "value", "name"];
345
- const _hoisted_2$g = ["for"];
346
- const _sfc_main$9 = /* @__PURE__ */ defineComponent({
360
+ const St = ["id", "data-testid", "checked", "value", "name"], Ct = ["for"], ae = /* @__PURE__ */ V({
347
361
  __name: "Radio",
348
362
  props: {
349
363
  id: null,
@@ -354,40 +368,33 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
354
368
  class: null
355
369
  },
356
370
  emits: ["change"],
357
- setup(__props, { emit }) {
358
- return (_ctx, _cache) => {
359
- return openBlock(), createElementBlock("div", {
360
- class: normalizeClass(["sol-radio-core", _ctx.$props.class])
361
- }, [
362
- createElementVNode("input", mergeProps(_ctx.$attrs, {
363
- id: `radio-${__props.name}-${__props.id}`,
364
- type: "radio",
365
- class: "radio",
366
- "data-testid": `radio-${__props.name}-${__props.id}`,
367
- checked: __props.checked,
368
- value: __props.value,
369
- name: __props.name,
370
- onChange: _cache[0] || (_cache[0] = ($event) => emit("change", __props.value))
371
- }), null, 16, _hoisted_1$g),
372
- createElementVNode("label", {
373
- class: "label",
374
- for: `radio-${__props.name}-${__props.id}`
375
- }, toDisplayString(__props.label), 9, _hoisted_2$g)
376
- ], 2);
377
- };
371
+ setup(e, { emit: l }) {
372
+ return (t, i) => (s(), r("div", {
373
+ class: S(["sol-radio-core", t.$props.class])
374
+ }, [
375
+ h("input", N(t.$attrs, {
376
+ id: `radio-${e.name}-${e.id}`,
377
+ type: "radio",
378
+ class: "radio",
379
+ "data-testid": `radio-${e.name}-${e.id}`,
380
+ checked: e.checked,
381
+ value: e.value,
382
+ name: e.name,
383
+ onChange: i[0] || (i[0] = (n) => l("change", e.value))
384
+ }), null, 16, St),
385
+ h("label", {
386
+ class: "label",
387
+ for: `radio-${e.name}-${e.id}`
388
+ }, x(e.label), 9, Ct)
389
+ ], 2));
378
390
  }
379
391
  });
380
- var RadioGroup_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-radio-group-core{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;text-align:left}.sol-radio-group-core>.title{margin-bottom:.75rem}.sol-radio-group-core>.container-radios{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex}.sol-radio-group-core>.container-radios>.radio{width:-webkit-min-content;width:-moz-min-content;width:min-content}.sol-radio-group-core>.hint,.sol-radio-group-core>.error{font-family:Rubik;font-weight:400;font-size:.75rem;line-height:1.15;margin-top:.25rem;text-align:left;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-radio-group-core>.hint{--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-radio-group-core>.error{--tw-text-opacity: 1;color:rgba(255,37,31,var(--tw-text-opacity))}\n")();
381
- const _hoisted_1$f = ["aria-labelledby"];
382
- const _hoisted_2$f = ["id", "data-testid"];
383
- const _hoisted_3$e = ["id"];
384
- const _hoisted_4$4 = ["id"];
385
- const _sfc_main$8 = /* @__PURE__ */ defineComponent({
392
+ const kt = ["aria-labelledby"], Bt = ["id", "data-testid"], Tt = ["id"], Mt = ["id"], ue = /* @__PURE__ */ V({
386
393
  __name: "RadioGroup",
387
394
  props: {
388
395
  id: null,
389
396
  title: null,
390
- hideTitle: { type: Boolean, default: false },
397
+ hideTitle: { type: Boolean, default: !1 },
391
398
  hint: null,
392
399
  error: null,
393
400
  radios: null,
@@ -395,87 +402,77 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
395
402
  direction: { default: "row" }
396
403
  },
397
404
  emits: ["change", "update:modelValue"],
398
- setup(__props, { emit }) {
399
- const props = __props;
400
- function showHint(hint, error) {
401
- return !!hint && !error;
405
+ setup(e, { emit: l }) {
406
+ const t = e;
407
+ function i(c, u) {
408
+ return !!c && !u;
402
409
  }
403
- function ariaDescribedby(hint, error) {
404
- if (error)
405
- return `error-${props.id}`;
406
- if (showHint(hint, error))
407
- return `hint-${props.id}`;
408
- return null;
410
+ function n(c, u) {
411
+ return u ? `error-${t.id}` : i(c, u) ? `hint-${t.id}` : null;
409
412
  }
410
- function isChecked(value) {
411
- return (props == null ? void 0 : props.modelValue) === value;
413
+ function a(c) {
414
+ return (t == null ? void 0 : t.modelValue) === c;
412
415
  }
413
- function emitUpdatedValue(radio) {
414
- emit("change", radio.value);
415
- emit("update:modelValue", radio.value);
416
+ function o(c) {
417
+ l("change", c.value), l("update:modelValue", c.value);
416
418
  }
417
- return (_ctx, _cache) => {
418
- return openBlock(), createElementBlock("fieldset", {
419
- class: "sol-radio-group-core",
420
- "aria-labelledby": `radio-group-title-${__props.id}`
419
+ return (c, u) => (s(), r("fieldset", {
420
+ class: "sol-radio-group-core",
421
+ "aria-labelledby": `radio-group-title-${e.id}`
422
+ }, [
423
+ y(c.$slots, "title", {
424
+ id: `radio-group-title-${e.id}`
425
+ }, () => [
426
+ h("legend", {
427
+ id: `radio-group-title-${e.id}`,
428
+ class: S(["title", { "sr-only": e.hideTitle }]),
429
+ "data-testid": `radio-group-title-${e.id}`
430
+ }, x(e.title), 11, Bt)
431
+ ]),
432
+ h("ul", {
433
+ class: S(["container-radios", { "flex-col": e.direction === "column" }])
421
434
  }, [
422
- renderSlot(_ctx.$slots, "title", {
423
- id: `radio-group-title-${__props.id}`
435
+ y(c.$slots, "default", {
436
+ radios: e.radios,
437
+ direction: e.direction
424
438
  }, () => [
425
- createElementVNode("legend", {
426
- id: `radio-group-title-${__props.id}`,
427
- class: normalizeClass(["title", { "sr-only": __props.hideTitle }]),
428
- "data-testid": `radio-group-title-${__props.id}`
429
- }, toDisplayString(__props.title), 11, _hoisted_2$f)
430
- ]),
431
- createElementVNode("ul", {
432
- class: normalizeClass(["container-radios", { "flex-col": __props.direction === "column" }])
433
- }, [
434
- renderSlot(_ctx.$slots, "default", {
435
- radios: __props.radios,
436
- direction: __props.direction
437
- }, () => [
438
- (openBlock(true), createElementBlock(Fragment, null, renderList(__props.radios, (radio, index) => {
439
- var _a2;
440
- return openBlock(), createElementBlock("li", { key: index }, [
441
- createVNode(_sfc_main$9, mergeProps(_ctx.$attrs, {
442
- id: (_a2 = radio == null ? void 0 : radio.id) != null ? _a2 : `${radio.value}`,
443
- class: ["radio", { "mb-micro": __props.direction === "column", "mr-micro": __props.direction === "row" }],
444
- name: radio.name,
445
- value: radio.value,
446
- label: radio.label,
447
- checked: isChecked(radio.value),
448
- "aria-invalid": !!__props.error,
449
- "aria-describedby": ariaDescribedby(__props.hint, __props.error),
450
- onChange: ($event) => emitUpdatedValue(radio)
451
- }), null, 16, ["id", "class", "name", "value", "label", "checked", "aria-invalid", "aria-describedby", "onChange"])
452
- ]);
453
- }), 128))
454
- ])
455
- ], 2),
456
- showHint(__props.hint, __props.error) ? (openBlock(), createElementBlock("p", {
457
- key: 0,
458
- id: `hint-${__props.id}`,
459
- class: "hint"
460
- }, toDisplayString(__props.hint), 9, _hoisted_3$e)) : __props.error ? (openBlock(), createElementBlock("p", {
461
- key: 1,
462
- id: `error-${__props.id}`,
463
- class: "error"
464
- }, toDisplayString(__props.error), 9, _hoisted_4$4)) : createCommentVNode("", true)
465
- ], 8, _hoisted_1$f);
466
- };
439
+ (s(!0), r(J, null, X(e.radios, (f, v) => {
440
+ var z;
441
+ return s(), r("li", { key: v }, [
442
+ M(ae, N(c.$attrs, {
443
+ id: (z = f == null ? void 0 : f.id) != null ? z : `${f.value}`,
444
+ class: ["radio", { "mb-micro": e.direction === "column", "mr-micro": e.direction === "row" }],
445
+ name: f.name,
446
+ value: f.value,
447
+ label: f.label,
448
+ checked: a(f.value),
449
+ "aria-invalid": !!e.error,
450
+ "aria-describedby": n(e.hint, e.error),
451
+ onChange: (w) => o(f)
452
+ }), null, 16, ["id", "class", "name", "value", "label", "checked", "aria-invalid", "aria-describedby", "onChange"])
453
+ ]);
454
+ }), 128))
455
+ ])
456
+ ], 2),
457
+ i(e.hint, e.error) ? (s(), r("p", {
458
+ key: 0,
459
+ id: `hint-${e.id}`,
460
+ class: "hint"
461
+ }, x(e.hint), 9, Tt)) : e.error ? (s(), r("p", {
462
+ key: 1,
463
+ id: `error-${e.id}`,
464
+ class: "error"
465
+ }, x(e.error), 9, Mt)) : T("", !0)
466
+ ], 8, kt));
467
467
  }
468
468
  });
469
- _sfc_main$9.install = (app) => {
470
- app.component("SolRadio", _sfc_main$9);
469
+ ae.install = (e) => {
470
+ e.component("SolRadio", ae);
471
471
  };
472
- _sfc_main$8.install = (app) => {
473
- app.component("SolRadioGroup", _sfc_main$8);
472
+ ue.install = (e) => {
473
+ e.component("SolRadioGroup", ue);
474
474
  };
475
- var Checkbox_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => '.sol-checkbox-core{border-radius:.25rem;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center}.sol-checkbox-core:focus-within{outline:3px solid #292929;outline-offset:0px}.sol-checkbox-core:hover>.checkbox:not(:checked){--tw-bg-opacity: 1;background-color:rgba(255,176,31,var(--tw-bg-opacity))}.sol-checkbox-core:hover>.checkbox:checked:before{--tw-bg-opacity: 1;background-color:rgba(255,176,31,var(--tw-bg-opacity))}.sol-checkbox-core>.checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));--tw-border-opacity: 1;border-color:rgba(41,41,41,var(--tw-border-opacity));border-radius:.25rem;border-width:2px;display:-ms-grid;display:grid;place-content:center;height:1rem;margin-right:.5rem;width:1rem}.sol-checkbox-core>.checkbox:before{content:"";transform:scale(0);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);--tw-bg-opacity: 1;background-color:rgba(255,248,235,var(--tw-bg-opacity));height:.5rem;width:.5rem;-webkit-transform-origin:bottom left;-ms-transform-origin:bottom left;transform-origin:bottom left;-webkit-transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);-o-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-duration:.15s;-o-transition-duration:.15s;transition-duration:.15s}.sol-checkbox-core>.checkbox:checked:before{transform:scale(1)}.sol-checkbox-core>.checkbox:checked{--tw-bg-opacity: 1;background-color:rgba(41,41,41,var(--tw-bg-opacity))}.sol-checkbox-core>.checkbox:disabled{--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity));cursor:not-allowed}.sol-checkbox-core>.checkbox:disabled~.label{cursor:not-allowed;--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-checkbox-core>.label{cursor:pointer;display:inline-block;font-family:Rubik;font-weight:500;height:1rem;font-size:.875rem;line-height:1.33;padding-right:.5rem;--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}\n')();
476
- const _hoisted_1$e = ["id", "data-testid", "checked", "value", "name"];
477
- const _hoisted_2$e = ["for"];
478
- const _sfc_main$7 = /* @__PURE__ */ defineComponent({
475
+ const zt = ["id", "data-testid", "checked", "value", "name"], Vt = ["for"], oe = /* @__PURE__ */ V({
479
476
  __name: "Checkbox",
480
477
  props: {
481
478
  id: null,
@@ -486,40 +483,33 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
486
483
  class: null
487
484
  },
488
485
  emits: ["change"],
489
- setup(__props, { emit }) {
490
- return (_ctx, _cache) => {
491
- return openBlock(), createElementBlock("div", {
492
- class: normalizeClass(["sol-checkbox-core", _ctx.$props.class])
493
- }, [
494
- createElementVNode("input", mergeProps(_ctx.$attrs, {
495
- id: `checkbox-${__props.name}-${__props.id}`,
496
- type: "checkbox",
497
- class: "checkbox",
498
- "data-testid": `checkbox-${__props.name}-${__props.id}`,
499
- checked: __props.checked,
500
- value: __props.value,
501
- name: __props.name,
502
- onChange: _cache[0] || (_cache[0] = ($event) => emit("change", __props.value))
503
- }), null, 16, _hoisted_1$e),
504
- createElementVNode("label", {
505
- class: "label",
506
- for: `checkbox-${__props.name}-${__props.id}`
507
- }, toDisplayString(__props.label), 9, _hoisted_2$e)
508
- ], 2);
509
- };
486
+ setup(e, { emit: l }) {
487
+ return (t, i) => (s(), r("div", {
488
+ class: S(["sol-checkbox-core", t.$props.class])
489
+ }, [
490
+ h("input", N(t.$attrs, {
491
+ id: `checkbox-${e.name}-${e.id}`,
492
+ type: "checkbox",
493
+ class: "checkbox",
494
+ "data-testid": `checkbox-${e.name}-${e.id}`,
495
+ checked: e.checked,
496
+ value: e.value,
497
+ name: e.name,
498
+ onChange: i[0] || (i[0] = (n) => l("change", e.value))
499
+ }), null, 16, zt),
500
+ h("label", {
501
+ class: "label",
502
+ for: `checkbox-${e.name}-${e.id}`
503
+ }, x(e.label), 9, Vt)
504
+ ], 2));
510
505
  }
511
506
  });
512
- var CheckboxGroup_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-checkbox-group-core{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;text-align:left}.sol-checkbox-group-core>.title{font-weight:700;margin-bottom:.75rem}.sol-checkbox-group-core>.container-checkboxes{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex}.sol-checkbox-group-core>.container-checkboxes>.checkbox{width:-webkit-min-content;width:-moz-min-content;width:min-content}.sol-checkbox-group-core>.hint,.sol-checkbox-group-core>.error{font-family:Rubik;font-weight:400;font-size:.75rem;line-height:1.15;margin-top:.25rem;text-align:left;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-checkbox-group-core>.hint{--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-checkbox-group-core>.error{--tw-text-opacity: 1;color:rgba(255,37,31,var(--tw-text-opacity))}\n")();
513
- const _hoisted_1$d = ["aria-labelledby"];
514
- const _hoisted_2$d = ["id", "data-testid"];
515
- const _hoisted_3$d = ["id"];
516
- const _hoisted_4$3 = ["id"];
517
- const _sfc_main$6 = /* @__PURE__ */ defineComponent({
507
+ const Lt = ["aria-labelledby"], At = ["id", "data-testid"], It = ["id"], Et = ["id"], he = /* @__PURE__ */ V({
518
508
  __name: "CheckboxGroup",
519
509
  props: {
520
510
  id: null,
521
511
  title: null,
522
- hideTitle: { type: Boolean, default: false },
512
+ hideTitle: { type: Boolean, default: !1 },
523
513
  hint: null,
524
514
  error: null,
525
515
  checkboxes: null,
@@ -527,95 +517,84 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
527
517
  direction: { default: "row" }
528
518
  },
529
519
  emits: ["change", "update:modelValue"],
530
- setup(__props, { emit }) {
531
- const props = __props;
532
- function showHint(hint, error) {
533
- return !!hint && !error;
520
+ setup(e, { emit: l }) {
521
+ const t = e;
522
+ function i(u, f) {
523
+ return !!u && !f;
534
524
  }
535
- function ariaDescribedby(hint, error) {
536
- if (error)
537
- return `error-${props.id}`;
538
- if (showHint(hint, error))
539
- return `hint-${props.id}`;
540
- return null;
525
+ function n(u, f) {
526
+ return f ? `error-${t.id}` : i(u, f) ? `hint-${t.id}` : null;
541
527
  }
542
- function isChecked(value) {
543
- var _a2;
544
- return (_a2 = props == null ? void 0 : props.modelValue) == null ? void 0 : _a2.includes(value);
528
+ function a(u) {
529
+ var f;
530
+ return (f = t == null ? void 0 : t.modelValue) == null ? void 0 : f.includes(u);
545
531
  }
546
- function sanitizeNewModelValue(value) {
547
- return Array.isArray(props == null ? void 0 : props.modelValue) ? [...props.modelValue, value] : [value];
532
+ function o(u) {
533
+ return Array.isArray(t == null ? void 0 : t.modelValue) ? [...t.modelValue, u] : [u];
548
534
  }
549
- function emitUpdatedValue(checkbox) {
550
- var _a2;
551
- emit("change", checkbox.value);
552
- const checked = isChecked(checkbox.value) ? (_a2 = props.modelValue) == null ? void 0 : _a2.filter((value) => value !== checkbox.value) : sanitizeNewModelValue(checkbox.value);
553
- emit("update:modelValue", checked);
535
+ function c(u) {
536
+ var v;
537
+ l("change", u.value);
538
+ const f = a(u.value) ? (v = t.modelValue) == null ? void 0 : v.filter((z) => z !== u.value) : o(u.value);
539
+ l("update:modelValue", f);
554
540
  }
555
- return (_ctx, _cache) => {
556
- return openBlock(), createElementBlock("fieldset", {
557
- class: "sol-checkbox-group-core",
558
- "aria-labelledby": `checkbox-group-title-${__props.id}`
541
+ return (u, f) => (s(), r("fieldset", {
542
+ class: "sol-checkbox-group-core",
543
+ "aria-labelledby": `checkbox-group-title-${e.id}`
544
+ }, [
545
+ y(u.$slots, "title", {
546
+ id: `checkbox-group-title-${e.id}`
547
+ }, () => [
548
+ h("legend", {
549
+ id: `checkbox-group-title-${e.id}`,
550
+ class: S(["title", { "sr-only": e.hideTitle }]),
551
+ "data-testid": `checkbox-group-title-${e.id}`
552
+ }, x(e.title), 11, At)
553
+ ]),
554
+ h("ul", {
555
+ class: S(["container-checkboxes", { "flex-col": e.direction === "column" }])
559
556
  }, [
560
- renderSlot(_ctx.$slots, "title", {
561
- id: `checkbox-group-title-${__props.id}`
557
+ y(u.$slots, "default", {
558
+ checkboxes: e.checkboxes,
559
+ direction: e.direction
562
560
  }, () => [
563
- createElementVNode("legend", {
564
- id: `checkbox-group-title-${__props.id}`,
565
- class: normalizeClass(["title", { "sr-only": __props.hideTitle }]),
566
- "data-testid": `checkbox-group-title-${__props.id}`
567
- }, toDisplayString(__props.title), 11, _hoisted_2$d)
568
- ]),
569
- createElementVNode("ul", {
570
- class: normalizeClass(["container-checkboxes", { "flex-col": __props.direction === "column" }])
571
- }, [
572
- renderSlot(_ctx.$slots, "default", {
573
- checkboxes: __props.checkboxes,
574
- direction: __props.direction
575
- }, () => [
576
- (openBlock(true), createElementBlock(Fragment, null, renderList(__props.checkboxes, (checkbox, index) => {
577
- var _a2;
578
- return openBlock(), createElementBlock("li", { key: index }, [
579
- createVNode(_sfc_main$7, mergeProps(_ctx.$attrs, {
580
- id: (_a2 = checkbox == null ? void 0 : checkbox.id) != null ? _a2 : `${checkbox.value}`,
581
- class: ["checkbox", { "mb-micro": __props.direction === "column", "mr-micro": __props.direction === "row" }],
582
- label: checkbox.label,
583
- name: checkbox.name,
584
- value: checkbox.value,
585
- checked: isChecked(checkbox.value),
586
- "aria-invalid": !!__props.error,
587
- "aria-describedby": ariaDescribedby(__props.hint, __props.error),
588
- onChange: ($event) => emitUpdatedValue(checkbox)
589
- }), null, 16, ["id", "class", "label", "name", "value", "checked", "aria-invalid", "aria-describedby", "onChange"])
590
- ]);
591
- }), 128))
592
- ])
593
- ], 2),
594
- showHint(__props.hint, __props.error) ? (openBlock(), createElementBlock("p", {
595
- key: 0,
596
- id: `hint-${__props.id}`,
597
- class: "hint"
598
- }, toDisplayString(__props.hint), 9, _hoisted_3$d)) : __props.error ? (openBlock(), createElementBlock("p", {
599
- key: 1,
600
- id: `error-${__props.id}`,
601
- class: "error"
602
- }, toDisplayString(__props.error), 9, _hoisted_4$3)) : createCommentVNode("", true)
603
- ], 8, _hoisted_1$d);
604
- };
561
+ (s(!0), r(J, null, X(e.checkboxes, (v, z) => {
562
+ var w;
563
+ return s(), r("li", { key: z }, [
564
+ M(oe, N(u.$attrs, {
565
+ id: (w = v == null ? void 0 : v.id) != null ? w : `${v.value}`,
566
+ class: ["checkbox", { "mb-micro": e.direction === "column", "mr-micro": e.direction === "row" }],
567
+ label: v.label,
568
+ name: v.name,
569
+ value: v.value,
570
+ checked: a(v.value),
571
+ "aria-invalid": !!e.error,
572
+ "aria-describedby": n(e.hint, e.error),
573
+ onChange: (C) => c(v)
574
+ }), null, 16, ["id", "class", "label", "name", "value", "checked", "aria-invalid", "aria-describedby", "onChange"])
575
+ ]);
576
+ }), 128))
577
+ ])
578
+ ], 2),
579
+ i(e.hint, e.error) ? (s(), r("p", {
580
+ key: 0,
581
+ id: `hint-${e.id}`,
582
+ class: "hint"
583
+ }, x(e.hint), 9, It)) : e.error ? (s(), r("p", {
584
+ key: 1,
585
+ id: `error-${e.id}`,
586
+ class: "error"
587
+ }, x(e.error), 9, Et)) : T("", !0)
588
+ ], 8, Lt));
605
589
  }
606
590
  });
607
- _sfc_main$7.install = (app) => {
608
- app.component("SolCheckbox", _sfc_main$7);
591
+ oe.install = (e) => {
592
+ e.component("SolCheckbox", oe);
609
593
  };
610
- _sfc_main$6.install = (app) => {
611
- app.component("SolCheckboxGroup", _sfc_main$6);
594
+ he.install = (e) => {
595
+ e.component("SolCheckboxGroup", he);
612
596
  };
613
- var Switch_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => '.sol-switch-core{border-radius:1rem;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}.sol-switch-core[disabled=""]>.label,.sol-switch-core[disabled=true]>.label{cursor:not-allowed;--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-switch-core[disabled=""]>.switch-container,.sol-switch-core[disabled=true]>.switch-container{--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity));--tw-border-opacity: .16}.sol-switch-core.-horizontal{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;width:100%}.sol-switch-core:focus-within>.switch-container{outline:3px solid #292929;outline-offset:0px}.sol-switch-core>.label{cursor:pointer;display:inline-block;font-family:Rubik;font-weight:500;height:1rem;font-size:.875rem;line-height:1.33;padding-right:.5rem;--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}.sol-switch-core>.switch-container{--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity));border-radius:1rem;border-width:2px;height:1.5rem;overflow:hidden;position:relative;width:3rem}.sol-switch-core>.switch-container:hover>.switch:checked~.ellipse{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.sol-switch-core>.switch-container>.switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;height:100%;width:100%;transition:.2s background-color}.sol-switch-core>.switch-container>.switch:checked{--tw-bg-opacity: 1;background-color:rgba(255,176,31,var(--tw-bg-opacity))}.sol-switch-core>.switch-container>.switch:checked~.ellipse{transform:translate(140%)}.sol-switch-core>.switch-container>.switch[disabled=""],.sol-switch-core>.switch-container>.switch[disabled=true]{--tw-bg-opacity: 1;background-color:rgba(245,245,245,var(--tw-bg-opacity));cursor:not-allowed}.sol-switch-core>.switch-container>.switch[disabled=""]~.ellipse,.sol-switch-core>.switch-container>.switch[disabled=true]~.ellipse{--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity))}.sol-switch-core>.switch-container>.ellipse{--tw-bg-opacity: 1;background-color:rgba(41,41,41,var(--tw-bg-opacity));border-radius:.5rem;display:inline-block;height:1rem;pointer-events:none;position:absolute;top:11.111111%;left:.25rem;width:1rem;transition:.2s transform,.15s background-color}\n')();
614
- const _hoisted_1$c = ["id", "for", "data-testid"];
615
- const _hoisted_2$c = { class: "switch-container" };
616
- const _hoisted_3$c = ["id", "aria-checked", "aria-labelledby", "data-testid", "checked", "value", "name"];
617
- const _hoisted_4$2 = /* @__PURE__ */ createElementVNode("span", { class: "ellipse" }, null, -1);
618
- const _sfc_main$5 = /* @__PURE__ */ defineComponent({
597
+ const Pt = ["id", "for", "data-testid"], Ot = { class: "switch-container" }, Dt = ["id", "aria-checked", "aria-labelledby", "data-testid", "checked", "value", "name"], Rt = /* @__PURE__ */ h("span", { class: "ellipse" }, null, -1), fe = /* @__PURE__ */ V({
619
598
  __name: "Switch",
620
599
  props: {
621
600
  id: null,
@@ -628,169 +607,129 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
628
607
  horizontalLabel: { type: Boolean }
629
608
  },
630
609
  emits: ["change"],
631
- setup(__props, { emit }) {
632
- return (_ctx, _cache) => {
633
- return openBlock(), createElementBlock("div", {
634
- class: normalizeClass(["sol-switch-core", [_ctx.$props.class, { "-horizontal": __props.horizontalLabel }]])
635
- }, [
636
- createElementVNode("label", {
637
- id: `switch-label-${__props.name}-${__props.id}`,
638
- class: normalizeClass(["label", { "mb-1": !__props.horizontalLabel, "sr-only": __props.hideLabel }]),
639
- for: `switch-${__props.name}-${__props.id}`,
640
- "data-testid": `switch-label-${__props.name}-${__props.id}`
641
- }, toDisplayString(__props.label), 11, _hoisted_1$c),
642
- createElementVNode("div", _hoisted_2$c, [
643
- createElementVNode("input", mergeProps(_ctx.$attrs, {
644
- id: `switch-${__props.name}-${__props.id}`,
645
- type: "checkbox",
646
- class: "switch",
647
- role: "switch",
648
- "aria-checked": __props.checked,
649
- "aria-labelledby": `switch-label-${__props.name}-${__props.id}`,
650
- "data-testid": `switch-${__props.name}-${__props.id}`,
651
- checked: __props.checked,
652
- value: __props.value,
653
- name: __props.name,
654
- onChange: _cache[0] || (_cache[0] = ($event) => emit("change", __props.value))
655
- }), null, 16, _hoisted_3$c),
656
- _hoisted_4$2
657
- ])
658
- ], 2);
659
- };
610
+ setup(e, { emit: l }) {
611
+ return (t, i) => (s(), r("div", {
612
+ class: S(["sol-switch-core", [t.$props.class, { "-horizontal": e.horizontalLabel }]])
613
+ }, [
614
+ h("label", {
615
+ id: `switch-label-${e.name}-${e.id}`,
616
+ class: S(["label", { "mb-1": !e.horizontalLabel, "sr-only": e.hideLabel }]),
617
+ for: `switch-${e.name}-${e.id}`,
618
+ "data-testid": `switch-label-${e.name}-${e.id}`
619
+ }, x(e.label), 11, Pt),
620
+ h("div", Ot, [
621
+ h("input", N(t.$attrs, {
622
+ id: `switch-${e.name}-${e.id}`,
623
+ type: "checkbox",
624
+ class: "switch",
625
+ role: "switch",
626
+ "aria-checked": e.checked,
627
+ "aria-labelledby": `switch-label-${e.name}-${e.id}`,
628
+ "data-testid": `switch-${e.name}-${e.id}`,
629
+ checked: e.checked,
630
+ value: e.value,
631
+ name: e.name,
632
+ onChange: i[0] || (i[0] = (n) => l("change", e.value))
633
+ }), null, 16, Dt),
634
+ Rt
635
+ ])
636
+ ], 2));
660
637
  }
661
638
  });
662
- _sfc_main$5.install = (app) => {
663
- app.component("SolSwitch", _sfc_main$5);
639
+ fe.install = (e) => {
640
+ e.component("SolSwitch", fe);
664
641
  };
665
- function tryOnScopeDispose(fn) {
666
- if (getCurrentScope()) {
667
- onScopeDispose(fn);
668
- return true;
669
- }
670
- return false;
671
- }
672
- var _a;
673
- const isClient = typeof window !== "undefined";
674
- const isString = (val) => typeof val === "string";
675
- const noop = () => {
642
+ var Se;
643
+ const _ = typeof window < "u", pt = (e) => typeof e == "string", de = () => {
676
644
  };
677
- isClient && ((_a = window == null ? void 0 : window.navigator) == null ? void 0 : _a.userAgent) && /iP(ad|hone|od)/.test(window.navigator.userAgent);
678
- function unrefElement(elRef) {
679
- var _a2;
680
- const plain = unref(elRef);
681
- return (_a2 = plain == null ? void 0 : plain.$el) != null ? _a2 : plain;
645
+ _ && ((Se = window == null ? void 0 : window.navigator) == null ? void 0 : Se.userAgent) && /iP(ad|hone|od)/.test(window.navigator.userAgent);
646
+ function Ht(e) {
647
+ return typeof e == "function" ? e() : g(e);
682
648
  }
683
- const defaultWindow = isClient ? window : void 0;
684
- isClient ? window.document : void 0;
685
- isClient ? window.navigator : void 0;
686
- isClient ? window.location : void 0;
687
- function useEventListener(...args) {
688
- let target;
689
- let event;
690
- let listener;
691
- let options;
692
- if (isString(args[0])) {
693
- [event, listener, options] = args;
694
- target = defaultWindow;
695
- } else {
696
- [target, event, listener, options] = args;
697
- }
698
- if (!target)
699
- return noop;
700
- let cleanup = noop;
701
- const stopWatch = watch(() => unrefElement(target), (el) => {
702
- cleanup();
703
- if (!el)
704
- return;
705
- el.addEventListener(event, listener, options);
706
- cleanup = () => {
707
- el.removeEventListener(event, listener, options);
708
- cleanup = noop;
709
- };
710
- }, { immediate: true, flush: "post" });
711
- const stop = () => {
712
- stopWatch();
713
- cleanup();
649
+ function Nt(e) {
650
+ return Re() ? (pe(e), !0) : !1;
651
+ }
652
+ function Y(e) {
653
+ var l;
654
+ const t = Ht(e);
655
+ return (l = t == null ? void 0 : t.$el) != null ? l : t;
656
+ }
657
+ const Ve = _ ? window : void 0;
658
+ _ && window.document;
659
+ _ && window.navigator;
660
+ _ && window.location;
661
+ function te(...e) {
662
+ let l, t, i, n;
663
+ if (pt(e[0]) ? ([t, i, n] = e, l = Ve) : [l, t, i, n] = e, !l)
664
+ return de;
665
+ let a = de;
666
+ const o = He(() => Y(l), (u) => {
667
+ a(), u && (u.addEventListener(t, i, n), a = () => {
668
+ u.removeEventListener(t, i, n), a = de;
669
+ });
670
+ }, { immediate: !0, flush: "post" }), c = () => {
671
+ o(), a();
714
672
  };
715
- tryOnScopeDispose(stop);
716
- return stop;
673
+ return Nt(c), c;
717
674
  }
718
- function onClickOutside(target, handler, options = {}) {
719
- const { window: window2 = defaultWindow, ignore, capture = true } = options;
720
- if (!window2)
675
+ function Le(e, l, t = {}) {
676
+ const { window: i = Ve, ignore: n, capture: a = !0, detectIframe: o = !1 } = t;
677
+ if (!i)
721
678
  return;
722
- const shouldListen = ref(true);
723
- let fallback;
724
- const listener = (event) => {
725
- window2.clearTimeout(fallback);
726
- const el = unrefElement(target);
727
- const composedPath = event.composedPath();
728
- if (!el || el === event.target || composedPath.includes(el) || !shouldListen.value)
729
- return;
730
- if (ignore && ignore.length > 0) {
731
- if (ignore.some((target2) => {
732
- const el2 = unrefElement(target2);
733
- return el2 && (event.target === el2 || composedPath.includes(el2));
734
- }))
735
- return;
736
- }
737
- handler(event);
738
- };
739
- const cleanup = [
740
- useEventListener(window2, "click", listener, { passive: true, capture }),
741
- useEventListener(window2, "pointerdown", (e) => {
742
- const el = unrefElement(target);
743
- shouldListen.value = !!el && !e.composedPath().includes(el);
744
- }, { passive: true }),
745
- useEventListener(window2, "pointerup", (e) => {
746
- fallback = window2.setTimeout(() => listener(e), 50);
747
- }, { passive: true })
748
- ];
749
- const stop = () => cleanup.forEach((fn) => fn());
750
- return stop;
679
+ const c = I(!0);
680
+ let u;
681
+ const f = (w) => {
682
+ i.clearTimeout(u);
683
+ const C = Y(e), k = w.composedPath();
684
+ !C || C === w.target || k.includes(C) || !c.value || n && n.length > 0 && n.some((A) => {
685
+ const R = Y(A);
686
+ return R && (w.target === R || k.includes(R));
687
+ }) || l(w);
688
+ }, v = [
689
+ te(i, "click", f, { passive: !0, capture: a }),
690
+ te(i, "pointerdown", (w) => {
691
+ const C = Y(e);
692
+ c.value = !!C && !w.composedPath().includes(C);
693
+ }, { passive: !0 }),
694
+ te(i, "pointerup", (w) => {
695
+ if (w.button === 0) {
696
+ const C = w.composedPath();
697
+ w.composedPath = () => C, u = i.setTimeout(() => f(w), 50);
698
+ }
699
+ }, { passive: !0 }),
700
+ o && te(i, "blur", (w) => {
701
+ var C;
702
+ const k = Y(e);
703
+ ((C = document.activeElement) == null ? void 0 : C.tagName) === "IFRAME" && !(k != null && k.contains(document.activeElement)) && l(w);
704
+ })
705
+ ].filter(Boolean);
706
+ return () => v.forEach((w) => w());
751
707
  }
752
- const _global = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
753
- const globalKey = "__vueuse_ssr_handlers__";
754
- _global[globalKey] = _global[globalKey] || {};
755
- _global[globalKey];
756
- var SwipeDirection;
757
- (function(SwipeDirection2) {
758
- SwipeDirection2["UP"] = "UP";
759
- SwipeDirection2["RIGHT"] = "RIGHT";
760
- SwipeDirection2["DOWN"] = "DOWN";
761
- SwipeDirection2["LEFT"] = "LEFT";
762
- SwipeDirection2["NONE"] = "NONE";
763
- })(SwipeDirection || (SwipeDirection = {}));
764
- const _hoisted_1$b = {
708
+ const me = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, $e = "__vueuse_ssr_handlers__";
709
+ me[$e] = me[$e] || {};
710
+ me[$e];
711
+ var Ce;
712
+ (function(e) {
713
+ e.UP = "UP", e.RIGHT = "RIGHT", e.DOWN = "DOWN", e.LEFT = "LEFT", e.NONE = "NONE";
714
+ })(Ce || (Ce = {}));
715
+ const Ut = {
765
716
  preserveAspectRatio: "xMidYMid meet",
766
717
  viewBox: "0 0 24 24",
767
- width: "1.2em",
768
- height: "1.2em"
769
- };
770
- const _hoisted_2$b = /* @__PURE__ */ createElementVNode("path", {
718
+ width: "1em",
719
+ height: "1em"
720
+ }, Gt = /* @__PURE__ */ h("path", {
771
721
  fill: "currentColor",
772
722
  d: "M10 4a6 6 0 1 0 0 12a6 6 0 0 0 0-12zm-8 6a8 8 0 1 1 14.32 4.906l5.387 5.387a1 1 0 0 1-1.414 1.414l-5.387-5.387A8 8 0 0 1 2 10z"
773
- }, null, -1);
774
- const _hoisted_3$b = [
775
- _hoisted_2$b
723
+ }, null, -1), Ft = [
724
+ Gt
776
725
  ];
777
- function render$6(_ctx, _cache) {
778
- return openBlock(), createElementBlock("svg", _hoisted_1$b, _hoisted_3$b);
726
+ function Kt(e, l) {
727
+ return s(), r("svg", Ut, Ft);
779
728
  }
780
- var IconSearch = { name: "mi-search", render: render$6 };
781
- var Dropdown_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => '.dropdown-leave-from,.dropdown-enter-to{transform:rotateX(0)}.dropdown-leave-to,.dropdown-enter-from{transform:rotateX(-90deg)}@keyframes dropdown-item{0%{transform:rotateX(-90deg)}to{transform:rotateX(0)}}.sol-dropdown-core{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;position:relative}.sol-dropdown-core:focus-within>.button-toggle-dropdown>*{outline:3px solid #292929;outline-offset:0px;box-shadow:0 0 0 2px #ffba4732}.sol-dropdown-core>.button-toggle-dropdown{min-height:2rem;border-radius:.5rem;scroll-margin-top:14rem}.sol-dropdown-core>.button-toggle-dropdown:disabled{cursor:not-allowed}.sol-dropdown-core.-smaller>.dropdown-container,.sol-dropdown-core.-smaller>.toggle-dropdown{min-width:64px;width:fit-content}.sol-dropdown-core>.label{font-family:Rubik;font-size:.875rem;line-height:1.15;--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity));margin-bottom:.25rem}.sol-dropdown-core>.label.-disabled{--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-dropdown-core>.dropdown-container{position:absolute;top:100%;--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));margin-top:.5rem;min-width:12.5rem;overflow:hidden;padding-top:.5rem;padding-bottom:.5rem;width:100%;border-radius:inherit;z-index:6;transform-origin:top center;transition:transform .2s ease-in;box-shadow:1px 1px 6px 1px #21212132;will-change:transform}.sol-dropdown-core>.dropdown-container>.search-container{margin-left:.5rem;margin-right:.5rem;position:relative}.sol-dropdown-core>.dropdown-container>.search-container.-loading:before{content:"";animation:loading 1.5s ease-out infinite;background:linear-gradient(90deg,#ffb600,#ffcd70,#ffb600);transform-origin:left;transform:scaleX(0);will-change:transform;display:inline-block;position:absolute;bottom:0px;height:.25rem;width:100%}@keyframes loading{0%{transform:scaleX(0) translate(0)}40%{transform:scaleX(1)}to{transform:scaleX(1) translate(110%)}}.sol-dropdown-core>.dropdown-container>.search-container>.search{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));margin-bottom:.5rem;margin-bottom:1.5rem;width:100%}.sol-dropdown-core>.dropdown-container>.search-container>.icon{pointer-events:none;position:absolute;right:.5rem;top:10px}.sol-dropdown-core>.dropdown-container>.dropdown-list-core{max-height:240px;overflow-y:auto;padding-left:.5rem;padding-right:.5rem;width:100%;scrollbar-width:thin;scroll-behavior:smooth}.sol-dropdown-core>.dropdown-container>.dropdown-list-core::-webkit-scrollbar{width:.25rem}.sol-dropdown-core>.dropdown-container>.dropdown-list-core::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity))}.sol-dropdown-core>.dropdown-container>.dropdown-list-core::-webkit-scrollbar-thumb{--tw-bg-opacity: 1;background-color:rgba(143,143,143,var(--tw-bg-opacity))}.sol-dropdown-core>.dropdown-container>.dropdown-list-core>.no-data{font-family:Lato,sans-serif;font-size:.875rem;line-height:1.15;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-dropdown-core>.dropdown-container>.dropdown-list-core>.dropdown-item{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;cursor:pointer;height:2rem;margin-bottom:.5rem;padding-left:.5rem;padding-right:.5rem;width:100%;font-family:Lato,sans-serif;font-size:.875rem;line-height:1.15;white-space:nowrap;transition:border-radius .12s ease-in;transform:rotateX(-90deg);animation:dropdown-item .3s forwards cubic-bezier(.175,.885,.32,1.275);animation-delay:calc(.2s + var(--item, 2) * 50ms)}.sol-dropdown-core>.dropdown-container>.dropdown-list-core>.dropdown-item:hover,.sol-dropdown-core>.dropdown-container>.dropdown-list-core>.dropdown-item:focus{--tw-bg-opacity: 1;background-color:rgba(255,248,235,var(--tw-bg-opacity));border-radius:.5rem}.sol-dropdown-core>.dropdown-container>.dropdown-list-core>.dropdown-item[selected=true]{--tw-bg-opacity: 1;background-color:rgba(255,248,235,var(--tw-bg-opacity));--tw-border-opacity: 1;border-bottom-color:rgba(255,176,31,var(--tw-border-opacity));border-bottom-width:1px}.sol-dropdown-core>.dropdown-container>.dropdown-list-core>.dropdown-item[selected=true]:hover,.sol-dropdown-core>.dropdown-container>.dropdown-list-core>.dropdown-item[selected=true]:focus{filter:saturate(2.5)}\n')();
782
- const _hoisted_1$a = ["data-testid"];
783
- const _hoisted_2$a = ["id", "for"];
784
- const _hoisted_3$a = ["id", "disabled", "data-testid", "aria-expanded", "aria-labelledby", "aria-label", "aria-controls", "onClick"];
785
- const _hoisted_4$1 = { class: "dropdown-container" };
786
- const _hoisted_5$1 = ["id", "data-testid", "aria-multiselectable", "aria-labelledby"];
787
- const _hoisted_6$1 = ["id", "data-testid", "selected", "aria-selected", "onClick", "onKeyup"];
788
- const _hoisted_7 = {
729
+ const Ae = { name: "mi-search", render: Kt }, Yt = ["data-testid"], Wt = ["id", "for"], Zt = ["id", "disabled", "data-testid", "aria-expanded", "aria-labelledby", "aria-label", "aria-controls", "onClick"], jt = { class: "dropdown-container" }, qt = ["id", "data-testid", "aria-multiselectable", "aria-labelledby"], Qt = ["id", "data-testid", "selected", "aria-selected", "onClick", "onKeyup"], Jt = {
789
730
  key: 0,
790
731
  class: "no-data"
791
- };
792
- const _hoisted_8 = /* @__PURE__ */ createTextVNode(" Sem dados ");
793
- const _sfc_main$4 = /* @__PURE__ */ defineComponent({
732
+ }, Xt = /* @__PURE__ */ O(" Sem dados "), ve = /* @__PURE__ */ V({
794
733
  __name: "Dropdown",
795
734
  props: {
796
735
  id: null,
@@ -798,448 +737,625 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
798
737
  ariaLabel: null,
799
738
  smallerWidth: { type: Boolean },
800
739
  disabled: { type: Boolean },
801
- loading: { type: Boolean, default: false },
802
- searchable: { type: Boolean, default: false },
803
- closeOnSelect: { type: Boolean, default: true },
804
- fetchOnSearch: { type: Boolean, default: false },
740
+ loading: { type: Boolean, default: !1 },
741
+ searchable: { type: Boolean, default: !1 },
742
+ closeOnSelect: { type: Boolean, default: !0 },
743
+ fetchOnSearch: { type: Boolean, default: !1 },
805
744
  isMultipleSelect: { type: Boolean },
806
745
  searchPlaceholder: null,
807
746
  selected: null,
808
747
  options: { default: () => [] }
809
748
  },
810
749
  emits: ["closeDropdown", "search", "update:selected"],
811
- setup(__props, { emit }) {
812
- const props = __props;
813
- const el = ref();
814
- const isDropdownOpen = ref(false);
815
- const filter = ref("");
816
- const filtered = computed(() => {
817
- var _a2;
818
- return props.fetchOnSearch ? props.options : (_a2 = props.options) == null ? void 0 : _a2.filter((option) => typeof option === "string" ? option.includes(filter.value) : option.name.includes(filter.value));
819
- });
820
- const selectedSanitize = computed(() => Array.isArray(props.selected) ? props.selected.join(", ").trim() : props.selected);
821
- onClickOutside(el, () => {
822
- if (isDropdownOpen.value)
823
- close2();
750
+ setup(e, { emit: l }) {
751
+ const t = e, i = I(), n = I(!1), a = I(""), o = E(
752
+ () => {
753
+ var d;
754
+ return t.fetchOnSearch ? t.options : (d = t.options) == null ? void 0 : d.filter(
755
+ (m) => typeof m == "string" ? m.includes(a.value) : m.name.includes(a.value)
756
+ );
757
+ }
758
+ ), c = E(
759
+ () => Array.isArray(t.selected) ? t.selected.join(", ").trim() : t.selected
760
+ );
761
+ Le(i, () => {
762
+ n.value && v();
824
763
  });
825
- function toggleDropdown() {
826
- if (!props.disabled)
827
- isDropdownOpen.value ? close2() : open();
764
+ function u() {
765
+ t.disabled || (n.value ? v() : f());
828
766
  }
829
- function open() {
830
- isDropdownOpen.value = true;
767
+ function f() {
768
+ n.value = !0;
831
769
  }
832
- function close2() {
833
- resetStates();
834
- emit("closeDropdown");
770
+ function v() {
771
+ ee(), l("closeDropdown");
835
772
  }
836
- function sanitizeMultipleSelection(selectedValue) {
837
- const selected = new Set(props.selected);
838
- selected.has(selectedValue) ? selected.delete(selectedValue) : selected.add(selectedValue);
839
- return [...selected];
773
+ function z(d) {
774
+ const m = new Set(t.selected);
775
+ return m.has(d) ? m.delete(d) : m.add(d), [...m];
840
776
  }
841
- function select(selected) {
842
- const value = typeof selected === "string" ? selected : selected.value;
843
- const sanitize = props.isMultipleSelect ? sanitizeMultipleSelection(value) : value;
844
- emit("update:selected", sanitize);
845
- if (props.closeOnSelect && !props.isMultipleSelect)
846
- close2();
777
+ function w(d) {
778
+ const m = typeof d == "string" ? d : d.value, $ = t.isMultipleSelect ? z(m) : m;
779
+ l("update:selected", $), t.closeOnSelect && !t.isMultipleSelect && v();
847
780
  }
848
- function isSelected(option) {
849
- if (Array.isArray(props.selected)) {
850
- return typeof option === "string" ? props.selected.includes(option) : props.selected.includes(option.value);
851
- }
852
- return typeof option === "string" ? option === props.selected : option.value === props.selected;
781
+ function C(d) {
782
+ return Array.isArray(t.selected) ? typeof d == "string" ? t.selected.includes(d) : t.selected.includes(d.value) : typeof d == "string" ? d === t.selected : d.value === t.selected;
853
783
  }
854
- const elements = reactive({
784
+ const k = Z({
855
785
  list: void 0,
856
786
  search: void 0
857
- });
858
- const elementFocus = reactive({
787
+ }), A = Z({
859
788
  id: "",
860
789
  index: 0
861
790
  });
862
- function navigation({ code }) {
863
- const focusListItem = (index) => {
864
- const indexItem = index != null ? index : elementFocus.index;
865
- if (index !== void 0)
866
- elementFocus.index = index;
867
- setTimeout(() => {
868
- var _a2, _b;
869
- const item = (_a2 = elements.list) == null ? void 0 : _a2.children[indexItem];
870
- elementFocus.id = (_b = item == null ? void 0 : item.id) != null ? _b : "";
871
- item == null ? void 0 : item.focus();
791
+ function R({ code: d }) {
792
+ const m = (B) => {
793
+ const L = B != null ? B : A.index;
794
+ B !== void 0 && (A.index = B), setTimeout(() => {
795
+ var K, xe;
796
+ const P = (K = k.list) == null ? void 0 : K.children[L];
797
+ A.id = (xe = P == null ? void 0 : P.id) != null ? xe : "", P == null || P.focus();
872
798
  }, 0);
799
+ }, $ = () => {
800
+ var B;
801
+ t.searchable && (A.index = 0, (B = k == null ? void 0 : k.search) == null || B.focus());
873
802
  };
874
- const focusSearch = () => {
875
- var _a2;
876
- if (props.searchable) {
877
- elementFocus.index = 0;
878
- (_a2 = elements == null ? void 0 : elements.search) == null ? void 0 : _a2.focus();
879
- }
880
- };
881
- switch (code) {
803
+ switch (d) {
882
804
  case "ArrowUp":
883
- elementFocus.index > 0 && (elementFocus.index -= 1);
884
- return focusListItem();
805
+ return A.index > 0 && (A.index -= 1), m();
885
806
  case "ArrowDown":
886
- if (!isDropdownOpen.value) {
887
- open();
888
- return focusListItem(0);
889
- }
890
- elementFocus.index < filtered.value.length - 1 && (elementFocus.index += 1);
891
- return focusListItem();
807
+ return n.value ? (A.index < o.value.length - 1 && (A.index += 1), m()) : (f(), m(0));
892
808
  case "Home":
893
- return focusListItem(0);
809
+ return m(0);
894
810
  case "End":
895
- return focusListItem(props.options.length - 1);
811
+ return m(t.options.length - 1);
896
812
  case "Escape":
897
- return close2();
813
+ return v();
898
814
  default:
899
- !["Enter", "NumpadEnter", "Space"].includes(code) && focusSearch();
815
+ !["Enter", "NumpadEnter", "Space"].includes(d) && $();
900
816
  }
901
817
  }
902
- function resetStates() {
903
- isDropdownOpen.value = false;
904
- elementFocus.index = 0;
905
- filter.value = "";
818
+ function ee() {
819
+ n.value = !1, A.index = 0, a.value = "";
906
820
  }
907
- function getOption(option, key) {
908
- return typeof option === "string" ? option : option[key != null ? key : "value"];
821
+ function U(d, m) {
822
+ return typeof d == "string" ? d : d[m != null ? m : "value"];
909
823
  }
910
- function addRefElementToElements(key, target) {
911
- elements[key] = target != null ? target : void 0;
824
+ function b(d, m) {
825
+ k[d] = m != null ? m : void 0;
912
826
  }
913
- return (_ctx, _cache) => {
914
- return openBlock(), createElementBlock("div", {
915
- ref_key: "el",
916
- ref: el,
917
- class: normalizeClass(["sol-dropdown-core", { "-smaller": __props.smallerWidth }]),
918
- "data-testid": `dropdown-${__props.id}`,
919
- onKeydownPassive: navigation
827
+ return (d, m) => (s(), r("div", {
828
+ ref_key: "el",
829
+ ref: i,
830
+ class: S(["sol-dropdown-core", { "-smaller": e.smallerWidth }]),
831
+ "data-testid": `dropdown-${e.id}`,
832
+ onKeydownPassive: R
833
+ }, [
834
+ y(d.$slots, "label", {}, () => [
835
+ h("label", {
836
+ id: `label-dropdown-${e.id}`,
837
+ class: S(["label", { "-disabled": e.disabled, "sr-only": e.ariaLabel }]),
838
+ for: `toggle-dropdown-${e.id}`
839
+ }, x(e.label || e.ariaLabel), 11, Wt)
840
+ ]),
841
+ h("button", {
842
+ id: `toggle-dropdown-${e.id}`,
843
+ disabled: e.disabled,
844
+ "data-testid": `toggle-dropdown-${e.id}`,
845
+ class: "button-toggle-dropdown toggle-dropdown",
846
+ "aria-haspopup": "listbox",
847
+ "aria-expanded": n.value,
848
+ "aria-labelledby": `label-dropdown-${e.id}`,
849
+ "aria-label": e.ariaLabel,
850
+ "aria-controls": `dropdown-list-${e.id}`,
851
+ onClick: H(u, ["stop"])
920
852
  }, [
921
- renderSlot(_ctx.$slots, "label", {}, () => [
922
- createElementVNode("label", {
923
- id: `label-dropdown-${__props.id}`,
924
- class: normalizeClass(["label", { "-disabled": __props.disabled, "sr-only": __props.ariaLabel }]),
925
- for: `toggle-dropdown-${__props.id}`
926
- }, toDisplayString(__props.label || __props.ariaLabel), 11, _hoisted_2$a)
927
- ]),
928
- createElementVNode("button", {
929
- id: `toggle-dropdown-${__props.id}`,
930
- disabled: __props.disabled,
931
- "data-testid": `toggle-dropdown-${__props.id}`,
932
- class: "button-toggle-dropdown toggle-dropdown",
933
- "aria-haspopup": "listbox",
934
- "aria-expanded": isDropdownOpen.value,
935
- "aria-labelledby": `label-dropdown-${__props.id}`,
936
- "aria-label": __props.ariaLabel,
937
- "aria-controls": `dropdown-list-${__props.id}`,
938
- onClick: withModifiers(toggleDropdown, ["stop"])
939
- }, [
940
- renderSlot(_ctx.$slots, "toggle-dropdown", {
941
- toggle: { open, close: close2, toggleDropdown },
942
- isOpen: isDropdownOpen.value,
943
- select,
944
- selectedSanitized: unref(selectedSanitize),
945
- selected: __props.selected
946
- }, () => [
947
- createTextVNode(toDisplayString(unref(selectedSanitize) || "Selecione"), 1)
948
- ])
949
- ], 8, _hoisted_3$a),
950
- createVNode(Transition$1, {
951
- mode: "out-in",
952
- name: "dropdown"
953
- }, {
954
- default: withCtx(() => [
955
- withDirectives(createElementVNode("div", _hoisted_4$1, [
956
- __props.searchable ? (openBlock(), createElementBlock("div", {
957
- key: 0,
958
- class: normalizeClass(["search-container", { "-loading": __props.loading }])
959
- }, [
960
- renderSlot(_ctx.$slots, "search", { filter: filter.value }, () => [
961
- createVNode(_sfc_main$d, {
962
- id: `search-dropdown-${__props.id}`,
963
- ref: (target) => addRefElementToElements("search", target == null ? void 0 : target.input),
964
- modelValue: filter.value,
965
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => filter.value = $event),
966
- "data-testid": `search-dropdown-${__props.id}`,
967
- role: "combobox",
968
- class: "search",
969
- "aria-autocomplete": "list",
970
- placeholder: __props.searchPlaceholder,
971
- "aria-expanded": isDropdownOpen.value,
972
- "aria-haspopup": "listbox",
973
- "aria-owns": `dropdown-list-${__props.id}`,
974
- "aria-controls": `dropdown-list-${__props.id}`,
975
- "aria-activedescendant": elementFocus.id,
976
- "aria-labelledby": `label-dropdown-${__props.id}`,
977
- onClick: _cache[1] || (_cache[1] = withModifiers(() => {
978
- }, ["stop"])),
979
- onInput: _cache[2] || (_cache[2] = ($event) => {
980
- var _a2;
981
- return emit("search", (_a2 = $event.target) == null ? void 0 : _a2.value);
982
- })
983
- }, null, 8, ["id", "modelValue", "data-testid", "placeholder", "aria-expanded", "aria-owns", "aria-controls", "aria-activedescendant", "aria-labelledby"]),
984
- createVNode(unref(IconSearch), {
985
- "aria-hidden": "true",
986
- class: "icon"
853
+ y(d.$slots, "toggle-dropdown", {
854
+ toggle: { open: f, close: v, toggleDropdown: u },
855
+ isOpen: n.value,
856
+ select: w,
857
+ selectedSanitized: g(c),
858
+ selected: e.selected
859
+ }, () => [
860
+ O(x(g(c) || "Selecione"), 1)
861
+ ])
862
+ ], 8, Zt),
863
+ M(we, {
864
+ mode: "out-in",
865
+ name: "dropdown"
866
+ }, {
867
+ default: D(() => [
868
+ W(h("div", jt, [
869
+ e.searchable ? (s(), r("div", {
870
+ key: 0,
871
+ class: S(["search-container", { "-loading": e.loading }])
872
+ }, [
873
+ y(d.$slots, "search", { filter: a.value }, () => [
874
+ M(F, {
875
+ id: `search-dropdown-${e.id}`,
876
+ ref: ($) => b("search", $ == null ? void 0 : $.input),
877
+ modelValue: a.value,
878
+ "onUpdate:modelValue": m[0] || (m[0] = ($) => a.value = $),
879
+ "data-testid": `search-dropdown-${e.id}`,
880
+ role: "combobox",
881
+ class: "search",
882
+ "aria-autocomplete": "list",
883
+ placeholder: e.searchPlaceholder,
884
+ "aria-expanded": n.value,
885
+ "aria-haspopup": "listbox",
886
+ "aria-owns": `dropdown-list-${e.id}`,
887
+ "aria-controls": `dropdown-list-${e.id}`,
888
+ "aria-activedescendant": A.id,
889
+ "aria-labelledby": `label-dropdown-${e.id}`,
890
+ onClick: m[1] || (m[1] = H(() => {
891
+ }, ["stop"])),
892
+ onInput: m[2] || (m[2] = ($) => {
893
+ var B;
894
+ return l("search", (B = $.target) == null ? void 0 : B.value);
987
895
  })
988
- ])
989
- ], 2)) : createCommentVNode("", true),
990
- createElementVNode("ul", {
991
- id: `dropdown-list-${__props.id}`,
992
- ref: (target) => addRefElementToElements("list", target),
993
- "data-testid": `dropdown-list-${__props.id}`,
994
- role: "listbox",
896
+ }, null, 8, ["id", "modelValue", "data-testid", "placeholder", "aria-expanded", "aria-owns", "aria-controls", "aria-activedescendant", "aria-labelledby"]),
897
+ M(g(Ae), {
898
+ "aria-hidden": "true",
899
+ class: "icon"
900
+ })
901
+ ])
902
+ ], 2)) : T("", !0),
903
+ h("ul", {
904
+ id: `dropdown-list-${e.id}`,
905
+ ref: ($) => b("list", $),
906
+ "data-testid": `dropdown-list-${e.id}`,
907
+ role: "listbox",
908
+ tabindex: "-1",
909
+ "aria-multiselectable": e.isMultipleSelect,
910
+ "aria-labelledby": `label-dropdown-${e.id}`,
911
+ class: "dropdown-list-core"
912
+ }, [
913
+ (s(!0), r(J, null, X(g(o), ($, B) => (s(), r("li", {
914
+ id: `option-${e.id}-${U($, "value")}`,
915
+ key: B,
916
+ "data-testid": `option-${e.id}-${U($, "value")}`,
917
+ role: "option",
995
918
  tabindex: "-1",
996
- "aria-multiselectable": __props.isMultipleSelect,
997
- "aria-labelledby": `label-dropdown-${__props.id}`,
998
- class: "dropdown-list-core"
919
+ class: "dropdown-item",
920
+ style: ne(`--item: ${B + 1}`),
921
+ selected: C($),
922
+ "aria-selected": C($),
923
+ onClick: (L) => w($),
924
+ onKeyup: [
925
+ j((L) => w($), ["enter"]),
926
+ j((L) => w($), ["space"])
927
+ ]
999
928
  }, [
1000
- (openBlock(true), createElementBlock(Fragment, null, renderList(unref(filtered), (option, index) => {
1001
- return openBlock(), createElementBlock("li", {
1002
- id: `option-${__props.id}-${getOption(option, "value")}`,
1003
- key: index,
1004
- "data-testid": `option-${__props.id}-${getOption(option, "value")}`,
1005
- role: "option",
1006
- tabindex: "-1",
1007
- class: "dropdown-item",
1008
- style: normalizeStyle(`--item: ${index + 1}`),
1009
- selected: isSelected(option),
1010
- "aria-selected": isSelected(option),
1011
- onClick: ($event) => select(option),
1012
- onKeyup: [
1013
- withKeys(($event) => select(option), ["enter"]),
1014
- withKeys(($event) => select(option), ["space"])
1015
- ]
1016
- }, [
1017
- renderSlot(_ctx.$slots, "default", {
1018
- text: getOption(option, "name"),
1019
- option,
1020
- isSelect: isSelected
1021
- }, () => [
1022
- createTextVNode(toDisplayString(getOption(option, "name")), 1)
1023
- ])
1024
- ], 44, _hoisted_6$1);
1025
- }), 128)),
1026
- !unref(filtered).length ? (openBlock(), createElementBlock("li", _hoisted_7, [
1027
- renderSlot(_ctx.$slots, "no-data", {}, () => [
1028
- _hoisted_8
1029
- ])
1030
- ])) : createCommentVNode("", true)
1031
- ], 8, _hoisted_5$1)
1032
- ], 512), [
1033
- [vShow, isDropdownOpen.value]
1034
- ])
1035
- ]),
1036
- _: 3
1037
- })
1038
- ], 42, _hoisted_1$a);
1039
- };
929
+ y(d.$slots, "default", {
930
+ text: U($, "name"),
931
+ option: $,
932
+ isSelect: C
933
+ }, () => [
934
+ O(x(U($, "name")), 1)
935
+ ])
936
+ ], 44, Qt))), 128)),
937
+ g(o).length ? T("", !0) : (s(), r("li", Jt, [
938
+ y(d.$slots, "no-data", {}, () => [
939
+ Xt
940
+ ])
941
+ ]))
942
+ ], 8, qt)
943
+ ], 512), [
944
+ [le, n.value]
945
+ ])
946
+ ]),
947
+ _: 3
948
+ })
949
+ ], 42, Yt));
1040
950
  }
1041
951
  });
1042
- _sfc_main$4.install = (app) => {
1043
- app.component("SolDropdown", _sfc_main$4);
952
+ ve.install = (e) => {
953
+ e.component("SolDropdown", ve);
1044
954
  };
1045
- const _hoisted_1$9 = {
955
+ const _t = {
1046
956
  preserveAspectRatio: "xMidYMid meet",
1047
957
  viewBox: "0 0 24 24",
1048
- width: "1.2em",
1049
- height: "1.2em"
1050
- };
1051
- const _hoisted_2$9 = /* @__PURE__ */ createElementVNode("path", {
958
+ width: "1em",
959
+ height: "1em"
960
+ }, el = /* @__PURE__ */ h("path", {
1052
961
  fill: "currentColor",
1053
962
  d: "M5.293 5.293a1 1 0 0 1 1.414 0L12 10.586l5.293-5.293a1 1 0 1 1 1.414 1.414L13.414 12l5.293 5.293a1 1 0 0 1-1.414 1.414L12 13.414l-5.293 5.293a1 1 0 0 1-1.414-1.414L10.586 12L5.293 6.707a1 1 0 0 1 0-1.414z"
1054
- }, null, -1);
1055
- const _hoisted_3$9 = [
1056
- _hoisted_2$9
963
+ }, null, -1), tl = [
964
+ el
1057
965
  ];
1058
- function render$5(_ctx, _cache) {
1059
- return openBlock(), createElementBlock("svg", _hoisted_1$9, _hoisted_3$9);
966
+ function ll(e, l) {
967
+ return s(), r("svg", _t, tl);
1060
968
  }
1061
- var Close = { name: "mi-close", render: render$5 };
1062
- var Chip_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-chip-core{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;height:100%;min-height:2rem;padding-left:.75rem;padding-right:.25rem;width:fit-content;--tw-bg-opacity: 1;background-color:rgba(245,245,245,var(--tw-bg-opacity));--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity));border-radius:1rem;border-width:2px;cursor:pointer;transition:background .2s ease-in}.sol-chip-core:focus-within{outline:3px solid #292929;outline-offset:0px}.sol-chip-core:hover{--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity))}.sol-chip-core.-selected{--tw-bg-opacity: 1;background-color:rgba(255,176,31,var(--tw-bg-opacity))}.sol-chip-core.-disabled{--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity));cursor:not-allowed;pointer-events:none}.sol-chip-core>.label{display:inline-block;margin-right:.25rem;--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity));font-family:Rubik;font-weight:500;font-size:.75rem;line-height:1.15;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-chip-core>.close{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;height:1.5rem;width:1.5rem;border-radius:50%;transition:background .2s cubic-bezier(.165,.84,.44,1)}.sol-chip-core>.close:hover,.sol-chip-core>.close:focus{--tw-bg-opacity: 1;background-color:rgba(41,41,41,var(--tw-bg-opacity));--tw-bg-opacity: .16}.sol-chip-core>.close>.icon{font-size:.875rem;--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}\n")();
1063
- const _hoisted_1$8 = ["id", "data-testid", "title", "aria-describedby", "aria-disabled", "onKeydown"];
1064
- const _hoisted_2$8 = ["id"];
1065
- const _hoisted_3$8 = { class: "label" };
1066
- const _sfc_main$3 = /* @__PURE__ */ defineComponent({
969
+ const Ie = { name: "mi-close", render: ll }, nl = ["id", "data-testid", "title", "aria-describedby", "aria-disabled", "onKeydown"], il = ["id"], al = { class: "label" }, se = /* @__PURE__ */ V({
1067
970
  __name: "Chip",
1068
971
  props: {
1069
972
  id: null,
1070
973
  label: null,
1071
974
  selected: { type: Boolean },
1072
975
  disabled: { type: Boolean },
1073
- removable: { type: Boolean, default: true }
976
+ removable: { type: Boolean, default: !0 }
1074
977
  },
1075
978
  emits: ["close", "update:selected"],
1076
- setup(__props, { emit }) {
1077
- const props = __props;
1078
- function keyboardTrigger({ code }) {
1079
- if (props.disabled)
1080
- return;
1081
- switch (code) {
1082
- case "Enter":
1083
- case "NumpadEnter":
1084
- case "Space":
1085
- return emit("update:selected");
1086
- case "Delete":
1087
- case "Backspace":
1088
- return props.removable && emit("close");
1089
- default:
1090
- return false;
1091
- }
979
+ setup(e, { emit: l }) {
980
+ const t = e;
981
+ function i({ code: n }) {
982
+ if (!t.disabled)
983
+ switch (n) {
984
+ case "Enter":
985
+ case "NumpadEnter":
986
+ case "Space":
987
+ return l("update:selected");
988
+ case "Delete":
989
+ case "Backspace":
990
+ return t.removable && l("close");
991
+ default:
992
+ return !1;
993
+ }
1092
994
  }
1093
- return (_ctx, _cache) => {
1094
- return openBlock(), createElementBlock("div", {
1095
- id: `chip-${__props.id}`,
1096
- "data-testid": `chip-${__props.id}`,
1097
- class: normalizeClass(["sol-chip-core", { "-selected": __props.selected, "-disabled": __props.disabled }]),
1098
- tabindex: "0",
1099
- title: __props.label,
1100
- "aria-describedby": `chip-description-${__props.id}`,
1101
- "aria-disabled": __props.disabled,
1102
- onClick: _cache[1] || (_cache[1] = ($event) => emit("update:selected")),
1103
- onKeydown: withModifiers(keyboardTrigger, ["self"])
995
+ return (n, a) => (s(), r("div", {
996
+ id: `chip-${e.id}`,
997
+ "data-testid": `chip-${e.id}`,
998
+ class: S(["sol-chip-core", { "-selected": e.selected, "-disabled": e.disabled }]),
999
+ tabindex: "0",
1000
+ title: e.label,
1001
+ "aria-describedby": `chip-description-${e.id}`,
1002
+ "aria-disabled": e.disabled,
1003
+ onClick: a[1] || (a[1] = (o) => l("update:selected")),
1004
+ onKeydown: H(i, ["self"])
1005
+ }, [
1006
+ h("span", {
1007
+ id: `chip-description-${e.id}`,
1008
+ "z-index": "-1",
1009
+ class: "sr-only"
1010
+ }, "Press Delete or Backspace to remove this Chip", 8, il),
1011
+ h("span", al, [
1012
+ y(n.$slots, "default", {}, () => [
1013
+ O(x(e.label), 1)
1014
+ ])
1015
+ ]),
1016
+ e.removable ? (s(), r("i", {
1017
+ key: 0,
1018
+ role: "presentation",
1019
+ "aira-hidden": "true",
1020
+ class: "close",
1021
+ onClick: a[0] || (a[0] = H((o) => l("close"), ["stop"]))
1104
1022
  }, [
1105
- createElementVNode("span", {
1106
- id: `chip-description-${__props.id}`,
1107
- "z-index": "-1",
1108
- class: "sr-only"
1109
- }, "Press Delete or Backspace to remove this Chip", 8, _hoisted_2$8),
1110
- createElementVNode("span", _hoisted_3$8, [
1111
- renderSlot(_ctx.$slots, "default", {}, () => [
1112
- createTextVNode(toDisplayString(__props.label), 1)
1113
- ])
1114
- ]),
1115
- __props.removable ? (openBlock(), createElementBlock("i", {
1116
- key: 0,
1117
- role: "presentation",
1118
- "aira-hidden": "true",
1119
- class: "close",
1120
- onClick: _cache[0] || (_cache[0] = withModifiers(($event) => emit("close"), ["stop"]))
1121
- }, [
1122
- createVNode(unref(Close), { class: "icon" })
1123
- ])) : createCommentVNode("", true)
1124
- ], 42, _hoisted_1$8);
1125
- };
1023
+ M(g(Ie), { class: "icon" })
1024
+ ])) : T("", !0)
1025
+ ], 42, nl));
1126
1026
  }
1127
1027
  });
1128
- const _hoisted_1$7 = {
1028
+ const ol = ["id", "data-testid", "aria-multiselectable", "aria-labelledby"], sl = ["id", "data-testid", "selected", "aria-selected", "onClick", "onKeyup"], dl = {
1029
+ key: 0,
1030
+ class: "no-data"
1031
+ }, cl = /* @__PURE__ */ O(" Sem dados "), rl = /* @__PURE__ */ V({
1032
+ __name: "ListOption",
1033
+ props: {
1034
+ id: null,
1035
+ options: null,
1036
+ multiple: { type: Boolean },
1037
+ isSelected: null
1038
+ },
1039
+ emits: ["select"],
1040
+ setup(e, { expose: l, emit: t }) {
1041
+ const i = I("");
1042
+ return l({
1043
+ list: i
1044
+ }), (n, a) => (s(), r("ul", {
1045
+ id: `select-list-${e.id}`,
1046
+ ref_key: "list",
1047
+ ref: i,
1048
+ "data-testid": `select-list-${e.id}`,
1049
+ role: "listbox",
1050
+ tabindex: "-1",
1051
+ "aria-multiselectable": e.multiple,
1052
+ "aria-labelledby": `select-label-${e.id}`,
1053
+ class: "select-list-core"
1054
+ }, [
1055
+ (s(!0), r(J, null, X(e.options, (o, c) => (s(), r("li", {
1056
+ id: `option-${e.id}-${o.value}`,
1057
+ key: c,
1058
+ "data-testid": `option-${e.id}-${o.value}`,
1059
+ role: "option",
1060
+ tabindex: "-1",
1061
+ class: "select-option-item",
1062
+ style: ne(`--item: ${c + 1}`),
1063
+ selected: e.isSelected(o),
1064
+ "aria-selected": e.isSelected(o),
1065
+ onClick: (u) => t("select", o),
1066
+ onKeyup: [
1067
+ j((u) => t("select", o), ["enter"]),
1068
+ j((u) => t("select", o), ["space"])
1069
+ ]
1070
+ }, [
1071
+ y(n.$slots, "item-list", {
1072
+ text: o.name,
1073
+ value: o.value,
1074
+ option: o,
1075
+ isSelected: e.isSelected(o)
1076
+ }, () => [
1077
+ O(x(o.name), 1)
1078
+ ])
1079
+ ], 44, sl))), 128)),
1080
+ e.options.length ? T("", !0) : (s(), r("li", dl, [
1081
+ y(n.$slots, "no-data", {}, () => [
1082
+ cl
1083
+ ])
1084
+ ]))
1085
+ ], 8, ol));
1086
+ }
1087
+ });
1088
+ const ul = {
1129
1089
  preserveAspectRatio: "xMidYMid meet",
1130
1090
  viewBox: "0 0 24 24",
1131
- width: "1.2em",
1132
- height: "1.2em"
1133
- };
1134
- const _hoisted_2$7 = /* @__PURE__ */ createElementVNode("path", {
1091
+ width: "1em",
1092
+ height: "1em"
1093
+ }, hl = /* @__PURE__ */ h("path", {
1135
1094
  fill: "currentColor",
1136
1095
  d: "m17 10l-5 6l-5-6h10z"
1137
- }, null, -1);
1138
- const _hoisted_3$7 = [
1139
- _hoisted_2$7
1096
+ }, null, -1), fl = [
1097
+ hl
1140
1098
  ];
1141
- function render$4(_ctx, _cache) {
1142
- return openBlock(), createElementBlock("svg", _hoisted_1$7, _hoisted_3$7);
1099
+ function ml(e, l) {
1100
+ return s(), r("svg", ul, fl);
1143
1101
  }
1144
- var IconArrow = { name: "mi-caret-down", render: render$4 };
1145
- var Select_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-select-core>.toggle-dropdown{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;max-width:20rem}.sol-select-core>.toggle-dropdown>.select-container{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;position:relative;height:100%;padding-left:.75rem;padding-right:.75rem;width:100%;--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));cursor:pointer;overflow:hidden;--tw-border-opacity: 1;border-color:rgba(143,143,143,var(--tw-border-opacity));--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity));border-radius:.5rem;border-width:2px;font-family:Rubik;font-size:.875rem}.sol-select-core>.toggle-dropdown>.select-container.-disabled{--tw-border-opacity: 1;border-color:rgba(224,224,224,var(--tw-border-opacity));cursor:not-allowed}.sol-select-core>.toggle-dropdown>.select-container.-disabled>.icon{--tw-text-opacity: 1;color:rgba(224,224,224,var(--tw-text-opacity))}.sol-select-core>.toggle-dropdown>.select-container.-error{--tw-border-opacity: 1;border-color:rgba(255,37,31,var(--tw-border-opacity))}.sol-select-core>.toggle-dropdown>.select-container>.select{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;height:100%;margin-right:1rem;min-height:2.25rem;gap:4px}.sol-select-core>.toggle-dropdown>.select-container>.select:not(:empty){padding-top:.25rem;padding-bottom:.25rem}.sol-select-core>.toggle-dropdown>.select-container>.select>.tag{border-radius:.25rem;padding:.25rem;width:fit-content;--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity));font-family:Rubik;font-size:.75rem}.sol-select-core>.toggle-dropdown>.select-container>.select>.tag:hover{--tw-bg-opacity: 1;background-color:rgba(143,143,143,var(--tw-bg-opacity));--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.sol-select-core>.toggle-dropdown>.select-container>.icon{position:absolute;right:12px;transition:transform .35s}.sol-select-core>.toggle-dropdown>.select-container>.icon.-open{transform-origin:center;transform:rotate3d(0,0,1,180deg)}.sol-select-core>.toggle-dropdown>.select-container~.error{display:inline-block;margin-top:.25rem;padding-left:.25rem;width:100%;font-size:.75rem;text-align:left;--tw-text-opacity: 1;color:rgba(255,37,31,var(--tw-text-opacity));-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;outline:none}.sol-select-core>.toggle-dropdown>.select-container~.error:empty{display:none}\n")();
1146
- const _hoisted_1$6 = { class: "select" };
1147
- const _hoisted_2$6 = {
1148
- key: 2,
1149
- class: "placeholder-inline"
1150
- };
1151
- const _hoisted_3$6 = { class: "error" };
1152
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
1102
+ const $l = { name: "mi-caret-down", render: ml }, vl = ["data-testid"], bl = ["id"], yl = ["id", "disabled", "data-testid", "aria-expanded", "aria-labelledby", "aria-label", "aria-controls", "onClick"], gl = {
1103
+ key: 0,
1104
+ class: "container-tags"
1105
+ }, wl = {
1106
+ key: 1,
1107
+ class: "mr-micro placeholder-inline",
1108
+ tabindex: "-1"
1109
+ }, xl = { class: "error" }, Sl = { class: "select-options-container" }, be = /* @__PURE__ */ V({
1153
1110
  __name: "Select",
1154
1111
  props: {
1155
1112
  id: null,
1156
- options: null,
1157
1113
  label: null,
1158
1114
  ariaLabel: null,
1159
1115
  smallerWidth: { type: Boolean },
1160
1116
  disabled: { type: Boolean },
1117
+ loading: { type: Boolean, default: !1 },
1118
+ searchable: { type: Boolean, default: !1 },
1119
+ closeOnSelect: { type: Boolean, default: !0 },
1120
+ fetchOnSearch: { type: Boolean, default: !1 },
1161
1121
  multiple: { type: Boolean },
1162
- modelValue: null,
1163
- error: null,
1164
- fetchOnApi: { type: Boolean },
1165
- placeholder: { default: "Selecione" },
1166
1122
  searchPlaceholder: null,
1167
- searchable: { type: Boolean }
1123
+ selected: null,
1124
+ options: { default: () => [] },
1125
+ error: null,
1126
+ placeholder: { default: "placeholder" }
1168
1127
  },
1169
- emits: ["update:modelValue"],
1170
- setup(__props, { emit }) {
1171
- return (_ctx, _cache) => {
1172
- return openBlock(), createBlock(_sfc_main$4, {
1173
- id: `select-${__props.id}`,
1174
- selected: __props.modelValue,
1175
- label: __props.label,
1176
- "aria-label": __props.ariaLabel,
1177
- "smaller-width": __props.smallerWidth,
1178
- disabled: __props.disabled,
1179
- "fetch-on-search": __props.fetchOnApi,
1180
- "is-multiple-select": __props.multiple,
1181
- class: "sol-select-core",
1182
- "search-placeholder": __props.searchPlaceholder,
1183
- searchable: __props.searchable,
1184
- options: __props.options,
1185
- "onUpdate:selected": _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", $event))
1186
- }, {
1187
- "toggle-dropdown": withCtx(({ selected, isOpen, select }) => [
1188
- createElementVNode("div", {
1189
- class: normalizeClass(["select-container", { "-disabled": __props.disabled, "-error": __props.error }])
1190
- }, [
1191
- createElementVNode("div", _hoisted_1$6, [
1192
- __props.multiple && (selected == null ? void 0 : selected.length) ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(selected, (item, index) => {
1193
- return openBlock(), createBlock(_sfc_main$3, {
1194
- id: item,
1195
- key: index,
1196
- label: item,
1197
- onClick: withModifiers(($event) => select(item), ["stop"]),
1198
- onClose: ($event) => select(item)
1199
- }, null, 8, ["id", "label", "onClick", "onClose"]);
1200
- }), 128)) : (selected == null ? void 0 : selected.length) ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
1201
- createTextVNode(toDisplayString(selected), 1)
1202
- ], 64)) : (openBlock(), createElementBlock("span", _hoisted_2$6, toDisplayString(__props.placeholder), 1))
1203
- ]),
1204
- createVNode(unref(IconArrow), {
1205
- class: normalizeClass(["icon", { "-open": isOpen }])
1128
+ emits: ["closeDropdown", "search", "update:selected"],
1129
+ setup(e, { emit: l }) {
1130
+ const t = e, i = I(), n = I(!1), a = I(""), o = E(
1131
+ () => {
1132
+ var b;
1133
+ return t.fetchOnSearch ? t.options : (b = t.options) == null ? void 0 : b.filter((d) => d.name.includes(a.value));
1134
+ }
1135
+ );
1136
+ Le(i, () => {
1137
+ n.value && f();
1138
+ });
1139
+ function c() {
1140
+ t.disabled || (n.value ? f() : u());
1141
+ }
1142
+ function u() {
1143
+ n.value = !0;
1144
+ }
1145
+ function f() {
1146
+ R(), l("closeDropdown");
1147
+ }
1148
+ function v(b) {
1149
+ if (Array.isArray(t.selected)) {
1150
+ const d = t.selected.findIndex(
1151
+ ({ value: m }) => m === b.value
1152
+ );
1153
+ return d === -1 ? [...t.selected, b] : t.selected.filter((m, $) => $ !== d);
1154
+ }
1155
+ return [b];
1156
+ }
1157
+ function z(b) {
1158
+ t.multiple ? l("update:selected", v(b)) : l("update:selected", b), t.closeOnSelect && !t.multiple && f();
1159
+ }
1160
+ function w(b) {
1161
+ var d;
1162
+ return Array.isArray(t.selected) ? t.selected.some(({ value: m }) => m === b.value) : b.value === ((d = t.selected) == null ? void 0 : d.value);
1163
+ }
1164
+ const C = Z({
1165
+ list: void 0,
1166
+ search: void 0
1167
+ }), k = Z({
1168
+ id: "",
1169
+ index: 0
1170
+ });
1171
+ function A({ code: b }) {
1172
+ const d = ($) => {
1173
+ const B = $ != null ? $ : k.index;
1174
+ $ !== void 0 && (k.index = $), setTimeout(() => {
1175
+ var P, K;
1176
+ const L = (P = C.list) == null ? void 0 : P.children[B];
1177
+ k.id = (K = L == null ? void 0 : L.id) != null ? K : "", L == null || L.focus();
1178
+ }, 0);
1179
+ }, m = () => {
1180
+ var $;
1181
+ t.searchable && (k.index = 0, ($ = C == null ? void 0 : C.search) == null || $.focus());
1182
+ };
1183
+ switch (b) {
1184
+ case "ArrowUp":
1185
+ return k.index > 0 && (k.index -= 1), d();
1186
+ case "ArrowDown":
1187
+ return n.value ? (k.index < t.options.length - 1 && (k.index += 1), d()) : (u(), d(0));
1188
+ case "Home":
1189
+ return d(0);
1190
+ case "End":
1191
+ return d(t.options.length - 1);
1192
+ case "Escape":
1193
+ return f();
1194
+ default:
1195
+ !["Enter", "NumpadEnter", "Space"].includes(b) && m();
1196
+ }
1197
+ }
1198
+ function R() {
1199
+ n.value = !1, k.index = 0, a.value = "";
1200
+ }
1201
+ function ee(b) {
1202
+ return (d) => {
1203
+ C[b] = b === "search" ? d == null ? void 0 : d.input : d == null ? void 0 : d.list;
1204
+ };
1205
+ }
1206
+ function U() {
1207
+ var d;
1208
+ const b = t.selected;
1209
+ return (d = b == null ? void 0 : b.name) != null ? d : t.placeholder;
1210
+ }
1211
+ return (b, d) => (s(), r("div", {
1212
+ ref_key: "el",
1213
+ ref: i,
1214
+ class: S(["sol-select-core", { "-smaller": e.smallerWidth }]),
1215
+ "data-testid": `select-${e.id}`,
1216
+ onKeydownPassive: A
1217
+ }, [
1218
+ y(b.$slots, "label", {
1219
+ id: `select-label-${e.id}`,
1220
+ for: `select-toggle-${e.id}`
1221
+ }, () => [
1222
+ e.label ? (s(), r("label", {
1223
+ key: 0,
1224
+ id: `select-label-${e.id}`,
1225
+ class: S(["label", { "-disabled": e.disabled }])
1226
+ }, x(e.label), 11, bl)) : T("", !0)
1227
+ ]),
1228
+ h("button", {
1229
+ id: `select-toggle-${e.id}`,
1230
+ disabled: e.disabled,
1231
+ "data-testid": `select-toggle-${e.id}`,
1232
+ class: "select-button-toggle",
1233
+ "aria-haspopup": "listbox",
1234
+ "aria-expanded": n.value,
1235
+ "aria-labelledby": `select-label-${e.id}`,
1236
+ "aria-label": e.ariaLabel,
1237
+ "aria-controls": `select-list-${e.id}`,
1238
+ onClick: H(c, ["stop"])
1239
+ }, [
1240
+ y(b.$slots, "toggle-dropdown", {
1241
+ toggle: { open: u, close: f, toggleDropdown: c },
1242
+ isOpen: n.value,
1243
+ select: z,
1244
+ selected: e.selected
1245
+ }, () => {
1246
+ var m;
1247
+ return [
1248
+ e.multiple && Array.isArray(e.selected) && ((m = e.selected) == null ? void 0 : m.length) ? (s(), r("div", gl, [
1249
+ (s(!0), r(J, null, X(e.selected, ($, B) => (s(), p(se, {
1250
+ id: $.value,
1251
+ key: B,
1252
+ label: $.name,
1253
+ onClick: H((L) => z($), ["stop"]),
1254
+ onClose: (L) => z($)
1255
+ }, null, 8, ["id", "label", "onClick", "onClose"]))), 128))
1256
+ ])) : (s(), r("span", wl, x(U()), 1)),
1257
+ M(g($l), {
1258
+ "aria-hidden": "true",
1259
+ tabindex: "-1",
1260
+ class: S(["icon", { "-open": n.value }])
1206
1261
  }, null, 8, ["class"])
1207
- ], 2),
1208
- createElementVNode("span", _hoisted_3$6, toDisplayString(__props.error), 1)
1262
+ ];
1263
+ })
1264
+ ], 8, yl),
1265
+ h("span", xl, x(e.error), 1),
1266
+ M(we, {
1267
+ mode: "out-in",
1268
+ name: "dropdown"
1269
+ }, {
1270
+ default: D(() => [
1271
+ W(h("div", Sl, [
1272
+ y(b.$slots, "search", {}, () => [
1273
+ e.searchable ? (s(), r("div", {
1274
+ key: 0,
1275
+ class: S(["search-container", { "-loading": e.loading }])
1276
+ }, [
1277
+ y(b.$slots, "search", { filter: a.value }, () => [
1278
+ M(F, {
1279
+ id: `select-search-${e.id}`,
1280
+ ref: ee("search"),
1281
+ modelValue: a.value,
1282
+ "onUpdate:modelValue": d[0] || (d[0] = (m) => a.value = m),
1283
+ "data-testid": `select-search-${e.id}`,
1284
+ role: "combobox",
1285
+ class: "search",
1286
+ "aria-autocomplete": "list",
1287
+ placeholder: e.searchPlaceholder,
1288
+ "aria-expanded": n.value,
1289
+ "aria-haspopup": "listbox",
1290
+ "aria-owns": `select-list-${e.id}`,
1291
+ "aria-controls": `select-list-${e.id}`,
1292
+ "aria-activedescendant": k.id,
1293
+ "aria-labelledby": `select-label-${e.id}`,
1294
+ onClick: d[1] || (d[1] = H(() => {
1295
+ }, ["stop"])),
1296
+ onInput: d[2] || (d[2] = (m) => {
1297
+ var $;
1298
+ return l("search", ($ = m.target) == null ? void 0 : $.value);
1299
+ })
1300
+ }, null, 8, ["id", "modelValue", "data-testid", "placeholder", "aria-expanded", "aria-owns", "aria-controls", "aria-activedescendant", "aria-labelledby"]),
1301
+ M(g(Ae), {
1302
+ "aria-hidden": "true",
1303
+ class: "icon"
1304
+ })
1305
+ ])
1306
+ ], 2)) : T("", !0),
1307
+ M(rl, {
1308
+ id: e.id,
1309
+ ref: ee("list"),
1310
+ options: g(o),
1311
+ multiple: e.multiple,
1312
+ "is-selected": w,
1313
+ onSelect: z
1314
+ }, {
1315
+ "item-list": D(({ text: m, value: $, option: B, isSelected: L }) => [
1316
+ y(b.$slots, "default", {
1317
+ text: m,
1318
+ value: $,
1319
+ option: B,
1320
+ isSelected: L
1321
+ })
1322
+ ]),
1323
+ "no-data": D(() => [
1324
+ y(b.$slots, "no-data")
1325
+ ]),
1326
+ _: 3
1327
+ }, 8, ["id", "options", "multiple"])
1328
+ ])
1329
+ ], 512), [
1330
+ [le, n.value]
1331
+ ])
1209
1332
  ]),
1210
- _: 1
1211
- }, 8, ["id", "selected", "label", "aria-label", "smaller-width", "disabled", "fetch-on-search", "is-multiple-select", "search-placeholder", "searchable", "options"]);
1212
- };
1333
+ _: 3
1334
+ })
1335
+ ], 42, vl));
1213
1336
  }
1214
1337
  });
1215
- _sfc_main$2.install = (app) => {
1216
- app.component("SolSelect", _sfc_main$2);
1338
+ be.install = (e) => {
1339
+ e.component("SolSelect", be);
1217
1340
  };
1218
- _sfc_main$3.install = (app) => {
1219
- app.component("SolChip", _sfc_main$3);
1341
+ se.install = (e) => {
1342
+ e.component("SolChip", se);
1220
1343
  };
1221
- const _hoisted_1$5 = {
1344
+ const Cl = {
1222
1345
  preserveAspectRatio: "xMidYMid meet",
1223
1346
  viewBox: "0 0 24 24",
1224
- width: "1.2em",
1225
- height: "1.2em"
1226
- };
1227
- const _hoisted_2$5 = /* @__PURE__ */ createElementVNode("path", {
1347
+ width: "1em",
1348
+ height: "1em"
1349
+ }, kl = /* @__PURE__ */ h("path", {
1228
1350
  fill: "currentColor",
1229
1351
  d: "M11.293 7.293a1 1 0 0 1 1.414 0l6 6a1 1 0 0 1-1.414 1.414L12 9.414l-5.293 5.293a1 1 0 0 1-1.414-1.414l6-6z"
1230
- }, null, -1);
1231
- const _hoisted_3$5 = [
1232
- _hoisted_2$5
1352
+ }, null, -1), Bl = [
1353
+ kl
1233
1354
  ];
1234
- function render$3(_ctx, _cache) {
1235
- return openBlock(), createElementBlock("svg", _hoisted_1$5, _hoisted_3$5);
1355
+ function Tl(e, l) {
1356
+ return s(), r("svg", Cl, Bl);
1236
1357
  }
1237
- var Chevron = { name: "mi-chevron-up", render: render$3 };
1238
- var Accordion_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".sol-accordion-core{--tw-border-opacity: 1;border-color:rgba(143,143,143,var(--tw-border-opacity));border-bottom-width:1px;width:clamp(260px,100%,600px)}.sol-accordion-core:focus-visible{outline:3px solid #292929;outline-offset:0px}.sol-accordion-core:not([open])>.summary{border-bottom-width:0}.sol-accordion-core:not([open])>.summary>.icon{transform:rotate(-180deg)}.sol-accordion-core:not([open])>.container{transform:scaleY(0)}.sol-accordion-core.-invert>.summary,.sol-accordion-core.-invert>.summary>.icon{--tw-text-opacity: 1;color:rgba(255,255,255,var(--tw-text-opacity))}.sol-accordion-core.-disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-accordion-core.-disabled>.summary{--tw-border-opacity: 1;border-color:rgba(143,143,143,var(--tw-border-opacity));--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.sol-accordion-core.-disabled.-invert>.summary{--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity));--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity))}.sol-accordion-core>.summary{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;height:3.5rem;width:100%;--tw-border-opacity: 1;border-color:rgba(143,143,143,var(--tw-border-opacity));border-bottom-width:1px;margin-bottom:.5rem;padding:.5rem .5rem .5rem 1rem;font-family:Rubik;font-size:1.5rem;list-style-type:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sol-accordion-core>.summary::-webkit-details-marker{display:none}.sol-accordion-core>.summary>.icon{--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity));transition:transform .25s linear;transform:rotate(0)}.sol-accordion-core .container{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity));padding:.5rem;font-size:.875rem;box-shadow:0 2px 6px #21212132;transform-origin:top center;transition:all .2s ease-in;transform:scaleY(1)}\n")();
1239
- const _hoisted_1$4 = ["id", "data-testid", "aria-disabled"];
1240
- const _hoisted_2$4 = ["data-testid", "tabindex"];
1241
- const _hoisted_3$4 = ["data-testid"];
1242
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
1358
+ const Ml = { name: "mi-chevron-up", render: Tl }, zl = ["id", "data-testid", "aria-disabled"], Vl = ["data-testid", "tabindex"], Ll = ["data-testid"], ye = /* @__PURE__ */ V({
1243
1359
  __name: "Accordion",
1244
1360
  props: {
1245
1361
  id: null,
@@ -1247,325 +1363,278 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
1247
1363
  invert: { type: Boolean },
1248
1364
  disabled: { type: Boolean }
1249
1365
  },
1250
- setup(__props) {
1251
- return (_ctx, _cache) => {
1252
- return openBlock(), createElementBlock("details", {
1253
- id: `accordion-${__props.id}`,
1254
- "data-testid": `accordion-${__props.id}`,
1255
- class: normalizeClass(["sol-accordion-core", { "-invert": __props.invert, "-disabled": __props.disabled }]),
1256
- "aria-disabled": __props.disabled
1366
+ setup(e) {
1367
+ return (l, t) => (s(), r("details", {
1368
+ id: `accordion-${e.id}`,
1369
+ "data-testid": `accordion-${e.id}`,
1370
+ class: S(["sol-accordion-core", { "-invert": e.invert, "-disabled": e.disabled }]),
1371
+ "aria-disabled": e.disabled
1372
+ }, [
1373
+ h("summary", {
1374
+ "data-testid": `accordion-title-${e.id}`,
1375
+ class: "summary",
1376
+ tabindex: e.disabled ? -1 : 0
1257
1377
  }, [
1258
- createElementVNode("summary", {
1259
- "data-testid": `accordion-title-${__props.id}`,
1260
- class: "summary",
1261
- tabindex: __props.disabled ? -1 : 0
1262
- }, [
1263
- renderSlot(_ctx.$slots, "title", {}, () => [
1264
- createTextVNode(toDisplayString(__props.title), 1)
1265
- ]),
1266
- createVNode(unref(Chevron), {
1267
- class: "icon",
1268
- "aria-hidden": "true"
1269
- })
1270
- ], 8, _hoisted_2$4),
1271
- createElementVNode("div", {
1272
- "data-testid": `accordion-content-${__props.id}`,
1273
- class: "container"
1274
- }, [
1275
- renderSlot(_ctx.$slots, "default")
1276
- ], 8, _hoisted_3$4)
1277
- ], 10, _hoisted_1$4);
1278
- };
1378
+ y(l.$slots, "title", {}, () => [
1379
+ O(x(e.title), 1)
1380
+ ]),
1381
+ M(g(Ml), {
1382
+ class: "icon",
1383
+ "aria-hidden": "true"
1384
+ })
1385
+ ], 8, Vl),
1386
+ h("div", {
1387
+ "data-testid": `accordion-content-${e.id}`,
1388
+ class: "container"
1389
+ }, [
1390
+ y(l.$slots, "default")
1391
+ ], 8, Ll)
1392
+ ], 10, zl));
1279
1393
  }
1280
1394
  });
1281
- _sfc_main$1.install = (app) => {
1282
- app.component("SolAccordion", _sfc_main$1);
1395
+ ye.install = (e) => {
1396
+ e.component("SolAccordion", ye);
1283
1397
  };
1284
- var windiBase = /* @__PURE__ */ (() => "*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}*{--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgba(59, 130, 246, 1);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000}:root{-moz-tab-size:4;-o-tab-size:4;tab-size:4}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}::moz-focus-inner{border-style:none;padding:0}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}a{color:inherit;text-decoration:inherit}body{margin:0;font-family:inherit;line-height:inherit}button,input,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;padding:0;line-height:inherit;color:inherit}button{text-transform:none;background-color:transparent;background-image:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button,[role=button]{cursor:pointer}code{font-size:1em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}fieldset{margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-family:Lato,sans-serif;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}h2,h3,h4{font-size:inherit;font-weight:inherit}img{border-style:solid;max-width:100%;height:auto}input::placeholder{opacity:1;color:#a1a1aa}input::webkit-input-placeholder{opacity:1;color:#a1a1aa}input::-moz-placeholder{opacity:1;color:#a1a1aa}input:-ms-input-placeholder{opacity:1;color:#a1a1aa}input::-ms-input-placeholder{opacity:1;color:#a1a1aa}img,svg{display:block;vertical-align:middle}legend{padding:0}p,h2,hr,h3,h4,dl{margin:0}strong{font-weight:bolder}small{font-size:80%}table{text-indent:0;border-color:inherit;border-collapse:collapse}textarea{resize:vertical}textarea::placeholder{opacity:1;color:#a1a1aa}textarea::webkit-input-placeholder{opacity:1;color:#a1a1aa}textarea::-moz-placeholder{opacity:1;color:#a1a1aa}textarea:-ms-input-placeholder{opacity:1;color:#a1a1aa}textarea::-ms-input-placeholder{opacity:1;color:#a1a1aa}ul{list-style:none;margin:0;padding:0}\n")();
1285
- var windiComponents = /* @__PURE__ */ (() => "")();
1286
- var windiUtilities = /* @__PURE__ */ (() => '.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.bg-brand-primary-light{--tw-bg-opacity: 1;background-color:rgba(255,248,235,var(--tw-bg-opacity))}.bg-brand-primary-pure{--tw-bg-opacity: 1;background-color:rgba(255,176,31,var(--tw-bg-opacity))}.bg-neutral-low-medium{--tw-bg-opacity: 1;background-color:rgba(82,82,82,var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-neutral-high-light{--tw-bg-opacity: 1;background-color:rgba(255,255,255,var(--tw-bg-opacity))}.bg-neutral-high-pure{--tw-bg-opacity: 1;background-color:rgba(224,224,224,var(--tw-bg-opacity))}.bg-neutral-high-medium{--tw-bg-opacity: 1;background-color:rgba(245,245,245,var(--tw-bg-opacity))}.bg-neutral-low-light{--tw-bg-opacity: 1;background-color:rgba(143,143,143,var(--tw-bg-opacity))}.bg-neutral-low-pure{--tw-bg-opacity: 1;background-color:rgba(41,41,41,var(--tw-bg-opacity))}.bg-brand-primary-medium{--tw-bg-opacity: 1;background-color:rgba(255,205,112,var(--tw-bg-opacity))}.bg-feedback-positive-medium{--tw-bg-opacity: 1;background-color:rgba(138,229,191,var(--tw-bg-opacity))}.bg-feedback-positive-light{--tw-bg-opacity: 1;background-color:rgba(238,251,246,var(--tw-bg-opacity))}.bg-feedback-positive-pure{--tw-bg-opacity: 1;background-color:rgba(71,215,154,var(--tw-bg-opacity))}.bg-feedback-informative-light{--tw-bg-opacity: 1;background-color:rgba(235,248,255,var(--tw-bg-opacity))}.bg-feedback-informative-medium{--tw-bg-opacity: 1;background-color:rgba(112,203,255,var(--tw-bg-opacity))}.bg-feedback-negative-pure{--tw-bg-opacity: 1;background-color:rgba(255,37,31,var(--tw-bg-opacity))}.bg-feedback-informative-pure{--tw-bg-opacity: 1;background-color:rgba(31,174,255,var(--tw-bg-opacity))}.bg-feedback-negative-light{--tw-bg-opacity: 1;background-color:rgba(255,235,235,var(--tw-bg-opacity))}.bg-feedback-negative-medium{--tw-bg-opacity: 1;background-color:rgba(255,116,112,var(--tw-bg-opacity))}.border-neutral-high-light{--tw-border-opacity: 1;border-color:rgba(255,255,255,var(--tw-border-opacity))}.border-neutral-low-pure{--tw-border-opacity: 1;border-color:rgba(41,41,41,var(--tw-border-opacity))}.border-neutral-low-light{--tw-border-opacity: 1;border-color:rgba(143,143,143,var(--tw-border-opacity))}.border-neutral-low-medium{--tw-border-opacity: 1;border-color:rgba(82,82,82,var(--tw-border-opacity))}.border-neutral-high-pure{--tw-border-opacity: 1;border-color:rgba(224,224,224,var(--tw-border-opacity))}.border-b-brand-primary-pure{--tw-border-opacity: 1;border-bottom-color:rgba(255,176,31,var(--tw-border-opacity))}.rounded-md{border-radius:.5rem}.rounded-sm{border-radius:.25rem}.rounded-fully{border-radius:100%}.rounded-lg{border-radius:1rem}.rounded-none{border-radius:0}.rounded-half{border-radius:50%}.rounded-full{border-radius:40rem}.border-solid{border-style:solid}.border-a-xs{border-width:1px}.border-sm,.border-2,.border-a-sm{border-width:2px}.border-a-md{border-width:4px}.border-a-lg{border-width:8px}.border-b-xs{border-bottom-width:1px}.border-t-md{border-top-width:4px}.border-r-md{border-right-width:4px}.border-b-md{border-bottom-width:4px}.border-l-md{border-left-width:4px}.border-y-md{border-top-width:4px;border-bottom-width:4px}.border-x-md{border-left-width:4px;border-right-width:4px}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.inline-block{display:inline-block}.flex{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex}.grid{display:-ms-grid;display:grid}.hidden{display:none}.flex-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-flex-direction:row;flex-direction:row}.flex-col{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column}.flex-wrap{-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap}.place-items-center{place-items:center}.place-content-center{place-content:center}.items-start{-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}.items-center{-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center}.justify-start{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start}.justify-center{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center}.justify-between{-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between}.font-highlight{font-family:Rubik}.font-base{font-family:Lato,sans-serif}.font-code{font-family:Roboto Slab,"serif"}.font-medium{font-weight:500}.font-regular{font-weight:400}.h-8{height:2rem}.h-4{height:1rem}.h-2{height:.5rem}.h-full{height:100%}.h-6{height:1.5rem}.h-1{height:.25rem}.h-40{height:10rem}.h-60{height:15rem}.h-24{height:6rem}.text-sm{font-size:1.5rem}.text-3xs{font-size:.875rem}.text-micro{font-size:.75rem}.text-2xs{font-size:1rem}.text-xs{font-size:1.25rem}.text-md{font-size:2rem}.text-lg{font-size:2.5rem}.text-xl{font-size:3rem}.text-2xl{font-size:3.5rem}.text-3xl{font-size:4rem}.text-mega{font-size:4.5rem}.text-giga{font-size:5.5rem}.leading-xs{line-height:1.15}.leading-md{line-height:1.33}.leading-default{line-height:1}.leading-sm{line-height:1.2}.leading-lg{line-height:1.5}.leading-xl{line-height:1.7}.list-none{list-style-type:none}.mx-4{margin-left:1rem;margin-right:1rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mt-micro{margin-top:.5rem}.mb-micro{margin-bottom:.5rem}.mb-xs{margin-bottom:1.5rem}.mr-micro{margin-right:.5rem}.mb-3xs{margin-bottom:.75rem}.mt-nano{margin-top:.25rem}.mb-1,.mb-nano{margin-bottom:.25rem}.mb-16{margin-bottom:4rem}.mb-6{margin-bottom:1.5rem}.mb-4{margin-bottom:1rem}.mb-0{margin-bottom:0}.ml-4{margin-left:1rem}.max-h-10{max-height:2.5rem}.max-h-240px{max-height:240px}.max-h-200{max-height:50rem}.max-w-full{max-width:100%}.min-h-9{min-height:2.25rem}.min-h-8{min-height:2rem}.min-h-14{min-height:3.5rem}.min-w-50{min-width:12.5rem}.outline-solid-neutral-high-light{--tw-outline-opacity: 1;outline-color:rgba(255,255,255,var(--tw-outline-opacity))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.py-micro{padding-top:.5rem;padding-bottom:.5rem}.px-micro{padding-left:.5rem;padding-right:.5rem}.py-3xs{padding-top:.75rem;padding-bottom:.75rem}.px-xs{padding-left:1.5rem;padding-right:1.5rem}.px-3xs{padding-left:.75rem;padding-right:.75rem}.px-nano{padding-left:.25rem;padding-right:.25rem}.py-nano{padding-top:.25rem;padding-bottom:.25rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.pl-2xs{padding-left:1rem}.pr-micro{padding-right:.5rem}.pl-nano{padding-left:.25rem}.pl-3xs{padding-left:.75rem}.caret-brand-primary-pure{--tw-caret-opacity: 1;caret-color:rgba(255,176,31,var(--tw-caret-opacity))}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.right-2{right:.5rem}.top-2\\/18{top:11.111111%}.left-1{left:.25rem}.top-3\\/10{top:30%}.resize{resize:both}.shadow-soft{--tw-shadow: 0px 8px 16px rgba(41, 41, 41, .08);--tw-shadow-colored: 0px 8px 16px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-medium{--tw-shadow: 0px 12px 24px rgba(41, 41, 41, .16);--tw-shadow-colored: 0px 12px 24px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-large{--tw-shadow: 0px 16px 64px rgba(41, 41, 41, .24);--tw-shadow-colored: 0px 16px 64px var(--tw-shadow-color);-webkit-box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.text-left{text-align:left}.text-neutral-low-light{--tw-text-opacity: 1;color:rgba(143,143,143,var(--tw-text-opacity))}.text-neutral-low-medium{--tw-text-opacity: 1;color:rgba(82,82,82,var(--tw-text-opacity))}.text-neutral-low-pure{--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity))}.text-feedback-negative-pure{--tw-text-opacity: 1;color:rgba(255,37,31,var(--tw-text-opacity))}.uppercase{text-transform:uppercase}.text-stroke-neutral-high-light{--tw-text-stroke-opacity: 1;-webkit-text-stroke-color:rgba(255,255,255,var(--tw-text-stroke-opacity))}.content-wrapper{content:"wrapper"}.tracking-md{letter-spacing:.04rem}.tracking-default{letter-spacing:normal}.tracking-sm{letter-spacing:.16rem}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.visible{visibility:visible}.break-words{overflow-wrap:break-word}.w-full{width:100%}.w-fit-content{width:fit-content}.w-4{width:1rem}.w-2{width:.5rem}.w-12{width:3rem}.w-60{width:15rem}.w-82{width:20.5rem}.z-80{z-index:80}.gap-4{grid-gap:1rem;gap:1rem}.gap-3{grid-gap:.75rem;gap:.75rem}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.transform{--tw-translate-x: 0;--tw-translate-y: 0;--tw-translate-z: 0;--tw-rotate: 0;--tw-rotate-x: 0;--tw-rotate-y: 0;--tw-rotate-z: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-scale-z: 1;-webkit-transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) translateZ(var(--tw-translate-z)) rotate(var(--tw-rotate)) rotateX(var(--tw-rotate-x)) rotateY(var(--tw-rotate-y)) rotateZ(var(--tw-rotate-z)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) scaleZ(var(--tw-scale-z));-ms-transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) translateZ(var(--tw-translate-z)) rotate(var(--tw-rotate)) rotateX(var(--tw-rotate-x)) rotateY(var(--tw-rotate-y)) rotateZ(var(--tw-rotate-z)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) scaleZ(var(--tw-scale-z));transform:translate(var(--tw-translate-x)) translateY(var(--tw-translate-y)) translateZ(var(--tw-translate-z)) rotate(var(--tw-rotate)) rotateX(var(--tw-rotate-x)) rotateY(var(--tw-rotate-y)) rotate(var(--tw-rotate-z)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)) scaleZ(var(--tw-scale-z))}.transition-transform{-webkit-transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);-o-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-duration:.15s;-o-transition-duration:.15s;transition-duration:.15s}.\\<transition{-webkit-transition-property:background-color,border-color,color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform,filter,backdrop-filter;-o-transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,-webkit-box-shadow,transform,-webkit-transform,filter,backdrop-filter;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);-o-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-duration:.15s;-o-transition-duration:.15s;transition-duration:.15s}.ease-out{-webkit-transition-timing-function:cubic-bezier(0,0,.2,1);-o-transition-timing-function:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.filter{--tw-blur: var(--tw-empty, );--tw-brightness: var(--tw-empty, );--tw-contrast: var(--tw-empty, );--tw-grayscale: var(--tw-empty, );--tw-hue-rotate: var(--tw-empty, );--tw-invert: var(--tw-empty, );--tw-saturate: var(--tw-empty, );--tw-sepia: var(--tw-empty, );--tw-drop-shadow: var(--tw-empty, );-webkit-filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert,.-invert,.invert\\]{--tw-invert: invert(100%)}.placeholder::placeholder{color:#8f8f8f!important;font-size:undefined!important;font-family:undefined!important;line-height:undefined!important}.placeholder-inline{color:#8f8f8f!important;font-size:undefined!important;font-family:undefined!important;line-height:undefined!important}@media (min-width: 768px){.md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}\n')();
1287
- var style = /* @__PURE__ */ (() => "@font-face{font-family:Lato;src:url(fonts/lato/Lato-Regular.ttf);font-weight:400}@font-face{font-family:Lato;src:url(fonts/lato/Lato-Bold.ttf);font-weight:700}@font-face{font-family:Lato;src:url(fonts/lato/Lato-Medium.ttf);font-weight:500}@font-face{font-family:Rubik;src:url(fonts/rubik/Rubik-Regular.ttf);font-weight:400}@font-face{font-family:Rubik;src:url(fonts/rubik/Rubik-Bold.ttf);font-weight:700}@font-face{font-family:Rubik;src:url(fonts/rubik/Rubik-Medium.ttf);font-weight:500}@font-face{font-family:Roboto Slab;src:url(fonts/roboto-slab/RobotoSlab.ttf)}\n")();
1288
- const TOAST_GAP = 12;
1289
- const DEFAULT_OPTIONS = {
1398
+ const Ee = 12, G = {
1290
1399
  type: "success",
1291
1400
  timeout: 5e3,
1292
- showIcon: true,
1293
- showCloseButton: true,
1401
+ showIcon: !0,
1402
+ showCloseButton: !0,
1294
1403
  position: "top-right",
1295
- hideProgressBar: false
1404
+ hideProgressBar: !1
1296
1405
  };
1297
- function useTimer(callback, delay) {
1298
- const timer = reactive({
1406
+ function Al(e, l) {
1407
+ const t = Z({
1299
1408
  id: null,
1300
1409
  intervalId: null,
1301
1410
  startTime: 0,
1302
- remaining: delay
1303
- });
1304
- const progress = ref(100);
1305
- function stop() {
1306
- clearInterval(timer.intervalId);
1307
- clearTimeout(timer.id);
1308
- timer.remaining -= Date.now() - timer.startTime;
1411
+ remaining: l
1412
+ }), i = I(100);
1413
+ function n() {
1414
+ clearInterval(t.intervalId), clearTimeout(t.id), t.remaining -= Date.now() - t.startTime;
1309
1415
  }
1310
- function start() {
1311
- timer.startTime = Date.now();
1312
- clearTimeout(timer.id);
1313
- timer.intervalId = setInterval(() => {
1314
- progress.value--;
1315
- }, delay / 100 - 5);
1316
- timer.id = setTimeout(callback, timer.remaining);
1416
+ function a() {
1417
+ t.startTime = Date.now(), clearTimeout(t.id), t.intervalId = setInterval(() => {
1418
+ i.value--;
1419
+ }, l / 100 - 5), t.id = setTimeout(e, t.remaining);
1317
1420
  }
1318
- function clear() {
1319
- clearInterval(timer.intervalId);
1320
- clearTimeout(timer.id);
1321
- progress.value = 100;
1421
+ function o() {
1422
+ clearInterval(t.intervalId), clearTimeout(t.id), i.value = 100;
1322
1423
  }
1323
- onMounted(() => {
1324
- if (delay <= 0)
1325
- return false;
1326
- });
1327
- onUnmounted(() => {
1328
- clear();
1329
- });
1330
- return {
1331
- start,
1332
- stop,
1333
- clear,
1334
- progress
1424
+ return Te(() => {
1425
+ if (l <= 0)
1426
+ return !1;
1427
+ }), Ne(() => {
1428
+ o();
1429
+ }), {
1430
+ start: a,
1431
+ stop: n,
1432
+ clear: o,
1433
+ progress: i
1335
1434
  };
1336
1435
  }
1337
- function usePosition(fn) {
1338
- const stylePosition = computed(() => {
1339
- const { position, offset } = fn();
1340
- switch (position) {
1341
- case "top-left":
1342
- return {
1343
- left: "0",
1344
- top: `${offset}px`
1345
- };
1346
- case "bottom-left":
1347
- return {
1348
- left: "0",
1349
- bottom: `${offset}px`
1350
- };
1351
- case "bottom-right":
1352
- return {
1353
- right: "0",
1354
- bottom: `${offset}px`
1355
- };
1356
- case "top-center":
1357
- return {
1358
- top: `${offset}px`,
1359
- left: "0",
1360
- right: "0",
1361
- marginRight: "auto",
1362
- marginLeft: "auto"
1363
- };
1364
- case "bottom-center":
1365
- return {
1366
- bottom: `${offset}px`,
1367
- left: "0",
1368
- right: "0",
1369
- marginRight: "auto",
1370
- marginLeft: "auto"
1371
- };
1372
- default:
1373
- return {
1374
- right: "0",
1375
- top: `${offset}px`
1376
- };
1377
- }
1378
- });
1436
+ function Il(e) {
1379
1437
  return {
1380
- stylePosition
1438
+ stylePosition: E(() => {
1439
+ const { position: t, offset: i } = e();
1440
+ switch (t) {
1441
+ case "top-left":
1442
+ return {
1443
+ left: "0",
1444
+ top: `${i}px`
1445
+ };
1446
+ case "bottom-left":
1447
+ return {
1448
+ left: "0",
1449
+ bottom: `${i}px`
1450
+ };
1451
+ case "bottom-right":
1452
+ return {
1453
+ right: "0",
1454
+ bottom: `${i}px`
1455
+ };
1456
+ case "top-center":
1457
+ return {
1458
+ top: `${i}px`,
1459
+ left: "0",
1460
+ right: "0",
1461
+ marginRight: "auto",
1462
+ marginLeft: "auto"
1463
+ };
1464
+ case "bottom-center":
1465
+ return {
1466
+ bottom: `${i}px`,
1467
+ left: "0",
1468
+ right: "0",
1469
+ marginRight: "auto",
1470
+ marginLeft: "auto"
1471
+ };
1472
+ default:
1473
+ return {
1474
+ right: "0",
1475
+ top: `${i}px`
1476
+ };
1477
+ }
1478
+ })
1381
1479
  };
1382
1480
  }
1383
- var Transition = /* @__PURE__ */ ((Transition2) => {
1384
- Transition2["top-left"] = "bounce-left";
1385
- Transition2["top-right"] = "bounce-right";
1386
- Transition2["top-center"] = "bounce-down";
1387
- Transition2["bottom-left"] = "bounce-left";
1388
- Transition2["bottom-center"] = "bounce-up";
1389
- Transition2["bottom-right"] = "bounce-right";
1390
- return Transition2;
1391
- })(Transition || {});
1392
- const _hoisted_1$3 = {
1481
+ var Pe = /* @__PURE__ */ ((e) => (e["top-left"] = "bounce-left", e["top-right"] = "bounce-right", e["top-center"] = "bounce-down", e["bottom-left"] = "bounce-left", e["bottom-center"] = "bounce-up", e["bottom-right"] = "bounce-right", e))(Pe || {});
1482
+ const El = {
1393
1483
  preserveAspectRatio: "xMidYMid meet",
1394
1484
  viewBox: "0 0 24 24",
1395
- width: "1.2em",
1396
- height: "1.2em"
1397
- };
1398
- const _hoisted_2$3 = /* @__PURE__ */ createElementVNode("path", {
1485
+ width: "1em",
1486
+ height: "1em"
1487
+ }, Pl = /* @__PURE__ */ h("path", {
1399
1488
  fill: "currentColor",
1400
1489
  d: "M12 4a8 8 0 1 0 0 16a8 8 0 0 0 0-16zM2 12C2 6.477 6.477 2 12 2s10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12zm14.664-3.247a1 1 0 0 1 .083 1.411l-5.333 6a1 1 0 0 1-1.495 0l-2.666-3a1 1 0 0 1 1.494-1.328l1.92 2.159l4.586-5.16a1 1 0 0 1 1.411-.082z"
1401
- }, null, -1);
1402
- const _hoisted_3$3 = [
1403
- _hoisted_2$3
1490
+ }, null, -1), Ol = [
1491
+ Pl
1404
1492
  ];
1405
- function render$2(_ctx, _cache) {
1406
- return openBlock(), createElementBlock("svg", _hoisted_1$3, _hoisted_3$3);
1493
+ function Dl(e, l) {
1494
+ return s(), r("svg", El, Ol);
1407
1495
  }
1408
- var Success = { name: "mi-circle-check", render: render$2 };
1409
- const _hoisted_1$2 = {
1496
+ const Rl = { name: "mi-circle-check", render: Dl }, pl = {
1410
1497
  preserveAspectRatio: "xMidYMid meet",
1411
1498
  viewBox: "0 0 24 24",
1412
- width: "1.2em",
1413
- height: "1.2em"
1414
- };
1415
- const _hoisted_2$2 = /* @__PURE__ */ createElementVNode("path", {
1499
+ width: "1em",
1500
+ height: "1em"
1501
+ }, Hl = /* @__PURE__ */ h("path", {
1416
1502
  fill: "currentColor",
1417
1503
  d: "M12 4a8 8 0 1 0 0 16a8 8 0 0 0 0-16zM2 12C2 6.477 6.477 2 12 2s10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12zm5.793-4.207a1 1 0 0 1 1.414 0L12 10.586l2.793-2.793a1 1 0 1 1 1.414 1.414L13.414 12l2.793 2.793a1 1 0 0 1-1.414 1.414L12 13.414l-2.793 2.793a1 1 0 0 1-1.414-1.414L10.586 12L7.793 9.207a1 1 0 0 1 0-1.414z"
1418
- }, null, -1);
1419
- const _hoisted_3$2 = [
1420
- _hoisted_2$2
1504
+ }, null, -1), Nl = [
1505
+ Hl
1421
1506
  ];
1422
- function render$1(_ctx, _cache) {
1423
- return openBlock(), createElementBlock("svg", _hoisted_1$2, _hoisted_3$2);
1507
+ function Ul(e, l) {
1508
+ return s(), r("svg", pl, Nl);
1424
1509
  }
1425
- var Error$1 = { name: "mi-circle-error", render: render$1 };
1426
- const _hoisted_1$1 = {
1510
+ const Gl = { name: "mi-circle-error", render: Ul }, Fl = {
1427
1511
  preserveAspectRatio: "xMidYMid meet",
1428
1512
  viewBox: "0 0 24 24",
1429
- width: "1.2em",
1430
- height: "1.2em"
1431
- };
1432
- const _hoisted_2$1 = /* @__PURE__ */ createElementVNode("g", { fill: "currentColor" }, [
1433
- /* @__PURE__ */ createElementVNode("path", { d: "M12 4a8 8 0 1 0 0 16a8 8 0 0 0 0-16zM2 12C2 6.477 6.477 2 12 2s10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12z" }),
1434
- /* @__PURE__ */ createElementVNode("path", { d: "M12 14a1 1 0 0 1-1-1V7a1 1 0 1 1 2 0v6a1 1 0 0 1-1 1zm-1.5 2.5a1.5 1.5 0 1 1 3 0a1.5 1.5 0 0 1-3 0z" })
1435
- ], -1);
1436
- const _hoisted_3$1 = [
1437
- _hoisted_2$1
1513
+ width: "1em",
1514
+ height: "1em"
1515
+ }, Kl = /* @__PURE__ */ h("g", { fill: "currentColor" }, [
1516
+ /* @__PURE__ */ h("path", { d: "M12 4a8 8 0 1 0 0 16a8 8 0 0 0 0-16zM2 12C2 6.477 6.477 2 12 2s10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12z" }),
1517
+ /* @__PURE__ */ h("path", { d: "M12 14a1 1 0 0 1-1-1V7a1 1 0 1 1 2 0v6a1 1 0 0 1-1 1zm-1.5 2.5a1.5 1.5 0 1 1 3 0a1.5 1.5 0 0 1-3 0z" })
1518
+ ], -1), Yl = [
1519
+ Kl
1438
1520
  ];
1439
- function render(_ctx, _cache) {
1440
- return openBlock(), createElementBlock("svg", _hoisted_1$1, _hoisted_3$1);
1521
+ function Wl(e, l) {
1522
+ return s(), r("svg", Fl, Yl);
1441
1523
  }
1442
- var Info = { name: "mi-circle-warning", render };
1443
- var Toast_vue_vue_type_style_index_0_lang = /* @__PURE__ */ (() => ".bounce-right-enter-active{animation:bounceInRight .7s}.bounce-right-leave-active{animation:bounceOutLeft .7s}.bounce-left-enter-active{animation:bounceInLeft .7s}.bounce-left-leave-active{animation:bounceOutRight .7s}.bounce-down-enter-active{animation:bounceInDown .7s}.bounce-down-leave-active{animation:bounceOutUp .7s}.bounce-up-enter-active{animation:bounceInUp .7s}.bounce-up-leave-active{animation:bounceOutDown .7s}@keyframes bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-2000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes bounceOutLeft{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(2000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes bounceOutRight{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.sol-toast-core{border-radius:.5rem;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;margin-left:1rem;margin-right:1rem;max-height:50rem;min-height:3.5rem;overflow:hidden;padding:.5rem .5rem .5rem 1rem;position:fixed;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow-wrap:break-word;width:20.5rem;z-index:80;touch-action:none;transition:top .3s ease-out .5s,bottom .3s ease-out .5s}.sol-toast-core.-multiline{-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start;padding-top:1rem;padding-bottom:1rem}.sol-toast-core.-multiline>.content-wrapper{-webkit-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}.sol-toast-core.-multiline>.content-wrapper>.content>.title{font-weight:500;font-size:1rem;line-height:1.5}.sol-toast-core.-multiline>.close>.icon{font-size:1rem}.sol-toast-core>.content-wrapper{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center}.sol-toast-core>.content-wrapper>.icon-container{margin-right:.75rem}.sol-toast-core>.content-wrapper>.icon-container>.icon{font-size:1.25rem}.sol-toast-core>.content-wrapper>.content{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;line-height:1.2;--tw-text-stroke-opacity: 1;-webkit-text-stroke-color:rgba(255,255,255,var(--tw-text-stroke-opacity))}.sol-toast-core>.content-wrapper>.content>.title{font-family:Rubik;font-weight:400;font-size:.875rem;margin-bottom:.25rem;--tw-text-opacity: 1;color:rgba(41,41,41,var(--tw-text-opacity));overflow:hidden;line-clamp:4;-webkit-line-clamp:4;display:-webkit-box;-webkit-box-orient:vertical}.sol-toast-core>.content-wrapper>.content>.description{font-size:.875rem;margin-bottom:.5rem;overflow:hidden;line-clamp:3;-webkit-line-clamp:3;display:-webkit-box;-webkit-box-orient:vertical}.sol-toast-core>.close{cursor:pointer;padding-left:.75rem;padding-right:.75rem}.sol-toast-core>.close>.icon{font-size:1.25rem}.sol-toast-core>.progressbar{height:.25rem;position:absolute;bottom:0px;z-index:30;transition:all linear .2s;background-color:#fff9;margin-left:-12px;will-change:width}.sol-toast-core.-success{--tw-bg-opacity: 1;background-color:rgba(138,229,191,var(--tw-bg-opacity))}.sol-toast-core.-info{--tw-bg-opacity: 1;background-color:rgba(112,203,255,var(--tw-bg-opacity))}.sol-toast-core.-danger{--tw-bg-opacity: 1;background-color:rgba(255,116,112,var(--tw-bg-opacity))}\n")();
1444
- const _hoisted_1 = ["id", "data-testid"];
1445
- const _hoisted_2 = { class: "content-wrapper" };
1446
- const _hoisted_3 = {
1524
+ const Zl = { name: "mi-circle-warning", render: Wl }, jl = ["id", "data-testid"], ql = { class: "content-wrapper" }, Ql = {
1447
1525
  key: 0,
1448
1526
  class: "icon-container",
1449
1527
  "aria-hidden": "true"
1450
- };
1451
- const _hoisted_4 = { class: "content" };
1452
- const _hoisted_5 = {
1528
+ }, Jl = { class: "content" }, Xl = {
1453
1529
  key: 0,
1454
1530
  class: "description"
1455
- };
1456
- const _hoisted_6 = ["data-testid"];
1457
- const _sfc_main = /* @__PURE__ */ defineComponent({
1531
+ }, _l = ["data-testid"], en = /* @__PURE__ */ V({
1458
1532
  __name: "Toast",
1459
1533
  props: {
1460
1534
  id: null,
1461
- type: { default: DEFAULT_OPTIONS.type },
1462
- visible: { type: Boolean, default: false },
1535
+ type: { default: G.type },
1536
+ visible: { type: Boolean, default: !1 },
1463
1537
  title: null,
1464
1538
  description: null,
1465
1539
  timeout: null,
1466
- hideProgressBar: { type: Boolean, default: DEFAULT_OPTIONS.hideProgressBar },
1467
- showIcon: { type: Boolean, default: DEFAULT_OPTIONS.showIcon },
1540
+ hideProgressBar: { type: Boolean, default: G.hideProgressBar },
1541
+ showIcon: { type: Boolean, default: G.showIcon },
1468
1542
  offset: { default: 0 },
1469
1543
  onClose: null,
1470
1544
  onCloseHandler: null,
1471
- position: { default: DEFAULT_OPTIONS.position }
1545
+ position: { default: G.position }
1472
1546
  },
1473
- setup(__props) {
1474
- const props = __props;
1475
- const { start, stop, progress } = useTimer(() => {
1476
- var _a2;
1477
- (_a2 = props.onCloseHandler) == null ? void 0 : _a2.call(props);
1478
- }, props.timeout);
1479
- const { stylePosition } = usePosition(() => ({
1480
- offset: props.offset,
1481
- position: props.position
1482
- }));
1483
- const isMultiline = computed(() => props.title && props.description);
1484
- function onMouseEnter() {
1485
- if (props.timeout > 0) {
1486
- stop();
1487
- }
1547
+ setup(e) {
1548
+ const l = e, { start: t, stop: i, progress: n } = Al(() => {
1549
+ var f;
1550
+ (f = l.onCloseHandler) == null || f.call(l);
1551
+ }, l.timeout), { stylePosition: a } = Il(() => ({
1552
+ offset: l.offset,
1553
+ position: l.position
1554
+ })), o = E(() => l.title && l.description);
1555
+ function c() {
1556
+ l.timeout > 0 && i();
1488
1557
  }
1489
- function onMouseLeave() {
1490
- start();
1558
+ function u() {
1559
+ t();
1491
1560
  }
1492
- onMounted(() => {
1493
- start();
1494
- });
1495
- return (_ctx, _cache) => {
1496
- return openBlock(), createBlock(Transition$1, {
1497
- name: unref(Transition)[__props.position],
1498
- type: "animation"
1499
- }, {
1500
- default: withCtx(() => [
1501
- __props.visible ? (openBlock(), createElementBlock("div", {
1502
- key: 0,
1503
- id: `toast-${__props.type}-${__props.id}`,
1504
- role: "status",
1505
- "data-testid": `toast-${__props.type}-${__props.id}`,
1506
- style: normalizeStyle(unref(stylePosition)),
1507
- class: normalizeClass(["sol-toast-core", [`-${__props.type}`, { "-multiline": unref(isMultiline) }]]),
1508
- onKeyup: _cache[1] || (_cache[1] = withKeys((...args) => __props.onCloseHandler && __props.onCloseHandler(...args), ["esc"])),
1509
- onMouseenter: onMouseEnter,
1510
- onMouseleave: onMouseLeave,
1511
- onFocusin: onMouseEnter,
1512
- onFocusout: onMouseLeave
1513
- }, [
1514
- createElementVNode("section", _hoisted_2, [
1515
- __props.showIcon ? (openBlock(), createElementBlock("div", _hoisted_3, [
1516
- renderSlot(_ctx.$slots, "icon-status", { type: __props.type }, () => [
1517
- __props.type === "success" ? (openBlock(), createBlock(unref(Success), {
1518
- key: 0,
1519
- class: "icon"
1520
- })) : createCommentVNode("", true),
1521
- __props.type === "info" ? (openBlock(), createBlock(unref(Info), {
1522
- key: 1,
1523
- class: "icon"
1524
- })) : createCommentVNode("", true),
1525
- __props.type === "danger" ? (openBlock(), createBlock(unref(Error$1), {
1526
- key: 2,
1527
- class: "icon"
1528
- })) : createCommentVNode("", true)
1529
- ])
1530
- ])) : createCommentVNode("", true),
1531
- createElementVNode("div", _hoisted_4, [
1532
- createElementVNode("p", {
1533
- class: normalizeClass(["title", { "-multiline": unref(isMultiline) }])
1534
- }, [
1535
- renderSlot(_ctx.$slots, "title", {}, () => [
1536
- createTextVNode(toDisplayString(__props.title), 1)
1537
- ])
1538
- ], 2),
1539
- __props.description ? (openBlock(), createElementBlock("p", _hoisted_5, [
1540
- renderSlot(_ctx.$slots, "description", {}, () => [
1541
- createTextVNode(toDisplayString(__props.description), 1)
1542
- ])
1543
- ])) : createCommentVNode("", true)
1561
+ return Te(() => {
1562
+ t();
1563
+ }), (f, v) => (s(), p(we, {
1564
+ name: g(Pe)[e.position],
1565
+ type: "animation"
1566
+ }, {
1567
+ default: D(() => [
1568
+ e.visible ? (s(), r("div", {
1569
+ key: 0,
1570
+ id: `toast-${e.type}-${e.id}`,
1571
+ role: "status",
1572
+ "data-testid": `toast-${e.type}-${e.id}`,
1573
+ style: ne(g(a)),
1574
+ class: S(["sol-toast-core", [`-${e.type}`, { "-multiline": g(o) }]]),
1575
+ onKeyup: v[1] || (v[1] = j(
1576
+ (...z) => e.onCloseHandler && e.onCloseHandler(...z),
1577
+ ["esc"]
1578
+ )),
1579
+ onMouseenter: c,
1580
+ onMouseleave: u,
1581
+ onFocusin: c,
1582
+ onFocusout: u
1583
+ }, [
1584
+ h("section", ql, [
1585
+ e.showIcon ? (s(), r("div", Ql, [
1586
+ y(f.$slots, "icon-status", { type: e.type }, () => [
1587
+ e.type === "success" ? (s(), p(g(Rl), {
1588
+ key: 0,
1589
+ class: "icon"
1590
+ })) : T("", !0),
1591
+ e.type === "info" ? (s(), p(g(Zl), {
1592
+ key: 1,
1593
+ class: "icon"
1594
+ })) : T("", !0),
1595
+ e.type === "danger" ? (s(), p(g(Gl), {
1596
+ key: 2,
1597
+ class: "icon"
1598
+ })) : T("", !0)
1544
1599
  ])
1545
- ]),
1546
- createElementVNode("button", {
1547
- type: "button",
1548
- class: normalizeClass(["close", { "-multiline": unref(isMultiline) }]),
1549
- "data-testid": `toast-close-button-${__props.type}-${__props.id}`,
1550
- "aria-label": "close notification",
1551
- onClick: _cache[0] || (_cache[0] = (...args) => __props.onCloseHandler && __props.onCloseHandler(...args))
1552
- }, [
1553
- createVNode(unref(Close), { class: "icon" })
1554
- ], 10, _hoisted_6),
1555
- !__props.hideProgressBar ? (openBlock(), createElementBlock("div", {
1556
- key: 0,
1557
- class: "progressbar",
1558
- "aria-hidden": "true",
1559
- style: normalizeStyle({ width: `${unref(progress)}%` })
1560
- }, null, 4)) : createCommentVNode("", true)
1561
- ], 46, _hoisted_1)) : createCommentVNode("", true)
1562
- ]),
1563
- _: 3
1564
- }, 8, ["name"]);
1565
- };
1600
+ ])) : T("", !0),
1601
+ h("div", Jl, [
1602
+ h("p", {
1603
+ class: S(["title", { "-multiline": g(o) }])
1604
+ }, [
1605
+ y(f.$slots, "title", {}, () => [
1606
+ O(x(e.title), 1)
1607
+ ])
1608
+ ], 2),
1609
+ e.description ? (s(), r("p", Xl, [
1610
+ y(f.$slots, "description", {}, () => [
1611
+ O(x(e.description), 1)
1612
+ ])
1613
+ ])) : T("", !0)
1614
+ ])
1615
+ ]),
1616
+ h("button", {
1617
+ type: "button",
1618
+ class: S(["close", { "-multiline": g(o) }]),
1619
+ "data-testid": `toast-close-button-${e.type}-${e.id}`,
1620
+ "aria-label": "close notification",
1621
+ onClick: v[0] || (v[0] = (...z) => e.onCloseHandler && e.onCloseHandler(...z))
1622
+ }, [
1623
+ M(g(Ie), { class: "icon" })
1624
+ ], 10, _l),
1625
+ e.hideProgressBar ? T("", !0) : (s(), r("div", {
1626
+ key: 0,
1627
+ class: "progressbar",
1628
+ "aria-hidden": "true",
1629
+ style: ne({ width: `${g(n)}%` })
1630
+ }, null, 4))
1631
+ ], 46, jl)) : T("", !0)
1632
+ ]),
1633
+ _: 3
1634
+ }, 8, ["name"]));
1566
1635
  }
1567
1636
  });
1568
- const toasts = {
1637
+ const Q = {
1569
1638
  "top-left": [],
1570
1639
  "top-right": [],
1571
1640
  "top-center": [],
@@ -1573,131 +1642,131 @@ const toasts = {
1573
1642
  "bottom-right": [],
1574
1643
  "bottom-center": []
1575
1644
  };
1576
- function useToast() {
1577
- let toastId = 0;
1578
- function clearAllToasts() {
1579
- Object.entries(toasts).forEach(([position, toastsInAPosition]) => {
1580
- if (toastsInAPosition.length) {
1581
- toastsInAPosition.forEach((toast) => {
1582
- var _a2;
1583
- const id = (_a2 = toast.toastVNode.props) == null ? void 0 : _a2.id;
1584
- close(id, position);
1585
- });
1586
- }
1645
+ function dn() {
1646
+ let e = 0;
1647
+ function l() {
1648
+ Object.entries(Q).forEach(([i, n]) => {
1649
+ n.length && n.forEach((a) => {
1650
+ var c;
1651
+ const o = (c = a.toastVNode.props) == null ? void 0 : c.id;
1652
+ ge(o, i);
1653
+ });
1587
1654
  });
1588
1655
  }
1589
- const createToast = (content, options) => {
1590
- const id = toastId++;
1591
- const initializedOptions = options ? initializeOptions(options) : DEFAULT_OPTIONS;
1592
- if (options == null ? void 0 : options.showOneToast)
1593
- clearAllToasts();
1594
- const transformContent = typeof content === "string" ? { title: content } : content;
1595
- setupVNode(id, initializedOptions, transformContent);
1596
- return {
1597
- close: () => close(id, initializedOptions.position)
1598
- };
1599
- };
1600
1656
  return {
1601
- createToast,
1602
- clearAllToasts
1657
+ createToast: (i, n) => {
1658
+ const a = e++, o = n ? tn(n) : G;
1659
+ return n != null && n.showOneToast && l(), ln(a, o, typeof i == "string" ? { title: i } : i), {
1660
+ close: () => ge(a, o.position)
1661
+ };
1662
+ },
1663
+ clearAllToasts: l
1603
1664
  };
1604
1665
  }
1605
- function initializeOptions(options) {
1606
- const processedOptions = __spreadProps(__spreadValues(__spreadValues({}, DEFAULT_OPTIONS), options), {
1607
- showIcon: options.showIcon
1608
- });
1609
- processedOptions.hideProgressBar = !!(processedOptions.timeout && (processedOptions == null ? void 0 : processedOptions.timeout) <= 0);
1610
- if (options.hideProgressBar) {
1611
- processedOptions.hideProgressBar = options.hideProgressBar;
1612
- }
1613
- return processedOptions;
1666
+ function tn(e) {
1667
+ const l = {
1668
+ ...G,
1669
+ ...e,
1670
+ showIcon: e.showIcon
1671
+ };
1672
+ return l.hideProgressBar = !!(l.timeout && (l == null ? void 0 : l.timeout) <= 0), e.hideProgressBar && (l.hideProgressBar = e.hideProgressBar), l;
1614
1673
  }
1615
- function setupVNode(id, options, content) {
1674
+ function ln(e, l, t) {
1616
1675
  setTimeout(() => {
1617
- const verticalOffset = moveToastsOnAdd(options, toasts, TOAST_GAP);
1618
- const container = document.createElement("div");
1619
- document.body.appendChild(container);
1620
- const toastVNode = createVNode(_sfc_main, setupVNodeProps(options, id, verticalOffset, close, content));
1621
- render$9(toastVNode, container);
1622
- toasts[options.position].push({ toastVNode, container });
1623
- if (toastVNode.component)
1624
- toastVNode.component.props.visible = true;
1676
+ const i = an(l, Q, Ee), n = document.createElement("div");
1677
+ document.body.appendChild(n);
1678
+ const a = M(
1679
+ en,
1680
+ nn(l, e, i, ge, t)
1681
+ );
1682
+ Me(a, n), Q[l.position].push({ toastVNode: a, container: n }), a.component && (a.component.props.visible = !0);
1625
1683
  }, 1);
1626
1684
  }
1627
- function setupVNodeProps(options, id, offset, closeFn, content) {
1628
- return __spreadProps(__spreadValues(__spreadValues({}, options), content), {
1629
- id,
1630
- offset,
1631
- visible: false,
1685
+ function nn(e, l, t, i, n) {
1686
+ return {
1687
+ ...e,
1688
+ ...n,
1689
+ id: l,
1690
+ offset: t,
1691
+ visible: !1,
1632
1692
  onCloseHandler() {
1633
- closeFn(id, options.position ? options.position : "top-right");
1693
+ i(l, e.position ? e.position : "top-right");
1634
1694
  }
1635
- });
1695
+ };
1636
1696
  }
1637
- function moveToastsOnAdd(options, toasts2, toastGap) {
1638
- if (!options.position)
1697
+ function an(e, l, t) {
1698
+ if (!e.position)
1639
1699
  throw new Error("no position");
1640
- return toasts2[options.position].reduce((acc, { toastVNode }) => {
1641
- const offsetHeight = toastVNode.el.offsetHeight + toastGap;
1642
- acc += offsetHeight || 0;
1643
- return acc;
1644
- }, toastGap);
1700
+ return l[e.position].reduce((i, { toastVNode: n }) => (i += n.el.offsetHeight + t || 0, i), t);
1645
1701
  }
1646
- function moveToastsOnClose(index, toastArr, position, toastHeight) {
1647
- for (let i = index; i < toastArr.length; i++) {
1648
- const { toastVNode } = toastArr[i];
1649
- if (!toastVNode.el)
1702
+ function on(e, l, t, i) {
1703
+ for (let n = e; n < l.length; n++) {
1704
+ const { toastVNode: a } = l[n];
1705
+ if (!a.el)
1650
1706
  return;
1651
- const verticalPosition = position.split("-")[0] || "top";
1652
- const positionLessOneToast = parseInt(toastVNode.el.style[verticalPosition], 10) - toastHeight - TOAST_GAP;
1653
- if (!toastVNode.component)
1707
+ const o = t.split("-")[0] || "top", c = parseInt(a.el.style[o], 10) - i - Ee;
1708
+ if (!a.component)
1654
1709
  return;
1655
- toastVNode.component.props.offset = positionLessOneToast;
1710
+ a.component.props.offset = c;
1656
1711
  }
1657
1712
  }
1658
- function close(id, position) {
1659
- var _a2;
1660
- const toastArr = toasts[position];
1661
- const index = toastArr.findIndex(({ toastVNode: toastVNode2 }) => {
1662
- var _a3;
1663
- return id === ((_a3 = toastVNode2 == null ? void 0 : toastVNode2.props) == null ? void 0 : _a3.id);
1664
- });
1665
- if (index === -1)
1713
+ function ge(e, l) {
1714
+ var u;
1715
+ const t = Q[l], i = t.findIndex(
1716
+ ({ toastVNode: f }) => {
1717
+ var v;
1718
+ return e === ((v = f == null ? void 0 : f.props) == null ? void 0 : v.id);
1719
+ }
1720
+ );
1721
+ if (i === -1)
1666
1722
  return;
1667
- const { container, toastVNode } = toastArr[index];
1668
- const height = (_a2 = toastVNode == null ? void 0 : toastVNode.el) == null ? void 0 : _a2.offsetHeight;
1669
- toasts[position].splice(index, 1);
1670
- moveToastsOnClose(index, toastArr, position, height);
1671
- if (!toastVNode.component)
1723
+ const { container: n, toastVNode: a } = t[i], o = (u = a == null ? void 0 : a.el) == null ? void 0 : u.offsetHeight;
1724
+ if (Q[l].splice(i, 1), on(i, t, l, o), !a.component)
1672
1725
  return;
1673
- const componentProps = toastVNode.component.props;
1674
- componentProps.visible = false;
1675
- componentProps.onClose && componentProps.onClose();
1676
- setTimeout(() => {
1677
- render$9(null, container);
1678
- document.body.removeChild(container);
1726
+ const c = a.component.props;
1727
+ c.visible = !1, c.onClose && c.onClose(), setTimeout(() => {
1728
+ Me(null, n), document.body.removeChild(n);
1679
1729
  }, 1e3);
1680
1730
  }
1681
1731
  console.log("%c\u{1F33B}[Girassol]\u{1F33B}", "padding: 8px;background: #212121;color: gold; font-family: 'Fira code'; font-weight: bold; font-size: 1.2rem");
1682
- const components = {
1683
- SolButton: _sfc_main$e,
1684
- SolInput: _sfc_main$d,
1685
- SolTextarea: _sfc_main$a,
1686
- SolTextfield: _sfc_main$c,
1687
- SolTextfieldPassword: _sfc_main$b,
1688
- SolRadio: _sfc_main$9,
1689
- SolRadioGroup: _sfc_main$8,
1690
- SolCheckbox: _sfc_main$7,
1691
- SolCheckboxGroup: _sfc_main$6,
1692
- SolSwitch: _sfc_main$5,
1693
- SolDropdown: _sfc_main$4,
1694
- SolSelect: _sfc_main$2,
1695
- SolChip: _sfc_main$3,
1696
- SolAccordion: _sfc_main$1
1732
+ const ke = {
1733
+ SolButton: q,
1734
+ SolButtonDestructive: ze,
1735
+ SolInput: F,
1736
+ SolTextarea: re,
1737
+ SolTextfield: ie,
1738
+ SolTextfieldPassword: ce,
1739
+ SolRadio: ae,
1740
+ SolRadioGroup: ue,
1741
+ SolCheckbox: oe,
1742
+ SolCheckboxGroup: he,
1743
+ SolSwitch: fe,
1744
+ SolDropdown: ve,
1745
+ SolSelect: be,
1746
+ SolChip: se,
1747
+ SolAccordion: ye
1697
1748
  };
1698
- function install(App) {
1699
- for (const component in components) {
1700
- App.component(component, components[component]);
1701
- }
1749
+ function cn(e) {
1750
+ for (const l in ke)
1751
+ e.component(l, ke[l]);
1702
1752
  }
1703
- export { _sfc_main$1 as SolAccordion, _sfc_main$e as SolButton, _sfc_main$7 as SolCheckbox, _sfc_main$6 as SolCheckboxGroup, _sfc_main$3 as SolChip, _sfc_main$4 as SolDropdown, _sfc_main$d as SolInput, _sfc_main$9 as SolRadio, _sfc_main$8 as SolRadioGroup, _sfc_main$2 as SolSelect, _sfc_main$5 as SolSwitch, _sfc_main$a as SolTextarea, _sfc_main$c as SolTextfield, _sfc_main$b as SolTextfieldPassword, components, install, useToast };
1753
+ export {
1754
+ ye as SolAccordion,
1755
+ q as SolButton,
1756
+ ze as SolButtonDestructive,
1757
+ oe as SolCheckbox,
1758
+ he as SolCheckboxGroup,
1759
+ se as SolChip,
1760
+ ve as SolDropdown,
1761
+ F as SolInput,
1762
+ ae as SolRadio,
1763
+ ue as SolRadioGroup,
1764
+ be as SolSelect,
1765
+ fe as SolSwitch,
1766
+ re as SolTextarea,
1767
+ ie as SolTextfield,
1768
+ ce as SolTextfieldPassword,
1769
+ ke as components,
1770
+ cn as install,
1771
+ dn as useToast
1772
+ };