@leaflink/stash 51.11.0 → 51.12.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/README.md +41 -12
- package/dist/Accordion.js.map +1 -1
- package/dist/Accordion.vue.d.ts +37 -6
- package/dist/ActionsDropdown.js +2 -2
- package/dist/ActionsDropdown.js.map +1 -1
- package/dist/ActionsDropdown.vue.d.ts +74 -0
- package/dist/AddressSelect.js +60 -56
- package/dist/AddressSelect.js.map +1 -1
- package/dist/AddressSelect.vue.d.ts +65 -8
- package/dist/Alert.js.map +1 -1
- package/dist/Alert.vue.d.ts +41 -4
- package/dist/AppNavigationItem.js.map +1 -1
- package/dist/AppNavigationItem.vue.d.ts +31 -4
- package/dist/AppSidebar.js.map +1 -1
- package/dist/AppSidebar.vue.d.ts +35 -8
- package/dist/AppTopbar.js +1 -1
- package/dist/AppTopbar.js.map +1 -1
- package/dist/AppTopbar.vue.d.ts +33 -4
- package/dist/Avatar.js.map +1 -1
- package/dist/Avatar.vue.d.ts +44 -5
- 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 +55 -6
- package/dist/Box.vue.d.ts +36 -3
- 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 +50 -5
- package/dist/ButtonGroup.js +37 -33
- package/dist/ButtonGroup.js.map +1 -1
- package/dist/ButtonGroup.vue.d.ts +39 -6
- package/dist/Card.js.map +1 -1
- package/dist/Card.vue.d.ts +32 -5
- 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 +15 -2
- package/dist/CardMedia.js.map +1 -1
- package/dist/CardMedia.vue.d.ts +15 -2
- package/dist/Carousel.js +72 -66
- 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 +53 -8
- package/dist/ChevronToggle.vue.d.ts +34 -7
- 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 +52 -10
- package/dist/ConfirmationCodeInput.js +44 -40
- package/dist/ConfirmationCodeInput.js.map +1 -1
- package/dist/ConfirmationCodeInput.vue.d.ts +43 -8
- package/dist/ContextSwitcher.js.map +1 -1
- package/dist/ContextSwitcher.vue.d.ts +41 -6
- package/dist/Copy.js.map +1 -1
- package/dist/Copy.vue.d.ts +34 -3
- package/dist/CurrencyInput.js +21 -20
- package/dist/CurrencyInput.js.map +1 -1
- package/dist/CurrencyInput.vue.d.ts +46 -125
- package/dist/DataView.js +96 -94
- package/dist/DataView.js.map +1 -1
- package/dist/DataView.vue.d.ts +57 -12
- package/dist/DataViewFilters.js +139 -127
- package/dist/DataViewFilters.js.map +1 -1
- package/dist/DataViewFilters.vue.d.ts +54 -9
- package/dist/DataViewSortButton.js +2 -2
- package/dist/DataViewSortButton.js.map +1 -1
- package/dist/DataViewSortButton.vue.d.ts +30 -3
- package/dist/DataViewToolbar.js +81 -148
- package/dist/DataViewToolbar.js.map +1 -1
- package/dist/DataViewToolbar.vue.d.ts +40 -106
- package/dist/DatePicker.js +4640 -4528
- package/dist/DatePicker.js.map +1 -1
- package/dist/DatePicker.vue.d.ts +79 -30
- package/dist/DescriptionList.js.map +1 -1
- package/dist/DescriptionList.vue.d.ts +32 -3
- 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 +53 -10
- package/dist/Divider.js.map +1 -1
- package/dist/Dropdown.js +95 -89
- package/dist/Dropdown.js.map +1 -1
- package/dist/Dropdown.vue.d.ts +48 -12
- package/dist/EmptyState.js +1 -1
- package/dist/EmptyState.js.map +1 -1
- package/dist/EmptyState.vue.d.ts +62 -5
- package/dist/Expand.vue.d.ts +40 -10
- package/dist/Expand.vue_vue_type_script_setup_true_lang-CiONJfAp.js.map +1 -1
- package/dist/Field.vue.d.ts +53 -4
- package/dist/Field.vue_vue_type_script_setup_true_lang-DI6z3AE9.js.map +1 -1
- package/dist/FileUpload.js +74 -72
- package/dist/FileUpload.js.map +1 -1
- package/dist/FileUpload.vue.d.ts +44 -10
- package/dist/FilterChip.js.map +1 -1
- package/dist/FilterChip.vue.d.ts +41 -6
- package/dist/FilterDrawerItem.js +21 -21
- package/dist/FilterDrawerItem.js.map +1 -1
- package/dist/FilterDrawerItem.vue.d.ts +23 -6
- package/dist/FilterDropdown.js +69 -63
- package/dist/FilterDropdown.js.map +1 -1
- package/dist/FilterDropdown.vue.d.ts +35 -122
- package/dist/FilterSelect.js.map +1 -1
- package/dist/FilterSelect.vue.d.ts +31 -4
- package/dist/Filters.js +164 -157
- package/dist/Filters.js.map +1 -1
- package/dist/Filters.vue.d.ts +2190 -0
- package/dist/HttpError.js +7 -7
- package/dist/HttpError.js.map +1 -1
- package/dist/HttpError.vue.d.ts +41 -4
- package/dist/Icon.js +17 -17
- package/dist/Icon.js.map +1 -1
- package/dist/Icon.vue.d.ts +36 -3
- package/dist/IconLabel.js.map +1 -1
- package/dist/IconLabel.vue.d.ts +40 -5
- package/dist/Illustration.js +2 -2
- package/dist/Illustration.vue.d.ts +42 -3
- package/dist/{Illustration.vue_vue_type_script_setup_true_lang-BVzzNsRt.js → Illustration.vue_vue_type_script_setup_true_lang-BrqEF8xe.js} +11 -11
- 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
- package/dist/Image.js +2 -2
- package/dist/Image.vue.d.ts +40 -5
- package/dist/{Image.vue_vue_type_script_setup_true_lang-Dg2Zk2r2.js → Image.vue_vue_type_script_setup_true_lang-D5u4av0_.js} +41 -37
- 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
- package/dist/InlineEdit.js.map +1 -1
- package/dist/InlineEdit.vue.d.ts +47 -126
- package/dist/Input.js.map +1 -1
- package/dist/Input.vue.d.ts +45 -12
- package/dist/InputOptions.js +69 -66
- package/dist/InputOptions.js.map +1 -1
- package/dist/InputOptions.vue.d.ts +55 -10
- package/dist/IntegrationIcon.js +7 -7
- package/dist/IntegrationIcon.js.map +1 -1
- package/dist/IntegrationIcon.vue.d.ts +36 -3
- package/dist/Label.vue.d.ts +42 -3
- 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 +30 -3
- package/dist/ListItem.js.map +1 -1
- package/dist/ListItem.vue.d.ts +294 -0
- package/dist/ListItemCell.js.map +1 -1
- package/dist/ListItemCell.vue.d.ts +21 -0
- package/dist/ListView.js +7 -4
- package/dist/ListView.js.map +1 -1
- package/dist/ListView.types.d.ts +29 -0
- package/dist/ListView.vue.d.ts +5496 -0
- 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 +41 -6
- package/dist/{Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js → Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.js} +17 -17
- package/dist/Logo.vue_vue_type_script_setup_true_lang-Dz8c98sc.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-Bk6UW6o9.js +12 -0
- package/dist/{MenusPlugin-B4jpNe7x.js.map → MenusPlugin-Bk6UW6o9.js.map} +1 -1
- package/dist/Metric.js.map +1 -1
- package/dist/Metric.vue.d.ts +34 -3
- package/dist/Modal.js +64 -62
- package/dist/Modal.js.map +1 -1
- package/dist/Modal.vue.d.ts +60 -13
- package/dist/Modals.js +18 -17
- 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.vue.d.ts +29 -2
- 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 +39 -5
- package/dist/MoreActions.js +125 -123
- package/dist/MoreActions.js.map +1 -1
- package/dist/MoreActions.vue.d.ts +46 -123
- package/dist/ObfuscateText.js.map +1 -1
- package/dist/ObfuscateText.vue.d.ts +40 -3
- package/dist/PageContent.js.map +1 -1
- package/dist/PageContent.vue.d.ts +30 -3
- package/dist/PageHeader.js.map +1 -1
- package/dist/PageHeader.vue.d.ts +35 -6
- package/dist/PageNavigation.js +50 -50
- package/dist/PageNavigation.js.map +1 -1
- package/dist/PageNavigation.vue.d.ts +36 -7
- package/dist/Paginate.js.map +1 -1
- package/dist/Paginate.vue.d.ts +40 -5
- package/dist/PlaidLink.js.map +1 -1
- package/dist/PlaidLink.vue.d.ts +49 -12
- package/dist/QuickAction.js.map +1 -1
- package/dist/QuickAction.vue.d.ts +15 -2
- package/dist/Radio.js.map +1 -1
- package/dist/Radio.vue.d.ts +93 -0
- package/dist/RadioGroup.js +101 -94
- package/dist/RadioGroup.js.map +1 -1
- package/dist/RadioGroup.vue.d.ts +42 -116
- package/dist/RadioNew.js +99 -96
- package/dist/RadioNew.js.map +1 -1
- package/dist/RadioNew.vue.d.ts +48 -7
- package/dist/RangeInput.js.map +1 -1
- package/dist/RangeInput.vue.d.ts +1 -1
- package/dist/SearchBar.js +39 -38
- package/dist/SearchBar.js.map +1 -1
- package/dist/SearchBar.vue.d.ts +44 -127
- package/dist/SectionHeader.js.map +1 -1
- package/dist/SectionHeader.vue.d.ts +36 -5
- package/dist/Select.js +183 -171
- package/dist/Select.js.map +1 -1
- package/dist/Select.vue.d.ts +102 -23
- package/dist/SelectStatus.js +38 -38
- package/dist/SelectStatus.js.map +1 -1
- package/dist/SelectStatus.vue.d.ts +46 -226
- package/dist/Skeleton.js.map +1 -1
- package/dist/Skeleton.vue.d.ts +34 -3
- package/dist/Step.js +44 -44
- package/dist/Step.js.map +1 -1
- package/dist/Step.vue.d.ts +43 -4
- package/dist/Stepper.js.map +1 -1
- package/dist/Stepper.vue.d.ts +44 -9
- package/dist/Switch.js.map +1 -1
- package/dist/Switch.vue.d.ts +47 -8
- package/dist/Tab.js +9 -9
- package/dist/Tab.js.map +1 -1
- package/dist/Tab.vue.d.ts +15 -2
- package/dist/TabPanel.js.map +1 -1
- package/dist/TabPanel.vue.d.ts +30 -3
- package/dist/Table.js +59 -53
- package/dist/Table.js.map +1 -1
- package/dist/Table.vue.d.ts +50 -3
- package/dist/TableCell.js +1 -1
- package/dist/TableCell.js.map +1 -1
- package/dist/TableCell.vue.d.ts +32 -3
- package/dist/TableHeaderCell.js +1 -1
- package/dist/TableHeaderCell.js.map +1 -1
- package/dist/TableHeaderCell.vue.d.ts +30 -3
- package/dist/TableHeaderRow.js +1 -1
- package/dist/TableHeaderRow.js.map +1 -1
- package/dist/TableHeaderRow.vue.d.ts +34 -5
- package/dist/TableRow.js +44 -43
- package/dist/TableRow.js.map +1 -1
- package/dist/TableRow.vue.d.ts +48 -7
- package/dist/Tabs.js +2 -2
- package/dist/Tabs.vue.d.ts +31 -4
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js +159 -0
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-CmnBP4i1.js.map +1 -0
- package/dist/TextEditor.js +2422 -2416
- package/dist/TextEditor.js.map +1 -1
- package/dist/TextEditor.vue.d.ts +39 -8
- package/dist/Textarea.js +32 -29
- package/dist/Textarea.js.map +1 -1
- package/dist/Textarea.vue.d.ts +44 -9
- 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.vue.d.ts +22 -26
- package/dist/Timeline.js.map +1 -1
- package/dist/Timeline.vue.d.ts +32 -3
- 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 +30 -3
- package/dist/Toasts.js.map +1 -1
- package/dist/ToastsPlugin.js +11 -11
- package/dist/ToastsPlugin.js.map +1 -1
- package/dist/Tooltip.js +30 -29
- package/dist/Tooltip.js.map +1 -1
- package/dist/Tooltip.vue.d.ts +43 -11
- package/dist/components.css +1 -1
- package/dist/directives/observe.js +8 -8
- package/dist/directives/observe.js.map +1 -1
- package/dist/directives/tooltip.js +3 -3
- package/dist/directives/tooltip.js.map +1 -1
- package/dist/directives/viewable.js +44 -39
- package/dist/directives/viewable.js.map +1 -1
- package/dist/floating-ui.vue-DLFiymOf.js +1093 -0
- package/dist/floating-ui.vue-DLFiymOf.js.map +1 -0
- package/dist/formatDateTime-Dz8bXV0R.js +1418 -0
- package/dist/formatDateTime-Dz8bXV0R.js.map +1 -0
- package/dist/index-D6bxWkZ1.js.map +1 -1
- package/dist/{index-XZqpB2_R.js → index-DA_ft08e.js} +9 -9
- package/dist/index-DA_ft08e.js.map +1 -0
- package/dist/index.js +106 -101
- package/dist/index.js.map +1 -1
- package/dist/isValid-DN-HkCoi.js.map +1 -1
- package/dist/obfuscateText.d.ts +1 -1
- package/dist/parseISO-wlfIB_QJ.js.map +1 -1
- package/dist/searchFuzzy-B3TsUO-V.js +409 -0
- package/dist/searchFuzzy-B3TsUO-V.js.map +1 -0
- package/dist/toTimeZone-Coq1oPTt.js.map +1 -1
- package/dist/useDialog.d.ts +2 -2
- package/dist/useDialog.js +25 -21
- package/dist/useDialog.js.map +1 -1
- package/dist/useGoogleMaps.js +110 -108
- package/dist/useGoogleMaps.js.map +1 -1
- package/dist/useMediaQuery.d.ts +6 -0
- package/dist/useMediaQuery.js +15 -11
- package/dist/useMediaQuery.js.map +1 -1
- package/dist/useModals.d.ts +1 -1
- package/dist/usePlaidLink.js +27 -20
- package/dist/usePlaidLink.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 +63 -54
- package/dist/useSortable.js.map +1 -1
- package/dist/useStepper.d.ts +2 -2
- package/dist/useStepper.js +40 -36
- package/dist/useStepper.js.map +1 -1
- package/dist/useToasts.js +23 -23
- package/dist/useToasts.js.map +1 -1
- package/dist/useValidation.js +100 -96
- 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/formatDateTime.js +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 +32 -19
- package/dist/Logo.vue_vue_type_script_setup_true_lang-Y3iE9utm.js.map +0 -1
- package/dist/MenusPlugin-B4jpNe7x.js +0 -12
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-BlJVDr7o.js +0 -78
- package/dist/Tabs.vue_vue_type_script_setup_true_lang-BlJVDr7o.js.map +0 -1
- package/dist/floating-ui.vue-CL01Y9ER.js +0 -1075
- package/dist/floating-ui.vue-CL01Y9ER.js.map +0 -1
- package/dist/formatDateTime-DG7kBc2T.js +0 -1414
- package/dist/formatDateTime-DG7kBc2T.js.map +0 -1
- package/dist/index-XZqpB2_R.js.map +0 -1
- package/dist/searchFuzzy-DBDE6jkd.js +0 -408
- package/dist/searchFuzzy-DBDE6jkd.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGoogleMaps.js","sources":["../node_modules/@googlemaps/js-api-loader/dist/index.mjs","../src/composables/useGoogleMaps/useGoogleMaps.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nfunction getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nvar fastDeepEqual = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n\nvar isEqual = /*@__PURE__*/getDefaultExportFromCjs(fastDeepEqual);\n\n/**\n * Copyright 2019 Google LLC. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at.\n *\n * Http://www.apache.org/licenses/LICENSE-2.0.\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nconst DEFAULT_ID = \"__googleMapsScriptId\";\n/**\n * The status of the [[Loader]].\n */\nvar LoaderStatus;\n(function (LoaderStatus) {\n LoaderStatus[LoaderStatus[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n LoaderStatus[LoaderStatus[\"LOADING\"] = 1] = \"LOADING\";\n LoaderStatus[LoaderStatus[\"SUCCESS\"] = 2] = \"SUCCESS\";\n LoaderStatus[LoaderStatus[\"FAILURE\"] = 3] = \"FAILURE\";\n})(LoaderStatus || (LoaderStatus = {}));\n/**\n * [[Loader]] makes it easier to add Google Maps JavaScript API to your application\n * dynamically using\n * [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).\n * It works by dynamically creating and appending a script node to the the\n * document head and wrapping the callback function so as to return a promise.\n *\n * ```\n * const loader = new Loader({\n * apiKey: \"\",\n * version: \"weekly\",\n * libraries: [\"places\"]\n * });\n *\n * loader.load().then((google) => {\n * const map = new google.maps.Map(...)\n * })\n * ```\n */\nclass Loader {\n /**\n * Creates an instance of Loader using [[LoaderOptions]]. No defaults are set\n * using this library, instead the defaults are set by the Google Maps\n * JavaScript API server.\n *\n * ```\n * const loader = Loader({apiKey, version: 'weekly', libraries: ['places']});\n * ```\n */\n constructor({ apiKey, authReferrerPolicy, channel, client, id = DEFAULT_ID, language, libraries = [], mapIds, nonce, region, retries = 3, url = \"https://maps.googleapis.com/maps/api/js\", version, }) {\n this.callbacks = [];\n this.done = false;\n this.loading = false;\n this.errors = [];\n this.apiKey = apiKey;\n this.authReferrerPolicy = authReferrerPolicy;\n this.channel = channel;\n this.client = client;\n this.id = id || DEFAULT_ID; // Do not allow empty string\n this.language = language;\n this.libraries = libraries;\n this.mapIds = mapIds;\n this.nonce = nonce;\n this.region = region;\n this.retries = retries;\n this.url = url;\n this.version = version;\n if (Loader.instance) {\n if (!isEqual(this.options, Loader.instance.options)) {\n throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(Loader.instance.options)}`);\n }\n return Loader.instance;\n }\n Loader.instance = this;\n }\n get options() {\n return {\n version: this.version,\n apiKey: this.apiKey,\n channel: this.channel,\n client: this.client,\n id: this.id,\n libraries: this.libraries,\n language: this.language,\n region: this.region,\n mapIds: this.mapIds,\n nonce: this.nonce,\n url: this.url,\n authReferrerPolicy: this.authReferrerPolicy,\n };\n }\n get status() {\n if (this.errors.length) {\n return LoaderStatus.FAILURE;\n }\n if (this.done) {\n return LoaderStatus.SUCCESS;\n }\n if (this.loading) {\n return LoaderStatus.LOADING;\n }\n return LoaderStatus.INITIALIZED;\n }\n get failed() {\n return this.done && !this.loading && this.errors.length >= this.retries + 1;\n }\n /**\n * CreateUrl returns the Google Maps JavaScript API script url given the [[LoaderOptions]].\n *\n * @ignore\n * @deprecated\n */\n createUrl() {\n let url = this.url;\n url += `?callback=__googleMapsCallback&loading=async`;\n if (this.apiKey) {\n url += `&key=${this.apiKey}`;\n }\n if (this.channel) {\n url += `&channel=${this.channel}`;\n }\n if (this.client) {\n url += `&client=${this.client}`;\n }\n if (this.libraries.length > 0) {\n url += `&libraries=${this.libraries.join(\",\")}`;\n }\n if (this.language) {\n url += `&language=${this.language}`;\n }\n if (this.region) {\n url += `®ion=${this.region}`;\n }\n if (this.version) {\n url += `&v=${this.version}`;\n }\n if (this.mapIds) {\n url += `&map_ids=${this.mapIds.join(\",\")}`;\n }\n if (this.authReferrerPolicy) {\n url += `&auth_referrer_policy=${this.authReferrerPolicy}`;\n }\n return url;\n }\n deleteScript() {\n const script = document.getElementById(this.id);\n if (script) {\n script.remove();\n }\n }\n /**\n * Load the Google Maps JavaScript API script and return a Promise.\n * @deprecated, use importLibrary() instead.\n */\n load() {\n return this.loadPromise();\n }\n /**\n * Load the Google Maps JavaScript API script and return a Promise.\n *\n * @ignore\n * @deprecated, use importLibrary() instead.\n */\n loadPromise() {\n return new Promise((resolve, reject) => {\n this.loadCallback((err) => {\n if (!err) {\n resolve(window.google);\n }\n else {\n reject(err.error);\n }\n });\n });\n }\n importLibrary(name) {\n this.execute();\n return google.maps.importLibrary(name);\n }\n /**\n * Load the Google Maps JavaScript API script with a callback.\n * @deprecated, use importLibrary() instead.\n */\n loadCallback(fn) {\n this.callbacks.push(fn);\n this.execute();\n }\n /**\n * Set the script on document.\n */\n setScript() {\n var _a, _b;\n if (document.getElementById(this.id)) {\n // TODO wrap onerror callback for cases where the script was loaded elsewhere\n this.callback();\n return;\n }\n const params = {\n key: this.apiKey,\n channel: this.channel,\n client: this.client,\n libraries: this.libraries.length && this.libraries,\n v: this.version,\n mapIds: this.mapIds,\n language: this.language,\n region: this.region,\n authReferrerPolicy: this.authReferrerPolicy,\n };\n // keep the URL minimal:\n Object.keys(params).forEach(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (key) => !params[key] && delete params[key]);\n if (!((_b = (_a = window === null || window === void 0 ? void 0 : window.google) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.importLibrary)) {\n // tweaked copy of https://developers.google.com/maps/documentation/javascript/load-maps-js-api#dynamic-library-import\n // which also sets the base url, the id, and the nonce\n /* eslint-disable */\n ((g) => {\n // @ts-ignore\n let h, a, k, p = \"The Google Maps JavaScript API\", c = \"google\", l = \"importLibrary\", q = \"__ib__\", m = document, b = window;\n // @ts-ignore\n b = b[c] || (b[c] = {});\n // @ts-ignore\n const d = b.maps || (b.maps = {}), r = new Set(), e = new URLSearchParams(), u = () => \n // @ts-ignore\n h || (h = new Promise((f, n) => __awaiter(this, void 0, void 0, function* () {\n var _a;\n yield (a = m.createElement(\"script\"));\n a.id = this.id;\n e.set(\"libraries\", [...r] + \"\");\n // @ts-ignore\n for (k in g)\n e.set(k.replace(/[A-Z]/g, (t) => \"_\" + t[0].toLowerCase()), g[k]);\n e.set(\"callback\", c + \".maps.\" + q);\n a.src = this.url + `?` + e;\n d[q] = f;\n a.onerror = () => (h = n(Error(p + \" could not load.\")));\n // @ts-ignore\n a.nonce = this.nonce || ((_a = m.querySelector(\"script[nonce]\")) === null || _a === void 0 ? void 0 : _a.nonce) || \"\";\n m.head.append(a);\n })));\n // @ts-ignore\n d[l] ? console.warn(p + \" only loads once. Ignoring:\", g) : (d[l] = (f, ...n) => r.add(f) && u().then(() => d[l](f, ...n)));\n })(params);\n /* eslint-enable */\n }\n // While most libraries populate the global namespace when loaded via bootstrap params,\n // this is not the case for \"marker\" when used with the inline bootstrap loader\n // (and maybe others in the future). So ensure there is an importLibrary for each:\n const libraryPromises = this.libraries.map((library) => this.importLibrary(library));\n // ensure at least one library, to kick off loading...\n if (!libraryPromises.length) {\n libraryPromises.push(this.importLibrary(\"core\"));\n }\n Promise.all(libraryPromises).then(() => this.callback(), (error) => {\n const event = new ErrorEvent(\"error\", { error }); // for backwards compat\n this.loadErrorCallback(event);\n });\n }\n /**\n * Reset the loader state.\n */\n reset() {\n this.deleteScript();\n this.done = false;\n this.loading = false;\n this.errors = [];\n this.onerrorEvent = null;\n }\n resetIfRetryingFailed() {\n if (this.failed) {\n this.reset();\n }\n }\n loadErrorCallback(e) {\n this.errors.push(e);\n if (this.errors.length <= this.retries) {\n const delay = this.errors.length * Math.pow(2, this.errors.length);\n console.error(`Failed to load Google Maps script, retrying in ${delay} ms.`);\n setTimeout(() => {\n this.deleteScript();\n this.setScript();\n }, delay);\n }\n else {\n this.onerrorEvent = e;\n this.callback();\n }\n }\n callback() {\n this.done = true;\n this.loading = false;\n this.callbacks.forEach((cb) => {\n cb(this.onerrorEvent);\n });\n this.callbacks = [];\n }\n execute() {\n this.resetIfRetryingFailed();\n if (this.loading) {\n // do nothing but wait\n return;\n }\n if (this.done) {\n this.callback();\n }\n else {\n // short circuit and warn if google.maps is already loaded\n if (window.google && window.google.maps && window.google.maps.version) {\n console.warn(\"Google Maps already loaded outside @googlemaps/js-api-loader. \" +\n \"This may result in undesirable behavior as options and script parameters may not match.\");\n this.callback();\n return;\n }\n this.loading = true;\n this.setScript();\n }\n }\n}\n\nexport { DEFAULT_ID, Loader, LoaderStatus };\n//# sourceMappingURL=index.mjs.map\n","import { Loader } from '@googlemaps/js-api-loader';\nimport keyBy from 'lodash-es/keyBy';\nimport { onMounted } from 'vue';\n\nimport type { Address, AddressOption } from '../../../types/address';\n\n/**\n * Parses an array of address components from the Google Maps API into an Address object\n * @see https://developers.google.com/maps/documentation/javascript/geocoding#GeocodingAddressTypes\n * @param addressComponents An array of address components from the Google Maps API\n * @returns An Address object\n */\nfunction parseAddressComponents(\n addressComponents: Array<google.maps.GeocoderAddressComponent>,\n): Omit<Address, 'lat' | 'long' | 'placeId'> {\n const components = keyBy(addressComponents, 'types[0]');\n\n return {\n street_address:\n [components['street_number']?.['long_name'], components['route']?.['short_name']].filter(Boolean).join(' ') ||\n undefined,\n extended_address: components['premise']?.['long_name'] || components['subpremise']?.['long_name'],\n state: components['administrative_area_level_1']?.['short_name'],\n postal_code: components['postal_code']?.['long_name'],\n city:\n components['locality']?.['long_name'] ||\n components?.['administrative_area_level_2']?.['long_name'] ||\n components?.['sublocality_level_1']?.['long_name'] ||\n components?.['sublocality']?.['long_name'],\n country: components['country']?.['short_name'],\n };\n}\n\nexport default function useGoogleMaps(apiKey: string) {\n let autocompleteService: google.maps.places.AutocompleteService | null = null;\n let placesService: google.maps.places.PlacesService | null = null;\n\n function getPlacePredictions(query: string): Promise<Array<AddressOption>> {\n return new Promise((resolve, reject) => {\n if (!autocompleteService) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({ isGoogleMapsError: false, message: 'Autocomplete service not initialized' });\n return;\n }\n\n autocompleteService.getPlacePredictions({ input: query }, (predictions, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({\n isGoogleMapsError: true,\n message: `Failed to get query predictions with status ${status}`,\n status,\n });\n reject(status);\n return;\n }\n\n const options = (predictions || []).map(({ place_id, description }) => ({\n id: place_id,\n name: description,\n }));\n\n resolve(options);\n });\n });\n }\n\n function getPlaceDetails(placeId: string): Promise<Address> {\n return new Promise((resolve, reject) => {\n if (!placesService) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({ isGoogleMapsError: false, message: 'Places service not initialized' });\n return;\n }\n\n placesService.getDetails({ placeId, fields: ['address_components', 'geometry'] }, (placeResult, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({\n isGoogleMapsError: true,\n message: `Failed to get place details with status ${status}`,\n status,\n });\n return;\n }\n\n const partialAddress = parseAddressComponents(placeResult?.address_components || []);\n\n const address: Address = {\n ...partialAddress,\n lat: placeResult?.geometry?.location?.lat(),\n long: placeResult?.geometry?.location?.lng(),\n place_id: placeId,\n };\n\n resolve(address);\n });\n });\n }\n\n onMounted(() => {\n new Loader({\n apiKey,\n version: 'weekly',\n libraries: ['places'],\n })\n .importLibrary('places')\n .then((placesLib) => {\n autocompleteService = new placesLib.AutocompleteService();\n placesService = new placesLib.PlacesService(document.createElement('div'));\n });\n });\n\n return { getPlaceDetails, getPlacePredictions };\n}\n\nexport type { Address, AddressOption };\n"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","reject","fulfilled","step","e","rejected","result","getDefaultExportFromCjs","x","fastDeepEqual","equal","a","b","length","i","keys","key","isEqual","DEFAULT_ID","LoaderStatus","Loader","apiKey","authReferrerPolicy","channel","client","id","language","libraries","mapIds","nonce","region","retries","url","version","script","err","name","fn","_a","_b","params","g","h","k","p","l","q","m","d","r","u","f","n","t","libraryPromises","library","error","event","delay","cb","parseAddressComponents","addressComponents","components","keyBy","useGoogleMaps","autocompleteService","placesService","getPlacePredictions","query","predictions","status","options","place_id","description","getPlaceDetails","placeId","placeResult","address","onMounted","placesLib"],"mappings":";;AAiBA,SAASA,EAAUC,GAASC,GAAYC,GAAGC,GAAW;AAClD,WAASC,EAAMC,GAAO;AAAE,WAAOA,aAAiBH,IAAIG,IAAQ,IAAIH,EAAE,SAAUI,GAAS;AAAE,MAAAA,EAAQD,CAAK;AAAA,IAAG,CAAC;AAAA,EAAG;AAC3G,SAAO,KAAKH,MAAMA,IAAI,UAAU,SAAUI,GAASC,GAAQ;AACvD,aAASC,EAAUH,GAAO;AAAE,UAAI;AAAE,QAAAI,EAAKN,EAAU,KAAKE,CAAK,CAAC;AAAA,MAAG,SAASK,GAAG;AAAE,QAAAH,EAAOG,CAAC;AAAA,MAAG;AAAA,IAAE;AAC1F,aAASC,EAASN,GAAO;AAAE,UAAI;AAAE,QAAAI,EAAKN,EAAU,MAASE,CAAK,CAAC;AAAA,MAAG,SAASK,GAAG;AAAE,QAAAH,EAAOG,CAAC;AAAA,MAAG;AAAA,IAAE;AAC7F,aAASD,EAAKG,GAAQ;AAAE,MAAAA,EAAO,OAAON,EAAQM,EAAO,KAAK,IAAIR,EAAMQ,EAAO,KAAK,EAAE,KAAKJ,GAAWG,CAAQ;AAAA,IAAG;AAC7G,IAAAF,GAAMN,IAAYA,EAAU,MAAMH,GAAuB,CAAA,CAAE,GAAG,KAAI,CAAE;AAAA,EACxE,CAAC;AACL;AAOA,SAASa,EAAyBC,GAAG;AACpC,SAAOA,KAAKA,EAAE,cAAc,OAAO,UAAU,eAAe,KAAKA,GAAG,SAAS,IAAIA,EAAE,UAAaA;AACjG;AAMA,IAAIC,IAAgB,SAASC,EAAMC,GAAGC,GAAG;AACvC,MAAID,MAAMC,EAAG,QAAO;AAEpB,MAAID,KAAKC,KAAK,OAAOD,KAAK,YAAY,OAAOC,KAAK,UAAU;AAC1D,QAAID,EAAE,gBAAgBC,EAAE,YAAa,QAAO;AAE5C,QAAIC,GAAQC,GAAGC;AACf,QAAI,MAAM,QAAQJ,CAAC,GAAG;AAEpB,UADAE,IAASF,EAAE,QACPE,KAAUD,EAAE,OAAQ,QAAO;AAC/B,WAAKE,IAAID,GAAQC,QAAQ;AACvB,YAAI,CAACJ,EAAMC,EAAEG,CAAC,GAAGF,EAAEE,CAAC,CAAC,EAAG,QAAO;AACjC,aAAO;AAAA,IACT;AAIA,QAAIH,EAAE,gBAAgB,OAAQ,QAAOA,EAAE,WAAWC,EAAE,UAAUD,EAAE,UAAUC,EAAE;AAC5E,QAAID,EAAE,YAAY,OAAO,UAAU,QAAS,QAAOA,EAAE,QAAO,MAAOC,EAAE,QAAO;AAC5E,QAAID,EAAE,aAAa,OAAO,UAAU,SAAU,QAAOA,EAAE,SAAQ,MAAOC,EAAE,SAAQ;AAIhF,QAFAG,IAAO,OAAO,KAAKJ,CAAC,GACpBE,IAASE,EAAK,QACVF,MAAW,OAAO,KAAKD,CAAC,EAAE,OAAQ,QAAO;AAE7C,SAAKE,IAAID,GAAQC,QAAQ;AACvB,UAAI,CAAC,OAAO,UAAU,eAAe,KAAKF,GAAGG,EAAKD,CAAC,CAAC,EAAG,QAAO;AAEhE,SAAKA,IAAID,GAAQC,QAAQ,KAAI;AAC3B,UAAIE,IAAMD,EAAKD,CAAC;AAEhB,UAAI,CAACJ,EAAMC,EAAEK,CAAG,GAAGJ,EAAEI,CAAG,CAAC,EAAG,QAAO;AAAA,IACrC;AAEA,WAAO;AAAA,EACT;AAGA,SAAOL,MAAIA,KAAKC,MAAIA;AACtB,GAEIK,IAAuB,gBAAAV,EAAwBE,CAAa;AAiBhE,MAAMS,IAAa;AAInB,IAAIC;AAAA,CACH,SAAUA,GAAc;AACrB,EAAAA,EAAaA,EAAa,cAAiB,CAAC,IAAI,eAChDA,EAAaA,EAAa,UAAa,CAAC,IAAI,WAC5CA,EAAaA,EAAa,UAAa,CAAC,IAAI,WAC5CA,EAAaA,EAAa,UAAa,CAAC,IAAI;AAChD,GAAGA,MAAiBA,IAAe,CAAA,EAAG;AAoBtC,MAAMC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUT,YAAY,EAAE,QAAAC,GAAQ,oBAAAC,GAAoB,SAAAC,GAAS,QAAAC,GAAQ,IAAAC,IAAKP,GAAY,UAAAQ,GAAU,WAAAC,IAAY,CAAA,GAAI,QAAAC,GAAQ,OAAAC,GAAO,QAAAC,GAAQ,SAAAC,IAAU,GAAG,KAAAC,IAAM,2CAA2C,SAAAC,KAAY;AAkBnM,QAjBA,KAAK,YAAY,CAAA,GACjB,KAAK,OAAO,IACZ,KAAK,UAAU,IACf,KAAK,SAAS,CAAA,GACd,KAAK,SAASZ,GACd,KAAK,qBAAqBC,GAC1B,KAAK,UAAUC,GACf,KAAK,SAASC,GACd,KAAK,KAAKC,KAAMP,GAChB,KAAK,WAAWQ,GAChB,KAAK,YAAYC,GACjB,KAAK,SAASC,GACd,KAAK,QAAQC,GACb,KAAK,SAASC,GACd,KAAK,UAAUC,GACf,KAAK,MAAMC,GACX,KAAK,UAAUC,GACXb,EAAO,UAAU;AACjB,UAAI,CAACH,EAAQ,KAAK,SAASG,EAAO,SAAS,OAAO;AAC9C,cAAM,IAAI,MAAM,2DAA2D,KAAK,UAAU,KAAK,OAAO,CAAC,QAAQ,KAAK,UAAUA,EAAO,SAAS,OAAO,CAAC,EAAE;AAE5J,aAAOA,EAAO;AAAA,IAClB;AACA,IAAAA,EAAO,WAAW;AAAA,EACtB;AAAA,EACA,IAAI,UAAU;AACV,WAAO;AAAA,MACH,SAAS,KAAK;AAAA,MACd,QAAQ,KAAK;AAAA,MACb,SAAS,KAAK;AAAA,MACd,QAAQ,KAAK;AAAA,MACb,IAAI,KAAK;AAAA,MACT,WAAW,KAAK;AAAA,MAChB,UAAU,KAAK;AAAA,MACf,QAAQ,KAAK;AAAA,MACb,QAAQ,KAAK;AAAA,MACb,OAAO,KAAK;AAAA,MACZ,KAAK,KAAK;AAAA,MACV,oBAAoB,KAAK;AAAA,IACrC;AAAA,EACI;AAAA,EACA,IAAI,SAAS;AACT,WAAI,KAAK,OAAO,SACLD,EAAa,UAEpB,KAAK,OACEA,EAAa,UAEpB,KAAK,UACEA,EAAa,UAEjBA,EAAa;AAAA,EACxB;AAAA,EACA,IAAI,SAAS;AACT,WAAO,KAAK,QAAQ,CAAC,KAAK,WAAW,KAAK,OAAO,UAAU,KAAK,UAAU;AAAA,EAC9E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAY;AACR,QAAIa,IAAM,KAAK;AACf,WAAAA,KAAO,gDACH,KAAK,WACLA,KAAO,QAAQ,KAAK,MAAM,KAE1B,KAAK,YACLA,KAAO,YAAY,KAAK,OAAO,KAE/B,KAAK,WACLA,KAAO,WAAW,KAAK,MAAM,KAE7B,KAAK,UAAU,SAAS,MACxBA,KAAO,cAAc,KAAK,UAAU,KAAK,GAAG,CAAC,KAE7C,KAAK,aACLA,KAAO,aAAa,KAAK,QAAQ,KAEjC,KAAK,WACLA,KAAO,WAAW,KAAK,MAAM,KAE7B,KAAK,YACLA,KAAO,MAAM,KAAK,OAAO,KAEzB,KAAK,WACLA,KAAO,YAAY,KAAK,OAAO,KAAK,GAAG,CAAC,KAExC,KAAK,uBACLA,KAAO,yBAAyB,KAAK,kBAAkB,KAEpDA;AAAA,EACX;AAAA,EACA,eAAe;AACX,UAAME,IAAS,SAAS,eAAe,KAAK,EAAE;AAC9C,IAAIA,KACAA,EAAO,OAAM;AAAA,EAErB;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO;AACH,WAAO,KAAK,YAAW;AAAA,EAC3B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,cAAc;AACV,WAAO,IAAI,QAAQ,CAAClC,GAASC,MAAW;AACpC,WAAK,aAAa,CAACkC,MAAQ;AACvB,QAAKA,IAIDlC,EAAOkC,EAAI,KAAK,IAHhBnC,EAAQ,OAAO,MAAM;AAAA,MAK7B,CAAC;AAAA,IACL,CAAC;AAAA,EACL;AAAA,EACA,cAAcoC,GAAM;AAChB,gBAAK,QAAO,GACL,OAAO,KAAK,cAAcA,CAAI;AAAA,EACzC;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,aAAaC,GAAI;AACb,SAAK,UAAU,KAAKA,CAAE,GACtB,KAAK,QAAO;AAAA,EAChB;AAAA;AAAA;AAAA;AAAA,EAIA,YAAY;AACR,QAAIC,GAAIC;AACR,QAAI,SAAS,eAAe,KAAK,EAAE,GAAG;AAElC,WAAK,SAAQ;AACb;AAAA,IACJ;AACA,UAAMC,IAAS;AAAA,MACX,KAAK,KAAK;AAAA,MACV,SAAS,KAAK;AAAA,MACd,QAAQ,KAAK;AAAA,MACb,WAAW,KAAK,UAAU,UAAU,KAAK;AAAA,MACzC,GAAG,KAAK;AAAA,MACR,QAAQ,KAAK;AAAA,MACb,UAAU,KAAK;AAAA,MACf,QAAQ,KAAK;AAAA,MACb,oBAAoB,KAAK;AAAA,IACrC;AAEQ,WAAO,KAAKA,CAAM,EAAE;AAAA;AAAA,MAEpB,CAACxB,MAAQ,CAACwB,EAAOxB,CAAG,KAAK,OAAOwB,EAAOxB,CAAG;AAAA,IAAC,GACpC,GAAAuB,KAAMD,IAAqD,QAAO,YAAY,QAAQA,MAAO,SAAS,SAASA,EAAG,UAAU,QAAQC,MAAO,WAAkBA,EAAG,kBAIlK,CAACE,MAAM;AAEJ,UAAIC,GAAG,GAAGC,GAAGC,IAAI,kCAAkC,IAAI,UAAUC,IAAI,iBAAiBC,IAAI,UAAUC,IAAI,UAAUnC,IAAI;AAEtH,MAAAA,IAAIA,EAAE,CAAC,MAAMA,EAAE,CAAC,IAAI;AAEpB,YAAMoC,IAAIpC,EAAE,SAASA,EAAE,OAAO,CAAA,IAAKqC,IAAI,oBAAI,IAAG,GAAI7C,IAAI,IAAI,gBAAe,GAAI8C,IAAI;AAAA;AAAA,QAEjFR,MAAMA,IAAI,IAAI,QAAQ,CAACS,GAAGC,MAAM3D,EAAU,MAAM,QAAQ,QAAQ,aAAa;AACzE,cAAI6C;AACJ,gBAAO,IAAIS,EAAE,cAAc,QAAQ,GACnC,EAAE,KAAK,KAAK,IACZ3C,EAAE,IAAI,aAAa,CAAC,GAAG6C,CAAC,IAAI,EAAE;AAE9B,eAAKN,KAAKF;AACN,YAAArC,EAAE,IAAIuC,EAAE,QAAQ,UAAU,CAACU,MAAM,MAAMA,EAAE,CAAC,EAAE,YAAW,CAAE,GAAGZ,EAAEE,CAAC,CAAC;AACpE,UAAAvC,EAAE,IAAI,YAAY,IAAI,WAAW0C,CAAC,GAClC,EAAE,MAAM,KAAK,MAAM,MAAM1C,GACzB4C,EAAEF,CAAC,IAAIK,GACP,EAAE,UAAU,MAAOT,IAAIU,EAAE,MAAMR,IAAI,kBAAkB,CAAC,GAEtD,EAAE,QAAQ,KAAK,WAAWN,IAAKS,EAAE,cAAc,eAAe,OAAO,QAAQT,MAAO,SAAS,SAASA,EAAG,UAAU,IACnHS,EAAE,KAAK,OAAO,CAAC;AAAA,QACnB,CAAC,CAAC;AAAA;AAEF,MAAAC,EAAEH,CAAC,IAAI,QAAQ,KAAKD,IAAI,+BAA+BH,CAAC,IAAKO,EAAEH,CAAC,IAAI,CAACM,MAAMC,MAAMH,EAAE,IAAIE,CAAC,KAAKD,EAAC,EAAG,KAAK,MAAMF,EAAEH,CAAC,EAAEM,GAAG,GAAGC,CAAC,CAAC;AAAA,IAC7H,GAAGZ,CAAM;AAMb,UAAMc,IAAkB,KAAK,UAAU,IAAI,CAACC,MAAY,KAAK,cAAcA,CAAO,CAAC;AAEnF,IAAKD,EAAgB,UACjBA,EAAgB,KAAK,KAAK,cAAc,MAAM,CAAC,GAEnD,QAAQ,IAAIA,CAAe,EAAE,KAAK,MAAM,KAAK,YAAY,CAACE,MAAU;AAChE,YAAMC,IAAQ,IAAI,WAAW,SAAS,EAAE,OAAAD,EAAK,CAAE;AAC/C,WAAK,kBAAkBC,CAAK;AAAA,IAChC,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,QAAQ;AACJ,SAAK,aAAY,GACjB,KAAK,OAAO,IACZ,KAAK,UAAU,IACf,KAAK,SAAS,CAAA,GACd,KAAK,eAAe;AAAA,EACxB;AAAA,EACA,wBAAwB;AACpB,IAAI,KAAK,UACL,KAAK,MAAK;AAAA,EAElB;AAAA,EACA,kBAAkB,GAAG;AAEjB,QADA,KAAK,OAAO,KAAK,CAAC,GACd,KAAK,OAAO,UAAU,KAAK,SAAS;AACpC,YAAMC,IAAQ,KAAK,OAAO,SAAS,KAAK,IAAI,GAAG,KAAK,OAAO,MAAM;AACjE,cAAQ,MAAM,kDAAkDA,CAAK,MAAM,GAC3E,WAAW,MAAM;AACb,aAAK,aAAY,GACjB,KAAK,UAAS;AAAA,MAClB,GAAGA,CAAK;AAAA,IACZ;AAEI,WAAK,eAAe,GACpB,KAAK,SAAQ;AAAA,EAErB;AAAA,EACA,WAAW;AACP,SAAK,OAAO,IACZ,KAAK,UAAU,IACf,KAAK,UAAU,QAAQ,CAACC,MAAO;AAC3B,MAAAA,EAAG,KAAK,YAAY;AAAA,IACxB,CAAC,GACD,KAAK,YAAY,CAAA;AAAA,EACrB;AAAA,EACA,UAAU;AAEN,QADA,KAAK,sBAAqB,GACtB,MAAK;AAIT,UAAI,KAAK;AACL,aAAK,SAAQ;AAAA,WAEZ;AAED,YAAI,OAAO,UAAU,OAAO,OAAO,QAAQ,OAAO,OAAO,KAAK,SAAS;AACnE,kBAAQ,KAAK,uJACgF,GAC7F,KAAK,SAAQ;AACb;AAAA,QACJ;AACA,aAAK,UAAU,IACf,KAAK,UAAS;AAAA,MAClB;AAAA,EACJ;AACJ;AC1YA,SAASC,EACPC,GAC2C;AAC3C,QAAMC,IAAaC,EAAMF,GAAmB,UAAU;AAEtD,SAAO;AAAA,IACL,gBACE,CAACC,EAAW,eAAmB,WAAcA,EAAW,OAAW,UAAa,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,KAC1G;AAAA,IACF,kBAAkBA,EAAW,SAAa,aAAgBA,EAAW,YAAgB;AAAA,IACrF,OAAOA,EAAW,6BAAiC;AAAA,IACnD,aAAaA,EAAW,aAAiB;AAAA,IACzC,MACEA,EAAW,UAAc,aACzBA,GAAa,6BAAiC,aAC9CA,GAAa,qBAAyB,aACtCA,GAAa,aAAiB;AAAA,IAChC,SAASA,EAAW,SAAa;AAAA,EAAY;AAEjD;AAEA,SAAwBE,EAAc3C,GAAgB;AACpD,MAAI4C,IAAqE,MACrEC,IAAyD;AAE7D,WAASC,EAAoBC,GAA8C;AACzE,WAAO,IAAI,QAAQ,CAACpE,GAASC,MAAW;AACtC,UAAI,CAACgE,GAAqB;AAExB,QAAAhE,EAAO,EAAE,mBAAmB,IAAO,SAAS,wCAAwC;AACpF;AAAA,MACF;AAEA,MAAAgE,EAAoB,oBAAoB,EAAE,OAAOG,KAAS,CAACC,GAAaC,MAAW;AACjF,YAAIA,MAAW,OAAO,KAAK,OAAO,oBAAoB,IAAI;AAExD,UAAArE,EAAO;AAAA,YACL,mBAAmB;AAAA,YACnB,SAAS,+CAA+CqE,CAAM;AAAA,YAC9D,QAAAA;AAAA,UAAA,CACD,GACDrE,EAAOqE,CAAM;AACb;AAAA,QACF;AAEA,cAAMC,KAAWF,KAAe,CAAA,GAAI,IAAI,CAAC,EAAE,UAAAG,GAAU,aAAAC,SAAmB;AAAA,UACtE,IAAID;AAAA,UACJ,MAAMC;AAAA,QAAA,EACN;AAEF,QAAAzE,EAAQuE,CAAO;AAAA,MACjB,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAEA,WAASG,EAAgBC,GAAmC;AAC1D,WAAO,IAAI,QAAQ,CAAC3E,GAASC,MAAW;AACtC,UAAI,CAACiE,GAAe;AAElB,QAAAjE,EAAO,EAAE,mBAAmB,IAAO,SAAS,kCAAkC;AAC9E;AAAA,MACF;AAEA,MAAAiE,EAAc,WAAW,EAAE,SAAAS,GAAS,QAAQ,CAAC,sBAAsB,UAAU,EAAA,GAAK,CAACC,GAAaN,MAAW;AACzG,YAAIA,MAAW,OAAO,KAAK,OAAO,oBAAoB,IAAI;AAExD,UAAArE,EAAO;AAAA,YACL,mBAAmB;AAAA,YACnB,SAAS,2CAA2CqE,CAAM;AAAA,YAC1D,QAAAA;AAAA,UAAA,CACD;AACD;AAAA,QACF;AAIA,cAAMO,IAAmB;AAAA,UACvB,GAHqBjB,EAAuBgB,GAAa,sBAAsB,CAAA,CAAE;AAAA,UAIjF,KAAKA,GAAa,UAAU,UAAU,IAAA;AAAA,UACtC,MAAMA,GAAa,UAAU,UAAU,IAAA;AAAA,UACvC,UAAUD;AAAA,QAAA;AAGZ,QAAA3E,EAAQ6E,CAAO;AAAA,MACjB,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAEA,SAAAC,EAAU,MAAM;AACd,QAAI1D,EAAO;AAAA,MACT,QAAAC;AAAA,MACA,SAAS;AAAA,MACT,WAAW,CAAC,QAAQ;AAAA,IAAA,CACrB,EACE,cAAc,QAAQ,EACtB,KAAK,CAAC0D,MAAc;AACnB,MAAAd,IAAsB,IAAIc,EAAU,oBAAA,GACpCb,IAAgB,IAAIa,EAAU,cAAc,SAAS,cAAc,KAAK,CAAC;AAAA,IAC3E,CAAC;AAAA,EACL,CAAC,GAEM,EAAE,iBAAAL,GAAiB,qBAAAP,EAAA;AAC5B;","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"useGoogleMaps.js","sources":["../node_modules/.pnpm/@googlemaps+js-api-loader@1.16.8/node_modules/@googlemaps/js-api-loader/dist/index.mjs","../src/composables/useGoogleMaps/useGoogleMaps.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nfunction getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nvar fastDeepEqual = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n\nvar isEqual = /*@__PURE__*/getDefaultExportFromCjs(fastDeepEqual);\n\n/**\n * Copyright 2019 Google LLC. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at.\n *\n * Http://www.apache.org/licenses/LICENSE-2.0.\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nconst DEFAULT_ID = \"__googleMapsScriptId\";\n/**\n * The status of the [[Loader]].\n */\nvar LoaderStatus;\n(function (LoaderStatus) {\n LoaderStatus[LoaderStatus[\"INITIALIZED\"] = 0] = \"INITIALIZED\";\n LoaderStatus[LoaderStatus[\"LOADING\"] = 1] = \"LOADING\";\n LoaderStatus[LoaderStatus[\"SUCCESS\"] = 2] = \"SUCCESS\";\n LoaderStatus[LoaderStatus[\"FAILURE\"] = 3] = \"FAILURE\";\n})(LoaderStatus || (LoaderStatus = {}));\n/**\n * [[Loader]] makes it easier to add Google Maps JavaScript API to your application\n * dynamically using\n * [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise).\n * It works by dynamically creating and appending a script node to the the\n * document head and wrapping the callback function so as to return a promise.\n *\n * ```\n * const loader = new Loader({\n * apiKey: \"\",\n * version: \"weekly\",\n * libraries: [\"places\"]\n * });\n *\n * loader.load().then((google) => {\n * const map = new google.maps.Map(...)\n * })\n * ```\n */\nclass Loader {\n /**\n * Creates an instance of Loader using [[LoaderOptions]]. No defaults are set\n * using this library, instead the defaults are set by the Google Maps\n * JavaScript API server.\n *\n * ```\n * const loader = Loader({apiKey, version: 'weekly', libraries: ['places']});\n * ```\n */\n constructor({ apiKey, authReferrerPolicy, channel, client, id = DEFAULT_ID, language, libraries = [], mapIds, nonce, region, retries = 3, url = \"https://maps.googleapis.com/maps/api/js\", version, }) {\n this.callbacks = [];\n this.done = false;\n this.loading = false;\n this.errors = [];\n this.apiKey = apiKey;\n this.authReferrerPolicy = authReferrerPolicy;\n this.channel = channel;\n this.client = client;\n this.id = id || DEFAULT_ID; // Do not allow empty string\n this.language = language;\n this.libraries = libraries;\n this.mapIds = mapIds;\n this.nonce = nonce;\n this.region = region;\n this.retries = retries;\n this.url = url;\n this.version = version;\n if (Loader.instance) {\n if (!isEqual(this.options, Loader.instance.options)) {\n throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(Loader.instance.options)}`);\n }\n return Loader.instance;\n }\n Loader.instance = this;\n }\n get options() {\n return {\n version: this.version,\n apiKey: this.apiKey,\n channel: this.channel,\n client: this.client,\n id: this.id,\n libraries: this.libraries,\n language: this.language,\n region: this.region,\n mapIds: this.mapIds,\n nonce: this.nonce,\n url: this.url,\n authReferrerPolicy: this.authReferrerPolicy,\n };\n }\n get status() {\n if (this.errors.length) {\n return LoaderStatus.FAILURE;\n }\n if (this.done) {\n return LoaderStatus.SUCCESS;\n }\n if (this.loading) {\n return LoaderStatus.LOADING;\n }\n return LoaderStatus.INITIALIZED;\n }\n get failed() {\n return this.done && !this.loading && this.errors.length >= this.retries + 1;\n }\n /**\n * CreateUrl returns the Google Maps JavaScript API script url given the [[LoaderOptions]].\n *\n * @ignore\n * @deprecated\n */\n createUrl() {\n let url = this.url;\n url += `?callback=__googleMapsCallback&loading=async`;\n if (this.apiKey) {\n url += `&key=${this.apiKey}`;\n }\n if (this.channel) {\n url += `&channel=${this.channel}`;\n }\n if (this.client) {\n url += `&client=${this.client}`;\n }\n if (this.libraries.length > 0) {\n url += `&libraries=${this.libraries.join(\",\")}`;\n }\n if (this.language) {\n url += `&language=${this.language}`;\n }\n if (this.region) {\n url += `®ion=${this.region}`;\n }\n if (this.version) {\n url += `&v=${this.version}`;\n }\n if (this.mapIds) {\n url += `&map_ids=${this.mapIds.join(\",\")}`;\n }\n if (this.authReferrerPolicy) {\n url += `&auth_referrer_policy=${this.authReferrerPolicy}`;\n }\n return url;\n }\n deleteScript() {\n const script = document.getElementById(this.id);\n if (script) {\n script.remove();\n }\n }\n /**\n * Load the Google Maps JavaScript API script and return a Promise.\n * @deprecated, use importLibrary() instead.\n */\n load() {\n return this.loadPromise();\n }\n /**\n * Load the Google Maps JavaScript API script and return a Promise.\n *\n * @ignore\n * @deprecated, use importLibrary() instead.\n */\n loadPromise() {\n return new Promise((resolve, reject) => {\n this.loadCallback((err) => {\n if (!err) {\n resolve(window.google);\n }\n else {\n reject(err.error);\n }\n });\n });\n }\n importLibrary(name) {\n this.execute();\n return google.maps.importLibrary(name);\n }\n /**\n * Load the Google Maps JavaScript API script with a callback.\n * @deprecated, use importLibrary() instead.\n */\n loadCallback(fn) {\n this.callbacks.push(fn);\n this.execute();\n }\n /**\n * Set the script on document.\n */\n setScript() {\n var _a, _b;\n if (document.getElementById(this.id)) {\n // TODO wrap onerror callback for cases where the script was loaded elsewhere\n this.callback();\n return;\n }\n const params = {\n key: this.apiKey,\n channel: this.channel,\n client: this.client,\n libraries: this.libraries.length && this.libraries,\n v: this.version,\n mapIds: this.mapIds,\n language: this.language,\n region: this.region,\n authReferrerPolicy: this.authReferrerPolicy,\n };\n // keep the URL minimal:\n Object.keys(params).forEach(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (key) => !params[key] && delete params[key]);\n if (!((_b = (_a = window === null || window === void 0 ? void 0 : window.google) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.importLibrary)) {\n // tweaked copy of https://developers.google.com/maps/documentation/javascript/load-maps-js-api#dynamic-library-import\n // which also sets the base url, the id, and the nonce\n /* eslint-disable */\n ((g) => {\n // @ts-ignore\n let h, a, k, p = \"The Google Maps JavaScript API\", c = \"google\", l = \"importLibrary\", q = \"__ib__\", m = document, b = window;\n // @ts-ignore\n b = b[c] || (b[c] = {});\n // @ts-ignore\n const d = b.maps || (b.maps = {}), r = new Set(), e = new URLSearchParams(), u = () => \n // @ts-ignore\n h || (h = new Promise((f, n) => __awaiter(this, void 0, void 0, function* () {\n var _a;\n yield (a = m.createElement(\"script\"));\n a.id = this.id;\n e.set(\"libraries\", [...r] + \"\");\n // @ts-ignore\n for (k in g)\n e.set(k.replace(/[A-Z]/g, (t) => \"_\" + t[0].toLowerCase()), g[k]);\n e.set(\"callback\", c + \".maps.\" + q);\n a.src = this.url + `?` + e;\n d[q] = f;\n a.onerror = () => (h = n(Error(p + \" could not load.\")));\n // @ts-ignore\n a.nonce = this.nonce || ((_a = m.querySelector(\"script[nonce]\")) === null || _a === void 0 ? void 0 : _a.nonce) || \"\";\n m.head.append(a);\n })));\n // @ts-ignore\n d[l] ? console.warn(p + \" only loads once. Ignoring:\", g) : (d[l] = (f, ...n) => r.add(f) && u().then(() => d[l](f, ...n)));\n })(params);\n /* eslint-enable */\n }\n // While most libraries populate the global namespace when loaded via bootstrap params,\n // this is not the case for \"marker\" when used with the inline bootstrap loader\n // (and maybe others in the future). So ensure there is an importLibrary for each:\n const libraryPromises = this.libraries.map((library) => this.importLibrary(library));\n // ensure at least one library, to kick off loading...\n if (!libraryPromises.length) {\n libraryPromises.push(this.importLibrary(\"core\"));\n }\n Promise.all(libraryPromises).then(() => this.callback(), (error) => {\n const event = new ErrorEvent(\"error\", { error }); // for backwards compat\n this.loadErrorCallback(event);\n });\n }\n /**\n * Reset the loader state.\n */\n reset() {\n this.deleteScript();\n this.done = false;\n this.loading = false;\n this.errors = [];\n this.onerrorEvent = null;\n }\n resetIfRetryingFailed() {\n if (this.failed) {\n this.reset();\n }\n }\n loadErrorCallback(e) {\n this.errors.push(e);\n if (this.errors.length <= this.retries) {\n const delay = this.errors.length * Math.pow(2, this.errors.length);\n console.error(`Failed to load Google Maps script, retrying in ${delay} ms.`);\n setTimeout(() => {\n this.deleteScript();\n this.setScript();\n }, delay);\n }\n else {\n this.onerrorEvent = e;\n this.callback();\n }\n }\n callback() {\n this.done = true;\n this.loading = false;\n this.callbacks.forEach((cb) => {\n cb(this.onerrorEvent);\n });\n this.callbacks = [];\n }\n execute() {\n this.resetIfRetryingFailed();\n if (this.loading) {\n // do nothing but wait\n return;\n }\n if (this.done) {\n this.callback();\n }\n else {\n // short circuit and warn if google.maps is already loaded\n if (window.google && window.google.maps && window.google.maps.version) {\n console.warn(\"Google Maps already loaded outside @googlemaps/js-api-loader. \" +\n \"This may result in undesirable behavior as options and script parameters may not match.\");\n this.callback();\n return;\n }\n this.loading = true;\n this.setScript();\n }\n }\n}\n\nexport { DEFAULT_ID, Loader, LoaderStatus };\n//# sourceMappingURL=index.mjs.map\n","import { Loader } from '@googlemaps/js-api-loader';\nimport keyBy from 'lodash-es/keyBy';\nimport { onMounted } from 'vue';\n\nimport type { Address, AddressOption } from '../../../types/address';\n\n/**\n * Parses an array of address components from the Google Maps API into an Address object\n * @see https://developers.google.com/maps/documentation/javascript/geocoding#GeocodingAddressTypes\n * @param addressComponents An array of address components from the Google Maps API\n * @returns An Address object\n */\nfunction parseAddressComponents(\n addressComponents: Array<google.maps.GeocoderAddressComponent>,\n): Omit<Address, 'lat' | 'long' | 'placeId'> {\n const components = keyBy(addressComponents, 'types[0]');\n\n return {\n street_address:\n [components['street_number']?.['long_name'], components['route']?.['short_name']].filter(Boolean).join(' ') ||\n undefined,\n extended_address: components['premise']?.['long_name'] || components['subpremise']?.['long_name'],\n state: components['administrative_area_level_1']?.['short_name'],\n postal_code: components['postal_code']?.['long_name'],\n city:\n components['locality']?.['long_name'] ||\n components?.['administrative_area_level_2']?.['long_name'] ||\n components?.['sublocality_level_1']?.['long_name'] ||\n components?.['sublocality']?.['long_name'],\n country: components['country']?.['short_name'],\n };\n}\n\nexport default function useGoogleMaps(apiKey: string) {\n let autocompleteService: google.maps.places.AutocompleteService | null = null;\n let placesService: google.maps.places.PlacesService | null = null;\n\n function getPlacePredictions(query: string): Promise<Array<AddressOption>> {\n return new Promise((resolve, reject) => {\n if (!autocompleteService) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({ isGoogleMapsError: false, message: 'Autocomplete service not initialized' });\n return;\n }\n\n autocompleteService.getPlacePredictions({ input: query }, (predictions, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({\n isGoogleMapsError: true,\n message: `Failed to get query predictions with status ${status}`,\n status,\n });\n reject(status);\n return;\n }\n\n const options = (predictions || []).map(({ place_id, description }) => ({\n id: place_id,\n name: description,\n }));\n\n resolve(options);\n });\n });\n }\n\n function getPlaceDetails(placeId: string): Promise<Address> {\n return new Promise((resolve, reject) => {\n if (!placesService) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({ isGoogleMapsError: false, message: 'Places service not initialized' });\n return;\n }\n\n placesService.getDetails({ placeId, fields: ['address_components', 'geometry'] }, (placeResult, status) => {\n if (status !== google.maps.places.PlacesServiceStatus.OK) {\n // eslint-disable-next-line prefer-promise-reject-errors\n reject({\n isGoogleMapsError: true,\n message: `Failed to get place details with status ${status}`,\n status,\n });\n return;\n }\n\n const partialAddress = parseAddressComponents(placeResult?.address_components || []);\n\n const address: Address = {\n ...partialAddress,\n lat: placeResult?.geometry?.location?.lat(),\n long: placeResult?.geometry?.location?.lng(),\n place_id: placeId,\n };\n\n resolve(address);\n });\n });\n }\n\n onMounted(() => {\n new Loader({\n apiKey,\n version: 'weekly',\n libraries: ['places'],\n })\n .importLibrary('places')\n .then((placesLib) => {\n autocompleteService = new placesLib.AutocompleteService();\n placesService = new placesLib.PlacesService(document.createElement('div'));\n });\n });\n\n return { getPlaceDetails, getPlacePredictions };\n}\n\nexport type { Address, AddressOption };\n"],"names":["__awaiter","thisArg","_arguments","P","generator","adopt","value","resolve","reject","fulfilled","step","e","rejected","result","getDefaultExportFromCjs","x","fastDeepEqual","equal","a","b","length","i","keys","key","isEqual","DEFAULT_ID","LoaderStatus","Loader","apiKey","authReferrerPolicy","channel","client","id","language","libraries","mapIds","nonce","region","retries","url","version","script","err","name","fn","_a","_b","params","g","h","k","p","c","l","q","m","d","r","u","f","n","t","libraryPromises","library","error","event","delay","cb","parseAddressComponents","addressComponents","components","keyBy","_c","_d","_e","_f","_g","_h","_i","_j","_k","useGoogleMaps","autocompleteService","placesService","getPlacePredictions","query","predictions","status","options","place_id","description","getPlaceDetails","placeId","placeResult","address","onMounted","placesLib"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/useMediaQuery.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { ComputedRef } from 'vue';
|
|
2
2
|
import { MaybeRefOrGetter } from 'vue';
|
|
3
|
+
import { Ref } from 'vue';
|
|
4
|
+
|
|
5
|
+
export declare interface QueryCacheItem {
|
|
6
|
+
hasMatches: Ref<boolean>;
|
|
7
|
+
mediaQueryList: MediaQueryList;
|
|
8
|
+
}
|
|
3
9
|
|
|
4
10
|
/**
|
|
5
11
|
* Given a media query, this composable returns a reactive boolean indicating if the current window dimensions match the media query.
|
package/dist/useMediaQuery.js
CHANGED
|
@@ -1,27 +1,31 @@
|
|
|
1
1
|
import { toValue as t, ref as h, watch as d, onScopeDispose as m, computed as u } from "vue";
|
|
2
|
-
const
|
|
2
|
+
const s = /* @__PURE__ */ new Map();
|
|
3
3
|
function f(e) {
|
|
4
|
-
|
|
4
|
+
s.has(t(e)) || s.set(t(e), {
|
|
5
5
|
hasMatches: h(!1),
|
|
6
6
|
mediaQueryList: window.matchMedia(t(e))
|
|
7
7
|
});
|
|
8
|
-
const a =
|
|
9
|
-
function
|
|
10
|
-
a.hasMatches.value =
|
|
8
|
+
const a = s.get(t(e));
|
|
9
|
+
function n(i) {
|
|
10
|
+
a.hasMatches.value = i.matches;
|
|
11
11
|
}
|
|
12
|
-
function
|
|
13
|
-
|
|
12
|
+
function c() {
|
|
13
|
+
var i;
|
|
14
|
+
typeof ((i = a.mediaQueryList) == null ? void 0 : i.removeEventListener) == "function" && a.mediaQueryList.removeEventListener("change", n);
|
|
14
15
|
}
|
|
15
|
-
const
|
|
16
|
+
const o = d(
|
|
16
17
|
() => t(e),
|
|
17
18
|
() => {
|
|
18
|
-
|
|
19
|
+
c(), a.mediaQueryList = window.matchMedia(t(e)), a.mediaQueryList.addEventListener("change", n), a.hasMatches.value = a.mediaQueryList.matches;
|
|
19
20
|
},
|
|
20
21
|
{ immediate: !0 }
|
|
21
22
|
);
|
|
22
23
|
return m(() => {
|
|
23
|
-
|
|
24
|
-
}), u(() =>
|
|
24
|
+
o(), c(), s.delete(t(e));
|
|
25
|
+
}), u(() => {
|
|
26
|
+
var i;
|
|
27
|
+
return !!((i = s.get(t(e))) != null && i.hasMatches.value);
|
|
28
|
+
});
|
|
25
29
|
}
|
|
26
30
|
export {
|
|
27
31
|
f as default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMediaQuery.js","sources":["../src/composables/useMediaQuery/useMediaQuery.ts"],"sourcesContent":["import { computed, MaybeRefOrGetter, onScopeDispose, Ref, ref, toValue, watch } from 'vue';\n\nexport interface QueryCacheItem {\n hasMatches: Ref<boolean>;\n mediaQueryList: MediaQueryList;\n}\n\nconst queryCache = new Map<string, QueryCacheItem>();\n\n/**\n * Given a media query, this composable returns a reactive boolean indicating if the current window dimensions match the media query.\n */\nexport default function useMediaQuery(query: MaybeRefOrGetter<string>) {\n if (!queryCache.has(toValue(query))) {\n queryCache.set(toValue(query), {\n hasMatches: ref(false),\n mediaQueryList: window.matchMedia(toValue(query)),\n });\n }\n\n const queryCacheItem = queryCache.get(toValue(query)) as QueryCacheItem;\n\n function onMediaChange(event: MediaQueryListEvent) {\n queryCacheItem.hasMatches.value = event.matches;\n }\n\n function cleanup() {\n if (typeof queryCacheItem.mediaQueryList?.removeEventListener === 'function') {\n queryCacheItem.mediaQueryList.removeEventListener('change', onMediaChange);\n }\n }\n\n const stopWatch = watch(\n () => toValue(query),\n () => {\n cleanup();\n\n queryCacheItem.mediaQueryList = window.matchMedia(toValue(query));\n queryCacheItem.mediaQueryList.addEventListener('change', onMediaChange);\n queryCacheItem.hasMatches.value = queryCacheItem.mediaQueryList.matches;\n },\n { immediate: true },\n );\n\n onScopeDispose(() => {\n stopWatch();\n cleanup();\n queryCache.delete(toValue(query));\n });\n\n return computed(() => !!queryCache.get(toValue(query))?.hasMatches.value);\n}\n"],"names":["queryCache","useMediaQuery","query","toValue","ref","queryCacheItem","onMediaChange","event","cleanup","stopWatch","watch","onScopeDispose","computed"],"mappings":";AAOA,MAAMA,wBAAiB,IAAA;AAKvB,SAAwBC,EAAcC,GAAiC;AACrE,EAAKF,EAAW,IAAIG,EAAQD,CAAK,CAAC,KAChCF,EAAW,IAAIG,EAAQD,CAAK,GAAG;AAAA,IAC7B,YAAYE,EAAI,EAAK;AAAA,IACrB,gBAAgB,OAAO,WAAWD,EAAQD,CAAK,CAAC;AAAA,EAAA,CACjD;AAGH,QAAMG,IAAiBL,EAAW,IAAIG,EAAQD,CAAK,CAAC;AAEpD,WAASI,EAAcC,GAA4B;AACjD,IAAAF,EAAe,WAAW,QAAQE,EAAM;AAAA,EAC1C;AAEA,WAASC,IAAU
|
|
1
|
+
{"version":3,"file":"useMediaQuery.js","sources":["../src/composables/useMediaQuery/useMediaQuery.ts"],"sourcesContent":["import { computed, MaybeRefOrGetter, onScopeDispose, Ref, ref, toValue, watch } from 'vue';\n\nexport interface QueryCacheItem {\n hasMatches: Ref<boolean>;\n mediaQueryList: MediaQueryList;\n}\n\nconst queryCache = new Map<string, QueryCacheItem>();\n\n/**\n * Given a media query, this composable returns a reactive boolean indicating if the current window dimensions match the media query.\n */\nexport default function useMediaQuery(query: MaybeRefOrGetter<string>) {\n if (!queryCache.has(toValue(query))) {\n queryCache.set(toValue(query), {\n hasMatches: ref(false),\n mediaQueryList: window.matchMedia(toValue(query)),\n });\n }\n\n const queryCacheItem = queryCache.get(toValue(query)) as QueryCacheItem;\n\n function onMediaChange(event: MediaQueryListEvent) {\n queryCacheItem.hasMatches.value = event.matches;\n }\n\n function cleanup() {\n if (typeof queryCacheItem.mediaQueryList?.removeEventListener === 'function') {\n queryCacheItem.mediaQueryList.removeEventListener('change', onMediaChange);\n }\n }\n\n const stopWatch = watch(\n () => toValue(query),\n () => {\n cleanup();\n\n queryCacheItem.mediaQueryList = window.matchMedia(toValue(query));\n queryCacheItem.mediaQueryList.addEventListener('change', onMediaChange);\n queryCacheItem.hasMatches.value = queryCacheItem.mediaQueryList.matches;\n },\n { immediate: true },\n );\n\n onScopeDispose(() => {\n stopWatch();\n cleanup();\n queryCache.delete(toValue(query));\n });\n\n return computed(() => !!queryCache.get(toValue(query))?.hasMatches.value);\n}\n"],"names":["queryCache","useMediaQuery","query","toValue","ref","queryCacheItem","onMediaChange","event","cleanup","_a","stopWatch","watch","onScopeDispose","computed"],"mappings":";AAOA,MAAMA,wBAAiB,IAAA;AAKvB,SAAwBC,EAAcC,GAAiC;AACrE,EAAKF,EAAW,IAAIG,EAAQD,CAAK,CAAC,KAChCF,EAAW,IAAIG,EAAQD,CAAK,GAAG;AAAA,IAC7B,YAAYE,EAAI,EAAK;AAAA,IACrB,gBAAgB,OAAO,WAAWD,EAAQD,CAAK,CAAC;AAAA,EAAA,CACjD;AAGH,QAAMG,IAAiBL,EAAW,IAAIG,EAAQD,CAAK,CAAC;AAEpD,WAASI,EAAcC,GAA4B;AACjD,IAAAF,EAAe,WAAW,QAAQE,EAAM;AAAA,EAC1C;AAEA,WAASC,IAAU;;AACjB,IAAI,SAAOC,IAAAJ,EAAe,mBAAf,gBAAAI,EAA+B,wBAAwB,cAChEJ,EAAe,eAAe,oBAAoB,UAAUC,CAAa;AAAA,EAE7E;AAEA,QAAMI,IAAYC;AAAA,IAChB,MAAMR,EAAQD,CAAK;AAAA,IACnB,MAAM;AACJ,MAAAM,EAAA,GAEAH,EAAe,iBAAiB,OAAO,WAAWF,EAAQD,CAAK,CAAC,GAChEG,EAAe,eAAe,iBAAiB,UAAUC,CAAa,GACtED,EAAe,WAAW,QAAQA,EAAe,eAAe;AAAA,IAClE;AAAA,IACA,EAAE,WAAW,GAAA;AAAA,EAAK;AAGpB,SAAAO,EAAe,MAAM;AACnB,IAAAF,EAAA,GACAF,EAAA,GACAR,EAAW,OAAOG,EAAQD,CAAK,CAAC;AAAA,EAClC,CAAC,GAEMW,EAAS;;AAAM,YAAC,GAACJ,IAAAT,EAAW,IAAIG,EAAQD,CAAK,CAAC,MAA7B,QAAAO,EAAgC,WAAW;AAAA,GAAK;AAC1E;"}
|
package/dist/useModals.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ declare interface CloseArgs {
|
|
|
5
5
|
name?: string;
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
-
declare interface Modal<TAttributes = Record<string, unknown>> {
|
|
8
|
+
export declare interface Modal<TAttributes = Record<string, unknown>> {
|
|
9
9
|
/**
|
|
10
10
|
* Import the modal that you want to use in your component,
|
|
11
11
|
* then pass that to the composable
|
package/dist/usePlaidLink.js
CHANGED
|
@@ -1,35 +1,42 @@
|
|
|
1
|
-
import { ref as
|
|
2
|
-
import
|
|
3
|
-
const
|
|
4
|
-
function
|
|
5
|
-
const { isLoaded:
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
if (
|
|
1
|
+
import { ref as l, watchSyncEffect as c, toValue as f, computed as s, onUnmounted as v } from "vue";
|
|
2
|
+
import p from "./useScriptTag.js";
|
|
3
|
+
const m = "https://cdn.plaid.com/link/v2/stable/link-initialize.js";
|
|
4
|
+
function P(u) {
|
|
5
|
+
const { isLoaded: i, error: r } = p(m), a = l(null), t = l(!1);
|
|
6
|
+
c(() => {
|
|
7
|
+
const e = f(u);
|
|
8
|
+
if (i.value && !(!e.token && !e.receivedRedirectUri)) {
|
|
9
9
|
if (!window.Plaid)
|
|
10
10
|
throw new Error("Error loading Plaid SDK");
|
|
11
|
-
n(),
|
|
12
|
-
...
|
|
11
|
+
n(), a.value = window.Plaid.create({
|
|
12
|
+
...e,
|
|
13
13
|
onLoad: () => {
|
|
14
|
-
o
|
|
14
|
+
var o;
|
|
15
|
+
t.value = !0, (o = e.onLoad) == null || o.call(e);
|
|
15
16
|
}
|
|
16
17
|
});
|
|
17
18
|
}
|
|
18
19
|
});
|
|
19
|
-
const
|
|
20
|
-
() => !
|
|
20
|
+
const d = s(
|
|
21
|
+
() => !r.value && a.value !== null && (i.value || t.value)
|
|
21
22
|
);
|
|
22
23
|
function n() {
|
|
23
|
-
|
|
24
|
+
a.value && (a.value.exit({ force: !0 }), a.value.destroy(), t.value = !1);
|
|
24
25
|
}
|
|
25
|
-
return
|
|
26
|
-
ready:
|
|
27
|
-
error:
|
|
28
|
-
open: () =>
|
|
29
|
-
|
|
26
|
+
return v(n), {
|
|
27
|
+
ready: d,
|
|
28
|
+
error: r,
|
|
29
|
+
open: () => {
|
|
30
|
+
var e;
|
|
31
|
+
return (e = a.value) == null ? void 0 : e.open();
|
|
32
|
+
},
|
|
33
|
+
exit: (e) => {
|
|
34
|
+
var o;
|
|
35
|
+
return (o = a.value) == null ? void 0 : o.exit(e);
|
|
36
|
+
}
|
|
30
37
|
};
|
|
31
38
|
}
|
|
32
39
|
export {
|
|
33
|
-
|
|
40
|
+
P as default
|
|
34
41
|
};
|
|
35
42
|
//# sourceMappingURL=usePlaidLink.js.map
|
package/dist/usePlaidLink.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePlaidLink.js","sources":["../src/composables/usePlaidLink/usePlaidLink.ts"],"sourcesContent":["import { computed, MaybeRef, onUnmounted, ref, toValue, watchSyncEffect } from 'vue';\n\nimport { Plaid } from '../../../types/plaid';\nimport useScriptTag from '../useScriptTag/useScriptTag';\n\nconst PLAID_SDK_URL = 'https://cdn.plaid.com/link/v2/stable/link-initialize.js';\n\nexport default function usePlaidLink(options: MaybeRef<Plaid.CreateConfig>) {\n const { isLoaded: isPlaidScriptLoaded, error } = useScriptTag(PLAID_SDK_URL);\n\n const plaid = ref<Plaid.LinkHandler | null>(null);\n const iframeLoaded = ref(false);\n\n // We want to trigger this as soon as options ref changes\n watchSyncEffect(() => {\n const optionsVal = toValue(options);\n\n if (!isPlaidScriptLoaded.value) {\n return;\n }\n\n if (!optionsVal.token && !optionsVal.receivedRedirectUri) {\n return;\n }\n\n if (!window.Plaid) {\n throw new Error('Error loading Plaid SDK');\n }\n\n // destroy & exit existing instances so we don't\n // have multiple Plaid link modals at the same time\n teardown();\n\n plaid.value = window.Plaid.create({\n ...optionsVal,\n onLoad: () => {\n iframeLoaded.value = true;\n optionsVal.onLoad?.();\n },\n });\n });\n\n const ready = computed(\n () => !error.value && plaid.value !== null && (isPlaidScriptLoaded.value || iframeLoaded.value),\n );\n\n function teardown() {\n if (plaid.value) {\n plaid.value.exit({ force: true });\n plaid.value.destroy();\n\n iframeLoaded.value = false;\n }\n }\n\n onUnmounted(teardown);\n\n return {\n ready,\n error,\n open: () => plaid.value?.open(),\n exit: (options?: Plaid.ExitOptions) => plaid.value?.exit(options),\n };\n}\n"],"names":["PLAID_SDK_URL","usePlaidLink","options","isPlaidScriptLoaded","error","useScriptTag","plaid","ref","iframeLoaded","watchSyncEffect","optionsVal","toValue","teardown","ready","computed","onUnmounted"],"mappings":";;AAKA,MAAMA,IAAgB;AAEtB,SAAwBC,EAAaC,GAAuC;AAC1E,QAAM,EAAE,UAAUC,GAAqB,OAAAC,EAAA,IAAUC,EAAaL,CAAa,GAErEM,IAAQC,EAA8B,IAAI,GAC1CC,IAAeD,EAAI,EAAK;AAG9B,EAAAE,EAAgB,MAAM;AACpB,UAAMC,IAAaC,EAAQT,CAAO;AAElC,QAAKC,EAAoB,SAIrB,GAACO,EAAW,SAAS,CAACA,EAAW,sBAIrC;AAAA,UAAI,CAAC,OAAO;AACV,cAAM,IAAI,MAAM,yBAAyB;AAK3C,MAAAE,EAAA,GAEAN,EAAM,QAAQ,OAAO,MAAM,OAAO;AAAA,QAChC,GAAGI;AAAA,QACH,QAAQ,MAAM
|
|
1
|
+
{"version":3,"file":"usePlaidLink.js","sources":["../src/composables/usePlaidLink/usePlaidLink.ts"],"sourcesContent":["import { computed, MaybeRef, onUnmounted, ref, toValue, watchSyncEffect } from 'vue';\n\nimport { Plaid } from '../../../types/plaid';\nimport useScriptTag from '../useScriptTag/useScriptTag';\n\nconst PLAID_SDK_URL = 'https://cdn.plaid.com/link/v2/stable/link-initialize.js';\n\nexport default function usePlaidLink(options: MaybeRef<Plaid.CreateConfig>) {\n const { isLoaded: isPlaidScriptLoaded, error } = useScriptTag(PLAID_SDK_URL);\n\n const plaid = ref<Plaid.LinkHandler | null>(null);\n const iframeLoaded = ref(false);\n\n // We want to trigger this as soon as options ref changes\n watchSyncEffect(() => {\n const optionsVal = toValue(options);\n\n if (!isPlaidScriptLoaded.value) {\n return;\n }\n\n if (!optionsVal.token && !optionsVal.receivedRedirectUri) {\n return;\n }\n\n if (!window.Plaid) {\n throw new Error('Error loading Plaid SDK');\n }\n\n // destroy & exit existing instances so we don't\n // have multiple Plaid link modals at the same time\n teardown();\n\n plaid.value = window.Plaid.create({\n ...optionsVal,\n onLoad: () => {\n iframeLoaded.value = true;\n optionsVal.onLoad?.();\n },\n });\n });\n\n const ready = computed(\n () => !error.value && plaid.value !== null && (isPlaidScriptLoaded.value || iframeLoaded.value),\n );\n\n function teardown() {\n if (plaid.value) {\n plaid.value.exit({ force: true });\n plaid.value.destroy();\n\n iframeLoaded.value = false;\n }\n }\n\n onUnmounted(teardown);\n\n return {\n ready,\n error,\n open: () => plaid.value?.open(),\n exit: (options?: Plaid.ExitOptions) => plaid.value?.exit(options),\n };\n}\n"],"names":["PLAID_SDK_URL","usePlaidLink","options","isPlaidScriptLoaded","error","useScriptTag","plaid","ref","iframeLoaded","watchSyncEffect","optionsVal","toValue","teardown","_a","ready","computed","onUnmounted"],"mappings":";;AAKA,MAAMA,IAAgB;AAEtB,SAAwBC,EAAaC,GAAuC;AAC1E,QAAM,EAAE,UAAUC,GAAqB,OAAAC,EAAA,IAAUC,EAAaL,CAAa,GAErEM,IAAQC,EAA8B,IAAI,GAC1CC,IAAeD,EAAI,EAAK;AAG9B,EAAAE,EAAgB,MAAM;AACpB,UAAMC,IAAaC,EAAQT,CAAO;AAElC,QAAKC,EAAoB,SAIrB,GAACO,EAAW,SAAS,CAACA,EAAW,sBAIrC;AAAA,UAAI,CAAC,OAAO;AACV,cAAM,IAAI,MAAM,yBAAyB;AAK3C,MAAAE,EAAA,GAEAN,EAAM,QAAQ,OAAO,MAAM,OAAO;AAAA,QAChC,GAAGI;AAAA,QACH,QAAQ,MAAM;;AACZ,UAAAF,EAAa,QAAQ,KACrBK,IAAAH,EAAW,WAAX,QAAAG,EAAA,KAAAH;AAAA,QACF;AAAA,MAAA,CACD;AAAA;AAAA,EACH,CAAC;AAED,QAAMI,IAAQC;AAAA,IACZ,MAAM,CAACX,EAAM,SAASE,EAAM,UAAU,SAASH,EAAoB,SAASK,EAAa;AAAA,EAAA;AAG3F,WAASI,IAAW;AAClB,IAAIN,EAAM,UACRA,EAAM,MAAM,KAAK,EAAE,OAAO,IAAM,GAChCA,EAAM,MAAM,QAAA,GAEZE,EAAa,QAAQ;AAAA,EAEzB;AAEA,SAAAQ,EAAYJ,CAAQ,GAEb;AAAA,IACL,OAAAE;AAAA,IACA,OAAAV;AAAA,IACA,MAAM,MAAA;;AAAM,cAAAS,IAAAP,EAAM,UAAN,gBAAAO,EAAa;AAAA;AAAA,IACzB,MAAM,CAACX,MAAAA;;AAAgC,cAAAW,IAAAP,EAAM,UAAN,gBAAAO,EAAa,KAAKX;AAAAA;AAAAA,EAAO;AAEpE;"}
|
package/dist/useSearch.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import f from "lodash-es/get";
|
|
2
|
-
import { computed as
|
|
3
|
-
import { i as
|
|
4
|
-
import { normalizeText as
|
|
5
|
-
function S({ items: t, fieldNames:
|
|
6
|
-
const
|
|
2
|
+
import { computed as l } from "vue";
|
|
3
|
+
import { i as s, s as h } from "./searchFuzzy-B3TsUO-V.js";
|
|
4
|
+
import { normalizeText as m } from "./utils/helpers.js";
|
|
5
|
+
function S({ items: t, fieldNames: u, trackBy: o = "id" }) {
|
|
6
|
+
const c = l(() => {
|
|
7
7
|
const r = {};
|
|
8
|
-
return !
|
|
9
|
-
const n = String(o
|
|
10
|
-
r[n] =
|
|
8
|
+
return !u || !u.length || t.value.forEach((e) => {
|
|
9
|
+
const n = String(e[o]);
|
|
10
|
+
r[n] = u.map((a) => m(f(e, a.split(".")))).filter(Boolean).join(" ");
|
|
11
11
|
}), r;
|
|
12
12
|
});
|
|
13
|
-
function
|
|
14
|
-
return
|
|
15
|
-
const
|
|
16
|
-
return
|
|
13
|
+
function i(r, e) {
|
|
14
|
+
return e != null && e.fuzzy && s(t.value) ? h(r, t.value, { fieldNames: u }) : t.value.filter((n) => {
|
|
15
|
+
const a = String(n[o]);
|
|
16
|
+
return c.value[a].includes(r.trim().toLowerCase());
|
|
17
17
|
});
|
|
18
18
|
}
|
|
19
19
|
return {
|
|
20
|
-
searchFor:
|
|
20
|
+
searchFor: i
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
export {
|
package/dist/useSearch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSearch.js","sources":["../src/composables/useSearch/useSearch.ts"],"sourcesContent":["import get from 'lodash-es/get';\nimport { computed } from 'vue';\n\nimport { isListOfObjects } from '../../../types/utils';\nimport { normalizeText } from '../../utils/helpers';\nimport searchFuzzy from '../../utils/searchFuzzy';\nimport { SearchMap, UseSearchArgs } from './useSearch.types';\n\nexport default function useSearch<Item = unknown>({ items, fieldNames, trackBy = 'id' }: UseSearchArgs<Item>) {\n const searchMap = computed<SearchMap>(() => {\n const newSearchMap = {};\n\n if (!fieldNames || !fieldNames.length) {\n return newSearchMap;\n }\n\n items.value.forEach((item) => {\n const itemKey = String(item[trackBy]);\n\n newSearchMap[itemKey] = fieldNames\n .map((fieldName) => {\n return normalizeText(get(item, fieldName.split('.'))); // get the field's value\n })\n .filter(Boolean)\n .join(' ');\n });\n\n return newSearchMap;\n });\n\n /**\n * Filter `items` by the `fieldNames`'s values.\n * @param options.fuzzy - will use fuzzy search if true\n */\n function searchFor(\n searchTerm: string,\n options?: {\n fuzzy?: boolean;\n },\n ): Item[] {\n if (options?.fuzzy && isListOfObjects(items.value)) {\n return searchFuzzy<Item>(searchTerm, items.value, { fieldNames });\n }\n\n return items.value.filter((item) => {\n const itemKey = String(item[trackBy]);\n\n return searchMap.value[itemKey].includes(searchTerm.trim().toLowerCase());\n });\n }\n\n return {\n searchFor,\n };\n}\n\nexport * from './useSearch.types';\n"],"names":["useSearch","items","fieldNames","trackBy","searchMap","computed","newSearchMap","item","itemKey","fieldName","normalizeText","get","searchFor","searchTerm","options","isListOfObjects","searchFuzzy"],"mappings":";;;;AAQA,SAAwBA,EAA0B,EAAE,OAAAC,GAAO,YAAAC,GAAY,SAAAC,IAAU,QAA6B;AAC5G,QAAMC,IAAYC,EAAoB,MAAM;AAC1C,UAAMC,IAAe,CAAA;AAErB,WAAI,CAACJ,KAAc,CAACA,EAAW,UAI/BD,EAAM,MAAM,QAAQ,CAACM,MAAS;AAC5B,YAAMC,IAAU,OAAOD,EAAKJ,CAAO,CAAC;AAEpC,MAAAG,EAAaE,CAAO,IAAIN,EACrB,IAAI,CAACO,MACGC,EAAcC,EAAIJ,GAAME,EAAU,MAAM,GAAG,CAAC,CAAC,CACrD,EACA,OAAO,OAAO,EACd,KAAK,GAAG;AAAA,IACb,CAAC,GAEMH;AAAA,EACT,CAAC;AAMD,WAASM,EACPC,GACAC,GAGQ;AACR,WAAIA,
|
|
1
|
+
{"version":3,"file":"useSearch.js","sources":["../src/composables/useSearch/useSearch.ts"],"sourcesContent":["import get from 'lodash-es/get';\nimport { computed } from 'vue';\n\nimport { isListOfObjects } from '../../../types/utils';\nimport { normalizeText } from '../../utils/helpers';\nimport searchFuzzy from '../../utils/searchFuzzy';\nimport { SearchMap, UseSearchArgs } from './useSearch.types';\n\nexport default function useSearch<Item = unknown>({ items, fieldNames, trackBy = 'id' }: UseSearchArgs<Item>) {\n const searchMap = computed<SearchMap>(() => {\n const newSearchMap = {};\n\n if (!fieldNames || !fieldNames.length) {\n return newSearchMap;\n }\n\n items.value.forEach((item) => {\n const itemKey = String(item[trackBy]);\n\n newSearchMap[itemKey] = fieldNames\n .map((fieldName) => {\n return normalizeText(get(item, fieldName.split('.'))); // get the field's value\n })\n .filter(Boolean)\n .join(' ');\n });\n\n return newSearchMap;\n });\n\n /**\n * Filter `items` by the `fieldNames`'s values.\n * @param options.fuzzy - will use fuzzy search if true\n */\n function searchFor(\n searchTerm: string,\n options?: {\n fuzzy?: boolean;\n },\n ): Item[] {\n if (options?.fuzzy && isListOfObjects(items.value)) {\n return searchFuzzy<Item>(searchTerm, items.value, { fieldNames });\n }\n\n return items.value.filter((item) => {\n const itemKey = String(item[trackBy]);\n\n return searchMap.value[itemKey].includes(searchTerm.trim().toLowerCase());\n });\n }\n\n return {\n searchFor,\n };\n}\n\nexport * from './useSearch.types';\n"],"names":["useSearch","items","fieldNames","trackBy","searchMap","computed","newSearchMap","item","itemKey","fieldName","normalizeText","get","searchFor","searchTerm","options","isListOfObjects","searchFuzzy"],"mappings":";;;;AAQA,SAAwBA,EAA0B,EAAE,OAAAC,GAAO,YAAAC,GAAY,SAAAC,IAAU,QAA6B;AAC5G,QAAMC,IAAYC,EAAoB,MAAM;AAC1C,UAAMC,IAAe,CAAA;AAErB,WAAI,CAACJ,KAAc,CAACA,EAAW,UAI/BD,EAAM,MAAM,QAAQ,CAACM,MAAS;AAC5B,YAAMC,IAAU,OAAOD,EAAKJ,CAAO,CAAC;AAEpC,MAAAG,EAAaE,CAAO,IAAIN,EACrB,IAAI,CAACO,MACGC,EAAcC,EAAIJ,GAAME,EAAU,MAAM,GAAG,CAAC,CAAC,CACrD,EACA,OAAO,OAAO,EACd,KAAK,GAAG;AAAA,IACb,CAAC,GAEMH;AAAA,EACT,CAAC;AAMD,WAASM,EACPC,GACAC,GAGQ;AACR,WAAIA,KAAA,QAAAA,EAAS,SAASC,EAAgBd,EAAM,KAAK,IACxCe,EAAkBH,GAAYZ,EAAM,OAAO,EAAE,YAAAC,GAAY,IAG3DD,EAAM,MAAM,OAAO,CAACM,MAAS;AAClC,YAAMC,IAAU,OAAOD,EAAKJ,CAAO,CAAC;AAEpC,aAAOC,EAAU,MAAMI,CAAO,EAAE,SAASK,EAAW,OAAO,aAAa;AAAA,IAC1E,CAAC;AAAA,EACH;AAEA,SAAO;AAAA,IACL,WAAAD;AAAA,EAAA;AAEJ;"}
|
package/dist/useSelection.js
CHANGED
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
import { computed as
|
|
2
|
-
function
|
|
3
|
-
items:
|
|
4
|
-
trackBy:
|
|
5
|
-
shouldDisable:
|
|
1
|
+
import { computed as f, toValue as w, ref as x } from "vue";
|
|
2
|
+
function R({
|
|
3
|
+
items: g,
|
|
4
|
+
trackBy: A = "id",
|
|
5
|
+
shouldDisable: t,
|
|
6
6
|
shouldPreselect: o
|
|
7
7
|
}) {
|
|
8
|
-
const
|
|
9
|
-
function
|
|
10
|
-
return String(e[
|
|
8
|
+
const v = f(() => w(g));
|
|
9
|
+
function r(e) {
|
|
10
|
+
return String(e[A]);
|
|
11
11
|
}
|
|
12
|
-
const
|
|
13
|
-
() =>
|
|
14
|
-
(e,
|
|
12
|
+
const c = f(
|
|
13
|
+
() => v.value.reduce(
|
|
14
|
+
(e, u) => (e[r(u)] = u, e),
|
|
15
15
|
{}
|
|
16
16
|
)
|
|
17
|
-
),
|
|
18
|
-
function
|
|
19
|
-
|
|
17
|
+
), n = x(/* @__PURE__ */ new Set());
|
|
18
|
+
function m(e) {
|
|
19
|
+
t != null && t(c.value[r(e)]) || n.value.add(r(e));
|
|
20
20
|
}
|
|
21
|
-
function
|
|
22
|
-
|
|
21
|
+
function E(e) {
|
|
22
|
+
t != null && t(c.value[r(e)]) || n.value.delete(r(e));
|
|
23
23
|
}
|
|
24
|
-
function
|
|
25
|
-
if (
|
|
24
|
+
function k(e) {
|
|
25
|
+
if (t != null && t(c.value[r(e)]))
|
|
26
26
|
return;
|
|
27
|
-
|
|
27
|
+
n.value.has(r(e)) ? n.value.delete(r(e)) : n.value.add(r(e));
|
|
28
28
|
}
|
|
29
|
-
function
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
function l() {
|
|
30
|
+
v.value.forEach((e) => {
|
|
31
|
+
t != null && t(e) || n.value.add(r(e));
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
34
|
function a() {
|
|
35
|
-
typeof
|
|
36
|
-
|
|
37
|
-
}) :
|
|
35
|
+
typeof t == "function" ? n.value.forEach((e, u) => {
|
|
36
|
+
t(c.value[u]) || n.value.delete(u);
|
|
37
|
+
}) : n.value.clear();
|
|
38
38
|
}
|
|
39
|
-
function
|
|
40
|
-
|
|
39
|
+
function z() {
|
|
40
|
+
y.value ? a() : l();
|
|
41
41
|
}
|
|
42
42
|
function i() {
|
|
43
|
-
a(), typeof o == "function" &&
|
|
44
|
-
o(e) &&
|
|
43
|
+
a(), typeof o == "function" && v.value.forEach((e) => {
|
|
44
|
+
o(e) && n.value.add(r(e));
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
|
-
function
|
|
48
|
-
return
|
|
47
|
+
function I(e) {
|
|
48
|
+
return n.value.has(r(e));
|
|
49
49
|
}
|
|
50
|
-
function
|
|
51
|
-
return typeof
|
|
50
|
+
function K(e) {
|
|
51
|
+
return typeof t != "function" ? !1 : t(c.value[r(e)]);
|
|
52
52
|
}
|
|
53
|
-
const
|
|
54
|
-
if (typeof
|
|
55
|
-
return
|
|
56
|
-
for (const e of
|
|
57
|
-
if (!
|
|
53
|
+
const N = f(() => Array.from(n.value.keys()).map((e) => c.value[e])), S = f(() => n.value.size === v.value.length), y = f(() => {
|
|
54
|
+
if (typeof t != "function")
|
|
55
|
+
return S.value;
|
|
56
|
+
for (const e of v.value)
|
|
57
|
+
if (!t(e) && !n.value.has(r(e)))
|
|
58
58
|
return !1;
|
|
59
59
|
return !0;
|
|
60
|
-
}),
|
|
61
|
-
if (typeof
|
|
62
|
-
return
|
|
63
|
-
for (const e of
|
|
64
|
-
if (!
|
|
60
|
+
}), p = f(() => n.value.size > 0), T = f(() => {
|
|
61
|
+
if (typeof t != "function")
|
|
62
|
+
return p.value;
|
|
63
|
+
for (const e of n.value.keys())
|
|
64
|
+
if (!t(c.value[e]))
|
|
65
65
|
return !0;
|
|
66
66
|
return !1;
|
|
67
67
|
});
|
|
68
68
|
return i(), {
|
|
69
|
-
select:
|
|
70
|
-
unselect:
|
|
71
|
-
selectToggle:
|
|
72
|
-
selectAll:
|
|
69
|
+
select: m,
|
|
70
|
+
unselect: E,
|
|
71
|
+
selectToggle: k,
|
|
72
|
+
selectAll: l,
|
|
73
73
|
unselectAll: a,
|
|
74
|
-
selectToggleAll:
|
|
74
|
+
selectToggleAll: z,
|
|
75
75
|
resetSelection: i,
|
|
76
|
-
isSelected:
|
|
77
|
-
isSelectDisabled:
|
|
78
|
-
selectedItems:
|
|
79
|
-
allSelected:
|
|
80
|
-
allNonDisabledSelected:
|
|
81
|
-
someSelected:
|
|
82
|
-
someNonDisabledSelected:
|
|
76
|
+
isSelected: I,
|
|
77
|
+
isSelectDisabled: K,
|
|
78
|
+
selectedItems: N,
|
|
79
|
+
allSelected: S,
|
|
80
|
+
allNonDisabledSelected: y,
|
|
81
|
+
someSelected: p,
|
|
82
|
+
someNonDisabledSelected: T
|
|
83
83
|
};
|
|
84
84
|
}
|
|
85
85
|
export {
|
|
86
|
-
|
|
86
|
+
R as default
|
|
87
87
|
};
|
|
88
88
|
//# sourceMappingURL=useSelection.js.map
|
package/dist/useSelection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSelection.js","sources":["../src/composables/useSelection/useSelection.ts"],"sourcesContent":["import { computed, ref, toValue } from 'vue';\n\nimport { UseSelection, UseSelectionArgs } from './useSelection.types';\n\nexport default function useSelection<Item extends object>({\n items,\n trackBy = 'id',\n shouldDisable,\n shouldPreselect,\n}: UseSelectionArgs<Item>): UseSelection<Item> {\n const itemsRef = computed(() => toValue(items));\n\n function getItemKey(item: Item) {\n return String(item[trackBy]);\n }\n\n const itemsByKey = computed(() =>\n itemsRef.value.reduce(\n (map, item) => {\n map[getItemKey(item)] = item;\n\n return map;\n },\n {} as { [key: string]: Item },\n ),\n );\n\n /**\n * A set of item keys that are currently selected, regardless if they are disabled\n */\n const selectedSet = ref(new Set<string>());\n\n function select(item: Item) {\n if (shouldDisable?.(itemsByKey.value[getItemKey(item)])) {\n return;\n }\n\n selectedSet.value.add(getItemKey(item));\n }\n\n function unselect(item: Item) {\n if (shouldDisable?.(itemsByKey.value[getItemKey(item)])) {\n return;\n }\n\n selectedSet.value.delete(getItemKey(item));\n }\n\n function selectToggle(item: Item) {\n if (shouldDisable?.(itemsByKey.value[getItemKey(item)])) {\n return;\n }\n\n const isSelected = selectedSet.value.has(getItemKey(item));\n\n if (isSelected) {\n selectedSet.value.delete(getItemKey(item));\n } else {\n selectedSet.value.add(getItemKey(item));\n }\n }\n\n function selectAll() {\n itemsRef.value.forEach((item) => {\n if (!shouldDisable?.(item)) {\n selectedSet.value.add(getItemKey(item));\n }\n });\n }\n\n function unselectAll() {\n if (typeof shouldDisable === 'function') {\n selectedSet.value.forEach((_isSelected, itemKey) => {\n if (!shouldDisable(itemsByKey.value[itemKey])) {\n selectedSet.value.delete(itemKey);\n }\n });\n } else {\n selectedSet.value.clear();\n }\n }\n\n function selectToggleAll() {\n if (allNonDisabledSelected.value) {\n unselectAll();\n } else {\n selectAll();\n }\n }\n\n function resetSelection() {\n unselectAll();\n\n if (typeof shouldPreselect === 'function') {\n itemsRef.value.forEach((item) => {\n if (shouldPreselect(item)) {\n selectedSet.value.add(getItemKey(item));\n }\n });\n }\n }\n\n function isSelected(item: Item) {\n return selectedSet.value.has(getItemKey(item));\n }\n\n function isSelectDisabled(item: Item) {\n if (typeof shouldDisable !== 'function') {\n return false;\n }\n\n return shouldDisable(itemsByKey.value[getItemKey(item)]);\n }\n\n const selectedItems = computed(() => {\n return Array.from(selectedSet.value.keys()).map((itemKey) => itemsByKey.value[itemKey]);\n });\n\n const allSelected = computed(() => {\n return selectedSet.value.size === itemsRef.value.length;\n });\n\n const allNonDisabledSelected = computed(() => {\n if (typeof shouldDisable !== 'function') {\n return allSelected.value;\n }\n\n for (const item of itemsRef.value) {\n if (!shouldDisable(item) && !selectedSet.value.has(getItemKey(item))) {\n return false;\n }\n }\n\n return true;\n });\n\n const someSelected = computed(() => {\n return selectedSet.value.size > 0;\n });\n\n const someNonDisabledSelected = computed(() => {\n if (typeof shouldDisable !== 'function') {\n return someSelected.value;\n }\n\n for (const itemKey of selectedSet.value.keys()) {\n if (!shouldDisable(itemsByKey.value[itemKey])) {\n return true;\n }\n }\n\n return false;\n });\n\n resetSelection();\n\n return {\n select,\n unselect,\n selectToggle,\n selectAll,\n unselectAll,\n selectToggleAll,\n resetSelection,\n isSelected,\n isSelectDisabled,\n selectedItems,\n allSelected,\n allNonDisabledSelected,\n someSelected,\n someNonDisabledSelected,\n };\n}\n\nexport * from './useSelection.types';\n"],"names":["useSelection","items","trackBy","shouldDisable","shouldPreselect","itemsRef","computed","toValue","getItemKey","item","itemsByKey","map","selectedSet","ref","select","unselect","selectToggle","selectAll","unselectAll","_isSelected","itemKey","selectToggleAll","allNonDisabledSelected","resetSelection","isSelected","isSelectDisabled","selectedItems","allSelected","someSelected","someNonDisabledSelected"],"mappings":";AAIA,SAAwBA,EAAkC;AAAA,EACxD,OAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,eAAAC;AAAA,EACA,iBAAAC;AACF,GAA+C;AAC7C,QAAMC,IAAWC,EAAS,MAAMC,EAAQN,CAAK,CAAC;AAE9C,WAASO,EAAWC,GAAY;AAC9B,WAAO,OAAOA,EAAKP,CAAO,CAAC;AAAA,EAC7B;AAEA,QAAMQ,IAAaJ;AAAA,IAAS,MAC1BD,EAAS,MAAM;AAAA,MACb,CAACM,GAAKF,OACJE,EAAIH,EAAWC,CAAI,CAAC,IAAIA,GAEjBE;AAAA,MAET,CAAA;AAAA,IAAC;AAAA,EACH,GAMIC,IAAcC,EAAI,oBAAI,KAAa;AAEzC,WAASC,EAAOL,GAAY;AAC1B,IAAIN,
|
|
1
|
+
{"version":3,"file":"useSelection.js","sources":["../src/composables/useSelection/useSelection.ts"],"sourcesContent":["import { computed, ref, toValue } from 'vue';\n\nimport { UseSelection, UseSelectionArgs } from './useSelection.types';\n\nexport default function useSelection<Item extends object>({\n items,\n trackBy = 'id',\n shouldDisable,\n shouldPreselect,\n}: UseSelectionArgs<Item>): UseSelection<Item> {\n const itemsRef = computed(() => toValue(items));\n\n function getItemKey(item: Item) {\n return String(item[trackBy]);\n }\n\n const itemsByKey = computed(() =>\n itemsRef.value.reduce(\n (map, item) => {\n map[getItemKey(item)] = item;\n\n return map;\n },\n {} as { [key: string]: Item },\n ),\n );\n\n /**\n * A set of item keys that are currently selected, regardless if they are disabled\n */\n const selectedSet = ref(new Set<string>());\n\n function select(item: Item) {\n if (shouldDisable?.(itemsByKey.value[getItemKey(item)])) {\n return;\n }\n\n selectedSet.value.add(getItemKey(item));\n }\n\n function unselect(item: Item) {\n if (shouldDisable?.(itemsByKey.value[getItemKey(item)])) {\n return;\n }\n\n selectedSet.value.delete(getItemKey(item));\n }\n\n function selectToggle(item: Item) {\n if (shouldDisable?.(itemsByKey.value[getItemKey(item)])) {\n return;\n }\n\n const isSelected = selectedSet.value.has(getItemKey(item));\n\n if (isSelected) {\n selectedSet.value.delete(getItemKey(item));\n } else {\n selectedSet.value.add(getItemKey(item));\n }\n }\n\n function selectAll() {\n itemsRef.value.forEach((item) => {\n if (!shouldDisable?.(item)) {\n selectedSet.value.add(getItemKey(item));\n }\n });\n }\n\n function unselectAll() {\n if (typeof shouldDisable === 'function') {\n selectedSet.value.forEach((_isSelected, itemKey) => {\n if (!shouldDisable(itemsByKey.value[itemKey])) {\n selectedSet.value.delete(itemKey);\n }\n });\n } else {\n selectedSet.value.clear();\n }\n }\n\n function selectToggleAll() {\n if (allNonDisabledSelected.value) {\n unselectAll();\n } else {\n selectAll();\n }\n }\n\n function resetSelection() {\n unselectAll();\n\n if (typeof shouldPreselect === 'function') {\n itemsRef.value.forEach((item) => {\n if (shouldPreselect(item)) {\n selectedSet.value.add(getItemKey(item));\n }\n });\n }\n }\n\n function isSelected(item: Item) {\n return selectedSet.value.has(getItemKey(item));\n }\n\n function isSelectDisabled(item: Item) {\n if (typeof shouldDisable !== 'function') {\n return false;\n }\n\n return shouldDisable(itemsByKey.value[getItemKey(item)]);\n }\n\n const selectedItems = computed(() => {\n return Array.from(selectedSet.value.keys()).map((itemKey) => itemsByKey.value[itemKey]);\n });\n\n const allSelected = computed(() => {\n return selectedSet.value.size === itemsRef.value.length;\n });\n\n const allNonDisabledSelected = computed(() => {\n if (typeof shouldDisable !== 'function') {\n return allSelected.value;\n }\n\n for (const item of itemsRef.value) {\n if (!shouldDisable(item) && !selectedSet.value.has(getItemKey(item))) {\n return false;\n }\n }\n\n return true;\n });\n\n const someSelected = computed(() => {\n return selectedSet.value.size > 0;\n });\n\n const someNonDisabledSelected = computed(() => {\n if (typeof shouldDisable !== 'function') {\n return someSelected.value;\n }\n\n for (const itemKey of selectedSet.value.keys()) {\n if (!shouldDisable(itemsByKey.value[itemKey])) {\n return true;\n }\n }\n\n return false;\n });\n\n resetSelection();\n\n return {\n select,\n unselect,\n selectToggle,\n selectAll,\n unselectAll,\n selectToggleAll,\n resetSelection,\n isSelected,\n isSelectDisabled,\n selectedItems,\n allSelected,\n allNonDisabledSelected,\n someSelected,\n someNonDisabledSelected,\n };\n}\n\nexport * from './useSelection.types';\n"],"names":["useSelection","items","trackBy","shouldDisable","shouldPreselect","itemsRef","computed","toValue","getItemKey","item","itemsByKey","map","selectedSet","ref","select","unselect","selectToggle","selectAll","unselectAll","_isSelected","itemKey","selectToggleAll","allNonDisabledSelected","resetSelection","isSelected","isSelectDisabled","selectedItems","allSelected","someSelected","someNonDisabledSelected"],"mappings":"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"}
|