@stachelock/ui 0.1.1 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js +70 -0
- package/dist/CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js.map +1 -0
- package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js +186 -0
- package/dist/CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js.map +1 -0
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-2dJNxQUF.js +1300 -0
- package/dist/ComboboxInput.vue_vue_type_script_setup_true_lang-2dJNxQUF.js.map +1 -0
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-VeZhdPhj.js +187 -0
- package/dist/DashboardLayout.vue_vue_type_script_setup_true_lang-VeZhdPhj.js.map +1 -0
- package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-xE5bCa3O.js +123 -0
- package/dist/DayCalendar.vue_vue_type_script_setup_true_lang-xE5bCa3O.js.map +1 -0
- package/dist/DefaultLayout.vue_vue_type_script_setup_true_lang-BZAz6aC-.js +85 -0
- package/dist/DefaultLayout.vue_vue_type_script_setup_true_lang-BZAz6aC-.js.map +1 -0
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js +217 -0
- package/dist/DynamicForm.vue_vue_type_script_setup_true_lang-BpfPAZiT.js.map +1 -0
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js +169 -0
- package/dist/DynamicFormField.vue_vue_type_script_setup_true_lang-DvT03FIS.js.map +1 -0
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js +157 -0
- package/dist/EventCard.vue_vue_type_script_setup_true_lang-YV1lfgUY.js.map +1 -0
- package/dist/EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js +103 -0
- package/dist/EventsList.vue_vue_type_script_setup_true_lang-Cn_WOpZi.js.map +1 -0
- package/dist/HeaderLayout.vue_vue_type_script_setup_true_lang-BY2G6hCc.js +49 -0
- package/dist/HeaderLayout.vue_vue_type_script_setup_true_lang-BY2G6hCc.js.map +1 -0
- package/dist/MonthCalendar.vue_vue_type_script_setup_true_lang-B9Bs0z8j.js +66 -0
- package/dist/MonthCalendar.vue_vue_type_script_setup_true_lang-B9Bs0z8j.js.map +1 -0
- package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-2WURj34G.js +29 -0
- package/dist/NavigationGroup.vue_vue_type_script_setup_true_lang-2WURj34G.js.map +1 -0
- package/dist/NavigationItem.vue_vue_type_script_setup_true_lang-DiNg3gz2.js +51 -0
- package/dist/NavigationItem.vue_vue_type_script_setup_true_lang-DiNg3gz2.js.map +1 -0
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js +522 -0
- package/dist/SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js.map +1 -0
- package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js +174 -0
- package/dist/SidebarLayout.vue_vue_type_script_setup_true_lang-J1nfUTdM.js.map +1 -0
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js +273 -0
- package/dist/SwitchInput.vue_vue_type_script_setup_true_lang-BFr2SByh.js.map +1 -0
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js +240 -0
- package/dist/TagifyInput.vue_vue_type_script_setup_true_lang-DRR6jt_8.js.map +1 -0
- package/dist/TextAreaInput.vue_vue_type_script_setup_true_lang-CbR651TU.js +158 -0
- package/dist/TextAreaInput.vue_vue_type_script_setup_true_lang-CbR651TU.js.map +1 -0
- package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-CDNjUA1L.js +108 -0
- package/dist/UiAvatar.vue_vue_type_script_setup_true_lang-CDNjUA1L.js.map +1 -0
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js +82 -0
- package/dist/UiBreadcrumb.vue_vue_type_script_setup_true_lang-quGuN9v4.js.map +1 -0
- package/dist/UiLoading.vue_vue_type_script_setup_true_lang-DCz52-Me.js +131 -0
- package/dist/UiLoading.vue_vue_type_script_setup_true_lang-DCz52-Me.js.map +1 -0
- package/dist/UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js +163 -0
- package/dist/UiModal.vue_vue_type_script_setup_true_lang-SAo39zpS.js.map +1 -0
- package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-Bz5oiCCk.js +222 -0
- package/dist/UiNavLink.vue_vue_type_script_setup_true_lang-Bz5oiCCk.js.map +1 -0
- package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-0zFKwh43.js +46 -0
- package/dist/UiProgressBar.vue_vue_type_script_setup_true_lang-0zFKwh43.js.map +1 -0
- package/dist/UiTable.vue_vue_type_script_setup_true_lang-hI1_xamh.js +211 -0
- package/dist/UiTable.vue_vue_type_script_setup_true_lang-hI1_xamh.js.map +1 -0
- package/dist/UiTransition.vue_vue_type_script_setup_true_lang-DwBTj18t.js +66 -0
- package/dist/UiTransition.vue_vue_type_script_setup_true_lang-DwBTj18t.js.map +1 -0
- package/dist/WeekCalendar.vue_vue_type_script_setup_true_lang-DAFQiRI9.js +154 -0
- package/dist/WeekCalendar.vue_vue_type_script_setup_true_lang-DAFQiRI9.js.map +1 -0
- package/dist/XMarkIcon-C4wILUsz.js +40 -0
- package/dist/XMarkIcon-C4wILUsz.js.map +1 -0
- package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-BfJkvmpN.js +29 -0
- package/dist/YearCalendar.vue_vue_type_script_setup_true_lang-BfJkvmpN.js.map +1 -0
- package/dist/_plugin-vue_export-helper-CHgC5LLL.js +10 -0
- package/dist/_plugin-vue_export-helper-CHgC5LLL.js.map +1 -0
- package/dist/calculate-active-index-CksdUwZY.js +87 -0
- package/dist/calculate-active-index-CksdUwZY.js.map +1 -0
- package/dist/calendar-905Ofszh.js +77 -0
- package/dist/calendar-905Ofszh.js.map +1 -0
- package/dist/calendars/CalendarDashboard.d.ts +3 -0
- package/dist/calendars/CalendarDashboard.js +72 -0
- package/dist/calendars/CalendarDashboard.js.map +1 -0
- package/dist/calendars/CalendarHeader.d.ts +3 -0
- package/dist/calendars/CalendarHeader.js +5 -0
- package/dist/calendars/CalendarHeader.js.map +1 -0
- package/dist/calendars/DayCalendar.d.ts +3 -0
- package/dist/calendars/DayCalendar.js +5 -0
- package/dist/calendars/DayCalendar.js.map +1 -0
- package/dist/calendars/EventCard.d.ts +3 -0
- package/dist/calendars/EventCard.js +5 -0
- package/dist/calendars/EventCard.js.map +1 -0
- package/dist/calendars/EventsList.d.ts +3 -0
- package/dist/calendars/EventsList.js +5 -0
- package/dist/calendars/EventsList.js.map +1 -0
- package/dist/calendars/MonthCalendar.d.ts +3 -0
- package/dist/calendars/MonthCalendar.js +5 -0
- package/dist/calendars/MonthCalendar.js.map +1 -0
- package/dist/calendars/WeekCalendar.d.ts +3 -0
- package/dist/calendars/WeekCalendar.js +5 -0
- package/dist/calendars/WeekCalendar.js.map +1 -0
- package/dist/calendars/YearCalendar.d.ts +3 -0
- package/dist/calendars/YearCalendar.js +5 -0
- package/dist/calendars/YearCalendar.js.map +1 -0
- package/dist/components/Avatar.d.ts +3 -0
- package/dist/components/Avatar.js +5 -0
- package/dist/components/Avatar.js.map +1 -0
- package/dist/components/Badge.d.ts +3 -0
- package/dist/components/Badge.js +42 -0
- package/dist/components/Badge.js.map +1 -0
- package/dist/components/Breadcrumb.d.ts +3 -0
- package/dist/components/Breadcrumb.js +5 -0
- package/dist/components/Breadcrumb.js.map +1 -0
- package/dist/components/Button.d.ts +3 -0
- package/dist/components/Button.js +197 -0
- package/dist/components/Button.js.map +1 -0
- package/dist/components/Loading.d.ts +3 -0
- package/dist/components/Loading.js +5 -0
- package/dist/components/Loading.js.map +1 -0
- package/dist/components/LoadingDots.d.ts +3 -0
- package/dist/components/LoadingDots.js +69 -0
- package/dist/components/LoadingDots.js.map +1 -0
- package/dist/components/Modal.d.ts +3 -0
- package/dist/components/Modal.js +5 -0
- package/dist/components/Modal.js.map +1 -0
- package/dist/components/NavLink.d.ts +3 -0
- package/dist/components/NavLink.js +5 -0
- package/dist/components/NavLink.js.map +1 -0
- package/dist/components/ProgressBar.d.ts +3 -0
- package/dist/components/ProgressBar.js +5 -0
- package/dist/components/ProgressBar.js.map +1 -0
- package/dist/components/RadialProgressBar.d.ts +3 -0
- package/dist/components/RadialProgressBar.js +5 -0
- package/dist/components/RadialProgressBar.js.map +1 -0
- package/dist/components/Table.d.ts +3 -0
- package/dist/components/Table.js +5 -0
- package/dist/components/Table.js.map +1 -0
- package/dist/components/TextInput.d.ts +3 -0
- package/dist/components/TextInput.js +111 -0
- package/dist/components/TextInput.js.map +1 -0
- package/dist/components/Transition.d.ts +3 -0
- package/dist/components/Transition.js +5 -0
- package/dist/components/Transition.js.map +1 -0
- package/dist/description-CBd3BJ9O.js +30 -0
- package/dist/description-CBd3BJ9O.js.map +1 -0
- package/dist/dialog-U1KNiPzc.js +493 -0
- package/dist/dialog-U1KNiPzc.js.map +1 -0
- package/dist/form-DQKuKVqJ.js +51 -0
- package/dist/form-DQKuKVqJ.js.map +1 -0
- package/dist/forms/DynamicForm.d.ts +3 -0
- package/dist/forms/DynamicForm.js +5 -0
- package/dist/forms/DynamicForm.js.map +1 -0
- package/dist/forms/DynamicFormField.d.ts +3 -0
- package/dist/forms/DynamicFormField.js +5 -0
- package/dist/forms/DynamicFormField.js.map +1 -0
- package/dist/forms/FormFieldWrapper.d.ts +3 -0
- package/dist/forms/FormFieldWrapper.js +187 -0
- package/dist/forms/FormFieldWrapper.js.map +1 -0
- package/dist/id-DafBB_QF.js +20 -0
- package/dist/id-DafBB_QF.js.map +1 -0
- package/dist/index.js +266 -4564
- package/dist/index.js.map +1 -1
- package/dist/inputs/CheckboxInput.d.ts +3 -0
- package/dist/inputs/CheckboxInput.js +5 -0
- package/dist/inputs/CheckboxInput.js.map +1 -0
- package/dist/inputs/ComboboxInput.d.ts +3 -0
- package/dist/inputs/ComboboxInput.js +5 -0
- package/dist/inputs/ComboboxInput.js.map +1 -0
- package/dist/inputs/SelectInput.d.ts +3 -0
- package/dist/inputs/SelectInput.js +5 -0
- package/dist/inputs/SelectInput.js.map +1 -0
- package/dist/inputs/SwitchInput.d.ts +3 -0
- package/dist/inputs/SwitchInput.js +5 -0
- package/dist/inputs/SwitchInput.js.map +1 -0
- package/dist/inputs/TagifyInput.d.ts +3 -0
- package/dist/inputs/TagifyInput.js +5 -0
- package/dist/inputs/TagifyInput.js.map +1 -0
- package/dist/inputs/TextAreaInput.d.ts +3 -0
- package/dist/inputs/TextAreaInput.js +5 -0
- package/dist/inputs/TextAreaInput.js.map +1 -0
- package/dist/keyboard-DJD8TwH4.js +113 -0
- package/dist/keyboard-DJD8TwH4.js.map +1 -0
- package/dist/layouts/DashboardLayout.d.ts +3 -0
- package/dist/layouts/DashboardLayout.js +5 -0
- package/dist/layouts/DashboardLayout.js.map +1 -0
- package/dist/layouts/DefaultLayout.d.ts +3 -0
- package/dist/layouts/DefaultLayout.js +5 -0
- package/dist/layouts/DefaultLayout.js.map +1 -0
- package/dist/layouts/HeaderLayout.d.ts +3 -0
- package/dist/layouts/HeaderLayout.js +5 -0
- package/dist/layouts/HeaderLayout.js.map +1 -0
- package/dist/layouts/NavigationGroup.d.ts +3 -0
- package/dist/layouts/NavigationGroup.js +5 -0
- package/dist/layouts/NavigationGroup.js.map +1 -0
- package/dist/layouts/NavigationItem.d.ts +3 -0
- package/dist/layouts/NavigationItem.js +5 -0
- package/dist/layouts/NavigationItem.js.map +1 -0
- package/dist/layouts/SidebarLayout.d.ts +3 -0
- package/dist/layouts/SidebarLayout.js +5 -0
- package/dist/layouts/SidebarLayout.js.map +1 -0
- package/dist/open-closed-DgcU-HDT.js +179 -0
- package/dist/open-closed-DgcU-HDT.js.map +1 -0
- package/dist/src/components/UiLoadingDots.d.ts +1 -1
- package/dist/src/components/UiNavLink.d.ts +1 -1
- package/dist/src/components/inputs/ComboboxInput.d.ts +2 -2
- package/dist/src/components/inputs/SelectInput.d.ts +2 -2
- package/dist/src/components/layouts/DashboardLayout.d.ts.map +1 -1
- package/dist/src/components/layouts/DefaultLayout.d.ts +1 -1
- package/dist/src/components/layouts/SidebarLayout.d.ts.map +1 -1
- package/dist/transition-CuxxW9dY.js +209 -0
- package/dist/transition-CuxxW9dY.js.map +1 -0
- package/package.json +2 -3
- package/dist/CheckboxInput-rWkcde69.js +0 -5
- package/dist/CheckboxInput-rWkcde69.js.map +0 -1
- package/dist/ComboboxInput-B98P_8CZ.js +0 -5
- package/dist/ComboboxInput-B98P_8CZ.js.map +0 -1
- package/dist/SelectInput-B5liNv7H.js +0 -5
- package/dist/SelectInput-B5liNv7H.js.map +0 -1
- package/dist/SwitchInput-D1k9O8gn.js +0 -5
- package/dist/SwitchInput-D1k9O8gn.js.map +0 -1
- package/dist/TextAreaInput-Di6Kstic.js +0 -5
- package/dist/TextAreaInput-Di6Kstic.js.map +0 -1
- package/dist/UiLoading-BuzCrLqO.js +0 -5
- package/dist/UiLoading-BuzCrLqO.js.map +0 -1
- package/dist/index.umd.cjs +0 -11
- package/dist/index.umd.cjs.map +0 -1
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { defineComponent as g, ref as h, watch as d, createElementBlock as w, openBlock as x, createElementVNode as r, createVNode as a, withCtx as m, createTextVNode as c } from "vue";
|
|
2
|
+
import u from "./components/Button.js";
|
|
3
|
+
import { _ as V } from "./SelectInput.vue_vue_type_script_setup_true_lang-BPjHLHdM.js";
|
|
4
|
+
const k = { class: "sl-flex sl-items-center sl-gap-4" }, B = { class: "sl-flex sl-items-center sl-gap-2" }, C = { class: "sl-w-32" }, y = /* @__PURE__ */ g({
|
|
5
|
+
__name: "CalendarHeader",
|
|
6
|
+
props: {
|
|
7
|
+
view: {},
|
|
8
|
+
selectedRange: {}
|
|
9
|
+
},
|
|
10
|
+
emits: ["changeRange", "changeView"],
|
|
11
|
+
setup(p, { emit: f }) {
|
|
12
|
+
const s = p, l = f, n = [
|
|
13
|
+
{ id: "day", name: "Day" },
|
|
14
|
+
{ id: "week", name: "Week" },
|
|
15
|
+
{ id: "month", name: "Month" },
|
|
16
|
+
{ id: "year", name: "Year" }
|
|
17
|
+
], i = h(n.find((t) => t.id === s.view) || n[2]);
|
|
18
|
+
d(() => s.view, (t) => {
|
|
19
|
+
const e = n.find((o) => o.id === t);
|
|
20
|
+
e && (i.value = e);
|
|
21
|
+
}), d(i, (t) => {
|
|
22
|
+
t && l("changeView", t.id);
|
|
23
|
+
});
|
|
24
|
+
const _ = () => l("changeRange", "prev"), v = () => l("changeRange", "next");
|
|
25
|
+
return (t, e) => (x(), w("div", k, [
|
|
26
|
+
r("div", B, [
|
|
27
|
+
a(u, {
|
|
28
|
+
size: "sm",
|
|
29
|
+
theme: "light",
|
|
30
|
+
outlined: !0,
|
|
31
|
+
"center-label": "",
|
|
32
|
+
onButtonClick: _
|
|
33
|
+
}, {
|
|
34
|
+
default: m(() => e[1] || (e[1] = [
|
|
35
|
+
c("Prev", -1)
|
|
36
|
+
])),
|
|
37
|
+
_: 1,
|
|
38
|
+
__: [1]
|
|
39
|
+
}),
|
|
40
|
+
a(u, {
|
|
41
|
+
size: "sm",
|
|
42
|
+
theme: "light",
|
|
43
|
+
outlined: !0,
|
|
44
|
+
"center-label": "",
|
|
45
|
+
onButtonClick: v
|
|
46
|
+
}, {
|
|
47
|
+
default: m(() => e[2] || (e[2] = [
|
|
48
|
+
c("Next", -1)
|
|
49
|
+
])),
|
|
50
|
+
_: 1,
|
|
51
|
+
__: [2]
|
|
52
|
+
})
|
|
53
|
+
]),
|
|
54
|
+
r("div", C, [
|
|
55
|
+
a(V, {
|
|
56
|
+
name: "calendarView",
|
|
57
|
+
items: n,
|
|
58
|
+
modelValue: i.value,
|
|
59
|
+
"onUpdate:modelValue": e[0] || (e[0] = (o) => i.value = o),
|
|
60
|
+
placeholder: "Select view",
|
|
61
|
+
"box-shadow": !1
|
|
62
|
+
}, null, 8, ["modelValue"])
|
|
63
|
+
])
|
|
64
|
+
]));
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
export {
|
|
68
|
+
y as _
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CalendarHeader.vue_vue_type_script_setup_true_lang-Cirr0hMB.js","sources":["../src/components/calendars/CalendarHeader.vue"],"sourcesContent":["<template>\n <div class=\"sl-flex sl-items-center sl-gap-4\">\n <div class=\"sl-flex sl-items-center sl-gap-2\">\n <UiButton size=\"sm\" theme=\"light\" :outlined=\"true\" center-label @button-click=\"prev\">Prev</UiButton>\n <UiButton size=\"sm\" theme=\"light\" :outlined=\"true\" center-label @button-click=\"next\">Next</UiButton>\n </div>\n <div class=\"sl-w-32\">\n <SelectInput\n name=\"calendarView\"\n :items=\"viewOptions\"\n v-model=\"selectedView\"\n placeholder=\"Select view\"\n :box-shadow=\"false\"\n />\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch } from 'vue';\nimport UiButton from '@/components/UiButton.vue';\nimport SelectInput from '@/components/inputs/SelectInput.vue';\nimport type { CalendarDay, Month } from '@/utils/calendar';\n\nconst props = defineProps<{ view: 'day' | 'week' | 'month' | 'year'; selectedRange: CalendarDay[] | Month[] | null }>();\nconst emit = defineEmits(['changeRange', 'changeView']);\n\n// View options for SelectInput\nconst viewOptions = [\n { id: 'day', name: 'Day' },\n { id: 'week', name: 'Week' },\n { id: 'month', name: 'Month' },\n { id: 'year', name: 'Year' }\n];\n\n// Find the current view option object\nconst selectedView = ref(viewOptions.find(option => option.id === props.view) || viewOptions[2]);\n\n// Watch for prop changes\nwatch(() => props.view, (newView) => {\n const viewOption = viewOptions.find(option => option.id === newView);\n if (viewOption) {\n selectedView.value = viewOption;\n }\n});\n\n// Watch for SelectInput changes\nwatch(selectedView, (newViewOption) => {\n if (newViewOption) {\n emit('changeView', newViewOption.id);\n }\n});\n\nconst prev = () => emit('changeRange', 'prev');\nconst next = () => emit('changeRange', 'next');\n</script>\n\n<style scoped>\n</style>\n\n\n"],"names":["props","__props","emit","__emit","viewOptions","selectedView","ref","option","watch","newView","viewOption","newViewOption","prev","next","_openBlock","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_createVNode","UiButton","_cache","_hoisted_3","SelectInput","$event"],"mappings":";;;;;;;;;;;AAwBA,UAAMA,IAAQC,GACRC,IAAOC,GAGPC,IAAc;AAAA,MAClB,EAAE,IAAI,OAAO,MAAM,MAAA;AAAA,MACnB,EAAE,IAAI,QAAQ,MAAM,OAAA;AAAA,MACpB,EAAE,IAAI,SAAS,MAAM,QAAA;AAAA,MACrB,EAAE,IAAI,QAAQ,MAAM,OAAA;AAAA,IAAO,GAIvBC,IAAeC,EAAIF,EAAY,KAAK,CAAAG,MAAUA,EAAO,OAAOP,EAAM,IAAI,KAAKI,EAAY,CAAC,CAAC;AAG/F,IAAAI,EAAM,MAAMR,EAAM,MAAM,CAACS,MAAY;AACnC,YAAMC,IAAaN,EAAY,KAAK,CAAAG,MAAUA,EAAO,OAAOE,CAAO;AACnE,MAAIC,MACFL,EAAa,QAAQK;AAAA,IAEzB,CAAC,GAGDF,EAAMH,GAAc,CAACM,MAAkB;AACrC,MAAIA,KACFT,EAAK,cAAcS,EAAc,EAAE;AAAA,IAEvC,CAAC;AAED,UAAMC,IAAO,MAAMV,EAAK,eAAe,MAAM,GACvCW,IAAO,MAAMX,EAAK,eAAe,MAAM;sBArD3CY,EAAA,GAAAC,EAcM,OAdNC,GAcM;AAAA,MAbJC,EAGM,OAHNC,GAGM;AAAA,QAFJC,EAAoGC,GAAA;AAAA,UAA1F,MAAK;AAAA,UAAK,OAAM;AAAA,UAAS,UAAU;AAAA,UAAM,gBAAA;AAAA,UAAc,eAAcR;AAAA,QAAA;qBAAM,MAAIS,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA;AAAA,cAAJ,QAAI,EAAA;AAAA,UAAA;;;;QACzFF,EAAoGC,GAAA;AAAA,UAA1F,MAAK;AAAA,UAAK,OAAM;AAAA,UAAS,UAAU;AAAA,UAAM,gBAAA;AAAA,UAAc,eAAcP;AAAA,QAAA;qBAAM,MAAIQ,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA;AAAA,cAAJ,QAAI,EAAA;AAAA,UAAA;;;;;MAE3FJ,EAQM,OARNK,GAQM;AAAA,QAPJH,EAMEI,GAAA;AAAA,UALA,MAAK;AAAA,UACJ,OAAOnB;AAAA,sBACCC,EAAA;AAAA,wDAAAA,EAAY,QAAAmB;AAAA,UACrB,aAAY;AAAA,UACX,cAAY;AAAA,QAAA;;;;;"}
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { defineComponent as x, ref as p, watch as f, computed as S, createElementBlock as r, openBlock as d, createVNode as $, unref as t, withCtx as I, createElementVNode as a, withDirectives as R, normalizeClass as g, vModelCheckbox as T, createCommentVNode as k, toDisplayString as y } from "vue";
|
|
2
|
+
import { useField as z } from "vee-validate";
|
|
3
|
+
import { g as A } from "./id-DafBB_QF.js";
|
|
4
|
+
import U from "./forms/FormFieldWrapper.js";
|
|
5
|
+
const W = { class: "sl-w-full" }, q = { class: "sl-flex sl-items-start sl-gap-3" }, G = { class: "sl-flex sl-h-6 sl-shrink-0 sl-items-center" }, J = { class: "sl-group group sl-grid sl-w-4 sl-h-4 sl-grid-cols-1" }, K = ["id", "aria-describedby", "name", "disabled"], O = { class: "sl-flex-1 sl-text-sm sl-leading-6" }, P = ["for"], Q = ["id"], X = ["innerHTML"], Y = { key: 1 }, oe = /* @__PURE__ */ x({
|
|
6
|
+
__name: "CheckboxInput",
|
|
7
|
+
props: {
|
|
8
|
+
name: {},
|
|
9
|
+
label: {},
|
|
10
|
+
description: {},
|
|
11
|
+
disabled: { type: Boolean },
|
|
12
|
+
rules: {},
|
|
13
|
+
immediate: { type: Boolean, default: !0 },
|
|
14
|
+
isDescriptionHtml: { type: Boolean, default: !1 },
|
|
15
|
+
successMessage: {},
|
|
16
|
+
modelValue: { type: Boolean },
|
|
17
|
+
tertiaryLabel: {},
|
|
18
|
+
showErrors: { type: Boolean, default: !1 },
|
|
19
|
+
layout: { default: "stacked" },
|
|
20
|
+
boxShadow: { type: Boolean, default: !1 }
|
|
21
|
+
},
|
|
22
|
+
emits: ["update:modelValue", "blur", "focus"],
|
|
23
|
+
setup(v, { expose: w, emit: C }) {
|
|
24
|
+
const s = v, u = C, n = p(), B = p(null), i = A(`sl-${s.name}`), { value: V, errorMessage: m, handleChange: h, handleBlur: M, meta: c } = z(
|
|
25
|
+
() => s.name,
|
|
26
|
+
s.rules,
|
|
27
|
+
{
|
|
28
|
+
type: "checkbox",
|
|
29
|
+
initialValue: s.modelValue || !1
|
|
30
|
+
}
|
|
31
|
+
), l = p(s.modelValue || !1);
|
|
32
|
+
f(
|
|
33
|
+
() => s.modelValue,
|
|
34
|
+
(e) => {
|
|
35
|
+
e !== void 0 && e !== l.value && (l.value = e, V.value = e);
|
|
36
|
+
},
|
|
37
|
+
{ immediate: !0 }
|
|
38
|
+
), f(
|
|
39
|
+
l,
|
|
40
|
+
(e) => {
|
|
41
|
+
u("update:modelValue", e), s.immediate && h(e);
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
const H = S(() => {
|
|
45
|
+
const e = [
|
|
46
|
+
"sl-h-4",
|
|
47
|
+
"sl-w-4",
|
|
48
|
+
"sl-rounded",
|
|
49
|
+
"sl-border-gray-300",
|
|
50
|
+
"sl-text-stachelock-600",
|
|
51
|
+
"focus:sl-ring-stachelock-600",
|
|
52
|
+
"focus:sl-ring-2",
|
|
53
|
+
"focus:sl-ring-offset-2",
|
|
54
|
+
"sl-transition-all",
|
|
55
|
+
"sl-duration-200"
|
|
56
|
+
];
|
|
57
|
+
return s.disabled ? e.push(
|
|
58
|
+
"sl-cursor-not-allowed",
|
|
59
|
+
"sl-opacity-50",
|
|
60
|
+
"sl-bg-gray-50"
|
|
61
|
+
) : e.push(
|
|
62
|
+
"sl-cursor-pointer",
|
|
63
|
+
"hover:sl-border-gray-400"
|
|
64
|
+
), m.value ? e.push(
|
|
65
|
+
"sl-border-red-300",
|
|
66
|
+
"focus:sl-ring-red-600"
|
|
67
|
+
) : c.valid && c.touched && e.push(
|
|
68
|
+
"sl-border-green-300",
|
|
69
|
+
"focus:sl-ring-green-500"
|
|
70
|
+
), e.join(" ");
|
|
71
|
+
}), L = (e) => {
|
|
72
|
+
const o = e.target;
|
|
73
|
+
l.value = o.checked, s.immediate || h(o.checked);
|
|
74
|
+
}, b = () => {
|
|
75
|
+
s.disabled || (l.value = !l.value);
|
|
76
|
+
}, D = () => {
|
|
77
|
+
n.value?.focus();
|
|
78
|
+
}, _ = () => {
|
|
79
|
+
n.value?.blur();
|
|
80
|
+
}, j = (e) => {
|
|
81
|
+
s.immediate || h(l.value), M(e), u("blur", e);
|
|
82
|
+
}, E = (e) => {
|
|
83
|
+
u("focus", e);
|
|
84
|
+
}, F = (e) => {
|
|
85
|
+
s.disabled || e.target.tagName === "A" || b();
|
|
86
|
+
};
|
|
87
|
+
return w({
|
|
88
|
+
focus: D,
|
|
89
|
+
blur: _,
|
|
90
|
+
toggle: b,
|
|
91
|
+
checkboxRef: n
|
|
92
|
+
}), (e, o) => (d(), r("div", W, [
|
|
93
|
+
$(U, {
|
|
94
|
+
id: t(i),
|
|
95
|
+
name: e.name,
|
|
96
|
+
label: e.layout === "stacked" ? e.label : "",
|
|
97
|
+
disabled: e.disabled,
|
|
98
|
+
optional: !e.rules,
|
|
99
|
+
"tertiary-label": e.tertiaryLabel,
|
|
100
|
+
"box-shadow": e.boxShadow,
|
|
101
|
+
"error-message": t(m),
|
|
102
|
+
"success-message": e.successMessage,
|
|
103
|
+
"is-valid": t(c).valid,
|
|
104
|
+
"is-touched": t(c).touched,
|
|
105
|
+
"show-errors": e.showErrors
|
|
106
|
+
}, {
|
|
107
|
+
default: I(() => [
|
|
108
|
+
a("div", q, [
|
|
109
|
+
a("div", G, [
|
|
110
|
+
a("div", J, [
|
|
111
|
+
R(a("input", {
|
|
112
|
+
id: t(i),
|
|
113
|
+
"aria-describedby": e.description ? `${t(i)}-description` : void 0,
|
|
114
|
+
name: e.name,
|
|
115
|
+
ref_key: "checkboxRef",
|
|
116
|
+
ref: n,
|
|
117
|
+
"onUpdate:modelValue": o[0] || (o[0] = (N) => l.value = N),
|
|
118
|
+
type: "checkbox",
|
|
119
|
+
disabled: e.disabled,
|
|
120
|
+
class: g([
|
|
121
|
+
"sl-col-start-1 sl-row-start-1 sl-w-full sl-h-full sl-appearance-none sl-rounded sl-border sl-border-gray-300 sl-bg-white",
|
|
122
|
+
"checked:sl-border-stachelock-600 checked:sl-bg-stachelock-600",
|
|
123
|
+
"indeterminate:sl-border-stachelock-600 indeterminate:sl-bg-stachelock-600",
|
|
124
|
+
"focus-visible:sl-outline focus-visible:sl-outline-2 focus-visible:sl-outline-offset-2 focus-visible:sl-outline-stachelock-600",
|
|
125
|
+
"disabled:sl-border-gray-300 disabled:sl-bg-gray-100 disabled:checked:sl-bg-gray-100",
|
|
126
|
+
H.value
|
|
127
|
+
]),
|
|
128
|
+
onChange: L,
|
|
129
|
+
onFocus: E,
|
|
130
|
+
onBlur: j
|
|
131
|
+
}, null, 42, K), [
|
|
132
|
+
[T, l.value]
|
|
133
|
+
]),
|
|
134
|
+
o[1] || (o[1] = a("svg", {
|
|
135
|
+
class: "sl-pointer-events-none sl-col-start-1 sl-row-start-1 sl-w-3.5 sl-h-3.5 sl-self-center sl-justify-self-center sl-stroke-white",
|
|
136
|
+
viewBox: "0 0 14 14",
|
|
137
|
+
fill: "none"
|
|
138
|
+
}, [
|
|
139
|
+
a("path", {
|
|
140
|
+
class: "sl-opacity-0 group-has-[:checked]:sl-opacity-100",
|
|
141
|
+
d: "M3 8L6 11L11 3.5",
|
|
142
|
+
"stroke-width": "2",
|
|
143
|
+
"stroke-linecap": "round",
|
|
144
|
+
"stroke-linejoin": "round"
|
|
145
|
+
}),
|
|
146
|
+
a("path", {
|
|
147
|
+
class: "sl-opacity-0 group-has-[:indeterminate]:sl-opacity-100",
|
|
148
|
+
d: "M3 7H11",
|
|
149
|
+
"stroke-width": "2",
|
|
150
|
+
"stroke-linecap": "round",
|
|
151
|
+
"stroke-linejoin": "round"
|
|
152
|
+
})
|
|
153
|
+
], -1))
|
|
154
|
+
])
|
|
155
|
+
]),
|
|
156
|
+
a("div", O, [
|
|
157
|
+
e.layout === "inline" && e.label ? (d(), r("label", {
|
|
158
|
+
key: 0,
|
|
159
|
+
for: t(i),
|
|
160
|
+
class: "sl-font-medium sl-text-gray-900 sl-cursor-pointer"
|
|
161
|
+
}, y(e.label), 9, P)) : k("", !0),
|
|
162
|
+
e.description ? (d(), r("div", {
|
|
163
|
+
key: 1,
|
|
164
|
+
id: `${t(i)}-description`,
|
|
165
|
+
class: g(["sl-text-gray-600", [e.layout === "inline" ? "" : "sl-mt-1", { "sl-cursor-pointer": !e.disabled }]]),
|
|
166
|
+
ref_key: "descriptionHtml",
|
|
167
|
+
ref: B,
|
|
168
|
+
onClick: F
|
|
169
|
+
}, [
|
|
170
|
+
e.isDescriptionHtml ? (d(), r("div", {
|
|
171
|
+
key: 0,
|
|
172
|
+
innerHTML: e.description
|
|
173
|
+
}, null, 8, X)) : (d(), r("span", Y, y(e.description), 1))
|
|
174
|
+
], 10, Q)) : k("", !0)
|
|
175
|
+
])
|
|
176
|
+
])
|
|
177
|
+
]),
|
|
178
|
+
_: 1
|
|
179
|
+
}, 8, ["id", "name", "label", "disabled", "optional", "tertiary-label", "box-shadow", "error-message", "success-message", "is-valid", "is-touched", "show-errors"])
|
|
180
|
+
]));
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
export {
|
|
184
|
+
oe as _
|
|
185
|
+
};
|
|
186
|
+
//# sourceMappingURL=CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckboxInput.vue_vue_type_script_setup_true_lang-tYAo46wK.js","sources":["../src/components/inputs/CheckboxInput.vue"],"sourcesContent":["<template>\n <div class=\"sl-w-full\">\n <FormFieldWrapper\n :id=\"id\"\n :name=\"name\"\n :label=\"layout === 'stacked' ? label : ''\"\n :disabled=\"disabled\"\n :optional=\"!rules\"\n :tertiary-label=\"tertiaryLabel\"\n :box-shadow=\"boxShadow\"\n :error-message=\"errorMessage\"\n :success-message=\"successMessage\"\n :is-valid=\"meta.valid\"\n :is-touched=\"meta.touched\"\n :show-errors=\"showErrors\"\n >\n <div class=\"sl-flex sl-items-start sl-gap-3\">\n <div class=\"sl-flex sl-h-6 sl-shrink-0 sl-items-center\">\n <div class=\"sl-group group sl-grid sl-w-4 sl-h-4 sl-grid-cols-1\">\n <input\n :id=\"id\"\n :aria-describedby=\"description ? `${id}-description` : undefined\"\n :name=\"name\"\n ref=\"checkboxRef\"\n v-model=\"checkboxValue\"\n type=\"checkbox\"\n :disabled=\"disabled\"\n :class=\"[\n 'sl-col-start-1 sl-row-start-1 sl-w-full sl-h-full sl-appearance-none sl-rounded sl-border sl-border-gray-300 sl-bg-white',\n 'checked:sl-border-stachelock-600 checked:sl-bg-stachelock-600',\n 'indeterminate:sl-border-stachelock-600 indeterminate:sl-bg-stachelock-600',\n 'focus-visible:sl-outline focus-visible:sl-outline-2 focus-visible:sl-outline-offset-2 focus-visible:sl-outline-stachelock-600',\n 'disabled:sl-border-gray-300 disabled:sl-bg-gray-100 disabled:checked:sl-bg-gray-100',\n checkboxClasses\n ]\"\n @change=\"handleChange\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n >\n <svg\n class=\"sl-pointer-events-none sl-col-start-1 sl-row-start-1 sl-w-3.5 sl-h-3.5 sl-self-center sl-justify-self-center sl-stroke-white\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n >\n <path\n class=\"sl-opacity-0 group-has-[:checked]:sl-opacity-100\"\n d=\"M3 8L6 11L11 3.5\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n <path\n class=\"sl-opacity-0 group-has-[:indeterminate]:sl-opacity-100\"\n d=\"M3 7H11\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </div>\n </div>\n <div class=\"sl-flex-1 sl-text-sm sl-leading-6\">\n <!-- Inline label to the right of the checkbox -->\n <label v-if=\"layout === 'inline' && label\" :for=\"id\" class=\"sl-font-medium sl-text-gray-900 sl-cursor-pointer\">{{ label }}</label>\n <!-- Description (inline layout shows beneath label) -->\n <div\n v-if=\"description\"\n :id=\"`${id}-description`\"\n class=\"sl-text-gray-600\"\n :class=\"[ layout === 'inline' ? '' : 'sl-mt-1', { 'sl-cursor-pointer': !disabled } ]\"\n ref=\"descriptionHtml\"\n @click=\"onDescriptionClick\"\n >\n <div v-if=\"isDescriptionHtml\" v-html=\"description\" />\n <span v-else>{{ description }}</span>\n </div>\n </div>\n </div>\n </FormFieldWrapper>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue'\nimport { useField } from 'vee-validate'\nimport type { ValidationRule } from '../../types/form'\nimport { generateId } from '../../utils/id'\nimport FormFieldWrapper from '../forms/FormFieldWrapper.vue'\n\ninterface Props {\n name: string\n label?: string\n description?: string\n disabled?: boolean\n rules?: ValidationRule\n immediate?: boolean\n isDescriptionHtml?: boolean\n successMessage?: string\n modelValue?: boolean\n tertiaryLabel?: string\n showErrors?: boolean\n layout?: 'stacked' | 'inline'\n boxShadow?: boolean\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n immediate: true,\n isDescriptionHtml: false,\n showErrors: false,\n layout: 'stacked',\n boxShadow: false\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean]\n blur: [event: FocusEvent]\n focus: [event: FocusEvent]\n}>()\n\nconst checkboxRef = ref<HTMLInputElement>()\nconst descriptionHtml = ref<HTMLElement | null>(null)\nconst id = generateId(`sl-${props.name}`)\n\n// Use vee-validate for form validation\nconst { value, errorMessage, handleChange: handleValidation, handleBlur, meta } = useField(\n () => props.name,\n props.rules,\n {\n type: 'checkbox',\n initialValue: props.modelValue || false\n }\n)\n\nconst checkboxValue = ref(props.modelValue || false)\n\n// Watch for external changes\nwatch(\n () => props.modelValue,\n (newValue) => {\n if (newValue !== undefined && newValue !== checkboxValue.value) {\n checkboxValue.value = newValue\n value.value = newValue\n }\n },\n { immediate: true }\n)\n\nwatch(\n checkboxValue,\n (newValue) => {\n emit('update:modelValue', newValue)\n if (props.immediate) {\n handleValidation(newValue)\n }\n }\n)\n\nconst checkboxClasses = computed(() => {\n const baseClasses = [\n 'sl-h-4',\n 'sl-w-4',\n 'sl-rounded',\n 'sl-border-gray-300',\n 'sl-text-stachelock-600',\n 'focus:sl-ring-stachelock-600',\n 'focus:sl-ring-2',\n 'focus:sl-ring-offset-2',\n 'sl-transition-all',\n 'sl-duration-200'\n ]\n\n if (props.disabled) {\n baseClasses.push(\n 'sl-cursor-not-allowed',\n 'sl-opacity-50',\n 'sl-bg-gray-50'\n )\n } else {\n baseClasses.push(\n 'sl-cursor-pointer',\n 'hover:sl-border-gray-400'\n )\n }\n\n if (errorMessage.value) {\n baseClasses.push(\n 'sl-border-red-300',\n 'focus:sl-ring-red-600'\n )\n } else if (meta.valid && meta.touched) {\n baseClasses.push(\n 'sl-border-green-300',\n 'focus:sl-ring-green-500'\n )\n }\n\n return baseClasses.join(' ')\n})\n\nconst handleChange = (event: Event) => {\n const target = event.target as HTMLInputElement\n checkboxValue.value = target.checked\n \n if (!props.immediate) {\n handleValidation(target.checked)\n }\n}\n\nconst toggle = () => {\n if (!props.disabled) {\n checkboxValue.value = !checkboxValue.value\n }\n}\n\nconst focus = () => {\n checkboxRef.value?.focus()\n}\n\nconst blur = () => {\n checkboxRef.value?.blur()\n}\n\nconst onBlur = (event: FocusEvent) => {\n if (!props.immediate) {\n handleValidation(checkboxValue.value)\n }\n handleBlur(event)\n emit('blur', event)\n}\n\nconst onFocus = (event: FocusEvent) => {\n emit('focus', event)\n}\n\nconst onDescriptionClick = (event: Event) => {\n if (props.disabled) return\n const target = event.target as HTMLElement\n if (target.tagName === 'A') {\n // Allow links to be clickable without toggling\n return\n }\n toggle()\n}\n\ndefineExpose({\n focus,\n blur,\n toggle,\n checkboxRef\n})\n</script>\n\n\n"],"names":["props","__props","emit","__emit","checkboxRef","ref","descriptionHtml","id","generateId","value","errorMessage","handleValidation","handleBlur","meta","useField","checkboxValue","watch","newValue","checkboxClasses","computed","baseClasses","handleChange","event","target","toggle","focus","blur","onBlur","onFocus","onDescriptionClick","__expose","_openBlock","_createElementBlock","_hoisted_1","_createVNode","FormFieldWrapper","_unref","name","layout","label","disabled","rules","tertiaryLabel","boxShadow","successMessage","showErrors","_createElementVNode","_hoisted_2","_hoisted_3","_hoisted_4","description","$event","_normalizeClass","_hoisted_6","_hoisted_7","isDescriptionHtml"],"mappings":"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"}
|