voyager-ionic-core 8.5.1 → 8.5.5

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 (632) hide show
  1. package/components/alert.js +5 -4
  2. package/components/animation.js +3 -2
  3. package/components/button.js +6 -6
  4. package/components/capacitor.js +1 -1
  5. package/components/checkbox.js +18 -6
  6. package/components/config.js +3 -1
  7. package/components/data.js +3 -3
  8. package/components/hardware-back-button.js +3 -3
  9. package/components/helpers.js +4 -12
  10. package/components/index.js +2 -1
  11. package/components/index2.js +1 -2
  12. package/components/index4.js +104 -289
  13. package/components/index5.js +302 -3
  14. package/components/index6.js +3 -38
  15. package/components/index8.js +1 -1
  16. package/components/index9.js +2 -2
  17. package/components/input-shims.js +1 -1
  18. package/components/input.utils.js +3 -3
  19. package/components/ion-accordion-group.js +4 -4
  20. package/components/ion-accordion.js +2 -1
  21. package/components/ion-app.js +4 -4
  22. package/components/ion-back-button.js +2 -1
  23. package/components/ion-datetime-button.js +7 -7
  24. package/components/ion-datetime.js +20 -20
  25. package/components/ion-infinite-scroll-content.js +2 -1
  26. package/components/ion-input-password-toggle.js +6 -6
  27. package/components/ion-input.js +3 -3
  28. package/components/ion-item-sliding.js +3 -2
  29. package/components/ion-loading.js +2 -1
  30. package/components/ion-menu-button.js +3 -2
  31. package/components/ion-menu-toggle.js +1 -1
  32. package/components/ion-menu.js +7 -6
  33. package/components/ion-nav.js +5 -5
  34. package/components/ion-picker-legacy.js +4 -4
  35. package/components/ion-progress-bar.js +2 -1
  36. package/components/ion-range.js +24 -8
  37. package/components/ion-refresher-content.js +2 -1
  38. package/components/ion-refresher.js +3 -2
  39. package/components/ion-router-outlet.js +4 -3
  40. package/components/ion-router.js +9 -8
  41. package/components/ion-searchbar.js +2 -1
  42. package/components/ion-segment-button.js +22 -52
  43. package/components/ion-segment-content.js +1 -1
  44. package/components/ion-select.js +14 -7
  45. package/components/ion-skeleton-text.js +2 -1
  46. package/components/ion-split-pane.js +5 -4
  47. package/components/ion-tab-button.js +2 -1
  48. package/components/ion-tab.js +5 -4
  49. package/components/ion-tabs.js +3 -2
  50. package/components/ion-textarea.js +2 -2
  51. package/components/ion-toast.js +11 -11
  52. package/components/ion-toggle.js +18 -8
  53. package/components/ionic-global.js +3 -77
  54. package/components/keyboard-controller.js +1 -1
  55. package/components/menu-toggle-util.js +1 -1
  56. package/components/modal.js +10 -10
  57. package/components/notch-controller.js +1 -1
  58. package/components/overlays.js +9 -8
  59. package/components/picker-column.js +1 -1
  60. package/components/picker.js +54 -77
  61. package/components/popover.js +4 -4
  62. package/components/spinner.js +2 -1
  63. package/dist/cjs/{animation-b4fdf128.js → animation-ab2d3449.js} +4 -3
  64. package/dist/cjs/{app-globals-dd592863.js → app-globals-ddceb1f4.js} +1 -1
  65. package/dist/cjs/{config-4f60b98a.js → config-f6225ae7.js} +3 -1
  66. package/dist/cjs/{data-27cc2c9c.js → data-94e8d392.js} +3 -3
  67. package/dist/cjs/{framework-delegate-11b0ba2f.js → framework-delegate-862d9d00.js} +1 -1
  68. package/dist/cjs/{hardware-back-button-5a99001f.js → hardware-back-button-3d2b1004.js} +7 -8
  69. package/dist/cjs/{helpers-d0dfbb50.js → helpers-8a48fdea.js} +3 -12
  70. package/dist/cjs/{index-f68a486a.js → index-1eff7149.js} +7 -8
  71. package/dist/cjs/{index-9b945a2d.js → index-31b07b9c.js} +2 -2
  72. package/dist/cjs/{index-fd6383b6.js → index-a96d31ae.js} +5 -5
  73. package/dist/cjs/index-cc858e97.js +129 -0
  74. package/dist/cjs/{index-363fe6b2.js → index-dbe01e08.js} +2 -1
  75. package/dist/cjs/index.cjs.js +19 -13
  76. package/dist/cjs/{input-shims-2d27a5be.js → input-shims-415be7ee.js} +3 -5
  77. package/dist/cjs/{input.utils-2f642324.js → input.utils-a7957fd6.js} +3 -3
  78. package/dist/cjs/ion-accordion_2.cjs.entry.js +9 -9
  79. package/dist/cjs/ion-action-sheet.cjs.entry.js +7 -7
  80. package/dist/cjs/ion-alert.cjs.entry.js +12 -12
  81. package/dist/cjs/ion-app_8.cjs.entry.js +23 -23
  82. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -1
  83. package/dist/cjs/ion-back-button.cjs.entry.js +8 -7
  84. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -1
  85. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +3 -2
  86. package/dist/cjs/ion-button_2.cjs.entry.js +8 -8
  87. package/dist/cjs/ion-card_5.cjs.entry.js +3 -2
  88. package/dist/cjs/ion-checkbox.cjs.entry.js +21 -8
  89. package/dist/cjs/ion-chip.cjs.entry.js +2 -1
  90. package/dist/cjs/ion-col_3.cjs.entry.js +2 -1
  91. package/dist/cjs/ion-datetime-button.cjs.entry.js +10 -10
  92. package/dist/cjs/ion-datetime_3.cjs.entry.js +30 -30
  93. package/dist/cjs/ion-fab_3.cjs.entry.js +3 -2
  94. package/dist/cjs/ion-img.cjs.entry.js +3 -2
  95. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +7 -7
  96. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +7 -7
  97. package/dist/cjs/ion-input.cjs.entry.js +8 -8
  98. package/dist/cjs/ion-item-option_3.cjs.entry.js +6 -6
  99. package/dist/cjs/ion-item_8.cjs.entry.js +4 -3
  100. package/dist/cjs/ion-loading.cjs.entry.js +10 -10
  101. package/dist/cjs/ion-menu_3.cjs.entry.js +24 -24
  102. package/dist/cjs/ion-modal.cjs.entry.js +18 -18
  103. package/dist/cjs/ion-nav_2.cjs.entry.js +18 -18
  104. package/dist/cjs/ion-picker-column-option.cjs.entry.js +3 -2
  105. package/dist/cjs/ion-picker-column.cjs.entry.js +3 -2
  106. package/dist/cjs/ion-picker.cjs.entry.js +56 -78
  107. package/dist/cjs/ion-popover.cjs.entry.js +11 -11
  108. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -3
  109. package/dist/cjs/ion-radio_2.cjs.entry.js +3 -2
  110. package/dist/cjs/ion-range.cjs.entry.js +27 -11
  111. package/dist/cjs/ion-refresher_2.cjs.entry.js +14 -14
  112. package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
  113. package/dist/cjs/ion-ripple-effect.cjs.entry.js +2 -1
  114. package/dist/cjs/ion-route_4.cjs.entry.js +11 -10
  115. package/dist/cjs/ion-searchbar.cjs.entry.js +8 -7
  116. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  117. package/dist/cjs/ion-segment_2.cjs.entry.js +23 -53
  118. package/dist/cjs/ion-select-modal.cjs.entry.js +6 -6
  119. package/dist/cjs/ion-select_3.cjs.entry.js +21 -16
  120. package/dist/cjs/ion-spinner.cjs.entry.js +4 -3
  121. package/dist/cjs/ion-split-pane.cjs.entry.js +6 -5
  122. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -3
  123. package/dist/cjs/ion-tab_2.cjs.entry.js +8 -7
  124. package/dist/cjs/ion-text.cjs.entry.js +2 -1
  125. package/dist/cjs/ion-textarea.cjs.entry.js +7 -7
  126. package/dist/cjs/ion-toast.cjs.entry.js +18 -18
  127. package/dist/cjs/ion-toggle.cjs.entry.js +20 -10
  128. package/dist/cjs/{ionic-global-acb665ad.js → ionic-global-6dea5a96.js} +15 -90
  129. package/dist/cjs/ionic.cjs.js +4 -3
  130. package/dist/cjs/{ios.transition-f970164c.js → ios.transition-a131cd4d.js} +4 -5
  131. package/dist/cjs/loader.cjs.js +4 -3
  132. package/dist/cjs/{md.transition-aa8820dd.js → md.transition-e018ebe5.js} +4 -5
  133. package/dist/cjs/{notch-controller-58d2e557.js → notch-controller-09b7f358.js} +1 -1
  134. package/dist/cjs/{overlays-737576a2.js → overlays-4c291a05.js} +21 -20
  135. package/dist/cjs/{status-tap-08d1ac81.js → status-tap-f1acefac.js} +3 -4
  136. package/dist/cjs/{swipe-back-5c0003bd.js → swipe-back-442ca3d7.js} +2 -1
  137. package/dist/collection/components/accordion-group/accordion-group.js +3 -3
  138. package/dist/collection/components/alert/alert.js +4 -3
  139. package/dist/collection/components/app/app.js +2 -2
  140. package/dist/collection/components/button/button.js +5 -5
  141. package/dist/collection/components/checkbox/checkbox.ios.css +5 -16
  142. package/dist/collection/components/checkbox/checkbox.js +16 -4
  143. package/dist/collection/components/checkbox/checkbox.md.css +5 -16
  144. package/dist/collection/components/datetime/datetime.js +14 -14
  145. package/dist/collection/components/datetime/utils/comparison.js +1 -1
  146. package/dist/collection/components/datetime/utils/parse.js +1 -1
  147. package/dist/collection/components/datetime/utils/state.js +1 -1
  148. package/dist/collection/components/datetime/utils/validate.js +4 -4
  149. package/dist/collection/components/datetime-button/datetime-button.js +6 -6
  150. package/dist/collection/components/input/input.js +3 -3
  151. package/dist/collection/components/input/input.utils.js +1 -1
  152. package/dist/collection/components/input-password-toggle/input-password-toggle.js +5 -5
  153. package/dist/collection/components/item-sliding/item-sliding.js +3 -2
  154. package/dist/collection/components/menu/menu.js +5 -4
  155. package/dist/collection/components/modal/modal.js +7 -7
  156. package/dist/collection/components/nav/nav.js +3 -3
  157. package/dist/collection/components/picker/picker.js +54 -77
  158. package/dist/collection/components/picker-legacy/picker.js +3 -3
  159. package/dist/collection/components/popover/popover.js +3 -3
  160. package/dist/collection/components/range/range.js +23 -7
  161. package/dist/collection/components/refresher/refresher.js +3 -2
  162. package/dist/collection/components/router/router.js +8 -7
  163. package/dist/collection/components/router/utils/dom.js +2 -1
  164. package/dist/collection/components/router-outlet/router-outlet.js +3 -2
  165. package/dist/collection/components/segment-button/segment-button.js +22 -52
  166. package/dist/collection/components/segment-content/segment-content.css +9 -0
  167. package/dist/collection/components/select/select.ios.css +5 -3
  168. package/dist/collection/components/select/select.js +13 -6
  169. package/dist/collection/components/select/select.md.css +55 -16
  170. package/dist/collection/components/split-pane/split-pane.js +5 -4
  171. package/dist/collection/components/tab/tab.js +5 -4
  172. package/dist/collection/components/tabs/tabs.js +3 -2
  173. package/dist/collection/components/textarea/textarea.js +2 -2
  174. package/dist/collection/components/toast/animations/utils.js +1 -1
  175. package/dist/collection/components/toast/toast.js +8 -8
  176. package/dist/collection/components/toggle/toggle.ios.css +5 -17
  177. package/dist/collection/components/toggle/toggle.js +14 -5
  178. package/dist/collection/components/toggle/toggle.md.css +5 -17
  179. package/dist/collection/global/ionic-global.js +2 -1
  180. package/dist/collection/index.js +1 -0
  181. package/dist/collection/utils/animation/animation.js +2 -1
  182. package/dist/collection/utils/hardware-back-button.js +2 -1
  183. package/dist/collection/utils/helpers.js +2 -11
  184. package/dist/collection/utils/logging/index.js +10 -4
  185. package/dist/collection/utils/overlays.js +7 -6
  186. package/dist/collection/utils/sanitization/index.js +2 -1
  187. package/dist/docs.json +1 -1
  188. package/dist/esm/{animation-eab5a4ca.js → animation-8b25e105.js} +2 -1
  189. package/dist/esm/{app-globals-7b6cbf1a.js → app-globals-dbdbb3df.js} +1 -1
  190. package/dist/esm/{config-49c88215.js → config-9898ed97.js} +3 -1
  191. package/dist/esm/{data-174ad5e0.js → data-0d7ea6eb.js} +3 -3
  192. package/dist/esm/{framework-delegate-c7d92b77.js → framework-delegate-56b467ad.js} +1 -1
  193. package/dist/esm/{hardware-back-button-864101a3.js → hardware-back-button-a7eb8233.js} +2 -3
  194. package/dist/esm/{helpers-e48b0397.js → helpers-d94bc8ad.js} +4 -12
  195. package/dist/esm/{index-c63afbe6.js → index-18f31305.js} +5 -5
  196. package/dist/esm/{index-a313df53.js → index-68c0d151.js} +4 -5
  197. package/dist/esm/{index-933ca126.js → index-9a17db3d.js} +2 -2
  198. package/dist/esm/{index-8222b29f.js → index-be190feb.js} +2 -1
  199. package/dist/esm/index-cfd9c1f2.js +121 -0
  200. package/dist/esm/index.js +12 -12
  201. package/dist/esm/{input-shims-3070628a.js → input-shims-279903e2.js} +3 -5
  202. package/dist/esm/{input.utils-926c04a8.js → input.utils-40504d6d.js} +3 -3
  203. package/dist/esm/ion-accordion_2.entry.js +6 -6
  204. package/dist/esm/ion-action-sheet.entry.js +7 -7
  205. package/dist/esm/ion-alert.entry.js +11 -11
  206. package/dist/esm/ion-app_8.entry.js +16 -16
  207. package/dist/esm/ion-avatar_3.entry.js +2 -1
  208. package/dist/esm/ion-back-button.entry.js +3 -2
  209. package/dist/esm/ion-backdrop.entry.js +2 -1
  210. package/dist/esm/ion-breadcrumb_2.entry.js +3 -2
  211. package/dist/esm/ion-button_2.entry.js +8 -8
  212. package/dist/esm/ion-card_5.entry.js +3 -2
  213. package/dist/esm/ion-checkbox.entry.js +21 -8
  214. package/dist/esm/ion-chip.entry.js +2 -1
  215. package/dist/esm/ion-col_3.entry.js +2 -1
  216. package/dist/esm/ion-datetime-button.entry.js +10 -10
  217. package/dist/esm/ion-datetime_3.entry.js +30 -30
  218. package/dist/esm/ion-fab_3.entry.js +3 -2
  219. package/dist/esm/ion-img.entry.js +3 -2
  220. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  221. package/dist/esm/ion-input-password-toggle.entry.js +7 -7
  222. package/dist/esm/ion-input.entry.js +8 -8
  223. package/dist/esm/ion-item-option_3.entry.js +6 -6
  224. package/dist/esm/ion-item_8.entry.js +3 -2
  225. package/dist/esm/ion-loading.entry.js +8 -8
  226. package/dist/esm/ion-menu_3.entry.js +12 -12
  227. package/dist/esm/ion-modal.entry.js +16 -16
  228. package/dist/esm/ion-nav_2.entry.js +8 -8
  229. package/dist/esm/ion-picker-column-option.entry.js +3 -2
  230. package/dist/esm/ion-picker-column.entry.js +3 -2
  231. package/dist/esm/ion-picker.entry.js +56 -78
  232. package/dist/esm/ion-popover.entry.js +11 -11
  233. package/dist/esm/ion-progress-bar.entry.js +3 -2
  234. package/dist/esm/ion-radio_2.entry.js +3 -2
  235. package/dist/esm/ion-range.entry.js +27 -11
  236. package/dist/esm/ion-refresher_2.entry.js +8 -8
  237. package/dist/esm/ion-reorder_2.entry.js +4 -4
  238. package/dist/esm/ion-ripple-effect.entry.js +2 -1
  239. package/dist/esm/ion-route_4.entry.js +11 -10
  240. package/dist/esm/ion-searchbar.entry.js +3 -2
  241. package/dist/esm/ion-segment-content.entry.js +1 -1
  242. package/dist/esm/ion-segment_2.entry.js +23 -53
  243. package/dist/esm/ion-select-modal.entry.js +6 -6
  244. package/dist/esm/ion-select_3.entry.js +19 -14
  245. package/dist/esm/ion-spinner.entry.js +2 -1
  246. package/dist/esm/ion-split-pane.entry.js +6 -5
  247. package/dist/esm/ion-tab-bar_2.entry.js +3 -2
  248. package/dist/esm/ion-tab_2.entry.js +8 -7
  249. package/dist/esm/ion-text.entry.js +2 -1
  250. package/dist/esm/ion-textarea.entry.js +7 -7
  251. package/dist/esm/ion-toast.entry.js +16 -16
  252. package/dist/esm/ion-toggle.entry.js +19 -9
  253. package/dist/esm/{ionic-global-ca86cf32.js → ionic-global-b26f573e.js} +3 -77
  254. package/dist/esm/ionic.js +4 -3
  255. package/dist/esm/{ios.transition-5fe4d6c8.js → ios.transition-4047cb68.js} +4 -5
  256. package/dist/esm/loader.js +4 -3
  257. package/dist/esm/{md.transition-3d0d3730.js → md.transition-30ce8d1b.js} +4 -5
  258. package/dist/esm/{notch-controller-381a5334.js → notch-controller-1a1f7183.js} +1 -1
  259. package/dist/esm/{overlays-7579a420.js → overlays-d99dcb0a.js} +11 -10
  260. package/dist/esm/{status-tap-6367b913.js → status-tap-42a8af65.js} +3 -4
  261. package/dist/esm/{swipe-back-326faa1c.js → swipe-back-04123e7c.js} +2 -1
  262. package/dist/esm-es5/animation-8b25e105.js +4 -0
  263. package/dist/esm-es5/app-globals-dbdbb3df.js +4 -0
  264. package/dist/esm-es5/config-9898ed97.js +4 -0
  265. package/dist/esm-es5/data-0d7ea6eb.js +4 -0
  266. package/dist/esm-es5/{framework-delegate-c7d92b77.js → framework-delegate-56b467ad.js} +1 -1
  267. package/dist/esm-es5/hardware-back-button-a7eb8233.js +4 -0
  268. package/dist/esm-es5/helpers-d94bc8ad.js +4 -0
  269. package/dist/esm-es5/{index-c63afbe6.js → index-18f31305.js} +1 -1
  270. package/dist/esm-es5/index-68c0d151.js +4 -0
  271. package/dist/esm-es5/{index-933ca126.js → index-9a17db3d.js} +1 -1
  272. package/dist/esm-es5/index-be190feb.js +4 -0
  273. package/dist/esm-es5/index-cfd9c1f2.js +5 -0
  274. package/dist/esm-es5/index.js +1 -1
  275. package/dist/esm-es5/input-shims-279903e2.js +4 -0
  276. package/dist/esm-es5/input.utils-40504d6d.js +4 -0
  277. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  278. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  279. package/dist/esm-es5/ion-alert.entry.js +1 -1
  280. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  281. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  282. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  283. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  284. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  285. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  286. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  287. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  288. package/dist/esm-es5/ion-chip.entry.js +1 -1
  289. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  290. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  291. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  292. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  293. package/dist/esm-es5/ion-img.entry.js +1 -1
  294. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  295. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  296. package/dist/esm-es5/ion-input.entry.js +1 -1
  297. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  298. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  299. package/dist/esm-es5/ion-loading.entry.js +1 -1
  300. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  301. package/dist/esm-es5/ion-modal.entry.js +1 -1
  302. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  303. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  304. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  305. package/dist/esm-es5/ion-picker.entry.js +1 -1
  306. package/dist/esm-es5/ion-popover.entry.js +1 -1
  307. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  308. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  309. package/dist/esm-es5/ion-range.entry.js +1 -1
  310. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  311. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  312. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  313. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  314. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  315. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  316. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  317. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  318. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  319. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  320. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  321. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  322. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  323. package/dist/esm-es5/ion-text.entry.js +1 -1
  324. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  325. package/dist/esm-es5/ion-toast.entry.js +1 -1
  326. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  327. package/dist/esm-es5/ionic-global-b26f573e.js +4 -0
  328. package/dist/esm-es5/ionic.js +1 -1
  329. package/dist/esm-es5/ios.transition-4047cb68.js +4 -0
  330. package/dist/esm-es5/loader.js +1 -1
  331. package/dist/esm-es5/md.transition-30ce8d1b.js +4 -0
  332. package/dist/esm-es5/{notch-controller-381a5334.js → notch-controller-1a1f7183.js} +1 -1
  333. package/dist/esm-es5/overlays-d99dcb0a.js +4 -0
  334. package/dist/esm-es5/status-tap-42a8af65.js +4 -0
  335. package/dist/esm-es5/swipe-back-04123e7c.js +4 -0
  336. package/dist/ionic/index.esm.js +1 -1
  337. package/dist/ionic/ionic.esm.js +1 -1
  338. package/dist/ionic/ionic.js +1 -1
  339. package/dist/ionic/p-00023f5a.system.js +4 -0
  340. package/dist/ionic/p-03480b95.system.entry.js +4 -0
  341. package/dist/ionic/p-08cef0b1.entry.js +4 -0
  342. package/dist/ionic/p-0af640d6.entry.js +4 -0
  343. package/dist/ionic/{p-e0a05506.js → p-0f5e6225.js} +1 -1
  344. package/dist/ionic/p-105b2e8b.entry.js +4 -0
  345. package/dist/ionic/p-10a1bddc.js +4 -0
  346. package/dist/ionic/p-117d0013.system.entry.js +4 -0
  347. package/dist/ionic/p-12193821.system.js +4 -0
  348. package/dist/ionic/p-12830298.system.entry.js +4 -0
  349. package/dist/ionic/p-14154301.system.entry.js +4 -0
  350. package/dist/ionic/{p-e0c43e11.system.entry.js → p-1706b406.system.entry.js} +1 -1
  351. package/dist/ionic/p-17e21141.js +4 -0
  352. package/dist/ionic/p-19494658.system.entry.js +4 -0
  353. package/dist/ionic/{p-9a2ff5ea.system.js → p-1966a13c.system.js} +1 -1
  354. package/dist/ionic/p-1974d5b2.system.js +4 -0
  355. package/dist/ionic/p-1a7df1c3.system.js +4 -0
  356. package/dist/ionic/p-1a81ac09.system.js +4 -0
  357. package/dist/ionic/p-1b9c59ab.js +4 -0
  358. package/dist/ionic/p-1cb02e44.entry.js +4 -0
  359. package/dist/ionic/{p-77991411.system.js → p-1d307396.system.js} +1 -1
  360. package/dist/ionic/p-1f871cf8.entry.js +4 -0
  361. package/dist/ionic/p-200fc491.js +4 -0
  362. package/dist/ionic/p-2233344a.system.js +4 -0
  363. package/dist/ionic/p-2469240b.entry.js +4 -0
  364. package/dist/ionic/{p-e0c0218f.system.entry.js → p-24a6c8a3.system.entry.js} +1 -1
  365. package/dist/ionic/p-257fb777.entry.js +4 -0
  366. package/dist/ionic/{p-e7309bfa.js → p-25b10f81.js} +1 -1
  367. package/dist/ionic/p-2bb55ebc.js +4 -0
  368. package/dist/ionic/p-2bff0e69.system.entry.js +4 -0
  369. package/dist/ionic/{p-606887b7.system.entry.js → p-2fa37fdc.system.entry.js} +1 -1
  370. package/dist/ionic/p-31dc303d.entry.js +4 -0
  371. package/dist/ionic/p-3535d6b5.entry.js +4 -0
  372. package/dist/ionic/{p-4470f87b.system.entry.js → p-35cdfd77.system.entry.js} +1 -1
  373. package/dist/ionic/p-393ffcc2.entry.js +4 -0
  374. package/dist/ionic/p-39fa7dd1.system.entry.js +4 -0
  375. package/dist/ionic/p-3a30f31b.system.entry.js +4 -0
  376. package/dist/ionic/p-42f08b26.system.entry.js +4 -0
  377. package/dist/ionic/p-481e0885.entry.js +4 -0
  378. package/dist/ionic/p-4a5be299.system.entry.js +4 -0
  379. package/dist/ionic/p-4c667fce.js +4 -0
  380. package/dist/ionic/p-4cf4172e.entry.js +4 -0
  381. package/dist/ionic/p-4da92dac.entry.js +4 -0
  382. package/dist/ionic/p-4ec0e961.system.entry.js +4 -0
  383. package/dist/ionic/{p-3479f51b.system.js → p-4ed5db19.system.js} +1 -1
  384. package/dist/ionic/p-50cb2e8b.system.entry.js +4 -0
  385. package/dist/ionic/p-57957c0f.entry.js +4 -0
  386. package/dist/ionic/p-57e55ecb.system.js +4 -0
  387. package/dist/ionic/p-5b67b447.js +4 -0
  388. package/dist/ionic/p-5c9feddc.system.entry.js +4 -0
  389. package/dist/ionic/p-5edf78c5.system.entry.js +4 -0
  390. package/dist/ionic/p-612096e6.system.entry.js +4 -0
  391. package/dist/ionic/p-6201c4ba.entry.js +4 -0
  392. package/dist/ionic/p-625248d0.system.js +4 -0
  393. package/dist/ionic/p-663413be.system.js +4 -0
  394. package/dist/ionic/p-6636a436.js +4 -0
  395. package/dist/ionic/p-66df5468.system.entry.js +4 -0
  396. package/dist/ionic/p-67077d48.entry.js +4 -0
  397. package/dist/ionic/p-67cacd6d.entry.js +4 -0
  398. package/dist/ionic/p-6835ebdd.system.entry.js +4 -0
  399. package/dist/ionic/p-6b8530f5.system.entry.js +4 -0
  400. package/dist/ionic/{p-ace2d2be.entry.js → p-6c474e87.entry.js} +1 -1
  401. package/dist/ionic/p-6dd86ff5.system.entry.js +4 -0
  402. package/dist/ionic/p-6ec0c94a.entry.js +4 -0
  403. package/dist/ionic/p-6f832afe.system.entry.js +4 -0
  404. package/dist/ionic/p-707408c5.system.entry.js +4 -0
  405. package/dist/ionic/p-712c0131.entry.js +4 -0
  406. package/dist/ionic/{p-c8bf9ba7.entry.js → p-721f43f9.entry.js} +1 -1
  407. package/dist/ionic/p-7445a2e5.system.js +4 -0
  408. package/dist/ionic/p-7611ede3.system.entry.js +4 -0
  409. package/dist/ionic/p-781e2dbb.system.js +4 -0
  410. package/dist/ionic/p-7b8c12c3.entry.js +4 -0
  411. package/dist/ionic/p-7c5c7ae1.system.entry.js +4 -0
  412. package/dist/ionic/p-7e3e6ed2.entry.js +4 -0
  413. package/dist/ionic/{p-1a9613bf.system.entry.js → p-7ffedf77.system.entry.js} +1 -1
  414. package/dist/ionic/p-809483ac.js +4 -0
  415. package/dist/ionic/{p-54893ae3.entry.js → p-81904a80.entry.js} +1 -1
  416. package/dist/ionic/{p-a6625de8.system.js → p-84096b45.system.js} +1 -1
  417. package/dist/ionic/p-8450f761.entry.js +4 -0
  418. package/dist/ionic/p-8460d95a.entry.js +4 -0
  419. package/dist/ionic/p-85b01465.js +4 -0
  420. package/dist/ionic/p-865fe95c.entry.js +4 -0
  421. package/dist/ionic/p-8674af94.entry.js +4 -0
  422. package/dist/ionic/p-890a4ee2.entry.js +4 -0
  423. package/dist/ionic/p-891553d8.entry.js +4 -0
  424. package/dist/ionic/p-8b050e84.system.js +4 -0
  425. package/dist/ionic/{p-22bc235f.js → p-8d2d39d0.js} +1 -1
  426. package/dist/ionic/p-8dacf4e2.entry.js +4 -0
  427. package/dist/ionic/p-94551927.js +4 -0
  428. package/dist/ionic/p-95001a19.js +4 -0
  429. package/dist/ionic/p-98fd942b.system.entry.js +4 -0
  430. package/dist/ionic/p-9e753482.system.entry.js +4 -0
  431. package/dist/ionic/p-a0fd2fe5.system.entry.js +4 -0
  432. package/dist/ionic/p-a2c6a9c8.entry.js +4 -0
  433. package/dist/ionic/p-a2dd5b69.system.entry.js +4 -0
  434. package/dist/ionic/p-a5dbe0ff.system.entry.js +4 -0
  435. package/dist/ionic/p-a78fa846.entry.js +4 -0
  436. package/dist/ionic/p-a835aca8.entry.js +4 -0
  437. package/dist/ionic/p-a83e3290.system.js +4 -0
  438. package/dist/ionic/{p-e00b72ce.js → p-aded71ec.js} +1 -1
  439. package/dist/ionic/p-ae039072.entry.js +4 -0
  440. package/dist/ionic/p-aebfab05.system.entry.js +4 -0
  441. package/dist/ionic/{p-4493c1ac.entry.js → p-b22a021d.entry.js} +1 -1
  442. package/dist/ionic/p-b2e7eda0.system.entry.js +4 -0
  443. package/dist/ionic/p-b445ff65.entry.js +4 -0
  444. package/dist/ionic/{p-4d0190ad.system.entry.js → p-b4d17da0.system.entry.js} +1 -1
  445. package/dist/ionic/p-b5432d15.entry.js +4 -0
  446. package/dist/ionic/{p-c8402249.js → p-b6d324f0.js} +1 -1
  447. package/dist/ionic/p-b7b1d91a.js +4 -0
  448. package/dist/ionic/{p-8deac7df.system.entry.js → p-b8050298.system.entry.js} +1 -1
  449. package/dist/ionic/p-b9c793d4.entry.js +4 -0
  450. package/dist/ionic/p-bf184319.system.entry.js +4 -0
  451. package/dist/ionic/{p-4888cb66.system.entry.js → p-bfb763d0.system.entry.js} +1 -1
  452. package/dist/ionic/p-c16443a8.system.js +4 -0
  453. package/dist/ionic/{p-9df36075.system.entry.js → p-c1b7d311.system.entry.js} +1 -1
  454. package/dist/ionic/p-c2160d8c.entry.js +4 -0
  455. package/dist/ionic/{p-d8c9d5ac.system.entry.js → p-c26c5c20.system.entry.js} +1 -1
  456. package/dist/ionic/p-c5b77054.entry.js +4 -0
  457. package/dist/ionic/p-c5bfa3e9.entry.js +4 -0
  458. package/dist/ionic/p-c6879aa4.system.entry.js +4 -0
  459. package/dist/ionic/p-cad82569.entry.js +4 -0
  460. package/dist/ionic/p-d16fab3f.entry.js +4 -0
  461. package/dist/ionic/p-d2c3524b.system.entry.js +4 -0
  462. package/dist/ionic/p-d382f09c.system.js +4 -0
  463. package/dist/ionic/p-d984c1ab.system.entry.js +4 -0
  464. package/dist/ionic/p-da6247e5.entry.js +4 -0
  465. package/dist/ionic/p-dabe3bd4.js +4 -0
  466. package/dist/ionic/p-df069a0d.entry.js +4 -0
  467. package/dist/ionic/p-e6068998.system.entry.js +4 -0
  468. package/dist/ionic/p-e727e32d.system.entry.js +4 -0
  469. package/dist/ionic/p-e8245753.entry.js +4 -0
  470. package/dist/ionic/p-e887b6a9.system.js +4 -0
  471. package/dist/ionic/p-ed005d9c.js +4 -0
  472. package/dist/ionic/{p-f554845e.js → p-f08a92cc.js} +1 -1
  473. package/dist/ionic/p-f08dfb19.entry.js +4 -0
  474. package/dist/ionic/p-f0c9f8e3.system.entry.js +4 -0
  475. package/dist/ionic/p-f0ef39ab.entry.js +4 -0
  476. package/dist/ionic/{p-c8331397.system.entry.js → p-f22490a7.system.entry.js} +1 -1
  477. package/dist/ionic/{p-5eb6f582.system.js → p-f6e7d104.system.js} +1 -1
  478. package/dist/ionic/p-f725bf9e.system.js +4 -0
  479. package/dist/ionic/{p-2fa5a4b1.entry.js → p-f8c0c707.entry.js} +1 -1
  480. package/dist/ionic/p-f9a87db2.system.entry.js +4 -0
  481. package/dist/ionic/{p-44e168f3.system.js → p-fa3f4b96.system.js} +1 -1
  482. package/dist/ionic/p-fe063952.system.entry.js +4 -0
  483. package/dist/types/components/checkbox/checkbox.d.ts +2 -0
  484. package/dist/types/components/input/input.d.ts +8 -0
  485. package/dist/types/components/modal/modal-interface.d.ts +1 -0
  486. package/dist/types/components/picker/picker.d.ts +8 -0
  487. package/dist/types/components/range/range.d.ts +9 -1
  488. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  489. package/dist/types/components/select/select.d.ts +9 -0
  490. package/dist/types/components/textarea/textarea.d.ts +8 -0
  491. package/dist/types/components/toggle/toggle.d.ts +2 -0
  492. package/dist/types/index.d.ts +1 -0
  493. package/dist/types/utils/helpers.d.ts +0 -1
  494. package/dist/types/utils/logging/index.d.ts +1 -1
  495. package/hydrate/index.js +324 -338
  496. package/hydrate/index.mjs +324 -338
  497. package/package.json +2 -2
  498. package/dist/cjs/index-48b2a28e.js +0 -46
  499. package/dist/esm/index-738d7504.js +0 -42
  500. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  501. package/dist/esm-es5/app-globals-7b6cbf1a.js +0 -4
  502. package/dist/esm-es5/config-49c88215.js +0 -4
  503. package/dist/esm-es5/data-174ad5e0.js +0 -4
  504. package/dist/esm-es5/hardware-back-button-864101a3.js +0 -4
  505. package/dist/esm-es5/helpers-e48b0397.js +0 -4
  506. package/dist/esm-es5/index-738d7504.js +0 -4
  507. package/dist/esm-es5/index-8222b29f.js +0 -4
  508. package/dist/esm-es5/index-a313df53.js +0 -4
  509. package/dist/esm-es5/input-shims-3070628a.js +0 -4
  510. package/dist/esm-es5/input.utils-926c04a8.js +0 -4
  511. package/dist/esm-es5/ionic-global-ca86cf32.js +0 -4
  512. package/dist/esm-es5/ios.transition-5fe4d6c8.js +0 -4
  513. package/dist/esm-es5/md.transition-3d0d3730.js +0 -4
  514. package/dist/esm-es5/overlays-7579a420.js +0 -4
  515. package/dist/esm-es5/status-tap-6367b913.js +0 -4
  516. package/dist/esm-es5/swipe-back-326faa1c.js +0 -4
  517. package/dist/ionic/p-023e8017.system.entry.js +0 -4
  518. package/dist/ionic/p-042d5353.system.js +0 -4
  519. package/dist/ionic/p-060e4551.js +0 -4
  520. package/dist/ionic/p-0749768d.entry.js +0 -4
  521. package/dist/ionic/p-094c82d7.entry.js +0 -4
  522. package/dist/ionic/p-0adb6909.system.entry.js +0 -4
  523. package/dist/ionic/p-0be8a0b5.entry.js +0 -4
  524. package/dist/ionic/p-0bedc891.system.entry.js +0 -4
  525. package/dist/ionic/p-0c9b8240.system.entry.js +0 -4
  526. package/dist/ionic/p-0ec5b7cf.system.js +0 -4
  527. package/dist/ionic/p-1164ff6b.system.entry.js +0 -4
  528. package/dist/ionic/p-13886789.entry.js +0 -4
  529. package/dist/ionic/p-143ff664.system.entry.js +0 -4
  530. package/dist/ionic/p-18f9b6d5.entry.js +0 -4
  531. package/dist/ionic/p-19c32a76.entry.js +0 -4
  532. package/dist/ionic/p-1bf5ec17.system.js +0 -4
  533. package/dist/ionic/p-1c1d781d.system.entry.js +0 -4
  534. package/dist/ionic/p-1d2844a5.system.entry.js +0 -4
  535. package/dist/ionic/p-1d98a7f1.entry.js +0 -4
  536. package/dist/ionic/p-1f837356.entry.js +0 -4
  537. package/dist/ionic/p-2027221d.js +0 -4
  538. package/dist/ionic/p-24ae7b33.system.js +0 -4
  539. package/dist/ionic/p-294271c7.system.js +0 -4
  540. package/dist/ionic/p-297d6806.system.js +0 -4
  541. package/dist/ionic/p-29a5b4e4.entry.js +0 -4
  542. package/dist/ionic/p-2ab4a324.system.entry.js +0 -4
  543. package/dist/ionic/p-2b59470f.system.entry.js +0 -4
  544. package/dist/ionic/p-2ee9a2c6.entry.js +0 -4
  545. package/dist/ionic/p-35f14792.entry.js +0 -4
  546. package/dist/ionic/p-37a438ad.system.entry.js +0 -4
  547. package/dist/ionic/p-3af7b907.entry.js +0 -4
  548. package/dist/ionic/p-3bd5fedc.system.js +0 -4
  549. package/dist/ionic/p-3be7cdeb.system.entry.js +0 -4
  550. package/dist/ionic/p-3e86b4fa.system.js +0 -4
  551. package/dist/ionic/p-3f4327f7.js +0 -4
  552. package/dist/ionic/p-41d5544e.js +0 -4
  553. package/dist/ionic/p-42f6e75c.entry.js +0 -4
  554. package/dist/ionic/p-4630688e.system.entry.js +0 -4
  555. package/dist/ionic/p-472c7e08.system.entry.js +0 -4
  556. package/dist/ionic/p-491de063.system.entry.js +0 -4
  557. package/dist/ionic/p-49cb79a1.system.entry.js +0 -4
  558. package/dist/ionic/p-4c44d04c.js +0 -4
  559. package/dist/ionic/p-4c94580e.js +0 -4
  560. package/dist/ionic/p-50f38461.entry.js +0 -4
  561. package/dist/ionic/p-51c363e7.system.js +0 -4
  562. package/dist/ionic/p-524ad57e.system.entry.js +0 -4
  563. package/dist/ionic/p-54e9620f.js +0 -4
  564. package/dist/ionic/p-58c482af.entry.js +0 -4
  565. package/dist/ionic/p-597ff9af.js +0 -4
  566. package/dist/ionic/p-5f4ff20a.entry.js +0 -4
  567. package/dist/ionic/p-5f8cd560.entry.js +0 -4
  568. package/dist/ionic/p-61e794fb.entry.js +0 -4
  569. package/dist/ionic/p-67163d4a.entry.js +0 -4
  570. package/dist/ionic/p-6797c66e.system.js +0 -4
  571. package/dist/ionic/p-6bb846d3.entry.js +0 -4
  572. package/dist/ionic/p-6e24cf82.entry.js +0 -4
  573. package/dist/ionic/p-72e6a9c6.entry.js +0 -4
  574. package/dist/ionic/p-747f9517.entry.js +0 -4
  575. package/dist/ionic/p-7cc33a9a.system.js +0 -4
  576. package/dist/ionic/p-7e3b5638.system.entry.js +0 -4
  577. package/dist/ionic/p-7f39653f.entry.js +0 -4
  578. package/dist/ionic/p-7ff4f502.entry.js +0 -4
  579. package/dist/ionic/p-81474833.system.entry.js +0 -4
  580. package/dist/ionic/p-838cc359.entry.js +0 -4
  581. package/dist/ionic/p-85f6070f.entry.js +0 -4
  582. package/dist/ionic/p-888d383b.system.entry.js +0 -4
  583. package/dist/ionic/p-8b1c1fd7.entry.js +0 -4
  584. package/dist/ionic/p-8fc426e2.entry.js +0 -4
  585. package/dist/ionic/p-9146695e.system.js +0 -4
  586. package/dist/ionic/p-959cf042.system.entry.js +0 -4
  587. package/dist/ionic/p-96450929.system.entry.js +0 -4
  588. package/dist/ionic/p-9a5420dd.js +0 -4
  589. package/dist/ionic/p-9af7f110.js +0 -4
  590. package/dist/ionic/p-9b069739.entry.js +0 -4
  591. package/dist/ionic/p-9e51f822.js +0 -4
  592. package/dist/ionic/p-a520973b.entry.js +0 -4
  593. package/dist/ionic/p-a587b2ae.system.js +0 -4
  594. package/dist/ionic/p-a63b345e.system.entry.js +0 -4
  595. package/dist/ionic/p-a6df5168.system.entry.js +0 -4
  596. package/dist/ionic/p-a9f2c0a7.entry.js +0 -4
  597. package/dist/ionic/p-ac58d726.system.entry.js +0 -4
  598. package/dist/ionic/p-ada878ce.entry.js +0 -4
  599. package/dist/ionic/p-b055d618.entry.js +0 -4
  600. package/dist/ionic/p-b0e53bc7.entry.js +0 -4
  601. package/dist/ionic/p-b2296998.system.entry.js +0 -4
  602. package/dist/ionic/p-b2ee0628.system.entry.js +0 -4
  603. package/dist/ionic/p-b6174297.entry.js +0 -4
  604. package/dist/ionic/p-b85d199c.entry.js +0 -4
  605. package/dist/ionic/p-b9ea58ef.js +0 -4
  606. package/dist/ionic/p-b9eb1465.system.entry.js +0 -4
  607. package/dist/ionic/p-b9f2e353.entry.js +0 -4
  608. package/dist/ionic/p-bbc6db8c.entry.js +0 -4
  609. package/dist/ionic/p-bf64af90.system.js +0 -4
  610. package/dist/ionic/p-c005cc37.entry.js +0 -4
  611. package/dist/ionic/p-c25c0ba4.entry.js +0 -4
  612. package/dist/ionic/p-c5b5f44a.entry.js +0 -4
  613. package/dist/ionic/p-c6a20407.system.entry.js +0 -4
  614. package/dist/ionic/p-c7e16491.js +0 -4
  615. package/dist/ionic/p-ceaea4ce.js +0 -4
  616. package/dist/ionic/p-d37fdc68.system.entry.js +0 -4
  617. package/dist/ionic/p-d7032956.system.js +0 -4
  618. package/dist/ionic/p-daf1e8ec.system.entry.js +0 -4
  619. package/dist/ionic/p-def7a8bd.system.entry.js +0 -4
  620. package/dist/ionic/p-e4683bfd.system.entry.js +0 -4
  621. package/dist/ionic/p-e5708e5d.system.entry.js +0 -4
  622. package/dist/ionic/p-e5c27d9f.system.entry.js +0 -4
  623. package/dist/ionic/p-ed768b77.entry.js +0 -4
  624. package/dist/ionic/p-eec4b772.entry.js +0 -4
  625. package/dist/ionic/p-eeee3990.system.entry.js +0 -4
  626. package/dist/ionic/p-efa0f3f5.entry.js +0 -4
  627. package/dist/ionic/p-f02e9382.system.entry.js +0 -4
  628. package/dist/ionic/p-f201b53a.system.js +0 -4
  629. package/dist/ionic/p-f233f1e0.system.js +0 -4
  630. package/dist/ionic/p-f7ce606e.js +0 -4
  631. package/dist/ionic/p-f94b2f2f.system.entry.js +0 -4
  632. package/dist/ionic/p-ff4a1ba0.system.entry.js +0 -4
@@ -321,13 +321,59 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
321
321
  * or trailing zeros when looking at the item text.
322
322
  */
323
323
  this.searchColumn = (colEl, value, zeroBehavior = 'start') => {
324
+ if (!value) {
325
+ return false;
326
+ }
324
327
  const behavior = zeroBehavior === 'start' ? /^0+/ : /0$/;
328
+ value = value.replace(behavior, '');
325
329
  const option = Array.from(colEl.querySelectorAll('ion-picker-column-option')).find((el) => {
326
330
  return el.disabled !== true && el.textContent.replace(behavior, '') === value;
327
331
  });
328
332
  if (option) {
329
333
  colEl.setValue(option.value);
330
334
  }
335
+ return !!option;
336
+ };
337
+ /**
338
+ * Attempts to intelligently search the first and second
339
+ * column as if they're number columns for the provided numbers
340
+ * where the first two numbers are the first column
341
+ * and the last 2 are the last column. Tries to allow for the first
342
+ * number to be ignored for situations where typos occurred.
343
+ */
344
+ this.multiColumnSearch = (firstColumn, secondColumn, input) => {
345
+ if (input.length === 0) {
346
+ return;
347
+ }
348
+ const inputArray = input.split('');
349
+ const hourValue = inputArray.slice(0, 2).join('');
350
+ // Try to find a match for the first two digits in the first column
351
+ const foundHour = this.searchColumn(firstColumn, hourValue);
352
+ // If we have more than 2 digits and found a match for hours,
353
+ // use the remaining digits for the second column (minutes)
354
+ if (inputArray.length > 2 && foundHour) {
355
+ const minuteValue = inputArray.slice(2, 4).join('');
356
+ this.searchColumn(secondColumn, minuteValue);
357
+ }
358
+ // If we couldn't find a match for the two-digit hour, try single digit approaches
359
+ else if (!foundHour && inputArray.length >= 1) {
360
+ // First try the first digit as a single-digit hour
361
+ let singleDigitHour = inputArray[0];
362
+ let singleDigitFound = this.searchColumn(firstColumn, singleDigitHour);
363
+ // If that didn't work, try the second digit as a single-digit hour
364
+ // (handles case where user made a typo in the first digit, or they typed over themselves)
365
+ if (!singleDigitFound) {
366
+ inputArray.shift();
367
+ singleDigitHour = inputArray[0];
368
+ singleDigitFound = this.searchColumn(firstColumn, singleDigitHour);
369
+ }
370
+ // If we found a single-digit hour and have remaining digits,
371
+ // use up to 2 of the remaining digits for the second column
372
+ if (singleDigitFound && inputArray.length > 1) {
373
+ const remainingDigits = inputArray.slice(1, 3).join('');
374
+ this.searchColumn(secondColumn, remainingDigits);
375
+ }
376
+ }
331
377
  };
332
378
  this.selectMultiColumn = () => {
333
379
  const { inputEl, el } = this;
@@ -338,82 +384,13 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
338
384
  const firstColumn = numericPickers[0];
339
385
  const lastColumn = numericPickers[1];
340
386
  let value = inputEl.value;
341
- let minuteValue;
342
- switch (value.length) {
343
- case 1:
344
- this.searchColumn(firstColumn, value);
345
- break;
346
- case 2:
347
- /**
348
- * If the first character is `0` or `1` it is
349
- * possible that users are trying to type `09`
350
- * or `11` into the hour field, so we should look
351
- * at that first.
352
- */
353
- const firstCharacter = inputEl.value.substring(0, 1);
354
- value = firstCharacter === '0' || firstCharacter === '1' ? inputEl.value : firstCharacter;
355
- this.searchColumn(firstColumn, value);
356
- /**
357
- * If only checked the first value,
358
- * we can check the second value
359
- * for a match in the minutes column
360
- */
361
- if (value.length === 1) {
362
- minuteValue = inputEl.value.substring(inputEl.value.length - 1);
363
- this.searchColumn(lastColumn, minuteValue, 'end');
364
- }
365
- break;
366
- case 3:
367
- /**
368
- * If the first character is `0` or `1` it is
369
- * possible that users are trying to type `09`
370
- * or `11` into the hour field, so we should look
371
- * at that first.
372
- */
373
- const firstCharacterAgain = inputEl.value.substring(0, 1);
374
- value =
375
- firstCharacterAgain === '0' || firstCharacterAgain === '1'
376
- ? inputEl.value.substring(0, 2)
377
- : firstCharacterAgain;
378
- this.searchColumn(firstColumn, value);
379
- /**
380
- * If only checked the first value,
381
- * we can check the second value
382
- * for a match in the minutes column
383
- */
384
- minuteValue = value.length === 1 ? inputEl.value.substring(1) : inputEl.value.substring(2);
385
- this.searchColumn(lastColumn, minuteValue, 'end');
386
- break;
387
- case 4:
388
- /**
389
- * If the first character is `0` or `1` it is
390
- * possible that users are trying to type `09`
391
- * or `11` into the hour field, so we should look
392
- * at that first.
393
- */
394
- const firstCharacterAgainAgain = inputEl.value.substring(0, 1);
395
- value =
396
- firstCharacterAgainAgain === '0' || firstCharacterAgainAgain === '1'
397
- ? inputEl.value.substring(0, 2)
398
- : firstCharacterAgainAgain;
399
- this.searchColumn(firstColumn, value);
400
- /**
401
- * If only checked the first value,
402
- * we can check the second value
403
- * for a match in the minutes column
404
- */
405
- const minuteValueAgain = value.length === 1
406
- ? inputEl.value.substring(1, inputEl.value.length)
407
- : inputEl.value.substring(2, inputEl.value.length);
408
- this.searchColumn(lastColumn, minuteValueAgain, 'end');
409
- break;
410
- default:
411
- const startIndex = inputEl.value.length - 4;
412
- const newString = inputEl.value.substring(startIndex);
413
- inputEl.value = newString;
414
- this.selectMultiColumn();
415
- break;
387
+ if (value.length > 4) {
388
+ const startIndex = inputEl.value.length - 4;
389
+ const newString = inputEl.value.substring(startIndex);
390
+ inputEl.value = newString;
391
+ value = newString;
416
392
  }
393
+ this.multiColumnSearch(firstColumn, lastColumn, value);
417
394
  };
418
395
  /**
419
396
  * Searches the value of the active column
@@ -482,7 +459,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
482
459
  this.emitInputModeChange();
483
460
  }
484
461
  render() {
485
- return (h(Host, { key: 'f92214a09dc85b65873676f40fde2b802960e704', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: '6da37f75aca4ea1c9cb3bc733ebda2116279f313', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
462
+ return (h(Host, { key: '28f81e4ed44a633178561757c5199c2c98f94b74', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: 'abb3d1ad25ef63856af7804111175a4d50008bc0', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
486
463
  var _a;
487
464
  /**
488
465
  * The "Enter" key represents
@@ -497,7 +474,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
497
474
  if (ev.key === 'Enter') {
498
475
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
499
476
  }
500
- }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '298e99d83dd3f5bf2798150bab0bb4024af472fa', class: "picker-before" }), h("div", { key: 'ea578f04eb562a4dc6d6cc92de133dcb9fb7f42a', class: "picker-after" }), h("div", { key: '84567824956dfe967992a629904836ba8b75b3ec', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: 'df81f8fb90e1f649b608328034528f5c31c70c3b' })));
477
+ }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '334a5abdc02e6b127c57177f626d7e4ff5526183', class: "picker-before" }), h("div", { key: 'ffd6271931129e88fc7c820e919d684899e420c5', class: "picker-after" }), h("div", { key: '78d1d95fd09e04f154ea59f24a1cece72c47ed7b', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: '0bd5b9f875d3c71f6cbbde2054baeb1b0a2e8cd5' })));
501
478
  }
502
479
  get el() { return this; }
503
480
  static get style() { return {
@@ -6,7 +6,7 @@ import { B as BACKDROP, j as prepareOverlay, k as setOverlayId, f as present, n
6
6
  import { C as CoreDelegate, a as attachComponent, d as detachComponent } from './framework-delegate.js';
7
7
  import { r as raf, g as getElementRoot, a as addEventListener, j as hasLazyBuild } from './helpers.js';
8
8
  import { c as createLockController } from './lock-controller.js';
9
- import { p as printIonWarning } from './index6.js';
9
+ import { a as printIonWarning } from './index4.js';
10
10
  import { b as getIonMode, a as isPlatform } from './ionic-global.js';
11
11
  import { g as getClassMap } from './theme.js';
12
12
  import { e as deepReady, w as waitForMount } from './index2.js';
@@ -1015,7 +1015,7 @@ const Popover = /*@__PURE__*/ proxyCustomElement(class Popover extends HTMLEleme
1015
1015
  }
1016
1016
  const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
1017
1017
  if (!triggerEl) {
1018
- printIonWarning(`A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
1018
+ printIonWarning(`[ion-popover] - A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
1019
1019
  return;
1020
1020
  }
1021
1021
  this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
@@ -1294,9 +1294,9 @@ const Popover = /*@__PURE__*/ proxyCustomElement(class Popover extends HTMLEleme
1294
1294
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
1295
1295
  const desktop = isPlatform('desktop');
1296
1296
  const enableArrow = arrow && !parentPopover;
1297
- return (h(Host, Object.assign({ key: '48f108a9b74f121559626889dd5a1fcccf38fc3d', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1297
+ return (h(Host, Object.assign({ key: 'ff24e8d9677711248a36994cce568e74ba151499', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1298
1298
  zIndex: `${20000 + this.overlayIndex}`,
1299
- }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: '580c14ab48472534f59eedc5ba7fa486df25ed4e', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: '9bcf47893e8d3053e2baa40511785d84feb4038c', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '4d47f2bdc01a546a88190c07f8f4700f21de6715', class: "popover-arrow", part: "arrow" }), h("div", { key: '70018c088654c1996e305b7b6b114419e97824ef', class: "popover-content", part: "content" }, h("slot", { key: '3de8e1959b8facba2fbe694947704832200d8276' })))));
1299
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: 'aca68b4002a08b0e563a976a867141162c20f8b4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: '62d21d1eab5c6d675d49932559ffb161747e5fec', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '1b46cc77d5302637fc979353483bb5fd780fd1d3', class: "popover-arrow", part: "arrow" }), h("div", { key: 'a5657bff26e46d1959b71eb0992e7dc8fcae86f1', class: "popover-content", part: "content" }, h("slot", { key: 'e1a98007226a46b51109e7004c4d338ca1bc0f9e' })))));
1300
1300
  }
1301
1301
  get el() { return this; }
1302
1302
  static get watchers() { return {
@@ -3,7 +3,8 @@
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
5
  import { c as createColorClasses } from './theme.js';
6
- import { c as config, b as getIonMode } from './ionic-global.js';
6
+ import { c as config } from './index4.js';
7
+ import { b as getIonMode } from './ionic-global.js';
7
8
 
8
9
  const spinners = {
9
10
  bubbles: {
@@ -3,7 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const index = require('./index-c8d52405.js');
6
+ const index = require('./index-cc858e97.js');
7
+ const index$1 = require('./index-c8d52405.js');
7
8
 
8
9
  let animationPrefix;
9
10
  const getAnimationPrefix = (el) => {
@@ -66,7 +67,7 @@ const createAnimation = (animationId) => {
66
67
  const _afterAddWriteFunctions = [];
67
68
  const webAnimations = [];
68
69
  const supportsAnimationEffect = typeof AnimationEffect === 'function' ||
69
- (index.win !== undefined && typeof index.win.AnimationEffect === 'function');
70
+ (index$1.win !== undefined && typeof index$1.win.AnimationEffect === 'function');
70
71
  /**
71
72
  * This is a feature detection for Web Animations.
72
73
  *
@@ -367,7 +368,7 @@ const createAnimation = (animationId) => {
367
368
  }
368
369
  }
369
370
  else {
370
- console.error('Invalid addElement value');
371
+ index.printIonError('createAnimation - Invalid addElement value.');
371
372
  }
372
373
  }
373
374
  return ani;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const ionicGlobal = require('./ionic-global-acb665ad.js');
6
+ const ionicGlobal = require('./ionic-global-6dea5a96.js');
7
7
 
8
8
  const globalScripts = ionicGlobal.initialize;
9
9
 
@@ -3,6 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
+ const index = require('./index-cc858e97.js');
7
+
6
8
  /**
7
9
  * Does a simple sanitization of all elements
8
10
  * in an untrusted string
@@ -77,7 +79,7 @@ const sanitizeDOMString = (untrustedString) => {
77
79
  return getInnerDiv !== null ? getInnerDiv.innerHTML : fragmentDiv.innerHTML;
78
80
  }
79
81
  catch (err) {
80
- console.error(err);
82
+ index.printIonError('sanitizeDOMString', err);
81
83
  return '';
82
84
  }
83
85
  };
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const index = require('./index-48b2a28e.js');
6
+ const index = require('./index-cc858e97.js');
7
7
 
8
8
  /**
9
9
  * Returns true if the selected day is equal to the reference day
@@ -37,7 +37,7 @@ const warnIfValueOutOfBounds = (value, min, max) => {
37
37
  const valueArray = Array.isArray(value) ? value : [value];
38
38
  for (const val of valueArray) {
39
39
  if ((min !== undefined && isBefore(val, min)) || (max !== undefined && isAfter(val, max))) {
40
- index.printIonWarning('The value provided to ion-datetime is out of bounds.\n\n' +
40
+ index.printIonWarning('[ion-datetime] - The value provided to ion-datetime is out of bounds.\n\n' +
41
41
  `Min: ${JSON.stringify(min)}\n` +
42
42
  `Max: ${JSON.stringify(max)}\n` +
43
43
  `Value: ${JSON.stringify(value)}`);
@@ -254,7 +254,7 @@ function parseDate(val) {
254
254
  }
255
255
  if (parse === null) {
256
256
  // wasn't able to parse the ISO datetime
257
- index.printIonWarning(`Unable to parse date string: ${val}. Please provide a valid ISO 8601 datetime string.`);
257
+ index.printIonWarning(`[ion-datetime] - Unable to parse date string: ${val}. Please provide a valid ISO 8601 datetime string.`);
258
258
  return undefined;
259
259
  }
260
260
  // ensure all the parse values exist with at least 0
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const helpers = require('./helpers-d0dfbb50.js');
6
+ const helpers = require('./helpers-8a48fdea.js');
7
7
 
8
8
  // TODO(FW-2832): types
9
9
  const attachComponent = async (delegate, container, component, cssClasses, componentProps, inline) => {
@@ -3,9 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const index = require('./index-c8d52405.js');
7
- const ionicGlobal = require('./ionic-global-acb665ad.js');
8
- require('./index-2e236a04.js');
6
+ const index$1 = require('./index-c8d52405.js');
7
+ const index = require('./index-cc858e97.js');
9
8
 
10
9
  /**
11
10
  * CloseWatcher is a newer API that lets
@@ -19,7 +18,7 @@ require('./index-2e236a04.js');
19
18
  * moment this file is evaluated which could be
20
19
  * before the config is set.
21
20
  */
22
- const shouldUseCloseWatcher = () => ionicGlobal.config.get('experimentalCloseWatcher', false) && index.win !== undefined && 'CloseWatcher' in index.win;
21
+ const shouldUseCloseWatcher = () => index.config.get('experimentalCloseWatcher', false) && index$1.win !== undefined && 'CloseWatcher' in index$1.win;
23
22
  /**
24
23
  * When hardwareBackButton: false in config,
25
24
  * we need to make sure we also block the default
@@ -40,13 +39,13 @@ const startHardwareBackButton = () => {
40
39
  if (busy) {
41
40
  return;
42
41
  }
43
- let index = 0;
42
+ let index$1 = 0;
44
43
  let handlers = [];
45
44
  const ev = new CustomEvent('ionBackButton', {
46
45
  bubbles: false,
47
46
  detail: {
48
47
  register(priority, handler) {
49
- handlers.push({ priority, handler, id: index++ });
48
+ handlers.push({ priority, handler, id: index$1++ });
50
49
  },
51
50
  },
52
51
  });
@@ -61,7 +60,7 @@ const startHardwareBackButton = () => {
61
60
  }
62
61
  }
63
62
  catch (e) {
64
- console.error(e);
63
+ index.printIonError('[ion-app] - Exception in startHardwareBackButton:', e);
65
64
  }
66
65
  };
67
66
  const processHandlers = () => {
@@ -93,7 +92,7 @@ const startHardwareBackButton = () => {
93
92
  let watcher;
94
93
  const configureWatcher = () => {
95
94
  watcher === null || watcher === void 0 ? void 0 : watcher.destroy();
96
- watcher = new index.win.CloseWatcher();
95
+ watcher = new index$1.win.CloseWatcher();
97
96
  /**
98
97
  * Once a close request happens
99
98
  * the watcher gets destroyed.
@@ -3,6 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
+ const index = require('./index-cc858e97.js');
7
+
6
8
  const transitionEndAsync = (el, expectedDuration = 0) => {
7
9
  return new Promise((resolve) => {
8
10
  transitionEnd(el, expectedDuration, resolve);
@@ -253,7 +255,7 @@ const clamp = (min, n, max) => {
253
255
  const assert = (actual, reason) => {
254
256
  if (!actual) {
255
257
  const message = 'ASSERT: ' + reason;
256
- console.error(message);
258
+ index.printIonError(message);
257
259
  debugger; // eslint-disable-line
258
260
  throw new Error(message);
259
261
  }
@@ -332,16 +334,6 @@ const shallowEqualStringMap = (map1, map2) => {
332
334
  }
333
335
  return true;
334
336
  };
335
- const getNextSiblingOfType = (element) => {
336
- let sibling = element.nextSibling;
337
- while (sibling) {
338
- if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
339
- return sibling;
340
- }
341
- sibling = sibling.nextSibling;
342
- }
343
- return null;
344
- };
345
337
  /**
346
338
  * Checks input for usable number. Not NaN and not Infinite.
347
339
  */
@@ -357,7 +349,6 @@ exports.debounce = debounce;
357
349
  exports.debounceEvent = debounceEvent;
358
350
  exports.focusVisibleElement = focusVisibleElement;
359
351
  exports.getElementRoot = getElementRoot;
360
- exports.getNextSiblingOfType = getNextSiblingOfType;
361
352
  exports.hasLazyBuild = hasLazyBuild;
362
353
  exports.hasShadowDom = hasShadowDom;
363
354
  exports.inheritAriaAttributes = inheritAriaAttributes;
@@ -3,10 +3,9 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const ionicGlobal = require('./ionic-global-acb665ad.js');
6
+ const index = require('./index-cc858e97.js');
7
7
  const index$1 = require('./index-2e236a04.js');
8
- const index = require('./index-48b2a28e.js');
9
- const helpers = require('./helpers-d0dfbb50.js');
8
+ const helpers = require('./helpers-8a48fdea.js');
10
9
 
11
10
  const LIFECYCLE_WILL_ENTER = 'ionViewWillEnter';
12
11
  const LIFECYCLE_DID_ENTER = 'ionViewDidEnter';
@@ -40,7 +39,7 @@ const isVisible = (el) => {
40
39
  */
41
40
  const createFocusController = () => {
42
41
  const saveViewFocus = (referenceEl) => {
43
- const focusManagerEnabled = ionicGlobal.config.get('focusManagerPriority', false);
42
+ const focusManagerEnabled = index.config.get('focusManagerPriority', false);
44
43
  /**
45
44
  * When going back to a previously visited page focus should typically be moved
46
45
  * back to the element that was last focused when the user was on this view.
@@ -53,7 +52,7 @@ const createFocusController = () => {
53
52
  }
54
53
  };
55
54
  const setViewFocus = (referenceEl) => {
56
- const focusManagerPriorities = ionicGlobal.config.get('focusManagerPriority', false);
55
+ const focusManagerPriorities = index.config.get('focusManagerPriority', false);
57
56
  /**
58
57
  * If the focused element is a descendant of the referenceEl then it's possible
59
58
  * that the app developer manually moved focus, so we do not want to override that.
@@ -122,8 +121,8 @@ const createFocusController = () => {
122
121
  };
123
122
  const LAST_FOCUS = 'ion-last-focus';
124
123
 
125
- const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-f970164c.js'); });
126
- const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-aa8820dd.js'); });
124
+ const iosTransitionAnimation = () => Promise.resolve().then(function () { return require('./ios.transition-a131cd4d.js'); });
125
+ const mdTransitionAnimation = () => Promise.resolve().then(function () { return require('./md.transition-e018ebe5.js'); });
127
126
  const focusController = createFocusController();
128
127
  // TODO(FW-2832): types
129
128
  const transition = (opts) => {
@@ -214,7 +213,7 @@ const animation = async (animationBuilder, opts) => {
214
213
  const noAnimation = async (opts) => {
215
214
  const enteringEl = opts.enteringEl;
216
215
  const leavingEl = opts.leavingEl;
217
- const focusManagerEnabled = ionicGlobal.config.get('focusManagerPriority', false);
216
+ const focusManagerEnabled = index.config.get('focusManagerPriority', false);
218
217
  /**
219
218
  * If the focus manager is enabled then we need to wait for Ionic components to be
220
219
  * rendered otherwise the component to focus may not be focused because it is hidden.
@@ -3,8 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- const helpers = require('./helpers-d0dfbb50.js');
7
- const index = require('./index-48b2a28e.js');
6
+ const helpers = require('./helpers-8a48fdea.js');
7
+ const index = require('./index-cc858e97.js');
8
8
 
9
9
  const ION_CONTENT_TAG_NAME = 'ION-CONTENT';
10
10
  const ION_CONTENT_ELEMENT_SELECTOR = 'ion-content';
@@ -4,11 +4,11 @@
4
4
  'use strict';
5
5
 
6
6
  const index$1 = require('./index-c8d52405.js');
7
- const hardwareBackButton = require('./hardware-back-button-5a99001f.js');
8
- const index = require('./index-48b2a28e.js');
9
- const helpers = require('./helpers-d0dfbb50.js');
10
- const ionicGlobal = require('./ionic-global-acb665ad.js');
11
- const animation = require('./animation-b4fdf128.js');
7
+ const hardwareBackButton = require('./hardware-back-button-3d2b1004.js');
8
+ const index = require('./index-cc858e97.js');
9
+ const helpers = require('./helpers-8a48fdea.js');
10
+ const ionicGlobal = require('./ionic-global-6dea5a96.js');
11
+ const animation = require('./animation-ab2d3449.js');
12
12
 
13
13
  /**
14
14
  * baseAnimation
@@ -0,0 +1,129 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ 'use strict';
5
+
6
+ // TODO(FW-2832): types
7
+ class Config {
8
+ constructor() {
9
+ this.m = new Map();
10
+ }
11
+ reset(configObj) {
12
+ this.m = new Map(Object.entries(configObj));
13
+ }
14
+ get(key, fallback) {
15
+ const value = this.m.get(key);
16
+ return value !== undefined ? value : fallback;
17
+ }
18
+ getBoolean(key, fallback = false) {
19
+ const val = this.m.get(key);
20
+ if (val === undefined) {
21
+ return fallback;
22
+ }
23
+ if (typeof val === 'string') {
24
+ return val === 'true';
25
+ }
26
+ return !!val;
27
+ }
28
+ getNumber(key, fallback) {
29
+ const val = parseFloat(this.m.get(key));
30
+ return isNaN(val) ? (fallback !== undefined ? fallback : NaN) : val;
31
+ }
32
+ set(key, value) {
33
+ this.m.set(key, value);
34
+ }
35
+ }
36
+ const config = /*@__PURE__*/ new Config();
37
+ const configFromSession = (win) => {
38
+ try {
39
+ const configStr = win.sessionStorage.getItem(IONIC_SESSION_KEY);
40
+ return configStr !== null ? JSON.parse(configStr) : {};
41
+ }
42
+ catch (e) {
43
+ return {};
44
+ }
45
+ };
46
+ const saveConfig = (win, c) => {
47
+ try {
48
+ win.sessionStorage.setItem(IONIC_SESSION_KEY, JSON.stringify(c));
49
+ }
50
+ catch (e) {
51
+ return;
52
+ }
53
+ };
54
+ const configFromURL = (win) => {
55
+ const configObj = {};
56
+ win.location.search
57
+ .slice(1)
58
+ .split('&')
59
+ .map((entry) => entry.split('='))
60
+ .map(([key, value]) => {
61
+ try {
62
+ return [decodeURIComponent(key), decodeURIComponent(value)];
63
+ }
64
+ catch (e) {
65
+ return ['', ''];
66
+ }
67
+ })
68
+ .filter(([key]) => startsWith(key, IONIC_PREFIX))
69
+ .map(([key, value]) => [key.slice(IONIC_PREFIX.length), value])
70
+ .forEach(([key, value]) => {
71
+ configObj[key] = value;
72
+ });
73
+ return configObj;
74
+ };
75
+ const startsWith = (input, search) => {
76
+ return input.substr(0, search.length) === search;
77
+ };
78
+ const IONIC_PREFIX = 'ionic:';
79
+ const IONIC_SESSION_KEY = 'ionic-persist-config';
80
+
81
+ exports.LogLevel = void 0;
82
+ (function (LogLevel) {
83
+ LogLevel["OFF"] = "OFF";
84
+ LogLevel["ERROR"] = "ERROR";
85
+ LogLevel["WARN"] = "WARN";
86
+ })(exports.LogLevel || (exports.LogLevel = {}));
87
+ /**
88
+ * Logs a warning to the console with an Ionic prefix
89
+ * to indicate the library that is warning the developer.
90
+ *
91
+ * @param message - The string message to be logged to the console.
92
+ */
93
+ const printIonWarning = (message, ...params) => {
94
+ const logLevel = config.get('logLevel', exports.LogLevel.WARN);
95
+ if ([exports.LogLevel.WARN].includes(logLevel)) {
96
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
97
+ }
98
+ };
99
+ /**
100
+ * Logs an error to the console with an Ionic prefix
101
+ * to indicate the library that is warning the developer.
102
+ *
103
+ * @param message - The string message to be logged to the console.
104
+ * @param params - Additional arguments to supply to the console.error.
105
+ */
106
+ const printIonError = (message, ...params) => {
107
+ const logLevel = config.get('logLevel', exports.LogLevel.ERROR);
108
+ if ([exports.LogLevel.ERROR, exports.LogLevel.WARN].includes(logLevel)) {
109
+ return console.error(`[Ionic Error]: ${message}`, ...params);
110
+ }
111
+ };
112
+ /**
113
+ * Prints an error informing developers that an implementation requires an element to be used
114
+ * within a specific selector.
115
+ *
116
+ * @param el The web component element this is requiring the element.
117
+ * @param targetSelectors The selector or selectors that were not found.
118
+ */
119
+ const printRequiredElementError = (el, ...targetSelectors) => {
120
+ return console.error(`<${el.tagName.toLowerCase()}> must be used inside ${targetSelectors.join(' or ')}.`);
121
+ };
122
+
123
+ exports.config = config;
124
+ exports.configFromSession = configFromSession;
125
+ exports.configFromURL = configFromURL;
126
+ exports.printIonError = printIonError;
127
+ exports.printIonWarning = printIonWarning;
128
+ exports.printRequiredElementError = printRequiredElementError;
129
+ exports.saveConfig = saveConfig;
@@ -4,7 +4,8 @@
4
4
  'use strict';
5
5
 
6
6
  const index = require('./index-c8d52405.js');
7
- const helpers = require('./helpers-d0dfbb50.js');
7
+ const helpers = require('./helpers-8a48fdea.js');
8
+ require('./index-cc858e97.js');
8
9
 
9
10
  const startTapClick = (config) => {
10
11
  if (index.doc === undefined) {