@ionic/core 8.8.20-dev.11789504012.1a675914 → 8.8.20-dev.11790000033.12788d65

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 (420) hide show
  1. package/components/ion-accordion.js +1 -1
  2. package/components/ion-action-sheet.js +1 -1
  3. package/components/ion-alert.js +1 -1
  4. package/components/ion-back-button.js +1 -1
  5. package/components/ion-breadcrumb.js +1 -1
  6. package/components/ion-button.js +1 -1
  7. package/components/ion-card.js +1 -1
  8. package/components/ion-checkbox.js +1 -1
  9. package/components/ion-chip.js +1 -1
  10. package/components/ion-col.js +1 -1
  11. package/components/ion-content.js +1 -1
  12. package/components/ion-datetime-button.js +1 -1
  13. package/components/ion-datetime.js +1 -1
  14. package/components/ion-divider.js +1 -1
  15. package/components/ion-fab-button.js +1 -1
  16. package/components/ion-fab-list.js +1 -1
  17. package/components/ion-fab.js +1 -1
  18. package/components/ion-footer.js +1 -1
  19. package/components/ion-gallery-item.js +1 -1
  20. package/components/ion-gallery.js +1 -1
  21. package/components/ion-grid.js +1 -1
  22. package/components/ion-header.js +1 -1
  23. package/components/ion-img.js +1 -1
  24. package/components/ion-infinite-scroll-content.js +1 -1
  25. package/components/ion-infinite-scroll.js +1 -1
  26. package/components/ion-input-otp.js +1 -1
  27. package/components/ion-input-password-toggle.js +1 -1
  28. package/components/ion-input.js +1 -1
  29. package/components/ion-item-divider.js +1 -1
  30. package/components/ion-item-group.js +1 -1
  31. package/components/ion-item-option.js +1 -1
  32. package/components/ion-item-options.js +1 -1
  33. package/components/ion-item-sliding.js +1 -1
  34. package/components/ion-item.js +1 -1
  35. package/components/ion-label.js +1 -1
  36. package/components/ion-list-header.js +1 -1
  37. package/components/ion-list.js +1 -1
  38. package/components/ion-loading.js +1 -1
  39. package/components/ion-menu-button.js +1 -1
  40. package/components/ion-menu-toggle.js +1 -1
  41. package/components/ion-menu.js +1 -1
  42. package/components/ion-modal.js +1 -1
  43. package/components/ion-nav-link.js +1 -1
  44. package/components/ion-nav.js +1 -1
  45. package/components/ion-note.js +1 -1
  46. package/components/ion-picker-column-option.js +1 -1
  47. package/components/ion-picker-column.js +1 -1
  48. package/components/ion-picker-legacy-column.js +1 -1
  49. package/components/ion-picker-legacy.js +1 -1
  50. package/components/ion-picker.js +1 -1
  51. package/components/ion-popover.js +1 -1
  52. package/components/ion-progress-bar.js +1 -1
  53. package/components/ion-radio-group.js +1 -1
  54. package/components/ion-radio.js +1 -1
  55. package/components/ion-range.js +1 -1
  56. package/components/ion-refresher-content.js +1 -1
  57. package/components/ion-refresher.js +1 -1
  58. package/components/ion-reorder-group.js +1 -1
  59. package/components/ion-reorder.js +1 -1
  60. package/components/ion-ripple-effect.js +1 -1
  61. package/components/ion-router-link.js +1 -1
  62. package/components/ion-router-outlet.js +1 -1
  63. package/components/ion-row.js +1 -1
  64. package/components/ion-searchbar.js +1 -1
  65. package/components/ion-segment-button.js +1 -1
  66. package/components/ion-segment-content.js +1 -1
  67. package/components/ion-segment-view.js +1 -1
  68. package/components/ion-segment.js +1 -1
  69. package/components/ion-select-modal.js +1 -1
  70. package/components/ion-select-option.js +1 -1
  71. package/components/ion-select-popover.js +1 -1
  72. package/components/ion-select.js +1 -1
  73. package/components/ion-skeleton-text.js +1 -1
  74. package/components/ion-spinner.js +1 -1
  75. package/components/ion-split-pane.js +1 -1
  76. package/components/ion-tab-bar.js +1 -1
  77. package/components/ion-tab-button.js +1 -1
  78. package/components/ion-tab.js +1 -1
  79. package/components/ion-tabs.js +1 -1
  80. package/components/ion-text.js +1 -1
  81. package/components/ion-textarea.js +1 -1
  82. package/components/ion-thumbnail.js +1 -1
  83. package/components/ion-title.js +1 -1
  84. package/components/ion-toast.js +1 -1
  85. package/components/ion-toggle.js +1 -1
  86. package/components/ion-toolbar.js +1 -1
  87. package/components/{p-C8kcgEG7.js → p-B39i6rpY.js} +1 -1
  88. package/components/p-BDqjX7Z_.js +4 -0
  89. package/components/{p-CH8ypgvS.js → p-BLP69XoA.js} +1 -1
  90. package/components/p-BYSs-jZz.js +4 -0
  91. package/components/{p-C2J-Hvv3.js → p-B_a4XnF2.js} +1 -1
  92. package/components/p-Ba2Mmm22.js +4 -0
  93. package/components/p-BnQAsi91.js +4 -0
  94. package/components/{p-Br6q6Rgq.js → p-BrF4HSay.js} +1 -1
  95. package/components/{p-Dh1f5tAK.js → p-Bs5kME4N.js} +1 -1
  96. package/components/{p-CMtmHGrE.js → p-C1L59jNd.js} +1 -1
  97. package/components/{p-CNlz8OTE.js → p-C784We0w.js} +1 -1
  98. package/components/p-CA81qANP.js +4 -0
  99. package/components/{p-C5Bnq_Hm.js → p-CHB9zWT6.js} +1 -1
  100. package/components/p-CJNsztW3.js +4 -0
  101. package/components/{p-DqkLOArC.js → p-CWqLCAML.js} +1 -1
  102. package/components/p-CaB0_AG0.js +4 -0
  103. package/components/{p-C-cw-bM-.js → p-CaXMr1SL.js} +1 -1
  104. package/components/{p-0rXxxCTt.js → p-Cc3oC60a.js} +1 -1
  105. package/components/{p-C5JYXyPD.js → p-CxoHM559.js} +1 -1
  106. package/components/p-D1t981Ih.js +4 -0
  107. package/components/{p-BZxBDeEU.js → p-D2tZEPGv.js} +1 -1
  108. package/components/{p-BXXTyrCp.js → p-D6zl6ZA8.js} +1 -1
  109. package/components/{p-C898H5L0.js → p-DNweMi32.js} +1 -1
  110. package/components/p-Df6WZ6z0.js +4 -0
  111. package/components/p-Dhi5xtNS.js +4 -0
  112. package/components/{p-BcWO94Sl.js → p-DkfVuzjA.js} +1 -1
  113. package/components/{p-fUXE2zLc.js → p-Ds3yn-R0.js} +1 -1
  114. package/components/p-VrmyB-Wu.js +4 -0
  115. package/components/p-fIOYmaqA.js +4 -0
  116. package/components/p-vUGYs065.js +4 -0
  117. package/dist/cjs/caret-down-vtVgfXIs.js +8 -0
  118. package/dist/cjs/caret-left-CxZXLRv5.js +8 -0
  119. package/dist/cjs/caret-right-CRCgv98E.js +8 -0
  120. package/dist/cjs/ion-accordion_2.cjs.entry.js +13 -9
  121. package/dist/cjs/ion-app_8.cjs.entry.js +13 -13
  122. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -2
  123. package/dist/cjs/ion-back-button.cjs.entry.js +11 -10
  124. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +27 -16
  125. package/dist/cjs/ion-checkbox.cjs.entry.js +14 -22
  126. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  127. package/dist/cjs/ion-col_3.cjs.entry.js +6 -6
  128. package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
  129. package/dist/cjs/ion-datetime_3.cjs.entry.js +48 -16
  130. package/dist/cjs/ion-divider.cjs.entry.js +2 -2
  131. package/dist/cjs/ion-fab_3.cjs.entry.js +17 -13
  132. package/dist/cjs/ion-gallery-item.cjs.entry.js +2 -2
  133. package/dist/cjs/ion-gallery.cjs.entry.js +2 -2
  134. package/dist/cjs/ion-img.cjs.entry.js +2 -2
  135. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
  136. package/dist/cjs/ion-input-otp.cjs.entry.js +3 -3
  137. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +27 -17
  138. package/dist/cjs/ion-input.cjs.entry.js +13 -6
  139. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  140. package/dist/cjs/ion-item_8.cjs.entry.js +26 -22
  141. package/dist/cjs/ion-loading.cjs.entry.js +2 -2
  142. package/dist/cjs/ion-menu_3.cjs.entry.js +15 -13
  143. package/dist/cjs/ion-modal.cjs.entry.js +4 -4
  144. package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
  145. package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
  146. package/dist/cjs/ion-picker-column.cjs.entry.js +3 -3
  147. package/dist/cjs/ion-picker.cjs.entry.js +2 -2
  148. package/dist/cjs/ion-popover.cjs.entry.js +2 -2
  149. package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
  150. package/dist/cjs/ion-radio_2.cjs.entry.js +5 -5
  151. package/dist/cjs/ion-range.cjs.entry.js +3 -3
  152. package/dist/cjs/ion-refresher_2.cjs.entry.js +6 -11
  153. package/dist/cjs/ion-reorder_2.cjs.entry.js +13 -6
  154. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  155. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  156. package/dist/cjs/ion-searchbar.cjs.entry.js +34 -8
  157. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  158. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
  159. package/dist/cjs/ion-segment_2.cjs.entry.js +4 -4
  160. package/dist/cjs/ion-select-modal.cjs.entry.js +8 -9
  161. package/dist/cjs/ion-select_3.cjs.entry.js +23 -10
  162. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  163. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  164. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
  165. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  166. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  167. package/dist/cjs/ion-textarea.cjs.entry.js +3 -3
  168. package/dist/cjs/ion-toast.cjs.entry.js +2 -2
  169. package/dist/cjs/ion-toggle.cjs.entry.js +27 -12
  170. package/dist/cjs/ionic.cjs.js +1 -1
  171. package/dist/cjs/list-a-7GSA6K.js +8 -0
  172. package/dist/cjs/loader.cjs.js +1 -1
  173. package/dist/cjs/x-BTF99yFH.js +8 -0
  174. package/dist/collection/components/accordion/accordion.js +13 -9
  175. package/dist/collection/components/back-button/back-button.js +11 -10
  176. package/dist/collection/components/breadcrumb/breadcrumb.js +26 -16
  177. package/dist/collection/components/checkbox/checkbox.ionic.css +40 -33
  178. package/dist/collection/components/checkbox/checkbox.ios.css +24 -30
  179. package/dist/collection/components/checkbox/checkbox.js +12 -22
  180. package/dist/collection/components/checkbox/checkbox.md.css +24 -30
  181. package/dist/collection/components/chip/chip.js +2 -2
  182. package/dist/collection/components/col/col.js +2 -2
  183. package/dist/collection/components/content/content.js +3 -3
  184. package/dist/collection/components/datetime/datetime.js +44 -12
  185. package/dist/collection/components/datetime-button/datetime-button.js +2 -2
  186. package/dist/collection/components/divider/divider.js +2 -2
  187. package/dist/collection/components/fab/fab.js +2 -2
  188. package/dist/collection/components/fab-button/fab-button.js +13 -9
  189. package/dist/collection/components/fab-list/fab-list.js +2 -2
  190. package/dist/collection/components/footer/footer.js +2 -2
  191. package/dist/collection/components/gallery/gallery.js +2 -2
  192. package/dist/collection/components/gallery-item/gallery-item.js +2 -2
  193. package/dist/collection/components/grid/grid.js +2 -2
  194. package/dist/collection/components/header/header.ionic.css +7 -2
  195. package/dist/collection/components/header/header.js +2 -2
  196. package/dist/collection/components/img/img.js +2 -2
  197. package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
  198. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
  199. package/dist/collection/components/input/input.js +13 -6
  200. package/dist/collection/components/input-otp/input-otp.js +3 -3
  201. package/dist/collection/components/input-password-toggle/input-password-toggle.js +26 -18
  202. package/dist/collection/components/item/item.js +14 -10
  203. package/dist/collection/components/item-divider/item-divider.js +2 -2
  204. package/dist/collection/components/item-group/item-group.js +1 -1
  205. package/dist/collection/components/item-option/item-option.js +2 -2
  206. package/dist/collection/components/item-options/item-options.js +1 -1
  207. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  208. package/dist/collection/components/label/label.js +2 -2
  209. package/dist/collection/components/list/list.js +1 -1
  210. package/dist/collection/components/list-header/list-header.js +2 -2
  211. package/dist/collection/components/loading/loading.js +2 -2
  212. package/dist/collection/components/menu/menu.js +2 -2
  213. package/dist/collection/components/menu-button/menu-button.js +11 -9
  214. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  215. package/dist/collection/components/modal/modal.js +4 -4
  216. package/dist/collection/components/nav/nav.js +1 -1
  217. package/dist/collection/components/nav-link/nav-link.js +1 -1
  218. package/dist/collection/components/note/note.js +2 -2
  219. package/dist/collection/components/picker/picker.js +2 -2
  220. package/dist/collection/components/picker-column/picker-column.js +3 -3
  221. package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
  222. package/dist/collection/components/picker-legacy/picker.js +2 -2
  223. package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
  224. package/dist/collection/components/popover/popover.js +2 -2
  225. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  226. package/dist/collection/components/radio/radio.js +3 -3
  227. package/dist/collection/components/radio-group/radio-group.js +2 -2
  228. package/dist/collection/components/range/range.js +3 -3
  229. package/dist/collection/components/refresher/refresher.js +1 -1
  230. package/dist/collection/components/refresher-content/refresher-content.js +4 -10
  231. package/dist/collection/components/reorder/reorder.js +12 -5
  232. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  233. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  234. package/dist/collection/components/router-link/router-link.js +2 -2
  235. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  236. package/dist/collection/components/row/row.js +2 -2
  237. package/dist/collection/components/searchbar/searchbar.js +32 -8
  238. package/dist/collection/components/segment/segment.js +2 -2
  239. package/dist/collection/components/segment-button/segment-button.js +2 -2
  240. package/dist/collection/components/segment-content/segment-content.js +1 -1
  241. package/dist/collection/components/segment-view/segment-view.js +2 -2
  242. package/dist/collection/components/select/select.js +20 -7
  243. package/dist/collection/components/select-modal/select-modal.js +8 -10
  244. package/dist/collection/components/select-option/select-option.js +1 -1
  245. package/dist/collection/components/select-popover/select-popover.js +2 -2
  246. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  247. package/dist/collection/components/spinner/spinner.js +1 -1
  248. package/dist/collection/components/split-pane/split-pane.js +2 -2
  249. package/dist/collection/components/tab/tab.js +2 -2
  250. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  251. package/dist/collection/components/tab-button/tab-button.js +2 -2
  252. package/dist/collection/components/tabs/tabs.js +1 -1
  253. package/dist/collection/components/text/text.js +2 -2
  254. package/dist/collection/components/textarea/textarea.js +3 -3
  255. package/dist/collection/components/thumbnail/thumbnail.js +2 -2
  256. package/dist/collection/components/title/title.js +2 -2
  257. package/dist/collection/components/toast/toast.js +2 -2
  258. package/dist/collection/components/toggle/toggle.js +25 -12
  259. package/dist/collection/components/toolbar/toolbar.js +2 -2
  260. package/dist/docs.json +10 -23
  261. package/dist/esm/caret-down-D1t981Ih.js +6 -0
  262. package/dist/esm/caret-left-fIOYmaqA.js +6 -0
  263. package/dist/esm/caret-right-BYSs-jZz.js +6 -0
  264. package/dist/esm/{index-PnwG0glX.js → index-B4Kq2YNk.js} +1 -1
  265. package/dist/esm/ion-accordion_2.entry.js +14 -10
  266. package/dist/esm/ion-app_8.entry.js +13 -13
  267. package/dist/esm/ion-avatar_3.entry.js +2 -2
  268. package/dist/esm/ion-back-button.entry.js +12 -11
  269. package/dist/esm/ion-breadcrumb_2.entry.js +28 -17
  270. package/dist/esm/ion-checkbox.entry.js +15 -23
  271. package/dist/esm/ion-chip.entry.js +2 -2
  272. package/dist/esm/ion-col_3.entry.js +6 -6
  273. package/dist/esm/ion-datetime-button.entry.js +2 -2
  274. package/dist/esm/ion-datetime_3.entry.js +49 -17
  275. package/dist/esm/ion-divider.entry.js +2 -2
  276. package/dist/esm/ion-fab_3.entry.js +18 -14
  277. package/dist/esm/ion-gallery-item.entry.js +2 -2
  278. package/dist/esm/ion-gallery.entry.js +2 -2
  279. package/dist/esm/ion-img.entry.js +2 -2
  280. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
  281. package/dist/esm/ion-input-otp.entry.js +3 -3
  282. package/dist/esm/ion-input-password-toggle.entry.js +29 -19
  283. package/dist/esm/ion-input.entry.js +14 -7
  284. package/dist/esm/ion-item-option_3.entry.js +4 -4
  285. package/dist/esm/ion-item_8.entry.js +27 -23
  286. package/dist/esm/ion-loading.entry.js +2 -2
  287. package/dist/esm/ion-menu_3.entry.js +16 -14
  288. package/dist/esm/ion-modal.entry.js +4 -4
  289. package/dist/esm/ion-nav_2.entry.js +2 -2
  290. package/dist/esm/ion-picker-column-option.entry.js +2 -2
  291. package/dist/esm/ion-picker-column.entry.js +3 -3
  292. package/dist/esm/ion-picker.entry.js +2 -2
  293. package/dist/esm/ion-popover.entry.js +2 -2
  294. package/dist/esm/ion-progress-bar.entry.js +1 -1
  295. package/dist/esm/ion-radio_2.entry.js +5 -5
  296. package/dist/esm/ion-range.entry.js +3 -3
  297. package/dist/esm/ion-refresher_2.entry.js +7 -12
  298. package/dist/esm/ion-reorder_2.entry.js +14 -7
  299. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  300. package/dist/esm/ion-route_4.entry.js +2 -2
  301. package/dist/esm/ion-searchbar.entry.js +35 -9
  302. package/dist/esm/ion-segment-content.entry.js +1 -1
  303. package/dist/esm/ion-segment-view.entry.js +2 -2
  304. package/dist/esm/ion-segment_2.entry.js +4 -4
  305. package/dist/esm/ion-select-modal.entry.js +10 -11
  306. package/dist/esm/ion-select_3.entry.js +24 -11
  307. package/dist/esm/ion-spinner.entry.js +1 -1
  308. package/dist/esm/ion-split-pane.entry.js +2 -2
  309. package/dist/esm/ion-tab-bar_2.entry.js +4 -4
  310. package/dist/esm/ion-tab_2.entry.js +3 -3
  311. package/dist/esm/ion-text.entry.js +2 -2
  312. package/dist/esm/ion-textarea.entry.js +3 -3
  313. package/dist/esm/ion-toast.entry.js +2 -2
  314. package/dist/esm/ion-toggle.entry.js +28 -13
  315. package/dist/esm/ionic.js +1 -1
  316. package/dist/esm/list-Dhi5xtNS.js +6 -0
  317. package/dist/esm/loader.js +1 -1
  318. package/dist/esm/x-BDqjX7Z_.js +6 -0
  319. package/dist/ionic/ionic.esm.js +1 -1
  320. package/dist/ionic/p-0166d6e5.entry.js +4 -0
  321. package/dist/ionic/p-0a0a66e2.entry.js +4 -0
  322. package/dist/ionic/p-0c636ad3.entry.js +4 -0
  323. package/dist/ionic/p-126031d2.entry.js +4 -0
  324. package/dist/ionic/p-1a609156.entry.js +4 -0
  325. package/dist/ionic/{p-4c8178d8.entry.js → p-1b473bad.entry.js} +1 -1
  326. package/dist/ionic/p-1c1c18da.entry.js +4 -0
  327. package/dist/ionic/{p-3eff3411.entry.js → p-1ce65194.entry.js} +1 -1
  328. package/dist/ionic/{p-b7c75507.entry.js → p-2016c1c0.entry.js} +1 -1
  329. package/dist/ionic/{p-54579b68.entry.js → p-2365483a.entry.js} +1 -1
  330. package/dist/ionic/{p-7ae06f6f.entry.js → p-296226f1.entry.js} +1 -1
  331. package/dist/ionic/p-2a54aec2.entry.js +4 -0
  332. package/dist/ionic/{p-59e59209.entry.js → p-2bf60b77.entry.js} +1 -1
  333. package/dist/ionic/{p-0115c2fa.entry.js → p-2e0184c0.entry.js} +1 -1
  334. package/dist/ionic/{p-c9cda5ce.entry.js → p-2e1d650a.entry.js} +1 -1
  335. package/dist/ionic/{p-6b86cb62.entry.js → p-316eed75.entry.js} +1 -1
  336. package/dist/ionic/{p-311ef139.entry.js → p-31a0c9c2.entry.js} +1 -1
  337. package/dist/ionic/p-40a21a22.entry.js +4 -0
  338. package/dist/ionic/p-431bc3ce.entry.js +4 -0
  339. package/dist/ionic/p-51542c69.entry.js +4 -0
  340. package/dist/ionic/{p-e95618c4.entry.js → p-5dedd699.entry.js} +1 -1
  341. package/dist/ionic/{p-1147fa06.entry.js → p-68e453f7.entry.js} +1 -1
  342. package/dist/ionic/p-711ba315.entry.js +4 -0
  343. package/dist/ionic/{p-a4bed36b.entry.js → p-731d11e1.entry.js} +1 -1
  344. package/dist/ionic/{p-a7914fe5.entry.js → p-75c7595c.entry.js} +1 -1
  345. package/dist/ionic/p-76232f5f.entry.js +4 -0
  346. package/dist/ionic/{p-fe14205b.entry.js → p-7cbf17f0.entry.js} +1 -1
  347. package/dist/ionic/{p-9dff6288.entry.js → p-8303462c.entry.js} +1 -1
  348. package/dist/ionic/{p-2b5e04c5.entry.js → p-86208a0e.entry.js} +1 -1
  349. package/dist/ionic/{p-62602fbd.entry.js → p-9db78e5c.entry.js} +1 -1
  350. package/dist/ionic/{p-PnwG0glX.js → p-B4Kq2YNk.js} +1 -1
  351. package/dist/ionic/p-BDqjX7Z_.js +4 -0
  352. package/dist/ionic/p-BYSs-jZz.js +4 -0
  353. package/dist/ionic/p-D1t981Ih.js +4 -0
  354. package/dist/ionic/p-Dhi5xtNS.js +4 -0
  355. package/dist/ionic/{p-dda49380.entry.js → p-a9df0ccf.entry.js} +1 -1
  356. package/dist/ionic/p-ac3af8af.entry.js +4 -0
  357. package/dist/ionic/{p-f89fcf62.entry.js → p-b25f3aba.entry.js} +1 -1
  358. package/dist/ionic/p-b3da2cc7.entry.js +4 -0
  359. package/dist/ionic/p-b4533070.entry.js +4 -0
  360. package/dist/ionic/{p-4901a10b.entry.js → p-b4901bce.entry.js} +1 -1
  361. package/dist/ionic/{p-fd95a423.entry.js → p-bb7bb4fd.entry.js} +1 -1
  362. package/dist/ionic/{p-ace3062d.entry.js → p-be06def7.entry.js} +1 -1
  363. package/dist/ionic/p-c0983eac.entry.js +4 -0
  364. package/dist/ionic/{p-5386b094.entry.js → p-c4ebdfd2.entry.js} +1 -1
  365. package/dist/ionic/{p-1e45586e.entry.js → p-c4ed1e18.entry.js} +1 -1
  366. package/dist/ionic/p-dc8a8505.entry.js +4 -0
  367. package/dist/ionic/{p-b70775b0.entry.js → p-ddc41dbb.entry.js} +1 -1
  368. package/dist/ionic/p-df642ef5.entry.js +4 -0
  369. package/dist/ionic/p-e086f8c3.entry.js +4 -0
  370. package/dist/ionic/p-edd8f490.entry.js +4 -0
  371. package/dist/ionic/{p-dbd06d8d.entry.js → p-f0968c91.entry.js} +1 -1
  372. package/dist/ionic/{p-cc314123.entry.js → p-f6768728.entry.js} +1 -1
  373. package/dist/ionic/p-fIOYmaqA.js +4 -0
  374. package/dist/ionic/{p-0bfb8d9e.entry.js → p-fc726f4a.entry.js} +1 -1
  375. package/dist/ionic/{p-54baa1af.entry.js → p-ff74cf5d.entry.js} +1 -1
  376. package/dist/types/components/accordion/accordion.d.ts +0 -6
  377. package/dist/types/components/back-button/back-button.d.ts +0 -6
  378. package/dist/types/components/breadcrumb/breadcrumb.d.ts +0 -10
  379. package/dist/types/components/checkbox/checkbox.d.ts +1 -12
  380. package/dist/types/components/datetime/datetime.d.ts +4 -4
  381. package/dist/types/components/fab-button/fab-button.d.ts +0 -6
  382. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +0 -12
  383. package/dist/types/components/item/item.d.ts +0 -6
  384. package/dist/types/components/menu-button/menu-button.d.ts +0 -5
  385. package/dist/types/components/refresher-content/refresher-content.d.ts +0 -6
  386. package/dist/types/components/reorder/reorder.d.ts +1 -1
  387. package/dist/types/components/select-modal/select-modal.d.ts +0 -5
  388. package/dist/types/components/toggle/toggle.d.ts +2 -5
  389. package/dist/types/utils/config.d.ts +0 -19
  390. package/hydrate/index.js +416 -298
  391. package/hydrate/index.mjs +416 -298
  392. package/package.json +2 -1
  393. package/components/p-0MMiHJhx.js +0 -4
  394. package/components/p-CToV3-ig.js +0 -4
  395. package/components/p-CV7PNBGr.js +0 -4
  396. package/components/p-CgbD1udy.js +0 -4
  397. package/components/p-ClTdIlic.js +0 -4
  398. package/components/p-WeNgVmOy.js +0 -4
  399. package/components/p-eRqVSlkn.js +0 -4
  400. package/components/p-pztWcmzj.js +0 -4
  401. package/dist/ionic/p-0b2c58e0.entry.js +0 -4
  402. package/dist/ionic/p-208cecae.entry.js +0 -4
  403. package/dist/ionic/p-29f69d29.entry.js +0 -4
  404. package/dist/ionic/p-3f17704b.entry.js +0 -4
  405. package/dist/ionic/p-46e754ae.entry.js +0 -4
  406. package/dist/ionic/p-5196bee9.entry.js +0 -4
  407. package/dist/ionic/p-5ad0c670.entry.js +0 -4
  408. package/dist/ionic/p-7134537b.entry.js +0 -4
  409. package/dist/ionic/p-72eacca0.entry.js +0 -4
  410. package/dist/ionic/p-7bde9ee1.entry.js +0 -4
  411. package/dist/ionic/p-87ab986c.entry.js +0 -4
  412. package/dist/ionic/p-9e09cb80.entry.js +0 -4
  413. package/dist/ionic/p-a320cdb2.entry.js +0 -4
  414. package/dist/ionic/p-aa298c58.entry.js +0 -4
  415. package/dist/ionic/p-b920f149.entry.js +0 -4
  416. package/dist/ionic/p-c39025c0.entry.js +0 -4
  417. package/dist/ionic/p-d1f42864.entry.js +0 -4
  418. package/dist/ionic/p-d4506138.entry.js +0 -4
  419. package/dist/ionic/p-fcce2dda.entry.js +0 -4
  420. package/dist/ionic/p-fd2a869f.entry.js +0 -4
@@ -690,7 +690,7 @@ const InputOTP = class {
690
690
  const tabbableIndex = this.getTabbableIndex();
691
691
  const pattern = this.getPattern();
692
692
  const hasDescription = ((_b = (_a = el.querySelector('.input-otp-description')) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) !== '';
693
- return (h(Host, { key: '67df3d392e0336b65363fff7cb0d093b7c535b3f', class: createColorClasses(color, {
693
+ return (h(Host, { key: '2bdd205b13281373a43d1a86a25df950a6f36ae1', class: createColorClasses(color, {
694
694
  [mode]: true,
695
695
  'has-focus': hasFocus,
696
696
  [`input-otp-size-${size}`]: true,
@@ -698,10 +698,10 @@ const InputOTP = class {
698
698
  [`input-otp-fill-${fill}`]: true,
699
699
  'input-otp-disabled': disabled,
700
700
  'input-otp-readonly': readonly,
701
- }) }, h("div", Object.assign({ key: 'b68d6bfae96d7f381ce66819d9cff0aa2b1d8a44', role: "group", "aria-label": "One-time password input", class: "input-otp-group", part: "group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (h(Fragment, null, h("div", { class: "native-wrapper", part: "container" }, h("input", { class: "native-input", part: "native", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", 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) && h("div", { class: "input-otp-separator", part: "separator" }))))), h("div", { key: '346450b2da262c6543e5dc2c0bbac27c541f4e18', class: {
701
+ }) }, h("div", Object.assign({ key: 'b82d198138929327cd5429bbeb482248935ae88d', role: "group", "aria-label": "One-time password input", class: "input-otp-group", part: "group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (h(Fragment, null, h("div", { class: "native-wrapper", part: "container" }, h("input", { class: "native-input", part: "native", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", 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) && h("div", { class: "input-otp-separator", part: "separator" }))))), h("div", { key: '0bb5444d4e653bb7310abec502f5b1d76e681c37', class: {
702
702
  'input-otp-description': true,
703
703
  'input-otp-description-hidden': !hasDescription,
704
- }, part: "description" }, h("slot", { key: '31ad8b75d9b2808b49f488e7ff2f235099e31b30' }))));
704
+ }, part: "description" }, h("slot", { key: 'f717bda988a6e9b97d67025c1d3163d838f27bb5' }))));
705
705
  }
706
706
  static get formAssociated() { return true; }
707
707
  get el() { return getElement(this); }
@@ -3,8 +3,12 @@
3
3
  */
4
4
  import { r as registerInstance, f as printIonWarning, e as config, h, d as Host, g as getElement } from './index-C0EQceqV.js';
5
5
  import { c as createColorClasses } from './theme-DaJxRxSQ.js';
6
- import { x as eyeOff, y as eye } from './index-PnwG0glX.js';
7
- import { b as getIonMode } from './ionic-global-BJDU78B6.js';
6
+ import { x as eyeOff, y as eye } from './index-B4Kq2YNk.js';
7
+ import { c as getIonTheme, b as getIonMode } from './ionic-global-BJDU78B6.js';
8
+
9
+ const eyeSlashSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2IiBmaWxsPSJjdXJyZW50Q29sb3IiPjxwYXRoIGQ9Ik01My45MiwzNC42MkE4LDgsMCwxLDAsNDIuMDgsNDUuMzhMNjEuMzIsNjYuNTVDMjUsODguODQsOS4zOCwxMjMuMiw4LjY5LDEyNC43NmE4LDgsMCwwLDAsMCw2LjVjLjM1Ljc5LDguODIsMTkuNTcsMjcuNjUsMzguNEM2MS40MywxOTQuNzQsOTMuMTIsMjA4LDEyOCwyMDhhMTI3LjExLDEyNy4xMSwwLDAsMCw1Mi4wNy0xMC44M2wyMiwyNC4yMWE4LDgsMCwxLDAsMTEuODQtMTAuNzZabTQ3LjMzLDc1Ljg0LDQxLjY3LDQ1Ljg1YTMyLDMyLDAsMCwxLTQxLjY3LTQ1Ljg1Wk0xMjgsMTkyYy0zMC43OCwwLTU3LjY3LTExLjE5LTc5LjkzLTMzLjI1QTEzMy4xNiwxMzMuMTYsMCwwLDEsMjUsMTI4YzQuNjktOC43OSwxOS42Ni0zMy4zOSw0Ny4zNS00OS4zOGwxOCwxOS43NWE0OCw0OCwwLDAsMCw2My42Niw3MGwxNC43MywxNi4yQTExMiwxMTIsMCwwLDEsMTI4LDE5MlptNi05NS40M2E4LDgsMCwwLDEsMy0xNS43Miw0OC4xNiw0OC4xNiwwLDAsMSwzOC43Nyw0Mi42NCw4LDgsMCwwLDEtNy4yMiw4LjcxLDYuMzksNi4zOSwwLDAsMS0uNzUsMCw4LDgsMCwwLDEtOC03LjI2QTMyLjA5LDMyLjA5LDAsMCwwLDEzNCw5Ni41N1ptMTEzLjI4LDM0LjY5Yy0uNDIuOTQtMTAuNTUsMjMuMzctMzMuMzYsNDMuOGE4LDgsMCwxLDEtMTAuNjctMTEuOTJBMTMyLjc3LDEzMi43NywwLDAsMCwyMzEuMDUsMTI4YTEzMy4xNSwxMzMuMTUsMCwwLDAtMjMuMTItMzAuNzdDMTg1LjY3LDc1LjE5LDE1OC43OCw2NCwxMjgsNjRhMTE4LjM3LDExOC4zNywwLDAsMC0xOS4zNiwxLjU3QTgsOCwwLDEsMSwxMDYsNDkuNzksMTM0LDEzNCwwLDAsMSwxMjgsNDhjMzQuODgsMCw2Ni41NywxMy4yNiw5MS42NiwzOC4zNSwxOC44MywxOC44MywyNy4zLDM3LjYyLDI3LjY1LDM4LjQxQTgsOCwwLDAsMSwyNDcuMzEsMTMxLjI2WiIvPjwvc3ZnPg==';
10
+
11
+ const eyeSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2IiBmaWxsPSJjdXJyZW50Q29sb3IiPjxwYXRoIGQ9Ik0yNDcuMzEsMTI0Ljc2Yy0uMzUtLjc5LTguODItMTkuNTgtMjcuNjUtMzguNDFDMTk0LjU3LDYxLjI2LDE2Mi44OCw0OCwxMjgsNDhTNjEuNDMsNjEuMjYsMzYuMzQsODYuMzVDMTcuNTEsMTA1LjE4LDksMTI0LDguNjksMTI0Ljc2YTgsOCwwLDAsMCwwLDYuNWMuMzUuNzksOC44MiwxOS41NywyNy42NSwzOC40QzYxLjQzLDE5NC43NCw5My4xMiwyMDgsMTI4LDIwOHM2Ni41Ny0xMy4yNiw5MS42Ni0zOC4zNGMxOC44My0xOC44MywyNy4zLTM3LjYxLDI3LjY1LTM4LjRBOCw4LDAsMCwwLDI0Ny4zMSwxMjQuNzZaTTEyOCwxOTJjLTMwLjc4LDAtNTcuNjctMTEuMTktNzkuOTMtMzMuMjVBMTMzLjQ3LDEzMy40NywwLDAsMSwyNSwxMjgsMTMzLjMzLDEzMy4zMywwLDAsMSw0OC4wNyw5Ny4yNUM3MC4zMyw3NS4xOSw5Ny4yMiw2NCwxMjgsNjRzNTcuNjcsMTEuMTksNzkuOTMsMzMuMjVBMTMzLjQ2LDEzMy40NiwwLDAsMSwyMzEuMDUsMTI4QzIyMy44NCwxNDEuNDYsMTkyLjQzLDE5MiwxMjgsMTkyWm0wLTExMmE0OCw0OCwwLDEsMCw0OCw0OEE0OC4wNSw0OC4wNSwwLDAsMCwxMjgsODBabTAsODBhMzIsMzIsMCwxLDEsMzItMzJBMzIsMzIsMCwwLDEsMTI4LDE2MFoiLz48L3N2Zz4=';
8
12
 
9
13
  const inputPasswordToggleIonicCss = () => `:host ion-button{--color:var(--token-primitives-neutral-800, #626262);--margin-end:calc(-1 * var(--padding-end));--padding-end:inherit;--icon-size:var(--token-font-size-400, 1rem);-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:var(--margin-end);margin-inline-end:var(--margin-end);margin-top:0;margin-bottom:0;width:var(--size);height:var(--size)}:host ion-button ion-icon{font-size:var(--icon-size)}`;
10
14
 
@@ -57,48 +61,54 @@ const InputPasswordToggle = class {
57
61
  disconnectedCallback() {
58
62
  this.inputElRef = null;
59
63
  }
60
- /**
61
- * Get the icon to use for the hide icon.
62
- * If an icon is set on the component, use that.
63
- * Otherwise, use the icon set in the config.
64
- * If no icon is set in the config, use the default icon.
65
- */
66
64
  get inputPasswordHideIcon() {
67
65
  // Return the icon if it is explicitly set
68
66
  if (this.hideIcon != null) {
69
67
  return this.hideIcon;
70
68
  }
69
+ // Determine the theme and map to default icons
70
+ const theme = getIonTheme(this);
71
+ const defaultIcons = {
72
+ ios: eyeOff,
73
+ ionic: eyeSlashSvg,
74
+ md: eyeOff,
75
+ };
76
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
77
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
71
78
  // Return the configured input password hide icon or the default icon
72
- return config.get('inputPasswordHideIcon', eyeOff);
79
+ return config.get('inputPasswordHideIcon', defaultIcon);
73
80
  }
74
- /**
75
- * Get the icon to use for the show icon.
76
- * If an icon is set on the component, use that.
77
- * Otherwise, use the icon set in the config.
78
- * If no icon is set in the config, use the default icon.
79
- */
80
81
  get inputPasswordShowIcon() {
81
82
  // Return the icon if it is explicitly set
82
83
  if (this.showIcon != null) {
83
84
  return this.showIcon;
84
85
  }
86
+ // Determine the theme and map to default icons
87
+ const theme = getIonTheme(this);
88
+ const defaultIcons = {
89
+ ios: eye,
90
+ ionic: eyeSvg,
91
+ md: eye,
92
+ };
93
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
94
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
85
95
  // Return the configured input password show icon or the default icon
86
- return config.get('inputPasswordShowIcon', eye);
96
+ return config.get('inputPasswordShowIcon', defaultIcon);
87
97
  }
88
98
  render() {
89
99
  const { color, inputPasswordHideIcon, inputPasswordShowIcon, type } = this;
90
100
  const mode = getIonMode(this);
91
101
  const isPasswordVisible = type === 'text';
92
- return (h(Host, { key: '67dff695db35fe17927c62f88eb4d1b8a83cf9c1', class: createColorClasses(color, {
102
+ return (h(Host, { key: 'f11e3bf4d3255e003aec504e6dd3ee1e0caaf767', class: createColorClasses(color, {
93
103
  [mode]: true,
94
- }) }, h("ion-button", { key: '75edb85478a55b76fc1b4b3ecb65d593dee0b3ee', mode: mode, color: color, fill: "clear", shape: "round", "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', "aria-pressed": isPasswordVisible ? 'true' : 'false', type: "button", onPointerDown: (ev) => {
104
+ }) }, h("ion-button", { key: '5bba43f7755857fd9347612bb906c389b60386b4', mode: mode, color: color, fill: "clear", shape: "round", "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', "aria-pressed": isPasswordVisible ? 'true' : 'false', type: "button", onPointerDown: (ev) => {
95
105
  /**
96
106
  * This prevents mobile browsers from
97
107
  * blurring the input when the password toggle
98
108
  * button is activated.
99
109
  */
100
110
  ev.preventDefault();
101
- }, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: '811e6f30fdc0e78fb23318823fc2bb2135647ca1', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? inputPasswordHideIcon : inputPasswordShowIcon }))));
111
+ }, onClick: this.togglePasswordVisibility }, h("ion-icon", { key: 'c0eb0e4e2f3e9553bfd519ff655064c9f62af406', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? inputPasswordHideIcon : inputPasswordShowIcon }))));
102
112
  }
103
113
  get el() { return getElement(this); }
104
114
  static get watchers() { return {
@@ -2,13 +2,14 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { r as registerInstance, c as createEvent, i as forceUpdate, f as printIonWarning, h, e as config, d as Host, g as getElement } from './index-C0EQceqV.js';
5
+ import { x as xSvg } from './x-BDqjX7Z_.js';
5
6
  import { c as createNotchController } from './notch-controller-BYB7mUMg.js';
6
7
  import { c as checkInvalidState } from './validity-BjW8SOqw.js';
7
8
  import { c as createClearButtonPressController } from './clear-button-press-controller-Ci6Q_x5-.js';
8
9
  import { d as debounceEvent, i as inheritAriaAttributes, b as inheritAttributes, c as componentOnReady } from './helpers-ChPZH7zh.js';
9
10
  import { c as createSlotMutationController, g as getCounterText } from './input.utils-DhJNJPiU.js';
10
11
  import { h as hostContext, c as createColorClasses } from './theme-DaJxRxSQ.js';
11
- import { b as closeCircle, d as closeSharp } from './index-PnwG0glX.js';
12
+ import { b as closeSharp, d as closeCircle } from './index-B4Kq2YNk.js';
12
13
  import { c as getIonTheme } from './ionic-global-BJDU78B6.js';
13
14
  import './focus-visible-vXpMhGrs.js';
14
15
  import './dir-o8OKV5aD.js';
@@ -584,9 +585,15 @@ const Input = class {
584
585
  if (this.clearInputIcon != null) {
585
586
  return this.clearInputIcon;
586
587
  }
587
- // Determine the theme and map to the default icon
588
+ // Determine the theme and map to default icons
588
589
  const theme = getIonTheme(this);
589
- const defaultIcon = theme === 'ios' ? closeCircle : closeSharp;
590
+ const defaultIcons = {
591
+ ios: closeCircle,
592
+ ionic: xSvg,
593
+ md: closeSharp,
594
+ };
595
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
596
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
590
597
  // Return the configured input clear icon or the default icon
591
598
  return config.get('inputClearIcon', defaultIcon);
592
599
  }
@@ -620,7 +627,7 @@ const Input = class {
620
627
  * TODO(FW-5592): Remove hasStartEndSlots condition
621
628
  */
622
629
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
623
- return (h(Host, { key: 'ae0920d7c93498741a5a066a5518f89f0c5b43c2', class: createColorClasses(this.color, {
630
+ return (h(Host, { key: 'f4009568b582fa080103dfb3f490595d5d7e9706', class: createColorClasses(this.color, {
624
631
  [theme]: true,
625
632
  'has-value': hasValue,
626
633
  'has-focus': hasFocus,
@@ -633,7 +640,7 @@ const Input = class {
633
640
  'in-item-color': hostContext('ion-item.ion-color', this.el),
634
641
  'input-disabled': disabled,
635
642
  'input-readonly': readonly,
636
- }) }, h("label", { key: 'b9fd3366b0fb429ebacc02a16ae27e29b1b485aa', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), h("div", { key: 'eb02cef1a79a43f9fc8eb55bd7f3dcd4ca2e81d3', class: "native-wrapper", onClick: this.onLabelClick },
643
+ }) }, h("label", { key: 'a05502716afcf5d286f197131619b2bc57ba61e0', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), h("div", { key: 'de4621c5eff21e26197f28a3e66217fcae449c75', class: "native-wrapper", onClick: this.onLabelClick },
637
644
  /**
638
645
  * For the ionic theme, we render the outline container here
639
646
  * instead of higher up, so it can be positioned relative to
@@ -643,10 +650,10 @@ const Input = class {
643
650
  * <label> element, ensuring that clicking the label text
644
651
  * focuses the input.
645
652
  */
646
- theme === 'ionic' && h("div", { key: '1d35432c405e9d6fec8c4d411bf33e2950a02fb5', class: "input-outline" }), h("slot", { key: '627e09591ad9915b8b62b6ad8b8f359f1b010f01', name: "start" }), h("input", Object.assign({ key: '3bd035e03868067ea6dbba5c7a28383474f67ba3', 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.isInvalid ? 'true' : undefined, "aria-labelledby": this.getLabelledById() }, this.inheritedAttributes)), clearInput && !readonly && !disabled && (h("button", { key: 'dfec9566c3dd743dae34afe0de03aabb180a371e', "aria-label": "reset", type: "button", class: {
653
+ theme === 'ionic' && h("div", { key: '79e084dd8d7b0f530ea6518ee6f2ceb2ac099a8e', class: "input-outline" }), h("slot", { key: 'a4d0f148035c0f8afca5171139a05665d778bd07', name: "start" }), h("input", Object.assign({ key: 'f399d498b4c289571a114347c08c2ae16266ba6f', 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.isInvalid ? 'true' : undefined, "aria-labelledby": this.getLabelledById() }, this.inheritedAttributes)), clearInput && !readonly && !disabled && (h("button", { key: 'f6672256dfebae3bae35afd61d26bb705e8f268c', "aria-label": "reset", type: "button", class: {
647
654
  'input-clear-icon': true,
648
655
  'input-clear-button-pressed': this.isClearButtonPressed,
649
- }, onPointerDown: this.clearButtonPressController.onPointerDown, onPointerCancel: this.clearButtonPressController.release, onClick: this.clearTextInput }, h("ion-icon", { key: 'c736514c2df8f78196bd6426fd8d80d282c7aeb7', "aria-hidden": "true", icon: inputClearIcon }))), h("slot", { key: 'b6a250b6aaacb7a7ec0e09cc93a8b8dce973bb5b', name: "end" })), shouldRenderHighlight && h("div", { key: '989a73bb9210f3ef8084a265533063cdb4b8142c', class: "input-highlight" })), this.renderBottomContent()));
656
+ }, onPointerDown: this.clearButtonPressController.onPointerDown, onPointerCancel: this.clearButtonPressController.release, onClick: this.clearTextInput }, h("ion-icon", { key: '999e8ec2b4c1614ce8f396b6a3e2ff26cb41dfbd', "aria-hidden": "true", icon: inputClearIcon }))), h("slot", { key: '2d0df6c7dd9dc17d8bd5e33b9eac1e11a25dd874', name: "end" })), shouldRenderHighlight && h("div", { key: 'f80b2c9fe4dfbb038e6c7b5a98e775cdd5ef6a21', class: "input-highlight" })), this.renderBottomContent()));
650
657
  }
651
658
  get el() { return getElement(this); }
652
659
  static get watchers() { return {
@@ -69,14 +69,14 @@ const ItemOption = class {
69
69
  href: this.href,
70
70
  target: this.target,
71
71
  };
72
- return (h(Host, { key: '4c40464f3ade0f4afaf4a7682177bf54fd411b2f', onClick: this.onClick, class: createColorClasses(this.color, {
72
+ return (h(Host, { key: '8f1bad23fd3ccbb9d54d57765e6731cd2ee07306', onClick: this.onClick, class: createColorClasses(this.color, {
73
73
  [theme]: true,
74
74
  [`item-option-${shape}`]: shape !== undefined,
75
75
  [`item-option-${hue}`]: hue !== undefined,
76
76
  'item-option-disabled': disabled,
77
77
  'item-option-expandable': expandable,
78
78
  'ion-activatable': true,
79
- }) }, h(TagType, Object.assign({ key: '857af74eab39e9dbe9e72da7b6727c1fb72ba463' }, attrs, { class: "button-native", part: "native", disabled: disabled }), h("span", { key: '7838898caaa93215083f3aa378e8d12c7c0da73f', class: "button-inner", part: "inner" }, h("slot", { key: '0cfa9e6c6e55cae4d099eb3c339ae91d69a0899d', name: "top" }), h("div", { key: '5ed0d1b3f462e7a03da1c29f5a76efc186b3881c', class: "horizontal-wrapper", part: "container" }, h("slot", { key: '264076e1e5818e7666d6958c861d43831b4b9227', name: "start" }), h("slot", { key: 'ff6cd961b5d980ce073840f023f2c8ff3d46b4a4', name: "icon-only" }), h("slot", { key: '75f3fd3813e497ab1fc1bef2248a8764c0b5a36f' }), h("slot", { key: '9df80f908c1facc282b5910d1f3199b72dd33b36', name: "end" })), h("slot", { key: 'e82f4c0ea7dd31393dd42496801d8807e57aba2d', name: "bottom" })), theme === 'md' && h("ion-ripple-effect", { key: '7730ed91538245a5834989213673dea45b70798d' }))));
79
+ }) }, h(TagType, Object.assign({ key: '2baf904e356a87ed463ee5f517e0e95f90b2ef30' }, attrs, { class: "button-native", part: "native", disabled: disabled }), h("span", { key: '49b627f72dffd1b150ccd808b1b1f63bbe78e2de', class: "button-inner", part: "inner" }, h("slot", { key: 'cdb52f76f1d7e5df411215f17eb76ad25e36241a', name: "top" }), h("div", { key: '864204667c6e3ba6f989b24e96c131b67e55d408', class: "horizontal-wrapper", part: "container" }, h("slot", { key: '474f4aab708842bb7ef74cb6f1fbe601ceff82cf', name: "start" }), h("slot", { key: '2bd726c5ba3ee079a623f1f6229d1ac2afd3e291', name: "icon-only" }), h("slot", { key: '2d1a673c447ebf82c92f944ec9e83a5b38698307' }), h("slot", { key: '8d0f9337cd84c725190cffd25d74044075e85ab0', name: "end" })), h("slot", { key: 'a674039b26d9cbb886e88ea721bbc210484aba9f', name: "bottom" })), theme === 'md' && h("ion-ripple-effect", { key: '3e45bf18b7992943c47ece47e9358f4da0b8e865' }))));
80
80
  }
81
81
  get el() { return getElement(this); }
82
82
  };
@@ -111,7 +111,7 @@ const ItemOptions = class {
111
111
  render() {
112
112
  const theme = getIonTheme(this);
113
113
  const isEnd = isEndSide(this.side);
114
- return (h(Host, { key: '3505a534ecca3fe1615b1e686d9ab15bc8967049', class: {
114
+ return (h(Host, { key: 'ed05ceebf2cda943ac9efea2f91b71f7e8fc55e8', class: {
115
115
  [theme]: true,
116
116
  // Used internally for styling
117
117
  [`item-options-${theme}`]: true,
@@ -905,7 +905,7 @@ const ItemSliding = class {
905
905
  }
906
906
  render() {
907
907
  const theme = getIonTheme(this);
908
- return (h(Host, { key: 'd718bf10e1dfbecc2c1e1b84eee8e79a62751115', class: {
908
+ return (h(Host, { key: '47de8c8a9721f9223b42d6722a9ad32f378818aa', class: {
909
909
  [theme]: true,
910
910
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
911
911
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -2,9 +2,10 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { r as registerInstance, i as forceUpdate, e as config, h, d as Host, g as getElement, c as createEvent } from './index-C0EQceqV.js';
5
+ import { c as caretRightSvg } from './caret-right-BYSs-jZz.js';
5
6
  import { b as inheritAttributes, r as raf } from './helpers-ChPZH7zh.js';
6
7
  import { h as hostContext, c as createColorClasses, o as openURL } from './theme-DaJxRxSQ.js';
7
- import { o as chevronForward } from './index-PnwG0glX.js';
8
+ import { o as chevronForward } from './index-B4Kq2YNk.js';
8
9
  import { c as getIonTheme, b as getIonMode } from './ionic-global-BJDU78B6.js';
9
10
  import './focus-visible-vXpMhGrs.js';
10
11
  import './dir-o8OKV5aD.js';
@@ -235,26 +236,29 @@ const Item = class {
235
236
  const controls = this.el.querySelectorAll('ion-toggle:not([disabled]), ion-checkbox:not([disabled]), ion-radio:not([disabled]), ion-select:not([disabled]), ion-input:not([disabled]), ion-textarea:not([disabled])');
236
237
  return controls[0];
237
238
  }
238
- /**
239
- * Get the icon to use for the detail icon.
240
- * If an icon is set on the component, use that.
241
- * Otherwise, use the icon set in the config.
242
- * If no icon is set in the config, use the default icon.
243
- */
244
239
  get itemDetailIcon() {
245
240
  // Return the icon if it is explicitly set
246
241
  if (this.detailIcon != null) {
247
242
  return this.detailIcon;
248
243
  }
244
+ // Determine the theme and map to default icons
245
+ const theme = getIonTheme(this);
246
+ const defaultIcons = {
247
+ ios: chevronForward,
248
+ ionic: caretRightSvg,
249
+ md: chevronForward,
250
+ };
251
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
252
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
249
253
  // Return the configured item detail icon or the default icon
250
- return config.get('itemDetailIcon', chevronForward);
254
+ return config.get('itemDetailIcon', defaultIcon);
251
255
  }
252
256
  /**
253
257
  * The icon should be flipped when the app is RTL and
254
258
  * the icon is a variation of chevron.
255
259
  */
256
260
  get shouldFlipIcon() {
257
- return this.itemDetailIcon === chevronForward;
261
+ return this.itemDetailIcon === chevronForward || this.itemDetailIcon === caretRightSvg;
258
262
  }
259
263
  render() {
260
264
  const { detail, download, labelColorStyles, lines, disabled, href, itemDetailIcon, shouldFlipIcon, rel, target, routerAnimation, routerDirection, inheritedAriaAttributes, multipleInputs, } = this;
@@ -333,7 +337,7 @@ const Item = class {
333
337
  * multi-input item, and in a clickable item, which is a second tab stop.
334
338
  */
335
339
  const slottedIndicatorNeedsRoom = this.hasSlottedIndicatorControl && (multipleInputs || this.isClickable());
336
- return (h(Host, { key: 'd1081a8a1d32df06ac0237a370b8105f9b3ad743', "aria-disabled": ariaDisabled, class: Object.assign(Object.assign(Object.assign({}, childStyles), labelColorStyles), createColorClasses(this.color, {
340
+ return (h(Host, { key: 'e303a3416c411185a0990ec8dcb1b1479eb236e8', "aria-disabled": ariaDisabled, class: Object.assign(Object.assign(Object.assign({}, childStyles), labelColorStyles), createColorClasses(this.color, {
337
341
  item: true,
338
342
  [theme]: true,
339
343
  'item-lines-default': lines === undefined,
@@ -346,7 +350,7 @@ const Item = class {
346
350
  'ion-activatable': canActivate,
347
351
  'ion-focusable': this.focusable,
348
352
  'item-rtl': document.dir === 'rtl',
349
- })), role: inList ? 'listitem' : null }, h(TagType, Object.assign({ key: 'd0cb6daafb0813bdf176094aeef56083a18e766b' }, attrs, inheritedAriaAttributes, { class: "item-native", part: "native", disabled: disabled }, clickFn), h("slot", { key: 'abb79ecaaa73863926e2e96b3c860c4686f1a7ac', name: "start", onSlotchange: this.updateInteractivityOnSlotChange }), h("div", { key: 'dd13fe3d073c7b88ac4e09c157fc1267480feeba', class: "item-inner", part: "inner" }, h("div", { key: '33e842c9fc188afc7e546a989d3c75cc5393b4a1', class: "input-wrapper", part: "container" }, h("slot", { key: 'cd4fc3687f17807231adf641772c6e8269a75bce', onSlotchange: this.updateInteractivityOnSlotChange })), h("slot", { key: 'bc0b10c2cdf07040d26d543de1fbf9ab5e400079', name: "end", onSlotchange: this.updateInteractivityOnSlotChange }), showDetail && (h("ion-icon", { key: '64b285c87a5b000ad5bbd6a3056183ddc6ef988a', icon: itemDetailIcon, lazy: false, class: "item-detail-icon", part: "detail-icon", "aria-hidden": "true", "flip-rtl": shouldFlipIcon }))), canActivate && theme === 'md' && h("ion-ripple-effect", { key: '1dd429002350661afa8853a58a59276da7283353' }))));
353
+ })), role: inList ? 'listitem' : null }, h(TagType, Object.assign({ key: '551e095097f4c241aa0bb0d2aceb0bf4777563b2' }, attrs, inheritedAriaAttributes, { class: "item-native", part: "native", disabled: disabled }, clickFn), h("slot", { key: '8a602938537caaebaad7d72aa3e8d5a4d3a12290', name: "start", onSlotchange: this.updateInteractivityOnSlotChange }), h("div", { key: 'c82030fdec973d347bc56ae25bb71f6c76173b60', class: "item-inner", part: "inner" }, h("div", { key: '01db0987d735ce734f1edfcd7ee8164e441c840e', class: "input-wrapper", part: "container" }, h("slot", { key: '87e073b45610277443733f8f150d0adf26e6bf86', onSlotchange: this.updateInteractivityOnSlotChange })), h("slot", { key: '4446a01b2556284a0d8dfb1c209bec1b064a2341', name: "end", onSlotchange: this.updateInteractivityOnSlotChange }), showDetail && (h("ion-icon", { key: '09196aa21716c854cbbd7c5aeefff2bfb859746e', icon: itemDetailIcon, lazy: false, class: "item-detail-icon", part: "detail-icon", "aria-hidden": "true", "flip-rtl": shouldFlipIcon }))), canActivate && theme === 'md' && h("ion-ripple-effect", { key: '3408c7ffac92c84ad99a9d71f8c26b98583010a0' }))));
350
354
  }
351
355
  get el() { return getElement(this); }
352
356
  static get watchers() { return {
@@ -389,11 +393,11 @@ const ItemDivider = class {
389
393
  }
390
394
  render() {
391
395
  const theme = getIonTheme(this);
392
- return (h(Host, { key: 'b41d12b91cf208efda5287f9be3c94fc0e934175', class: createColorClasses(this.color, {
396
+ return (h(Host, { key: 'dc73f348b5376faa40ba4bc6bba3d5c9e5ec5ab2', class: createColorClasses(this.color, {
393
397
  [theme]: true,
394
398
  'item-divider-sticky': this.sticky,
395
399
  item: true,
396
- }) }, h("slot", { key: '490b5ab187a2f8f4c909eb5c0c16d50a7f90f87d', name: "start" }), h("div", { key: '55cc4cdda96d6a33472fe6570a09e725c3a5e091', class: "item-divider-inner", part: "inner" }, h("div", { key: 'fec32822339f1a2197fd576b0949bf12d1b7582b', class: "item-divider-wrapper", part: "container" }, h("slot", { key: '698a1e95a0481c1a7ff20795c479ceb5b00873ae' })), h("slot", { key: 'c5d28d2b06885044bdadaf203018568c8701accc', name: "end" }))));
400
+ }) }, h("slot", { key: '0f535b2cf91f2ec042aa59a89498cfa0e4d541a0', name: "start" }), h("div", { key: '867c8c1a1bd273a5f5018f77785f11d58152e8b9', class: "item-divider-inner", part: "inner" }, h("div", { key: 'c32b2a5658d27cf5d8cd8ffbfa476c02755e1afd', class: "item-divider-wrapper", part: "container" }, h("slot", { key: 'f8b0fea29a910cd2e36301586532be3a8348c31e' })), h("slot", { key: '418750f630c851cf04b6a278c1666c6cf33c113c', name: "end" }))));
397
401
  }
398
402
  get el() { return getElement(this); }
399
403
  };
@@ -415,7 +419,7 @@ const ItemGroup = class {
415
419
  }
416
420
  render() {
417
421
  const theme = getIonTheme(this);
418
- return (h(Host, { key: '192876ea9e6fc866519490556a5db863b8731ceb', role: "group", class: {
422
+ return (h(Host, { key: '017c8f7cd0258e1864423337ddd1b1cb522f64ed', role: "group", class: {
419
423
  [theme]: true,
420
424
  // Used internally for styling
421
425
  [`item-group-${theme}`]: true,
@@ -489,13 +493,13 @@ const Label = class {
489
493
  render() {
490
494
  const position = this.position;
491
495
  const theme = getIonTheme(this);
492
- return (h(Host, { key: '55356d83f3c598b83dccd79ee3769da57d15cf78', class: createColorClasses(this.color, {
496
+ return (h(Host, { key: 'b1f261db441bcb0a325a5b3e21da17764a56f17c', class: createColorClasses(this.color, {
493
497
  [theme]: true,
494
498
  'in-item-color': hostContext('ion-item.ion-color', this.el),
495
499
  [`label-${position}`]: position !== undefined,
496
500
  [`label-no-animate`]: this.noAnimate,
497
501
  'label-rtl': document.dir === 'rtl',
498
- }) }, h("slot", { key: 'fbf99c7868befa8ba8e01c4d086ef238ecc061c8' })));
502
+ }) }, h("slot", { key: '490444c8c0d4cf72eae3f8abfb7ed7ecc30bb213' })));
499
503
  }
500
504
  get el() { return getElement(this); }
501
505
  static get watchers() { return {
@@ -559,7 +563,7 @@ const List = class {
559
563
  const theme = getIonTheme(this);
560
564
  const shape = this.getShape();
561
565
  const { lines, inset } = this;
562
- return (h(Host, { key: 'c1a9ff4887166dda2da800c15102cd1aed53ab72', role: "list", class: {
566
+ return (h(Host, { key: '9be30ff6e75e020c0db7054800cb874efef26bd8', role: "list", class: {
563
567
  [theme]: true,
564
568
  // Used internally for styling
565
569
  [`list-${theme}`]: true,
@@ -590,10 +594,10 @@ const ListHeader = class {
590
594
  render() {
591
595
  const { lines } = this;
592
596
  const theme = getIonTheme(this);
593
- return (h(Host, { key: '1d1e2a599178710f9243d4d4c87d01f2364e4717', class: createColorClasses(this.color, {
597
+ return (h(Host, { key: '7a1632a069317285210f4aeae50a6f2ef6955c56', class: createColorClasses(this.color, {
594
598
  [theme]: true,
595
599
  [`list-header-lines-${lines}`]: lines !== undefined,
596
- }) }, h("div", { key: '4f29d2a52fad8314d779510c8851a632b68f783d', class: "list-header-inner", part: "inner" }, h("slot", { key: '4b434064755e69b6e5ba4d241159d0590ca6fa47' }))));
600
+ }) }, h("div", { key: 'a9a9463f209023da222f38a78126d5aaeb2f03b9', class: "list-header-inner", part: "inner" }, h("slot", { key: 'e3c6ec1b588392d347844d59d338abc339e80634' }))));
597
601
  }
598
602
  };
599
603
  ListHeader.style = {
@@ -614,9 +618,9 @@ const Note = class {
614
618
  }
615
619
  render() {
616
620
  const theme = getIonTheme(this);
617
- return (h(Host, { key: '3f882cc4cac96016c332fd42b7a42ee2065284ce', class: createColorClasses(this.color, {
621
+ return (h(Host, { key: '376ae1c66c19d1bdd74a2371c0639ed9e49648b5', class: createColorClasses(this.color, {
618
622
  [theme]: true,
619
- }) }, h("slot", { key: 'f90b98dcd17b4f3c4e7b85ad4fe01e5478bdc952' })));
623
+ }) }, h("slot", { key: 'f8168cd88bb21c5e5a2b03c29539729fb38a19fd' })));
620
624
  }
621
625
  };
622
626
  Note.style = {
@@ -652,11 +656,11 @@ const SkeletonText = class {
652
656
  const animated = this.animated && config.getBoolean('animated', true);
653
657
  const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
654
658
  const theme = getIonTheme(this);
655
- return (h(Host, { key: '7a27c2f32338a0770951ab814095dd0bf091966c', class: {
659
+ return (h(Host, { key: '370451ee8963b776079f5df365f7bbd70a53b270', class: {
656
660
  [theme]: true,
657
661
  'skeleton-text-animated': animated,
658
662
  'in-media': inMedia,
659
- } }, h("span", { key: 'f21c7f76ea9095a6c2fe39714d2415abc0b5366b' }, "\u00A0")));
663
+ } }, h("span", { key: '2b861b4ec86cbd61927ab7b81b13517c99dc94c7' }, "\u00A0")));
660
664
  }
661
665
  get el() { return getElement(this); }
662
666
  };
@@ -279,9 +279,9 @@ const Loading = class {
279
279
  * Otherwise, don't set aria-labelledby.
280
280
  */
281
281
  const ariaLabelledBy = message !== undefined ? msgId : null;
282
- return (h(Host, Object.assign({ key: '46358f5a35005840cf60e7c520d4f60415b5991d', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
282
+ return (h(Host, Object.assign({ key: '2ffae36b20a7d7f3a752a062d90062583e31d053', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
283
283
  zIndex: `${40000 + this.overlayIndex}`,
284
- }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), h("ion-backdrop", { key: 'a34cd48d682bc696aa437d22f99fee5427070883', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: '6c663be0284e9b81f0b474ae05f3182b76f6ce7f', tabindex: "0", "aria-hidden": "true" }), h("div", { key: 'a8b8bbab685e59c80793ed66626a7f90b40960d6', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: '016cfe3ac189405620cd4dfc82941b280d84c8a4', class: "loading-spinner" }, h("ion-spinner", { key: '33d580768ab09748c3fa59fa8fed09832abaae7a', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: 'dedf1658004af3269ec1bb9a8028ce786a24d806', tabindex: "0", "aria-hidden": "true" })));
284
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [theme]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), h("ion-backdrop", { key: 'a6d8cac2c34a0905ec67a2c64be7ec12cc84f168', visible: this.showBackdrop, tappable: this.backdropDismiss }), h("div", { key: 'cd011d86f20869096a8546f098fb5edad44033a1', tabindex: "0", "aria-hidden": "true" }), h("div", { key: '70298be2139d6004e0f8fc5a85c5d05f1efdc347', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (h("div", { key: '32aef90695d91e0a82696abbce96ba29cb1a2608', class: "loading-spinner" }, h("ion-spinner", { key: '7ae69c27be273cf3e83230dae043168df27ac27e', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), h("div", { key: 'f13a01b31516c3fe85dd3a623962290c03e7412f', tabindex: "0", "aria-hidden": "true" })));
285
285
  }
286
286
  get el() { return getElement(this); }
287
287
  static get watchers() { return {
@@ -9,7 +9,8 @@ import { b as getIonMode, a as isPlatform, c as getIonTheme, s as shouldUseClose
9
9
  import { p as isEndSide, i as inheritAriaAttributes, l as assert, e as clamp } from './helpers-ChPZH7zh.js';
10
10
  import { m as menuController } from './index-C7F1yJyV.js';
11
11
  import { h as hostContext, c as createColorClasses } from './theme-DaJxRxSQ.js';
12
- import { u as menuOutline, v as menuSharp } from './index-PnwG0glX.js';
12
+ import { l as listSvg } from './list-Dhi5xtNS.js';
13
+ import { u as menuSharp, v as menuOutline } from './index-B4Kq2YNk.js';
13
14
  import './framework-delegate-P5K_3uYw.js';
14
15
  import './focus-visible-vXpMhGrs.js';
15
16
  import './dir-o8OKV5aD.js';
@@ -664,14 +665,14 @@ const Menu = class {
664
665
  * the ionBackButton listener in the menu controller
665
666
  * will handle closing the menu when Escape is pressed.
666
667
  */
667
- return (h(Host, { key: '9b37651cda44cc443b9085e13eb2e5b13fa041e0', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
668
+ return (h(Host, { key: 'ed286af30b990e9a3f67606a6a30c50a07c13f87', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
668
669
  [theme]: true,
669
670
  [`menu-type-${type}`]: true,
670
671
  'menu-enabled': !disabled,
671
672
  [`menu-side-${side}`]: true,
672
673
  'menu-pane-visible': isPaneVisible,
673
674
  'split-pane-side': hostContext('ion-split-pane', el),
674
- } }, h("div", { key: '27d27929b185907be48e50d4b2bbe1a14e971564', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: '38e3385837dff99ee17170798efedc3f58071fac' })), h("ion-backdrop", { key: 'ae11415a8b4c00e6c4a90ce88405cd5b11a92374', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
675
+ } }, h("div", { key: '8b15c8ccd73eeb640eea76996d5123a9cd67face', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, h("slot", { key: 'accfd5cdddac5cde2776b8272a63c1513e6928a8' })), h("ion-backdrop", { key: 'e85f75b8ace51db8fac52388c042e93f73bf14ca', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
675
676
  }
676
677
  get el() { return getElement(this); }
677
678
  static get watchers() { return {
@@ -751,15 +752,16 @@ const MenuButton = class {
751
752
  async visibilityChanged() {
752
753
  this.visible = await updateVisibility(this.menu);
753
754
  }
754
- /**
755
- * Get the icon to use for the menu icon.
756
- * Use the icon set in the config.
757
- * If no icon is set in the config, use the default icon.
758
- */
759
755
  get menuIcon() {
760
- // Determine the theme and map to the default icon
756
+ // Determine the theme and map to default icons
761
757
  const theme = getIonTheme(this);
762
- const defaultIcon = theme === 'ios' ? menuOutline : menuSharp;
758
+ const defaultIcons = {
759
+ ios: menuOutline,
760
+ ionic: listSvg,
761
+ md: menuSharp,
762
+ };
763
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
764
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
763
765
  // Return the configured menu icon or the default icon
764
766
  return config.get('menuIcon', defaultIcon);
765
767
  }
@@ -771,7 +773,7 @@ const MenuButton = class {
771
773
  type: this.type,
772
774
  };
773
775
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
774
- return (h(Host, { key: '026e0b8786a0743d93b1410f2c7046857e76d31e', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
776
+ return (h(Host, { key: '341ca3bfac81ce4432eef5d2fd738becd1dfb07e', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses(color, {
775
777
  [theme]: true,
776
778
  button: true, // ion-buttons target .button
777
779
  'menu-button-hidden': hidden,
@@ -780,7 +782,7 @@ const MenuButton = class {
780
782
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
781
783
  'ion-activatable': true,
782
784
  'ion-focusable': true,
783
- }) }, h("button", Object.assign({ key: '43ae83fb67e6f138c73eceea433d2e1597539347' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), h("span", { key: 'f6ddf381a18c716c1826d42e88c4b5a7840bb5fd', class: "button-inner" }, h("slot", { key: 'bb39b67eacc81d30221bfb54dc0a835289cc5380' }, h("ion-icon", { key: '8f8313ed81ad2d59e2bd40d4025dd20dc822d512', part: "icon", icon: menuIcon, lazy: false, "aria-hidden": "true" }))), theme === 'md' && h("ion-ripple-effect", { key: '25ca62a13acd04b0a3df7ead7c6dabff1446bce5', type: "unbounded" }))));
785
+ }) }, h("button", Object.assign({ key: '6e6229df2fc1f2d18294a5fbf7fe71e7dd47666a' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), h("span", { key: '0216acbf67d7aa5edc52328f7ded4cb98bc8a237', class: "button-inner" }, h("slot", { key: '5c2cdae42add9a25d3e6323048fcbc6b5fc9b32e' }, h("ion-icon", { key: '5b38c283957cd2f1ad659427dec612fc84fc054f', part: "icon", icon: menuIcon, lazy: false, "aria-hidden": "true" }))), theme === 'md' && h("ion-ripple-effect", { key: 'adabe4ffa1d66fe36d55294d774db9c4bba1ad76', type: "unbounded" }))));
784
786
  }
785
787
  get el() { return getElement(this); }
786
788
  };
@@ -816,10 +818,10 @@ const MenuToggle = class {
816
818
  render() {
817
819
  const theme = getIonTheme(this);
818
820
  const hidden = this.autoHide && !this.visible;
819
- return (h(Host, { key: 'c97c11d2e8b3efd50302cedd68c2dd95b0355bd4', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
821
+ return (h(Host, { key: '9ef631d9ae370a8740e691d281863203bfdddc38', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
820
822
  [theme]: true,
821
823
  'menu-toggle-hidden': hidden,
822
- } }, h("slot", { key: 'e9987fbbbf9cf7fb8e770502c3c9d5c5779c3926' })));
824
+ } }, h("slot", { key: 'f8d9dfc562ed625ae47ec771ef6b2ea04bc463f4' })));
823
825
  }
824
826
  };
825
827
  MenuToggle.style = menuToggleCss();
@@ -3132,11 +3132,11 @@ const Modal = class {
3132
3132
  const isHandleCycle = handleBehavior === 'cycle';
3133
3133
  const shape = this.getShape();
3134
3134
  const isSheetModalWithHandle = isSheetModal && showHandle;
3135
- return (h(Host, Object.assign({ key: 'a2a8d62a699e1bcd2d6d277dcec3ae0a0cdaa773', "no-router": true,
3135
+ return (h(Host, Object.assign({ key: 'cf99da2a03dd010716265401c8b6fe46a9bf0ced', "no-router": true,
3136
3136
  // Allow the modal to be navigable when the handle is focusable
3137
3137
  tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
3138
3138
  zIndex: `${20000 + this.overlayIndex}`,
3139
- }, class: Object.assign({ [theme]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-${shape}`]: shape !== undefined, [`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, onFocus: this.onModalFocus }), h("ion-backdrop", { key: 'ef4dce13e8fa68d118bbb87262cce3d6067f8159', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), theme === 'ios' && h("div", { key: 'fffa61a3d9f45b72847a224845758d9f97fb3e79', class: "modal-shadow" }), h("div", Object.assign({ key: '1872b201510124d94f86b42a0b30bdd416280a2a',
3139
+ }, class: Object.assign({ [theme]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-${shape}`]: shape !== undefined, [`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, onFocus: this.onModalFocus }), h("ion-backdrop", { key: '91d148a13955bcda57b5d15d2613e74cc8cd5047', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), theme === 'ios' && h("div", { key: 'bd51fa967ced9c6d574f0bb6d3c569fe53a2be59', class: "modal-shadow" }), h("div", Object.assign({ key: '45fc1228a8dfc8009c933c6cee4067c08ab27fe6',
3140
3140
  /*
3141
3141
  role and aria-modal must be used on the
3142
3142
  same element. They must also be set inside the
@@ -3149,9 +3149,9 @@ const Modal = class {
3149
3149
  without the tabindex focus() would be a no-op and screen readers
3150
3150
  may not properly announce the dialog and its content when it opens.
3151
3151
  */
3152
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: '822983329fce3d8dbf007172448a0f6c7f180190', class: "modal-handle",
3152
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", tabIndex: -1, class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (h("button", { key: '9bcc1589af7c422ee6f116aa50f62981031042ba', class: "modal-handle",
3153
3153
  // Prevents the handle from receiving keyboard focus when it does not cycle
3154
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", "data-focus-order": "1", ref: (el) => (this.dragHandleEl = el) })), h("slot", { key: '182a6e6b3aa92f22035c851eb32bd2392cf941d1', onSlotchange: this.onSlotChange }))));
3154
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", "data-focus-order": "1", ref: (el) => (this.dragHandleEl = el) })), h("slot", { key: 'd913facdd6abf0d87ba5e2d7f8b2f1c18e3ef556', onSlotchange: this.onSlotChange }))));
3155
3155
  }
3156
3156
  get el() { return getElement(this); }
3157
3157
  static get watchers() { return {
@@ -899,7 +899,7 @@ const Nav = class {
899
899
  }
900
900
  }
901
901
  render() {
902
- return h("slot", { key: '2542f3c31517c7238d1c286435c6e6738fafb145' });
902
+ return h("slot", { key: '3dfe9c2a5f3ea75cb6d82b76b240733105cddfad' });
903
903
  }
904
904
  get el() { return getElement(this); }
905
905
  static get watchers() { return {
@@ -945,7 +945,7 @@ const NavLink = class {
945
945
  };
946
946
  }
947
947
  render() {
948
- return h(Host, { key: '892d940265e46ab358af2693c4d63234fe301a85', onClick: this.onClick });
948
+ return h(Host, { key: '476bfb5bb6fba4f422ec40315fc3ef466d01f757', onClick: this.onClick });
949
949
  }
950
950
  get el() { return getElement(this); }
951
951
  };
@@ -101,10 +101,10 @@ const PickerColumnOption = class {
101
101
  render() {
102
102
  const { color, disabled, ariaLabel } = this;
103
103
  const theme = getIonTheme(this);
104
- return (h(Host, { key: 'ca671f1d55775b5f2f92d0a0a76ee2cc6b0da684', class: createColorClasses(color, {
104
+ return (h(Host, { key: 'fe9553e3157d35f5c28a3f2457715bd598ec1e00', class: createColorClasses(color, {
105
105
  [theme]: true,
106
106
  ['option-disabled']: disabled,
107
- }) }, h("div", { key: 'dc1d02a320e46e11b4cf981f03d240282d38e953', class: 'picker-column-option-button', role: "button", "aria-label": ariaLabel, onClick: () => this.onClick() }, h("slot", { key: '0d8eeeafb99d0b27f0a53e8404708ed6f5d09f5a' }))));
107
+ }) }, h("div", { key: '9bc334f020012537144972b5a8a1aed7c35ccec5', class: 'picker-column-option-button', role: "button", "aria-label": ariaLabel, onClick: () => this.onClick() }, h("slot", { key: 'bd076e43c98ad920486230684c7f63e7e0b187f8' }))));
108
108
  }
109
109
  get el() { return getElement(this); }
110
110
  static get watchers() { return {
@@ -549,14 +549,14 @@ const PickerColumn = class {
549
549
  render() {
550
550
  const { color, disabled, isActive, numericInput } = this;
551
551
  const theme = getIonTheme(this);
552
- return (h(Host, { key: 'f59ee8a7743b67fc1d4ce7481157351eaf74b21e', class: createColorClasses(color, {
552
+ return (h(Host, { key: 'f93a206d4f4b96bf4e574e5c920910ea22e1b447', class: createColorClasses(color, {
553
553
  [theme]: true,
554
554
  ['picker-column-active']: isActive,
555
555
  ['picker-column-numeric-input']: numericInput,
556
556
  ['picker-column-disabled']: disabled,
557
- }) }, h("slot", { key: '1ff45d6f05c6f42e8ed0d453f1e40b37f438b6de', name: "prefix" }), h("div", { key: '6c4fd1ef103fec93a0471d6e21baa75034869d55', class: "picker-opts", ref: (el) => {
557
+ }) }, h("slot", { key: 'c2954a494c50a907529dc71e6fb91092773ad8a6', name: "prefix" }), h("div", { key: '1957b8a3a3835980bb22ea3b46b2cb5e6bcc2432', class: "picker-opts", ref: (el) => {
558
558
  this.scrollEl = el;
559
- }, role: "slider", tabindex: this.disabled ? undefined : 0, "aria-label": this.ariaLabel, "aria-valuemin": 0, "aria-valuemax": 0, "aria-valuenow": 0, "aria-valuetext": this.getOptionValueText(this.activeItem), "aria-orientation": "vertical", onKeyDown: (ev) => this.onKeyDown(ev) }, h("div", { key: 'f6e9ac294387992f2d5160ec2b45ac9a721b445a', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '6347e7fc94fb632e8718400e7a038d729ca72815', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '742841d456509ca0d56cc5af3c0acd392ae0632d', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("slot", { key: '0df7a93082ba62f9fe91bef9bf4771ad1c9859bd' }), h("div", { key: 'f9a9f01478e51940c1547b94400b484839f0c6c0', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '01363d1a5a052eb2aceb27339969e8fefaef7531', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'ef60f85fcc83ff6ee43555fdd5c5b27a50cf820b', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), h("slot", { key: '1cdc5accbe0d0f33849d163f0fdcd67c5e4837ae', name: "suffix" })));
559
+ }, role: "slider", tabindex: this.disabled ? undefined : 0, "aria-label": this.ariaLabel, "aria-valuemin": 0, "aria-valuemax": 0, "aria-valuenow": 0, "aria-valuetext": this.getOptionValueText(this.activeItem), "aria-orientation": "vertical", onKeyDown: (ev) => this.onKeyDown(ev) }, h("div", { key: 'c7218ed79d73cef4de55b248d3a4808146e2eee4', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '00d6c9dd149302d006a3a97b9ab61a5399196494', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'f47359409deae7f7d73c8a8a64bc23053efc20d9', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("slot", { key: '791172a636d85a1b49c140066ce867a4f6e8403d' }), h("div", { key: 'f442c5ab5d84acf7b41782fd2b3908ca68a4bd1e', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'b378ca562795326183353f35e328957ac592148c', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'f0c8e825cb890718389395b741aa1b7839dba1b1', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), h("slot", { key: '6a11f3a2c46181d4b982a4d14170e71e3345973b', name: "suffix" })));
560
560
  }
561
561
  get el() { return getElement(this); }
562
562
  static get watchers() { return {
@@ -459,7 +459,7 @@ const Picker = class {
459
459
  this.emitInputModeChange();
460
460
  }
461
461
  render() {
462
- return (h(Host, { key: '7bd377eae3c0fe70f0bc34820d5f7e66a8c1f280', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: '81e4494104e755f8c05a4dcbceb3ad2edb426bfc', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
462
+ return (h(Host, { key: '0e3b8112fd28191ff6af8313fee72919d9b23ee7', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: '92e86aab71f000c35fcf5f4082116285f2e43016', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
463
463
  var _a;
464
464
  /**
465
465
  * The "Enter" key represents
@@ -474,7 +474,7 @@ const Picker = class {
474
474
  if (ev.key === 'Enter') {
475
475
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
476
476
  }
477
- }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '64a1ed7261384f8b8880458684140dabb2886bc4', class: "picker-before" }), h("div", { key: 'b1cb9d14bb7171695ffb138b3ad3150264adee95', class: "picker-after" }), h("div", { key: '11db19b2aab0ca2b84171892a6158c612e8e2642', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: '8cbf25b4282541e3d33aa67bc34e59b46541e64f' })));
477
+ }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '5fad8573cd44bee093f26cd4d7cabad836789e79', class: "picker-before" }), h("div", { key: 'fd26db9e86a3cafe125283eeff0da8be7ea2928e', class: "picker-after" }), h("div", { key: '8174b0f258f3ce00707132c674ff53d3b9fc2aee', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: 'a118b0ec709164758ae95fcb9e110befb574138f' })));
478
478
  }
479
479
  get el() { return getElement(this); }
480
480
  };