@leaflink/stash 51.9.3 → 51.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/icons/cloud-share.svg +1 -0
- package/assets/spritesheet.svg +1 -1
- package/dist/Accordion.js.map +1 -1
- package/dist/Accordion.vue.d.ts +7 -38
- package/dist/ActionsDropdown.js +2 -2
- package/dist/ActionsDropdown.js.map +1 -1
- package/dist/ActionsDropdown.vue.d.ts +0 -74
- package/dist/AddressSelect.js +56 -60
- package/dist/AddressSelect.js.map +1 -1
- package/dist/AddressSelect.vue.d.ts +8 -65
- package/dist/Alert.js.map +1 -1
- package/dist/Alert.vue.d.ts +4 -41
- package/dist/AppNavigationItem.js.map +1 -1
- package/dist/AppNavigationItem.vue.d.ts +5 -32
- package/dist/AppSidebar.js.map +1 -1
- package/dist/AppSidebar.vue.d.ts +8 -35
- package/dist/AppTopbar.js +1 -1
- package/dist/AppTopbar.js.map +1 -1
- package/dist/AppTopbar.vue.d.ts +4 -33
- package/dist/Avatar.js.map +1 -1
- package/dist/Avatar.vue.d.ts +5 -44
- package/dist/Backdrop.js.map +1 -1
- package/dist/Backdrop.vue.d.ts +1 -1
- package/dist/Badge.js.map +1 -1
- package/dist/Badge.vue.d.ts +6 -55
- package/dist/Box.vue.d.ts +3 -36
- package/dist/Box.vue_vue_type_script_setup_true_lang-rFnvwLVY.js.map +1 -1
- package/dist/Button.js.map +1 -1
- package/dist/Button.vue.d.ts +5 -50
- package/dist/ButtonGroup.js +33 -37
- package/dist/ButtonGroup.js.map +1 -1
- package/dist/ButtonGroup.vue.d.ts +6 -39
- package/dist/Card.js.map +1 -1
- package/dist/Card.vue.d.ts +5 -32
- package/dist/CardContent.js.map +1 -1
- package/dist/CardContent.vue.d.ts +1 -1
- package/dist/CardFooter.js.map +1 -1
- package/dist/CardFooter.vue.d.ts +1 -1
- package/dist/CardHeader.js.map +1 -1
- package/dist/CardHeader.vue.d.ts +2 -15
- package/dist/CardMedia.js.map +1 -1
- package/dist/CardMedia.vue.d.ts +2 -15
- package/dist/Carousel.js +66 -72
- package/dist/Carousel.js.map +1 -1
- package/dist/Carousel.vue.d.ts +10 -10
- package/dist/Checkbox.js.map +1 -1
- package/dist/Checkbox.vue.d.ts +8 -53
- package/dist/ChevronToggle.vue.d.ts +7 -34
- package/dist/ChevronToggle.vue_vue_type_script_setup_true_lang-Ce_qOXfR.js.map +1 -1
- package/dist/Chip.js.map +1 -1
- package/dist/Chip.vue.d.ts +10 -52
- package/dist/ConfirmationCodeInput.js +40 -44
- package/dist/ConfirmationCodeInput.js.map +1 -1
- package/dist/ConfirmationCodeInput.vue.d.ts +8 -43
- package/dist/ContextSwitcher.js.map +1 -1
- package/dist/ContextSwitcher.vue.d.ts +6 -41
- package/dist/Copy.js.map +1 -1
- package/dist/Copy.vue.d.ts +3 -34
- package/dist/CurrencyInput.js +20 -21
- package/dist/CurrencyInput.js.map +1 -1
- package/dist/CurrencyInput.vue.d.ts +125 -46
- package/dist/CustomRender.js.map +1 -1
- package/dist/DataView.js +94 -96
- package/dist/DataView.js.map +1 -1
- package/dist/DataView.keys-aSOnA4AD.js.map +1 -1
- package/dist/DataView.vue.d.ts +15 -57
- package/dist/DataViewFilters.js +127 -139
- package/dist/DataViewFilters.js.map +1 -1
- package/dist/DataViewFilters.keys-BLu07FiP.js.map +1 -1
- package/dist/DataViewFilters.vue.d.ts +9 -54
- package/dist/DataViewSortButton.js +2 -2
- package/dist/DataViewSortButton.js.map +1 -1
- package/dist/DataViewSortButton.vue.d.ts +3 -30
- package/dist/DataViewToolbar.js +70 -62
- package/dist/DataViewToolbar.js.map +1 -1
- package/dist/DataViewToolbar.vue.d.ts +5 -40
- package/dist/DatePicker.js +4524 -4636
- package/dist/DatePicker.js.map +1 -1
- package/dist/DatePicker.vue.d.ts +32 -81
- package/dist/DescriptionList.js.map +1 -1
- package/dist/DescriptionList.vue.d.ts +3 -32
- package/dist/DescriptionListDetail.js.map +1 -1
- package/dist/DescriptionListDetail.vue.d.ts +1 -1
- package/dist/DescriptionListGroup.js.map +1 -1
- package/dist/DescriptionListGroup.vue.d.ts +1 -1
- package/dist/DescriptionListTerm.js.map +1 -1
- package/dist/DescriptionListTerm.vue.d.ts +1 -1
- package/dist/Dialog.js.map +1 -1
- package/dist/Dialog.vue.d.ts +10 -53
- package/dist/Divider.js.map +1 -1
- package/dist/Dropdown.js +89 -95
- package/dist/Dropdown.js.map +1 -1
- package/dist/Dropdown.vue.d.ts +12 -48
- package/dist/EmptyState.js +1 -1
- package/dist/EmptyState.js.map +1 -1
- package/dist/EmptyState.vue.d.ts +5 -62
- package/dist/Expand.vue.d.ts +10 -40
- package/dist/Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js.map +1 -1
- package/dist/Field.vue.d.ts +4 -53
- package/dist/Field.vue_vue_type_script_setup_true_lang-DI6z3AE9.js.map +1 -1
- package/dist/FileUpload.js +72 -74
- package/dist/FileUpload.js.map +1 -1
- package/dist/FileUpload.vue.d.ts +10 -44
- package/dist/FilterChip.js.map +1 -1
- package/dist/FilterChip.vue.d.ts +6 -41
- package/dist/FilterDrawerItem.js +21 -21
- package/dist/FilterDrawerItem.js.map +1 -1
- package/dist/FilterDrawerItem.vue.d.ts +6 -23
- package/dist/FilterDropdown.js +63 -69
- package/dist/FilterDropdown.js.map +1 -1
- package/dist/FilterDropdown.vue.d.ts +122 -35
- package/dist/FilterSelect.js.map +1 -1
- package/dist/FilterSelect.vue.d.ts +4 -31
- package/dist/Filters.js +157 -164
- package/dist/Filters.js.map +1 -1
- package/dist/Filters.vue.d.ts +0 -2190
- package/dist/HttpError.js +7 -7
- package/dist/HttpError.js.map +1 -1
- package/dist/HttpError.vue.d.ts +4 -41
- package/dist/Icon.js +16 -15
- package/dist/Icon.js.map +1 -1
- package/dist/Icon.vue.d.ts +4 -37
- package/dist/IconLabel.js.map +1 -1
- package/dist/IconLabel.vue.d.ts +6 -41
- package/dist/Illustration.js +2 -2
- package/dist/Illustration.vue.d.ts +3 -42
- package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js → Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js} +11 -11
- package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js.map → Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js.map} +1 -1
- package/dist/Image.js +2 -2
- package/dist/Image.vue.d.ts +5 -40
- package/dist/{Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js → Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js} +37 -41
- package/dist/{Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js.map → Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js.map} +1 -1
- package/dist/InlineEdit.js.map +1 -1
- package/dist/InlineEdit.vue.d.ts +126 -47
- package/dist/Input.js.map +1 -1
- package/dist/Input.vue.d.ts +12 -45
- package/dist/InputOptions.js +66 -69
- package/dist/InputOptions.js.map +1 -1
- package/dist/InputOptions.vue.d.ts +10 -55
- package/dist/IntegrationIcon.js +7 -7
- package/dist/IntegrationIcon.js.map +1 -1
- package/dist/IntegrationIcon.vue.d.ts +3 -36
- package/dist/Label.vue.d.ts +3 -42
- package/dist/Label.vue_vue_type_script_setup_true_lang-CNquF3AP.js.map +1 -1
- package/dist/LicenseChip.js.map +1 -1
- package/dist/LicenseChip.vue.d.ts +3 -30
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItem.vue.d.ts +0 -294
- package/dist/ListItemCell.js.map +1 -1
- package/dist/ListItemCell.vue.d.ts +0 -21
- package/dist/ListView.js +4 -7
- package/dist/ListView.js.map +1 -1
- package/dist/ListView.types.d.ts +0 -29
- package/dist/ListView.vue.d.ts +0 -5496
- package/dist/Loading.js +2 -2
- package/dist/Loading.js.map +1 -1
- package/dist/Loading.vue.d.ts +1 -1
- package/dist/Logo.js +1 -1
- package/dist/Logo.vue.d.ts +6 -41
- package/dist/{Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js → Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js} +17 -17
- package/dist/Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js.map +1 -0
- package/dist/Menu.js.map +1 -1
- package/dist/Menu.vue.d.ts +1 -1
- package/dist/MenuItem.js.map +1 -1
- package/dist/MenuItem.vue.d.ts +1 -1
- package/dist/MenusPlugin-B4jpNe7x.js +12 -0
- package/dist/{MenusPlugin-Bk6UW6o9.js.map → MenusPlugin-B4jpNe7x.js.map} +1 -1
- package/dist/Metric.js.map +1 -1
- package/dist/Metric.vue.d.ts +3 -34
- package/dist/Modal.js +62 -64
- package/dist/Modal.js.map +1 -1
- package/dist/Modal.vue.d.ts +13 -60
- package/dist/Modals.js +17 -18
- package/dist/Modals.js.map +1 -1
- package/dist/ModalsPlugin.js +11 -11
- package/dist/ModalsPlugin.js.map +1 -1
- package/dist/Module.js.map +1 -1
- package/dist/Module.keys-CEsrW2f0.js.map +1 -1
- package/dist/Module.types-B1FfGGac.js.map +1 -1
- package/dist/Module.vue.d.ts +2 -29
- package/dist/ModuleContent.js.map +1 -1
- package/dist/ModuleContent.vue.d.ts +3 -3
- package/dist/ModuleFooter.js.map +1 -1
- package/dist/ModuleFooter.vue.d.ts +1 -1
- package/dist/ModuleHeader.js.map +1 -1
- package/dist/ModuleHeader.vue.d.ts +5 -39
- package/dist/ObfuscateText.js.map +1 -1
- package/dist/ObfuscateText.vue.d.ts +3 -40
- package/dist/PageContent.js.map +1 -1
- package/dist/PageContent.vue.d.ts +3 -30
- package/dist/PageHeader.js.map +1 -1
- package/dist/PageHeader.vue.d.ts +6 -35
- package/dist/PageNavigation.js +50 -50
- package/dist/PageNavigation.js.map +1 -1
- package/dist/PageNavigation.vue.d.ts +7 -36
- package/dist/Paginate.js.map +1 -1
- package/dist/Paginate.vue.d.ts +5 -40
- package/dist/PlaidLink.js.map +1 -1
- package/dist/PlaidLink.vue.d.ts +12 -49
- package/dist/QuickAction.js.map +1 -1
- package/dist/QuickAction.vue.d.ts +3 -16
- package/dist/Radio.js.map +1 -1
- package/dist/Radio.vue.d.ts +0 -93
- package/dist/RadioGroup.js +94 -101
- package/dist/RadioGroup.js.map +1 -1
- package/dist/RadioGroup.vue.d.ts +116 -42
- package/dist/RadioNew.js +96 -99
- package/dist/RadioNew.js.map +1 -1
- package/dist/RadioNew.vue.d.ts +7 -48
- package/dist/RangeInput.js.map +1 -1
- package/dist/RangeInput.vue.d.ts +1 -1
- package/dist/SearchBar.js +38 -39
- package/dist/SearchBar.js.map +1 -1
- package/dist/SearchBar.vue.d.ts +127 -44
- package/dist/SectionHeader.js.map +1 -1
- package/dist/SectionHeader.vue.d.ts +6 -37
- package/dist/Select.js +171 -183
- package/dist/Select.js.map +1 -1
- package/dist/Select.vue.d.ts +23 -102
- package/dist/SelectStatus.js +38 -38
- package/dist/SelectStatus.js.map +1 -1
- package/dist/SelectStatus.vue.d.ts +227 -47
- package/dist/Skeleton.js.map +1 -1
- package/dist/Skeleton.vue.d.ts +3 -34
- package/dist/Step.js +44 -44
- package/dist/Step.js.map +1 -1
- package/dist/Step.vue.d.ts +4 -43
- package/dist/Stepper.js.map +1 -1
- package/dist/Stepper.vue.d.ts +9 -44
- package/dist/Switch.js.map +1 -1
- package/dist/Switch.vue.d.ts +8 -47
- package/dist/Tab.js +1 -1
- package/dist/Tab.js.map +1 -1
- package/dist/Tab.vue.d.ts +2 -15
- package/dist/TabPanel.js.map +1 -1
- package/dist/TabPanel.vue.d.ts +3 -30
- package/dist/Table.js +53 -59
- package/dist/Table.js.map +1 -1
- package/dist/Table.keys-LHQf6FEH.js.map +1 -1
- package/dist/Table.vue.d.ts +3 -50
- package/dist/TableCell.js +1 -1
- package/dist/TableCell.js.map +1 -1
- package/dist/TableCell.vue.d.ts +3 -32
- package/dist/TableHeaderCell.js +1 -1
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableHeaderCell.vue.d.ts +3 -30
- package/dist/TableHeaderRow.js +47 -45
- package/dist/TableHeaderRow.js.map +1 -1
- package/dist/TableHeaderRow.vue.d.ts +5 -34
- package/dist/TableRow.js +60 -61
- package/dist/TableRow.js.map +1 -1
- package/dist/TableRow.vue.d.ts +7 -48
- package/dist/Tabs.js +2 -2
- package/dist/Tabs.vue.d.ts +122 -31
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js +156 -0
- package/dist/{Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js.map → Tabs.vue_vue_type_script_setup_true_lang-Dprx064Y.js.map} +1 -1
- package/dist/TextEditor.js +2414 -2420
- package/dist/TextEditor.js.map +1 -1
- package/dist/TextEditor.vue.d.ts +9 -40
- package/dist/Textarea.js +69 -69
- package/dist/Textarea.js.map +1 -1
- package/dist/Textarea.vue.d.ts +9 -44
- package/dist/Thumbnail.js +1 -1
- package/dist/Thumbnail.js.map +1 -1
- package/dist/Thumbnail.vue.d.ts +4 -4
- package/dist/ThumbnailEmpty.js.map +1 -1
- package/dist/ThumbnailEmpty.vue.d.ts +1 -1
- package/dist/ThumbnailGroup.js.map +1 -1
- package/dist/ThumbnailGroup.keys-EJ4qFNhx.js.map +1 -1
- package/dist/ThumbnailGroup.vue.d.ts +26 -22
- package/dist/Timeline.js.map +1 -1
- package/dist/Timeline.vue.d.ts +3 -32
- package/dist/TimelineItem.js.map +1 -1
- package/dist/TimelineItem.vue.d.ts +1 -1
- package/dist/Toast.js.map +1 -1
- package/dist/Toast.vue.d.ts +3 -30
- package/dist/Toasts.js.map +1 -1
- package/dist/ToastsPlugin.js +11 -11
- package/dist/ToastsPlugin.js.map +1 -1
- package/dist/Tooltip.js +29 -30
- package/dist/Tooltip.js.map +1 -1
- package/dist/Tooltip.vue.d.ts +11 -43
- package/dist/colors-DDDVvqfQ.js.map +1 -1
- package/dist/components.css +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/directives/autofocus.js.map +1 -1
- package/dist/directives/clickoutside.js.map +1 -1
- package/dist/directives/observe.js.map +1 -1
- package/dist/directives/sticky.js.map +1 -1
- package/dist/directives/tooltip.js +3 -3
- package/dist/directives/tooltip.js.map +1 -1
- package/dist/directives/viewable.js +39 -44
- package/dist/directives/viewable.js.map +1 -1
- package/dist/{floating-ui.vue-pzUuloyX.js → floating-ui.vue-CL01Y9ER.js} +2 -2
- package/dist/{floating-ui.vue-pzUuloyX.js.map → floating-ui.vue-CL01Y9ER.js.map} +1 -1
- package/dist/formatDateTime-DG7kBc2T.js +1414 -0
- package/dist/{formatDateTime-Dz8bXV0R.js.map → formatDateTime-DG7kBc2T.js.map} +1 -1
- package/dist/index-D6bxWkZ1.js.map +1 -1
- package/dist/{index-ConQ3o31.js → index-GUu9zvbg.js} +3 -3
- package/dist/{index-ConQ3o31.js.map → index-GUu9zvbg.js.map} +1 -1
- package/dist/index.js +99 -104
- package/dist/index.js.map +1 -1
- package/dist/isDefined-DzVx0B6k.js.map +1 -1
- package/dist/keys-BEdEsanp.js.map +1 -1
- package/dist/keys-C8Zfr_By.js.map +1 -1
- package/dist/locale.js.map +1 -1
- package/dist/misc-CHQs-G03.js.map +1 -1
- package/dist/obfuscateText.d.ts +1 -1
- package/dist/parseISO-wlfIB_QJ.js.map +1 -1
- package/dist/searchFuzzy-DBDE6jkd.js +408 -0
- package/dist/{searchFuzzy-DRasJ33G.js.map → searchFuzzy-DBDE6jkd.js.map} +1 -1
- package/dist/statusLevels-D8EgtE_L.js.map +1 -1
- package/dist/storage.js.map +1 -1
- package/dist/tailwind-base.js +1 -1
- package/dist/tailwind-base.js.map +1 -1
- package/dist/toTimeZone-Coq1oPTt.js.map +1 -1
- package/dist/useConfirmBeforeClosing.js.map +1 -1
- package/dist/useDialog.d.ts +2 -2
- package/dist/useDialog.js +21 -25
- package/dist/useDialog.js.map +1 -1
- package/dist/useGoogleMaps.js +108 -110
- package/dist/useGoogleMaps.js.map +1 -1
- package/dist/useMediaQuery.d.ts +0 -6
- package/dist/useMediaQuery.js +11 -15
- package/dist/useMediaQuery.js.map +1 -1
- package/dist/useModals.d.ts +1 -1
- package/dist/useModals.js.map +1 -1
- package/dist/usePaginationStats-d_q39naC.js.map +1 -1
- package/dist/usePlaidLink.js +20 -27
- package/dist/usePlaidLink.js.map +1 -1
- package/dist/useScriptTag.js.map +1 -1
- package/dist/useSearch.js +13 -13
- package/dist/useSearch.js.map +1 -1
- package/dist/useSelection.js +56 -56
- package/dist/useSelection.js.map +1 -1
- package/dist/useSortable.js +54 -63
- package/dist/useSortable.js.map +1 -1
- package/dist/useStepper.d.ts +2 -2
- package/dist/useStepper.js +36 -40
- package/dist/useStepper.js.map +1 -1
- package/dist/useToasts.js +23 -23
- package/dist/useToasts.js.map +1 -1
- package/dist/useValidation.js +96 -100
- package/dist/useValidation.js.map +1 -1
- package/dist/utils/calculateElementOverflow.js +4 -4
- package/dist/utils/calculateElementOverflow.js.map +1 -1
- package/dist/utils/colorScheme.js +2 -2
- package/dist/utils/colorScheme.js.map +1 -1
- package/dist/utils/createQueryString.js.map +1 -1
- package/dist/utils/createValidDate.js.map +1 -1
- package/dist/utils/formatDateTime.js +1 -1
- package/dist/utils/getContrastingTextColor.js.map +1 -1
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/i18n.js.map +1 -1
- package/dist/utils/normalizeDate.js.map +1 -1
- package/dist/utils/obfuscateText.js +6 -6
- package/dist/utils/obfuscateText.js.map +1 -1
- package/dist/utils/searchFuzzy.js +1 -1
- package/dist/utils/storage.js +23 -23
- package/dist/utils/storage.js.map +1 -1
- package/package.json +12 -13
- package/tailwind-base.ts +1 -1
- package/types/vite.d.ts +7 -0
- package/types/vitest.d.ts +7 -0
- package/dist/Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js.map +0 -1
- package/dist/MenusPlugin-Bk6UW6o9.js +0 -12
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js +0 -159
- package/dist/formatDateTime-Dz8bXV0R.js +0 -1418
- package/dist/searchFuzzy-DRasJ33G.js +0 -409
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-
|
|
7
|
+
import { M as R } from "./MenusPlugin-B4jpNe7x.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
|
|
24
|
+
var s = Object.defineProperty({}, "passive", {
|
|
25
25
|
get: function() {
|
|
26
26
|
r = !0;
|
|
27
27
|
}
|
|
28
28
|
});
|
|
29
|
-
window.addEventListener("test", null,
|
|
29
|
+
window.addEventListener("test", null, s);
|
|
30
30
|
} catch {
|
|
31
31
|
}
|
|
32
32
|
return r;
|
|
33
33
|
}(), J = {
|
|
34
|
-
install: function(r,
|
|
34
|
+
install: function(r, s) {
|
|
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
|
-
},
|
|
51
|
+
}, s);
|
|
52
52
|
function i(e) {
|
|
53
|
-
var t = this.$$touchObj,
|
|
54
|
-
|
|
55
|
-
t.touchHoldTimer = null,
|
|
56
|
-
}, t.options.touchHoldTolerance)),
|
|
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")));
|
|
57
57
|
}
|
|
58
|
-
function
|
|
59
|
-
var t = this.$$touchObj,
|
|
60
|
-
if (t.currentX =
|
|
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) {
|
|
61
61
|
if (t.hasSwipe && !t.swipeOutBounded) {
|
|
62
|
-
var
|
|
63
|
-
t.swipeOutBounded = Math.abs(t.startX - t.currentX) >
|
|
62
|
+
var c = t.options.swipeTolerance;
|
|
63
|
+
t.swipeOutBounded = Math.abs(t.startX - t.currentX) > c && Math.abs(t.startY - t.currentY) > c;
|
|
64
64
|
}
|
|
65
65
|
} else {
|
|
66
|
-
var
|
|
67
|
-
t.touchMoved = Math.abs(t.startX - t.currentX) >
|
|
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"));
|
|
68
68
|
}
|
|
69
|
-
if (
|
|
70
|
-
var a = e.timeStamp,
|
|
71
|
-
(t.touchRollTime == null || a > t.touchRollTime +
|
|
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"));
|
|
72
72
|
}
|
|
73
|
-
if (
|
|
74
|
-
var a = e.timeStamp,
|
|
75
|
-
(t.touchDragTime == null || a > t.touchDragTime +
|
|
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"));
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
|
-
function
|
|
78
|
+
function E() {
|
|
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
|
|
83
|
-
var t = this.$$touchObj,
|
|
84
|
-
|
|
85
|
-
var
|
|
86
|
-
if (S(t), t.touchStarted = !1, O(this), !(
|
|
87
|
-
if (
|
|
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) {
|
|
88
88
|
if (t.hasSwipe && !t.swipeOutBounded) {
|
|
89
|
-
var
|
|
90
|
-
(a >
|
|
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));
|
|
91
91
|
}
|
|
92
|
-
} else if (
|
|
93
|
-
e.cancelable && e.preventDefault(),
|
|
94
|
-
else if (
|
|
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) {
|
|
95
95
|
e.cancelable && e.preventDefault();
|
|
96
96
|
return;
|
|
97
97
|
} else
|
|
98
|
-
|
|
98
|
+
d(e, this, "tap");
|
|
99
99
|
}
|
|
100
|
-
function
|
|
100
|
+
function p() {
|
|
101
101
|
C(this);
|
|
102
102
|
}
|
|
103
|
-
function
|
|
103
|
+
function T() {
|
|
104
104
|
O(this);
|
|
105
105
|
}
|
|
106
|
-
function
|
|
107
|
-
var
|
|
108
|
-
return
|
|
106
|
+
function l(e, t) {
|
|
107
|
+
var o = e.$$touchObj.callbacks[t];
|
|
108
|
+
return o != null && o.length > 0;
|
|
109
109
|
}
|
|
110
|
-
function
|
|
111
|
-
var
|
|
112
|
-
if (
|
|
110
|
+
function d(e, t, o, h) {
|
|
111
|
+
var f = t.$$touchObj, u = f.callbacks[o];
|
|
112
|
+
if (u == null || u.length === 0)
|
|
113
113
|
return null;
|
|
114
|
-
for (var
|
|
115
|
-
var a =
|
|
116
|
-
a.modifiers.stop && e.stopPropagation(), a.modifiers.prevent && e.preventDefault(), !(a.modifiers.self && e.target !== e.currentTarget) && typeof a.value == "function" && (
|
|
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));
|
|
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
|
|
131
|
+
var o = 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 && (
|
|
140
|
+
return t && (o.options = Object.assign({}, o.options, t)), e.$$touchObj = o, e.$$touchObj;
|
|
141
141
|
}
|
|
142
142
|
r.directive(n.namespace, {
|
|
143
143
|
beforeMount: function(e, t) {
|
|
144
|
-
var
|
|
145
|
-
switch (
|
|
144
|
+
var o = g(e), h = z ? { passive: !0 } : !1, f = t.arg || "tap";
|
|
145
|
+
switch (f) {
|
|
146
146
|
case "swipe":
|
|
147
|
-
var
|
|
148
|
-
if (
|
|
149
|
-
for (var
|
|
150
|
-
if (["left", "right", "top", "bottom"].indexOf(
|
|
151
|
-
var a = "swipe." +
|
|
152
|
-
|
|
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);
|
|
153
153
|
}
|
|
154
154
|
} else
|
|
155
|
-
|
|
155
|
+
o.callbacks.swipe = o.callbacks.swipe || [], o.callbacks.swipe.push(t);
|
|
156
156
|
break;
|
|
157
157
|
case "press":
|
|
158
158
|
case "drag":
|
|
159
|
-
t.modifiers.disablePassive && (
|
|
159
|
+
t.modifiers.disablePassive && (h = !1);
|
|
160
160
|
default:
|
|
161
|
-
|
|
161
|
+
o.callbacks[f] = o.callbacks[f] || [], o.callbacks[f].push(t);
|
|
162
162
|
}
|
|
163
|
-
|
|
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);
|
|
164
164
|
},
|
|
165
165
|
unmounted: function(e) {
|
|
166
|
-
S(e.$$touchObj), e.removeEventListener("touchstart", i), e.removeEventListener("touchmove",
|
|
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;
|
|
167
167
|
}
|
|
168
168
|
}), r.directive(`${n.namespace}-class`, {
|
|
169
169
|
beforeMount: function(e, t) {
|
|
@@ -181,65 +181,60 @@ var z = function() {
|
|
|
181
181
|
const K = /* @__PURE__ */ y({
|
|
182
182
|
__name: "Dialogs",
|
|
183
183
|
setup(r) {
|
|
184
|
-
const
|
|
184
|
+
const s = F(), n = x(() => s.active ? B(s.active, ["deferred", "onConfirm", "onCancel", "slots"]) : null);
|
|
185
185
|
function i() {
|
|
186
|
-
|
|
187
|
-
(p = o.active) != null && p.onCancel && o.active.onCancel(), (f = (h = o.active) == null ? void 0 : h.deferred) == null || f.resolve({
|
|
186
|
+
s.active?.onCancel && s.active.onCancel(), s.active?.deferred?.resolve({
|
|
188
187
|
isCanceled: !0
|
|
189
|
-
}),
|
|
188
|
+
}), s.close();
|
|
190
189
|
}
|
|
191
|
-
async function
|
|
192
|
-
|
|
193
|
-
(p = o.active) != null && p.onConfirm && await o.active.onConfirm(), (f = (h = o.active) == null ? void 0 : h.deferred) == null || f.resolve({
|
|
190
|
+
async function m() {
|
|
191
|
+
s.active?.onConfirm && await s.active.onConfirm(), s.active?.deferred?.resolve({
|
|
194
192
|
isConfirmed: !0
|
|
195
|
-
}),
|
|
193
|
+
}), s.close();
|
|
196
194
|
}
|
|
197
|
-
return (
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
}))
|
|
211
|
-
]), 1040, ["open"]);
|
|
212
|
-
};
|
|
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"]));
|
|
213
208
|
}
|
|
214
209
|
}), j = "stash-dialogs-mount-node", Q = {
|
|
215
|
-
install(r,
|
|
216
|
-
const n =
|
|
210
|
+
install(r, s) {
|
|
211
|
+
const n = s?.mountNodeId || j;
|
|
217
212
|
let i = document.getElementById(n);
|
|
218
|
-
i || (i = document.createElement("div"), i.id = n, i.dataset.test = j, document.body.appendChild(i)),
|
|
219
|
-
const
|
|
220
|
-
|
|
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);
|
|
221
216
|
}
|
|
222
|
-
},
|
|
217
|
+
}, nt = {
|
|
223
218
|
install(r, {
|
|
224
|
-
i18n:
|
|
219
|
+
i18n: s = void 0,
|
|
225
220
|
storage: n = void 0,
|
|
226
221
|
staticPath: i = "/static",
|
|
227
|
-
images:
|
|
222
|
+
images: m = {
|
|
228
223
|
provider: "static"
|
|
229
224
|
},
|
|
230
|
-
googleMapsApiKey:
|
|
231
|
-
menus:
|
|
232
|
-
modals:
|
|
233
|
-
toasts:
|
|
234
|
-
dialogs:
|
|
225
|
+
googleMapsApiKey: E = void 0,
|
|
226
|
+
menus: v,
|
|
227
|
+
modals: p,
|
|
228
|
+
toasts: T,
|
|
229
|
+
dialogs: l
|
|
235
230
|
} = {}) {
|
|
236
|
-
r.use(J, {}),
|
|
237
|
-
i18n:
|
|
238
|
-
images:
|
|
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,
|
|
239
234
|
storage: n,
|
|
240
235
|
staticPath: i,
|
|
241
|
-
googleMapsApiKey:
|
|
242
|
-
}),
|
|
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);
|
|
243
238
|
}
|
|
244
239
|
};
|
|
245
240
|
export {
|
|
@@ -251,7 +246,7 @@ export {
|
|
|
251
246
|
St as StatusColors,
|
|
252
247
|
Ot as StatusIcons,
|
|
253
248
|
gt as StatusSeverities,
|
|
254
|
-
|
|
249
|
+
nt as default,
|
|
255
250
|
V as overridePersistentStorage,
|
|
256
251
|
ht as persistentStorage
|
|
257
252
|
};
|
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","_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
|
+
{"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 +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;
|
|
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 +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":"
|
|
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 +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":"
|
|
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;"}
|
package/dist/locale.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locale.js","sources":["../src/locales/en-US.ts","../src/locale.ts"],"sourcesContent":["export default {\n ll: {\n actions: 'Actions',\n all: 'All',\n allFilters: 'All Filters',\n apply: 'Apply',\n areYouSure: 'Are you sure?',\n cancel: 'Cancel',\n carousel: {\n imageLabel: 'Image {index} of {total}',\n paginationLabel: 'Go to image {index}',\n },\n clear: 'Clear',\n closeModal: 'Close modal',\n confirm: 'Confirm',\n copy: {\n copied: 'Copied!',\n copyToClipboard: 'Copy to clipboard',\n },\n datePicker: {\n dateFormat: 'Date format',\n today: 'Today',\n },\n pageStats: '{from} - {to} of {total}',\n emptyState: {\n noResults: 'No results',\n },\n fileUpload: {\n dragDropFileHere: 'Drag and drop your file here',\n errors: {\n incorrectFileType: 'Please drop a file with type: {fileTypes}',\n },\n or: 'or',\n remove: 'Remove',\n uploadFile: 'Upload File',\n },\n filter: 'Filter',\n filterBy: 'Filter by',\n filters: 'Filters',\n httpError: {\n 401: {\n title: 'Unauthorized',\n description: 'Sorry, you are not authorized to access the LeafLink portal!',\n },\n 403: {\n title: 'Access denied.',\n description: `Sorry, you can not access the page you are looking for. Talk to your account admin regarding your account's permission settings.`,\n },\n 404: {\n title: `Sorry, we can't find this page.`,\n description: `We couldn't find the page you're looking for.`,\n },\n 405: {\n title: 'Not allowed.',\n description: `We couldn't reach the page you're looking for this way.`,\n },\n '50X': {\n title: 'Please wait while we hash this out.',\n description: `You've encountered an error.`,\n },\n 504: {\n title: 'Your request got lost in the weeds.',\n description: `You've encountered an error.`,\n },\n },\n listView: {\n calculating: 'Calculating results...',\n clearSelection: 'Clear Selection',\n deselectAllCount: 'Deselect all ({count})',\n numItemsSelected: '{totalSelectedCount} of {totalCount} items selected',\n numberOfTotalSelected: '{num} of {total} selected',\n selectAll: 'Select all',\n selectAllCount: 'Select all ({count})',\n sortBy: 'Sort by',\n totalResults: 'Showing {num} of {total} results',\n },\n many: 'Many',\n numberOfActiveFilters: 'Number of active filters',\n okay: 'Okay',\n optional: 'optional',\n pageNavigation: {\n more: 'More',\n },\n more: 'More',\n next: 'Next',\n previous: 'Previous',\n reset: 'Reset',\n resetAll: 'Reset all',\n search: 'Search',\n select: {\n self: 'Select',\n empty: 'No options',\n placeholder: 'Select option',\n selected: 'selected',\n },\n selectAll: 'Select all',\n sort: 'Sort',\n stepper: {\n currentStep: 'Step {num} of {total}',\n },\n table: {\n collapseRow: 'Collapse row',\n expandRow: 'Expand row',\n },\n validation: {\n email: 'Email must be valid',\n maxLength: 'Must be at most {max} characters',\n maxValue: 'Must be at most {max}',\n minLength: 'Must be at least {min} characters',\n minValue: 'Must be at least {min}',\n positiveNumber: 'Must be greater than 0',\n price: 'Must have 2 decimal places',\n required: 'Required',\n wholeNumber: 'Must be a Whole Number',\n },\n viewFilterGroup: 'View filter group',\n thumbnail: {\n altText: 'Image {index} of {total}',\n removeButton: 'Remove image {index}',\n },\n },\n};\n","import get from 'lodash-es/get';\n\nimport messages from './locales/en-US';\n\nexport let locale = 'en-US';\nlet i18nHandler;\n\n/**\n * Replaces params in a translation message with respective values\n * @param {string} path Translation path (foo.bar.baz)\n * @param {object} params Any params used in the translation message\n * @returns {string}\n */\nexport function format(path, params) {\n const pathParams = path.match(/({)([\\w]+)(})/g) || [];\n let message = path;\n\n pathParams.forEach((param) => {\n const prop = param.replace(/[{}]/g, '');\n\n message = message.replace(param, params[prop] || '');\n });\n\n return message;\n}\n\n/**\n * Returns a translation based on translation path\n * @param {string} path Translation path (foo.bar.baz)\n * @param {object} params Any params used in the translation message\n */\nfunction translate(path, params) {\n // Lookup translation\n const value = get(messages, path);\n\n // Return translation, otherwise the path\n return value ? format(value, params) : path;\n}\n\n/**\n * Calls the provided translation method `config.i18n.t` if provided, or the built-in\n * @param {...(string|object)} args\n * @param {string} path Translation path (foo.bar.baz)\n * @param {object} params Any params used in the translation message\n * @returns {string} Translation message\n */\nexport function t(...args) {\n const value = i18nHandler && i18nHandler(...args);\n\n // If value exists, but translation doesn't (returns translation key format (xx.xx)),\n // then fallback to default\n if (value && !/^\\w{2,}\\.\\w{2,}/.test(value)) {\n return value;\n }\n\n // @ts-expect-error - todo: Fix \"A spread argument must either have a tuple type or be passed to a rest parameter.ts(2556)\"\n // Default English message\n return translate(...args);\n}\n\n/**\n * Sets the locale\n * @param {string} l locale\n */\nexport function use(l) {\n locale = l || locale;\n}\n\n/**\n * Sets the translate function `t()`\n * @param {function} fn Translate function `t()`\n */\nexport function i18n(fn) {\n i18nHandler = fn;\n}\n\nexport default { i18n, locale, t, use };\n"],"names":["messages","locale","i18nHandler","format","path","params","pathParams","message","param","prop","translate","value","get","t","args","use","l","i18n","fn","locale$1"],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"locale.js","sources":["../src/locales/en-US.ts","../src/locale.ts"],"sourcesContent":["export default {\n ll: {\n actions: 'Actions',\n all: 'All',\n allFilters: 'All Filters',\n apply: 'Apply',\n areYouSure: 'Are you sure?',\n cancel: 'Cancel',\n carousel: {\n imageLabel: 'Image {index} of {total}',\n paginationLabel: 'Go to image {index}',\n },\n clear: 'Clear',\n closeModal: 'Close modal',\n confirm: 'Confirm',\n copy: {\n copied: 'Copied!',\n copyToClipboard: 'Copy to clipboard',\n },\n datePicker: {\n dateFormat: 'Date format',\n today: 'Today',\n },\n pageStats: '{from} - {to} of {total}',\n emptyState: {\n noResults: 'No results',\n },\n fileUpload: {\n dragDropFileHere: 'Drag and drop your file here',\n errors: {\n incorrectFileType: 'Please drop a file with type: {fileTypes}',\n },\n or: 'or',\n remove: 'Remove',\n uploadFile: 'Upload File',\n },\n filter: 'Filter',\n filterBy: 'Filter by',\n filters: 'Filters',\n httpError: {\n 401: {\n title: 'Unauthorized',\n description: 'Sorry, you are not authorized to access the LeafLink portal!',\n },\n 403: {\n title: 'Access denied.',\n description: `Sorry, you can not access the page you are looking for. Talk to your account admin regarding your account's permission settings.`,\n },\n 404: {\n title: `Sorry, we can't find this page.`,\n description: `We couldn't find the page you're looking for.`,\n },\n 405: {\n title: 'Not allowed.',\n description: `We couldn't reach the page you're looking for this way.`,\n },\n '50X': {\n title: 'Please wait while we hash this out.',\n description: `You've encountered an error.`,\n },\n 504: {\n title: 'Your request got lost in the weeds.',\n description: `You've encountered an error.`,\n },\n },\n listView: {\n calculating: 'Calculating results...',\n clearSelection: 'Clear Selection',\n deselectAllCount: 'Deselect all ({count})',\n numItemsSelected: '{totalSelectedCount} of {totalCount} items selected',\n numberOfTotalSelected: '{num} of {total} selected',\n selectAll: 'Select all',\n selectAllCount: 'Select all ({count})',\n sortBy: 'Sort by',\n totalResults: 'Showing {num} of {total} results',\n },\n many: 'Many',\n numberOfActiveFilters: 'Number of active filters',\n okay: 'Okay',\n optional: 'optional',\n pageNavigation: {\n more: 'More',\n },\n more: 'More',\n next: 'Next',\n previous: 'Previous',\n reset: 'Reset',\n resetAll: 'Reset all',\n search: 'Search',\n select: {\n self: 'Select',\n empty: 'No options',\n placeholder: 'Select option',\n selected: 'selected',\n },\n selectAll: 'Select all',\n sort: 'Sort',\n stepper: {\n currentStep: 'Step {num} of {total}',\n },\n table: {\n collapseRow: 'Collapse row',\n expandRow: 'Expand row',\n },\n validation: {\n email: 'Email must be valid',\n maxLength: 'Must be at most {max} characters',\n maxValue: 'Must be at most {max}',\n minLength: 'Must be at least {min} characters',\n minValue: 'Must be at least {min}',\n positiveNumber: 'Must be greater than 0',\n price: 'Must have 2 decimal places',\n required: 'Required',\n wholeNumber: 'Must be a Whole Number',\n },\n viewFilterGroup: 'View filter group',\n thumbnail: {\n altText: 'Image {index} of {total}',\n removeButton: 'Remove image {index}',\n },\n },\n};\n","import get from 'lodash-es/get';\n\nimport messages from './locales/en-US';\n\nexport let locale = 'en-US';\nlet i18nHandler;\n\n/**\n * Replaces params in a translation message with respective values\n * @param {string} path Translation path (foo.bar.baz)\n * @param {object} params Any params used in the translation message\n * @returns {string}\n */\nexport function format(path, params) {\n const pathParams = path.match(/({)([\\w]+)(})/g) || [];\n let message = path;\n\n pathParams.forEach((param) => {\n const prop = param.replace(/[{}]/g, '');\n\n message = message.replace(param, params[prop] || '');\n });\n\n return message;\n}\n\n/**\n * Returns a translation based on translation path\n * @param {string} path Translation path (foo.bar.baz)\n * @param {object} params Any params used in the translation message\n */\nfunction translate(path, params) {\n // Lookup translation\n const value = get(messages, path);\n\n // Return translation, otherwise the path\n return value ? format(value, params) : path;\n}\n\n/**\n * Calls the provided translation method `config.i18n.t` if provided, or the built-in\n * @param {...(string|object)} args\n * @param {string} path Translation path (foo.bar.baz)\n * @param {object} params Any params used in the translation message\n * @returns {string} Translation message\n */\nexport function t(...args) {\n const value = i18nHandler && i18nHandler(...args);\n\n // If value exists, but translation doesn't (returns translation key format (xx.xx)),\n // then fallback to default\n if (value && !/^\\w{2,}\\.\\w{2,}/.test(value)) {\n return value;\n }\n\n // @ts-expect-error - todo: Fix \"A spread argument must either have a tuple type or be passed to a rest parameter.ts(2556)\"\n // Default English message\n return translate(...args);\n}\n\n/**\n * Sets the locale\n * @param {string} l locale\n */\nexport function use(l) {\n locale = l || locale;\n}\n\n/**\n * Sets the translate function `t()`\n * @param {function} fn Translate function `t()`\n */\nexport function i18n(fn) {\n i18nHandler = fn;\n}\n\nexport default { i18n, locale, t, use };\n"],"names":["messages","locale","i18nHandler","format","path","params","pathParams","message","param","prop","translate","value","get","t","args","use","l","i18n","fn","locale$1"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"misc-CHQs-G03.js","sources":["../types/misc.ts"],"sourcesContent":["import { DefineComponent, Directive } from 'vue';\n\nexport interface I18nPlugin {\n locale: string;\n t: (key: string, value: string) => string;\n}\n\nexport interface StashProvideState {\n components?: Record<string, DefineComponent>;\n directives?: Record<string, Directive>;\n i18n?: I18nPlugin;\n images: StashOptionImages;\n storage?: unknown;\n staticPath: string;\n googleMapsApiKey?: string;\n}\n\nexport enum StashImageProvider {\n Static = 'static',\n Cloudinary = 'cloudinary',\n}\n\n/**\n * Image\n */\nexport type StashImageProviders = `${StashImageProvider}`;\n\nexport interface StashOptionImages {\n provider: StashImageProviders;\n}\n\n/**\n * For controlling properties like \"padding\" and \"margin\" within and between components.\n */\nexport enum SpacingDensity {\n Compact = 'compact',\n Comfortable = 'comfortable',\n}\n\nexport type SpacingDensities = `${SpacingDensity}`;\n"],"names":["StashImageProvider","SpacingDensity"],"mappings":"
|
|
1
|
+
{"version":3,"file":"misc-CHQs-G03.js","sources":["../types/misc.ts"],"sourcesContent":["import { DefineComponent, Directive } from 'vue';\n\nexport interface I18nPlugin {\n locale: string;\n t: (key: string, value: string) => string;\n}\n\nexport interface StashProvideState {\n components?: Record<string, DefineComponent>;\n directives?: Record<string, Directive>;\n i18n?: I18nPlugin;\n images: StashOptionImages;\n storage?: unknown;\n staticPath: string;\n googleMapsApiKey?: string;\n}\n\nexport enum StashImageProvider {\n Static = 'static',\n Cloudinary = 'cloudinary',\n}\n\n/**\n * Image\n */\nexport type StashImageProviders = `${StashImageProvider}`;\n\nexport interface StashOptionImages {\n provider: StashImageProviders;\n}\n\n/**\n * For controlling properties like \"padding\" and \"margin\" within and between components.\n */\nexport enum SpacingDensity {\n Compact = 'compact',\n Comfortable = 'comfortable',\n}\n\nexport type SpacingDensities = `${SpacingDensity}`;\n"],"names":["StashImageProvider","SpacingDensity"],"mappings":"AAiBO,IAAKA,sBAAAA,OACVA,EAAA,SAAS,UACTA,EAAA,aAAa,cAFHA,IAAAA,KAAA,CAAA,CAAA,GAiBAC,sBAAAA,OACVA,EAAA,UAAU,WACVA,EAAA,cAAc,eAFJA,IAAAA,KAAA,CAAA,CAAA;"}
|
package/dist/obfuscateText.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
declare function obfuscateText(text: any, { maskChar, maskCharCount, lengthToKeep, position }?: ObfuscateTextOptions): string;
|
|
2
2
|
export default obfuscateText;
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
declare interface ObfuscateTextOptions {
|
|
5
5
|
/**
|
|
6
6
|
* Num of characters to keep revealed.
|
|
7
7
|
* Default will obfuscate entire string
|