@leaflink/stash 51.11.0 → 51.11.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 (361) hide show
  1. package/dist/Accordion.js.map +1 -1
  2. package/dist/Accordion.vue.d.ts +37 -6
  3. package/dist/ActionsDropdown.js +2 -2
  4. package/dist/ActionsDropdown.js.map +1 -1
  5. package/dist/ActionsDropdown.vue.d.ts +74 -0
  6. package/dist/AddressSelect.js +60 -56
  7. package/dist/AddressSelect.js.map +1 -1
  8. package/dist/AddressSelect.vue.d.ts +65 -8
  9. package/dist/Alert.js.map +1 -1
  10. package/dist/Alert.vue.d.ts +41 -4
  11. package/dist/AppNavigationItem.js.map +1 -1
  12. package/dist/AppNavigationItem.vue.d.ts +31 -4
  13. package/dist/AppSidebar.js.map +1 -1
  14. package/dist/AppSidebar.vue.d.ts +35 -8
  15. package/dist/AppTopbar.js +1 -1
  16. package/dist/AppTopbar.js.map +1 -1
  17. package/dist/AppTopbar.vue.d.ts +33 -4
  18. package/dist/Avatar.js.map +1 -1
  19. package/dist/Avatar.vue.d.ts +44 -5
  20. package/dist/Backdrop.js.map +1 -1
  21. package/dist/Backdrop.vue.d.ts +1 -1
  22. package/dist/Badge.js.map +1 -1
  23. package/dist/Badge.vue.d.ts +55 -6
  24. package/dist/Box.vue.d.ts +36 -3
  25. package/dist/Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js.map +1 -1
  26. package/dist/Button.js.map +1 -1
  27. package/dist/Button.vue.d.ts +50 -5
  28. package/dist/ButtonGroup.js +37 -33
  29. package/dist/ButtonGroup.js.map +1 -1
  30. package/dist/ButtonGroup.vue.d.ts +39 -6
  31. package/dist/Card.js.map +1 -1
  32. package/dist/Card.vue.d.ts +32 -5
  33. package/dist/CardContent.js.map +1 -1
  34. package/dist/CardContent.vue.d.ts +1 -1
  35. package/dist/CardFooter.js.map +1 -1
  36. package/dist/CardFooter.vue.d.ts +1 -1
  37. package/dist/CardHeader.js.map +1 -1
  38. package/dist/CardHeader.vue.d.ts +15 -2
  39. package/dist/CardMedia.js.map +1 -1
  40. package/dist/CardMedia.vue.d.ts +15 -2
  41. package/dist/Carousel.js +72 -66
  42. package/dist/Carousel.js.map +1 -1
  43. package/dist/Carousel.vue.d.ts +10 -10
  44. package/dist/Checkbox.js.map +1 -1
  45. package/dist/Checkbox.vue.d.ts +53 -8
  46. package/dist/ChevronToggle.vue.d.ts +34 -7
  47. package/dist/ChevronToggle.vue_vue_type_script_setup_true_lang-Ce_qOXfR.js.map +1 -1
  48. package/dist/Chip.js.map +1 -1
  49. package/dist/Chip.vue.d.ts +52 -10
  50. package/dist/ConfirmationCodeInput.js +44 -40
  51. package/dist/ConfirmationCodeInput.js.map +1 -1
  52. package/dist/ConfirmationCodeInput.vue.d.ts +43 -8
  53. package/dist/ContextSwitcher.js.map +1 -1
  54. package/dist/ContextSwitcher.vue.d.ts +41 -6
  55. package/dist/Copy.js.map +1 -1
  56. package/dist/Copy.vue.d.ts +34 -3
  57. package/dist/CurrencyInput.js +21 -20
  58. package/dist/CurrencyInput.js.map +1 -1
  59. package/dist/CurrencyInput.vue.d.ts +46 -125
  60. package/dist/CustomRender.js.map +1 -1
  61. package/dist/DataView.js +96 -94
  62. package/dist/DataView.js.map +1 -1
  63. package/dist/DataView.keys-aSOnA4AD.js.map +1 -1
  64. package/dist/DataView.vue.d.ts +57 -12
  65. package/dist/DataViewFilters.js +139 -127
  66. package/dist/DataViewFilters.js.map +1 -1
  67. package/dist/DataViewFilters.keys-BLu07FiP.js.map +1 -1
  68. package/dist/DataViewFilters.vue.d.ts +54 -9
  69. package/dist/DataViewSortButton.js +2 -2
  70. package/dist/DataViewSortButton.js.map +1 -1
  71. package/dist/DataViewSortButton.vue.d.ts +30 -3
  72. package/dist/DataViewToolbar.js +89 -88
  73. package/dist/DataViewToolbar.js.map +1 -1
  74. package/dist/DataViewToolbar.vue.d.ts +40 -106
  75. package/dist/DatePicker.js +4636 -4524
  76. package/dist/DatePicker.js.map +1 -1
  77. package/dist/DatePicker.vue.d.ts +79 -30
  78. package/dist/DescriptionList.js.map +1 -1
  79. package/dist/DescriptionList.vue.d.ts +32 -3
  80. package/dist/DescriptionListDetail.js.map +1 -1
  81. package/dist/DescriptionListDetail.vue.d.ts +1 -1
  82. package/dist/DescriptionListGroup.js.map +1 -1
  83. package/dist/DescriptionListGroup.vue.d.ts +1 -1
  84. package/dist/DescriptionListTerm.js.map +1 -1
  85. package/dist/DescriptionListTerm.vue.d.ts +1 -1
  86. package/dist/Dialog.js.map +1 -1
  87. package/dist/Dialog.vue.d.ts +53 -10
  88. package/dist/Divider.js.map +1 -1
  89. package/dist/Dropdown.js +95 -89
  90. package/dist/Dropdown.js.map +1 -1
  91. package/dist/Dropdown.vue.d.ts +48 -12
  92. package/dist/EmptyState.js +1 -1
  93. package/dist/EmptyState.js.map +1 -1
  94. package/dist/EmptyState.vue.d.ts +62 -5
  95. package/dist/Expand.vue.d.ts +40 -10
  96. package/dist/Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js.map +1 -1
  97. package/dist/Field.vue.d.ts +53 -4
  98. package/dist/Field.vue_vue_type_script_setup_true_lang-DI6z3AE9.js.map +1 -1
  99. package/dist/FileUpload.js +74 -72
  100. package/dist/FileUpload.js.map +1 -1
  101. package/dist/FileUpload.vue.d.ts +44 -10
  102. package/dist/FilterChip.js.map +1 -1
  103. package/dist/FilterChip.vue.d.ts +41 -6
  104. package/dist/FilterDrawerItem.js +21 -21
  105. package/dist/FilterDrawerItem.js.map +1 -1
  106. package/dist/FilterDrawerItem.vue.d.ts +23 -6
  107. package/dist/FilterDropdown.js +69 -63
  108. package/dist/FilterDropdown.js.map +1 -1
  109. package/dist/FilterDropdown.vue.d.ts +35 -122
  110. package/dist/FilterSelect.js.map +1 -1
  111. package/dist/FilterSelect.vue.d.ts +31 -4
  112. package/dist/Filters.js +164 -157
  113. package/dist/Filters.js.map +1 -1
  114. package/dist/Filters.vue.d.ts +2190 -0
  115. package/dist/HttpError.js +7 -7
  116. package/dist/HttpError.js.map +1 -1
  117. package/dist/HttpError.vue.d.ts +41 -4
  118. package/dist/Icon.js +17 -17
  119. package/dist/Icon.js.map +1 -1
  120. package/dist/Icon.vue.d.ts +36 -3
  121. package/dist/IconLabel.js.map +1 -1
  122. package/dist/IconLabel.vue.d.ts +40 -5
  123. package/dist/Illustration.js +2 -2
  124. package/dist/Illustration.vue.d.ts +42 -3
  125. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js → Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js} +11 -11
  126. package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js.map → Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js.map} +1 -1
  127. package/dist/Image.js +2 -2
  128. package/dist/Image.vue.d.ts +40 -5
  129. package/dist/{Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js → Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js} +41 -37
  130. package/dist/{Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js.map → Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js.map} +1 -1
  131. package/dist/InlineEdit.js.map +1 -1
  132. package/dist/InlineEdit.vue.d.ts +47 -126
  133. package/dist/Input.js.map +1 -1
  134. package/dist/Input.vue.d.ts +45 -12
  135. package/dist/InputOptions.js +69 -66
  136. package/dist/InputOptions.js.map +1 -1
  137. package/dist/InputOptions.vue.d.ts +55 -10
  138. package/dist/IntegrationIcon.js +7 -7
  139. package/dist/IntegrationIcon.js.map +1 -1
  140. package/dist/IntegrationIcon.vue.d.ts +36 -3
  141. package/dist/Label.vue.d.ts +42 -3
  142. package/dist/Label.vue_vue_type_script_setup_true_lang-CNquF3AP.js.map +1 -1
  143. package/dist/LicenseChip.js.map +1 -1
  144. package/dist/LicenseChip.vue.d.ts +30 -3
  145. package/dist/ListItem.js.map +1 -1
  146. package/dist/ListItem.vue.d.ts +294 -0
  147. package/dist/ListItemCell.js.map +1 -1
  148. package/dist/ListItemCell.vue.d.ts +21 -0
  149. package/dist/ListView.js +7 -4
  150. package/dist/ListView.js.map +1 -1
  151. package/dist/ListView.types.d.ts +29 -0
  152. package/dist/ListView.vue.d.ts +5496 -0
  153. package/dist/Loading.js +2 -2
  154. package/dist/Loading.js.map +1 -1
  155. package/dist/Loading.vue.d.ts +1 -1
  156. package/dist/Logo.js +1 -1
  157. package/dist/Logo.vue.d.ts +41 -6
  158. package/dist/{Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js → Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js} +17 -17
  159. package/dist/Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js.map +1 -0
  160. package/dist/Menu.js.map +1 -1
  161. package/dist/Menu.vue.d.ts +1 -1
  162. package/dist/MenuItem.js.map +1 -1
  163. package/dist/MenuItem.vue.d.ts +1 -1
  164. package/dist/MenusPlugin-Bk6UW6o9.js +12 -0
  165. package/dist/{MenusPlugin-B4jpNe7x.js.map → MenusPlugin-Bk6UW6o9.js.map} +1 -1
  166. package/dist/Metric.js.map +1 -1
  167. package/dist/Metric.vue.d.ts +34 -3
  168. package/dist/Modal.js +64 -62
  169. package/dist/Modal.js.map +1 -1
  170. package/dist/Modal.vue.d.ts +60 -13
  171. package/dist/Modals.js +18 -17
  172. package/dist/Modals.js.map +1 -1
  173. package/dist/ModalsPlugin.js +11 -11
  174. package/dist/ModalsPlugin.js.map +1 -1
  175. package/dist/Module.js.map +1 -1
  176. package/dist/Module.keys-CEsrW2f0.js.map +1 -1
  177. package/dist/Module.types-B1FfGGac.js.map +1 -1
  178. package/dist/Module.vue.d.ts +29 -2
  179. package/dist/ModuleContent.js.map +1 -1
  180. package/dist/ModuleContent.vue.d.ts +3 -3
  181. package/dist/ModuleFooter.js.map +1 -1
  182. package/dist/ModuleFooter.vue.d.ts +1 -1
  183. package/dist/ModuleHeader.js.map +1 -1
  184. package/dist/ModuleHeader.vue.d.ts +39 -5
  185. package/dist/MoreActions.js +125 -123
  186. package/dist/MoreActions.js.map +1 -1
  187. package/dist/MoreActions.vue.d.ts +46 -123
  188. package/dist/ObfuscateText.js.map +1 -1
  189. package/dist/ObfuscateText.vue.d.ts +40 -3
  190. package/dist/PageContent.js.map +1 -1
  191. package/dist/PageContent.vue.d.ts +30 -3
  192. package/dist/PageHeader.js.map +1 -1
  193. package/dist/PageHeader.vue.d.ts +35 -6
  194. package/dist/PageNavigation.js +50 -50
  195. package/dist/PageNavigation.js.map +1 -1
  196. package/dist/PageNavigation.vue.d.ts +36 -7
  197. package/dist/Paginate.js.map +1 -1
  198. package/dist/Paginate.vue.d.ts +40 -5
  199. package/dist/PlaidLink.js.map +1 -1
  200. package/dist/PlaidLink.vue.d.ts +49 -12
  201. package/dist/QuickAction.js.map +1 -1
  202. package/dist/QuickAction.vue.d.ts +15 -2
  203. package/dist/Radio.js.map +1 -1
  204. package/dist/Radio.vue.d.ts +93 -0
  205. package/dist/RadioGroup.js +101 -94
  206. package/dist/RadioGroup.js.map +1 -1
  207. package/dist/RadioGroup.vue.d.ts +42 -116
  208. package/dist/RadioNew.js +99 -96
  209. package/dist/RadioNew.js.map +1 -1
  210. package/dist/RadioNew.vue.d.ts +48 -7
  211. package/dist/RangeInput.js.map +1 -1
  212. package/dist/RangeInput.vue.d.ts +1 -1
  213. package/dist/SearchBar.js +39 -38
  214. package/dist/SearchBar.js.map +1 -1
  215. package/dist/SearchBar.vue.d.ts +44 -127
  216. package/dist/SectionHeader.js.map +1 -1
  217. package/dist/SectionHeader.vue.d.ts +36 -5
  218. package/dist/Select.js +183 -171
  219. package/dist/Select.js.map +1 -1
  220. package/dist/Select.vue.d.ts +102 -23
  221. package/dist/SelectStatus.js +38 -38
  222. package/dist/SelectStatus.js.map +1 -1
  223. package/dist/SelectStatus.vue.d.ts +46 -226
  224. package/dist/Skeleton.js.map +1 -1
  225. package/dist/Skeleton.vue.d.ts +34 -3
  226. package/dist/Step.js +44 -44
  227. package/dist/Step.js.map +1 -1
  228. package/dist/Step.vue.d.ts +43 -4
  229. package/dist/Stepper.js.map +1 -1
  230. package/dist/Stepper.vue.d.ts +44 -9
  231. package/dist/Switch.js.map +1 -1
  232. package/dist/Switch.vue.d.ts +47 -8
  233. package/dist/Tab.js.map +1 -1
  234. package/dist/Tab.vue.d.ts +15 -2
  235. package/dist/TabPanel.js.map +1 -1
  236. package/dist/TabPanel.vue.d.ts +30 -3
  237. package/dist/Table.js +59 -53
  238. package/dist/Table.js.map +1 -1
  239. package/dist/Table.keys-LHQf6FEH.js.map +1 -1
  240. package/dist/Table.vue.d.ts +50 -3
  241. package/dist/TableCell.js +1 -1
  242. package/dist/TableCell.js.map +1 -1
  243. package/dist/TableCell.vue.d.ts +32 -3
  244. package/dist/TableHeaderCell.js +1 -1
  245. package/dist/TableHeaderCell.js.map +1 -1
  246. package/dist/TableHeaderCell.vue.d.ts +30 -3
  247. package/dist/TableHeaderRow.js +1 -1
  248. package/dist/TableHeaderRow.js.map +1 -1
  249. package/dist/TableHeaderRow.vue.d.ts +34 -5
  250. package/dist/TableRow.js +44 -43
  251. package/dist/TableRow.js.map +1 -1
  252. package/dist/TableRow.vue.d.ts +48 -7
  253. package/dist/Tabs.vue.d.ts +31 -4
  254. package/dist/Tabs.vue_vue_type_script_setup_true_lang-BlJVDr7o.js.map +1 -1
  255. package/dist/TextEditor.js +2420 -2414
  256. package/dist/TextEditor.js.map +1 -1
  257. package/dist/TextEditor.vue.d.ts +39 -8
  258. package/dist/Textarea.js +32 -29
  259. package/dist/Textarea.js.map +1 -1
  260. package/dist/Textarea.vue.d.ts +44 -9
  261. package/dist/Thumbnail.js +1 -1
  262. package/dist/Thumbnail.js.map +1 -1
  263. package/dist/Thumbnail.vue.d.ts +4 -4
  264. package/dist/ThumbnailEmpty.js.map +1 -1
  265. package/dist/ThumbnailEmpty.vue.d.ts +1 -1
  266. package/dist/ThumbnailGroup.js.map +1 -1
  267. package/dist/ThumbnailGroup.keys-EJ4qFNhx.js.map +1 -1
  268. package/dist/ThumbnailGroup.vue.d.ts +22 -26
  269. package/dist/Timeline.js.map +1 -1
  270. package/dist/Timeline.vue.d.ts +32 -3
  271. package/dist/TimelineItem.js.map +1 -1
  272. package/dist/TimelineItem.vue.d.ts +1 -1
  273. package/dist/Toast.js.map +1 -1
  274. package/dist/Toast.vue.d.ts +30 -3
  275. package/dist/Toasts.js.map +1 -1
  276. package/dist/ToastsPlugin.js +11 -11
  277. package/dist/ToastsPlugin.js.map +1 -1
  278. package/dist/Tooltip.js +30 -29
  279. package/dist/Tooltip.js.map +1 -1
  280. package/dist/Tooltip.vue.d.ts +43 -11
  281. package/dist/colors-DDDVvqfQ.js.map +1 -1
  282. package/dist/components.css +1 -1
  283. package/dist/constants.js.map +1 -1
  284. package/dist/directives/autofocus.js.map +1 -1
  285. package/dist/directives/clickoutside.js.map +1 -1
  286. package/dist/directives/observe.js.map +1 -1
  287. package/dist/directives/sticky.js.map +1 -1
  288. package/dist/directives/tooltip.js +3 -3
  289. package/dist/directives/tooltip.js.map +1 -1
  290. package/dist/directives/viewable.js +44 -39
  291. package/dist/directives/viewable.js.map +1 -1
  292. package/dist/{floating-ui.vue-CL01Y9ER.js → floating-ui.vue-pzUuloyX.js} +2 -2
  293. package/dist/{floating-ui.vue-CL01Y9ER.js.map → floating-ui.vue-pzUuloyX.js.map} +1 -1
  294. package/dist/formatDateTime-Dz8bXV0R.js +1418 -0
  295. package/dist/{formatDateTime-DG7kBc2T.js.map → formatDateTime-Dz8bXV0R.js.map} +1 -1
  296. package/dist/{index-XZqpB2_R.js → index-C14LhAwV.js} +4 -4
  297. package/dist/{index-XZqpB2_R.js.map → index-C14LhAwV.js.map} +1 -1
  298. package/dist/index-D6bxWkZ1.js.map +1 -1
  299. package/dist/index.js +104 -99
  300. package/dist/index.js.map +1 -1
  301. package/dist/isDefined-DzVx0B6k.js.map +1 -1
  302. package/dist/keys-BEdEsanp.js.map +1 -1
  303. package/dist/keys-C8Zfr_By.js.map +1 -1
  304. package/dist/locale.js.map +1 -1
  305. package/dist/misc-CHQs-G03.js.map +1 -1
  306. package/dist/obfuscateText.d.ts +1 -1
  307. package/dist/parseISO-wlfIB_QJ.js.map +1 -1
  308. package/dist/searchFuzzy-DRasJ33G.js +409 -0
  309. package/dist/{searchFuzzy-DBDE6jkd.js.map → searchFuzzy-DRasJ33G.js.map} +1 -1
  310. package/dist/statusLevels-D8EgtE_L.js.map +1 -1
  311. package/dist/storage.js.map +1 -1
  312. package/dist/tailwind-base.js.map +1 -1
  313. package/dist/toTimeZone-Coq1oPTt.js.map +1 -1
  314. package/dist/useConfirmBeforeClosing.js.map +1 -1
  315. package/dist/useDialog.d.ts +2 -2
  316. package/dist/useDialog.js +25 -21
  317. package/dist/useDialog.js.map +1 -1
  318. package/dist/useGoogleMaps.js +110 -108
  319. package/dist/useGoogleMaps.js.map +1 -1
  320. package/dist/useMediaQuery.d.ts +6 -0
  321. package/dist/useMediaQuery.js +15 -11
  322. package/dist/useMediaQuery.js.map +1 -1
  323. package/dist/useModals.d.ts +1 -1
  324. package/dist/useModals.js.map +1 -1
  325. package/dist/usePaginationStats-d_q39naC.js.map +1 -1
  326. package/dist/usePlaidLink.js +27 -20
  327. package/dist/usePlaidLink.js.map +1 -1
  328. package/dist/useScriptTag.js.map +1 -1
  329. package/dist/useSearch.js +13 -13
  330. package/dist/useSearch.js.map +1 -1
  331. package/dist/useSelection.js +56 -56
  332. package/dist/useSelection.js.map +1 -1
  333. package/dist/useSortable.js +63 -54
  334. package/dist/useSortable.js.map +1 -1
  335. package/dist/useStepper.d.ts +2 -2
  336. package/dist/useStepper.js +40 -36
  337. package/dist/useStepper.js.map +1 -1
  338. package/dist/useToasts.js +23 -23
  339. package/dist/useToasts.js.map +1 -1
  340. package/dist/useValidation.js +100 -96
  341. package/dist/useValidation.js.map +1 -1
  342. package/dist/utils/calculateElementOverflow.js +4 -4
  343. package/dist/utils/calculateElementOverflow.js.map +1 -1
  344. package/dist/utils/colorScheme.js.map +1 -1
  345. package/dist/utils/createQueryString.js.map +1 -1
  346. package/dist/utils/createValidDate.js.map +1 -1
  347. package/dist/utils/formatDateTime.js +1 -1
  348. package/dist/utils/getContrastingTextColor.js.map +1 -1
  349. package/dist/utils/helpers.js.map +1 -1
  350. package/dist/utils/i18n.js.map +1 -1
  351. package/dist/utils/normalizeDate.js.map +1 -1
  352. package/dist/utils/obfuscateText.js +6 -6
  353. package/dist/utils/obfuscateText.js.map +1 -1
  354. package/dist/utils/searchFuzzy.js +1 -1
  355. package/dist/utils/storage.js +23 -23
  356. package/dist/utils/storage.js.map +1 -1
  357. package/package.json +12 -12
  358. package/dist/Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js.map +0 -1
  359. package/dist/MenusPlugin-B4jpNe7x.js +0 -12
  360. package/dist/formatDateTime-DG7kBc2T.js +0 -1414
  361. package/dist/searchFuzzy-DBDE6jkd.js +0 -408
@@ -1 +1 @@
1
- {"version":3,"file":"index-D6bxWkZ1.js","sources":["../node_modules/vue-inline-svg/src/index.js"],"sourcesContent":["// peer dep is not installed during test\n// eslint-disable-next-line import/no-unresolved\nimport { h as createElement } from 'vue';\n\n/** @type {Record<string, PromiseWithState<Element>>} */\nconst cache = {};\n\n/**\n * Remove false attrs\n * @param {Object} attrs\n */\nfunction filterAttrs(attrs) {\n return Object.keys(attrs).reduce((result, key) => {\n if (attrs[key] !== false && attrs[key] !== null && attrs[key] !== undefined) {\n result[key] = attrs[key];\n }\n return result;\n }, {});\n}\n\nconst InlineSvg = {\n name: 'InlineSvg',\n inheritAttrs: false,\n render() {\n if (!this.svgElSource) {\n return null;\n }\n return createElement(\n 'svg',\n Object.assign(\n {},\n // source attrs\n this.getSvgAttrs(this.svgElSource),\n // component attrs and listeners\n filterAttrs(this.$attrs),\n // content\n { innerHTML: this.getSvgContent(this.svgElSource) },\n ),\n );\n },\n props: {\n src: {\n type: String,\n required: true,\n },\n title: {\n type: String,\n },\n transformSource: {\n type: Function,\n default: (svg) => svg,\n },\n keepDuringLoading: {\n type: Boolean,\n default: true,\n },\n },\n emits: ['loaded', 'unloaded', 'error'],\n data() {\n return {\n /** @type {SVGElement} */\n svgElSource: null,\n /** @type {XMLHttpRequest} */\n request: undefined,\n };\n },\n watch: {\n src(newValue) {\n // re-generate cached svg (`svgElSource`)\n this.getSource(newValue);\n },\n },\n mounted() {\n // generate `svgElSource`\n this.getSource(this.src);\n },\n methods: {\n getSvgAttrs(svgEl) {\n // copy attrs\n let svgAttrs = {};\n const attrs = svgEl.attributes;\n if (!attrs) {\n return svgAttrs;\n }\n for (let i = attrs.length - 1; i >= 0; i--) {\n svgAttrs[attrs[i].name] = attrs[i].value;\n }\n return svgAttrs;\n },\n getSvgContent(svgEl) {\n svgEl = svgEl.cloneNode(true);\n svgEl = this.transformSource(svgEl);\n if (this.title) {\n setTitle(svgEl, this.title);\n }\n\n // copy inner html\n return svgEl.innerHTML;\n },\n /**\n * Get svgElSource\n * @param {string} src\n */\n getSource(src) {\n // fill cache by src with promise\n if (!cache[src]) {\n // download\n cache[src] = this.download(src);\n }\n // notify svg is unloaded\n if (this.svgElSource && cache[src].getIsPending() && !this.keepDuringLoading) {\n this.svgElSource = null;\n this.$emit('unloaded');\n }\n\n // inline svg when cached promise resolves\n cache[src]\n .then((svg) => {\n this.svgElSource = svg;\n // wait to render\n this.$nextTick(() => {\n // notify\n this.$emit('loaded', this.$el);\n });\n })\n .catch((err) => {\n // notify svg is unloaded\n if (this.svgElSource) {\n this.svgElSource = null;\n this.$emit('unloaded');\n }\n // remove cached rejected promise so next image can try load again\n delete cache[src];\n this.$emit('error', err);\n });\n },\n\n /**\n * Get the contents of the SVG\n * @param {string} url\n * @returns {PromiseWithState<Element>}\n */\n download(url) {\n return makePromiseState(new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open('GET', url, true);\n this.request = request;\n\n request.onload = () => {\n if (request.status >= 200 && request.status < 400) {\n try {\n // Setup a parser to convert the response to text/xml in order for it to be manipulated and changed\n const parser = new DOMParser();\n const result = parser.parseFromString(request.responseText, 'text/xml');\n let svgEl = result.getElementsByTagName('svg')[0];\n if (svgEl) {\n // svgEl = this.transformSource(svgEl);\n resolve(svgEl);\n } else {\n reject(new Error('Loaded file is not valid SVG\"'));\n }\n } catch (e) {\n reject(e);\n }\n } else {\n reject(new Error('Error loading SVG'));\n }\n };\n\n request.onerror = reject;\n request.send();\n }));\n },\n },\n};\n\n/**\n * Create or edit the <title> element of a SVG\n * @param {SVGElement} svg\n * @param {string} title\n */\nfunction setTitle(svg, title) {\n const titleTags = svg.getElementsByTagName('title');\n if (titleTags.length) { // overwrite existing title\n titleTags[0].textContent = title;\n } else { // create a title element if one doesn't already exist\n const titleEl = document.createElementNS('http://www.w3.org/2000/svg', 'title');\n titleEl.textContent = title;\n // svg.prepend(titleEl);\n svg.insertBefore(titleEl, svg.firstChild);\n }\n}\n\n/**\n * @typedef {Promise & object} PromiseWithState\n * @property {function: boolean} getIsPending\n * @template T\n */\n\n/**\n * This function allow you to modify a JS Promise by adding some status properties.\n * @template {any} T\n * @param {Promise<T>|PromiseWithState<T>} promise\n * @return {PromiseWithState<T>}\n */\nfunction makePromiseState(promise) {\n // Don't modify any promise that has been already modified.\n if (promise.getIsPending) return promise;\n\n // Set initial state\n let isPending = true;\n\n // Observe the promise, saving the fulfillment in a closure scope.\n let result = promise.then(\n (v) => {\n isPending = false;\n return v;\n },\n (e) => {\n isPending = false;\n throw e;\n },\n );\n\n result.getIsPending = function getIsPending() { return isPending; };\n return result;\n}\n\nexport default InlineSvg;\n"],"names":["cache","filterAttrs","attrs","result","key","InlineSvg","createElement","svg","newValue","svgEl","svgAttrs","i","setTitle","src","err","url","makePromiseState","resolve","reject","request","e","title","titleTags","titleEl","promise","isPending","v"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index-D6bxWkZ1.js","sources":["../node_modules/vue-inline-svg/src/index.js"],"sourcesContent":["// peer dep is not installed during test\n// eslint-disable-next-line import/no-unresolved\nimport { h as createElement } from 'vue';\n\n/** @type {Record<string, PromiseWithState<Element>>} */\nconst cache = {};\n\n/**\n * Remove false attrs\n * @param {Object} attrs\n */\nfunction filterAttrs(attrs) {\n return Object.keys(attrs).reduce((result, key) => {\n if (attrs[key] !== false && attrs[key] !== null && attrs[key] !== undefined) {\n result[key] = attrs[key];\n }\n return result;\n }, {});\n}\n\nconst InlineSvg = {\n name: 'InlineSvg',\n inheritAttrs: false,\n render() {\n if (!this.svgElSource) {\n return null;\n }\n return createElement(\n 'svg',\n Object.assign(\n {},\n // source attrs\n this.getSvgAttrs(this.svgElSource),\n // component attrs and listeners\n filterAttrs(this.$attrs),\n // content\n { innerHTML: this.getSvgContent(this.svgElSource) },\n ),\n );\n },\n props: {\n src: {\n type: String,\n required: true,\n },\n title: {\n type: String,\n },\n transformSource: {\n type: Function,\n default: (svg) => svg,\n },\n keepDuringLoading: {\n type: Boolean,\n default: true,\n },\n },\n emits: ['loaded', 'unloaded', 'error'],\n data() {\n return {\n /** @type {SVGElement} */\n svgElSource: null,\n /** @type {XMLHttpRequest} */\n request: undefined,\n };\n },\n watch: {\n src(newValue) {\n // re-generate cached svg (`svgElSource`)\n this.getSource(newValue);\n },\n },\n mounted() {\n // generate `svgElSource`\n this.getSource(this.src);\n },\n methods: {\n getSvgAttrs(svgEl) {\n // copy attrs\n let svgAttrs = {};\n const attrs = svgEl.attributes;\n if (!attrs) {\n return svgAttrs;\n }\n for (let i = attrs.length - 1; i >= 0; i--) {\n svgAttrs[attrs[i].name] = attrs[i].value;\n }\n return svgAttrs;\n },\n getSvgContent(svgEl) {\n svgEl = svgEl.cloneNode(true);\n svgEl = this.transformSource(svgEl);\n if (this.title) {\n setTitle(svgEl, this.title);\n }\n\n // copy inner html\n return svgEl.innerHTML;\n },\n /**\n * Get svgElSource\n * @param {string} src\n */\n getSource(src) {\n // fill cache by src with promise\n if (!cache[src]) {\n // download\n cache[src] = this.download(src);\n }\n // notify svg is unloaded\n if (this.svgElSource && cache[src].getIsPending() && !this.keepDuringLoading) {\n this.svgElSource = null;\n this.$emit('unloaded');\n }\n\n // inline svg when cached promise resolves\n cache[src]\n .then((svg) => {\n this.svgElSource = svg;\n // wait to render\n this.$nextTick(() => {\n // notify\n this.$emit('loaded', this.$el);\n });\n })\n .catch((err) => {\n // notify svg is unloaded\n if (this.svgElSource) {\n this.svgElSource = null;\n this.$emit('unloaded');\n }\n // remove cached rejected promise so next image can try load again\n delete cache[src];\n this.$emit('error', err);\n });\n },\n\n /**\n * Get the contents of the SVG\n * @param {string} url\n * @returns {PromiseWithState<Element>}\n */\n download(url) {\n return makePromiseState(new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open('GET', url, true);\n this.request = request;\n\n request.onload = () => {\n if (request.status >= 200 && request.status < 400) {\n try {\n // Setup a parser to convert the response to text/xml in order for it to be manipulated and changed\n const parser = new DOMParser();\n const result = parser.parseFromString(request.responseText, 'text/xml');\n let svgEl = result.getElementsByTagName('svg')[0];\n if (svgEl) {\n // svgEl = this.transformSource(svgEl);\n resolve(svgEl);\n } else {\n reject(new Error('Loaded file is not valid SVG\"'));\n }\n } catch (e) {\n reject(e);\n }\n } else {\n reject(new Error('Error loading SVG'));\n }\n };\n\n request.onerror = reject;\n request.send();\n }));\n },\n },\n};\n\n/**\n * Create or edit the <title> element of a SVG\n * @param {SVGElement} svg\n * @param {string} title\n */\nfunction setTitle(svg, title) {\n const titleTags = svg.getElementsByTagName('title');\n if (titleTags.length) { // overwrite existing title\n titleTags[0].textContent = title;\n } else { // create a title element if one doesn't already exist\n const titleEl = document.createElementNS('http://www.w3.org/2000/svg', 'title');\n titleEl.textContent = title;\n // svg.prepend(titleEl);\n svg.insertBefore(titleEl, svg.firstChild);\n }\n}\n\n/**\n * @typedef {Promise & object} PromiseWithState\n * @property {function: boolean} getIsPending\n * @template T\n */\n\n/**\n * This function allow you to modify a JS Promise by adding some status properties.\n * @template {any} T\n * @param {Promise<T>|PromiseWithState<T>} promise\n * @return {PromiseWithState<T>}\n */\nfunction makePromiseState(promise) {\n // Don't modify any promise that has been already modified.\n if (promise.getIsPending) return promise;\n\n // Set initial state\n let isPending = true;\n\n // Observe the promise, saving the fulfillment in a closure scope.\n let result = promise.then(\n (v) => {\n isPending = false;\n return v;\n },\n (e) => {\n isPending = false;\n throw e;\n },\n );\n\n result.getIsPending = function getIsPending() { return isPending; };\n return result;\n}\n\nexport default InlineSvg;\n"],"names":["cache","filterAttrs","attrs","result","key","InlineSvg","createElement","svg","newValue","svgEl","svgAttrs","i","setTitle","src","err","url","makePromiseState","resolve","reject","request","e","title","titleTags","titleEl","promise","isPending","v"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@ import B from "lodash-es/omit";
4
4
  import F from "./useDialog.js";
5
5
  import q from "./CustomRender.js";
6
6
  import A from "./Dialog.js";
7
- import { M as R } from "./MenusPlugin-B4jpNe7x.js";
7
+ import { M as R } from "./MenusPlugin-Bk6UW6o9.js";
8
8
  import G from "./ModalsPlugin.js";
9
9
  import U from "./ToastsPlugin.js";
10
10
  import { overridePersistentStorage as V } from "./storage.js";
@@ -21,17 +21,17 @@ function M(r) {
21
21
  var z = function() {
22
22
  var r = !1;
23
23
  try {
24
- var s = Object.defineProperty({}, "passive", {
24
+ var o = Object.defineProperty({}, "passive", {
25
25
  get: function() {
26
26
  r = !0;
27
27
  }
28
28
  });
29
- window.addEventListener("test", null, s);
29
+ window.addEventListener("test", null, o);
30
30
  } catch {
31
31
  }
32
32
  return r;
33
33
  }(), J = {
34
- install: function(r, s) {
34
+ install: function(r, o) {
35
35
  var n = Object.assign({}, {
36
36
  disableClick: !1,
37
37
  tapTolerance: 10,
@@ -48,72 +48,72 @@ var z = function() {
48
48
  rollOverFrequency: 100,
49
49
  // ms
50
50
  namespace: "touch"
51
- }, s);
51
+ }, o);
52
52
  function i(e) {
53
- var t = this.$$touchObj, o = e.type.indexOf("touch") >= 0, h = e.type.indexOf("mouse") >= 0, f = this;
54
- o && (t.lastTouchStartTime = e.timeStamp), !(h && t.lastTouchStartTime && e.timeStamp - t.lastTouchStartTime < 350) && (t.touchStarted || (C(this), t.touchStarted = !0, t.touchMoved = !1, t.swipeOutBounded = !1, t.startX = L(e), t.startY = M(e), t.currentX = 0, t.currentY = 0, t.touchStartTime = e.timeStamp, t.hasSwipe = l(this, "swipe") || l(this, "swipe.left") || l(this, "swipe.right") || l(this, "swipe.top") || l(this, "swipe.bottom"), l(this, "hold") && (t.touchHoldTimer = setTimeout(function() {
55
- t.touchHoldTimer = null, d(e, f, "hold");
56
- }, t.options.touchHoldTolerance)), d(e, this, "press")));
53
+ var t = this.$$touchObj, s = e.type.indexOf("touch") >= 0, m = e.type.indexOf("mouse") >= 0, d = this;
54
+ s && (t.lastTouchStartTime = e.timeStamp), !(m && t.lastTouchStartTime && e.timeStamp - t.lastTouchStartTime < 350) && (t.touchStarted || (C(this), t.touchStarted = !0, t.touchMoved = !1, t.swipeOutBounded = !1, t.startX = L(e), t.startY = M(e), t.currentX = 0, t.currentY = 0, t.touchStartTime = e.timeStamp, t.hasSwipe = c(this, "swipe") || c(this, "swipe.left") || c(this, "swipe.right") || c(this, "swipe.top") || c(this, "swipe.bottom"), c(this, "hold") && (t.touchHoldTimer = setTimeout(function() {
55
+ t.touchHoldTimer = null, T(e, d, "hold");
56
+ }, t.options.touchHoldTolerance)), T(e, this, "press")));
57
57
  }
58
- function m(e) {
59
- var t = this.$$touchObj, o = L(e), h = M(e), f = t.currentX != o || t.currentY != h;
60
- if (t.currentX = o, t.currentY = h, t.touchMoved) {
58
+ function v(e) {
59
+ var t = this.$$touchObj, s = L(e), m = M(e), d = t.currentX != s || t.currentY != m;
60
+ if (t.currentX = s, t.currentY = m, t.touchMoved) {
61
61
  if (t.hasSwipe && !t.swipeOutBounded) {
62
- var c = t.options.swipeTolerance;
63
- t.swipeOutBounded = Math.abs(t.startX - t.currentX) > c && Math.abs(t.startY - t.currentY) > c;
62
+ var u = t.options.swipeTolerance;
63
+ t.swipeOutBounded = Math.abs(t.startX - t.currentX) > u && Math.abs(t.startY - t.currentY) > u;
64
64
  }
65
65
  } else {
66
- var u = t.options.tapTolerance;
67
- t.touchMoved = Math.abs(t.startX - t.currentX) > u || Math.abs(t.startY - t.currentY) > u, t.touchMoved && (S(t), d(e, this, "drag.once"));
66
+ var l = t.options.tapTolerance;
67
+ t.touchMoved = Math.abs(t.startX - t.currentX) > l || Math.abs(t.startY - t.currentY) > l, t.touchMoved && (S(t), T(e, this, "drag.once"));
68
68
  }
69
- if (l(this, "rollover") && f) {
70
- var a = e.timeStamp, b = t.options.rollOverFrequency;
71
- (t.touchRollTime == null || a > t.touchRollTime + b) && (t.touchRollTime = a, d(e, this, "rollover"));
69
+ if (c(this, "rollover") && d) {
70
+ var a = e.timeStamp, E = t.options.rollOverFrequency;
71
+ (t.touchRollTime == null || a > t.touchRollTime + E) && (t.touchRollTime = a, T(e, this, "rollover"));
72
72
  }
73
- if (l(this, "drag") && t.touchStarted && t.touchMoved && f) {
74
- var a = e.timeStamp, b = t.options.dragFrequency;
75
- (t.touchDragTime == null || a > t.touchDragTime + b) && (t.touchDragTime = a, d(e, this, "drag"));
73
+ if (c(this, "drag") && t.touchStarted && t.touchMoved && d) {
74
+ var a = e.timeStamp, E = t.options.dragFrequency;
75
+ (t.touchDragTime == null || a > t.touchDragTime + E) && (t.touchDragTime = a, T(e, this, "drag"));
76
76
  }
77
77
  }
78
- function E() {
78
+ function p() {
79
79
  var e = this.$$touchObj;
80
80
  S(e), O(this), e.touchStarted = e.touchMoved = !1, e.startX = e.startY = 0;
81
81
  }
82
- function v(e) {
83
- var t = this.$$touchObj, o = e.type.indexOf("touch") >= 0, h = e.type.indexOf("mouse") >= 0;
84
- o && (t.lastTouchEndTime = e.timeStamp);
85
- var f = o && !t.touchHoldTimer;
86
- if (S(t), t.touchStarted = !1, O(this), !(h && t.lastTouchEndTime && e.timeStamp - t.lastTouchEndTime < 350))
87
- if (d(e, this, "release"), t.touchMoved) {
82
+ function h(e) {
83
+ var t = this.$$touchObj, s = e.type.indexOf("touch") >= 0, m = e.type.indexOf("mouse") >= 0;
84
+ s && (t.lastTouchEndTime = e.timeStamp);
85
+ var d = s && !t.touchHoldTimer;
86
+ if (S(t), t.touchStarted = !1, O(this), !(m && t.lastTouchEndTime && e.timeStamp - t.lastTouchEndTime < 350))
87
+ if (T(e, this, "release"), t.touchMoved) {
88
88
  if (t.hasSwipe && !t.swipeOutBounded) {
89
- var u = t.options.swipeTolerance, c, a = Math.abs(t.startY - t.currentY), b = Math.abs(t.startX - t.currentX);
90
- (a > u || b > u) && (a > b ? c = t.startY > t.currentY ? "top" : "bottom" : c = t.startX > t.currentX ? "left" : "right", l(this, "swipe." + c) ? d(e, this, "swipe." + c, c) : d(e, this, "swipe", c));
89
+ var l = t.options.swipeTolerance, u, a = Math.abs(t.startY - t.currentY), E = Math.abs(t.startX - t.currentX);
90
+ (a > l || E > l) && (a > E ? u = t.startY > t.currentY ? "top" : "bottom" : u = t.startX > t.currentX ? "left" : "right", c(this, "swipe." + u) ? T(e, this, "swipe." + u, u) : T(e, this, "swipe", u));
91
91
  }
92
- } else if (l(this, "longtap") && e.timeStamp - t.touchStartTime > t.options.longTapTimeInterval)
93
- e.cancelable && e.preventDefault(), d(e, this, "longtap");
94
- else if (l(this, "hold") && f) {
92
+ } else if (c(this, "longtap") && e.timeStamp - t.touchStartTime > t.options.longTapTimeInterval)
93
+ e.cancelable && e.preventDefault(), T(e, this, "longtap");
94
+ else if (c(this, "hold") && d) {
95
95
  e.cancelable && e.preventDefault();
96
96
  return;
97
97
  } else
98
- d(e, this, "tap");
98
+ T(e, this, "tap");
99
99
  }
100
- function p() {
100
+ function f() {
101
101
  C(this);
102
102
  }
103
- function T() {
103
+ function b() {
104
104
  O(this);
105
105
  }
106
- function l(e, t) {
107
- var o = e.$$touchObj.callbacks[t];
108
- return o != null && o.length > 0;
106
+ function c(e, t) {
107
+ var s = e.$$touchObj.callbacks[t];
108
+ return s != null && s.length > 0;
109
109
  }
110
- function d(e, t, o, h) {
111
- var f = t.$$touchObj, u = f.callbacks[o];
112
- if (u == null || u.length === 0)
110
+ function T(e, t, s, m) {
111
+ var d = t.$$touchObj, l = d.callbacks[s];
112
+ if (l == null || l.length === 0)
113
113
  return null;
114
- for (var c = 0; c < u.length; c++) {
115
- var a = u[c];
116
- a.modifiers.stop && e.stopPropagation(), a.modifiers.prevent && e.preventDefault(), !(a.modifiers.self && e.target !== e.currentTarget) && typeof a.value == "function" && (h ? a.value(h, e) : a.value(e));
114
+ for (var u = 0; u < l.length; u++) {
115
+ var a = l[u];
116
+ a.modifiers.stop && e.stopPropagation(), a.modifiers.prevent && e.preventDefault(), !(a.modifiers.self && e.target !== e.currentTarget) && typeof a.value == "function" && (m ? a.value(m, e) : a.value(e));
117
117
  }
118
118
  }
119
119
  function C(e) {
@@ -128,7 +128,7 @@ var z = function() {
128
128
  e && e.touchHoldTimer && (clearTimeout(e.touchHoldTimer), e.touchHoldTimer = null);
129
129
  }
130
130
  function g(e, t) {
131
- var o = e.$$touchObj || {
131
+ var s = e.$$touchObj || {
132
132
  // an object contains all callbacks registered,
133
133
  // key is event name, value is an array
134
134
  callbacks: {},
@@ -137,33 +137,33 @@ var z = function() {
137
137
  // default options, would be override by v-touch-options
138
138
  options: n
139
139
  };
140
- return t && (o.options = Object.assign({}, o.options, t)), e.$$touchObj = o, e.$$touchObj;
140
+ return t && (s.options = Object.assign({}, s.options, t)), e.$$touchObj = s, e.$$touchObj;
141
141
  }
142
142
  r.directive(n.namespace, {
143
143
  beforeMount: function(e, t) {
144
- var o = g(e), h = z ? { passive: !0 } : !1, f = t.arg || "tap";
145
- switch (f) {
144
+ var s = g(e), m = z ? { passive: !0 } : !1, d = t.arg || "tap";
145
+ switch (d) {
146
146
  case "swipe":
147
- var u = t.modifiers;
148
- if (u.left || u.right || u.top || u.bottom) {
149
- for (var c in t.modifiers)
150
- if (["left", "right", "top", "bottom"].indexOf(c) >= 0) {
151
- var a = "swipe." + c;
152
- o.callbacks[a] = o.callbacks[a] || [], o.callbacks[a].push(t);
147
+ var l = t.modifiers;
148
+ if (l.left || l.right || l.top || l.bottom) {
149
+ for (var u in t.modifiers)
150
+ if (["left", "right", "top", "bottom"].indexOf(u) >= 0) {
151
+ var a = "swipe." + u;
152
+ s.callbacks[a] = s.callbacks[a] || [], s.callbacks[a].push(t);
153
153
  }
154
154
  } else
155
- o.callbacks.swipe = o.callbacks.swipe || [], o.callbacks.swipe.push(t);
155
+ s.callbacks.swipe = s.callbacks.swipe || [], s.callbacks.swipe.push(t);
156
156
  break;
157
157
  case "press":
158
158
  case "drag":
159
- t.modifiers.disablePassive && (h = !1);
159
+ t.modifiers.disablePassive && (m = !1);
160
160
  default:
161
- o.callbacks[f] = o.callbacks[f] || [], o.callbacks[f].push(t);
161
+ s.callbacks[d] = s.callbacks[d] || [], s.callbacks[d].push(t);
162
162
  }
163
- o.hasBindTouchEvents || (e.addEventListener("touchstart", i, h), e.addEventListener("touchmove", m, h), e.addEventListener("touchcancel", E), e.addEventListener("touchend", v), o.options.disableClick || (e.addEventListener("mousedown", i), e.addEventListener("mousemove", m), e.addEventListener("mouseup", v), e.addEventListener("mouseenter", p), e.addEventListener("mouseleave", T)), o.hasBindTouchEvents = !0);
163
+ s.hasBindTouchEvents || (e.addEventListener("touchstart", i, m), e.addEventListener("touchmove", v, m), e.addEventListener("touchcancel", p), e.addEventListener("touchend", h), s.options.disableClick || (e.addEventListener("mousedown", i), e.addEventListener("mousemove", v), e.addEventListener("mouseup", h), e.addEventListener("mouseenter", f), e.addEventListener("mouseleave", b)), s.hasBindTouchEvents = !0);
164
164
  },
165
165
  unmounted: function(e) {
166
- S(e.$$touchObj), e.removeEventListener("touchstart", i), e.removeEventListener("touchmove", m), e.removeEventListener("touchcancel", E), e.removeEventListener("touchend", v), e.$$touchObj && !e.$$touchObj.options.disableClick && (e.removeEventListener("mousedown", i), e.removeEventListener("mousemove", m), e.removeEventListener("mouseup", v), e.removeEventListener("mouseenter", p), e.removeEventListener("mouseleave", T)), delete e.$$touchObj;
166
+ S(e.$$touchObj), e.removeEventListener("touchstart", i), e.removeEventListener("touchmove", v), e.removeEventListener("touchcancel", p), e.removeEventListener("touchend", h), e.$$touchObj && !e.$$touchObj.options.disableClick && (e.removeEventListener("mousedown", i), e.removeEventListener("mousemove", v), e.removeEventListener("mouseup", h), e.removeEventListener("mouseenter", f), e.removeEventListener("mouseleave", b)), delete e.$$touchObj;
167
167
  }
168
168
  }), r.directive(`${n.namespace}-class`, {
169
169
  beforeMount: function(e, t) {
@@ -181,60 +181,65 @@ var z = function() {
181
181
  const K = /* @__PURE__ */ y({
182
182
  __name: "Dialogs",
183
183
  setup(r) {
184
- const s = F(), n = x(() => s.active ? B(s.active, ["deferred", "onConfirm", "onCancel", "slots"]) : null);
184
+ const o = F(), n = x(() => o.active ? B(o.active, ["deferred", "onConfirm", "onCancel", "slots"]) : null);
185
185
  function i() {
186
- s.active?.onCancel && s.active.onCancel(), s.active?.deferred?.resolve({
186
+ var p, h, f;
187
+ (p = o.active) != null && p.onCancel && o.active.onCancel(), (f = (h = o.active) == null ? void 0 : h.deferred) == null || f.resolve({
187
188
  isCanceled: !0
188
- }), s.close();
189
+ }), o.close();
189
190
  }
190
- async function m() {
191
- s.active?.onConfirm && await s.active.onConfirm(), s.active?.deferred?.resolve({
191
+ async function v() {
192
+ var p, h, f;
193
+ (p = o.active) != null && p.onConfirm && await o.active.onConfirm(), (f = (h = o.active) == null ? void 0 : h.deferred) == null || f.resolve({
192
194
  isConfirmed: !0
193
- }), s.close();
195
+ }), o.close();
194
196
  }
195
- return (E, v) => (Y(), X(A, D({
196
- open: !!n.value
197
- }, n.value, {
198
- onConfirm: m,
199
- onCancel: i
200
- }), P({ _: 2 }, [
201
- N($(s).active?.slots, (p, T) => ({
202
- name: T,
203
- fn: _(() => [
204
- k(q, { render: p }, null, 8, ["render"])
205
- ])
206
- }))
207
- ]), 1040, ["open"]));
197
+ return (p, h) => {
198
+ var f;
199
+ return Y(), X(A, D({
200
+ open: !!n.value
201
+ }, n.value, {
202
+ onConfirm: v,
203
+ onCancel: i
204
+ }), P({ _: 2 }, [
205
+ N((f = $(o).active) == null ? void 0 : f.slots, (b, c) => ({
206
+ name: c,
207
+ fn: _(() => [
208
+ k(q, { render: b }, null, 8, ["render"])
209
+ ])
210
+ }))
211
+ ]), 1040, ["open"]);
212
+ };
208
213
  }
209
214
  }), j = "stash-dialogs-mount-node", Q = {
210
- install(r, s) {
211
- const n = s?.mountNodeId || j;
215
+ install(r, o) {
216
+ const n = (o == null ? void 0 : o.mountNodeId) || j;
212
217
  let i = document.getElementById(n);
213
- i || (i = document.createElement("div"), i.id = n, i.dataset.test = j, document.body.appendChild(i)), s?.mountNodeClass && !i.classList.contains(s.mountNodeClass) && i.classList.add(s.mountNodeClass);
214
- const m = k(I(K));
215
- m.appContext = r._context, H(m, i);
218
+ i || (i = document.createElement("div"), i.id = n, i.dataset.test = j, document.body.appendChild(i)), o != null && o.mountNodeClass && !i.classList.contains(o.mountNodeClass) && i.classList.add(o.mountNodeClass);
219
+ const v = k(I(K));
220
+ v.appContext = r._context, H(v, i);
216
221
  }
217
- }, nt = {
222
+ }, ut = {
218
223
  install(r, {
219
- i18n: s = void 0,
224
+ i18n: o = void 0,
220
225
  storage: n = void 0,
221
226
  staticPath: i = "/static",
222
- images: m = {
227
+ images: v = {
223
228
  provider: "static"
224
229
  },
225
- googleMapsApiKey: E = void 0,
226
- menus: v,
227
- modals: p,
228
- toasts: T,
229
- dialogs: l
230
+ googleMapsApiKey: p = void 0,
231
+ menus: h,
232
+ modals: f,
233
+ toasts: b,
234
+ dialogs: c
230
235
  } = {}) {
231
- r.use(J, {}), s && (w.use(s.locale), w.i18n(s && s.t)), n && V(n), r.provide("stashOptions", {
232
- i18n: s,
233
- images: m,
236
+ r.use(J, {}), o && (w.use(o.locale), w.i18n(o && o.t)), n && V(n), r.provide("stashOptions", {
237
+ i18n: o,
238
+ images: v,
234
239
  storage: n,
235
240
  staticPath: i,
236
- googleMapsApiKey: E
237
- }), v !== !1 && r.use(R, v), p !== !1 && r.use(G, p), T !== !1 && r.use(U, T), l !== !1 && r.use(Q, l);
241
+ googleMapsApiKey: p
242
+ }), h !== !1 && r.use(R, h), f !== !1 && r.use(G, f), b !== !1 && r.use(U, b), c !== !1 && r.use(Q, c);
238
243
  }
239
244
  };
240
245
  export {
@@ -246,7 +251,7 @@ export {
246
251
  St as StatusColors,
247
252
  Ot as StatusIcons,
248
253
  gt as StatusSeverities,
249
- nt as default,
254
+ ut as default,
250
255
  V as overridePersistentStorage,
251
256
  ht as persistentStorage
252
257
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../node_modules/vue3-touch-events/index.js","../src/components/Dialogs/Dialogs.vue","../src/plugins/DialogsPlugin.ts","../src/index.ts"],"sourcesContent":["/**\r\n * @project vue3-touch-events\r\n * @author Robin Rodricks, Xavier Julien, Jerry Bendy\r\n * @since 30/4/2021\r\n * @url https://github.com/robinrodricks/vue3-touch-events\r\n */\r\n\r\nfunction touchX(event) {\r\n if(event.type.indexOf('mouse') !== -1){\r\n return event.clientX;\r\n }\r\n return event.touches[0].clientX;\r\n}\r\n\r\nfunction touchY(event) {\r\n if(event.type.indexOf('mouse') !== -1){\r\n return event.clientY;\r\n }\r\n return event.touches[0].clientY;\r\n}\r\n\r\nvar isPassiveSupported = (function() {\r\n var supportsPassive = false;\r\n try {\r\n var opts = Object.defineProperty({}, 'passive', {\r\n get: function() {\r\n supportsPassive = true;\r\n }\r\n });\r\n window.addEventListener('test', null, opts);\r\n } catch (e) {}\r\n return supportsPassive;\r\n})();\r\n\r\nvar vueTouchEvents = {\r\n install: function (app, constructorOptions) {\r\n\t\t\r\n var globalOptions = Object.assign({}, {\r\n disableClick: false,\r\n tapTolerance: 10, // px\r\n swipeTolerance: 30, // px\r\n touchHoldTolerance: 400, // ms\r\n longTapTimeInterval: 400, // ms\r\n touchClass: '',\r\n\t\t\tdragFrequency: 100, // ms\r\n\t\t\trollOverFrequency: 100, // ms\r\n namespace: 'touch',\r\n }, constructorOptions);\r\n\r\n function touchStartEvent(event) {\r\n var $this = this.$$touchObj,\r\n isTouchEvent = event.type.indexOf('touch') >= 0,\r\n isMouseEvent = event.type.indexOf('mouse') >= 0,\r\n $el = this;\r\n\r\n if (isTouchEvent) {\r\n $this.lastTouchStartTime = event.timeStamp;\r\n }\r\n\r\n if (isMouseEvent && $this.lastTouchStartTime && event.timeStamp - $this.lastTouchStartTime < 350) {\r\n return;\r\n }\r\n\r\n if ($this.touchStarted) {\r\n return;\r\n }\r\n\r\n addTouchClass(this);\r\n\r\n $this.touchStarted = true; // always true while the element is being PRESSED\r\n\r\n $this.touchMoved = false; // true only when the element is PRESSED and DRAGGED a bit\r\n $this.swipeOutBounded = false;\r\n\r\n $this.startX = touchX(event);\r\n $this.startY = touchY(event);\r\n\r\n $this.currentX = 0; // always updated with the last mouse X/Y while over the element\r\n $this.currentY = 0;\r\n\r\n $this.touchStartTime = event.timeStamp;\r\n\t\t\t\r\n\t\t\t// performance: only process swipe events if `swipe.*` event is registered on this element\r\n\t\t\t$this.hasSwipe = hasEvent(this, 'swipe')\r\n\t\t\t\t|| hasEvent(this, 'swipe.left') || hasEvent(this, 'swipe.right')\r\n\t\t\t\t|| hasEvent(this, 'swipe.top') || hasEvent(this, 'swipe.bottom');\r\n\r\n\t\t\t// performance: only start hold timer if the `hold` event is registered on this element\r\n\t\t\tif (hasEvent(this, 'hold')){\r\n\t\t\t\t\r\n\t\t\t\t// Trigger touchhold event after `touchHoldTolerance` MS\r\n\t\t\t\t$this.touchHoldTimer = setTimeout(function() {\r\n\t\t\t\t\t$this.touchHoldTimer = null;\r\n\t\t\t\t\ttriggerEvent(event, $el, 'hold');\r\n\t\t\t\t}, $this.options.touchHoldTolerance);\r\n\t\t\t}\r\n\t\t\t\r\n triggerEvent(event, this, 'press');\r\n }\r\n\r\n function touchMoveEvent(event) {\r\n var $this = this.$$touchObj;\r\n\t\t\t\r\n\t\t\tvar curX = touchX(event);\r\n\t\t\tvar curY = touchY(event);\r\n\r\n\t\t\tvar movedAgain = ($this.currentX != curX) || ($this.currentY != curY);\r\n\t\t\t\r\n $this.currentX = curX;\r\n $this.currentY = curY;\r\n\r\n if (!$this.touchMoved) {\r\n var tapTolerance = $this.options.tapTolerance;\r\n\r\n $this.touchMoved = Math.abs($this.startX - $this.currentX) > tapTolerance ||\r\n\t\t\t\t\t\t\t\t Math.abs($this.startY - $this.currentY) > tapTolerance;\r\n\r\n\t\t\t\t// trigger `drag.once` only once after mouse FIRST moved while dragging the element\r\n\t\t\t\t// (`touchMoved` is the flag that indicates we no longer need to trigger this)\r\n if($this.touchMoved){\r\n cancelTouchHoldTimer($this);\r\n triggerEvent(event, this, 'drag.once');\r\n }\r\n\r\n\t\t\t// performance: only process swipe events if `swipe.*` event is registered on this element\r\n } else if ($this.hasSwipe && !$this.swipeOutBounded) {\r\n\t\t\t\tvar swipeOutBounded = $this.options.swipeTolerance;\r\n\r\n\t\t\t\t$this.swipeOutBounded = Math.abs($this.startX - $this.currentX) > swipeOutBounded &&\r\n\t\t\t\t\tMath.abs($this.startY - $this.currentY) > swipeOutBounded;\r\n }\r\n\r\n\t\t\t// only trigger `rollover` event if cursor actually moved over this element\r\n if(hasEvent(this, 'rollover') && movedAgain){\r\n\t\t\t\t\r\n\t\t\t\t// throttle the `rollover` event based on `rollOverFrequency`\r\n\t\t\t\tvar now = event.timeStamp;\r\n\t\t\t\tvar throttle = $this.options.rollOverFrequency;\r\n\t\t\t\tif ($this.touchRollTime == null || now > ($this.touchRollTime + throttle)){\r\n\t\t\t\t\t$this.touchRollTime = now;\r\n\t\t\t\t\t\r\n\t\t\t\t\ttriggerEvent(event, this, 'rollover');\r\n\t\t\t\t}\r\n }\r\n\r\n\t\t\t// only trigger `drag` event if cursor actually moved and if we are still dragging this element\r\n if(hasEvent(this, 'drag') && $this.touchStarted && $this.touchMoved && movedAgain){\r\n\t\t\t\t\r\n\t\t\t\t// throttle the `drag` event based on `dragFrequency`\r\n\t\t\t\tvar now = event.timeStamp;\r\n\t\t\t\tvar throttle = $this.options.dragFrequency;\r\n\t\t\t\tif ($this.touchDragTime == null || now > ($this.touchDragTime + throttle)){\r\n\t\t\t\t\t$this.touchDragTime = now;\r\n\t\t\t\t\t\r\n\t\t\t\t\ttriggerEvent(event, this, 'drag');\r\n\t\t\t\t}\r\n }\r\n }\r\n\r\n function touchCancelEvent() {\r\n var $this = this.$$touchObj;\r\n\r\n cancelTouchHoldTimer($this);\r\n removeTouchClass(this);\r\n\r\n $this.touchStarted = $this.touchMoved = false;\r\n $this.startX = $this.startY = 0;\r\n }\r\n\r\n function touchEndEvent(event) {\r\n var $this = this.$$touchObj,\r\n isTouchEvent = event.type.indexOf('touch') >= 0,\r\n isMouseEvent = event.type.indexOf('mouse') >= 0;\r\n\r\n if (isTouchEvent) {\r\n $this.lastTouchEndTime = event.timeStamp;\r\n }\r\n\r\n var touchholdEnd = isTouchEvent && !$this.touchHoldTimer;\r\n cancelTouchHoldTimer($this);\r\n\r\n $this.touchStarted = false;\r\n\r\n removeTouchClass(this);\r\n\r\n if (isMouseEvent && $this.lastTouchEndTime && event.timeStamp - $this.lastTouchEndTime < 350) {\r\n return;\r\n }\r\n\r\n // trigger `end` event when touch stopped\r\n triggerEvent(event, this, 'release');\r\n\r\n if (!$this.touchMoved) {\r\n // detect if this is a longTap event or not\r\n if (hasEvent(this, 'longtap') && event.timeStamp - $this.touchStartTime > $this.options.longTapTimeInterval) {\r\n if (event.cancelable) {\r\n event.preventDefault();\r\n }\r\n triggerEvent(event, this, 'longtap');\r\n\r\n } else if (hasEvent(this, 'hold') && touchholdEnd) {\r\n if (event.cancelable) {\r\n event.preventDefault();\r\n }\r\n return;\r\n } else {\r\n // emit tap event\r\n triggerEvent(event, this, 'tap');\r\n }\r\n\r\n\t\t\t// performance: only process swipe events if `swipe.*` event is registered on this element\r\n } else if ($this.hasSwipe && !$this.swipeOutBounded) {\r\n var swipeOutBounded = $this.options.swipeTolerance,\r\n direction,\r\n distanceY = Math.abs($this.startY - $this.currentY),\r\n distanceX = Math.abs($this.startX - $this.currentX);\r\n\r\n if (distanceY > swipeOutBounded || distanceX > swipeOutBounded) {\r\n if (distanceY > distanceX) {\r\n direction = $this.startY > $this.currentY ? 'top' : 'bottom';\r\n } else {\r\n direction = $this.startX > $this.currentX ? 'left' : 'right';\r\n }\r\n\r\n // Only emit the specified event when it has modifiers\r\n if (hasEvent(this, 'swipe.' + direction)) {\r\n triggerEvent(event, this, 'swipe.' + direction, direction);\r\n } else {\r\n // Emit a common event when it has no any modifier\r\n triggerEvent(event, this, 'swipe', direction);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function mouseEnterEvent() {\r\n addTouchClass(this);\r\n }\r\n\r\n function mouseLeaveEvent() {\r\n removeTouchClass(this);\r\n }\r\n\r\n function hasEvent($el, eventType) {\r\n var callbacks = $el.$$touchObj.callbacks[eventType];\r\n\t\t\treturn (callbacks != null && callbacks.length > 0);\r\n\t\t}\r\n\t\t\r\n function triggerEvent(e, $el, eventType, param) {\r\n var $this = $el.$$touchObj;\r\n\r\n // get the subscribers for this event\r\n var callbacks = $this.callbacks[eventType];\r\n\t\t\t\r\n\t\t\t// exit if no subscribers to this particular event\r\n if (callbacks == null || callbacks.length === 0) {\r\n return null;\r\n }\r\n\r\n\t\t\t// per callback\r\n for (var i = 0; i < callbacks.length; i++) {\r\n var binding = callbacks[i];\r\n\r\n if (binding.modifiers.stop) {\r\n e.stopPropagation();\r\n }\r\n\r\n if (binding.modifiers.prevent) {\r\n e.preventDefault();\r\n }\r\n\r\n // handle `self` modifier`\r\n if (binding.modifiers.self && e.target !== e.currentTarget) {\r\n continue;\r\n }\r\n\r\n if (typeof binding.value === 'function') {\r\n if (param) {\r\n binding.value(param, e);\r\n } else {\r\n binding.value(e);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function addTouchClass($el) {\r\n var className = $el.$$touchObj.options.touchClass;\r\n className && $el.classList.add(className);\r\n }\r\n\r\n function removeTouchClass($el) {\r\n var className = $el.$$touchObj.options.touchClass;\r\n className && $el.classList.remove(className);\r\n }\r\n\r\n function cancelTouchHoldTimer($this) {\r\n if ($this && $this.touchHoldTimer) {\r\n clearTimeout($this.touchHoldTimer);\r\n $this.touchHoldTimer = null;\r\n }\r\n }\r\n\r\n function buildTouchObj($el, extraOptions) {\r\n var touchObj = $el.$$touchObj || {\r\n // an object contains all callbacks registered,\r\n // key is event name, value is an array\r\n callbacks: {},\r\n // prevent bind twice, set to true when event bound\r\n hasBindTouchEvents: false,\r\n // default options, would be override by v-touch-options\r\n options: globalOptions\r\n };\r\n if (extraOptions) {\r\n touchObj.options = Object.assign({}, touchObj.options, extraOptions);\r\n }\r\n $el.$$touchObj = touchObj;\r\n return $el.$$touchObj;\r\n }\r\n\r\n app.directive(globalOptions.namespace, {\r\n beforeMount: function ($el, binding) {\r\n // build a touch configuration object\r\n var $this = buildTouchObj($el);\r\n // declare passive option for the event listener. Defaults to { passive: true } if supported\r\n var passiveOpt = isPassiveSupported ? { passive: true } : false;\r\n // register callback\r\n var eventType = binding.arg || 'tap';\r\n switch (eventType) {\r\n case 'swipe':\r\n var _m = binding.modifiers;\r\n if (_m.left || _m.right || _m.top || _m.bottom) {\r\n for (var i in binding.modifiers) {\r\n if (['left', 'right', 'top', 'bottom'].indexOf(i) >= 0) {\r\n var _e = 'swipe.' + i;\r\n $this.callbacks[_e] = $this.callbacks[_e] || [];\r\n $this.callbacks[_e].push(binding);\r\n }\r\n }\r\n } else {\r\n $this.callbacks.swipe = $this.callbacks.swipe || [];\r\n $this.callbacks.swipe.push(binding);\r\n }\r\n break;\r\n\r\n case 'press':\r\n case 'drag':\r\n if (binding.modifiers.disablePassive) {\r\n // change the passive option for the `drag` event if disablePassive modifier exists\r\n passiveOpt = false;\r\n }\r\n default:\r\n $this.callbacks[eventType] = $this.callbacks[eventType] || [];\r\n $this.callbacks[eventType].push(binding);\r\n }\r\n\r\n // prevent bind twice\r\n if ($this.hasBindTouchEvents) {\r\n return;\r\n }\r\n\r\n $el.addEventListener('touchstart', touchStartEvent, passiveOpt);\r\n $el.addEventListener('touchmove', touchMoveEvent, passiveOpt);\r\n $el.addEventListener('touchcancel', touchCancelEvent);\r\n $el.addEventListener('touchend', touchEndEvent);\r\n\r\n if (!$this.options.disableClick) {\r\n $el.addEventListener('mousedown', touchStartEvent);\r\n $el.addEventListener('mousemove', touchMoveEvent);\r\n $el.addEventListener('mouseup', touchEndEvent);\r\n $el.addEventListener('mouseenter', mouseEnterEvent);\r\n $el.addEventListener('mouseleave', mouseLeaveEvent);\r\n }\r\n\r\n // set bind mark to true\r\n $this.hasBindTouchEvents = true;\r\n },\r\n\r\n unmounted: function ($el) {\r\n cancelTouchHoldTimer($el.$$touchObj)\r\n\r\n $el.removeEventListener('touchstart', touchStartEvent);\r\n $el.removeEventListener('touchmove', touchMoveEvent);\r\n $el.removeEventListener('touchcancel', touchCancelEvent);\r\n $el.removeEventListener('touchend', touchEndEvent);\r\n\r\n if ($el.$$touchObj && !$el.$$touchObj.options.disableClick) {\r\n $el.removeEventListener('mousedown', touchStartEvent);\r\n $el.removeEventListener('mousemove', touchMoveEvent);\r\n $el.removeEventListener('mouseup', touchEndEvent);\r\n $el.removeEventListener('mouseenter', mouseEnterEvent);\r\n $el.removeEventListener('mouseleave', mouseLeaveEvent);\r\n }\r\n\r\n // remove vars\r\n delete $el.$$touchObj;\r\n }\r\n });\r\n\r\n app.directive(`${globalOptions.namespace}-class`, {\r\n beforeMount: function ($el, binding) {\r\n buildTouchObj($el, {\r\n touchClass: binding.value\r\n });\r\n }\r\n });\r\n\r\n app.directive(`${globalOptions.namespace}-options`, {\r\n beforeMount: function($el, binding) {\r\n buildTouchObj($el, binding.value);\r\n }\r\n });\r\n }\r\n};\r\n\r\n/*\r\n * Exports\r\n */\r\nexport default vueTouchEvents\r\n","<script setup lang=\"ts\">\n import omit from 'lodash-es/omit';\n import { computed } from 'vue';\n\n import useDialog from '../../composables/useDialog/useDialog';\n import CustomRender from '../CustomRender/CustomRender.vue';\n import Dialog from '../Dialog/Dialog.vue';\n\n const dialog = useDialog();\n\n const attributes = computed(() => {\n if (!dialog.active) return null;\n\n return omit(dialog.active, ['deferred', 'onConfirm', 'onCancel', 'slots']);\n });\n\n function onCancel() {\n if (dialog.active?.onCancel) {\n dialog.active.onCancel();\n }\n\n dialog.active?.deferred?.resolve({\n isCanceled: true,\n });\n\n dialog.close();\n }\n\n async function onConfirm() {\n if (dialog.active?.onConfirm) {\n await dialog.active.onConfirm();\n }\n\n dialog.active?.deferred?.resolve({\n isConfirmed: true,\n });\n\n dialog.close();\n }\n</script>\n\n<template>\n <Dialog :open=\"!!attributes\" v-bind=\"attributes\" @confirm=\"onConfirm\" @cancel=\"onCancel\">\n <template v-for=\"(value, name) in dialog.active?.slots\" :key=\"name\" #[name]>\n <CustomRender :render=\"value\" />\n </template>\n </Dialog>\n</template>\n","import { App, createVNode, h, Plugin, render } from 'vue';\n\nimport Dialogs from '../components/Dialogs/Dialogs.vue';\n\nexport interface DialogsPluginOptions {\n mountNodeClass?: string;\n mountNodeId?: string;\n}\n\nexport const DEFAULT_DIALOGS_PLUGIN_NODE_ID = 'stash-dialogs-mount-node';\n\nexport default <Plugin>{\n install(app: App, options?: DialogsPluginOptions) {\n const mountNodeId = options?.mountNodeId || DEFAULT_DIALOGS_PLUGIN_NODE_ID;\n let mountNode = document.getElementById(mountNodeId);\n\n if (!mountNode) {\n mountNode = document.createElement('div');\n mountNode.id = mountNodeId;\n mountNode.dataset.test = DEFAULT_DIALOGS_PLUGIN_NODE_ID;\n document.body.appendChild(mountNode);\n }\n\n if (options?.mountNodeClass && !mountNode.classList.contains(options.mountNodeClass)) {\n mountNode.classList.add(options.mountNodeClass);\n }\n\n const vNode = createVNode(h(Dialogs));\n vNode.appContext = app._context;\n\n render(vNode, mountNode);\n },\n};\n","import { Plugin } from 'vue';\nimport Vue3TouchEvents, { type Vue3TouchEventsOptions } from 'vue3-touch-events';\n\nimport { I18nPlugin, StashOptionImages, StashProvideState } from '../types/misc';\nimport locale from './locale';\n// this is valid syntax per the TS docs, but prettier throws an error expecting a comma after `type`\nimport DialogsPlugin, { type DialogsPluginOptions } from './plugins/DialogsPlugin';\nimport MenusPlugin, { type MenusPluginOptions } from './plugins/MenusPlugin';\nimport ModalsPlugin, { type ModalsPluginOptions } from './plugins/ModalsPlugin';\nimport ToastsPlugin, { type ToastsPluginOptions } from './plugins/ToastsPlugin';\nimport { overridePersistentStorage, persistentStorage } from './storage';\n\nexport interface StashPluginOptions {\n i18n?: I18nPlugin;\n storage?: {\n set: <T = unknown>(name: string, data: T, options?: { [key: string]: unknown }) => void;\n get: <T = unknown>(name: string, options?: { [key: string]: unknown }) => T;\n };\n staticPath?: string;\n images?: StashOptionImages;\n googleMapsApiKey?: string;\n menus?: false | MenusPluginOptions;\n modals?: false | ModalsPluginOptions;\n toasts?: false | ToastsPluginOptions;\n dialogs?: false | DialogsPluginOptions;\n}\n\nexport default <Plugin>{\n install(\n app,\n {\n i18n = undefined,\n storage = undefined,\n staticPath = '/static',\n images = {\n provider: 'static',\n },\n googleMapsApiKey = undefined,\n menus,\n modals,\n toasts,\n dialogs,\n }: StashPluginOptions = {},\n ) {\n app.use<Vue3TouchEventsOptions>(Vue3TouchEvents, {});\n\n // locale\n if (i18n) {\n locale.use(i18n.locale);\n locale.i18n(i18n && i18n.t);\n }\n\n // persistent storage (localStorage)\n if (storage) {\n overridePersistentStorage(storage);\n }\n\n // expose stash options to the rest of your application\n app.provide<StashProvideState>('stashOptions', {\n i18n,\n images,\n storage,\n staticPath,\n googleMapsApiKey,\n });\n\n if (menus !== false) {\n app.use(MenusPlugin, menus);\n }\n\n if (modals !== false) {\n app.use(ModalsPlugin, modals);\n }\n\n if (toasts !== false) {\n app.use(ToastsPlugin, toasts);\n }\n\n if (dialogs !== false) {\n app.use(DialogsPlugin, dialogs);\n }\n },\n};\n\nexport { persistentStorage };\n\n// Re-export things that are useful for consumers\nexport * from '../types';\nexport * from './storage';\n\n// Todo: Investigate tree-shaking issues to see if we can expose these. Theoritically\n// should be no issue, however test framework startup time, specifically w/ Jest,\n// seems to be the major blocker here.\n// export * from './components';\n// export * from './composables';\n// export * from './constants';\n// export * from './directives';\n// export * from './locale';\n// export * from './plugins';\n// export { default as ToastsPlugin } from './plugins/ToastsPlugin';\n"],"names":["touchX","event","touchY","isPassiveSupported","supportsPassive","opts","vueTouchEvents","app","constructorOptions","globalOptions","touchStartEvent","$this","isTouchEvent","isMouseEvent","$el","addTouchClass","hasEvent","triggerEvent","touchMoveEvent","curX","curY","movedAgain","swipeOutBounded","tapTolerance","cancelTouchHoldTimer","now","throttle","touchCancelEvent","removeTouchClass","touchEndEvent","touchholdEnd","direction","distanceY","distanceX","mouseEnterEvent","mouseLeaveEvent","eventType","callbacks","param","i","binding","className","buildTouchObj","extraOptions","touchObj","passiveOpt","_m","_e","dialog","useDialog","attributes","computed","omit","onCancel","onConfirm","_openBlock","_createBlock","Dialog","_mergeProps","_renderList","_unref","value","name","_createVNode","CustomRender","DEFAULT_DIALOGS_PLUGIN_NODE_ID","DialogsPlugin","options","mountNodeId","mountNode","vNode","createVNode","h","Dialogs","render","index","i18n","storage","staticPath","images","googleMapsApiKey","menus","modals","toasts","dialogs","Vue3TouchEvents","locale","overridePersistentStorage","MenusPlugin","ModalsPlugin","ToastsPlugin"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../node_modules/vue3-touch-events/index.js","../src/components/Dialogs/Dialogs.vue","../src/plugins/DialogsPlugin.ts","../src/index.ts"],"sourcesContent":["/**\r\n * @project vue3-touch-events\r\n * @author Robin Rodricks, Xavier Julien, Jerry Bendy\r\n * @since 30/4/2021\r\n * @url https://github.com/robinrodricks/vue3-touch-events\r\n */\r\n\r\nfunction touchX(event) {\r\n if(event.type.indexOf('mouse') !== -1){\r\n return event.clientX;\r\n }\r\n return event.touches[0].clientX;\r\n}\r\n\r\nfunction touchY(event) {\r\n if(event.type.indexOf('mouse') !== -1){\r\n return event.clientY;\r\n }\r\n return event.touches[0].clientY;\r\n}\r\n\r\nvar isPassiveSupported = (function() {\r\n var supportsPassive = false;\r\n try {\r\n var opts = Object.defineProperty({}, 'passive', {\r\n get: function() {\r\n supportsPassive = true;\r\n }\r\n });\r\n window.addEventListener('test', null, opts);\r\n } catch (e) {}\r\n return supportsPassive;\r\n})();\r\n\r\nvar vueTouchEvents = {\r\n install: function (app, constructorOptions) {\r\n\t\t\r\n var globalOptions = Object.assign({}, {\r\n disableClick: false,\r\n tapTolerance: 10, // px\r\n swipeTolerance: 30, // px\r\n touchHoldTolerance: 400, // ms\r\n longTapTimeInterval: 400, // ms\r\n touchClass: '',\r\n\t\t\tdragFrequency: 100, // ms\r\n\t\t\trollOverFrequency: 100, // ms\r\n namespace: 'touch',\r\n }, constructorOptions);\r\n\r\n function touchStartEvent(event) {\r\n var $this = this.$$touchObj,\r\n isTouchEvent = event.type.indexOf('touch') >= 0,\r\n isMouseEvent = event.type.indexOf('mouse') >= 0,\r\n $el = this;\r\n\r\n if (isTouchEvent) {\r\n $this.lastTouchStartTime = event.timeStamp;\r\n }\r\n\r\n if (isMouseEvent && $this.lastTouchStartTime && event.timeStamp - $this.lastTouchStartTime < 350) {\r\n return;\r\n }\r\n\r\n if ($this.touchStarted) {\r\n return;\r\n }\r\n\r\n addTouchClass(this);\r\n\r\n $this.touchStarted = true; // always true while the element is being PRESSED\r\n\r\n $this.touchMoved = false; // true only when the element is PRESSED and DRAGGED a bit\r\n $this.swipeOutBounded = false;\r\n\r\n $this.startX = touchX(event);\r\n $this.startY = touchY(event);\r\n\r\n $this.currentX = 0; // always updated with the last mouse X/Y while over the element\r\n $this.currentY = 0;\r\n\r\n $this.touchStartTime = event.timeStamp;\r\n\t\t\t\r\n\t\t\t// performance: only process swipe events if `swipe.*` event is registered on this element\r\n\t\t\t$this.hasSwipe = hasEvent(this, 'swipe')\r\n\t\t\t\t|| hasEvent(this, 'swipe.left') || hasEvent(this, 'swipe.right')\r\n\t\t\t\t|| hasEvent(this, 'swipe.top') || hasEvent(this, 'swipe.bottom');\r\n\r\n\t\t\t// performance: only start hold timer if the `hold` event is registered on this element\r\n\t\t\tif (hasEvent(this, 'hold')){\r\n\t\t\t\t\r\n\t\t\t\t// Trigger touchhold event after `touchHoldTolerance` MS\r\n\t\t\t\t$this.touchHoldTimer = setTimeout(function() {\r\n\t\t\t\t\t$this.touchHoldTimer = null;\r\n\t\t\t\t\ttriggerEvent(event, $el, 'hold');\r\n\t\t\t\t}, $this.options.touchHoldTolerance);\r\n\t\t\t}\r\n\t\t\t\r\n triggerEvent(event, this, 'press');\r\n }\r\n\r\n function touchMoveEvent(event) {\r\n var $this = this.$$touchObj;\r\n\t\t\t\r\n\t\t\tvar curX = touchX(event);\r\n\t\t\tvar curY = touchY(event);\r\n\r\n\t\t\tvar movedAgain = ($this.currentX != curX) || ($this.currentY != curY);\r\n\t\t\t\r\n $this.currentX = curX;\r\n $this.currentY = curY;\r\n\r\n if (!$this.touchMoved) {\r\n var tapTolerance = $this.options.tapTolerance;\r\n\r\n $this.touchMoved = Math.abs($this.startX - $this.currentX) > tapTolerance ||\r\n\t\t\t\t\t\t\t\t Math.abs($this.startY - $this.currentY) > tapTolerance;\r\n\r\n\t\t\t\t// trigger `drag.once` only once after mouse FIRST moved while dragging the element\r\n\t\t\t\t// (`touchMoved` is the flag that indicates we no longer need to trigger this)\r\n if($this.touchMoved){\r\n cancelTouchHoldTimer($this);\r\n triggerEvent(event, this, 'drag.once');\r\n }\r\n\r\n\t\t\t// performance: only process swipe events if `swipe.*` event is registered on this element\r\n } else if ($this.hasSwipe && !$this.swipeOutBounded) {\r\n\t\t\t\tvar swipeOutBounded = $this.options.swipeTolerance;\r\n\r\n\t\t\t\t$this.swipeOutBounded = Math.abs($this.startX - $this.currentX) > swipeOutBounded &&\r\n\t\t\t\t\tMath.abs($this.startY - $this.currentY) > swipeOutBounded;\r\n }\r\n\r\n\t\t\t// only trigger `rollover` event if cursor actually moved over this element\r\n if(hasEvent(this, 'rollover') && movedAgain){\r\n\t\t\t\t\r\n\t\t\t\t// throttle the `rollover` event based on `rollOverFrequency`\r\n\t\t\t\tvar now = event.timeStamp;\r\n\t\t\t\tvar throttle = $this.options.rollOverFrequency;\r\n\t\t\t\tif ($this.touchRollTime == null || now > ($this.touchRollTime + throttle)){\r\n\t\t\t\t\t$this.touchRollTime = now;\r\n\t\t\t\t\t\r\n\t\t\t\t\ttriggerEvent(event, this, 'rollover');\r\n\t\t\t\t}\r\n }\r\n\r\n\t\t\t// only trigger `drag` event if cursor actually moved and if we are still dragging this element\r\n if(hasEvent(this, 'drag') && $this.touchStarted && $this.touchMoved && movedAgain){\r\n\t\t\t\t\r\n\t\t\t\t// throttle the `drag` event based on `dragFrequency`\r\n\t\t\t\tvar now = event.timeStamp;\r\n\t\t\t\tvar throttle = $this.options.dragFrequency;\r\n\t\t\t\tif ($this.touchDragTime == null || now > ($this.touchDragTime + throttle)){\r\n\t\t\t\t\t$this.touchDragTime = now;\r\n\t\t\t\t\t\r\n\t\t\t\t\ttriggerEvent(event, this, 'drag');\r\n\t\t\t\t}\r\n }\r\n }\r\n\r\n function touchCancelEvent() {\r\n var $this = this.$$touchObj;\r\n\r\n cancelTouchHoldTimer($this);\r\n removeTouchClass(this);\r\n\r\n $this.touchStarted = $this.touchMoved = false;\r\n $this.startX = $this.startY = 0;\r\n }\r\n\r\n function touchEndEvent(event) {\r\n var $this = this.$$touchObj,\r\n isTouchEvent = event.type.indexOf('touch') >= 0,\r\n isMouseEvent = event.type.indexOf('mouse') >= 0;\r\n\r\n if (isTouchEvent) {\r\n $this.lastTouchEndTime = event.timeStamp;\r\n }\r\n\r\n var touchholdEnd = isTouchEvent && !$this.touchHoldTimer;\r\n cancelTouchHoldTimer($this);\r\n\r\n $this.touchStarted = false;\r\n\r\n removeTouchClass(this);\r\n\r\n if (isMouseEvent && $this.lastTouchEndTime && event.timeStamp - $this.lastTouchEndTime < 350) {\r\n return;\r\n }\r\n\r\n // trigger `end` event when touch stopped\r\n triggerEvent(event, this, 'release');\r\n\r\n if (!$this.touchMoved) {\r\n // detect if this is a longTap event or not\r\n if (hasEvent(this, 'longtap') && event.timeStamp - $this.touchStartTime > $this.options.longTapTimeInterval) {\r\n if (event.cancelable) {\r\n event.preventDefault();\r\n }\r\n triggerEvent(event, this, 'longtap');\r\n\r\n } else if (hasEvent(this, 'hold') && touchholdEnd) {\r\n if (event.cancelable) {\r\n event.preventDefault();\r\n }\r\n return;\r\n } else {\r\n // emit tap event\r\n triggerEvent(event, this, 'tap');\r\n }\r\n\r\n\t\t\t// performance: only process swipe events if `swipe.*` event is registered on this element\r\n } else if ($this.hasSwipe && !$this.swipeOutBounded) {\r\n var swipeOutBounded = $this.options.swipeTolerance,\r\n direction,\r\n distanceY = Math.abs($this.startY - $this.currentY),\r\n distanceX = Math.abs($this.startX - $this.currentX);\r\n\r\n if (distanceY > swipeOutBounded || distanceX > swipeOutBounded) {\r\n if (distanceY > distanceX) {\r\n direction = $this.startY > $this.currentY ? 'top' : 'bottom';\r\n } else {\r\n direction = $this.startX > $this.currentX ? 'left' : 'right';\r\n }\r\n\r\n // Only emit the specified event when it has modifiers\r\n if (hasEvent(this, 'swipe.' + direction)) {\r\n triggerEvent(event, this, 'swipe.' + direction, direction);\r\n } else {\r\n // Emit a common event when it has no any modifier\r\n triggerEvent(event, this, 'swipe', direction);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function mouseEnterEvent() {\r\n addTouchClass(this);\r\n }\r\n\r\n function mouseLeaveEvent() {\r\n removeTouchClass(this);\r\n }\r\n\r\n function hasEvent($el, eventType) {\r\n var callbacks = $el.$$touchObj.callbacks[eventType];\r\n\t\t\treturn (callbacks != null && callbacks.length > 0);\r\n\t\t}\r\n\t\t\r\n function triggerEvent(e, $el, eventType, param) {\r\n var $this = $el.$$touchObj;\r\n\r\n // get the subscribers for this event\r\n var callbacks = $this.callbacks[eventType];\r\n\t\t\t\r\n\t\t\t// exit if no subscribers to this particular event\r\n if (callbacks == null || callbacks.length === 0) {\r\n return null;\r\n }\r\n\r\n\t\t\t// per callback\r\n for (var i = 0; i < callbacks.length; i++) {\r\n var binding = callbacks[i];\r\n\r\n if (binding.modifiers.stop) {\r\n e.stopPropagation();\r\n }\r\n\r\n if (binding.modifiers.prevent) {\r\n e.preventDefault();\r\n }\r\n\r\n // handle `self` modifier`\r\n if (binding.modifiers.self && e.target !== e.currentTarget) {\r\n continue;\r\n }\r\n\r\n if (typeof binding.value === 'function') {\r\n if (param) {\r\n binding.value(param, e);\r\n } else {\r\n binding.value(e);\r\n }\r\n }\r\n }\r\n }\r\n\r\n function addTouchClass($el) {\r\n var className = $el.$$touchObj.options.touchClass;\r\n className && $el.classList.add(className);\r\n }\r\n\r\n function removeTouchClass($el) {\r\n var className = $el.$$touchObj.options.touchClass;\r\n className && $el.classList.remove(className);\r\n }\r\n\r\n function cancelTouchHoldTimer($this) {\r\n if ($this && $this.touchHoldTimer) {\r\n clearTimeout($this.touchHoldTimer);\r\n $this.touchHoldTimer = null;\r\n }\r\n }\r\n\r\n function buildTouchObj($el, extraOptions) {\r\n var touchObj = $el.$$touchObj || {\r\n // an object contains all callbacks registered,\r\n // key is event name, value is an array\r\n callbacks: {},\r\n // prevent bind twice, set to true when event bound\r\n hasBindTouchEvents: false,\r\n // default options, would be override by v-touch-options\r\n options: globalOptions\r\n };\r\n if (extraOptions) {\r\n touchObj.options = Object.assign({}, touchObj.options, extraOptions);\r\n }\r\n $el.$$touchObj = touchObj;\r\n return $el.$$touchObj;\r\n }\r\n\r\n app.directive(globalOptions.namespace, {\r\n beforeMount: function ($el, binding) {\r\n // build a touch configuration object\r\n var $this = buildTouchObj($el);\r\n // declare passive option for the event listener. Defaults to { passive: true } if supported\r\n var passiveOpt = isPassiveSupported ? { passive: true } : false;\r\n // register callback\r\n var eventType = binding.arg || 'tap';\r\n switch (eventType) {\r\n case 'swipe':\r\n var _m = binding.modifiers;\r\n if (_m.left || _m.right || _m.top || _m.bottom) {\r\n for (var i in binding.modifiers) {\r\n if (['left', 'right', 'top', 'bottom'].indexOf(i) >= 0) {\r\n var _e = 'swipe.' + i;\r\n $this.callbacks[_e] = $this.callbacks[_e] || [];\r\n $this.callbacks[_e].push(binding);\r\n }\r\n }\r\n } else {\r\n $this.callbacks.swipe = $this.callbacks.swipe || [];\r\n $this.callbacks.swipe.push(binding);\r\n }\r\n break;\r\n\r\n case 'press':\r\n case 'drag':\r\n if (binding.modifiers.disablePassive) {\r\n // change the passive option for the `drag` event if disablePassive modifier exists\r\n passiveOpt = false;\r\n }\r\n default:\r\n $this.callbacks[eventType] = $this.callbacks[eventType] || [];\r\n $this.callbacks[eventType].push(binding);\r\n }\r\n\r\n // prevent bind twice\r\n if ($this.hasBindTouchEvents) {\r\n return;\r\n }\r\n\r\n $el.addEventListener('touchstart', touchStartEvent, passiveOpt);\r\n $el.addEventListener('touchmove', touchMoveEvent, passiveOpt);\r\n $el.addEventListener('touchcancel', touchCancelEvent);\r\n $el.addEventListener('touchend', touchEndEvent);\r\n\r\n if (!$this.options.disableClick) {\r\n $el.addEventListener('mousedown', touchStartEvent);\r\n $el.addEventListener('mousemove', touchMoveEvent);\r\n $el.addEventListener('mouseup', touchEndEvent);\r\n $el.addEventListener('mouseenter', mouseEnterEvent);\r\n $el.addEventListener('mouseleave', mouseLeaveEvent);\r\n }\r\n\r\n // set bind mark to true\r\n $this.hasBindTouchEvents = true;\r\n },\r\n\r\n unmounted: function ($el) {\r\n cancelTouchHoldTimer($el.$$touchObj)\r\n\r\n $el.removeEventListener('touchstart', touchStartEvent);\r\n $el.removeEventListener('touchmove', touchMoveEvent);\r\n $el.removeEventListener('touchcancel', touchCancelEvent);\r\n $el.removeEventListener('touchend', touchEndEvent);\r\n\r\n if ($el.$$touchObj && !$el.$$touchObj.options.disableClick) {\r\n $el.removeEventListener('mousedown', touchStartEvent);\r\n $el.removeEventListener('mousemove', touchMoveEvent);\r\n $el.removeEventListener('mouseup', touchEndEvent);\r\n $el.removeEventListener('mouseenter', mouseEnterEvent);\r\n $el.removeEventListener('mouseleave', mouseLeaveEvent);\r\n }\r\n\r\n // remove vars\r\n delete $el.$$touchObj;\r\n }\r\n });\r\n\r\n app.directive(`${globalOptions.namespace}-class`, {\r\n beforeMount: function ($el, binding) {\r\n buildTouchObj($el, {\r\n touchClass: binding.value\r\n });\r\n }\r\n });\r\n\r\n app.directive(`${globalOptions.namespace}-options`, {\r\n beforeMount: function($el, binding) {\r\n buildTouchObj($el, binding.value);\r\n }\r\n });\r\n }\r\n};\r\n\r\n/*\r\n * Exports\r\n */\r\nexport default vueTouchEvents\r\n","<script setup lang=\"ts\">\n import omit from 'lodash-es/omit';\n import { computed } from 'vue';\n\n import useDialog from '../../composables/useDialog/useDialog';\n import CustomRender from '../CustomRender/CustomRender.vue';\n import Dialog from '../Dialog/Dialog.vue';\n\n const dialog = useDialog();\n\n const attributes = computed(() => {\n if (!dialog.active) return null;\n\n return omit(dialog.active, ['deferred', 'onConfirm', 'onCancel', 'slots']);\n });\n\n function onCancel() {\n if (dialog.active?.onCancel) {\n dialog.active.onCancel();\n }\n\n dialog.active?.deferred?.resolve({\n isCanceled: true,\n });\n\n dialog.close();\n }\n\n async function onConfirm() {\n if (dialog.active?.onConfirm) {\n await dialog.active.onConfirm();\n }\n\n dialog.active?.deferred?.resolve({\n isConfirmed: true,\n });\n\n dialog.close();\n }\n</script>\n\n<template>\n <Dialog :open=\"!!attributes\" v-bind=\"attributes\" @confirm=\"onConfirm\" @cancel=\"onCancel\">\n <template v-for=\"(value, name) in dialog.active?.slots\" :key=\"name\" #[name]>\n <CustomRender :render=\"value\" />\n </template>\n </Dialog>\n</template>\n","import { App, createVNode, h, Plugin, render } from 'vue';\n\nimport Dialogs from '../components/Dialogs/Dialogs.vue';\n\nexport interface DialogsPluginOptions {\n mountNodeClass?: string;\n mountNodeId?: string;\n}\n\nexport const DEFAULT_DIALOGS_PLUGIN_NODE_ID = 'stash-dialogs-mount-node';\n\nexport default <Plugin>{\n install(app: App, options?: DialogsPluginOptions) {\n const mountNodeId = options?.mountNodeId || DEFAULT_DIALOGS_PLUGIN_NODE_ID;\n let mountNode = document.getElementById(mountNodeId);\n\n if (!mountNode) {\n mountNode = document.createElement('div');\n mountNode.id = mountNodeId;\n mountNode.dataset.test = DEFAULT_DIALOGS_PLUGIN_NODE_ID;\n document.body.appendChild(mountNode);\n }\n\n if (options?.mountNodeClass && !mountNode.classList.contains(options.mountNodeClass)) {\n mountNode.classList.add(options.mountNodeClass);\n }\n\n const vNode = createVNode(h(Dialogs));\n vNode.appContext = app._context;\n\n render(vNode, mountNode);\n },\n};\n","import { Plugin } from 'vue';\nimport Vue3TouchEvents, { type Vue3TouchEventsOptions } from 'vue3-touch-events';\n\nimport { I18nPlugin, StashOptionImages, StashProvideState } from '../types/misc';\nimport locale from './locale';\n// this is valid syntax per the TS docs, but prettier throws an error expecting a comma after `type`\nimport DialogsPlugin, { type DialogsPluginOptions } from './plugins/DialogsPlugin';\nimport MenusPlugin, { type MenusPluginOptions } from './plugins/MenusPlugin';\nimport ModalsPlugin, { type ModalsPluginOptions } from './plugins/ModalsPlugin';\nimport ToastsPlugin, { type ToastsPluginOptions } from './plugins/ToastsPlugin';\nimport { overridePersistentStorage, persistentStorage } from './storage';\n\nexport interface StashPluginOptions {\n i18n?: I18nPlugin;\n storage?: {\n set: <T = unknown>(name: string, data: T, options?: { [key: string]: unknown }) => void;\n get: <T = unknown>(name: string, options?: { [key: string]: unknown }) => T;\n };\n staticPath?: string;\n images?: StashOptionImages;\n googleMapsApiKey?: string;\n menus?: false | MenusPluginOptions;\n modals?: false | ModalsPluginOptions;\n toasts?: false | ToastsPluginOptions;\n dialogs?: false | DialogsPluginOptions;\n}\n\nexport default <Plugin>{\n install(\n app,\n {\n i18n = undefined,\n storage = undefined,\n staticPath = '/static',\n images = {\n provider: 'static',\n },\n googleMapsApiKey = undefined,\n menus,\n modals,\n toasts,\n dialogs,\n }: StashPluginOptions = {},\n ) {\n app.use<Vue3TouchEventsOptions>(Vue3TouchEvents, {});\n\n // locale\n if (i18n) {\n locale.use(i18n.locale);\n locale.i18n(i18n && i18n.t);\n }\n\n // persistent storage (localStorage)\n if (storage) {\n overridePersistentStorage(storage);\n }\n\n // expose stash options to the rest of your application\n app.provide<StashProvideState>('stashOptions', {\n i18n,\n images,\n storage,\n staticPath,\n googleMapsApiKey,\n });\n\n if (menus !== false) {\n app.use(MenusPlugin, menus);\n }\n\n if (modals !== false) {\n app.use(ModalsPlugin, modals);\n }\n\n if (toasts !== false) {\n app.use(ToastsPlugin, toasts);\n }\n\n if (dialogs !== false) {\n app.use(DialogsPlugin, dialogs);\n }\n },\n};\n\nexport { persistentStorage };\n\n// Re-export things that are useful for consumers\nexport * from '../types';\nexport * from './storage';\n\n// Todo: Investigate tree-shaking issues to see if we can expose these. Theoritically\n// should be no issue, however test framework startup time, specifically w/ Jest,\n// seems to be the major blocker here.\n// export * from './components';\n// export * from './composables';\n// export * from './constants';\n// export * from './directives';\n// export * from './locale';\n// export * from './plugins';\n// export { default as ToastsPlugin } from './plugins/ToastsPlugin';\n"],"names":["touchX","event","touchY","isPassiveSupported","supportsPassive","opts","vueTouchEvents","app","constructorOptions","globalOptions","touchStartEvent","$this","isTouchEvent","isMouseEvent","$el","addTouchClass","hasEvent","triggerEvent","touchMoveEvent","curX","curY","movedAgain","swipeOutBounded","tapTolerance","cancelTouchHoldTimer","now","throttle","touchCancelEvent","removeTouchClass","touchEndEvent","touchholdEnd","direction","distanceY","distanceX","mouseEnterEvent","mouseLeaveEvent","eventType","callbacks","param","i","binding","className","buildTouchObj","extraOptions","touchObj","passiveOpt","_m","_e","dialog","useDialog","attributes","computed","omit","onCancel","_a","_c","_b","onConfirm","DEFAULT_DIALOGS_PLUGIN_NODE_ID","DialogsPlugin","options","mountNodeId","mountNode","vNode","createVNode","h","Dialogs","render","index","i18n","storage","staticPath","images","googleMapsApiKey","menus","modals","toasts","dialogs","Vue3TouchEvents","locale","overridePersistentStorage","MenusPlugin","ModalsPlugin","ToastsPlugin"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"isDefined-DzVx0B6k.js","sources":["../src/composables/useValidation/utils/isDefined.ts"],"sourcesContent":["import { toValue } from 'vue';\n\n/**\n * A utility function that can be utilized within validator functions to determine if a value is defined.\n * @returns returns `false` if the value is `undefined`, `null`, `[]`, `''`, or an invalid Date.\n */\nexport default function isDefined(value: unknown): boolean {\n value = toValue(value);\n\n if (value === undefined || value === null) {\n return false;\n }\n\n if (Array.isArray(value)) {\n return !!value.length;\n }\n\n if (value === false) {\n return true;\n }\n\n if (value instanceof Date) {\n return !isNaN(value.getTime());\n }\n\n if (typeof value === 'object') {\n for (const _ in value) {\n return true;\n }\n\n return false;\n }\n\n return !!String(value).trim().length;\n}\n"],"names":["isDefined","value","toValue","_"],"mappings":";AAMA,SAAwBA,EAAUC,GAAyB;AAGzD,MAFAA,IAAQC,EAAQD,CAAK,GAEMA,KAAU;AACnC,WAAO;AAGT,MAAI,MAAM,QAAQA,CAAK;AACrB,WAAO,CAAC,CAACA,EAAM;AAGjB,MAAIA,MAAU;AACZ,WAAO;AAGT,MAAIA,aAAiB;AACnB,WAAO,CAAC,MAAMA,EAAM,SAAS;AAG/B,MAAI,OAAOA,KAAU,UAAU;AAC7B,eAAWE,KAAKF;AACd,aAAO;AAGT,WAAO;AAAA,EACT;AAEA,SAAO,CAAC,CAAC,OAAOA,CAAK,EAAE,OAAO;AAChC;"}
1
+ {"version":3,"file":"isDefined-DzVx0B6k.js","sources":["../src/composables/useValidation/utils/isDefined.ts"],"sourcesContent":["import { toValue } from 'vue';\n\n/**\n * A utility function that can be utilized within validator functions to determine if a value is defined.\n * @returns returns `false` if the value is `undefined`, `null`, `[]`, `''`, or an invalid Date.\n */\nexport default function isDefined(value: unknown): boolean {\n value = toValue(value);\n\n if (value === undefined || value === null) {\n return false;\n }\n\n if (Array.isArray(value)) {\n return !!value.length;\n }\n\n if (value === false) {\n return true;\n }\n\n if (value instanceof Date) {\n return !isNaN(value.getTime());\n }\n\n if (typeof value === 'object') {\n for (const _ in value) {\n return true;\n }\n\n return false;\n }\n\n return !!String(value).trim().length;\n}\n"],"names":["isDefined","value","toValue","_"],"mappings":";AAMA,SAAwBA,EAAUC,GAAyB;AAGrD,MAFJA,IAAQC,EAAQD,CAAK,GAEMA,KAAU;AAC5B,WAAA;AAGL,MAAA,MAAM,QAAQA,CAAK;AACd,WAAA,CAAC,CAACA,EAAM;AAGjB,MAAIA,MAAU;AACL,WAAA;AAGT,MAAIA,aAAiB;AACnB,WAAO,CAAC,MAAMA,EAAM,SAAS;AAG3B,MAAA,OAAOA,KAAU,UAAU;AAC7B,eAAWE,KAAKF;AACP,aAAA;AAGF,WAAA;AAAA,EAAA;AAGT,SAAO,CAAC,CAAC,OAAOA,CAAK,EAAE,KAAO,EAAA;AAChC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"keys-BEdEsanp.js","sources":["../src/components/Timeline/keys.ts"],"sourcesContent":["import { Injection } from '../../../types/utils';\nimport { TimelineInjection } from './models';\n\nexport const TIMELINE_INJECTION: Injection<TimelineInjection> = Object.freeze({\n key: Symbol('TIMELINE_INJECTION_KEY'),\n});\n"],"names":["TIMELINE_INJECTION"],"mappings":"AAGO,MAAMA,IAAmD,OAAO,OAAO;AAAA,EAC5E,KAAK,OAAO,wBAAwB;AACtC,CAAC;"}
1
+ {"version":3,"file":"keys-BEdEsanp.js","sources":["../src/components/Timeline/keys.ts"],"sourcesContent":["import { Injection } from '../../../types/utils';\nimport { TimelineInjection } from './models';\n\nexport const TIMELINE_INJECTION: Injection<TimelineInjection> = Object.freeze({\n key: Symbol('TIMELINE_INJECTION_KEY'),\n});\n"],"names":["TIMELINE_INJECTION"],"mappings":"AAGa,MAAAA,IAAmD,OAAO,OAAO;AAAA,EAC5E,KAAK,OAAO,wBAAwB;AACtC,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"keys-C8Zfr_By.js","sources":["../src/components/Stepper/keys.ts"],"sourcesContent":["import type { ComputedRef, InjectionKey } from 'vue';\n\nimport { StepperOrientation, StepperTheme } from './Stepper.types';\n\nexport interface StepperProvideInject {\n registerStep: (nested: boolean) => void;\n orientation: StepperOrientation;\n stepCount: ComputedRef<number>;\n theme: StepperTheme;\n showResponsiveNav: ComputedRef<boolean>;\n}\n\nexport const STEPPER_INJECTION_KEY = Symbol('STEPPER_INJECTION_KEY') as InjectionKey<StepperProvideInject>;\n"],"names":["STEPPER_INJECTION_KEY"],"mappings":"AAYO,MAAMA,IAAwB,OAAO,uBAAuB;"}
1
+ {"version":3,"file":"keys-C8Zfr_By.js","sources":["../src/components/Stepper/keys.ts"],"sourcesContent":["import type { ComputedRef, InjectionKey } from 'vue';\n\nimport { StepperOrientation, StepperTheme } from './Stepper.types';\n\nexport interface StepperProvideInject {\n registerStep: (nested: boolean) => void;\n orientation: StepperOrientation;\n stepCount: ComputedRef<number>;\n theme: StepperTheme;\n showResponsiveNav: ComputedRef<boolean>;\n}\n\nexport const STEPPER_INJECTION_KEY = Symbol('STEPPER_INJECTION_KEY') as InjectionKey<StepperProvideInject>;\n"],"names":["STEPPER_INJECTION_KEY"],"mappings":"AAYa,MAAAA,IAAwB,OAAO,uBAAuB;"}