@deijose/nix-ionic 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/favicon.ico +0 -0
- package/dist/index.cjs +2612 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +2602 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/index.d.ts +2 -3
- package/dist/nix-js-logo.png +0 -0
- package/dist/p-9VcRUwdB-BZDASSRz.js +323 -0
- package/dist/p-9VcRUwdB-BZDASSRz.js.map +1 -0
- package/dist/p-9VcRUwdB-Bw8gCHlL.cjs +340 -0
- package/dist/p-9VcRUwdB-Bw8gCHlL.cjs.map +1 -0
- package/dist/p-BJoMtgfR-DP5flT_f.js +1206 -0
- package/dist/p-BJoMtgfR-DP5flT_f.js.map +1 -0
- package/dist/p-BJoMtgfR-DyzhC2Uw.cjs +1319 -0
- package/dist/p-BJoMtgfR-DyzhC2Uw.cjs.map +1 -0
- package/dist/p-BgwEQWW6-BM87vVU5.cjs +72 -0
- package/dist/p-BgwEQWW6-BM87vVU5.cjs.map +1 -0
- package/dist/p-BgwEQWW6-DIo2-ASC.js +72 -0
- package/dist/p-BgwEQWW6-DIo2-ASC.js.map +1 -0
- package/dist/p-BmVRXR1y-BsLZqRc0.cjs +41 -0
- package/dist/p-BmVRXR1y-BsLZqRc0.cjs.map +1 -0
- package/dist/p-BmVRXR1y-t-R4bYc1.js +41 -0
- package/dist/p-BmVRXR1y-t-R4bYc1.js.map +1 -0
- package/dist/p-C59ryAuS-CFciP5mq.cjs +42 -0
- package/dist/p-C59ryAuS-CFciP5mq.cjs.map +1 -0
- package/dist/p-C59ryAuS-DazlzUfi.js +19 -0
- package/dist/p-C59ryAuS-DazlzUfi.js.map +1 -0
- package/dist/p-CBzELu-H-DlS7IGlS.cjs +292 -0
- package/dist/p-CBzELu-H-DlS7IGlS.cjs.map +1 -0
- package/dist/p-CBzELu-H-bk38lWXh.js +287 -0
- package/dist/p-CBzELu-H-bk38lWXh.js.map +1 -0
- package/dist/p-CU1SSH8_-1VQUU8Zi.js +27 -0
- package/dist/p-CU1SSH8_-1VQUU8Zi.js.map +1 -0
- package/dist/p-CU1SSH8_-D56vgRhd.cjs +32 -0
- package/dist/p-CU1SSH8_-D56vgRhd.cjs.map +1 -0
- package/dist/p-Cl0B-RWe-CaQPWG_o.js +258 -0
- package/dist/p-Cl0B-RWe-CaQPWG_o.js.map +1 -0
- package/dist/p-Cl0B-RWe-CsujC7rr.cjs +269 -0
- package/dist/p-Cl0B-RWe-CsujC7rr.cjs.map +1 -0
- package/dist/p-CneGxKsZ-C5qTtPZx.cjs +26 -0
- package/dist/p-CneGxKsZ-C5qTtPZx.cjs.map +1 -0
- package/dist/p-CneGxKsZ-DghQx9uV.js +26 -0
- package/dist/p-CneGxKsZ-DghQx9uV.js.map +1 -0
- package/dist/p-Cwv-vmkN-CEJtqyzO.js +141 -0
- package/dist/p-Cwv-vmkN-CEJtqyzO.js.map +1 -0
- package/dist/p-Cwv-vmkN-_Ll5IGJb.cjs +141 -0
- package/dist/p-Cwv-vmkN-_Ll5IGJb.cjs.map +1 -0
- package/dist/p-Cz5nLPGT-CCHjKH-2.cjs +45 -0
- package/dist/p-Cz5nLPGT-CCHjKH-2.cjs.map +1 -0
- package/dist/p-Cz5nLPGT-mbB7NqG3.js +45 -0
- package/dist/p-Cz5nLPGT-mbB7NqG3.js.map +1 -0
- package/dist/p-D13Eaw-8-CkhHu_JZ.js +35 -0
- package/dist/p-D13Eaw-8-CkhHu_JZ.js.map +1 -0
- package/dist/p-D13Eaw-8-DwZ_qr-I.cjs +46 -0
- package/dist/p-D13Eaw-8-DwZ_qr-I.cjs.map +1 -0
- package/dist/p-D6Ynv7Xh-CQpbvraJ.cjs +41 -0
- package/dist/p-D6Ynv7Xh-CQpbvraJ.cjs.map +1 -0
- package/dist/p-D6Ynv7Xh-bzjdXLwD.js +41 -0
- package/dist/p-D6Ynv7Xh-bzjdXLwD.js.map +1 -0
- package/dist/p-DgbT0exM-BY3-DNWX.cjs +178 -0
- package/dist/p-DgbT0exM-BY3-DNWX.cjs.map +1 -0
- package/dist/p-DgbT0exM-Bjp0vDlM.js +107 -0
- package/dist/p-DgbT0exM-Bjp0vDlM.js.map +1 -0
- package/dist/p-ZjP4CjeZ-BpWsQNNL.cjs +20 -0
- package/dist/p-ZjP4CjeZ-BpWsQNNL.cjs.map +1 -0
- package/dist/p-ZjP4CjeZ-iNpKbiw2.js +9 -0
- package/dist/p-ZjP4CjeZ-iNpKbiw2.js.map +1 -0
- package/dist/p-vEbVo2hO-Bo4CY69w.cjs +80 -0
- package/dist/p-vEbVo2hO-Bo4CY69w.cjs.map +1 -0
- package/dist/p-vEbVo2hO-CpCOqZ3z.js +69 -0
- package/dist/p-vEbVo2hO-CpCOqZ3z.js.map +1 -0
- package/dist/rolldown-runtime-CYJQ3TkU.cjs +18 -0
- package/dist/rolldown-runtime-CiIaOW0V.js +13 -0
- package/package.json +1 -1
- package/dist/lib/IonRouterOutlet.d.ts +0 -23
- package/dist/lib/bundles/all.cjs +0 -2
- package/dist/lib/bundles/all.cjs.map +0 -1
- package/dist/lib/bundles/all.d.ts +0 -13
- package/dist/lib/bundles/all.js +0 -21
- package/dist/lib/bundles/all.js.map +0 -1
- package/dist/lib/bundles/buttons.cjs +0 -2
- package/dist/lib/bundles/buttons.cjs.map +0 -1
- package/dist/lib/bundles/buttons.d.ts +0 -7
- package/dist/lib/bundles/buttons.js +0 -17
- package/dist/lib/bundles/buttons.js.map +0 -1
- package/dist/lib/bundles/feedback.cjs +0 -2
- package/dist/lib/bundles/feedback.cjs.map +0 -1
- package/dist/lib/bundles/feedback.d.ts +0 -8
- package/dist/lib/bundles/feedback.js +0 -19
- package/dist/lib/bundles/feedback.js.map +0 -1
- package/dist/lib/bundles/forms.cjs +0 -2
- package/dist/lib/bundles/forms.cjs.map +0 -1
- package/dist/lib/bundles/forms.d.ts +0 -8
- package/dist/lib/bundles/forms.js +0 -27
- package/dist/lib/bundles/forms.js.map +0 -1
- package/dist/lib/bundles/layout.cjs +0 -2
- package/dist/lib/bundles/layout.cjs.map +0 -1
- package/dist/lib/bundles/layout.d.ts +0 -7
- package/dist/lib/bundles/layout.js +0 -19
- package/dist/lib/bundles/layout.js.map +0 -1
- package/dist/lib/bundles/lists.cjs +0 -2
- package/dist/lib/bundles/lists.cjs.map +0 -1
- package/dist/lib/bundles/lists.d.ts +0 -10
- package/dist/lib/bundles/lists.js +0 -35
- package/dist/lib/bundles/lists.js.map +0 -1
- package/dist/lib/bundles/navigation.cjs +0 -2
- package/dist/lib/bundles/navigation.cjs.map +0 -1
- package/dist/lib/bundles/navigation.d.ts +0 -7
- package/dist/lib/bundles/navigation.js +0 -8
- package/dist/lib/bundles/navigation.js.map +0 -1
- package/dist/lib/bundles/overlays.cjs +0 -2
- package/dist/lib/bundles/overlays.cjs.map +0 -1
- package/dist/lib/bundles/overlays.d.ts +0 -7
- package/dist/lib/bundles/overlays.js +0 -15
- package/dist/lib/bundles/overlays.js.map +0 -1
- package/dist/lib/components.cjs +0 -1
- package/dist/lib/components.d.ts +0 -55
- package/dist/lib/components.js +0 -48
- package/dist/lib/lifecycle.d.ts +0 -36
- package/dist/lib/nix-ionic.cjs +0 -1
- package/dist/lib/nix-ionic.cjs.map +0 -1
- package/dist/lib/nix-ionic.js +0 -1
- package/dist/lib/nix-ionic.js.map +0 -1
- package/dist/lib/setup.d.ts +0 -25
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { defineCustomElement as e } from "@ionic/core/components/ion-header.js";
|
|
2
|
-
import { defineCustomElement as t } from "@ionic/core/components/ion-toolbar.js";
|
|
3
|
-
import { defineCustomElement as n } from "@ionic/core/components/ion-title.js";
|
|
4
|
-
import { defineCustomElement as r } from "@ionic/core/components/ion-content.js";
|
|
5
|
-
import { defineCustomElement as i } from "@ionic/core/components/ion-footer.js";
|
|
6
|
-
import { defineCustomElement as a } from "@ionic/core/components/ion-buttons.js";
|
|
7
|
-
//#region src/bundles/layout.ts
|
|
8
|
-
var o = [
|
|
9
|
-
e,
|
|
10
|
-
t,
|
|
11
|
-
n,
|
|
12
|
-
r,
|
|
13
|
-
i,
|
|
14
|
-
a
|
|
15
|
-
];
|
|
16
|
-
//#endregion
|
|
17
|
-
export { o as layoutComponents };
|
|
18
|
-
|
|
19
|
-
//# sourceMappingURL=layout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","names":[],"sources":["../../../src/bundles/layout.ts"],"sourcesContent":["/**\n * Layout bundle — essential page structure components.\n *\n * Includes: ion-header, ion-toolbar, ion-title, ion-content, ion-footer, ion-buttons\n */\nimport type { ComponentDefiner } from \"../setup\";\n\nimport { defineCustomElement as defineIonHeader } from \"@ionic/core/components/ion-header.js\";\nimport { defineCustomElement as defineIonToolbar } from \"@ionic/core/components/ion-toolbar.js\";\nimport { defineCustomElement as defineIonTitle } from \"@ionic/core/components/ion-title.js\";\nimport { defineCustomElement as defineIonContent } from \"@ionic/core/components/ion-content.js\";\nimport { defineCustomElement as defineIonFooter } from \"@ionic/core/components/ion-footer.js\";\nimport { defineCustomElement as defineIonButtons } from \"@ionic/core/components/ion-buttons.js\";\n\nexport const layoutComponents: ComponentDefiner[] = [\n defineIonHeader,\n defineIonToolbar,\n defineIonTitle,\n defineIonContent,\n defineIonFooter,\n defineIonButtons,\n];\n"],"mappings":";;;;;;;AAcA,IAAa,IAAuC;CAClD;CACA;CACA;CACA;CACA;CACA;CACD"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`@ionic/core/components/ion-list.js`),t=require(`@ionic/core/components/ion-list-header.js`),n=require(`@ionic/core/components/ion-item.js`),r=require(`@ionic/core/components/ion-item-divider.js`),i=require(`@ionic/core/components/ion-item-sliding.js`),a=require(`@ionic/core/components/ion-item-options.js`),o=require(`@ionic/core/components/ion-item-option.js`),s=require(`@ionic/core/components/ion-label.js`),c=require(`@ionic/core/components/ion-note.js`),l=require(`@ionic/core/components/ion-card.js`),u=require(`@ionic/core/components/ion-card-header.js`),d=require(`@ionic/core/components/ion-card-title.js`),f=require(`@ionic/core/components/ion-card-subtitle.js`),p=require(`@ionic/core/components/ion-card-content.js`);var m=[e.defineCustomElement,t.defineCustomElement,n.defineCustomElement,r.defineCustomElement,i.defineCustomElement,a.defineCustomElement,o.defineCustomElement,s.defineCustomElement,c.defineCustomElement,l.defineCustomElement,u.defineCustomElement,d.defineCustomElement,f.defineCustomElement,p.defineCustomElement];exports.listComponents=m;
|
|
2
|
-
//# sourceMappingURL=lists.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lists.cjs","names":[],"sources":["../../../src/bundles/lists.ts"],"sourcesContent":["/**\n * List bundle — list, item, and card components.\n *\n * Includes: ion-list, ion-list-header, ion-item, ion-item-divider,\n * ion-item-sliding, ion-item-options, ion-item-option,\n * ion-label, ion-note,\n * ion-card, ion-card-header, ion-card-title, ion-card-subtitle, ion-card-content\n */\nimport type { ComponentDefiner } from \"../setup\";\n\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 defineIonItem } from \"@ionic/core/components/ion-item.js\";\nimport { defineCustomElement as defineIonItemDivider } from \"@ionic/core/components/ion-item-divider.js\";\nimport { defineCustomElement as defineIonItemSliding } from \"@ionic/core/components/ion-item-sliding.js\";\nimport { defineCustomElement as defineIonItemOptions } from \"@ionic/core/components/ion-item-options.js\";\nimport { defineCustomElement as defineIonItemOption } from \"@ionic/core/components/ion-item-option.js\";\nimport { defineCustomElement as defineIonLabel } from \"@ionic/core/components/ion-label.js\";\nimport { defineCustomElement as defineIonNote } from \"@ionic/core/components/ion-note.js\";\nimport { defineCustomElement as defineIonCard } from \"@ionic/core/components/ion-card.js\";\nimport { defineCustomElement as defineIonCardHeader } from \"@ionic/core/components/ion-card-header.js\";\nimport { defineCustomElement as defineIonCardTitle } from \"@ionic/core/components/ion-card-title.js\";\nimport { defineCustomElement as defineIonCardSubtitle } from \"@ionic/core/components/ion-card-subtitle.js\";\nimport { defineCustomElement as defineIonCardContent } from \"@ionic/core/components/ion-card-content.js\";\n\nexport const listComponents: ComponentDefiner[] = [\n defineIonList,\n defineIonListHeader,\n defineIonItem,\n defineIonItemDivider,\n defineIonItemSliding,\n defineIonItemOptions,\n defineIonItemOption,\n defineIonLabel,\n defineIonNote,\n defineIonCard,\n defineIonCardHeader,\n defineIonCardTitle,\n defineIonCardSubtitle,\n defineIonCardContent,\n];\n"],"mappings":"4yBAyBA,IAAa,EAAqC,CAChD,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACD"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* List bundle — list, item, and card components.
|
|
3
|
-
*
|
|
4
|
-
* Includes: ion-list, ion-list-header, ion-item, ion-item-divider,
|
|
5
|
-
* ion-item-sliding, ion-item-options, ion-item-option,
|
|
6
|
-
* ion-label, ion-note,
|
|
7
|
-
* ion-card, ion-card-header, ion-card-title, ion-card-subtitle, ion-card-content
|
|
8
|
-
*/
|
|
9
|
-
import type { ComponentDefiner } from "../setup";
|
|
10
|
-
export declare const listComponents: ComponentDefiner[];
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { defineCustomElement as e } from "@ionic/core/components/ion-list.js";
|
|
2
|
-
import { defineCustomElement as t } from "@ionic/core/components/ion-list-header.js";
|
|
3
|
-
import { defineCustomElement as n } from "@ionic/core/components/ion-item.js";
|
|
4
|
-
import { defineCustomElement as r } from "@ionic/core/components/ion-item-divider.js";
|
|
5
|
-
import { defineCustomElement as i } from "@ionic/core/components/ion-item-sliding.js";
|
|
6
|
-
import { defineCustomElement as a } from "@ionic/core/components/ion-item-options.js";
|
|
7
|
-
import { defineCustomElement as o } from "@ionic/core/components/ion-item-option.js";
|
|
8
|
-
import { defineCustomElement as s } from "@ionic/core/components/ion-label.js";
|
|
9
|
-
import { defineCustomElement as c } from "@ionic/core/components/ion-note.js";
|
|
10
|
-
import { defineCustomElement as l } from "@ionic/core/components/ion-card.js";
|
|
11
|
-
import { defineCustomElement as u } from "@ionic/core/components/ion-card-header.js";
|
|
12
|
-
import { defineCustomElement as d } from "@ionic/core/components/ion-card-title.js";
|
|
13
|
-
import { defineCustomElement as f } from "@ionic/core/components/ion-card-subtitle.js";
|
|
14
|
-
import { defineCustomElement as p } from "@ionic/core/components/ion-card-content.js";
|
|
15
|
-
//#region src/bundles/lists.ts
|
|
16
|
-
var m = [
|
|
17
|
-
e,
|
|
18
|
-
t,
|
|
19
|
-
n,
|
|
20
|
-
r,
|
|
21
|
-
i,
|
|
22
|
-
a,
|
|
23
|
-
o,
|
|
24
|
-
s,
|
|
25
|
-
c,
|
|
26
|
-
l,
|
|
27
|
-
u,
|
|
28
|
-
d,
|
|
29
|
-
f,
|
|
30
|
-
p
|
|
31
|
-
];
|
|
32
|
-
//#endregion
|
|
33
|
-
export { m as listComponents };
|
|
34
|
-
|
|
35
|
-
//# sourceMappingURL=lists.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lists.js","names":[],"sources":["../../../src/bundles/lists.ts"],"sourcesContent":["/**\n * List bundle — list, item, and card components.\n *\n * Includes: ion-list, ion-list-header, ion-item, ion-item-divider,\n * ion-item-sliding, ion-item-options, ion-item-option,\n * ion-label, ion-note,\n * ion-card, ion-card-header, ion-card-title, ion-card-subtitle, ion-card-content\n */\nimport type { ComponentDefiner } from \"../setup\";\n\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 defineIonItem } from \"@ionic/core/components/ion-item.js\";\nimport { defineCustomElement as defineIonItemDivider } from \"@ionic/core/components/ion-item-divider.js\";\nimport { defineCustomElement as defineIonItemSliding } from \"@ionic/core/components/ion-item-sliding.js\";\nimport { defineCustomElement as defineIonItemOptions } from \"@ionic/core/components/ion-item-options.js\";\nimport { defineCustomElement as defineIonItemOption } from \"@ionic/core/components/ion-item-option.js\";\nimport { defineCustomElement as defineIonLabel } from \"@ionic/core/components/ion-label.js\";\nimport { defineCustomElement as defineIonNote } from \"@ionic/core/components/ion-note.js\";\nimport { defineCustomElement as defineIonCard } from \"@ionic/core/components/ion-card.js\";\nimport { defineCustomElement as defineIonCardHeader } from \"@ionic/core/components/ion-card-header.js\";\nimport { defineCustomElement as defineIonCardTitle } from \"@ionic/core/components/ion-card-title.js\";\nimport { defineCustomElement as defineIonCardSubtitle } from \"@ionic/core/components/ion-card-subtitle.js\";\nimport { defineCustomElement as defineIonCardContent } from \"@ionic/core/components/ion-card-content.js\";\n\nexport const listComponents: ComponentDefiner[] = [\n defineIonList,\n defineIonListHeader,\n defineIonItem,\n defineIonItemDivider,\n defineIonItemSliding,\n defineIonItemOptions,\n defineIonItemOption,\n defineIonLabel,\n defineIonNote,\n defineIonCard,\n defineIonCardHeader,\n defineIonCardTitle,\n defineIonCardSubtitle,\n defineIonCardContent,\n];\n"],"mappings":";;;;;;;;;;;;;;;AAyBA,IAAa,IAAqC;CAChD;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`@ionic/core/components/ion-menu.js`),t=require(`@ionic/core/components/ion-menu-button.js`);var n=[e.defineCustomElement,t.defineCustomElement];exports.navigationComponents=n;
|
|
2
|
-
//# sourceMappingURL=navigation.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.cjs","names":[],"sources":["../../../src/bundles/navigation.ts"],"sourcesContent":["/**\n * Navigation bundle — menu and navigation-related components.\n *\n * Includes: ion-menu, ion-menu-button\n */\nimport type { ComponentDefiner } from \"../setup\";\n\nimport { defineCustomElement as defineIonMenu } from \"@ionic/core/components/ion-menu.js\";\nimport { defineCustomElement as defineIonMenuButton } from \"@ionic/core/components/ion-menu-button.js\";\n\nexport const navigationComponents: ComponentDefiner[] = [\n defineIonMenu,\n defineIonMenuButton,\n];\n"],"mappings":"8KAUA,IAAa,EAA2C,CACtD,EAAA,oBACA,EAAA,oBACD"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { defineCustomElement as e } from "@ionic/core/components/ion-menu.js";
|
|
2
|
-
import { defineCustomElement as t } from "@ionic/core/components/ion-menu-button.js";
|
|
3
|
-
//#region src/bundles/navigation.ts
|
|
4
|
-
var n = [e, t];
|
|
5
|
-
//#endregion
|
|
6
|
-
export { n as navigationComponents };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=navigation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.js","names":[],"sources":["../../../src/bundles/navigation.ts"],"sourcesContent":["/**\n * Navigation bundle — menu and navigation-related components.\n *\n * Includes: ion-menu, ion-menu-button\n */\nimport type { ComponentDefiner } from \"../setup\";\n\nimport { defineCustomElement as defineIonMenu } from \"@ionic/core/components/ion-menu.js\";\nimport { defineCustomElement as defineIonMenuButton } from \"@ionic/core/components/ion-menu-button.js\";\n\nexport const navigationComponents: ComponentDefiner[] = [\n defineIonMenu,\n defineIonMenuButton,\n];\n"],"mappings":";;;AAUA,IAAa,IAA2C,CACtD,GACA,EACD"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`@ionic/core/components/ion-modal.js`),t=require(`@ionic/core/components/ion-popover.js`),n=require(`@ionic/core/components/ion-toast.js`),r=require(`@ionic/core/components/ion-alert.js`);var i=[e.defineCustomElement,t.defineCustomElement,n.defineCustomElement,r.defineCustomElement];exports.overlayComponents=i;
|
|
2
|
-
//# sourceMappingURL=overlays.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"overlays.cjs","names":[],"sources":["../../../src/bundles/overlays.ts"],"sourcesContent":["/**\n * Overlays bundle — modal, popover, toast, and alert components.\n *\n * Includes: ion-modal, ion-popover, ion-toast, ion-alert\n */\nimport type { ComponentDefiner } from \"../setup\";\n\nimport { defineCustomElement as defineIonModal } from \"@ionic/core/components/ion-modal.js\";\nimport { defineCustomElement as defineIonPopover } from \"@ionic/core/components/ion-popover.js\";\nimport { defineCustomElement as defineIonToast } from \"@ionic/core/components/ion-toast.js\";\nimport { defineCustomElement as defineIonAlert } from \"@ionic/core/components/ion-alert.js\";\n\nexport const overlayComponents: ComponentDefiner[] = [\n defineIonModal,\n defineIonPopover,\n defineIonToast,\n defineIonAlert,\n];\n"],"mappings":"6QAYA,IAAa,EAAwC,CACnD,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACD"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { defineCustomElement as e } from "@ionic/core/components/ion-modal.js";
|
|
2
|
-
import { defineCustomElement as t } from "@ionic/core/components/ion-popover.js";
|
|
3
|
-
import { defineCustomElement as n } from "@ionic/core/components/ion-toast.js";
|
|
4
|
-
import { defineCustomElement as r } from "@ionic/core/components/ion-alert.js";
|
|
5
|
-
//#region src/bundles/overlays.ts
|
|
6
|
-
var i = [
|
|
7
|
-
e,
|
|
8
|
-
t,
|
|
9
|
-
n,
|
|
10
|
-
r
|
|
11
|
-
];
|
|
12
|
-
//#endregion
|
|
13
|
-
export { i as overlayComponents };
|
|
14
|
-
|
|
15
|
-
//# sourceMappingURL=overlays.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"overlays.js","names":[],"sources":["../../../src/bundles/overlays.ts"],"sourcesContent":["/**\n * Overlays bundle — modal, popover, toast, and alert components.\n *\n * Includes: ion-modal, ion-popover, ion-toast, ion-alert\n */\nimport type { ComponentDefiner } from \"../setup\";\n\nimport { defineCustomElement as defineIonModal } from \"@ionic/core/components/ion-modal.js\";\nimport { defineCustomElement as defineIonPopover } from \"@ionic/core/components/ion-popover.js\";\nimport { defineCustomElement as defineIonToast } from \"@ionic/core/components/ion-toast.js\";\nimport { defineCustomElement as defineIonAlert } from \"@ionic/core/components/ion-alert.js\";\n\nexport const overlayComponents: ComponentDefiner[] = [\n defineIonModal,\n defineIonPopover,\n defineIonToast,\n defineIonAlert,\n];\n"],"mappings":";;;;;AAYA,IAAa,IAAwC;CACnD;CACA;CACA;CACA;CACD"}
|
package/dist/lib/components.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`@ionic/core/components/ion-header.js`),t=require(`@ionic/core/components/ion-toolbar.js`),n=require(`@ionic/core/components/ion-title.js`),r=require(`@ionic/core/components/ion-content.js`),i=require(`@ionic/core/components/ion-footer.js`),a=require(`@ionic/core/components/ion-buttons.js`),o=require(`@ionic/core/components/ion-menu.js`),s=require(`@ionic/core/components/ion-menu-button.js`),c=require(`@ionic/core/components/ion-input.js`),l=require(`@ionic/core/components/ion-textarea.js`),u=require(`@ionic/core/components/ion-checkbox.js`),d=require(`@ionic/core/components/ion-toggle.js`),f=require(`@ionic/core/components/ion-select.js`),p=require(`@ionic/core/components/ion-select-option.js`),m=require(`@ionic/core/components/ion-radio.js`),h=require(`@ionic/core/components/ion-radio-group.js`),g=require(`@ionic/core/components/ion-range.js`),_=require(`@ionic/core/components/ion-searchbar.js`),v=require(`@ionic/core/components/ion-list.js`),y=require(`@ionic/core/components/ion-list-header.js`),b=require(`@ionic/core/components/ion-item.js`),x=require(`@ionic/core/components/ion-item-divider.js`),S=require(`@ionic/core/components/ion-item-sliding.js`),C=require(`@ionic/core/components/ion-item-options.js`),w=require(`@ionic/core/components/ion-item-option.js`),T=require(`@ionic/core/components/ion-label.js`),E=require(`@ionic/core/components/ion-note.js`),D=require(`@ionic/core/components/ion-card.js`),O=require(`@ionic/core/components/ion-card-header.js`),k=require(`@ionic/core/components/ion-card-title.js`),A=require(`@ionic/core/components/ion-card-subtitle.js`),j=require(`@ionic/core/components/ion-card-content.js`),M=require(`@ionic/core/components/ion-spinner.js`),N=require(`@ionic/core/components/ion-progress-bar.js`),P=require(`@ionic/core/components/ion-skeleton-text.js`),F=require(`@ionic/core/components/ion-badge.js`),I=require(`@ionic/core/components/ion-avatar.js`),L=require(`@ionic/core/components/ion-thumbnail.js`),R=require(`@ionic/core/components/ion-button.js`),z=require(`@ionic/core/components/ion-fab.js`),B=require(`@ionic/core/components/ion-fab-button.js`),V=require(`@ionic/core/components/ion-fab-list.js`),H=require(`@ionic/core/components/ion-ripple-effect.js`),U=require(`@ionic/core/components/ion-modal.js`),W=require(`@ionic/core/components/ion-popover.js`),G=require(`@ionic/core/components/ion-toast.js`),K=require(`@ionic/core/components/ion-alert.js`);Object.defineProperty(exports,`defineIonAlert`,{enumerable:!0,get:function(){return K.defineCustomElement}}),Object.defineProperty(exports,`defineIonAvatar`,{enumerable:!0,get:function(){return I.defineCustomElement}}),Object.defineProperty(exports,`defineIonBadge`,{enumerable:!0,get:function(){return F.defineCustomElement}}),Object.defineProperty(exports,`defineIonButton`,{enumerable:!0,get:function(){return R.defineCustomElement}}),Object.defineProperty(exports,`defineIonButtons`,{enumerable:!0,get:function(){return a.defineCustomElement}}),Object.defineProperty(exports,`defineIonCard`,{enumerable:!0,get:function(){return D.defineCustomElement}}),Object.defineProperty(exports,`defineIonCardContent`,{enumerable:!0,get:function(){return j.defineCustomElement}}),Object.defineProperty(exports,`defineIonCardHeader`,{enumerable:!0,get:function(){return O.defineCustomElement}}),Object.defineProperty(exports,`defineIonCardSubtitle`,{enumerable:!0,get:function(){return A.defineCustomElement}}),Object.defineProperty(exports,`defineIonCardTitle`,{enumerable:!0,get:function(){return k.defineCustomElement}}),Object.defineProperty(exports,`defineIonCheckbox`,{enumerable:!0,get:function(){return u.defineCustomElement}}),Object.defineProperty(exports,`defineIonContent`,{enumerable:!0,get:function(){return r.defineCustomElement}}),Object.defineProperty(exports,`defineIonFab`,{enumerable:!0,get:function(){return z.defineCustomElement}}),Object.defineProperty(exports,`defineIonFabButton`,{enumerable:!0,get:function(){return B.defineCustomElement}}),Object.defineProperty(exports,`defineIonFabList`,{enumerable:!0,get:function(){return V.defineCustomElement}}),Object.defineProperty(exports,`defineIonFooter`,{enumerable:!0,get:function(){return i.defineCustomElement}}),Object.defineProperty(exports,`defineIonHeader`,{enumerable:!0,get:function(){return e.defineCustomElement}}),Object.defineProperty(exports,`defineIonInput`,{enumerable:!0,get:function(){return c.defineCustomElement}}),Object.defineProperty(exports,`defineIonItem`,{enumerable:!0,get:function(){return b.defineCustomElement}}),Object.defineProperty(exports,`defineIonItemDivider`,{enumerable:!0,get:function(){return x.defineCustomElement}}),Object.defineProperty(exports,`defineIonItemOption`,{enumerable:!0,get:function(){return w.defineCustomElement}}),Object.defineProperty(exports,`defineIonItemOptions`,{enumerable:!0,get:function(){return C.defineCustomElement}}),Object.defineProperty(exports,`defineIonItemSliding`,{enumerable:!0,get:function(){return S.defineCustomElement}}),Object.defineProperty(exports,`defineIonLabel`,{enumerable:!0,get:function(){return T.defineCustomElement}}),Object.defineProperty(exports,`defineIonList`,{enumerable:!0,get:function(){return v.defineCustomElement}}),Object.defineProperty(exports,`defineIonListHeader`,{enumerable:!0,get:function(){return y.defineCustomElement}}),Object.defineProperty(exports,`defineIonMenu`,{enumerable:!0,get:function(){return o.defineCustomElement}}),Object.defineProperty(exports,`defineIonMenuButton`,{enumerable:!0,get:function(){return s.defineCustomElement}}),Object.defineProperty(exports,`defineIonModal`,{enumerable:!0,get:function(){return U.defineCustomElement}}),Object.defineProperty(exports,`defineIonNote`,{enumerable:!0,get:function(){return E.defineCustomElement}}),Object.defineProperty(exports,`defineIonPopover`,{enumerable:!0,get:function(){return W.defineCustomElement}}),Object.defineProperty(exports,`defineIonProgressBar`,{enumerable:!0,get:function(){return N.defineCustomElement}}),Object.defineProperty(exports,`defineIonRadio`,{enumerable:!0,get:function(){return m.defineCustomElement}}),Object.defineProperty(exports,`defineIonRadioGroup`,{enumerable:!0,get:function(){return h.defineCustomElement}}),Object.defineProperty(exports,`defineIonRange`,{enumerable:!0,get:function(){return g.defineCustomElement}}),Object.defineProperty(exports,`defineIonRippleEffect`,{enumerable:!0,get:function(){return H.defineCustomElement}}),Object.defineProperty(exports,`defineIonSearchbar`,{enumerable:!0,get:function(){return _.defineCustomElement}}),Object.defineProperty(exports,`defineIonSelect`,{enumerable:!0,get:function(){return f.defineCustomElement}}),Object.defineProperty(exports,`defineIonSelectOption`,{enumerable:!0,get:function(){return p.defineCustomElement}}),Object.defineProperty(exports,`defineIonSkeletonText`,{enumerable:!0,get:function(){return P.defineCustomElement}}),Object.defineProperty(exports,`defineIonSpinner`,{enumerable:!0,get:function(){return M.defineCustomElement}}),Object.defineProperty(exports,`defineIonTextarea`,{enumerable:!0,get:function(){return l.defineCustomElement}}),Object.defineProperty(exports,`defineIonThumbnail`,{enumerable:!0,get:function(){return L.defineCustomElement}}),Object.defineProperty(exports,`defineIonTitle`,{enumerable:!0,get:function(){return n.defineCustomElement}}),Object.defineProperty(exports,`defineIonToast`,{enumerable:!0,get:function(){return G.defineCustomElement}}),Object.defineProperty(exports,`defineIonToggle`,{enumerable:!0,get:function(){return d.defineCustomElement}}),Object.defineProperty(exports,`defineIonToolbar`,{enumerable:!0,get:function(){return t.defineCustomElement}});
|
package/dist/lib/components.d.ts
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Individual Ionic component re-exports for tree-shakeable imports.
|
|
3
|
-
*
|
|
4
|
-
* Import only what you need:
|
|
5
|
-
* ```ts
|
|
6
|
-
* import { defineIonButton, defineIonCard } from "@deijose/nix-ionic/components";
|
|
7
|
-
* ```
|
|
8
|
-
*/
|
|
9
|
-
export { defineCustomElement as defineIonHeader } from "@ionic/core/components/ion-header.js";
|
|
10
|
-
export { defineCustomElement as defineIonToolbar } from "@ionic/core/components/ion-toolbar.js";
|
|
11
|
-
export { defineCustomElement as defineIonTitle } from "@ionic/core/components/ion-title.js";
|
|
12
|
-
export { defineCustomElement as defineIonContent } from "@ionic/core/components/ion-content.js";
|
|
13
|
-
export { defineCustomElement as defineIonFooter } from "@ionic/core/components/ion-footer.js";
|
|
14
|
-
export { defineCustomElement as defineIonButtons } from "@ionic/core/components/ion-buttons.js";
|
|
15
|
-
export { defineCustomElement as defineIonMenu } from "@ionic/core/components/ion-menu.js";
|
|
16
|
-
export { defineCustomElement as defineIonMenuButton } from "@ionic/core/components/ion-menu-button.js";
|
|
17
|
-
export { defineCustomElement as defineIonInput } from "@ionic/core/components/ion-input.js";
|
|
18
|
-
export { defineCustomElement as defineIonTextarea } from "@ionic/core/components/ion-textarea.js";
|
|
19
|
-
export { defineCustomElement as defineIonCheckbox } from "@ionic/core/components/ion-checkbox.js";
|
|
20
|
-
export { defineCustomElement as defineIonToggle } from "@ionic/core/components/ion-toggle.js";
|
|
21
|
-
export { defineCustomElement as defineIonSelect } from "@ionic/core/components/ion-select.js";
|
|
22
|
-
export { defineCustomElement as defineIonSelectOption } from "@ionic/core/components/ion-select-option.js";
|
|
23
|
-
export { defineCustomElement as defineIonRadio } from "@ionic/core/components/ion-radio.js";
|
|
24
|
-
export { defineCustomElement as defineIonRadioGroup } from "@ionic/core/components/ion-radio-group.js";
|
|
25
|
-
export { defineCustomElement as defineIonRange } from "@ionic/core/components/ion-range.js";
|
|
26
|
-
export { defineCustomElement as defineIonSearchbar } from "@ionic/core/components/ion-searchbar.js";
|
|
27
|
-
export { defineCustomElement as defineIonList } from "@ionic/core/components/ion-list.js";
|
|
28
|
-
export { defineCustomElement as defineIonListHeader } from "@ionic/core/components/ion-list-header.js";
|
|
29
|
-
export { defineCustomElement as defineIonItem } from "@ionic/core/components/ion-item.js";
|
|
30
|
-
export { defineCustomElement as defineIonItemDivider } from "@ionic/core/components/ion-item-divider.js";
|
|
31
|
-
export { defineCustomElement as defineIonItemSliding } from "@ionic/core/components/ion-item-sliding.js";
|
|
32
|
-
export { defineCustomElement as defineIonItemOptions } from "@ionic/core/components/ion-item-options.js";
|
|
33
|
-
export { defineCustomElement as defineIonItemOption } from "@ionic/core/components/ion-item-option.js";
|
|
34
|
-
export { defineCustomElement as defineIonLabel } from "@ionic/core/components/ion-label.js";
|
|
35
|
-
export { defineCustomElement as defineIonNote } from "@ionic/core/components/ion-note.js";
|
|
36
|
-
export { defineCustomElement as defineIonCard } from "@ionic/core/components/ion-card.js";
|
|
37
|
-
export { defineCustomElement as defineIonCardHeader } from "@ionic/core/components/ion-card-header.js";
|
|
38
|
-
export { defineCustomElement as defineIonCardTitle } from "@ionic/core/components/ion-card-title.js";
|
|
39
|
-
export { defineCustomElement as defineIonCardSubtitle } from "@ionic/core/components/ion-card-subtitle.js";
|
|
40
|
-
export { defineCustomElement as defineIonCardContent } from "@ionic/core/components/ion-card-content.js";
|
|
41
|
-
export { defineCustomElement as defineIonSpinner } from "@ionic/core/components/ion-spinner.js";
|
|
42
|
-
export { defineCustomElement as defineIonProgressBar } from "@ionic/core/components/ion-progress-bar.js";
|
|
43
|
-
export { defineCustomElement as defineIonSkeletonText } from "@ionic/core/components/ion-skeleton-text.js";
|
|
44
|
-
export { defineCustomElement as defineIonBadge } from "@ionic/core/components/ion-badge.js";
|
|
45
|
-
export { defineCustomElement as defineIonAvatar } from "@ionic/core/components/ion-avatar.js";
|
|
46
|
-
export { defineCustomElement as defineIonThumbnail } from "@ionic/core/components/ion-thumbnail.js";
|
|
47
|
-
export { defineCustomElement as defineIonButton } from "@ionic/core/components/ion-button.js";
|
|
48
|
-
export { defineCustomElement as defineIonFab } from "@ionic/core/components/ion-fab.js";
|
|
49
|
-
export { defineCustomElement as defineIonFabButton } from "@ionic/core/components/ion-fab-button.js";
|
|
50
|
-
export { defineCustomElement as defineIonFabList } from "@ionic/core/components/ion-fab-list.js";
|
|
51
|
-
export { defineCustomElement as defineIonRippleEffect } from "@ionic/core/components/ion-ripple-effect.js";
|
|
52
|
-
export { defineCustomElement as defineIonModal } from "@ionic/core/components/ion-modal.js";
|
|
53
|
-
export { defineCustomElement as defineIonPopover } from "@ionic/core/components/ion-popover.js";
|
|
54
|
-
export { defineCustomElement as defineIonToast } from "@ionic/core/components/ion-toast.js";
|
|
55
|
-
export { defineCustomElement as defineIonAlert } from "@ionic/core/components/ion-alert.js";
|
package/dist/lib/components.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { defineCustomElement as e } from "@ionic/core/components/ion-header.js";
|
|
2
|
-
import { defineCustomElement as t } from "@ionic/core/components/ion-toolbar.js";
|
|
3
|
-
import { defineCustomElement as n } from "@ionic/core/components/ion-title.js";
|
|
4
|
-
import { defineCustomElement as r } from "@ionic/core/components/ion-content.js";
|
|
5
|
-
import { defineCustomElement as i } from "@ionic/core/components/ion-footer.js";
|
|
6
|
-
import { defineCustomElement as a } from "@ionic/core/components/ion-buttons.js";
|
|
7
|
-
import { defineCustomElement as o } from "@ionic/core/components/ion-menu.js";
|
|
8
|
-
import { defineCustomElement as s } from "@ionic/core/components/ion-menu-button.js";
|
|
9
|
-
import { defineCustomElement as c } from "@ionic/core/components/ion-input.js";
|
|
10
|
-
import { defineCustomElement as l } from "@ionic/core/components/ion-textarea.js";
|
|
11
|
-
import { defineCustomElement as u } from "@ionic/core/components/ion-checkbox.js";
|
|
12
|
-
import { defineCustomElement as d } from "@ionic/core/components/ion-toggle.js";
|
|
13
|
-
import { defineCustomElement as f } from "@ionic/core/components/ion-select.js";
|
|
14
|
-
import { defineCustomElement as p } from "@ionic/core/components/ion-select-option.js";
|
|
15
|
-
import { defineCustomElement as m } from "@ionic/core/components/ion-radio.js";
|
|
16
|
-
import { defineCustomElement as h } from "@ionic/core/components/ion-radio-group.js";
|
|
17
|
-
import { defineCustomElement as g } from "@ionic/core/components/ion-range.js";
|
|
18
|
-
import { defineCustomElement as _ } from "@ionic/core/components/ion-searchbar.js";
|
|
19
|
-
import { defineCustomElement as v } from "@ionic/core/components/ion-list.js";
|
|
20
|
-
import { defineCustomElement as y } from "@ionic/core/components/ion-list-header.js";
|
|
21
|
-
import { defineCustomElement as b } from "@ionic/core/components/ion-item.js";
|
|
22
|
-
import { defineCustomElement as x } from "@ionic/core/components/ion-item-divider.js";
|
|
23
|
-
import { defineCustomElement as S } from "@ionic/core/components/ion-item-sliding.js";
|
|
24
|
-
import { defineCustomElement as C } from "@ionic/core/components/ion-item-options.js";
|
|
25
|
-
import { defineCustomElement as w } from "@ionic/core/components/ion-item-option.js";
|
|
26
|
-
import { defineCustomElement as T } from "@ionic/core/components/ion-label.js";
|
|
27
|
-
import { defineCustomElement as E } from "@ionic/core/components/ion-note.js";
|
|
28
|
-
import { defineCustomElement as D } from "@ionic/core/components/ion-card.js";
|
|
29
|
-
import { defineCustomElement as O } from "@ionic/core/components/ion-card-header.js";
|
|
30
|
-
import { defineCustomElement as k } from "@ionic/core/components/ion-card-title.js";
|
|
31
|
-
import { defineCustomElement as A } from "@ionic/core/components/ion-card-subtitle.js";
|
|
32
|
-
import { defineCustomElement as j } from "@ionic/core/components/ion-card-content.js";
|
|
33
|
-
import { defineCustomElement as M } from "@ionic/core/components/ion-spinner.js";
|
|
34
|
-
import { defineCustomElement as N } from "@ionic/core/components/ion-progress-bar.js";
|
|
35
|
-
import { defineCustomElement as P } from "@ionic/core/components/ion-skeleton-text.js";
|
|
36
|
-
import { defineCustomElement as F } from "@ionic/core/components/ion-badge.js";
|
|
37
|
-
import { defineCustomElement as I } from "@ionic/core/components/ion-avatar.js";
|
|
38
|
-
import { defineCustomElement as L } from "@ionic/core/components/ion-thumbnail.js";
|
|
39
|
-
import { defineCustomElement as R } from "@ionic/core/components/ion-button.js";
|
|
40
|
-
import { defineCustomElement as z } from "@ionic/core/components/ion-fab.js";
|
|
41
|
-
import { defineCustomElement as B } from "@ionic/core/components/ion-fab-button.js";
|
|
42
|
-
import { defineCustomElement as V } from "@ionic/core/components/ion-fab-list.js";
|
|
43
|
-
import { defineCustomElement as H } from "@ionic/core/components/ion-ripple-effect.js";
|
|
44
|
-
import { defineCustomElement as U } from "@ionic/core/components/ion-modal.js";
|
|
45
|
-
import { defineCustomElement as W } from "@ionic/core/components/ion-popover.js";
|
|
46
|
-
import { defineCustomElement as G } from "@ionic/core/components/ion-toast.js";
|
|
47
|
-
import { defineCustomElement as K } from "@ionic/core/components/ion-alert.js";
|
|
48
|
-
export { K as defineIonAlert, I as defineIonAvatar, F as defineIonBadge, R as defineIonButton, a as defineIonButtons, D as defineIonCard, j as defineIonCardContent, O as defineIonCardHeader, A as defineIonCardSubtitle, k as defineIonCardTitle, u as defineIonCheckbox, r as defineIonContent, z as defineIonFab, B as defineIonFabButton, V as defineIonFabList, i as defineIonFooter, e as defineIonHeader, c as defineIonInput, b as defineIonItem, x as defineIonItemDivider, w as defineIonItemOption, C as defineIonItemOptions, S as defineIonItemSliding, T as defineIonLabel, v as defineIonList, y as defineIonListHeader, o as defineIonMenu, s as defineIonMenuButton, U as defineIonModal, E as defineIonNote, W as defineIonPopover, N as defineIonProgressBar, m as defineIonRadio, h as defineIonRadioGroup, g as defineIonRange, H as defineIonRippleEffect, _ as defineIonSearchbar, f as defineIonSelect, p as defineIonSelectOption, P as defineIonSkeletonText, M as defineIonSpinner, l as defineIonTextarea, L as defineIonThumbnail, n as defineIonTitle, G as defineIonToast, d as defineIonToggle, t as defineIonToolbar };
|
package/dist/lib/lifecycle.d.ts
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ionic-nix/lifecycle.ts
|
|
3
|
-
*
|
|
4
|
-
* Sistema de ciclo de vida de navegación, análogo a los hooks de Ionic:
|
|
5
|
-
* ionViewWillEnter / ionViewDidEnter / ionViewWillLeave / ionViewDidLeave
|
|
6
|
-
*
|
|
7
|
-
* Cómo funciona (sin provide/inject):
|
|
8
|
-
* 1. IonRouterOutlet crea un `PageLifecycle` por cada ruta.
|
|
9
|
-
* 2. Lo pasa directamente al factory de la ruta como argumento.
|
|
10
|
-
* 3. El factory llama a `new MiPagina(lc)` o `MiPagina(lc)`.
|
|
11
|
-
* 4. IonPage/composables registran watchers sobre las señales del lc.
|
|
12
|
-
* 5. Cuando el router navega, incrementa las señales → watchers se disparan.
|
|
13
|
-
*/
|
|
14
|
-
import type { Signal } from "@deijose/nix-js";
|
|
15
|
-
import { NixComponent } from "@deijose/nix-js";
|
|
16
|
-
export interface PageLifecycle {
|
|
17
|
-
willEnter: Signal<number>;
|
|
18
|
-
didEnter: Signal<number>;
|
|
19
|
-
willLeave: Signal<number>;
|
|
20
|
-
didLeave: Signal<number>;
|
|
21
|
-
}
|
|
22
|
-
/** Crea un nuevo PageLifecycle con señales en 0. */
|
|
23
|
-
export declare function createPageLifecycle(): PageLifecycle;
|
|
24
|
-
export declare abstract class IonPage extends NixComponent {
|
|
25
|
-
private __lc;
|
|
26
|
-
constructor(lc: PageLifecycle);
|
|
27
|
-
onInit(): void;
|
|
28
|
-
ionViewWillEnter?(): void;
|
|
29
|
-
ionViewDidEnter?(): void;
|
|
30
|
-
ionViewWillLeave?(): void;
|
|
31
|
-
ionViewDidLeave?(): void;
|
|
32
|
-
}
|
|
33
|
-
export declare function useIonViewWillEnter(lc: PageLifecycle, fn: () => void): void;
|
|
34
|
-
export declare function useIonViewDidEnter(lc: PageLifecycle, fn: () => void): void;
|
|
35
|
-
export declare function useIonViewWillLeave(lc: PageLifecycle, fn: () => void): void;
|
|
36
|
-
export declare function useIonViewDidLeave(lc: PageLifecycle, fn: () => void): void;
|
package/dist/lib/nix-ionic.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let e=require("@deijose/nix-js"),t=require("@ionic/core/components"),n=require("@ionic/core/components/ion-app.js"),r=require("@ionic/core/components/ion-router.js"),i=require("@ionic/core/components/ion-route.js"),a=require("@ionic/core/components/ion-router-outlet.js"),o=require("@ionic/core/components/ion-back-button.js"),s=require("ionicons/components/ion-icon.js"),c=require("ionicons"),l=require("ionicons/icons");function u(){return{willEnter:(0,e.signal)(0),didEnter:(0,e.signal)(0),willLeave:(0,e.signal)(0),didLeave:(0,e.signal)(0)}}var d=class extends e.NixComponent{__lc;constructor(e){super(),this.__lc=e}onInit(){let t=this.__lc;this.ionViewWillEnter&&(0,e.watch)(t.willEnter,this.ionViewWillEnter.bind(this)),this.ionViewDidEnter&&(0,e.watch)(t.didEnter,this.ionViewDidEnter.bind(this)),this.ionViewWillLeave&&(0,e.watch)(t.willLeave,this.ionViewWillLeave.bind(this)),this.ionViewDidLeave&&(0,e.watch)(t.didLeave,this.ionViewDidLeave.bind(this))}};function f(t,n){(0,e.watch)(t.willEnter,n)}function p(t,n){(0,e.watch)(t.didEnter,n)}function m(t,n){(0,e.watch)(t.willLeave,n)}function h(t,n){(0,e.watch)(t.didLeave,n)}var g=!1;function _(e={}){if(g)return;let u=e.iconAssetPath||"https://unpkg.com/ionicons@latest/dist/ionicons/svg/";window.ionicons={assets:u},(0,t.initialize)();let d=[n.defineCustomElement,r.defineCustomElement,i.defineCustomElement,a.defineCustomElement,o.defineCustomElement,s.defineCustomElement];for(let e of d)e();for(let e=0;e<d.length;e++){(0,d[e])()}if(e.components)for(let t=0;t<e.components.length;t++){(0,e.components[t])()}(0,c.addIcons)({"arrow-back":l.arrowBack,"arrow-back-sharp":l.arrowBackSharp,"chevron-back":l.chevronBack,"chevron-back-sharp":l.chevronBackSharp}),g=!0}function v(){return{navigate:(e,t="forward")=>{let n=document.querySelector("ion-router");n&&"function"==typeof n.push&&n.push(e,t)},replace:e=>{let t=document.querySelector("ion-router");t&&"function"==typeof t.push&&t.push(e,"root")},back:()=>{let e=document.querySelector("ion-router");e&&"function"==typeof e.back&&e.back()}}}function y(e="/"){return{__isNixTemplate:!0,mount(e){let t="string"==typeof e?document.querySelector(e):e;return{unmount:this._render(t,null)}},_render(t,n){let o=document.createElement("ion-back-button");return e&&o.setAttribute("default-href",e),t.insertBefore(o,n),()=>o.remove()}}}var b=class extends e.NixComponent{routes;constructor(e){super(),this.routes=e}_pathToRouteId(e){return e&&"/"!==e?`nix-route-${e.replace(/\/:?[^/]+/g,e=>"-"+e.replace(/\//g,"").replace(/:/g,"")).replace(/^\//,"").replace(/\//g,"-")}`:"nix-route-home"}render(){let e=this;return{__isNixTemplate:!0,mount(e){let t="string"==typeof e?document.querySelector(e):e;return{unmount:this._render(t,null)}},_render(t,n){let o=document.createElement("ion-router");o.setAttribute("use-hash","false"),e.routes.filter(e=>"*"!==e.path).forEach(t=>{let n=document.createElement("ion-route");n.setAttribute("url",t.path),n.setAttribute("component",e._pathToRouteId(t.path)),o.appendChild(n)});let i=document.createElement("ion-router-outlet");return i.delegate={attachViewToDom:async(t,n,o,i)=>{let r=e.routes.find(t=>e._pathToRouteId(t.path)===n),s=document.createElement("ion-page");s.classList.add("ion-page"),i&&i.length&&s.classList.add(...i);let l=u();if(s.addEventListener("ionViewWillEnter",()=>l.willEnter.update(e=>e+1)),s.addEventListener("ionViewDidEnter",()=>l.didEnter.update(e=>e+1)),s.addEventListener("ionViewWillLeave",()=>l.willLeave.update(e=>e+1)),s.addEventListener("ionViewDidLeave",()=>l.didLeave.update(e=>e+1)),r){let e=o||{},t=r.component({lc:l,params:e});if("render"in t&&"function"==typeof t.render){let e=t;e.onInit?.();let n=e.render()._render(s,null),o=e.onMount?.();s._nixCleanup=()=>{e.onUnmount?.(),"function"==typeof o&&o(),n()}}else s._nixCleanup=t._render(s,null)}return t.appendChild(s),s},removeViewFromDom:async(e,t)=>{t._nixCleanup&&t._nixCleanup(),t.remove()}},t.insertBefore(o,n),t.insertBefore(i,n),()=>{o.remove(),i.remove()}}}}};exports.IonBackButton=y,exports.IonPage=d,exports.IonRouterOutlet=b,exports.createPageLifecycle=u,exports.setupNixIonic=_,exports.useIonViewDidEnter=p,exports.useIonViewDidLeave=h,exports.useIonViewWillEnter=f,exports.useIonViewWillLeave=m,exports.useRouter=v;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nix-ionic.cjs","names":[],"sources":["../../src/lifecycle.ts","../../src/setup.ts","../../src/IonRouterOutlet.ts"],"sourcesContent":["/**\n * ionic-nix/lifecycle.ts\n *\n * Sistema de ciclo de vida de navegación, análogo a los hooks de Ionic:\n * ionViewWillEnter / ionViewDidEnter / ionViewWillLeave / ionViewDidLeave\n *\n * Cómo funciona (sin provide/inject):\n * 1. IonRouterOutlet crea un `PageLifecycle` por cada ruta.\n * 2. Lo pasa directamente al factory de la ruta como argumento.\n * 3. El factory llama a `new MiPagina(lc)` o `MiPagina(lc)`.\n * 4. IonPage/composables registran watchers sobre las señales del lc.\n * 5. Cuando el router navega, incrementa las señales → watchers se disparan.\n */\n\nimport { signal, watch } from \"@deijose/nix-js\";\nimport type { Signal } from \"@deijose/nix-js\";\nimport { NixComponent } from \"@deijose/nix-js\";\n\n// --------------------------------------------------------------------------\n// Tipos públicos\n// --------------------------------------------------------------------------\n\nexport interface PageLifecycle {\n willEnter: Signal<number>;\n didEnter: Signal<number>;\n willLeave: Signal<number>;\n didLeave: Signal<number>;\n}\n\n/** Crea un nuevo PageLifecycle con señales en 0. */\nexport function createPageLifecycle(): PageLifecycle {\n return {\n willEnter: signal(0),\n didEnter: signal(0),\n willLeave: signal(0),\n didLeave: signal(0),\n };\n}\n\n// --------------------------------------------------------------------------\n// IonPage — clase base para páginas con hooks de navegación\n// --------------------------------------------------------------------------\n//\n// Uso:\n// class HomePage extends IonPage {\n// constructor(lc: PageLifecycle) { super(lc); }\n//\n// ionViewWillEnter() { /* fetch de datos frescos */ }\n// render() { return html`...`; }\n// }\n\nexport abstract class IonPage extends NixComponent {\n private __lc: PageLifecycle;\n\n constructor(lc: PageLifecycle) {\n super();\n this.__lc = lc;\n }\n\n override onInit(): void {\n const lc = this.__lc;\n // watch no corre en init (immediate: false), así que ionViewWillEnter\n // solo se llama cuando el outlet incrementa la señal, no al construir.\n if (this.ionViewWillEnter) watch(lc.willEnter, this.ionViewWillEnter.bind(this));\n if (this.ionViewDidEnter) watch(lc.didEnter, this.ionViewDidEnter.bind(this));\n if (this.ionViewWillLeave) watch(lc.willLeave, this.ionViewWillLeave.bind(this));\n if (this.ionViewDidLeave) watch(lc.didLeave, this.ionViewDidLeave.bind(this));\n }\n\n ionViewWillEnter?(): void;\n ionViewDidEnter?(): void;\n ionViewWillLeave?(): void;\n ionViewDidLeave?(): void;\n}\n\n// --------------------------------------------------------------------------\n// Composables para function components\n// --------------------------------------------------------------------------\n//\n// Uso:\n// function ProfilePage(lc: PageLifecycle): NixTemplate {\n// useIonViewWillEnter(lc, () => { /* fetch */ });\n// return html`...`;\n// }\n\nexport function useIonViewWillEnter(lc: PageLifecycle, fn: () => void): void {\n watch(lc.willEnter, fn);\n}\n\nexport function useIonViewDidEnter(lc: PageLifecycle, fn: () => void): void {\n watch(lc.didEnter, fn);\n}\n\nexport function useIonViewWillLeave(lc: PageLifecycle, fn: () => void): void {\n watch(lc.willLeave, fn);\n}\n\nexport function useIonViewDidLeave(lc: PageLifecycle, fn: () => void): void {\n watch(lc.didLeave, fn);\n}","import { initialize } from \"@ionic/core/components\";\n\n// Minimal core components required for any nix-ionic app\nimport { defineCustomElement as defineIonApp } from \"@ionic/core/components/ion-app.js\";\nimport { defineCustomElement as defineIonRouter } from \"@ionic/core/components/ion-router.js\";\nimport { defineCustomElement as defineIonRoute } from \"@ionic/core/components/ion-route.js\";\nimport { defineCustomElement as defineIonRouterOutlet } from \"@ionic/core/components/ion-router-outlet.js\";\nimport { defineCustomElement as defineIonBackButton } from \"@ionic/core/components/ion-back-button.js\";\n\n// Icons\nimport { defineCustomElement as defineIonIcon } from \"ionicons/components/ion-icon.js\";\nimport { addIcons } from \"ionicons\";\nimport { arrowBack, arrowBackSharp, chevronBack, chevronBackSharp } from \"ionicons/icons\";\n\nexport type ComponentDefiner = () => void;\n\nlet isInitialized = false;\n\n/**\n * Initialize Ionic Core for Nix.js.\n *\n * By default only the **minimal** components needed for routing are registered\n * (ion-app, ion-router, ion-route, ion-router-outlet, ion-back-button, ion-icon).\n *\n * Pass additional components via `options.components` to register only what you use:\n *\n * ```ts\n * import { setupNixIonic } from \"@deijose/nix-ionic\";\n * import { layoutComponents } from \"@deijose/nix-ionic/bundles/layout\";\n * import { defineIonButton } from \"@deijose/nix-ionic/components\";\n *\n * setupNixIonic({\n * components: [...layoutComponents, defineIonButton],\n * });\n * ```\n */\nexport function setupNixIonic(\n options: {\n iconAssetPath?: string;\n components?: ComponentDefiner[];\n } = {}\n) {\n if (isInitialized) return;\n\n // Ionicons asset configuration\n const assetPath =\n options.iconAssetPath ||\n \"https://unpkg.com/ionicons@latest/dist/ionicons/svg/\";\n (window as any).ionicons = { assets: assetPath };\n\n initialize();\n\n // Register minimal core components (always needed)\n const coreComponents: ComponentDefiner[] = [\n defineIonApp,\n defineIonRouter,\n defineIonRoute,\n defineIonRouterOutlet,\n defineIonBackButton,\n defineIonIcon,\n ];\n\n for (const def of coreComponents) {\n def();\n }\n for (let i = 0; i < coreComponents.length; i++) {\n const def = coreComponents[i];\n def();\n }\n\n // Register user-provided components\n if (options.components) {\n for (let i = 0; i < options.components.length; i++) {\n const def = options.components[i];\n def();\n }\n }\n\n // Register critical navigation icons\n addIcons({\n \"arrow-back\": arrowBack,\n \"arrow-back-sharp\": arrowBackSharp,\n \"chevron-back\": chevronBack,\n \"chevron-back-sharp\": chevronBackSharp,\n });\n\n isInitialized = true;\n}\n\nexport { addIcons };","import { NixComponent } from \"@deijose/nix-js\";\nimport type { NixTemplate } from \"@deijose/nix-js\";\nimport { createPageLifecycle, type PageLifecycle } from \"./lifecycle\";\n\n// --------------------------------------------------------------------------\n// Router store singleton\n// --------------------------------------------------------------------------\n\nexport function useRouter() {\n return {\n navigate: (path: string, direction: \"forward\" | \"back\" | \"root\" = \"forward\") => {\n const router = document.querySelector(\"ion-router\");\n if (router && typeof (router as any).push === \"function\") {\n (router as any).push(path, direction);\n }\n },\n replace: (path: string) => {\n const router = document.querySelector(\"ion-router\");\n if (router && typeof (router as any).push === \"function\") {\n (router as any).push(path, \"root\");\n }\n },\n back: () => {\n const router = document.querySelector(\"ion-router\");\n if (router && typeof (router as any).back === \"function\") {\n (router as any).back();\n }\n }\n };\n}\n\n// --------------------------------------------------------------------------\n// IonBackButton (Sin listeners, 100% nativo)\n// --------------------------------------------------------------------------\n\nexport function IonBackButton(defaultHref: string | undefined = \"/\"): NixTemplate {\n return {\n __isNixTemplate: true as const,\n mount(container) {\n const el = typeof container === \"string\" ? document.querySelector(container)! : container;\n const cleanup = this._render(el, null);\n return { unmount: cleanup };\n },\n _render(parent: Node, before: Node | null): () => void {\n const btn = document.createElement(\"ion-back-button\");\n if (defaultHref) btn.setAttribute(\"default-href\", defaultHref);\n parent.insertBefore(btn, before);\n return () => btn.remove();\n },\n };\n}\n\n// --------------------------------------------------------------------------\n// Tipos públicos\n// --------------------------------------------------------------------------\n\nexport interface PageContext {\n lc: PageLifecycle;\n params: Record<string, string>;\n}\n\nexport interface RouteDefinition {\n path: string;\n component: (ctx: PageContext) => NixComponent | NixTemplate;\n}\n\n// --------------------------------------------------------------------------\n// IonRouterOutlet (El Bridge Maestro usando Framework Delegate)\n// --------------------------------------------------------------------------\n\nexport class IonRouterOutlet extends NixComponent {\n private routes: RouteDefinition[];\n\n constructor(routes: RouteDefinition[]) {\n super();\n this.routes = routes;\n }\n\n // Crea un ID único interno para mapear la ruta\n private _pathToRouteId(path: string): string {\n if (!path || path === \"/\") return \"nix-route-home\";\n const clean = path\n .replace(/\\/:?[^/]+/g, (m) => \"-\" + m.replace(/\\//g, \"\").replace(/:/g, \"\"))\n .replace(/^\\//, \"\")\n .replace(/\\//g, \"-\");\n return `nix-route-${clean}`;\n }\n\n override render(): NixTemplate {\n const self = this;\n return {\n __isNixTemplate: true as const,\n mount(container: Element | string) {\n const el = typeof container === \"string\" ? document.querySelector(container)! : container;\n const cleanup = this._render(el, null);\n return { unmount: cleanup };\n },\n _render(parent: Node, before: Node | null): () => void {\n \n const routerEl = document.createElement(\"ion-router\");\n routerEl.setAttribute(\"use-hash\", \"false\");\n \n // Creamos los <ion-route> asociados a un Component ID en vez de un Custom Element\n self.routes.filter((r) => r.path !== \"*\").forEach((r) => {\n const routeEl = document.createElement(\"ion-route\");\n routeEl.setAttribute(\"url\", r.path);\n routeEl.setAttribute(\"component\", self._pathToRouteId(r.path));\n routerEl.appendChild(routeEl);\n });\n\n const outletEl = document.createElement(\"ion-router-outlet\");\n\n // 🔥 INVERSIÓN DE CONTROL: Framework Delegate 🔥\n (outletEl as any).delegate = {\n // Ionic llama a attachViewToDom cuando debe instanciar una vista nueva o usar caché\n attachViewToDom: async (container: HTMLElement, componentTag: string, props: any, classes: string[]) => {\n \n const routeDef = self.routes.find(r => self._pathToRouteId(r.path) === componentTag);\n \n // Requisito de Ionic: la vista debe ser un elemento con clase .ion-page\n const pageEl = document.createElement(\"ion-page\");\n pageEl.classList.add(\"ion-page\");\n if (classes && classes.length) pageEl.classList.add(...classes);\n\n // 1. Escuchar los eventos DOM nativos que dispara el outlet\n const lc = createPageLifecycle();\n pageEl.addEventListener(\"ionViewWillEnter\", () => lc.willEnter.update((n) => n + 1));\n pageEl.addEventListener(\"ionViewDidEnter\", () => lc.didEnter.update((n) => n + 1));\n pageEl.addEventListener(\"ionViewWillLeave\", () => lc.willLeave.update((n) => n + 1));\n pageEl.addEventListener(\"ionViewDidLeave\", () => lc.didLeave.update((n) => n + 1));\n\n if (routeDef) {\n // 2. Props entregadas DIRECTAMENTE por Ionic (contiene los Params de la ruta)\n const params = props || {};\n \n // 3. Renderizado agnóstico mediante Nix.js\n const pageNode = routeDef.component({ lc, params });\n\n if (\"render\" in pageNode && typeof (pageNode as NixComponent).render === \"function\") {\n const comp = pageNode as NixComponent;\n comp.onInit?.();\n const renderCleanup = comp.render()._render(pageEl, null);\n const mountRet = comp.onMount?.();\n\n // Registrar en el nodo DOM cómo debe Nix limpiar esta vista\n (pageEl as any)._nixCleanup = () => {\n comp.onUnmount?.();\n if (typeof mountRet === \"function\") mountRet();\n renderCleanup();\n };\n } else {\n const renderCleanup = (pageNode as NixTemplate)._render(pageEl, null);\n (pageEl as any)._nixCleanup = renderCleanup;\n }\n }\n\n container.appendChild(pageEl);\n return pageEl;\n },\n // Ionic llama a removeViewFromDom cuando el usuario navega hacia atrás y se destruye el caché\n removeViewFromDom: async (_container: HTMLElement, component: HTMLElement) => {\n if ((component as any)._nixCleanup) {\n (component as any)._nixCleanup(); // 🧹 Destrucción Segura de Effects (Memory Leaks evitados)\n }\n component.remove();\n }\n };\n\n parent.insertBefore(routerEl, before);\n parent.insertBefore(outletEl, before);\n\n return () => {\n routerEl.remove();\n outletEl.remove();\n };\n },\n };\n }\n}"],"mappings":"yeA8BA,SAAgB,GAAqC,CACnD,MAAO,CACL,WAAA,EAAA,EAAA,QAAkB,EAAE,CACpB,UAAA,EAAA,EAAA,QAAkB,EAAE,CACpB,WAAA,EAAA,EAAA,QAAkB,EAAE,CACpB,UAAA,EAAA,EAAA,QAAkB,EAAE,CACrB,CAeH,IAAsB,EAAtB,cAAsC,EAAA,YAAa,CACjD,KAEA,YAAY,EAAmB,CAC7B,OAAO,CACP,KAAK,KAAO,EAGd,QAAwB,CACtB,IAAM,EAAK,KAAK,KAGZ,KAAK,mBAAkB,EAAA,EAAA,OAAM,EAAG,UAAW,KAAK,iBAAiB,KAAK,KAAK,CAAC,CAC5E,KAAK,kBAAkB,EAAA,EAAA,OAAM,EAAG,SAAW,KAAK,gBAAgB,KAAK,KAAK,CAAC,CAC3E,KAAK,mBAAkB,EAAA,EAAA,OAAM,EAAG,UAAW,KAAK,iBAAiB,KAAK,KAAK,CAAC,CAC5E,KAAK,kBAAkB,EAAA,EAAA,OAAM,EAAG,SAAW,KAAK,gBAAgB,KAAK,KAAK,CAAC,GAmBnF,SAAgB,EAAoB,EAAmB,EAAsB,EAC3E,EAAA,EAAA,OAAM,EAAG,UAAW,EAAG,CAGzB,SAAgB,EAAmB,EAAmB,EAAsB,EAC1E,EAAA,EAAA,OAAM,EAAG,SAAU,EAAG,CAGxB,SAAgB,EAAoB,EAAmB,EAAsB,EAC3E,EAAA,EAAA,OAAM,EAAG,UAAW,EAAG,CAGzB,SAAgB,EAAmB,EAAmB,EAAsB,EAC1E,EAAA,EAAA,OAAM,EAAG,SAAU,EAAG,CClFxB,IAAI,EAAgB,GAoBpB,SAAgB,EACd,EAGI,EAAE,CACN,CACA,GAAI,EAAe,OAGnB,IAAM,EACJ,EAAQ,eACR,uDACD,OAAe,SAAW,CAAE,OAAQ,EAAW,EAEhD,EAAA,EAAA,aAAY,CAGZ,IAAM,EAAqC,CACzC,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACA,EAAA,oBACD,CAED,IAAK,IAAM,KAAO,EAChB,GAAK,CAEP,IAAK,IAAI,EAAI,EAAG,EAAI,EAAe,OAAQ,IAAK,CAC9C,IAAM,EAAM,EAAe,GAC3B,GAAK,CAIP,GAAI,EAAQ,WACV,IAAK,IAAI,EAAI,EAAG,EAAI,EAAQ,WAAW,OAAQ,IAAK,CAClD,IAAM,EAAM,EAAQ,WAAW,GAC/B,GAAK,EAKT,EAAA,EAAA,UAAS,CACP,aAAc,EAAA,UACd,mBAAoB,EAAA,eACpB,eAAgB,EAAA,YAChB,qBAAsB,EAAA,iBACvB,CAAC,CAEF,EAAgB,GC9ElB,SAAgB,GAAY,CAC1B,MAAO,CACL,UAAW,EAAc,EAAyC,YAAc,CAC9E,IAAM,EAAS,SAAS,cAAc,aAAa,CAC/C,GAAU,OAAQ,EAAe,MAAS,YAC3C,EAAe,KAAK,EAAM,EAAU,EAGzC,QAAU,GAAiB,CACzB,IAAM,EAAS,SAAS,cAAc,aAAa,CAC/C,GAAU,OAAQ,EAAe,MAAS,YAC3C,EAAe,KAAK,EAAM,OAAO,EAGtC,SAAY,CACV,IAAM,EAAS,SAAS,cAAc,aAAa,CAC/C,GAAU,OAAQ,EAAe,MAAS,YAC3C,EAAe,MAAM,EAG3B,CAOH,SAAgB,EAAc,EAAkC,IAAkB,CAChF,MAAO,CACL,gBAAiB,GACjB,MAAM,EAAW,CACf,IAAM,EAAK,OAAO,GAAc,SAAW,SAAS,cAAc,EAAU,CAAI,EAEhF,MAAO,CAAE,QADO,KAAK,QAAQ,EAAI,KAAK,CACX,EAE7B,QAAQ,EAAc,EAAiC,CACrD,IAAM,EAAM,SAAS,cAAc,kBAAkB,CAGrD,OAFI,GAAa,EAAI,aAAa,eAAgB,EAAY,CAC9D,EAAO,aAAa,EAAK,EAAO,KACnB,EAAI,QAAQ,EAE5B,CAqBH,IAAa,EAAb,cAAqC,EAAA,YAAa,CAChD,OAEA,YAAY,EAA2B,CACrC,OAAO,CACP,KAAK,OAAS,EAIhB,eAAuB,EAAsB,CAM3C,MALI,CAAC,GAAQ,IAAS,IAAY,iBAK3B,aAJO,EACX,QAAQ,aAAe,GAAM,IAAM,EAAE,QAAQ,MAAO,GAAG,CAAC,QAAQ,KAAM,GAAG,CAAC,CAC1E,QAAQ,MAAO,GAAG,CAClB,QAAQ,MAAO,IAAI,GAIxB,QAA+B,CAC7B,IAAM,EAAO,KACb,MAAO,CACL,gBAAiB,GACjB,MAAM,EAA6B,CACjC,IAAM,EAAK,OAAO,GAAc,SAAW,SAAS,cAAc,EAAU,CAAI,EAEhF,MAAO,CAAE,QADO,KAAK,QAAQ,EAAI,KAAK,CACX,EAE7B,QAAQ,EAAc,EAAiC,CAErD,IAAM,EAAW,SAAS,cAAc,aAAa,CACrD,EAAS,aAAa,WAAY,QAAQ,CAG1C,EAAK,OAAO,OAAQ,GAAM,EAAE,OAAS,IAAI,CAAC,QAAS,GAAM,CACvD,IAAM,EAAU,SAAS,cAAc,YAAY,CACnD,EAAQ,aAAa,MAAO,EAAE,KAAK,CACnC,EAAQ,aAAa,YAAa,EAAK,eAAe,EAAE,KAAK,CAAC,CAC9D,EAAS,YAAY,EAAQ,EAC7B,CAEF,IAAM,EAAW,SAAS,cAAc,oBAAoB,CA6D5D,MA1DC,GAAiB,SAAW,CAE3B,gBAAiB,MAAO,EAAwB,EAAsB,EAAY,IAAsB,CAEtG,IAAM,EAAW,EAAK,OAAO,KAAK,GAAK,EAAK,eAAe,EAAE,KAAK,GAAK,EAAa,CAG9E,EAAS,SAAS,cAAc,WAAW,CACjD,EAAO,UAAU,IAAI,WAAW,CAC5B,GAAW,EAAQ,QAAQ,EAAO,UAAU,IAAI,GAAG,EAAQ,CAG/D,IAAM,EAAK,GAAqB,CAMhC,GALA,EAAO,iBAAiB,uBAA0B,EAAG,UAAU,OAAQ,GAAM,EAAI,EAAE,CAAC,CACpF,EAAO,iBAAiB,sBAA0B,EAAG,SAAS,OAAQ,GAAM,EAAI,EAAE,CAAC,CACnF,EAAO,iBAAiB,uBAA0B,EAAG,UAAU,OAAQ,GAAM,EAAI,EAAE,CAAC,CACpF,EAAO,iBAAiB,sBAA0B,EAAG,SAAS,OAAQ,GAAM,EAAI,EAAE,CAAC,CAE/E,EAAU,CAEZ,IAAM,EAAS,GAAS,EAAE,CAGpB,EAAW,EAAS,UAAU,CAAE,KAAI,SAAQ,CAAC,CAEnD,GAAI,WAAY,GAAY,OAAQ,EAA0B,QAAW,WAAY,CACnF,IAAM,EAAO,EACb,EAAK,UAAU,CACf,IAAM,EAAgB,EAAK,QAAQ,CAAC,QAAQ,EAAQ,KAAK,CACnD,EAAW,EAAK,WAAW,CAGhC,EAAe,gBAAoB,CAClC,EAAK,aAAa,CACd,OAAO,GAAa,YAAY,GAAU,CAC9C,GAAe,OAIhB,EAAe,YADO,EAAyB,QAAQ,EAAQ,KAAK,CAMzE,OADA,EAAU,YAAY,EAAO,CACtB,GAGT,kBAAmB,MAAO,EAAyB,IAA2B,CACvE,EAAkB,aACpB,EAAkB,aAAa,CAElC,EAAU,QAAQ,EAErB,CAED,EAAO,aAAa,EAAU,EAAO,CACrC,EAAO,aAAa,EAAU,EAAO,KAExB,CACX,EAAS,QAAQ,CACjB,EAAS,QAAQ,GAGtB"}
|
package/dist/lib/nix-ionic.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{NixComponent as e,signal as t,watch as n}from"@deijose/nix-js";import{initialize as r}from"@ionic/core/components";import{defineCustomElement as i}from"@ionic/core/components/ion-app.js";import{defineCustomElement as a}from"@ionic/core/components/ion-router.js";import{defineCustomElement as o}from"@ionic/core/components/ion-route.js";import{defineCustomElement as s}from"@ionic/core/components/ion-router-outlet.js";import{defineCustomElement as c}from"@ionic/core/components/ion-back-button.js";import{defineCustomElement as l}from"ionicons/components/ion-icon.js";import{addIcons as u}from"ionicons";import{arrowBack as d,arrowBackSharp as f,chevronBack as p,chevronBackSharp as m}from"ionicons/icons";function h(){return{willEnter:t(0),didEnter:t(0),willLeave:t(0),didLeave:t(0)}}var g=class extends e{__lc;constructor(e){super(),this.__lc=e}onInit(){let e=this.__lc;this.ionViewWillEnter&&n(e.willEnter,this.ionViewWillEnter.bind(this)),this.ionViewDidEnter&&n(e.didEnter,this.ionViewDidEnter.bind(this)),this.ionViewWillLeave&&n(e.willLeave,this.ionViewWillLeave.bind(this)),this.ionViewDidLeave&&n(e.didLeave,this.ionViewDidLeave.bind(this))}};function _(e,t){n(e.willEnter,t)}function v(e,t){n(e.didEnter,t)}function y(e,t){n(e.willLeave,t)}function b(e,t){n(e.didLeave,t)}var x=!1;function S(e={}){if(x)return;let t=e.iconAssetPath||"https://unpkg.com/ionicons@latest/dist/ionicons/svg/";window.ionicons={assets:t},r();let n=[i,a,o,s,c,l];for(let e of n)e();for(let e=0;e<n.length;e++){(0,n[e])()}if(e.components)for(let t=0;t<e.components.length;t++){(0,e.components[t])()}u({"arrow-back":d,"arrow-back-sharp":f,"chevron-back":p,"chevron-back-sharp":m}),x=!0}function C(){return{navigate:(e,t="forward")=>{let n=document.querySelector("ion-router");n&&"function"==typeof n.push&&n.push(e,t)},replace:e=>{let t=document.querySelector("ion-router");t&&"function"==typeof t.push&&t.push(e,"root")},back:()=>{let e=document.querySelector("ion-router");e&&"function"==typeof e.back&&e.back()}}}function w(e="/"){return{__isNixTemplate:!0,mount(e){let t="string"==typeof e?document.querySelector(e):e;return{unmount:this._render(t,null)}},_render(t,n){let o=document.createElement("ion-back-button");return e&&o.setAttribute("default-href",e),t.insertBefore(o,n),()=>o.remove()}}}var T=class extends e{routes;constructor(e){super(),this.routes=e}_pathToRouteId(e){return e&&"/"!==e?`nix-route-${e.replace(/\/:?[^/]+/g,e=>"-"+e.replace(/\//g,"").replace(/:/g,"")).replace(/^\//,"").replace(/\//g,"-")}`:"nix-route-home"}render(){let e=this;return{__isNixTemplate:!0,mount(e){let t="string"==typeof e?document.querySelector(e):e;return{unmount:this._render(t,null)}},_render(t,n){let o=document.createElement("ion-router");o.setAttribute("use-hash","false"),e.routes.filter(e=>"*"!==e.path).forEach(t=>{let n=document.createElement("ion-route");n.setAttribute("url",t.path),n.setAttribute("component",e._pathToRouteId(t.path)),o.appendChild(n)});let i=document.createElement("ion-router-outlet");return i.delegate={attachViewToDom:async(t,n,o,i)=>{let r=e.routes.find(t=>e._pathToRouteId(t.path)===n),s=document.createElement("ion-page");s.classList.add("ion-page"),i&&i.length&&s.classList.add(...i);let a=h();if(s.addEventListener("ionViewWillEnter",()=>a.willEnter.update(e=>e+1)),s.addEventListener("ionViewDidEnter",()=>a.didEnter.update(e=>e+1)),s.addEventListener("ionViewWillLeave",()=>a.willLeave.update(e=>e+1)),s.addEventListener("ionViewDidLeave",()=>a.didLeave.update(e=>e+1)),r){let e=o||{},t=r.component({lc:a,params:e});if("render"in t&&"function"==typeof t.render){let e=t;e.onInit?.();let n=e.render()._render(s,null),o=e.onMount?.();s._nixCleanup=()=>{e.onUnmount?.(),"function"==typeof o&&o(),n()}}else s._nixCleanup=t._render(s,null)}return t.appendChild(s),s},removeViewFromDom:async(e,t)=>{t._nixCleanup&&t._nixCleanup(),t.remove()}},t.insertBefore(o,n),t.insertBefore(i,n),()=>{o.remove(),i.remove()}}}}};export{w as IonBackButton,g as IonPage,T as IonRouterOutlet,h as createPageLifecycle,S as setupNixIonic,v as useIonViewDidEnter,b as useIonViewDidLeave,_ as useIonViewWillEnter,y as useIonViewWillLeave,C as useRouter};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"nix-ionic.js","names":[],"sources":["../../src/lifecycle.ts","../../src/setup.ts","../../src/IonRouterOutlet.ts"],"sourcesContent":["/**\n * ionic-nix/lifecycle.ts\n *\n * Sistema de ciclo de vida de navegación, análogo a los hooks de Ionic:\n * ionViewWillEnter / ionViewDidEnter / ionViewWillLeave / ionViewDidLeave\n *\n * Cómo funciona (sin provide/inject):\n * 1. IonRouterOutlet crea un `PageLifecycle` por cada ruta.\n * 2. Lo pasa directamente al factory de la ruta como argumento.\n * 3. El factory llama a `new MiPagina(lc)` o `MiPagina(lc)`.\n * 4. IonPage/composables registran watchers sobre las señales del lc.\n * 5. Cuando el router navega, incrementa las señales → watchers se disparan.\n */\n\nimport { signal, watch } from \"@deijose/nix-js\";\nimport type { Signal } from \"@deijose/nix-js\";\nimport { NixComponent } from \"@deijose/nix-js\";\n\n// --------------------------------------------------------------------------\n// Tipos públicos\n// --------------------------------------------------------------------------\n\nexport interface PageLifecycle {\n willEnter: Signal<number>;\n didEnter: Signal<number>;\n willLeave: Signal<number>;\n didLeave: Signal<number>;\n}\n\n/** Crea un nuevo PageLifecycle con señales en 0. */\nexport function createPageLifecycle(): PageLifecycle {\n return {\n willEnter: signal(0),\n didEnter: signal(0),\n willLeave: signal(0),\n didLeave: signal(0),\n };\n}\n\n// --------------------------------------------------------------------------\n// IonPage — clase base para páginas con hooks de navegación\n// --------------------------------------------------------------------------\n//\n// Uso:\n// class HomePage extends IonPage {\n// constructor(lc: PageLifecycle) { super(lc); }\n//\n// ionViewWillEnter() { /* fetch de datos frescos */ }\n// render() { return html`...`; }\n// }\n\nexport abstract class IonPage extends NixComponent {\n private __lc: PageLifecycle;\n\n constructor(lc: PageLifecycle) {\n super();\n this.__lc = lc;\n }\n\n override onInit(): void {\n const lc = this.__lc;\n // watch no corre en init (immediate: false), así que ionViewWillEnter\n // solo se llama cuando el outlet incrementa la señal, no al construir.\n if (this.ionViewWillEnter) watch(lc.willEnter, this.ionViewWillEnter.bind(this));\n if (this.ionViewDidEnter) watch(lc.didEnter, this.ionViewDidEnter.bind(this));\n if (this.ionViewWillLeave) watch(lc.willLeave, this.ionViewWillLeave.bind(this));\n if (this.ionViewDidLeave) watch(lc.didLeave, this.ionViewDidLeave.bind(this));\n }\n\n ionViewWillEnter?(): void;\n ionViewDidEnter?(): void;\n ionViewWillLeave?(): void;\n ionViewDidLeave?(): void;\n}\n\n// --------------------------------------------------------------------------\n// Composables para function components\n// --------------------------------------------------------------------------\n//\n// Uso:\n// function ProfilePage(lc: PageLifecycle): NixTemplate {\n// useIonViewWillEnter(lc, () => { /* fetch */ });\n// return html`...`;\n// }\n\nexport function useIonViewWillEnter(lc: PageLifecycle, fn: () => void): void {\n watch(lc.willEnter, fn);\n}\n\nexport function useIonViewDidEnter(lc: PageLifecycle, fn: () => void): void {\n watch(lc.didEnter, fn);\n}\n\nexport function useIonViewWillLeave(lc: PageLifecycle, fn: () => void): void {\n watch(lc.willLeave, fn);\n}\n\nexport function useIonViewDidLeave(lc: PageLifecycle, fn: () => void): void {\n watch(lc.didLeave, fn);\n}","import { initialize } from \"@ionic/core/components\";\n\n// Minimal core components required for any nix-ionic app\nimport { defineCustomElement as defineIonApp } from \"@ionic/core/components/ion-app.js\";\nimport { defineCustomElement as defineIonRouter } from \"@ionic/core/components/ion-router.js\";\nimport { defineCustomElement as defineIonRoute } from \"@ionic/core/components/ion-route.js\";\nimport { defineCustomElement as defineIonRouterOutlet } from \"@ionic/core/components/ion-router-outlet.js\";\nimport { defineCustomElement as defineIonBackButton } from \"@ionic/core/components/ion-back-button.js\";\n\n// Icons\nimport { defineCustomElement as defineIonIcon } from \"ionicons/components/ion-icon.js\";\nimport { addIcons } from \"ionicons\";\nimport { arrowBack, arrowBackSharp, chevronBack, chevronBackSharp } from \"ionicons/icons\";\n\nexport type ComponentDefiner = () => void;\n\nlet isInitialized = false;\n\n/**\n * Initialize Ionic Core for Nix.js.\n *\n * By default only the **minimal** components needed for routing are registered\n * (ion-app, ion-router, ion-route, ion-router-outlet, ion-back-button, ion-icon).\n *\n * Pass additional components via `options.components` to register only what you use:\n *\n * ```ts\n * import { setupNixIonic } from \"@deijose/nix-ionic\";\n * import { layoutComponents } from \"@deijose/nix-ionic/bundles/layout\";\n * import { defineIonButton } from \"@deijose/nix-ionic/components\";\n *\n * setupNixIonic({\n * components: [...layoutComponents, defineIonButton],\n * });\n * ```\n */\nexport function setupNixIonic(\n options: {\n iconAssetPath?: string;\n components?: ComponentDefiner[];\n } = {}\n) {\n if (isInitialized) return;\n\n // Ionicons asset configuration\n const assetPath =\n options.iconAssetPath ||\n \"https://unpkg.com/ionicons@latest/dist/ionicons/svg/\";\n (window as any).ionicons = { assets: assetPath };\n\n initialize();\n\n // Register minimal core components (always needed)\n const coreComponents: ComponentDefiner[] = [\n defineIonApp,\n defineIonRouter,\n defineIonRoute,\n defineIonRouterOutlet,\n defineIonBackButton,\n defineIonIcon,\n ];\n\n for (const def of coreComponents) {\n def();\n }\n for (let i = 0; i < coreComponents.length; i++) {\n const def = coreComponents[i];\n def();\n }\n\n // Register user-provided components\n if (options.components) {\n for (let i = 0; i < options.components.length; i++) {\n const def = options.components[i];\n def();\n }\n }\n\n // Register critical navigation icons\n addIcons({\n \"arrow-back\": arrowBack,\n \"arrow-back-sharp\": arrowBackSharp,\n \"chevron-back\": chevronBack,\n \"chevron-back-sharp\": chevronBackSharp,\n });\n\n isInitialized = true;\n}\n\nexport { addIcons };","import { NixComponent } from \"@deijose/nix-js\";\nimport type { NixTemplate } from \"@deijose/nix-js\";\nimport { createPageLifecycle, type PageLifecycle } from \"./lifecycle\";\n\n// --------------------------------------------------------------------------\n// Router store singleton\n// --------------------------------------------------------------------------\n\nexport function useRouter() {\n return {\n navigate: (path: string, direction: \"forward\" | \"back\" | \"root\" = \"forward\") => {\n const router = document.querySelector(\"ion-router\");\n if (router && typeof (router as any).push === \"function\") {\n (router as any).push(path, direction);\n }\n },\n replace: (path: string) => {\n const router = document.querySelector(\"ion-router\");\n if (router && typeof (router as any).push === \"function\") {\n (router as any).push(path, \"root\");\n }\n },\n back: () => {\n const router = document.querySelector(\"ion-router\");\n if (router && typeof (router as any).back === \"function\") {\n (router as any).back();\n }\n }\n };\n}\n\n// --------------------------------------------------------------------------\n// IonBackButton (Sin listeners, 100% nativo)\n// --------------------------------------------------------------------------\n\nexport function IonBackButton(defaultHref: string | undefined = \"/\"): NixTemplate {\n return {\n __isNixTemplate: true as const,\n mount(container) {\n const el = typeof container === \"string\" ? document.querySelector(container)! : container;\n const cleanup = this._render(el, null);\n return { unmount: cleanup };\n },\n _render(parent: Node, before: Node | null): () => void {\n const btn = document.createElement(\"ion-back-button\");\n if (defaultHref) btn.setAttribute(\"default-href\", defaultHref);\n parent.insertBefore(btn, before);\n return () => btn.remove();\n },\n };\n}\n\n// --------------------------------------------------------------------------\n// Tipos públicos\n// --------------------------------------------------------------------------\n\nexport interface PageContext {\n lc: PageLifecycle;\n params: Record<string, string>;\n}\n\nexport interface RouteDefinition {\n path: string;\n component: (ctx: PageContext) => NixComponent | NixTemplate;\n}\n\n// --------------------------------------------------------------------------\n// IonRouterOutlet (El Bridge Maestro usando Framework Delegate)\n// --------------------------------------------------------------------------\n\nexport class IonRouterOutlet extends NixComponent {\n private routes: RouteDefinition[];\n\n constructor(routes: RouteDefinition[]) {\n super();\n this.routes = routes;\n }\n\n // Crea un ID único interno para mapear la ruta\n private _pathToRouteId(path: string): string {\n if (!path || path === \"/\") return \"nix-route-home\";\n const clean = path\n .replace(/\\/:?[^/]+/g, (m) => \"-\" + m.replace(/\\//g, \"\").replace(/:/g, \"\"))\n .replace(/^\\//, \"\")\n .replace(/\\//g, \"-\");\n return `nix-route-${clean}`;\n }\n\n override render(): NixTemplate {\n const self = this;\n return {\n __isNixTemplate: true as const,\n mount(container: Element | string) {\n const el = typeof container === \"string\" ? document.querySelector(container)! : container;\n const cleanup = this._render(el, null);\n return { unmount: cleanup };\n },\n _render(parent: Node, before: Node | null): () => void {\n \n const routerEl = document.createElement(\"ion-router\");\n routerEl.setAttribute(\"use-hash\", \"false\");\n \n // Creamos los <ion-route> asociados a un Component ID en vez de un Custom Element\n self.routes.filter((r) => r.path !== \"*\").forEach((r) => {\n const routeEl = document.createElement(\"ion-route\");\n routeEl.setAttribute(\"url\", r.path);\n routeEl.setAttribute(\"component\", self._pathToRouteId(r.path));\n routerEl.appendChild(routeEl);\n });\n\n const outletEl = document.createElement(\"ion-router-outlet\");\n\n // 🔥 INVERSIÓN DE CONTROL: Framework Delegate 🔥\n (outletEl as any).delegate = {\n // Ionic llama a attachViewToDom cuando debe instanciar una vista nueva o usar caché\n attachViewToDom: async (container: HTMLElement, componentTag: string, props: any, classes: string[]) => {\n \n const routeDef = self.routes.find(r => self._pathToRouteId(r.path) === componentTag);\n \n // Requisito de Ionic: la vista debe ser un elemento con clase .ion-page\n const pageEl = document.createElement(\"ion-page\");\n pageEl.classList.add(\"ion-page\");\n if (classes && classes.length) pageEl.classList.add(...classes);\n\n // 1. Escuchar los eventos DOM nativos que dispara el outlet\n const lc = createPageLifecycle();\n pageEl.addEventListener(\"ionViewWillEnter\", () => lc.willEnter.update((n) => n + 1));\n pageEl.addEventListener(\"ionViewDidEnter\", () => lc.didEnter.update((n) => n + 1));\n pageEl.addEventListener(\"ionViewWillLeave\", () => lc.willLeave.update((n) => n + 1));\n pageEl.addEventListener(\"ionViewDidLeave\", () => lc.didLeave.update((n) => n + 1));\n\n if (routeDef) {\n // 2. Props entregadas DIRECTAMENTE por Ionic (contiene los Params de la ruta)\n const params = props || {};\n \n // 3. Renderizado agnóstico mediante Nix.js\n const pageNode = routeDef.component({ lc, params });\n\n if (\"render\" in pageNode && typeof (pageNode as NixComponent).render === \"function\") {\n const comp = pageNode as NixComponent;\n comp.onInit?.();\n const renderCleanup = comp.render()._render(pageEl, null);\n const mountRet = comp.onMount?.();\n\n // Registrar en el nodo DOM cómo debe Nix limpiar esta vista\n (pageEl as any)._nixCleanup = () => {\n comp.onUnmount?.();\n if (typeof mountRet === \"function\") mountRet();\n renderCleanup();\n };\n } else {\n const renderCleanup = (pageNode as NixTemplate)._render(pageEl, null);\n (pageEl as any)._nixCleanup = renderCleanup;\n }\n }\n\n container.appendChild(pageEl);\n return pageEl;\n },\n // Ionic llama a removeViewFromDom cuando el usuario navega hacia atrás y se destruye el caché\n removeViewFromDom: async (_container: HTMLElement, component: HTMLElement) => {\n if ((component as any)._nixCleanup) {\n (component as any)._nixCleanup(); // 🧹 Destrucción Segura de Effects (Memory Leaks evitados)\n }\n component.remove();\n }\n };\n\n parent.insertBefore(routerEl, before);\n parent.insertBefore(outletEl, before);\n\n return () => {\n routerEl.remove();\n outletEl.remove();\n };\n },\n };\n }\n}"],"mappings":";;;;;;;;;;;AA8BA,SAAgB,IAAqC;AACnD,QAAO;EACL,WAAW,EAAO,EAAE;EACpB,UAAW,EAAO,EAAE;EACpB,WAAW,EAAO,EAAE;EACpB,UAAW,EAAO,EAAE;EACrB;;AAeH,IAAsB,IAAtB,cAAsC,EAAa;CACjD;CAEA,YAAY,GAAmB;AAE7B,EADA,OAAO,EACP,KAAK,OAAO;;CAGd,SAAwB;EACtB,IAAM,IAAK,KAAK;AAMhB,EAHI,KAAK,oBAAkB,EAAM,EAAG,WAAW,KAAK,iBAAiB,KAAK,KAAK,CAAC,EAC5E,KAAK,mBAAkB,EAAM,EAAG,UAAW,KAAK,gBAAgB,KAAK,KAAK,CAAC,EAC3E,KAAK,oBAAkB,EAAM,EAAG,WAAW,KAAK,iBAAiB,KAAK,KAAK,CAAC,EAC5E,KAAK,mBAAkB,EAAM,EAAG,UAAW,KAAK,gBAAgB,KAAK,KAAK,CAAC;;;AAmBnF,SAAgB,EAAoB,GAAmB,GAAsB;AAC3E,GAAM,EAAG,WAAW,EAAG;;AAGzB,SAAgB,EAAmB,GAAmB,GAAsB;AAC1E,GAAM,EAAG,UAAU,EAAG;;AAGxB,SAAgB,EAAoB,GAAmB,GAAsB;AAC3E,GAAM,EAAG,WAAW,EAAG;;AAGzB,SAAgB,EAAmB,GAAmB,GAAsB;AAC1E,GAAM,EAAG,UAAU,EAAG;;;;AClFxB,IAAI,IAAgB;AAoBpB,SAAgB,EACd,IAGI,EAAE,EACN;AACA,KAAI,EAAe;CAGnB,IAAM,IACJ,EAAQ,iBACR;AAGF,CAFC,OAAe,WAAW,EAAE,QAAQ,GAAW,EAEhD,GAAY;CAGZ,IAAM,IAAqC;EACzC;EACA;EACA;EACA;EACA;EACA;EACD;AAED,MAAK,IAAM,KAAO,EAChB,IAAK;AAEP,MAAK,IAAI,IAAI,GAAG,IAAI,EAAe,QAAQ,KAAK;EAC9C,IAAM,IAAM,EAAe;AAC3B,KAAK;;AAIP,KAAI,EAAQ,WACV,MAAK,IAAI,IAAI,GAAG,IAAI,EAAQ,WAAW,QAAQ,KAAK;EAClD,IAAM,IAAM,EAAQ,WAAW;AAC/B,KAAK;;AAYT,CAPA,EAAS;EACP,cAAc;EACd,oBAAoB;EACpB,gBAAgB;EAChB,sBAAsB;EACvB,CAAC,EAEF,IAAgB;;;;AC9ElB,SAAgB,IAAY;AAC1B,QAAO;EACL,WAAW,GAAc,IAAyC,cAAc;GAC9E,IAAM,IAAS,SAAS,cAAc,aAAa;AACnD,GAAI,KAAU,OAAQ,EAAe,QAAS,cAC3C,EAAe,KAAK,GAAM,EAAU;;EAGzC,UAAU,MAAiB;GACzB,IAAM,IAAS,SAAS,cAAc,aAAa;AACnD,GAAI,KAAU,OAAQ,EAAe,QAAS,cAC3C,EAAe,KAAK,GAAM,OAAO;;EAGtC,YAAY;GACV,IAAM,IAAS,SAAS,cAAc,aAAa;AACnD,GAAI,KAAU,OAAQ,EAAe,QAAS,cAC3C,EAAe,MAAM;;EAG3B;;AAOH,SAAgB,EAAc,IAAkC,KAAkB;AAChF,QAAO;EACL,iBAAiB;EACjB,MAAM,GAAW;GACf,IAAM,IAAK,OAAO,KAAc,WAAW,SAAS,cAAc,EAAU,GAAI;AAEhF,UAAO,EAAE,SADO,KAAK,QAAQ,GAAI,KAAK,EACX;;EAE7B,QAAQ,GAAc,GAAiC;GACrD,IAAM,IAAM,SAAS,cAAc,kBAAkB;AAGrD,UAFI,KAAa,EAAI,aAAa,gBAAgB,EAAY,EAC9D,EAAO,aAAa,GAAK,EAAO,QACnB,EAAI,QAAQ;;EAE5B;;AAqBH,IAAa,IAAb,cAAqC,EAAa;CAChD;CAEA,YAAY,GAA2B;AAErC,EADA,OAAO,EACP,KAAK,SAAS;;CAIhB,eAAuB,GAAsB;AAM3C,SALI,CAAC,KAAQ,MAAS,MAAY,mBAK3B,aAJO,EACX,QAAQ,eAAe,MAAM,MAAM,EAAE,QAAQ,OAAO,GAAG,CAAC,QAAQ,MAAM,GAAG,CAAC,CAC1E,QAAQ,OAAO,GAAG,CAClB,QAAQ,OAAO,IAAI;;CAIxB,SAA+B;EAC7B,IAAM,IAAO;AACb,SAAO;GACL,iBAAiB;GACjB,MAAM,GAA6B;IACjC,IAAM,IAAK,OAAO,KAAc,WAAW,SAAS,cAAc,EAAU,GAAI;AAEhF,WAAO,EAAE,SADO,KAAK,QAAQ,GAAI,KAAK,EACX;;GAE7B,QAAQ,GAAc,GAAiC;IAErD,IAAM,IAAW,SAAS,cAAc,aAAa;AAIrD,IAHA,EAAS,aAAa,YAAY,QAAQ,EAG1C,EAAK,OAAO,QAAQ,MAAM,EAAE,SAAS,IAAI,CAAC,SAAS,MAAM;KACvD,IAAM,IAAU,SAAS,cAAc,YAAY;AAGnD,KAFA,EAAQ,aAAa,OAAO,EAAE,KAAK,EACnC,EAAQ,aAAa,aAAa,EAAK,eAAe,EAAE,KAAK,CAAC,EAC9D,EAAS,YAAY,EAAQ;MAC7B;IAEF,IAAM,IAAW,SAAS,cAAc,oBAAoB;AA6D5D,WA1DC,EAAiB,WAAW;KAE3B,iBAAiB,OAAO,GAAwB,GAAsB,GAAY,MAAsB;MAEtG,IAAM,IAAW,EAAK,OAAO,MAAK,MAAK,EAAK,eAAe,EAAE,KAAK,KAAK,EAAa,EAG9E,IAAS,SAAS,cAAc,WAAW;AAEjD,MADA,EAAO,UAAU,IAAI,WAAW,EAC5B,KAAW,EAAQ,UAAQ,EAAO,UAAU,IAAI,GAAG,EAAQ;MAG/D,IAAM,IAAK,GAAqB;AAMhC,UALA,EAAO,iBAAiB,0BAA0B,EAAG,UAAU,QAAQ,MAAM,IAAI,EAAE,CAAC,EACpF,EAAO,iBAAiB,yBAA0B,EAAG,SAAS,QAAQ,MAAM,IAAI,EAAE,CAAC,EACnF,EAAO,iBAAiB,0BAA0B,EAAG,UAAU,QAAQ,MAAM,IAAI,EAAE,CAAC,EACpF,EAAO,iBAAiB,yBAA0B,EAAG,SAAS,QAAQ,MAAM,IAAI,EAAE,CAAC,EAE/E,GAAU;OAEZ,IAAM,IAAS,KAAS,EAAE,EAGpB,IAAW,EAAS,UAAU;QAAE;QAAI;QAAQ,CAAC;AAEnD,WAAI,YAAY,KAAY,OAAQ,EAA0B,UAAW,YAAY;QACnF,IAAM,IAAO;AACb,UAAK,UAAU;QACf,IAAM,IAAgB,EAAK,QAAQ,CAAC,QAAQ,GAAQ,KAAK,EACnD,IAAW,EAAK,WAAW;AAGhC,UAAe,oBAAoB;AAGlC,SAFA,EAAK,aAAa,EACd,OAAO,KAAa,cAAY,GAAU,EAC9C,GAAe;;aAIhB,GAAe,cADO,EAAyB,QAAQ,GAAQ,KAAK;;AAMzE,aADA,EAAU,YAAY,EAAO,EACtB;;KAGT,mBAAmB,OAAO,GAAyB,MAA2B;AAI5E,MAHK,EAAkB,eACpB,EAAkB,aAAa,EAElC,EAAU,QAAQ;;KAErB,EAED,EAAO,aAAa,GAAU,EAAO,EACrC,EAAO,aAAa,GAAU,EAAO,QAExB;AAEX,KADA,EAAS,QAAQ,EACjB,EAAS,QAAQ;;;GAGtB"}
|
package/dist/lib/setup.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { addIcons } from "ionicons";
|
|
2
|
-
export type ComponentDefiner = () => void;
|
|
3
|
-
/**
|
|
4
|
-
* Initialize Ionic Core for Nix.js.
|
|
5
|
-
*
|
|
6
|
-
* By default only the **minimal** components needed for routing are registered
|
|
7
|
-
* (ion-app, ion-router, ion-route, ion-router-outlet, ion-back-button, ion-icon).
|
|
8
|
-
*
|
|
9
|
-
* Pass additional components via `options.components` to register only what you use:
|
|
10
|
-
*
|
|
11
|
-
* ```ts
|
|
12
|
-
* import { setupNixIonic } from "@deijose/nix-ionic";
|
|
13
|
-
* import { layoutComponents } from "@deijose/nix-ionic/bundles/layout";
|
|
14
|
-
* import { defineIonButton } from "@deijose/nix-ionic/components";
|
|
15
|
-
*
|
|
16
|
-
* setupNixIonic({
|
|
17
|
-
* components: [...layoutComponents, defineIonButton],
|
|
18
|
-
* });
|
|
19
|
-
* ```
|
|
20
|
-
*/
|
|
21
|
-
export declare function setupNixIonic(options?: {
|
|
22
|
-
iconAssetPath?: string;
|
|
23
|
-
components?: ComponentDefiner[];
|
|
24
|
-
}): void;
|
|
25
|
-
export { addIcons };
|