@ionic/react 7.5.3-dev.11698856380.18896dcd → 7.5.3-dev.11698858201.14165f23

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.
Files changed (247) hide show
  1. package/dist/components/CreateAnimation.js +107 -0
  2. package/dist/components/CreateAnimation.js.map +7 -0
  3. package/dist/components/IonActionSheet.js +8 -0
  4. package/dist/components/IonActionSheet.js.map +7 -0
  5. package/dist/components/IonAlert.js +8 -0
  6. package/dist/components/IonAlert.js.map +7 -0
  7. package/dist/components/IonApp.js +42 -0
  8. package/dist/components/IonApp.js.map +7 -0
  9. package/dist/components/IonIcon.js +39 -0
  10. package/dist/components/IonIcon.js.map +7 -0
  11. package/dist/components/IonLoading.js +8 -0
  12. package/dist/components/IonLoading.js.map +7 -0
  13. package/dist/components/IonModal.js +9 -0
  14. package/dist/components/IonModal.js.map +7 -0
  15. package/dist/components/IonOverlayManager.js +29 -0
  16. package/dist/components/IonOverlayManager.js.map +7 -0
  17. package/dist/components/IonPage.js +31 -0
  18. package/dist/components/IonPage.js.map +7 -0
  19. package/dist/components/IonPicker.js +8 -0
  20. package/dist/components/IonPicker.js.map +7 -0
  21. package/dist/components/IonPopover.js +8 -0
  22. package/dist/components/IonPopover.js.map +7 -0
  23. package/dist/components/IonRedirect.js +19 -0
  24. package/dist/components/IonRedirect.js.map +7 -0
  25. package/dist/components/IonRoute.js +17 -0
  26. package/dist/components/IonRoute.js.map +7 -0
  27. package/dist/components/IonRouterContext.js +32 -0
  28. package/dist/components/IonRouterContext.js.map +7 -0
  29. package/dist/components/IonRouterOutlet.js +24 -0
  30. package/dist/components/IonRouterOutlet.js.map +7 -0
  31. package/dist/components/IonToast.js +8 -0
  32. package/dist/components/IonToast.js.map +7 -0
  33. package/dist/components/IonicReactProps.js +2 -0
  34. package/dist/components/IonicReactProps.js.map +7 -0
  35. package/dist/components/__tests__/utils.spec.js +50 -0
  36. package/dist/components/__tests__/utils.spec.js.map +7 -0
  37. package/dist/components/createControllerComponent.js +80 -0
  38. package/dist/components/createControllerComponent.js.map +7 -0
  39. package/dist/components/createInlineOverlayComponent.js +114 -0
  40. package/dist/components/createInlineOverlayComponent.js.map +7 -0
  41. package/dist/components/createOverlayComponent.js +88 -0
  42. package/dist/components/createOverlayComponent.js.map +7 -0
  43. package/dist/components/createRoutingComponent.js +79 -0
  44. package/dist/components/createRoutingComponent.js.map +7 -0
  45. package/dist/components/hrefprops.js +2 -0
  46. package/dist/components/hrefprops.js.map +7 -0
  47. package/dist/components/index.js +126 -0
  48. package/dist/components/index.js.map +7 -0
  49. package/dist/components/inner-proxies.js +30 -0
  50. package/dist/components/inner-proxies.js.map +7 -0
  51. package/dist/components/navigation/IonBackButton.js +31 -0
  52. package/dist/components/navigation/IonBackButton.js.map +7 -0
  53. package/dist/components/navigation/IonNav.js +21 -0
  54. package/dist/components/navigation/IonNav.js.map +7 -0
  55. package/dist/components/navigation/IonTabBar.js +173 -0
  56. package/dist/components/navigation/IonTabBar.js.map +7 -0
  57. package/dist/components/navigation/IonTabButton.js +30 -0
  58. package/dist/components/navigation/IonTabButton.js.map +7 -0
  59. package/dist/components/navigation/IonTabs.js +103 -0
  60. package/dist/components/navigation/IonTabs.js.map +7 -0
  61. package/dist/components/navigation/IonTabsContext.js +7 -0
  62. package/dist/components/navigation/IonTabsContext.js.map +7 -0
  63. package/dist/components/proxies.js +131 -0
  64. package/dist/components/proxies.js.map +7 -0
  65. package/dist/components/react-component-lib/createComponent.js +58 -0
  66. package/dist/components/react-component-lib/createComponent.js.map +7 -0
  67. package/dist/components/react-component-lib/createOverlayComponent.js +86 -0
  68. package/dist/components/react-component-lib/createOverlayComponent.js.map +7 -0
  69. package/dist/components/react-component-lib/index.js +4 -0
  70. package/dist/components/react-component-lib/index.js.map +7 -0
  71. package/dist/components/react-component-lib/interfaces.js +2 -0
  72. package/dist/components/react-component-lib/interfaces.js.map +7 -0
  73. package/dist/components/react-component-lib/utils/attachProps.js +92 -0
  74. package/dist/components/react-component-lib/utils/attachProps.js.map +7 -0
  75. package/dist/components/react-component-lib/utils/case.js +4 -0
  76. package/dist/components/react-component-lib/utils/case.js.map +7 -0
  77. package/dist/components/react-component-lib/utils/dev.js +14 -0
  78. package/dist/components/react-component-lib/utils/dev.js.map +7 -0
  79. package/dist/components/react-component-lib/utils/index.js +31 -0
  80. package/dist/components/react-component-lib/utils/index.js.map +7 -0
  81. package/dist/components/routing-proxies.js +29 -0
  82. package/dist/components/routing-proxies.js.map +7 -0
  83. package/dist/components/utils/detachProps.js +24 -0
  84. package/dist/components/utils/detachProps.js.map +7 -0
  85. package/dist/components/utils/index.js +26 -0
  86. package/dist/components/utils/index.js.map +7 -0
  87. package/dist/components/utils/ionRenderToString.js +36 -0
  88. package/dist/components/utils/ionRenderToString.js.map +7 -0
  89. package/dist/contexts/IonContext.js +11 -0
  90. package/dist/contexts/IonContext.js.map +7 -0
  91. package/dist/contexts/IonLifeCycleContext.js +185 -0
  92. package/dist/contexts/IonLifeCycleContext.js.map +7 -0
  93. package/dist/contexts/NavContext.js +36 -0
  94. package/dist/contexts/NavContext.js.map +7 -0
  95. package/dist/framework-delegate.js +30 -0
  96. package/dist/framework-delegate.js.map +7 -0
  97. package/dist/hooks/HookOverlayOptions.js +2 -0
  98. package/dist/hooks/HookOverlayOptions.js.map +7 -0
  99. package/dist/hooks/__tests__/hooks.spec.js +6 -0
  100. package/dist/hooks/__tests__/hooks.spec.js.map +7 -0
  101. package/dist/hooks/useController.js +45 -0
  102. package/dist/hooks/useController.js.map +7 -0
  103. package/dist/hooks/useIonActionSheet.js +27 -0
  104. package/dist/hooks/useIonActionSheet.js.map +7 -0
  105. package/dist/hooks/useIonAlert.js +23 -0
  106. package/dist/hooks/useIonAlert.js.map +7 -0
  107. package/dist/hooks/useIonLoading.js +28 -0
  108. package/dist/hooks/useIonLoading.js.map +7 -0
  109. package/dist/hooks/useIonModal.js +22 -0
  110. package/dist/hooks/useIonModal.js.map +7 -0
  111. package/dist/hooks/useIonPicker.js +27 -0
  112. package/dist/hooks/useIonPicker.js.map +7 -0
  113. package/dist/hooks/useIonPopover.js +22 -0
  114. package/dist/hooks/useIonPopover.js.map +7 -0
  115. package/dist/hooks/useIonToast.js +23 -0
  116. package/dist/hooks/useIonToast.js.map +7 -0
  117. package/dist/hooks/useOverlay.js +67 -0
  118. package/dist/hooks/useOverlay.js.map +7 -0
  119. package/dist/index.js +8 -2443
  120. package/dist/index.js.map +7 -1
  121. package/dist/lifecycle/IonLifeCycleHOC.js +41 -0
  122. package/dist/lifecycle/IonLifeCycleHOC.js.map +7 -0
  123. package/dist/lifecycle/hooks.js +52 -0
  124. package/dist/lifecycle/hooks.js.map +7 -0
  125. package/dist/lifecycle/index.js +4 -0
  126. package/dist/lifecycle/index.js.map +7 -0
  127. package/dist/models/ReactComponentOrElement.js +2 -0
  128. package/dist/models/ReactComponentOrElement.js.map +7 -0
  129. package/dist/models/RouteAction.js +2 -0
  130. package/dist/models/RouteAction.js.map +7 -0
  131. package/dist/models/RouteInfo.js +2 -0
  132. package/dist/models/RouteInfo.js.map +7 -0
  133. package/dist/models/RouterDirection.js +2 -0
  134. package/dist/models/RouterDirection.js.map +7 -0
  135. package/dist/models/RouterOptions.js +2 -0
  136. package/dist/models/RouterOptions.js.map +7 -0
  137. package/dist/models/index.js +7 -0
  138. package/dist/models/index.js.map +7 -0
  139. package/dist/routing/LocationHistory.js +140 -0
  140. package/dist/routing/LocationHistory.js.map +7 -0
  141. package/dist/routing/NavManager.js +76 -0
  142. package/dist/routing/NavManager.js.map +7 -0
  143. package/dist/routing/OutletPageManager.js +69 -0
  144. package/dist/routing/OutletPageManager.js.map +7 -0
  145. package/dist/routing/PageManager.js +60 -0
  146. package/dist/routing/PageManager.js.map +7 -0
  147. package/dist/routing/RouteManagerContext.js +15 -0
  148. package/dist/routing/RouteManagerContext.js.map +7 -0
  149. package/dist/routing/StackContext.js +7 -0
  150. package/dist/routing/StackContext.js.map +7 -0
  151. package/dist/routing/ViewItem.js +2 -0
  152. package/dist/routing/ViewItem.js.map +7 -0
  153. package/dist/routing/ViewLifeCycleManager.js +36 -0
  154. package/dist/routing/ViewLifeCycleManager.js.map +7 -0
  155. package/dist/routing/ViewStacks.js +49 -0
  156. package/dist/routing/ViewStacks.js.map +7 -0
  157. package/dist/routing/__tests__/LocationHistory.spec.js +185 -0
  158. package/dist/routing/__tests__/LocationHistory.spec.js.map +7 -0
  159. package/dist/routing/index.js +9 -0
  160. package/dist/routing/index.js.map +7 -0
  161. package/dist/utils/HTMLElementSSR.js +4 -0
  162. package/dist/utils/HTMLElementSSR.js.map +7 -0
  163. package/dist/utils/generateId.js +8 -0
  164. package/dist/utils/generateId.js.map +7 -0
  165. package/package.json +5 -12
  166. package/dist/types/components/CreateAnimation.d.ts +0 -71
  167. package/dist/types/components/IonActionSheet.d.ts +0 -3
  168. package/dist/types/components/IonAlert.d.ts +0 -3
  169. package/dist/types/components/IonApp.d.ts +0 -41
  170. package/dist/types/components/IonIcon.d.ts +0 -16
  171. package/dist/types/components/IonLoading.d.ts +0 -3
  172. package/dist/types/components/IonModal.d.ts +0 -3
  173. package/dist/types/components/IonOverlayManager.d.ts +0 -15
  174. package/dist/types/components/IonPage.d.ts +0 -3
  175. package/dist/types/components/IonPicker.d.ts +0 -3
  176. package/dist/types/components/IonPopover.d.ts +0 -3
  177. package/dist/types/components/IonRedirect.d.ts +0 -16
  178. package/dist/types/components/IonRoute.d.ts +0 -17
  179. package/dist/types/components/IonRouterContext.d.ts +0 -42
  180. package/dist/types/components/IonRouterOutlet.d.ts +0 -8
  181. package/dist/types/components/IonToast.d.ts +0 -3
  182. package/dist/types/components/IonicReactProps.d.ts +0 -6
  183. package/dist/types/components/__tests__/utils.spec.d.ts +0 -1
  184. package/dist/types/components/createControllerComponent.d.ts +0 -19
  185. package/dist/types/components/createInlineOverlayComponent.d.ts +0 -2
  186. package/dist/types/components/createOverlayComponent.d.ts +0 -20
  187. package/dist/types/components/createRoutingComponent.d.ts +0 -2
  188. package/dist/types/components/hrefprops.d.ts +0 -9
  189. package/dist/types/components/index.d.ts +0 -35
  190. package/dist/types/components/inner-proxies.d.ts +0 -14
  191. package/dist/types/components/navigation/IonBackButton.d.ts +0 -68
  192. package/dist/types/components/navigation/IonNav.d.ts +0 -5
  193. package/dist/types/components/navigation/IonTabBar.d.ts +0 -15
  194. package/dist/types/components/navigation/IonTabButton.d.ts +0 -40
  195. package/dist/types/components/navigation/IonTabs.d.ts +0 -49
  196. package/dist/types/components/navigation/IonTabsContext.d.ts +0 -6
  197. package/dist/types/components/proxies.d.ts +0 -66
  198. package/dist/types/components/react-component-lib/createComponent.d.ts +0 -10
  199. package/dist/types/components/react-component-lib/createOverlayComponent.d.ts +0 -21
  200. package/dist/types/components/react-component-lib/index.d.ts +0 -2
  201. package/dist/types/components/react-component-lib/interfaces.d.ts +0 -29
  202. package/dist/types/components/react-component-lib/utils/attachProps.d.ts +0 -16
  203. package/dist/types/components/react-component-lib/utils/case.d.ts +0 -2
  204. package/dist/types/components/react-component-lib/utils/dev.d.ts +0 -2
  205. package/dist/types/components/react-component-lib/utils/index.d.ts +0 -10
  206. package/dist/types/components/routing-proxies.d.ts +0 -44
  207. package/dist/types/components/utils/detachProps.d.ts +0 -8
  208. package/dist/types/components/utils/index.d.ts +0 -8
  209. package/dist/types/components/utils/ionRenderToString.d.ts +0 -2
  210. package/dist/types/contexts/IonContext.d.ts +0 -7
  211. package/dist/types/contexts/IonLifeCycleContext.d.ts +0 -72
  212. package/dist/types/contexts/NavContext.d.ts +0 -17
  213. package/dist/types/framework-delegate.d.ts +0 -2
  214. package/dist/types/hooks/HookOverlayOptions.d.ts +0 -7
  215. package/dist/types/hooks/__tests__/hooks.spec.d.ts +0 -0
  216. package/dist/types/hooks/useController.d.ts +0 -12
  217. package/dist/types/hooks/useIonActionSheet.d.ts +0 -26
  218. package/dist/types/hooks/useIonAlert.d.ts +0 -26
  219. package/dist/types/hooks/useIonLoading.d.ts +0 -27
  220. package/dist/types/hooks/useIonModal.d.ts +0 -17
  221. package/dist/types/hooks/useIonPicker.d.ts +0 -26
  222. package/dist/types/hooks/useIonPopover.d.ts +0 -17
  223. package/dist/types/hooks/useIonToast.d.ts +0 -26
  224. package/dist/types/hooks/useOverlay.d.ts +0 -13
  225. package/dist/types/index.d.ts +0 -7
  226. package/dist/types/lifecycle/IonLifeCycleHOC.d.ts +0 -31
  227. package/dist/types/lifecycle/hooks.d.ts +0 -5
  228. package/dist/types/lifecycle/index.d.ts +0 -2
  229. package/dist/types/models/ReactComponentOrElement.d.ts +0 -2
  230. package/dist/types/models/RouteAction.d.ts +0 -1
  231. package/dist/types/models/RouteInfo.d.ts +0 -19
  232. package/dist/types/models/RouterDirection.d.ts +0 -1
  233. package/dist/types/models/RouterOptions.d.ts +0 -10
  234. package/dist/types/models/index.d.ts +0 -5
  235. package/dist/types/routing/LocationHistory.d.ts +0 -20
  236. package/dist/types/routing/NavManager.d.ts +0 -38
  237. package/dist/types/routing/OutletPageManager.d.ts +0 -26
  238. package/dist/types/routing/PageManager.d.ts +0 -25
  239. package/dist/types/routing/RouteManagerContext.d.ts +0 -16
  240. package/dist/types/routing/StackContext.d.ts +0 -7
  241. package/dist/types/routing/ViewItem.d.ts +0 -12
  242. package/dist/types/routing/ViewLifeCycleManager.d.ts +0 -42
  243. package/dist/types/routing/ViewStacks.d.ts +0 -19
  244. package/dist/types/routing/__tests__/LocationHistory.spec.d.ts +0 -1
  245. package/dist/types/routing/index.d.ts +0 -7
  246. package/dist/types/utils/HTMLElementSSR.d.ts +0 -4
  247. package/dist/types/utils/generateId.d.ts +0 -1
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ import { actionSheetController } from "@ionic/core/components";
3
+ import { defineCustomElement } from "@ionic/core/components/ion-action-sheet.js";
4
+ import { useCallback } from "react";
5
+ import { useController } from "./useController";
6
+ export function useIonActionSheet() {
7
+ const controller = useController(
8
+ "IonActionSheet",
9
+ actionSheetController,
10
+ defineCustomElement
11
+ );
12
+ const present = useCallback(
13
+ (buttonsOrOptions, header) => {
14
+ if (Array.isArray(buttonsOrOptions)) {
15
+ return controller.present({
16
+ buttons: buttonsOrOptions,
17
+ header
18
+ });
19
+ } else {
20
+ return controller.present(buttonsOrOptions);
21
+ }
22
+ },
23
+ [controller.present]
24
+ );
25
+ return [present, controller.dismiss];
26
+ }
27
+ //# sourceMappingURL=useIonActionSheet.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useIonActionSheet.ts"],
4
+ "sourcesContent": ["import type { ActionSheetButton, ActionSheetOptions } from '@ionic/core/components';\nimport { actionSheetController } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-action-sheet.js';\nimport { useCallback } from 'react';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\nimport { useController } from './useController';\n\n/**\n * A hook for presenting/dismissing an IonActionSheet component\n * @returns Returns the present and dismiss methods in an array\n */\nexport function useIonActionSheet(): UseIonActionSheetResult {\n const controller = useController<ActionSheetOptions, HTMLIonActionSheetElement>(\n 'IonActionSheet',\n actionSheetController,\n defineCustomElement\n );\n\n const present = useCallback(\n (buttonsOrOptions: ActionSheetButton[] | (ActionSheetOptions & HookOverlayOptions), header?: string) => {\n if (Array.isArray(buttonsOrOptions)) {\n return controller.present({\n buttons: buttonsOrOptions,\n header,\n });\n } else {\n return controller.present(buttonsOrOptions);\n }\n },\n [controller.present]\n );\n\n return [present, controller.dismiss];\n}\n\nexport type UseIonActionSheetResult = [\n {\n /**\n * Presents the action sheet\n * @param buttons An array of buttons for the action sheet\n * @param header Optional - Title for the action sheet\n */\n (buttons: ActionSheetButton[], header?: string | undefined): Promise<void>;\n /**\n * Presents the action sheet\n * @param options The options to pass to the IonActionSheet\n */\n (options: ActionSheetOptions & HookOverlayOptions): Promise<void>;\n },\n /**\n * Dismisses the action sheet\n */\n () => Promise<void>\n];\n"],
5
+ "mappings": ";AACA,SAAS,6BAA6B;AACtC,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAG5B,SAAS,qBAAqB;AAMvB,gBAAS,oBAA6C;AAC3D,QAAM,aAAa;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,UAAU;AAAA,IACd,CAAC,kBAAmF,WAAoB;AACtG,UAAI,MAAM,QAAQ,gBAAgB,GAAG;AACnC,eAAO,WAAW,QAAQ;AAAA,UACxB,SAAS;AAAA,UACT;AAAA,QACF,CAAC;AAAA,MACH,OAAO;AACL,eAAO,WAAW,QAAQ,gBAAgB;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SAAO,CAAC,SAAS,WAAW,OAAO;AACrC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ import { alertController } from "@ionic/core/components";
3
+ import { defineCustomElement } from "@ionic/core/components/ion-alert.js";
4
+ import { useCallback } from "react";
5
+ import { useController } from "./useController";
6
+ export function useIonAlert() {
7
+ const controller = useController("IonAlert", alertController, defineCustomElement);
8
+ const present = useCallback(
9
+ (messageOrOptions, buttons) => {
10
+ if (typeof messageOrOptions === "string") {
11
+ return controller.present({
12
+ message: messageOrOptions,
13
+ buttons: buttons ?? [{ text: "Ok" }]
14
+ });
15
+ } else {
16
+ return controller.present(messageOrOptions);
17
+ }
18
+ },
19
+ [controller.present]
20
+ );
21
+ return [present, controller.dismiss];
22
+ }
23
+ //# sourceMappingURL=useIonAlert.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useIonAlert.ts"],
4
+ "sourcesContent": ["import type { AlertButton, AlertOptions } from '@ionic/core/components';\nimport { alertController } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-alert.js';\nimport { useCallback } from 'react';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\nimport { useController } from './useController';\n\n/**\n * A hook for presenting/dismissing an IonAlert component\n * @returns Returns the present and dismiss methods in an array\n */\nexport function useIonAlert(): UseIonAlertResult {\n const controller = useController<AlertOptions, HTMLIonAlertElement>('IonAlert', alertController, defineCustomElement);\n\n const present = useCallback(\n (messageOrOptions: string | (AlertOptions & HookOverlayOptions), buttons?: AlertButton[]) => {\n if (typeof messageOrOptions === 'string') {\n return controller.present({\n message: messageOrOptions,\n buttons: buttons ?? [{ text: 'Ok' }],\n });\n } else {\n return controller.present(messageOrOptions);\n }\n },\n [controller.present]\n );\n\n return [present, controller.dismiss];\n}\n\nexport type UseIonAlertResult = [\n {\n /**\n * Presents the alert\n * @param message The main message to be displayed in the alert\n * @param buttons Optional - Array of buttons to be added to the alert\n */\n (message: string, buttons?: AlertButton[]): Promise<void>;\n /**\n * Presents the alert\n * @param options The options to pass to the IonAlert\n */\n (options: AlertOptions & HookOverlayOptions): Promise<void>;\n },\n /**\n * Dismisses the alert\n */\n () => Promise<void>\n];\n"],
5
+ "mappings": ";AACA,SAAS,uBAAuB;AAChC,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAG5B,SAAS,qBAAqB;AAMvB,gBAAS,cAAiC;AAC/C,QAAM,aAAa,cAAiD,YAAY,iBAAiB,mBAAmB;AAEpH,QAAM,UAAU;AAAA,IACd,CAAC,kBAAgE,YAA4B;AAC3F,UAAI,OAAO,qBAAqB,UAAU;AACxC,eAAO,WAAW,QAAQ;AAAA,UACxB,SAAS;AAAA,UACT,SAAS,WAAW,CAAC,EAAE,MAAM,KAAK,CAAC;AAAA,QACrC,CAAC;AAAA,MACH,OAAO;AACL,eAAO,WAAW,QAAQ,gBAAgB;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SAAO,CAAC,SAAS,WAAW,OAAO;AACrC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ import { loadingController } from "@ionic/core/components";
3
+ import { defineCustomElement } from "@ionic/core/components/ion-loading.js";
4
+ import { useCallback } from "react";
5
+ import { useController } from "./useController";
6
+ export function useIonLoading() {
7
+ const controller = useController(
8
+ "IonLoading",
9
+ loadingController,
10
+ defineCustomElement
11
+ );
12
+ const present = useCallback(
13
+ (messageOrOptions = {}, duration, spinner) => {
14
+ if (typeof messageOrOptions === "string") {
15
+ return controller.present({
16
+ message: messageOrOptions,
17
+ duration,
18
+ spinner
19
+ });
20
+ } else {
21
+ return controller.present(messageOrOptions);
22
+ }
23
+ },
24
+ [controller.present]
25
+ );
26
+ return [present, controller.dismiss];
27
+ }
28
+ //# sourceMappingURL=useIonLoading.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useIonLoading.tsx"],
4
+ "sourcesContent": ["import type { LoadingOptions, SpinnerTypes } from '@ionic/core/components';\nimport { loadingController } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-loading.js';\nimport { useCallback } from 'react';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\nimport { useController } from './useController';\n\n/**\n * A hook for presenting/dismissing an IonLoading component\n * @returns Returns the present and dismiss methods in an array\n */\nexport function useIonLoading(): UseIonLoadingResult {\n const controller = useController<LoadingOptions, HTMLIonLoadingElement>(\n 'IonLoading',\n loadingController,\n defineCustomElement\n );\n\n const present = useCallback(\n (\n messageOrOptions: string | (LoadingOptions & HookOverlayOptions) = {},\n duration?: number,\n spinner?: SpinnerTypes\n ) => {\n if (typeof messageOrOptions === 'string') {\n return controller.present({\n message: messageOrOptions,\n duration,\n spinner,\n });\n } else {\n return controller.present(messageOrOptions);\n }\n },\n [controller.present]\n );\n\n return [present, controller.dismiss];\n}\n\nexport type UseIonLoadingResult = [\n {\n /**\n * Presents the loading indicator\n * @param message Optional - Text content to display in the loading indicator, defaults to blank string\n * @param duration Optional - Number of milliseconds to wait before dismissing the loading indicator\n * @param spinner Optional - The name of the spinner to display, defaults to \"lines\"\n */\n (message?: string, duration?: number, spinner?: SpinnerTypes): Promise<void>;\n /**\n * Presents the loading indicator\n * @param options The options to pass to the IonLoading\n */\n (options: LoadingOptions & HookOverlayOptions): Promise<void>;\n },\n /**\n * Dismisses the loading indicator\n */\n () => Promise<void>\n];\n"],
5
+ "mappings": ";AACA,SAAS,yBAAyB;AAClC,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAG5B,SAAS,qBAAqB;AAMvB,gBAAS,gBAAqC;AACnD,QAAM,aAAa;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,UAAU;AAAA,IACd,CACE,mBAAmE,CAAC,GACpE,UACA,YACG;AACH,UAAI,OAAO,qBAAqB,UAAU;AACxC,eAAO,WAAW,QAAQ;AAAA,UACxB,SAAS;AAAA,UACT;AAAA,UACA;AAAA,QACF,CAAC;AAAA,MACH,OAAO;AACL,eAAO,WAAW,QAAQ,gBAAgB;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SAAO,CAAC,SAAS,WAAW,OAAO;AACrC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ import { modalController } from "@ionic/core/components";
3
+ import { defineCustomElement } from "@ionic/core/components/ion-modal.js";
4
+ import { useCallback } from "react";
5
+ import { useOverlay } from "./useOverlay";
6
+ export function useIonModal(component, componentProps) {
7
+ const controller = useOverlay(
8
+ "IonModal",
9
+ modalController,
10
+ defineCustomElement,
11
+ component,
12
+ componentProps
13
+ );
14
+ const present = useCallback(
15
+ (options = {}) => {
16
+ controller.present(options);
17
+ },
18
+ [controller.present]
19
+ );
20
+ return [present, controller.dismiss];
21
+ }
22
+ //# sourceMappingURL=useIonModal.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useIonModal.ts"],
4
+ "sourcesContent": ["import type { ModalOptions } from '@ionic/core/components';\nimport { modalController } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-modal.js';\nimport { useCallback } from 'react';\n\nimport type { ReactComponentOrElement } from '../models/ReactComponentOrElement';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\nimport { useOverlay } from './useOverlay';\n\n// TODO(FW-2959): types\n\n/**\n * A hook for presenting/dismissing an IonModal component\n * @param component The component that the modal will show. Can be a React Component, a functional component, or a JSX Element\n * @param componentProps The props that will be passed to the component, if required\n * @returns Returns the present and dismiss methods in an array\n */\nexport function useIonModal(component: ReactComponentOrElement, componentProps?: any): UseIonModalResult {\n const controller = useOverlay<ModalOptions, HTMLIonModalElement>(\n 'IonModal',\n modalController,\n defineCustomElement,\n component,\n componentProps\n );\n\n const present = useCallback(\n (options: Omit<ModalOptions, 'component' | 'componentProps'> & HookOverlayOptions = {}) => {\n controller.present(options as any);\n },\n [controller.present]\n );\n\n return [present, controller.dismiss];\n}\n\nexport type UseIonModalResult = [\n (options?: Omit<ModalOptions, 'component' | 'componentProps'> & HookOverlayOptions) => void,\n /**\n * Dismisses the modal\n */\n (data?: any, role?: string) => void\n];\n"],
5
+ "mappings": ";AACA,SAAS,uBAAuB;AAChC,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAK5B,SAAS,kBAAkB;AAUpB,gBAAS,YAAY,WAAoC,gBAAyC;AACvG,QAAM,aAAa;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,UAAU;AAAA,IACd,CAAC,UAAmF,CAAC,MAAM;AACzF,iBAAW,QAAQ,OAAc;AAAA,IACnC;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SAAO,CAAC,SAAS,WAAW,OAAO;AACrC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ import { pickerController } from "@ionic/core/components";
3
+ import { defineCustomElement } from "@ionic/core/components/ion-picker.js";
4
+ import { useCallback } from "react";
5
+ import { useController } from "./useController";
6
+ export function useIonPicker() {
7
+ const controller = useController(
8
+ "IonPicker",
9
+ pickerController,
10
+ defineCustomElement
11
+ );
12
+ const present = useCallback(
13
+ (columnsOrOptions, buttons) => {
14
+ if (Array.isArray(columnsOrOptions)) {
15
+ return controller.present({
16
+ columns: columnsOrOptions,
17
+ buttons: buttons ?? [{ text: "Ok" }]
18
+ });
19
+ } else {
20
+ return controller.present(columnsOrOptions);
21
+ }
22
+ },
23
+ [controller.present]
24
+ );
25
+ return [present, controller.dismiss];
26
+ }
27
+ //# sourceMappingURL=useIonPicker.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useIonPicker.tsx"],
4
+ "sourcesContent": ["import type { PickerButton, PickerColumn, PickerOptions } from '@ionic/core/components';\nimport { pickerController } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-picker.js';\nimport { useCallback } from 'react';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\nimport { useController } from './useController';\n\n/**\n * A hook for presenting/dismissing an IonPicker component\n * @returns Returns the present and dismiss methods in an array\n */\nexport function useIonPicker(): UseIonPickerResult {\n const controller = useController<PickerOptions, HTMLIonPickerElement>(\n 'IonPicker',\n pickerController,\n defineCustomElement\n );\n\n const present = useCallback(\n (columnsOrOptions: PickerColumn[] | (PickerOptions & HookOverlayOptions), buttons?: PickerButton[]) => {\n if (Array.isArray(columnsOrOptions)) {\n return controller.present({\n columns: columnsOrOptions,\n buttons: buttons ?? [{ text: 'Ok' }],\n });\n } else {\n return controller.present(columnsOrOptions);\n }\n },\n [controller.present]\n );\n\n return [present, controller.dismiss];\n}\n\nexport type UseIonPickerResult = [\n {\n /**\n * Presents the picker\n * @param columns Array of columns to be displayed in the picker.\n * @param buttons Optional - Array of buttons to be displayed at the top of the picker.\n */\n (columns: PickerColumn[], buttons?: PickerButton[]): Promise<void>;\n /**\n * Presents the picker\n * @param options The options to pass to the IonPicker\n */\n (options: PickerOptions & HookOverlayOptions): Promise<void>;\n },\n /**\n * Dismisses the picker\n */\n () => Promise<void>\n];\n"],
5
+ "mappings": ";AACA,SAAS,wBAAwB;AACjC,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAG5B,SAAS,qBAAqB;AAMvB,gBAAS,eAAmC;AACjD,QAAM,aAAa;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,UAAU;AAAA,IACd,CAAC,kBAAyE,YAA6B;AACrG,UAAI,MAAM,QAAQ,gBAAgB,GAAG;AACnC,eAAO,WAAW,QAAQ;AAAA,UACxB,SAAS;AAAA,UACT,SAAS,WAAW,CAAC,EAAE,MAAM,KAAK,CAAC;AAAA,QACrC,CAAC;AAAA,MACH,OAAO;AACL,eAAO,WAAW,QAAQ,gBAAgB;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SAAO,CAAC,SAAS,WAAW,OAAO;AACrC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ import { popoverController } from "@ionic/core/components";
3
+ import { defineCustomElement } from "@ionic/core/components/ion-popover.js";
4
+ import { useCallback } from "react";
5
+ import { useOverlay } from "./useOverlay";
6
+ export function useIonPopover(component, componentProps) {
7
+ const controller = useOverlay(
8
+ "IonPopover",
9
+ popoverController,
10
+ defineCustomElement,
11
+ component,
12
+ componentProps
13
+ );
14
+ const present = useCallback(
15
+ (options = {}) => {
16
+ controller.present(options);
17
+ },
18
+ [controller.present]
19
+ );
20
+ return [present, controller.dismiss];
21
+ }
22
+ //# sourceMappingURL=useIonPopover.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useIonPopover.ts"],
4
+ "sourcesContent": ["import type { PopoverOptions } from '@ionic/core/components';\nimport { popoverController } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-popover.js';\nimport { useCallback } from 'react';\n\nimport type { ReactComponentOrElement } from '../models/ReactComponentOrElement';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\nimport { useOverlay } from './useOverlay';\n\n// TODO(FW-2959): types\n\n/**\n * A hook for presenting/dismissing an IonPicker component\n * @param component The component that the popover will show. Can be a React Component, a functional component, or a JSX Element\n * @param componentProps The props that will be passed to the component, if required\n * @returns Returns the present and dismiss methods in an array\n */\nexport function useIonPopover(component: ReactComponentOrElement, componentProps?: any): UseIonPopoverResult {\n const controller = useOverlay<PopoverOptions, HTMLIonPopoverElement>(\n 'IonPopover',\n popoverController,\n defineCustomElement,\n component,\n componentProps\n );\n\n const present = useCallback(\n (options: Omit<PopoverOptions, 'component' | 'componentProps'> & HookOverlayOptions = {}) => {\n controller.present(options as any);\n },\n [controller.present]\n );\n\n return [present, controller.dismiss];\n}\n\nexport type UseIonPopoverResult = [\n (options?: Omit<PopoverOptions, 'component' | 'componentProps'> & HookOverlayOptions) => void,\n /**\n * Dismisses the popover\n */\n (data?: any, role?: string) => void\n];\n"],
5
+ "mappings": ";AACA,SAAS,yBAAyB;AAClC,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAK5B,SAAS,kBAAkB;AAUpB,gBAAS,cAAc,WAAoC,gBAA2C;AAC3G,QAAM,aAAa;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,QAAM,UAAU;AAAA,IACd,CAAC,UAAqF,CAAC,MAAM;AAC3F,iBAAW,QAAQ,OAAc;AAAA,IACnC;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SAAO,CAAC,SAAS,WAAW,OAAO;AACrC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ import { toastController } from "@ionic/core/components";
3
+ import { defineCustomElement } from "@ionic/core/components/ion-toast.js";
4
+ import { useCallback } from "react";
5
+ import { useController } from "./useController";
6
+ export function useIonToast() {
7
+ const controller = useController("IonToast", toastController, defineCustomElement);
8
+ const present = useCallback(
9
+ (messageOrOptions, duration) => {
10
+ if (typeof messageOrOptions === "string") {
11
+ return controller.present({
12
+ message: messageOrOptions,
13
+ duration
14
+ });
15
+ } else {
16
+ return controller.present(messageOrOptions);
17
+ }
18
+ },
19
+ [controller.present]
20
+ );
21
+ return [present, controller.dismiss];
22
+ }
23
+ //# sourceMappingURL=useIonToast.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useIonToast.ts"],
4
+ "sourcesContent": ["import type { ToastOptions } from '@ionic/core/components';\nimport { toastController } from '@ionic/core/components';\nimport { defineCustomElement } from '@ionic/core/components/ion-toast.js';\nimport { useCallback } from 'react';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\nimport { useController } from './useController';\n\n/**\n * A hook for presenting/dismissing an IonToast component\n * @returns Returns the present and dismiss methods in an array\n */\nexport function useIonToast(): UseIonToastResult {\n const controller = useController<ToastOptions, HTMLIonToastElement>('IonToast', toastController, defineCustomElement);\n\n const present = useCallback(\n (messageOrOptions: string | (ToastOptions & HookOverlayOptions), duration?: number) => {\n if (typeof messageOrOptions === 'string') {\n return controller.present({\n message: messageOrOptions,\n duration,\n });\n } else {\n return controller.present(messageOrOptions);\n }\n },\n [controller.present]\n );\n\n return [present, controller.dismiss];\n}\n\nexport type UseIonToastResult = [\n {\n /**\n * Presents the toast\n * @param message Message to be shown in the toast.\n * @param duration Optional - How many milliseconds to wait before hiding the toast. By default, it will show until dismissToast() is called.\n */\n (message: string, duration?: number): Promise<void>;\n /**\n * Presents the Toast\n * @param options The options to pass to the IonToast.\n */\n (options: ToastOptions & HookOverlayOptions): Promise<void>;\n },\n /**\n * Dismisses the toast\n */\n () => Promise<void>\n];\n"],
5
+ "mappings": ";AACA,SAAS,uBAAuB;AAChC,SAAS,2BAA2B;AACpC,SAAS,mBAAmB;AAG5B,SAAS,qBAAqB;AAMvB,gBAAS,cAAiC;AAC/C,QAAM,aAAa,cAAiD,YAAY,iBAAiB,mBAAmB;AAEpH,QAAM,UAAU;AAAA,IACd,CAAC,kBAAgE,aAAsB;AACrF,UAAI,OAAO,qBAAqB,UAAU;AACxC,eAAO,WAAW,QAAQ;AAAA,UACxB,SAAS;AAAA,UACT;AAAA,QACF,CAAC;AAAA,MACH,OAAO;AACL,eAAO,WAAW,QAAQ,gBAAgB;AAAA,MAC5C;AAAA,IACF;AAAA,IACA,CAAC,WAAW,OAAO;AAAA,EACrB;AAEA,SAAO,CAAC,SAAS,WAAW,OAAO;AACrC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ import React, { createElement, useCallback, useContext, useEffect, useMemo, useRef, useState } from "react";
3
+ import { attachProps } from "../components/react-component-lib/utils";
4
+ import { IonContext } from "../contexts/IonContext";
5
+ import { generateId } from "../utils/generateId";
6
+ export function useOverlay(displayName, controller, defineCustomElement, component, componentProps) {
7
+ const overlayRef = useRef();
8
+ const containerElRef = useRef();
9
+ const didDismissEventName = useMemo(() => `on${displayName}DidDismiss`, [displayName]);
10
+ const didPresentEventName = useMemo(() => `on${displayName}DidPresent`, [displayName]);
11
+ const willDismissEventName = useMemo(() => `on${displayName}WillDismiss`, [displayName]);
12
+ const willPresentEventName = useMemo(() => `on${displayName}WillPresent`, [displayName]);
13
+ const [isOpen, setIsOpen] = useState(false);
14
+ const ionContext = useContext(IonContext);
15
+ const [overlayId] = useState(generateId("overlay"));
16
+ defineCustomElement();
17
+ useEffect(() => {
18
+ if (isOpen && component && containerElRef.current) {
19
+ if (React.isValidElement(component)) {
20
+ ionContext.addOverlay(overlayId, component, containerElRef.current);
21
+ } else {
22
+ const element = createElement(component, componentProps);
23
+ ionContext.addOverlay(overlayId, element, containerElRef.current);
24
+ }
25
+ }
26
+ }, [component, containerElRef.current, isOpen, componentProps]);
27
+ const present = useCallback(async (options) => {
28
+ if (overlayRef.current) {
29
+ return;
30
+ }
31
+ const { onDidDismiss, onWillDismiss, onDidPresent, onWillPresent, ...rest } = options;
32
+ if (typeof document !== "undefined") {
33
+ containerElRef.current = document.createElement("div");
34
+ }
35
+ overlayRef.current = await controller.create({
36
+ ...rest,
37
+ component: containerElRef.current
38
+ });
39
+ attachProps(overlayRef.current, {
40
+ [didDismissEventName]: handleDismiss,
41
+ [didPresentEventName]: (e) => onDidPresent && onDidPresent(e),
42
+ [willDismissEventName]: (e) => onWillDismiss && onWillDismiss(e),
43
+ [willPresentEventName]: (e) => onWillPresent && onWillPresent(e)
44
+ });
45
+ overlayRef.current.present();
46
+ setIsOpen(true);
47
+ function handleDismiss(event) {
48
+ if (onDidDismiss) {
49
+ onDidDismiss(event);
50
+ }
51
+ overlayRef.current = void 0;
52
+ containerElRef.current = void 0;
53
+ setIsOpen(false);
54
+ ionContext.removeOverlay(overlayId);
55
+ }
56
+ }, []);
57
+ const dismiss = useCallback(async (data, role) => {
58
+ overlayRef.current && await overlayRef.current.dismiss(data, role);
59
+ overlayRef.current = void 0;
60
+ containerElRef.current = void 0;
61
+ }, []);
62
+ return {
63
+ present,
64
+ dismiss
65
+ };
66
+ }
67
+ //# sourceMappingURL=useOverlay.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/hooks/useOverlay.ts"],
4
+ "sourcesContent": ["import type { OverlayEventDetail } from '@ionic/core/components';\nimport React, { createElement, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { attachProps } from '../components/react-component-lib/utils';\nimport { IonContext } from '../contexts/IonContext';\nimport type { ReactComponentOrElement } from '../models/ReactComponentOrElement';\nimport { generateId } from '../utils/generateId';\n\nimport type { HookOverlayOptions } from './HookOverlayOptions';\n\n// TODO(FW-2959): types\n\ninterface OverlayBase extends HTMLElement {\n present: () => Promise<void>;\n dismiss: (data?: any, role?: string | undefined) => Promise<boolean>;\n}\n\nexport function useOverlay<OptionsType, OverlayType extends OverlayBase>(\n displayName: string,\n controller: { create: (options: OptionsType) => Promise<OverlayType> },\n defineCustomElement: () => void,\n component: ReactComponentOrElement,\n componentProps?: any\n) {\n const overlayRef = useRef<OverlayType>();\n const containerElRef = useRef<HTMLDivElement>();\n const didDismissEventName = useMemo(() => `on${displayName}DidDismiss`, [displayName]);\n const didPresentEventName = useMemo(() => `on${displayName}DidPresent`, [displayName]);\n const willDismissEventName = useMemo(() => `on${displayName}WillDismiss`, [displayName]);\n const willPresentEventName = useMemo(() => `on${displayName}WillPresent`, [displayName]);\n const [isOpen, setIsOpen] = useState(false);\n const ionContext = useContext(IonContext);\n const [overlayId] = useState(generateId('overlay'));\n\n defineCustomElement();\n\n useEffect(() => {\n if (isOpen && component && containerElRef.current) {\n if (React.isValidElement(component)) {\n ionContext.addOverlay(overlayId, component, containerElRef.current!);\n } else {\n const element = createElement(component as React.ComponentClass, componentProps);\n ionContext.addOverlay(overlayId, element, containerElRef.current!);\n }\n }\n }, [component, containerElRef.current, isOpen, componentProps]);\n\n const present = useCallback(async (options: OptionsType & HookOverlayOptions) => {\n if (overlayRef.current) {\n return;\n }\n\n const { onDidDismiss, onWillDismiss, onDidPresent, onWillPresent, ...rest } = options;\n\n if (typeof document !== 'undefined') {\n containerElRef.current = document.createElement('div');\n }\n\n overlayRef.current = await controller.create({\n ...(rest as any),\n component: containerElRef.current,\n });\n\n attachProps(overlayRef.current, {\n [didDismissEventName]: handleDismiss,\n [didPresentEventName]: (e: CustomEvent) => onDidPresent && onDidPresent(e),\n [willDismissEventName]: (e: CustomEvent) => onWillDismiss && onWillDismiss(e),\n [willPresentEventName]: (e: CustomEvent) => onWillPresent && onWillPresent(e),\n });\n\n overlayRef.current.present();\n\n setIsOpen(true);\n\n function handleDismiss(event: CustomEvent<OverlayEventDetail<any>>) {\n if (onDidDismiss) {\n onDidDismiss(event);\n }\n overlayRef.current = undefined;\n containerElRef.current = undefined;\n setIsOpen(false);\n ionContext.removeOverlay(overlayId);\n }\n }, []);\n\n const dismiss = useCallback(async (data?: any, role?: string) => {\n overlayRef.current && (await overlayRef.current.dismiss(data, role));\n overlayRef.current = undefined;\n containerElRef.current = undefined;\n }, []);\n\n return {\n present,\n dismiss,\n };\n}\n"],
5
+ "mappings": ";AACA,OAAO,SAAS,eAAe,aAAa,YAAY,WAAW,SAAS,QAAQ,gBAAgB;AAEpG,SAAS,mBAAmB;AAC5B,SAAS,kBAAkB;AAE3B,SAAS,kBAAkB;AAWpB,gBAAS,WACd,aACA,YACA,qBACA,WACA,gBACA;AACA,QAAM,aAAa,OAAoB;AACvC,QAAM,iBAAiB,OAAuB;AAC9C,QAAM,sBAAsB,QAAQ,MAAM,KAAK,WAAW,cAAc,CAAC,WAAW,CAAC;AACrF,QAAM,sBAAsB,QAAQ,MAAM,KAAK,WAAW,cAAc,CAAC,WAAW,CAAC;AACrF,QAAM,uBAAuB,QAAQ,MAAM,KAAK,WAAW,eAAe,CAAC,WAAW,CAAC;AACvF,QAAM,uBAAuB,QAAQ,MAAM,KAAK,WAAW,eAAe,CAAC,WAAW,CAAC;AACvF,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAC1C,QAAM,aAAa,WAAW,UAAU;AACxC,QAAM,CAAC,SAAS,IAAI,SAAS,WAAW,SAAS,CAAC;AAElD,sBAAoB;AAEpB,YAAU,MAAM;AACd,QAAI,UAAU,aAAa,eAAe,SAAS;AACjD,UAAI,MAAM,eAAe,SAAS,GAAG;AACnC,mBAAW,WAAW,WAAW,WAAW,eAAe,OAAQ;AAAA,MACrE,OAAO;AACL,cAAM,UAAU,cAAc,WAAmC,cAAc;AAC/E,mBAAW,WAAW,WAAW,SAAS,eAAe,OAAQ;AAAA,MACnE;AAAA,IACF;AAAA,EACF,GAAG,CAAC,WAAW,eAAe,SAAS,QAAQ,cAAc,CAAC;AAE9D,QAAM,UAAU,YAAY,OAAO,YAA8C;AAC/E,QAAI,WAAW,SAAS;AACtB;AAAA,IACF;AAEA,UAAM,EAAE,cAAc,eAAe,cAAc,eAAe,GAAG,KAAK,IAAI;AAE9E,QAAI,OAAO,aAAa,aAAa;AACnC,qBAAe,UAAU,SAAS,cAAc,KAAK;AAAA,IACvD;AAEA,eAAW,UAAU,MAAM,WAAW,OAAO;AAAA,MAC3C,GAAI;AAAA,MACJ,WAAW,eAAe;AAAA,IAC5B,CAAC;AAED,gBAAY,WAAW,SAAS;AAAA,MAC9B,CAAC,mBAAmB,GAAG;AAAA,MACvB,CAAC,mBAAmB,GAAG,CAAC,MAAmB,gBAAgB,aAAa,CAAC;AAAA,MACzE,CAAC,oBAAoB,GAAG,CAAC,MAAmB,iBAAiB,cAAc,CAAC;AAAA,MAC5E,CAAC,oBAAoB,GAAG,CAAC,MAAmB,iBAAiB,cAAc,CAAC;AAAA,IAC9E,CAAC;AAED,eAAW,QAAQ,QAAQ;AAE3B,cAAU,IAAI;AAEd,aAAS,cAAc,OAA6C;AAClE,UAAI,cAAc;AAChB,qBAAa,KAAK;AAAA,MACpB;AACA,iBAAW,UAAU;AACrB,qBAAe,UAAU;AACzB,gBAAU,KAAK;AACf,iBAAW,cAAc,SAAS;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,UAAU,YAAY,OAAO,MAAY,SAAkB;AAC/D,eAAW,WAAY,MAAM,WAAW,QAAQ,QAAQ,MAAM,IAAI;AAClE,eAAW,UAAU;AACrB,mBAAe,UAAU;AAAA,EAC3B,GAAG,CAAC,CAAC;AAEL,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }