@ionic/angular 8.8.19-dev.11786735826.1fad7c0a → 8.8.19-dev.11786832241.150538c7

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 (502) hide show
  1. package/README.md +0 -1
  2. package/dist/common/directives/control-value-accessors/index.d.ts +1 -0
  3. package/dist/common/directives/control-value-accessors/index.js +2 -0
  4. package/dist/common/directives/control-value-accessors/index.js.map +1 -0
  5. package/dist/common/directives/control-value-accessors/value-accessor.d.ts +36 -0
  6. package/dist/common/directives/control-value-accessors/value-accessor.js +152 -0
  7. package/dist/common/directives/control-value-accessors/value-accessor.js.map +1 -0
  8. package/dist/common/directives/navigation/back-button.d.ts +23 -0
  9. package/dist/common/directives/navigation/back-button.js +61 -0
  10. package/dist/common/directives/navigation/back-button.js.map +1 -0
  11. package/dist/common/directives/navigation/nav-params.d.ts +45 -0
  12. package/dist/common/directives/navigation/nav-params.js +47 -0
  13. package/dist/common/directives/navigation/nav-params.js.map +1 -0
  14. package/dist/common/directives/navigation/nav.d.ts +21 -0
  15. package/dist/common/directives/navigation/nav.js +49 -0
  16. package/dist/common/directives/navigation/nav.js.map +1 -0
  17. package/dist/common/directives/navigation/router-link-delegate.d.ts +70 -0
  18. package/dist/common/directives/navigation/router-link-delegate.js +188 -0
  19. package/dist/common/directives/navigation/router-link-delegate.js.map +1 -0
  20. package/dist/common/directives/navigation/router-outlet.d.ts +104 -0
  21. package/dist/common/directives/navigation/router-outlet.js +476 -0
  22. package/dist/common/directives/navigation/router-outlet.js.map +1 -0
  23. package/dist/common/directives/navigation/stack-controller.d.ts +42 -0
  24. package/dist/common/directives/navigation/stack-controller.js +282 -0
  25. package/dist/common/directives/navigation/stack-controller.js.map +1 -0
  26. package/dist/common/directives/navigation/stack-utils.d.ts +38 -0
  27. package/dist/common/directives/navigation/stack-utils.js +73 -0
  28. package/dist/common/directives/navigation/stack-utils.js.map +1 -0
  29. package/dist/common/directives/navigation/tabs.d.ts +91 -0
  30. package/dist/common/directives/navigation/tabs.js +290 -0
  31. package/dist/common/directives/navigation/tabs.js.map +1 -0
  32. package/dist/common/index.d.ts +22 -0
  33. package/dist/common/index.js +20 -0
  34. package/dist/common/index.js.map +1 -0
  35. package/dist/common/overlays/modal.d.ts +62 -0
  36. package/dist/common/overlays/modal.js +96 -0
  37. package/dist/common/overlays/modal.js.map +1 -0
  38. package/dist/common/overlays/popover.d.ts +46 -0
  39. package/dist/common/overlays/popover.js +84 -0
  40. package/dist/common/overlays/popover.js.map +1 -0
  41. package/dist/common/providers/angular-delegate.d.ts +28 -0
  42. package/dist/common/providers/angular-delegate.js +229 -0
  43. package/dist/common/providers/angular-delegate.js.map +1 -0
  44. package/dist/common/providers/config.d.ts +11 -0
  45. package/dist/common/providers/config.js +44 -0
  46. package/dist/common/providers/config.js.map +1 -0
  47. package/dist/common/providers/dom-controller.d.ts +16 -0
  48. package/dist/common/providers/dom-controller.js +44 -0
  49. package/dist/common/providers/dom-controller.js.map +1 -0
  50. package/dist/common/providers/menu-controller.d.ts +78 -0
  51. package/dist/common/providers/menu-controller.js +114 -0
  52. package/dist/common/providers/menu-controller.js.map +1 -0
  53. package/dist/common/providers/nav-controller.d.ts +116 -0
  54. package/dist/common/providers/nav-controller.js +232 -0
  55. package/dist/common/providers/nav-controller.js.map +1 -0
  56. package/dist/common/providers/platform.d.ts +174 -0
  57. package/dist/common/providers/platform.js +256 -0
  58. package/dist/common/providers/platform.js.map +1 -0
  59. package/dist/common/types/interfaces.d.ts +8 -0
  60. package/dist/common/types/interfaces.js +2 -0
  61. package/dist/common/types/interfaces.js.map +1 -0
  62. package/dist/common/types/ionic-lifecycle-hooks.d.ts +27 -0
  63. package/dist/common/types/ionic-lifecycle-hooks.js +5 -0
  64. package/dist/common/types/ionic-lifecycle-hooks.js.map +1 -0
  65. package/dist/common/types/overlay-options.d.ts +16 -0
  66. package/dist/common/types/overlay-options.js +2 -0
  67. package/dist/common/types/overlay-options.js.map +1 -0
  68. package/dist/common/utils/overlay.d.ts +21 -0
  69. package/dist/common/utils/overlay.js +26 -0
  70. package/dist/common/utils/overlay.js.map +1 -0
  71. package/dist/common/utils/proxy.d.ts +8 -0
  72. package/dist/common/utils/proxy.js +47 -0
  73. package/dist/common/utils/proxy.js.map +1 -0
  74. package/dist/common/utils/routing.d.ts +28 -0
  75. package/dist/common/utils/routing.js +55 -0
  76. package/dist/common/utils/routing.js.map +1 -0
  77. package/dist/common/utils/util.d.ts +1 -0
  78. package/dist/common/utils/util.js +10 -0
  79. package/dist/common/utils/util.js.map +1 -0
  80. package/dist/lazy/app-initialize.d.ts +3 -0
  81. package/dist/lazy/app-initialize.js +29 -0
  82. package/dist/lazy/app-initialize.js.map +1 -0
  83. package/dist/lazy/directives/angular-component-lib/utils.d.ts +9 -0
  84. package/dist/lazy/directives/angular-component-lib/utils.js +59 -0
  85. package/dist/lazy/directives/angular-component-lib/utils.js.map +1 -0
  86. package/dist/lazy/directives/control-value-accessors/boolean-value-accessor.d.ts +10 -0
  87. package/dist/lazy/directives/control-value-accessors/boolean-value-accessor.js +47 -0
  88. package/dist/lazy/directives/control-value-accessors/boolean-value-accessor.js.map +1 -0
  89. package/dist/lazy/directives/control-value-accessors/index.d.ts +4 -0
  90. package/dist/lazy/directives/control-value-accessors/index.js +5 -0
  91. package/dist/lazy/directives/control-value-accessors/index.js.map +1 -0
  92. package/dist/lazy/directives/control-value-accessors/numeric-value-accessor.d.ts +11 -0
  93. package/dist/lazy/directives/control-value-accessors/numeric-value-accessor.js +55 -0
  94. package/dist/lazy/directives/control-value-accessors/numeric-value-accessor.js.map +1 -0
  95. package/dist/lazy/directives/control-value-accessors/select-value-accessor.d.ts +9 -0
  96. package/dist/lazy/directives/control-value-accessors/select-value-accessor.js +44 -0
  97. package/dist/lazy/directives/control-value-accessors/select-value-accessor.js.map +1 -0
  98. package/dist/lazy/directives/control-value-accessors/text-value-accessor.d.ts +9 -0
  99. package/dist/lazy/directives/control-value-accessors/text-value-accessor.js +43 -0
  100. package/dist/lazy/directives/control-value-accessors/text-value-accessor.js.map +1 -0
  101. package/dist/lazy/directives/navigation/ion-back-button.d.ts +9 -0
  102. package/dist/lazy/directives/navigation/ion-back-button.js +24 -0
  103. package/dist/lazy/directives/navigation/ion-back-button.js.map +1 -0
  104. package/dist/lazy/directives/navigation/ion-nav.d.ts +8 -0
  105. package/dist/lazy/directives/navigation/ion-nav.js +21 -0
  106. package/dist/lazy/directives/navigation/ion-nav.js.map +1 -0
  107. package/dist/lazy/directives/navigation/ion-router-outlet.d.ts +25 -0
  108. package/dist/lazy/directives/navigation/ion-router-outlet.js +52 -0
  109. package/dist/lazy/directives/navigation/ion-router-outlet.js.map +1 -0
  110. package/dist/lazy/directives/navigation/ion-tabs.d.ts +13 -0
  111. package/dist/lazy/directives/navigation/ion-tabs.js +58 -0
  112. package/dist/lazy/directives/navigation/ion-tabs.js.map +1 -0
  113. package/dist/lazy/directives/navigation/router-link-delegate.d.ts +16 -0
  114. package/dist/lazy/directives/navigation/router-link-delegate.js +32 -0
  115. package/dist/lazy/directives/navigation/router-link-delegate.js.map +1 -0
  116. package/dist/lazy/directives/overlays/modal.d.ts +6 -0
  117. package/dist/lazy/directives/overlays/modal.js +22 -0
  118. package/dist/lazy/directives/overlays/modal.js.map +1 -0
  119. package/dist/lazy/directives/overlays/popover.d.ts +6 -0
  120. package/dist/lazy/directives/overlays/popover.js +18 -0
  121. package/dist/lazy/directives/overlays/popover.js.map +1 -0
  122. package/dist/lazy/directives/proxies-list.d.ts +2 -0
  123. package/dist/lazy/directives/proxies-list.js +89 -0
  124. package/dist/lazy/directives/proxies-list.js.map +1 -0
  125. package/{types/ionic-angular-lazy.d.ts → dist/lazy/directives/proxies.d.ts} +339 -503
  126. package/{fesm2022/ionic-angular-lazy.mjs → dist/lazy/directives/proxies.js} +91 -882
  127. package/dist/lazy/directives/proxies.js.map +1 -0
  128. package/dist/lazy/directives/validators/index.d.ts +2 -0
  129. package/dist/lazy/directives/validators/index.js +3 -0
  130. package/dist/lazy/directives/validators/index.js.map +1 -0
  131. package/dist/lazy/directives/validators/max-validator.d.ts +12 -0
  132. package/dist/lazy/directives/validators/max-validator.js +26 -0
  133. package/dist/lazy/directives/validators/max-validator.js.map +1 -0
  134. package/dist/lazy/directives/validators/min-validator.d.ts +12 -0
  135. package/dist/lazy/directives/validators/min-validator.js +26 -0
  136. package/dist/lazy/directives/validators/min-validator.js.map +1 -0
  137. package/dist/lazy/index.d.ts +26 -0
  138. package/dist/lazy/index.js +34 -0
  139. package/dist/lazy/index.js.map +1 -0
  140. package/dist/lazy/ionic-module.d.ts +38 -0
  141. package/dist/lazy/ionic-module.js +121 -0
  142. package/dist/lazy/ionic-module.js.map +1 -0
  143. package/dist/lazy/providers/action-sheet-controller.d.ts +8 -0
  144. package/dist/lazy/providers/action-sheet-controller.js +18 -0
  145. package/dist/lazy/providers/action-sheet-controller.js.map +1 -0
  146. package/dist/lazy/providers/alert-controller.d.ts +8 -0
  147. package/dist/lazy/providers/alert-controller.js +18 -0
  148. package/dist/lazy/providers/alert-controller.js.map +1 -0
  149. package/dist/lazy/providers/animation-controller.d.ts +25 -0
  150. package/dist/lazy/providers/animation-controller.js +37 -0
  151. package/dist/lazy/providers/animation-controller.js.map +1 -0
  152. package/dist/lazy/providers/gesture-controller.d.ts +13 -0
  153. package/dist/lazy/providers/gesture-controller.js +32 -0
  154. package/dist/lazy/providers/gesture-controller.js.map +1 -0
  155. package/dist/lazy/providers/loading-controller.d.ts +8 -0
  156. package/dist/lazy/providers/loading-controller.js +18 -0
  157. package/dist/lazy/providers/loading-controller.js.map +1 -0
  158. package/dist/lazy/providers/menu-controller.d.ts +7 -0
  159. package/dist/lazy/providers/menu-controller.js +18 -0
  160. package/dist/lazy/providers/menu-controller.js.map +1 -0
  161. package/dist/lazy/providers/modal-controller.d.ts +12 -0
  162. package/dist/lazy/providers/modal-controller.js +25 -0
  163. package/dist/lazy/providers/modal-controller.js.map +1 -0
  164. package/dist/lazy/providers/popover-controller.d.ts +9 -0
  165. package/dist/lazy/providers/popover-controller.js +19 -0
  166. package/dist/lazy/providers/popover-controller.js.map +1 -0
  167. package/dist/lazy/providers/toast-controller.d.ts +8 -0
  168. package/dist/lazy/providers/toast-controller.js +18 -0
  169. package/dist/lazy/providers/toast-controller.js.map +1 -0
  170. package/dist/standalone/directives/angular-component-lib/utils.d.ts +9 -0
  171. package/dist/standalone/directives/angular-component-lib/utils.js +59 -0
  172. package/dist/standalone/directives/angular-component-lib/utils.js.map +1 -0
  173. package/dist/standalone/directives/checkbox.d.ts +30 -0
  174. package/dist/standalone/directives/checkbox.js +75 -0
  175. package/dist/standalone/directives/checkbox.js.map +1 -0
  176. package/dist/standalone/directives/datetime.d.ts +30 -0
  177. package/dist/standalone/directives/datetime.js +93 -0
  178. package/dist/standalone/directives/datetime.js.map +1 -0
  179. package/dist/standalone/directives/icon.d.ts +9 -0
  180. package/dist/standalone/directives/icon.js +35 -0
  181. package/dist/standalone/directives/icon.js.map +1 -0
  182. package/dist/standalone/directives/index.d.ts +12 -0
  183. package/dist/standalone/directives/index.js +13 -0
  184. package/dist/standalone/directives/index.js.map +1 -0
  185. package/dist/standalone/directives/input-otp.d.ts +49 -0
  186. package/dist/standalone/directives/input-otp.js +89 -0
  187. package/dist/standalone/directives/input-otp.js.map +1 -0
  188. package/dist/standalone/directives/input.d.ts +47 -0
  189. package/dist/standalone/directives/input.js +112 -0
  190. package/dist/standalone/directives/input.js.map +1 -0
  191. package/dist/standalone/directives/ion-accordion-group.d.ts +21 -0
  192. package/dist/standalone/directives/ion-accordion-group.js +40 -0
  193. package/dist/standalone/directives/ion-accordion-group.js.map +1 -0
  194. package/dist/standalone/directives/ion-accordion.d.ts +12 -0
  195. package/dist/standalone/directives/ion-accordion.js +36 -0
  196. package/dist/standalone/directives/ion-accordion.js.map +1 -0
  197. package/dist/standalone/directives/ion-action-sheet.d.ts +58 -0
  198. package/dist/standalone/directives/ion-action-sheet.js +62 -0
  199. package/dist/standalone/directives/ion-action-sheet.js.map +1 -0
  200. package/dist/standalone/directives/ion-alert.d.ts +58 -0
  201. package/dist/standalone/directives/ion-alert.js +62 -0
  202. package/dist/standalone/directives/ion-alert.js.map +1 -0
  203. package/dist/standalone/directives/ion-app.d.ts +12 -0
  204. package/dist/standalone/directives/ion-app.js +36 -0
  205. package/dist/standalone/directives/ion-app.js.map +1 -0
  206. package/dist/standalone/directives/ion-avatar.d.ts +12 -0
  207. package/dist/standalone/directives/ion-avatar.js +35 -0
  208. package/dist/standalone/directives/ion-avatar.js.map +1 -0
  209. package/dist/standalone/directives/ion-backdrop.d.ts +18 -0
  210. package/dist/standalone/directives/ion-backdrop.js +40 -0
  211. package/dist/standalone/directives/ion-backdrop.js.map +1 -0
  212. package/dist/standalone/directives/ion-badge.d.ts +12 -0
  213. package/dist/standalone/directives/ion-badge.js +36 -0
  214. package/dist/standalone/directives/ion-badge.js.map +1 -0
  215. package/dist/standalone/directives/ion-breadcrumb.d.ts +23 -0
  216. package/dist/standalone/directives/ion-breadcrumb.js +43 -0
  217. package/dist/standalone/directives/ion-breadcrumb.js.map +1 -0
  218. package/dist/standalone/directives/ion-breadcrumbs.d.ts +19 -0
  219. package/dist/standalone/directives/ion-breadcrumbs.js +40 -0
  220. package/dist/standalone/directives/ion-breadcrumbs.js.map +1 -0
  221. package/dist/standalone/directives/ion-button.d.ts +23 -0
  222. package/dist/standalone/directives/ion-button.js +43 -0
  223. package/dist/standalone/directives/ion-button.js.map +1 -0
  224. package/dist/standalone/directives/ion-buttons.d.ts +12 -0
  225. package/dist/standalone/directives/ion-buttons.js +36 -0
  226. package/dist/standalone/directives/ion-buttons.js.map +1 -0
  227. package/dist/standalone/directives/ion-card-content.d.ts +12 -0
  228. package/dist/standalone/directives/ion-card-content.js +36 -0
  229. package/dist/standalone/directives/ion-card-content.js.map +1 -0
  230. package/dist/standalone/directives/ion-card-header.d.ts +12 -0
  231. package/dist/standalone/directives/ion-card-header.js +36 -0
  232. package/dist/standalone/directives/ion-card-header.js.map +1 -0
  233. package/dist/standalone/directives/ion-card-subtitle.d.ts +12 -0
  234. package/dist/standalone/directives/ion-card-subtitle.js +36 -0
  235. package/dist/standalone/directives/ion-card-subtitle.js.map +1 -0
  236. package/dist/standalone/directives/ion-card-title.d.ts +12 -0
  237. package/dist/standalone/directives/ion-card-title.js +36 -0
  238. package/dist/standalone/directives/ion-card-title.js.map +1 -0
  239. package/dist/standalone/directives/ion-card.d.ts +12 -0
  240. package/dist/standalone/directives/ion-card.js +36 -0
  241. package/dist/standalone/directives/ion-card.js.map +1 -0
  242. package/dist/standalone/directives/ion-chip.d.ts +12 -0
  243. package/dist/standalone/directives/ion-chip.js +36 -0
  244. package/dist/standalone/directives/ion-chip.js.map +1 -0
  245. package/dist/standalone/directives/ion-col.d.ts +12 -0
  246. package/dist/standalone/directives/ion-col.js +36 -0
  247. package/dist/standalone/directives/ion-col.js.map +1 -0
  248. package/dist/standalone/directives/ion-content.d.ts +33 -0
  249. package/dist/standalone/directives/ion-content.js +47 -0
  250. package/dist/standalone/directives/ion-content.js.map +1 -0
  251. package/dist/standalone/directives/ion-datetime-button.d.ts +12 -0
  252. package/dist/standalone/directives/ion-datetime-button.js +36 -0
  253. package/dist/standalone/directives/ion-datetime-button.js.map +1 -0
  254. package/dist/standalone/directives/ion-fab-button.d.ts +23 -0
  255. package/dist/standalone/directives/ion-fab-button.js +43 -0
  256. package/dist/standalone/directives/ion-fab-button.js.map +1 -0
  257. package/dist/standalone/directives/ion-fab-list.d.ts +12 -0
  258. package/dist/standalone/directives/ion-fab-list.js +36 -0
  259. package/dist/standalone/directives/ion-fab-list.js.map +1 -0
  260. package/dist/standalone/directives/ion-fab.d.ts +12 -0
  261. package/dist/standalone/directives/ion-fab.js +37 -0
  262. package/dist/standalone/directives/ion-fab.js.map +1 -0
  263. package/dist/standalone/directives/ion-footer.d.ts +12 -0
  264. package/dist/standalone/directives/ion-footer.js +36 -0
  265. package/dist/standalone/directives/ion-footer.js.map +1 -0
  266. package/dist/standalone/directives/ion-grid.d.ts +12 -0
  267. package/dist/standalone/directives/ion-grid.js +36 -0
  268. package/dist/standalone/directives/ion-grid.js.map +1 -0
  269. package/dist/standalone/directives/ion-header.d.ts +12 -0
  270. package/dist/standalone/directives/ion-header.js +36 -0
  271. package/dist/standalone/directives/ion-header.js.map +1 -0
  272. package/dist/standalone/directives/ion-img.d.ts +28 -0
  273. package/dist/standalone/directives/ion-img.js +46 -0
  274. package/dist/standalone/directives/ion-img.js.map +1 -0
  275. package/dist/standalone/directives/ion-infinite-scroll-content.d.ts +12 -0
  276. package/dist/standalone/directives/ion-infinite-scroll-content.js +36 -0
  277. package/dist/standalone/directives/ion-infinite-scroll-content.js.map +1 -0
  278. package/dist/standalone/directives/ion-infinite-scroll.d.ts +21 -0
  279. package/dist/standalone/directives/ion-infinite-scroll.js +41 -0
  280. package/dist/standalone/directives/ion-infinite-scroll.js.map +1 -0
  281. package/dist/standalone/directives/ion-input-password-toggle.d.ts +12 -0
  282. package/dist/standalone/directives/ion-input-password-toggle.js +36 -0
  283. package/dist/standalone/directives/ion-input-password-toggle.js.map +1 -0
  284. package/dist/standalone/directives/ion-item-divider.d.ts +12 -0
  285. package/dist/standalone/directives/ion-item-divider.js +36 -0
  286. package/dist/standalone/directives/ion-item-divider.js.map +1 -0
  287. package/dist/standalone/directives/ion-item-group.d.ts +12 -0
  288. package/dist/standalone/directives/ion-item-group.js +35 -0
  289. package/dist/standalone/directives/ion-item-group.js.map +1 -0
  290. package/dist/standalone/directives/ion-item-option.d.ts +12 -0
  291. package/dist/standalone/directives/ion-item-option.js +36 -0
  292. package/dist/standalone/directives/ion-item-option.js.map +1 -0
  293. package/dist/standalone/directives/ion-item-options.d.ts +18 -0
  294. package/dist/standalone/directives/ion-item-options.js +40 -0
  295. package/dist/standalone/directives/ion-item-options.js.map +1 -0
  296. package/dist/standalone/directives/ion-item-sliding.d.ts +18 -0
  297. package/dist/standalone/directives/ion-item-sliding.js +41 -0
  298. package/dist/standalone/directives/ion-item-sliding.js.map +1 -0
  299. package/dist/standalone/directives/ion-item.d.ts +12 -0
  300. package/dist/standalone/directives/ion-item.js +36 -0
  301. package/dist/standalone/directives/ion-item.js.map +1 -0
  302. package/dist/standalone/directives/ion-label.d.ts +12 -0
  303. package/dist/standalone/directives/ion-label.js +36 -0
  304. package/dist/standalone/directives/ion-label.js.map +1 -0
  305. package/dist/standalone/directives/ion-list-header.d.ts +12 -0
  306. package/dist/standalone/directives/ion-list-header.js +36 -0
  307. package/dist/standalone/directives/ion-list-header.js.map +1 -0
  308. package/dist/standalone/directives/ion-list.d.ts +12 -0
  309. package/dist/standalone/directives/ion-list.js +37 -0
  310. package/dist/standalone/directives/ion-list.js.map +1 -0
  311. package/dist/standalone/directives/ion-loading.d.ts +58 -0
  312. package/dist/standalone/directives/ion-loading.js +62 -0
  313. package/dist/standalone/directives/ion-loading.js.map +1 -0
  314. package/dist/standalone/directives/ion-menu-button.d.ts +12 -0
  315. package/dist/standalone/directives/ion-menu-button.js +36 -0
  316. package/dist/standalone/directives/ion-menu-button.js.map +1 -0
  317. package/dist/standalone/directives/ion-menu-toggle.d.ts +12 -0
  318. package/dist/standalone/directives/ion-menu-toggle.js +36 -0
  319. package/dist/standalone/directives/ion-menu-toggle.js.map +1 -0
  320. package/dist/standalone/directives/ion-menu.d.ts +34 -0
  321. package/dist/standalone/directives/ion-menu.js +50 -0
  322. package/dist/standalone/directives/ion-menu.js.map +1 -0
  323. package/dist/standalone/directives/ion-nav-link.d.ts +12 -0
  324. package/dist/standalone/directives/ion-nav-link.js +36 -0
  325. package/dist/standalone/directives/ion-nav-link.js.map +1 -0
  326. package/dist/standalone/directives/ion-note.d.ts +12 -0
  327. package/dist/standalone/directives/ion-note.js +36 -0
  328. package/dist/standalone/directives/ion-note.js.map +1 -0
  329. package/dist/standalone/directives/ion-picker-column-option.d.ts +12 -0
  330. package/dist/standalone/directives/ion-picker-column-option.js +36 -0
  331. package/dist/standalone/directives/ion-picker-column-option.js.map +1 -0
  332. package/dist/standalone/directives/ion-picker-column.d.ts +21 -0
  333. package/dist/standalone/directives/ion-picker-column.js +41 -0
  334. package/dist/standalone/directives/ion-picker-column.js.map +1 -0
  335. package/dist/standalone/directives/ion-picker.d.ts +12 -0
  336. package/dist/standalone/directives/ion-picker.js +36 -0
  337. package/dist/standalone/directives/ion-picker.js.map +1 -0
  338. package/dist/standalone/directives/ion-progress-bar.d.ts +12 -0
  339. package/dist/standalone/directives/ion-progress-bar.js +36 -0
  340. package/dist/standalone/directives/ion-progress-bar.js.map +1 -0
  341. package/dist/standalone/directives/ion-radio.d.ts +23 -0
  342. package/dist/standalone/directives/ion-radio.js +43 -0
  343. package/dist/standalone/directives/ion-radio.js.map +1 -0
  344. package/dist/standalone/directives/ion-refresher-content.d.ts +12 -0
  345. package/dist/standalone/directives/ion-refresher-content.js +36 -0
  346. package/dist/standalone/directives/ion-refresher-content.js.map +1 -0
  347. package/dist/standalone/directives/ion-refresher.d.ts +45 -0
  348. package/dist/standalone/directives/ion-refresher.js +53 -0
  349. package/dist/standalone/directives/ion-refresher.js.map +1 -0
  350. package/dist/standalone/directives/ion-reorder-group.d.ts +44 -0
  351. package/dist/standalone/directives/ion-reorder-group.js +50 -0
  352. package/dist/standalone/directives/ion-reorder-group.js.map +1 -0
  353. package/dist/standalone/directives/ion-reorder.d.ts +12 -0
  354. package/dist/standalone/directives/ion-reorder.js +35 -0
  355. package/dist/standalone/directives/ion-reorder.js.map +1 -0
  356. package/dist/standalone/directives/ion-ripple-effect.d.ts +12 -0
  357. package/dist/standalone/directives/ion-ripple-effect.js +37 -0
  358. package/dist/standalone/directives/ion-ripple-effect.js.map +1 -0
  359. package/dist/standalone/directives/ion-row.d.ts +12 -0
  360. package/dist/standalone/directives/ion-row.js +35 -0
  361. package/dist/standalone/directives/ion-row.js.map +1 -0
  362. package/dist/standalone/directives/ion-segment-button.d.ts +12 -0
  363. package/dist/standalone/directives/ion-segment-button.js +36 -0
  364. package/dist/standalone/directives/ion-segment-button.js.map +1 -0
  365. package/dist/standalone/directives/ion-segment-content.d.ts +12 -0
  366. package/dist/standalone/directives/ion-segment-content.js +35 -0
  367. package/dist/standalone/directives/ion-segment-content.js.map +1 -0
  368. package/dist/standalone/directives/ion-segment-view.d.ts +19 -0
  369. package/dist/standalone/directives/ion-segment-view.js +40 -0
  370. package/dist/standalone/directives/ion-segment-view.js.map +1 -0
  371. package/dist/standalone/directives/ion-select-modal.d.ts +12 -0
  372. package/dist/standalone/directives/ion-select-modal.js +36 -0
  373. package/dist/standalone/directives/ion-select-modal.js.map +1 -0
  374. package/dist/standalone/directives/ion-select-option.d.ts +12 -0
  375. package/dist/standalone/directives/ion-select-option.js +36 -0
  376. package/dist/standalone/directives/ion-select-option.js.map +1 -0
  377. package/dist/standalone/directives/ion-skeleton-text.d.ts +12 -0
  378. package/dist/standalone/directives/ion-skeleton-text.js +36 -0
  379. package/dist/standalone/directives/ion-skeleton-text.js.map +1 -0
  380. package/dist/standalone/directives/ion-spinner.d.ts +12 -0
  381. package/dist/standalone/directives/ion-spinner.js +36 -0
  382. package/dist/standalone/directives/ion-spinner.js.map +1 -0
  383. package/dist/standalone/directives/ion-split-pane.d.ts +22 -0
  384. package/dist/standalone/directives/ion-split-pane.js +40 -0
  385. package/dist/standalone/directives/ion-split-pane.js.map +1 -0
  386. package/dist/standalone/directives/ion-tab-bar.d.ts +12 -0
  387. package/dist/standalone/directives/ion-tab-bar.js +36 -0
  388. package/dist/standalone/directives/ion-tab-bar.js.map +1 -0
  389. package/dist/standalone/directives/ion-tab-button.d.ts +12 -0
  390. package/dist/standalone/directives/ion-tab-button.js +36 -0
  391. package/dist/standalone/directives/ion-tab-button.js.map +1 -0
  392. package/dist/standalone/directives/ion-tab.d.ts +12 -0
  393. package/dist/standalone/directives/ion-tab.js +37 -0
  394. package/dist/standalone/directives/ion-tab.js.map +1 -0
  395. package/dist/standalone/directives/ion-text.d.ts +12 -0
  396. package/dist/standalone/directives/ion-text.js +36 -0
  397. package/dist/standalone/directives/ion-text.js.map +1 -0
  398. package/dist/standalone/directives/ion-thumbnail.d.ts +12 -0
  399. package/dist/standalone/directives/ion-thumbnail.js +35 -0
  400. package/dist/standalone/directives/ion-thumbnail.js.map +1 -0
  401. package/dist/standalone/directives/ion-title.d.ts +12 -0
  402. package/dist/standalone/directives/ion-title.js +36 -0
  403. package/dist/standalone/directives/ion-title.js.map +1 -0
  404. package/dist/standalone/directives/ion-toast.d.ts +58 -0
  405. package/dist/standalone/directives/ion-toast.js +62 -0
  406. package/dist/standalone/directives/ion-toast.js.map +1 -0
  407. package/dist/standalone/directives/ion-toolbar.d.ts +12 -0
  408. package/dist/standalone/directives/ion-toolbar.js +36 -0
  409. package/dist/standalone/directives/ion-toolbar.js.map +1 -0
  410. package/dist/standalone/directives/proxies.d.ts +77 -0
  411. package/dist/standalone/directives/proxies.js +79 -0
  412. package/dist/standalone/directives/proxies.js.map +1 -0
  413. package/dist/standalone/directives/radio-group.d.ts +18 -0
  414. package/dist/standalone/directives/radio-group.js +59 -0
  415. package/dist/standalone/directives/radio-group.js.map +1 -0
  416. package/dist/standalone/directives/range.d.ts +47 -0
  417. package/dist/standalone/directives/range.js +77 -0
  418. package/dist/standalone/directives/range.js.map +1 -0
  419. package/dist/standalone/directives/searchbar.d.ts +45 -0
  420. package/dist/standalone/directives/searchbar.js +81 -0
  421. package/dist/standalone/directives/searchbar.js.map +1 -0
  422. package/dist/standalone/directives/segment.d.ts +19 -0
  423. package/dist/standalone/directives/segment.js +59 -0
  424. package/dist/standalone/directives/segment.js.map +1 -0
  425. package/dist/standalone/directives/select.d.ts +34 -0
  426. package/dist/standalone/directives/select.js +83 -0
  427. package/dist/standalone/directives/select.js.map +1 -0
  428. package/dist/standalone/directives/textarea.d.ts +37 -0
  429. package/dist/standalone/directives/textarea.js +90 -0
  430. package/dist/standalone/directives/textarea.js.map +1 -0
  431. package/dist/standalone/directives/toggle.d.ts +28 -0
  432. package/dist/standalone/directives/toggle.js +75 -0
  433. package/dist/standalone/directives/toggle.js.map +1 -0
  434. package/dist/standalone/index.d.ts +22 -0
  435. package/dist/standalone/index.js +24 -0
  436. package/dist/standalone/index.js.map +1 -0
  437. package/dist/standalone/navigation/back-button.d.ts +9 -0
  438. package/dist/standalone/navigation/back-button.js +32 -0
  439. package/dist/standalone/navigation/back-button.js.map +1 -0
  440. package/dist/standalone/navigation/nav.d.ts +8 -0
  441. package/dist/standalone/navigation/nav.js +28 -0
  442. package/dist/standalone/navigation/nav.js.map +1 -0
  443. package/dist/standalone/navigation/router-link-delegate.d.ts +10 -0
  444. package/dist/standalone/navigation/router-link-delegate.js +26 -0
  445. package/dist/standalone/navigation/router-link-delegate.js.map +1 -0
  446. package/dist/standalone/navigation/router-outlet.d.ts +25 -0
  447. package/dist/standalone/navigation/router-outlet.js +60 -0
  448. package/dist/standalone/navigation/router-outlet.js.map +1 -0
  449. package/dist/standalone/navigation/tabs.d.ts +13 -0
  450. package/dist/standalone/navigation/tabs.js +57 -0
  451. package/dist/standalone/navigation/tabs.js.map +1 -0
  452. package/dist/standalone/overlays/modal.d.ts +6 -0
  453. package/dist/standalone/overlays/modal.js +32 -0
  454. package/dist/standalone/overlays/modal.js.map +1 -0
  455. package/dist/standalone/overlays/popover.d.ts +6 -0
  456. package/dist/standalone/overlays/popover.js +28 -0
  457. package/dist/standalone/overlays/popover.js.map +1 -0
  458. package/dist/standalone/providers/action-sheet-controller.d.ts +8 -0
  459. package/dist/standalone/providers/action-sheet-controller.js +20 -0
  460. package/dist/standalone/providers/action-sheet-controller.js.map +1 -0
  461. package/dist/standalone/providers/alert-controller.d.ts +8 -0
  462. package/dist/standalone/providers/alert-controller.js +20 -0
  463. package/dist/standalone/providers/alert-controller.js.map +1 -0
  464. package/dist/standalone/providers/animation-controller.d.ts +25 -0
  465. package/dist/standalone/providers/animation-controller.js +37 -0
  466. package/dist/standalone/providers/animation-controller.js.map +1 -0
  467. package/dist/standalone/providers/gesture-controller.d.ts +13 -0
  468. package/dist/standalone/providers/gesture-controller.js +32 -0
  469. package/dist/standalone/providers/gesture-controller.js.map +1 -0
  470. package/dist/standalone/providers/ionic-angular.d.ts +7 -0
  471. package/dist/standalone/providers/ionic-angular.js +38 -0
  472. package/dist/standalone/providers/ionic-angular.js.map +1 -0
  473. package/dist/standalone/providers/loading-controller.d.ts +8 -0
  474. package/dist/standalone/providers/loading-controller.js +20 -0
  475. package/dist/standalone/providers/loading-controller.js.map +1 -0
  476. package/dist/standalone/providers/menu-controller.d.ts +7 -0
  477. package/dist/standalone/providers/menu-controller.js +18 -0
  478. package/dist/standalone/providers/menu-controller.js.map +1 -0
  479. package/dist/standalone/providers/modal-controller.d.ts +12 -0
  480. package/dist/standalone/providers/modal-controller.js +27 -0
  481. package/dist/standalone/providers/modal-controller.js.map +1 -0
  482. package/dist/standalone/providers/popover-controller.d.ts +9 -0
  483. package/dist/standalone/providers/popover-controller.js +21 -0
  484. package/dist/standalone/providers/popover-controller.js.map +1 -0
  485. package/dist/standalone/providers/toast-controller.d.ts +8 -0
  486. package/dist/standalone/providers/toast-controller.js +20 -0
  487. package/dist/standalone/providers/toast-controller.js.map +1 -0
  488. package/package.json +165 -23
  489. package/fesm2022/ionic-angular-common.mjs +0 -2802
  490. package/fesm2022/ionic-angular-common.mjs.map +0 -1
  491. package/fesm2022/ionic-angular-lazy.mjs.map +0 -1
  492. package/fesm2022/ionic-angular.mjs +0 -3644
  493. package/fesm2022/ionic-angular.mjs.map +0 -1
  494. package/types/ionic-angular-common.d.ts +0 -1031
  495. package/types/ionic-angular.d.ts +0 -1560
  496. /package/{schematics → dist/schematics}/add/files/root/theme/variables.css +0 -0
  497. /package/{schematics → dist/schematics}/add/index.js +0 -0
  498. /package/{schematics → dist/schematics}/add/schema.json +0 -0
  499. /package/{schematics → dist/schematics}/collection.json +0 -0
  500. /package/{schematics → dist/schematics}/utils/ast.js +0 -0
  501. /package/{schematics → dist/schematics}/utils/config.js +0 -0
  502. /package/{schematics → dist/schematics}/utils/package.js +0 -0
@@ -0,0 +1,174 @@
1
+ import { NgZone } from '@angular/core';
2
+ import type { BackButtonEventDetail, KeyboardEventDetail, Platforms } from '@ionic/core/components';
3
+ import { Subscription, Subject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export interface BackButtonEmitter extends Subject<BackButtonEventDetail> {
6
+ subscribeWithPriority(priority: number, callback: (processNextHandler: () => void) => Promise<any> | void): Subscription;
7
+ }
8
+ export declare class Platform {
9
+ private doc;
10
+ private _readyPromise;
11
+ private win;
12
+ /**
13
+ * @hidden
14
+ */
15
+ backButton: BackButtonEmitter;
16
+ /**
17
+ * The keyboardDidShow event emits when the
18
+ * on-screen keyboard is presented.
19
+ */
20
+ keyboardDidShow: Subject<KeyboardEventDetail>;
21
+ /**
22
+ * The keyboardDidHide event emits when the
23
+ * on-screen keyboard is hidden.
24
+ */
25
+ keyboardDidHide: Subject<void>;
26
+ /**
27
+ * The pause event emits when the native platform puts the application
28
+ * into the background, typically when the user switches to a different
29
+ * application. This event would emit when a Cordova app is put into
30
+ * the background, however, it would not fire on a standard web browser.
31
+ */
32
+ pause: Subject<void>;
33
+ /**
34
+ * The resume event emits when the native platform pulls the application
35
+ * out from the background. This event would emit when a Cordova app comes
36
+ * out from the background, however, it would not fire on a standard web browser.
37
+ */
38
+ resume: Subject<void>;
39
+ /**
40
+ * The resize event emits when the browser window has changed dimensions. This
41
+ * could be from a browser window being physically resized, or from a device
42
+ * changing orientation.
43
+ */
44
+ resize: Subject<void>;
45
+ constructor(doc: any, zone: NgZone);
46
+ /**
47
+ * @returns returns true/false based on platform.
48
+ * @description
49
+ * Depending on the platform the user is on, `is(platformName)` will
50
+ * return `true` or `false`. Note that the same app can return `true`
51
+ * for more than one platform name. For example, an app running from
52
+ * an iPad would return `true` for the platform names: `mobile`,
53
+ * `ios`, `ipad`, and `tablet`. Additionally, if the app was running
54
+ * from Cordova then `cordova` would be true, and if it was running
55
+ * from a web browser on the iPad then `mobileweb` would be `true`.
56
+ *
57
+ * ```
58
+ * import { Platform } from 'ionic-angular';
59
+ *
60
+ * @Component({...})
61
+ * export MyPage {
62
+ * constructor(public platform: Platform) {
63
+ * if (this.platform.is('ios')) {
64
+ * // This will only print when on iOS
65
+ * console.log('I am an iOS device!');
66
+ * }
67
+ * }
68
+ * }
69
+ * ```
70
+ *
71
+ * | Platform Name | Description |
72
+ * |-----------------|------------------------------------|
73
+ * | android | on a device running Android. |
74
+ * | capacitor | on a device running Capacitor. |
75
+ * | cordova | on a device running Cordova. |
76
+ * | ios | on a device running iOS. |
77
+ * | ipad | on an iPad device. |
78
+ * | iphone | on an iPhone device. |
79
+ * | phablet | on a phablet device. |
80
+ * | tablet | on a tablet device. |
81
+ * | electron | in Electron on a desktop device. |
82
+ * | pwa | as a PWA app. |
83
+ * | mobile | on a mobile device. |
84
+ * | mobileweb | on a mobile device in a browser. |
85
+ * | desktop | on a desktop device. |
86
+ * | hybrid | is a cordova or capacitor app. |
87
+ *
88
+ */
89
+ is(platformName: Platforms): boolean;
90
+ /**
91
+ * @returns the array of platforms
92
+ * @description
93
+ * Depending on what device you are on, `platforms` can return multiple values.
94
+ * Each possible value is a hierarchy of platforms. For example, on an iPhone,
95
+ * it would return `mobile`, `ios`, and `iphone`.
96
+ *
97
+ * ```
98
+ * import { Platform } from 'ionic-angular';
99
+ *
100
+ * @Component({...})
101
+ * export MyPage {
102
+ * constructor(public platform: Platform) {
103
+ * // This will print an array of the current platforms
104
+ * console.log(this.platform.platforms());
105
+ * }
106
+ * }
107
+ * ```
108
+ */
109
+ platforms(): string[];
110
+ /**
111
+ * Returns a promise when the platform is ready and native functionality
112
+ * can be called. If the app is running from within a web browser, then
113
+ * the promise will resolve when the DOM is ready. When the app is running
114
+ * from an application engine such as Cordova, then the promise will
115
+ * resolve when Cordova triggers the `deviceready` event.
116
+ *
117
+ * The resolved value is the `readySource`, which states which platform
118
+ * ready was used. For example, when Cordova is ready, the resolved ready
119
+ * source is `cordova`. The default ready source value will be `dom`. The
120
+ * `readySource` is useful if different logic should run depending on the
121
+ * platform the app is running from. For example, only Cordova can execute
122
+ * the status bar plugin, so the web should not run status bar plugin logic.
123
+ *
124
+ * ```
125
+ * import { Component } from '@angular/core';
126
+ * import { Platform } from 'ionic-angular';
127
+ *
128
+ * @Component({...})
129
+ * export MyApp {
130
+ * constructor(public platform: Platform) {
131
+ * this.platform.ready().then((readySource) => {
132
+ * console.log('Platform ready from', readySource);
133
+ * // Platform now ready, execute any required native code
134
+ * });
135
+ * }
136
+ * }
137
+ * ```
138
+ */
139
+ ready(): Promise<string>;
140
+ /**
141
+ * Returns if this app is using right-to-left language direction or not.
142
+ * We recommend the app's `index.html` file already has the correct `dir`
143
+ * attribute value set, such as `<html dir="ltr">` or `<html dir="rtl">`.
144
+ * [W3C: Structural markup and right-to-left text in HTML](http://www.w3.org/International/questions/qa-html-dir)
145
+ */
146
+ get isRTL(): boolean;
147
+ /**
148
+ * Get the query string parameter
149
+ */
150
+ getQueryParam(key: string): string | null;
151
+ /**
152
+ * Returns `true` if the app is in landscape mode.
153
+ */
154
+ isLandscape(): boolean;
155
+ /**
156
+ * Returns `true` if the app is in portrait mode.
157
+ */
158
+ isPortrait(): boolean;
159
+ testUserAgent(expression: string): boolean;
160
+ /**
161
+ * Get the current url.
162
+ */
163
+ url(): string;
164
+ /**
165
+ * Gets the width of the platform's viewport using `window.innerWidth`.
166
+ */
167
+ width(): number;
168
+ /**
169
+ * Gets the height of the platform's viewport using `window.innerHeight`.
170
+ */
171
+ height(): number;
172
+ static ɵfac: i0.ɵɵFactoryDeclaration<Platform, never>;
173
+ static ɵprov: i0.ɵɵInjectableDeclaration<Platform>;
174
+ }
@@ -0,0 +1,256 @@
1
+ import { DOCUMENT } from '@angular/common';
2
+ import { Inject, Injectable } from '@angular/core';
3
+ import { getPlatforms, isPlatform } from '@ionic/core/components';
4
+ import { Subject } from 'rxjs';
5
+ import * as i0 from "@angular/core";
6
+ export class Platform {
7
+ doc;
8
+ _readyPromise;
9
+ win;
10
+ /**
11
+ * @hidden
12
+ */
13
+ backButton = new Subject();
14
+ /**
15
+ * The keyboardDidShow event emits when the
16
+ * on-screen keyboard is presented.
17
+ */
18
+ keyboardDidShow = new Subject();
19
+ /**
20
+ * The keyboardDidHide event emits when the
21
+ * on-screen keyboard is hidden.
22
+ */
23
+ keyboardDidHide = new Subject();
24
+ /**
25
+ * The pause event emits when the native platform puts the application
26
+ * into the background, typically when the user switches to a different
27
+ * application. This event would emit when a Cordova app is put into
28
+ * the background, however, it would not fire on a standard web browser.
29
+ */
30
+ pause = new Subject();
31
+ /**
32
+ * The resume event emits when the native platform pulls the application
33
+ * out from the background. This event would emit when a Cordova app comes
34
+ * out from the background, however, it would not fire on a standard web browser.
35
+ */
36
+ resume = new Subject();
37
+ /**
38
+ * The resize event emits when the browser window has changed dimensions. This
39
+ * could be from a browser window being physically resized, or from a device
40
+ * changing orientation.
41
+ */
42
+ resize = new Subject();
43
+ constructor(doc, zone) {
44
+ this.doc = doc;
45
+ zone.run(() => {
46
+ this.win = doc.defaultView;
47
+ this.backButton.subscribeWithPriority = function (priority, callback) {
48
+ return this.subscribe((ev) => {
49
+ return ev.register(priority, (processNextHandler) => zone.run(() => callback(processNextHandler)));
50
+ });
51
+ };
52
+ proxyEvent(this.pause, doc, 'pause', zone);
53
+ proxyEvent(this.resume, doc, 'resume', zone);
54
+ proxyEvent(this.backButton, doc, 'ionBackButton', zone);
55
+ proxyEvent(this.resize, this.win, 'resize', zone);
56
+ proxyEvent(this.keyboardDidShow, this.win, 'ionKeyboardDidShow', zone);
57
+ proxyEvent(this.keyboardDidHide, this.win, 'ionKeyboardDidHide', zone);
58
+ let readyResolve;
59
+ this._readyPromise = new Promise((res) => {
60
+ readyResolve = res;
61
+ });
62
+ if (this.win?.['cordova']) {
63
+ doc.addEventListener('deviceready', () => {
64
+ readyResolve('cordova');
65
+ }, { once: true });
66
+ }
67
+ else {
68
+ readyResolve('dom');
69
+ }
70
+ });
71
+ }
72
+ /**
73
+ * @returns returns true/false based on platform.
74
+ * @description
75
+ * Depending on the platform the user is on, `is(platformName)` will
76
+ * return `true` or `false`. Note that the same app can return `true`
77
+ * for more than one platform name. For example, an app running from
78
+ * an iPad would return `true` for the platform names: `mobile`,
79
+ * `ios`, `ipad`, and `tablet`. Additionally, if the app was running
80
+ * from Cordova then `cordova` would be true, and if it was running
81
+ * from a web browser on the iPad then `mobileweb` would be `true`.
82
+ *
83
+ * ```
84
+ * import { Platform } from 'ionic-angular';
85
+ *
86
+ * @Component({...})
87
+ * export MyPage {
88
+ * constructor(public platform: Platform) {
89
+ * if (this.platform.is('ios')) {
90
+ * // This will only print when on iOS
91
+ * console.log('I am an iOS device!');
92
+ * }
93
+ * }
94
+ * }
95
+ * ```
96
+ *
97
+ * | Platform Name | Description |
98
+ * |-----------------|------------------------------------|
99
+ * | android | on a device running Android. |
100
+ * | capacitor | on a device running Capacitor. |
101
+ * | cordova | on a device running Cordova. |
102
+ * | ios | on a device running iOS. |
103
+ * | ipad | on an iPad device. |
104
+ * | iphone | on an iPhone device. |
105
+ * | phablet | on a phablet device. |
106
+ * | tablet | on a tablet device. |
107
+ * | electron | in Electron on a desktop device. |
108
+ * | pwa | as a PWA app. |
109
+ * | mobile | on a mobile device. |
110
+ * | mobileweb | on a mobile device in a browser. |
111
+ * | desktop | on a desktop device. |
112
+ * | hybrid | is a cordova or capacitor app. |
113
+ *
114
+ */
115
+ is(platformName) {
116
+ return isPlatform(this.win, platformName);
117
+ }
118
+ /**
119
+ * @returns the array of platforms
120
+ * @description
121
+ * Depending on what device you are on, `platforms` can return multiple values.
122
+ * Each possible value is a hierarchy of platforms. For example, on an iPhone,
123
+ * it would return `mobile`, `ios`, and `iphone`.
124
+ *
125
+ * ```
126
+ * import { Platform } from 'ionic-angular';
127
+ *
128
+ * @Component({...})
129
+ * export MyPage {
130
+ * constructor(public platform: Platform) {
131
+ * // This will print an array of the current platforms
132
+ * console.log(this.platform.platforms());
133
+ * }
134
+ * }
135
+ * ```
136
+ */
137
+ platforms() {
138
+ return getPlatforms(this.win);
139
+ }
140
+ /**
141
+ * Returns a promise when the platform is ready and native functionality
142
+ * can be called. If the app is running from within a web browser, then
143
+ * the promise will resolve when the DOM is ready. When the app is running
144
+ * from an application engine such as Cordova, then the promise will
145
+ * resolve when Cordova triggers the `deviceready` event.
146
+ *
147
+ * The resolved value is the `readySource`, which states which platform
148
+ * ready was used. For example, when Cordova is ready, the resolved ready
149
+ * source is `cordova`. The default ready source value will be `dom`. The
150
+ * `readySource` is useful if different logic should run depending on the
151
+ * platform the app is running from. For example, only Cordova can execute
152
+ * the status bar plugin, so the web should not run status bar plugin logic.
153
+ *
154
+ * ```
155
+ * import { Component } from '@angular/core';
156
+ * import { Platform } from 'ionic-angular';
157
+ *
158
+ * @Component({...})
159
+ * export MyApp {
160
+ * constructor(public platform: Platform) {
161
+ * this.platform.ready().then((readySource) => {
162
+ * console.log('Platform ready from', readySource);
163
+ * // Platform now ready, execute any required native code
164
+ * });
165
+ * }
166
+ * }
167
+ * ```
168
+ */
169
+ ready() {
170
+ return this._readyPromise;
171
+ }
172
+ /**
173
+ * Returns if this app is using right-to-left language direction or not.
174
+ * We recommend the app's `index.html` file already has the correct `dir`
175
+ * attribute value set, such as `<html dir="ltr">` or `<html dir="rtl">`.
176
+ * [W3C: Structural markup and right-to-left text in HTML](http://www.w3.org/International/questions/qa-html-dir)
177
+ */
178
+ get isRTL() {
179
+ return this.doc.dir === 'rtl';
180
+ }
181
+ /**
182
+ * Get the query string parameter
183
+ */
184
+ getQueryParam(key) {
185
+ return readQueryParam(this.win.location.href, key);
186
+ }
187
+ /**
188
+ * Returns `true` if the app is in landscape mode.
189
+ */
190
+ isLandscape() {
191
+ return !this.isPortrait();
192
+ }
193
+ /**
194
+ * Returns `true` if the app is in portrait mode.
195
+ */
196
+ isPortrait() {
197
+ return this.win.matchMedia?.('(orientation: portrait)').matches;
198
+ }
199
+ testUserAgent(expression) {
200
+ const nav = this.win.navigator;
201
+ return !!(nav?.userAgent && nav.userAgent.indexOf(expression) >= 0);
202
+ }
203
+ /**
204
+ * Get the current url.
205
+ */
206
+ url() {
207
+ return this.win.location.href;
208
+ }
209
+ /**
210
+ * Gets the width of the platform's viewport using `window.innerWidth`.
211
+ */
212
+ width() {
213
+ return this.win.innerWidth;
214
+ }
215
+ /**
216
+ * Gets the height of the platform's viewport using `window.innerHeight`.
217
+ */
218
+ height() {
219
+ return this.win.innerHeight;
220
+ }
221
+ /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: Platform, deps: [{ token: DOCUMENT }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
222
+ /** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: Platform, providedIn: 'root' });
223
+ }
224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.0", ngImport: i0, type: Platform, decorators: [{
225
+ type: Injectable,
226
+ args: [{
227
+ providedIn: 'root',
228
+ }]
229
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
230
+ type: Inject,
231
+ args: [DOCUMENT]
232
+ }] }, { type: i0.NgZone }] });
233
+ const readQueryParam = (url, key) => {
234
+ key = key.replace(/[[\]\\]/g, '\\$&');
235
+ const regex = new RegExp('[\\?&]' + key + '=([^&#]*)');
236
+ const results = regex.exec(url);
237
+ return results ? decodeURIComponent(results[1].replace(/\+/g, ' ')) : null;
238
+ };
239
+ const proxyEvent = (emitter, el, eventName, zone) => {
240
+ if (el) {
241
+ el.addEventListener(eventName, (ev) => {
242
+ /**
243
+ * `zone.run` is required to make sure that we are running inside the Angular zone
244
+ * at all times. This is necessary since an app that has Capacitor will
245
+ * override the `document.addEventListener` with its own implementation.
246
+ * The override causes the event to no longer be in the Angular zone.
247
+ */
248
+ zone.run(() => {
249
+ // ?? cordova might emit "null" events
250
+ const value = ev != null ? ev.detail : undefined;
251
+ emitter.next(value);
252
+ });
253
+ });
254
+ }
255
+ };
256
+ //# sourceMappingURL=platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../../src/common/providers/platform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAU,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAElE,OAAO,EAAgB,OAAO,EAAE,MAAM,MAAM,CAAC;;AAc7C,MAAM,OAAO,QAAQ;IA2CmB;IA1C9B,aAAa,CAAkB;IAC/B,GAAG,CAAM;IAEjB;;OAEG;IACH,UAAU,GAAG,IAAI,OAAO,EAA8C,CAAC;IAEvE;;;OAGG;IACH,eAAe,GAAG,IAAI,OAAO,EAAuB,CAAC;IAErD;;;OAGG;IACH,eAAe,GAAG,IAAI,OAAO,EAAQ,CAAC;IAEtC;;;;;OAKG;IACH,KAAK,GAAG,IAAI,OAAO,EAAQ,CAAC;IAE5B;;;;OAIG;IACH,MAAM,GAAG,IAAI,OAAO,EAAQ,CAAC;IAE7B;;;;OAIG;IACH,MAAM,GAAG,IAAI,OAAO,EAAQ,CAAC;IAE7B,YAAsC,GAAQ,EAAE,IAAY;QAAtB,QAAG,GAAH,GAAG,CAAK;QAC5C,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC;YAC3B,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,UAAU,QAAQ,EAAE,QAAQ;gBAClE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE;oBAC3B,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gBACrG,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAC3C,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC7C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;YACxD,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAClD,UAAU,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;YACvE,UAAU,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;YAEvE,IAAI,YAAqC,CAAC;YAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBACvC,YAAY,GAAG,GAAG,CAAC;YACrB,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1B,GAAG,CAAC,gBAAgB,CAClB,aAAa,EACb,GAAG,EAAE;oBACH,YAAY,CAAC,SAAS,CAAC,CAAC;gBAC1B,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,YAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0CG;IACH,EAAE,CAAC,YAAuB;QACxB,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS;QACP,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,GAAW;QACvB,OAAO,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC;IAClE,CAAC;IAED,aAAa,CAAC,UAAkB;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;QAC/B,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACH,GAAG;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;IAC9B,CAAC;0HA3OU,QAAQ,kBA2CC,QAAQ;8HA3CjB,QAAQ,cAFP,MAAM;;2FAEP,QAAQ;kBAHpB,UAAU;mBAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;0BA4Cc,MAAM;2BAAC,QAAQ;;AAmM9B,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,EAAE;IAClD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,QAAQ,GAAG,GAAG,GAAG,WAAW,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7E,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAI,OAAmB,EAAE,EAAe,EAAE,SAAiB,EAAE,IAAY,EAAE,EAAE;IAC9F,IAAI,EAAE,EAAE,CAAC;QACP,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;YACpC;;;;;eAKG;YACH,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;gBACZ,sCAAsC;gBACtC,MAAM,KAAK,GAAG,EAAE,IAAI,IAAI,CAAC,CAAC,CAAE,EAAU,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC1D,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC","sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { NgZone, Inject, Injectable } from '@angular/core';\nimport { getPlatforms, isPlatform } from '@ionic/core/components';\nimport type { BackButtonEventDetail, KeyboardEventDetail, Platforms } from '@ionic/core/components';\nimport { Subscription, Subject } from 'rxjs';\n\n// TODO(FW-2827): types\n\nexport interface BackButtonEmitter extends Subject<BackButtonEventDetail> {\n subscribeWithPriority(\n priority: number,\n callback: (processNextHandler: () => void) => Promise<any> | void\n ): Subscription;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class Platform {\n private _readyPromise: Promise<string>;\n private win: any;\n\n /**\n * @hidden\n */\n backButton = new Subject<BackButtonEventDetail>() as BackButtonEmitter;\n\n /**\n * The keyboardDidShow event emits when the\n * on-screen keyboard is presented.\n */\n keyboardDidShow = new Subject<KeyboardEventDetail>();\n\n /**\n * The keyboardDidHide event emits when the\n * on-screen keyboard is hidden.\n */\n keyboardDidHide = new Subject<void>();\n\n /**\n * The pause event emits when the native platform puts the application\n * into the background, typically when the user switches to a different\n * application. This event would emit when a Cordova app is put into\n * the background, however, it would not fire on a standard web browser.\n */\n pause = new Subject<void>();\n\n /**\n * The resume event emits when the native platform pulls the application\n * out from the background. This event would emit when a Cordova app comes\n * out from the background, however, it would not fire on a standard web browser.\n */\n resume = new Subject<void>();\n\n /**\n * The resize event emits when the browser window has changed dimensions. This\n * could be from a browser window being physically resized, or from a device\n * changing orientation.\n */\n resize = new Subject<void>();\n\n constructor(@Inject(DOCUMENT) private doc: any, zone: NgZone) {\n zone.run(() => {\n this.win = doc.defaultView;\n this.backButton.subscribeWithPriority = function (priority, callback) {\n return this.subscribe((ev) => {\n return ev.register(priority, (processNextHandler) => zone.run(() => callback(processNextHandler)));\n });\n };\n\n proxyEvent(this.pause, doc, 'pause', zone);\n proxyEvent(this.resume, doc, 'resume', zone);\n proxyEvent(this.backButton, doc, 'ionBackButton', zone);\n proxyEvent(this.resize, this.win, 'resize', zone);\n proxyEvent(this.keyboardDidShow, this.win, 'ionKeyboardDidShow', zone);\n proxyEvent(this.keyboardDidHide, this.win, 'ionKeyboardDidHide', zone);\n\n let readyResolve: (value: string) => void;\n this._readyPromise = new Promise((res) => {\n readyResolve = res;\n });\n if (this.win?.['cordova']) {\n doc.addEventListener(\n 'deviceready',\n () => {\n readyResolve('cordova');\n },\n { once: true }\n );\n } else {\n readyResolve!('dom');\n }\n });\n }\n\n /**\n * @returns returns true/false based on platform.\n * @description\n * Depending on the platform the user is on, `is(platformName)` will\n * return `true` or `false`. Note that the same app can return `true`\n * for more than one platform name. For example, an app running from\n * an iPad would return `true` for the platform names: `mobile`,\n * `ios`, `ipad`, and `tablet`. Additionally, if the app was running\n * from Cordova then `cordova` would be true, and if it was running\n * from a web browser on the iPad then `mobileweb` would be `true`.\n *\n * ```\n * import { Platform } from 'ionic-angular';\n *\n * @Component({...})\n * export MyPage {\n * constructor(public platform: Platform) {\n * if (this.platform.is('ios')) {\n * // This will only print when on iOS\n * console.log('I am an iOS device!');\n * }\n * }\n * }\n * ```\n *\n * | Platform Name | Description |\n * |-----------------|------------------------------------|\n * | android | on a device running Android. |\n * | capacitor | on a device running Capacitor. |\n * | cordova | on a device running Cordova. |\n * | ios | on a device running iOS. |\n * | ipad | on an iPad device. |\n * | iphone | on an iPhone device. |\n * | phablet | on a phablet device. |\n * | tablet | on a tablet device. |\n * | electron | in Electron on a desktop device. |\n * | pwa | as a PWA app. |\n * | mobile | on a mobile device. |\n * | mobileweb | on a mobile device in a browser. |\n * | desktop | on a desktop device. |\n * | hybrid | is a cordova or capacitor app. |\n *\n */\n is(platformName: Platforms): boolean {\n return isPlatform(this.win, platformName);\n }\n\n /**\n * @returns the array of platforms\n * @description\n * Depending on what device you are on, `platforms` can return multiple values.\n * Each possible value is a hierarchy of platforms. For example, on an iPhone,\n * it would return `mobile`, `ios`, and `iphone`.\n *\n * ```\n * import { Platform } from 'ionic-angular';\n *\n * @Component({...})\n * export MyPage {\n * constructor(public platform: Platform) {\n * // This will print an array of the current platforms\n * console.log(this.platform.platforms());\n * }\n * }\n * ```\n */\n platforms(): string[] {\n return getPlatforms(this.win);\n }\n\n /**\n * Returns a promise when the platform is ready and native functionality\n * can be called. If the app is running from within a web browser, then\n * the promise will resolve when the DOM is ready. When the app is running\n * from an application engine such as Cordova, then the promise will\n * resolve when Cordova triggers the `deviceready` event.\n *\n * The resolved value is the `readySource`, which states which platform\n * ready was used. For example, when Cordova is ready, the resolved ready\n * source is `cordova`. The default ready source value will be `dom`. The\n * `readySource` is useful if different logic should run depending on the\n * platform the app is running from. For example, only Cordova can execute\n * the status bar plugin, so the web should not run status bar plugin logic.\n *\n * ```\n * import { Component } from '@angular/core';\n * import { Platform } from 'ionic-angular';\n *\n * @Component({...})\n * export MyApp {\n * constructor(public platform: Platform) {\n * this.platform.ready().then((readySource) => {\n * console.log('Platform ready from', readySource);\n * // Platform now ready, execute any required native code\n * });\n * }\n * }\n * ```\n */\n ready(): Promise<string> {\n return this._readyPromise;\n }\n\n /**\n * Returns if this app is using right-to-left language direction or not.\n * We recommend the app's `index.html` file already has the correct `dir`\n * attribute value set, such as `<html dir=\"ltr\">` or `<html dir=\"rtl\">`.\n * [W3C: Structural markup and right-to-left text in HTML](http://www.w3.org/International/questions/qa-html-dir)\n */\n get isRTL(): boolean {\n return this.doc.dir === 'rtl';\n }\n\n /**\n * Get the query string parameter\n */\n getQueryParam(key: string): string | null {\n return readQueryParam(this.win.location.href, key);\n }\n\n /**\n * Returns `true` if the app is in landscape mode.\n */\n isLandscape(): boolean {\n return !this.isPortrait();\n }\n\n /**\n * Returns `true` if the app is in portrait mode.\n */\n isPortrait(): boolean {\n return this.win.matchMedia?.('(orientation: portrait)').matches;\n }\n\n testUserAgent(expression: string): boolean {\n const nav = this.win.navigator;\n return !!(nav?.userAgent && nav.userAgent.indexOf(expression) >= 0);\n }\n\n /**\n * Get the current url.\n */\n url(): string {\n return this.win.location.href;\n }\n\n /**\n * Gets the width of the platform's viewport using `window.innerWidth`.\n */\n width(): number {\n return this.win.innerWidth;\n }\n\n /**\n * Gets the height of the platform's viewport using `window.innerHeight`.\n */\n height(): number {\n return this.win.innerHeight;\n }\n}\n\nconst readQueryParam = (url: string, key: string) => {\n key = key.replace(/[[\\]\\\\]/g, '\\\\$&');\n const regex = new RegExp('[\\\\?&]' + key + '=([^&#]*)');\n const results = regex.exec(url);\n return results ? decodeURIComponent(results[1].replace(/\\+/g, ' ')) : null;\n};\n\nconst proxyEvent = <T>(emitter: Subject<T>, el: EventTarget, eventName: string, zone: NgZone) => {\n if (el) {\n el.addEventListener(eventName, (ev) => {\n /**\n * `zone.run` is required to make sure that we are running inside the Angular zone\n * at all times. This is necessary since an app that has Capacitor will\n * override the `document.addEventListener` with its own implementation.\n * The override causes the event to no longer be in the Angular zone.\n */\n zone.run(() => {\n // ?? cordova might emit \"null\" events\n const value = ev != null ? (ev as any).detail : undefined;\n emitter.next(value);\n });\n });\n }\n};\n"]}
@@ -0,0 +1,8 @@
1
+ export interface IonicGlobal {
2
+ config?: any;
3
+ asyncQueue?: boolean;
4
+ }
5
+ export interface IonicWindow extends Window {
6
+ Ionic: IonicGlobal;
7
+ __zone_symbol__requestAnimationFrame?: (ts: FrameRequestCallback) => number;
8
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/common/types/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["export interface IonicGlobal {\n config?: any; // TODO(FW-2827): type\n asyncQueue?: boolean;\n}\n\nexport interface IonicWindow extends Window {\n Ionic: IonicGlobal;\n __zone_symbol__requestAnimationFrame?: (ts: FrameRequestCallback) => number;\n}\n"]}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * https://ionicframework.com/docs/api/router-outlet#life-cycle-hooks
3
+ */
4
+ export interface ViewWillEnter {
5
+ /**
6
+ * Fired when the component routing to is about to animate into view.
7
+ */
8
+ ionViewWillEnter(): void;
9
+ }
10
+ export interface ViewDidEnter {
11
+ /**
12
+ * Fired when the component routing to has finished animating.
13
+ */
14
+ ionViewDidEnter(): void;
15
+ }
16
+ export interface ViewWillLeave {
17
+ /**
18
+ * Fired when the component routing from is about to animate.
19
+ */
20
+ ionViewWillLeave(): void;
21
+ }
22
+ export interface ViewDidLeave {
23
+ /**
24
+ * Fired when the component routing to has finished animating.
25
+ */
26
+ ionViewDidLeave(): void;
27
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * https://ionicframework.com/docs/api/router-outlet#life-cycle-hooks
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=ionic-lifecycle-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ionic-lifecycle-hooks.js","sourceRoot":"","sources":["../../../src/common/types/ionic-lifecycle-hooks.ts"],"names":[],"mappings":"AAAA;;GAEG","sourcesContent":["/**\n * https://ionicframework.com/docs/api/router-outlet#life-cycle-hooks\n */\n\nexport interface ViewWillEnter {\n /**\n * Fired when the component routing to is about to animate into view.\n */\n ionViewWillEnter(): void;\n}\n\nexport interface ViewDidEnter {\n /**\n * Fired when the component routing to has finished animating.\n */\n ionViewDidEnter(): void;\n}\n\nexport interface ViewWillLeave {\n /**\n * Fired when the component routing from is about to animate.\n */\n ionViewWillLeave(): void;\n}\n\nexport interface ViewDidLeave {\n /**\n * Fired when the component routing to has finished animating.\n */\n ionViewDidLeave(): void;\n}\n"]}
@@ -0,0 +1,16 @@
1
+ import type { Injector } from '@angular/core';
2
+ import type { ComponentRef, ModalOptions as CoreModalOptions, PopoverOptions as CorePopoverOptions } from '@ionic/core/components';
3
+ /**
4
+ * Modal options with Angular-specific injector support.
5
+ * Extends @ionic/core ModalOptions with an optional injector property.
6
+ */
7
+ export type ModalOptions<T extends ComponentRef = ComponentRef> = CoreModalOptions<T> & {
8
+ injector?: Injector;
9
+ };
10
+ /**
11
+ * Popover options with Angular-specific injector support.
12
+ * Extends @ionic/core PopoverOptions with an optional injector property.
13
+ */
14
+ export type PopoverOptions<T extends ComponentRef = ComponentRef> = CorePopoverOptions<T> & {
15
+ injector?: Injector;
16
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=overlay-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlay-options.js","sourceRoot":"","sources":["../../../src/common/types/overlay-options.ts"],"names":[],"mappings":"","sourcesContent":["import type { Injector } from '@angular/core';\nimport type {\n ComponentRef,\n ModalOptions as CoreModalOptions,\n PopoverOptions as CorePopoverOptions,\n} from '@ionic/core/components';\n\n/**\n * Modal options with Angular-specific injector support.\n * Extends @ionic/core ModalOptions with an optional injector property.\n */\nexport type ModalOptions<T extends ComponentRef = ComponentRef> = CoreModalOptions<T> & {\n injector?: Injector;\n};\n\n/**\n * Popover options with Angular-specific injector support.\n * Extends @ionic/core PopoverOptions with an optional injector property.\n */\nexport type PopoverOptions<T extends ComponentRef = ComponentRef> = CorePopoverOptions<T> & {\n injector?: Injector;\n};\n"]}
@@ -0,0 +1,21 @@
1
+ export interface ControllerShape<Opts, HTMLElm> {
2
+ create(options: Opts): Promise<HTMLElm>;
3
+ dismiss(data?: any, role?: string, id?: string): Promise<boolean>;
4
+ getTop(): Promise<HTMLElm | undefined>;
5
+ }
6
+ export declare class OverlayBaseController<Opts, Overlay> implements ControllerShape<Opts, Overlay> {
7
+ private ctrl;
8
+ constructor(ctrl: ControllerShape<Opts, Overlay>);
9
+ /**
10
+ * Creates a new overlay
11
+ */
12
+ create(opts?: Opts): Promise<Overlay>;
13
+ /**
14
+ * When `id` is not provided, it dismisses the top overlay.
15
+ */
16
+ dismiss(data?: any, role?: string, id?: string): Promise<boolean>;
17
+ /**
18
+ * Returns the top overlay.
19
+ */
20
+ getTop(): Promise<Overlay | undefined>;
21
+ }
@@ -0,0 +1,26 @@
1
+ // TODO(FW-2827): types
2
+ export class OverlayBaseController {
3
+ ctrl;
4
+ constructor(ctrl) {
5
+ this.ctrl = ctrl;
6
+ }
7
+ /**
8
+ * Creates a new overlay
9
+ */
10
+ create(opts) {
11
+ return this.ctrl.create((opts || {}));
12
+ }
13
+ /**
14
+ * When `id` is not provided, it dismisses the top overlay.
15
+ */
16
+ dismiss(data, role, id) {
17
+ return this.ctrl.dismiss(data, role, id);
18
+ }
19
+ /**
20
+ * Returns the top overlay.
21
+ */
22
+ getTop() {
23
+ return this.ctrl.getTop();
24
+ }
25
+ }
26
+ //# sourceMappingURL=overlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlay.js","sourceRoot":"","sources":["../../../src/common/utils/overlay.ts"],"names":[],"mappings":"AAAA,uBAAuB;AAQvB,MAAM,OAAO,qBAAqB;IACZ;IAApB,YAAoB,IAAoC;QAApC,SAAI,GAAJ,IAAI,CAAgC;IAAG,CAAC;IAE5D;;OAEG;IACH,MAAM,CAAC,IAAW;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,EAAE,CAAQ,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAU,EAAE,IAAa,EAAE,EAAW;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;CACF","sourcesContent":["// TODO(FW-2827): types\n\nexport interface ControllerShape<Opts, HTMLElm> {\n create(options: Opts): Promise<HTMLElm>;\n dismiss(data?: any, role?: string, id?: string): Promise<boolean>;\n getTop(): Promise<HTMLElm | undefined>;\n}\n\nexport class OverlayBaseController<Opts, Overlay> implements ControllerShape<Opts, Overlay> {\n constructor(private ctrl: ControllerShape<Opts, Overlay>) {}\n\n /**\n * Creates a new overlay\n */\n create(opts?: Opts): Promise<Overlay> {\n return this.ctrl.create((opts || {}) as any);\n }\n\n /**\n * When `id` is not provided, it dismisses the top overlay.\n */\n dismiss(data?: any, role?: string, id?: string): Promise<boolean> {\n return this.ctrl.dismiss(data, role, id);\n }\n\n /**\n * Returns the top overlay.\n */\n getTop(): Promise<Overlay | undefined> {\n return this.ctrl.getTop();\n }\n}\n"]}
@@ -0,0 +1,8 @@
1
+ export declare const proxyInputs: (Cmp: any, inputs: string[]) => void;
2
+ export declare const proxyMethods: (Cmp: any, methods: string[]) => void;
3
+ export declare const proxyOutputs: (instance: any, el: any, events: string[]) => void;
4
+ export declare function ProxyCmp(opts: {
5
+ defineCustomElementFn?: () => void;
6
+ inputs?: any;
7
+ methods?: any;
8
+ }): (cls: any) => any;
@@ -0,0 +1,47 @@
1
+ // TODO: Is there a way we can grab this from angular-component-lib instead?
2
+ /* eslint-disable */
3
+ /* tslint:disable */
4
+ import { fromEvent } from 'rxjs';
5
+ export const proxyInputs = (Cmp, inputs) => {
6
+ const Prototype = Cmp.prototype;
7
+ inputs.forEach((item) => {
8
+ Object.defineProperty(Prototype, item, {
9
+ get() {
10
+ return this.el[item];
11
+ },
12
+ set(val) {
13
+ this.z.runOutsideAngular(() => (this.el[item] = val));
14
+ },
15
+ });
16
+ });
17
+ };
18
+ export const proxyMethods = (Cmp, methods) => {
19
+ const Prototype = Cmp.prototype;
20
+ methods.forEach((methodName) => {
21
+ Prototype[methodName] = function () {
22
+ const args = arguments;
23
+ return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));
24
+ };
25
+ });
26
+ };
27
+ export const proxyOutputs = (instance, el, events) => {
28
+ events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));
29
+ };
30
+ // tslint:disable-next-line: only-arrow-functions
31
+ export function ProxyCmp(opts) {
32
+ const decorator = function (cls) {
33
+ const { defineCustomElementFn, inputs, methods } = opts;
34
+ if (defineCustomElementFn !== undefined) {
35
+ defineCustomElementFn();
36
+ }
37
+ if (inputs) {
38
+ proxyInputs(cls, inputs);
39
+ }
40
+ if (methods) {
41
+ proxyMethods(cls, methods);
42
+ }
43
+ return cls;
44
+ };
45
+ return decorator;
46
+ }
47
+ //# sourceMappingURL=proxy.js.map