@leaflink/stash 50.11.0 → 50.12.1

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 (204) hide show
  1. package/dist/Accordion.js +30 -31
  2. package/dist/Accordion.js.map +1 -1
  3. package/dist/Accordion.vue.d.ts +6 -1
  4. package/dist/ActionsDropdown.js +2 -2
  5. package/dist/AddressSelect.js +2 -2
  6. package/dist/Alert.js +6 -6
  7. package/dist/AppNavigationItem.js +8 -8
  8. package/dist/AppNavigationItem.vue.d.ts +5 -0
  9. package/dist/AppSidebar.js +9 -9
  10. package/dist/AppSidebar.js.map +1 -1
  11. package/dist/AppTopbar.js +3 -3
  12. package/dist/Avatar.js +3 -3
  13. package/dist/Backdrop.js +2 -2
  14. package/dist/Badge.js +2 -2
  15. package/dist/Box.js +1 -1
  16. package/dist/{Box.vue_vue_type_script_setup_true_lang-DgJHq-09.js → Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js} +3 -3
  17. package/dist/{Box.vue_vue_type_script_setup_true_lang-DgJHq-09.js.map → Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js.map} +1 -1
  18. package/dist/Button.js +3 -3
  19. package/dist/ButtonGroup.js +4 -4
  20. package/dist/Card.js +7 -7
  21. package/dist/CardContent.js +2 -2
  22. package/dist/CardFooter.js +2 -2
  23. package/dist/CardHeader.js +4 -4
  24. package/dist/CardMedia.js +6 -6
  25. package/dist/Carousel.js +33 -33
  26. package/dist/Carousel.js.map +1 -1
  27. package/dist/Checkbox.js +7 -7
  28. package/dist/ChevronToggle.js +1 -1
  29. package/dist/{ChevronToggle.vue_vue_type_script_setup_true_lang-DuvluoTi.js → ChevronToggle.vue_vue_type_script_setup_true_lang-Ce_qOXfR.js} +3 -3
  30. package/dist/{ChevronToggle.vue_vue_type_script_setup_true_lang-DuvluoTi.js.map → ChevronToggle.vue_vue_type_script_setup_true_lang-Ce_qOXfR.js.map} +1 -1
  31. package/dist/Chip.js +7 -7
  32. package/dist/ConfirmationCodeInput.js +6 -6
  33. package/dist/ContextSwitcher.js +1 -1
  34. package/dist/Copy.js +1 -1
  35. package/dist/CurrencyInput.js +115 -111
  36. package/dist/CurrencyInput.js.map +1 -1
  37. package/dist/DataView.js +102 -98
  38. package/dist/DataView.js.map +1 -1
  39. package/dist/{DataView.keys-C7eaZg2G.js → DataView.keys-aSOnA4AD.js} +2 -1
  40. package/dist/DataView.keys-aSOnA4AD.js.map +1 -0
  41. package/dist/DataView.vue.d.ts +11 -0
  42. package/dist/DataViewFilters.js +4 -4
  43. package/dist/DataViewSortButton.js +11 -11
  44. package/dist/DataViewToolbar.js +61 -60
  45. package/dist/DataViewToolbar.js.map +1 -1
  46. package/dist/DatePicker.js +1080 -1037
  47. package/dist/DatePicker.js.map +1 -1
  48. package/dist/DescriptionList.js +2 -2
  49. package/dist/DescriptionListDetail.js +2 -2
  50. package/dist/DescriptionListGroup.js +2 -2
  51. package/dist/DescriptionListTerm.js +3 -3
  52. package/dist/Dialog.js +1 -1
  53. package/dist/Divider.js +2 -2
  54. package/dist/Dropdown.js +19 -19
  55. package/dist/Dropdown.js.map +1 -1
  56. package/dist/EmptyState.js +2 -2
  57. package/dist/Expand.js +1 -1
  58. package/dist/{Expand.vue_vue_type_script_setup_true_lang-D0fSAtHr.js → Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js} +5 -5
  59. package/dist/{Expand.vue_vue_type_script_setup_true_lang-D0fSAtHr.js.map → Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js.map} +1 -1
  60. package/dist/Field.js +1 -1
  61. package/dist/{Field.vue_vue_type_script_setup_true_lang-DEizIcDo.js → Field.vue_vue_type_script_setup_true_lang-DRaKs9Lm.js} +6 -6
  62. package/dist/Field.vue_vue_type_script_setup_true_lang-DRaKs9Lm.js.map +1 -0
  63. package/dist/FileUpload.js +7 -7
  64. package/dist/FilterChip.js +1 -1
  65. package/dist/FilterDrawerItem.js +9 -9
  66. package/dist/FilterDropdown.js +2 -2
  67. package/dist/FilterSelect.js +4 -4
  68. package/dist/Filters.js +18 -18
  69. package/dist/Filters.js.map +1 -1
  70. package/dist/HttpError.js +9 -9
  71. package/dist/Icon.js +2 -2
  72. package/dist/Icon.js.map +1 -1
  73. package/dist/Icon.vue.d.ts +5 -0
  74. package/dist/IconLabel.js +2 -2
  75. package/dist/IconLabel.vue.d.ts +5 -0
  76. package/dist/Illustration.js +2 -2
  77. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-CYddAFtS.js → Illustration.vue_vue_type_script_setup_true_lang-BBqgoJO8.js} +3 -3
  78. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-CYddAFtS.js.map → Illustration.vue_vue_type_script_setup_true_lang-BBqgoJO8.js.map} +1 -1
  79. package/dist/Image.js +2 -2
  80. package/dist/{Image.vue_vue_type_script_setup_true_lang-YUNunj71.js → Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js} +3 -3
  81. package/dist/{Image.vue_vue_type_script_setup_true_lang-YUNunj71.js.map → Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js.map} +1 -1
  82. package/dist/InlineEdit.js +5 -5
  83. package/dist/InlineEdit.js.map +1 -1
  84. package/dist/Input.js +2 -2
  85. package/dist/InputOptions.js +2 -2
  86. package/dist/InputOptions.js.map +1 -1
  87. package/dist/IntegrationIcon.js +2 -2
  88. package/dist/Label.js +1 -1
  89. package/dist/{Label.vue_vue_type_script_setup_true_lang-C4JKdqvC.js → Label.vue_vue_type_script_setup_true_lang-DPnNUfc6.js} +3 -3
  90. package/dist/{Label.vue_vue_type_script_setup_true_lang-C4JKdqvC.js.map → Label.vue_vue_type_script_setup_true_lang-DPnNUfc6.js.map} +1 -1
  91. package/dist/LicenseChip.js +2 -2
  92. package/dist/ListItem.js +1 -1
  93. package/dist/ListItemCell.js +2 -2
  94. package/dist/ListView.js +11 -11
  95. package/dist/ListView.js.map +1 -1
  96. package/dist/ListView.vue.d.ts +38 -13
  97. package/dist/Loading.js +2 -2
  98. package/dist/Logo.js +1 -1
  99. package/dist/{Logo.vue_vue_type_script_setup_true_lang-BfUU9J9O.js → Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js} +4 -4
  100. package/dist/{Logo.vue_vue_type_script_setup_true_lang-BfUU9J9O.js.map → Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js.map} +1 -1
  101. package/dist/Menu.js +2 -2
  102. package/dist/MenuItem.js +2 -2
  103. package/dist/Metric.js +5 -5
  104. package/dist/Modal.js +20 -20
  105. package/dist/Modals.js +12 -12
  106. package/dist/Modals.js.map +1 -1
  107. package/dist/Module.js +3 -3
  108. package/dist/ModuleContent.js +3 -3
  109. package/dist/ModuleFooter.js +2 -2
  110. package/dist/ModuleHeader.js +2 -2
  111. package/dist/ModuleHeader.js.map +1 -1
  112. package/dist/ObfuscateText.js +7 -7
  113. package/dist/PageContent.js +3 -3
  114. package/dist/PageHeader.js +6 -6
  115. package/dist/PageNavigation.js +1 -1
  116. package/dist/Paginate.js +73 -55
  117. package/dist/Paginate.js.map +1 -1
  118. package/dist/Paginate.vue.d.ts +12 -1
  119. package/dist/PlaidLink.js +2 -2
  120. package/dist/QuickAction.js +2 -2
  121. package/dist/QuickAction.vue.d.ts +5 -0
  122. package/dist/Radio.js +2 -2
  123. package/dist/RadioGroup.js +2 -2
  124. package/dist/RadioNew.js +1 -1
  125. package/dist/RangeInput.js +2 -2
  126. package/dist/SearchBar.js +4 -4
  127. package/dist/SearchBar.js.map +1 -1
  128. package/dist/Select.js +7 -7
  129. package/dist/Select.js.map +1 -1
  130. package/dist/SelectStatus.js +19 -19
  131. package/dist/SelectStatus.js.map +1 -1
  132. package/dist/SelectStatus.vue.d.ts +5 -0
  133. package/dist/Skeleton.js +4 -4
  134. package/dist/Step.js +19 -19
  135. package/dist/Step.js.map +1 -1
  136. package/dist/Stepper.js +9 -9
  137. package/dist/Switch.js +7 -7
  138. package/dist/Tab.js +4 -4
  139. package/dist/TabPanel.js +2 -2
  140. package/dist/Table.js +6 -6
  141. package/dist/Table.js.map +1 -1
  142. package/dist/TableCell.js +7 -7
  143. package/dist/TableHeaderCell.js +4 -4
  144. package/dist/TableHeaderRow.js +5 -5
  145. package/dist/TableRow.js +5 -5
  146. package/dist/TableRow.js.map +1 -1
  147. package/dist/TableRow.vue.d.ts +12 -8
  148. package/dist/Tabs.js +2 -2
  149. package/dist/{Tabs.vue_vue_type_script_setup_true_lang-NZm1OrRT.js → Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js} +4 -4
  150. package/dist/{Tabs.vue_vue_type_script_setup_true_lang-NZm1OrRT.js.map → Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js.map} +1 -1
  151. package/dist/TextEditor.js +3314 -3291
  152. package/dist/TextEditor.js.map +1 -1
  153. package/dist/TextEditor.vue.d.ts +5 -0
  154. package/dist/Textarea.js +3 -3
  155. package/dist/Textarea.js.map +1 -1
  156. package/dist/Thumbnail.js +7 -7
  157. package/dist/Thumbnail.js.map +1 -1
  158. package/dist/ThumbnailEmpty.js +3 -3
  159. package/dist/ThumbnailGroup.js +6 -6
  160. package/dist/ThumbnailGroup.js.map +1 -1
  161. package/dist/{ThumbnailGroup.keys-D6WL5xQ5.js → ThumbnailGroup.keys-EJ4qFNhx.js} +2 -2
  162. package/dist/{ThumbnailGroup.keys-D6WL5xQ5.js.map → ThumbnailGroup.keys-EJ4qFNhx.js.map} +1 -1
  163. package/dist/Timeline.js +2 -2
  164. package/dist/TimelineItem.js +3 -3
  165. package/dist/Toast.js +277 -280
  166. package/dist/Toast.js.map +1 -1
  167. package/dist/Toasts.js +1 -1
  168. package/dist/Tooltip.js +1 -1
  169. package/dist/components.css +1 -1
  170. package/dist/directives/autofocus.js +2 -2
  171. package/dist/directives/autofocus.js.map +1 -1
  172. package/dist/directives/sticky.js.map +1 -1
  173. package/dist/{formatDateTime-C8CYECpd.js → formatDateTime-Dz8bXV0R.js} +98 -12
  174. package/dist/{formatDateTime-C8CYECpd.js.map → formatDateTime-Dz8bXV0R.js.map} +1 -1
  175. package/dist/index.js +2 -2
  176. package/dist/index.js.map +1 -1
  177. package/dist/locale.js +3 -2
  178. package/dist/locale.js.map +1 -1
  179. package/dist/searchFuzzy-DRasJ33G.js +409 -0
  180. package/dist/{searchFuzzy-DKooyZM8.js.map → searchFuzzy-DRasJ33G.js.map} +1 -1
  181. package/dist/storage.js +3 -3
  182. package/dist/tailwind-base.js +0 -2
  183. package/dist/tailwind-base.js.map +1 -1
  184. package/dist/{toTimeZone-CVE1ZmsS.js → toTimeZone-Coq1oPTt.js} +7 -9
  185. package/dist/{toTimeZone-CVE1ZmsS.js.map → toTimeZone-Coq1oPTt.js.map} +1 -1
  186. package/dist/useModals.js.map +1 -1
  187. package/dist/usePaginationStats-d_q39naC.js +12 -0
  188. package/dist/usePaginationStats-d_q39naC.js.map +1 -0
  189. package/dist/useSearch.js +1 -1
  190. package/dist/useSelection.js +4 -1
  191. package/dist/useSelection.js.map +1 -1
  192. package/dist/useValidation.js +39 -36
  193. package/dist/useValidation.js.map +1 -1
  194. package/dist/utils/formatDateTime.js +2 -2
  195. package/dist/utils/helpers.js +29 -29
  196. package/dist/utils/helpers.js.map +1 -1
  197. package/dist/utils/searchFuzzy.js +1 -1
  198. package/dist/utils/toTimeZone.js +1 -1
  199. package/package.json +42 -20
  200. package/tailwind-base.ts +0 -2
  201. package/types/jsonApi.ts +8 -8
  202. package/dist/DataView.keys-C7eaZg2G.js.map +0 -1
  203. package/dist/Field.vue_vue_type_script_setup_true_lang-DEizIcDo.js.map +0 -1
  204. package/dist/searchFuzzy-DKooyZM8.js +0 -407
package/dist/Accordion.js CHANGED
@@ -1,5 +1,5 @@
1
- import { defineComponent as v, useSlots as x, useCssModule as y, ref as E, watch as b, openBlock as c, createElementBlock as i, createElementVNode as o, normalizeClass as h, unref as l, withKeys as w, withModifiers as k, renderSlot as _, Fragment as C, createVNode as d, toDisplayString as M, withDirectives as S, vShow as $, withCtx as z } from "vue";
2
- import { _ as B } from "./Expand.vue_vue_type_script_setup_true_lang-D0fSAtHr.js";
1
+ import { defineComponent as v, useSlots as x, useCssModule as y, ref as E, watch as b, createElementBlock as a, openBlock as c, createElementVNode as s, withDirectives as k, createVNode as i, withKeys as h, normalizeClass as w, withModifiers as C, unref as l, renderSlot as _, Fragment as M, toDisplayString as S, vShow as $, withCtx as z } from "vue";
2
+ import { _ as B } from "./Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js";
3
3
  import m from "./Icon.js";
4
4
  import { _ as K } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
5
  const A = {
@@ -17,58 +17,57 @@ const A = {
17
17
  },
18
18
  emits: ["toggle", "open", "close"],
19
19
  setup(g, { emit: f }) {
20
- const t = g, r = x(), n = f, p = y();
21
- if (!t.title && !r.header)
20
+ const t = g, d = x(), r = f, p = y();
21
+ if (!t.title && !d.header)
22
22
  throw new Error("Either a title prop or header slot must be provided");
23
23
  const e = E(t.isExpanded);
24
- b(
25
- () => t.isExpanded,
26
- (s) => {
27
- e.value = s, u();
28
- }
29
- );
30
- const a = () => {
31
- e.value = !e.value, u();
32
- };
33
24
  function u() {
34
- n("toggle", { isExpanded: e.value }), e.value ? n("open") : n("close");
25
+ r("toggle", { isExpanded: e.value }), r(e.value ? "open" : "close");
35
26
  }
36
- return (s, J) => (c(), i("div", A, [
37
- o("div", {
27
+ const n = () => {
28
+ e.value = !e.value, u();
29
+ };
30
+ return b(
31
+ () => t.isExpanded,
32
+ (o) => {
33
+ e.value = o, u();
34
+ }
35
+ ), (o, J) => (c(), a("div", A, [
36
+ s("div", {
38
37
  tabindex: "0",
39
38
  "data-test": "stash-accordion|toggle",
40
- class: h(["stash-accordion__toggle tw-flex tw-items-center", [l(p).toggle, e.value && l(p)["toggle--open"]]]),
41
- onClick: a,
39
+ class: w(["stash-accordion__toggle tw-flex tw-items-center", [l(p).toggle, e.value && l(p)["toggle--open"]]]),
40
+ onClick: n,
42
41
  onKeypress: [
43
- w(a, ["enter"]),
44
- w(k(a, ["prevent"]), ["space"])
42
+ h(n, ["enter"]),
43
+ h(C(n, ["prevent"]), ["space"])
45
44
  ]
46
45
  }, [
47
- l(r).header ? (c(), i("div", I, [
48
- _(s.$slots, "header")
49
- ])) : (c(), i(C, { key: 1 }, [
50
- d(m, {
46
+ l(d).header ? (c(), a("div", I, [
47
+ _(o.$slots, "header")
48
+ ])) : (c(), a(M, { key: 1 }, [
49
+ i(m, {
51
50
  class: "tw-text-blue-500",
52
51
  size: "dense",
53
52
  name: t.icon,
54
53
  "data-test": "stash-accordion|toggle-icon"
55
54
  }, null, 8, ["name"]),
56
- o("div", N, M(t.title), 1)
55
+ s("div", N, S(t.title), 1)
57
56
  ], 64)),
58
- d(m, {
59
- class: h(["tw-ml-auto tw-justify-center tw-text-ice-900 tw-transition-transform tw-duration-300", { "tw-rotate-180": e.value }]),
57
+ i(m, {
58
+ class: w(["tw-ml-auto tw-justify-center tw-text-ice-900 tw-transition-transform tw-duration-300", { "tw-rotate-180": e.value }]),
60
59
  size: "dense",
61
60
  name: "chevron-down",
62
61
  "data-test": "stash-accordion|toggle-chevron"
63
62
  }, null, 8, ["class"])
64
63
  ], 42, D),
65
- S(o("hr", V, null, 512), [
64
+ k(s("hr", V, null, 512), [
66
65
  [$, e.value]
67
66
  ]),
68
- d(B, { "is-expanded": e.value }, {
67
+ i(B, { "is-expanded": e.value }, {
69
68
  default: z(() => [
70
- o("div", j, [
71
- _(s.$slots, "default")
69
+ s("div", j, [
70
+ _(o.$slots, "default")
72
71
  ])
73
72
  ]),
74
73
  _: 3
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.js","sources":["../src/components/Accordion/Accordion.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { ref, useCssModule, useSlots, watch } from 'vue';\n\n import Expand from '../Expand/Expand.vue';\n import { IconName } from '../Icon/Icon.types';\n import Icon from '../Icon/Icon.vue';\n\n export interface AccordionProps {\n /**\n * The filename of the icon that will be displayed on the left side of the header\n */\n icon?: IconName;\n\n /**\n * Title of the Accordion, displayed in the header\n */\n title?: string;\n\n /**\n * Whether the Accordion is expanded or not\n */\n isExpanded?: boolean;\n }\n\n type ToggleState = {\n isExpanded: boolean;\n };\n\n const props = withDefaults(defineProps<AccordionProps>(), {\n icon: 'circle-info',\n title: undefined,\n isExpanded: false,\n });\n const slots = useSlots();\n\n const emits = defineEmits<{\n (e: 'toggle', state: ToggleState): void;\n (e: 'open'): void;\n (e: 'close'): void;\n }>();\n\n const classes = useCssModule();\n\n if (!props.title && !slots.header) {\n throw new Error('Either a title prop or header slot must be provided');\n }\n\n const localIsExpanded = ref(props.isExpanded);\n\n watch(\n () => props.isExpanded,\n (newVal) => {\n localIsExpanded.value = newVal;\n emitEvents();\n },\n );\n\n const toggle = () => {\n localIsExpanded.value = !localIsExpanded.value;\n emitEvents();\n };\n\n function emitEvents() {\n emits('toggle', { isExpanded: localIsExpanded.value });\n localIsExpanded.value ? emits('open') : emits('close');\n }\n</script>\n\n<template>\n <div class=\"stash-accordion tw-rounded tw-border tw-border-ice-500 tw-bg-white\" data-test=\"stash-accordion\">\n <div\n tabindex=\"0\"\n data-test=\"stash-accordion|toggle\"\n class=\"stash-accordion__toggle tw-flex tw-items-center\"\n :class=\"[classes.toggle, localIsExpanded && classes['toggle--open']]\"\n @click=\"toggle\"\n @keypress.enter=\"toggle\"\n @keypress.space.prevent=\"toggle\"\n >\n <div v-if=\"slots.header\">\n <!-- @slot Accordion header -->\n <slot name=\"header\"> </slot>\n </div>\n <template v-else>\n <Icon class=\"tw-text-blue-500\" size=\"dense\" :name=\"props.icon\" data-test=\"stash-accordion|toggle-icon\" />\n <div class=\"tw-flex-1 tw-select-none tw-font-medium tw-leading-5 tw-text-ice-900\">\n {{ props.title }}\n </div>\n </template>\n\n <Icon\n class=\"tw-ml-auto tw-justify-center tw-text-ice-900 tw-transition-transform tw-duration-300\"\n size=\"dense\"\n name=\"chevron-down\"\n data-test=\"stash-accordion|toggle-chevron\"\n :class=\"{ 'tw-rotate-180': localIsExpanded }\"\n />\n </div>\n <hr v-show=\"localIsExpanded\" class=\"tw-mx-[18px] tw-h-px tw-bg-ice-200\" />\n <Expand :is-expanded=\"localIsExpanded\">\n <div class=\"stash-accordion__content tw-p-[18px]\" data-test=\"stash-accordion|content\">\n <!-- @slot Accordion content -->\n <slot></slot>\n </div>\n </Expand>\n </div>\n</template>\n\n<style module>\n .toggle {\n @apply tw-outline-none tw-ring-blue-500 tw-ring-opacity-15;\n\n display: flex;\n cursor: pointer;\n gap: theme('gap[1.5]');\n padding: 17px;\n outline: none;\n border-radius: theme('borderRadius.DEFAULT');\n\n &:focus-visible {\n @apply tw-ring-4;\n border-color: var(--color-ice-900);\n padding: 15px;\n border-width: 2px;\n }\n\n &--open {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n @media (hover: hover) {\n &:hover {\n background-color: var(--color-ice-100);\n }\n }\n\n &:active {\n background-color: var(--color-ice-200);\n }\n\n &:active + hr,\n &:hover + hr {\n opacity: 0;\n }\n }\n</style>\n"],"names":["props","__props","slots","useSlots","emits","__emit","classes","useCssModule","localIsExpanded","ref","watch","newVal","emitEvents","toggle"],"mappings":";;;;;;;;;;;;;;;;;;;AA4BE,UAAMA,IAAQC,GAKRC,IAAQC,EAAS,GAEjBC,IAAQC,GAMRC,IAAUC,EAAa;AAE7B,QAAI,CAACP,EAAM,SAAS,CAACE,EAAM;AACnB,YAAA,IAAI,MAAM,qDAAqD;AAGjE,UAAAM,IAAkBC,EAAIT,EAAM,UAAU;AAE5C,IAAAU;AAAA,MACE,MAAMV,EAAM;AAAA,MACZ,CAACW,MAAW;AACV,QAAAH,EAAgB,QAAQG,GACbC,EAAA;AAAA,MAAA;AAAA,IAEf;AAEA,UAAMC,IAAS,MAAM;AACH,MAAAL,EAAA,QAAQ,CAACA,EAAgB,OAC9BI,EAAA;AAAA,IACb;AAEA,aAASA,IAAa;AACpB,MAAAR,EAAM,UAAU,EAAE,YAAYI,EAAgB,OAAO,GACrDA,EAAgB,QAAQJ,EAAM,MAAM,IAAIA,EAAM,OAAO;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Accordion.js","sources":["../src/components/Accordion/Accordion.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { ref, useCssModule, useSlots, watch } from 'vue';\n\n import Expand from '../Expand/Expand.vue';\n import { IconName } from '../Icon/Icon.types';\n import Icon from '../Icon/Icon.vue';\n\n export interface AccordionProps {\n /**\n * The filename of the icon that will be displayed on the left side of the header\n */\n icon?: IconName;\n\n /**\n * Title of the Accordion, displayed in the header\n */\n title?: string;\n\n /**\n * Whether the Accordion is expanded or not\n */\n isExpanded?: boolean;\n }\n\n type ToggleState = {\n isExpanded: boolean;\n };\n\n const props = withDefaults(defineProps<AccordionProps>(), {\n icon: 'circle-info',\n title: undefined,\n isExpanded: false,\n });\n const slots = useSlots();\n\n const emit = defineEmits<{\n (e: 'toggle', state: ToggleState): void;\n (e: 'open' | 'close'): void;\n }>();\n\n const classes = useCssModule();\n\n if (!props.title && !slots.header) {\n throw new Error('Either a title prop or header slot must be provided');\n }\n\n const localIsExpanded = ref(props.isExpanded);\n\n function emitEvents() {\n emit('toggle', { isExpanded: localIsExpanded.value });\n emit(localIsExpanded.value ? 'open' : 'close');\n }\n\n const toggle = () => {\n localIsExpanded.value = !localIsExpanded.value;\n emitEvents();\n };\n\n watch(\n () => props.isExpanded,\n (newVal) => {\n localIsExpanded.value = newVal;\n emitEvents();\n },\n );\n</script>\n\n<template>\n <div class=\"stash-accordion tw-rounded tw-border tw-border-ice-500 tw-bg-white\" data-test=\"stash-accordion\">\n <div\n tabindex=\"0\"\n data-test=\"stash-accordion|toggle\"\n class=\"stash-accordion__toggle tw-flex tw-items-center\"\n :class=\"[classes.toggle, localIsExpanded && classes['toggle--open']]\"\n @click=\"toggle\"\n @keypress.enter=\"toggle\"\n @keypress.space.prevent=\"toggle\"\n >\n <div v-if=\"slots.header\">\n <!-- @slot Accordion header -->\n <slot name=\"header\"> </slot>\n </div>\n <template v-else>\n <Icon class=\"tw-text-blue-500\" size=\"dense\" :name=\"props.icon\" data-test=\"stash-accordion|toggle-icon\" />\n <div class=\"tw-flex-1 tw-select-none tw-font-medium tw-leading-5 tw-text-ice-900\">\n {{ props.title }}\n </div>\n </template>\n\n <Icon\n class=\"tw-ml-auto tw-justify-center tw-text-ice-900 tw-transition-transform tw-duration-300\"\n size=\"dense\"\n name=\"chevron-down\"\n data-test=\"stash-accordion|toggle-chevron\"\n :class=\"{ 'tw-rotate-180': localIsExpanded }\"\n />\n </div>\n <hr v-show=\"localIsExpanded\" class=\"tw-mx-[18px] tw-h-px tw-bg-ice-200\" />\n <Expand :is-expanded=\"localIsExpanded\">\n <div class=\"stash-accordion__content tw-p-[18px]\" data-test=\"stash-accordion|content\">\n <!-- @slot Accordion content -->\n <slot></slot>\n </div>\n </Expand>\n </div>\n</template>\n\n<style module>\n .toggle {\n @apply tw-outline-none tw-ring-blue-500 tw-ring-opacity-15;\n\n display: flex;\n cursor: pointer;\n gap: theme('gap[1.5]');\n padding: 17px;\n outline: none;\n border-radius: theme('borderRadius.DEFAULT');\n\n &:focus-visible {\n @apply tw-ring-4;\n border-color: var(--color-ice-900);\n padding: 15px;\n border-width: 2px;\n }\n\n &--open {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n @media (hover: hover) {\n &:hover {\n background-color: var(--color-ice-100);\n }\n }\n\n &:active {\n background-color: var(--color-ice-200);\n }\n\n &:active + hr,\n &:hover + hr {\n opacity: 0;\n }\n }\n</style>\n"],"names":["props","__props","slots","useSlots","emit","__emit","classes","useCssModule","localIsExpanded","ref","emitEvents","toggle","watch","newVal"],"mappings":";;;;;;;;;;;;;;;;;;;AA4BE,UAAMA,IAAQC,GAKRC,IAAQC,EAAS,GAEjBC,IAAOC,GAKPC,IAAUC,EAAa;AAE7B,QAAI,CAACP,EAAM,SAAS,CAACE,EAAM;AACnB,YAAA,IAAI,MAAM,qDAAqD;AAGjE,UAAAM,IAAkBC,EAAIT,EAAM,UAAU;AAE5C,aAASU,IAAa;AACpB,MAAAN,EAAK,UAAU,EAAE,YAAYI,EAAgB,OAAO,GAC/CJ,EAAAI,EAAgB,QAAQ,SAAS,OAAO;AAAA,IAAA;AAG/C,UAAMG,IAAS,MAAM;AACH,MAAAH,EAAA,QAAQ,CAACA,EAAgB,OAC9BE,EAAA;AAAA,IACb;AAEA,WAAAE;AAAA,MACE,MAAMZ,EAAM;AAAA,MACZ,CAACa,MAAW;AACV,QAAAL,EAAgB,QAAQK,GACbH,EAAA;AAAA,MAAA;AAAA,IAEf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -53,8 +53,8 @@ title: undefined;
53
53
  isExpanded: boolean;
54
54
  }>>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
55
55
  toggle: (state: ToggleState) => void;
56
- open: () => void;
57
56
  close: () => void;
57
+ open: () => void;
58
58
  }, string, PublicProps, Readonly<ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<AccordionProps>, {
59
59
  icon: string;
60
60
  title: undefined;
@@ -75,6 +75,11 @@ export default _default;
75
75
 
76
76
  declare type IconName = (typeof iconNames)[number];
77
77
 
78
+ /**
79
+ * To add a new icon, follow these steps:
80
+ *
81
+ * https://github.com/LeafLink/stash/blob/main/CONTRIBUTING.md#adding-a-new-icon
82
+ */
78
83
  declare const iconNames: readonly ["action-dots", "activity", "alert-bell", "archive", "arrow-down", "arrow-left", "arrow-right", "arrow-up", "badge-discount", "badge-seller-elite", "badge-seller-power", "badge-seller-verified", "book-customer", "building-office", "bulk-add", "calendar-reschedule", "calendar", "camera", "caret-down", "caret-up", "change-log", "check", "chevron-down", "chevron-left", "chevron-right", "chevron-up", "circle-check", "circle-close", "circle-dollar", "circle-empty", "circle-info", "circle-partial", "circle-percent", "circle-question-mark", "circle-status", "circle-warning", "clipboard-checkmark", "clipboard-inventory", "close", "combine", "compass", "contact", "contract", "copy", "credit-card", "credit-profile", "dashboard", "document-accept", "document-invoice", "document-recieved", "document-sent", "document-view", "document", "dolly", "download", "edit", "ellipsis", "envelope-open", "envelope", "equals", "export", "figma", "file-csv", "file", "filter-funnel", "filter-line", "flag", "folder", "folder-bar-graph", "folder-orders", "font-bold", "font-clear-format", "font-italic", "font-underline", "gear", "github", "globe", "graph-bar-chart", "graph-line-chart", "graph-pie-chart", "hazard", "hazard-outline", "headset-agent", "headset-mic", "heart-filled", "heart-outline", "help-question-mark", "hide", "history", "home", "image", "import", "keyboard-return", "tier-1", "tier-2", "tier-3", "license-approved", "license-certificate", "lightbulb", "link-add", "link-unlink", "link", "list-bulleted", "list-items", "list-numbered", "loading-big", "loading-empty", "loading-small", "location", "lock-unlock", "lock", "logo-facebook", "logo-instagram", "logo-linkedin", "logo-ll", "logo-metrc", "logo-plaid", "logo-x", "logo-youtube", "logout", "medical", "megaphone-sound", "megaphone", "menu", "message-dispute", "message-reply", "message", "minus", "mj-leaf", "money", "note-add", "note", "open-in-new", "paperclip", "paper-plane", "performance", "phone", "plus", "preview", "print", "product-menu-manage", "product-menu-search", "product-menu", "queue-add", "queue", "recent", "refresh", "register", "reply", "report-download", "sample", "save", "scale-law", "scale-weight", "search", "seed-cycle", "share", "shop-bag-browse", "shop-bag-reorder", "shop-bag", "shop-basket", "shop-cart-add", "shop-cart", "show", "sign-dollar", "sign-percent", "sort", "split", "star-filled", "star-outline", "storefront", "submit", "swap-horizontal", "swap-vertical", "tag-star", "tag", "test-results", "ticket-star", "ticket", "tool-dropper", "tool-wrench", "transfer", "trashcan", "truck", "upload", "user-add", "user-admin", "user-check", "user", "view-card", "view-detailed", "view-list", "warehouse", "working"];
79
84
 
80
85
  declare type ToggleState = {
@@ -1,4 +1,4 @@
1
- import { defineComponent as i, useCssModule as p, openBlock as u, createBlock as f, unref as n, normalizeClass as s, createSlots as w, withCtx as e, createVNode as a, createTextVNode as _, toDisplayString as m, renderSlot as b } from "vue";
1
+ import { defineComponent as i, useCssModule as p, createBlock as u, openBlock as f, normalizeClass as s, unref as n, createSlots as w, withCtx as e, createVNode as a, createTextVNode as _, toDisplayString as m, renderSlot as b } from "vue";
2
2
  import { t as C } from "./locale.js";
3
3
  import x from "./Button.js";
4
4
  import g from "./Dropdown.js";
@@ -15,7 +15,7 @@ const y = /* @__PURE__ */ i({
15
15
  },
16
16
  setup(d) {
17
17
  const t = d, o = p();
18
- return (l, N) => (u(), f(g, {
18
+ return (l, N) => (f(), u(g, {
19
19
  align: t.align,
20
20
  "content-class": [n(o).dropdownContent, t.contentClass],
21
21
  class: s(n(o).actionsDropdown)
@@ -1,4 +1,4 @@
1
- import { defineComponent as S, useSlots as A, inject as T, computed as h, ref as n, watch as I, openBlock as P, createBlock as j, unref as y, createSlots as k, withCtx as D, renderSlot as G } from "vue";
1
+ import { defineComponent as S, useSlots as A, inject as T, computed as h, ref as n, watch as I, createBlock as P, openBlock as j, unref as y, createSlots as k, withCtx as D, renderSlot as G } from "vue";
2
2
  import K from "lodash-es/debounce";
3
3
  import C from "lodash-es/uniqueId";
4
4
  import U from "./useGoogleMaps.js";
@@ -92,7 +92,7 @@ const _ = "address-select-", $ = /* @__PURE__ */ S({
92
92
  throw e;
93
93
  }
94
94
  }
95
- return (o, e) => (P(), j(F, {
95
+ return (o, e) => (j(), P(F, {
96
96
  single: "",
97
97
  "data-test": "select|address",
98
98
  disabled: t.disabled,
package/dist/Alert.js CHANGED
@@ -1,4 +1,4 @@
1
- import { defineComponent as x, useSlots as $, useCssModule as C, ref as I, computed as s, withDirectives as S, openBlock as i, createElementBlock as l, normalizeClass as r, createVNode as w, unref as t, createElementVNode as f, renderSlot as m, createCommentVNode as o } from "vue";
1
+ import { defineComponent as x, useSlots as $, useCssModule as C, ref as I, computed as s, withDirectives as S, createCommentVNode as i, createElementBlock as l, openBlock as o, normalizeClass as r, createVNode as w, createElementVNode as f, unref as t, renderSlot as m } from "vue";
2
2
  import y from "lodash-es/capitalize";
3
3
  import B from "lodash-es/uniqueId";
4
4
  import { S as M, a as N } from "./statusLevels-D8EgtE_L.js";
@@ -18,7 +18,7 @@ const z = { class: "tw-m-0" }, A = /* @__PURE__ */ x({
18
18
  },
19
19
  setup(b) {
20
20
  const e = b, g = B("close-icon"), _ = $(), a = C(), c = I(!0), u = s(() => M[y(e.severity)]), h = s(() => N[y(e.severity)]), k = s(() => e.variant === "filled" && ["warning", "success"].includes(e.severity) ? "tw-text-ice-900" : e.variant === "filled" && ["info", "error"].includes(e.severity) ? "tw-text-white" : `tw-text-${h.value}`), n = s(() => e.variant === "filled" && ["info", "error"].includes(e.severity) ? "tw-text-white" : "tw-text-ice-900");
21
- return (d, v) => c.value ? S((i(), l("div", {
21
+ return (d, v) => c.value ? S((o(), l("div", {
22
22
  key: 0,
23
23
  class: r(["stash-alert tw-relative tw-flex tw-items-center tw-border tw-border-solid tw-p-3 tw-leading-6", [
24
24
  `stash-alert--${e.severity}`,
@@ -59,15 +59,15 @@ const z = { class: "tw-m-0" }, A = /* @__PURE__ */ x({
59
59
  f("p", z, [
60
60
  m(d.$slots, "default")
61
61
  ]),
62
- t(_).link ? (i(), l("div", {
62
+ t(_).link ? (o(), l("div", {
63
63
  key: 0,
64
64
  class: r(["stash-alert__link tw-cursor-pointer tw-underline hover:tw-no-underline", [t(a).link, n.value, { "tw-ml-2": e.centered }]]),
65
65
  "data-test": "stash-alert|link"
66
66
  }, [
67
67
  m(d.$slots, "link")
68
- ], 2)) : o("", !0)
68
+ ], 2)) : i("", !0)
69
69
  ], 2),
70
- e.permanent ? o("", !0) : (i(), l("button", {
70
+ e.permanent ? i("", !0) : (o(), l("button", {
71
71
  key: 0,
72
72
  class: r(["stash-alert__close", [t(a).button, n.value]]),
73
73
  type: "button",
@@ -82,7 +82,7 @@ const z = { class: "tw-m-0" }, A = /* @__PURE__ */ x({
82
82
  ], 2))
83
83
  ], 2)), [
84
84
  [t(V), e.sticky]
85
- ]) : o("", !0);
85
+ ]) : i("", !0);
86
86
  }
87
87
  }), D = {}, E = {
88
88
  $style: D
@@ -1,5 +1,5 @@
1
- import { defineComponent as _, ref as v, useSlots as y, resolveComponent as $, openBlock as o, createElementBlock as r, unref as b, createBlock as h, normalizeClass as n, withCtx as m, createElementVNode as s, createVNode as a, toDisplayString as d, renderSlot as u } from "vue";
2
- import { _ as k } from "./Expand.vue_vue_type_script_setup_true_lang-D0fSAtHr.js";
1
+ import { defineComponent as _, ref as v, useSlots as y, resolveComponent as $, createElementBlock as r, openBlock as o, createBlock as b, unref as h, normalizeClass as n, withCtx as m, createElementVNode as s, renderSlot as d, createVNode as a, toDisplayString as u } from "vue";
2
+ import { _ as k } from "./Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js";
3
3
  import i from "./Icon.js";
4
4
  import { _ as x } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
5
  const C = { class: "tw-flex tw-flex-1 tw-items-center tw-overflow-hidden" }, A = { class: "tw-truncate" }, B = { key: 1 }, I = { class: "tw-flex tw-flex-1 tw-items-center tw-overflow-hidden" }, N = { class: "tw-truncate" }, g = /* @__PURE__ */ _({
@@ -15,7 +15,7 @@ const C = { class: "tw-flex tw-flex-1 tw-items-center tw-overflow-hidden" }, A =
15
15
  return (e, c) => {
16
16
  const w = $("router-link");
17
17
  return o(), r("li", null, [
18
- b(f)["sub-items"] ? (o(), r("div", B, [
18
+ h(f)["sub-items"] ? (o(), r("div", B, [
19
19
  s("button", {
20
20
  class: n([[e.$style.item, { [e.$style.expanded]: l.value }], "tw-flex tw-w-full tw-items-center tw-justify-between tw-font-normal tw-capitalize"]),
21
21
  onClick: c[0] || (c[0] = () => l.value = !l.value)
@@ -25,7 +25,7 @@ const C = { class: "tw-flex tw-flex-1 tw-items-center tw-overflow-hidden" }, A =
25
25
  name: t.icon,
26
26
  class: "tw-mr-3"
27
27
  }, null, 8, ["name"]),
28
- s("span", N, d(t.label), 1)
28
+ s("span", N, u(t.label), 1)
29
29
  ]),
30
30
  a(i, {
31
31
  class: n([e.$style.caret, { [e.$style.expandedIcon]: l.value }]),
@@ -40,12 +40,12 @@ const C = { class: "tw-flex tw-flex-1 tw-items-center tw-overflow-hidden" }, A =
40
40
  s("ul", {
41
41
  class: n(e.$style["sub-items"])
42
42
  }, [
43
- u(e.$slots, "sub-items")
43
+ d(e.$slots, "sub-items")
44
44
  ], 2)
45
45
  ]),
46
46
  _: 3
47
47
  }, 8, ["is-expanded", "class"])
48
- ])) : (o(), h(w, {
48
+ ])) : (o(), b(w, {
49
49
  key: 0,
50
50
  to: t.to,
51
51
  class: n([[e.$style.item, { [e.$style.active]: t.isActive }], "tw-flex tw-w-full tw-items-center tw-justify-between tw-font-normal tw-capitalize"]),
@@ -57,9 +57,9 @@ const C = { class: "tw-flex tw-flex-1 tw-items-center tw-overflow-hidden" }, A =
57
57
  name: t.icon,
58
58
  class: "tw-mr-3"
59
59
  }, null, 8, ["name"]),
60
- s("span", A, d(t.label), 1)
60
+ s("span", A, u(t.label), 1)
61
61
  ]),
62
- u(e.$slots, "default")
62
+ d(e.$slots, "default")
63
63
  ]),
64
64
  _: 3
65
65
  }, 8, ["to", "class", "active-class"]))
@@ -66,6 +66,11 @@ export default _default;
66
66
 
67
67
  declare type IconName = (typeof iconNames)[number];
68
68
 
69
+ /**
70
+ * To add a new icon, follow these steps:
71
+ *
72
+ * https://github.com/LeafLink/stash/blob/main/CONTRIBUTING.md#adding-a-new-icon
73
+ */
69
74
  declare const iconNames: readonly ["action-dots", "activity", "alert-bell", "archive", "arrow-down", "arrow-left", "arrow-right", "arrow-up", "badge-discount", "badge-seller-elite", "badge-seller-power", "badge-seller-verified", "book-customer", "building-office", "bulk-add", "calendar-reschedule", "calendar", "camera", "caret-down", "caret-up", "change-log", "check", "chevron-down", "chevron-left", "chevron-right", "chevron-up", "circle-check", "circle-close", "circle-dollar", "circle-empty", "circle-info", "circle-partial", "circle-percent", "circle-question-mark", "circle-status", "circle-warning", "clipboard-checkmark", "clipboard-inventory", "close", "combine", "compass", "contact", "contract", "copy", "credit-card", "credit-profile", "dashboard", "document-accept", "document-invoice", "document-recieved", "document-sent", "document-view", "document", "dolly", "download", "edit", "ellipsis", "envelope-open", "envelope", "equals", "export", "figma", "file-csv", "file", "filter-funnel", "filter-line", "flag", "folder", "folder-bar-graph", "folder-orders", "font-bold", "font-clear-format", "font-italic", "font-underline", "gear", "github", "globe", "graph-bar-chart", "graph-line-chart", "graph-pie-chart", "hazard", "hazard-outline", "headset-agent", "headset-mic", "heart-filled", "heart-outline", "help-question-mark", "hide", "history", "home", "image", "import", "keyboard-return", "tier-1", "tier-2", "tier-3", "license-approved", "license-certificate", "lightbulb", "link-add", "link-unlink", "link", "list-bulleted", "list-items", "list-numbered", "loading-big", "loading-empty", "loading-small", "location", "lock-unlock", "lock", "logo-facebook", "logo-instagram", "logo-linkedin", "logo-ll", "logo-metrc", "logo-plaid", "logo-x", "logo-youtube", "logout", "medical", "megaphone-sound", "megaphone", "menu", "message-dispute", "message-reply", "message", "minus", "mj-leaf", "money", "note-add", "note", "open-in-new", "paperclip", "paper-plane", "performance", "phone", "plus", "preview", "print", "product-menu-manage", "product-menu-search", "product-menu", "queue-add", "queue", "recent", "refresh", "register", "reply", "report-download", "sample", "save", "scale-law", "scale-weight", "search", "seed-cycle", "share", "shop-bag-browse", "shop-bag-reorder", "shop-bag", "shop-basket", "shop-cart-add", "shop-cart", "show", "sign-dollar", "sign-percent", "sort", "split", "star-filled", "star-outline", "storefront", "submit", "swap-horizontal", "swap-vertical", "tag-star", "tag", "test-results", "ticket-star", "ticket", "tool-dropper", "tool-wrench", "transfer", "trashcan", "truck", "upload", "user-add", "user-admin", "user-check", "user", "view-card", "view-detailed", "view-list", "warehouse", "working"];
70
75
 
71
76
  export { }
@@ -1,4 +1,4 @@
1
- import { defineComponent as B, useSlots as C, computed as w, ref as O, watchEffect as V, openBlock as s, createElementBlock as a, normalizeClass as _, createVNode as o, Transition as b, withCtx as g, withDirectives as x, withModifiers as $, vShow as k, createElementVNode as p, unref as c, renderSlot as i, createCommentVNode as u } from "vue";
1
+ import { defineComponent as B, useSlots as C, computed as w, ref as O, watchEffect as V, createElementBlock as s, openBlock as a, normalizeClass as _, createVNode as o, Transition as b, withCtx as g, withDirectives as x, withModifiers as $, vShow as k, createElementVNode as p, createCommentVNode as c, renderSlot as i, unref as u } from "vue";
2
2
  import z from "./useMediaQuery.js";
3
3
  import N from "./Backdrop.js";
4
4
  import j from "./Divider.js";
@@ -39,7 +39,7 @@ const D = {
39
39
  height: e.value ? "100%" : n.value.height
40
40
  // Ensures the backdrop covers the entire page when AppSidebar is open
41
41
  }));
42
- }), (t, h) => (s(), a("div", {
42
+ }), (t, h) => (a(), s("div", {
43
43
  id: "stash-app-sidebar",
44
44
  class: _(["stash-app-sidebar tw-relative", {
45
45
  "stash-app-sidebar--is-open": f.value,
@@ -66,17 +66,17 @@ const D = {
66
66
  "data-test": "stash-app-sidebar__aside"
67
67
  }, [
68
68
  o(j, { class: "stash-app-sidebar__divider" }),
69
- c(r)["app-context"] ? (s(), a("div", D, [
69
+ u(r)["app-context"] ? (a(), s("div", D, [
70
70
  i(t.$slots, "app-context", {}, void 0, !0)
71
- ])) : u("", !0),
72
- c(r)["company-context"] ? (s(), a("div", M, [
71
+ ])) : c("", !0),
72
+ u(r)["company-context"] ? (a(), s("div", M, [
73
73
  i(t.$slots, "company-context", {}, void 0, !0)
74
- ])) : u("", !0),
75
- c(r).navigation ? (s(), a("nav", P, [
74
+ ])) : c("", !0),
75
+ u(r).navigation ? (a(), s("nav", P, [
76
76
  p("ul", I, [
77
77
  i(t.$slots, "navigation", {}, void 0, !0)
78
78
  ])
79
- ])) : u("", !0),
79
+ ])) : c("", !0),
80
80
  h[0] || (h[0] = p("div", { class: "tw-flex-1" }, null, -1)),
81
81
  i(t.$slots, "footer", {}, void 0, !0)
82
82
  ], 2), [
@@ -87,7 +87,7 @@ const D = {
87
87
  })
88
88
  ], 2));
89
89
  }
90
- }), H = /* @__PURE__ */ A(L, [["__scopeId", "data-v-8ae19347"]]);
90
+ }), H = /* @__PURE__ */ A(L, [["__scopeId", "data-v-334e749f"]]);
91
91
  export {
92
92
  H as default
93
93
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AppSidebar.js","sources":["../src/components/AppSidebar/AppSidebar.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { computed, ref, useSlots, watchEffect } from 'vue';\n\n import useMediaQuery from '../../composables/useMediaQuery/useMediaQuery';\n import Backdrop from '../Backdrop/Backdrop.vue';\n import Divider from '../Divider/Divider.vue';\n\n export interface AppSidebarProps {\n /**\n * Controls wether the sidebar is opened or not\n */\n isOpen?: boolean;\n }\n\n const props = withDefaults(defineProps<AppSidebarProps>(), {\n isOpen: false,\n });\n\n const slots = useSlots();\n\n const emit = defineEmits<{\n /**\n * @deprecated Use the `update:is-open` event instead\n */\n (e: 'dismiss'): void;\n (e: 'update:is-open', isOpen: boolean): void;\n }>();\n\n const isExtraLargeScreen = useMediaQuery('screen and (min-width: 1321px)');\n const isBackdropVisible = computed(() => props.isOpen && !isExtraLargeScreen.value);\n const initialPageScrollingElementStyle = ref({ height: '', overflow: '' });\n const isSidebarOpen = computed(() => props.isOpen || isExtraLargeScreen.value);\n\n function onBackdropClick() {\n emit('dismiss');\n emit('update:is-open', false);\n }\n\n function getPageScrollingElement() {\n return (document.scrollingElement || document.body) as HTMLElement;\n }\n\n watchEffect(() => {\n if (isExtraLargeScreen.value) {\n return;\n }\n\n if (isBackdropVisible.value) {\n Object.assign(initialPageScrollingElementStyle.value, {\n overflow: getPageScrollingElement().style.overflow,\n height: getPageScrollingElement().style.height,\n });\n }\n\n Object.assign(getPageScrollingElement().style, {\n overflow: isBackdropVisible.value ? 'hidden' : initialPageScrollingElementStyle.value.overflow, // Prevents page from scrolling when AppSidebar is open\n height: isBackdropVisible.value ? '100%' : initialPageScrollingElementStyle.value.height, // Ensures the backdrop covers the entire page when AppSidebar is open\n });\n });\n</script>\n\n<template>\n <div\n id=\"stash-app-sidebar\"\n class=\"stash-app-sidebar tw-relative\"\n :class=\"{\n 'stash-app-sidebar--is-open': isSidebarOpen,\n 'tw-z-modal': isBackdropVisible,\n 'tw-z-[301]': !isBackdropVisible,\n }\"\n data-test=\"stash-app-sidebar\"\n >\n <Transition name=\"backdrop\">\n <Backdrop v-show=\"isBackdropVisible\" class=\"stash-app-sidebar__backdrop\" @click.stop=\"onBackdropClick\" />\n </Transition>\n <Transition name=\"aside\">\n <aside\n v-show=\"isSidebarOpen\"\n class=\"stash-app-sidebar__aside tw-fixed tw-flex tw-h-screen tw-flex-col tw-bg-purple-500\"\n :class=\"{ 'tw-shadow-3xl': isBackdropVisible }\"\n data-test=\"stash-app-sidebar__aside\"\n >\n <Divider class=\"stash-app-sidebar__divider\" />\n <div v-if=\"slots['app-context']\" class=\"tw-px-3 tw-pt-6\">\n <!-- @slot App Context component slot, ideally for rendering the context switcher -->\n <slot name=\"app-context\"></slot>\n </div>\n <div v-if=\"slots['company-context']\" class=\"tw-px-3 tw-pt-6\">\n <!-- @slot Company Context component slot, ideally for rendering the company picker -->\n <slot name=\"company-context\"></slot>\n </div>\n <nav v-if=\"slots['navigation']\" class=\"tw-pt-6\">\n <ul role=\"menubar\" aria-orientation=\"vertical\">\n <!-- @slot Navigation component slot, for rendering navigation items -->\n <slot name=\"navigation\"></slot>\n </ul>\n </nav>\n <div class=\"tw-flex-1\"></div>\n <!-- @slot Footer component slot, for rendering version/environment notes -->\n <slot name=\"footer\"></slot>\n </aside>\n </Transition>\n </div>\n</template>\n\n<style scoped>\n .stash-app-sidebar__aside {\n padding-top: calc(theme('height.topbar') - 1px); /* -1px to compensate for the border height */\n width: theme('width.sidebar');\n }\n\n .stash-app-sidebar__divider::before,\n .stash-app-sidebar__divider::after {\n border-bottom: 1px solid rgb(255 255 255 / 12%);\n }\n\n .backdrop-enter-active,\n .backdrop-leave-active {\n transition: opacity 200ms ease-in-out;\n }\n\n .backdrop-enter-from,\n .backdrop-leave-to {\n opacity: 0;\n }\n\n .aside-enter-active,\n .aside-leave-active {\n transition: opacity 200ms ease-in-out, transform 200ms ease-in-out;\n }\n\n .aside-enter-from,\n .aside-leave-to {\n opacity: 0;\n transform: translateX(-20%);\n }\n</style>\n"],"names":["props","__props","slots","useSlots","emit","__emit","isExtraLargeScreen","useMediaQuery","isBackdropVisible","computed","initialPageScrollingElementStyle","ref","isSidebarOpen","onBackdropClick","getPageScrollingElement","watchEffect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAcE,UAAMA,IAAQC,GAIRC,IAAQC,EAAS,GAEjBC,IAAOC,GAQPC,IAAqBC,EAAc,gCAAgC,GACnEC,IAAoBC,EAAS,MAAMT,EAAM,UAAU,CAACM,EAAmB,KAAK,GAC5EI,IAAmCC,EAAI,EAAE,QAAQ,IAAI,UAAU,IAAI,GACnEC,IAAgBH,EAAS,MAAMT,EAAM,UAAUM,EAAmB,KAAK;AAE7E,aAASO,IAAkB;AACzB,MAAAT,EAAK,SAAS,GACdA,EAAK,kBAAkB,EAAK;AAAA,IAAA;AAG9B,aAASU,IAA0B;AACzB,aAAA,SAAS,oBAAoB,SAAS;AAAA,IAAA;AAGhD,WAAAC,EAAY,MAAM;AAChB,MAAIT,EAAmB,UAInBE,EAAkB,SACb,OAAA,OAAOE,EAAiC,OAAO;AAAA,QACpD,UAAUI,IAA0B,MAAM;AAAA,QAC1C,QAAQA,EAAwB,EAAE,MAAM;AAAA,MAAA,CACzC,GAGI,OAAA,OAAOA,EAAwB,EAAE,OAAO;AAAA,QAC7C,UAAUN,EAAkB,QAAQ,WAAWE,EAAiC,MAAM;AAAA;AAAA,QACtF,QAAQF,EAAkB,QAAQ,SAASE,EAAiC,MAAM;AAAA;AAAA,MAAA,CACnF;AAAA,IAAA,CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"AppSidebar.js","sources":["../src/components/AppSidebar/AppSidebar.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { computed, ref, useSlots, watchEffect } from 'vue';\n\n import useMediaQuery from '../../composables/useMediaQuery/useMediaQuery';\n import Backdrop from '../Backdrop/Backdrop.vue';\n import Divider from '../Divider/Divider.vue';\n\n export interface AppSidebarProps {\n /**\n * Controls wether the sidebar is opened or not\n */\n isOpen?: boolean;\n }\n\n const props = withDefaults(defineProps<AppSidebarProps>(), {\n isOpen: false,\n });\n\n const slots = useSlots();\n\n const emit = defineEmits<{\n /**\n * @deprecated Use the `update:is-open` event instead\n */\n (e: 'dismiss'): void;\n (e: 'update:is-open', isOpen: boolean): void;\n }>();\n\n const isExtraLargeScreen = useMediaQuery('screen and (min-width: 1321px)');\n const isBackdropVisible = computed(() => props.isOpen && !isExtraLargeScreen.value);\n const initialPageScrollingElementStyle = ref({ height: '', overflow: '' });\n const isSidebarOpen = computed(() => props.isOpen || isExtraLargeScreen.value);\n\n function onBackdropClick() {\n emit('dismiss');\n emit('update:is-open', false);\n }\n\n function getPageScrollingElement() {\n return (document.scrollingElement || document.body) as HTMLElement;\n }\n\n watchEffect(() => {\n if (isExtraLargeScreen.value) {\n return;\n }\n\n if (isBackdropVisible.value) {\n Object.assign(initialPageScrollingElementStyle.value, {\n overflow: getPageScrollingElement().style.overflow,\n height: getPageScrollingElement().style.height,\n });\n }\n\n Object.assign(getPageScrollingElement().style, {\n overflow: isBackdropVisible.value ? 'hidden' : initialPageScrollingElementStyle.value.overflow, // Prevents page from scrolling when AppSidebar is open\n height: isBackdropVisible.value ? '100%' : initialPageScrollingElementStyle.value.height, // Ensures the backdrop covers the entire page when AppSidebar is open\n });\n });\n</script>\n\n<template>\n <div\n id=\"stash-app-sidebar\"\n class=\"stash-app-sidebar tw-relative\"\n :class=\"{\n 'stash-app-sidebar--is-open': isSidebarOpen,\n 'tw-z-modal': isBackdropVisible,\n 'tw-z-[301]': !isBackdropVisible,\n }\"\n data-test=\"stash-app-sidebar\"\n >\n <Transition name=\"backdrop\">\n <Backdrop v-show=\"isBackdropVisible\" class=\"stash-app-sidebar__backdrop\" @click.stop=\"onBackdropClick\" />\n </Transition>\n <Transition name=\"aside\">\n <aside\n v-show=\"isSidebarOpen\"\n class=\"stash-app-sidebar__aside tw-fixed tw-flex tw-h-screen tw-flex-col tw-bg-purple-500\"\n :class=\"{ 'tw-shadow-3xl': isBackdropVisible }\"\n data-test=\"stash-app-sidebar__aside\"\n >\n <Divider class=\"stash-app-sidebar__divider\" />\n <div v-if=\"slots['app-context']\" class=\"tw-px-3 tw-pt-6\">\n <!-- @slot App Context component slot, ideally for rendering the context switcher -->\n <slot name=\"app-context\"></slot>\n </div>\n <div v-if=\"slots['company-context']\" class=\"tw-px-3 tw-pt-6\">\n <!-- @slot Company Context component slot, ideally for rendering the company picker -->\n <slot name=\"company-context\"></slot>\n </div>\n <nav v-if=\"slots['navigation']\" class=\"tw-pt-6\">\n <ul role=\"menubar\" aria-orientation=\"vertical\">\n <!-- @slot Navigation component slot, for rendering navigation items -->\n <slot name=\"navigation\"></slot>\n </ul>\n </nav>\n <div class=\"tw-flex-1\"></div>\n <!-- @slot Footer component slot, for rendering version/environment notes -->\n <slot name=\"footer\"></slot>\n </aside>\n </Transition>\n </div>\n</template>\n\n<style scoped>\n .stash-app-sidebar__aside {\n padding-top: calc(theme('height.topbar') - 1px); /* -1px to compensate for the border height */\n width: theme('width.sidebar');\n }\n\n .stash-app-sidebar__divider::before,\n .stash-app-sidebar__divider::after {\n border-bottom: 1px solid rgb(255 255 255 / 12%);\n }\n\n .backdrop-enter-active,\n .backdrop-leave-active {\n transition: opacity 200ms ease-in-out;\n }\n\n .backdrop-enter-from,\n .backdrop-leave-to {\n opacity: 0;\n }\n\n .aside-enter-active,\n .aside-leave-active {\n transition:\n opacity 200ms ease-in-out,\n transform 200ms ease-in-out;\n }\n\n .aside-enter-from,\n .aside-leave-to {\n opacity: 0;\n transform: translateX(-20%);\n }\n</style>\n"],"names":["props","__props","slots","useSlots","emit","__emit","isExtraLargeScreen","useMediaQuery","isBackdropVisible","computed","initialPageScrollingElementStyle","ref","isSidebarOpen","onBackdropClick","getPageScrollingElement","watchEffect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAcE,UAAMA,IAAQC,GAIRC,IAAQC,EAAS,GAEjBC,IAAOC,GAQPC,IAAqBC,EAAc,gCAAgC,GACnEC,IAAoBC,EAAS,MAAMT,EAAM,UAAU,CAACM,EAAmB,KAAK,GAC5EI,IAAmCC,EAAI,EAAE,QAAQ,IAAI,UAAU,IAAI,GACnEC,IAAgBH,EAAS,MAAMT,EAAM,UAAUM,EAAmB,KAAK;AAE7E,aAASO,IAAkB;AACzB,MAAAT,EAAK,SAAS,GACdA,EAAK,kBAAkB,EAAK;AAAA,IAAA;AAG9B,aAASU,IAA0B;AACzB,aAAA,SAAS,oBAAoB,SAAS;AAAA,IAAA;AAGhD,WAAAC,EAAY,MAAM;AAChB,MAAIT,EAAmB,UAInBE,EAAkB,SACb,OAAA,OAAOE,EAAiC,OAAO;AAAA,QACpD,UAAUI,IAA0B,MAAM;AAAA,QAC1C,QAAQA,EAAwB,EAAE,MAAM;AAAA,MAAA,CACzC,GAGI,OAAA,OAAOA,EAAwB,EAAE,OAAO;AAAA,QAC7C,UAAUN,EAAkB,QAAQ,WAAWE,EAAiC,MAAM;AAAA;AAAA,QACtF,QAAQF,EAAkB,QAAQ,SAASE,EAAiC,MAAM;AAAA;AAAA,MAAA,CACnF;AAAA,IAAA,CACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/AppTopbar.js CHANGED
@@ -1,7 +1,7 @@
1
- import { defineComponent as c, openBlock as m, createElementBlock as f, createElementVNode as t, normalizeClass as i, createVNode as a, unref as h, renderSlot as o } from "vue";
1
+ import { defineComponent as c, createElementBlock as m, openBlock as f, createElementVNode as t, normalizeClass as i, createVNode as a, unref as h, renderSlot as o } from "vue";
2
2
  import b from "./useMediaQuery.js";
3
3
  import u from "./Icon.js";
4
- import { _ as l } from "./Logo.vue_vue_type_script_setup_true_lang-BfUU9J9O.js";
4
+ import { _ as l } from "./Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js";
5
5
  const x = {
6
6
  "data-test": "stash-app-topbar",
7
7
  class: "stash-app-topbar tw-absolute tw-left-0 tw-top-0"
@@ -14,7 +14,7 @@ const x = {
14
14
  emits: ["toggle-sidebar"],
15
15
  setup(n, { emit: w }) {
16
16
  const e = n, d = w, p = b("screen and (min-width: 1321px)");
17
- return (s, r) => (m(), f("header", x, [
17
+ return (s, r) => (f(), m("header", x, [
18
18
  t("div", {
19
19
  class: i(["tw-fixed tw-top-0 tw-flex tw-h-topbar tw-w-sidebar tw-items-center tw-pl-3 xl:tw-text-white", {
20
20
  "tw-z-dialog tw-text-white": e.sidebarOpened,
package/dist/Avatar.js CHANGED
@@ -1,4 +1,4 @@
1
- import { defineComponent as p, useAttrs as v, useCssModule as _, computed as c, openBlock as i, createElementBlock as d, mergeProps as u, unref as a, toDisplayString as h } from "vue";
1
+ import { defineComponent as p, useAttrs as v, useCssModule as _, computed as c, createElementBlock as i, openBlock as d, mergeProps as u, unref as a, toDisplayString as h } from "vue";
2
2
  import b from "./utils/colorScheme.js";
3
3
  import { _ as k } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
4
  const g = ["alt", "src", "tabindex"], x = ["tabindex"], C = /* @__PURE__ */ p({
@@ -23,14 +23,14 @@ const g = ["alt", "src", "tabindex"], x = ["tabindex"], C = /* @__PURE__ */ p({
23
23
  const [l, r] = String(t.name).toUpperCase().split(" ");
24
24
  return r ? l.charAt(0) + r.charAt(0) : l.charAt(0);
25
25
  }), o = c(() => !!s.onClick);
26
- return (l, r) => t.src ? (i(), d("img", u({
26
+ return (l, r) => t.src ? (d(), i("img", u({
27
27
  key: 0,
28
28
  class: ["stash-avatar stash-avatar--image tw-inline-block tw-rounded-full", [a(e).root, { [a(e).clickable]: o.value }]],
29
29
  alt: t.alt,
30
30
  src: t.src,
31
31
  tabindex: o.value ? 0 : -1,
32
32
  "data-test": "stash-avatar"
33
- }, a(s)), null, 16, g)) : (i(), d("div", u({
33
+ }, a(s)), null, 16, g)) : (d(), i("div", u({
34
34
  key: 1,
35
35
  class: ["stash-avatar stash-avatar--initials tw-inline-block tw-cursor-default tw-rounded-full tw-text-center tw-font-semibold", [
36
36
  a(e).root,
package/dist/Backdrop.js CHANGED
@@ -1,4 +1,4 @@
1
- import { openBlock as e, createElementBlock as r, renderSlot as o } from "vue";
1
+ import { createElementBlock as e, openBlock as r, renderSlot as o } from "vue";
2
2
  import { _ as s } from "./_plugin-vue_export-helper-CHgC5LLL.js";
3
3
  const a = {}, c = {
4
4
  "aria-hidden": "true",
@@ -6,7 +6,7 @@ const a = {}, c = {
6
6
  "data-test": "stash-backdrop"
7
7
  };
8
8
  function d(t, n) {
9
- return e(), r("div", c, [
9
+ return r(), e("div", c, [
10
10
  o(t.$slots, "default")
11
11
  ]);
12
12
  }
package/dist/Badge.js CHANGED
@@ -1,4 +1,4 @@
1
- import { defineComponent as u, useCssModule as g, computed as l, ref as w, watch as b, openBlock as h, createElementBlock as m, renderSlot as v, withDirectives as _, createElementVNode as r, normalizeClass as c, unref as i, normalizeStyle as x, toDisplayString as y, vShow as k } from "vue";
1
+ import { defineComponent as u, useCssModule as g, computed as l, ref as w, watch as b, createElementBlock as h, openBlock as m, renderSlot as v, withDirectives as _, createElementVNode as r, normalizeStyle as x, normalizeClass as c, unref as i, toDisplayString as y, vShow as k } from "vue";
2
2
  import { _ as B } from "./_plugin-vue_export-helper-CHgC5LLL.js";
3
3
  const D = {
4
4
  class: "stash-badge tw-relative tw-inline-block",
@@ -35,7 +35,7 @@ const D = {
35
35
  n.value = !1;
36
36
  }, 1e3));
37
37
  }
38
- ), (e, a) => (h(), m("span", D, [
38
+ ), (e, a) => (m(), h("span", D, [
39
39
  v(e.$slots, "default"),
40
40
  _(r("span", {
41
41
  "data-test": "stash-badge|content-wrapper",
package/dist/Box.js CHANGED
@@ -1,4 +1,4 @@
1
- import { _ as f } from "./Box.vue_vue_type_script_setup_true_lang-DgJHq-09.js";
1
+ import { _ as f } from "./Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js";
2
2
  export {
3
3
  f as default
4
4
  };
@@ -1,4 +1,4 @@
1
- import { defineComponent as s, openBlock as o, createElementBlock as l, normalizeClass as d, renderSlot as n } from "vue";
1
+ import { defineComponent as s, createElementBlock as o, openBlock as l, normalizeClass as d, renderSlot as n } from "vue";
2
2
  const u = /* @__PURE__ */ s({
3
3
  name: "ll-box",
4
4
  __name: "Box",
@@ -10,7 +10,7 @@ const u = /* @__PURE__ */ s({
10
10
  },
11
11
  setup(t) {
12
12
  const e = t;
13
- return (a, r) => (o(), l("section", {
13
+ return (a, r) => (l(), o("section", {
14
14
  class: d(["stash-box tw-bg-white", {
15
15
  "tw-rounded": e.radius === "rounded",
16
16
  "tw-p-gutter": !e.disablePadding && !e.disableGutters,
@@ -26,4 +26,4 @@ const u = /* @__PURE__ */ s({
26
26
  export {
27
27
  u as _
28
28
  };
29
- //# sourceMappingURL=Box.vue_vue_type_script_setup_true_lang-DgJHq-09.js.map
29
+ //# sourceMappingURL=Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Box.vue_vue_type_script_setup_true_lang-DgJHq-09.js","sources":["../src/components/Box/Box.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n defineOptions({\n name: 'll-box',\n });\n\n export interface BoxProps {\n /**\n * Remove the padding around the entire Box.\n */\n disablePadding?: boolean;\n\n /**\n * Remove the padding on the left and right of the Box.\n */\n disableGutters?: boolean;\n\n /**\n * Remove the padding on the left and right of the Box.\n */\n disableElevation?: boolean;\n\n /**\n * Border radius style. Defaults to `rounded`.\n */\n radius?: 'none' | 'rounded';\n }\n\n const props = withDefaults(defineProps<BoxProps>(), {\n disablePadding: false,\n disableGutters: false,\n disableElevation: false,\n radius: 'rounded',\n });\n</script>\n\n<template>\n <section\n class=\"stash-box tw-bg-white\"\n :class=\"{\n 'tw-rounded': props.radius === 'rounded',\n 'tw-p-gutter': !props.disablePadding && !props.disableGutters,\n 'tw-py-gutter': props.disableGutters,\n 'tw-shadow': !props.disableElevation,\n }\"\n data-test=\"stash-box\"\n >\n <!-- @slot default -->\n <slot></slot>\n </section>\n</template>\n"],"names":["props","__props"],"mappings":";;;;;;;;;;;AA2BE,UAAMA,IAAQC;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js","sources":["../src/components/Box/Box.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n defineOptions({\n name: 'll-box',\n });\n\n export interface BoxProps {\n /**\n * Remove the padding around the entire Box.\n */\n disablePadding?: boolean;\n\n /**\n * Remove the padding on the left and right of the Box.\n */\n disableGutters?: boolean;\n\n /**\n * Remove the padding on the left and right of the Box.\n */\n disableElevation?: boolean;\n\n /**\n * Border radius style. Defaults to `rounded`.\n */\n radius?: 'none' | 'rounded';\n }\n\n const props = withDefaults(defineProps<BoxProps>(), {\n disablePadding: false,\n disableGutters: false,\n disableElevation: false,\n radius: 'rounded',\n });\n</script>\n\n<template>\n <section\n class=\"stash-box tw-bg-white\"\n :class=\"{\n 'tw-rounded': props.radius === 'rounded',\n 'tw-p-gutter': !props.disablePadding && !props.disableGutters,\n 'tw-py-gutter': props.disableGutters,\n 'tw-shadow': !props.disableElevation,\n }\"\n data-test=\"stash-box\"\n >\n <!-- @slot default -->\n <slot></slot>\n </section>\n</template>\n"],"names":["props","__props"],"mappings":";;;;;;;;;;;AA2BE,UAAMA,IAAQC;;;;;;;;;;;;;;"}
package/dist/Button.js CHANGED
@@ -1,4 +1,4 @@
1
- import { defineComponent as c, useCssModule as d, computed as a, openBlock as s, createBlock as u, resolveDynamicComponent as f, mergeProps as h, unref as r, withCtx as p, renderSlot as y } from "vue";
1
+ import { defineComponent as c, useCssModule as d, computed as a, createBlock as s, openBlock as u, resolveDynamicComponent as f, mergeProps as h, unref as r, withCtx as p, renderSlot as y } from "vue";
2
2
  import m from "./Icon.js";
3
3
  import { _ as w } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
4
  const q = /* @__PURE__ */ c({
@@ -32,7 +32,7 @@ const q = /* @__PURE__ */ c({
32
32
  } : t.href ? {
33
33
  href: t.href
34
34
  } : {});
35
- return (o, B) => (s(), u(f(_.value), h({
35
+ return (o, B) => (u(), s(f(_.value), h({
36
36
  disabled: t.isLoading || t.disabled ? !0 : void 0
37
37
  }, b.value, {
38
38
  class: ["stash-button", [
@@ -48,7 +48,7 @@ const q = /* @__PURE__ */ c({
48
48
  "data-test": "ll-button"
49
49
  }), {
50
50
  default: p(() => [
51
- t.isLoading ? (s(), u(m, {
51
+ t.isLoading ? (u(), s(m, {
52
52
  key: 0,
53
53
  name: "loading-empty",
54
54
  class: "tw-animate-spin"
@@ -1,4 +1,4 @@
1
- import { defineComponent as m, computed as r, ref as g, openBlock as l, createElementBlock as s, normalizeClass as p, Fragment as $, renderList as y, withModifiers as B, toDisplayString as h } from "vue";
1
+ import { defineComponent as m, computed as r, ref as g, createElementBlock as l, openBlock as s, normalizeClass as p, Fragment as $, renderList as y, withModifiers as B, toDisplayString as h } from "vue";
2
2
  import w from "lodash-es/uniqueId";
3
3
  import { _ as z } from "./_plugin-vue_export-helper-CHgC5LLL.js";
4
4
  const k = ["data-test"], C = ["data-test", "disabled", "onClick"], G = {
@@ -19,7 +19,7 @@ const k = ["data-test"], C = ["data-test", "disabled", "onClick"], G = {
19
19
  var o;
20
20
  i.value && ((o = n.value) == null ? void 0 : o.id) === t.id ? n.value = null : n.value = t, f("input", n.value);
21
21
  }
22
- return (t, o) => (l(), s("div", {
22
+ return (t, o) => (s(), l("div", {
23
23
  class: p([
24
24
  "tw-flex",
25
25
  t.$style.buttonGroup,
@@ -29,9 +29,9 @@ const k = ["data-test"], C = ["data-test", "disabled", "onClick"], G = {
29
29
  ]),
30
30
  "data-test": `button-group-${t.$props.groupName}`
31
31
  }, [
32
- (l(!0), s($, null, y(e.options, (a) => {
32
+ (s(!0), l($, null, y(e.options, (a) => {
33
33
  var c, d;
34
- return l(), s("button", {
34
+ return s(), l("button", {
35
35
  key: `${e.groupName}-${a.id}`,
36
36
  class: p([t.$style.button, { [t.$style.active]: ((c = n.value) == null ? void 0 : c.id) === a.id }]),
37
37
  "data-test": `${e.groupName}-button-${((d = n.value) == null ? void 0 : d.id) === a.id ? "active" : "inactive"}`,
package/dist/Card.js CHANGED
@@ -1,4 +1,4 @@
1
- import { defineComponent as w, useSlots as i, openBlock as a, createElementBlock as r, unref as s, normalizeClass as n, createElementVNode as l, renderSlot as o, createCommentVNode as f } from "vue";
1
+ import { defineComponent as w, useSlots as i, createElementBlock as a, openBlock as r, createCommentVNode as f, createElementVNode as s, unref as l, normalizeClass as n, renderSlot as o } from "vue";
2
2
  const p = {
3
3
  class: "stash-card tw-relative tw-inline-block tw-rounded tw-border tw-bg-white tw-shadow-md",
4
4
  "data-test": "stash-card"
@@ -9,21 +9,21 @@ const p = {
9
9
  },
10
10
  setup(d) {
11
11
  const c = d, t = i();
12
- return (e, u) => (a(), r("article", p, [
13
- s(t)["top-left"] || s(t)["top-right"] ? (a(), r("div", {
12
+ return (e, u) => (r(), a("article", p, [
13
+ l(t)["top-left"] || l(t)["top-right"] ? (r(), a("div", {
14
14
  key: 0,
15
15
  "data-test": "card-actions",
16
16
  class: n([{ "tw-absolute tw-top-0 tw-w-full": c.detachActions }, "tw-flex tw-flex-wrap tw-items-start tw-justify-between tw-p-6"])
17
17
  }, [
18
- l("div", null, [
18
+ s("div", null, [
19
19
  o(e.$slots, "top-left")
20
20
  ]),
21
- l("div", null, [
21
+ s("div", null, [
22
22
  o(e.$slots, "top-right")
23
23
  ])
24
24
  ], 2)) : f("", !0),
25
- l("div", {
26
- class: n({ "tw-mb-6 tw-flex tw-h-full tw-flex-col tw-gap-y-6": s(t).default })
25
+ s("div", {
26
+ class: n({ "tw-mb-6 tw-flex tw-h-full tw-flex-col tw-gap-y-6": l(t).default })
27
27
  }, [
28
28
  o(e.$slots, "default")
29
29
  ], 2)
@@ -1,11 +1,11 @@
1
- import { openBlock as e, createElementBlock as o, renderSlot as n } from "vue";
1
+ import { createElementBlock as e, openBlock as o, renderSlot as n } from "vue";
2
2
  import { _ as r } from "./_plugin-vue_export-helper-CHgC5LLL.js";
3
3
  const s = {}, c = {
4
4
  class: "stash-card-content tw-px-6",
5
5
  "data-test": "stash-card-content"
6
6
  };
7
7
  function a(t, d) {
8
- return e(), o("div", c, [
8
+ return o(), e("div", c, [
9
9
  n(t.$slots, "default")
10
10
  ]);
11
11
  }