@ionic/vue 7.5.3-dev.11698858201.14165f23 → 7.5.3-dev.11699994454.1cbf1283
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 +2114 -119
- package/dist/index.js.map +1 -7
- package/dist/types/components/IonApp.d.ts +16 -0
- package/dist/types/components/IonBackButton.d.ts +3 -0
- package/dist/types/components/IonIcon.d.ts +27 -0
- package/dist/types/components/IonNav.d.ts +4 -0
- package/dist/types/components/IonPage.d.ts +15 -0
- package/dist/types/components/IonRouterOutlet.d.ts +8 -0
- package/dist/types/components/IonTabBar.d.ts +34 -0
- package/dist/types/components/IonTabButton.d.ts +33 -0
- package/dist/types/components/IonTabs.d.ts +4 -0
- package/dist/types/components/Overlays.d.ts +28 -0
- package/dist/types/controllers.d.ts +36 -0
- package/dist/types/framework-delegate.d.ts +7 -0
- package/dist/types/globalExtensions.d.ts +9 -0
- package/dist/types/hooks/back-button.d.ts +6 -0
- package/dist/types/hooks/keyboard.d.ts +7 -0
- package/dist/types/hooks/lifecycle.d.ts +5 -0
- package/dist/types/hooks/router.d.ts +21 -0
- package/dist/types/index.d.ts +19 -0
- package/dist/types/ionic-vue.d.ts +2 -0
- package/dist/types/proxies.d.ts +84 -0
- package/dist/types/utils.d.ts +14 -0
- package/dist/types/vue-component-lib/overlays.d.ts +9 -0
- package/dist/types/vue-component-lib/utils.d.ts +20 -0
- package/dist/vetur/attributes.json +1 -1
- package/dist/web-types.json +2 -2
- package/package.json +9 -5
- package/dist/components/IonApp.js +0 -25
- package/dist/components/IonApp.js.map +0 -7
- package/dist/components/IonBackButton.js +0 -28
- package/dist/components/IonBackButton.js.map +0 -7
- package/dist/components/IonIcon.js +0 -45
- package/dist/components/IonIcon.js.map +0 -7
- package/dist/components/IonNav.js +0 -15
- package/dist/components/IonNav.js.map +0 -7
- package/dist/components/IonPage.js +0 -26
- package/dist/components/IonPage.js.map +0 -7
- package/dist/components/IonRouterOutlet.js +0 -336
- package/dist/components/IonRouterOutlet.js.map +0 -7
- package/dist/components/IonTabBar.js +0 -126
- package/dist/components/IonTabBar.js.map +0 -7
- package/dist/components/IonTabButton.js +0 -54
- package/dist/components/IonTabButton.js.map +0 -7
- package/dist/components/IonTabs.js +0 -77
- package/dist/components/IonTabs.js.map +0 -7
- package/dist/components/Overlays.js +0 -16
- package/dist/components/Overlays.js.map +0 -7
- package/dist/controllers.js +0 -69
- package/dist/controllers.js.map +0 -7
- package/dist/framework-delegate.js +0 -28
- package/dist/framework-delegate.js.map +0 -7
- package/dist/globalExtensions.js +0 -1
- package/dist/globalExtensions.js.map +0 -7
- package/dist/hooks/back-button.js +0 -7
- package/dist/hooks/back-button.js.map +0 -7
- package/dist/hooks/keyboard.js +0 -29
- package/dist/hooks/keyboard.js.map +0 -7
- package/dist/hooks/lifecycle.js +0 -31
- package/dist/hooks/lifecycle.js.map +0 -7
- package/dist/hooks/router.js +0 -20
- package/dist/hooks/router.js.map +0 -7
- package/dist/ionic-vue.js +0 -34
- package/dist/ionic-vue.js.map +0 -7
- package/dist/proxies.js +0 -796
- package/dist/proxies.js.map +0 -7
- package/dist/utils.js +0 -51
- package/dist/utils.js.map +0 -7
- package/dist/vue-component-lib/overlays.js +0 -142
- package/dist/vue-component-lib/overlays.js.map +0 -7
- package/dist/vue-component-lib/utils.js +0 -117
- package/dist/vue-component-lib/utils.js.map +0 -7
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/IonTabButton.ts"],
|
|
4
|
-
"sourcesContent": ["import { defineCustomElement } from \"@ionic/core/components/ion-tab-button.js\";\nimport { h, defineComponent, inject } from \"vue\";\n\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\n // TODO(FW-2969): type\n const ionRouter: any = inject(\"navManager\");\n const onClick = (ev: Event) => {\n if (ev.cancelable) {\n ev.preventDefault();\n }\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 /**\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 } else {\n ionRouter.changeTab(tab, currentHref);\n }\n };\n return () => {\n return h(\n \"ion-tab-button\",\n {\n onClick,\n ...props,\n },\n slots.default && slots.default()\n );\n };\n },\n});\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,2BAA2B;AACpC,SAAS,GAAG,iBAAiB,cAAc;AAEpC,aAAM,eAA6B,gCAAgB;AAAA,EACxD,MAAM;AAAA,EACN,OAAO;AAAA,IACL,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS,MAAM;AACb,eAAO,CAAC;AAAA,MACV;AAAA,IACF;AAAA,IACA,UAAU;AAAA,IACV,UAAU;AAAA,IACV,MAAM;AAAA,IACN,KAAK;AAAA,IACL,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,KAAK;AAAA,IACL,QAAQ;AAAA,EACV;AAAA,EACA,MAAM,OAAO,EAAE,MAAM,GAAG;AACtB,wBAAoB;AAGpB,UAAM,YAAiB,OAAO,YAAY;AAC1C,UAAM,UAAU,CAAC,OAAc;AAC7B,UAAI,GAAG,YAAY;AACjB,WAAG,eAAe;AAAA,MACpB;AAQA,YAAM,EAAE,KAAK,MAAM,aAAa,IAAI;AACpC,YAAM,WAAW,aAAa;AAC9B,YAAM,YAAY,SAAS,KAAK,GAAG,KAAK,CAAC;AACzC,YAAM,eAAe,UAAU,gBAAgB;AAC/C,YAAM,cAAc,UAAU,eAAe;AAC7C,YAAM,gBAAgB,SAAS;AAU/B,UAAI,kBAAkB,KAAK;AACzB,YAAI,iBAAiB,aAAa;AAChC,oBAAU,SAAS,GAAG;AAAA,QACxB;AAAA,MACF,OAAO;AACL,kBAAU,UAAU,KAAK,WAAW;AAAA,MACtC;AAAA,IACF;AACA,WAAO,MAAM;AACX,aAAO;AAAA,QACL;AAAA,QACA;AAAA,UACE;AAAA,UACA,GAAG;AAAA,QACL;AAAA,QACA,MAAM,WAAW,MAAM,QAAQ;AAAA,MACjC;AAAA,IACF;AAAA,EACF;AACF,CAAC;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { h, defineComponent } from "vue";
|
|
2
|
-
const WILL_CHANGE = "ionTabsWillChange";
|
|
3
|
-
const DID_CHANGE = "ionTabsDidChange";
|
|
4
|
-
export const IonTabs = /* @__PURE__ */ defineComponent({
|
|
5
|
-
name: "IonTabs",
|
|
6
|
-
emits: [WILL_CHANGE, DID_CHANGE],
|
|
7
|
-
render() {
|
|
8
|
-
const { $slots: slots, $emit } = this;
|
|
9
|
-
const slottedContent = slots.default && slots.default();
|
|
10
|
-
let routerOutlet;
|
|
11
|
-
if (slottedContent && slottedContent.length > 0) {
|
|
12
|
-
routerOutlet = slottedContent.find(
|
|
13
|
-
(child) => child.type && child.type.name === "IonRouterOutlet"
|
|
14
|
-
);
|
|
15
|
-
}
|
|
16
|
-
if (!routerOutlet) {
|
|
17
|
-
throw new Error(
|
|
18
|
-
"IonTabs must contain an IonRouterOutlet. See https://ionicframework.com/docs/vue/navigation#working-with-tabs for more information."
|
|
19
|
-
);
|
|
20
|
-
}
|
|
21
|
-
let childrenToRender = [
|
|
22
|
-
h(
|
|
23
|
-
"div",
|
|
24
|
-
{
|
|
25
|
-
class: "tabs-inner",
|
|
26
|
-
style: {
|
|
27
|
-
position: "relative",
|
|
28
|
-
flex: "1",
|
|
29
|
-
contain: "layout size style"
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
routerOutlet
|
|
33
|
-
)
|
|
34
|
-
];
|
|
35
|
-
if (slottedContent && slottedContent.length > 0) {
|
|
36
|
-
const filteredContent = slottedContent.filter(
|
|
37
|
-
(child) => !child.type || child.type && child.type.name !== "IonRouterOutlet"
|
|
38
|
-
);
|
|
39
|
-
const slottedTabBar = filteredContent.find(
|
|
40
|
-
(child) => child.type && child.type.name === "IonTabBar"
|
|
41
|
-
);
|
|
42
|
-
const hasTopSlotTabBar = slottedTabBar && slottedTabBar.props?.slot === "top";
|
|
43
|
-
if (slottedTabBar) {
|
|
44
|
-
if (!slottedTabBar.props) {
|
|
45
|
-
slottedTabBar.props = {};
|
|
46
|
-
}
|
|
47
|
-
slottedTabBar.props._tabsWillChange = (tab) => $emit(WILL_CHANGE, { tab });
|
|
48
|
-
slottedTabBar.props._tabsDidChange = (tab) => $emit(DID_CHANGE, { tab });
|
|
49
|
-
}
|
|
50
|
-
if (hasTopSlotTabBar) {
|
|
51
|
-
childrenToRender = [...filteredContent, ...childrenToRender];
|
|
52
|
-
} else {
|
|
53
|
-
childrenToRender = [...childrenToRender, ...filteredContent];
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
return h(
|
|
57
|
-
"ion-tabs",
|
|
58
|
-
{
|
|
59
|
-
style: {
|
|
60
|
-
display: "flex",
|
|
61
|
-
position: "absolute",
|
|
62
|
-
top: "0",
|
|
63
|
-
left: "0",
|
|
64
|
-
right: "0",
|
|
65
|
-
bottom: "0",
|
|
66
|
-
"flex-direction": "column",
|
|
67
|
-
width: "100%",
|
|
68
|
-
height: "100%",
|
|
69
|
-
contain: "layout size style",
|
|
70
|
-
"z-index": "0"
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
childrenToRender
|
|
74
|
-
);
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
//# sourceMappingURL=IonTabs.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/IonTabs.ts"],
|
|
4
|
-
"sourcesContent": ["import type { VNode } from \"vue\";\nimport { h, defineComponent } from \"vue\";\n\nconst WILL_CHANGE = \"ionTabsWillChange\";\nconst DID_CHANGE = \"ionTabsDidChange\";\n\n// TODO(FW-2969): types\n\nexport const IonTabs = /*@__PURE__*/ defineComponent({\n name: \"IonTabs\",\n emits: [WILL_CHANGE, DID_CHANGE],\n render() {\n const { $slots: slots, $emit } = this;\n const slottedContent = slots.default && slots.default();\n let routerOutlet;\n\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(\n (child: VNode) =>\n child.type && (child.type as any).name === \"IonRouterOutlet\"\n );\n }\n\n if (!routerOutlet) {\n throw new Error(\n \"IonTabs must contain an IonRouterOutlet. See https://ionicframework.com/docs/vue/navigation#working-with-tabs for more information.\"\n );\n }\n\n let childrenToRender = [\n h(\n \"div\",\n {\n class: \"tabs-inner\",\n style: {\n position: \"relative\",\n flex: \"1\",\n contain: \"layout size style\",\n },\n },\n routerOutlet\n ),\n ];\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(\n (child: VNode) =>\n !child.type ||\n (child.type && (child.type as any).name !== \"IonRouterOutlet\")\n );\n\n const slottedTabBar = filteredContent.find(\n (child: VNode) => child.type && (child.type as any).name === \"IonTabBar\"\n );\n const hasTopSlotTabBar =\n slottedTabBar && slottedTabBar.props?.slot === \"top\";\n\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: string) =>\n $emit(WILL_CHANGE, { tab });\n slottedTabBar.props._tabsDidChange = (tab: string) =>\n $emit(DID_CHANGE, { tab });\n }\n\n if (hasTopSlotTabBar) {\n childrenToRender = [...filteredContent, ...childrenToRender];\n } else {\n childrenToRender = [...childrenToRender, ...filteredContent];\n }\n }\n\n return h(\n \"ion-tabs\",\n {\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 },\n childrenToRender\n );\n },\n});\n"],
|
|
5
|
-
"mappings": "AACA,SAAS,GAAG,uBAAuB;AAEnC,MAAM,cAAc;AACpB,MAAM,aAAa;AAIZ,aAAM,UAAwB,gCAAgB;AAAA,EACnD,MAAM;AAAA,EACN,OAAO,CAAC,aAAa,UAAU;AAAA,EAC/B,SAAS;AACP,UAAM,EAAE,QAAQ,OAAO,MAAM,IAAI;AACjC,UAAM,iBAAiB,MAAM,WAAW,MAAM,QAAQ;AACtD,QAAI;AAMJ,QAAI,kBAAkB,eAAe,SAAS,GAAG;AAC/C,qBAAe,eAAe;AAAA,QAC5B,CAAC,UACC,MAAM,QAAS,MAAM,KAAa,SAAS;AAAA,MAC/C;AAAA,IACF;AAEA,QAAI,CAAC,cAAc;AACjB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,QAAI,mBAAmB;AAAA,MACrB;AAAA,QACE;AAAA,QACA;AAAA,UACE,OAAO;AAAA,UACP,OAAO;AAAA,YACL,UAAU;AAAA,YACV,MAAM;AAAA,YACN,SAAS;AAAA,UACX;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAOA,QAAI,kBAAkB,eAAe,SAAS,GAAG;AAK/C,YAAM,kBAAkB,eAAe;AAAA,QACrC,CAAC,UACC,CAAC,MAAM,QACN,MAAM,QAAS,MAAM,KAAa,SAAS;AAAA,MAChD;AAEA,YAAM,gBAAgB,gBAAgB;AAAA,QACpC,CAAC,UAAiB,MAAM,QAAS,MAAM,KAAa,SAAS;AAAA,MAC/D;AACA,YAAM,mBACJ,iBAAiB,cAAc,OAAO,SAAS;AAEjD,UAAI,eAAe;AACjB,YAAI,CAAC,cAAc,OAAO;AACxB,wBAAc,QAAQ,CAAC;AAAA,QACzB;AAQA,sBAAc,MAAM,kBAAkB,CAAC,QACrC,MAAM,aAAa,EAAE,IAAI,CAAC;AAC5B,sBAAc,MAAM,iBAAiB,CAAC,QACpC,MAAM,YAAY,EAAE,IAAI,CAAC;AAAA,MAC7B;AAEA,UAAI,kBAAkB;AACpB,2BAAmB,CAAC,GAAG,iBAAiB,GAAG,gBAAgB;AAAA,MAC7D,OAAO;AACL,2BAAmB,CAAC,GAAG,kBAAkB,GAAG,eAAe;AAAA,MAC7D;AAAA,IACF;AAEA,WAAO;AAAA,MACL;AAAA,MACA;AAAA,QACE,OAAO;AAAA,UACL,SAAS;AAAA,UACT,UAAU;AAAA,UACV,KAAK;AAAA,UACL,MAAM;AAAA,UACN,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,kBAAkB;AAAA,UAClB,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,SAAS;AAAA,UACT,WAAW;AAAA,QACb;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF,CAAC;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { defineCustomElement as defineIonActionSheetCustomElement } from "@ionic/core/components/ion-action-sheet.js";
|
|
2
|
-
import { defineCustomElement as defineIonAlertCustomElement } from "@ionic/core/components/ion-alert.js";
|
|
3
|
-
import { defineCustomElement as defineIonLoadingCustomElement } from "@ionic/core/components/ion-loading.js";
|
|
4
|
-
import { defineCustomElement as defineIonPickerCustomElement } from "@ionic/core/components/ion-picker.js";
|
|
5
|
-
import { defineCustomElement as defineIonToastCustomElement } from "@ionic/core/components/ion-toast.js";
|
|
6
|
-
import { defineCustomElement as defineIonModalCustomElement } from "@ionic/core/components/ion-modal.js";
|
|
7
|
-
import { defineCustomElement as defineIonPopoverCustomElement } from "@ionic/core/components/ion-popover.js";
|
|
8
|
-
import { defineOverlayContainer } from "../vue-component-lib/overlays";
|
|
9
|
-
export const IonActionSheet = /* @__PURE__ */ defineOverlayContainer("ion-action-sheet", defineIonActionSheetCustomElement, ["animated", "backdropDismiss", "buttons", "cssClass", "enterAnimation", "header", "htmlAttributes", "isOpen", "keyboardClose", "leaveAnimation", "mode", "subHeader", "translucent", "trigger"]);
|
|
10
|
-
export const IonAlert = /* @__PURE__ */ defineOverlayContainer("ion-alert", defineIonAlertCustomElement, ["animated", "backdropDismiss", "buttons", "cssClass", "enterAnimation", "header", "htmlAttributes", "inputs", "isOpen", "keyboardClose", "leaveAnimation", "message", "mode", "subHeader", "translucent", "trigger"]);
|
|
11
|
-
export const IonLoading = /* @__PURE__ */ defineOverlayContainer("ion-loading", defineIonLoadingCustomElement, ["animated", "backdropDismiss", "cssClass", "duration", "enterAnimation", "htmlAttributes", "isOpen", "keyboardClose", "leaveAnimation", "message", "mode", "showBackdrop", "spinner", "translucent", "trigger"]);
|
|
12
|
-
export const IonPicker = /* @__PURE__ */ defineOverlayContainer("ion-picker", defineIonPickerCustomElement, ["animated", "backdropDismiss", "buttons", "columns", "cssClass", "duration", "enterAnimation", "htmlAttributes", "isOpen", "keyboardClose", "leaveAnimation", "mode", "showBackdrop", "trigger"]);
|
|
13
|
-
export const IonToast = /* @__PURE__ */ defineOverlayContainer("ion-toast", defineIonToastCustomElement, ["animated", "buttons", "color", "cssClass", "duration", "enterAnimation", "header", "htmlAttributes", "icon", "isOpen", "keyboardClose", "layout", "leaveAnimation", "message", "mode", "position", "positionAnchor", "translucent", "trigger"]);
|
|
14
|
-
export 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);
|
|
15
|
-
export 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"]);
|
|
16
|
-
//# sourceMappingURL=Overlays.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/Overlays.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * This is an autogenerated file created by 'scripts/copy-overlays.js'.\n * Changes made to this file will be overwritten on build.\n */\n\nimport {\n JSX,\n} from '@ionic/core/components';\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'\n\nimport { defineOverlayContainer } from '../vue-component-lib/overlays';\n\nexport const IonActionSheet = /*@__PURE__*/ defineOverlayContainer<JSX.IonActionSheet>('ion-action-sheet', defineIonActionSheetCustomElement, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger']);\n \nexport const IonAlert = /*@__PURE__*/ defineOverlayContainer<JSX.IonAlert>('ion-alert', defineIonAlertCustomElement, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger']);\n \nexport const IonLoading = /*@__PURE__*/ defineOverlayContainer<JSX.IonLoading>('ion-loading', defineIonLoadingCustomElement, ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger']);\n \nexport const IonPicker = /*@__PURE__*/ defineOverlayContainer<JSX.IonPicker>('ion-picker', defineIonPickerCustomElement, ['animated', 'backdropDismiss', 'buttons', 'columns', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'showBackdrop', 'trigger']);\n \nexport const IonToast = /*@__PURE__*/ defineOverlayContainer<JSX.IonToast>('ion-toast', defineIonToastCustomElement, ['animated', 'buttons', 'color', 'cssClass', 'duration', 'enterAnimation', 'header', 'htmlAttributes', 'icon', 'isOpen', 'keyboardClose', 'layout', 'leaveAnimation', 'message', 'mode', 'position', 'positionAnchor', 'translucent', 'trigger']);\n \nexport const IonModal = /*@__PURE__*/ defineOverlayContainer<JSX.IonModal>('ion-modal', defineIonModalCustomElement, ['animated', 'backdropBreakpoint', 'backdropDismiss', 'breakpoints', 'canDismiss', 'enterAnimation', 'handle', 'handleBehavior', 'htmlAttributes', 'initialBreakpoint', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'presentingElement', 'showBackdrop', 'trigger'], true);\n \nexport const IonPopover = /*@__PURE__*/ defineOverlayContainer<JSX.IonPopover>('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 \n"],
|
|
5
|
-
"mappings": "AASA,SAAS,uBAAuB,yCAAyC;AACzE,SAAS,uBAAuB,mCAAmC;AACnE,SAAS,uBAAuB,qCAAqC;AACrE,SAAS,uBAAuB,oCAAoC;AACpE,SAAS,uBAAuB,mCAAmC;AACnE,SAAS,uBAAuB,mCAAmC;AACnE,SAAS,uBAAuB,qCAAqC;AAErE,SAAS,8BAA8B;AAEhC,aAAM,iBAA+B,uCAA2C,oBAAoB,mCAAmC,CAAC,YAAY,mBAAmB,WAAW,YAAY,kBAAkB,UAAU,kBAAkB,UAAU,iBAAiB,kBAAkB,QAAQ,aAAa,eAAe,SAAS,CAAC;AAEvU,aAAM,WAAyB,uCAAqC,aAAa,6BAA6B,CAAC,YAAY,mBAAmB,WAAW,YAAY,kBAAkB,UAAU,kBAAkB,UAAU,UAAU,iBAAiB,kBAAkB,WAAW,QAAQ,aAAa,eAAe,SAAS,CAAC;AAEnU,aAAM,aAA2B,uCAAuC,eAAe,+BAA+B,CAAC,YAAY,mBAAmB,YAAY,YAAY,kBAAkB,kBAAkB,UAAU,iBAAiB,kBAAkB,WAAW,QAAQ,gBAAgB,WAAW,eAAe,SAAS,CAAC;AAEtU,aAAM,YAA0B,uCAAsC,cAAc,8BAA8B,CAAC,YAAY,mBAAmB,WAAW,WAAW,YAAY,YAAY,kBAAkB,kBAAkB,UAAU,iBAAiB,kBAAkB,QAAQ,gBAAgB,SAAS,CAAC;AAEnT,aAAM,WAAyB,uCAAqC,aAAa,6BAA6B,CAAC,YAAY,WAAW,SAAS,YAAY,YAAY,kBAAkB,UAAU,kBAAkB,QAAQ,UAAU,iBAAiB,UAAU,kBAAkB,WAAW,QAAQ,YAAY,kBAAkB,eAAe,SAAS,CAAC;AAE9V,aAAM,WAAyB,uCAAqC,aAAa,6BAA6B,CAAC,YAAY,sBAAsB,mBAAmB,eAAe,cAAc,kBAAkB,UAAU,kBAAkB,kBAAkB,qBAAqB,UAAU,uBAAuB,iBAAiB,kBAAkB,QAAQ,qBAAqB,gBAAgB,SAAS,GAAG,IAAI;AAEvZ,aAAM,aAA2B,uCAAuC,eAAe,+BAA+B,CAAC,aAAa,YAAY,SAAS,mBAAmB,aAAa,kBAAkB,mBAAmB,kBAAkB,SAAS,kBAAkB,UAAU,uBAAuB,iBAAiB,kBAAkB,QAAQ,aAAa,gBAAgB,QAAQ,QAAQ,eAAe,WAAW,eAAe,CAAC;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
package/dist/controllers.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
modalController as modalCtrl,
|
|
3
|
-
popoverController as popoverCtrl,
|
|
4
|
-
alertController as alertCtrl,
|
|
5
|
-
actionSheetController as actionSheetCtrl,
|
|
6
|
-
loadingController as loadingCtrl,
|
|
7
|
-
pickerController as pickerCtrl,
|
|
8
|
-
toastController as toastCtrl
|
|
9
|
-
} from "@ionic/core/components";
|
|
10
|
-
import { defineCustomElement as defineIonActionSheetCustomElement } from "@ionic/core/components/ion-action-sheet.js";
|
|
11
|
-
import { defineCustomElement as defineIonAlertCustomElement } from "@ionic/core/components/ion-alert.js";
|
|
12
|
-
import { defineCustomElement as defineIonLoadingCustomElement } from "@ionic/core/components/ion-loading.js";
|
|
13
|
-
import { defineCustomElement as defineIonModalCustomElement } from "@ionic/core/components/ion-modal.js";
|
|
14
|
-
import { defineCustomElement as defineIonPickerCustomElement } from "@ionic/core/components/ion-picker.js";
|
|
15
|
-
import { defineCustomElement as defineIonPopoverCustomElement } from "@ionic/core/components/ion-popover.js";
|
|
16
|
-
import { defineCustomElement as defineIonToastCustomElement } from "@ionic/core/components/ion-toast.js";
|
|
17
|
-
import { VueDelegate } from "./framework-delegate";
|
|
18
|
-
const createController = (defineCustomElement, oldController, useDelegate = false) => {
|
|
19
|
-
const delegate = useDelegate ? VueDelegate() : void 0;
|
|
20
|
-
const oldCreate = oldController.create.bind(oldController);
|
|
21
|
-
oldController.create = (options) => {
|
|
22
|
-
defineCustomElement();
|
|
23
|
-
return oldCreate({
|
|
24
|
-
...options,
|
|
25
|
-
delegate
|
|
26
|
-
});
|
|
27
|
-
};
|
|
28
|
-
return oldController;
|
|
29
|
-
};
|
|
30
|
-
const modalController = /* @__PURE__ */ createController(
|
|
31
|
-
defineIonModalCustomElement,
|
|
32
|
-
modalCtrl,
|
|
33
|
-
true
|
|
34
|
-
);
|
|
35
|
-
const popoverController = /* @__PURE__ */ createController(
|
|
36
|
-
defineIonPopoverCustomElement,
|
|
37
|
-
popoverCtrl,
|
|
38
|
-
true
|
|
39
|
-
);
|
|
40
|
-
const alertController = /* @__PURE__ */ createController(
|
|
41
|
-
defineIonAlertCustomElement,
|
|
42
|
-
alertCtrl
|
|
43
|
-
);
|
|
44
|
-
const actionSheetController = /* @__PURE__ */ createController(
|
|
45
|
-
defineIonActionSheetCustomElement,
|
|
46
|
-
actionSheetCtrl
|
|
47
|
-
);
|
|
48
|
-
const loadingController = /* @__PURE__ */ createController(
|
|
49
|
-
defineIonLoadingCustomElement,
|
|
50
|
-
loadingCtrl
|
|
51
|
-
);
|
|
52
|
-
const pickerController = /* @__PURE__ */ createController(
|
|
53
|
-
defineIonPickerCustomElement,
|
|
54
|
-
pickerCtrl
|
|
55
|
-
);
|
|
56
|
-
const toastController = /* @__PURE__ */ createController(
|
|
57
|
-
defineIonToastCustomElement,
|
|
58
|
-
toastCtrl
|
|
59
|
-
);
|
|
60
|
-
export {
|
|
61
|
-
modalController,
|
|
62
|
-
popoverController,
|
|
63
|
-
alertController,
|
|
64
|
-
actionSheetController,
|
|
65
|
-
loadingController,
|
|
66
|
-
pickerController,
|
|
67
|
-
toastController
|
|
68
|
-
};
|
|
69
|
-
//# sourceMappingURL=controllers.js.map
|
package/dist/controllers.js.map
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/controllers.ts"],
|
|
4
|
-
"sourcesContent": ["import {\n modalController as modalCtrl,\n popoverController as popoverCtrl,\n alertController as alertCtrl,\n actionSheetController as actionSheetCtrl,\n loadingController as loadingCtrl,\n pickerController as pickerCtrl,\n toastController as toastCtrl,\n} 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\";\n\nimport { VueDelegate } from \"./framework-delegate\";\n\n// TODO(FW-2969): types\n\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: {\n <T>(\n defineCustomElement: () => void,\n oldController: T,\n useDelegate?: boolean\n ): T;\n} = (\n defineCustomElement: () => void,\n oldController: any,\n useDelegate = false\n) => {\n const delegate = useDelegate ? VueDelegate() : undefined;\n const oldCreate = oldController.create.bind(oldController);\n oldController.create = (options: any) => {\n defineCustomElement();\n\n return oldCreate({\n ...options,\n delegate,\n });\n };\n\n return oldController;\n};\n\nconst modalController = /*@__PURE__*/ createController(\n defineIonModalCustomElement,\n modalCtrl,\n true\n);\nconst popoverController = /*@__PURE__*/ createController(\n defineIonPopoverCustomElement,\n popoverCtrl,\n true\n);\nconst alertController = /*@__PURE__*/ createController(\n defineIonAlertCustomElement,\n alertCtrl\n);\nconst actionSheetController = /*@__PURE__*/ createController(\n defineIonActionSheetCustomElement,\n actionSheetCtrl\n);\nconst loadingController = /*@__PURE__*/ createController(\n defineIonLoadingCustomElement,\n loadingCtrl\n);\nconst pickerController = /*@__PURE__*/ createController(\n defineIonPickerCustomElement,\n pickerCtrl\n);\nconst toastController = /*@__PURE__*/ createController(\n defineIonToastCustomElement,\n toastCtrl\n);\n\nexport {\n modalController,\n popoverController,\n alertController,\n actionSheetController,\n loadingController,\n pickerController,\n toastController,\n};\n"],
|
|
5
|
-
"mappings": "AAAA;AAAA,EACE,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,mBAAmB;AAAA,EACnB,yBAAyB;AAAA,EACzB,qBAAqB;AAAA,EACrB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,OACd;AACP,SAAS,uBAAuB,yCAAyC;AACzE,SAAS,uBAAuB,mCAAmC;AACnE,SAAS,uBAAuB,qCAAqC;AACrE,SAAS,uBAAuB,mCAAmC;AACnE,SAAS,uBAAuB,oCAAoC;AACpE,SAAS,uBAAuB,qCAAqC;AACrE,SAAS,uBAAuB,mCAAmC;AAEnE,SAAS,mBAAmB;AAS5B,MAAM,mBAMF,CACF,qBACA,eACA,cAAc,UACX;AACH,QAAM,WAAW,cAAc,YAAY,IAAI;AAC/C,QAAM,YAAY,cAAc,OAAO,KAAK,aAAa;AACzD,gBAAc,SAAS,CAAC,YAAiB;AACvC,wBAAoB;AAEpB,WAAO,UAAU;AAAA,MACf,GAAG;AAAA,MACH;AAAA,IACF,CAAC;AAAA,EACH;AAEA,SAAO;AACT;AAEA,MAAM,kBAAgC;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AACF;AACA,MAAM,oBAAkC;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AACF;AACA,MAAM,kBAAgC;AAAA,EACpC;AAAA,EACA;AACF;AACA,MAAM,wBAAsC;AAAA,EAC1C;AAAA,EACA;AACF;AACA,MAAM,oBAAkC;AAAA,EACtC;AAAA,EACA;AACF;AACA,MAAM,mBAAiC;AAAA,EACrC;AAAA,EACA;AACF;AACA,MAAM,kBAAgC;AAAA,EACpC;AAAA,EACA;AACF;AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { h, Teleport } from "vue";
|
|
2
|
-
import {
|
|
3
|
-
addTeleportedUserComponent,
|
|
4
|
-
removeTeleportedUserComponent
|
|
5
|
-
} from "./components/IonApp";
|
|
6
|
-
export const VueDelegate = (addFn = addTeleportedUserComponent, removeFn = removeTeleportedUserComponent) => {
|
|
7
|
-
const refMap = /* @__PURE__ */ new WeakMap();
|
|
8
|
-
const attachViewToDom = (parentElement, componentOrTagName, componentProps = {}, classes) => {
|
|
9
|
-
const div = document.createElement("div");
|
|
10
|
-
classes && div.classList.add(...classes);
|
|
11
|
-
parentElement.appendChild(div);
|
|
12
|
-
const hostComponent = h(
|
|
13
|
-
Teleport,
|
|
14
|
-
{ to: div },
|
|
15
|
-
h(componentOrTagName, { ...componentProps })
|
|
16
|
-
);
|
|
17
|
-
refMap.set(div, hostComponent);
|
|
18
|
-
addFn(hostComponent);
|
|
19
|
-
return Promise.resolve(div);
|
|
20
|
-
};
|
|
21
|
-
const removeViewFromDom = (_container, component) => {
|
|
22
|
-
const hostComponent = refMap.get(component);
|
|
23
|
-
hostComponent && removeFn(hostComponent);
|
|
24
|
-
return Promise.resolve();
|
|
25
|
-
};
|
|
26
|
-
return { attachViewToDom, removeViewFromDom };
|
|
27
|
-
};
|
|
28
|
-
//# sourceMappingURL=framework-delegate.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/framework-delegate.ts"],
|
|
4
|
-
"sourcesContent": ["import type { FrameworkDelegate } from \"@ionic/core/components\";\nimport type { VNode } from \"vue\";\nimport { h, Teleport } from \"vue\";\n\nimport {\n addTeleportedUserComponent,\n removeTeleportedUserComponent,\n} from \"./components/IonApp\";\n\nexport const VueDelegate = (\n addFn = addTeleportedUserComponent,\n removeFn = removeTeleportedUserComponent\n): FrameworkDelegate => {\n // `h` doesn't provide a type for the component argument\n const refMap = new WeakMap<any, VNode>();\n\n // TODO(FW-2969): types\n const attachViewToDom = (\n parentElement: HTMLElement,\n componentOrTagName: any | string,\n componentProps: any = {},\n classes?: string[]\n ) => {\n const div = document.createElement(\"div\");\n classes && div.classList.add(...classes);\n parentElement.appendChild(div);\n\n const hostComponent = h(\n Teleport,\n { to: div },\n h(componentOrTagName, { ...componentProps })\n );\n\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\n addFn(hostComponent);\n\n return Promise.resolve(div);\n };\n\n const removeViewFromDom = (_container: any, component: any) => {\n const hostComponent = refMap.get(component);\n hostComponent && removeFn(hostComponent);\n\n return Promise.resolve();\n };\n\n return { attachViewToDom, removeViewFromDom };\n};\n"],
|
|
5
|
-
"mappings": "AAEA,SAAS,GAAG,gBAAgB;AAE5B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEA,aAAM,cAAc,CACzB,QAAQ,4BACR,WAAW,kCACW;AAEtB,QAAM,SAAS,oBAAI,QAAoB;AAGvC,QAAM,kBAAkB,CACtB,eACA,oBACA,iBAAsB,CAAC,GACvB,YACG;AACH,UAAM,MAAM,SAAS,cAAc,KAAK;AACxC,eAAW,IAAI,UAAU,IAAI,GAAG,OAAO;AACvC,kBAAc,YAAY,GAAG;AAE7B,UAAM,gBAAgB;AAAA,MACpB;AAAA,MACA,EAAE,IAAI,IAAI;AAAA,MACV,EAAE,oBAAoB,EAAE,GAAG,eAAe,CAAC;AAAA,IAC7C;AASA,WAAO,IAAI,KAAK,aAAa;AAE7B,UAAM,aAAa;AAEnB,WAAO,QAAQ,QAAQ,GAAG;AAAA,EAC5B;AAEA,QAAM,oBAAoB,CAAC,YAAiB,cAAmB;AAC7D,UAAM,gBAAgB,OAAO,IAAI,SAAS;AAC1C,qBAAiB,SAAS,aAAa;AAEvC,WAAO,QAAQ,QAAQ;AAAA,EACzB;AAEA,SAAO,EAAE,iBAAiB,kBAAkB;AAC9C;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
package/dist/globalExtensions.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=globalExtensions.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export const useBackButton = (priority, handler) => {
|
|
2
|
-
const callback = (ev) => ev.detail.register(priority, handler);
|
|
3
|
-
const unregister = () => document.removeEventListener("ionBackButton", callback);
|
|
4
|
-
document.addEventListener("ionBackButton", callback);
|
|
5
|
-
return { unregister };
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=back-button.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/hooks/back-button.ts"],
|
|
4
|
-
"sourcesContent": ["import type { BackButtonEvent } from \"@ionic/core/components\";\n\ntype Handler = (processNextHandler: () => void) => Promise<any> | void | null;\nexport interface UseBackButtonResult {\n unregister: () => void;\n}\n\nexport const useBackButton = (\n priority: number,\n handler: Handler\n): UseBackButtonResult => {\n const callback = (ev: BackButtonEvent) =>\n ev.detail.register(priority, handler);\n const unregister = () =>\n document.removeEventListener(\"ionBackButton\", callback);\n\n document.addEventListener(\"ionBackButton\", callback);\n\n return { unregister };\n};\n"],
|
|
5
|
-
"mappings": "AAOO,aAAM,gBAAgB,CAC3B,UACA,YACwB;AACxB,QAAM,WAAW,CAAC,OAChB,GAAG,OAAO,SAAS,UAAU,OAAO;AACtC,QAAM,aAAa,MACjB,SAAS,oBAAoB,iBAAiB,QAAQ;AAExD,WAAS,iBAAiB,iBAAiB,QAAQ;AAEnD,SAAO,EAAE,WAAW;AACtB;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
package/dist/hooks/keyboard.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { ref } from "vue";
|
|
2
|
-
export const useKeyboard = () => {
|
|
3
|
-
const isOpen = ref(false);
|
|
4
|
-
const keyboardHeight = ref(0);
|
|
5
|
-
const showCallback = (ev) => {
|
|
6
|
-
isOpen.value = true;
|
|
7
|
-
keyboardHeight.value = ev.detail.keyboardHeight;
|
|
8
|
-
};
|
|
9
|
-
const hideCallback = () => {
|
|
10
|
-
isOpen.value = false;
|
|
11
|
-
keyboardHeight.value = 0;
|
|
12
|
-
};
|
|
13
|
-
const unregister = () => {
|
|
14
|
-
if (typeof window !== "undefined") {
|
|
15
|
-
window.removeEventListener("ionKeyboardDidShow", showCallback);
|
|
16
|
-
window.removeEventListener("ionKeyboardDidHide", hideCallback);
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
if (typeof window !== "undefined") {
|
|
20
|
-
window.addEventListener("ionKeyboardDidShow", showCallback);
|
|
21
|
-
window.addEventListener("ionKeyboardDidHide", hideCallback);
|
|
22
|
-
}
|
|
23
|
-
return {
|
|
24
|
-
isOpen,
|
|
25
|
-
keyboardHeight,
|
|
26
|
-
unregister
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
//# sourceMappingURL=keyboard.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/hooks/keyboard.ts"],
|
|
4
|
-
"sourcesContent": ["import type { Ref } from \"vue\";\nimport { ref } from \"vue\";\n\nexport interface UseKeyboardResult {\n isOpen: Ref<boolean>;\n keyboardHeight: Ref<number>;\n unregister: () => void;\n}\n\nexport const useKeyboard = (): UseKeyboardResult => {\n const isOpen = ref(false);\n const keyboardHeight = ref(0);\n\n const showCallback = (ev: CustomEvent) => {\n isOpen.value = true;\n keyboardHeight.value = ev.detail.keyboardHeight;\n };\n\n const hideCallback = () => {\n isOpen.value = false;\n keyboardHeight.value = 0;\n };\n\n const unregister = () => {\n if (typeof (window as any) !== \"undefined\") {\n window.removeEventListener(\"ionKeyboardDidShow\", showCallback);\n window.removeEventListener(\"ionKeyboardDidHide\", hideCallback);\n }\n };\n\n if (typeof (window as any) !== \"undefined\") {\n window.addEventListener(\"ionKeyboardDidShow\", showCallback);\n window.addEventListener(\"ionKeyboardDidHide\", hideCallback);\n }\n\n return {\n isOpen,\n keyboardHeight,\n unregister,\n };\n};\n"],
|
|
5
|
-
"mappings": "AACA,SAAS,WAAW;AAQb,aAAM,cAAc,MAAyB;AAClD,QAAM,SAAS,IAAI,KAAK;AACxB,QAAM,iBAAiB,IAAI,CAAC;AAE5B,QAAM,eAAe,CAAC,OAAoB;AACxC,WAAO,QAAQ;AACf,mBAAe,QAAQ,GAAG,OAAO;AAAA,EACnC;AAEA,QAAM,eAAe,MAAM;AACzB,WAAO,QAAQ;AACf,mBAAe,QAAQ;AAAA,EACzB;AAEA,QAAM,aAAa,MAAM;AACvB,QAAI,OAAQ,WAAmB,aAAa;AAC1C,aAAO,oBAAoB,sBAAsB,YAAY;AAC7D,aAAO,oBAAoB,sBAAsB,YAAY;AAAA,IAC/D;AAAA,EACF;AAEA,MAAI,OAAQ,WAAmB,aAAa;AAC1C,WAAO,iBAAiB,sBAAsB,YAAY;AAC1D,WAAO,iBAAiB,sBAAsB,YAAY;AAAA,EAC5D;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
package/dist/hooks/lifecycle.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { getCurrentInstance } from "vue";
|
|
2
|
-
import { LifecycleHooks } from "../utils";
|
|
3
|
-
const injectHook = (lifecycleType, hook, component) => {
|
|
4
|
-
if (component) {
|
|
5
|
-
const target = component;
|
|
6
|
-
const hooks = target.proxy[lifecycleType] || (target.proxy[lifecycleType] = []);
|
|
7
|
-
if (target.exposed) {
|
|
8
|
-
target.exposed[lifecycleType] = hooks;
|
|
9
|
-
}
|
|
10
|
-
const wrappedHook = (...args) => {
|
|
11
|
-
if (target.isUnmounted) {
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
return args ? hook(...args) : hook();
|
|
15
|
-
};
|
|
16
|
-
hooks.push(wrappedHook);
|
|
17
|
-
return wrappedHook;
|
|
18
|
-
} else {
|
|
19
|
-
console.warn(
|
|
20
|
-
"[@ionic/vue]: Ionic Lifecycle Hooks can only be used during execution of setup()."
|
|
21
|
-
);
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
const createHook = (lifecycle) => {
|
|
25
|
-
return (hook, target = getCurrentInstance()) => injectHook(lifecycle, hook, target);
|
|
26
|
-
};
|
|
27
|
-
export const onIonViewWillEnter = createHook(LifecycleHooks.WillEnter);
|
|
28
|
-
export const onIonViewDidEnter = createHook(LifecycleHooks.DidEnter);
|
|
29
|
-
export const onIonViewWillLeave = createHook(LifecycleHooks.WillLeave);
|
|
30
|
-
export const onIonViewDidLeave = createHook(LifecycleHooks.DidLeave);
|
|
31
|
-
//# sourceMappingURL=lifecycle.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/hooks/lifecycle.ts"],
|
|
4
|
-
"sourcesContent": ["import type { ComponentInternalInstance } from \"vue\";\nimport { getCurrentInstance } from \"vue\";\n\nimport { LifecycleHooks } from \"../utils\";\n\n/**\n * Creates an returns a function that\n * can be used to provide a lifecycle hook.\n */\nconst injectHook = (\n lifecycleType: LifecycleHooks,\n hook: Function,\n component: ComponentInternalInstance | null\n): Function | undefined => {\n if (component) {\n // Add to public instance so it is accessible to IonRouterOutlet\n const target = component as any;\n const hooks =\n 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: unknown[]) => {\n if (target.isUnmounted) {\n return;\n }\n\n return args ? hook(...args) : hook();\n };\n\n hooks.push(wrappedHook);\n\n return wrappedHook;\n } else {\n console.warn(\n \"[@ionic/vue]: Ionic Lifecycle Hooks can only be used during execution of setup().\"\n );\n }\n};\n\nconst createHook = <T extends Function = () => any>(\n lifecycle: LifecycleHooks\n) => {\n return (\n hook: T,\n target: ComponentInternalInstance | null = getCurrentInstance()\n ) => injectHook(lifecycle, hook, target);\n};\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"],
|
|
5
|
-
"mappings": "AACA,SAAS,0BAA0B;AAEnC,SAAS,sBAAsB;AAM/B,MAAM,aAAa,CACjB,eACA,MACA,cACyB;AACzB,MAAI,WAAW;AAEb,UAAM,SAAS;AACf,UAAM,QACJ,OAAO,MAAM,aAAa,MAAM,OAAO,MAAM,aAAa,IAAI,CAAC;AAIjE,QAAI,OAAO,SAAS;AAClB,aAAO,QAAQ,aAAa,IAAI;AAAA,IAClC;AACA,UAAM,cAAc,IAAI,SAAoB;AAC1C,UAAI,OAAO,aAAa;AACtB;AAAA,MACF;AAEA,aAAO,OAAO,KAAK,GAAG,IAAI,IAAI,KAAK;AAAA,IACrC;AAEA,UAAM,KAAK,WAAW;AAEtB,WAAO;AAAA,EACT,OAAO;AACL,YAAQ;AAAA,MACN;AAAA,IACF;AAAA,EACF;AACF;AAEA,MAAM,aAAa,CACjB,cACG;AACH,SAAO,CACL,MACA,SAA2C,mBAAmB,MAC3D,WAAW,WAAW,MAAM,MAAM;AACzC;AAEO,aAAM,qBAAqB,WAAW,eAAe,SAAS;AAC9D,aAAM,oBAAoB,WAAW,eAAe,QAAQ;AAC5D,aAAM,qBAAqB,WAAW,eAAe,SAAS;AAC9D,aAAM,oBAAoB,WAAW,eAAe,QAAQ;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
package/dist/hooks/router.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { inject } from "vue";
|
|
2
|
-
export const useIonRouter = () => {
|
|
3
|
-
const { canGoBack, goBack, goForward, handleNavigate } = inject(
|
|
4
|
-
"navManager"
|
|
5
|
-
);
|
|
6
|
-
const navigate = (location, routerDirection, routerAction, routerAnimation) => handleNavigate(location, routerAction, routerDirection, routerAnimation);
|
|
7
|
-
const push = (location, routerAnimation) => navigate(location, "forward", "push", routerAnimation);
|
|
8
|
-
const replace = (location, routerAnimation) => navigate(location, "root", "replace", routerAnimation);
|
|
9
|
-
const back = (routerAnimation) => goBack(routerAnimation);
|
|
10
|
-
const forward = (routerAnimation) => goForward(routerAnimation);
|
|
11
|
-
return {
|
|
12
|
-
canGoBack,
|
|
13
|
-
push,
|
|
14
|
-
replace,
|
|
15
|
-
back,
|
|
16
|
-
forward,
|
|
17
|
-
navigate
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=router.js.map
|
package/dist/hooks/router.js.map
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/hooks/router.ts"],
|
|
4
|
-
"sourcesContent": ["import { inject } from \"vue\";\n\nimport type { AnimationBuilder } from \"../\";\n\nexport type RouteAction = \"push\" | \"pop\" | \"replace\";\nexport type RouteDirection = \"forward\" | \"back\" | \"root\" | \"none\";\n\nexport interface UseIonRouterResult {\n /**\n * The location parameter is really of type 'RouteLocationRaw'\n * imported from vue-router, but the @ionic/vue package should\n * not have a hard dependency on vue-router, so we just use 'any'.\n */\n canGoBack: (deep?: number) => boolean;\n push: (location: any, routerAnimation?: AnimationBuilder) => void;\n replace: (location: any, routerAnimation?: AnimationBuilder) => void;\n back: (routerAnimation?: AnimationBuilder) => void;\n forward: (routerAnimation?: AnimationBuilder) => void;\n navigate: (\n location: any,\n routerDirection?: RouteDirection,\n routerAction?: RouteAction,\n routerAnimation?: AnimationBuilder\n ) => void;\n}\n\n/**\n * Used to navigate within Vue Router\n * while controlling the animation.\n */\nexport const useIonRouter = (): UseIonRouterResult => {\n const { canGoBack, goBack, goForward, handleNavigate } = inject(\n \"navManager\"\n ) as any;\n\n const navigate = (\n location: any,\n routerDirection?: RouteDirection,\n routerAction?: RouteAction,\n routerAnimation?: AnimationBuilder\n ) => handleNavigate(location, routerAction, routerDirection, routerAnimation);\n\n const push = (location: any, routerAnimation?: AnimationBuilder) =>\n navigate(location, \"forward\", \"push\", routerAnimation);\n\n const replace = (location: any, routerAnimation?: AnimationBuilder) =>\n navigate(location, \"root\", \"replace\", routerAnimation);\n\n const back = (routerAnimation?: AnimationBuilder) => goBack(routerAnimation);\n\n const forward = (routerAnimation?: AnimationBuilder) =>\n goForward(routerAnimation);\n\n return {\n canGoBack,\n push,\n replace,\n back,\n forward,\n navigate,\n } as UseIonRouterResult;\n};\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,cAAc;AA8BhB,aAAM,eAAe,MAA0B;AACpD,QAAM,EAAE,WAAW,QAAQ,WAAW,eAAe,IAAI;AAAA,IACvD;AAAA,EACF;AAEA,QAAM,WAAW,CACf,UACA,iBACA,cACA,oBACG,eAAe,UAAU,cAAc,iBAAiB,eAAe;AAE5E,QAAM,OAAO,CAAC,UAAe,oBAC3B,SAAS,UAAU,WAAW,QAAQ,eAAe;AAEvD,QAAM,UAAU,CAAC,UAAe,oBAC9B,SAAS,UAAU,QAAQ,WAAW,eAAe;AAEvD,QAAM,OAAO,CAAC,oBAAuC,OAAO,eAAe;AAE3E,QAAM,UAAU,CAAC,oBACf,UAAU,eAAe;AAE3B,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
package/dist/ionic-vue.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { initialize } from "@ionic/core/components";
|
|
2
|
-
const toKebabCase = (eventName) => {
|
|
3
|
-
const kebabConvert = (name) => name.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase();
|
|
4
|
-
switch (eventName) {
|
|
5
|
-
case "ionInput":
|
|
6
|
-
return "v-ion-input";
|
|
7
|
-
case "ionChange":
|
|
8
|
-
return "v-ion-change";
|
|
9
|
-
default:
|
|
10
|
-
return kebabConvert(eventName);
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
const getHelperFunctions = () => {
|
|
14
|
-
return {
|
|
15
|
-
ael: (el, eventName, cb, opts) => el.addEventListener(toKebabCase(eventName), cb, opts),
|
|
16
|
-
rel: (el, eventName, cb, opts) => el.removeEventListener(toKebabCase(eventName), cb, opts),
|
|
17
|
-
ce: (eventName, opts) => new CustomEvent(toKebabCase(eventName), opts)
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
export const IonicVue = {
|
|
21
|
-
async install(_, config = {}) {
|
|
22
|
-
if (typeof document !== "undefined") {
|
|
23
|
-
document.documentElement.classList.add("ion-ce");
|
|
24
|
-
}
|
|
25
|
-
const { ael, rel, ce } = getHelperFunctions();
|
|
26
|
-
initialize({
|
|
27
|
-
...config,
|
|
28
|
-
_ael: ael,
|
|
29
|
-
_rel: rel,
|
|
30
|
-
_ce: ce
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=ionic-vue.js.map
|
package/dist/ionic-vue.js.map
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/ionic-vue.ts"],
|
|
4
|
-
"sourcesContent": ["import type { IonicConfig } from \"@ionic/core/components\";\nimport { initialize } from \"@ionic/core/components\";\nimport type { App, Plugin } from \"vue\";\n\n// TODO(FW-2969): types\n\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: string) => {\n const kebabConvert = (name: string) =>\n name.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, \"$1-$2\").toLowerCase();\n\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};\n\nconst getHelperFunctions = () => {\n return {\n ael: (el: any, eventName: string, cb: any, opts: any) =>\n el.addEventListener(toKebabCase(eventName), cb, opts),\n rel: (el: any, eventName: string, cb: any, opts: any) =>\n el.removeEventListener(toKebabCase(eventName), cb, opts),\n ce: (eventName: string, opts: any) =>\n new CustomEvent(toKebabCase(eventName), opts),\n };\n};\n\nexport const IonicVue: Plugin = {\n async install(_: App, config: IonicConfig = {}) {\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 as any) !== \"undefined\") {\n document.documentElement.classList.add(\"ion-ce\");\n }\n\n const { ael, rel, ce } = getHelperFunctions();\n initialize({\n ...config,\n _ael: ael,\n _rel: rel,\n _ce: ce,\n });\n },\n};\n"],
|
|
5
|
-
"mappings": "AACA,SAAS,kBAAkB;AAW3B,MAAM,cAAc,CAAC,cAAsB;AACzC,QAAM,eAAe,CAAC,SACpB,KAAK,QAAQ,gCAAgC,OAAO,EAAE,YAAY;AAEpE,UAAQ,WAAW;AAAA,IACjB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO,aAAa,SAAS;AAAA,EACjC;AACF;AAEA,MAAM,qBAAqB,MAAM;AAC/B,SAAO;AAAA,IACL,KAAK,CAAC,IAAS,WAAmB,IAAS,SACzC,GAAG,iBAAiB,YAAY,SAAS,GAAG,IAAI,IAAI;AAAA,IACtD,KAAK,CAAC,IAAS,WAAmB,IAAS,SACzC,GAAG,oBAAoB,YAAY,SAAS,GAAG,IAAI,IAAI;AAAA,IACzD,IAAI,CAAC,WAAmB,SACtB,IAAI,YAAY,YAAY,SAAS,GAAG,IAAI;AAAA,EAChD;AACF;AAEO,aAAM,WAAmB;AAAA,EAC9B,MAAM,QAAQ,GAAQ,SAAsB,CAAC,GAAG;AAQ9C,QAAI,OAAQ,aAAqB,aAAa;AAC5C,eAAS,gBAAgB,UAAU,IAAI,QAAQ;AAAA,IACjD;AAEA,UAAM,EAAE,KAAK,KAAK,GAAG,IAAI,mBAAmB;AAC5C,eAAW;AAAA,MACT,GAAG;AAAA,MACH,MAAM;AAAA,MACN,MAAM;AAAA,MACN,KAAK;AAAA,IACP,CAAC;AAAA,EACH;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|