@leaflink/stash 42.4.4 → 42.5.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 (225) hide show
  1. package/README.md +27 -3
  2. package/dist/ActionsDropdown.js +15 -20
  3. package/dist/ActionsDropdown.js.map +1 -1
  4. package/dist/AddressSelect.js +34 -45
  5. package/dist/AddressSelect.js.map +1 -1
  6. package/dist/Alert.js +58 -57
  7. package/dist/Alert.js.map +1 -1
  8. package/dist/AppNavigationItem.js +4 -6
  9. package/dist/AppNavigationItem.js.map +1 -1
  10. package/dist/AppTopbar.js +13 -15
  11. package/dist/AppTopbar.js.map +1 -1
  12. package/dist/ButtonGroup.js +12 -14
  13. package/dist/ButtonGroup.js.map +1 -1
  14. package/dist/CardMedia.js +9 -11
  15. package/dist/CardMedia.js.map +1 -1
  16. package/dist/Carousel.js +41 -44
  17. package/dist/Carousel.js.map +1 -1
  18. package/dist/Checkbox.js +9 -11
  19. package/dist/Checkbox.js.map +1 -1
  20. package/dist/ChevronToggle.js +2 -4
  21. package/dist/ChevronToggle.js.map +1 -1
  22. package/dist/Chip.js +4 -6
  23. package/dist/Chip.js.map +1 -1
  24. package/dist/ContextSwitcher.js +12 -17
  25. package/dist/ContextSwitcher.js.map +1 -1
  26. package/dist/Copy.js +19 -24
  27. package/dist/Copy.js.map +1 -1
  28. package/dist/CurrencyInput.js +8 -13
  29. package/dist/CurrencyInput.js.map +1 -1
  30. package/dist/DataView.js +48 -59
  31. package/dist/DataView.js.map +1 -1
  32. package/dist/DataViewFilters.js +87 -97
  33. package/dist/DataViewFilters.js.map +1 -1
  34. package/dist/DataViewSortButton.js +14 -18
  35. package/dist/DataViewSortButton.js.map +1 -1
  36. package/dist/DataViewToolbar.js +12 -14
  37. package/dist/DataViewToolbar.js.map +1 -1
  38. package/dist/DatePicker.js +2624 -2581
  39. package/dist/DatePicker.js.map +1 -1
  40. package/dist/DatePicker.vue.d.ts +19 -0
  41. package/dist/Dialog.js +6 -9
  42. package/dist/Dialog.js.map +1 -1
  43. package/dist/Dropdown.js +15 -20
  44. package/dist/Dropdown.js.map +1 -1
  45. package/dist/EmptyState.js +10 -13
  46. package/dist/EmptyState.js.map +1 -1
  47. package/dist/Field.js +3 -6
  48. package/dist/Field.js.map +1 -1
  49. package/dist/{Field.vue_vue_type_script_setup_true_lang-c864abd3.js → Field.vue_vue_type_script_setup_true_lang-475832fe.js} +2 -2
  50. package/dist/{Field.vue_vue_type_script_setup_true_lang-c864abd3.js.map → Field.vue_vue_type_script_setup_true_lang-475832fe.js.map} +1 -1
  51. package/dist/FileUpload.js +27 -30
  52. package/dist/FileUpload.js.map +1 -1
  53. package/dist/FilterChip.js +10 -13
  54. package/dist/FilterChip.js.map +1 -1
  55. package/dist/FilterDrawerItem.js +5 -8
  56. package/dist/FilterDrawerItem.js.map +1 -1
  57. package/dist/FilterDropdown.js +73 -88
  58. package/dist/FilterDropdown.js.map +1 -1
  59. package/dist/FilterSelect.js +15 -18
  60. package/dist/FilterSelect.js.map +1 -1
  61. package/dist/Filters.js +67 -78
  62. package/dist/Filters.js.map +1 -1
  63. package/dist/HttpError.js +4 -7
  64. package/dist/HttpError.js.map +1 -1
  65. package/dist/Icon.js +236 -14
  66. package/dist/Icon.js.map +1 -1
  67. package/dist/Icon.vue.d.ts +2 -2
  68. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js +11 -0
  69. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js.map +1 -0
  70. package/dist/IconLabel.js +4 -6
  71. package/dist/IconLabel.js.map +1 -1
  72. package/dist/Illustration.js +6 -8
  73. package/dist/Illustration.js.map +1 -1
  74. package/dist/Image.js +39 -49
  75. package/dist/Image.js.map +1 -1
  76. package/dist/InlineEdit.js +10 -12
  77. package/dist/InlineEdit.js.map +1 -1
  78. package/dist/Input.js +50 -55
  79. package/dist/Input.js.map +1 -1
  80. package/dist/InputOptions.js +20 -29
  81. package/dist/InputOptions.js.map +1 -1
  82. package/dist/Label.js +1 -4
  83. package/dist/Label.js.map +1 -1
  84. package/dist/LicenseChip.js +7 -9
  85. package/dist/LicenseChip.js.map +1 -1
  86. package/dist/ListItem.js +11 -13
  87. package/dist/ListItem.js.map +1 -1
  88. package/dist/ListView.js +47 -58
  89. package/dist/ListView.js.map +1 -1
  90. package/dist/Metric.js +43 -45
  91. package/dist/Metric.js.map +1 -1
  92. package/dist/Metric.vue.d.ts +24 -15
  93. package/dist/Modal.js +16 -19
  94. package/dist/Modal.js.map +1 -1
  95. package/dist/Modals.js +16 -26
  96. package/dist/Modals.js.map +1 -1
  97. package/dist/ModalsPlugin.js +12 -22
  98. package/dist/ModalsPlugin.js.map +1 -1
  99. package/dist/ObfuscateText.js +7 -9
  100. package/dist/ObfuscateText.js.map +1 -1
  101. package/dist/PageNavigation.js +25 -29
  102. package/dist/PageNavigation.js.map +1 -1
  103. package/dist/Paginate.js +29 -31
  104. package/dist/Paginate.js.map +1 -1
  105. package/dist/QuickAction.js +13 -15
  106. package/dist/QuickAction.js.map +1 -1
  107. package/dist/RadioGroup.js +86 -89
  108. package/dist/RadioGroup.js.map +1 -1
  109. package/dist/SearchBar.js +18 -20
  110. package/dist/SearchBar.js.map +1 -1
  111. package/dist/Select.js +13 -23
  112. package/dist/Select.js.map +1 -1
  113. package/dist/SelectStatus.js +26 -36
  114. package/dist/SelectStatus.js.map +1 -1
  115. package/dist/Step.js +19 -21
  116. package/dist/Step.js.map +1 -1
  117. package/dist/Switch.js +8 -10
  118. package/dist/Switch.js.map +1 -1
  119. package/dist/Tab.js +25 -30
  120. package/dist/Tab.js.map +1 -1
  121. package/dist/Table.js +19 -21
  122. package/dist/Table.js.map +1 -1
  123. package/dist/TableCell.js +21 -22
  124. package/dist/TableCell.js.map +1 -1
  125. package/dist/TableHeaderCell.js +4 -4
  126. package/dist/TableHeaderRow.js +7 -9
  127. package/dist/TableHeaderRow.js.map +1 -1
  128. package/dist/TableRow.js +22 -24
  129. package/dist/TableRow.js.map +1 -1
  130. package/dist/Tabs.js +11 -16
  131. package/dist/Tabs.js.map +1 -1
  132. package/dist/{Tabs.vue_vue_type_script_setup_true_lang-ba383fda.js → Tabs.vue_vue_type_script_setup_true_lang-aca4f8b8.js} +3 -3
  133. package/dist/{Tabs.vue_vue_type_script_setup_true_lang-ba383fda.js.map → Tabs.vue_vue_type_script_setup_true_lang-aca4f8b8.js.map} +1 -1
  134. package/dist/Textarea.js +10 -13
  135. package/dist/Textarea.js.map +1 -1
  136. package/dist/Toast.js +8 -10
  137. package/dist/Toast.js.map +1 -1
  138. package/dist/Toasts.js +14 -25
  139. package/dist/Toasts.js.map +1 -1
  140. package/dist/ToastsPlugin.js +14 -25
  141. package/dist/ToastsPlugin.js.map +1 -1
  142. package/dist/components.css +1 -1
  143. package/dist/index.js +53 -62
  144. package/dist/index.js.map +1 -1
  145. package/dist/locale.js +12 -15
  146. package/dist/locale.js.map +1 -1
  147. package/dist/{searchFuzzy-13c124f8.js → searchFuzzy-74a7de1c.js} +2 -2
  148. package/dist/{searchFuzzy-13c124f8.js.map → searchFuzzy-74a7de1c.js.map} +1 -1
  149. package/dist/storage.js +6 -11
  150. package/dist/storage.js.map +1 -1
  151. package/dist/tooltip.js +21 -26
  152. package/dist/tooltip.js.map +1 -1
  153. package/dist/useGoogleMaps.js +91 -226
  154. package/dist/useGoogleMaps.js.map +1 -1
  155. package/dist/useModals.js +21 -31
  156. package/dist/useModals.js.map +1 -1
  157. package/dist/useSearch.js +17 -22
  158. package/dist/useSearch.js.map +1 -1
  159. package/dist/useToasts.js +25 -36
  160. package/dist/useToasts.js.map +1 -1
  161. package/dist/useValidation.js +79 -108
  162. package/dist/useValidation.js.map +1 -1
  163. package/dist/utils/calculateElementOverflow.js +9 -14
  164. package/dist/utils/calculateElementOverflow.js.map +1 -1
  165. package/dist/utils/createQueryString.js +9 -15
  166. package/dist/utils/createQueryString.js.map +1 -1
  167. package/dist/utils/helpers.js +46 -59
  168. package/dist/utils/helpers.js.map +1 -1
  169. package/dist/utils/i18n.js +17 -20
  170. package/dist/utils/i18n.js.map +1 -1
  171. package/dist/utils/searchFuzzy.js +7 -12
  172. package/dist/utils/searchFuzzy.js.map +1 -1
  173. package/dist/utils/storage.js +10 -15
  174. package/dist/utils/storage.js.map +1 -1
  175. package/dist/viewable.js +26 -34
  176. package/dist/viewable.js.map +1 -1
  177. package/package.json +4 -6
  178. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-d2507af3.js +0 -243
  179. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-d2507af3.js.map +0 -1
  180. package/dist/_MapCache-65811284.js +0 -188
  181. package/dist/_MapCache-65811284.js.map +0 -1
  182. package/dist/_Uint8Array-06e4d083.js +0 -66
  183. package/dist/_Uint8Array-06e4d083.js.map +0 -1
  184. package/dist/_baseAssignValue-dd1499b4.js +0 -22
  185. package/dist/_baseAssignValue-dd1499b4.js.map +0 -1
  186. package/dist/_baseIsEqual-d594c87f.js +0 -171
  187. package/dist/_baseIsEqual-d594c87f.js.map +0 -1
  188. package/dist/_createCompounder-ae01a723.js +0 -245
  189. package/dist/_createCompounder-ae01a723.js.map +0 -1
  190. package/dist/_getAllKeys-5e735d41.js +0 -44
  191. package/dist/_getAllKeys-5e735d41.js.map +0 -1
  192. package/dist/_getPrototype-3e6fccd6.js +0 -7
  193. package/dist/_getPrototype-3e6fccd6.js.map +0 -1
  194. package/dist/_getTag-4db47fa6.js +0 -47
  195. package/dist/_getTag-4db47fa6.js.map +0 -1
  196. package/dist/_initCloneObject-161353b9.js +0 -88
  197. package/dist/_initCloneObject-161353b9.js.map +0 -1
  198. package/dist/_overArg-6d920d99.js +0 -9
  199. package/dist/_overArg-6d920d99.js.map +0 -1
  200. package/dist/capitalize-667d9f60.js +0 -42
  201. package/dist/capitalize-667d9f60.js.map +0 -1
  202. package/dist/cloneDeep-5bc375b0.js +0 -146
  203. package/dist/cloneDeep-5bc375b0.js.map +0 -1
  204. package/dist/debounce-6aca1ca9.js +0 -86
  205. package/dist/debounce-6aca1ca9.js.map +0 -1
  206. package/dist/get-27d90892.js +0 -66
  207. package/dist/get-27d90892.js.map +0 -1
  208. package/dist/identity-452d03fd.js +0 -20
  209. package/dist/identity-452d03fd.js.map +0 -1
  210. package/dist/isArrayLike-09233e52.js +0 -61
  211. package/dist/isArrayLike-09233e52.js.map +0 -1
  212. package/dist/isEmpty-2fbad344.js +0 -23
  213. package/dist/isEmpty-2fbad344.js.map +0 -1
  214. package/dist/isEqual-fca467fb.js +0 -8
  215. package/dist/isEqual-fca467fb.js.map +0 -1
  216. package/dist/isObjectLike-54341556.js +0 -39
  217. package/dist/isObjectLike-54341556.js.map +0 -1
  218. package/dist/isPlainObject-55c7f916.js +0 -16
  219. package/dist/isPlainObject-55c7f916.js.map +0 -1
  220. package/dist/merge-b14fad9d.js +0 -124
  221. package/dist/merge-b14fad9d.js.map +0 -1
  222. package/dist/toString-7d5bf363.js +0 -29
  223. package/dist/toString-7d5bf363.js.map +0 -1
  224. package/dist/uniqueId-847efe53.js +0 -10
  225. package/dist/uniqueId-847efe53.js.map +0 -1
@@ -1,29 +1,25 @@
1
1
  import { defineComponent as g, inject as y, openBlock as r, createBlock as n, withCtx as o, createVNode as i, createTextVNode as d, toDisplayString as l, unref as e, createElementVNode as c, createElementBlock as f, Fragment as w, renderList as D, normalizeClass as k, createCommentVNode as m } from "vue";
2
2
  import { t as S } from "./locale.js";
3
3
  import u from "./Button.js";
4
+ import "lodash-es/cloneDeep";
4
5
  import b from "./Icon.js";
5
6
  import "./Paginate.vue_used_vue_type_style_index_0_lang.module-e579235f.js";
6
7
  import { D as h } from "./DataView.vue_used_vue_type_style_index_0_lang.module-d878ca9a.js";
7
8
  import V from "./Dropdown.js";
8
9
  import v from "./IconLabel.js";
9
10
  import { _ as B } from "./_plugin-vue_export-helper-dad06003.js";
10
- import "./get-27d90892.js";
11
- import "./isObjectLike-54341556.js";
12
- import "./toString-7d5bf363.js";
13
- import "./_MapCache-65811284.js";
11
+ import "lodash-es/get";
14
12
  import "./Button.vue_used_vue_type_style_index_0_lang.module-b77978d6.js";
15
- import "./Icon.vue_used_vue_type_style_index_0_lang.module-d2507af3.js";
16
- import "./uniqueId-847efe53.js";
13
+ import "lodash-es/uniqueId";
17
14
  import "./index-79ce320f.js";
15
+ import "./Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js";
18
16
  import "./constants.js";
19
17
  import "./clickoutside.js";
20
18
  import "./utils/calculateElementOverflow.js";
21
19
  import "./utils/helpers.js";
22
- import "./capitalize-667d9f60.js";
23
- import "./_createCompounder-ae01a723.js";
24
- import "./isPlainObject-55c7f916.js";
25
- import "./_getPrototype-3e6fccd6.js";
26
- import "./_overArg-6d920d99.js";
20
+ import "lodash-es/camelCase";
21
+ import "lodash-es/isFinite";
22
+ import "lodash-es/isPlainObject";
27
23
  const I = {
28
24
  class: "dropdown__list",
29
25
  "data-test": "stash-data-view-sort-button|sort-menu"
@@ -33,11 +29,11 @@ const I = {
33
29
  sortOptions: { default: () => [] }
34
30
  },
35
31
  setup(C) {
36
- const p = C, { currentSortId: a, currentSortOrder: s, updateCurrentSort: _ } = y(
32
+ const _ = C, { currentSortId: a, currentSortOrder: s, updateCurrentSort: p } = y(
37
33
  h.key,
38
34
  h.defaults
39
35
  );
40
- return (T, L) => p.sortOptions.length ? (r(), n(V, {
36
+ return (T, L) => _.sortOptions.length ? (r(), n(V, {
41
37
  key: 0,
42
38
  align: "left",
43
39
  class: "stash-data-view-sort-button",
@@ -67,12 +63,12 @@ const I = {
67
63
  ]),
68
64
  default: o(() => [
69
65
  c("ul", I, [
70
- (r(!0), f(w, null, D(p.sortOptions, (t) => (r(), f(w, {
66
+ (r(!0), f(w, null, D(_.sortOptions, (t) => (r(), f(w, {
71
67
  key: t.id
72
68
  }, [
73
69
  c("li", {
74
70
  class: k(["dropdown__item rounded", { "is-selected": t.id === e(a) && e(s) === "asc" }]),
75
- onClick: () => e(_)(t.id, { sortOrder: "asc", shouldEmit: !0 })
71
+ onClick: () => e(p)(t.id, { sortOrder: "asc", shouldEmit: !0 })
76
72
  }, [
77
73
  i(u, {
78
74
  inline: "",
@@ -91,7 +87,7 @@ const I = {
91
87
  ], 10, E),
92
88
  c("li", {
93
89
  class: k(["dropdown__item rounded", { "is-selected": t.id === e(a) && e(s) === "desc" }]),
94
- onClick: () => e(_)(t.id, { sortOrder: "desc", shouldEmit: !0 })
90
+ onClick: () => e(p)(t.id, { sortOrder: "desc", shouldEmit: !0 })
95
91
  }, [
96
92
  i(u, {
97
93
  inline: "",
@@ -115,8 +111,8 @@ const I = {
115
111
  })) : m("", !0);
116
112
  }
117
113
  });
118
- const nt = /* @__PURE__ */ B(A, [["__scopeId", "data-v-1bb03502"]]);
114
+ const rt = /* @__PURE__ */ B(A, [["__scopeId", "data-v-1bb03502"]]);
119
115
  export {
120
- nt as default
116
+ rt as default
121
117
  };
122
118
  //# sourceMappingURL=DataViewSortButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataViewSortButton.js","sources":["../src/components/DataViewSortButton/DataViewSortButton.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import { inject } from 'vue';\n\n import { t } from '../../locale';\n import Button from '../Button/Button.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.vue';\n import Dropdown from '../Dropdown/Dropdown.vue';\n import Icon from '../Icon/Icon.vue';\n import IconLabel from '../IconLabel/IconLabel.vue';\n import { SortOption } from './DataViewSortButton.types';\n\n export interface DataViewToolbarProps {\n /**\n * An array of sort options to display in the dropdown.\n */\n sortOptions?: SortOption[];\n }\n\n const props = withDefaults(defineProps<DataViewToolbarProps>(), {\n sortOptions: () => [],\n });\n\n const { currentSortId, currentSortOrder, updateCurrentSort } = inject(\n DATA_VIEW_INJECTION.key,\n DATA_VIEW_INJECTION.defaults,\n );\n</script>\n\n<template>\n <Dropdown\n v-if=\"props.sortOptions.length\"\n align=\"left\"\n class=\"stash-data-view-sort-button\"\n data-test=\"stash-data-view-sort-button\"\n >\n <template #toggle=\"{ isActive, toggle }\">\n <Button\n icon-label\n :aria-expanded=\"isActive.toString()\"\n class=\"tw-text-blue\"\n data-test=\"stash-data-view-sort-button|sort-menu-button\"\n @click=\"toggle\"\n >\n <IconLabel icon=\"sort\" stacked>\n {{ t('ll.sort') }}\n </IconLabel>\n </Button>\n </template>\n <ul class=\"dropdown__list\" data-test=\"stash-data-view-sort-button|sort-menu\">\n <template v-for=\"sortOption in props.sortOptions\" :key=\"sortOption.id\">\n <li\n class=\"dropdown__item rounded\"\n :class=\"{ 'is-selected': sortOption.id === currentSortId && currentSortOrder === 'asc' }\"\n @click=\"() => updateCurrentSort(sortOption.id, { sortOrder: 'asc', shouldEmit: true })\"\n >\n <Button inline class=\"tw-h-9\">\n {{ sortOption.labelAsc }}\n <Icon\n v-if=\"sortOption.id === currentSortId && currentSortOrder === 'asc'\"\n name=\"check\"\n class=\"tw-text-blue tw-ml-auto\"\n />\n </Button>\n </li>\n <li\n class=\"dropdown__item rounded\"\n :class=\"{ 'is-selected': sortOption.id === currentSortId && currentSortOrder === 'desc' }\"\n @click=\"() => updateCurrentSort(sortOption.id, { sortOrder: 'desc', shouldEmit: true })\"\n >\n <Button inline class=\"tw-h-9\">\n {{ sortOption.labelDesc }}\n <Icon\n v-if=\"sortOption.id === currentSortId && currentSortOrder === 'desc'\"\n name=\"check\"\n class=\"tw-text-blue tw-ml-auto\"\n />\n </Button>\n </li>\n </template>\n </ul>\n </Dropdown>\n</template>\n\n<style scoped>\n .dropdown__item > button {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n</style>\n"],"names":["currentSortId","currentSortOrder","updateCurrentSort","inject","DATA_VIEW_INJECTION"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsBQ,EAAE,eAAAA,GAAe,kBAAAC,GAAkB,mBAAAC,EAAsB,IAAAC;AAAA,MAC7DC,EAAoB;AAAA,MACpBA,EAAoB;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"DataViewSortButton.js","sources":["../src/components/DataViewSortButton/DataViewSortButton.vue"],"sourcesContent":["<script lang=\"ts\" setup>\n import { inject } from 'vue';\n\n import { t } from '../../locale';\n import Button from '../Button/Button.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.vue';\n import Dropdown from '../Dropdown/Dropdown.vue';\n import Icon from '../Icon/Icon.vue';\n import IconLabel from '../IconLabel/IconLabel.vue';\n import { SortOption } from './DataViewSortButton.types';\n\n export interface DataViewToolbarProps {\n /**\n * An array of sort options to display in the dropdown.\n */\n sortOptions?: SortOption[];\n }\n\n const props = withDefaults(defineProps<DataViewToolbarProps>(), {\n sortOptions: () => [],\n });\n\n const { currentSortId, currentSortOrder, updateCurrentSort } = inject(\n DATA_VIEW_INJECTION.key,\n DATA_VIEW_INJECTION.defaults,\n );\n</script>\n\n<template>\n <Dropdown\n v-if=\"props.sortOptions.length\"\n align=\"left\"\n class=\"stash-data-view-sort-button\"\n data-test=\"stash-data-view-sort-button\"\n >\n <template #toggle=\"{ isActive, toggle }\">\n <Button\n icon-label\n :aria-expanded=\"isActive.toString()\"\n class=\"tw-text-blue\"\n data-test=\"stash-data-view-sort-button|sort-menu-button\"\n @click=\"toggle\"\n >\n <IconLabel icon=\"sort\" stacked>\n {{ t('ll.sort') }}\n </IconLabel>\n </Button>\n </template>\n <ul class=\"dropdown__list\" data-test=\"stash-data-view-sort-button|sort-menu\">\n <template v-for=\"sortOption in props.sortOptions\" :key=\"sortOption.id\">\n <li\n class=\"dropdown__item rounded\"\n :class=\"{ 'is-selected': sortOption.id === currentSortId && currentSortOrder === 'asc' }\"\n @click=\"() => updateCurrentSort(sortOption.id, { sortOrder: 'asc', shouldEmit: true })\"\n >\n <Button inline class=\"tw-h-9\">\n {{ sortOption.labelAsc }}\n <Icon\n v-if=\"sortOption.id === currentSortId && currentSortOrder === 'asc'\"\n name=\"check\"\n class=\"tw-text-blue tw-ml-auto\"\n />\n </Button>\n </li>\n <li\n class=\"dropdown__item rounded\"\n :class=\"{ 'is-selected': sortOption.id === currentSortId && currentSortOrder === 'desc' }\"\n @click=\"() => updateCurrentSort(sortOption.id, { sortOrder: 'desc', shouldEmit: true })\"\n >\n <Button inline class=\"tw-h-9\">\n {{ sortOption.labelDesc }}\n <Icon\n v-if=\"sortOption.id === currentSortId && currentSortOrder === 'desc'\"\n name=\"check\"\n class=\"tw-text-blue tw-ml-auto\"\n />\n </Button>\n </li>\n </template>\n </ul>\n </Dropdown>\n</template>\n\n<style scoped>\n .dropdown__item > button {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n</style>\n"],"names":["currentSortId","currentSortOrder","updateCurrentSort","inject","DATA_VIEW_INJECTION"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsBQ,EAAE,eAAAA,GAAe,kBAAAC,GAAkB,mBAAAC,EAAsB,IAAAC;AAAA,MAC7DC,EAAoB;AAAA,MACpBA,EAAoB;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,18 +1,16 @@
1
1
  import { defineComponent as D, useCssModule as N, inject as M, computed as b, openBlock as a, createElementBlock as s, normalizeClass as g, unref as t, createElementVNode as B, renderSlot as I, toDisplayString as T, createCommentVNode as d, Fragment as $, createVNode as r, withCtx as _ } from "vue";
2
2
  import { t as z } from "./locale.js";
3
3
  import h from "./Button.js";
4
+ import "lodash-es/cloneDeep";
4
5
  import x from "./Icon.js";
5
6
  import "./Paginate.vue_used_vue_type_style_index_0_lang.module-e579235f.js";
6
7
  import { D as y } from "./DataView.vue_used_vue_type_style_index_0_lang.module-d878ca9a.js";
7
8
  import { _ as j } from "./_plugin-vue_export-helper-dad06003.js";
8
- import "./get-27d90892.js";
9
- import "./isObjectLike-54341556.js";
10
- import "./toString-7d5bf363.js";
11
- import "./_MapCache-65811284.js";
9
+ import "lodash-es/get";
12
10
  import "./Button.vue_used_vue_type_style_index_0_lang.module-b77978d6.js";
13
- import "./Icon.vue_used_vue_type_style_index_0_lang.module-d2507af3.js";
14
- import "./uniqueId-847efe53.js";
11
+ import "lodash-es/uniqueId";
15
12
  import "./index-79ce320f.js";
13
+ import "./Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js";
16
14
  const A = {
17
15
  key: 0,
18
16
  class: "tw-flex tw-items-center"
@@ -29,10 +27,10 @@ const A = {
29
27
  const u = C, k = N(), {
30
28
  isWithinModule: n,
31
29
  variant: m,
32
- density: p,
30
+ density: c,
33
31
  currentPage: o,
34
32
  isPaginationEnabled: V,
35
- pageCount: c,
33
+ pageCount: p,
36
34
  pageSize: w,
37
35
  totalDataCount: f,
38
36
  goPrevPage: E,
@@ -47,8 +45,8 @@ const A = {
47
45
  "tw-rounded": v.value === "rounded",
48
46
  "tw-rounded-t": v.value === "rounded-top",
49
47
  "tw-mb-3": t(m) !== "table" && !t(n),
50
- "tw-px-0": t(p) === "compact",
51
- "lg:tw-px-3": t(p) === "comfortable"
48
+ "tw-px-0": t(c) === "compact",
49
+ "lg:tw-px-3": t(c) === "comfortable"
52
50
  }]),
53
51
  "data-test": "stash-data-view-toolbar"
54
52
  }, [
@@ -59,7 +57,7 @@ const A = {
59
57
  ], 2),
60
58
  t(V) ? (a(), s("div", A, [
61
59
  u.hidePageStats ? d("", !0) : (a(), s("span", W, T(S.value), 1)),
62
- t(c) > 1 ? (a(), s($, { key: 1 }, [
60
+ t(p) > 1 ? (a(), s($, { key: 1 }, [
63
61
  r(h, {
64
62
  icon: "",
65
63
  class: "tw-h-9 tw-w-9 tw-p-1.5",
@@ -76,7 +74,7 @@ const A = {
76
74
  icon: "",
77
75
  class: "tw-h-9 tw-w-9 tw-p-1.5",
78
76
  "data-test": "button|next-page",
79
- disabled: t(o) === t(c),
77
+ disabled: t(o) === t(p),
80
78
  onClick: e[1] || (e[1] = (i) => t(P)({ shouldEmit: !0 }))
81
79
  }, {
82
80
  default: _(() => [
@@ -92,8 +90,8 @@ const A = {
92
90
  "default-slot": "_default-slot_zx9nb_2"
93
91
  }, O = {
94
92
  $style: J
95
- }, st = /* @__PURE__ */ j(F, [["__cssModules", O]]);
93
+ }, ot = /* @__PURE__ */ j(F, [["__cssModules", O]]);
96
94
  export {
97
- st as default
95
+ ot as default
98
96
  };
99
97
  //# sourceMappingURL=DataViewToolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataViewToolbar.js","sources":["../src/components/DataViewToolbar/DataViewToolbar.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { computed, inject, useCssModule } from 'vue';\n\n import { t } from '../../locale';\n import Button from '../Button/Button.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.vue';\n import Icon from '../Icon/Icon.vue';\n import { ToolbarRadiuses } from './DataViewToolbar.types';\n\n export interface DataViewToolbarProps {\n /**\n * Hides the page statistics (ex: \"1 - 12 of 20\") in the toolbar\n */\n hidePageStats?: boolean;\n\n /**\n * Controls the corners of DataViewToolbar with the \"border-radius\" CSS property. The default value is \"rounded\".\n */\n radius?: ToolbarRadiuses;\n }\n\n const props = withDefaults(defineProps<DataViewToolbarProps>(), {\n hidePageStats: false,\n radius: 'rounded',\n });\n const classes = useCssModule();\n\n const {\n isWithinModule,\n variant: dataViewVariant,\n density,\n currentPage,\n isPaginationEnabled,\n pageCount,\n pageSize,\n totalDataCount,\n goPrevPage,\n goNextPage,\n } = inject(DATA_VIEW_INJECTION.key, DATA_VIEW_INJECTION.defaults);\n\n const computedRadius = computed<ToolbarRadiuses>(() => {\n if (isWithinModule.value) {\n return 'none';\n }\n\n if (dataViewVariant.value === 'table') {\n return 'rounded-top';\n }\n\n return props.radius;\n });\n\n // #region pagination\n const pageStats = computed(() => {\n const from = pageSize.value * (currentPage.value - 1) + 1;\n const to = Math.min(pageSize.value * currentPage.value, totalDataCount.value);\n const total = totalDataCount.value;\n\n return t('ll.pageStats', { from, to, total });\n });\n // #endregion pagination\n</script>\n\n<template>\n <div\n class=\"stash-data-view-toolbar tw-flex tw-justify-between tw-items-center tw-bg-white tw-py-1.5 tw-min-h-[3.75rem]\"\n :class=\"{\n 'tw-border-t tw-border-ice-200': isWithinModule,\n 'tw-rounded': computedRadius === 'rounded',\n 'tw-rounded-t': computedRadius === 'rounded-top',\n 'tw-mb-3': dataViewVariant !== 'table' && !isWithinModule,\n 'tw-px-0': density === 'compact',\n 'lg:tw-px-3': density === 'comfortable',\n }\"\n data-test=\"stash-data-view-toolbar\"\n >\n <div class=\"tw-flex tw-items-center\" :class=\"classes['default-slot']\">\n <!-- @slot default -->\n <slot></slot>\n </div>\n\n <!-- Pagination -->\n <div v-if=\"isPaginationEnabled\" class=\"tw-flex tw-items-center\">\n <span v-if=\"!props.hidePageStats\" class=\"tw-text-xs tw-mr-1.5\">\n {{ pageStats }}\n </span>\n <template v-if=\"pageCount > 1\">\n <Button\n icon\n class=\"tw-h-9 tw-w-9 tw-p-1.5\"\n data-test=\"button|prev-page\"\n :disabled=\"currentPage === 1\"\n @click=\"goPrevPage({ shouldEmit: true })\"\n >\n <Icon name=\"chevron-left\" />\n </Button>\n <Button\n icon\n class=\"tw-h-9 tw-w-9 tw-p-1.5\"\n data-test=\"button|next-page\"\n :disabled=\"currentPage === pageCount\"\n @click=\"goNextPage({ shouldEmit: true })\"\n >\n <Icon name=\"chevron-right\" />\n </Button>\n </template>\n </div>\n </div>\n</template>\n\n<style module>\n .default-slot > *:not(:last-of-type) {\n margin-right: 0.5rem;\n }\n</style>\n"],"names":["classes","useCssModule","isWithinModule","dataViewVariant","density","currentPage","isPaginationEnabled","pageCount","pageSize","totalDataCount","goPrevPage","goNextPage","inject","DATA_VIEW_INJECTION","computedRadius","computed","props","pageStats","from","to","total","t"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyBQA,IAAUC,KAEV;AAAA,MACJ,gBAAAC;AAAA,MACA,SAASC;AAAA,MACT,SAAAC;AAAA,MACA,aAAAC;AAAA,MACA,qBAAAC;AAAA,MACA,WAAAC;AAAA,MACA,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,YAAAC;AAAA,MACA,YAAAC;AAAA,IACE,IAAAC,EAAOC,EAAoB,KAAKA,EAAoB,QAAQ,GAE1DC,IAAiBC,EAA0B,MAC3Cb,EAAe,QACV,SAGLC,EAAgB,UAAU,UACrB,gBAGFa,EAAM,MACd,GAGKC,IAAYF,EAAS,MAAM;AAC/B,YAAMG,IAAOV,EAAS,SAASH,EAAY,QAAQ,KAAK,GAClDc,IAAK,KAAK,IAAIX,EAAS,QAAQH,EAAY,OAAOI,EAAe,KAAK,GACtEW,IAAQX,EAAe;AAE7B,aAAOY,EAAE,gBAAgB,EAAE,MAAAH,GAAM,IAAAC,GAAI,OAAAC,GAAO;AAAA,IAAA,CAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"DataViewToolbar.js","sources":["../src/components/DataViewToolbar/DataViewToolbar.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { computed, inject, useCssModule } from 'vue';\n\n import { t } from '../../locale';\n import Button from '../Button/Button.vue';\n import { DATA_VIEW_INJECTION } from '../DataView/DataView.vue';\n import Icon from '../Icon/Icon.vue';\n import { ToolbarRadiuses } from './DataViewToolbar.types';\n\n export interface DataViewToolbarProps {\n /**\n * Hides the page statistics (ex: \"1 - 12 of 20\") in the toolbar\n */\n hidePageStats?: boolean;\n\n /**\n * Controls the corners of DataViewToolbar with the \"border-radius\" CSS property. The default value is \"rounded\".\n */\n radius?: ToolbarRadiuses;\n }\n\n const props = withDefaults(defineProps<DataViewToolbarProps>(), {\n hidePageStats: false,\n radius: 'rounded',\n });\n const classes = useCssModule();\n\n const {\n isWithinModule,\n variant: dataViewVariant,\n density,\n currentPage,\n isPaginationEnabled,\n pageCount,\n pageSize,\n totalDataCount,\n goPrevPage,\n goNextPage,\n } = inject(DATA_VIEW_INJECTION.key, DATA_VIEW_INJECTION.defaults);\n\n const computedRadius = computed<ToolbarRadiuses>(() => {\n if (isWithinModule.value) {\n return 'none';\n }\n\n if (dataViewVariant.value === 'table') {\n return 'rounded-top';\n }\n\n return props.radius;\n });\n\n // #region pagination\n const pageStats = computed(() => {\n const from = pageSize.value * (currentPage.value - 1) + 1;\n const to = Math.min(pageSize.value * currentPage.value, totalDataCount.value);\n const total = totalDataCount.value;\n\n return t('ll.pageStats', { from, to, total });\n });\n // #endregion pagination\n</script>\n\n<template>\n <div\n class=\"stash-data-view-toolbar tw-flex tw-justify-between tw-items-center tw-bg-white tw-py-1.5 tw-min-h-[3.75rem]\"\n :class=\"{\n 'tw-border-t tw-border-ice-200': isWithinModule,\n 'tw-rounded': computedRadius === 'rounded',\n 'tw-rounded-t': computedRadius === 'rounded-top',\n 'tw-mb-3': dataViewVariant !== 'table' && !isWithinModule,\n 'tw-px-0': density === 'compact',\n 'lg:tw-px-3': density === 'comfortable',\n }\"\n data-test=\"stash-data-view-toolbar\"\n >\n <div class=\"tw-flex tw-items-center\" :class=\"classes['default-slot']\">\n <!-- @slot default -->\n <slot></slot>\n </div>\n\n <!-- Pagination -->\n <div v-if=\"isPaginationEnabled\" class=\"tw-flex tw-items-center\">\n <span v-if=\"!props.hidePageStats\" class=\"tw-text-xs tw-mr-1.5\">\n {{ pageStats }}\n </span>\n <template v-if=\"pageCount > 1\">\n <Button\n icon\n class=\"tw-h-9 tw-w-9 tw-p-1.5\"\n data-test=\"button|prev-page\"\n :disabled=\"currentPage === 1\"\n @click=\"goPrevPage({ shouldEmit: true })\"\n >\n <Icon name=\"chevron-left\" />\n </Button>\n <Button\n icon\n class=\"tw-h-9 tw-w-9 tw-p-1.5\"\n data-test=\"button|next-page\"\n :disabled=\"currentPage === pageCount\"\n @click=\"goNextPage({ shouldEmit: true })\"\n >\n <Icon name=\"chevron-right\" />\n </Button>\n </template>\n </div>\n </div>\n</template>\n\n<style module>\n .default-slot > *:not(:last-of-type) {\n margin-right: 0.5rem;\n }\n</style>\n"],"names":["classes","useCssModule","isWithinModule","dataViewVariant","density","currentPage","isPaginationEnabled","pageCount","pageSize","totalDataCount","goPrevPage","goNextPage","inject","DATA_VIEW_INJECTION","computedRadius","computed","props","pageStats","from","to","total","t"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;iBAyBQA,IAAUC,KAEV;AAAA,MACJ,gBAAAC;AAAA,MACA,SAASC;AAAA,MACT,SAAAC;AAAA,MACA,aAAAC;AAAA,MACA,qBAAAC;AAAA,MACA,WAAAC;AAAA,MACA,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,YAAAC;AAAA,MACA,YAAAC;AAAA,IACE,IAAAC,EAAOC,EAAoB,KAAKA,EAAoB,QAAQ,GAE1DC,IAAiBC,EAA0B,MAC3Cb,EAAe,QACV,SAGLC,EAAgB,UAAU,UACrB,gBAGFa,EAAM,MACd,GAGKC,IAAYF,EAAS,MAAM;AAC/B,YAAMG,IAAOV,EAAS,SAASH,EAAY,QAAQ,KAAK,GAClDc,IAAK,KAAK,IAAIX,EAAS,QAAQH,EAAY,OAAOI,EAAe,KAAK,GACtEW,IAAQX,EAAe;AAE7B,aAAOY,EAAE,gBAAgB,EAAE,MAAAH,GAAM,IAAAC,GAAI,OAAAC,GAAO;AAAA,IAAA,CAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}