@ionic/vue 7.3.4-dev.11699991837.1bc64f72 → 7.3.4-dev.11700516018.128deb56

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/dist/index.js CHANGED
@@ -69,7 +69,7 @@ import { defineCustomElement as defineCustomElement$11 } from '@ionic/core/compo
69
69
  import { defineCustomElement as defineCustomElement$12 } from '@ionic/core/components/ion-toggle.js';
70
70
  import { defineCustomElement as defineCustomElement$13 } from '@ionic/core/components/ion-toolbar.js';
71
71
  import { LIFECYCLE_WILL_ENTER, LIFECYCLE_DID_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_DID_LEAVE, initialize, popoverController as popoverController$1, alertController as alertController$1, actionSheetController as actionSheetController$1, loadingController as loadingController$1, pickerController as pickerController$1, toastController as toastController$1, modalController as modalController$1 } from '@ionic/core/components';
72
- export { IonicSafeString, IonicSlides, createAnimation, createGesture, getIonPageElement, getPlatforms, getTimeGivenProgression, iosTransitionAnimation, isPlatform, mdTransitionAnimation, menuController } from '@ionic/core/components';
72
+ export { IonicSafeString, IonicSlides, createAnimation, createGesture, getPlatforms, getTimeGivenProgression, iosTransitionAnimation, isPlatform, mdTransitionAnimation, menuController } from '@ionic/core/components';
73
73
  import { defineCustomElement as defineCustomElement$14 } from '@ionic/core/components/ion-back-button.js';
74
74
  import { defineCustomElement as defineCustomElement$15 } from '@ionic/core/components/ion-router-outlet.js';
75
75
  import { routeLocationKey, useRoute, matchedRouteKey } from 'vue-router';
@@ -355,7 +355,6 @@ const IonCheckbox = /*@__PURE__*/ defineContainer('ion-checkbox', defineCustomEl
355
355
  'value',
356
356
  'labelPlacement',
357
357
  'justify',
358
- 'alignment',
359
358
  'legacy',
360
359
  'ionChange',
361
360
  'ionFocus',
@@ -651,7 +650,6 @@ const IonRadio = /*@__PURE__*/ defineContainer('ion-radio', defineCustomElement$
651
650
  'labelPlacement',
652
651
  'legacy',
653
652
  'justify',
654
- 'alignment',
655
653
  'ionStyle',
656
654
  'ionFocus',
657
655
  'ionBlur'
@@ -862,7 +860,6 @@ const IonToggle = /*@__PURE__*/ defineContainer('ion-toggle', defineCustomElemen
862
860
  'labelPlacement',
863
861
  'legacy',
864
862
  'justify',
865
- 'alignment',
866
863
  'ionChange',
867
864
  'ionFocus',
868
865
  'ionBlur',
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../dist-transpiled/vue-component-lib/utils.js","../dist-transpiled/proxies.js","../dist-transpiled/hooks/back-button.js","../dist-transpiled/hooks/keyboard.js","../dist-transpiled/utils.js","../dist-transpiled/hooks/lifecycle.js","../dist-transpiled/hooks/router.js","../dist-transpiled/ionic-vue.js","../dist-transpiled/components/IonBackButton.js","../dist-transpiled/components/IonPage.js","../dist-transpiled/components/IonRouterOutlet.js","../dist-transpiled/components/IonTabButton.js","../dist-transpiled/components/IonTabs.js","../dist-transpiled/components/IonTabBar.js","../dist-transpiled/components/IonApp.js","../dist-transpiled/framework-delegate.js","../dist-transpiled/components/IonNav.js","../dist-transpiled/components/IonIcon.js","../dist-transpiled/vue-component-lib/overlays.js","../dist-transpiled/components/Overlays.js","../dist-transpiled/controllers.js"],"sourcesContent":["// @ts-nocheck\n// It's easier and safer for Volar to disable typechecking and let the return type inference do its job.\nimport { defineComponent, getCurrentInstance, h, inject, ref } from 'vue';\nconst UPDATE_VALUE_EVENT = 'update:modelValue';\nconst MODEL_VALUE = 'modelValue';\nconst ROUTER_LINK_VALUE = 'routerLink';\nconst NAV_MANAGER = 'navManager';\nconst ROUTER_PROP_PREFIX = 'router';\nconst ARIA_PROP_PREFIX = 'aria';\n/**\n * Starting in Vue 3.1.0, all properties are\n * added as keys to the props object, even if\n * they are not being used. In order to correctly\n * account for both value props and v-model props,\n * we need to check if the key exists for Vue <3.1.0\n * and then check if it is not undefined for Vue >= 3.1.0.\n * See https://github.com/vuejs/vue-next/issues/3889\n */\nconst EMPTY_PROP = Symbol();\nconst DEFAULT_EMPTY_PROP = { default: EMPTY_PROP };\nconst getComponentClasses = (classes) => {\n return (classes === null || classes === void 0 ? void 0 : classes.split(' ')) || [];\n};\nconst getElementClasses = (ref, componentClasses, defaultClasses = []) => {\n var _a;\n return [...Array.from(((_a = ref.value) === null || _a === void 0 ? void 0 : _a.classList) || []), ...defaultClasses].filter((c, i, self) => !componentClasses.has(c) && self.indexOf(c) === i);\n};\n/**\n * Create a callback to define a Vue component wrapper around a Web Component.\n *\n * @prop name - The component tag name (i.e. `ion-button`)\n * @prop componentProps - An array of properties on the\n * component. These usually match up with the @Prop definitions\n * in each component's TSX file.\n * @prop customElement - An option custom element instance to pass\n * to customElements.define. Only set if `includeImportCustomElements: true` in your config.\n * @prop modelProp - The prop that v-model binds to (i.e. value)\n * @prop modelUpdateEvent - The event that is fired from your Web Component when the value changes (i.e. ionChange)\n * @prop externalModelUpdateEvent - The external event to fire from your Vue component when modelUpdateEvent fires. This is used for ensuring that v-model references have been\n * correctly updated when a user's event callback fires.\n */\nexport const defineContainer = (name, defineCustomElement, componentProps = [], modelProp, modelUpdateEvent, externalModelUpdateEvent) => {\n /**\n * Create a Vue component wrapper around a Web Component.\n * Note: The `props` here are not all properties on a component.\n * They refer to whatever properties are set on an instance of a component.\n */\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const Container = defineComponent((props, { attrs, slots, emit }) => {\n var _a;\n let modelPropValue = props[modelProp];\n const containerRef = ref();\n const classes = new Set(getComponentClasses(attrs.class));\n const onVnodeBeforeMount = (vnode) => {\n // Add a listener to tell Vue to update the v-model\n if (vnode.el) {\n const eventsNames = Array.isArray(modelUpdateEvent) ? modelUpdateEvent : [modelUpdateEvent];\n eventsNames.forEach((eventName) => {\n vnode.el.addEventListener(eventName.toLowerCase(), (e) => {\n modelPropValue = (e === null || e === void 0 ? void 0 : e.target)[modelProp];\n emit(UPDATE_VALUE_EVENT, modelPropValue);\n /**\n * We need to emit the change event here\n * rather than on the web component to ensure\n * that any v-model bindings have been updated.\n * Otherwise, the developer will listen on the\n * native web component, but the v-model will\n * not have been updated yet.\n */\n if (externalModelUpdateEvent) {\n emit(externalModelUpdateEvent, e);\n }\n });\n });\n }\n };\n const currentInstance = getCurrentInstance();\n const hasRouter = (_a = currentInstance === null || currentInstance === void 0 ? void 0 : currentInstance.appContext) === null || _a === void 0 ? void 0 : _a.provides[NAV_MANAGER];\n const navManager = hasRouter ? inject(NAV_MANAGER) : undefined;\n const handleRouterLink = (ev) => {\n const { routerLink } = props;\n if (routerLink === EMPTY_PROP)\n return;\n if (navManager !== undefined) {\n let navigationPayload = { event: ev };\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && key.startsWith(ROUTER_PROP_PREFIX) && value !== EMPTY_PROP) {\n navigationPayload[key] = value;\n }\n }\n navManager.navigate(navigationPayload);\n }\n else {\n console.warn('Tried to navigate, but no router was found. Make sure you have mounted Vue Router.');\n }\n };\n return () => {\n modelPropValue = props[modelProp];\n getComponentClasses(attrs.class).forEach((value) => {\n classes.add(value);\n });\n const oldClick = props.onClick;\n const handleClick = (ev) => {\n if (oldClick !== undefined) {\n oldClick(ev);\n }\n if (!ev.defaultPrevented) {\n handleRouterLink(ev);\n }\n };\n let propsToAdd = {\n ref: containerRef,\n class: getElementClasses(containerRef, classes),\n onClick: handleClick,\n onVnodeBeforeMount: modelUpdateEvent ? onVnodeBeforeMount : undefined,\n };\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if ((props.hasOwnProperty(key) && value !== EMPTY_PROP) || key.startsWith(ARIA_PROP_PREFIX)) {\n propsToAdd[key] = value;\n }\n }\n if (modelProp) {\n /**\n * If form value property was set using v-model\n * then we should use that value.\n * Otherwise, check to see if form value property\n * was set as a static value (i.e. no v-model).\n */\n if (props[MODEL_VALUE] !== EMPTY_PROP) {\n propsToAdd = Object.assign(Object.assign({}, propsToAdd), { [modelProp]: props[MODEL_VALUE] });\n }\n else if (modelPropValue !== EMPTY_PROP) {\n propsToAdd = Object.assign(Object.assign({}, propsToAdd), { [modelProp]: modelPropValue });\n }\n }\n return h(name, propsToAdd, slots.default && slots.default());\n };\n });\n if (typeof Container !== 'function') {\n Container.name = name;\n Container.props = {\n [ROUTER_LINK_VALUE]: DEFAULT_EMPTY_PROP,\n };\n componentProps.forEach((componentProp) => {\n Container.props[componentProp] = DEFAULT_EMPTY_PROP;\n });\n if (modelProp) {\n Container.props[MODEL_VALUE] = DEFAULT_EMPTY_PROP;\n Container.emits = [UPDATE_VALUE_EVENT, externalModelUpdateEvent];\n }\n }\n return Container;\n};\n//# sourceMappingURL=utils.js.map","/* eslint-disable */\n/* tslint:disable */\n/* auto-generated vue proxies */\nimport { defineContainer } from './vue-component-lib/utils';\nimport { defineCustomElement as defineIonAccordion } from '@ionic/core/components/ion-accordion.js';\nimport { defineCustomElement as defineIonAccordionGroup } from '@ionic/core/components/ion-accordion-group.js';\nimport { defineCustomElement as defineIonAvatar } from '@ionic/core/components/ion-avatar.js';\nimport { defineCustomElement as defineIonBackdrop } from '@ionic/core/components/ion-backdrop.js';\nimport { defineCustomElement as defineIonBadge } from '@ionic/core/components/ion-badge.js';\nimport { defineCustomElement as defineIonBreadcrumb } from '@ionic/core/components/ion-breadcrumb.js';\nimport { defineCustomElement as defineIonBreadcrumbs } from '@ionic/core/components/ion-breadcrumbs.js';\nimport { defineCustomElement as defineIonButton } from '@ionic/core/components/ion-button.js';\nimport { defineCustomElement as defineIonButtons } from '@ionic/core/components/ion-buttons.js';\nimport { defineCustomElement as defineIonCard } from '@ionic/core/components/ion-card.js';\nimport { defineCustomElement as defineIonCardContent } from '@ionic/core/components/ion-card-content.js';\nimport { defineCustomElement as defineIonCardHeader } from '@ionic/core/components/ion-card-header.js';\nimport { defineCustomElement as defineIonCardSubtitle } from '@ionic/core/components/ion-card-subtitle.js';\nimport { defineCustomElement as defineIonCardTitle } from '@ionic/core/components/ion-card-title.js';\nimport { defineCustomElement as defineIonCheckbox } from '@ionic/core/components/ion-checkbox.js';\nimport { defineCustomElement as defineIonChip } from '@ionic/core/components/ion-chip.js';\nimport { defineCustomElement as defineIonCol } from '@ionic/core/components/ion-col.js';\nimport { defineCustomElement as defineIonContent } from '@ionic/core/components/ion-content.js';\nimport { defineCustomElement as defineIonDatetime } from '@ionic/core/components/ion-datetime.js';\nimport { defineCustomElement as defineIonDatetimeButton } from '@ionic/core/components/ion-datetime-button.js';\nimport { defineCustomElement as defineIonFab } from '@ionic/core/components/ion-fab.js';\nimport { defineCustomElement as defineIonFabButton } from '@ionic/core/components/ion-fab-button.js';\nimport { defineCustomElement as defineIonFabList } from '@ionic/core/components/ion-fab-list.js';\nimport { defineCustomElement as defineIonFooter } from '@ionic/core/components/ion-footer.js';\nimport { defineCustomElement as defineIonGrid } from '@ionic/core/components/ion-grid.js';\nimport { defineCustomElement as defineIonHeader } from '@ionic/core/components/ion-header.js';\nimport { defineCustomElement as defineIonImg } from '@ionic/core/components/ion-img.js';\nimport { defineCustomElement as defineIonInfiniteScroll } from '@ionic/core/components/ion-infinite-scroll.js';\nimport { defineCustomElement as defineIonInfiniteScrollContent } from '@ionic/core/components/ion-infinite-scroll-content.js';\nimport { defineCustomElement as defineIonInput } from '@ionic/core/components/ion-input.js';\nimport { defineCustomElement as defineIonItem } from '@ionic/core/components/ion-item.js';\nimport { defineCustomElement as defineIonItemDivider } from '@ionic/core/components/ion-item-divider.js';\nimport { defineCustomElement as defineIonItemGroup } from '@ionic/core/components/ion-item-group.js';\nimport { defineCustomElement as defineIonItemOption } from '@ionic/core/components/ion-item-option.js';\nimport { defineCustomElement as defineIonItemOptions } from '@ionic/core/components/ion-item-options.js';\nimport { defineCustomElement as defineIonItemSliding } from '@ionic/core/components/ion-item-sliding.js';\nimport { defineCustomElement as defineIonLabel } from '@ionic/core/components/ion-label.js';\nimport { defineCustomElement as defineIonList } from '@ionic/core/components/ion-list.js';\nimport { defineCustomElement as defineIonListHeader } from '@ionic/core/components/ion-list-header.js';\nimport { defineCustomElement as defineIonMenu } from '@ionic/core/components/ion-menu.js';\nimport { defineCustomElement as defineIonMenuButton } from '@ionic/core/components/ion-menu-button.js';\nimport { defineCustomElement as defineIonMenuToggle } from '@ionic/core/components/ion-menu-toggle.js';\nimport { defineCustomElement as defineIonNav } from '@ionic/core/components/ion-nav.js';\nimport { defineCustomElement as defineIonNavLink } from '@ionic/core/components/ion-nav-link.js';\nimport { defineCustomElement as defineIonNote } from '@ionic/core/components/ion-note.js';\nimport { defineCustomElement as defineIonProgressBar } from '@ionic/core/components/ion-progress-bar.js';\nimport { defineCustomElement as defineIonRadio } from '@ionic/core/components/ion-radio.js';\nimport { defineCustomElement as defineIonRadioGroup } from '@ionic/core/components/ion-radio-group.js';\nimport { defineCustomElement as defineIonRange } from '@ionic/core/components/ion-range.js';\nimport { defineCustomElement as defineIonRefresher } from '@ionic/core/components/ion-refresher.js';\nimport { defineCustomElement as defineIonRefresherContent } from '@ionic/core/components/ion-refresher-content.js';\nimport { defineCustomElement as defineIonReorder } from '@ionic/core/components/ion-reorder.js';\nimport { defineCustomElement as defineIonReorderGroup } from '@ionic/core/components/ion-reorder-group.js';\nimport { defineCustomElement as defineIonRippleEffect } from '@ionic/core/components/ion-ripple-effect.js';\nimport { defineCustomElement as defineIonRow } from '@ionic/core/components/ion-row.js';\nimport { defineCustomElement as defineIonSearchbar } from '@ionic/core/components/ion-searchbar.js';\nimport { defineCustomElement as defineIonSegment } from '@ionic/core/components/ion-segment.js';\nimport { defineCustomElement as defineIonSegmentButton } from '@ionic/core/components/ion-segment-button.js';\nimport { defineCustomElement as defineIonSelect } from '@ionic/core/components/ion-select.js';\nimport { defineCustomElement as defineIonSelectOption } from '@ionic/core/components/ion-select-option.js';\nimport { defineCustomElement as defineIonSkeletonText } from '@ionic/core/components/ion-skeleton-text.js';\nimport { defineCustomElement as defineIonSpinner } from '@ionic/core/components/ion-spinner.js';\nimport { defineCustomElement as defineIonSplitPane } from '@ionic/core/components/ion-split-pane.js';\nimport { defineCustomElement as defineIonText } from '@ionic/core/components/ion-text.js';\nimport { defineCustomElement as defineIonTextarea } from '@ionic/core/components/ion-textarea.js';\nimport { defineCustomElement as defineIonThumbnail } from '@ionic/core/components/ion-thumbnail.js';\nimport { defineCustomElement as defineIonTitle } from '@ionic/core/components/ion-title.js';\nimport { defineCustomElement as defineIonToggle } from '@ionic/core/components/ion-toggle.js';\nimport { defineCustomElement as defineIonToolbar } from '@ionic/core/components/ion-toolbar.js';\nexport const IonAccordion = /*@__PURE__*/ defineContainer('ion-accordion', defineIonAccordion, [\n 'value',\n 'disabled',\n 'readonly',\n 'toggleIcon',\n 'toggleIconSlot'\n]);\nexport const IonAccordionGroup = /*@__PURE__*/ defineContainer('ion-accordion-group', defineIonAccordionGroup, [\n 'animated',\n 'multiple',\n 'value',\n 'disabled',\n 'readonly',\n 'expand',\n 'ionChange',\n 'ionValueChange'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonAvatar = /*@__PURE__*/ defineContainer('ion-avatar', defineIonAvatar);\nexport const IonBackdrop = /*@__PURE__*/ defineContainer('ion-backdrop', defineIonBackdrop, [\n 'visible',\n 'tappable',\n 'stopPropagation',\n 'ionBackdropTap'\n]);\nexport const IonBadge = /*@__PURE__*/ defineContainer('ion-badge', defineIonBadge, [\n 'color'\n]);\nexport const IonBreadcrumb = /*@__PURE__*/ defineContainer('ion-breadcrumb', defineIonBreadcrumb, [\n 'collapsed',\n 'last',\n 'showCollapsedIndicator',\n 'color',\n 'active',\n 'disabled',\n 'download',\n 'href',\n 'rel',\n 'separator',\n 'target',\n 'routerDirection',\n 'routerAnimation',\n 'ionFocus',\n 'ionBlur',\n 'collapsedClick'\n]);\nexport const IonBreadcrumbs = /*@__PURE__*/ defineContainer('ion-breadcrumbs', defineIonBreadcrumbs, [\n 'color',\n 'maxItems',\n 'itemsBeforeCollapse',\n 'itemsAfterCollapse',\n 'ionCollapsedClick'\n]);\nexport const IonButton = /*@__PURE__*/ defineContainer('ion-button', defineIonButton, [\n 'color',\n 'buttonType',\n 'disabled',\n 'expand',\n 'fill',\n 'routerDirection',\n 'routerAnimation',\n 'download',\n 'href',\n 'rel',\n 'shape',\n 'size',\n 'strong',\n 'target',\n 'type',\n 'form',\n 'ionFocus',\n 'ionBlur'\n]);\nexport const IonButtons = /*@__PURE__*/ defineContainer('ion-buttons', defineIonButtons, [\n 'collapse'\n]);\nexport const IonCard = /*@__PURE__*/ defineContainer('ion-card', defineIonCard, [\n 'color',\n 'button',\n 'type',\n 'disabled',\n 'download',\n 'href',\n 'rel',\n 'routerDirection',\n 'routerAnimation',\n 'target'\n]);\nexport const IonCardContent = /*@__PURE__*/ defineContainer('ion-card-content', defineIonCardContent);\nexport const IonCardHeader = /*@__PURE__*/ defineContainer('ion-card-header', defineIonCardHeader, [\n 'color',\n 'translucent'\n]);\nexport const IonCardSubtitle = /*@__PURE__*/ defineContainer('ion-card-subtitle', defineIonCardSubtitle, [\n 'color'\n]);\nexport const IonCardTitle = /*@__PURE__*/ defineContainer('ion-card-title', defineIonCardTitle, [\n 'color'\n]);\nexport const IonCheckbox = /*@__PURE__*/ defineContainer('ion-checkbox', defineIonCheckbox, [\n 'color',\n 'name',\n 'checked',\n 'indeterminate',\n 'disabled',\n 'value',\n 'labelPlacement',\n 'justify',\n 'alignment',\n 'legacy',\n 'ionChange',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle'\n], 'checked', 'v-ion-change', 'ionChange');\nexport const IonChip = /*@__PURE__*/ defineContainer('ion-chip', defineIonChip, [\n 'color',\n 'outline',\n 'disabled'\n]);\nexport const IonCol = /*@__PURE__*/ defineContainer('ion-col', defineIonCol, [\n 'offset',\n 'offsetXs',\n 'offsetSm',\n 'offsetMd',\n 'offsetLg',\n 'offsetXl',\n 'pull',\n 'pullXs',\n 'pullSm',\n 'pullMd',\n 'pullLg',\n 'pullXl',\n 'push',\n 'pushXs',\n 'pushSm',\n 'pushMd',\n 'pushLg',\n 'pushXl',\n 'size',\n 'sizeXs',\n 'sizeSm',\n 'sizeMd',\n 'sizeLg',\n 'sizeXl'\n]);\nexport const IonContent = /*@__PURE__*/ defineContainer('ion-content', defineIonContent, [\n 'color',\n 'fullscreen',\n 'forceOverscroll',\n 'scrollX',\n 'scrollY',\n 'scrollEvents',\n 'ionScrollStart',\n 'ionScroll',\n 'ionScrollEnd'\n]);\nexport const IonDatetime = /*@__PURE__*/ defineContainer('ion-datetime', defineIonDatetime, [\n 'color',\n 'name',\n 'disabled',\n 'readonly',\n 'isDateEnabled',\n 'min',\n 'max',\n 'presentation',\n 'cancelText',\n 'doneText',\n 'clearText',\n 'yearValues',\n 'monthValues',\n 'dayValues',\n 'hourValues',\n 'minuteValues',\n 'locale',\n 'firstDayOfWeek',\n 'titleSelectedDatesFormatter',\n 'multiple',\n 'highlightedDates',\n 'value',\n 'showDefaultTitle',\n 'showDefaultButtons',\n 'showClearButton',\n 'showDefaultTimeLabel',\n 'hourCycle',\n 'size',\n 'preferWheel',\n 'ionCancel',\n 'ionChange',\n 'ionValueChange',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle',\n 'ionRender'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonDatetimeButton = /*@__PURE__*/ defineContainer('ion-datetime-button', defineIonDatetimeButton, [\n 'color',\n 'disabled',\n 'datetime'\n]);\nexport const IonFab = /*@__PURE__*/ defineContainer('ion-fab', defineIonFab, [\n 'horizontal',\n 'vertical',\n 'edge',\n 'activated'\n]);\nexport const IonFabButton = /*@__PURE__*/ defineContainer('ion-fab-button', defineIonFabButton, [\n 'color',\n 'activated',\n 'disabled',\n 'download',\n 'href',\n 'rel',\n 'routerDirection',\n 'routerAnimation',\n 'target',\n 'show',\n 'translucent',\n 'type',\n 'size',\n 'closeIcon',\n 'ionFocus',\n 'ionBlur'\n]);\nexport const IonFabList = /*@__PURE__*/ defineContainer('ion-fab-list', defineIonFabList, [\n 'activated',\n 'side'\n]);\nexport const IonFooter = /*@__PURE__*/ defineContainer('ion-footer', defineIonFooter, [\n 'collapse',\n 'translucent'\n]);\nexport const IonGrid = /*@__PURE__*/ defineContainer('ion-grid', defineIonGrid, [\n 'fixed'\n]);\nexport const IonHeader = /*@__PURE__*/ defineContainer('ion-header', defineIonHeader, [\n 'collapse',\n 'translucent'\n]);\nexport const IonImg = /*@__PURE__*/ defineContainer('ion-img', defineIonImg, [\n 'alt',\n 'src',\n 'ionImgWillLoad',\n 'ionImgDidLoad',\n 'ionError'\n]);\nexport const IonInfiniteScroll = /*@__PURE__*/ defineContainer('ion-infinite-scroll', defineIonInfiniteScroll, [\n 'threshold',\n 'disabled',\n 'position',\n 'ionInfinite'\n]);\nexport const IonInfiniteScrollContent = /*@__PURE__*/ defineContainer('ion-infinite-scroll-content', defineIonInfiniteScrollContent, [\n 'loadingSpinner',\n 'loadingText'\n]);\nexport const IonInput = /*@__PURE__*/ defineContainer('ion-input', defineIonInput, [\n 'color',\n 'accept',\n 'autocapitalize',\n 'autocomplete',\n 'autocorrect',\n 'autofocus',\n 'clearInput',\n 'clearOnEdit',\n 'counter',\n 'counterFormatter',\n 'debounce',\n 'disabled',\n 'enterkeyhint',\n 'errorText',\n 'fill',\n 'inputmode',\n 'helperText',\n 'label',\n 'labelPlacement',\n 'legacy',\n 'max',\n 'maxlength',\n 'min',\n 'minlength',\n 'multiple',\n 'name',\n 'pattern',\n 'placeholder',\n 'readonly',\n 'required',\n 'shape',\n 'spellcheck',\n 'step',\n 'size',\n 'type',\n 'value',\n 'ionInput',\n 'ionChange',\n 'ionBlur',\n 'ionFocus',\n 'ionStyle'\n], 'value', 'v-ion-input', 'ionInput');\nexport const IonItem = /*@__PURE__*/ defineContainer('ion-item', defineIonItem, [\n 'color',\n 'button',\n 'detail',\n 'detailIcon',\n 'disabled',\n 'download',\n 'fill',\n 'shape',\n 'href',\n 'rel',\n 'lines',\n 'counter',\n 'routerAnimation',\n 'routerDirection',\n 'target',\n 'type',\n 'counterFormatter'\n]);\nexport const IonItemDivider = /*@__PURE__*/ defineContainer('ion-item-divider', defineIonItemDivider, [\n 'color',\n 'sticky'\n]);\nexport const IonItemGroup = /*@__PURE__*/ defineContainer('ion-item-group', defineIonItemGroup);\nexport const IonItemOption = /*@__PURE__*/ defineContainer('ion-item-option', defineIonItemOption, [\n 'color',\n 'disabled',\n 'download',\n 'expandable',\n 'href',\n 'rel',\n 'target',\n 'type'\n]);\nexport const IonItemOptions = /*@__PURE__*/ defineContainer('ion-item-options', defineIonItemOptions, [\n 'side',\n 'ionSwipe'\n]);\nexport const IonItemSliding = /*@__PURE__*/ defineContainer('ion-item-sliding', defineIonItemSliding, [\n 'disabled',\n 'ionDrag'\n]);\nexport const IonLabel = /*@__PURE__*/ defineContainer('ion-label', defineIonLabel, [\n 'color',\n 'position',\n 'ionColor',\n 'ionStyle'\n]);\nexport const IonList = /*@__PURE__*/ defineContainer('ion-list', defineIonList, [\n 'lines',\n 'inset'\n]);\nexport const IonListHeader = /*@__PURE__*/ defineContainer('ion-list-header', defineIonListHeader, [\n 'color',\n 'lines'\n]);\nexport const IonMenu = /*@__PURE__*/ defineContainer('ion-menu', defineIonMenu, [\n 'contentId',\n 'menuId',\n 'type',\n 'disabled',\n 'side',\n 'swipeGesture',\n 'maxEdgeStart',\n 'ionWillOpen',\n 'ionWillClose',\n 'ionDidOpen',\n 'ionDidClose',\n 'ionMenuChange'\n]);\nexport const IonMenuButton = /*@__PURE__*/ defineContainer('ion-menu-button', defineIonMenuButton, [\n 'color',\n 'disabled',\n 'menu',\n 'autoHide',\n 'type'\n]);\nexport const IonMenuToggle = /*@__PURE__*/ defineContainer('ion-menu-toggle', defineIonMenuToggle, [\n 'menu',\n 'autoHide'\n]);\nexport const IonNav = /*@__PURE__*/ defineContainer('ion-nav', defineIonNav, [\n 'delegate',\n 'swipeGesture',\n 'animated',\n 'animation',\n 'rootParams',\n 'root',\n 'ionNavWillLoad',\n 'ionNavWillChange',\n 'ionNavDidChange'\n]);\nexport const IonNavLink = /*@__PURE__*/ defineContainer('ion-nav-link', defineIonNavLink, [\n 'component',\n 'componentProps',\n 'routerDirection',\n 'routerAnimation'\n]);\nexport const IonNote = /*@__PURE__*/ defineContainer('ion-note', defineIonNote, [\n 'color'\n]);\nexport const IonProgressBar = /*@__PURE__*/ defineContainer('ion-progress-bar', defineIonProgressBar, [\n 'type',\n 'reversed',\n 'value',\n 'buffer',\n 'color'\n]);\nexport const IonRadio = /*@__PURE__*/ defineContainer('ion-radio', defineIonRadio, [\n 'color',\n 'name',\n 'disabled',\n 'value',\n 'labelPlacement',\n 'legacy',\n 'justify',\n 'alignment',\n 'ionStyle',\n 'ionFocus',\n 'ionBlur'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonRadioGroup = /*@__PURE__*/ defineContainer('ion-radio-group', defineIonRadioGroup, [\n 'allowEmptySelection',\n 'name',\n 'value',\n 'ionChange',\n 'ionValueChange'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonRange = /*@__PURE__*/ defineContainer('ion-range', defineIonRange, [\n 'color',\n 'debounce',\n 'name',\n 'label',\n 'dualKnobs',\n 'min',\n 'max',\n 'pin',\n 'pinFormatter',\n 'snaps',\n 'step',\n 'ticks',\n 'activeBarStart',\n 'disabled',\n 'value',\n 'labelPlacement',\n 'legacy',\n 'ionChange',\n 'ionInput',\n 'ionStyle',\n 'ionFocus',\n 'ionBlur',\n 'ionKnobMoveStart',\n 'ionKnobMoveEnd'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonRefresher = /*@__PURE__*/ defineContainer('ion-refresher', defineIonRefresher, [\n 'pullMin',\n 'pullMax',\n 'closeDuration',\n 'snapbackDuration',\n 'pullFactor',\n 'disabled',\n 'ionRefresh',\n 'ionPull',\n 'ionStart'\n]);\nexport const IonRefresherContent = /*@__PURE__*/ defineContainer('ion-refresher-content', defineIonRefresherContent, [\n 'pullingIcon',\n 'pullingText',\n 'refreshingSpinner',\n 'refreshingText'\n]);\nexport const IonReorder = /*@__PURE__*/ defineContainer('ion-reorder', defineIonReorder);\nexport const IonReorderGroup = /*@__PURE__*/ defineContainer('ion-reorder-group', defineIonReorderGroup, [\n 'disabled',\n 'ionItemReorder'\n]);\nexport const IonRippleEffect = /*@__PURE__*/ defineContainer('ion-ripple-effect', defineIonRippleEffect, [\n 'type'\n]);\nexport const IonRow = /*@__PURE__*/ defineContainer('ion-row', defineIonRow);\nexport const IonSearchbar = /*@__PURE__*/ defineContainer('ion-searchbar', defineIonSearchbar, [\n 'color',\n 'animated',\n 'autocomplete',\n 'autocorrect',\n 'cancelButtonIcon',\n 'cancelButtonText',\n 'clearIcon',\n 'debounce',\n 'disabled',\n 'inputmode',\n 'enterkeyhint',\n 'name',\n 'placeholder',\n 'searchIcon',\n 'showCancelButton',\n 'showClearButton',\n 'spellcheck',\n 'type',\n 'value',\n 'ionInput',\n 'ionChange',\n 'ionCancel',\n 'ionClear',\n 'ionBlur',\n 'ionFocus',\n 'ionStyle'\n], 'value', 'v-ion-input', 'ionInput');\nexport const IonSegment = /*@__PURE__*/ defineContainer('ion-segment', defineIonSegment, [\n 'color',\n 'disabled',\n 'scrollable',\n 'swipeGesture',\n 'value',\n 'selectOnFocus',\n 'ionChange',\n 'ionSelect',\n 'ionStyle'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonSegmentButton = /*@__PURE__*/ defineContainer('ion-segment-button', defineIonSegmentButton, [\n 'disabled',\n 'layout',\n 'type',\n 'value'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonSelect = /*@__PURE__*/ defineContainer('ion-select', defineIonSelect, [\n 'cancelText',\n 'color',\n 'compareWith',\n 'disabled',\n 'fill',\n 'interface',\n 'interfaceOptions',\n 'justify',\n 'label',\n 'labelPlacement',\n 'legacy',\n 'multiple',\n 'name',\n 'okText',\n 'placeholder',\n 'selectedText',\n 'toggleIcon',\n 'expandedIcon',\n 'shape',\n 'value',\n 'ionChange',\n 'ionCancel',\n 'ionDismiss',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonSelectOption = /*@__PURE__*/ defineContainer('ion-select-option', defineIonSelectOption, [\n 'disabled',\n 'value'\n]);\nexport const IonSkeletonText = /*@__PURE__*/ defineContainer('ion-skeleton-text', defineIonSkeletonText, [\n 'animated'\n]);\nexport const IonSpinner = /*@__PURE__*/ defineContainer('ion-spinner', defineIonSpinner, [\n 'color',\n 'duration',\n 'name',\n 'paused'\n]);\nexport const IonSplitPane = /*@__PURE__*/ defineContainer('ion-split-pane', defineIonSplitPane, [\n 'contentId',\n 'disabled',\n 'when',\n 'ionSplitPaneVisible'\n]);\nexport const IonText = /*@__PURE__*/ defineContainer('ion-text', defineIonText, [\n 'color'\n]);\nexport const IonTextarea = /*@__PURE__*/ defineContainer('ion-textarea', defineIonTextarea, [\n 'color',\n 'autocapitalize',\n 'autofocus',\n 'clearOnEdit',\n 'debounce',\n 'disabled',\n 'fill',\n 'inputmode',\n 'enterkeyhint',\n 'maxlength',\n 'minlength',\n 'name',\n 'placeholder',\n 'readonly',\n 'required',\n 'spellcheck',\n 'cols',\n 'rows',\n 'wrap',\n 'autoGrow',\n 'value',\n 'counter',\n 'counterFormatter',\n 'errorText',\n 'helperText',\n 'label',\n 'labelPlacement',\n 'legacy',\n 'shape',\n 'ionChange',\n 'ionInput',\n 'ionStyle',\n 'ionBlur',\n 'ionFocus'\n], 'value', 'v-ion-input', 'ionInput');\nexport const IonThumbnail = /*@__PURE__*/ defineContainer('ion-thumbnail', defineIonThumbnail);\nexport const IonTitle = /*@__PURE__*/ defineContainer('ion-title', defineIonTitle, [\n 'color',\n 'size',\n 'ionStyle'\n]);\nexport const IonToggle = /*@__PURE__*/ defineContainer('ion-toggle', defineIonToggle, [\n 'color',\n 'name',\n 'checked',\n 'disabled',\n 'value',\n 'enableOnOffLabels',\n 'labelPlacement',\n 'legacy',\n 'justify',\n 'alignment',\n 'ionChange',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle'\n], 'checked', 'v-ion-change', 'ionChange');\nexport const IonToolbar = /*@__PURE__*/ defineContainer('ion-toolbar', defineIonToolbar, [\n 'color'\n]);\n//# sourceMappingURL=proxies.js.map","export const useBackButton = (priority, handler) => {\n const callback = (ev) => ev.detail.register(priority, handler);\n const unregister = () => document.removeEventListener(\"ionBackButton\", callback);\n document.addEventListener(\"ionBackButton\", callback);\n return { unregister };\n};\n//# sourceMappingURL=back-button.js.map","import { ref } from \"vue\";\nexport const useKeyboard = () => {\n const isOpen = ref(false);\n const keyboardHeight = ref(0);\n const showCallback = (ev) => {\n isOpen.value = true;\n keyboardHeight.value = ev.detail.keyboardHeight;\n };\n const hideCallback = () => {\n isOpen.value = false;\n keyboardHeight.value = 0;\n };\n const unregister = () => {\n if (typeof window !== \"undefined\") {\n window.removeEventListener(\"ionKeyboardDidShow\", showCallback);\n window.removeEventListener(\"ionKeyboardDidHide\", hideCallback);\n }\n };\n if (typeof window !== \"undefined\") {\n window.addEventListener(\"ionKeyboardDidShow\", showCallback);\n window.addEventListener(\"ionKeyboardDidHide\", hideCallback);\n }\n return {\n isOpen,\n keyboardHeight,\n unregister,\n };\n};\n//# sourceMappingURL=keyboard.js.map","import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, } from \"@ionic/core/components\";\n// TODO(FW-2969): types\nexport var LifecycleHooks;\n(function (LifecycleHooks) {\n LifecycleHooks[\"WillEnter\"] = \"onIonViewWillEnter\";\n LifecycleHooks[\"DidEnter\"] = \"onIonViewDidEnter\";\n LifecycleHooks[\"WillLeave\"] = \"onIonViewWillLeave\";\n LifecycleHooks[\"DidLeave\"] = \"onIonViewDidLeave\";\n})(LifecycleHooks || (LifecycleHooks = {}));\nconst hookNames = {\n [LIFECYCLE_WILL_ENTER]: LifecycleHooks.WillEnter,\n [LIFECYCLE_DID_ENTER]: LifecycleHooks.DidEnter,\n [LIFECYCLE_WILL_LEAVE]: LifecycleHooks.WillLeave,\n [LIFECYCLE_DID_LEAVE]: LifecycleHooks.DidLeave,\n};\nconst ids = { main: 0 };\nexport const generateId = (type = \"main\") => {\n var _a;\n const id = ((_a = ids[type]) !== null && _a !== void 0 ? _a : 0) + 1;\n ids[type] = id;\n return id.toString();\n};\nexport const fireLifecycle = (vueComponent, vueInstance, lifecycle) => {\n if (vueComponent === null || vueComponent === void 0 ? void 0 : vueComponent[lifecycle]) {\n vueComponent[lifecycle].bind(vueInstance === null || vueInstance === void 0 ? void 0 : vueInstance.value)();\n }\n const instance = vueInstance === null || vueInstance === void 0 ? void 0 : vueInstance.value;\n if (instance === null || instance === void 0 ? void 0 : instance[lifecycle]) {\n instance[lifecycle]();\n }\n /**\n * Fire any Composition API\n * Ionic Lifecycle hooks\n */\n if (instance) {\n const hook = hookNames[lifecycle];\n const hooks = instance[hook];\n if (hooks) {\n hooks.forEach((hook) => hook());\n }\n }\n};\nexport const getConfig = () => {\n if (typeof window !== \"undefined\") {\n const Ionic = window.Ionic;\n if (Ionic && Ionic.config) {\n return Ionic.config;\n }\n }\n return null;\n};\n//# sourceMappingURL=utils.js.map","import { getCurrentInstance } from \"vue\";\nimport { LifecycleHooks } from \"../utils\";\n/**\n * Creates an returns a function that\n * can be used to provide a lifecycle hook.\n */\nconst injectHook = (lifecycleType, hook, component) => {\n if (component) {\n // Add to public instance so it is accessible to IonRouterOutlet\n const target = component;\n const hooks = target.proxy[lifecycleType] || (target.proxy[lifecycleType] = []);\n /**\n * Define property on public instances using `setup` syntax in Vue 3.x\n */\n if (target.exposed) {\n target.exposed[lifecycleType] = hooks;\n }\n const wrappedHook = (...args) => {\n if (target.isUnmounted) {\n return;\n }\n return args ? hook(...args) : hook();\n };\n hooks.push(wrappedHook);\n return wrappedHook;\n }\n else {\n console.warn(\"[@ionic/vue]: Ionic Lifecycle Hooks can only be used during execution of setup().\");\n }\n};\nconst createHook = (lifecycle) => {\n return (hook, target = getCurrentInstance()) => injectHook(lifecycle, hook, target);\n};\nexport const onIonViewWillEnter = createHook(LifecycleHooks.WillEnter);\nexport const onIonViewDidEnter = createHook(LifecycleHooks.DidEnter);\nexport const onIonViewWillLeave = createHook(LifecycleHooks.WillLeave);\nexport const onIonViewDidLeave = createHook(LifecycleHooks.DidLeave);\n//# sourceMappingURL=lifecycle.js.map","import { inject } from \"vue\";\n/**\n * Used to navigate within Vue Router\n * while controlling the animation.\n */\nexport const useIonRouter = () => {\n const { canGoBack, goBack, goForward, handleNavigate } = inject(\"navManager\");\n const navigate = (location, routerDirection, routerAction, routerAnimation) => handleNavigate(location, routerAction, routerDirection, routerAnimation);\n const push = (location, routerAnimation) => navigate(location, \"forward\", \"push\", routerAnimation);\n const replace = (location, routerAnimation) => navigate(location, \"root\", \"replace\", routerAnimation);\n const back = (routerAnimation) => goBack(routerAnimation);\n const forward = (routerAnimation) => goForward(routerAnimation);\n return {\n canGoBack,\n push,\n replace,\n back,\n forward,\n navigate,\n };\n};\n//# sourceMappingURL=router.js.map","import { initialize } from \"@ionic/core/components\";\n// TODO(FW-2969): types\n/**\n * We need to make sure that the web component fires an event\n * that will not conflict with the user's @ionChange binding,\n * otherwise the binding's callback will fire before any\n * v-model values have been updated.\n */\nconst toKebabCase = (eventName) => {\n const kebabConvert = (name) => name.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, \"$1-$2\").toLowerCase();\n switch (eventName) {\n case \"ionInput\":\n return \"v-ion-input\";\n case \"ionChange\":\n return \"v-ion-change\";\n default:\n return kebabConvert(eventName);\n }\n};\nconst getHelperFunctions = () => {\n return {\n ael: (el, eventName, cb, opts) => el.addEventListener(toKebabCase(eventName), cb, opts),\n rel: (el, eventName, cb, opts) => el.removeEventListener(toKebabCase(eventName), cb, opts),\n ce: (eventName, opts) => new CustomEvent(toKebabCase(eventName), opts),\n };\n};\nexport const IonicVue = {\n async install(_, config = {}) {\n /**\n * By default Ionic Framework hides elements that\n * are not hydrated, but in the CE build there is no\n * hydration.\n * TODO FW-2797: Remove when all integrations have been\n * migrated to CE build.\n */\n if (typeof document !== \"undefined\") {\n document.documentElement.classList.add(\"ion-ce\");\n }\n const { ael, rel, ce } = getHelperFunctions();\n initialize(Object.assign(Object.assign({}, config), { _ael: ael, _rel: rel, _ce: ce }));\n },\n};\n//# sourceMappingURL=ionic-vue.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-back-button.js\";\nimport { h, inject, defineComponent } from \"vue\";\nexport const IonBackButton = /*@__PURE__*/ defineComponent((_, { attrs, slots }) => {\n defineCustomElement();\n // TODO(FW-2969): type\n const ionRouter = inject(\"navManager\");\n const onClick = () => {\n /**\n * When using ion-back-button outside of\n * a routing context, ionRouter is undefined.\n */\n if (ionRouter === undefined) {\n return;\n }\n const defaultHref = attrs[\"default-href\"] || attrs[\"defaultHref\"];\n const routerAnimation = attrs[\"router-animation\"] || attrs[\"routerAnimation\"];\n ionRouter.handleNavigateBack(defaultHref, routerAnimation);\n };\n return () => {\n return h(\"ion-back-button\", Object.assign({ onClick }, attrs), slots.default && slots.default());\n };\n});\nIonBackButton.name = \"IonBackButton\";\n//# sourceMappingURL=IonBackButton.js.map","import { h, defineComponent } from \"vue\";\nexport const IonPage = /*@__PURE__*/ defineComponent({\n name: \"IonPage\",\n props: {\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n registerIonPage: { type: Function, default: () => { } },\n },\n mounted() {\n this.$props.registerIonPage(this.$refs.ionPage);\n },\n setup(_, { attrs, slots }) {\n return () => {\n return h(\"div\", Object.assign(Object.assign({}, attrs), { [\"class\"]: \"ion-page\", ref: \"ionPage\" }), slots.default && slots.default());\n };\n },\n});\n//# sourceMappingURL=IonPage.js.map","import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, } from \"@ionic/core/components\";\nimport { defineCustomElement } from \"@ionic/core/components/ion-router-outlet.js\";\nimport { h, defineComponent, ref, computed, inject, provide, watch, shallowRef, onUnmounted, } from \"vue\";\nimport { matchedRouteKey, routeLocationKey, useRoute } from \"vue-router\";\nimport { fireLifecycle, generateId, getConfig } from \"../utils\";\n// TODO(FW-2969): types\nconst isViewVisible = (enteringEl) => {\n return (!enteringEl.classList.contains(\"ion-page-hidden\") &&\n !enteringEl.classList.contains(\"ion-page-invisible\"));\n};\nconst viewDepthKey = Symbol(0);\nexport const IonRouterOutlet = /*@__PURE__*/ defineComponent({\n name: \"IonRouterOutlet\",\n setup() {\n defineCustomElement();\n const injectedRoute = inject(routeLocationKey);\n const route = useRoute();\n const depth = inject(viewDepthKey, 0);\n const matchedRouteRef = computed(() => route.matched[depth]);\n let previousMatchedRouteRef;\n let previousMatchedPath;\n provide(viewDepthKey, depth + 1);\n provide(matchedRouteKey, matchedRouteRef);\n const ionRouterOutlet = ref();\n const id = generateId(\"ion-router-outlet\");\n const ionRouter = inject(\"navManager\");\n const viewStacks = inject(\"viewStacks\");\n const components = shallowRef([]);\n let skipTransition = false;\n // The base url for this router outlet\n let parentOutletPath;\n /**\n * Note: Do not listen for matchedRouteRef by itself here\n * as the callback will not fire for parameterized routes (i.e. /page/:id).\n * So going from /page/1 to /page/2 would not fire this callback if we\n * only listened for changes to matchedRouteRef.\n */\n watch(() => [route, matchedRouteRef.value], ([currentRoute, currentMatchedRouteRef]) => {\n /**\n * This callback checks whether or not a router outlet\n * needs to respond to a change in the matched route.\n * It handles a few cases:\n * 1. The matched route is undefined. This means that\n * the matched route is not applicable to this outlet.\n * For example, a /settings route is not applicable\n * to a /tabs/... route.\n *\n * Note: When going back to a tabs outlet from a non-tabs outlet,\n * the tabs outlet should NOT attempt a page transition from the\n * previous tab to the active tab. To do this we compare the current\n * route with the previous route. Unfortunately, we cannot rely on the\n * previous value provided by Vue in the watch callback. This is because\n * when coming back to the tabs context, the previous matched route will\n * be undefined (because nothing in the tabs context matches /settings)\n * but the current matched route will be defined and so a transition\n * will always occur.\n *\n * 2. The matched route is defined and is different than\n * the previously matched route. This is the most\n * common case such as when you go from /page1 to /page2.\n *\n * 3. The matched route is the same but the parameters are different.\n * This is a special case for parameterized routes (i.e. /page/:id).\n * When going from /page/1 to /page/2, the matched route object will\n * be the same, but we still need to perform a page transition. To do this\n * we check if the parameters are different (i.e. 1 vs 2). To avoid enumerating\n * all of the keys in the params object, we check the url path to\n * see if they are different after ensuring we are in a parameterized route.\n */\n if (currentMatchedRouteRef !== undefined) {\n const matchedDifferentRoutes = currentMatchedRouteRef !== previousMatchedRouteRef;\n const matchedDifferentParameterRoutes = currentRoute.matched[currentRoute.matched.length - 1] ===\n currentMatchedRouteRef &&\n currentRoute.path !== previousMatchedPath;\n if (matchedDifferentRoutes || matchedDifferentParameterRoutes) {\n setupViewItem(matchedRouteRef);\n }\n }\n previousMatchedRouteRef = currentMatchedRouteRef;\n previousMatchedPath = currentRoute.path;\n });\n const canStart = () => {\n const config = getConfig();\n const swipeEnabled = config &&\n config.get(\"swipeBackEnabled\", ionRouterOutlet.value.mode === \"ios\");\n if (!swipeEnabled)\n return false;\n const stack = viewStacks.getViewStack(id);\n if (!stack || stack.length <= 1)\n return false;\n /**\n * We only want to outlet of the entering view\n * to respond to this gesture, so check\n * to make sure the view is in the outlet we want.\n */\n const routeInfo = ionRouter.getLeavingRouteInfo();\n const enteringViewItem = viewStacks.findViewItemByRouteInfo({ pathname: routeInfo.pushedByRoute || \"\" }, id);\n return !!enteringViewItem;\n };\n const onStart = async () => {\n const routeInfo = ionRouter.getLeavingRouteInfo();\n const { routerAnimation } = routeInfo;\n const enteringViewItem = viewStacks.findViewItemByRouteInfo({ pathname: routeInfo.pushedByRoute || \"\" }, id);\n const leavingViewItem = viewStacks.findViewItemByRouteInfo(routeInfo, id);\n if (leavingViewItem) {\n let animationBuilder = routerAnimation;\n const enteringEl = enteringViewItem.ionPageElement;\n const leavingEl = leavingViewItem.ionPageElement;\n /**\n * If we are going back from a page that\n * was presented using a custom animation\n * we should default to using that\n * unless the developer explicitly\n * provided another animation.\n */\n const customAnimation = enteringViewItem.routerAnimation;\n if (animationBuilder === undefined && customAnimation !== undefined) {\n animationBuilder = customAnimation;\n }\n leavingViewItem.routerAnimation = animationBuilder;\n await transition(enteringEl, leavingEl, \"back\", ionRouter.canGoBack(2), true, animationBuilder);\n }\n return Promise.resolve();\n };\n const onEnd = (shouldContinue) => {\n if (shouldContinue) {\n skipTransition = true;\n /**\n * Use the same logic as clicking\n * ion-back-button to determine where\n * to go back to.\n */\n ionRouter.handleNavigateBack();\n }\n else {\n /**\n * In the event that the swipe\n * gesture was aborted, we should\n * re-hide the page that was going to enter.\n */\n const routeInfo = ionRouter.getCurrentRouteInfo();\n const enteringViewItem = viewStacks.findViewItemByRouteInfo({ pathname: routeInfo.pushedByRoute || \"\" }, id);\n enteringViewItem.ionPageElement.setAttribute(\"aria-hidden\", \"true\");\n enteringViewItem.ionPageElement.classList.add(\"ion-page-hidden\");\n }\n };\n watch(ionRouterOutlet, () => {\n ionRouterOutlet.value.swipeHandler = {\n canStart,\n onStart,\n onEnd,\n };\n });\n const transition = async (enteringEl, leavingEl, direction, showGoBack, progressAnimation, animationBuilder) => {\n if (skipTransition) {\n skipTransition = false;\n return Promise.resolve(false);\n }\n if (enteringEl === leavingEl) {\n return Promise.resolve(false);\n }\n enteringEl.classList.add(\"ion-page-invisible\");\n const hasRootDirection = direction === undefined || direction === \"root\" || direction === \"none\";\n const result = await ionRouterOutlet.value.commit(enteringEl, leavingEl, {\n /**\n * replace operations result in a direction of none.\n * These typically do not have need animations, so we set\n * the duration to 0. However, if a developer explicitly\n * passes an animationBuilder, we should assume that\n * they want an animation to be played even\n * though it is a replace operation.\n */\n duration: hasRootDirection && animationBuilder === undefined ? 0 : undefined,\n direction,\n showGoBack,\n progressAnimation,\n animationBuilder,\n });\n return result;\n };\n const handlePageTransition = async () => {\n const routeInfo = ionRouter.getCurrentRouteInfo();\n const { routerDirection, routerAction, routerAnimation, prevRouteLastPathname, delta, } = routeInfo;\n const enteringViewItem = viewStacks.findViewItemByRouteInfo(routeInfo, id);\n let leavingViewItem = viewStacks.findLeavingViewItemByRouteInfo(routeInfo, id);\n const enteringEl = enteringViewItem.ionPageElement;\n /**\n * All views that can be transitioned to must have\n * an `<ion-page>` element for transitions and lifecycle\n * methods to work properly.\n */\n if (enteringEl === undefined) {\n console.warn(`[@ionic/vue Warning]: The view you are trying to render for path ${routeInfo.pathname} does not have the required <ion-page> component. Transitions and lifecycle methods may not work as expected.\n\nSee https://ionicframework.com/docs/vue/navigation#ionpage for more information.`);\n }\n if (enteringViewItem === leavingViewItem)\n return;\n if (!leavingViewItem && prevRouteLastPathname) {\n leavingViewItem = viewStacks.findViewItemByPathname(prevRouteLastPathname, id);\n }\n /**\n * If the entering view is already\n * visible, then no transition is needed.\n * This is most common when navigating\n * from a tabs page to a non-tabs page\n * and then back to the tabs page.\n * Even when the tabs context navigated away,\n * the inner tabs page was still active.\n * This also avoids an issue where\n * the previous tabs page is incorrectly\n * unmounted since it would automatically\n * unmount the previous view.\n *\n * This should also only apply to entering and\n * leaving items in the same router outlet (i.e.\n * Tab1 and Tab2), otherwise this will\n * return early for swipe to go back when\n * going from a non-tabs page to a tabs page.\n */\n if (isViewVisible(enteringEl) &&\n (leavingViewItem === null || leavingViewItem === void 0 ? void 0 : leavingViewItem.ionPageElement) !== undefined &&\n !isViewVisible(leavingViewItem.ionPageElement)) {\n return;\n }\n fireLifecycle(enteringViewItem.vueComponent, enteringViewItem.vueComponentRef, LIFECYCLE_WILL_ENTER);\n if ((leavingViewItem === null || leavingViewItem === void 0 ? void 0 : leavingViewItem.ionPageElement) &&\n enteringViewItem !== leavingViewItem) {\n let animationBuilder = routerAnimation;\n const leavingEl = leavingViewItem.ionPageElement;\n fireLifecycle(leavingViewItem.vueComponent, leavingViewItem.vueComponentRef, LIFECYCLE_WILL_LEAVE);\n /**\n * If we are going back from a page that\n * was presented using a custom animation\n * we should default to using that\n * unless the developer explicitly\n * provided another animation.\n */\n const customAnimation = enteringViewItem.routerAnimation;\n if (animationBuilder === undefined &&\n routerDirection === \"back\" &&\n customAnimation !== undefined) {\n animationBuilder = customAnimation;\n }\n leavingViewItem.routerAnimation = animationBuilder;\n await transition(enteringEl, leavingEl, routerDirection, !!routeInfo.pushedByRoute, false, animationBuilder);\n leavingEl.classList.add(\"ion-page-hidden\");\n leavingEl.setAttribute(\"aria-hidden\", \"true\");\n const usingLinearNavigation = viewStacks.size() === 1;\n if (routerAction === \"replace\") {\n leavingViewItem.mount = false;\n leavingViewItem.ionPageElement = undefined;\n leavingViewItem.ionRoute = false;\n }\n else if (!(routerAction === \"push\" && routerDirection === \"forward\")) {\n const shouldLeavingViewBeRemoved = routerDirection !== \"none\" &&\n leavingViewItem &&\n enteringViewItem !== leavingViewItem;\n if (shouldLeavingViewBeRemoved) {\n leavingViewItem.mount = false;\n leavingViewItem.ionPageElement = undefined;\n leavingViewItem.ionRoute = false;\n /**\n * router.go() expects navigation to be\n * linear. If an app is using multiple stacks then\n * it is not using linear navigation. As a result, router.go()\n * will not give the results that developers are expecting.\n */\n if (usingLinearNavigation) {\n viewStacks.unmountLeavingViews(id, enteringViewItem, delta);\n }\n }\n }\n else if (usingLinearNavigation) {\n viewStacks.mountIntermediaryViews(id, leavingViewItem, delta);\n }\n fireLifecycle(leavingViewItem.vueComponent, leavingViewItem.vueComponentRef, LIFECYCLE_DID_LEAVE);\n }\n else {\n /**\n * If there is no leaving element, just show\n * the entering element. Wrap it in an raf\n * in case ion-content's fullscreen callback\n * is running. Otherwise we'd have a flicker.\n */\n requestAnimationFrame(() => enteringEl.classList.remove(\"ion-page-invisible\"));\n }\n fireLifecycle(enteringViewItem.vueComponent, enteringViewItem.vueComponentRef, LIFECYCLE_DID_ENTER);\n components.value = viewStacks.getChildrenToRender(id);\n };\n const setupViewItem = (matchedRouteRef) => {\n const firstMatchedRoute = route.matched[0];\n if (!parentOutletPath) {\n parentOutletPath = firstMatchedRoute.path;\n }\n /**\n * If no matched route, do not do anything in this outlet.\n * If there is a match, but it the first matched path\n * is not the root path for this outlet, then this view\n * change needs to be rendered in a different outlet.\n * We also add an exception for when the matchedRouteRef is\n * equal to the first matched route (i.e. the base router outlet).\n * This logic is mainly to help nested outlets/multi-tab\n * setups work better.\n */\n if (!matchedRouteRef.value ||\n (matchedRouteRef.value !== firstMatchedRoute &&\n firstMatchedRoute.path !== parentOutletPath)) {\n return;\n }\n const currentRoute = ionRouter.getCurrentRouteInfo();\n let enteringViewItem = viewStacks.findViewItemByRouteInfo(currentRoute, id);\n if (!enteringViewItem) {\n enteringViewItem = viewStacks.createViewItem(id, matchedRouteRef.value.components.default, matchedRouteRef.value, currentRoute);\n viewStacks.add(enteringViewItem);\n }\n if (!enteringViewItem.mount) {\n enteringViewItem.mount = true;\n enteringViewItem.registerCallback = () => {\n handlePageTransition();\n enteringViewItem.registerCallback = undefined;\n };\n }\n else {\n handlePageTransition();\n }\n components.value = viewStacks.getChildrenToRender(id);\n };\n if (matchedRouteRef.value) {\n setupViewItem(matchedRouteRef);\n }\n /**\n * Remove stack data for this outlet\n * when outlet is destroyed otherwise\n * we will see cached view data.\n */\n onUnmounted(() => viewStacks.clear(id));\n const registerIonPage = (viewItem, ionPageEl) => {\n const oldIonPageEl = viewItem.ionPageElement;\n viewStacks.registerIonPage(viewItem, ionPageEl);\n /**\n * If there is a registerCallback,\n * then this component is being registered\n * as a result of a navigation change.\n */\n if (viewItem.registerCallback) {\n /**\n * Page should be hidden initially\n * to avoid flickering.\n */\n ionPageEl.classList.add(\"ion-page-invisible\");\n viewItem.registerCallback();\n /**\n * If there is no registerCallback, then\n * this component is likely being re-registered\n * as a result of a hot module replacement.\n * We need to see if the oldIonPageEl has\n * .ion-page-invisible. If it does not then we\n * need to remove it from the new ionPageEl otherwise\n * the page will be hidden when it is replaced.\n */\n }\n else if (oldIonPageEl &&\n !oldIonPageEl.classList.contains(\"ion-page-invisible\")) {\n ionPageEl.classList.remove(\"ion-page-invisible\");\n }\n };\n return {\n id,\n components,\n injectedRoute,\n ionRouterOutlet,\n registerIonPage,\n };\n },\n render() {\n const { components, registerIonPage, injectedRoute } = this;\n return h(\"ion-router-outlet\", { ref: \"ionRouterOutlet\" }, components &&\n components.map((c) => {\n var _a, _b;\n let props = {\n ref: c.vueComponentRef,\n key: c.pathname,\n registerIonPage: (ionPageEl) => registerIonPage(c, ionPageEl),\n };\n /**\n * IonRouterOutlet does not support named outlets.\n */\n const routePropsOption = (_b = (_a = c.matchedRoute) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.default;\n /**\n * Since IonRouterOutlet renders multiple components,\n * each render will cause all props functions to be\n * called again. As a result, we need to cache the function\n * result and provide it on each render so that the props\n * are not lost when navigating from and back to a page.\n * When a component is destroyed and re-created, the\n * function is called again.\n */\n const getPropsFunctionResult = () => {\n var _a;\n const cachedPropsResult = (_a = c.vueComponentData) === null || _a === void 0 ? void 0 : _a.propsFunctionResult;\n if (cachedPropsResult) {\n return cachedPropsResult;\n }\n else {\n const propsFunctionResult = routePropsOption(injectedRoute);\n c.vueComponentData = Object.assign(Object.assign({}, c.vueComponentData), { propsFunctionResult });\n return propsFunctionResult;\n }\n };\n const routeProps = routePropsOption\n ? routePropsOption === true\n ? c.params\n : typeof routePropsOption === \"function\"\n ? getPropsFunctionResult()\n : routePropsOption\n : null;\n props = Object.assign(Object.assign({}, props), routeProps);\n return h(c.vueComponent, props);\n }));\n },\n});\n//# sourceMappingURL=IonRouterOutlet.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-tab-button.js\";\nimport { h, defineComponent, inject } from \"vue\";\nexport const IonTabButton = /*@__PURE__*/ defineComponent({\n name: \"IonTabButton\",\n props: {\n _getTabState: {\n type: Function,\n default: () => {\n return {};\n },\n },\n disabled: Boolean,\n download: String,\n href: String,\n rel: String,\n layout: String,\n selected: Boolean,\n tab: String,\n target: String,\n },\n setup(props, { slots }) {\n defineCustomElement();\n // TODO(FW-2969): type\n const ionRouter = inject(\"navManager\");\n const onClick = (ev) => {\n if (ev.cancelable) {\n ev.preventDefault();\n }\n /**\n * Keeping track of the originalHref\n * (i.e. /tabs/tab1) lets us redirect\n * users back to a child page using currentHref\n * (i.e. /tabs/tab1/child).\n */\n const { tab, href, _getTabState } = props;\n const tabState = _getTabState();\n const tappedTab = tabState.tabs[tab] || {};\n const originalHref = tappedTab.originalHref || href;\n const currentHref = tappedTab.currentHref || href;\n const prevActiveTab = tabState.activeTab;\n /**\n * If we are still on the same\n * tab as before, but the base href\n * does not equal the current href,\n * then we must be on a child page and\n * should direct users back to the root\n * of the tab.\n */\n if (prevActiveTab === tab) {\n if (originalHref !== currentHref) {\n ionRouter.resetTab(tab);\n }\n }\n else {\n ionRouter.changeTab(tab, currentHref);\n }\n };\n return () => {\n return h(\"ion-tab-button\", Object.assign({ onClick }, props), slots.default && slots.default());\n };\n },\n});\n//# sourceMappingURL=IonTabButton.js.map","import { h, defineComponent } from \"vue\";\nconst WILL_CHANGE = \"ionTabsWillChange\";\nconst DID_CHANGE = \"ionTabsDidChange\";\n// TODO(FW-2969): types\nexport const IonTabs = /*@__PURE__*/ defineComponent({\n name: \"IonTabs\",\n emits: [WILL_CHANGE, DID_CHANGE],\n render() {\n var _a;\n const { $slots: slots, $emit } = this;\n const slottedContent = slots.default && slots.default();\n let routerOutlet;\n /**\n * Developers must pass an ion-router-outlet\n * inside of ion-tabs.\n */\n if (slottedContent && slottedContent.length > 0) {\n routerOutlet = slottedContent.find((child) => child.type && child.type.name === \"IonRouterOutlet\");\n }\n if (!routerOutlet) {\n throw new Error(\"IonTabs must contain an IonRouterOutlet. See https://ionicframework.com/docs/vue/navigation#working-with-tabs for more information.\");\n }\n let childrenToRender = [\n h(\"div\", {\n class: \"tabs-inner\",\n style: {\n position: \"relative\",\n flex: \"1\",\n contain: \"layout size style\",\n },\n }, routerOutlet),\n ];\n /**\n * If ion-tab-bar has slot=\"top\" it needs to be\n * rendered before `.tabs-inner` otherwise it will\n * not show above the tab content.\n */\n if (slottedContent && slottedContent.length > 0) {\n /**\n * Render all content except for router outlet\n * since that needs to be inside of `.tabs-inner`.\n */\n const filteredContent = slottedContent.filter((child) => !child.type ||\n (child.type && child.type.name !== \"IonRouterOutlet\"));\n const slottedTabBar = filteredContent.find((child) => child.type && child.type.name === \"IonTabBar\");\n const hasTopSlotTabBar = slottedTabBar && ((_a = slottedTabBar.props) === null || _a === void 0 ? void 0 : _a.slot) === \"top\";\n if (slottedTabBar) {\n if (!slottedTabBar.props) {\n slottedTabBar.props = {};\n }\n /**\n * ionTabsWillChange and ionTabsDidChange are\n * fired from `ion-tabs`, so we need to pass these down\n * as props so they can fire when the active tab changes.\n * TODO: We may want to move logic from the tab bar into here\n * so we do not have code split across two components.\n */\n slottedTabBar.props._tabsWillChange = (tab) => $emit(WILL_CHANGE, { tab });\n slottedTabBar.props._tabsDidChange = (tab) => $emit(DID_CHANGE, { tab });\n }\n if (hasTopSlotTabBar) {\n childrenToRender = [...filteredContent, ...childrenToRender];\n }\n else {\n childrenToRender = [...childrenToRender, ...filteredContent];\n }\n }\n return h(\"ion-tabs\", {\n style: {\n display: \"flex\",\n position: \"absolute\",\n top: \"0\",\n left: \"0\",\n right: \"0\",\n bottom: \"0\",\n \"flex-direction\": \"column\",\n width: \"100%\",\n height: \"100%\",\n contain: \"layout size style\",\n \"z-index\": \"0\",\n },\n }, childrenToRender);\n },\n});\n//# sourceMappingURL=IonTabs.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-tab-bar.js\";\nimport { h, defineComponent, getCurrentInstance, inject } from \"vue\";\nconst isTabButton = (child) => { var _a; return ((_a = child.type) === null || _a === void 0 ? void 0 : _a.name) === \"IonTabButton\"; };\nconst getTabs = (nodes) => {\n let tabs = [];\n nodes.forEach((node) => {\n if (isTabButton(node)) {\n tabs.push(node);\n }\n else if (Array.isArray(node.children) && node.children.length > 1) {\n const childTabs = getTabs(node.children);\n tabs = [...tabs, ...childTabs];\n }\n });\n return tabs;\n};\nexport const IonTabBar = defineComponent({\n name: \"IonTabBar\",\n props: {\n /* eslint-disable @typescript-eslint/no-empty-function */\n _tabsWillChange: { type: Function, default: () => { } },\n _tabsDidChange: { type: Function, default: () => { } },\n /* eslint-enable @typescript-eslint/no-empty-function */\n },\n data() {\n return {\n tabState: {\n activeTab: undefined,\n tabs: {},\n },\n tabVnodes: [],\n };\n },\n updated() {\n this.setupTabState(inject(\"navManager\"));\n },\n methods: {\n setupTabState(ionRouter) {\n /**\n * For each tab, we need to keep track of its\n * base href as well as any child page that\n * is active in its stack so that when we go back\n * to a tab from another tab, we can correctly\n * show any child pages if necessary.\n */\n const tabState = this.$data.tabState;\n const currentInstance = getCurrentInstance();\n const tabs = (this.$data.tabVnodes = getTabs((currentInstance.subTree.children || [])));\n tabs.forEach((child) => {\n tabState.tabs[child.props.tab] = {\n originalHref: child.props.href,\n currentHref: child.props.href,\n ref: child,\n };\n /**\n * Passing this prop to each tab button\n * lets it be aware of the state that\n * ion-tab-bar is managing for it.\n */\n child.component.props._getTabState = () => tabState;\n });\n this.checkActiveTab(ionRouter);\n },\n checkActiveTab(ionRouter) {\n const currentRoute = ionRouter.getCurrentRouteInfo();\n const childNodes = this.$data.tabVnodes;\n const { tabs, activeTab: prevActiveTab } = this.$data.tabState;\n const tabState = this.$data.tabState;\n const tabKeys = Object.keys(tabs);\n const activeTab = tabKeys.find((key) => {\n const href = tabs[key].originalHref;\n return currentRoute.pathname.startsWith(href);\n });\n /**\n * For each tab, check to see if the\n * base href has changed. If so, update\n * it in the tabs state.\n */\n childNodes.forEach((child) => {\n const tab = tabs[child.props.tab];\n if (!tab || tab.originalHref !== child.props.href) {\n tabs[child.props.tab] = {\n originalHref: child.props.href,\n currentHref: child.props.href,\n ref: child,\n };\n }\n });\n if (activeTab && prevActiveTab) {\n const prevHref = this.$data.tabState.tabs[prevActiveTab].currentHref;\n /**\n * If the tabs change or the url changes,\n * update the currentHref for the active tab.\n * Ex: url changes from /tabs/tab1 --> /tabs/tab1/child\n * If we went to tab2 then back to tab1, we should\n * land on /tabs/tab1/child instead of /tabs/tab1.\n */\n if (activeTab !== prevActiveTab || prevHref !== currentRoute.pathname) {\n /**\n * By default the search is `undefined` in Ionic Vue,\n * but Vue Router can set the search to the empty string.\n * We check for truthy here because empty string is falsy\n * and currentRoute.search cannot ever be a boolean.\n */\n const search = currentRoute.search ? `?${currentRoute.search}` : \"\";\n tabs[activeTab] = Object.assign(Object.assign({}, tabs[activeTab]), { currentHref: currentRoute.pathname + search });\n }\n /**\n * If navigating back and the tabs change,\n * set the previous tab back to its original href.\n */\n if (currentRoute.routerAction === \"pop\" &&\n activeTab !== prevActiveTab) {\n tabs[prevActiveTab] = Object.assign(Object.assign({}, tabs[prevActiveTab]), { currentHref: tabs[prevActiveTab].originalHref });\n }\n }\n const activeChild = childNodes.find((child) => { var _a; return isTabButton(child) && ((_a = child.props) === null || _a === void 0 ? void 0 : _a.tab) === activeTab; });\n const tabBar = this.$refs.ionTabBar;\n const tabDidChange = activeTab !== prevActiveTab;\n if (tabBar) {\n if (activeChild) {\n tabDidChange && this.$props._tabsWillChange(activeTab);\n ionRouter.handleSetCurrentTab(activeTab);\n tabBar.selectedTab = tabState.activeTab = activeTab;\n tabDidChange && this.$props._tabsDidChange(activeTab);\n /**\n * When going to a tab that does\n * not have an associated ion-tab-button\n * we need to remove the selected state from\n * the old tab.\n */\n }\n else {\n tabBar.selectedTab = tabState.activeTab = \"\";\n }\n }\n },\n },\n mounted() {\n const ionRouter = inject(\"navManager\");\n this.setupTabState(ionRouter);\n ionRouter.registerHistoryChangeListener(() => this.checkActiveTab(ionRouter));\n },\n setup(_, { slots }) {\n defineCustomElement();\n return () => {\n return h(\"ion-tab-bar\", { ref: \"ionTabBar\" }, slots.default && slots.default());\n };\n },\n});\n//# sourceMappingURL=IonTabBar.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-app.js\";\nimport { h, defineComponent, shallowRef } from \"vue\";\nconst userComponents = shallowRef([]);\nexport const IonApp = /*@__PURE__*/ defineComponent((_, { attrs, slots }) => {\n defineCustomElement();\n return () => {\n return h(\"ion-app\", Object.assign({}, attrs), [slots.default && slots.default(), ...userComponents.value]);\n };\n});\nIonApp.name = \"IonApp\";\n/**\n * When rendering user components inside of\n * ion-modal, or ion-popover the component\n * needs to be created inside of the current application\n * context otherwise libraries such as vue-i18n or vuex\n * will not work properly.\n *\n * `userComponents` renders teleported components as children\n * of `ion-app` within the current application context.\n */\nexport const addTeleportedUserComponent = (component) => {\n userComponents.value = [...userComponents.value, component];\n};\nexport const removeTeleportedUserComponent = (component) => {\n userComponents.value = userComponents.value.filter((cmp) => cmp !== component);\n};\n//# sourceMappingURL=IonApp.js.map","import { h, Teleport } from \"vue\";\nimport { addTeleportedUserComponent, removeTeleportedUserComponent, } from \"./components/IonApp\";\nexport const VueDelegate = (addFn = addTeleportedUserComponent, removeFn = removeTeleportedUserComponent) => {\n // `h` doesn't provide a type for the component argument\n const refMap = new WeakMap();\n // TODO(FW-2969): types\n const attachViewToDom = (parentElement, componentOrTagName, componentProps = {}, classes) => {\n const div = document.createElement(\"div\");\n classes && div.classList.add(...classes);\n parentElement.appendChild(div);\n const hostComponent = h(Teleport, { to: div }, h(componentOrTagName, Object.assign({}, componentProps)));\n /**\n * Ionic Framework will use what is returned from `attachViewToDom`\n * as the `component` argument in `removeViewFromDom`.\n *\n * We will store a reference to the div element and the host component,\n * so we can later look-up and unmount the correct instance.\n */\n refMap.set(div, hostComponent);\n addFn(hostComponent);\n return Promise.resolve(div);\n };\n const removeViewFromDom = (_container, component) => {\n const hostComponent = refMap.get(component);\n hostComponent && removeFn(hostComponent);\n return Promise.resolve();\n };\n return { attachViewToDom, removeViewFromDom };\n};\n//# sourceMappingURL=framework-delegate.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-nav.js\";\nimport { defineComponent, h, shallowRef } from \"vue\";\nimport { VueDelegate } from \"../framework-delegate\";\nexport const IonNav = /*@__PURE__*/ defineComponent(() => {\n defineCustomElement();\n const views = shallowRef([]);\n /**\n * Allows us to create the component\n * within the Vue application context.\n */\n const addView = (component) => (views.value = [...views.value, component]);\n const removeView = (component) => (views.value = views.value.filter((cmp) => cmp !== component));\n const delegate = VueDelegate(addView, removeView);\n return () => {\n return h(\"ion-nav\", { delegate }, views.value);\n };\n});\nIonNav.name = \"IonNav\";\n//# sourceMappingURL=IonNav.js.map","import { defineCustomElement } from \"ionicons/components/ion-icon.js\";\nimport { h, defineComponent } from \"vue\";\nimport { getConfig } from \"../utils\";\nexport const IonIcon = /*@__PURE__*/ defineComponent({\n name: \"IonIcon\",\n props: {\n color: String,\n flipRtl: Boolean,\n icon: String,\n ios: String,\n lazy: String,\n md: String,\n mode: String,\n name: String,\n size: String,\n src: String,\n },\n setup(props, { slots }) {\n defineCustomElement();\n return () => {\n var _a, _b;\n const { icon, ios, md, mode } = props;\n let iconToUse;\n const config = getConfig();\n const iconMode = mode || (config === null || config === void 0 ? void 0 : config.get(\"mode\"));\n if (ios || md) {\n if (iconMode === \"ios\") {\n iconToUse = (_a = ios !== null && ios !== void 0 ? ios : md) !== null && _a !== void 0 ? _a : icon;\n }\n else {\n iconToUse = (_b = md !== null && md !== void 0 ? md : ios) !== null && _b !== void 0 ? _b : icon;\n }\n }\n else {\n iconToUse = icon;\n }\n return h(\"ion-icon\", Object.assign(Object.assign({}, props), { icon: iconToUse }), slots);\n };\n },\n});\n//# sourceMappingURL=IonIcon.js.map","import { defineComponent, h, ref, onMounted } from 'vue';\nconst EMPTY_PROP = Symbol();\nconst DEFAULT_EMPTY_PROP = { default: EMPTY_PROP };\nexport const defineOverlayContainer = (name, defineCustomElement, componentProps = [], hasDelegateHost, controller) => {\n const createControllerComponent = () => {\n return defineComponent((props, { slots, emit }) => {\n const eventListeners = [\n { componentEv: `${name}-will-present`, frameworkEv: 'willPresent' },\n { componentEv: `${name}-did-present`, frameworkEv: 'didPresent' },\n { componentEv: `${name}-will-dismiss`, frameworkEv: 'willDismiss' },\n { componentEv: `${name}-did-dismiss`, frameworkEv: 'didDismiss' },\n ];\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const overlay = ref();\n const onVnodeMounted = async () => {\n const isOpen = props.isOpen;\n isOpen && (await present(props));\n };\n const onVnodeUpdated = async (node, prevNode) => {\n const isOpen = node.props.isOpen;\n const prevIsOpen = prevNode.props.isOpen;\n /**\n * Do not do anything if this prop\n * did not change.\n */\n if (isOpen === prevIsOpen)\n return;\n if (isOpen) {\n await present(props);\n }\n else {\n await dismiss();\n }\n };\n const onVnodeBeforeUnmount = async () => {\n await dismiss();\n };\n const dismiss = async () => {\n if (!overlay.value)\n return;\n await overlay.value;\n overlay.value = overlay.value.dismiss();\n await overlay.value;\n overlay.value = undefined;\n };\n const present = async (props) => {\n var _a;\n /**\n * Do not open another instance\n * if one is already opened.\n */\n if (overlay.value) {\n await overlay.value;\n }\n if ((_a = overlay.value) === null || _a === void 0 ? void 0 : _a.present) {\n await overlay.value.present();\n return;\n }\n let restOfProps = {};\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && value !== EMPTY_PROP) {\n restOfProps[key] = value;\n }\n }\n /**\n * These are getting passed as props.\n * Potentially a Vue bug with Web Components?\n */\n delete restOfProps.onWillPresent;\n delete restOfProps.onDidPresent;\n delete restOfProps.onWillDismiss;\n delete restOfProps.onDidDismiss;\n const component = slots.default && slots.default()[0];\n overlay.value = controller.create(Object.assign(Object.assign({}, restOfProps), { component }));\n overlay.value = await overlay.value;\n eventListeners.forEach(eventListener => {\n overlay.value.addEventListener(eventListener.componentEv, () => {\n emit(eventListener.frameworkEv);\n });\n });\n await overlay.value.present();\n };\n return () => {\n return h('div', {\n style: { display: 'none' },\n onVnodeMounted,\n onVnodeUpdated,\n onVnodeBeforeUnmount,\n isOpen: props.isOpen === true\n });\n };\n });\n };\n const createInlineComponent = () => {\n return defineComponent((props, { slots }) => {\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const isOpen = ref(false);\n const elementRef = ref();\n onMounted(() => {\n elementRef.value.addEventListener('ion-mount', () => isOpen.value = true);\n elementRef.value.addEventListener('will-present', () => isOpen.value = true);\n elementRef.value.addEventListener('did-dismiss', () => isOpen.value = false);\n });\n return () => {\n let restOfProps = {};\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && value !== EMPTY_PROP) {\n restOfProps[key] = value;\n }\n }\n /**\n * Some overlays need a wrapper element so content\n * takes up the full size of the parent overlay.\n */\n const renderChildren = () => {\n if (hasDelegateHost) {\n return h('div', { className: 'ion-delegate-host ion-page' }, slots);\n }\n return slots;\n };\n return h(name, Object.assign(Object.assign({}, restOfProps), { ref: elementRef }), (isOpen.value || restOfProps.keepContentsMounted) ? renderChildren() : undefined);\n };\n });\n };\n const Container = (controller !== undefined) ? createControllerComponent() : createInlineComponent();\n Container.name = name;\n Container.props = {\n 'isOpen': DEFAULT_EMPTY_PROP\n };\n componentProps.forEach(componentProp => {\n Container.props[componentProp] = DEFAULT_EMPTY_PROP;\n });\n if (controller !== undefined) {\n Container.emits = ['willPresent', 'didPresent', 'willDismiss', 'didDismiss'];\n }\n return Container;\n};\n//# sourceMappingURL=overlays.js.map","/**\n * This is an autogenerated file created by 'scripts/copy-overlays.js'.\n * Changes made to this file will be overwritten on build.\n */\nimport { defineCustomElement as defineIonActionSheetCustomElement } from '@ionic/core/components/ion-action-sheet.js';\nimport { defineCustomElement as defineIonAlertCustomElement } from '@ionic/core/components/ion-alert.js';\nimport { defineCustomElement as defineIonLoadingCustomElement } from '@ionic/core/components/ion-loading.js';\nimport { defineCustomElement as defineIonPickerCustomElement } from '@ionic/core/components/ion-picker.js';\nimport { defineCustomElement as defineIonToastCustomElement } from '@ionic/core/components/ion-toast.js';\nimport { defineCustomElement as defineIonModalCustomElement } from '@ionic/core/components/ion-modal.js';\nimport { defineCustomElement as defineIonPopoverCustomElement } from '@ionic/core/components/ion-popover.js';\nimport { defineOverlayContainer } from '../vue-component-lib/overlays';\nexport const IonActionSheet = /*@__PURE__*/ defineOverlayContainer('ion-action-sheet', defineIonActionSheetCustomElement, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger']);\nexport const IonAlert = /*@__PURE__*/ defineOverlayContainer('ion-alert', defineIonAlertCustomElement, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger']);\nexport const IonLoading = /*@__PURE__*/ defineOverlayContainer('ion-loading', defineIonLoadingCustomElement, ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger']);\nexport const IonPicker = /*@__PURE__*/ defineOverlayContainer('ion-picker', defineIonPickerCustomElement, ['animated', 'backdropDismiss', 'buttons', 'columns', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'showBackdrop', 'trigger']);\nexport const IonToast = /*@__PURE__*/ defineOverlayContainer('ion-toast', defineIonToastCustomElement, ['animated', 'buttons', 'color', 'cssClass', 'duration', 'enterAnimation', 'header', 'htmlAttributes', 'icon', 'isOpen', 'keyboardClose', 'layout', 'leaveAnimation', 'message', 'mode', 'position', 'translucent', 'trigger']);\nexport const IonModal = /*@__PURE__*/ defineOverlayContainer('ion-modal', defineIonModalCustomElement, ['animated', 'backdropBreakpoint', 'backdropDismiss', 'breakpoints', 'canDismiss', 'enterAnimation', 'handle', 'handleBehavior', 'htmlAttributes', 'initialBreakpoint', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'presentingElement', 'showBackdrop', 'trigger'], true);\nexport const IonPopover = /*@__PURE__*/ defineOverlayContainer('ion-popover', defineIonPopoverCustomElement, ['alignment', 'animated', 'arrow', 'backdropDismiss', 'component', 'componentProps', 'dismissOnSelect', 'enterAnimation', 'event', 'htmlAttributes', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'reference', 'showBackdrop', 'side', 'size', 'translucent', 'trigger', 'triggerAction']);\n//# sourceMappingURL=Overlays.js.map","import { modalController as modalCtrl, popoverController as popoverCtrl, alertController as alertCtrl, actionSheetController as actionSheetCtrl, loadingController as loadingCtrl, pickerController as pickerCtrl, toastController as toastCtrl, } from \"@ionic/core/components\";\nimport { defineCustomElement as defineIonActionSheetCustomElement } from \"@ionic/core/components/ion-action-sheet.js\";\nimport { defineCustomElement as defineIonAlertCustomElement } from \"@ionic/core/components/ion-alert.js\";\nimport { defineCustomElement as defineIonLoadingCustomElement } from \"@ionic/core/components/ion-loading.js\";\nimport { defineCustomElement as defineIonModalCustomElement } from \"@ionic/core/components/ion-modal.js\";\nimport { defineCustomElement as defineIonPickerCustomElement } from \"@ionic/core/components/ion-picker.js\";\nimport { defineCustomElement as defineIonPopoverCustomElement } from \"@ionic/core/components/ion-popover.js\";\nimport { defineCustomElement as defineIonToastCustomElement } from \"@ionic/core/components/ion-toast.js\";\nimport { VueDelegate } from \"./framework-delegate\";\n// TODO(FW-2969): types\n/**\n * Wrap the controllers export from @ionic/core\n * register the underlying Web Component and\n * (optionally) provide a framework delegate.\n */\nconst createController = (defineCustomElement, oldController, useDelegate = false) => {\n const delegate = useDelegate ? VueDelegate() : undefined;\n const oldCreate = oldController.create.bind(oldController);\n oldController.create = (options) => {\n defineCustomElement();\n return oldCreate(Object.assign(Object.assign({}, options), { delegate }));\n };\n return oldController;\n};\nconst modalController = /*@__PURE__*/ createController(defineIonModalCustomElement, modalCtrl, true);\nconst popoverController = /*@__PURE__*/ createController(defineIonPopoverCustomElement, popoverCtrl, true);\nconst alertController = /*@__PURE__*/ createController(defineIonAlertCustomElement, alertCtrl);\nconst actionSheetController = /*@__PURE__*/ createController(defineIonActionSheetCustomElement, actionSheetCtrl);\nconst loadingController = /*@__PURE__*/ createController(defineIonLoadingCustomElement, loadingCtrl);\nconst pickerController = /*@__PURE__*/ createController(defineIonPickerCustomElement, pickerCtrl);\nconst toastController = /*@__PURE__*/ createController(defineIonToastCustomElement, toastCtrl);\nexport { modalController, popoverController, alertController, actionSheetController, loadingController, pickerController, toastController, };\n//# sourceMappingURL=controllers.js.map"],"names":["defineIonAccordion","defineIonAccordionGroup","defineIonAvatar","defineIonBackdrop","defineIonBadge","defineIonBreadcrumb","defineIonBreadcrumbs","defineIonButton","defineIonButtons","defineIonCard","defineIonCardContent","defineIonCardHeader","defineIonCardSubtitle","defineIonCardTitle","defineIonCheckbox","defineIonChip","defineIonCol","defineIonContent","defineIonDatetime","defineIonDatetimeButton","defineIonFab","defineIonFabButton","defineIonFabList","defineIonFooter","defineIonGrid","defineIonHeader","defineIonImg","defineIonInfiniteScroll","defineIonInfiniteScrollContent","defineIonInput","defineIonItem","defineIonItemDivider","defineIonItemGroup","defineIonItemOption","defineIonItemOptions","defineIonItemSliding","defineIonLabel","defineIonList","defineIonListHeader","defineIonMenu","defineIonMenuButton","defineIonMenuToggle","defineIonNavLink","defineIonNote","defineIonProgressBar","defineIonRadio","defineIonRadioGroup","defineIonRange","defineIonRefresher","defineIonRefresherContent","defineIonReorder","defineIonReorderGroup","defineIonRippleEffect","defineIonRow","defineIonSearchbar","defineIonSegment","defineIonSegmentButton","defineIonSelect","defineIonSelectOption","defineIonSkeletonText","defineIonSpinner","defineIonSplitPane","defineIonText","defineIonTextarea","defineIonThumbnail","defineIonTitle","defineIonToggle","defineIonToolbar","defineCustomElement","EMPTY_PROP","DEFAULT_EMPTY_PROP","defineIonActionSheetCustomElement","defineIonAlertCustomElement","defineIonLoadingCustomElement","defineIonPickerCustomElement","defineIonToastCustomElement","defineIonModalCustomElement","defineIonPopoverCustomElement","modalCtrl","popoverCtrl","alertCtrl","actionSheetCtrl","loadingCtrl","pickerCtrl","toastCtrl"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../dist-transpiled/vue-component-lib/utils.js","../dist-transpiled/proxies.js","../dist-transpiled/hooks/back-button.js","../dist-transpiled/hooks/keyboard.js","../dist-transpiled/utils.js","../dist-transpiled/hooks/lifecycle.js","../dist-transpiled/hooks/router.js","../dist-transpiled/ionic-vue.js","../dist-transpiled/components/IonBackButton.js","../dist-transpiled/components/IonPage.js","../dist-transpiled/components/IonRouterOutlet.js","../dist-transpiled/components/IonTabButton.js","../dist-transpiled/components/IonTabs.js","../dist-transpiled/components/IonTabBar.js","../dist-transpiled/components/IonApp.js","../dist-transpiled/framework-delegate.js","../dist-transpiled/components/IonNav.js","../dist-transpiled/components/IonIcon.js","../dist-transpiled/vue-component-lib/overlays.js","../dist-transpiled/components/Overlays.js","../dist-transpiled/controllers.js"],"sourcesContent":["// @ts-nocheck\n// It's easier and safer for Volar to disable typechecking and let the return type inference do its job.\nimport { defineComponent, getCurrentInstance, h, inject, ref } from 'vue';\nconst UPDATE_VALUE_EVENT = 'update:modelValue';\nconst MODEL_VALUE = 'modelValue';\nconst ROUTER_LINK_VALUE = 'routerLink';\nconst NAV_MANAGER = 'navManager';\nconst ROUTER_PROP_PREFIX = 'router';\nconst ARIA_PROP_PREFIX = 'aria';\n/**\n * Starting in Vue 3.1.0, all properties are\n * added as keys to the props object, even if\n * they are not being used. In order to correctly\n * account for both value props and v-model props,\n * we need to check if the key exists for Vue <3.1.0\n * and then check if it is not undefined for Vue >= 3.1.0.\n * See https://github.com/vuejs/vue-next/issues/3889\n */\nconst EMPTY_PROP = Symbol();\nconst DEFAULT_EMPTY_PROP = { default: EMPTY_PROP };\nconst getComponentClasses = (classes) => {\n return (classes === null || classes === void 0 ? void 0 : classes.split(' ')) || [];\n};\nconst getElementClasses = (ref, componentClasses, defaultClasses = []) => {\n var _a;\n return [...Array.from(((_a = ref.value) === null || _a === void 0 ? void 0 : _a.classList) || []), ...defaultClasses].filter((c, i, self) => !componentClasses.has(c) && self.indexOf(c) === i);\n};\n/**\n * Create a callback to define a Vue component wrapper around a Web Component.\n *\n * @prop name - The component tag name (i.e. `ion-button`)\n * @prop componentProps - An array of properties on the\n * component. These usually match up with the @Prop definitions\n * in each component's TSX file.\n * @prop customElement - An option custom element instance to pass\n * to customElements.define. Only set if `includeImportCustomElements: true` in your config.\n * @prop modelProp - The prop that v-model binds to (i.e. value)\n * @prop modelUpdateEvent - The event that is fired from your Web Component when the value changes (i.e. ionChange)\n * @prop externalModelUpdateEvent - The external event to fire from your Vue component when modelUpdateEvent fires. This is used for ensuring that v-model references have been\n * correctly updated when a user's event callback fires.\n */\nexport const defineContainer = (name, defineCustomElement, componentProps = [], modelProp, modelUpdateEvent, externalModelUpdateEvent) => {\n /**\n * Create a Vue component wrapper around a Web Component.\n * Note: The `props` here are not all properties on a component.\n * They refer to whatever properties are set on an instance of a component.\n */\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const Container = defineComponent((props, { attrs, slots, emit }) => {\n var _a;\n let modelPropValue = props[modelProp];\n const containerRef = ref();\n const classes = new Set(getComponentClasses(attrs.class));\n const onVnodeBeforeMount = (vnode) => {\n // Add a listener to tell Vue to update the v-model\n if (vnode.el) {\n const eventsNames = Array.isArray(modelUpdateEvent) ? modelUpdateEvent : [modelUpdateEvent];\n eventsNames.forEach((eventName) => {\n vnode.el.addEventListener(eventName.toLowerCase(), (e) => {\n modelPropValue = (e === null || e === void 0 ? void 0 : e.target)[modelProp];\n emit(UPDATE_VALUE_EVENT, modelPropValue);\n /**\n * We need to emit the change event here\n * rather than on the web component to ensure\n * that any v-model bindings have been updated.\n * Otherwise, the developer will listen on the\n * native web component, but the v-model will\n * not have been updated yet.\n */\n if (externalModelUpdateEvent) {\n emit(externalModelUpdateEvent, e);\n }\n });\n });\n }\n };\n const currentInstance = getCurrentInstance();\n const hasRouter = (_a = currentInstance === null || currentInstance === void 0 ? void 0 : currentInstance.appContext) === null || _a === void 0 ? void 0 : _a.provides[NAV_MANAGER];\n const navManager = hasRouter ? inject(NAV_MANAGER) : undefined;\n const handleRouterLink = (ev) => {\n const { routerLink } = props;\n if (routerLink === EMPTY_PROP)\n return;\n if (navManager !== undefined) {\n let navigationPayload = { event: ev };\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && key.startsWith(ROUTER_PROP_PREFIX) && value !== EMPTY_PROP) {\n navigationPayload[key] = value;\n }\n }\n navManager.navigate(navigationPayload);\n }\n else {\n console.warn('Tried to navigate, but no router was found. Make sure you have mounted Vue Router.');\n }\n };\n return () => {\n modelPropValue = props[modelProp];\n getComponentClasses(attrs.class).forEach((value) => {\n classes.add(value);\n });\n const oldClick = props.onClick;\n const handleClick = (ev) => {\n if (oldClick !== undefined) {\n oldClick(ev);\n }\n if (!ev.defaultPrevented) {\n handleRouterLink(ev);\n }\n };\n let propsToAdd = {\n ref: containerRef,\n class: getElementClasses(containerRef, classes),\n onClick: handleClick,\n onVnodeBeforeMount: modelUpdateEvent ? onVnodeBeforeMount : undefined,\n };\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if ((props.hasOwnProperty(key) && value !== EMPTY_PROP) || key.startsWith(ARIA_PROP_PREFIX)) {\n propsToAdd[key] = value;\n }\n }\n if (modelProp) {\n /**\n * If form value property was set using v-model\n * then we should use that value.\n * Otherwise, check to see if form value property\n * was set as a static value (i.e. no v-model).\n */\n if (props[MODEL_VALUE] !== EMPTY_PROP) {\n propsToAdd = Object.assign(Object.assign({}, propsToAdd), { [modelProp]: props[MODEL_VALUE] });\n }\n else if (modelPropValue !== EMPTY_PROP) {\n propsToAdd = Object.assign(Object.assign({}, propsToAdd), { [modelProp]: modelPropValue });\n }\n }\n return h(name, propsToAdd, slots.default && slots.default());\n };\n });\n if (typeof Container !== 'function') {\n Container.name = name;\n Container.props = {\n [ROUTER_LINK_VALUE]: DEFAULT_EMPTY_PROP,\n };\n componentProps.forEach((componentProp) => {\n Container.props[componentProp] = DEFAULT_EMPTY_PROP;\n });\n if (modelProp) {\n Container.props[MODEL_VALUE] = DEFAULT_EMPTY_PROP;\n Container.emits = [UPDATE_VALUE_EVENT, externalModelUpdateEvent];\n }\n }\n return Container;\n};\n//# sourceMappingURL=utils.js.map","/* eslint-disable */\n/* tslint:disable */\n/* auto-generated vue proxies */\nimport { defineContainer } from './vue-component-lib/utils';\nimport { defineCustomElement as defineIonAccordion } from '@ionic/core/components/ion-accordion.js';\nimport { defineCustomElement as defineIonAccordionGroup } from '@ionic/core/components/ion-accordion-group.js';\nimport { defineCustomElement as defineIonAvatar } from '@ionic/core/components/ion-avatar.js';\nimport { defineCustomElement as defineIonBackdrop } from '@ionic/core/components/ion-backdrop.js';\nimport { defineCustomElement as defineIonBadge } from '@ionic/core/components/ion-badge.js';\nimport { defineCustomElement as defineIonBreadcrumb } from '@ionic/core/components/ion-breadcrumb.js';\nimport { defineCustomElement as defineIonBreadcrumbs } from '@ionic/core/components/ion-breadcrumbs.js';\nimport { defineCustomElement as defineIonButton } from '@ionic/core/components/ion-button.js';\nimport { defineCustomElement as defineIonButtons } from '@ionic/core/components/ion-buttons.js';\nimport { defineCustomElement as defineIonCard } from '@ionic/core/components/ion-card.js';\nimport { defineCustomElement as defineIonCardContent } from '@ionic/core/components/ion-card-content.js';\nimport { defineCustomElement as defineIonCardHeader } from '@ionic/core/components/ion-card-header.js';\nimport { defineCustomElement as defineIonCardSubtitle } from '@ionic/core/components/ion-card-subtitle.js';\nimport { defineCustomElement as defineIonCardTitle } from '@ionic/core/components/ion-card-title.js';\nimport { defineCustomElement as defineIonCheckbox } from '@ionic/core/components/ion-checkbox.js';\nimport { defineCustomElement as defineIonChip } from '@ionic/core/components/ion-chip.js';\nimport { defineCustomElement as defineIonCol } from '@ionic/core/components/ion-col.js';\nimport { defineCustomElement as defineIonContent } from '@ionic/core/components/ion-content.js';\nimport { defineCustomElement as defineIonDatetime } from '@ionic/core/components/ion-datetime.js';\nimport { defineCustomElement as defineIonDatetimeButton } from '@ionic/core/components/ion-datetime-button.js';\nimport { defineCustomElement as defineIonFab } from '@ionic/core/components/ion-fab.js';\nimport { defineCustomElement as defineIonFabButton } from '@ionic/core/components/ion-fab-button.js';\nimport { defineCustomElement as defineIonFabList } from '@ionic/core/components/ion-fab-list.js';\nimport { defineCustomElement as defineIonFooter } from '@ionic/core/components/ion-footer.js';\nimport { defineCustomElement as defineIonGrid } from '@ionic/core/components/ion-grid.js';\nimport { defineCustomElement as defineIonHeader } from '@ionic/core/components/ion-header.js';\nimport { defineCustomElement as defineIonImg } from '@ionic/core/components/ion-img.js';\nimport { defineCustomElement as defineIonInfiniteScroll } from '@ionic/core/components/ion-infinite-scroll.js';\nimport { defineCustomElement as defineIonInfiniteScrollContent } from '@ionic/core/components/ion-infinite-scroll-content.js';\nimport { defineCustomElement as defineIonInput } from '@ionic/core/components/ion-input.js';\nimport { defineCustomElement as defineIonItem } from '@ionic/core/components/ion-item.js';\nimport { defineCustomElement as defineIonItemDivider } from '@ionic/core/components/ion-item-divider.js';\nimport { defineCustomElement as defineIonItemGroup } from '@ionic/core/components/ion-item-group.js';\nimport { defineCustomElement as defineIonItemOption } from '@ionic/core/components/ion-item-option.js';\nimport { defineCustomElement as defineIonItemOptions } from '@ionic/core/components/ion-item-options.js';\nimport { defineCustomElement as defineIonItemSliding } from '@ionic/core/components/ion-item-sliding.js';\nimport { defineCustomElement as defineIonLabel } from '@ionic/core/components/ion-label.js';\nimport { defineCustomElement as defineIonList } from '@ionic/core/components/ion-list.js';\nimport { defineCustomElement as defineIonListHeader } from '@ionic/core/components/ion-list-header.js';\nimport { defineCustomElement as defineIonMenu } from '@ionic/core/components/ion-menu.js';\nimport { defineCustomElement as defineIonMenuButton } from '@ionic/core/components/ion-menu-button.js';\nimport { defineCustomElement as defineIonMenuToggle } from '@ionic/core/components/ion-menu-toggle.js';\nimport { defineCustomElement as defineIonNav } from '@ionic/core/components/ion-nav.js';\nimport { defineCustomElement as defineIonNavLink } from '@ionic/core/components/ion-nav-link.js';\nimport { defineCustomElement as defineIonNote } from '@ionic/core/components/ion-note.js';\nimport { defineCustomElement as defineIonProgressBar } from '@ionic/core/components/ion-progress-bar.js';\nimport { defineCustomElement as defineIonRadio } from '@ionic/core/components/ion-radio.js';\nimport { defineCustomElement as defineIonRadioGroup } from '@ionic/core/components/ion-radio-group.js';\nimport { defineCustomElement as defineIonRange } from '@ionic/core/components/ion-range.js';\nimport { defineCustomElement as defineIonRefresher } from '@ionic/core/components/ion-refresher.js';\nimport { defineCustomElement as defineIonRefresherContent } from '@ionic/core/components/ion-refresher-content.js';\nimport { defineCustomElement as defineIonReorder } from '@ionic/core/components/ion-reorder.js';\nimport { defineCustomElement as defineIonReorderGroup } from '@ionic/core/components/ion-reorder-group.js';\nimport { defineCustomElement as defineIonRippleEffect } from '@ionic/core/components/ion-ripple-effect.js';\nimport { defineCustomElement as defineIonRow } from '@ionic/core/components/ion-row.js';\nimport { defineCustomElement as defineIonSearchbar } from '@ionic/core/components/ion-searchbar.js';\nimport { defineCustomElement as defineIonSegment } from '@ionic/core/components/ion-segment.js';\nimport { defineCustomElement as defineIonSegmentButton } from '@ionic/core/components/ion-segment-button.js';\nimport { defineCustomElement as defineIonSelect } from '@ionic/core/components/ion-select.js';\nimport { defineCustomElement as defineIonSelectOption } from '@ionic/core/components/ion-select-option.js';\nimport { defineCustomElement as defineIonSkeletonText } from '@ionic/core/components/ion-skeleton-text.js';\nimport { defineCustomElement as defineIonSpinner } from '@ionic/core/components/ion-spinner.js';\nimport { defineCustomElement as defineIonSplitPane } from '@ionic/core/components/ion-split-pane.js';\nimport { defineCustomElement as defineIonText } from '@ionic/core/components/ion-text.js';\nimport { defineCustomElement as defineIonTextarea } from '@ionic/core/components/ion-textarea.js';\nimport { defineCustomElement as defineIonThumbnail } from '@ionic/core/components/ion-thumbnail.js';\nimport { defineCustomElement as defineIonTitle } from '@ionic/core/components/ion-title.js';\nimport { defineCustomElement as defineIonToggle } from '@ionic/core/components/ion-toggle.js';\nimport { defineCustomElement as defineIonToolbar } from '@ionic/core/components/ion-toolbar.js';\nexport const IonAccordion = /*@__PURE__*/ defineContainer('ion-accordion', defineIonAccordion, [\n 'value',\n 'disabled',\n 'readonly',\n 'toggleIcon',\n 'toggleIconSlot'\n]);\nexport const IonAccordionGroup = /*@__PURE__*/ defineContainer('ion-accordion-group', defineIonAccordionGroup, [\n 'animated',\n 'multiple',\n 'value',\n 'disabled',\n 'readonly',\n 'expand',\n 'ionChange',\n 'ionValueChange'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonAvatar = /*@__PURE__*/ defineContainer('ion-avatar', defineIonAvatar);\nexport const IonBackdrop = /*@__PURE__*/ defineContainer('ion-backdrop', defineIonBackdrop, [\n 'visible',\n 'tappable',\n 'stopPropagation',\n 'ionBackdropTap'\n]);\nexport const IonBadge = /*@__PURE__*/ defineContainer('ion-badge', defineIonBadge, [\n 'color'\n]);\nexport const IonBreadcrumb = /*@__PURE__*/ defineContainer('ion-breadcrumb', defineIonBreadcrumb, [\n 'collapsed',\n 'last',\n 'showCollapsedIndicator',\n 'color',\n 'active',\n 'disabled',\n 'download',\n 'href',\n 'rel',\n 'separator',\n 'target',\n 'routerDirection',\n 'routerAnimation',\n 'ionFocus',\n 'ionBlur',\n 'collapsedClick'\n]);\nexport const IonBreadcrumbs = /*@__PURE__*/ defineContainer('ion-breadcrumbs', defineIonBreadcrumbs, [\n 'color',\n 'maxItems',\n 'itemsBeforeCollapse',\n 'itemsAfterCollapse',\n 'ionCollapsedClick'\n]);\nexport const IonButton = /*@__PURE__*/ defineContainer('ion-button', defineIonButton, [\n 'color',\n 'buttonType',\n 'disabled',\n 'expand',\n 'fill',\n 'routerDirection',\n 'routerAnimation',\n 'download',\n 'href',\n 'rel',\n 'shape',\n 'size',\n 'strong',\n 'target',\n 'type',\n 'form',\n 'ionFocus',\n 'ionBlur'\n]);\nexport const IonButtons = /*@__PURE__*/ defineContainer('ion-buttons', defineIonButtons, [\n 'collapse'\n]);\nexport const IonCard = /*@__PURE__*/ defineContainer('ion-card', defineIonCard, [\n 'color',\n 'button',\n 'type',\n 'disabled',\n 'download',\n 'href',\n 'rel',\n 'routerDirection',\n 'routerAnimation',\n 'target'\n]);\nexport const IonCardContent = /*@__PURE__*/ defineContainer('ion-card-content', defineIonCardContent);\nexport const IonCardHeader = /*@__PURE__*/ defineContainer('ion-card-header', defineIonCardHeader, [\n 'color',\n 'translucent'\n]);\nexport const IonCardSubtitle = /*@__PURE__*/ defineContainer('ion-card-subtitle', defineIonCardSubtitle, [\n 'color'\n]);\nexport const IonCardTitle = /*@__PURE__*/ defineContainer('ion-card-title', defineIonCardTitle, [\n 'color'\n]);\nexport const IonCheckbox = /*@__PURE__*/ defineContainer('ion-checkbox', defineIonCheckbox, [\n 'color',\n 'name',\n 'checked',\n 'indeterminate',\n 'disabled',\n 'value',\n 'labelPlacement',\n 'justify',\n 'legacy',\n 'ionChange',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle'\n], 'checked', 'v-ion-change', 'ionChange');\nexport const IonChip = /*@__PURE__*/ defineContainer('ion-chip', defineIonChip, [\n 'color',\n 'outline',\n 'disabled'\n]);\nexport const IonCol = /*@__PURE__*/ defineContainer('ion-col', defineIonCol, [\n 'offset',\n 'offsetXs',\n 'offsetSm',\n 'offsetMd',\n 'offsetLg',\n 'offsetXl',\n 'pull',\n 'pullXs',\n 'pullSm',\n 'pullMd',\n 'pullLg',\n 'pullXl',\n 'push',\n 'pushXs',\n 'pushSm',\n 'pushMd',\n 'pushLg',\n 'pushXl',\n 'size',\n 'sizeXs',\n 'sizeSm',\n 'sizeMd',\n 'sizeLg',\n 'sizeXl'\n]);\nexport const IonContent = /*@__PURE__*/ defineContainer('ion-content', defineIonContent, [\n 'color',\n 'fullscreen',\n 'forceOverscroll',\n 'scrollX',\n 'scrollY',\n 'scrollEvents',\n 'ionScrollStart',\n 'ionScroll',\n 'ionScrollEnd'\n]);\nexport const IonDatetime = /*@__PURE__*/ defineContainer('ion-datetime', defineIonDatetime, [\n 'color',\n 'name',\n 'disabled',\n 'readonly',\n 'isDateEnabled',\n 'min',\n 'max',\n 'presentation',\n 'cancelText',\n 'doneText',\n 'clearText',\n 'yearValues',\n 'monthValues',\n 'dayValues',\n 'hourValues',\n 'minuteValues',\n 'locale',\n 'firstDayOfWeek',\n 'titleSelectedDatesFormatter',\n 'multiple',\n 'highlightedDates',\n 'value',\n 'showDefaultTitle',\n 'showDefaultButtons',\n 'showClearButton',\n 'showDefaultTimeLabel',\n 'hourCycle',\n 'size',\n 'preferWheel',\n 'ionCancel',\n 'ionChange',\n 'ionValueChange',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle',\n 'ionRender'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonDatetimeButton = /*@__PURE__*/ defineContainer('ion-datetime-button', defineIonDatetimeButton, [\n 'color',\n 'disabled',\n 'datetime'\n]);\nexport const IonFab = /*@__PURE__*/ defineContainer('ion-fab', defineIonFab, [\n 'horizontal',\n 'vertical',\n 'edge',\n 'activated'\n]);\nexport const IonFabButton = /*@__PURE__*/ defineContainer('ion-fab-button', defineIonFabButton, [\n 'color',\n 'activated',\n 'disabled',\n 'download',\n 'href',\n 'rel',\n 'routerDirection',\n 'routerAnimation',\n 'target',\n 'show',\n 'translucent',\n 'type',\n 'size',\n 'closeIcon',\n 'ionFocus',\n 'ionBlur'\n]);\nexport const IonFabList = /*@__PURE__*/ defineContainer('ion-fab-list', defineIonFabList, [\n 'activated',\n 'side'\n]);\nexport const IonFooter = /*@__PURE__*/ defineContainer('ion-footer', defineIonFooter, [\n 'collapse',\n 'translucent'\n]);\nexport const IonGrid = /*@__PURE__*/ defineContainer('ion-grid', defineIonGrid, [\n 'fixed'\n]);\nexport const IonHeader = /*@__PURE__*/ defineContainer('ion-header', defineIonHeader, [\n 'collapse',\n 'translucent'\n]);\nexport const IonImg = /*@__PURE__*/ defineContainer('ion-img', defineIonImg, [\n 'alt',\n 'src',\n 'ionImgWillLoad',\n 'ionImgDidLoad',\n 'ionError'\n]);\nexport const IonInfiniteScroll = /*@__PURE__*/ defineContainer('ion-infinite-scroll', defineIonInfiniteScroll, [\n 'threshold',\n 'disabled',\n 'position',\n 'ionInfinite'\n]);\nexport const IonInfiniteScrollContent = /*@__PURE__*/ defineContainer('ion-infinite-scroll-content', defineIonInfiniteScrollContent, [\n 'loadingSpinner',\n 'loadingText'\n]);\nexport const IonInput = /*@__PURE__*/ defineContainer('ion-input', defineIonInput, [\n 'color',\n 'accept',\n 'autocapitalize',\n 'autocomplete',\n 'autocorrect',\n 'autofocus',\n 'clearInput',\n 'clearOnEdit',\n 'counter',\n 'counterFormatter',\n 'debounce',\n 'disabled',\n 'enterkeyhint',\n 'errorText',\n 'fill',\n 'inputmode',\n 'helperText',\n 'label',\n 'labelPlacement',\n 'legacy',\n 'max',\n 'maxlength',\n 'min',\n 'minlength',\n 'multiple',\n 'name',\n 'pattern',\n 'placeholder',\n 'readonly',\n 'required',\n 'shape',\n 'spellcheck',\n 'step',\n 'size',\n 'type',\n 'value',\n 'ionInput',\n 'ionChange',\n 'ionBlur',\n 'ionFocus',\n 'ionStyle'\n], 'value', 'v-ion-input', 'ionInput');\nexport const IonItem = /*@__PURE__*/ defineContainer('ion-item', defineIonItem, [\n 'color',\n 'button',\n 'detail',\n 'detailIcon',\n 'disabled',\n 'download',\n 'fill',\n 'shape',\n 'href',\n 'rel',\n 'lines',\n 'counter',\n 'routerAnimation',\n 'routerDirection',\n 'target',\n 'type',\n 'counterFormatter'\n]);\nexport const IonItemDivider = /*@__PURE__*/ defineContainer('ion-item-divider', defineIonItemDivider, [\n 'color',\n 'sticky'\n]);\nexport const IonItemGroup = /*@__PURE__*/ defineContainer('ion-item-group', defineIonItemGroup);\nexport const IonItemOption = /*@__PURE__*/ defineContainer('ion-item-option', defineIonItemOption, [\n 'color',\n 'disabled',\n 'download',\n 'expandable',\n 'href',\n 'rel',\n 'target',\n 'type'\n]);\nexport const IonItemOptions = /*@__PURE__*/ defineContainer('ion-item-options', defineIonItemOptions, [\n 'side',\n 'ionSwipe'\n]);\nexport const IonItemSliding = /*@__PURE__*/ defineContainer('ion-item-sliding', defineIonItemSliding, [\n 'disabled',\n 'ionDrag'\n]);\nexport const IonLabel = /*@__PURE__*/ defineContainer('ion-label', defineIonLabel, [\n 'color',\n 'position',\n 'ionColor',\n 'ionStyle'\n]);\nexport const IonList = /*@__PURE__*/ defineContainer('ion-list', defineIonList, [\n 'lines',\n 'inset'\n]);\nexport const IonListHeader = /*@__PURE__*/ defineContainer('ion-list-header', defineIonListHeader, [\n 'color',\n 'lines'\n]);\nexport const IonMenu = /*@__PURE__*/ defineContainer('ion-menu', defineIonMenu, [\n 'contentId',\n 'menuId',\n 'type',\n 'disabled',\n 'side',\n 'swipeGesture',\n 'maxEdgeStart',\n 'ionWillOpen',\n 'ionWillClose',\n 'ionDidOpen',\n 'ionDidClose',\n 'ionMenuChange'\n]);\nexport const IonMenuButton = /*@__PURE__*/ defineContainer('ion-menu-button', defineIonMenuButton, [\n 'color',\n 'disabled',\n 'menu',\n 'autoHide',\n 'type'\n]);\nexport const IonMenuToggle = /*@__PURE__*/ defineContainer('ion-menu-toggle', defineIonMenuToggle, [\n 'menu',\n 'autoHide'\n]);\nexport const IonNav = /*@__PURE__*/ defineContainer('ion-nav', defineIonNav, [\n 'delegate',\n 'swipeGesture',\n 'animated',\n 'animation',\n 'rootParams',\n 'root',\n 'ionNavWillLoad',\n 'ionNavWillChange',\n 'ionNavDidChange'\n]);\nexport const IonNavLink = /*@__PURE__*/ defineContainer('ion-nav-link', defineIonNavLink, [\n 'component',\n 'componentProps',\n 'routerDirection',\n 'routerAnimation'\n]);\nexport const IonNote = /*@__PURE__*/ defineContainer('ion-note', defineIonNote, [\n 'color'\n]);\nexport const IonProgressBar = /*@__PURE__*/ defineContainer('ion-progress-bar', defineIonProgressBar, [\n 'type',\n 'reversed',\n 'value',\n 'buffer',\n 'color'\n]);\nexport const IonRadio = /*@__PURE__*/ defineContainer('ion-radio', defineIonRadio, [\n 'color',\n 'name',\n 'disabled',\n 'value',\n 'labelPlacement',\n 'legacy',\n 'justify',\n 'ionStyle',\n 'ionFocus',\n 'ionBlur'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonRadioGroup = /*@__PURE__*/ defineContainer('ion-radio-group', defineIonRadioGroup, [\n 'allowEmptySelection',\n 'name',\n 'value',\n 'ionChange',\n 'ionValueChange'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonRange = /*@__PURE__*/ defineContainer('ion-range', defineIonRange, [\n 'color',\n 'debounce',\n 'name',\n 'label',\n 'dualKnobs',\n 'min',\n 'max',\n 'pin',\n 'pinFormatter',\n 'snaps',\n 'step',\n 'ticks',\n 'activeBarStart',\n 'disabled',\n 'value',\n 'labelPlacement',\n 'legacy',\n 'ionChange',\n 'ionInput',\n 'ionStyle',\n 'ionFocus',\n 'ionBlur',\n 'ionKnobMoveStart',\n 'ionKnobMoveEnd'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonRefresher = /*@__PURE__*/ defineContainer('ion-refresher', defineIonRefresher, [\n 'pullMin',\n 'pullMax',\n 'closeDuration',\n 'snapbackDuration',\n 'pullFactor',\n 'disabled',\n 'ionRefresh',\n 'ionPull',\n 'ionStart'\n]);\nexport const IonRefresherContent = /*@__PURE__*/ defineContainer('ion-refresher-content', defineIonRefresherContent, [\n 'pullingIcon',\n 'pullingText',\n 'refreshingSpinner',\n 'refreshingText'\n]);\nexport const IonReorder = /*@__PURE__*/ defineContainer('ion-reorder', defineIonReorder);\nexport const IonReorderGroup = /*@__PURE__*/ defineContainer('ion-reorder-group', defineIonReorderGroup, [\n 'disabled',\n 'ionItemReorder'\n]);\nexport const IonRippleEffect = /*@__PURE__*/ defineContainer('ion-ripple-effect', defineIonRippleEffect, [\n 'type'\n]);\nexport const IonRow = /*@__PURE__*/ defineContainer('ion-row', defineIonRow);\nexport const IonSearchbar = /*@__PURE__*/ defineContainer('ion-searchbar', defineIonSearchbar, [\n 'color',\n 'animated',\n 'autocomplete',\n 'autocorrect',\n 'cancelButtonIcon',\n 'cancelButtonText',\n 'clearIcon',\n 'debounce',\n 'disabled',\n 'inputmode',\n 'enterkeyhint',\n 'name',\n 'placeholder',\n 'searchIcon',\n 'showCancelButton',\n 'showClearButton',\n 'spellcheck',\n 'type',\n 'value',\n 'ionInput',\n 'ionChange',\n 'ionCancel',\n 'ionClear',\n 'ionBlur',\n 'ionFocus',\n 'ionStyle'\n], 'value', 'v-ion-input', 'ionInput');\nexport const IonSegment = /*@__PURE__*/ defineContainer('ion-segment', defineIonSegment, [\n 'color',\n 'disabled',\n 'scrollable',\n 'swipeGesture',\n 'value',\n 'selectOnFocus',\n 'ionChange',\n 'ionSelect',\n 'ionStyle'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonSegmentButton = /*@__PURE__*/ defineContainer('ion-segment-button', defineIonSegmentButton, [\n 'disabled',\n 'layout',\n 'type',\n 'value'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonSelect = /*@__PURE__*/ defineContainer('ion-select', defineIonSelect, [\n 'cancelText',\n 'color',\n 'compareWith',\n 'disabled',\n 'fill',\n 'interface',\n 'interfaceOptions',\n 'justify',\n 'label',\n 'labelPlacement',\n 'legacy',\n 'multiple',\n 'name',\n 'okText',\n 'placeholder',\n 'selectedText',\n 'toggleIcon',\n 'expandedIcon',\n 'shape',\n 'value',\n 'ionChange',\n 'ionCancel',\n 'ionDismiss',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle'\n], 'value', 'v-ion-change', 'ionChange');\nexport const IonSelectOption = /*@__PURE__*/ defineContainer('ion-select-option', defineIonSelectOption, [\n 'disabled',\n 'value'\n]);\nexport const IonSkeletonText = /*@__PURE__*/ defineContainer('ion-skeleton-text', defineIonSkeletonText, [\n 'animated'\n]);\nexport const IonSpinner = /*@__PURE__*/ defineContainer('ion-spinner', defineIonSpinner, [\n 'color',\n 'duration',\n 'name',\n 'paused'\n]);\nexport const IonSplitPane = /*@__PURE__*/ defineContainer('ion-split-pane', defineIonSplitPane, [\n 'contentId',\n 'disabled',\n 'when',\n 'ionSplitPaneVisible'\n]);\nexport const IonText = /*@__PURE__*/ defineContainer('ion-text', defineIonText, [\n 'color'\n]);\nexport const IonTextarea = /*@__PURE__*/ defineContainer('ion-textarea', defineIonTextarea, [\n 'color',\n 'autocapitalize',\n 'autofocus',\n 'clearOnEdit',\n 'debounce',\n 'disabled',\n 'fill',\n 'inputmode',\n 'enterkeyhint',\n 'maxlength',\n 'minlength',\n 'name',\n 'placeholder',\n 'readonly',\n 'required',\n 'spellcheck',\n 'cols',\n 'rows',\n 'wrap',\n 'autoGrow',\n 'value',\n 'counter',\n 'counterFormatter',\n 'errorText',\n 'helperText',\n 'label',\n 'labelPlacement',\n 'legacy',\n 'shape',\n 'ionChange',\n 'ionInput',\n 'ionStyle',\n 'ionBlur',\n 'ionFocus'\n], 'value', 'v-ion-input', 'ionInput');\nexport const IonThumbnail = /*@__PURE__*/ defineContainer('ion-thumbnail', defineIonThumbnail);\nexport const IonTitle = /*@__PURE__*/ defineContainer('ion-title', defineIonTitle, [\n 'color',\n 'size',\n 'ionStyle'\n]);\nexport const IonToggle = /*@__PURE__*/ defineContainer('ion-toggle', defineIonToggle, [\n 'color',\n 'name',\n 'checked',\n 'disabled',\n 'value',\n 'enableOnOffLabels',\n 'labelPlacement',\n 'legacy',\n 'justify',\n 'ionChange',\n 'ionFocus',\n 'ionBlur',\n 'ionStyle'\n], 'checked', 'v-ion-change', 'ionChange');\nexport const IonToolbar = /*@__PURE__*/ defineContainer('ion-toolbar', defineIonToolbar, [\n 'color'\n]);\n//# sourceMappingURL=proxies.js.map","export const useBackButton = (priority, handler) => {\n const callback = (ev) => ev.detail.register(priority, handler);\n const unregister = () => document.removeEventListener(\"ionBackButton\", callback);\n document.addEventListener(\"ionBackButton\", callback);\n return { unregister };\n};\n//# sourceMappingURL=back-button.js.map","import { ref } from \"vue\";\nexport const useKeyboard = () => {\n const isOpen = ref(false);\n const keyboardHeight = ref(0);\n const showCallback = (ev) => {\n isOpen.value = true;\n keyboardHeight.value = ev.detail.keyboardHeight;\n };\n const hideCallback = () => {\n isOpen.value = false;\n keyboardHeight.value = 0;\n };\n const unregister = () => {\n if (typeof window !== \"undefined\") {\n window.removeEventListener(\"ionKeyboardDidShow\", showCallback);\n window.removeEventListener(\"ionKeyboardDidHide\", hideCallback);\n }\n };\n if (typeof window !== \"undefined\") {\n window.addEventListener(\"ionKeyboardDidShow\", showCallback);\n window.addEventListener(\"ionKeyboardDidHide\", hideCallback);\n }\n return {\n isOpen,\n keyboardHeight,\n unregister,\n };\n};\n//# sourceMappingURL=keyboard.js.map","import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, } from \"@ionic/core/components\";\n// TODO(FW-2969): types\nexport var LifecycleHooks;\n(function (LifecycleHooks) {\n LifecycleHooks[\"WillEnter\"] = \"onIonViewWillEnter\";\n LifecycleHooks[\"DidEnter\"] = \"onIonViewDidEnter\";\n LifecycleHooks[\"WillLeave\"] = \"onIonViewWillLeave\";\n LifecycleHooks[\"DidLeave\"] = \"onIonViewDidLeave\";\n})(LifecycleHooks || (LifecycleHooks = {}));\nconst hookNames = {\n [LIFECYCLE_WILL_ENTER]: LifecycleHooks.WillEnter,\n [LIFECYCLE_DID_ENTER]: LifecycleHooks.DidEnter,\n [LIFECYCLE_WILL_LEAVE]: LifecycleHooks.WillLeave,\n [LIFECYCLE_DID_LEAVE]: LifecycleHooks.DidLeave,\n};\nconst ids = { main: 0 };\nexport const generateId = (type = \"main\") => {\n var _a;\n const id = ((_a = ids[type]) !== null && _a !== void 0 ? _a : 0) + 1;\n ids[type] = id;\n return id.toString();\n};\nexport const fireLifecycle = (vueComponent, vueInstance, lifecycle) => {\n if (vueComponent === null || vueComponent === void 0 ? void 0 : vueComponent[lifecycle]) {\n vueComponent[lifecycle].bind(vueInstance === null || vueInstance === void 0 ? void 0 : vueInstance.value)();\n }\n const instance = vueInstance === null || vueInstance === void 0 ? void 0 : vueInstance.value;\n if (instance === null || instance === void 0 ? void 0 : instance[lifecycle]) {\n instance[lifecycle]();\n }\n /**\n * Fire any Composition API\n * Ionic Lifecycle hooks\n */\n if (instance) {\n const hook = hookNames[lifecycle];\n const hooks = instance[hook];\n if (hooks) {\n hooks.forEach((hook) => hook());\n }\n }\n};\nexport const getConfig = () => {\n if (typeof window !== \"undefined\") {\n const Ionic = window.Ionic;\n if (Ionic && Ionic.config) {\n return Ionic.config;\n }\n }\n return null;\n};\n//# sourceMappingURL=utils.js.map","import { getCurrentInstance } from \"vue\";\nimport { LifecycleHooks } from \"../utils\";\n/**\n * Creates an returns a function that\n * can be used to provide a lifecycle hook.\n */\nconst injectHook = (lifecycleType, hook, component) => {\n if (component) {\n // Add to public instance so it is accessible to IonRouterOutlet\n const target = component;\n const hooks = target.proxy[lifecycleType] || (target.proxy[lifecycleType] = []);\n /**\n * Define property on public instances using `setup` syntax in Vue 3.x\n */\n if (target.exposed) {\n target.exposed[lifecycleType] = hooks;\n }\n const wrappedHook = (...args) => {\n if (target.isUnmounted) {\n return;\n }\n return args ? hook(...args) : hook();\n };\n hooks.push(wrappedHook);\n return wrappedHook;\n }\n else {\n console.warn(\"[@ionic/vue]: Ionic Lifecycle Hooks can only be used during execution of setup().\");\n }\n};\nconst createHook = (lifecycle) => {\n return (hook, target = getCurrentInstance()) => injectHook(lifecycle, hook, target);\n};\nexport const onIonViewWillEnter = createHook(LifecycleHooks.WillEnter);\nexport const onIonViewDidEnter = createHook(LifecycleHooks.DidEnter);\nexport const onIonViewWillLeave = createHook(LifecycleHooks.WillLeave);\nexport const onIonViewDidLeave = createHook(LifecycleHooks.DidLeave);\n//# sourceMappingURL=lifecycle.js.map","import { inject } from \"vue\";\n/**\n * Used to navigate within Vue Router\n * while controlling the animation.\n */\nexport const useIonRouter = () => {\n const { canGoBack, goBack, goForward, handleNavigate } = inject(\"navManager\");\n const navigate = (location, routerDirection, routerAction, routerAnimation) => handleNavigate(location, routerAction, routerDirection, routerAnimation);\n const push = (location, routerAnimation) => navigate(location, \"forward\", \"push\", routerAnimation);\n const replace = (location, routerAnimation) => navigate(location, \"root\", \"replace\", routerAnimation);\n const back = (routerAnimation) => goBack(routerAnimation);\n const forward = (routerAnimation) => goForward(routerAnimation);\n return {\n canGoBack,\n push,\n replace,\n back,\n forward,\n navigate,\n };\n};\n//# sourceMappingURL=router.js.map","import { initialize } from \"@ionic/core/components\";\n// TODO(FW-2969): types\n/**\n * We need to make sure that the web component fires an event\n * that will not conflict with the user's @ionChange binding,\n * otherwise the binding's callback will fire before any\n * v-model values have been updated.\n */\nconst toKebabCase = (eventName) => {\n const kebabConvert = (name) => name.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, \"$1-$2\").toLowerCase();\n switch (eventName) {\n case \"ionInput\":\n return \"v-ion-input\";\n case \"ionChange\":\n return \"v-ion-change\";\n default:\n return kebabConvert(eventName);\n }\n};\nconst getHelperFunctions = () => {\n return {\n ael: (el, eventName, cb, opts) => el.addEventListener(toKebabCase(eventName), cb, opts),\n rel: (el, eventName, cb, opts) => el.removeEventListener(toKebabCase(eventName), cb, opts),\n ce: (eventName, opts) => new CustomEvent(toKebabCase(eventName), opts),\n };\n};\nexport const IonicVue = {\n async install(_, config = {}) {\n /**\n * By default Ionic Framework hides elements that\n * are not hydrated, but in the CE build there is no\n * hydration.\n * TODO FW-2797: Remove when all integrations have been\n * migrated to CE build.\n */\n if (typeof document !== \"undefined\") {\n document.documentElement.classList.add(\"ion-ce\");\n }\n const { ael, rel, ce } = getHelperFunctions();\n initialize(Object.assign(Object.assign({}, config), { _ael: ael, _rel: rel, _ce: ce }));\n },\n};\n//# sourceMappingURL=ionic-vue.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-back-button.js\";\nimport { h, inject, defineComponent } from \"vue\";\nexport const IonBackButton = /*@__PURE__*/ defineComponent((_, { attrs, slots }) => {\n defineCustomElement();\n // TODO(FW-2969): type\n const ionRouter = inject(\"navManager\");\n const onClick = () => {\n /**\n * When using ion-back-button outside of\n * a routing context, ionRouter is undefined.\n */\n if (ionRouter === undefined) {\n return;\n }\n const defaultHref = attrs[\"default-href\"] || attrs[\"defaultHref\"];\n const routerAnimation = attrs[\"router-animation\"] || attrs[\"routerAnimation\"];\n ionRouter.handleNavigateBack(defaultHref, routerAnimation);\n };\n return () => {\n return h(\"ion-back-button\", Object.assign({ onClick }, attrs), slots.default && slots.default());\n };\n});\nIonBackButton.name = \"IonBackButton\";\n//# sourceMappingURL=IonBackButton.js.map","import { h, defineComponent } from \"vue\";\nexport const IonPage = /*@__PURE__*/ defineComponent({\n name: \"IonPage\",\n props: {\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n registerIonPage: { type: Function, default: () => { } },\n },\n mounted() {\n this.$props.registerIonPage(this.$refs.ionPage);\n },\n setup(_, { attrs, slots }) {\n return () => {\n return h(\"div\", Object.assign(Object.assign({}, attrs), { [\"class\"]: \"ion-page\", ref: \"ionPage\" }), slots.default && slots.default());\n };\n },\n});\n//# sourceMappingURL=IonPage.js.map","import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, } from \"@ionic/core/components\";\nimport { defineCustomElement } from \"@ionic/core/components/ion-router-outlet.js\";\nimport { h, defineComponent, ref, computed, inject, provide, watch, shallowRef, onUnmounted, } from \"vue\";\nimport { matchedRouteKey, routeLocationKey, useRoute } from \"vue-router\";\nimport { fireLifecycle, generateId, getConfig } from \"../utils\";\n// TODO(FW-2969): types\nconst isViewVisible = (enteringEl) => {\n return (!enteringEl.classList.contains(\"ion-page-hidden\") &&\n !enteringEl.classList.contains(\"ion-page-invisible\"));\n};\nconst viewDepthKey = Symbol(0);\nexport const IonRouterOutlet = /*@__PURE__*/ defineComponent({\n name: \"IonRouterOutlet\",\n setup() {\n defineCustomElement();\n const injectedRoute = inject(routeLocationKey);\n const route = useRoute();\n const depth = inject(viewDepthKey, 0);\n const matchedRouteRef = computed(() => route.matched[depth]);\n let previousMatchedRouteRef;\n let previousMatchedPath;\n provide(viewDepthKey, depth + 1);\n provide(matchedRouteKey, matchedRouteRef);\n const ionRouterOutlet = ref();\n const id = generateId(\"ion-router-outlet\");\n const ionRouter = inject(\"navManager\");\n const viewStacks = inject(\"viewStacks\");\n const components = shallowRef([]);\n let skipTransition = false;\n // The base url for this router outlet\n let parentOutletPath;\n /**\n * Note: Do not listen for matchedRouteRef by itself here\n * as the callback will not fire for parameterized routes (i.e. /page/:id).\n * So going from /page/1 to /page/2 would not fire this callback if we\n * only listened for changes to matchedRouteRef.\n */\n watch(() => [route, matchedRouteRef.value], ([currentRoute, currentMatchedRouteRef]) => {\n /**\n * This callback checks whether or not a router outlet\n * needs to respond to a change in the matched route.\n * It handles a few cases:\n * 1. The matched route is undefined. This means that\n * the matched route is not applicable to this outlet.\n * For example, a /settings route is not applicable\n * to a /tabs/... route.\n *\n * Note: When going back to a tabs outlet from a non-tabs outlet,\n * the tabs outlet should NOT attempt a page transition from the\n * previous tab to the active tab. To do this we compare the current\n * route with the previous route. Unfortunately, we cannot rely on the\n * previous value provided by Vue in the watch callback. This is because\n * when coming back to the tabs context, the previous matched route will\n * be undefined (because nothing in the tabs context matches /settings)\n * but the current matched route will be defined and so a transition\n * will always occur.\n *\n * 2. The matched route is defined and is different than\n * the previously matched route. This is the most\n * common case such as when you go from /page1 to /page2.\n *\n * 3. The matched route is the same but the parameters are different.\n * This is a special case for parameterized routes (i.e. /page/:id).\n * When going from /page/1 to /page/2, the matched route object will\n * be the same, but we still need to perform a page transition. To do this\n * we check if the parameters are different (i.e. 1 vs 2). To avoid enumerating\n * all of the keys in the params object, we check the url path to\n * see if they are different after ensuring we are in a parameterized route.\n */\n if (currentMatchedRouteRef !== undefined) {\n const matchedDifferentRoutes = currentMatchedRouteRef !== previousMatchedRouteRef;\n const matchedDifferentParameterRoutes = currentRoute.matched[currentRoute.matched.length - 1] ===\n currentMatchedRouteRef &&\n currentRoute.path !== previousMatchedPath;\n if (matchedDifferentRoutes || matchedDifferentParameterRoutes) {\n setupViewItem(matchedRouteRef);\n }\n }\n previousMatchedRouteRef = currentMatchedRouteRef;\n previousMatchedPath = currentRoute.path;\n });\n const canStart = () => {\n const config = getConfig();\n const swipeEnabled = config &&\n config.get(\"swipeBackEnabled\", ionRouterOutlet.value.mode === \"ios\");\n if (!swipeEnabled)\n return false;\n const stack = viewStacks.getViewStack(id);\n if (!stack || stack.length <= 1)\n return false;\n /**\n * We only want to outlet of the entering view\n * to respond to this gesture, so check\n * to make sure the view is in the outlet we want.\n */\n const routeInfo = ionRouter.getLeavingRouteInfo();\n const enteringViewItem = viewStacks.findViewItemByRouteInfo({ pathname: routeInfo.pushedByRoute || \"\" }, id);\n return !!enteringViewItem;\n };\n const onStart = async () => {\n const routeInfo = ionRouter.getLeavingRouteInfo();\n const { routerAnimation } = routeInfo;\n const enteringViewItem = viewStacks.findViewItemByRouteInfo({ pathname: routeInfo.pushedByRoute || \"\" }, id);\n const leavingViewItem = viewStacks.findViewItemByRouteInfo(routeInfo, id);\n if (leavingViewItem) {\n let animationBuilder = routerAnimation;\n const enteringEl = enteringViewItem.ionPageElement;\n const leavingEl = leavingViewItem.ionPageElement;\n /**\n * If we are going back from a page that\n * was presented using a custom animation\n * we should default to using that\n * unless the developer explicitly\n * provided another animation.\n */\n const customAnimation = enteringViewItem.routerAnimation;\n if (animationBuilder === undefined && customAnimation !== undefined) {\n animationBuilder = customAnimation;\n }\n leavingViewItem.routerAnimation = animationBuilder;\n await transition(enteringEl, leavingEl, \"back\", ionRouter.canGoBack(2), true, animationBuilder);\n }\n return Promise.resolve();\n };\n const onEnd = (shouldContinue) => {\n if (shouldContinue) {\n skipTransition = true;\n /**\n * Use the same logic as clicking\n * ion-back-button to determine where\n * to go back to.\n */\n ionRouter.handleNavigateBack();\n }\n else {\n /**\n * In the event that the swipe\n * gesture was aborted, we should\n * re-hide the page that was going to enter.\n */\n const routeInfo = ionRouter.getCurrentRouteInfo();\n const enteringViewItem = viewStacks.findViewItemByRouteInfo({ pathname: routeInfo.pushedByRoute || \"\" }, id);\n enteringViewItem.ionPageElement.setAttribute(\"aria-hidden\", \"true\");\n enteringViewItem.ionPageElement.classList.add(\"ion-page-hidden\");\n }\n };\n watch(ionRouterOutlet, () => {\n ionRouterOutlet.value.swipeHandler = {\n canStart,\n onStart,\n onEnd,\n };\n });\n const transition = async (enteringEl, leavingEl, direction, showGoBack, progressAnimation, animationBuilder) => {\n if (skipTransition) {\n skipTransition = false;\n return Promise.resolve(false);\n }\n if (enteringEl === leavingEl) {\n return Promise.resolve(false);\n }\n enteringEl.classList.add(\"ion-page-invisible\");\n const hasRootDirection = direction === undefined || direction === \"root\" || direction === \"none\";\n const result = await ionRouterOutlet.value.commit(enteringEl, leavingEl, {\n /**\n * replace operations result in a direction of none.\n * These typically do not have need animations, so we set\n * the duration to 0. However, if a developer explicitly\n * passes an animationBuilder, we should assume that\n * they want an animation to be played even\n * though it is a replace operation.\n */\n duration: hasRootDirection && animationBuilder === undefined ? 0 : undefined,\n direction,\n showGoBack,\n progressAnimation,\n animationBuilder,\n });\n return result;\n };\n const handlePageTransition = async () => {\n const routeInfo = ionRouter.getCurrentRouteInfo();\n const { routerDirection, routerAction, routerAnimation, prevRouteLastPathname, delta, } = routeInfo;\n const enteringViewItem = viewStacks.findViewItemByRouteInfo(routeInfo, id);\n let leavingViewItem = viewStacks.findLeavingViewItemByRouteInfo(routeInfo, id);\n const enteringEl = enteringViewItem.ionPageElement;\n /**\n * All views that can be transitioned to must have\n * an `<ion-page>` element for transitions and lifecycle\n * methods to work properly.\n */\n if (enteringEl === undefined) {\n console.warn(`[@ionic/vue Warning]: The view you are trying to render for path ${routeInfo.pathname} does not have the required <ion-page> component. Transitions and lifecycle methods may not work as expected.\n\nSee https://ionicframework.com/docs/vue/navigation#ionpage for more information.`);\n }\n if (enteringViewItem === leavingViewItem)\n return;\n if (!leavingViewItem && prevRouteLastPathname) {\n leavingViewItem = viewStacks.findViewItemByPathname(prevRouteLastPathname, id);\n }\n /**\n * If the entering view is already\n * visible, then no transition is needed.\n * This is most common when navigating\n * from a tabs page to a non-tabs page\n * and then back to the tabs page.\n * Even when the tabs context navigated away,\n * the inner tabs page was still active.\n * This also avoids an issue where\n * the previous tabs page is incorrectly\n * unmounted since it would automatically\n * unmount the previous view.\n *\n * This should also only apply to entering and\n * leaving items in the same router outlet (i.e.\n * Tab1 and Tab2), otherwise this will\n * return early for swipe to go back when\n * going from a non-tabs page to a tabs page.\n */\n if (isViewVisible(enteringEl) &&\n (leavingViewItem === null || leavingViewItem === void 0 ? void 0 : leavingViewItem.ionPageElement) !== undefined &&\n !isViewVisible(leavingViewItem.ionPageElement)) {\n return;\n }\n fireLifecycle(enteringViewItem.vueComponent, enteringViewItem.vueComponentRef, LIFECYCLE_WILL_ENTER);\n if ((leavingViewItem === null || leavingViewItem === void 0 ? void 0 : leavingViewItem.ionPageElement) &&\n enteringViewItem !== leavingViewItem) {\n let animationBuilder = routerAnimation;\n const leavingEl = leavingViewItem.ionPageElement;\n fireLifecycle(leavingViewItem.vueComponent, leavingViewItem.vueComponentRef, LIFECYCLE_WILL_LEAVE);\n /**\n * If we are going back from a page that\n * was presented using a custom animation\n * we should default to using that\n * unless the developer explicitly\n * provided another animation.\n */\n const customAnimation = enteringViewItem.routerAnimation;\n if (animationBuilder === undefined &&\n routerDirection === \"back\" &&\n customAnimation !== undefined) {\n animationBuilder = customAnimation;\n }\n leavingViewItem.routerAnimation = animationBuilder;\n await transition(enteringEl, leavingEl, routerDirection, !!routeInfo.pushedByRoute, false, animationBuilder);\n leavingEl.classList.add(\"ion-page-hidden\");\n leavingEl.setAttribute(\"aria-hidden\", \"true\");\n const usingLinearNavigation = viewStacks.size() === 1;\n if (routerAction === \"replace\") {\n leavingViewItem.mount = false;\n leavingViewItem.ionPageElement = undefined;\n leavingViewItem.ionRoute = false;\n }\n else if (!(routerAction === \"push\" && routerDirection === \"forward\")) {\n const shouldLeavingViewBeRemoved = routerDirection !== \"none\" &&\n leavingViewItem &&\n enteringViewItem !== leavingViewItem;\n if (shouldLeavingViewBeRemoved) {\n leavingViewItem.mount = false;\n leavingViewItem.ionPageElement = undefined;\n leavingViewItem.ionRoute = false;\n /**\n * router.go() expects navigation to be\n * linear. If an app is using multiple stacks then\n * it is not using linear navigation. As a result, router.go()\n * will not give the results that developers are expecting.\n */\n if (usingLinearNavigation) {\n viewStacks.unmountLeavingViews(id, enteringViewItem, delta);\n }\n }\n }\n else if (usingLinearNavigation) {\n viewStacks.mountIntermediaryViews(id, leavingViewItem, delta);\n }\n fireLifecycle(leavingViewItem.vueComponent, leavingViewItem.vueComponentRef, LIFECYCLE_DID_LEAVE);\n }\n else {\n /**\n * If there is no leaving element, just show\n * the entering element. Wrap it in an raf\n * in case ion-content's fullscreen callback\n * is running. Otherwise we'd have a flicker.\n */\n requestAnimationFrame(() => enteringEl.classList.remove(\"ion-page-invisible\"));\n }\n fireLifecycle(enteringViewItem.vueComponent, enteringViewItem.vueComponentRef, LIFECYCLE_DID_ENTER);\n components.value = viewStacks.getChildrenToRender(id);\n };\n const setupViewItem = (matchedRouteRef) => {\n const firstMatchedRoute = route.matched[0];\n if (!parentOutletPath) {\n parentOutletPath = firstMatchedRoute.path;\n }\n /**\n * If no matched route, do not do anything in this outlet.\n * If there is a match, but it the first matched path\n * is not the root path for this outlet, then this view\n * change needs to be rendered in a different outlet.\n * We also add an exception for when the matchedRouteRef is\n * equal to the first matched route (i.e. the base router outlet).\n * This logic is mainly to help nested outlets/multi-tab\n * setups work better.\n */\n if (!matchedRouteRef.value ||\n (matchedRouteRef.value !== firstMatchedRoute &&\n firstMatchedRoute.path !== parentOutletPath)) {\n return;\n }\n const currentRoute = ionRouter.getCurrentRouteInfo();\n let enteringViewItem = viewStacks.findViewItemByRouteInfo(currentRoute, id);\n if (!enteringViewItem) {\n enteringViewItem = viewStacks.createViewItem(id, matchedRouteRef.value.components.default, matchedRouteRef.value, currentRoute);\n viewStacks.add(enteringViewItem);\n }\n if (!enteringViewItem.mount) {\n enteringViewItem.mount = true;\n enteringViewItem.registerCallback = () => {\n handlePageTransition();\n enteringViewItem.registerCallback = undefined;\n };\n }\n else {\n handlePageTransition();\n }\n components.value = viewStacks.getChildrenToRender(id);\n };\n if (matchedRouteRef.value) {\n setupViewItem(matchedRouteRef);\n }\n /**\n * Remove stack data for this outlet\n * when outlet is destroyed otherwise\n * we will see cached view data.\n */\n onUnmounted(() => viewStacks.clear(id));\n const registerIonPage = (viewItem, ionPageEl) => {\n const oldIonPageEl = viewItem.ionPageElement;\n viewStacks.registerIonPage(viewItem, ionPageEl);\n /**\n * If there is a registerCallback,\n * then this component is being registered\n * as a result of a navigation change.\n */\n if (viewItem.registerCallback) {\n /**\n * Page should be hidden initially\n * to avoid flickering.\n */\n ionPageEl.classList.add(\"ion-page-invisible\");\n viewItem.registerCallback();\n /**\n * If there is no registerCallback, then\n * this component is likely being re-registered\n * as a result of a hot module replacement.\n * We need to see if the oldIonPageEl has\n * .ion-page-invisible. If it does not then we\n * need to remove it from the new ionPageEl otherwise\n * the page will be hidden when it is replaced.\n */\n }\n else if (oldIonPageEl &&\n !oldIonPageEl.classList.contains(\"ion-page-invisible\")) {\n ionPageEl.classList.remove(\"ion-page-invisible\");\n }\n };\n return {\n id,\n components,\n injectedRoute,\n ionRouterOutlet,\n registerIonPage,\n };\n },\n render() {\n const { components, registerIonPage, injectedRoute } = this;\n return h(\"ion-router-outlet\", { ref: \"ionRouterOutlet\" }, components &&\n components.map((c) => {\n var _a, _b;\n let props = {\n ref: c.vueComponentRef,\n key: c.pathname,\n registerIonPage: (ionPageEl) => registerIonPage(c, ionPageEl),\n };\n /**\n * IonRouterOutlet does not support named outlets.\n */\n const routePropsOption = (_b = (_a = c.matchedRoute) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.default;\n /**\n * Since IonRouterOutlet renders multiple components,\n * each render will cause all props functions to be\n * called again. As a result, we need to cache the function\n * result and provide it on each render so that the props\n * are not lost when navigating from and back to a page.\n * When a component is destroyed and re-created, the\n * function is called again.\n */\n const getPropsFunctionResult = () => {\n var _a;\n const cachedPropsResult = (_a = c.vueComponentData) === null || _a === void 0 ? void 0 : _a.propsFunctionResult;\n if (cachedPropsResult) {\n return cachedPropsResult;\n }\n else {\n const propsFunctionResult = routePropsOption(injectedRoute);\n c.vueComponentData = Object.assign(Object.assign({}, c.vueComponentData), { propsFunctionResult });\n return propsFunctionResult;\n }\n };\n const routeProps = routePropsOption\n ? routePropsOption === true\n ? c.params\n : typeof routePropsOption === \"function\"\n ? getPropsFunctionResult()\n : routePropsOption\n : null;\n props = Object.assign(Object.assign({}, props), routeProps);\n return h(c.vueComponent, props);\n }));\n },\n});\n//# sourceMappingURL=IonRouterOutlet.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-tab-button.js\";\nimport { h, defineComponent, inject } from \"vue\";\nexport const IonTabButton = /*@__PURE__*/ defineComponent({\n name: \"IonTabButton\",\n props: {\n _getTabState: {\n type: Function,\n default: () => {\n return {};\n },\n },\n disabled: Boolean,\n download: String,\n href: String,\n rel: String,\n layout: String,\n selected: Boolean,\n tab: String,\n target: String,\n },\n setup(props, { slots }) {\n defineCustomElement();\n // TODO(FW-2969): type\n const ionRouter = inject(\"navManager\");\n const onClick = (ev) => {\n if (ev.cancelable) {\n ev.preventDefault();\n }\n /**\n * Keeping track of the originalHref\n * (i.e. /tabs/tab1) lets us redirect\n * users back to a child page using currentHref\n * (i.e. /tabs/tab1/child).\n */\n const { tab, href, _getTabState } = props;\n const tabState = _getTabState();\n const tappedTab = tabState.tabs[tab] || {};\n const originalHref = tappedTab.originalHref || href;\n const currentHref = tappedTab.currentHref || href;\n const prevActiveTab = tabState.activeTab;\n /**\n * If we are still on the same\n * tab as before, but the base href\n * does not equal the current href,\n * then we must be on a child page and\n * should direct users back to the root\n * of the tab.\n */\n if (prevActiveTab === tab) {\n if (originalHref !== currentHref) {\n ionRouter.resetTab(tab);\n }\n }\n else {\n ionRouter.changeTab(tab, currentHref);\n }\n };\n return () => {\n return h(\"ion-tab-button\", Object.assign({ onClick }, props), slots.default && slots.default());\n };\n },\n});\n//# sourceMappingURL=IonTabButton.js.map","import { h, defineComponent } from \"vue\";\nconst WILL_CHANGE = \"ionTabsWillChange\";\nconst DID_CHANGE = \"ionTabsDidChange\";\n// TODO(FW-2969): types\nexport const IonTabs = /*@__PURE__*/ defineComponent({\n name: \"IonTabs\",\n emits: [WILL_CHANGE, DID_CHANGE],\n render() {\n var _a;\n const { $slots: slots, $emit } = this;\n const slottedContent = slots.default && slots.default();\n let routerOutlet;\n /**\n * Developers must pass an ion-router-outlet\n * inside of ion-tabs.\n */\n if (slottedContent && slottedContent.length > 0) {\n routerOutlet = slottedContent.find((child) => child.type && child.type.name === \"IonRouterOutlet\");\n }\n if (!routerOutlet) {\n throw new Error(\"IonTabs must contain an IonRouterOutlet. See https://ionicframework.com/docs/vue/navigation#working-with-tabs for more information.\");\n }\n let childrenToRender = [\n h(\"div\", {\n class: \"tabs-inner\",\n style: {\n position: \"relative\",\n flex: \"1\",\n contain: \"layout size style\",\n },\n }, routerOutlet),\n ];\n /**\n * If ion-tab-bar has slot=\"top\" it needs to be\n * rendered before `.tabs-inner` otherwise it will\n * not show above the tab content.\n */\n if (slottedContent && slottedContent.length > 0) {\n /**\n * Render all content except for router outlet\n * since that needs to be inside of `.tabs-inner`.\n */\n const filteredContent = slottedContent.filter((child) => !child.type ||\n (child.type && child.type.name !== \"IonRouterOutlet\"));\n const slottedTabBar = filteredContent.find((child) => child.type && child.type.name === \"IonTabBar\");\n const hasTopSlotTabBar = slottedTabBar && ((_a = slottedTabBar.props) === null || _a === void 0 ? void 0 : _a.slot) === \"top\";\n if (slottedTabBar) {\n if (!slottedTabBar.props) {\n slottedTabBar.props = {};\n }\n /**\n * ionTabsWillChange and ionTabsDidChange are\n * fired from `ion-tabs`, so we need to pass these down\n * as props so they can fire when the active tab changes.\n * TODO: We may want to move logic from the tab bar into here\n * so we do not have code split across two components.\n */\n slottedTabBar.props._tabsWillChange = (tab) => $emit(WILL_CHANGE, { tab });\n slottedTabBar.props._tabsDidChange = (tab) => $emit(DID_CHANGE, { tab });\n }\n if (hasTopSlotTabBar) {\n childrenToRender = [...filteredContent, ...childrenToRender];\n }\n else {\n childrenToRender = [...childrenToRender, ...filteredContent];\n }\n }\n return h(\"ion-tabs\", {\n style: {\n display: \"flex\",\n position: \"absolute\",\n top: \"0\",\n left: \"0\",\n right: \"0\",\n bottom: \"0\",\n \"flex-direction\": \"column\",\n width: \"100%\",\n height: \"100%\",\n contain: \"layout size style\",\n \"z-index\": \"0\",\n },\n }, childrenToRender);\n },\n});\n//# sourceMappingURL=IonTabs.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-tab-bar.js\";\nimport { h, defineComponent, getCurrentInstance, inject } from \"vue\";\nconst isTabButton = (child) => { var _a; return ((_a = child.type) === null || _a === void 0 ? void 0 : _a.name) === \"IonTabButton\"; };\nconst getTabs = (nodes) => {\n let tabs = [];\n nodes.forEach((node) => {\n if (isTabButton(node)) {\n tabs.push(node);\n }\n else if (Array.isArray(node.children) && node.children.length > 1) {\n const childTabs = getTabs(node.children);\n tabs = [...tabs, ...childTabs];\n }\n });\n return tabs;\n};\nexport const IonTabBar = defineComponent({\n name: \"IonTabBar\",\n props: {\n /* eslint-disable @typescript-eslint/no-empty-function */\n _tabsWillChange: { type: Function, default: () => { } },\n _tabsDidChange: { type: Function, default: () => { } },\n /* eslint-enable @typescript-eslint/no-empty-function */\n },\n data() {\n return {\n tabState: {\n activeTab: undefined,\n tabs: {},\n },\n tabVnodes: [],\n };\n },\n updated() {\n this.setupTabState(inject(\"navManager\"));\n },\n methods: {\n setupTabState(ionRouter) {\n /**\n * For each tab, we need to keep track of its\n * base href as well as any child page that\n * is active in its stack so that when we go back\n * to a tab from another tab, we can correctly\n * show any child pages if necessary.\n */\n const tabState = this.$data.tabState;\n const currentInstance = getCurrentInstance();\n const tabs = (this.$data.tabVnodes = getTabs((currentInstance.subTree.children || [])));\n tabs.forEach((child) => {\n tabState.tabs[child.props.tab] = {\n originalHref: child.props.href,\n currentHref: child.props.href,\n ref: child,\n };\n /**\n * Passing this prop to each tab button\n * lets it be aware of the state that\n * ion-tab-bar is managing for it.\n */\n child.component.props._getTabState = () => tabState;\n });\n this.checkActiveTab(ionRouter);\n },\n checkActiveTab(ionRouter) {\n const currentRoute = ionRouter.getCurrentRouteInfo();\n const childNodes = this.$data.tabVnodes;\n const { tabs, activeTab: prevActiveTab } = this.$data.tabState;\n const tabState = this.$data.tabState;\n const tabKeys = Object.keys(tabs);\n const activeTab = tabKeys.find((key) => {\n const href = tabs[key].originalHref;\n return currentRoute.pathname.startsWith(href);\n });\n /**\n * For each tab, check to see if the\n * base href has changed. If so, update\n * it in the tabs state.\n */\n childNodes.forEach((child) => {\n const tab = tabs[child.props.tab];\n if (!tab || tab.originalHref !== child.props.href) {\n tabs[child.props.tab] = {\n originalHref: child.props.href,\n currentHref: child.props.href,\n ref: child,\n };\n }\n });\n if (activeTab && prevActiveTab) {\n const prevHref = this.$data.tabState.tabs[prevActiveTab].currentHref;\n /**\n * If the tabs change or the url changes,\n * update the currentHref for the active tab.\n * Ex: url changes from /tabs/tab1 --> /tabs/tab1/child\n * If we went to tab2 then back to tab1, we should\n * land on /tabs/tab1/child instead of /tabs/tab1.\n */\n if (activeTab !== prevActiveTab || prevHref !== currentRoute.pathname) {\n /**\n * By default the search is `undefined` in Ionic Vue,\n * but Vue Router can set the search to the empty string.\n * We check for truthy here because empty string is falsy\n * and currentRoute.search cannot ever be a boolean.\n */\n const search = currentRoute.search ? `?${currentRoute.search}` : \"\";\n tabs[activeTab] = Object.assign(Object.assign({}, tabs[activeTab]), { currentHref: currentRoute.pathname + search });\n }\n /**\n * If navigating back and the tabs change,\n * set the previous tab back to its original href.\n */\n if (currentRoute.routerAction === \"pop\" &&\n activeTab !== prevActiveTab) {\n tabs[prevActiveTab] = Object.assign(Object.assign({}, tabs[prevActiveTab]), { currentHref: tabs[prevActiveTab].originalHref });\n }\n }\n const activeChild = childNodes.find((child) => { var _a; return isTabButton(child) && ((_a = child.props) === null || _a === void 0 ? void 0 : _a.tab) === activeTab; });\n const tabBar = this.$refs.ionTabBar;\n const tabDidChange = activeTab !== prevActiveTab;\n if (tabBar) {\n if (activeChild) {\n tabDidChange && this.$props._tabsWillChange(activeTab);\n ionRouter.handleSetCurrentTab(activeTab);\n tabBar.selectedTab = tabState.activeTab = activeTab;\n tabDidChange && this.$props._tabsDidChange(activeTab);\n /**\n * When going to a tab that does\n * not have an associated ion-tab-button\n * we need to remove the selected state from\n * the old tab.\n */\n }\n else {\n tabBar.selectedTab = tabState.activeTab = \"\";\n }\n }\n },\n },\n mounted() {\n const ionRouter = inject(\"navManager\");\n this.setupTabState(ionRouter);\n ionRouter.registerHistoryChangeListener(() => this.checkActiveTab(ionRouter));\n },\n setup(_, { slots }) {\n defineCustomElement();\n return () => {\n return h(\"ion-tab-bar\", { ref: \"ionTabBar\" }, slots.default && slots.default());\n };\n },\n});\n//# sourceMappingURL=IonTabBar.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-app.js\";\nimport { h, defineComponent, shallowRef } from \"vue\";\nconst userComponents = shallowRef([]);\nexport const IonApp = /*@__PURE__*/ defineComponent((_, { attrs, slots }) => {\n defineCustomElement();\n return () => {\n return h(\"ion-app\", Object.assign({}, attrs), [slots.default && slots.default(), ...userComponents.value]);\n };\n});\nIonApp.name = \"IonApp\";\n/**\n * When rendering user components inside of\n * ion-modal, or ion-popover the component\n * needs to be created inside of the current application\n * context otherwise libraries such as vue-i18n or vuex\n * will not work properly.\n *\n * `userComponents` renders teleported components as children\n * of `ion-app` within the current application context.\n */\nexport const addTeleportedUserComponent = (component) => {\n userComponents.value = [...userComponents.value, component];\n};\nexport const removeTeleportedUserComponent = (component) => {\n userComponents.value = userComponents.value.filter((cmp) => cmp !== component);\n};\n//# sourceMappingURL=IonApp.js.map","import { h, Teleport } from \"vue\";\nimport { addTeleportedUserComponent, removeTeleportedUserComponent, } from \"./components/IonApp\";\nexport const VueDelegate = (addFn = addTeleportedUserComponent, removeFn = removeTeleportedUserComponent) => {\n // `h` doesn't provide a type for the component argument\n const refMap = new WeakMap();\n // TODO(FW-2969): types\n const attachViewToDom = (parentElement, componentOrTagName, componentProps = {}, classes) => {\n const div = document.createElement(\"div\");\n classes && div.classList.add(...classes);\n parentElement.appendChild(div);\n const hostComponent = h(Teleport, { to: div }, h(componentOrTagName, Object.assign({}, componentProps)));\n /**\n * Ionic Framework will use what is returned from `attachViewToDom`\n * as the `component` argument in `removeViewFromDom`.\n *\n * We will store a reference to the div element and the host component,\n * so we can later look-up and unmount the correct instance.\n */\n refMap.set(div, hostComponent);\n addFn(hostComponent);\n return Promise.resolve(div);\n };\n const removeViewFromDom = (_container, component) => {\n const hostComponent = refMap.get(component);\n hostComponent && removeFn(hostComponent);\n return Promise.resolve();\n };\n return { attachViewToDom, removeViewFromDom };\n};\n//# sourceMappingURL=framework-delegate.js.map","import { defineCustomElement } from \"@ionic/core/components/ion-nav.js\";\nimport { defineComponent, h, shallowRef } from \"vue\";\nimport { VueDelegate } from \"../framework-delegate\";\nexport const IonNav = /*@__PURE__*/ defineComponent(() => {\n defineCustomElement();\n const views = shallowRef([]);\n /**\n * Allows us to create the component\n * within the Vue application context.\n */\n const addView = (component) => (views.value = [...views.value, component]);\n const removeView = (component) => (views.value = views.value.filter((cmp) => cmp !== component));\n const delegate = VueDelegate(addView, removeView);\n return () => {\n return h(\"ion-nav\", { delegate }, views.value);\n };\n});\nIonNav.name = \"IonNav\";\n//# sourceMappingURL=IonNav.js.map","import { defineCustomElement } from \"ionicons/components/ion-icon.js\";\nimport { h, defineComponent } from \"vue\";\nimport { getConfig } from \"../utils\";\nexport const IonIcon = /*@__PURE__*/ defineComponent({\n name: \"IonIcon\",\n props: {\n color: String,\n flipRtl: Boolean,\n icon: String,\n ios: String,\n lazy: String,\n md: String,\n mode: String,\n name: String,\n size: String,\n src: String,\n },\n setup(props, { slots }) {\n defineCustomElement();\n return () => {\n var _a, _b;\n const { icon, ios, md, mode } = props;\n let iconToUse;\n const config = getConfig();\n const iconMode = mode || (config === null || config === void 0 ? void 0 : config.get(\"mode\"));\n if (ios || md) {\n if (iconMode === \"ios\") {\n iconToUse = (_a = ios !== null && ios !== void 0 ? ios : md) !== null && _a !== void 0 ? _a : icon;\n }\n else {\n iconToUse = (_b = md !== null && md !== void 0 ? md : ios) !== null && _b !== void 0 ? _b : icon;\n }\n }\n else {\n iconToUse = icon;\n }\n return h(\"ion-icon\", Object.assign(Object.assign({}, props), { icon: iconToUse }), slots);\n };\n },\n});\n//# sourceMappingURL=IonIcon.js.map","import { defineComponent, h, ref, onMounted } from 'vue';\nconst EMPTY_PROP = Symbol();\nconst DEFAULT_EMPTY_PROP = { default: EMPTY_PROP };\nexport const defineOverlayContainer = (name, defineCustomElement, componentProps = [], hasDelegateHost, controller) => {\n const createControllerComponent = () => {\n return defineComponent((props, { slots, emit }) => {\n const eventListeners = [\n { componentEv: `${name}-will-present`, frameworkEv: 'willPresent' },\n { componentEv: `${name}-did-present`, frameworkEv: 'didPresent' },\n { componentEv: `${name}-will-dismiss`, frameworkEv: 'willDismiss' },\n { componentEv: `${name}-did-dismiss`, frameworkEv: 'didDismiss' },\n ];\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const overlay = ref();\n const onVnodeMounted = async () => {\n const isOpen = props.isOpen;\n isOpen && (await present(props));\n };\n const onVnodeUpdated = async (node, prevNode) => {\n const isOpen = node.props.isOpen;\n const prevIsOpen = prevNode.props.isOpen;\n /**\n * Do not do anything if this prop\n * did not change.\n */\n if (isOpen === prevIsOpen)\n return;\n if (isOpen) {\n await present(props);\n }\n else {\n await dismiss();\n }\n };\n const onVnodeBeforeUnmount = async () => {\n await dismiss();\n };\n const dismiss = async () => {\n if (!overlay.value)\n return;\n await overlay.value;\n overlay.value = overlay.value.dismiss();\n await overlay.value;\n overlay.value = undefined;\n };\n const present = async (props) => {\n var _a;\n /**\n * Do not open another instance\n * if one is already opened.\n */\n if (overlay.value) {\n await overlay.value;\n }\n if ((_a = overlay.value) === null || _a === void 0 ? void 0 : _a.present) {\n await overlay.value.present();\n return;\n }\n let restOfProps = {};\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && value !== EMPTY_PROP) {\n restOfProps[key] = value;\n }\n }\n /**\n * These are getting passed as props.\n * Potentially a Vue bug with Web Components?\n */\n delete restOfProps.onWillPresent;\n delete restOfProps.onDidPresent;\n delete restOfProps.onWillDismiss;\n delete restOfProps.onDidDismiss;\n const component = slots.default && slots.default()[0];\n overlay.value = controller.create(Object.assign(Object.assign({}, restOfProps), { component }));\n overlay.value = await overlay.value;\n eventListeners.forEach(eventListener => {\n overlay.value.addEventListener(eventListener.componentEv, () => {\n emit(eventListener.frameworkEv);\n });\n });\n await overlay.value.present();\n };\n return () => {\n return h('div', {\n style: { display: 'none' },\n onVnodeMounted,\n onVnodeUpdated,\n onVnodeBeforeUnmount,\n isOpen: props.isOpen === true\n });\n };\n });\n };\n const createInlineComponent = () => {\n return defineComponent((props, { slots }) => {\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const isOpen = ref(false);\n const elementRef = ref();\n onMounted(() => {\n elementRef.value.addEventListener('ion-mount', () => isOpen.value = true);\n elementRef.value.addEventListener('will-present', () => isOpen.value = true);\n elementRef.value.addEventListener('did-dismiss', () => isOpen.value = false);\n });\n return () => {\n let restOfProps = {};\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && value !== EMPTY_PROP) {\n restOfProps[key] = value;\n }\n }\n /**\n * Some overlays need a wrapper element so content\n * takes up the full size of the parent overlay.\n */\n const renderChildren = () => {\n if (hasDelegateHost) {\n return h('div', { className: 'ion-delegate-host ion-page' }, slots);\n }\n return slots;\n };\n return h(name, Object.assign(Object.assign({}, restOfProps), { ref: elementRef }), (isOpen.value || restOfProps.keepContentsMounted) ? renderChildren() : undefined);\n };\n });\n };\n const Container = (controller !== undefined) ? createControllerComponent() : createInlineComponent();\n Container.name = name;\n Container.props = {\n 'isOpen': DEFAULT_EMPTY_PROP\n };\n componentProps.forEach(componentProp => {\n Container.props[componentProp] = DEFAULT_EMPTY_PROP;\n });\n if (controller !== undefined) {\n Container.emits = ['willPresent', 'didPresent', 'willDismiss', 'didDismiss'];\n }\n return Container;\n};\n//# sourceMappingURL=overlays.js.map","/**\n * This is an autogenerated file created by 'scripts/copy-overlays.js'.\n * Changes made to this file will be overwritten on build.\n */\nimport { defineCustomElement as defineIonActionSheetCustomElement } from '@ionic/core/components/ion-action-sheet.js';\nimport { defineCustomElement as defineIonAlertCustomElement } from '@ionic/core/components/ion-alert.js';\nimport { defineCustomElement as defineIonLoadingCustomElement } from '@ionic/core/components/ion-loading.js';\nimport { defineCustomElement as defineIonPickerCustomElement } from '@ionic/core/components/ion-picker.js';\nimport { defineCustomElement as defineIonToastCustomElement } from '@ionic/core/components/ion-toast.js';\nimport { defineCustomElement as defineIonModalCustomElement } from '@ionic/core/components/ion-modal.js';\nimport { defineCustomElement as defineIonPopoverCustomElement } from '@ionic/core/components/ion-popover.js';\nimport { defineOverlayContainer } from '../vue-component-lib/overlays';\nexport const IonActionSheet = /*@__PURE__*/ defineOverlayContainer('ion-action-sheet', defineIonActionSheetCustomElement, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger']);\nexport const IonAlert = /*@__PURE__*/ defineOverlayContainer('ion-alert', defineIonAlertCustomElement, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger']);\nexport const IonLoading = /*@__PURE__*/ defineOverlayContainer('ion-loading', defineIonLoadingCustomElement, ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger']);\nexport const IonPicker = /*@__PURE__*/ defineOverlayContainer('ion-picker', defineIonPickerCustomElement, ['animated', 'backdropDismiss', 'buttons', 'columns', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'showBackdrop', 'trigger']);\nexport const IonToast = /*@__PURE__*/ defineOverlayContainer('ion-toast', defineIonToastCustomElement, ['animated', 'buttons', 'color', 'cssClass', 'duration', 'enterAnimation', 'header', 'htmlAttributes', 'icon', 'isOpen', 'keyboardClose', 'layout', 'leaveAnimation', 'message', 'mode', 'position', 'translucent', 'trigger']);\nexport const IonModal = /*@__PURE__*/ defineOverlayContainer('ion-modal', defineIonModalCustomElement, ['animated', 'backdropBreakpoint', 'backdropDismiss', 'breakpoints', 'canDismiss', 'enterAnimation', 'handle', 'handleBehavior', 'htmlAttributes', 'initialBreakpoint', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'presentingElement', 'showBackdrop', 'trigger'], true);\nexport const IonPopover = /*@__PURE__*/ defineOverlayContainer('ion-popover', defineIonPopoverCustomElement, ['alignment', 'animated', 'arrow', 'backdropDismiss', 'component', 'componentProps', 'dismissOnSelect', 'enterAnimation', 'event', 'htmlAttributes', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'reference', 'showBackdrop', 'side', 'size', 'translucent', 'trigger', 'triggerAction']);\n//# sourceMappingURL=Overlays.js.map","import { modalController as modalCtrl, popoverController as popoverCtrl, alertController as alertCtrl, actionSheetController as actionSheetCtrl, loadingController as loadingCtrl, pickerController as pickerCtrl, toastController as toastCtrl, } from \"@ionic/core/components\";\nimport { defineCustomElement as defineIonActionSheetCustomElement } from \"@ionic/core/components/ion-action-sheet.js\";\nimport { defineCustomElement as defineIonAlertCustomElement } from \"@ionic/core/components/ion-alert.js\";\nimport { defineCustomElement as defineIonLoadingCustomElement } from \"@ionic/core/components/ion-loading.js\";\nimport { defineCustomElement as defineIonModalCustomElement } from \"@ionic/core/components/ion-modal.js\";\nimport { defineCustomElement as defineIonPickerCustomElement } from \"@ionic/core/components/ion-picker.js\";\nimport { defineCustomElement as defineIonPopoverCustomElement } from \"@ionic/core/components/ion-popover.js\";\nimport { defineCustomElement as defineIonToastCustomElement } from \"@ionic/core/components/ion-toast.js\";\nimport { VueDelegate } from \"./framework-delegate\";\n// TODO(FW-2969): types\n/**\n * Wrap the controllers export from @ionic/core\n * register the underlying Web Component and\n * (optionally) provide a framework delegate.\n */\nconst createController = (defineCustomElement, oldController, useDelegate = false) => {\n const delegate = useDelegate ? VueDelegate() : undefined;\n const oldCreate = oldController.create.bind(oldController);\n oldController.create = (options) => {\n defineCustomElement();\n return oldCreate(Object.assign(Object.assign({}, options), { delegate }));\n };\n return oldController;\n};\nconst modalController = /*@__PURE__*/ createController(defineIonModalCustomElement, modalCtrl, true);\nconst popoverController = /*@__PURE__*/ createController(defineIonPopoverCustomElement, popoverCtrl, true);\nconst alertController = /*@__PURE__*/ createController(defineIonAlertCustomElement, alertCtrl);\nconst actionSheetController = /*@__PURE__*/ createController(defineIonActionSheetCustomElement, actionSheetCtrl);\nconst loadingController = /*@__PURE__*/ createController(defineIonLoadingCustomElement, loadingCtrl);\nconst pickerController = /*@__PURE__*/ createController(defineIonPickerCustomElement, pickerCtrl);\nconst toastController = /*@__PURE__*/ createController(defineIonToastCustomElement, toastCtrl);\nexport { modalController, popoverController, alertController, actionSheetController, loadingController, pickerController, toastController, };\n//# sourceMappingURL=controllers.js.map"],"names":["defineIonAccordion","defineIonAccordionGroup","defineIonAvatar","defineIonBackdrop","defineIonBadge","defineIonBreadcrumb","defineIonBreadcrumbs","defineIonButton","defineIonButtons","defineIonCard","defineIonCardContent","defineIonCardHeader","defineIonCardSubtitle","defineIonCardTitle","defineIonCheckbox","defineIonChip","defineIonCol","defineIonContent","defineIonDatetime","defineIonDatetimeButton","defineIonFab","defineIonFabButton","defineIonFabList","defineIonFooter","defineIonGrid","defineIonHeader","defineIonImg","defineIonInfiniteScroll","defineIonInfiniteScrollContent","defineIonInput","defineIonItem","defineIonItemDivider","defineIonItemGroup","defineIonItemOption","defineIonItemOptions","defineIonItemSliding","defineIonLabel","defineIonList","defineIonListHeader","defineIonMenu","defineIonMenuButton","defineIonMenuToggle","defineIonNavLink","defineIonNote","defineIonProgressBar","defineIonRadio","defineIonRadioGroup","defineIonRange","defineIonRefresher","defineIonRefresherContent","defineIonReorder","defineIonReorderGroup","defineIonRippleEffect","defineIonRow","defineIonSearchbar","defineIonSegment","defineIonSegmentButton","defineIonSelect","defineIonSelectOption","defineIonSkeletonText","defineIonSpinner","defineIonSplitPane","defineIonText","defineIonTextarea","defineIonThumbnail","defineIonTitle","defineIonToggle","defineIonToolbar","defineCustomElement","EMPTY_PROP","DEFAULT_EMPTY_PROP","defineIonActionSheetCustomElement","defineIonAlertCustomElement","defineIonLoadingCustomElement","defineIonPickerCustomElement","defineIonToastCustomElement","defineIonModalCustomElement","defineIonPopoverCustomElement","modalCtrl","popoverCtrl","alertCtrl","actionSheetCtrl","loadingCtrl","pickerCtrl","toastCtrl"],"mappings":"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"}
@@ -16,4 +16,4 @@ export { IonApp } from "./components/IonApp";
16
16
  export * from "./components/Overlays";
17
17
  export { modalController, popoverController, alertController, actionSheetController, loadingController, pickerController, toastController, } from "./controllers";
18
18
  export * from "./globalExtensions";
19
- export { createAnimation, createGesture, iosTransitionAnimation, mdTransitionAnimation, IonicSlides, getPlatforms, isPlatform, menuController, getTimeGivenProgression, getIonPageElement, Animation, AnimationBuilder, AnimationCallbackOptions, AnimationDirection, AnimationFill, AnimationKeyFrames, AnimationLifecycle, Gesture, GestureConfig, GestureDetail, NavComponentWithProps, SpinnerTypes, AccordionGroupCustomEvent, AccordionGroupChangeEventDetail, BreadcrumbCustomEvent, BreadcrumbCollapsedClickEventDetail, ActionSheetOptions, ActionSheetButton, AlertOptions, AlertInput, AlertButton, BackButtonEvent, CheckboxCustomEvent, CheckboxChangeEventDetail, DatetimeCustomEvent, DatetimeChangeEventDetail, InfiniteScrollCustomEvent, InputCustomEvent, InputChangeEventDetail, ItemReorderEventDetail, ItemReorderCustomEvent, ItemSlidingCustomEvent, IonicSafeString, LoadingOptions, MenuCustomEvent, ModalOptions, NavCustomEvent, PickerOptions, PickerButton, PickerColumn, PickerColumnOption, Platforms, PlatformConfig, PopoverOptions, RadioGroupCustomEvent, RadioGroupChangeEventDetail, RangeCustomEvent, RangeChangeEventDetail, RangeKnobMoveStartEventDetail, RangeKnobMoveEndEventDetail, RefresherCustomEvent, RefresherEventDetail, RouterEventDetail, RouterCustomEvent, ScrollBaseCustomEvent, ScrollBaseDetail, ScrollDetail, ScrollCustomEvent, SearchbarCustomEvent, SearchbarChangeEventDetail, SearchbarInputEventDetail, SegmentChangeEventDetail, SegmentCustomEvent, SegmentValue, SelectChangeEventDetail, SelectCustomEvent, TabsCustomEvent, TextareaChangeEventDetail, TextareaCustomEvent, ToastOptions, ToastButton, ToastLayout, ToggleChangeEventDetail, ToggleCustomEvent, TransitionOptions, } from "@ionic/core/components";
19
+ export { createAnimation, createGesture, iosTransitionAnimation, mdTransitionAnimation, IonicSlides, getPlatforms, isPlatform, menuController, getTimeGivenProgression, Animation, AnimationBuilder, AnimationCallbackOptions, AnimationDirection, AnimationFill, AnimationKeyFrames, AnimationLifecycle, Gesture, GestureConfig, GestureDetail, NavComponentWithProps, SpinnerTypes, AccordionGroupCustomEvent, AccordionGroupChangeEventDetail, BreadcrumbCustomEvent, BreadcrumbCollapsedClickEventDetail, ActionSheetOptions, ActionSheetButton, AlertOptions, AlertInput, AlertButton, BackButtonEvent, CheckboxCustomEvent, CheckboxChangeEventDetail, DatetimeCustomEvent, DatetimeChangeEventDetail, InfiniteScrollCustomEvent, InputCustomEvent, InputChangeEventDetail, ItemReorderEventDetail, ItemReorderCustomEvent, ItemSlidingCustomEvent, IonicSafeString, LoadingOptions, MenuCustomEvent, ModalOptions, NavCustomEvent, PickerOptions, PickerButton, PickerColumn, PickerColumnOption, Platforms, PlatformConfig, PopoverOptions, RadioGroupCustomEvent, RadioGroupChangeEventDetail, RangeCustomEvent, RangeChangeEventDetail, RangeKnobMoveStartEventDetail, RangeKnobMoveEndEventDetail, RefresherCustomEvent, RefresherEventDetail, RouterEventDetail, RouterCustomEvent, ScrollBaseCustomEvent, ScrollBaseDetail, ScrollDetail, ScrollCustomEvent, SearchbarCustomEvent, SearchbarChangeEventDetail, SearchbarInputEventDetail, SegmentChangeEventDetail, SegmentCustomEvent, SegmentValue, SelectChangeEventDetail, SelectCustomEvent, TabsCustomEvent, TextareaChangeEventDetail, TextareaCustomEvent, ToastOptions, ToastButton, ToastLayout, ToggleChangeEventDetail, ToggleCustomEvent, } from "@ionic/core/components";
@@ -720,14 +720,6 @@
720
720
  "md"
721
721
  ]
722
722
  },
723
- "ion-checkbox/alignment": {
724
- "type": "\"center\" | \"start\"",
725
- "description": "How to control the alignment of the checkbox and label on the cross axis.\n`\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
726
- "options": [
727
- "center",
728
- "start"
729
- ]
730
- },
731
723
  "ion-checkbox/checked": {
732
724
  "type": "boolean",
733
725
  "description": "If `true`, the checkbox is selected.",
@@ -768,12 +760,11 @@
768
760
  ]
769
761
  },
770
762
  "ion-checkbox/label-placement": {
771
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
772
- "description": "Where to place the label relative to the checkbox.\n`\"start\"`: The label will appear to the left of the checkbox in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the checkbox in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the checkbox regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
763
+ "type": "\"end\" | \"fixed\" | \"start\"",
764
+ "description": "Where to place the label relative to the checkbox.\n`\"start\"`: The label will appear to the left of the checkbox in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the checkbox in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
773
765
  "options": [
774
766
  "end",
775
767
  "fixed",
776
- "stacked",
777
768
  "start"
778
769
  ]
779
770
  },
@@ -2648,14 +2639,6 @@
2648
2639
  "description": "The value determines how much of the active bar should display when the\n`type` is `\"determinate\"`.\nThe value should be between [0, 1].",
2649
2640
  "options": []
2650
2641
  },
2651
- "ion-radio/alignment": {
2652
- "type": "\"center\" | \"start\"",
2653
- "description": "How to control the alignment of the radio and label on the cross axis.\n`\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
2654
- "options": [
2655
- "center",
2656
- "start"
2657
- ]
2658
- },
2659
2642
  "ion-radio/color": {
2660
2643
  "type": "\"danger\" | \"dark\" | \"light\" | \"medium\" | \"primary\" | \"secondary\" | \"success\" | \"tertiary\" | \"warning\" | string & Record<never, never> | undefined",
2661
2644
  "description": "The color to use from your application's color palette.\nDefault options are: `\"primary\"`, `\"secondary\"`, `\"tertiary\"`, `\"success\"`, `\"warning\"`, `\"danger\"`, `\"light\"`, `\"medium\"`, and `\"dark\"`.\nFor more information on colors, see [theming](/docs/theming/basics).",
@@ -2686,12 +2669,11 @@
2686
2669
  ]
2687
2670
  },
2688
2671
  "ion-radio/label-placement": {
2689
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
2690
- "description": "Where to place the label relative to the radio.\n`\"start\"`: The label will appear to the left of the radio in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the radio in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
2672
+ "type": "\"end\" | \"fixed\" | \"start\"",
2673
+ "description": "Where to place the label relative to the radio.\n`\"start\"`: The label will appear to the left of the radio in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the radio in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
2691
2674
  "options": [
2692
2675
  "end",
2693
2676
  "fixed",
2694
- "stacked",
2695
2677
  "start"
2696
2678
  ]
2697
2679
  },
@@ -2774,12 +2756,11 @@
2774
2756
  "options": []
2775
2757
  },
2776
2758
  "ion-range/label-placement": {
2777
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
2778
- "description": "Where to place the label relative to the range.\n`\"start\"`: The label will appear to the left of the range in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the range in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the range regardless of the direction.",
2759
+ "type": "\"end\" | \"fixed\" | \"start\"",
2760
+ "description": "Where to place the label relative to the range.\n`\"start\"`: The label will appear to the left of the range in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the range in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
2779
2761
  "options": [
2780
2762
  "end",
2781
2763
  "fixed",
2782
- "stacked",
2783
2764
  "start"
2784
2765
  ]
2785
2766
  },
@@ -3968,14 +3949,6 @@
3968
3949
  "description": "An ID corresponding to the trigger element that\ncauses the toast to open when clicked.",
3969
3950
  "options": []
3970
3951
  },
3971
- "ion-toggle/alignment": {
3972
- "type": "\"center\" | \"start\"",
3973
- "description": "How to control the alignment of the toggle and label on the cross axis.\n``\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
3974
- "options": [
3975
- "center",
3976
- "start"
3977
- ]
3978
- },
3979
3952
  "ion-toggle/checked": {
3980
3953
  "type": "boolean",
3981
3954
  "description": "If `true`, the toggle is selected.",
@@ -4016,12 +3989,11 @@
4016
3989
  ]
4017
3990
  },
4018
3991
  "ion-toggle/label-placement": {
4019
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\"",
4020
- "description": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the toggle regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
3992
+ "type": "\"end\" | \"fixed\" | \"start\"",
3993
+ "description": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
4021
3994
  "options": [
4022
3995
  "end",
4023
3996
  "fixed",
4024
- "stacked",
4025
3997
  "start"
4026
3998
  ]
4027
3999
  },
@@ -199,7 +199,6 @@
199
199
  "ion-checkbox": {
200
200
  "description": "",
201
201
  "attributes": [
202
- "alignment",
203
202
  "checked",
204
203
  "color",
205
204
  "disabled",
@@ -671,7 +670,6 @@
671
670
  "ion-radio": {
672
671
  "description": "",
673
672
  "attributes": [
674
- "alignment",
675
673
  "color",
676
674
  "disabled",
677
675
  "justify",
@@ -1012,7 +1010,6 @@
1012
1010
  "ion-toggle": {
1013
1011
  "description": "",
1014
1012
  "attributes": [
1015
- "alignment",
1016
1013
  "checked",
1017
1014
  "color",
1018
1015
  "disabled",
@@ -2,7 +2,7 @@
2
2
  "$schema": "http://json.schemastore.org/web-types",
3
3
  "framework": "vue",
4
4
  "name": "@ionic/vue",
5
- "version": "7.3.4-dev.11699991837.1bc64f72",
5
+ "version": "7.3.4-dev.11700516018.128deb56",
6
6
  "contributions": {
7
7
  "html": {
8
8
  "types-syntax": "typescript",
@@ -1524,16 +1524,6 @@
1524
1524
  "symbol": "Checkbox"
1525
1525
  },
1526
1526
  "attributes": [
1527
- {
1528
- "name": "alignment",
1529
- "description": "How to control the alignment of the checkbox and label on the cross axis.\n`\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
1530
- "required": false,
1531
- "default": "'center'",
1532
- "value": {
1533
- "kind": "expression",
1534
- "type": "\"center\" | \"start\""
1535
- }
1536
- },
1537
1527
  {
1538
1528
  "name": "checked",
1539
1529
  "description": "If `true`, the checkbox is selected.",
@@ -1585,12 +1575,12 @@
1585
1575
  },
1586
1576
  {
1587
1577
  "name": "label-placement",
1588
- "description": "Where to place the label relative to the checkbox.\n`\"start\"`: The label will appear to the left of the checkbox in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the checkbox in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the checkbox regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
1578
+ "description": "Where to place the label relative to the checkbox.\n`\"start\"`: The label will appear to the left of the checkbox in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the checkbox in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
1589
1579
  "required": false,
1590
1580
  "default": "'start'",
1591
1581
  "value": {
1592
1582
  "kind": "expression",
1593
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\""
1583
+ "type": "\"end\" | \"fixed\" | \"start\""
1594
1584
  }
1595
1585
  },
1596
1586
  {
@@ -5366,16 +5356,6 @@
5366
5356
  "symbol": "Radio"
5367
5357
  },
5368
5358
  "attributes": [
5369
- {
5370
- "name": "alignment",
5371
- "description": "How to control the alignment of the radio and label on the cross axis.\n`\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
5372
- "required": false,
5373
- "default": "'center'",
5374
- "value": {
5375
- "kind": "expression",
5376
- "type": "\"center\" | \"start\""
5377
- }
5378
- },
5379
5359
  {
5380
5360
  "name": "color",
5381
5361
  "description": "The color to use from your application's color palette.\nDefault options are: `\"primary\"`, `\"secondary\"`, `\"tertiary\"`, `\"success\"`, `\"warning\"`, `\"danger\"`, `\"light\"`, `\"medium\"`, and `\"dark\"`.\nFor more information on colors, see [theming](/docs/theming/basics).",
@@ -5407,12 +5387,12 @@
5407
5387
  },
5408
5388
  {
5409
5389
  "name": "label-placement",
5410
- "description": "Where to place the label relative to the radio.\n`\"start\"`: The label will appear to the left of the radio in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the radio in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the radio regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
5390
+ "description": "Where to place the label relative to the radio.\n`\"start\"`: The label will appear to the left of the radio in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the radio in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
5411
5391
  "required": false,
5412
5392
  "default": "'start'",
5413
5393
  "value": {
5414
5394
  "kind": "expression",
5415
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\""
5395
+ "type": "\"end\" | \"fixed\" | \"start\""
5416
5396
  }
5417
5397
  },
5418
5398
  {
@@ -5602,12 +5582,12 @@
5602
5582
  },
5603
5583
  {
5604
5584
  "name": "label-placement",
5605
- "description": "Where to place the label relative to the range.\n`\"start\"`: The label will appear to the left of the range in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the range in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the range regardless of the direction.",
5585
+ "description": "Where to place the label relative to the range.\n`\"start\"`: The label will appear to the left of the range in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the range in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
5606
5586
  "required": false,
5607
5587
  "default": "'start'",
5608
5588
  "value": {
5609
5589
  "kind": "expression",
5610
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\""
5590
+ "type": "\"end\" | \"fixed\" | \"start\""
5611
5591
  }
5612
5592
  },
5613
5593
  {
@@ -7855,16 +7835,6 @@
7855
7835
  "symbol": "Toggle"
7856
7836
  },
7857
7837
  "attributes": [
7858
- {
7859
- "name": "alignment",
7860
- "description": "How to control the alignment of the toggle and label on the cross axis.\n``\"start\"`: The label and control will appear on the left of the cross axis in LTR, and on the right side in RTL.\n`\"center\"`: The label and control will appear at the center of the cross axis in both LTR and RTL.",
7861
- "required": false,
7862
- "default": "'center'",
7863
- "value": {
7864
- "kind": "expression",
7865
- "type": "\"center\" | \"start\""
7866
- }
7867
- },
7868
7838
  {
7869
7839
  "name": "checked",
7870
7840
  "description": "If `true`, the toggle is selected.",
@@ -7916,12 +7886,12 @@
7916
7886
  },
7917
7887
  {
7918
7888
  "name": "label-placement",
7919
- "description": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\n`\"stacked\"`: The label will appear above the toggle regardless of the direction. The alignment of the label can be controlled with the `alignment` property.",
7889
+ "description": "Where to place the label relative to the input.\n`\"start\"`: The label will appear to the left of the toggle in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the toggle in LTR and to the left in RTL.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").",
7920
7890
  "required": false,
7921
7891
  "default": "'start'",
7922
7892
  "value": {
7923
7893
  "kind": "expression",
7924
- "type": "\"end\" | \"fixed\" | \"stacked\" | \"start\""
7894
+ "type": "\"end\" | \"fixed\" | \"start\""
7925
7895
  }
7926
7896
  },
7927
7897
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ionic/vue",
3
- "version": "7.3.4-dev.11699991837.1bc64f72",
3
+ "version": "7.3.4-dev.11700516018.128deb56",
4
4
  "description": "Vue specific wrapper for @ionic/core",
5
5
  "scripts": {
6
6
  "eslint": "eslint src",
@@ -66,7 +66,7 @@
66
66
  "vue-router": "^4.0.16"
67
67
  },
68
68
  "dependencies": {
69
- "@ionic/core": "7.3.4-dev.11699991837.1bc64f72",
69
+ "@ionic/core": "7.3.4-dev.11700516018.128deb56",
70
70
  "ionicons": "^7.0.0"
71
71
  },
72
72
  "vetur": {