@leaflink/stash 42.5.0 → 42.5.2

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 (227) hide show
  1. package/README.md +24 -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 +11 -13
  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 +8 -18
  39. package/dist/DatePicker.js.map +1 -1
  40. package/dist/Dialog.js +6 -9
  41. package/dist/Dialog.js.map +1 -1
  42. package/dist/Dropdown.js +15 -20
  43. package/dist/Dropdown.js.map +1 -1
  44. package/dist/EmptyState.js +10 -13
  45. package/dist/EmptyState.js.map +1 -1
  46. package/dist/Field.js +3 -6
  47. package/dist/Field.js.map +1 -1
  48. package/dist/{Field.vue_vue_type_script_setup_true_lang-c864abd3.js → Field.vue_vue_type_script_setup_true_lang-475832fe.js} +2 -2
  49. 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
  50. package/dist/FileUpload.js +27 -30
  51. package/dist/FileUpload.js.map +1 -1
  52. package/dist/FilterChip.js +10 -13
  53. package/dist/FilterChip.js.map +1 -1
  54. package/dist/FilterDrawerItem.js +5 -8
  55. package/dist/FilterDrawerItem.js.map +1 -1
  56. package/dist/FilterDropdown.js +73 -88
  57. package/dist/FilterDropdown.js.map +1 -1
  58. package/dist/FilterSelect.js +15 -18
  59. package/dist/FilterSelect.js.map +1 -1
  60. package/dist/Filters.js +67 -78
  61. package/dist/Filters.js.map +1 -1
  62. package/dist/HttpError.js +4 -7
  63. package/dist/HttpError.js.map +1 -1
  64. package/dist/Icon.js +236 -14
  65. package/dist/Icon.js.map +1 -1
  66. package/dist/Icon.vue.d.ts +2 -2
  67. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js +11 -0
  68. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-eb359559.js.map +1 -0
  69. package/dist/IconLabel.js +4 -6
  70. package/dist/IconLabel.js.map +1 -1
  71. package/dist/Illustration.js +6 -8
  72. package/dist/Illustration.js.map +1 -1
  73. package/dist/Image.js +39 -49
  74. package/dist/Image.js.map +1 -1
  75. package/dist/InlineEdit.js +10 -12
  76. package/dist/InlineEdit.js.map +1 -1
  77. package/dist/Input.js +50 -55
  78. package/dist/Input.js.map +1 -1
  79. package/dist/InputOptions.js +20 -29
  80. package/dist/InputOptions.js.map +1 -1
  81. package/dist/Label.js +1 -4
  82. package/dist/Label.js.map +1 -1
  83. package/dist/LicenseChip.js +7 -9
  84. package/dist/LicenseChip.js.map +1 -1
  85. package/dist/ListItem.js +11 -13
  86. package/dist/ListItem.js.map +1 -1
  87. package/dist/ListView.js +47 -58
  88. package/dist/ListView.js.map +1 -1
  89. package/dist/Metric.js +6 -8
  90. package/dist/Metric.js.map +1 -1
  91. package/dist/Modal.js +16 -19
  92. package/dist/Modal.js.map +1 -1
  93. package/dist/Modals.js +16 -26
  94. package/dist/Modals.js.map +1 -1
  95. package/dist/ModalsPlugin.js +12 -22
  96. package/dist/ModalsPlugin.js.map +1 -1
  97. package/dist/ObfuscateText.js +7 -9
  98. package/dist/ObfuscateText.js.map +1 -1
  99. package/dist/PageNavigation.js +25 -29
  100. package/dist/PageNavigation.js.map +1 -1
  101. package/dist/Paginate.js +29 -31
  102. package/dist/Paginate.js.map +1 -1
  103. package/dist/QuickAction.js +13 -15
  104. package/dist/QuickAction.js.map +1 -1
  105. package/dist/RadioGroup.js +86 -89
  106. package/dist/RadioGroup.js.map +1 -1
  107. package/dist/SearchBar.js +18 -20
  108. package/dist/SearchBar.js.map +1 -1
  109. package/dist/Select.js +13 -23
  110. package/dist/Select.js.map +1 -1
  111. package/dist/SelectStatus.js +26 -36
  112. package/dist/SelectStatus.js.map +1 -1
  113. package/dist/Step.js +19 -21
  114. package/dist/Step.js.map +1 -1
  115. package/dist/Switch.js +8 -10
  116. package/dist/Switch.js.map +1 -1
  117. package/dist/Tab.js +25 -30
  118. package/dist/Tab.js.map +1 -1
  119. package/dist/Table.js +19 -21
  120. package/dist/Table.js.map +1 -1
  121. package/dist/TableCell.js +21 -22
  122. package/dist/TableCell.js.map +1 -1
  123. package/dist/TableHeaderCell.js +4 -4
  124. package/dist/TableHeaderRow.js +7 -9
  125. package/dist/TableHeaderRow.js.map +1 -1
  126. package/dist/TableRow.js +22 -24
  127. package/dist/TableRow.js.map +1 -1
  128. package/dist/Tabs.js +11 -16
  129. package/dist/Tabs.js.map +1 -1
  130. package/dist/{Tabs.vue_vue_type_script_setup_true_lang-ba383fda.js → Tabs.vue_vue_type_script_setup_true_lang-aca4f8b8.js} +3 -3
  131. 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
  132. package/dist/Textarea.js +10 -13
  133. package/dist/Textarea.js.map +1 -1
  134. package/dist/Toast.js +8 -10
  135. package/dist/Toast.js.map +1 -1
  136. package/dist/Toasts.js +14 -25
  137. package/dist/Toasts.js.map +1 -1
  138. package/dist/ToastsPlugin.js +14 -25
  139. package/dist/ToastsPlugin.js.map +1 -1
  140. package/dist/components.css +1 -1
  141. package/dist/index.js +53 -62
  142. package/dist/index.js.map +1 -1
  143. package/dist/locale.js +12 -15
  144. package/dist/locale.js.map +1 -1
  145. package/dist/{searchFuzzy-13c124f8.js → searchFuzzy-74a7de1c.js} +2 -2
  146. package/dist/{searchFuzzy-13c124f8.js.map → searchFuzzy-74a7de1c.js.map} +1 -1
  147. package/dist/storage.js +6 -11
  148. package/dist/storage.js.map +1 -1
  149. package/dist/tailwind-base.d.ts +1 -0
  150. package/dist/tailwind-base.js +1 -0
  151. package/dist/tailwind-base.js.map +1 -1
  152. package/dist/tooltip.js +21 -26
  153. package/dist/tooltip.js.map +1 -1
  154. package/dist/useGoogleMaps.js +91 -226
  155. package/dist/useGoogleMaps.js.map +1 -1
  156. package/dist/useModals.js +21 -31
  157. package/dist/useModals.js.map +1 -1
  158. package/dist/useSearch.js +17 -22
  159. package/dist/useSearch.js.map +1 -1
  160. package/dist/useToasts.js +25 -36
  161. package/dist/useToasts.js.map +1 -1
  162. package/dist/useValidation.js +79 -108
  163. package/dist/useValidation.js.map +1 -1
  164. package/dist/utils/calculateElementOverflow.js +9 -14
  165. package/dist/utils/calculateElementOverflow.js.map +1 -1
  166. package/dist/utils/createQueryString.js +9 -15
  167. package/dist/utils/createQueryString.js.map +1 -1
  168. package/dist/utils/helpers.js +46 -59
  169. package/dist/utils/helpers.js.map +1 -1
  170. package/dist/utils/i18n.js +17 -20
  171. package/dist/utils/i18n.js.map +1 -1
  172. package/dist/utils/searchFuzzy.js +7 -12
  173. package/dist/utils/searchFuzzy.js.map +1 -1
  174. package/dist/utils/storage.js +10 -15
  175. package/dist/utils/storage.js.map +1 -1
  176. package/dist/viewable.js +26 -34
  177. package/dist/viewable.js.map +1 -1
  178. package/package.json +2 -4
  179. package/tailwind-base.ts +1 -0
  180. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-d2507af3.js +0 -243
  181. package/dist/Icon.vue_used_vue_type_style_index_0_lang.module-d2507af3.js.map +0 -1
  182. package/dist/_MapCache-65811284.js +0 -188
  183. package/dist/_MapCache-65811284.js.map +0 -1
  184. package/dist/_Uint8Array-06e4d083.js +0 -66
  185. package/dist/_Uint8Array-06e4d083.js.map +0 -1
  186. package/dist/_baseAssignValue-dd1499b4.js +0 -22
  187. package/dist/_baseAssignValue-dd1499b4.js.map +0 -1
  188. package/dist/_baseIsEqual-d594c87f.js +0 -171
  189. package/dist/_baseIsEqual-d594c87f.js.map +0 -1
  190. package/dist/_createCompounder-ae01a723.js +0 -245
  191. package/dist/_createCompounder-ae01a723.js.map +0 -1
  192. package/dist/_getAllKeys-5e735d41.js +0 -44
  193. package/dist/_getAllKeys-5e735d41.js.map +0 -1
  194. package/dist/_getPrototype-3e6fccd6.js +0 -7
  195. package/dist/_getPrototype-3e6fccd6.js.map +0 -1
  196. package/dist/_getTag-4db47fa6.js +0 -47
  197. package/dist/_getTag-4db47fa6.js.map +0 -1
  198. package/dist/_initCloneObject-161353b9.js +0 -88
  199. package/dist/_initCloneObject-161353b9.js.map +0 -1
  200. package/dist/_overArg-6d920d99.js +0 -9
  201. package/dist/_overArg-6d920d99.js.map +0 -1
  202. package/dist/capitalize-667d9f60.js +0 -42
  203. package/dist/capitalize-667d9f60.js.map +0 -1
  204. package/dist/cloneDeep-5bc375b0.js +0 -146
  205. package/dist/cloneDeep-5bc375b0.js.map +0 -1
  206. package/dist/debounce-6aca1ca9.js +0 -86
  207. package/dist/debounce-6aca1ca9.js.map +0 -1
  208. package/dist/get-27d90892.js +0 -66
  209. package/dist/get-27d90892.js.map +0 -1
  210. package/dist/identity-452d03fd.js +0 -20
  211. package/dist/identity-452d03fd.js.map +0 -1
  212. package/dist/isArrayLike-09233e52.js +0 -61
  213. package/dist/isArrayLike-09233e52.js.map +0 -1
  214. package/dist/isEmpty-2fbad344.js +0 -23
  215. package/dist/isEmpty-2fbad344.js.map +0 -1
  216. package/dist/isEqual-fca467fb.js +0 -8
  217. package/dist/isEqual-fca467fb.js.map +0 -1
  218. package/dist/isObjectLike-54341556.js +0 -39
  219. package/dist/isObjectLike-54341556.js.map +0 -1
  220. package/dist/isPlainObject-55c7f916.js +0 -16
  221. package/dist/isPlainObject-55c7f916.js.map +0 -1
  222. package/dist/merge-b14fad9d.js +0 -124
  223. package/dist/merge-b14fad9d.js.map +0 -1
  224. package/dist/toString-7d5bf363.js +0 -29
  225. package/dist/toString-7d5bf363.js.map +0 -1
  226. package/dist/uniqueId-847efe53.js +0 -10
  227. package/dist/uniqueId-847efe53.js.map +0 -1
package/dist/useModals.js CHANGED
@@ -1,49 +1,39 @@
1
- import { m as u } from "./merge-b14fad9d.js";
2
- import { ref as c, reactive as f, readonly as m, markRaw as a } from "vue";
3
- import "./_Uint8Array-06e4d083.js";
4
- import "./isArrayLike-09233e52.js";
5
- import "./isObjectLike-54341556.js";
6
- import "./_MapCache-65811284.js";
7
- import "./_baseAssignValue-dd1499b4.js";
8
- import "./identity-452d03fd.js";
9
- import "./_initCloneObject-161353b9.js";
10
- import "./_getPrototype-3e6fccd6.js";
11
- import "./_overArg-6d920d99.js";
12
- import "./isPlainObject-55c7f916.js";
13
- const t = c([]);
14
- function L() {
1
+ import c from "lodash-es/merge";
2
+ import { ref as f, reactive as p, readonly as a, markRaw as l } from "vue";
3
+ const n = f([]);
4
+ function D() {
15
5
  function i(e) {
16
- !e.name && e.component.name && (e.name = e.component.name), e.component = a(e.component);
17
- const o = {
6
+ !e.name && e.component.name && (e.name = e.component.name), e.component = l(e.component);
7
+ const t = {
18
8
  disableDefaultListeners: !1
19
9
  };
20
- e.options = u({}, o, e.options), t.value.push(e);
10
+ e.options = c({}, t, e.options), n.value.push(e);
21
11
  }
22
- function r({ index: e, name: o } = {}) {
23
- if (e === void 0 && !o) {
24
- t.value.pop();
12
+ function r({ index: e, name: t } = {}) {
13
+ if (e === void 0 && !t) {
14
+ n.value.pop();
25
15
  return;
26
16
  }
27
17
  if (e !== void 0) {
28
- t.value.splice(e, 1);
18
+ n.value.splice(e, 1);
29
19
  return;
30
20
  }
31
- if (o) {
32
- const n = t.value.findIndex((s) => s.name === o);
33
- if (n === -1)
21
+ if (t) {
22
+ const o = n.value.findIndex((s) => s.name === t);
23
+ if (o === -1)
34
24
  return;
35
- t.value.splice(n, 1);
25
+ n.value.splice(o, 1);
36
26
  return;
37
27
  }
38
28
  }
39
- function p() {
40
- t.value = [];
29
+ function u() {
30
+ n.value = [];
41
31
  }
42
- return f({
32
+ return p({
43
33
  /**
44
34
  * The list of modals that are currently open.
45
35
  */
46
- active: m(t),
36
+ active: a(n),
47
37
  /**
48
38
  * Opens the given modal.
49
39
  */
@@ -58,10 +48,10 @@ function L() {
58
48
  /**
59
49
  * Closes all active/open modals.
60
50
  */
61
- closeAll: p
51
+ closeAll: u
62
52
  });
63
53
  }
64
54
  export {
65
- L as default
55
+ D as default
66
56
  };
67
57
  //# sourceMappingURL=useModals.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useModals.js","sources":["../src/composables/useModals/useModals.ts"],"sourcesContent":["import merge from 'lodash-es/merge';\nimport { Component, markRaw, reactive, readonly, ref } from 'vue';\n\n// Utility type that maps each property of T to unknown, making it compatible with Record<string, unknown>\n// this ensures that the attributes property of the Modal interface can be used with custom types defined downstream\n// while still being compatible with the Record<string, unknown> type\ntype ToRecord<T> = {\n [P in keyof T]: T[P];\n};\n\n// #region modal-interface\nexport interface Modal<TAttributes = Record<string, unknown>> {\n /**\n * Import the modal that you want to use in your component,\n * then pass that to the composable\n */\n component: Component;\n\n /**\n * Optional identifier used to close a modal. The default value is `component.name` (if defined).\n */\n name?: string;\n\n /**\n * Props and listeners to passed through.\n *\n * Listeners need to be formatted as `onEventName`\n */\n attributes?: ToRecord<TAttributes>;\n\n /**\n * Dyanmic slots that you want rendered in the format of\n * { default: 'my slot content' }\n *\n * The Modals component which renders this list passes the value for slots through\n * a html sanitizer to avoid XSS attacks\n */\n slots?: Record<string, string>;\n\n /**\n * Custom options to use for the given modal.\n *\n * If options are not passed in, then useModals will set the following values as defaults\n *\n * {\n * disableDefaultListeners: false\n * }\n */\n options?: {\n disableDefaultListeners?: boolean;\n };\n}\n// #endregion modal-interface\n\ninterface CloseArgs {\n index?: number;\n name?: string;\n}\n\nconst active = ref<Modal[]>([]);\n\nexport default function useModals() {\n // T is the custom interface of the attributes that are passed to the modal\n function open<T>(modal: Modal<T>) {\n if (!modal.name && modal.component.name) {\n modal.name = modal.component.name;\n }\n\n //Prevent vue from making the entire component passed in reactive to avoid unnecessary performance overhead\n modal.component = markRaw(modal.component);\n\n const optionsDefaults: Modal['options'] = {\n disableDefaultListeners: false,\n };\n\n modal.options = merge({}, optionsDefaults, modal.options);\n\n active.value.push(modal);\n }\n\n function close({ index, name }: CloseArgs = {}) {\n if (index === undefined && !name) {\n active.value.pop();\n return;\n }\n\n if (index !== undefined) {\n active.value.splice(index, 1);\n return;\n }\n\n if (name) {\n const index = active.value.findIndex((modal) => modal.name === name);\n\n if (index === -1) return;\n\n active.value.splice(index, 1);\n return;\n }\n }\n\n function closeAll() {\n active.value = [];\n }\n\n return reactive({\n /**\n * The list of modals that are currently open.\n */\n active: readonly(active),\n\n /**\n * Opens the given modal.\n */\n open,\n\n /**\n * Closes a modal.\n * If no arguments are passed, then the top-most modal is closed.\n * If an index is passed, then the modal at that index is closed.\n * If a name is passed, then the modal with that name is closed.\n */\n close,\n\n /**\n * Closes all active/open modals.\n */\n closeAll,\n });\n}\n"],"names":["active","ref","useModals","open","modal","markRaw","optionsDefaults","merge","close","index","name","closeAll","reactive","readonly"],"mappings":";;;;;;;;;;;;AA2DA,MAAMA,IAASC,EAAa,CAAA,CAAE;AAE9B,SAAwBC,IAAY;AAElC,WAASC,EAAQC,GAAiB;AAChC,IAAI,CAACA,EAAM,QAAQA,EAAM,UAAU,SAC3BA,EAAA,OAAOA,EAAM,UAAU,OAIzBA,EAAA,YAAYC,EAAQD,EAAM,SAAS;AAEzC,UAAME,IAAoC;AAAA,MACxC,yBAAyB;AAAA,IAAA;AAG3B,IAAAF,EAAM,UAAUG,EAAM,CAAA,GAAID,GAAiBF,EAAM,OAAO,GAEjDJ,EAAA,MAAM,KAAKI,CAAK;AAAA,EACzB;AAEA,WAASI,EAAM,EAAE,OAAAC,GAAO,MAAAC,EAAK,IAAe,CAAA,GAAI;AAC1C,QAAAD,MAAU,UAAa,CAACC,GAAM;AAChC,MAAAV,EAAO,MAAM;AACb;AAAA,IACF;AAEA,QAAIS,MAAU,QAAW;AAChB,MAAAT,EAAA,MAAM,OAAOS,GAAO,CAAC;AAC5B;AAAA,IACF;AAEA,QAAIC,GAAM;AACFD,YAAAA,IAAQT,EAAO,MAAM,UAAU,CAACI,MAAUA,EAAM,SAASM,CAAI;AAEnE,UAAID,MAAU;AAAI;AAEX,MAAAT,EAAA,MAAM,OAAOS,GAAO,CAAC;AAC5B;AAAA,IACF;AAAA,EACF;AAEA,WAASE,IAAW;AAClB,IAAAX,EAAO,QAAQ;EACjB;AAEA,SAAOY,EAAS;AAAA;AAAA;AAAA;AAAA,IAId,QAAQC,EAASb,CAAM;AAAA;AAAA;AAAA;AAAA,IAKvB,MAAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,OAAAK;AAAA;AAAA;AAAA;AAAA,IAKA,UAAAG;AAAA,EAAA,CACD;AACH;"}
1
+ {"version":3,"file":"useModals.js","sources":["../src/composables/useModals/useModals.ts"],"sourcesContent":["import merge from 'lodash-es/merge';\nimport { Component, markRaw, reactive, readonly, ref } from 'vue';\n\n// Utility type that maps each property of T to unknown, making it compatible with Record<string, unknown>\n// this ensures that the attributes property of the Modal interface can be used with custom types defined downstream\n// while still being compatible with the Record<string, unknown> type\ntype ToRecord<T> = {\n [P in keyof T]: T[P];\n};\n\n// #region modal-interface\nexport interface Modal<TAttributes = Record<string, unknown>> {\n /**\n * Import the modal that you want to use in your component,\n * then pass that to the composable\n */\n component: Component;\n\n /**\n * Optional identifier used to close a modal. The default value is `component.name` (if defined).\n */\n name?: string;\n\n /**\n * Props and listeners to passed through.\n *\n * Listeners need to be formatted as `onEventName`\n */\n attributes?: ToRecord<TAttributes>;\n\n /**\n * Dyanmic slots that you want rendered in the format of\n * { default: 'my slot content' }\n *\n * The Modals component which renders this list passes the value for slots through\n * a html sanitizer to avoid XSS attacks\n */\n slots?: Record<string, string>;\n\n /**\n * Custom options to use for the given modal.\n *\n * If options are not passed in, then useModals will set the following values as defaults\n *\n * {\n * disableDefaultListeners: false\n * }\n */\n options?: {\n disableDefaultListeners?: boolean;\n };\n}\n// #endregion modal-interface\n\ninterface CloseArgs {\n index?: number;\n name?: string;\n}\n\nconst active = ref<Modal[]>([]);\n\nexport default function useModals() {\n // T is the custom interface of the attributes that are passed to the modal\n function open<T>(modal: Modal<T>) {\n if (!modal.name && modal.component.name) {\n modal.name = modal.component.name;\n }\n\n //Prevent vue from making the entire component passed in reactive to avoid unnecessary performance overhead\n modal.component = markRaw(modal.component);\n\n const optionsDefaults: Modal['options'] = {\n disableDefaultListeners: false,\n };\n\n modal.options = merge({}, optionsDefaults, modal.options);\n\n active.value.push(modal);\n }\n\n function close({ index, name }: CloseArgs = {}) {\n if (index === undefined && !name) {\n active.value.pop();\n return;\n }\n\n if (index !== undefined) {\n active.value.splice(index, 1);\n return;\n }\n\n if (name) {\n const index = active.value.findIndex((modal) => modal.name === name);\n\n if (index === -1) return;\n\n active.value.splice(index, 1);\n return;\n }\n }\n\n function closeAll() {\n active.value = [];\n }\n\n return reactive({\n /**\n * The list of modals that are currently open.\n */\n active: readonly(active),\n\n /**\n * Opens the given modal.\n */\n open,\n\n /**\n * Closes a modal.\n * If no arguments are passed, then the top-most modal is closed.\n * If an index is passed, then the modal at that index is closed.\n * If a name is passed, then the modal with that name is closed.\n */\n close,\n\n /**\n * Closes all active/open modals.\n */\n closeAll,\n });\n}\n"],"names":["active","ref","useModals","open","modal","markRaw","optionsDefaults","merge","close","index","name","closeAll","reactive","readonly"],"mappings":";;AA2DA,MAAMA,IAASC,EAAa,CAAA,CAAE;AAE9B,SAAwBC,IAAY;AAElC,WAASC,EAAQC,GAAiB;AAChC,IAAI,CAACA,EAAM,QAAQA,EAAM,UAAU,SAC3BA,EAAA,OAAOA,EAAM,UAAU,OAIzBA,EAAA,YAAYC,EAAQD,EAAM,SAAS;AAEzC,UAAME,IAAoC;AAAA,MACxC,yBAAyB;AAAA,IAAA;AAG3B,IAAAF,EAAM,UAAUG,EAAM,CAAA,GAAID,GAAiBF,EAAM,OAAO,GAEjDJ,EAAA,MAAM,KAAKI,CAAK;AAAA,EACzB;AAEA,WAASI,EAAM,EAAE,OAAAC,GAAO,MAAAC,EAAK,IAAe,CAAA,GAAI;AAC1C,QAAAD,MAAU,UAAa,CAACC,GAAM;AAChC,MAAAV,EAAO,MAAM;AACb;AAAA,IACF;AAEA,QAAIS,MAAU,QAAW;AAChB,MAAAT,EAAA,MAAM,OAAOS,GAAO,CAAC;AAC5B;AAAA,IACF;AAEA,QAAIC,GAAM;AACFD,YAAAA,IAAQT,EAAO,MAAM,UAAU,CAACI,MAAUA,EAAM,SAASM,CAAI;AAEnE,UAAID,MAAU;AAAI;AAEX,MAAAT,EAAA,MAAM,OAAOS,GAAO,CAAC;AAC5B;AAAA,IACF;AAAA,EACF;AAEA,WAASE,IAAW;AAClB,IAAAX,EAAO,QAAQ;EACjB;AAEA,SAAOY,EAAS;AAAA;AAAA;AAAA;AAAA,IAId,QAAQC,EAASb,CAAM;AAAA;AAAA;AAAA;AAAA,IAKvB,MAAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,OAAAK;AAAA;AAAA;AAAA;AAAA,IAKA,UAAAG;AAAA,EAAA,CACD;AACH;"}
package/dist/useSearch.js CHANGED
@@ -1,36 +1,31 @@
1
- import { g as p } from "./get-27d90892.js";
2
- import { computed as c } from "vue";
3
- import { i as f, s as l } from "./searchFuzzy-13c124f8.js";
1
+ import f from "lodash-es/get";
2
+ import { computed as m } from "vue";
3
+ import { i as p, s as l } from "./searchFuzzy-74a7de1c.js";
4
4
  import { normalizeText as s } from "./utils/helpers.js";
5
- import "./isObjectLike-54341556.js";
6
- import "./toString-7d5bf363.js";
7
- import "./_MapCache-65811284.js";
8
5
  import "./_commonjsHelpers-10dfc225.js";
9
- import "./isPlainObject-55c7f916.js";
10
- import "./_getPrototype-3e6fccd6.js";
11
- import "./_overArg-6d920d99.js";
12
- import "./capitalize-667d9f60.js";
13
- import "./_createCompounder-ae01a723.js";
6
+ import "lodash-es/isPlainObject";
7
+ import "lodash-es/camelCase";
8
+ import "lodash-es/isFinite";
14
9
  import "./constants.js";
15
- function b({ items: o, fieldNames: e, trackBy: n = "id" }) {
16
- const a = c(() => {
10
+ function F({ items: e, fieldNames: o, trackBy: i = "id" }) {
11
+ const a = m(() => {
17
12
  const r = {};
18
- return !e || !e.length || o.value.forEach((t) => {
19
- const i = String(t[n]);
20
- r[i] = e.map((u) => s(p(t, u.split(".")))).filter(Boolean).join(" ");
13
+ return !o || !o.length || e.value.forEach((t) => {
14
+ const u = String(t[i]);
15
+ r[u] = o.map((n) => s(f(t, n.split(".")))).filter(Boolean).join(" ");
21
16
  }), r;
22
17
  });
23
- function m(r, t) {
24
- return t != null && t.fuzzy && f(o.value) ? l(r, o.value, { fieldNames: e }) : o.value.filter((i) => {
25
- const u = String(i[n]);
26
- return a.value[u].includes(r.trim().toLowerCase());
18
+ function c(r, t) {
19
+ return t != null && t.fuzzy && p(e.value) ? l(r, e.value, { fieldNames: o }) : e.value.filter((u) => {
20
+ const n = String(u[i]);
21
+ return a.value[n].includes(r.trim().toLowerCase());
27
22
  });
28
23
  }
29
24
  return {
30
- searchFor: m
25
+ searchFor: c
31
26
  };
32
27
  }
33
28
  export {
34
- b as default
29
+ F as default
35
30
  };
36
31
  //# sourceMappingURL=useSearch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSearch.js","sources":["../src/composables/useSearch/useSearch.ts"],"sourcesContent":["import get from 'lodash-es/get';\nimport { computed } from 'vue';\n\nimport { isListOfObjects } from '../../../types/utils';\nimport { normalizeText } from '../../utils/helpers';\nimport searchFuzzy from '../../utils/searchFuzzy';\nimport { SearchMap, UseSearchArgs } from './useSearch.types';\n\nexport default function useSearch<Item = unknown>({ items, fieldNames, trackBy = 'id' }: UseSearchArgs<Item>) {\n const searchMap = computed<SearchMap>(() => {\n const newSearchMap = {};\n\n if (!fieldNames || !fieldNames.length) {\n return newSearchMap;\n }\n\n items.value.forEach((item) => {\n const itemKey = String(item[trackBy]);\n\n newSearchMap[itemKey] = fieldNames\n .map((fieldName) => {\n return normalizeText(get(item, fieldName.split('.'))); // get the field's value\n })\n .filter(Boolean)\n .join(' ');\n });\n\n return newSearchMap;\n });\n\n /**\n * Filter `items` by the `fieldNames`'s values.\n * @param options.fuzzy - will use fuzzy search if true\n */\n function searchFor(\n searchTerm: string,\n options?: {\n fuzzy?: boolean;\n },\n ): Item[] {\n if (options?.fuzzy && isListOfObjects(items.value)) {\n return searchFuzzy<Item>(searchTerm, items.value, { fieldNames });\n }\n\n return items.value.filter((item) => {\n const itemKey = String(item[trackBy]);\n\n return searchMap.value[itemKey].includes(searchTerm.trim().toLowerCase());\n });\n }\n\n return {\n searchFor,\n };\n}\n\nexport * from './useSearch.types';\n"],"names":["useSearch","items","fieldNames","trackBy","searchMap","computed","newSearchMap","item","itemKey","fieldName","normalizeText","get","searchFor","searchTerm","options","isListOfObjects","searchFuzzy"],"mappings":";;;;;;;;;;;;;;AAQA,SAAwBA,EAA0B,EAAE,OAAAC,GAAO,YAAAC,GAAY,SAAAC,IAAU,QAA6B;AACtG,QAAAC,IAAYC,EAAoB,MAAM;AAC1C,UAAMC,IAAe,CAAA;AAErB,WAAI,CAACJ,KAAc,CAACA,EAAW,UAIzBD,EAAA,MAAM,QAAQ,CAACM,MAAS;AAC5B,YAAMC,IAAU,OAAOD,EAAKJ,CAAO,CAAC;AAEpC,MAAAG,EAAaE,CAAO,IAAIN,EACrB,IAAI,CAACO,MACGC,EAAcC,EAAIJ,GAAME,EAAU,MAAM,GAAG,CAAC,CAAC,CACrD,EACA,OAAO,OAAO,EACd,KAAK,GAAG;AAAA,IAAA,CACZ,GAEMH;AAAA,EAAA,CACR;AAMQ,WAAAM,EACPC,GACAC,GAGQ;AACR,WAAIA,KAAA,QAAAA,EAAS,SAASC,EAAgBd,EAAM,KAAK,IACxCe,EAAkBH,GAAYZ,EAAM,OAAO,EAAE,YAAAC,GAAY,IAG3DD,EAAM,MAAM,OAAO,CAACM,MAAS;AAClC,YAAMC,IAAU,OAAOD,EAAKJ,CAAO,CAAC;AAE7B,aAAAC,EAAU,MAAMI,CAAO,EAAE,SAASK,EAAW,KAAA,EAAO,YAAA,CAAa;AAAA,IAAA,CACzE;AAAA,EACH;AAEO,SAAA;AAAA,IACL,WAAAD;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"useSearch.js","sources":["../src/composables/useSearch/useSearch.ts"],"sourcesContent":["import get from 'lodash-es/get';\nimport { computed } from 'vue';\n\nimport { isListOfObjects } from '../../../types/utils';\nimport { normalizeText } from '../../utils/helpers';\nimport searchFuzzy from '../../utils/searchFuzzy';\nimport { SearchMap, UseSearchArgs } from './useSearch.types';\n\nexport default function useSearch<Item = unknown>({ items, fieldNames, trackBy = 'id' }: UseSearchArgs<Item>) {\n const searchMap = computed<SearchMap>(() => {\n const newSearchMap = {};\n\n if (!fieldNames || !fieldNames.length) {\n return newSearchMap;\n }\n\n items.value.forEach((item) => {\n const itemKey = String(item[trackBy]);\n\n newSearchMap[itemKey] = fieldNames\n .map((fieldName) => {\n return normalizeText(get(item, fieldName.split('.'))); // get the field's value\n })\n .filter(Boolean)\n .join(' ');\n });\n\n return newSearchMap;\n });\n\n /**\n * Filter `items` by the `fieldNames`'s values.\n * @param options.fuzzy - will use fuzzy search if true\n */\n function searchFor(\n searchTerm: string,\n options?: {\n fuzzy?: boolean;\n },\n ): Item[] {\n if (options?.fuzzy && isListOfObjects(items.value)) {\n return searchFuzzy<Item>(searchTerm, items.value, { fieldNames });\n }\n\n return items.value.filter((item) => {\n const itemKey = String(item[trackBy]);\n\n return searchMap.value[itemKey].includes(searchTerm.trim().toLowerCase());\n });\n }\n\n return {\n searchFor,\n };\n}\n\nexport * from './useSearch.types';\n"],"names":["useSearch","items","fieldNames","trackBy","searchMap","computed","newSearchMap","item","itemKey","fieldName","normalizeText","get","searchFor","searchTerm","options","isListOfObjects","searchFuzzy"],"mappings":";;;;;;;;;AAQA,SAAwBA,EAA0B,EAAE,OAAAC,GAAO,YAAAC,GAAY,SAAAC,IAAU,QAA6B;AACtG,QAAAC,IAAYC,EAAoB,MAAM;AAC1C,UAAMC,IAAe,CAAA;AAErB,WAAI,CAACJ,KAAc,CAACA,EAAW,UAIzBD,EAAA,MAAM,QAAQ,CAACM,MAAS;AAC5B,YAAMC,IAAU,OAAOD,EAAKJ,CAAO,CAAC;AAEpC,MAAAG,EAAaE,CAAO,IAAIN,EACrB,IAAI,CAACO,MACGC,EAAcC,EAAIJ,GAAME,EAAU,MAAM,GAAG,CAAC,CAAC,CACrD,EACA,OAAO,OAAO,EACd,KAAK,GAAG;AAAA,IAAA,CACZ,GAEMH;AAAA,EAAA,CACR;AAMQ,WAAAM,EACPC,GACAC,GAGQ;AACR,WAAIA,KAAA,QAAAA,EAAS,SAASC,EAAgBd,EAAM,KAAK,IACxCe,EAAkBH,GAAYZ,EAAM,OAAO,EAAE,YAAAC,GAAY,IAG3DD,EAAM,MAAM,OAAO,CAACM,MAAS;AAClC,YAAMC,IAAU,OAAOD,EAAKJ,CAAO,CAAC;AAE7B,aAAAC,EAAU,MAAMI,CAAO,EAAE,SAASK,EAAW,KAAA,EAAO,YAAA,CAAa;AAAA,IAAA,CACzE;AAAA,EACH;AAEO,SAAA;AAAA,IACL,WAAAD;AAAA,EAAA;AAEJ;"}
package/dist/useToasts.js CHANGED
@@ -1,54 +1,43 @@
1
- import { m as v } from "./merge-b14fad9d.js";
2
- import { u as T } from "./uniqueId-847efe53.js";
1
+ import p from "lodash-es/merge";
2
+ import T from "lodash-es/uniqueId";
3
3
  import { ref as d, reactive as g, readonly as b } from "vue";
4
- import "./_Uint8Array-06e4d083.js";
5
- import "./isArrayLike-09233e52.js";
6
- import "./isObjectLike-54341556.js";
7
- import "./_MapCache-65811284.js";
8
- import "./_baseAssignValue-dd1499b4.js";
9
- import "./identity-452d03fd.js";
10
- import "./_initCloneObject-161353b9.js";
11
- import "./_getPrototype-3e6fccd6.js";
12
- import "./_overArg-6d920d99.js";
13
- import "./isPlainObject-55c7f916.js";
14
- import "./toString-7d5bf363.js";
15
- const h = 5e3, e = d([]);
16
- function j(m = { timeout: h }) {
17
- function n(t) {
18
- e.value = e.value.filter(({ id: r }) => r !== t);
4
+ const h = 5e3, r = d([]);
5
+ function E(c = { timeout: h }) {
6
+ function u(t) {
7
+ r.value = r.value.filter(({ id: e }) => e !== t);
19
8
  }
20
- function o(t, r, l) {
21
- const u = v({}, m, l), i = T("toast-");
22
- return e.value.push({ text: t, id: i, status: r }), typeof u.timeout == "number" && setTimeout(() => n(i), Math.abs(u.timeout)), i;
9
+ function n(t, e, v) {
10
+ const i = p({}, c, v), o = T("toast-");
11
+ return r.value.push({ text: t, id: o, status: e }), typeof i.timeout == "number" && setTimeout(() => u(o), Math.abs(i.timeout)), o;
23
12
  }
24
13
  function s() {
25
- e.value = [];
14
+ r.value = [];
26
15
  }
27
- function c(t, r) {
28
- return o(t, "error", r);
16
+ function f(t, e) {
17
+ return n(t, "error", e);
29
18
  }
30
- function a(t, r) {
31
- return o(t, "info", r);
19
+ function a(t, e) {
20
+ return n(t, "info", e);
32
21
  }
33
- function f(t, r) {
34
- return o(t, "success", r);
22
+ function m(t, e) {
23
+ return n(t, "success", e);
35
24
  }
36
- function p(t, r) {
37
- return o(t, "warning", r);
25
+ function l(t, e) {
26
+ return n(t, "warning", e);
38
27
  }
39
28
  return g({
40
29
  /**
41
30
  * The list of toasts that are currently visible.
42
31
  */
43
- active: b(e),
32
+ active: b(r),
44
33
  /**
45
34
  * Removes an active/visible toast.
46
35
  */
47
- remove: n,
36
+ remove: u,
48
37
  /**
49
38
  * Creates a new toast and makes it active/visible.
50
39
  */
51
- create: o,
40
+ create: n,
52
41
  /**
53
42
  * Removes all active/visible toasts.
54
43
  */
@@ -56,7 +45,7 @@ function j(m = { timeout: h }) {
56
45
  /**
57
46
  * Creates a new "error" toast.
58
47
  */
59
- error: c,
48
+ error: f,
60
49
  /**
61
50
  * Creates a new "info" toast.
62
51
  */
@@ -64,15 +53,15 @@ function j(m = { timeout: h }) {
64
53
  /**
65
54
  * Creates a new "success" toast.
66
55
  */
67
- success: f,
56
+ success: m,
68
57
  /**
69
58
  * Creates a new "warning" toast.
70
59
  */
71
- warning: p
60
+ warning: l
72
61
  });
73
62
  }
74
63
  export {
75
64
  h as DEFAULT_TIMEOUT,
76
- j as default
65
+ E as default
77
66
  };
78
67
  //# sourceMappingURL=useToasts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useToasts.js","sources":["../src/composables/useToasts/useToasts.ts"],"sourcesContent":["import merge from 'lodash-es/merge';\nimport uniqueId from 'lodash-es/uniqueId';\nimport { reactive, readonly, ref } from 'vue';\n\nimport { StatusSeverity } from '../../../types/statusLevels';\n\nexport const DEFAULT_TIMEOUT = 5000;\n\nexport type Toast = {\n id: string;\n text: string;\n status: StatusSeverity;\n};\n\nexport type ToastOptions = {\n timeout?: number | boolean;\n};\n\nconst active = ref<Toast[]>([]);\n\nexport default function useToasts(globalOptions: ToastOptions = { timeout: DEFAULT_TIMEOUT }) {\n function remove(toastId: Toast['id']) {\n active.value = active.value.filter(({ id }) => id !== toastId);\n }\n\n function create(text: Toast['text'], status: StatusSeverity, localOptions?: ToastOptions): Toast['id'] {\n const options = merge({}, globalOptions, localOptions);\n\n const id = uniqueId('toast-');\n\n active.value.push({ text, id, status });\n\n if (typeof options.timeout === 'number') {\n setTimeout(() => remove(id), Math.abs(options.timeout));\n }\n\n return id;\n }\n\n function removeAll() {\n active.value = [];\n }\n\n function error(text: string, options?: ToastOptions) {\n return create(text, 'error', options);\n }\n\n function info(text: string, options?: ToastOptions) {\n return create(text, 'info', options);\n }\n\n function success(text: string, options?: ToastOptions) {\n return create(text, 'success', options);\n }\n\n function warning(text: string, options?: ToastOptions) {\n return create(text, 'warning', options);\n }\n\n return reactive({\n /**\n * The list of toasts that are currently visible.\n */\n active: readonly(active),\n\n /**\n * Removes an active/visible toast.\n */\n remove,\n\n /**\n * Creates a new toast and makes it active/visible.\n */\n create,\n\n /**\n * Removes all active/visible toasts.\n */\n removeAll,\n\n /**\n * Creates a new \"error\" toast.\n */\n error,\n\n /**\n * Creates a new \"info\" toast.\n */\n info,\n\n /**\n * Creates a new \"success\" toast.\n */\n success,\n\n /**\n * Creates a new \"warning\" toast.\n */\n warning,\n });\n}\n"],"names":["DEFAULT_TIMEOUT","active","ref","useToasts","globalOptions","remove","toastId","id","create","text","status","localOptions","options","merge","uniqueId","removeAll","error","info","success","warning","reactive","readonly"],"mappings":";;;;;;;;;;;;;;AAMO,MAAMA,IAAkB,KAYzBC,IAASC,EAAa,CAAA,CAAE;AAE9B,SAAwBC,EAAUC,IAA8B,EAAE,SAASJ,KAAmB;AAC5F,WAASK,EAAOC,GAAsB;AAC7B,IAAAL,EAAA,QAAQA,EAAO,MAAM,OAAO,CAAC,EAAE,IAAAM,EAAS,MAAAA,MAAOD,CAAO;AAAA,EAC/D;AAES,WAAAE,EAAOC,GAAqBC,GAAwBC,GAA0C;AACrG,UAAMC,IAAUC,EAAM,CAAC,GAAGT,GAAeO,CAAY,GAE/CJ,IAAKO,EAAS,QAAQ;AAE5B,WAAAb,EAAO,MAAM,KAAK,EAAE,MAAAQ,GAAM,IAAAF,GAAI,QAAAG,GAAQ,GAElC,OAAOE,EAAQ,WAAY,YAClB,WAAA,MAAMP,EAAOE,CAAE,GAAG,KAAK,IAAIK,EAAQ,OAAO,CAAC,GAGjDL;AAAA,EACT;AAEA,WAASQ,IAAY;AACnB,IAAAd,EAAO,QAAQ;EACjB;AAES,WAAAe,EAAMP,GAAcG,GAAwB;AAC5C,WAAAJ,EAAOC,GAAM,SAASG,CAAO;AAAA,EACtC;AAES,WAAAK,EAAKR,GAAcG,GAAwB;AAC3C,WAAAJ,EAAOC,GAAM,QAAQG,CAAO;AAAA,EACrC;AAES,WAAAM,EAAQT,GAAcG,GAAwB;AAC9C,WAAAJ,EAAOC,GAAM,WAAWG,CAAO;AAAA,EACxC;AAES,WAAAO,EAAQV,GAAcG,GAAwB;AAC9C,WAAAJ,EAAOC,GAAM,WAAWG,CAAO;AAAA,EACxC;AAEA,SAAOQ,EAAS;AAAA;AAAA;AAAA;AAAA,IAId,QAAQC,EAASpB,CAAM;AAAA;AAAA;AAAA;AAAA,IAKvB,QAAAI;AAAA;AAAA;AAAA;AAAA,IAKA,QAAAG;AAAA;AAAA;AAAA;AAAA,IAKA,WAAAO;AAAA;AAAA;AAAA;AAAA,IAKA,OAAAC;AAAA;AAAA;AAAA;AAAA,IAKA,MAAAC;AAAA;AAAA;AAAA;AAAA,IAKA,SAAAC;AAAA;AAAA;AAAA;AAAA,IAKA,SAAAC;AAAA,EAAA,CACD;AACH;"}
1
+ {"version":3,"file":"useToasts.js","sources":["../src/composables/useToasts/useToasts.ts"],"sourcesContent":["import merge from 'lodash-es/merge';\nimport uniqueId from 'lodash-es/uniqueId';\nimport { reactive, readonly, ref } from 'vue';\n\nimport { StatusSeverity } from '../../../types/statusLevels';\n\nexport const DEFAULT_TIMEOUT = 5000;\n\nexport type Toast = {\n id: string;\n text: string;\n status: StatusSeverity;\n};\n\nexport type ToastOptions = {\n timeout?: number | boolean;\n};\n\nconst active = ref<Toast[]>([]);\n\nexport default function useToasts(globalOptions: ToastOptions = { timeout: DEFAULT_TIMEOUT }) {\n function remove(toastId: Toast['id']) {\n active.value = active.value.filter(({ id }) => id !== toastId);\n }\n\n function create(text: Toast['text'], status: StatusSeverity, localOptions?: ToastOptions): Toast['id'] {\n const options = merge({}, globalOptions, localOptions);\n\n const id = uniqueId('toast-');\n\n active.value.push({ text, id, status });\n\n if (typeof options.timeout === 'number') {\n setTimeout(() => remove(id), Math.abs(options.timeout));\n }\n\n return id;\n }\n\n function removeAll() {\n active.value = [];\n }\n\n function error(text: string, options?: ToastOptions) {\n return create(text, 'error', options);\n }\n\n function info(text: string, options?: ToastOptions) {\n return create(text, 'info', options);\n }\n\n function success(text: string, options?: ToastOptions) {\n return create(text, 'success', options);\n }\n\n function warning(text: string, options?: ToastOptions) {\n return create(text, 'warning', options);\n }\n\n return reactive({\n /**\n * The list of toasts that are currently visible.\n */\n active: readonly(active),\n\n /**\n * Removes an active/visible toast.\n */\n remove,\n\n /**\n * Creates a new toast and makes it active/visible.\n */\n create,\n\n /**\n * Removes all active/visible toasts.\n */\n removeAll,\n\n /**\n * Creates a new \"error\" toast.\n */\n error,\n\n /**\n * Creates a new \"info\" toast.\n */\n info,\n\n /**\n * Creates a new \"success\" toast.\n */\n success,\n\n /**\n * Creates a new \"warning\" toast.\n */\n warning,\n });\n}\n"],"names":["DEFAULT_TIMEOUT","active","ref","useToasts","globalOptions","remove","toastId","id","create","text","status","localOptions","options","merge","uniqueId","removeAll","error","info","success","warning","reactive","readonly"],"mappings":";;;AAMO,MAAMA,IAAkB,KAYzBC,IAASC,EAAa,CAAA,CAAE;AAE9B,SAAwBC,EAAUC,IAA8B,EAAE,SAASJ,KAAmB;AAC5F,WAASK,EAAOC,GAAsB;AAC7B,IAAAL,EAAA,QAAQA,EAAO,MAAM,OAAO,CAAC,EAAE,IAAAM,EAAS,MAAAA,MAAOD,CAAO;AAAA,EAC/D;AAES,WAAAE,EAAOC,GAAqBC,GAAwBC,GAA0C;AACrG,UAAMC,IAAUC,EAAM,CAAC,GAAGT,GAAeO,CAAY,GAE/CJ,IAAKO,EAAS,QAAQ;AAE5B,WAAAb,EAAO,MAAM,KAAK,EAAE,MAAAQ,GAAM,IAAAF,GAAI,QAAAG,GAAQ,GAElC,OAAOE,EAAQ,WAAY,YAClB,WAAA,MAAMP,EAAOE,CAAE,GAAG,KAAK,IAAIK,EAAQ,OAAO,CAAC,GAGjDL;AAAA,EACT;AAEA,WAASQ,IAAY;AACnB,IAAAd,EAAO,QAAQ;EACjB;AAES,WAAAe,EAAMP,GAAcG,GAAwB;AAC5C,WAAAJ,EAAOC,GAAM,SAASG,CAAO;AAAA,EACtC;AAES,WAAAK,EAAKR,GAAcG,GAAwB;AAC3C,WAAAJ,EAAOC,GAAM,QAAQG,CAAO;AAAA,EACrC;AAES,WAAAM,EAAQT,GAAcG,GAAwB;AAC9C,WAAAJ,EAAOC,GAAM,WAAWG,CAAO;AAAA,EACxC;AAES,WAAAO,EAAQV,GAAcG,GAAwB;AAC9C,WAAAJ,EAAOC,GAAM,WAAWG,CAAO;AAAA,EACxC;AAEA,SAAOQ,EAAS;AAAA;AAAA;AAAA;AAAA,IAId,QAAQC,EAASpB,CAAM;AAAA;AAAA;AAAA;AAAA,IAKvB,QAAAI;AAAA;AAAA;AAAA;AAAA,IAKA,QAAAG;AAAA;AAAA;AAAA;AAAA,IAKA,WAAAO;AAAA;AAAA;AAAA;AAAA,IAKA,OAAAC;AAAA;AAAA;AAAA;AAAA,IAKA,MAAAC;AAAA;AAAA;AAAA;AAAA,IAKA,SAAAC;AAAA;AAAA;AAAA;AAAA,IAKA,SAAAC;AAAA,EAAA,CACD;AACH;"}
@@ -1,155 +1,126 @@
1
- import { t as A, d as M } from "./debounce-6aca1ca9.js";
2
- import { g as V } from "./get-27d90892.js";
3
- import { toValue as f, computed as c, ref as T, watch as D, reactive as F, nextTick as S, readonly as E } from "vue";
4
- import { DECIMAL_PRECISION as j, DEBOUNCE as C } from "./constants.js";
1
+ import O from "lodash-es/debounce";
2
+ import E from "lodash-es/get";
3
+ import { toValue as f, computed as c, ref as T, watch as A, reactive as S, nextTick as w, readonly as N } from "vue";
4
+ import { DECIMAL_PRECISION as D, DEBOUNCE as j } from "./constants.js";
5
5
  import { t as d } from "./locale.js";
6
- import { i as g } from "./isDefined-2ce6cde4.js";
7
- import { r as R } from "./isObjectLike-54341556.js";
8
- import { t as w } from "./toString-7d5bf363.js";
9
- import "./_MapCache-65811284.js";
6
+ import { i as v } from "./isDefined-2ce6cde4.js";
7
+ import C from "lodash-es/round";
10
8
  function q(t) {
11
9
  return t && t.constructor && typeof t.constructor.isBuffer == "function" && t.constructor.isBuffer(t);
12
10
  }
13
11
  function B(t) {
14
12
  return t;
15
13
  }
16
- function U(t, e) {
14
+ function F(t, e) {
17
15
  e = e || {};
18
- const o = e.delimiter || ".", i = e.maxDepth, a = e.transformKey || B, u = {};
19
- function h(v, y, l) {
20
- l = l || 1, Object.keys(v).forEach(function(b) {
21
- const r = v[b], N = e.safe && Array.isArray(r), n = Object.prototype.toString.call(r), s = q(r), I = n === "[object Object]" || n === "[object Array]", m = y ? y + o + a(b) : a(b);
22
- if (!N && !s && I && Object.keys(r).length && (!e.maxDepth || l < i))
23
- return h(r, m, l + 1);
24
- u[m] = r;
16
+ const a = e.delimiter || ".", i = e.maxDepth, o = e.transformKey || B, u = {};
17
+ function g(h, y, m) {
18
+ m = m || 1, Object.keys(h).forEach(function(b) {
19
+ const r = h[b], V = e.safe && Array.isArray(r), n = Object.prototype.toString.call(r), s = q(r), p = n === "[object Object]" || n === "[object Array]", l = y ? y + a + o(b) : o(b);
20
+ if (!V && !s && p && Object.keys(r).length && (!e.maxDepth || m < i))
21
+ return g(r, l, m + 1);
22
+ u[l] = r;
25
23
  });
26
24
  }
27
- return h(t), u;
25
+ return g(t), u;
28
26
  }
29
- function ne(t = {}) {
27
+ function P(t = {}) {
30
28
  return {
31
29
  name: "email",
32
30
  validator(e) {
33
- return !g(e) || typeof e == "string" && /^\S+@\S+\.\S+$/.test(e);
31
+ return !v(e) || typeof e == "string" && /^\S+@\S+\.\S+$/.test(e);
34
32
  },
35
33
  message: t.message || d("ll.validation.email")
36
34
  };
37
35
  }
38
- function oe(t) {
36
+ function Y(t) {
39
37
  return {
40
38
  name: "maxValue",
41
39
  validator(e) {
42
- const o = f(t.max);
43
- return !g(e) || Number(e) <= o;
40
+ const a = f(t.max);
41
+ return !v(e) || Number(e) <= a;
44
42
  },
45
43
  message: t.message || (() => d("ll.validation.maxValue", { max: String(f(t.max)) }))
46
44
  };
47
45
  }
48
- function se(t) {
46
+ function z(t) {
49
47
  return {
50
48
  name: "minValue",
51
49
  validator(e) {
52
- const o = f(t.min);
53
- return !g(e) || Number(e) >= o;
50
+ const a = f(t.min);
51
+ return !v(e) || Number(e) >= a;
54
52
  },
55
53
  message: t.message || (() => d("ll.validation.minValue", { min: String(f(t.min)) }))
56
54
  };
57
55
  }
58
- function ae(t = {}) {
56
+ function G(t = {}) {
59
57
  return {
60
58
  name: "positiveNumber",
61
59
  validator(e) {
62
- return !g(e) || Number(e) > 0;
60
+ return !v(e) || Number(e) > 0;
63
61
  },
64
62
  message: t.message || d("ll.validation.positiveNumber")
65
63
  };
66
64
  }
67
- var O = 1 / 0, $ = 17976931348623157e292;
68
- function k(t) {
69
- if (!t)
70
- return t === 0 ? t : 0;
71
- if (t = A(t), t === O || t === -O) {
72
- var e = t < 0 ? -1 : 1;
73
- return e * $;
74
- }
75
- return t === t ? t : 0;
76
- }
77
- function K(t) {
78
- var e = k(t), o = e % 1;
79
- return e === e ? o ? e - o : e : 0;
80
- }
81
- var _ = R.isFinite, L = Math.min;
82
- function Y(t) {
83
- var e = Math[t];
84
- return function(o, i) {
85
- if (o = A(o), i = i == null ? 0 : L(K(i), 292), i && _(o)) {
86
- var a = (w(o) + "e").split("e"), u = e(a[0] + "e" + (+a[1] + i));
87
- return a = (w(u) + "e").split("e"), +(a[0] + "e" + (+a[1] - i));
88
- }
89
- return e(o);
90
- };
91
- }
92
- var G = Y("round");
93
- const P = G;
94
- function ie(t = {}) {
65
+ function H(t = {}) {
95
66
  return {
96
67
  name: "price",
97
68
  validator(e) {
98
- const o = Number(e);
99
- return !g(e) || o !== 1 / 0 && o >= 0 && o === P(o, j.CURRENCY);
69
+ const a = Number(e);
70
+ return !v(e) || a !== 1 / 0 && a >= 0 && a === C(a, D.CURRENCY);
100
71
  },
101
72
  message: t.message || d("ll.validation.price")
102
73
  };
103
74
  }
104
- function ue(t = {}) {
75
+ function J(t = {}) {
105
76
  return {
106
77
  name: "required",
107
78
  validator(e) {
108
- return g(typeof e == "string" ? e.trim() : e);
79
+ return v(typeof e == "string" ? e.trim() : e);
109
80
  },
110
81
  message: t.message || d("ll.validation.required")
111
82
  };
112
83
  }
113
- function ce(t = {}) {
84
+ function Q(t = {}) {
114
85
  return {
115
86
  name: "wholeNumber",
116
87
  validator(e) {
117
- return !g(e) || Number.isInteger(Number(e)) && Number(e) >= 0;
88
+ return !v(e) || Number.isInteger(Number(e)) && Number(e) >= 0;
118
89
  },
119
90
  message: t.message || d("ll.validation.wholeNumber")
120
91
  };
121
92
  }
122
- function me({
93
+ function X({
123
94
  rules: t,
124
95
  values: e
125
96
  }) {
126
- const i = c(() => Object.keys(U(t, { safe: !0 }))).value.reduce((n, s) => {
127
- const I = T(V(f(e), s)), m = (x) => {
128
- I.value = V(f(e), x);
129
- }, p = M(() => {
130
- m(s);
131
- }, C.FAST);
132
- return D(
133
- () => V(f(e), s),
97
+ const i = c(() => Object.keys(F(t, { safe: !0 }))).value.reduce((n, s) => {
98
+ const p = T(E(f(e), s)), l = (I) => {
99
+ p.value = E(f(e), I);
100
+ }, x = O(() => {
101
+ l(s);
102
+ }, j.FAST);
103
+ return A(
104
+ () => E(f(e), s),
134
105
  () => {
135
- p();
106
+ x();
136
107
  }
137
- ), n[s] = X({
108
+ ), n[s] = M({
138
109
  fieldName: s,
139
- fieldValue: I,
110
+ fieldValue: p,
140
111
  flush: () => {
141
- p.cancel(), m(s);
112
+ x.cancel(), l(s);
142
113
  },
143
- rules: V(t, s)
114
+ rules: E(t, s)
144
115
  }), n;
145
- }, {}), a = c(() => Object.values(i)), u = c(() => a.value.some((n) => n.errors.length > 0)), h = c(() => a.value.some((n) => n.isTouched)), v = c(() => a.value.filter((n) => n.isDirty));
146
- return F({
116
+ }, {}), o = c(() => Object.values(i)), u = c(() => o.value.some((n) => n.errors.length > 0)), g = c(() => o.value.some((n) => n.isTouched)), h = c(() => o.value.filter((n) => n.isDirty));
117
+ return S({
147
118
  validate: async function({ preventScroll: n } = {}) {
148
- if (a.value.forEach((s) => {
119
+ if (o.value.forEach((s) => {
149
120
  s.setTouched(!1), s.setTouched(!0);
150
- }), await S(), u.value && !n) {
151
- const s = Object.entries(i).find(([p, x]) => x.errorMessage), I = (s == null ? void 0 : s[0]) || "", m = document == null ? void 0 : document.querySelector(`[name=${I}]`);
152
- m && m.scrollIntoView({ behavior: "smooth" });
121
+ }), await w(), u.value && !n) {
122
+ const s = Object.entries(i).find(([x, I]) => I.errorMessage), p = (s == null ? void 0 : s[0]) || "", l = document == null ? void 0 : document.querySelector(`[name=${p}]`);
123
+ l && l.scrollIntoView({ behavior: "smooth" });
153
124
  }
154
125
  return !u.value;
155
126
  },
@@ -163,68 +134,68 @@ function me({
163
134
  i[n].setTouched();
164
135
  },
165
136
  setAllUntouched: async function() {
166
- await S(), a.value.forEach((n) => {
137
+ await w(), o.value.forEach((n) => {
167
138
  n.setTouched(!1);
168
139
  });
169
140
  },
170
141
  setInitialValues: function(n) {
171
- a.value.forEach((s) => {
142
+ o.value.forEach((s) => {
172
143
  s.setInitialValue(n[s.name]);
173
144
  });
174
145
  },
175
146
  fields: i,
176
- dirtyFields: v,
147
+ dirtyFields: h,
177
148
  hasErrors: u,
178
- someTouched: h
149
+ someTouched: g
179
150
  });
180
151
  }
181
- function X({
152
+ function M({
182
153
  fieldName: t,
183
154
  fieldValue: e,
184
- rules: o,
155
+ rules: a,
185
156
  flush: i
186
157
  }) {
187
- const a = T(e.value), u = T(!1), h = c(() => (e.value ?? "") !== (a.value ?? "")), v = c(() => u.value ? o.map((r) => ({
158
+ const o = T(e.value), u = T(!1), g = c(() => (e.value ?? "") !== (o.value ?? "")), h = c(() => u.value ? a.map((r) => ({
188
159
  fieldName: t,
189
160
  ruleName: r.name,
190
161
  isValid: r.validator(e.value),
191
162
  message: typeof r.message == "function" ? r.message(e.value) : r.message
192
163
  })) : []), y = c(
193
- () => v.value.filter((r) => !r.isValid).map((r) => ({
164
+ () => h.value.filter((r) => !r.isValid).map((r) => ({
194
165
  ruleName: r.ruleName,
195
166
  message: r.message
196
167
  }))
197
168
  );
198
- function l(r = !0) {
169
+ function m(r = !0) {
199
170
  i(), u.value = r;
200
171
  }
201
172
  function b(r) {
202
- a.value = r;
173
+ o.value = r;
203
174
  }
204
- return F({
175
+ return S({
205
176
  name: t,
206
- currentValue: E(e),
207
- initialValue: E(a),
208
- isTouched: E(u),
209
- isDirty: E(h),
177
+ currentValue: N(e),
178
+ initialValue: N(o),
179
+ isTouched: N(u),
180
+ isDirty: N(g),
210
181
  errorMessage: c(() => {
211
- var r, N;
212
- return ((N = (r = y.value) == null ? void 0 : r[0]) == null ? void 0 : N.message) || "";
182
+ var r, V;
183
+ return ((V = (r = y.value) == null ? void 0 : r[0]) == null ? void 0 : V.message) || "";
213
184
  }),
214
185
  errors: y,
215
186
  setInitialValue: b,
216
- setTouched: l
187
+ setTouched: m
217
188
  });
218
189
  }
219
190
  export {
220
- me as default,
221
- ne as email,
222
- g as isDefined,
223
- oe as maxValue,
224
- se as minValue,
225
- ae as positiveNumber,
226
- ie as price,
227
- ue as required,
228
- ce as wholeNumber
191
+ X as default,
192
+ P as email,
193
+ v as isDefined,
194
+ Y as maxValue,
195
+ z as minValue,
196
+ G as positiveNumber,
197
+ H as price,
198
+ J as required,
199
+ Q as wholeNumber
229
200
  };
230
201
  //# sourceMappingURL=useValidation.js.map