@ionic/core 8.5.7-dev.11747180955.1e468923 → 8.5.7-dev.11747676931.1d53b808

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 (336) hide show
  1. package/components/input-shims.js +0 -18
  2. package/components/ion-input-otp.d.ts +11 -0
  3. package/components/ion-input-otp.js +611 -0
  4. package/components/ion-input-password-toggle.js +3 -3
  5. package/components/ion-input.js +10 -2
  6. package/components/ion-item-divider.js +2 -2
  7. package/components/ion-item-group.js +1 -1
  8. package/components/ion-item-option.js +2 -2
  9. package/components/ion-item-options.js +1 -1
  10. package/components/ion-item-sliding.js +1 -1
  11. package/components/ion-loading.js +2 -2
  12. package/components/ion-menu-button.js +2 -2
  13. package/components/ion-menu-toggle.js +2 -2
  14. package/components/ion-menu.js +2 -2
  15. package/components/ion-nav-link.js +1 -1
  16. package/components/ion-nav.js +1 -1
  17. package/components/ion-note.js +2 -2
  18. package/components/ion-picker-legacy.js +2 -2
  19. package/components/ion-progress-bar.js +1 -1
  20. package/components/ion-range.js +3 -3
  21. package/components/ion-refresher-content.js +1 -1
  22. package/components/ion-refresher.js +1 -1
  23. package/components/ion-reorder-group.js +1 -1
  24. package/components/ion-reorder.js +1 -1
  25. package/components/ion-router-link.js +2 -2
  26. package/components/ion-router-outlet.js +1 -1
  27. package/components/ion-row.js +1 -1
  28. package/components/ion-searchbar.js +4 -4
  29. package/components/ion-segment-button.js +2 -2
  30. package/components/ion-segment-content.js +1 -1
  31. package/components/ion-segment-view.js +2 -2
  32. package/components/ion-segment.js +2 -2
  33. package/components/ion-select-option.js +1 -1
  34. package/components/ion-select.js +2 -2
  35. package/components/ion-skeleton-text.js +2 -2
  36. package/components/ion-split-pane.js +2 -2
  37. package/components/ion-tab-bar.js +2 -2
  38. package/components/ion-tab-button.js +2 -2
  39. package/components/ion-tab.js +2 -2
  40. package/components/ion-tabs.js +1 -1
  41. package/components/ion-text.js +2 -2
  42. package/components/ion-textarea.js +2 -2
  43. package/components/ion-thumbnail.js +1 -1
  44. package/components/ion-toast.js +2 -2
  45. package/components/ion-toggle.js +3 -3
  46. package/components/label.js +2 -2
  47. package/components/list-header.js +2 -2
  48. package/components/list.js +1 -1
  49. package/components/modal.js +4 -4
  50. package/components/picker-column-option.js +2 -2
  51. package/components/picker-column2.js +2 -2
  52. package/components/popover.js +2 -2
  53. package/components/radio-group.js +1 -1
  54. package/components/radio.js +3 -3
  55. package/components/ripple-effect.js +1 -1
  56. package/components/select-modal.js +1 -1
  57. package/components/select-popover.js +1 -1
  58. package/components/spinner.js +1 -1
  59. package/components/title.js +2 -2
  60. package/components/toolbar.js +2 -2
  61. package/dist/cjs/{app-globals-CWtQHdcK.js → app-globals-DvwumQAI.js} +1 -1
  62. package/dist/cjs/{button-active-BzpKQ5zN.js → button-active-Du_YCFSd.js} +1 -1
  63. package/dist/cjs/{index-qOuhvt-6.js → index-B6-BlKCh.js} +4 -0
  64. package/dist/cjs/{index-CrE5792q.js → index-DCB2XSaQ.js} +1 -1
  65. package/dist/cjs/{index-C6GLB0dQ.js → index-QuFS9UpQ.js} +3 -3
  66. package/dist/cjs/index.cjs.js +7 -7
  67. package/dist/cjs/{input-shims-BIfSj_O3.js → input-shims-DGvxKeWy.js} +0 -18
  68. package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
  69. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  70. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  71. package/dist/cjs/ion-app_8.cjs.entry.js +10 -10
  72. package/dist/cjs/ion-avatar_3.cjs.entry.js +3 -3
  73. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  74. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  75. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  76. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  77. package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
  78. package/dist/cjs/ion-checkbox.cjs.entry.js +2 -2
  79. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  80. package/dist/cjs/ion-col_3.cjs.entry.js +3 -3
  81. package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
  82. package/dist/cjs/ion-datetime_3.cjs.entry.js +7 -7
  83. package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
  84. package/dist/cjs/ion-img.cjs.entry.js +2 -2
  85. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +2 -2
  86. package/dist/cjs/ion-input-otp.cjs.entry.js +574 -0
  87. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +5 -5
  88. package/dist/cjs/ion-input.cjs.entry.js +12 -4
  89. package/dist/cjs/ion-item-option_3.cjs.entry.js +6 -6
  90. package/dist/cjs/ion-item_8.cjs.entry.js +14 -14
  91. package/dist/cjs/ion-loading.cjs.entry.js +5 -5
  92. package/dist/cjs/ion-menu_3.cjs.entry.js +10 -10
  93. package/dist/cjs/ion-modal.cjs.entry.js +8 -8
  94. package/dist/cjs/ion-nav_2.cjs.entry.js +5 -5
  95. package/dist/cjs/ion-picker-column-option.cjs.entry.js +4 -4
  96. package/dist/cjs/ion-picker-column.cjs.entry.js +2 -2
  97. package/dist/cjs/ion-picker.cjs.entry.js +1 -1
  98. package/dist/cjs/ion-popover.cjs.entry.js +6 -6
  99. package/dist/cjs/ion-progress-bar.cjs.entry.js +3 -3
  100. package/dist/cjs/ion-radio_2.cjs.entry.js +6 -6
  101. package/dist/cjs/ion-range.cjs.entry.js +5 -5
  102. package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
  103. package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
  104. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
  105. package/dist/cjs/ion-route_4.cjs.entry.js +4 -4
  106. package/dist/cjs/ion-searchbar.cjs.entry.js +6 -6
  107. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  108. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -3
  109. package/dist/cjs/ion-segment_2.cjs.entry.js +6 -6
  110. package/dist/cjs/ion-select-modal.cjs.entry.js +4 -4
  111. package/dist/cjs/ion-select_3.cjs.entry.js +7 -7
  112. package/dist/cjs/ion-spinner.cjs.entry.js +3 -3
  113. package/dist/cjs/ion-split-pane.cjs.entry.js +4 -4
  114. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +6 -6
  115. package/dist/cjs/ion-tab_2.cjs.entry.js +4 -4
  116. package/dist/cjs/ion-text.cjs.entry.js +4 -4
  117. package/dist/cjs/ion-textarea.cjs.entry.js +4 -4
  118. package/dist/cjs/ion-toast.cjs.entry.js +5 -5
  119. package/dist/cjs/ion-toggle.cjs.entry.js +5 -5
  120. package/dist/cjs/{ionic-global-BC3ee-Wa.js → ionic-global-C3I6b0Is.js} +1 -1
  121. package/dist/cjs/ionic.cjs.js +4 -4
  122. package/dist/cjs/{ios.transition-C9J4bBGV.js → ios.transition-CL8Q2_Bi.js} +2 -2
  123. package/dist/cjs/loader.cjs.js +4 -4
  124. package/dist/cjs/{md.transition-DT8PB4eS.js → md.transition-D1Ast6la.js} +2 -2
  125. package/dist/cjs/{overlays-B4rlyxhY.js → overlays-Ci3nLg5M.js} +1 -1
  126. package/dist/cjs/{status-tap-B8fjNFjq.js → status-tap-Bx_wzOTo.js} +1 -1
  127. package/dist/collection/collection-manifest.json +1 -0
  128. package/dist/collection/components/input/input.js +10 -2
  129. package/dist/collection/components/input-otp/input-otp-interface.js +1 -0
  130. package/dist/collection/components/input-otp/input-otp.ios.css +377 -0
  131. package/dist/collection/components/input-otp/input-otp.js +999 -0
  132. package/dist/collection/components/input-otp/input-otp.md.css +377 -0
  133. package/dist/collection/components/input-password-toggle/input-password-toggle.js +3 -3
  134. package/dist/collection/components/item-divider/item-divider.js +2 -2
  135. package/dist/collection/components/item-group/item-group.js +1 -1
  136. package/dist/collection/components/item-option/item-option.js +2 -2
  137. package/dist/collection/components/item-options/item-options.js +1 -1
  138. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  139. package/dist/collection/components/label/label.js +2 -2
  140. package/dist/collection/components/list/list.js +1 -1
  141. package/dist/collection/components/list-header/list-header.js +2 -2
  142. package/dist/collection/components/loading/loading.js +2 -2
  143. package/dist/collection/components/menu/menu.js +2 -2
  144. package/dist/collection/components/menu-button/menu-button.js +2 -2
  145. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  146. package/dist/collection/components/modal/modal.js +4 -4
  147. package/dist/collection/components/nav/nav.js +1 -1
  148. package/dist/collection/components/nav-link/nav-link.js +1 -1
  149. package/dist/collection/components/note/note.js +2 -2
  150. package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
  151. package/dist/collection/components/picker-legacy/picker.js +2 -2
  152. package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
  153. package/dist/collection/components/popover/popover.js +2 -2
  154. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  155. package/dist/collection/components/radio/radio.js +3 -3
  156. package/dist/collection/components/radio-group/radio-group.js +1 -1
  157. package/dist/collection/components/range/range.js +3 -3
  158. package/dist/collection/components/refresher/refresher.js +1 -1
  159. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  160. package/dist/collection/components/reorder/reorder.js +1 -1
  161. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  162. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  163. package/dist/collection/components/router-link/router-link.js +2 -2
  164. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  165. package/dist/collection/components/row/row.js +1 -1
  166. package/dist/collection/components/searchbar/searchbar.js +4 -4
  167. package/dist/collection/components/segment/segment.js +2 -2
  168. package/dist/collection/components/segment-button/segment-button.js +2 -2
  169. package/dist/collection/components/segment-content/segment-content.js +1 -1
  170. package/dist/collection/components/segment-view/segment-view.js +2 -2
  171. package/dist/collection/components/select/select.js +2 -2
  172. package/dist/collection/components/select-modal/select-modal.js +1 -1
  173. package/dist/collection/components/select-option/select-option.js +1 -1
  174. package/dist/collection/components/select-popover/select-popover.js +1 -1
  175. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  176. package/dist/collection/components/spinner/spinner.js +1 -1
  177. package/dist/collection/components/split-pane/split-pane.js +2 -2
  178. package/dist/collection/components/tab/tab.js +2 -2
  179. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  180. package/dist/collection/components/tab-button/tab-button.js +2 -2
  181. package/dist/collection/components/tabs/tabs.js +1 -1
  182. package/dist/collection/components/text/text.js +2 -2
  183. package/dist/collection/components/textarea/textarea.js +2 -2
  184. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  185. package/dist/collection/components/title/title.js +2 -2
  186. package/dist/collection/components/toast/toast.js +2 -2
  187. package/dist/collection/components/toggle/toggle.js +3 -3
  188. package/dist/collection/components/toolbar/toolbar.js +2 -2
  189. package/dist/collection/utils/input-shims/hacks/scroll-assist.js +0 -18
  190. package/dist/docs.json +907 -1
  191. package/dist/esm/{app-globals-Ts_E1ch0.js → app-globals-C74-VMUb.js} +1 -1
  192. package/dist/esm/{button-active-BQqkZ_sm.js → button-active-DRCPpzqj.js} +1 -1
  193. package/dist/esm/{index-EP3pwcdb.js → index-3GtB1kQI.js} +4 -1
  194. package/dist/esm/{index-B83thFnh.js → index-lgeUQ6qY.js} +3 -3
  195. package/dist/esm/{index-RyWq7qIc.js → index-lp0kQfoC.js} +1 -1
  196. package/dist/esm/index.js +7 -7
  197. package/dist/esm/{input-shims-BbXgvAcA.js → input-shims-qlIPzMSm.js} +0 -18
  198. package/dist/esm/ion-accordion_2.entry.js +2 -2
  199. package/dist/esm/ion-action-sheet.entry.js +4 -4
  200. package/dist/esm/ion-alert.entry.js +4 -4
  201. package/dist/esm/ion-app_8.entry.js +10 -10
  202. package/dist/esm/ion-avatar_3.entry.js +3 -3
  203. package/dist/esm/ion-back-button.entry.js +2 -2
  204. package/dist/esm/ion-backdrop.entry.js +2 -2
  205. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  206. package/dist/esm/ion-button_2.entry.js +2 -2
  207. package/dist/esm/ion-card_5.entry.js +2 -2
  208. package/dist/esm/ion-checkbox.entry.js +2 -2
  209. package/dist/esm/ion-chip.entry.js +2 -2
  210. package/dist/esm/ion-col_3.entry.js +3 -3
  211. package/dist/esm/ion-datetime-button.entry.js +2 -2
  212. package/dist/esm/ion-datetime_3.entry.js +7 -7
  213. package/dist/esm/ion-fab_3.entry.js +2 -2
  214. package/dist/esm/ion-img.entry.js +2 -2
  215. package/dist/esm/ion-infinite-scroll_2.entry.js +2 -2
  216. package/dist/esm/ion-input-otp.entry.js +572 -0
  217. package/dist/esm/ion-input-password-toggle.entry.js +5 -5
  218. package/dist/esm/ion-input.entry.js +12 -4
  219. package/dist/esm/ion-item-option_3.entry.js +6 -6
  220. package/dist/esm/ion-item_8.entry.js +14 -14
  221. package/dist/esm/ion-loading.entry.js +5 -5
  222. package/dist/esm/ion-menu_3.entry.js +10 -10
  223. package/dist/esm/ion-modal.entry.js +8 -8
  224. package/dist/esm/ion-nav_2.entry.js +5 -5
  225. package/dist/esm/ion-picker-column-option.entry.js +4 -4
  226. package/dist/esm/ion-picker-column.entry.js +2 -2
  227. package/dist/esm/ion-picker.entry.js +1 -1
  228. package/dist/esm/ion-popover.entry.js +6 -6
  229. package/dist/esm/ion-progress-bar.entry.js +3 -3
  230. package/dist/esm/ion-radio_2.entry.js +6 -6
  231. package/dist/esm/ion-range.entry.js +5 -5
  232. package/dist/esm/ion-refresher_2.entry.js +4 -4
  233. package/dist/esm/ion-reorder_2.entry.js +4 -4
  234. package/dist/esm/ion-ripple-effect.entry.js +3 -3
  235. package/dist/esm/ion-route_4.entry.js +4 -4
  236. package/dist/esm/ion-searchbar.entry.js +6 -6
  237. package/dist/esm/ion-segment-content.entry.js +2 -2
  238. package/dist/esm/ion-segment-view.entry.js +3 -3
  239. package/dist/esm/ion-segment_2.entry.js +6 -6
  240. package/dist/esm/ion-select-modal.entry.js +4 -4
  241. package/dist/esm/ion-select_3.entry.js +7 -7
  242. package/dist/esm/ion-spinner.entry.js +3 -3
  243. package/dist/esm/ion-split-pane.entry.js +4 -4
  244. package/dist/esm/ion-tab-bar_2.entry.js +6 -6
  245. package/dist/esm/ion-tab_2.entry.js +4 -4
  246. package/dist/esm/ion-text.entry.js +4 -4
  247. package/dist/esm/ion-textarea.entry.js +4 -4
  248. package/dist/esm/ion-toast.entry.js +5 -5
  249. package/dist/esm/ion-toggle.entry.js +5 -5
  250. package/dist/esm/{ionic-global-DapnXdYs.js → ionic-global-Dw-MNnQB.js} +1 -1
  251. package/dist/esm/ionic.js +5 -5
  252. package/dist/esm/{ios.transition-DN6Dy4K4.js → ios.transition-Doo_7Vid.js} +2 -2
  253. package/dist/esm/loader.js +5 -5
  254. package/dist/esm/{md.transition-DR8zuFnL.js → md.transition-BbcCfRk9.js} +2 -2
  255. package/dist/esm/{overlays-Blhb_0oI.js → overlays-Pn0MyOv4.js} +1 -1
  256. package/dist/esm/{status-tap-CZEjiztV.js → status-tap-Cn5uETrs.js} +1 -1
  257. package/dist/html.html-data.json +160 -0
  258. package/dist/ionic/index.esm.js +1 -1
  259. package/dist/ionic/ionic.esm.js +1 -1
  260. package/dist/ionic/{p-d9c08f93.entry.js → p-05427be9.entry.js} +1 -1
  261. package/dist/ionic/{p-9a0bde6e.entry.js → p-0bc3d6d0.entry.js} +1 -1
  262. package/dist/ionic/{p-38921e2f.entry.js → p-0bcd3299.entry.js} +1 -1
  263. package/dist/ionic/{p-030daf32.entry.js → p-14d26301.entry.js} +1 -1
  264. package/dist/ionic/p-178084cb.entry.js +4 -0
  265. package/dist/ionic/{p-3edb2346.entry.js → p-1da92348.entry.js} +1 -1
  266. package/dist/ionic/{p-12b44c66.entry.js → p-1e9ea564.entry.js} +1 -1
  267. package/dist/ionic/p-1fe35f29.entry.js +4 -0
  268. package/dist/ionic/{p-f0c5ea4c.entry.js → p-2438054c.entry.js} +1 -1
  269. package/dist/ionic/{p-b2b0f539.entry.js → p-250c972f.entry.js} +1 -1
  270. package/dist/ionic/{p-306eab7a.entry.js → p-2517fcdf.entry.js} +1 -1
  271. package/dist/ionic/{p-61f52724.entry.js → p-29186993.entry.js} +1 -1
  272. package/dist/ionic/{p-89e3b3c6.entry.js → p-2c6931ed.entry.js} +1 -1
  273. package/dist/ionic/{p-112af08b.entry.js → p-2e42fa68.entry.js} +1 -1
  274. package/dist/ionic/{p-EP3pwcdb.js → p-3GtB1kQI.js} +2 -2
  275. package/dist/ionic/{p-e2e4b1f1.entry.js → p-3ca63859.entry.js} +1 -1
  276. package/dist/ionic/{p-bc9feb4b.entry.js → p-3fa87259.entry.js} +1 -1
  277. package/dist/ionic/{p-08232f2d.entry.js → p-43f012a4.entry.js} +1 -1
  278. package/dist/ionic/{p-ff362ebc.entry.js → p-5756b724.entry.js} +1 -1
  279. package/dist/ionic/{p-4a5cf7ac.entry.js → p-592db4a8.entry.js} +1 -1
  280. package/dist/ionic/{p-a9997b1b.entry.js → p-691fa8c7.entry.js} +1 -1
  281. package/dist/ionic/{p-38598652.entry.js → p-6bd192d8.entry.js} +1 -1
  282. package/dist/ionic/{p-d887000e.entry.js → p-7a6c96ca.entry.js} +1 -1
  283. package/dist/ionic/{p-df87cf2d.entry.js → p-832b6c90.entry.js} +1 -1
  284. package/dist/ionic/p-8c496d65.entry.js +4 -0
  285. package/dist/ionic/{p-46c15fe2.entry.js → p-8d7afec5.entry.js} +1 -1
  286. package/dist/ionic/{p-93996b12.entry.js → p-920540c6.entry.js} +1 -1
  287. package/dist/ionic/{p-e471e1e5.entry.js → p-9262223a.entry.js} +1 -1
  288. package/dist/ionic/{p-5fb997f8.entry.js → p-96d912f5.entry.js} +1 -1
  289. package/dist/ionic/{p-49122d48.entry.js → p-98f759e4.entry.js} +1 -1
  290. package/dist/ionic/{p-c19bc276.entry.js → p-99cc16fb.entry.js} +1 -1
  291. package/dist/ionic/{p-46a1ce99.entry.js → p-9c7d7711.entry.js} +1 -1
  292. package/dist/ionic/p-B7Khsp7D.js +4 -0
  293. package/dist/ionic/{p-DCstKNei.js → p-BBMlbfDQ.js} +1 -1
  294. package/dist/ionic/{p-LpklIrOy.js → p-BC2IYr2c.js} +1 -1
  295. package/dist/ionic/{p-Uz6zKimy.js → p-CGyDG2ar.js} +1 -1
  296. package/dist/ionic/p-CO_y91jJ.js +4 -0
  297. package/dist/ionic/{p-DPhSdjFK.js → p-CjUUcfjC.js} +1 -1
  298. package/dist/ionic/{p-Dnc554yu.js → p-CuVupNFU.js} +1 -1
  299. package/dist/ionic/{p-BSMFLyVh.js → p-DYqTiW2v.js} +1 -1
  300. package/dist/ionic/p-DjV8cNim.js +4 -0
  301. package/dist/ionic/{p-484073b5.entry.js → p-a20a15cc.entry.js} +1 -1
  302. package/dist/ionic/{p-5b8abc2f.entry.js → p-a22fe54d.entry.js} +1 -1
  303. package/dist/ionic/p-a6db87e1.entry.js +4 -0
  304. package/dist/ionic/{p-38dcbd40.entry.js → p-b18a4590.entry.js} +1 -1
  305. package/dist/ionic/{p-aeb7297a.entry.js → p-bc84650a.entry.js} +1 -1
  306. package/dist/ionic/p-bf6b00ab.entry.js +4 -0
  307. package/dist/ionic/{p-a26637b1.entry.js → p-c1b0e3b6.entry.js} +1 -1
  308. package/dist/ionic/{p-4119d144.entry.js → p-cde545fa.entry.js} +1 -1
  309. package/dist/ionic/{p-ce26cd7d.entry.js → p-d4742f5c.entry.js} +1 -1
  310. package/dist/ionic/{p-e426331f.entry.js → p-da105dce.entry.js} +1 -1
  311. package/dist/ionic/{p-a4bcf305.entry.js → p-e2d9c488.entry.js} +1 -1
  312. package/dist/ionic/{p-8dda7cd4.entry.js → p-e5495b3b.entry.js} +1 -1
  313. package/dist/ionic/{p-1a19090e.entry.js → p-e83ead65.entry.js} +1 -1
  314. package/dist/ionic/{p-a178af33.entry.js → p-ed36aee8.entry.js} +1 -1
  315. package/dist/ionic/{p-e5e82fa5.entry.js → p-ee504ce4.entry.js} +1 -1
  316. package/dist/ionic/{p-ade7bda6.entry.js → p-eec040ff.entry.js} +1 -1
  317. package/dist/ionic/{p-0434efbb.entry.js → p-f331dda5.entry.js} +1 -1
  318. package/dist/ionic/{p-d77d0b41.entry.js → p-f35cb090.entry.js} +1 -1
  319. package/dist/ionic/{p-99c93730.entry.js → p-fb714eec.entry.js} +1 -1
  320. package/dist/ionic/{p-c3abde95.entry.js → p-fd156864.entry.js} +1 -1
  321. package/dist/ionic/{p-0c2a069d.entry.js → p-ff88b250.entry.js} +1 -1
  322. package/dist/ionic/{p-CgRZM5_E.js → p-wsLGfiE0.js} +1 -1
  323. package/dist/types/components/input-otp/input-otp-interface.d.ts +21 -0
  324. package/dist/types/components/input-otp/input-otp.d.ts +270 -0
  325. package/dist/types/components.d.ts +167 -0
  326. package/dist/types/interface.d.ts +1 -0
  327. package/hydrate/index.js +701 -101
  328. package/hydrate/index.mjs +701 -101
  329. package/package.json +1 -1
  330. package/dist/ionic/p-07a47eb6.entry.js +0 -4
  331. package/dist/ionic/p-46f82b82.entry.js +0 -4
  332. package/dist/ionic/p-5459e444.entry.js +0 -4
  333. package/dist/ionic/p-83fdd9f6.entry.js +0 -4
  334. package/dist/ionic/p-CqNf-A5G.js +0 -4
  335. package/dist/ionic/p-DWFxQD6t.js +0 -4
  336. package/dist/ionic/p-EglNvYQn.js +0 -4
package/hydrate/index.js CHANGED
@@ -2874,6 +2874,9 @@ var setContentReference = (elm) => {
2874
2874
  contentRefElm["s-cn"] = true;
2875
2875
  insertBefore(elm, contentRefElm, elm.firstChild);
2876
2876
  };
2877
+
2878
+ // src/runtime/fragment.ts
2879
+ var Fragment = (_, children) => children;
2877
2880
  var addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
2878
2881
  if (listeners && win$2.document) {
2879
2882
  listeners.map(([flags, name, method]) => {
@@ -16411,7 +16414,7 @@ class Input {
16411
16414
  this.ionChange = createEvent(this, "ionChange", 7);
16412
16415
  this.ionBlur = createEvent(this, "ionBlur", 7);
16413
16416
  this.ionFocus = createEvent(this, "ionFocus", 7);
16414
- this.inputId = `ion-input-${inputIds++}`;
16417
+ this.inputId = `ion-input-${inputIds$1++}`;
16415
16418
  this.helperTextId = `${this.inputId}-helper-text`;
16416
16419
  this.errorTextId = `${this.inputId}-error-text`;
16417
16420
  this.inheritedAttributes = {};
@@ -16867,14 +16870,22 @@ class Input {
16867
16870
  'in-item': inItem,
16868
16871
  'in-item-color': hostContext('ion-item.ion-color', this.el),
16869
16872
  'input-disabled': disabled,
16870
- }) }, hAsync("label", { key: '697c6decb1fb8403777db7a37f54853863421ad9', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: 'd35f44c3afcf8e075f7f845416cb8500606d3546', class: "native-wrapper" }, hAsync("slot", { key: '41ef868873ffd8262d53fd1a5e506c62030dc3f1', name: "start" }), hAsync("input", Object.assign({ key: 'd98e0aaa285b5424e9589ce36ed4f9910a6859cd', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (hAsync("button", { key: '78b3470646ec4fc237d33229a132164b089538a2', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
16873
+ }) }, hAsync("label", { key: '697c6decb1fb8403777db7a37f54853863421ad9', class: "input-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: 'd35f44c3afcf8e075f7f845416cb8500606d3546', class: "native-wrapper" }, hAsync("slot", { key: '41ef868873ffd8262d53fd1a5e506c62030dc3f1', name: "start" }), hAsync("input", Object.assign({ key: 'd98e0aaa285b5424e9589ce36ed4f9910a6859cd', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (hAsync("button", { key: '367d1a1c2eb69d4887fe29ab96ead3230d7dd513', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
16871
16874
  /**
16872
16875
  * This prevents mobile browsers from
16873
16876
  * blurring the input when the clear
16874
16877
  * button is activated.
16875
16878
  */
16876
16879
  ev.preventDefault();
16877
- }, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '686ca853cf0e074ab32d01c077f066b5b4ab2dad', "aria-hidden": "true", icon: clearIconData }))), hAsync("slot", { key: '354e0bde7c7066a3ce31f852923e334859fedb78', name: "end" })), shouldRenderHighlight && hAsync("div", { key: '5fa78de0aee8883506ccdbdf1c834a3fa8503c87', class: "input-highlight" })), this.renderBottomContent()));
16880
+ }, onFocusin: (ev) => {
16881
+ /**
16882
+ * Prevent the focusin event from bubbling otherwise it will cause the focusin
16883
+ * event listener in scroll assist to fire. When this fires, focus will be moved
16884
+ * back to the input even if the clear button was never tapped. This poses issues
16885
+ * for screen readers as it means users would be unable to swipe past the clear button.
16886
+ */
16887
+ ev.stopPropagation();
16888
+ }, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '69afc5c7ea6bfa1bff301635281b536e84277965', "aria-hidden": "true", icon: clearIconData }))), hAsync("slot", { key: '6f770a0ab703b4d19e936a0e1955274bc9f3e941', name: "end" })), shouldRenderHighlight && hAsync("div", { key: 'a048e240432c4d5e11b2c92fa99a0cff07f9a778', class: "input-highlight" })), this.renderBottomContent()));
16878
16889
  }
16879
16890
  get el() { return getElement(this); }
16880
16891
  static get watchers() { return {
@@ -16934,6 +16945,594 @@ class Input {
16934
16945
  "$attrsToReflect$": [["color", "color"], ["disabled", "disabled"], ["readonly", "readonly"]]
16935
16946
  }; }
16936
16947
  }
16948
+ let inputIds$1 = 0;
16949
+
16950
+ const inputOtpIosCss = ".sc-ion-input-otp-ios-h{--margin-top:0;--margin-end:0;--margin-bottom:0;--margin-start:0;--padding-top:16px;--padding-end:0;--padding-bottom:16px;--padding-start:0;--color:initial;--min-width:40px;--separator-width:8px;--separator-height:var(--separator-width);--separator-border-radius:999px;--separator-color:var(--ion-color-step-150, var(--ion-background-color-step-150, #d9d9d9));--highlight-color-focused:var(--ion-color-primary, #0054e9);--highlight-color-valid:var(--ion-color-success, #2dd55b);--highlight-color-invalid:var(--ion-color-danger, #c5000f);--highlight-color:var(--highlight-color-focused);display:block;position:relative;font-size:0.875rem}.input-otp-group.sc-ion-input-otp-ios{-webkit-margin-start:var(--margin-start);margin-inline-start:var(--margin-start);-webkit-margin-end:var(--margin-end);margin-inline-end:var(--margin-end);margin-top:var(--margin-top);margin-bottom:var(--margin-bottom);-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.native-wrapper.sc-ion-input-otp-ios{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:var(--min-width)}.native-input.sc-ion-input-otp-ios{border-radius:var(--border-radius);width:var(--width);min-width:inherit;height:var(--height);border-width:var(--border-width);border-style:solid;border-color:var(--border-color);background:var(--background);color:var(--color);font-size:inherit;text-align:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.has-focus.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios{caret-color:var(--highlight-color)}.input-otp-description.sc-ion-input-otp-ios{color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));font-size:0.75rem;line-height:1.25rem;text-align:center}.input-otp-separator.sc-ion-input-otp-ios{border-radius:var(--separator-border-radius);-ms-flex-negative:0;flex-shrink:0;width:var(--separator-width);height:var(--separator-height);background:var(--separator-color)}.input-otp-size-small.sc-ion-input-otp-ios-h{--width:40px;--height:40px}.input-otp-size-small.sc-ion-input-otp-ios-h .input-otp-group.sc-ion-input-otp-ios{gap:8px}.input-otp-size-medium.sc-ion-input-otp-ios-h{--width:48px;--height:48px}.input-otp-size-large.sc-ion-input-otp-ios-h{--width:56px;--height:56px}.input-otp-size-medium.sc-ion-input-otp-ios-h .input-otp-group.sc-ion-input-otp-ios,.input-otp-size-large.sc-ion-input-otp-ios-h .input-otp-group.sc-ion-input-otp-ios{gap:12px}.input-otp-shape-round.sc-ion-input-otp-ios-h{--border-radius:16px}.input-otp-shape-soft.sc-ion-input-otp-ios-h{--border-radius:8px}.input-otp-shape-rectangular.sc-ion-input-otp-ios-h{--border-radius:0}.input-otp-fill-outline.sc-ion-input-otp-ios-h{--background:none}.input-otp-fill-solid.sc-ion-input-otp-ios-h{--border-color:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2))}.input-otp-disabled.sc-ion-input-otp-ios-h{--color:var(--ion-color-step-350, var(--ion-text-color-step-650, #a6a6a6))}.input-otp-fill-outline.input-otp-disabled.sc-ion-input-otp-ios-h{--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--border-color:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.input-otp-disabled.sc-ion-input-otp-ios-h,.input-otp-disabled.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios:disabled{cursor:not-allowed}.has-focus.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios:focus{--border-color:var(--highlight-color);outline:none}.input-otp-fill-outline.input-otp-readonly.sc-ion-input-otp-ios-h{--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2))}.input-otp-fill-solid.input-otp-disabled.sc-ion-input-otp-ios-h,.input-otp-fill-solid.input-otp-readonly.sc-ion-input-otp-ios-h{--border-color:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6));--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.ion-touched.ion-invalid.sc-ion-input-otp-ios-h{--highlight-color:var(--highlight-color-invalid)}.ion-valid.sc-ion-input-otp-ios-h{--highlight-color:var(--highlight-color-valid)}.has-focus.ion-valid.sc-ion-input-otp-ios-h,.ion-touched.ion-invalid.sc-ion-input-otp-ios-h{--border-color:var(--highlight-color)}.ion-color.sc-ion-input-otp-ios-h{--highlight-color-focused:var(--ion-color-base)}.input-otp-fill-outline.ion-color.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios,.input-otp-fill-solid.ion-color.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios:focus{border-color:rgba(var(--ion-color-base-rgb), 0.6)}.input-otp-fill-outline.ion-color.ion-invalid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios,.input-otp-fill-solid.ion-color.ion-invalid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios,.input-otp-fill-outline.ion-color.has-focus.ion-invalid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios,.input-otp-fill-solid.ion-color.has-focus.ion-invalid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios{border-color:var(--ion-color-danger, #c5000f)}.input-otp-fill-outline.ion-color.ion-valid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios,.input-otp-fill-solid.ion-color.ion-valid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios,.input-otp-fill-outline.ion-color.has-focus.ion-valid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios,.input-otp-fill-solid.ion-color.has-focus.ion-valid.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios{border-color:var(--ion-color-success, #2dd55b)}.input-otp-fill-outline.input-otp-disabled.ion-color.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios{border-color:rgba(var(--ion-color-base-rgb), 0.3)}.sc-ion-input-otp-ios-h{--border-width:0.55px}.has-focus.sc-ion-input-otp-ios-h .native-input.sc-ion-input-otp-ios:focus{--border-width:1px}.input-otp-fill-outline.sc-ion-input-otp-ios-h{--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, var(--ion-background-color-step-250, #c8c7cc))))}";
16951
+
16952
+ const inputOtpMdCss = ".sc-ion-input-otp-md-h{--margin-top:0;--margin-end:0;--margin-bottom:0;--margin-start:0;--padding-top:16px;--padding-end:0;--padding-bottom:16px;--padding-start:0;--color:initial;--min-width:40px;--separator-width:8px;--separator-height:var(--separator-width);--separator-border-radius:999px;--separator-color:var(--ion-color-step-150, var(--ion-background-color-step-150, #d9d9d9));--highlight-color-focused:var(--ion-color-primary, #0054e9);--highlight-color-valid:var(--ion-color-success, #2dd55b);--highlight-color-invalid:var(--ion-color-danger, #c5000f);--highlight-color:var(--highlight-color-focused);display:block;position:relative;font-size:0.875rem}.input-otp-group.sc-ion-input-otp-md{-webkit-margin-start:var(--margin-start);margin-inline-start:var(--margin-start);-webkit-margin-end:var(--margin-end);margin-inline-end:var(--margin-end);margin-top:var(--margin-top);margin-bottom:var(--margin-bottom);-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.native-wrapper.sc-ion-input-otp-md{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:var(--min-width)}.native-input.sc-ion-input-otp-md{border-radius:var(--border-radius);width:var(--width);min-width:inherit;height:var(--height);border-width:var(--border-width);border-style:solid;border-color:var(--border-color);background:var(--background);color:var(--color);font-size:inherit;text-align:center;-webkit-appearance:none;-moz-appearance:none;appearance:none}.has-focus.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md{caret-color:var(--highlight-color)}.input-otp-description.sc-ion-input-otp-md{color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));font-size:0.75rem;line-height:1.25rem;text-align:center}.input-otp-separator.sc-ion-input-otp-md{border-radius:var(--separator-border-radius);-ms-flex-negative:0;flex-shrink:0;width:var(--separator-width);height:var(--separator-height);background:var(--separator-color)}.input-otp-size-small.sc-ion-input-otp-md-h{--width:40px;--height:40px}.input-otp-size-small.sc-ion-input-otp-md-h .input-otp-group.sc-ion-input-otp-md{gap:8px}.input-otp-size-medium.sc-ion-input-otp-md-h{--width:48px;--height:48px}.input-otp-size-large.sc-ion-input-otp-md-h{--width:56px;--height:56px}.input-otp-size-medium.sc-ion-input-otp-md-h .input-otp-group.sc-ion-input-otp-md,.input-otp-size-large.sc-ion-input-otp-md-h .input-otp-group.sc-ion-input-otp-md{gap:12px}.input-otp-shape-round.sc-ion-input-otp-md-h{--border-radius:16px}.input-otp-shape-soft.sc-ion-input-otp-md-h{--border-radius:8px}.input-otp-shape-rectangular.sc-ion-input-otp-md-h{--border-radius:0}.input-otp-fill-outline.sc-ion-input-otp-md-h{--background:none}.input-otp-fill-solid.sc-ion-input-otp-md-h{--border-color:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2))}.input-otp-disabled.sc-ion-input-otp-md-h{--color:var(--ion-color-step-350, var(--ion-text-color-step-650, #a6a6a6))}.input-otp-fill-outline.input-otp-disabled.sc-ion-input-otp-md-h{--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2));--border-color:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.input-otp-disabled.sc-ion-input-otp-md-h,.input-otp-disabled.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md:disabled{cursor:not-allowed}.has-focus.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md:focus{--border-color:var(--highlight-color);outline:none}.input-otp-fill-outline.input-otp-readonly.sc-ion-input-otp-md-h{--background:var(--ion-color-step-50, var(--ion-background-color-step-50, #f2f2f2))}.input-otp-fill-solid.input-otp-disabled.sc-ion-input-otp-md-h,.input-otp-fill-solid.input-otp-readonly.sc-ion-input-otp-md-h{--border-color:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6));--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.ion-touched.ion-invalid.sc-ion-input-otp-md-h{--highlight-color:var(--highlight-color-invalid)}.ion-valid.sc-ion-input-otp-md-h{--highlight-color:var(--highlight-color-valid)}.has-focus.ion-valid.sc-ion-input-otp-md-h,.ion-touched.ion-invalid.sc-ion-input-otp-md-h{--border-color:var(--highlight-color)}.ion-color.sc-ion-input-otp-md-h{--highlight-color-focused:var(--ion-color-base)}.input-otp-fill-outline.ion-color.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md,.input-otp-fill-solid.ion-color.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md:focus{border-color:rgba(var(--ion-color-base-rgb), 0.6)}.input-otp-fill-outline.ion-color.ion-invalid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md,.input-otp-fill-solid.ion-color.ion-invalid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md,.input-otp-fill-outline.ion-color.has-focus.ion-invalid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md,.input-otp-fill-solid.ion-color.has-focus.ion-invalid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md{border-color:var(--ion-color-danger, #c5000f)}.input-otp-fill-outline.ion-color.ion-valid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md,.input-otp-fill-solid.ion-color.ion-valid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md,.input-otp-fill-outline.ion-color.has-focus.ion-valid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md,.input-otp-fill-solid.ion-color.has-focus.ion-valid.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md{border-color:var(--ion-color-success, #2dd55b)}.input-otp-fill-outline.input-otp-disabled.ion-color.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md{border-color:rgba(var(--ion-color-base-rgb), 0.3)}.sc-ion-input-otp-md-h{--border-width:1px}.has-focus.sc-ion-input-otp-md-h .native-input.sc-ion-input-otp-md:focus{--border-width:2px}.input-otp-fill-outline.sc-ion-input-otp-md-h{--border-color:var(--ion-color-step-300, var(--ion-background-color-step-300, #b3b3b3))}";
16953
+
16954
+ class InputOTP {
16955
+ constructor(hostRef) {
16956
+ registerInstance(this, hostRef);
16957
+ this.ionInput = createEvent(this, "ionInput", 7);
16958
+ this.ionChange = createEvent(this, "ionChange", 7);
16959
+ this.ionComplete = createEvent(this, "ionComplete", 7);
16960
+ this.ionBlur = createEvent(this, "ionBlur", 7);
16961
+ this.ionFocus = createEvent(this, "ionFocus", 7);
16962
+ this.inputRefs = [];
16963
+ this.inputId = `ion-input-otp-${inputIds++}`;
16964
+ this.parsedSeparators = [];
16965
+ /**
16966
+ * Tracks whether the user is navigating through input boxes using keyboard navigation
16967
+ * (arrow keys, tab) versus mouse clicks. This is used to determine the appropriate
16968
+ * focus behavior when an input box is focused.
16969
+ */
16970
+ this.isKeyboardNavigation = false;
16971
+ this.inputValues = [];
16972
+ this.hasFocus = false;
16973
+ /**
16974
+ * Indicates whether and how the text value should be automatically capitalized as it is entered/edited by the user.
16975
+ * Available options: `"off"`, `"none"`, `"on"`, `"sentences"`, `"words"`, `"characters"`.
16976
+ */
16977
+ this.autocapitalize = 'off';
16978
+ /**
16979
+ * If `true`, the user cannot interact with the input.
16980
+ */
16981
+ this.disabled = false;
16982
+ /**
16983
+ * The fill for the input boxes. If `"solid"` the input boxes will have a background. If
16984
+ * `"outline"` the input boxes will be transparent with a border.
16985
+ */
16986
+ this.fill = 'outline';
16987
+ /**
16988
+ * The number of input boxes to display.
16989
+ */
16990
+ this.length = 4;
16991
+ /**
16992
+ * If `true`, the user cannot modify the value.
16993
+ */
16994
+ this.readonly = false;
16995
+ /**
16996
+ * The size of the input boxes.
16997
+ */
16998
+ this.size = 'medium';
16999
+ /**
17000
+ * The shape of the input boxes.
17001
+ * If "round" they will have an increased border radius.
17002
+ * If "rectangular" they will have no border radius.
17003
+ * If "soft" they will have a soft border radius.
17004
+ */
17005
+ this.shape = 'round';
17006
+ /**
17007
+ * The type of input allowed in the input boxes.
17008
+ */
17009
+ this.type = 'number';
17010
+ /**
17011
+ * The value of the input group.
17012
+ */
17013
+ this.value = '';
17014
+ this.onInput = (index) => (event) => {
17015
+ const { validKeys } = this;
17016
+ const value = event.target.value;
17017
+ // Only allow input if it's a single character and matches the pattern
17018
+ if (value.length > 1 || (value.length > 0 && !validKeys.test(value))) {
17019
+ // Reset the input value if not valid
17020
+ this.inputRefs[index].value = '';
17021
+ this.inputValues[index] = '';
17022
+ return;
17023
+ }
17024
+ // Find the first empty box before or at the current index
17025
+ let targetIndex = index;
17026
+ for (let i = 0; i < index; i++) {
17027
+ if (!this.inputValues[i] || this.inputValues[i] === '') {
17028
+ targetIndex = i;
17029
+ break;
17030
+ }
17031
+ }
17032
+ // Set the value at the target index
17033
+ this.inputValues[targetIndex] = value;
17034
+ // If the value was entered in a later box, clear the current box
17035
+ if (targetIndex !== index) {
17036
+ this.inputRefs[index].value = '';
17037
+ }
17038
+ if (value.length > 0) {
17039
+ this.focusNext(targetIndex);
17040
+ }
17041
+ this.updateValue(event);
17042
+ };
17043
+ /**
17044
+ * Handles keyboard navigation and input for the OTP component.
17045
+ *
17046
+ * Navigation:
17047
+ * - Backspace: Clears current input and moves to previous box if empty
17048
+ * - Arrow Left/Right: Moves focus between input boxes
17049
+ * - Tab: Allows normal tab navigation between components
17050
+ *
17051
+ * Input Behavior:
17052
+ * - Validates input against the allowed pattern
17053
+ * - When entering a key in a filled box:
17054
+ * - Shifts existing values right if there is room
17055
+ * - Updates the value of the input group
17056
+ * - Prevents default behavior to avoid automatic focus shift
17057
+ */
17058
+ this.onKeyDown = (index) => (event) => {
17059
+ const { length } = this;
17060
+ const rtl = isRTL$1(this.el);
17061
+ const input = event.target;
17062
+ const isPasteShortcut = (event.metaKey || event.ctrlKey) && event.key.toLowerCase() === 'v';
17063
+ const isTextSelection = input.selectionStart !== input.selectionEnd;
17064
+ // Return if the key is the paste shortcut or the input value
17065
+ // text is selected and let the onPaste / onInput handler manage it
17066
+ if (isPasteShortcut || isTextSelection) {
17067
+ return;
17068
+ }
17069
+ if (event.key === 'Backspace') {
17070
+ if (this.inputValues[index]) {
17071
+ // Remove the value at the current index
17072
+ this.inputValues[index] = '';
17073
+ // Shift all values to the right of the current index left by one
17074
+ for (let i = index; i < length - 1; i++) {
17075
+ this.inputValues[i] = this.inputValues[i + 1];
17076
+ }
17077
+ // Clear the last box
17078
+ this.inputValues[length - 1] = '';
17079
+ // Update all inputRefs to match inputValues
17080
+ for (let i = 0; i < length; i++) {
17081
+ this.inputRefs[i].value = this.inputValues[i] || '';
17082
+ }
17083
+ this.updateValue(event);
17084
+ event.preventDefault();
17085
+ }
17086
+ else if (!this.inputValues[index] && index > 0) {
17087
+ // If current input is empty, move to previous input
17088
+ this.focusPrevious(index);
17089
+ }
17090
+ }
17091
+ else if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {
17092
+ this.isKeyboardNavigation = true;
17093
+ event.preventDefault();
17094
+ const isLeft = event.key === 'ArrowLeft';
17095
+ const shouldMoveNext = (isLeft && rtl) || (!isLeft && !rtl);
17096
+ // Only allow moving to the next input if the current has a value
17097
+ if (shouldMoveNext) {
17098
+ if (this.inputValues[index] && index < length - 1) {
17099
+ this.focusNext(index);
17100
+ }
17101
+ }
17102
+ else {
17103
+ this.focusPrevious(index);
17104
+ }
17105
+ }
17106
+ else if (event.key === 'Tab') {
17107
+ this.isKeyboardNavigation = true;
17108
+ // Let all tab events proceed normally
17109
+ return;
17110
+ }
17111
+ // If the input box contains a value and the key being
17112
+ // entered is a valid key for the input box update the value
17113
+ // and shift the values to the right if there is room.
17114
+ if (this.inputValues[index] && this.validKeys.test(event.key)) {
17115
+ if (!this.inputValues[length - 1]) {
17116
+ for (let i = length - 1; i > index; i--) {
17117
+ this.inputValues[i] = this.inputValues[i - 1];
17118
+ this.inputRefs[i].value = this.inputValues[i] || '';
17119
+ }
17120
+ }
17121
+ this.inputValues[index] = event.key;
17122
+ this.inputRefs[index].value = event.key;
17123
+ this.updateValue(event);
17124
+ // Prevent default to avoid the browser from
17125
+ // automatically moving the focus to the next input
17126
+ event.preventDefault();
17127
+ }
17128
+ };
17129
+ /**
17130
+ * Handles pasting text into the input OTP component.
17131
+ * This function prevents the default paste behavior and
17132
+ * validates the pasted text against the allowed pattern.
17133
+ * It then updates the value of the input group and focuses
17134
+ * the next empty input after pasting.
17135
+ */
17136
+ this.onPaste = (event) => {
17137
+ var _a, _b, _c;
17138
+ const { inputRefs, length, validKeys } = this;
17139
+ event.preventDefault();
17140
+ const pastedText = (_a = event.clipboardData) === null || _a === void 0 ? void 0 : _a.getData('text');
17141
+ // If there is no pasted text, still emit the input change event
17142
+ // because this is how the native input element behaves
17143
+ // but return early because there is nothing to paste.
17144
+ if (!pastedText) {
17145
+ this.emitIonInput(event);
17146
+ return;
17147
+ }
17148
+ const validChars = pastedText
17149
+ .split('')
17150
+ .filter((char) => validKeys.test(char))
17151
+ .slice(0, length);
17152
+ // Find the first empty input
17153
+ const startIndex = this.getFirstEmptyIndex();
17154
+ // If all boxes are filled, start at 0
17155
+ const pasteStart = startIndex === -1 ? 0 : startIndex;
17156
+ validChars.forEach((char, index) => {
17157
+ const targetIndex = pasteStart + index;
17158
+ if (targetIndex < length) {
17159
+ this.inputRefs[targetIndex].value = char;
17160
+ this.inputValues[targetIndex] = char;
17161
+ }
17162
+ });
17163
+ this.updateValue(event);
17164
+ // Focus the next empty input after pasting
17165
+ // If all boxes are filled, focus the last input
17166
+ const nextEmptyIndex = pasteStart + validChars.length;
17167
+ if (nextEmptyIndex < length) {
17168
+ (_b = inputRefs[nextEmptyIndex]) === null || _b === void 0 ? void 0 : _b.focus();
17169
+ }
17170
+ else {
17171
+ (_c = inputRefs[length - 1]) === null || _c === void 0 ? void 0 : _c.focus();
17172
+ }
17173
+ };
17174
+ /**
17175
+ * Handles the focus behavior for the input OTP component.
17176
+ *
17177
+ * Focus behavior:
17178
+ * 1. Keyboard navigation: Allow normal focus movement
17179
+ * 2. Mouse click:
17180
+ * - If clicked box has value: Focus that box
17181
+ * - If clicked box is empty: Focus first empty box
17182
+ *
17183
+ * Emits the `ionFocus` event when the input group gains focus.
17184
+ */
17185
+ this.onFocus = (index) => (event) => {
17186
+ var _a;
17187
+ const { inputRefs } = this;
17188
+ // Only emit ionFocus and set the focusedValue when the
17189
+ // component first gains focus
17190
+ if (!this.hasFocus) {
17191
+ this.ionFocus.emit(event);
17192
+ this.focusedValue = this.value;
17193
+ }
17194
+ this.hasFocus = true;
17195
+ let finalIndex = index;
17196
+ if (!this.isKeyboardNavigation) {
17197
+ // If the clicked box has a value, focus it
17198
+ // Otherwise focus the first empty box
17199
+ const targetIndex = this.inputValues[index] ? index : this.getFirstEmptyIndex();
17200
+ finalIndex = targetIndex === -1 ? this.length - 1 : targetIndex;
17201
+ // Focus the target box
17202
+ (_a = this.inputRefs[finalIndex]) === null || _a === void 0 ? void 0 : _a.focus();
17203
+ }
17204
+ // Update tabIndexes to match the focused box
17205
+ inputRefs.forEach((input, i) => {
17206
+ input.tabIndex = i === finalIndex ? 0 : -1;
17207
+ });
17208
+ // Reset the keyboard navigation flag
17209
+ this.isKeyboardNavigation = false;
17210
+ };
17211
+ /**
17212
+ * Handles the blur behavior for the input OTP component.
17213
+ * Emits the `ionBlur` event when the input group loses focus.
17214
+ */
17215
+ this.onBlur = (event) => {
17216
+ const { inputRefs } = this;
17217
+ const relatedTarget = event.relatedTarget;
17218
+ // Do not emit blur if we're moving to another input box in the same component
17219
+ const isInternalFocus = relatedTarget != null && inputRefs.includes(relatedTarget);
17220
+ if (!isInternalFocus) {
17221
+ this.hasFocus = false;
17222
+ // Reset tabIndexes when focus leaves the component
17223
+ this.updateTabIndexes();
17224
+ // Always emit ionBlur when focus leaves the component
17225
+ this.ionBlur.emit(event);
17226
+ // Only emit ionChange if the value has actually changed
17227
+ if (this.focusedValue !== this.value) {
17228
+ this.emitIonChange(event);
17229
+ }
17230
+ }
17231
+ };
17232
+ }
17233
+ valueChanged() {
17234
+ this.initializeValues();
17235
+ }
17236
+ /**
17237
+ * Processes the separators prop into an array of numbers.
17238
+ *
17239
+ * If the separators prop is not provided, returns an empty array.
17240
+ * If the separators prop is 'all', returns an array of all valid positions (1 to length-1).
17241
+ * If the separators prop is an array, returns it as is.
17242
+ * If the separators prop is a string, splits it by commas and parses each part as a number.
17243
+ *
17244
+ * If the separators are greater than the input length, it will warn and ignore the separators.
17245
+ */
17246
+ processSeparators() {
17247
+ const { separators, length } = this;
17248
+ if (separators === undefined) {
17249
+ this.parsedSeparators = [];
17250
+ return;
17251
+ }
17252
+ if (typeof separators === 'string' && separators !== 'all') {
17253
+ const isValidFormat = /^(\d+)(,\d+)*$/.test(separators);
17254
+ if (!isValidFormat) {
17255
+ printIonWarning(`[ion-input-otp] - Invalid separators format. Expected a comma-separated list of numbers, an array of numbers, or "all". Received: ${separators}`, this.el);
17256
+ this.parsedSeparators = [];
17257
+ return;
17258
+ }
17259
+ }
17260
+ let separatorValues;
17261
+ if (separators === 'all') {
17262
+ separatorValues = Array.from({ length: length - 1 }, (_, i) => i + 1);
17263
+ }
17264
+ else if (Array.isArray(separators)) {
17265
+ separatorValues = separators;
17266
+ }
17267
+ else {
17268
+ separatorValues = separators
17269
+ .split(',')
17270
+ .map((pos) => parseInt(pos, 10))
17271
+ .filter((pos) => !isNaN(pos));
17272
+ }
17273
+ // Check for duplicate separator positions
17274
+ const duplicates = separatorValues.filter((pos, index) => separatorValues.indexOf(pos) !== index);
17275
+ if (duplicates.length > 0) {
17276
+ printIonWarning(`[ion-input-otp] - Duplicate separator positions are not allowed. Received: ${separators}`, this.el);
17277
+ }
17278
+ const invalidSeparators = separatorValues.filter((pos) => pos > length);
17279
+ if (invalidSeparators.length > 0) {
17280
+ printIonWarning(`[ion-input-otp] - The following separator positions are greater than the input length (${length}): ${invalidSeparators.join(', ')}. These separators will be ignored.`, this.el);
17281
+ }
17282
+ this.parsedSeparators = separatorValues.filter((pos) => pos <= length);
17283
+ }
17284
+ componentWillLoad() {
17285
+ this.processSeparators();
17286
+ this.initializeValues();
17287
+ }
17288
+ /**
17289
+ * Initializes the input values array based on the current value prop.
17290
+ * This splits the value into individual characters and validates them against
17291
+ * the allowed pattern. The values are then used as the values in the native
17292
+ * input boxes and the value of the input group is updated.
17293
+ */
17294
+ initializeValues() {
17295
+ if (this.value != null && String(this.value).length > 0) {
17296
+ const chars = String(this.value).split('').slice(0, this.length);
17297
+ chars.forEach((char, index) => {
17298
+ if (this.validKeys.test(char)) {
17299
+ this.inputValues[index] = char;
17300
+ }
17301
+ });
17302
+ // Update the value without emitting events
17303
+ this.value = this.inputValues.join('');
17304
+ }
17305
+ }
17306
+ /**
17307
+ * Resets the input values and focus state.
17308
+ */
17309
+ async reset() {
17310
+ this.inputValues = Array(this.length).fill('');
17311
+ this.value = '';
17312
+ this.focusedValue = null;
17313
+ this.hasFocus = false;
17314
+ this.inputRefs.forEach((input) => {
17315
+ input.blur();
17316
+ });
17317
+ this.updateTabIndexes();
17318
+ }
17319
+ /**
17320
+ * Sets focus to an input box.
17321
+ * @param index - The index of the input box to focus (0-based).
17322
+ * If provided and the input box has a value, the input box at that index will be focused.
17323
+ * Otherwise, the first empty input box or the last input if all are filled will be focused.
17324
+ */
17325
+ async setFocus(index) {
17326
+ var _a, _b;
17327
+ if (typeof index === 'number') {
17328
+ const validIndex = Math.max(0, Math.min(index, this.length - 1));
17329
+ (_a = this.inputRefs[validIndex]) === null || _a === void 0 ? void 0 : _a.focus();
17330
+ }
17331
+ else {
17332
+ const tabbableIndex = this.getTabbableIndex();
17333
+ (_b = this.inputRefs[tabbableIndex]) === null || _b === void 0 ? void 0 : _b.focus();
17334
+ }
17335
+ }
17336
+ /**
17337
+ * Get the regex pattern for allowed characters.
17338
+ * If a pattern is provided, use it to create a regex pattern
17339
+ * Otherwise, use the default regex pattern based on type
17340
+ */
17341
+ get validKeys() {
17342
+ return new RegExp(`^${this.getPattern()}$`);
17343
+ }
17344
+ /**
17345
+ * Gets the string pattern to pass to the input element
17346
+ * and use in the regex for allowed characters.
17347
+ */
17348
+ getPattern() {
17349
+ const { pattern, type } = this;
17350
+ if (pattern) {
17351
+ return pattern;
17352
+ }
17353
+ return type === 'number' ? '[0-9]' : '[a-zA-Z0-9]';
17354
+ }
17355
+ /**
17356
+ * Get the default value for inputmode.
17357
+ * If inputmode is provided, use it.
17358
+ * Otherwise, use the default inputmode based on type
17359
+ */
17360
+ getInputmode() {
17361
+ const { inputmode } = this;
17362
+ if (inputmode) {
17363
+ return inputmode;
17364
+ }
17365
+ if (this.type == 'number') {
17366
+ return 'numeric';
17367
+ }
17368
+ else {
17369
+ return 'text';
17370
+ }
17371
+ }
17372
+ /**
17373
+ * Updates the value of the input group.
17374
+ * This updates the value of the input group and emits an `ionChange` event.
17375
+ * If all of the input boxes are filled, it emits an `ionComplete` event.
17376
+ */
17377
+ updateValue(event) {
17378
+ const { inputValues, length } = this;
17379
+ const newValue = inputValues.join('');
17380
+ this.value = newValue;
17381
+ this.emitIonInput(event);
17382
+ if (newValue.length === length) {
17383
+ this.ionComplete.emit({ value: newValue });
17384
+ }
17385
+ }
17386
+ /**
17387
+ * Emits an `ionChange` event.
17388
+ * This API should be called for user committed changes.
17389
+ * This API should not be used for external value changes.
17390
+ */
17391
+ emitIonChange(event) {
17392
+ const { value } = this;
17393
+ // Checks for both null and undefined values
17394
+ const newValue = value == null ? value : value.toString();
17395
+ this.ionChange.emit({ value: newValue, event });
17396
+ }
17397
+ /**
17398
+ * Emits an `ionInput` event.
17399
+ * This is used to emit the input value when the user types,
17400
+ * backspaces, or pastes.
17401
+ */
17402
+ emitIonInput(event) {
17403
+ const { value } = this;
17404
+ // Checks for both null and undefined values
17405
+ const newValue = value == null ? value : value.toString();
17406
+ this.ionInput.emit({ value: newValue, event });
17407
+ }
17408
+ /**
17409
+ * Focuses the next input box.
17410
+ */
17411
+ focusNext(currentIndex) {
17412
+ var _a;
17413
+ const { inputRefs, length } = this;
17414
+ if (currentIndex < length - 1) {
17415
+ (_a = inputRefs[currentIndex + 1]) === null || _a === void 0 ? void 0 : _a.focus();
17416
+ }
17417
+ }
17418
+ /**
17419
+ * Focuses the previous input box.
17420
+ */
17421
+ focusPrevious(currentIndex) {
17422
+ var _a;
17423
+ const { inputRefs } = this;
17424
+ if (currentIndex > 0) {
17425
+ (_a = inputRefs[currentIndex - 1]) === null || _a === void 0 ? void 0 : _a.focus();
17426
+ }
17427
+ }
17428
+ /**
17429
+ * Determines if a separator should be shown for a given index by
17430
+ * checking if the index is included in the parsed separators array.
17431
+ */
17432
+ showSeparator(index) {
17433
+ const { length } = this;
17434
+ return this.parsedSeparators.includes(index + 1) && index < length - 1;
17435
+ }
17436
+ /**
17437
+ * Updates the tabIndexes for the input boxes.
17438
+ * This is used to ensure that the correct input is
17439
+ * focused when the user navigates using the tab key.
17440
+ */
17441
+ updateTabIndexes() {
17442
+ const { inputRefs, inputValues, length } = this;
17443
+ // Find first empty index after any filled boxes
17444
+ let firstEmptyIndex = -1;
17445
+ for (let i = 0; i < length; i++) {
17446
+ if (!inputValues[i] || inputValues[i] === '') {
17447
+ firstEmptyIndex = i;
17448
+ break;
17449
+ }
17450
+ }
17451
+ // Update tabIndex for all inputs
17452
+ inputRefs.forEach((input, index) => {
17453
+ // If all boxes are filled, make the last box tabbable
17454
+ // Otherwise, make the first empty box tabbable
17455
+ const shouldBeTabbable = firstEmptyIndex === -1 ? index === length - 1 : firstEmptyIndex === index;
17456
+ input.tabIndex = shouldBeTabbable ? 0 : -1;
17457
+ });
17458
+ }
17459
+ /**
17460
+ * Loops through the input values and returns the index
17461
+ * of the first empty input.
17462
+ * Returns -1 if all inputs are filled.
17463
+ */
17464
+ getFirstEmptyIndex() {
17465
+ const { inputValues, length } = this;
17466
+ for (let i = 0; i < length; i++) {
17467
+ if (!inputValues[i] || inputValues[i] === '') {
17468
+ return i;
17469
+ }
17470
+ }
17471
+ return -1;
17472
+ }
17473
+ /**
17474
+ * Returns the index of the input that should be tabbed to.
17475
+ * If all inputs are filled, returns the last input's index.
17476
+ * Otherwise, returns the index of the first empty input.
17477
+ */
17478
+ getTabbableIndex() {
17479
+ const { length } = this;
17480
+ const firstEmptyIndex = this.getFirstEmptyIndex();
17481
+ return firstEmptyIndex === -1 ? length - 1 : firstEmptyIndex;
17482
+ }
17483
+ render() {
17484
+ const { autocapitalize, color, disabled, fill, hasFocus, inputId, inputRefs, inputValues, length, readonly, shape, size, } = this;
17485
+ const mode = getIonMode$1(this);
17486
+ const inputmode = this.getInputmode();
17487
+ const tabbableIndex = this.getTabbableIndex();
17488
+ const pattern = this.getPattern();
17489
+ return (hAsync(Host, { key: '74de5578f268fe055f85dd2edae519e744555a2c', class: createColorClasses$1(color, {
17490
+ [mode]: true,
17491
+ 'has-focus': hasFocus,
17492
+ [`input-otp-size-${size}`]: true,
17493
+ [`input-otp-shape-${shape}`]: true,
17494
+ [`input-otp-fill-${fill}`]: true,
17495
+ 'input-otp-disabled': disabled,
17496
+ 'input-otp-readonly': readonly,
17497
+ }) }, hAsync("div", { key: '0990a8817aac2d540228aeee4c6a42239f4aedaa', role: "group", "aria-label": "One-time password input", class: "input-otp-group" }, Array.from({ length }).map((_, index) => (hAsync(Fragment, null, hAsync("div", { class: "native-wrapper" }, hAsync("input", { class: "native-input", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, maxLength: 1, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: index === 0 ? 'one-time-code' : 'off', ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && hAsync("div", { class: "input-otp-separator" }))))), hAsync("div", { key: 'e2c0fcfc7630d58360304d6e7b21b2e9a01971f6', class: "input-otp-description" }, hAsync("slot", { key: '9ba61fd056e67d5e1933f0b16f43e8a55de5319d' }))));
17498
+ }
17499
+ get el() { return getElement(this); }
17500
+ static get watchers() { return {
17501
+ "value": ["valueChanged"],
17502
+ "separators": ["processSeparators"],
17503
+ "length": ["processSeparators"]
17504
+ }; }
17505
+ static get style() { return {
17506
+ ios: inputOtpIosCss,
17507
+ md: inputOtpMdCss
17508
+ }; }
17509
+ static get cmpMeta() { return {
17510
+ "$flags$": 38,
17511
+ "$tagName$": "ion-input-otp",
17512
+ "$members$": {
17513
+ "autocapitalize": [1],
17514
+ "color": [513],
17515
+ "disabled": [516],
17516
+ "fill": [1],
17517
+ "inputmode": [1],
17518
+ "length": [2],
17519
+ "pattern": [1],
17520
+ "readonly": [516],
17521
+ "size": [1],
17522
+ "separators": [1],
17523
+ "shape": [1],
17524
+ "type": [1],
17525
+ "value": [1032],
17526
+ "inputValues": [32],
17527
+ "hasFocus": [32],
17528
+ "reset": [64],
17529
+ "setFocus": [64]
17530
+ },
17531
+ "$listeners$": undefined,
17532
+ "$lazyBundleId$": "-",
17533
+ "$attrsToReflect$": [["color", "color"], ["disabled", "disabled"], ["readonly", "readonly"]]
17534
+ }; }
17535
+ }
16937
17536
  let inputIds = 0;
16938
17537
 
16939
17538
  const iosInputPasswordToggleCss = "";
@@ -16995,16 +17594,16 @@ class InputPasswordToggle {
16995
17594
  const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
16996
17595
  const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
16997
17596
  const isPasswordVisible = type === 'text';
16998
- return (hAsync(Host, { key: '1a28e078c83e74c72d8bb8189ece93ec2e3fa3d0', class: createColorClasses$1(color, {
17597
+ return (hAsync(Host, { key: '91bc55664d496fe457518bd112865dd7811d0c17', class: createColorClasses$1(color, {
16999
17598
  [mode]: true,
17000
- }) }, hAsync("ion-button", { key: '039d1bab764093bb6fe4a34299b0872abda087fd', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": "show password", role: "switch", type: "button", onPointerDown: (ev) => {
17599
+ }) }, hAsync("ion-button", { key: '99f86e2ee97ffa6dbc74a433df4e22a867889dd7', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": "show password", role: "switch", type: "button", onPointerDown: (ev) => {
17001
17600
  /**
17002
17601
  * This prevents mobile browsers from
17003
17602
  * blurring the input when the password toggle
17004
17603
  * button is activated.
17005
17604
  */
17006
17605
  ev.preventDefault();
17007
- }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '26477ee97b808c3d79944bf5e33d4e05f1ae0b3f', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
17606
+ }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: 'e7656040b08c6a394d56f1fc41d6ca34225287d2', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
17008
17607
  }
17009
17608
  get el() { return getElement(this); }
17010
17609
  static get watchers() { return {
@@ -17314,11 +17913,11 @@ class ItemDivider {
17314
17913
  }
17315
17914
  render() {
17316
17915
  const mode = getIonMode$1(this);
17317
- return (hAsync(Host, { key: '7150b1a3a881c3c312db40821acb9830c2885ccf', class: createColorClasses$1(this.color, {
17916
+ return (hAsync(Host, { key: '1523095ce4af3f2611512ff0948ead659959ee4a', class: createColorClasses$1(this.color, {
17318
17917
  [mode]: true,
17319
17918
  'item-divider-sticky': this.sticky,
17320
17919
  item: true,
17321
- }) }, hAsync("slot", { key: '6e9d9615f475392a81177bc49b4b01dbdab67925', name: "start" }), hAsync("div", { key: '12fe6b840ad1a1897cc34529e488207b2df448f7', class: "item-divider-inner" }, hAsync("div", { key: '626776a8c9887dd2df5ecf3b7861beb742b41e03', class: "item-divider-wrapper" }, hAsync("slot", { key: '90379dd99914e24ae45c9571c8d390f9b6622fd4' })), hAsync("slot", { key: '105644332c08530155b9cd8e8c6fa9e332072a63', name: "end" }))));
17920
+ }) }, hAsync("slot", { key: '39105d888e115416c3a3fe588da44b4c61f4e5fe', name: "start" }), hAsync("div", { key: '67e16f1056bd39187f3629c1bb383b7abbda829b', class: "item-divider-inner" }, hAsync("div", { key: 'b3a218fdcc7b9aeab6e0155340152d39fa0b6329', class: "item-divider-wrapper" }, hAsync("slot", { key: '69d8587533b387869d34b075d02f61396858fc90' })), hAsync("slot", { key: 'b91c654699b3b26d0012ea0c719c4a07d1fcfbaa', name: "end" }))));
17322
17921
  }
17323
17922
  get el() { return getElement(this); }
17324
17923
  static get style() { return {
@@ -17348,7 +17947,7 @@ class ItemGroup {
17348
17947
  }
17349
17948
  render() {
17350
17949
  const mode = getIonMode$1(this);
17351
- return (hAsync(Host, { key: 'de2a969ed0dda880bc560a325848b28d0287fdb9', role: "group", class: {
17950
+ return (hAsync(Host, { key: 'e49dc8f99247d2431d7c6db01b6e021a0f5b1c37', role: "group", class: {
17352
17951
  [mode]: true,
17353
17952
  // Used internally for styling
17354
17953
  [`item-group-${mode}`]: true,
@@ -17418,12 +18017,12 @@ class ItemOption {
17418
18017
  href: this.href,
17419
18018
  target: this.target,
17420
18019
  };
17421
- return (hAsync(Host, { key: '1b7708dd178dc2c9280652ca3da38c84ba7b767f', onClick: this.onClick, class: createColorClasses$1(this.color, {
18020
+ return (hAsync(Host, { key: '189a0040b97163b2336bf216baa71d584c5923a8', onClick: this.onClick, class: createColorClasses$1(this.color, {
17422
18021
  [mode]: true,
17423
18022
  'item-option-disabled': disabled,
17424
18023
  'item-option-expandable': expandable,
17425
18024
  'ion-activatable': true,
17426
- }) }, hAsync(TagType, Object.assign({ key: 'd9f899f5425ad6b97071494485aa3ca90bc89d30' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: 'adc2cf72b4363be9b9eeb3584723e2bfc862af20', class: "button-inner" }, hAsync("slot", { key: 'e668fe8e655a74e6a35e979e0cd488506b962dbf', name: "top" }), hAsync("div", { key: '2ddcdb92b6b19c3cc549a7aee2400d1a6eeb51f1', class: "horizontal-wrapper" }, hAsync("slot", { key: '441f13df18b72e5ed6bb51b157722e065b5847d2', name: "start" }), hAsync("slot", { key: '425d815874b49e1628880160d7175ed3ca36ca39', name: "icon-only" }), hAsync("slot", { key: '27437d3fa3365b12bc030704e18481fdfb14aebb' }), hAsync("slot", { key: 'bd39330771c7f85c6df10f7f9050335ee7f14ff0', name: "end" })), hAsync("slot", { key: '440cb6dc7743d50b261d4bf61d2c24e24b89e58c', name: "bottom" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '29632941464bbb34551cf64961187643f62bf755' }))));
18025
+ }) }, hAsync(TagType, Object.assign({ key: '5a7140eb99da5ec82fe2ea3ea134513130763399' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: '9b8577e612706b43e575c9a20f2f9d35c0d1bcb1', class: "button-inner" }, hAsync("slot", { key: '9acb82f04e4822bfaa363cc2c4d29d5c0fec0ad6', name: "top" }), hAsync("div", { key: '66f5fb4fdd0c39f205574c602c793dcf109c7a17', class: "horizontal-wrapper" }, hAsync("slot", { key: '3761a32bca7c6c41b7eb394045497cfde181a62a', name: "start" }), hAsync("slot", { key: 'a96a568955cf6962883dc6771726d3d07462da00', name: "icon-only" }), hAsync("slot", { key: 'af5dfe5eb41456b9359bafe3615b576617ed7b57' }), hAsync("slot", { key: '00426958066ab7b949ff966fabad5cf8a0b54079', name: "end" })), hAsync("slot", { key: 'ae66c8bd536a9f27865f49240980d7b4b831b229', name: "bottom" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '30df6c935ef8a3f28a6bc1f3bb162ca4f80aaf26' }))));
17427
18026
  }
17428
18027
  get el() { return getElement(this); }
17429
18028
  static get style() { return {
@@ -17472,7 +18071,7 @@ class ItemOptions {
17472
18071
  render() {
17473
18072
  const mode = getIonMode$1(this);
17474
18073
  const isEnd = isEndSide(this.side);
17475
- return (hAsync(Host, { key: '7df4b71547524bf359c48e1b40ccbc44e850f632', class: {
18074
+ return (hAsync(Host, { key: '05a22a505e043c2715e3805e5e26ab4668940af0', class: {
17476
18075
  [mode]: true,
17477
18076
  // Used internally for styling
17478
18077
  [`item-options-${mode}`]: true,
@@ -17936,7 +18535,7 @@ class ItemSliding {
17936
18535
  }
17937
18536
  render() {
17938
18537
  const mode = getIonMode$1(this);
17939
- return (hAsync(Host, { key: 'f8aea4bb9802b111ef358cc6c172a635637ae1f8', class: {
18538
+ return (hAsync(Host, { key: '9880396ad79e06117d572a27f92c4b753d1e26db', class: {
17940
18539
  [mode]: true,
17941
18540
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
17942
18541
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -18041,13 +18640,13 @@ class Label {
18041
18640
  render() {
18042
18641
  const position = this.position;
18043
18642
  const mode = getIonMode$1(this);
18044
- return (hAsync(Host, { key: '4da84c95351a74b547f8224ecfa66924d21398c5', class: createColorClasses$1(this.color, {
18643
+ return (hAsync(Host, { key: 'd6fba1a97189acc8ddfd64a2f009954a3e46e188', class: createColorClasses$1(this.color, {
18045
18644
  [mode]: true,
18046
18645
  'in-item-color': hostContext('ion-item.ion-color', this.el),
18047
18646
  [`label-${position}`]: position !== undefined,
18048
18647
  [`label-no-animate`]: this.noAnimate,
18049
18648
  'label-rtl': document.dir === 'rtl',
18050
- }) }, hAsync("slot", { key: 'ea158ebb620275e5492965234d0ab925d391f919' })));
18649
+ }) }, hAsync("slot", { key: 'ce0ab50b5700398fdf50f36d02b7ad287eb71481' })));
18051
18650
  }
18052
18651
  get el() { return getElement(this); }
18053
18652
  static get watchers() { return {
@@ -18103,7 +18702,7 @@ class List {
18103
18702
  render() {
18104
18703
  const mode = getIonMode$1(this);
18105
18704
  const { lines, inset } = this;
18106
- return (hAsync(Host, { key: '5ff2b0b3989cc99ce17abb8bcd7ec1847940d1ec', role: "list", class: {
18705
+ return (hAsync(Host, { key: '7f9943751542d2cbd49a4ad3f28e16d9949f70d4', role: "list", class: {
18107
18706
  [mode]: true,
18108
18707
  // Used internally for styling
18109
18708
  [`list-${mode}`]: true,
@@ -18145,10 +18744,10 @@ class ListHeader {
18145
18744
  render() {
18146
18745
  const { lines } = this;
18147
18746
  const mode = getIonMode$1(this);
18148
- return (hAsync(Host, { key: '95ce2135e2b1ad4d7d6020b0fb9bc6e02b3c0851', class: createColorClasses$1(this.color, {
18747
+ return (hAsync(Host, { key: 'd9bc827ad8cc77231efddc2435831a7fc080f77d', class: createColorClasses$1(this.color, {
18149
18748
  [mode]: true,
18150
18749
  [`list-header-lines-${lines}`]: lines !== undefined,
18151
- }) }, hAsync("div", { key: '3065b0a094bc31a90518898a5126a813c8a33816', class: "list-header-inner" }, hAsync("slot", { key: 'fe15c87d7867f3e5d8185645c49c0228496697b8' }))));
18750
+ }) }, hAsync("div", { key: '02dd9698304a7b2997ea1487e2f308bebea2b44c', class: "list-header-inner" }, hAsync("slot", { key: '01d63a572c003286ae467a1ab23631e37e695042' }))));
18152
18751
  }
18153
18752
  static get style() { return {
18154
18753
  ios: listHeaderIosCss,
@@ -18434,9 +19033,9 @@ class Loading {
18434
19033
  * Otherwise, don't set aria-labelledby.
18435
19034
  */
18436
19035
  const ariaLabelledBy = message !== undefined ? msgId : null;
18437
- return (hAsync(Host, Object.assign({ key: 'd6066c8b56b1fe4b597a243a7dab191ef0d21286', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
19036
+ return (hAsync(Host, Object.assign({ key: '6369ed244c06c39aa338141bffacf7a861d7da1a', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
18438
19037
  zIndex: `${40000 + this.overlayIndex}`,
18439
- }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '2431eda00a2a3f510f5dfc39b7c7d47c056dfa3d', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'cf210aaf5e754e4eccdb49cf7ead4647b3f9b2d1', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'fa9375143d391656d70e181d25b952c77c2fc6ec', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: '8e4a4ed994f7f62df86b03696ac95162df41f52d', class: "loading-spinner" }, hAsync("ion-spinner", { key: 'e5b323c272d365853ba92bd211e390b4fd4751d2', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: 'cae35ec8c34800477bff3ebcec8010e632158233', tabindex: "0", "aria-hidden": "true" })));
19038
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '1fd5fd8581d59eec321e534f9116f3ec0501010a', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'b4028045b0c8fbb9946136d85d939d55120b867c', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'b045fb0e61cc28e8163d45be18b431918dc27c80', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: '2cf9df796f987d1251b3599d10a48ed87a1d0eb9', class: "loading-spinner" }, hAsync("ion-spinner", { key: '371cd41655402326adcb1e2fe1481009a83243b2', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: '2a5e5e66d22ee4c1cef0c93815ef023d47e7a8eb', tabindex: "0", "aria-hidden": "true" })));
18440
19039
  }
18441
19040
  get el() { return getElement(this); }
18442
19041
  static get watchers() { return {
@@ -19460,14 +20059,14 @@ class Menu {
19460
20059
  * the ionBackButton listener in the menu controller
19461
20060
  * will handle closing the menu when Escape is pressed.
19462
20061
  */
19463
- return (hAsync(Host, { key: '0a2ba4ff5600b80b54d1b5b45124779c6aa0d2f2', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
20062
+ return (hAsync(Host, { key: '9e4ae9476a76781f1d228395c9af9e1c39ec82bb', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
19464
20063
  [mode]: true,
19465
20064
  [`menu-type-${type}`]: true,
19466
20065
  'menu-enabled': !disabled,
19467
20066
  [`menu-side-${side}`]: true,
19468
20067
  'menu-pane-visible': isPaneVisible,
19469
20068
  'split-pane-side': hostContext('ion-split-pane', el),
19470
- } }, hAsync("div", { key: '40a222bcde4b959abc9939c44e89ea0cf8967aba', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '6a7ec5583294bb314990ff4ce6f25045652c07cb' })), hAsync("ion-backdrop", { key: '95f1e87237f3cc24845d91b744f935bad6bb460d', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
20069
+ } }, hAsync("div", { key: 'c6153589d872ac7e3fdf5eedfdb858eb64ccd713', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '9994aac4b22f17db34c9b8b2aa56b8710b9df645' })), hAsync("ion-backdrop", { key: 'f09ac30cc4dd2dcb10628965e659dae5a23baf98', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
19471
20070
  }
19472
20071
  get el() { return getElement(this); }
19473
20072
  static get watchers() { return {
@@ -19575,7 +20174,7 @@ class MenuButton {
19575
20174
  type: this.type,
19576
20175
  };
19577
20176
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
19578
- return (hAsync(Host, { key: '3cde3704f28eb275f4a5ff2985bbb68c1024e79c', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
20177
+ return (hAsync(Host, { key: '9f0f0e50d39a6872508220c58e64bb2092a0d7ef', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
19579
20178
  [mode]: true,
19580
20179
  button: true, // ion-buttons target .button
19581
20180
  'menu-button-hidden': hidden,
@@ -19584,7 +20183,7 @@ class MenuButton {
19584
20183
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
19585
20184
  'ion-activatable': true,
19586
20185
  'ion-focusable': true,
19587
- }) }, hAsync("button", Object.assign({ key: 'a02a3374288bd1759b6e352ada8eab0d45c6422f' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: 'ba699f2277a4e7b27ce5e42faeefc53d8805bb43', class: "button-inner" }, hAsync("slot", { key: '829fe6cbdeb173f50d1a670389d1565baa6273e4' }, hAsync("ion-icon", { key: 'a9a9f7b8dcffc648a8429fe0adbe766869de72fd', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && hAsync("ion-ripple-effect", { key: '48deca9a771a249f2fc76eaa8b9741c8d66d8355', type: "unbounded" }))));
20186
+ }) }, hAsync("button", Object.assign({ key: 'ffebf7083d23501839970059ef8e411b571de197' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: 'cab0c1c763b3ce33ef11dba1d230f66126e59424', class: "button-inner" }, hAsync("slot", { key: 'ccfd2be8479b75b5c63e97e1ca7dfe203e9b36ee' }, hAsync("ion-icon", { key: 'ac254fe7f327b08f1ae3fcea89d5cf0e83c9a96c', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && hAsync("ion-ripple-effect", { key: 'f0f17c4ca96e3eed3c1727ee00578d40af8f0115', type: "unbounded" }))));
19588
20187
  }
19589
20188
  get el() { return getElement(this); }
19590
20189
  static get style() { return {
@@ -19637,10 +20236,10 @@ class MenuToggle {
19637
20236
  render() {
19638
20237
  const mode = getIonMode$1(this);
19639
20238
  const hidden = this.autoHide && !this.visible;
19640
- return (hAsync(Host, { key: '88e88fa13ac7f10ba3acfe378bd11cda0c7e2749', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
20239
+ return (hAsync(Host, { key: 'cd567114769a30bd3871ed5d15bf42aed39956e1', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
19641
20240
  [mode]: true,
19642
20241
  'menu-toggle-hidden': hidden,
19643
- } }, hAsync("slot", { key: '0a14c7b63eda64702d2fd1b4bc7db4809892842d' })));
20242
+ } }, hAsync("slot", { key: '773d4cff95ca75f23578b1e1dca53c9933f28a33' })));
19644
20243
  }
19645
20244
  static get style() { return menuToggleCss; }
19646
20245
  static get cmpMeta() { return {
@@ -21972,18 +22571,18 @@ class Modal {
21972
22571
  const mode = getIonMode$1(this);
21973
22572
  const isCardModal = presentingElement !== undefined && mode === 'ios';
21974
22573
  const isHandleCycle = handleBehavior === 'cycle';
21975
- return (hAsync(Host, Object.assign({ key: '0991b2e4e32da511e59fb1463b47e4ac1b86d1ca', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
22574
+ return (hAsync(Host, Object.assign({ key: '0bcbdcfcd7d890eb599da3f97f21c317d34f8e0e', "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
21976
22575
  zIndex: `${20000 + this.overlayIndex}`,
21977
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: 'ca9453ffe1021fb252ad9460676cfabb5633f00f', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '9f8da446a7b0f3b26aec856e13f6d6d131a7e37b', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '9d08bf600571849c97b58f66df40b496a358d1e1',
22576
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle }), hAsync("ion-backdrop", { key: 'd72159e73daa5af7349aa9e8f695aa435eb43069', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: 'fd2d9b13676ae72473881649a397b6eacde03a03', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '908eccb1ad982dcde2dbcff0cbb18b6e60f8ba74',
21978
22577
  /*
21979
22578
  role and aria-modal must be used on the
21980
22579
  same element. They must also be set inside the
21981
22580
  shadow DOM otherwise ion-button will not be highlighted
21982
22581
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
21983
22582
  */
21984
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'f8bf0d1126e5376519101225d9965727121ee042', class: "modal-handle",
22583
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '332dc0b40363a77c7be62331d9f26def91c790e9', class: "modal-handle",
21985
22584
  // Prevents the handle from receiving keyboard focus when it does not cycle
21986
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: '6d52849df98f2c6c8fbc03996a931ea6a39a512b' }))));
22585
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle" })), hAsync("slot", { key: 'c32698350193c450327e97049daf8b8d1fda0d0e' }))));
21987
22586
  }
21988
22587
  get el() { return getElement(this); }
21989
22588
  static get watchers() { return {
@@ -22930,7 +23529,7 @@ class Nav {
22930
23529
  }
22931
23530
  }
22932
23531
  render() {
22933
- return hAsync("slot", { key: '188d0abd6c047d235380f07aac81223b757010e8' });
23532
+ return hAsync("slot", { key: '8067c9835d255daec61f33dba200fd3a6ff839a0' });
22934
23533
  }
22935
23534
  get el() { return getElement(this); }
22936
23535
  static get watchers() { return {
@@ -23003,7 +23602,7 @@ class NavLink {
23003
23602
  };
23004
23603
  }
23005
23604
  render() {
23006
- return hAsync(Host, { key: '9ba170d1b10e08e8a6b5e6a30d363871d455a0a9', onClick: this.onClick });
23605
+ return hAsync(Host, { key: '6dbb1ad4f351e9215375aac11ab9b53762e07a08', onClick: this.onClick });
23007
23606
  }
23008
23607
  get el() { return getElement(this); }
23009
23608
  static get cmpMeta() { return {
@@ -23034,9 +23633,9 @@ class Note {
23034
23633
  }
23035
23634
  render() {
23036
23635
  const mode = getIonMode$1(this);
23037
- return (hAsync(Host, { key: '3c3d9b2aa805c0bc1fdc6270a2bbf4dcc1b96c5b', class: createColorClasses$1(this.color, {
23636
+ return (hAsync(Host, { key: '0ec2ef7367d867fd7588611953f696eecdf3221e', class: createColorClasses$1(this.color, {
23038
23637
  [mode]: true,
23039
- }) }, hAsync("slot", { key: '39e34682009fcb705ecafe51825162734bdf14d3' })));
23638
+ }) }, hAsync("slot", { key: 'a200b94ddffb29cf6dabe6e984220930ea7efdef' })));
23040
23639
  }
23041
23640
  static get style() { return {
23042
23641
  ios: noteIosCss,
@@ -23796,11 +24395,11 @@ class Picker {
23796
24395
  render() {
23797
24396
  const { htmlAttributes } = this;
23798
24397
  const mode = getIonMode$1(this);
23799
- return (hAsync(Host, Object.assign({ key: 'b6b6ca6f9aa74681e6d67f64b366f5965fec2a6d', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
24398
+ return (hAsync(Host, Object.assign({ key: 'b95440747eb80cba23ae676d399d5e5816722c58', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
23800
24399
  zIndex: `${20000 + this.overlayIndex}`,
23801
24400
  }, class: Object.assign({ [mode]: true,
23802
24401
  // Used internally for styling
23803
- [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '20202ca1d7b6cd5f517a802879b39efb79033cb1', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '72fe76a1e1748593cdf38deab5100087bfa75983', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '921954cfc716f3774aab66677563754ff479a44a', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '224413950bfcf2a948e58c2554c2a37a4e6d0319', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: '7e688c2d0705940ec8a9ace493b679e6a9b68860', class: "picker-columns" }, hAsync("div", { key: '0ec2db79a9ca9e2a0b324b6c4b90176a0eb33df3', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: 'b8344f4f342fddc3f773435515567ef8f3accbb0', class: "picker-below-highlight" }))), hAsync("div", { key: '374c7a6b31b0a00ab3913faeea0ec3d6c02274b9', tabindex: "0", "aria-hidden": "true" })));
24402
+ [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '169d1c83ef40e7fcb134219a585298b403a70b0f', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '98518e5f5cea2dfb8dfa63d9545e9ae3a5765023', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '151755ab8eb23f9adafbfe201349398f5a69dee7', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '5dcf93b2f4fe8f4fce7c7aec8f85ef45a03ef470', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: 'fd5d66708edd38adc5a4d2fad7298969398a05e3', class: "picker-columns" }, hAsync("div", { key: '1b5830fd6cef1016af7736792c514965d6cb38a8', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: 'c6edeca7afd69e13c9c66ba36f261974fd0f8f78', class: "picker-below-highlight" }))), hAsync("div", { key: 'e2a4b24710e30579b14b82dbfd3761b2187797b5', tabindex: "0", "aria-hidden": "true" })));
23804
24403
  }
23805
24404
  get el() { return getElement(this); }
23806
24405
  static get watchers() { return {
@@ -24787,9 +25386,9 @@ class PickerColumnCmp {
24787
25386
  render() {
24788
25387
  const col = this.col;
24789
25388
  const mode = getIonMode$1(this);
24790
- return (hAsync(Host, { key: '88a3c9397c9ac92dd814074c8ae6ecf8e3420a2c', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
25389
+ return (hAsync(Host, { key: '5f3701279923f2b67b1e9e8f948b110857fc2e7b', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
24791
25390
  'max-width': this.col.columnWidth,
24792
- } }, col.prefix && (hAsync("div", { key: '4491a705d15337e6f45f3cf6fd21af5242474729', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: 'b0dd4b7a7a4c1edc4b73e7fb134ac85264072365', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: 'c16419ce6481d60fc3ba6b8d102a4edf0ede02aa', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
25391
+ } }, col.prefix && (hAsync("div", { key: '691ce6f6670e40128319ca7437a3bef8d7c8946c', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: 'bab1c4bcd7560b7e3d7fff5b000fffd79708b5b5', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: '66b5fe2b40499c8311763e51761a02a8ea01a853', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
24793
25392
  }
24794
25393
  get el() { return getElement(this); }
24795
25394
  static get watchers() { return {
@@ -24906,10 +25505,10 @@ class PickerColumnOption {
24906
25505
  render() {
24907
25506
  const { color, disabled, ariaLabel } = this;
24908
25507
  const mode = getIonMode$1(this);
24909
- return (hAsync(Host, { key: 'c1353e99c2aa19c0e3ddbe433557ed18e72e1c66', class: createColorClasses$1(color, {
25508
+ return (hAsync(Host, { key: 'f816729941aabcb31ddfdce3ffe2e2139030d715', class: createColorClasses$1(color, {
24910
25509
  [mode]: true,
24911
25510
  ['option-disabled']: disabled,
24912
- }) }, hAsync("button", { key: 'b4ee62ecf7458a07a56e8aa494485766a87a3fcb', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: '9ab1e4700c27103b676670a4b3521c183c6ab83d' }))));
25511
+ }) }, hAsync("button", { key: '48dff7833bb60fc8331cd353a0885e6affa683d1', tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, hAsync("slot", { key: 'f9224d0e7b7aa6c05b29abfdcfe0f30ad6ee3141' }))));
24913
25512
  }
24914
25513
  get el() { return getElement(this); }
24915
25514
  static get watchers() { return {
@@ -26315,9 +26914,9 @@ class Popover {
26315
26914
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
26316
26915
  const desktop = isPlatform('desktop');
26317
26916
  const enableArrow = arrow && !parentPopover;
26318
- return (hAsync(Host, Object.assign({ key: 'ff24e8d9677711248a36994cce568e74ba151499', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
26917
+ return (hAsync(Host, Object.assign({ key: '1de4862099cfcb5035e78008e6dc7c1371846f9a', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
26319
26918
  zIndex: `${20000 + this.overlayIndex}`,
26320
- }, 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 && hAsync("ion-backdrop", { key: 'aca68b4002a08b0e563a976a867141162c20f8b4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: '62d21d1eab5c6d675d49932559ffb161747e5fec', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '1b46cc77d5302637fc979353483bb5fd780fd1d3', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: 'a5657bff26e46d1959b71eb0992e7dc8fcae86f1', class: "popover-content", part: "content" }, hAsync("slot", { key: 'e1a98007226a46b51109e7004c4d338ca1bc0f9e' })))));
26919
+ }, 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 && hAsync("ion-backdrop", { key: '981aa4e0102cb93312ffbd8243cdf2a0cdc60469', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: '1a28ed55e9d34ef78cf0eb0178643301fd2dd75d', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '1c206ea5eb3c0b5883a3d45c34cd22dd5ffe4b65', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '5ba561486a328c0c7ab825995fdbfb7a196429a4', class: "popover-content", part: "content" }, hAsync("slot", { key: '00fc244ce9dcc2dfc677e6c34b7c8e7a330b2b03' })))));
26321
26920
  }
26322
26921
  get el() { return getElement(this); }
26323
26922
  static get watchers() { return {
@@ -26422,7 +27021,7 @@ class ProgressBar {
26422
27021
  const mode = getIonMode$1(this);
26423
27022
  // If the progress is displayed as a solid bar.
26424
27023
  const progressSolid = buffer === 1;
26425
- return (hAsync(Host, { key: 'd60eeaa18aaee607e083c0ef9d0de8178d47c4cd', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
27024
+ return (hAsync(Host, { key: 'dc69693b5d2dcb2b6e4296d7cb85bc27507f3fa6', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
26426
27025
  [mode]: true,
26427
27026
  [`progress-bar-${type}`]: true,
26428
27027
  'progress-paused': paused,
@@ -26606,7 +27205,7 @@ class Radio {
26606
27205
  const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
26607
27206
  const mode = getIonMode$1(this);
26608
27207
  const inItem = hostContext('ion-item', el);
26609
- return (hAsync(Host, { key: '8badd4aec277addc0793e14df21f73bb345e99b7', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
27208
+ return (hAsync(Host, { key: '3353b28172b7f837d4b38964169b5b5f4ba02788', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
26610
27209
  [mode]: true,
26611
27210
  'in-item': inItem,
26612
27211
  'radio-checked': checked,
@@ -26617,10 +27216,10 @@ class Radio {
26617
27216
  // Focus and active styling should not apply when the radio is in an item
26618
27217
  'ion-activatable': !inItem,
26619
27218
  'ion-focusable': !inItem,
26620
- }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '8765b847edc93a1b5a16506e155ed03da807bb10', class: "radio-wrapper" }, hAsync("div", { key: '3d568a0192a32d4f0b8a920019c79ff02639b5c9', class: {
27219
+ }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '418a0a48366ff900e97da123abf665bbbda87fb7', class: "radio-wrapper" }, hAsync("div", { key: '6e5acdd8c8f5d0ad26632a65396afef8094153d1', class: {
26621
27220
  'label-text-wrapper': true,
26622
27221
  'label-text-wrapper-hidden': !hasLabel,
26623
- }, part: "label" }, hAsync("slot", { key: '331f3dc2ce5f6ed8f124fc4560f92e0f7c668a85' })), hAsync("div", { key: '473bd4aaf448753e385f2dda3fddc9f56379aa19', class: "native-wrapper" }, this.renderRadioControl()))));
27222
+ }, part: "label" }, hAsync("slot", { key: '10b157162cd283d624153c747679609cf0bbf11e' })), hAsync("div", { key: '4c45cca95cb105cd6df1025a26e3c045272184a0', class: "native-wrapper" }, this.renderRadioControl()))));
26624
27223
  }
26625
27224
  get el() { return getElement(this); }
26626
27225
  static get watchers() { return {
@@ -26843,7 +27442,7 @@ class RadioGroup {
26843
27442
  const { label, labelId, el, name, value } = this;
26844
27443
  const mode = getIonMode$1(this);
26845
27444
  renderHiddenInput(true, el, name, value, false);
26846
- return (hAsync(Host, { key: 'cac92777297029d7fd1b6af264d92850e35dfbba', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, onClick: this.onClick, class: mode }, this.renderHintText(), hAsync("div", { key: '6b5c634dba30d54eedc031b077863f3d6a9d9e9b', class: "radio-group-wrapper" }, hAsync("slot", { key: '443edb3ff6f4c59d4c4324c8a19f2d6def47a322' }))));
27445
+ return (hAsync(Host, { key: '81b8ebc96b2f383c36717f290d2959cc921ad6e8', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, onClick: this.onClick, class: mode }, this.renderHintText(), hAsync("div", { key: '45b09efc10776b889a8f372cba80d25a3fc849da', class: "radio-group-wrapper" }, hAsync("slot", { key: '58714934542c2fdd7396de160364f3f06b32e8f8' }))));
26847
27446
  }
26848
27447
  get el() { return getElement(this); }
26849
27448
  static get watchers() { return {
@@ -27558,7 +28157,7 @@ class Range {
27558
28157
  const needsEndAdjustment = inItem && !hasEndContent;
27559
28158
  const mode = getIonMode$1(this);
27560
28159
  renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
27561
- return (hAsync(Host, { key: '3e065039ee048f1f70d97dba5dae98fa1315d867', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
28160
+ return (hAsync(Host, { key: '124909954930d95f353e8593fd967de1486b0315', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
27562
28161
  [mode]: true,
27563
28162
  'in-item': inItem,
27564
28163
  'range-disabled': disabled,
@@ -27567,10 +28166,10 @@ class Range {
27567
28166
  [`range-label-placement-${labelPlacement}`]: true,
27568
28167
  'range-item-start-adjustment': needsStartAdjustment,
27569
28168
  'range-item-end-adjustment': needsEndAdjustment,
27570
- }) }, hAsync("label", { key: '27ff22842c9ea79a1b9495302b926f70c9080a95', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: 'da1f9784be02dfe87d2fef34931d8b7f2148189e', class: {
28169
+ }) }, hAsync("label", { key: '0af177a2ba5869d3441c4b3f393835218807a418', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: '4d834224b9c834e88497f58af4339348cec9ca1c', class: {
27571
28170
  'label-text-wrapper': true,
27572
28171
  'label-text-wrapper-hidden': !hasLabel,
27573
- }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '4389bf30b08214f5b5917fc30976b38f7bcdd29b', class: "native-wrapper" }, hAsync("slot", { key: 'ad1b2745f8b061ee189617bb5c567e4f1d02250c', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: 'c6dec9e843e232af2a5f16a0f8ee56439c545d7a', name: "end" })))));
28172
+ }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '797d39ac73610f6d81d0b99d71982f98f2a66c88', class: "native-wrapper" }, hAsync("slot", { key: '88824589cac5bb2134c30bed067ed11f6e81d887', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '7207a1164b272f56634435f7bff9114fb5d9f085', name: "end" })))));
27574
28173
  }
27575
28174
  get el() { return getElement(this); }
27576
28175
  static get watchers() { return {
@@ -28520,7 +29119,7 @@ class Refresher {
28520
29119
  }
28521
29120
  render() {
28522
29121
  const mode = getIonMode$1(this);
28523
- return (hAsync(Host, { key: 'c717c16f2ca3e42351848cc8ad37918dec28961d', slot: "fixed", class: {
29122
+ return (hAsync(Host, { key: '8c7a5cc32da02a9cbeaa954258148683f60a6d1b', slot: "fixed", class: {
28524
29123
  [mode]: true,
28525
29124
  // Used internally for styling
28526
29125
  [`refresher-${mode}`]: true,
@@ -28744,7 +29343,7 @@ class RefresherContent {
28744
29343
  const pullingIcon = this.pullingIcon;
28745
29344
  const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
28746
29345
  const mode = getIonMode$1(this);
28747
- return (hAsync(Host, { key: 'fb78d7e31f8feb31025e58903eb9de85cb928dbd', class: mode }, hAsync("div", { key: '23f67800f09765ef8fde8cf85a843e19e667f337', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: '5a08d3b69762f8b51dcd3dcfbaf3fddb707257fa', class: "refresher-pulling-icon" }, hAsync("div", { key: '42a613b029e092acdff7fe613a429375d89f157e', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: '2f9cdc75938c4d306de7a717ed67901daef71c2c', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: '1f8a6347b4a46417ba55286a79f1a41f04bf9c91', class: "arrow-container" }, hAsync("ion-icon", { key: '326713d11d482d420ba5a739ff4528400a37e9ca', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: 'ab18c7cbea7bcbfa034f90f317652af4d93660ed', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: 'f488acd54acc8a61b6c5a279f0d7f9a437c370c0', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: '914ad6139442dac53af47120ea821fa11c309a38', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: '7eba732f5e2d72b90399d68a3e89617d8979b3d1', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: '838d66d8bef6f56622c62b1068e7fed29e094302', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
29346
+ return (hAsync(Host, { key: 'e235f8a9a84070ece2e2066ced234a64663bfa1d', class: mode }, hAsync("div", { key: '9121691818ddaa35801a5f442e144ac27686cf19', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: 'c8d65d740f1575041bd3b752c789077927397fe4', class: "refresher-pulling-icon" }, hAsync("div", { key: '309dd904977eaa788b09ea95b7fa4996a73bec5b', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: 'a2a1480f67775d56ca7822e76be1e9f983bca2f9', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: '811d7e06d324bf4b6a18a31427a43e5177f3ae3a', class: "arrow-container" }, hAsync("ion-icon", { key: '86cc48e2e8dc054ff6ff1299094da35b524be63d', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: '464ae097dbc95c18a2dd7dfd03f8489153dab719', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: 'ed6875978b9035add562caa743a68353743d978f', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: 'aff891924e44354543fec484e5cde1ca92e69904', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: '842d7ac4ff10a1058775493d62f31cbdcd34f7a0', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: '8c3e6195501e7e78d5cde1e3ad1fef90fd4a953f', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
28748
29347
  }
28749
29348
  get el() { return getElement(this); }
28750
29349
  static get cmpMeta() { return {
@@ -28785,7 +29384,7 @@ class Reorder {
28785
29384
  render() {
28786
29385
  const mode = getIonMode$1(this);
28787
29386
  const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
28788
- return (hAsync(Host, { key: '17adf3165f4e09283d5d6434d7cd47bd23519048', class: mode }, hAsync("slot", { key: 'd00d1cd97c689fc5c7b7175a2051cf697fe22871' }, hAsync("ion-icon", { key: 'eec219aebde6083de98358be3e75965c5a5dc3d0', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
29387
+ return (hAsync(Host, { key: 'e6807bb349725682e99e791ac65e729a360d64e8', class: mode }, hAsync("slot", { key: '1c691cdbffa6427ba08dc12184c69559ed5d5506' }, hAsync("ion-icon", { key: '8b4150302cdca475379582b2251737b5e74079b1', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
28789
29388
  }
28790
29389
  get el() { return getElement(this); }
28791
29390
  static get style() { return {
@@ -29041,7 +29640,7 @@ class ReorderGroup {
29041
29640
  }
29042
29641
  render() {
29043
29642
  const mode = getIonMode$1(this);
29044
- return (hAsync(Host, { key: '6ca009dd65302a914d459aec638e62977440db20', class: {
29643
+ return (hAsync(Host, { key: 'f30613b361c5c3095b7928a92fb4b1e8d6eff600', class: {
29045
29644
  [mode]: true,
29046
29645
  'reorder-enabled': !this.disabled,
29047
29646
  'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
@@ -29157,7 +29756,7 @@ class RippleEffect {
29157
29756
  }
29158
29757
  render() {
29159
29758
  const mode = getIonMode$1(this);
29160
- return (hAsync(Host, { key: '40c7f73e7f5f67e29f83e1236a61c6e1c9943c42', role: "presentation", class: {
29759
+ return (hAsync(Host, { key: 'ae9d3b1ed6773a9b9bb2267129f7e9af23b6c9fc', role: "presentation", class: {
29161
29760
  [mode]: true,
29162
29761
  unbounded: this.unbounded,
29163
29762
  } }));
@@ -30115,10 +30714,10 @@ class RouterLink {
30115
30714
  rel: this.rel,
30116
30715
  target: this.target,
30117
30716
  };
30118
- return (hAsync(Host, { key: '11183264fb6ae0db9a7a47c71b6862d60001b834', onClick: this.onClick, class: createColorClasses$1(this.color, {
30717
+ return (hAsync(Host, { key: 'd7f2affcde45c5fbb6cb46cd1c30008ee92a68c5', onClick: this.onClick, class: createColorClasses$1(this.color, {
30119
30718
  [mode]: true,
30120
30719
  'ion-activatable': true,
30121
- }) }, hAsync("a", Object.assign({ key: '3e0e5242161cb0df593d6d573e51b8ba750065a1' }, attrs), hAsync("slot", { key: '5bd808e98a4627bb1236f0d955f4b32971355417' }))));
30720
+ }) }, hAsync("a", Object.assign({ key: 'babafae85ca5c6429958d383feff0493ff8cf33e' }, attrs), hAsync("slot", { key: '50314e9555bbf6dffa0c50c3f763009dee59b10b' }))));
30122
30721
  }
30123
30722
  static get style() { return routerLinkCss; }
30124
30723
  static get cmpMeta() { return {
@@ -30315,7 +30914,7 @@ class RouterOutlet {
30315
30914
  return true;
30316
30915
  }
30317
30916
  render() {
30318
- return hAsync("slot", { key: 'e34e02b5154172c8d5cdd187b6ea58119b6946eb' });
30917
+ return hAsync("slot", { key: '84b50f1155b0d780dff802ee13223287259fd525' });
30319
30918
  }
30320
30919
  get el() { return getElement(this); }
30321
30920
  static get watchers() { return {
@@ -30348,7 +30947,7 @@ class Row {
30348
30947
  registerInstance(this, hostRef);
30349
30948
  }
30350
30949
  render() {
30351
- return (hAsync(Host, { key: 'a690022e2abdce6946d24264574e4aa0886a8ea5', class: getIonMode$1(this) }, hAsync("slot", { key: 'd1a0e831dd1dbfe7877d3ad01d0a3045a5fb29e3' })));
30950
+ return (hAsync(Host, { key: '65592a79621bd8f75f9566db3e8c05a4b8fc6048', class: getIonMode$1(this) }, hAsync("slot", { key: '56f09784db7a0299c9ce76dfcede185b295251ff' })));
30352
30951
  }
30353
30952
  static get style() { return rowCss; }
30354
30953
  static get cmpMeta() { return {
@@ -30791,8 +31390,8 @@ class Searchbar {
30791
31390
  const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
30792
31391
  const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
30793
31392
  const shouldShowCancelButton = this.shouldShowCancelButton();
30794
- const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '989f3e84c472ada6e66dd9b249d0d268bf17ce26', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: '7d335d4fde33822dc79d26b748ba2e98db7494bb', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
30795
- return (hAsync(Host, { key: 'd1a1972725e949fb102c91487aaa7b9d10c2d718', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
31393
+ const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '1a4a7b9efeffbff98f3e400f52367192a692d876', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: '5ac9bb7d7d4da3dcb6ad85c2eeddca5ebdf32d72', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
31394
+ return (hAsync(Host, { key: '4432996807ffe9372c7d6955c94366d5b920f6dd', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
30796
31395
  [mode]: true,
30797
31396
  'searchbar-animated': animated,
30798
31397
  'searchbar-disabled': this.disabled,
@@ -30802,14 +31401,14 @@ class Searchbar {
30802
31401
  'searchbar-has-focus': this.focused,
30803
31402
  'searchbar-should-show-clear': this.shouldShowClearButton(),
30804
31403
  'searchbar-should-show-cancel': this.shouldShowCancelButton(),
30805
- }) }, hAsync("div", { key: 'add53640b2994cb6b2bf02792dafe51aba6b1684', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: '160cc36459a4a652e7f41ccd14dcdc782278779e', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: '8825fd13af0d2dea451ccc0e00ae7b5021dc01c4', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: '8a7b56da278b9ca5c4f5a4ee9c01924fd5ae29d8', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
31404
+ }) }, hAsync("div", { key: 'ba70d82a6c005b28940c2bf4f03ecedb441ba7aa', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: '91dd264e043cf06e29bc452f1e940e50377f1df8', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: 'f32927f3ab0045cf34b8331ee3cae02a8438da89', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: '0f71fe7e3a7c40e3ab8af510f7a84643c22e43b8', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
30806
31405
  /**
30807
31406
  * This prevents mobile browsers from
30808
31407
  * blurring the input when the clear
30809
31408
  * button is activated.
30810
31409
  */
30811
31410
  ev.preventDefault();
30812
- }, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: '24c55274516ab012d8c25f03525c6cdb9409e52f', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
31411
+ }, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: 'd34f027ae676128aff9a9ed74805e195b7ee9fa2', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
30813
31412
  }
30814
31413
  get el() { return getElement(this); }
30815
31414
  static get watchers() { return {
@@ -31404,14 +32003,14 @@ class Segment {
31404
32003
  }
31405
32004
  render() {
31406
32005
  const mode = getIonMode$1(this);
31407
- return (hAsync(Host, { key: 'a64e39352050b516f7dc82ce95a4bcff8431d1d0', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
32006
+ return (hAsync(Host, { key: 'e67ed512739cf2cfe657b0c44ebc3dfb1e9fbb79', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
31408
32007
  [mode]: true,
31409
32008
  'in-toolbar': hostContext('ion-toolbar', this.el),
31410
32009
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
31411
32010
  'segment-activated': this.activated,
31412
32011
  'segment-disabled': this.disabled,
31413
32012
  'segment-scrollable': this.scrollable,
31414
- }) }, hAsync("slot", { key: 'bb3f3ec30e59e0461fa620d8961ab730cc802a4e', onSlotchange: this.onSlottedItemsChange })));
32013
+ }) }, hAsync("slot", { key: '804d8acfcb9abfeeee38244b015fbc5c36330b9e', onSlotchange: this.onSlottedItemsChange })));
31415
32014
  }
31416
32015
  get el() { return getElement(this); }
31417
32016
  static get watchers() { return {
@@ -31551,7 +32150,7 @@ class SegmentButton {
31551
32150
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
31552
32151
  const mode = getIonMode$1(this);
31553
32152
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
31554
- return (hAsync(Host, { key: 'd79dad80db69123510c6d52bbf4424558600c14a', class: {
32153
+ return (hAsync(Host, { key: '26cb7ee90455bcaa6416125802d7e5729fa05b5b', class: {
31555
32154
  [mode]: true,
31556
32155
  'in-toolbar': hostContext('ion-toolbar', this.el),
31557
32156
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -31567,7 +32166,7 @@ class SegmentButton {
31567
32166
  'ion-activatable': true,
31568
32167
  'ion-activatable-instant': true,
31569
32168
  'ion-focusable': true,
31570
- } }, hAsync("button", Object.assign({ key: '781fd7fef443a2fbd404b8a399d1203794759a69', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '64df08f60ea17481183f8ad284884b9979eaeb24', class: "button-inner" }, hAsync("slot", { key: '2b7ef328023ab5ccc0adc6f865e5e7121467eeb8' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '1fd5e6179227925a03b6c3b5258bbf4ea99bfef1' })), hAsync("div", { key: 'dbcedad6988b0eadeebe02bdafdedb8eb37af19c', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'f4f1789f66bdfa2de5445bc0d292116a93bad7cc', part: "indicator-background", class: "segment-button-indicator-background" }))));
32169
+ } }, hAsync("button", Object.assign({ key: '75add37f11c107d1e2cfdb154e08004e9579e863', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '8e720d2a3e304903685bf09d226a64e944d78a22', class: "button-inner" }, hAsync("slot", { key: 'c8e7b3ebf8f03042a1001155643b585283c73c65' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '3586ac317b8d82c92b0ccfbfae42f8778612321b' })), hAsync("div", { key: '9cf93957da9e8dc333c8b05327bb903385b1c5f4', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'd3b6f0b3860ec6896b46703f64ed1cc8c75612e3', part: "indicator-background", class: "segment-button-indicator-background" }))));
31571
32170
  }
31572
32171
  get el() { return getElement(this); }
31573
32172
  static get watchers() { return {
@@ -31602,7 +32201,7 @@ class SegmentContent {
31602
32201
  registerInstance(this, hostRef);
31603
32202
  }
31604
32203
  render() {
31605
- return (hAsync(Host, { key: '64b3965b14c749e77e9ce13b59f349d971e245c8' }, hAsync("slot", { key: '2d0bed34f9bc93f92e713cb51e42220f3cecd8f5' })));
32204
+ return (hAsync(Host, { key: 'db6876f2aee7afa1ea8bc147337670faa68fae1c' }, hAsync("slot", { key: 'bc05714a973a5655668679033f5809a1da6db8cc' })));
31606
32205
  }
31607
32206
  static get style() { return segmentContentCss; }
31608
32207
  static get cmpMeta() { return {
@@ -31715,10 +32314,10 @@ class SegmentView {
31715
32314
  }
31716
32315
  render() {
31717
32316
  const { disabled, isManualScroll } = this;
31718
- return (hAsync(Host, { key: 'fa528d2d9ae0f00fc3067defe2a047dce77c814a', class: {
32317
+ return (hAsync(Host, { key: '754a374e89fd4dd682eb00497e717242a6f83357', class: {
31719
32318
  'segment-view-disabled': disabled,
31720
32319
  'segment-view-scroll-disabled': isManualScroll === false,
31721
- } }, hAsync("slot", { key: '74dc8b4d073caeff1bab272d11b9ea3e1a215954' })));
32320
+ } }, hAsync("slot", { key: '77366044eb61f0d4bba305bd6f0ef8fd1e25194b' })));
31722
32321
  }
31723
32322
  get el() { return getElement(this); }
31724
32323
  static get style() { return {
@@ -32457,7 +33056,7 @@ class Select {
32457
33056
  * TODO(FW-5592): Remove hasStartEndSlots condition
32458
33057
  */
32459
33058
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
32460
- return (hAsync(Host, { key: 'e6c0498d6c275f89344f4b5146752a047058ad88', onClick: this.onClick, class: createColorClasses$1(this.color, {
33059
+ return (hAsync(Host, { key: 'd42f9434cdf0f22f8710f1f363096e12967695dd', onClick: this.onClick, class: createColorClasses$1(this.color, {
32461
33060
  [mode]: true,
32462
33061
  'in-item': inItem,
32463
33062
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -32475,7 +33074,7 @@ class Select {
32475
33074
  [`select-justify-${justify}`]: justifyEnabled,
32476
33075
  [`select-shape-${shape}`]: shape !== undefined,
32477
33076
  [`select-label-placement-${labelPlacement}`]: true,
32478
- }) }, hAsync("label", { key: 'f030b6bd329f8014c7227f5e5f1aeb7efa0e641a', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '7480e1b40d09e53a2942295d6c9dae474c9de810', class: "select-wrapper-inner" }, hAsync("slot", { key: '250fd2ff08b3e6ed04c7062455a044863481fe1c', name: "start" }), hAsync("div", { key: '11b73ad5b7decfe2d307f9d54293c21c0df3ddb8', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: 'ddedafc89061372567bd46354ef972f08c60e19d', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '792ce27aea18a0020c17dceb0f0e293171ded3a3', class: "select-highlight" })), this.renderBottomContent()));
33077
+ }) }, hAsync("label", { key: '51174c91a816a6fe63f498996861ab27dab4d416', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), hAsync("div", { key: '3d92a33e0482b0ef79ce6ed3dea9771dc3078abe', class: "select-wrapper-inner" }, hAsync("slot", { key: 'b19220872f1931c021bd6e111bfd7772904f0a72', name: "start" }), hAsync("div", { key: 'c8540be3898978738dd59d4de98da37b44e54c58', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '440a7f166528c4a3ccedffed1ea4e8f012f435c1', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'a6371e5eaec388b8a40e8e16cc81266578d6d070', class: "select-highlight" })), this.renderBottomContent()));
32479
33078
  }
32480
33079
  get el() { return getElement(this); }
32481
33080
  static get watchers() { return {
@@ -32634,7 +33233,7 @@ class SelectModal {
32634
33233
  } }, option.text))));
32635
33234
  }
32636
33235
  render() {
32637
- return (hAsync(Host, { key: '885198a9f21884e3bfb9bf0af53e0ee3ae37b231', class: getIonMode$1(this) }, hAsync("ion-header", { key: 'd8b63726869747ac711e4fda78a50ce46f72970c' }, hAsync("ion-toolbar", { key: '9ab2a4c1480dd74eeae38d7b580a2e87fb71270e' }, this.header !== undefined && hAsync("ion-title", { key: '87a7034385ef57f55cefdd0371dbb66a64827290' }, this.header), hAsync("ion-buttons", { key: '0a35424ea13ca002abc9a43b6138730254f187d0', slot: "end" }, hAsync("ion-button", { key: '238bf40b47128d9aa995d14d9ff9ebcae4f79492', onClick: () => this.closeModal() }, "Close")))), hAsync("ion-content", { key: '4a256f3381f8cabbc7194337b8ae4aa1c3ab1066' }, hAsync("ion-list", { key: 'acd38fc52024632176467ed6a84106a454021544' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
33236
+ return (hAsync(Host, { key: 'b6c0dec240b2e41985b15fdf4e5a6d3a145c1567', class: getIonMode$1(this) }, hAsync("ion-header", { key: 'cd177e85ee0f62a60a3a708342d6ab6eb19a44dc' }, hAsync("ion-toolbar", { key: 'aee8222a5a4daa540ad202b2e4cac1ef93d9558c' }, this.header !== undefined && hAsync("ion-title", { key: '5f8fecc764d97bf840d3d4cfddeeccd118ab4436' }, this.header), hAsync("ion-buttons", { key: '919033950d7c2b0101f96a9c9698219de9f568ea', slot: "end" }, hAsync("ion-button", { key: '34b571cab6dced4bde555a077a21e91800829931', onClick: () => this.closeModal() }, "Close")))), hAsync("ion-content", { key: '3c9153d26ba7a5a03d3b20fcd628d0c3031661a7' }, hAsync("ion-list", { key: 'e00b222c071bc97c82ad1bba4db95a8a5c43ed6d' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
32638
33237
  }
32639
33238
  get el() { return getElement(this); }
32640
33239
  static get style() { return {
@@ -32668,7 +33267,7 @@ class SelectOption {
32668
33267
  this.disabled = false;
32669
33268
  }
32670
33269
  render() {
32671
- return hAsync(Host, { key: '8c96c199ce3a3065de3fe446500f567236e0610a', role: "option", id: this.inputId, class: getIonMode$1(this) });
33270
+ return hAsync(Host, { key: '3a70eea9fa03a9acba582180761d18347c72acee', role: "option", id: this.inputId, class: getIonMode$1(this) });
32672
33271
  }
32673
33272
  get el() { return getElement(this); }
32674
33273
  static get style() { return selectOptionCss; }
@@ -32785,7 +33384,7 @@ class SelectPopover {
32785
33384
  render() {
32786
33385
  const { header, message, options, subHeader } = this;
32787
33386
  const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
32788
- return (hAsync(Host, { key: '542367ab8fb72bfebf7e65630b91017d68827fd6', class: getIonMode$1(this) }, hAsync("ion-list", { key: 'f2f0f37e1365cd7780b02de1a1698700d0df48a7' }, header !== undefined && hAsync("ion-list-header", { key: '4b8800a68e800f19277a44b7074ca24b70218daf' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: '932b7903daf97d5a57d289b7ee49e868bb9b0cf5' }, hAsync("ion-label", { key: 'fc3f1b69aa2a0bc6125d35692dcad3a8a99fd160', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: 'eceab2f47afa95f04b138342b0bdbfa1f50919a8' }, subHeader), message !== undefined && hAsync("p", { key: '70f4e27ad1316318efd0c17efce31e5e45c8fa02' }, message)))), this.renderOptions(options))));
33387
+ return (hAsync(Host, { key: 'ab931b49b59283825bd2afa3f7f995b0e6e05bef', class: getIonMode$1(this) }, hAsync("ion-list", { key: '3bd12b67832607596b912a73d5b3ae9b954b244d' }, header !== undefined && hAsync("ion-list-header", { key: '97da930246edf7423a039c030d40e3ff7a5148a3' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: 'c579df6ea8fac07bb0c59d34c69b149656863224' }, hAsync("ion-label", { key: 'af699c5f465710ccb13b8cf8e7be66f0e8acfad1', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: 'df9a936d42064b134e843c7229f314a2a3ec7e80' }, subHeader), message !== undefined && hAsync("p", { key: '9c3ddad378df00f106afa94e9928cf68c17124dd' }, message)))), this.renderOptions(options))));
32789
33388
  }
32790
33389
  get el() { return getElement(this); }
32791
33390
  static get style() { return {
@@ -32835,11 +33434,11 @@ class SkeletonText {
32835
33434
  const animated = this.animated && config.getBoolean('animated', true);
32836
33435
  const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
32837
33436
  const mode = getIonMode$1(this);
32838
- return (hAsync(Host, { key: 'c193f9a8e8efab5139544f047bdae4b6d421aa86', class: {
33437
+ return (hAsync(Host, { key: 'd86ef7392507cdbf48dfd3a71f02d7a83eda4aae', class: {
32839
33438
  [mode]: true,
32840
33439
  'skeleton-text-animated': animated,
32841
33440
  'in-media': inMedia,
32842
- } }, hAsync("span", { key: 'e15db679bd3c359b4df5123efd2f92e5b380fde3' }, "\u00A0")));
33441
+ } }, hAsync("span", { key: '8e8b5a232a6396d2bba691b05f9de4da44b2965c' }, "\u00A0")));
32843
33442
  }
32844
33443
  get el() { return getElement(this); }
32845
33444
  static get style() { return skeletonTextCss; }
@@ -32891,7 +33490,7 @@ class Spinner {
32891
33490
  svgs.push(buildLine(spinner, duration, i, spinner.lines));
32892
33491
  }
32893
33492
  }
32894
- return (hAsync(Host, { key: 'e0dfa8a3ee2a0469eb31323f506750bd77d65797', class: createColorClasses$1(self.color, {
33493
+ return (hAsync(Host, { key: 'a33d6421fcc885995fbc7a348516525f68ca496c', class: createColorClasses$1(self.color, {
32895
33494
  [mode]: true,
32896
33495
  [`spinner-${spinnerName}`]: true,
32897
33496
  'spinner-paused': self.paused || config.getBoolean('_testing'),
@@ -32990,12 +33589,12 @@ class SplitPane {
32990
33589
  }
32991
33590
  render() {
32992
33591
  const mode = getIonMode$1(this);
32993
- return (hAsync(Host, { key: '098801b5a318e2fc6913fb0d9079b1552927b99b', class: {
33592
+ return (hAsync(Host, { key: 'd5e30df12f1f1f855da4c66f98076b9dce762c59', class: {
32994
33593
  [mode]: true,
32995
33594
  // Used internally for styling
32996
33595
  [`split-pane-${mode}`]: true,
32997
33596
  'split-pane-visible': this.visible,
32998
- } }, hAsync("slot", { key: '8cbc6a942ecba54fc3c62027d46917db067b65c8' })));
33597
+ } }, hAsync("slot", { key: '3e30d7cf3bc1cf434e16876a0cb2a36377b8e00f' })));
32999
33598
  }
33000
33599
  get el() { return getElement(this); }
33001
33600
  static get watchers() { return {
@@ -33061,10 +33660,10 @@ class Tab {
33061
33660
  }
33062
33661
  render() {
33063
33662
  const { tab, active, component } = this;
33064
- return (hAsync(Host, { key: 'c36c113e74e12b58459df9e3b546ad4856187e90', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
33663
+ return (hAsync(Host, { key: 'dbad8fe9f1566277d14647626308eaf1601ab01f', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
33065
33664
  'ion-page': component === undefined,
33066
33665
  'tab-hidden': !active,
33067
- } }, hAsync("slot", { key: '0d7821dac70ba7a12edfb3331988f3df1566cc1a' })));
33666
+ } }, hAsync("slot", { key: '3be64f4e7161f6769aaf8e4dcb5293fcaa09af45' })));
33068
33667
  }
33069
33668
  get el() { return getElement(this); }
33070
33669
  static get watchers() { return {
@@ -33143,11 +33742,11 @@ class TabBar {
33143
33742
  const { color, translucent, keyboardVisible } = this;
33144
33743
  const mode = getIonMode$1(this);
33145
33744
  const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
33146
- return (hAsync(Host, { key: '62303a7f9d8c98ffab51a5900c144c5117b9c543', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
33745
+ return (hAsync(Host, { key: '275dc6c1b30f6928ce9039b2f445208bb3500ddc', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
33147
33746
  [mode]: true,
33148
33747
  'tab-bar-translucent': translucent,
33149
33748
  'tab-bar-hidden': shouldHide,
33150
- }) }, hAsync("slot", { key: '5771a9828f748c2bd6b5e26758b9723c6b3de5ff' })));
33749
+ }) }, hAsync("slot", { key: 'ceac20128d75c6a4a0f445f2df8deb8cc71fc4da' })));
33151
33750
  }
33152
33751
  get el() { return getElement(this); }
33153
33752
  static get watchers() { return {
@@ -33243,7 +33842,7 @@ class TabButton {
33243
33842
  rel,
33244
33843
  target,
33245
33844
  };
33246
- return (hAsync(Host, { key: 'a86d441d8df350fe991f2f948fc6b6ad007728f7', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
33845
+ return (hAsync(Host, { key: 'ce9d29ced0c781d6b2fa62cd5feb801c11fc42e8', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
33247
33846
  [mode]: true,
33248
33847
  'tab-selected': selected,
33249
33848
  'tab-disabled': disabled,
@@ -33255,7 +33854,7 @@ class TabButton {
33255
33854
  'ion-activatable': true,
33256
33855
  'ion-selectable': true,
33257
33856
  'ion-focusable': true,
33258
- } }, hAsync("a", Object.assign({ key: '8dfe1ccff2cf21601c5aea7f7f877c0fbe384e09' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: '3f557cf6e96e22b9318b4aee19ede810eb7fb720', class: "button-inner" }, hAsync("slot", { key: '836dd090dbe3c2ea97dc263fca7d01dea6ea0eb6' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '488a924fd04602c1b23e03d1a4c84dfa0f2ca03d', type: "unbounded" }))));
33857
+ } }, hAsync("a", Object.assign({ key: '01cb0ed2e77c5c1a8abd48da1bb07ac1b305d0b6' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: 'd0240c05f42217cfb186b86ff8a0c9cd70b9c8df', class: "button-inner" }, hAsync("slot", { key: '0a20b84925037dbaa8bb4a495b813d3f7c2e58ac' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '4c92c27178cdac89d69cffef8d2c39c3644914e8', type: "unbounded" }))));
33259
33858
  }
33260
33859
  get el() { return getElement(this); }
33261
33860
  static get style() { return {
@@ -33430,7 +34029,7 @@ class Tabs {
33430
34029
  return Array.from(this.el.querySelectorAll('ion-tab'));
33431
34030
  }
33432
34031
  render() {
33433
- return (hAsync(Host, { key: '20b97196d78c1b3f3faf31618a8a2347e087f06b', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: 'b0823fbae6e47743cfd12c376b365ad7e32cec7c', name: "top" }), hAsync("div", { key: 'eaffd7e4d69ab9489a387e3bbb36e3bab72203a0', class: "tabs-inner" }, hAsync("slot", { key: '20bb66a2937e3ec473aa59c4075ce581b5411677' })), hAsync("slot", { key: '1529dd361f050f52074f51c73b3982ba827dc3a5', name: "bottom" })));
34032
+ return (hAsync(Host, { key: '73ecd3294ca6c78ce6d8b6a7e5b6ccb11d84ada4', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '09661b26f07a3069a58e76ea4dceb9a6acbf365d', name: "top" }), hAsync("div", { key: 'db50d59fad8f9b11873b695fc548f3cfe4aceb6a', class: "tabs-inner" }, hAsync("slot", { key: '02694dde2d8381f48fc06dd9e79798c4bd540ccd' })), hAsync("slot", { key: '92c4661a5f3fa1c08c964fab7c422c1a2a03d3d8', name: "bottom" })));
33434
34033
  }
33435
34034
  get el() { return getElement(this); }
33436
34035
  static get style() { return tabsCss; }
@@ -33470,9 +34069,9 @@ class Text {
33470
34069
  }
33471
34070
  render() {
33472
34071
  const mode = getIonMode$1(this);
33473
- return (hAsync(Host, { key: '0c2546ea3f24b0a6bfd606199441d0a4edfa4ca1', class: createColorClasses$1(this.color, {
34072
+ return (hAsync(Host, { key: '361035eae7b92dc109794348d39bad2f596eb6be', class: createColorClasses$1(this.color, {
33474
34073
  [mode]: true,
33475
- }) }, hAsync("slot", { key: 'b7623ccb06f9461090a1f33e9f85886c7a4d5eff' })));
34074
+ }) }, hAsync("slot", { key: 'c7b8835cf485ba9ecd73298f0529276ce1ea0852' })));
33476
34075
  }
33477
34076
  static get style() { return textCss; }
33478
34077
  static get cmpMeta() { return {
@@ -33911,7 +34510,7 @@ class Textarea {
33911
34510
  * TODO(FW-5592): Remove hasStartEndSlots condition
33912
34511
  */
33913
34512
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
33914
- return (hAsync(Host, { key: 'f53b9060248d885b0b8639401871e52017e497db', class: createColorClasses$1(this.color, {
34513
+ return (hAsync(Host, { key: '550ae8e37d94a3f9950c191626beb2ba49ca25f7', class: createColorClasses$1(this.color, {
33915
34514
  [mode]: true,
33916
34515
  'has-value': hasValue,
33917
34516
  'has-focus': hasFocus,
@@ -33920,7 +34519,7 @@ class Textarea {
33920
34519
  [`textarea-shape-${shape}`]: shape !== undefined,
33921
34520
  [`textarea-label-placement-${labelPlacement}`]: true,
33922
34521
  'textarea-disabled': disabled,
33923
- }) }, hAsync("label", { key: '3bc32a0799d1dd7253eb5a963877964de620ccd0', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: 'f5302723f4561b179b249cb28f5a31223c5c4394', class: "textarea-wrapper-inner" }, hAsync("div", { key: '75b85c5bd85af72a41da3310f10877a654397eaf', class: "start-slot-wrapper" }, hAsync("slot", { key: '7adc67b4c2917d20c35eecc11a5530e93bc581ea', name: "start" })), hAsync("div", { key: '35cbeca046ec7a40bcbcbc4a70eb83628350ba54', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: 'e3496262d163b70558a0188abdf322cbd8b44dfd', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), hAsync("div", { key: 'f274576d2e0bb6dace2ec36c362cb68ecfcd2c69', class: "end-slot-wrapper" }, hAsync("slot", { key: '70c881103410e74b3a3ffda4cc889be66f89bf20', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: 'cf33a473dfb637d284acc2b62ca59c2839ee1104', class: "textarea-highlight" })), this.renderBottomContent()));
34522
+ }) }, hAsync("label", { key: 'd7567588fed56352f0d202d8d2a3a572abc072e4', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), hAsync("div", { key: 'e778956ae240ccdae855e3f5a0dc380e373f46e7', class: "textarea-wrapper-inner" }, hAsync("div", { key: 'fd02ecd700bae01d330f4767e206a12a5c9531fc', class: "start-slot-wrapper" }, hAsync("slot", { key: 'ef19a5aee8fc0d9a84d8c1a7e9862bcc116a8440', name: "start" })), hAsync("div", { key: '45ba34274b2a8f1e1fad3ea81f7ba90a11322019', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: 'bedfe94f99c5cff815673896c4df245abede6288', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), hAsync("div", { key: '3dc9d27e0cb922c33090c1091b7977af8543daef', class: "end-slot-wrapper" }, hAsync("slot", { key: '02424963e69d9c085f622fcc8ac70c78271b9f12', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: '1513528f3841b26d9725d14a2fb6b21af8a8a3c1', class: "textarea-highlight" })), this.renderBottomContent()));
33924
34523
  }
33925
34524
  get el() { return getElement(this); }
33926
34525
  static get watchers() { return {
@@ -33982,7 +34581,7 @@ class Thumbnail {
33982
34581
  registerInstance(this, hostRef);
33983
34582
  }
33984
34583
  render() {
33985
- return (hAsync(Host, { key: '7f5fd6c056da2d82feb2c3c33f3e6dec898787f5', class: getIonMode$1(this) }, hAsync("slot", { key: 'd15fd2b6cdc03777edc1930be95ad838e1b376c8' })));
34584
+ return (hAsync(Host, { key: '70ada828e8cf541ab3b47f94b7e56ce34114ef88', class: getIonMode$1(this) }, hAsync("slot", { key: 'c43e105669d2bae123619b616f3af8ca2f722d61' })));
33986
34585
  }
33987
34586
  static get style() { return thumbnailCss; }
33988
34587
  static get cmpMeta() { return {
@@ -34841,9 +35440,9 @@ class Toast {
34841
35440
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
34842
35441
  printIonWarning('[ion-toast] - This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
34843
35442
  }
34844
- return (hAsync(Host, Object.assign({ key: 'a2216d860255c99337464370dcb12f6125871a50', tabindex: "-1" }, this.htmlAttributes, { style: {
35443
+ return (hAsync(Host, Object.assign({ key: '425be734aee0eeef281ab1609a9f982ce8b5e852', tabindex: "-1" }, this.htmlAttributes, { style: {
34845
35444
  zIndex: `${60000 + this.overlayIndex}`,
34846
- }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: 'd5adf8bc4c6c52431600033a76c4795689f9b412', class: wrapperClass }, hAsync("div", { key: 'ab694497ae37ceba123217eb48800129b9bebb84', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '224854fa3989ce0eb69416cb5b0cc55fc9f131ea', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: 'c8e11fb5bdac202987f5c8613a0ebbd42bda946e', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
35445
+ }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '7c3ad1a8df9e21fc30fc179c7edebeabcf3c6874', class: wrapperClass }, hAsync("div", { key: 'f950c21e8d7bf92653e0bd52e820ed6b84fa8cf5', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '0266241927dbe16799adb57f9fc11bd5372877b2', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: '9ef4b87bad672af6a5b693af61375564daf1eeeb', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
34847
35446
  }
34848
35447
  get el() { return getElement(this); }
34849
35448
  static get watchers() { return {
@@ -35138,7 +35737,7 @@ class Toggle {
35138
35737
  const value = this.getValue();
35139
35738
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
35140
35739
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
35141
- return (hAsync(Host, { key: '4a79e050a8ec58650ca13c8ac087891dc608013b', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === errorTextId, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, class: createColorClasses$1(color, {
35740
+ return (hAsync(Host, { key: 'eef77257b1ef53c93b5a5ac8450b252ab2c450e0', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === errorTextId, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, class: createColorClasses$1(color, {
35142
35741
  [mode]: true,
35143
35742
  'in-item': hostContext('ion-item', el),
35144
35743
  'toggle-activated': activated,
@@ -35148,10 +35747,10 @@ class Toggle {
35148
35747
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
35149
35748
  [`toggle-label-placement-${labelPlacement}`]: true,
35150
35749
  [`toggle-${rtl}`]: true,
35151
- }) }, hAsync("label", { key: 'a733a3b0e458b917f12c1c6495fbb5f2455ff828', class: "toggle-wrapper", htmlFor: inputId }, hAsync("input", Object.assign({ key: '95fdd95755fe4d972a07d1dfa2865a26b9be519c', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, inheritedAttributes)), hAsync("div", { key: '8207caf19f2679e40bd23eacd694c24ea5819916', class: {
35750
+ }) }, hAsync("label", { key: '7af46191ed2c51de8a69839bf760048f1cff5710', class: "toggle-wrapper", htmlFor: inputId }, hAsync("input", Object.assign({ key: '1d235ff33bcd70a4e6859370bcc4be0dacfee69f', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, inheritedAttributes)), hAsync("div", { key: '1c83d272234206c7d8b7138fb2b466d099b7a422', class: {
35152
35751
  'label-text-wrapper': true,
35153
35752
  'label-text-wrapper-hidden': !hasLabel,
35154
- }, part: "label", id: inputLabelId }, hAsync("slot", { key: '4555e00e2997e0a20d2e2f736e7b048c2de5320e' }), this.renderHintText()), hAsync("div", { key: 'b60d3e41561cf2ae46fb6de09f5590fa127a6172', class: "native-wrapper" }, this.renderToggleControl()))));
35753
+ }, part: "label", id: inputLabelId }, hAsync("slot", { key: 'e6afe1ed4d6f478411cc7030c44492ba59509b22' }), this.renderHintText()), hAsync("div", { key: '6271c04a5954352d93cec8dbca753084d4bac9fd', class: "native-wrapper" }, this.renderToggleControl()))));
35155
35754
  }
35156
35755
  get el() { return getElement(this); }
35157
35756
  static get watchers() { return {
@@ -35259,10 +35858,10 @@ class Toolbar {
35259
35858
  this.childrenStyles.forEach((value) => {
35260
35859
  Object.assign(childStyles, value);
35261
35860
  });
35262
- return (hAsync(Host, { key: '402afe7ce0c97883cedd0e48a5a0492a9bfe76ae', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
35861
+ return (hAsync(Host, { key: 'f6c4f669a6a61c5eac4cbb5ea0aa97c48ae5bd46', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
35263
35862
  [mode]: true,
35264
35863
  'in-toolbar': hostContext('ion-toolbar', this.el),
35265
- })) }, hAsync("div", { key: '2465a6dc8d507ec650538378d1be2abd399c58ad', class: "toolbar-background", part: "background" }), hAsync("div", { key: '6075096afd12303b961e4fe9ad345ef2887573af', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '8b7eec1148cfeb339d87cdf9273f2104703e7601', name: "start" }), hAsync("slot", { key: 'b102d3926cade24faf78b7af78ad5e192c4c0308', name: "secondary" }), hAsync("div", { key: 'c6ab2e978328324c6f9e7892024cbcd8b8987067', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '86f8952c4355a9df5b4bbb95e9d0cafefd272d5b' })), hAsync("slot", { key: '501e43431da6b9dd35b47b79222f948d445f7a78', name: "primary" }), hAsync("slot", { key: '84bf1a15a5e52e8e94df9f479c4ce18004f5ab57', name: "end" }))));
35864
+ })) }, hAsync("div", { key: '9c81742ffa02de9ba7417025b077d05e67305074', class: "toolbar-background", part: "background" }), hAsync("div", { key: '5fc96d166fa47894a062e41541a9beee38078a36', class: "toolbar-container", part: "container" }, hAsync("slot", { key: 'b62c0d9d59a70176bdbf769aec6090d7a166853b', name: "start" }), hAsync("slot", { key: 'd01d3cc2c50e5aaa49c345b209fe8dbdf3d48131', name: "secondary" }), hAsync("div", { key: '3aaa3a2810aedd38c37eb616158ec7b9638528fc', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '357246690f8d5e1cc3ca369611d4845a79edf610' })), hAsync("slot", { key: '06ed3cca4f7ebff4a54cd877dad3cc925ccf9f75', name: "primary" }), hAsync("slot", { key: 'e453d43d14a26b0d72f41e1b81a554bab8ece811', name: "end" }))));
35266
35865
  }
35267
35866
  get el() { return getElement(this); }
35268
35867
  static get style() { return {
@@ -35308,11 +35907,11 @@ class ToolbarTitle {
35308
35907
  render() {
35309
35908
  const mode = getIonMode$1(this);
35310
35909
  const size = this.getSize();
35311
- return (hAsync(Host, { key: '3f7b19c99961dbb86c0a925218332528b22e6880', class: createColorClasses$1(this.color, {
35910
+ return (hAsync(Host, { key: 'e599c0bf1b0817df3fa8360bdcd6d787f751c371', class: createColorClasses$1(this.color, {
35312
35911
  [mode]: true,
35313
35912
  [`title-${size}`]: true,
35314
35913
  'title-rtl': document.dir === 'rtl',
35315
- }) }, hAsync("div", { key: '12054fbdd60e40a15875e442c20143766fc34fc3', class: "toolbar-title" }, hAsync("slot", { key: '9f14fb14a67d4bd1e4536a4d64a637fbe5a151c7' }))));
35914
+ }) }, hAsync("div", { key: '6e7eee9047d6759876bb31d7305b76efc7c4338c', class: "toolbar-title" }, hAsync("slot", { key: 'bf790eb4c83dd0af4f2fd1f85ab4af5819f46ff4' }))));
35316
35915
  }
35317
35916
  get el() { return getElement(this); }
35318
35917
  static get watchers() { return {
@@ -35371,6 +35970,7 @@ registerComponents([
35371
35970
  InfiniteScroll,
35372
35971
  InfiniteScrollContent,
35373
35972
  Input,
35973
+ InputOTP,
35374
35974
  InputPasswordToggle,
35375
35975
  Item,
35376
35976
  ItemDivider,