@ionic/core 8.5.5-dev.11744729748.174bf7e0 → 8.5.5-dev.11745934912.1dcd33ea

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 (1227) hide show
  1. package/components/action-sheet.js +13 -8
  2. package/components/alert.js +16 -12
  3. package/components/animation.js +2 -3
  4. package/components/backdrop.js +10 -6
  5. package/components/button.js +44 -14
  6. package/components/buttons.js +11 -7
  7. package/components/capacitor.js +1 -1
  8. package/components/caret-down.js +6 -0
  9. package/components/caret-left.js +6 -0
  10. package/components/caret-right.js +6 -0
  11. package/components/checkbox.js +30 -12
  12. package/components/config.js +1 -3
  13. package/{dist/esm/index-cfd9c1f2.js → components/config2.js} +1 -43
  14. package/components/content.js +14 -12
  15. package/components/data.js +8 -8
  16. package/components/focus-visible.js +23 -1
  17. package/components/framework-delegate.js +3 -1
  18. package/components/header.js +24 -15
  19. package/components/helpers.js +43 -4
  20. package/components/index.js +1 -2
  21. package/components/index2.js +2 -1
  22. package/components/index4.js +288 -104
  23. package/components/index5.js +27 -302
  24. package/components/index6.js +124 -3
  25. package/components/index7.js +163 -27
  26. package/components/input-shims.js +2 -2
  27. package/components/input.utils.js +2 -3
  28. package/components/ion-accordion-group.js +26 -7
  29. package/components/ion-accordion.js +36 -18
  30. package/components/ion-app.js +14 -77
  31. package/components/ion-avatar.js +58 -5
  32. package/components/ion-back-button.js +29 -20
  33. package/components/ion-badge.js +76 -9
  34. package/components/ion-breadcrumb.js +45 -11
  35. package/components/ion-breadcrumbs.js +9 -5
  36. package/components/ion-card-content.js +11 -7
  37. package/components/ion-card-header.js +9 -5
  38. package/components/ion-card-subtitle.js +9 -5
  39. package/components/ion-card-title.js +9 -5
  40. package/components/ion-card.js +17 -9
  41. package/components/ion-chip.js +49 -8
  42. package/components/ion-col.js +5 -5
  43. package/components/ion-datetime-button.js +13 -10
  44. package/components/ion-datetime.js +113 -35
  45. package/components/ion-divider.d.ts +11 -0
  46. package/components/ion-divider.js +59 -0
  47. package/components/ion-fab-button.js +33 -10
  48. package/components/ion-fab-list.js +5 -5
  49. package/components/ion-fab.js +6 -6
  50. package/components/ion-footer.js +18 -12
  51. package/components/ion-grid.js +5 -5
  52. package/components/ion-img.js +5 -2
  53. package/components/ion-infinite-scroll-content.js +13 -9
  54. package/components/ion-infinite-scroll.js +5 -5
  55. package/components/ion-input-password-toggle.js +55 -16
  56. package/components/ion-input.js +118 -20
  57. package/components/ion-item-divider.js +9 -5
  58. package/components/ion-item-group.js +9 -5
  59. package/components/ion-item-option.js +32 -9
  60. package/components/ion-item-options.js +11 -7
  61. package/components/ion-item-sliding.js +6 -7
  62. package/components/ion-loading.js +13 -9
  63. package/components/ion-menu-button.js +29 -12
  64. package/components/ion-menu-toggle.js +6 -6
  65. package/components/ion-menu.js +15 -12
  66. package/components/ion-nav-link.js +1 -1
  67. package/components/ion-nav.js +10 -8
  68. package/components/ion-note.js +9 -5
  69. package/components/ion-picker-legacy.js +8 -9
  70. package/components/ion-progress-bar.js +28 -8
  71. package/components/ion-range.js +15 -12
  72. package/components/ion-refresher-content.js +28 -10
  73. package/components/ion-refresher.js +12 -9
  74. package/components/ion-reorder-group.js +5 -5
  75. package/components/ion-reorder.js +31 -5
  76. package/components/ion-router-link.js +6 -6
  77. package/components/ion-router-outlet.js +4 -4
  78. package/components/ion-router.js +8 -9
  79. package/components/ion-row.js +5 -2
  80. package/components/ion-searchbar.js +141 -19
  81. package/components/ion-segment-button.js +14 -11
  82. package/components/ion-segment-content.js +1 -1
  83. package/components/ion-segment-view.js +6 -2
  84. package/components/ion-segment.js +11 -7
  85. package/components/ion-select-option.js +5 -2
  86. package/components/ion-select.js +122 -36
  87. package/components/ion-skeleton-text.js +6 -6
  88. package/components/ion-split-pane.js +14 -11
  89. package/components/ion-tab-bar.js +31 -8
  90. package/components/ion-tab-button.js +28 -8
  91. package/components/ion-tab.js +4 -5
  92. package/components/ion-tabs.js +3 -4
  93. package/components/ion-text.js +5 -5
  94. package/components/ion-textarea.js +48 -11
  95. package/components/ion-thumbnail.js +5 -2
  96. package/components/ion-toast.js +39 -18
  97. package/components/ion-toggle.js +88 -21
  98. package/components/ionic-global.js +385 -15
  99. package/components/ios.transition.js +1 -0
  100. package/components/item.js +41 -11
  101. package/components/keyboard-controller.js +4 -2
  102. package/components/label.js +9 -5
  103. package/components/list-header.js +11 -7
  104. package/components/list.js +29 -6
  105. package/components/list2.js +6 -0
  106. package/components/menu-toggle-util.js +1 -1
  107. package/components/modal.js +54 -24
  108. package/components/notch-controller.js +1 -1
  109. package/components/overlays.js +7 -8
  110. package/components/picker-column-option.js +9 -5
  111. package/components/picker-column.js +7 -8
  112. package/components/picker-column2.js +4 -4
  113. package/components/picker.js +8 -4
  114. package/components/popover.js +12 -9
  115. package/components/radio-group.js +11 -5
  116. package/components/radio.js +12 -8
  117. package/components/ripple-effect.js +18 -8
  118. package/components/select-modal.js +3 -3
  119. package/components/select-popover.js +9 -2
  120. package/components/spinner.js +36 -10
  121. package/components/status-tap.js +1 -1
  122. package/components/title.js +11 -7
  123. package/components/toolbar.js +11 -7
  124. package/components/x.js +6 -0
  125. package/css/core.css +1 -1
  126. package/css/core.css.map +1 -1
  127. package/css/display.css +1 -1
  128. package/css/display.css.map +1 -1
  129. package/css/flex-utils.css +1 -1
  130. package/css/flex-utils.css.map +1 -1
  131. package/css/float-elements.css.map +1 -1
  132. package/css/global.bundle.css.map +1 -1
  133. package/css/ionic/bundle.ionic.css +1 -0
  134. package/css/ionic/bundle.ionic.css.map +1 -0
  135. package/css/ionic/core.ionic.css +1 -0
  136. package/css/ionic/core.ionic.css.map +1 -0
  137. package/css/ionic/global.bundle.ionic.css +1 -0
  138. package/css/ionic/global.bundle.ionic.css.map +1 -0
  139. package/css/ionic/ionic-swiper.ionic.css +1 -0
  140. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  141. package/css/ionic/link.ionic.css +1 -0
  142. package/css/ionic/link.ionic.css.map +1 -0
  143. package/css/ionic/structure.ionic.css +1 -0
  144. package/css/ionic/structure.ionic.css.map +1 -0
  145. package/css/ionic/typography.ionic.css +1 -0
  146. package/css/ionic/typography.ionic.css.map +1 -0
  147. package/css/ionic/utils.bundle.ionic.css +1 -0
  148. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  149. package/css/ionic-swiper.css +1 -1
  150. package/css/ionic-swiper.css.map +1 -1
  151. package/css/ionic.bundle.css +1 -1
  152. package/css/ionic.bundle.css.map +1 -1
  153. package/css/normalize.css.map +1 -1
  154. package/css/padding.css.map +1 -1
  155. package/css/palettes/dark.always.css.map +1 -1
  156. package/css/palettes/dark.class.css.map +1 -1
  157. package/css/palettes/dark.system.css.map +1 -1
  158. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  159. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  160. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  161. package/css/palettes/high-contrast.always.css.map +1 -1
  162. package/css/palettes/high-contrast.class.css.map +1 -1
  163. package/css/palettes/high-contrast.system.css.map +1 -1
  164. package/css/structure.css.map +1 -1
  165. package/css/text-alignment.css.map +1 -1
  166. package/css/text-transformation.css.map +1 -1
  167. package/css/typography.css.map +1 -1
  168. package/css/utils.bundle.css +1 -1
  169. package/css/utils.bundle.css.map +1 -1
  170. package/dist/cjs/{animation-ab2d3449.js → animation-43d312d2.js} +3 -4
  171. package/dist/cjs/{app-globals-ddceb1f4.js → app-globals-c81ddb64.js} +1 -1
  172. package/dist/cjs/{button-active-43e2b419.js → button-active-952e2758.js} +1 -1
  173. package/dist/cjs/{capacitor-c04564bf.js → capacitor-8dec41f0.js} +3 -3
  174. package/dist/cjs/caret-down-3c215cff.js +8 -0
  175. package/dist/cjs/caret-left-2bb66970.js +8 -0
  176. package/dist/cjs/caret-right-88e03970.js +8 -0
  177. package/dist/cjs/{config-f6225ae7.js → config-4f60b98a.js} +1 -3
  178. package/dist/cjs/{index-cc858e97.js → config-aff4ff52.js} +0 -45
  179. package/dist/cjs/{data-94e8d392.js → data-d8023923.js} +8 -8
  180. package/dist/{esm/focus-visible-dd40d69f.js → cjs/focus-visible-fe3acfb5.js} +27 -1
  181. package/dist/cjs/{framework-delegate-862d9d00.js → framework-delegate-b28d080d.js} +4 -2
  182. package/dist/cjs/{haptic-f6b37aa3.js → haptic-7c4b9668.js} +1 -1
  183. package/dist/cjs/{helpers-8a48fdea.js → helpers-a6b43470.js} +43 -4
  184. package/dist/cjs/{index-dbe01e08.js → index-77517743.js} +10 -8
  185. package/dist/cjs/{index-1eff7149.js → index-c05dceac.js} +12 -11
  186. package/dist/cjs/{index-31b07b9c.js → index-d3a1be32.js} +3 -3
  187. package/dist/cjs/{index-a96d31ae.js → index-ea1f3a96.js} +14 -15
  188. package/dist/cjs/index.cjs.js +13 -20
  189. package/dist/cjs/{input-shims-415be7ee.js → input-shims-fb4548bd.js} +19 -17
  190. package/dist/cjs/{input.utils-a7957fd6.js → input.utils-fd15bda5.js} +4 -5
  191. package/dist/cjs/ion-accordion_2.cjs.entry.js +63 -25
  192. package/dist/cjs/ion-action-sheet.cjs.entry.js +22 -18
  193. package/dist/cjs/ion-alert.cjs.entry.js +27 -24
  194. package/dist/cjs/ion-app_8.cjs.entry.js +114 -153
  195. package/dist/cjs/ion-avatar_3.cjs.entry.js +127 -12
  196. package/dist/cjs/ion-back-button.cjs.entry.js +33 -23
  197. package/dist/cjs/ion-backdrop.cjs.entry.js +11 -7
  198. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +54 -16
  199. package/dist/cjs/ion-button_2.cjs.entry.js +47 -15
  200. package/dist/cjs/ion-card_5.cjs.entry.js +53 -29
  201. package/dist/cjs/ion-checkbox.cjs.entry.js +31 -14
  202. package/dist/cjs/ion-chip.cjs.entry.js +46 -8
  203. package/dist/cjs/ion-col_3.cjs.entry.js +14 -11
  204. package/dist/cjs/ion-datetime-button.cjs.entry.js +17 -12
  205. package/dist/cjs/ion-datetime_3.cjs.entry.js +191 -115
  206. package/dist/cjs/ion-divider.cjs.entry.js +43 -0
  207. package/dist/cjs/ion-fab_3.cjs.entry.js +43 -20
  208. package/dist/cjs/ion-img.cjs.entry.js +8 -4
  209. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +22 -17
  210. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +55 -16
  211. package/dist/cjs/ion-input.cjs.entry.js +119 -23
  212. package/dist/cjs/ion-item-option_3.cjs.entry.js +47 -21
  213. package/dist/cjs/ion-item_8.cjs.entry.js +116 -44
  214. package/dist/cjs/ion-loading.cjs.entry.js +21 -18
  215. package/dist/cjs/ion-menu_3.cjs.entry.js +60 -40
  216. package/dist/cjs/ion-modal.cjs.entry.js +99 -70
  217. package/dist/cjs/ion-nav_2.cjs.entry.js +24 -21
  218. package/dist/cjs/ion-picker-column-option.cjs.entry.js +12 -7
  219. package/dist/cjs/ion-picker-column.cjs.entry.js +13 -13
  220. package/dist/cjs/ion-picker.cjs.entry.js +11 -6
  221. package/dist/cjs/ion-popover.cjs.entry.js +21 -18
  222. package/dist/cjs/ion-progress-bar.cjs.entry.js +29 -9
  223. package/dist/cjs/ion-radio_2.cjs.entry.js +25 -14
  224. package/dist/cjs/ion-range.cjs.entry.js +21 -16
  225. package/dist/cjs/ion-refresher_2.cjs.entry.js +48 -26
  226. package/dist/cjs/ion-reorder_2.cjs.entry.js +38 -13
  227. package/dist/cjs/ion-ripple-effect.cjs.entry.js +18 -8
  228. package/dist/cjs/ion-route_4.cjs.entry.js +17 -16
  229. package/dist/cjs/ion-searchbar.cjs.entry.js +140 -19
  230. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  231. package/dist/cjs/ion-segment-view.cjs.entry.js +6 -2
  232. package/dist/cjs/ion-segment_2.cjs.entry.js +27 -18
  233. package/dist/cjs/ion-select-modal.cjs.entry.js +9 -10
  234. package/dist/cjs/ion-select_3.cjs.entry.js +137 -43
  235. package/dist/cjs/ion-spinner.cjs.entry.js +35 -10
  236. package/dist/cjs/ion-split-pane.cjs.entry.js +15 -11
  237. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +61 -21
  238. package/dist/cjs/ion-tab_2.cjs.entry.js +10 -9
  239. package/dist/cjs/ion-text.cjs.entry.js +6 -6
  240. package/dist/cjs/ion-textarea.cjs.entry.js +52 -16
  241. package/dist/cjs/ion-toast.cjs.entry.js +63 -44
  242. package/dist/cjs/ion-toggle.cjs.entry.js +92 -25
  243. package/dist/cjs/ionic-global-02fb2aac.js +531 -0
  244. package/dist/cjs/ionic.cjs.js +4 -4
  245. package/dist/cjs/{ios.transition-a131cd4d.js → ios.transition-e054fb0b.js} +7 -5
  246. package/dist/cjs/{keyboard-af1bb365.js → keyboard-77f82514.js} +5 -3
  247. package/dist/cjs/{keyboard-0272231f.js → keyboard-801ef916.js} +1 -1
  248. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-04202fab.js} +11 -9
  249. package/dist/cjs/list-2930c629.js +8 -0
  250. package/dist/cjs/loader.cjs.js +4 -4
  251. package/dist/cjs/{md.transition-e018ebe5.js → md.transition-eba29791.js} +6 -5
  252. package/dist/cjs/{notch-controller-09b7f358.js → notch-controller-352d63c8.js} +4 -4
  253. package/dist/cjs/{overlays-4c291a05.js → overlays-fc17eab1.js} +21 -22
  254. package/dist/cjs/{status-tap-f1acefac.js → status-tap-99fac5b1.js} +5 -3
  255. package/dist/cjs/{swipe-back-4918e56b.js → swipe-back-8aea3922.js} +3 -2
  256. package/dist/cjs/x-81a8f51c.js +8 -0
  257. package/dist/collection/collection-manifest.json +1 -0
  258. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  259. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  260. package/dist/collection/components/accordion/accordion.js +37 -21
  261. package/dist/collection/components/accordion/accordion.md.css +67 -59
  262. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  263. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  264. package/dist/collection/components/accordion-group/accordion-group.js +44 -9
  265. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  266. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  267. package/dist/collection/components/action-sheet/action-sheet.js +14 -10
  268. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  269. package/dist/collection/components/alert/alert.ios.css +19 -1
  270. package/dist/collection/components/alert/alert.js +16 -14
  271. package/dist/collection/components/alert/alert.md.css +19 -1
  272. package/dist/collection/components/app/app.js +22 -80
  273. package/dist/collection/components/avatar/avatar.ionic.css +360 -0
  274. package/dist/collection/components/avatar/avatar.ios.css +7 -33
  275. package/dist/collection/components/avatar/avatar.js +113 -4
  276. package/dist/collection/components/avatar/avatar.md.css +51 -0
  277. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  278. package/dist/collection/components/back-button/back-button.js +27 -19
  279. package/dist/collection/components/back-button/back-button.md.css +60 -48
  280. package/dist/collection/components/backdrop/backdrop.ionic.css +111 -0
  281. package/dist/collection/components/backdrop/backdrop.ios.css +56 -19
  282. package/dist/collection/components/backdrop/backdrop.js +12 -6
  283. package/dist/collection/components/backdrop/backdrop.md.css +56 -19
  284. package/dist/collection/components/badge/badge.ionic.css +348 -0
  285. package/dist/collection/components/badge/badge.ios.css +139 -12
  286. package/dist/collection/components/badge/badge.js +139 -9
  287. package/dist/collection/components/badge/badge.md.css +123 -12
  288. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  289. package/dist/collection/components/breadcrumb/breadcrumb.js +43 -11
  290. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  291. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  292. package/dist/collection/components/breadcrumbs/breadcrumbs.js +11 -9
  293. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  294. package/dist/collection/components/button/button.ionic.css +603 -0
  295. package/dist/collection/components/button/button.ios.css +139 -46
  296. package/dist/collection/components/button/button.js +49 -19
  297. package/dist/collection/components/button/button.md.css +130 -50
  298. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  299. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  300. package/dist/collection/components/buttons/buttons.js +14 -8
  301. package/dist/collection/components/buttons/buttons.md.css +55 -3
  302. package/dist/collection/components/card/card.ionic.css +137 -0
  303. package/dist/collection/components/card/card.ios.css +65 -14
  304. package/dist/collection/components/card/card.js +34 -10
  305. package/dist/collection/components/card/card.md.css +65 -14
  306. package/dist/collection/components/card-content/card-content.ionic.css +90 -0
  307. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  308. package/dist/collection/components/card-content/card-content.js +11 -8
  309. package/dist/collection/components/card-content/card-content.md.css +16 -1
  310. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  311. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  312. package/dist/collection/components/card-header/card-header.js +12 -9
  313. package/dist/collection/components/card-header/card-header.md.css +27 -15
  314. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  315. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  316. package/dist/collection/components/card-subtitle/card-subtitle.js +11 -8
  317. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  318. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  319. package/dist/collection/components/card-title/card-title.js +11 -8
  320. package/dist/collection/components/card-title/card-title.md.css +73 -0
  321. package/dist/collection/components/checkbox/checkbox.ionic.css +527 -0
  322. package/dist/collection/components/checkbox/checkbox.ios.css +161 -101
  323. package/dist/collection/components/checkbox/checkbox.js +64 -14
  324. package/dist/collection/components/checkbox/checkbox.md.css +162 -102
  325. package/dist/collection/components/chip/chip.ionic.css +230 -0
  326. package/dist/collection/components/chip/chip.ios.css +67 -14
  327. package/dist/collection/components/chip/chip.js +98 -8
  328. package/dist/collection/components/chip/chip.md.css +67 -14
  329. package/dist/collection/components/col/col.css +12 -0
  330. package/dist/collection/components/col/col.js +9 -5
  331. package/dist/collection/components/content/content.css +8 -2
  332. package/dist/collection/components/content/content.js +16 -11
  333. package/dist/collection/components/datetime/datetime.ionic.css +673 -0
  334. package/dist/collection/components/datetime/datetime.ios.css +237 -86
  335. package/dist/collection/components/datetime/datetime.js +107 -29
  336. package/dist/collection/components/datetime/datetime.md.css +237 -86
  337. package/dist/collection/components/datetime/utils/comparison.js +1 -1
  338. package/dist/collection/components/datetime/utils/data.js +5 -5
  339. package/dist/collection/components/datetime/utils/parse.js +1 -1
  340. package/dist/collection/components/datetime/utils/state.js +1 -1
  341. package/dist/collection/components/datetime/utils/validate.js +4 -4
  342. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  343. package/dist/collection/components/datetime-button/datetime-button.js +15 -12
  344. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  345. package/dist/collection/components/divider/divider.ionic.css +150 -0
  346. package/dist/collection/components/divider/divider.ios.css +87 -0
  347. package/dist/collection/components/divider/divider.js +76 -0
  348. package/dist/collection/components/divider/divider.md.css +87 -0
  349. package/dist/collection/components/fab/fab.css +25 -1
  350. package/dist/collection/components/fab/fab.js +9 -5
  351. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  352. package/dist/collection/components/fab-button/fab-button.js +36 -15
  353. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  354. package/dist/collection/components/fab-list/fab-list.css +12 -0
  355. package/dist/collection/components/fab-list/fab-list.js +9 -5
  356. package/dist/collection/components/footer/footer.ios.css +14 -2
  357. package/dist/collection/components/footer/footer.js +20 -15
  358. package/dist/collection/components/footer/footer.md.css +12 -0
  359. package/dist/collection/components/grid/grid.css +12 -0
  360. package/dist/collection/components/grid/grid.js +9 -5
  361. package/dist/collection/components/header/header.ionic.css +86 -0
  362. package/dist/collection/components/header/header.ios.css +25 -10
  363. package/dist/collection/components/header/header.js +42 -17
  364. package/dist/collection/components/header/header.md.css +23 -8
  365. package/dist/collection/components/img/img.js +8 -2
  366. package/dist/collection/components/infinite-scroll/infinite-scroll.js +8 -4
  367. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  368. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +16 -10
  369. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  370. package/dist/collection/components/input/input.ionic.css +855 -0
  371. package/dist/collection/components/input/input.ios.css +223 -140
  372. package/dist/collection/components/input/input.js +144 -30
  373. package/dist/collection/components/input/input.md.css +193 -212
  374. package/dist/collection/components/input/input.utils.js +1 -1
  375. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +80 -0
  376. package/dist/collection/components/input-password-toggle/input-password-toggle.js +50 -14
  377. package/dist/collection/components/input-password-toggle/input-password-toggle.native.css +61 -0
  378. package/dist/collection/components/item/item.ionic.css +502 -0
  379. package/dist/collection/components/item/item.ios.css +109 -69
  380. package/dist/collection/components/item/item.js +44 -16
  381. package/dist/collection/components/item/item.md.css +120 -68
  382. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  383. package/dist/collection/components/item-divider/item-divider.js +11 -8
  384. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  385. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  386. package/dist/collection/components/item-group/item-group.js +13 -7
  387. package/dist/collection/components/item-group/item-group.md.css +12 -0
  388. package/dist/collection/components/item-option/item-option.ionic.css +280 -0
  389. package/dist/collection/components/item-option/item-option.ios.css +136 -29
  390. package/dist/collection/components/item-option/item-option.js +64 -9
  391. package/dist/collection/components/item-option/item-option.md.css +136 -29
  392. package/dist/collection/components/item-options/item-options.ionic.css +223 -0
  393. package/dist/collection/components/item-options/item-options.ios.css +77 -34
  394. package/dist/collection/components/item-options/item-options.js +13 -7
  395. package/dist/collection/components/item-options/item-options.md.css +77 -34
  396. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  397. package/dist/collection/components/item-sliding/item-sliding.js +9 -6
  398. package/dist/collection/components/label/label.ios.css +18 -0
  399. package/dist/collection/components/label/label.js +11 -8
  400. package/dist/collection/components/label/label.md.css +18 -0
  401. package/dist/collection/components/list/list.ionic.css +214 -0
  402. package/dist/collection/components/list/list.ios.css +54 -14
  403. package/dist/collection/components/list/list.js +47 -9
  404. package/dist/collection/components/list/list.md.css +56 -16
  405. package/dist/collection/components/list-header/list-header.ionic.css +192 -0
  406. package/dist/collection/components/list-header/list-header.ios.css +82 -38
  407. package/dist/collection/components/list-header/list-header.js +11 -8
  408. package/dist/collection/components/list-header/list-header.md.css +82 -38
  409. package/dist/collection/components/loading/loading.ios.css +13 -1
  410. package/dist/collection/components/loading/loading.js +13 -10
  411. package/dist/collection/components/loading/loading.md.css +13 -1
  412. package/dist/collection/components/menu/menu.ios.css +15 -3
  413. package/dist/collection/components/menu/menu.js +14 -10
  414. package/dist/collection/components/menu/menu.md.css +15 -3
  415. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  416. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  417. package/dist/collection/components/menu-button/menu-button.js +26 -10
  418. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  419. package/dist/collection/components/menu-toggle/menu-toggle.js +8 -5
  420. package/dist/collection/components/modal/animations/sheet.js +8 -2
  421. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  422. package/dist/collection/components/modal/modal.ionic.css +243 -0
  423. package/dist/collection/components/modal/modal.ios.css +174 -70
  424. package/dist/collection/components/modal/modal.js +50 -14
  425. package/dist/collection/components/modal/modal.md.css +174 -70
  426. package/dist/collection/components/nav/nav.css +7 -1
  427. package/dist/collection/components/nav/nav.js +13 -7
  428. package/dist/collection/components/nav-link/nav-link.js +5 -1
  429. package/dist/collection/components/note/note.ios.css +12 -0
  430. package/dist/collection/components/note/note.js +11 -8
  431. package/dist/collection/components/note/note.md.css +12 -0
  432. package/dist/collection/components/picker/picker.ios.css +15 -3
  433. package/dist/collection/components/picker/picker.js +8 -5
  434. package/dist/collection/components/picker/picker.md.css +15 -3
  435. package/dist/collection/components/picker-column/picker-column.css +9 -2
  436. package/dist/collection/components/picker-column/picker-column.js +8 -7
  437. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  438. package/dist/collection/components/picker-column-option/picker-column-option.js +13 -7
  439. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  440. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  441. package/dist/collection/components/picker-legacy/picker.js +8 -7
  442. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  443. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  444. package/dist/collection/components/picker-legacy-column/picker-column.js +4 -4
  445. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  446. package/dist/collection/components/popover/popover.ios.css +13 -1
  447. package/dist/collection/components/popover/popover.js +16 -13
  448. package/dist/collection/components/popover/popover.md.css +13 -1
  449. package/dist/collection/components/progress-bar/progress-bar.ionic.css +289 -0
  450. package/dist/collection/components/progress-bar/progress-bar.ios.css +43 -12
  451. package/dist/collection/components/progress-bar/progress-bar.js +42 -7
  452. package/dist/collection/components/progress-bar/progress-bar.md.css +43 -12
  453. package/dist/collection/components/radio/radio.ionic.css +424 -0
  454. package/dist/collection/components/radio/radio.ios.css +134 -91
  455. package/dist/collection/components/radio/radio.js +12 -9
  456. package/dist/collection/components/radio/radio.md.css +134 -91
  457. package/dist/collection/components/radio-group/radio-group.ionic.css +127 -0
  458. package/dist/collection/components/radio-group/radio-group.ios.css +42 -18
  459. package/dist/collection/components/radio-group/radio-group.js +13 -5
  460. package/dist/collection/components/radio-group/radio-group.md.css +42 -18
  461. package/dist/collection/components/range/range.ionic.css +555 -0
  462. package/dist/collection/components/range/range.ios.css +128 -85
  463. package/dist/collection/components/range/range.js +14 -11
  464. package/dist/collection/components/range/range.md.css +128 -85
  465. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  466. package/dist/collection/components/refresher/refresher.js +12 -10
  467. package/dist/collection/components/refresher/refresher.md.css +15 -2
  468. package/dist/collection/components/refresher-content/refresher-content.js +28 -7
  469. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  470. package/dist/collection/components/reorder/reorder.js +33 -6
  471. package/dist/collection/components/reorder/reorder.md.css +6 -0
  472. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  473. package/dist/collection/components/reorder-group/reorder-group.js +8 -4
  474. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  475. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +217 -0
  476. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -6
  477. package/dist/collection/components/route/route.js +4 -0
  478. package/dist/collection/components/router/router.js +11 -8
  479. package/dist/collection/components/router/utils/dom.js +1 -2
  480. package/dist/collection/components/router-link/router-link.css +8 -2
  481. package/dist/collection/components/router-link/router-link.js +9 -5
  482. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  483. package/dist/collection/components/router-outlet/router-outlet.js +6 -4
  484. package/dist/collection/components/row/row.css +12 -0
  485. package/dist/collection/components/row/row.js +9 -2
  486. package/dist/collection/components/searchbar/searchbar.ionic.css +628 -0
  487. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  488. package/dist/collection/components/searchbar/searchbar.js +179 -29
  489. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  490. package/dist/collection/components/segment/segment.ionic.css +117 -0
  491. package/dist/collection/components/segment/segment.ios.css +45 -2
  492. package/dist/collection/components/segment/segment.js +11 -8
  493. package/dist/collection/components/segment/segment.md.css +45 -2
  494. package/dist/collection/components/segment-button/segment-button.ionic.css +355 -0
  495. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  496. package/dist/collection/components/segment-button/segment-button.js +14 -12
  497. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  498. package/dist/collection/components/segment-content/segment-content.js +1 -1
  499. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  500. package/dist/collection/components/segment-view/segment-view.js +6 -4
  501. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  502. package/dist/collection/components/select/select.ionic.css +763 -0
  503. package/dist/collection/components/select/select.ios.css +315 -176
  504. package/dist/collection/components/select/select.js +159 -58
  505. package/dist/collection/components/select/select.md.css +331 -178
  506. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  507. package/dist/collection/components/select-modal/select-modal.ios.css +18 -0
  508. package/dist/collection/components/select-modal/select-modal.js +3 -3
  509. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  510. package/dist/collection/components/select-option/select-option.js +9 -2
  511. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  512. package/dist/collection/components/select-popover/select-popover.js +12 -4
  513. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  514. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  515. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -5
  516. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +75 -10
  517. package/dist/collection/components/spinner/spinner.js +46 -6
  518. package/dist/collection/components/spinner/spinner.native.css +198 -0
  519. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  520. package/dist/collection/components/split-pane/split-pane.js +16 -11
  521. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  522. package/dist/collection/components/tab/tab.js +8 -5
  523. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  524. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  525. package/dist/collection/components/tab-bar/tab-bar.js +65 -10
  526. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  527. package/dist/collection/components/tab-button/tab-button.ionic.css +338 -0
  528. package/dist/collection/components/tab-button/tab-button.ios.css +171 -95
  529. package/dist/collection/components/tab-button/tab-button.js +43 -8
  530. package/dist/collection/components/tab-button/tab-button.md.css +137 -93
  531. package/dist/collection/components/tabs/tabs.css +7 -1
  532. package/dist/collection/components/tabs/tabs.js +5 -3
  533. package/dist/collection/components/text/text.css +6 -0
  534. package/dist/collection/components/text/text.js +7 -6
  535. package/dist/collection/components/textarea/textarea.ionic.css +830 -0
  536. package/dist/collection/components/textarea/textarea.ios.css +275 -139
  537. package/dist/collection/components/textarea/textarea.js +69 -16
  538. package/dist/collection/components/textarea/textarea.md.css +288 -140
  539. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  540. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  541. package/dist/collection/components/title/title.ionic.css +145 -0
  542. package/dist/collection/components/title/title.ios.css +32 -4
  543. package/dist/collection/components/title/title.js +13 -7
  544. package/dist/collection/components/title/title.md.css +32 -4
  545. package/dist/collection/components/toast/animations/utils.js +2 -2
  546. package/dist/collection/components/toast/toast.ionic.css +396 -0
  547. package/dist/collection/components/toast/toast.ios.css +84 -45
  548. package/dist/collection/components/toast/toast.js +71 -17
  549. package/dist/collection/components/toast/toast.md.css +84 -45
  550. package/dist/collection/components/toggle/toggle.ionic.css +509 -0
  551. package/dist/collection/components/toggle/toggle.ios.css +252 -148
  552. package/dist/collection/components/toggle/toggle.js +84 -20
  553. package/dist/collection/components/toggle/toggle.md.css +249 -148
  554. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  555. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  556. package/dist/collection/components/toolbar/toolbar.js +13 -10
  557. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  558. package/dist/collection/global/ionic-global.js +228 -13
  559. package/dist/collection/index.js +0 -1
  560. package/dist/collection/utils/animation/animation.js +1 -2
  561. package/dist/collection/utils/focus-visible.js +22 -0
  562. package/dist/collection/utils/framework-delegate.js +3 -1
  563. package/dist/collection/utils/hardware-back-button.js +1 -2
  564. package/dist/collection/utils/helpers.js +43 -4
  565. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  566. package/dist/collection/utils/logging/index.js +4 -10
  567. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  568. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  569. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  570. package/dist/collection/utils/overlays.js +6 -5
  571. package/dist/collection/utils/sanitization/index.js +1 -2
  572. package/dist/collection/utils/test/playwright/generator.js +48 -23
  573. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  574. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  575. package/dist/collection/utils/transition/ios.transition.js +1 -0
  576. package/dist/docs.json +7623 -331
  577. package/dist/esm/{animation-8b25e105.js → animation-75691d96.js} +2 -3
  578. package/dist/esm/{app-globals-dbdbb3df.js → app-globals-73e46285.js} +1 -1
  579. package/dist/esm/{button-active-90f1dbc4.js → button-active-e61fbdcf.js} +2 -2
  580. package/dist/esm/{capacitor-59395cbd.js → capacitor-41c43387.js} +1 -1
  581. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  582. package/dist/esm/caret-left-33424bb0.js +6 -0
  583. package/dist/esm/caret-right-68d856ad.js +6 -0
  584. package/dist/esm/{config-9898ed97.js → config-49c88215.js} +1 -3
  585. package/dist/esm/config-84eb9670.js +79 -0
  586. package/dist/esm/{data-0d7ea6eb.js → data-19735819.js} +8 -8
  587. package/dist/{cjs/focus-visible-7a0ce04f.js → esm/focus-visible-6827442c.js} +23 -3
  588. package/dist/esm/{framework-delegate-56b467ad.js → framework-delegate-648f8ef4.js} +4 -2
  589. package/dist/esm/{haptic-ac164e4c.js → haptic-b2fbf33c.js} +1 -1
  590. package/dist/esm/{helpers-d94bc8ad.js → helpers-a034be46.js} +43 -4
  591. package/dist/esm/{index-9a17db3d.js → index-46e613a7.js} +2 -2
  592. package/dist/esm/{index-527b9e34.js → index-4c3c5d46.js} +1 -1
  593. package/dist/esm/{index-18f31305.js → index-65ba6107.js} +10 -11
  594. package/{components/index9.js → dist/esm/index-664eaf98.js} +5 -2
  595. package/dist/esm/{index-68c0d151.js → index-8706b805.js} +6 -5
  596. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  597. package/dist/esm/index.js +13 -14
  598. package/dist/esm/{input-shims-279903e2.js → input-shims-16500377.js} +8 -6
  599. package/dist/esm/{input.utils-40504d6d.js → input.utils-8ddd6756.js} +3 -4
  600. package/dist/esm/ion-accordion_2.entry.js +63 -25
  601. package/dist/esm/ion-action-sheet.entry.js +23 -19
  602. package/dist/esm/ion-alert.entry.js +26 -23
  603. package/dist/esm/ion-app_8.entry.js +102 -141
  604. package/dist/esm/ion-avatar_3.entry.js +129 -14
  605. package/dist/esm/ion-back-button.entry.js +32 -22
  606. package/dist/esm/ion-backdrop.entry.js +12 -8
  607. package/dist/esm/ion-breadcrumb_2.entry.js +56 -18
  608. package/dist/esm/ion-button_2.entry.js +48 -16
  609. package/dist/esm/ion-card_5.entry.js +54 -30
  610. package/dist/esm/ion-checkbox.entry.js +32 -15
  611. package/dist/esm/ion-chip.entry.js +47 -9
  612. package/dist/esm/ion-col_3.entry.js +15 -12
  613. package/dist/esm/ion-datetime-button.entry.js +18 -13
  614. package/dist/esm/ion-datetime_3.entry.js +132 -56
  615. package/dist/esm/ion-divider.entry.js +39 -0
  616. package/dist/esm/ion-fab_3.entry.js +45 -22
  617. package/dist/esm/ion-img.entry.js +9 -5
  618. package/dist/esm/ion-infinite-scroll_2.entry.js +21 -16
  619. package/dist/esm/ion-input-password-toggle.entry.js +56 -17
  620. package/dist/esm/ion-input.entry.js +121 -25
  621. package/dist/esm/ion-item-option_3.entry.js +48 -22
  622. package/dist/esm/ion-item_8.entry.js +117 -45
  623. package/dist/esm/ion-loading.entry.js +20 -17
  624. package/dist/esm/ion-menu_3.entry.js +51 -31
  625. package/dist/esm/ion-modal.entry.js +63 -34
  626. package/dist/esm/ion-nav_2.entry.js +16 -13
  627. package/dist/esm/ion-picker-column-option.entry.js +13 -8
  628. package/dist/esm/ion-picker-column.entry.js +13 -13
  629. package/dist/esm/ion-picker.entry.js +12 -7
  630. package/dist/esm/ion-popover.entry.js +20 -17
  631. package/dist/esm/ion-progress-bar.entry.js +29 -9
  632. package/dist/esm/ion-radio_2.entry.js +26 -15
  633. package/dist/esm/ion-range.entry.js +19 -14
  634. package/dist/esm/ion-refresher_2.entry.js +45 -23
  635. package/dist/esm/ion-reorder_2.entry.js +40 -15
  636. package/dist/esm/ion-ripple-effect.entry.js +19 -9
  637. package/dist/esm/ion-route_4.entry.js +18 -17
  638. package/dist/esm/ion-searchbar.entry.js +141 -20
  639. package/dist/esm/ion-segment-content.entry.js +2 -2
  640. package/dist/esm/ion-segment-view.entry.js +7 -3
  641. package/dist/esm/ion-segment_2.entry.js +28 -19
  642. package/dist/esm/ion-select-modal.entry.js +10 -11
  643. package/dist/esm/ion-select_3.entry.js +138 -44
  644. package/dist/esm/ion-spinner.entry.js +34 -9
  645. package/dist/esm/ion-split-pane.entry.js +16 -12
  646. package/dist/esm/ion-tab-bar_2.entry.js +61 -21
  647. package/dist/esm/ion-tab_2.entry.js +11 -10
  648. package/dist/esm/ion-text.entry.js +7 -7
  649. package/dist/esm/ion-textarea.entry.js +53 -17
  650. package/dist/esm/ion-toast.entry.js +44 -25
  651. package/dist/esm/ion-toggle.entry.js +93 -26
  652. package/dist/esm/ionic-global-c1aec1e9.js +517 -0
  653. package/dist/esm/ionic.js +6 -6
  654. package/dist/esm/{ios.transition-4047cb68.js → ios.transition-9ff146da.js} +8 -6
  655. package/dist/esm/{keyboard-73175e24.js → keyboard-0fef95c0.js} +1 -1
  656. package/dist/esm/{keyboard-52278bd7.js → keyboard-9b786586.js} +5 -3
  657. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-6f3a63af.js} +5 -3
  658. package/dist/esm/list-6524700c.js +6 -0
  659. package/dist/esm/loader.js +6 -6
  660. package/dist/esm/{md.transition-30ce8d1b.js → md.transition-2f3188d8.js} +7 -6
  661. package/dist/esm/{notch-controller-1a1f7183.js → notch-controller-d4f6433f.js} +2 -2
  662. package/dist/esm/{overlays-d99dcb0a.js → overlays-bb311c8e.js} +9 -10
  663. package/dist/esm/{status-tap-42a8af65.js → status-tap-562eee39.js} +6 -4
  664. package/dist/esm/{swipe-back-0184f6b3.js → swipe-back-983c0694.js} +3 -2
  665. package/dist/esm/x-a64bcd9f.js +6 -0
  666. package/dist/esm-es5/animation-75691d96.js +4 -0
  667. package/dist/esm-es5/app-globals-73e46285.js +4 -0
  668. package/dist/esm-es5/{button-active-90f1dbc4.js → button-active-e61fbdcf.js} +1 -1
  669. package/dist/esm-es5/capacitor-41c43387.js +4 -0
  670. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  671. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  672. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  673. package/dist/esm-es5/config-49c88215.js +4 -0
  674. package/dist/esm-es5/config-84eb9670.js +4 -0
  675. package/dist/esm-es5/data-19735819.js +4 -0
  676. package/dist/esm-es5/focus-visible-6827442c.js +4 -0
  677. package/dist/esm-es5/framework-delegate-648f8ef4.js +4 -0
  678. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-b2fbf33c.js} +1 -1
  679. package/dist/esm-es5/helpers-a034be46.js +4 -0
  680. package/dist/esm-es5/index-46e613a7.js +4 -0
  681. package/dist/esm-es5/{index-527b9e34.js → index-4c3c5d46.js} +1 -1
  682. package/dist/esm-es5/index-65ba6107.js +4 -0
  683. package/dist/esm-es5/index-664eaf98.js +4 -0
  684. package/dist/esm-es5/index-8706b805.js +4 -0
  685. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  686. package/dist/esm-es5/index.js +1 -1
  687. package/dist/esm-es5/input-shims-16500377.js +4 -0
  688. package/dist/esm-es5/input.utils-8ddd6756.js +4 -0
  689. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  690. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  691. package/dist/esm-es5/ion-alert.entry.js +1 -1
  692. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  693. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  694. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  695. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  696. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  697. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  698. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  699. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  700. package/dist/esm-es5/ion-chip.entry.js +1 -1
  701. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  702. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  703. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  704. package/dist/esm-es5/ion-divider.entry.js +4 -0
  705. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  706. package/dist/esm-es5/ion-img.entry.js +1 -1
  707. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  708. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  709. package/dist/esm-es5/ion-input.entry.js +1 -1
  710. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  711. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  712. package/dist/esm-es5/ion-loading.entry.js +1 -1
  713. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  714. package/dist/esm-es5/ion-modal.entry.js +1 -1
  715. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  716. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  717. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  718. package/dist/esm-es5/ion-picker.entry.js +1 -1
  719. package/dist/esm-es5/ion-popover.entry.js +1 -1
  720. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  721. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  722. package/dist/esm-es5/ion-range.entry.js +1 -1
  723. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  724. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  725. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  726. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  727. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  728. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  729. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  730. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  731. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  732. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  733. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  734. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  735. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  736. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  737. package/dist/esm-es5/ion-text.entry.js +1 -1
  738. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  739. package/dist/esm-es5/ion-toast.entry.js +1 -1
  740. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  741. package/dist/esm-es5/ionic-global-c1aec1e9.js +4 -0
  742. package/dist/esm-es5/ionic.js +1 -1
  743. package/dist/esm-es5/ios.transition-9ff146da.js +4 -0
  744. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-0fef95c0.js} +1 -1
  745. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-9b786586.js} +1 -1
  746. package/dist/esm-es5/keyboard-controller-6f3a63af.js +4 -0
  747. package/dist/esm-es5/list-6524700c.js +4 -0
  748. package/dist/esm-es5/loader.js +1 -1
  749. package/dist/esm-es5/md.transition-2f3188d8.js +4 -0
  750. package/dist/esm-es5/notch-controller-d4f6433f.js +4 -0
  751. package/dist/esm-es5/overlays-bb311c8e.js +4 -0
  752. package/dist/esm-es5/status-tap-562eee39.js +4 -0
  753. package/dist/esm-es5/swipe-back-983c0694.js +4 -0
  754. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  755. package/dist/html.html-data.json +2503 -213
  756. package/dist/ionic/index.esm.js +1 -1
  757. package/dist/ionic/ionic.esm.js +1 -1
  758. package/dist/ionic/ionic.js +1 -1
  759. package/dist/ionic/p-000a60c5.system.entry.js +4 -0
  760. package/dist/ionic/p-01d80901.system.js +4 -0
  761. package/dist/ionic/p-05ffb16b.system.js +4 -0
  762. package/dist/ionic/p-06ec4706.js +4 -0
  763. package/dist/ionic/p-09072d3b.entry.js +4 -0
  764. package/dist/ionic/p-0b941072.js +4 -0
  765. package/dist/ionic/p-0d297574.system.entry.js +4 -0
  766. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  767. package/dist/ionic/p-1276cda4.system.js +4 -0
  768. package/dist/ionic/p-148e00f2.js +4 -0
  769. package/dist/ionic/p-180f0c6f.system.entry.js +4 -0
  770. package/dist/ionic/p-183b2910.js +4 -0
  771. package/dist/ionic/p-19544c40.entry.js +4 -0
  772. package/dist/ionic/p-1d49225d.entry.js +4 -0
  773. package/dist/ionic/p-1d512070.system.entry.js +4 -0
  774. package/dist/ionic/p-1fd5c378.system.js +4 -0
  775. package/dist/ionic/p-2004fb92.system.entry.js +4 -0
  776. package/dist/ionic/p-22e704a0.entry.js +4 -0
  777. package/dist/ionic/p-22f0ff9d.system.entry.js +4 -0
  778. package/dist/ionic/p-23ea84b6.entry.js +4 -0
  779. package/dist/ionic/p-243adf8c.js +4 -0
  780. package/dist/ionic/p-246e6dc5.entry.js +4 -0
  781. package/dist/ionic/p-25679df9.system.entry.js +4 -0
  782. package/dist/ionic/p-259dcfa3.entry.js +4 -0
  783. package/dist/ionic/p-25fb485f.system.entry.js +4 -0
  784. package/dist/ionic/p-26d7c6fd.system.entry.js +4 -0
  785. package/dist/ionic/p-27f94ab0.system.entry.js +4 -0
  786. package/dist/ionic/p-2a51dad2.js +4 -0
  787. package/dist/ionic/p-2b2d1437.entry.js +4 -0
  788. package/dist/ionic/p-2bf44172.js +4 -0
  789. package/dist/ionic/p-2d8cc8b4.entry.js +4 -0
  790. package/dist/ionic/p-3163265a.entry.js +4 -0
  791. package/dist/ionic/{p-8d2d39d0.js → p-322a2f0e.js} +1 -1
  792. package/dist/ionic/p-350e4850.system.entry.js +4 -0
  793. package/dist/ionic/p-3533c471.system.entry.js +4 -0
  794. package/dist/ionic/p-361d3f82.system.js +4 -0
  795. package/dist/ionic/p-3824cffd.entry.js +4 -0
  796. package/dist/ionic/p-3832a6ae.system.js +4 -0
  797. package/dist/ionic/p-3835325e.entry.js +4 -0
  798. package/dist/ionic/p-38c0cca7.js +4 -0
  799. package/dist/ionic/p-39b0a811.entry.js +4 -0
  800. package/dist/ionic/p-3acf0ca0.system.entry.js +4 -0
  801. package/dist/ionic/p-3b4574b3.entry.js +4 -0
  802. package/dist/ionic/p-3b7deae5.entry.js +4 -0
  803. package/dist/ionic/p-3b98dd61.system.entry.js +4 -0
  804. package/dist/ionic/p-3c31f667.system.js +4 -0
  805. package/dist/ionic/p-3c8c8686.system.entry.js +4 -0
  806. package/dist/ionic/{p-1d307396.system.js → p-3f001e0c.system.js} +2 -2
  807. package/dist/ionic/p-3fc870da.system.js +4 -0
  808. package/dist/ionic/p-41d5544e.js +4 -0
  809. package/dist/ionic/p-429dd2b5.system.js +4 -0
  810. package/dist/ionic/p-436bfcc9.system.entry.js +4 -0
  811. package/dist/ionic/p-43d6a02c.system.entry.js +4 -0
  812. package/dist/ionic/p-4459a66e.system.js +4 -0
  813. package/dist/ionic/p-44b1fefc.entry.js +4 -0
  814. package/dist/ionic/p-452fc75e.entry.js +4 -0
  815. package/dist/ionic/p-45388333.js +4 -0
  816. package/dist/ionic/p-46f1771d.entry.js +4 -0
  817. package/dist/ionic/p-49664bbc.system.entry.js +4 -0
  818. package/dist/ionic/p-4a767053.entry.js +4 -0
  819. package/dist/ionic/{p-a4866e3e.system.js → p-53378de8.system.js} +1 -1
  820. package/dist/ionic/p-548cd1e5.system.entry.js +4 -0
  821. package/dist/ionic/{p-66a5d6a8.js → p-578d5013.js} +1 -1
  822. package/dist/ionic/p-583f0c5f.js +4 -0
  823. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  824. package/dist/ionic/p-5b57d327.system.js +4 -0
  825. package/dist/ionic/p-5b5bb0a5.system.js +4 -0
  826. package/dist/ionic/p-5dde2c4f.system.entry.js +4 -0
  827. package/dist/ionic/p-607c9c33.js +4 -0
  828. package/dist/ionic/p-69bbeaf6.js +4 -0
  829. package/dist/ionic/p-6a0dd6bc.js +4 -0
  830. package/dist/ionic/{p-612096e6.system.entry.js → p-6e0e68de.system.entry.js} +1 -1
  831. package/dist/ionic/p-6fcdcb51.system.js +4 -0
  832. package/dist/ionic/p-701c7638.js +4 -0
  833. package/dist/ionic/p-7028eadd.system.entry.js +4 -0
  834. package/dist/ionic/p-7071d7ca.js +4 -0
  835. package/dist/ionic/p-714aaf3c.entry.js +4 -0
  836. package/dist/ionic/{p-b06ac4a5.system.js → p-76b92f54.system.js} +1 -1
  837. package/dist/ionic/{p-8985cdb6.system.js → p-7b10b4c2.system.js} +1 -1
  838. package/dist/ionic/p-7b33697a.js +4 -0
  839. package/dist/ionic/p-7b382a8b.js +4 -0
  840. package/dist/ionic/p-7c6f71eb.entry.js +4 -0
  841. package/dist/ionic/p-7cf8fbdc.system.entry.js +4 -0
  842. package/dist/ionic/p-7ff70f62.entry.js +4 -0
  843. package/dist/ionic/p-808e57e0.system.js +4 -0
  844. package/dist/ionic/p-8131e086.system.entry.js +4 -0
  845. package/dist/ionic/p-8255bd7b.system.entry.js +4 -0
  846. package/dist/ionic/{p-84096b45.system.js → p-82a63266.system.js} +1 -1
  847. package/dist/ionic/p-8402b59e.system.entry.js +4 -0
  848. package/dist/ionic/p-840f1c59.entry.js +4 -0
  849. package/dist/ionic/p-84ac0a34.system.entry.js +4 -0
  850. package/dist/ionic/{p-a93873de.system.js → p-84f02275.system.js} +1 -1
  851. package/dist/ionic/p-85c7c591.system.entry.js +4 -0
  852. package/dist/ionic/p-8898b2c4.system.entry.js +4 -0
  853. package/dist/ionic/p-88aa79f6.entry.js +4 -0
  854. package/dist/ionic/p-8b06c868.system.entry.js +4 -0
  855. package/dist/ionic/p-8c6c972b.js +4 -0
  856. package/dist/ionic/p-8f2efbe5.entry.js +4 -0
  857. package/dist/ionic/p-93f7ddd5.entry.js +4 -0
  858. package/dist/ionic/{p-f6e7d104.system.js → p-96898f8d.system.js} +1 -1
  859. package/dist/ionic/p-9757a3c0.system.js +4 -0
  860. package/dist/ionic/p-97a351b5.entry.js +4 -0
  861. package/dist/ionic/{p-cad82569.entry.js → p-97c5e467.entry.js} +1 -1
  862. package/dist/ionic/p-98ea9230.system.js +4 -0
  863. package/dist/ionic/p-9a0ab352.js +4 -0
  864. package/dist/ionic/p-9d513c26.entry.js +4 -0
  865. package/dist/ionic/p-a12c4c78.js +4 -0
  866. package/dist/ionic/{p-707408c5.system.entry.js → p-a16830e0.system.entry.js} +1 -1
  867. package/dist/ionic/p-a1d0ee0b.system.entry.js +4 -0
  868. package/dist/ionic/p-a2f85605.entry.js +4 -0
  869. package/dist/ionic/p-a47bffd6.system.entry.js +4 -0
  870. package/dist/ionic/p-a569fc14.system.entry.js +4 -0
  871. package/dist/ionic/p-a6a71315.entry.js +4 -0
  872. package/dist/ionic/p-a9af4103.js +4 -0
  873. package/dist/ionic/p-ab0aa514.system.js +4 -0
  874. package/dist/ionic/p-aba2d55f.system.entry.js +4 -0
  875. package/dist/ionic/p-acee3852.entry.js +4 -0
  876. package/dist/ionic/p-af7c3b18.system.js +4 -0
  877. package/dist/ionic/p-b1618321.entry.js +4 -0
  878. package/dist/ionic/p-b406502d.entry.js +4 -0
  879. package/dist/ionic/p-b57d8fcb.system.entry.js +4 -0
  880. package/dist/ionic/{p-27281edd.js → p-b5bca0ad.js} +1 -1
  881. package/dist/ionic/p-b5e3859a.entry.js +4 -0
  882. package/dist/ionic/p-b719e9a7.js +4 -0
  883. package/dist/ionic/p-b79a47ba.entry.js +4 -0
  884. package/dist/ionic/p-b9ddbdf3.js +4 -0
  885. package/dist/ionic/p-ba992f31.system.entry.js +4 -0
  886. package/dist/ionic/p-bb183633.js +4 -0
  887. package/dist/ionic/p-c0b7f342.entry.js +4 -0
  888. package/dist/ionic/p-c18ffa8b.entry.js +4 -0
  889. package/dist/ionic/p-c1e7dbd4.system.entry.js +4 -0
  890. package/dist/ionic/{p-89b61afc.js → p-c2069a04.js} +1 -1
  891. package/dist/ionic/p-c248c88d.system.js +4 -0
  892. package/dist/ionic/p-c37bd983.entry.js +4 -0
  893. package/dist/ionic/p-c47e7149.system.entry.js +4 -0
  894. package/dist/ionic/p-c4ef6f8b.js +4 -0
  895. package/dist/ionic/p-c6cb5873.entry.js +4 -0
  896. package/dist/ionic/p-c847b24b.system.entry.js +4 -0
  897. package/dist/ionic/p-c9481069.entry.js +4 -0
  898. package/dist/ionic/p-ccb71d99.entry.js +4 -0
  899. package/dist/ionic/p-ccbf31df.entry.js +4 -0
  900. package/dist/ionic/p-cf466c60.entry.js +4 -0
  901. package/dist/ionic/p-d2314315.system.entry.js +4 -0
  902. package/dist/ionic/{p-f11a9436.system.js → p-d2536fe8.system.js} +1 -1
  903. package/dist/ionic/{p-3a30f31b.system.entry.js → p-d5a528dd.system.entry.js} +1 -1
  904. package/dist/ionic/p-d94f6cf2.system.entry.js +4 -0
  905. package/dist/ionic/p-da3f8286.system.entry.js +4 -0
  906. package/dist/ionic/p-da7bd63e.system.entry.js +4 -0
  907. package/dist/ionic/p-db5e6e19.system.js +4 -0
  908. package/dist/ionic/p-db8ffacb.system.js +4 -0
  909. package/dist/ionic/p-dc29c440.js +4 -0
  910. package/dist/ionic/p-de28526a.system.js +4 -0
  911. package/dist/ionic/p-dfb63dc2.system.entry.js +4 -0
  912. package/dist/ionic/p-e09bb245.system.entry.js +4 -0
  913. package/dist/ionic/p-e0ca79b3.entry.js +4 -0
  914. package/dist/ionic/p-e2772e25.system.entry.js +4 -0
  915. package/dist/ionic/p-e3b70846.system.js +4 -0
  916. package/dist/ionic/p-e45a947d.system.js +4 -0
  917. package/dist/ionic/p-e58a67f5.entry.js +4 -0
  918. package/dist/ionic/p-e637969f.entry.js +4 -0
  919. package/dist/ionic/p-e6ae836b.system.js +4 -0
  920. package/dist/ionic/p-e92a4b0d.system.entry.js +4 -0
  921. package/dist/ionic/{p-1966a13c.system.js → p-efad6882.system.js} +1 -1
  922. package/dist/ionic/p-f10dba92.entry.js +4 -0
  923. package/dist/ionic/p-f233f1e0.system.js +4 -0
  924. package/dist/ionic/p-f3d28b8f.js +4 -0
  925. package/dist/ionic/p-f3deab52.system.entry.js +4 -0
  926. package/dist/ionic/p-f6a03670.entry.js +4 -0
  927. package/dist/ionic/{p-b6d324f0.js → p-faf202df.js} +1 -1
  928. package/dist/ionic/p-fb3ce1f1.entry.js +4 -0
  929. package/dist/ionic/p-fbc7052d.system.entry.js +4 -0
  930. package/dist/ionic/p-fccabaf9.entry.js +4 -0
  931. package/dist/ionic/p-fec23a6f.entry.js +4 -0
  932. package/dist/ionic/p-ffea25fc.system.entry.js +4 -0
  933. package/dist/types/components/accordion/accordion.d.ts +5 -3
  934. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  935. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  936. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  937. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  938. package/dist/types/components/alert/alert.d.ts +3 -2
  939. package/dist/types/components/app/app.d.ts +6 -2
  940. package/dist/types/components/avatar/avatar.d.ts +32 -0
  941. package/dist/types/components/back-button/back-button.d.ts +2 -1
  942. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  943. package/dist/types/components/badge/badge.d.ts +37 -1
  944. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  945. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  946. package/dist/types/components/button/button.d.ts +15 -4
  947. package/dist/types/components/buttons/buttons.d.ts +5 -1
  948. package/dist/types/components/card/card.d.ts +8 -1
  949. package/dist/types/components/card-content/card-content.d.ts +2 -1
  950. package/dist/types/components/card-header/card-header.d.ts +3 -2
  951. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  952. package/dist/types/components/card-title/card-title.d.ts +2 -1
  953. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  954. package/dist/types/components/chip/chip.d.ts +26 -1
  955. package/dist/types/components/col/col.d.ts +4 -0
  956. package/dist/types/components/content/content.d.ts +3 -0
  957. package/dist/types/components/datetime/datetime.d.ts +26 -1
  958. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  959. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  960. package/dist/types/components/divider/divider.d.ts +20 -0
  961. package/dist/types/components/fab/fab.d.ts +4 -0
  962. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  963. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  964. package/dist/types/components/footer/footer.d.ts +4 -3
  965. package/dist/types/components/grid/grid.d.ts +4 -0
  966. package/dist/types/components/header/header.d.ts +9 -3
  967. package/dist/types/components/img/img.d.ts +3 -0
  968. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  969. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  970. package/dist/types/components/input/input.d.ts +31 -5
  971. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  972. package/dist/types/components/item/item.d.ts +11 -4
  973. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  974. package/dist/types/components/item-group/item-group.d.ts +4 -0
  975. package/dist/types/components/item-option/item-option.d.ts +18 -1
  976. package/dist/types/components/item-options/item-options.d.ts +4 -0
  977. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  978. package/dist/types/components/label/label.d.ts +2 -1
  979. package/dist/types/components/list/list.d.ts +15 -1
  980. package/dist/types/components/list-header/list-header.d.ts +2 -1
  981. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  982. package/dist/types/components/loading/loading.d.ts +3 -2
  983. package/dist/types/components/menu/menu.d.ts +3 -0
  984. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  985. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  986. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  987. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  988. package/dist/types/components/modal/modal.d.ts +11 -1
  989. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  990. package/dist/types/components/nav/nav.d.ts +5 -1
  991. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  992. package/dist/types/components/note/note.d.ts +2 -1
  993. package/dist/types/components/picker/picker.d.ts +2 -1
  994. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  995. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  996. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  997. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  998. package/dist/types/components/popover/popover.d.ts +6 -5
  999. package/dist/types/components/progress-bar/progress-bar.d.ts +10 -1
  1000. package/dist/types/components/radio/radio.d.ts +2 -1
  1001. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  1002. package/dist/types/components/range/range.d.ts +2 -1
  1003. package/dist/types/components/refresher/refresher.d.ts +2 -1
  1004. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  1005. package/dist/types/components/reorder/reorder.d.ts +9 -0
  1006. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  1007. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  1008. package/dist/types/components/route/route.d.ts +4 -0
  1009. package/dist/types/components/router/router.d.ts +4 -0
  1010. package/dist/types/components/router-link/router-link.d.ts +4 -0
  1011. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  1012. package/dist/types/components/row/row.d.ts +4 -0
  1013. package/dist/types/components/searchbar/searchbar.d.ts +51 -9
  1014. package/dist/types/components/segment/segment.d.ts +2 -1
  1015. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  1016. package/dist/types/components/select/select.d.ts +41 -13
  1017. package/dist/types/components/select-option/select-option.d.ts +4 -0
  1018. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  1019. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  1020. package/dist/types/components/spinner/spinner.d.ts +15 -0
  1021. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  1022. package/dist/types/components/tab/tab.d.ts +4 -0
  1023. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  1024. package/dist/types/components/tab-button/tab-button.d.ts +11 -1
  1025. package/dist/types/components/tabs/tabs.d.ts +3 -0
  1026. package/dist/types/components/text/text.d.ts +2 -1
  1027. package/dist/types/components/textarea/textarea.d.ts +17 -4
  1028. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  1029. package/dist/types/components/title/title.d.ts +4 -0
  1030. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  1031. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  1032. package/dist/types/components/toast/toast.d.ts +19 -2
  1033. package/dist/types/components/toggle/toggle.d.ts +17 -1
  1034. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  1035. package/dist/types/components.d.ts +1488 -186
  1036. package/dist/types/global/ionic-global.d.ts +27 -2
  1037. package/dist/types/interface.d.ts +3 -0
  1038. package/dist/types/utils/config.d.ts +106 -2
  1039. package/dist/types/utils/focus-visible.d.ts +13 -0
  1040. package/dist/types/utils/helpers.d.ts +11 -0
  1041. package/dist/types/utils/logging/index.d.ts +1 -1
  1042. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1043. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1044. package/hydrate/index.js +2639 -937
  1045. package/hydrate/index.mjs +2639 -937
  1046. package/package.json +9 -4
  1047. package/components/hardware-back-button.js +0 -115
  1048. package/components/index8.js +0 -128
  1049. package/dist/cjs/hardware-back-button-3d2b1004.js +0 -121
  1050. package/dist/cjs/index-c8d52405.js +0 -10
  1051. package/dist/cjs/ionic-global-6dea5a96.js +0 -152
  1052. package/dist/esm/hardware-back-button-a7eb8233.js +0 -115
  1053. package/dist/esm/index-a5d50daf.js +0 -7
  1054. package/dist/esm/index-be190feb.js +0 -168
  1055. package/dist/esm/ionic-global-b26f573e.js +0 -147
  1056. package/dist/esm-es5/animation-8b25e105.js +0 -4
  1057. package/dist/esm-es5/app-globals-dbdbb3df.js +0 -4
  1058. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1059. package/dist/esm-es5/config-9898ed97.js +0 -4
  1060. package/dist/esm-es5/data-0d7ea6eb.js +0 -4
  1061. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1062. package/dist/esm-es5/framework-delegate-56b467ad.js +0 -4
  1063. package/dist/esm-es5/hardware-back-button-a7eb8233.js +0 -4
  1064. package/dist/esm-es5/helpers-d94bc8ad.js +0 -4
  1065. package/dist/esm-es5/index-18f31305.js +0 -4
  1066. package/dist/esm-es5/index-68c0d151.js +0 -4
  1067. package/dist/esm-es5/index-9a17db3d.js +0 -4
  1068. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1069. package/dist/esm-es5/index-be190feb.js +0 -4
  1070. package/dist/esm-es5/index-cfd9c1f2.js +0 -5
  1071. package/dist/esm-es5/input-shims-279903e2.js +0 -4
  1072. package/dist/esm-es5/input.utils-40504d6d.js +0 -4
  1073. package/dist/esm-es5/ionic-global-b26f573e.js +0 -4
  1074. package/dist/esm-es5/ios.transition-4047cb68.js +0 -4
  1075. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1076. package/dist/esm-es5/md.transition-30ce8d1b.js +0 -4
  1077. package/dist/esm-es5/notch-controller-1a1f7183.js +0 -4
  1078. package/dist/esm-es5/overlays-d99dcb0a.js +0 -4
  1079. package/dist/esm-es5/status-tap-42a8af65.js +0 -4
  1080. package/dist/esm-es5/swipe-back-0184f6b3.js +0 -4
  1081. package/dist/ionic/p-00023f5a.system.js +0 -4
  1082. package/dist/ionic/p-019e30a3.system.entry.js +0 -4
  1083. package/dist/ionic/p-03480b95.system.entry.js +0 -4
  1084. package/dist/ionic/p-08cef0b1.entry.js +0 -4
  1085. package/dist/ionic/p-0f5e6225.js +0 -4
  1086. package/dist/ionic/p-105b2e8b.entry.js +0 -4
  1087. package/dist/ionic/p-10a1bddc.js +0 -4
  1088. package/dist/ionic/p-117d0013.system.entry.js +0 -4
  1089. package/dist/ionic/p-12193821.system.js +0 -4
  1090. package/dist/ionic/p-12830298.system.entry.js +0 -4
  1091. package/dist/ionic/p-12914457.entry.js +0 -4
  1092. package/dist/ionic/p-14154301.system.entry.js +0 -4
  1093. package/dist/ionic/p-14bdb5aa.entry.js +0 -4
  1094. package/dist/ionic/p-1706b406.system.entry.js +0 -4
  1095. package/dist/ionic/p-171ca87d.system.js +0 -4
  1096. package/dist/ionic/p-17e21141.js +0 -4
  1097. package/dist/ionic/p-19494658.system.entry.js +0 -4
  1098. package/dist/ionic/p-1974d5b2.system.js +0 -4
  1099. package/dist/ionic/p-1a81ac09.system.js +0 -4
  1100. package/dist/ionic/p-1b9c59ab.js +0 -4
  1101. package/dist/ionic/p-1cb02e44.entry.js +0 -4
  1102. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1103. package/dist/ionic/p-1e4371bd.js +0 -4
  1104. package/dist/ionic/p-21891ead.js +0 -4
  1105. package/dist/ionic/p-2233344a.system.js +0 -4
  1106. package/dist/ionic/p-228e2522.entry.js +0 -4
  1107. package/dist/ionic/p-2469240b.entry.js +0 -4
  1108. package/dist/ionic/p-24a6c8a3.system.entry.js +0 -4
  1109. package/dist/ionic/p-257fb777.entry.js +0 -4
  1110. package/dist/ionic/p-25b10f81.js +0 -4
  1111. package/dist/ionic/p-2b7827c7.js +0 -4
  1112. package/dist/ionic/p-2bb55ebc.js +0 -4
  1113. package/dist/ionic/p-2bff0e69.system.entry.js +0 -4
  1114. package/dist/ionic/p-31dc303d.entry.js +0 -4
  1115. package/dist/ionic/p-33503ae0.system.entry.js +0 -4
  1116. package/dist/ionic/p-3535d6b5.entry.js +0 -4
  1117. package/dist/ionic/p-35cdfd77.system.entry.js +0 -4
  1118. package/dist/ionic/p-393ffcc2.entry.js +0 -4
  1119. package/dist/ionic/p-39fa7dd1.system.entry.js +0 -4
  1120. package/dist/ionic/p-42f08b26.system.entry.js +0 -4
  1121. package/dist/ionic/p-481e0885.entry.js +0 -4
  1122. package/dist/ionic/p-4a5be299.system.entry.js +0 -4
  1123. package/dist/ionic/p-4c667fce.js +0 -4
  1124. package/dist/ionic/p-4cf4172e.entry.js +0 -4
  1125. package/dist/ionic/p-4da92dac.entry.js +0 -4
  1126. package/dist/ionic/p-4ec0e961.system.entry.js +0 -4
  1127. package/dist/ionic/p-4ed5db19.system.js +0 -4
  1128. package/dist/ionic/p-4f86aa6d.entry.js +0 -4
  1129. package/dist/ionic/p-50cb2e8b.system.entry.js +0 -4
  1130. package/dist/ionic/p-57957c0f.entry.js +0 -4
  1131. package/dist/ionic/p-57e55ecb.system.js +0 -4
  1132. package/dist/ionic/p-5b67b447.js +0 -4
  1133. package/dist/ionic/p-5c9feddc.system.entry.js +0 -4
  1134. package/dist/ionic/p-5edf78c5.system.entry.js +0 -4
  1135. package/dist/ionic/p-6201c4ba.entry.js +0 -4
  1136. package/dist/ionic/p-625248d0.system.js +0 -4
  1137. package/dist/ionic/p-663413be.system.js +0 -4
  1138. package/dist/ionic/p-6636a436.js +0 -4
  1139. package/dist/ionic/p-66df5468.system.entry.js +0 -4
  1140. package/dist/ionic/p-67077d48.entry.js +0 -4
  1141. package/dist/ionic/p-6835ebdd.system.entry.js +0 -4
  1142. package/dist/ionic/p-6a03fc0f.entry.js +0 -4
  1143. package/dist/ionic/p-6b8530f5.system.entry.js +0 -4
  1144. package/dist/ionic/p-6c474e87.entry.js +0 -4
  1145. package/dist/ionic/p-6dd86ff5.system.entry.js +0 -4
  1146. package/dist/ionic/p-6ec0c94a.entry.js +0 -4
  1147. package/dist/ionic/p-6f832afe.system.entry.js +0 -4
  1148. package/dist/ionic/p-70044cb8.entry.js +0 -4
  1149. package/dist/ionic/p-712c0131.entry.js +0 -4
  1150. package/dist/ionic/p-721f43f9.entry.js +0 -4
  1151. package/dist/ionic/p-72b3050b.system.entry.js +0 -4
  1152. package/dist/ionic/p-7445a2e5.system.js +0 -4
  1153. package/dist/ionic/p-7611ede3.system.entry.js +0 -4
  1154. package/dist/ionic/p-781e2dbb.system.js +0 -4
  1155. package/dist/ionic/p-792919fd.system.js +0 -4
  1156. package/dist/ionic/p-7b30edcc.js +0 -4
  1157. package/dist/ionic/p-7b8c12c3.entry.js +0 -4
  1158. package/dist/ionic/p-7c5c7ae1.system.entry.js +0 -4
  1159. package/dist/ionic/p-7e3e6ed2.entry.js +0 -4
  1160. package/dist/ionic/p-7ffedf77.system.entry.js +0 -4
  1161. package/dist/ionic/p-809483ac.js +0 -4
  1162. package/dist/ionic/p-81904a80.entry.js +0 -4
  1163. package/dist/ionic/p-8450f761.entry.js +0 -4
  1164. package/dist/ionic/p-8460d95a.entry.js +0 -4
  1165. package/dist/ionic/p-85b01465.js +0 -4
  1166. package/dist/ionic/p-865fe95c.entry.js +0 -4
  1167. package/dist/ionic/p-8674af94.entry.js +0 -4
  1168. package/dist/ionic/p-890a4ee2.entry.js +0 -4
  1169. package/dist/ionic/p-891553d8.entry.js +0 -4
  1170. package/dist/ionic/p-8ab2f7a4.system.entry.js +0 -4
  1171. package/dist/ionic/p-8b050e84.system.js +0 -4
  1172. package/dist/ionic/p-8dacf4e2.entry.js +0 -4
  1173. package/dist/ionic/p-94551927.js +0 -4
  1174. package/dist/ionic/p-95001a19.js +0 -4
  1175. package/dist/ionic/p-958fd7e9.system.entry.js +0 -4
  1176. package/dist/ionic/p-98fd942b.system.entry.js +0 -4
  1177. package/dist/ionic/p-a0fd2fe5.system.entry.js +0 -4
  1178. package/dist/ionic/p-a5dbe0ff.system.entry.js +0 -4
  1179. package/dist/ionic/p-a78d1c24.entry.js +0 -4
  1180. package/dist/ionic/p-a835aca8.entry.js +0 -4
  1181. package/dist/ionic/p-a83e3290.system.js +0 -4
  1182. package/dist/ionic/p-ab7337e1.entry.js +0 -4
  1183. package/dist/ionic/p-abe101da.system.js +0 -4
  1184. package/dist/ionic/p-aded71ec.js +0 -4
  1185. package/dist/ionic/p-ae039072.entry.js +0 -4
  1186. package/dist/ionic/p-aebfab05.system.entry.js +0 -4
  1187. package/dist/ionic/p-b22ab9f4.js +0 -4
  1188. package/dist/ionic/p-b2e7eda0.system.entry.js +0 -4
  1189. package/dist/ionic/p-b445ff65.entry.js +0 -4
  1190. package/dist/ionic/p-b4d17da0.system.entry.js +0 -4
  1191. package/dist/ionic/p-b5432d15.entry.js +0 -4
  1192. package/dist/ionic/p-b7b1d91a.js +0 -4
  1193. package/dist/ionic/p-b8050298.system.entry.js +0 -4
  1194. package/dist/ionic/p-b9c793d4.entry.js +0 -4
  1195. package/dist/ionic/p-bce753bd.system.entry.js +0 -4
  1196. package/dist/ionic/p-bf184319.system.entry.js +0 -4
  1197. package/dist/ionic/p-c16443a8.system.js +0 -4
  1198. package/dist/ionic/p-c1b7d311.system.entry.js +0 -4
  1199. package/dist/ionic/p-c2160d8c.entry.js +0 -4
  1200. package/dist/ionic/p-c468af8a.system.js +0 -4
  1201. package/dist/ionic/p-c5b77054.entry.js +0 -4
  1202. package/dist/ionic/p-c5bfa3e9.entry.js +0 -4
  1203. package/dist/ionic/p-c61cc894.js +0 -4
  1204. package/dist/ionic/p-cec902a0.system.entry.js +0 -4
  1205. package/dist/ionic/p-d16fab3f.entry.js +0 -4
  1206. package/dist/ionic/p-d382f09c.system.js +0 -4
  1207. package/dist/ionic/p-d47265c8.js +0 -4
  1208. package/dist/ionic/p-d91f942c.system.entry.js +0 -4
  1209. package/dist/ionic/p-d984c1ab.system.entry.js +0 -4
  1210. package/dist/ionic/p-da6247e5.entry.js +0 -4
  1211. package/dist/ionic/p-dabe3bd4.js +0 -4
  1212. package/dist/ionic/p-df069a0d.entry.js +0 -4
  1213. package/dist/ionic/p-e727e32d.system.entry.js +0 -4
  1214. package/dist/ionic/p-e8245753.entry.js +0 -4
  1215. package/dist/ionic/p-e887b6a9.system.js +0 -4
  1216. package/dist/ionic/p-ed005d9c.js +0 -4
  1217. package/dist/ionic/p-edd2e3c7.entry.js +0 -4
  1218. package/dist/ionic/p-f08a92cc.js +0 -4
  1219. package/dist/ionic/p-f0c9f8e3.system.entry.js +0 -4
  1220. package/dist/ionic/p-f0ef39ab.entry.js +0 -4
  1221. package/dist/ionic/p-f22490a7.system.entry.js +0 -4
  1222. package/dist/ionic/p-f6bb9be7.system.entry.js +0 -4
  1223. package/dist/ionic/p-f725bf9e.system.js +0 -4
  1224. package/dist/ionic/p-f9a87db2.system.entry.js +0 -4
  1225. package/dist/ionic/p-fa3f4b96.system.js +0 -4
  1226. package/dist/ionic/p-fe063952.system.entry.js +0 -4
  1227. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -1,19 +1,21 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ import caretDownRegular from "@phosphor-icons/core/assets/regular/caret-down.svg";
4
5
  import { Host, h, forceUpdate } from "@stencil/core";
5
6
  import { compareOptions, createNotchController, isOptionSelected } from "../../utils/forms/index";
6
7
  import { focusVisibleElement, renderHiddenInput, inheritAttributes } from "../../utils/helpers";
7
- import { printIonWarning } from "../../utils/logging/index";
8
8
  import { actionSheetController, alertController, popoverController, modalController } from "../../utils/overlays";
9
9
  import { isRTL } from "../../utils/rtl/index";
10
10
  import { createColorClasses, hostContext } from "../../utils/theme";
11
11
  import { watchForOptions } from "../../utils/watch-options";
12
12
  import { caretDownSharp, chevronExpand } from "ionicons/icons";
13
- import { getIonMode } from "../../global/ionic-global";
13
+ import { config } from "../../global/config";
14
+ import { getIonTheme } from "../../global/ionic-global";
14
15
  // TODO(FW-2832): types
15
16
  /**
16
- * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
17
+ * @virtualProp {"ios" | "md"} mode - The mode determines the platform behaviors of the component.
18
+ * @virtualProp {"ios" | "md" | "ionic"} theme - The theme determines the visual appearance of the component.
17
19
  *
18
20
  * @slot label - The label text to associate with the select. Use the `labelPlacement` property to control where the label is placed relative to the select. Use this if you need to render a label with custom HTML.
19
21
  * @slot start - Content to display at the leading edge of the select.
@@ -97,9 +99,10 @@ export class Select {
97
99
  this.selectedText = undefined;
98
100
  this.toggleIcon = undefined;
99
101
  this.expandedIcon = undefined;
102
+ this.required = false;
100
103
  this.shape = undefined;
104
+ this.size = undefined;
101
105
  this.value = undefined;
102
- this.required = false;
103
106
  }
104
107
  styleChanged() {
105
108
  this.emitStyle();
@@ -244,11 +247,11 @@ export class Select {
244
247
  createOverlay(ev) {
245
248
  let selectInterface = this.interface;
246
249
  if (selectInterface === 'action-sheet' && this.multiple) {
247
- printIonWarning(`[ion-select] - Interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
250
+ console.warn(`Select interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
248
251
  selectInterface = 'alert';
249
252
  }
250
253
  if (selectInterface === 'popover' && !ev) {
251
- printIonWarning(`[ion-select] - Interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
254
+ console.warn(`Select interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
252
255
  selectInterface = 'alert';
253
256
  }
254
257
  if (selectInterface === 'action-sheet') {
@@ -364,8 +367,8 @@ export class Select {
364
367
  async openPopover(ev) {
365
368
  const { fill, labelPlacement } = this;
366
369
  const interfaceOptions = this.interfaceOptions;
367
- const mode = getIonMode(this);
368
- const showBackdrop = mode === 'md' ? false : true;
370
+ const theme = getIonTheme(this);
371
+ const showBackdrop = theme === 'md' ? false : true;
369
372
  const multiple = this.multiple;
370
373
  const value = this.value;
371
374
  let event = ev;
@@ -376,7 +379,7 @@ export class Select {
376
379
  * when using a fill in MD mode or if the
377
380
  * label is floating/stacked.
378
381
  */
379
- if (hasFloatingOrStackedLabel || (mode === 'md' && fill !== undefined)) {
382
+ if (hasFloatingOrStackedLabel || (theme === 'md' && fill !== undefined)) {
380
383
  size = 'cover';
381
384
  /**
382
385
  * Otherwise the popover
@@ -389,7 +392,7 @@ export class Select {
389
392
  ionShadowTarget: this.nativeWrapperEl,
390
393
  } });
391
394
  }
392
- const popoverOpts = Object.assign(Object.assign({ mode,
395
+ const popoverOpts = Object.assign(Object.assign({ theme,
393
396
  event, alignment: 'center', size,
394
397
  showBackdrop }, interfaceOptions), { component: 'ion-select-popover', cssClass: ['select-popover', interfaceOptions.cssClass], componentProps: {
395
398
  header: interfaceOptions.header,
@@ -414,9 +417,9 @@ export class Select {
414
417
  return popoverController.create(popoverOpts);
415
418
  }
416
419
  async openActionSheet() {
417
- const mode = getIonMode(this);
420
+ const theme = getIonTheme(this);
418
421
  const interfaceOptions = this.interfaceOptions;
419
- const actionSheetOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { buttons: this.createActionSheetButtons(this.childOpts, this.value), cssClass: ['select-action-sheet', interfaceOptions.cssClass] });
422
+ const actionSheetOpts = Object.assign(Object.assign({ theme }, interfaceOptions), { buttons: this.createActionSheetButtons(this.childOpts, this.value), cssClass: ['select-action-sheet', interfaceOptions.cssClass] });
420
423
  /**
421
424
  * Workaround for Stencil to autodefine
422
425
  * ion-action-sheet when
@@ -433,8 +436,8 @@ export class Select {
433
436
  async openAlert() {
434
437
  const interfaceOptions = this.interfaceOptions;
435
438
  const inputType = this.multiple ? 'checkbox' : 'radio';
436
- const mode = getIonMode(this);
437
- const alertOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { header: interfaceOptions.header ? interfaceOptions.header : this.labelText, inputs: this.createAlertInputs(this.childOpts, inputType, this.value), buttons: [
439
+ const theme = getIonTheme(this);
440
+ const alertOpts = Object.assign(Object.assign({ theme }, interfaceOptions), { header: interfaceOptions.header ? interfaceOptions.header : this.labelText, inputs: this.createAlertInputs(this.childOpts, inputType, this.value), buttons: [
438
441
  {
439
442
  text: this.cancelText,
440
443
  role: 'cancel',
@@ -468,8 +471,8 @@ export class Select {
468
471
  }
469
472
  openModal() {
470
473
  const { multiple, value, interfaceOptions } = this;
471
- const mode = getIonMode(this);
472
- const modalOpts = Object.assign(Object.assign({}, interfaceOptions), { mode, cssClass: ['select-modal', interfaceOptions.cssClass], component: 'ion-select-modal', componentProps: {
474
+ const theme = getIonTheme(this);
475
+ const modalOpts = Object.assign(Object.assign({}, interfaceOptions), { mode: theme, cssClass: ['select-modal', interfaceOptions.cssClass], component: 'ion-select-modal', componentProps: {
473
476
  header: interfaceOptions.header,
474
477
  multiple,
475
478
  value,
@@ -542,6 +545,18 @@ export class Select {
542
545
  };
543
546
  this.ionStyle.emit(style);
544
547
  }
548
+ getSize() {
549
+ const theme = getIonTheme(this);
550
+ const { size } = this;
551
+ // TODO(ROU-11370): Remove theme check when sizes are defined for all themes.
552
+ if (theme !== 'ionic') {
553
+ return undefined;
554
+ }
555
+ if (size === undefined) {
556
+ return 'medium';
557
+ }
558
+ return size;
559
+ }
545
560
  renderLabel() {
546
561
  const { label } = this;
547
562
  return (h("div", { class: {
@@ -574,8 +589,8 @@ export class Select {
574
589
  * when fill="outline".
575
590
  */
576
591
  renderLabelContainer() {
577
- const mode = getIonMode(this);
578
- const hasOutlineFill = mode === 'md' && this.fill === 'outline';
592
+ const theme = getIonTheme(this);
593
+ const hasOutlineFill = theme === 'md' && this.fill === 'outline';
579
594
  if (hasOutlineFill) {
580
595
  /**
581
596
  * The outline fill has a special outline
@@ -624,15 +639,10 @@ export class Select {
624
639
  * next to the select text.
625
640
  */
626
641
  renderSelectIcon() {
627
- const mode = getIonMode(this);
628
- const { isExpanded, toggleIcon, expandedIcon } = this;
629
- let icon;
630
- if (isExpanded && expandedIcon !== undefined) {
631
- icon = expandedIcon;
632
- }
633
- else {
634
- const defaultIcon = mode === 'ios' ? chevronExpand : caretDownSharp;
635
- icon = toggleIcon !== null && toggleIcon !== void 0 ? toggleIcon : defaultIcon;
642
+ const { isExpanded, selectExpandedIcon, selectCollapsedIcon } = this;
643
+ let icon = selectCollapsedIcon;
644
+ if (isExpanded) {
645
+ icon = selectExpandedIcon;
636
646
  }
637
647
  return h("ion-icon", { class: "select-icon", part: "icon", "aria-hidden": "true", icon: icon });
638
648
  }
@@ -667,6 +677,63 @@ export class Select {
667
677
  const { disabled, inputId, isExpanded, required } = this;
668
678
  return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
669
679
  }
680
+ getShape() {
681
+ const theme = getIonTheme(this);
682
+ const { shape } = this;
683
+ // TODO(ROU-11366): Remove theme check when shapes are defined for all themes.
684
+ if (theme === 'ionic' && shape === undefined) {
685
+ return 'round';
686
+ }
687
+ return shape;
688
+ }
689
+ /**
690
+ * Get the icon to use for the expand icon.
691
+ * If an icon is set on the component, use that.
692
+ * Otherwise, use the icon set in the config.
693
+ * If no icon is set in the config, use the default icon.
694
+ */
695
+ get selectExpandedIcon() {
696
+ // Return the expandedIcon or toggleIcon if either is explicitly set
697
+ if (this.expandedIcon != null) {
698
+ return this.expandedIcon;
699
+ }
700
+ else if (this.toggleIcon != null) {
701
+ return this.toggleIcon;
702
+ }
703
+ // Determine the theme and map to default icons
704
+ const theme = getIonTheme(this);
705
+ const defaultIcons = {
706
+ ios: chevronExpand,
707
+ ionic: caretDownRegular,
708
+ md: caretDownSharp,
709
+ };
710
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
711
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
712
+ // Return the configured select expanded icon or the default icon
713
+ return config.get('selectExpandedIcon', defaultIcon);
714
+ }
715
+ /**
716
+ * Get the icon to use for the collapsed icon.
717
+ * If an icon is set on the component, use that.
718
+ * Otherwise, use the icon set in the config.
719
+ * If no icon is set in the config, use the default icon.
720
+ */
721
+ get selectCollapsedIcon() {
722
+ // Return the toggleIcon if it is explicitly set
723
+ if (this.toggleIcon) {
724
+ return this.toggleIcon;
725
+ }
726
+ // Determine the theme and map to default icons
727
+ const theme = getIonTheme(this);
728
+ const defaultIcons = {
729
+ ios: chevronExpand,
730
+ ionic: caretDownRegular,
731
+ md: caretDownSharp,
732
+ };
733
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
734
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
735
+ return config.get('selectCollapsedIcon', defaultIcon);
736
+ }
670
737
  getHintTextID() {
671
738
  const { el, helperText, errorText, helperTextId, errorTextId } = this;
672
739
  if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
@@ -704,13 +771,17 @@ export class Select {
704
771
  return h("div", { class: "select-bottom" }, this.renderHintText());
705
772
  }
706
773
  render() {
707
- const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
708
- const mode = getIonMode(this);
774
+ const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, name, value } = this;
775
+ const theme = getIonTheme(this);
776
+ const shape = this.getShape();
709
777
  const hasFloatingOrStackedLabel = labelPlacement === 'floating' || labelPlacement === 'stacked';
778
+ const shouldRenderOuterIcon = theme !== 'ionic' && hasFloatingOrStackedLabel;
779
+ const shouldRenderInnerIcon = theme === 'ionic' || !hasFloatingOrStackedLabel;
710
780
  const justifyEnabled = !hasFloatingOrStackedLabel && justify !== undefined;
711
781
  const rtl = isRTL(el) ? 'rtl' : 'ltr';
712
782
  const inItem = hostContext('ion-item', this.el);
713
- const shouldRenderHighlight = mode === 'md' && fill !== 'outline' && !inItem;
783
+ const size = this.getSize();
784
+ const shouldRenderHighlight = theme === 'md' && fill !== 'outline' && !inItem;
714
785
  const hasValue = this.hasValue();
715
786
  const hasStartEndSlots = el.querySelector('[slot="start"], [slot="end"]') !== null;
716
787
  renderHiddenInput(true, el, name, parseValue(value), disabled);
@@ -732,8 +803,8 @@ export class Select {
732
803
  * TODO(FW-5592): Remove hasStartEndSlots condition
733
804
  */
734
805
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
735
- return (h(Host, { key: '2314f2d2d02827e6728892311cd566dd91840956', onClick: this.onClick, class: createColorClasses(this.color, {
736
- [mode]: true,
806
+ return (h(Host, { key: '56bf013506dc6b882b827ae5d848292cdebf92c8', onClick: this.onClick, class: createColorClasses(this.color, {
807
+ [theme]: true,
737
808
  'in-item': inItem,
738
809
  'in-item-color': hostContext('ion-item.ion-color', el),
739
810
  'select-disabled': disabled,
@@ -748,20 +819,33 @@ export class Select {
748
819
  [`select-justify-${justify}`]: justifyEnabled,
749
820
  [`select-shape-${shape}`]: shape !== undefined,
750
821
  [`select-label-placement-${labelPlacement}`]: true,
751
- }) }, h("label", { key: '533d0fa45a3f5a2836ae92f669901d99a54120c0', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: 'cf6bdd44f012b8ff5cbd04b23c839db708b1ce8c', class: "select-wrapper-inner" }, h("slot", { key: '68a58f8469acbfdd84c326034f9da3e2aba9b178', name: "start" }), h("div", { key: '216f4f68c1a799e61cef7c3291e7307dec005ca9', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '9de291427f968aa6557b926fba3d6cac9915d20c', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: 'e41efa0a5944a0972f87822cb9005087bedab846', class: "select-highlight" })), this.renderBottomContent()));
822
+ [`select-size-${size}`]: size !== undefined,
823
+ }) }, h("label", { key: 'cfb256dfe432ac23df006514e75142cbfb595620', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '7bba5aed0735f4237e4f4b8d08859cb9cfac7f9f', class: "select-wrapper-inner" },
824
+ /**
825
+ * For the ionic theme, we render the outline container here
826
+ * instead of higher up, so it can be positioned relative to
827
+ * the native wrapper instead of the <label> element or the
828
+ * entire component. This allows the label text to be positioned
829
+ * above the outline, while staying within the bounds of the
830
+ * <label> element, ensuring that clicking the label text
831
+ * focuses the select.
832
+ */
833
+ theme === 'ionic' && fill === 'outline' && h("div", { key: '3c5fa6ca8b44b8c03a5d9a574397245a66fc5eb2', class: "select-outline" }), h("slot", { key: 'c5625dd59673573f34654a173a97426375e9d9e4', name: "start" }), h("div", { key: '742a45ef81c5dd03484e2f2db872a78ab5ad3115', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: 'eb81bdc78e0d631b646c87c8fcd3d43958976bb3', name: "end" }), shouldRenderInnerIcon && this.renderSelectIcon()), shouldRenderOuterIcon && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: '9bc84d872a6b4144c3fe0b1013ac7edfe3381c41', class: "select-highlight" })), this.renderBottomContent()));
752
834
  }
753
835
  static get is() { return "ion-select"; }
754
836
  static get encapsulation() { return "shadow"; }
755
837
  static get originalStyleUrls() {
756
838
  return {
757
839
  "ios": ["select.ios.scss"],
758
- "md": ["select.md.scss"]
840
+ "md": ["select.md.scss"],
841
+ "ionic": ["select.ionic.scss"]
759
842
  };
760
843
  }
761
844
  static get styleUrls() {
762
845
  return {
763
846
  "ios": ["select.ios.css"],
764
- "md": ["select.md.css"]
847
+ "md": ["select.md.css"],
848
+ "ionic": ["select.ionic.css"]
765
849
  };
766
850
  }
767
851
  static get properties() {
@@ -860,7 +944,7 @@ export class Select {
860
944
  "optional": true,
861
945
  "docs": {
862
946
  "tags": [],
863
- "text": "The fill for the item. If `\"solid\"` the item will have a background. If\n`\"outline\"` the item will be transparent with a border. Only available in `md` mode."
947
+ "text": "The fill for the item. If `\"solid\"` the item will have a background. If\n`\"outline\"` the item will be transparent with a border. Only available in the `\"md\"` theme."
864
948
  },
865
949
  "attribute": "fill",
866
950
  "reflect": false
@@ -1093,7 +1177,7 @@ export class Select {
1093
1177
  "optional": true,
1094
1178
  "docs": {
1095
1179
  "tags": [],
1096
- "text": "The toggle icon to use. Defaults to `chevronExpand` for `ios` mode,\nor `caretDownSharp` for `md` mode."
1180
+ "text": "The toggle icon to use. Defaults to `\"chevronExpand\"` for the `\"ios\"` theme,\nor `\"caretDownSharp\"` for the `\"md\"` and `\"ionic\"` themes."
1097
1181
  },
1098
1182
  "attribute": "toggle-icon",
1099
1183
  "reflect": false
@@ -1110,62 +1194,79 @@ export class Select {
1110
1194
  "optional": true,
1111
1195
  "docs": {
1112
1196
  "tags": [],
1113
- "text": "The toggle icon to show when the select is open. If defined, the icon\nrotation behavior in `md` mode will be disabled. If undefined, `toggleIcon`\nwill be used for when the select is both open and closed."
1197
+ "text": "The toggle icon to show when the select is open. If defined, the icon\nrotation behavior in `\"md\"` theme will be disabled. If undefined, `toggleIcon`\nwill be used for when the select is both open and closed."
1114
1198
  },
1115
1199
  "attribute": "expanded-icon",
1116
1200
  "reflect": false
1117
1201
  },
1202
+ "required": {
1203
+ "type": "boolean",
1204
+ "mutable": false,
1205
+ "complexType": {
1206
+ "original": "boolean",
1207
+ "resolved": "boolean",
1208
+ "references": {}
1209
+ },
1210
+ "required": false,
1211
+ "optional": false,
1212
+ "docs": {
1213
+ "tags": [],
1214
+ "text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
1215
+ },
1216
+ "attribute": "required",
1217
+ "reflect": false,
1218
+ "defaultValue": "false"
1219
+ },
1118
1220
  "shape": {
1119
1221
  "type": "string",
1120
1222
  "mutable": false,
1121
1223
  "complexType": {
1122
- "original": "'round'",
1123
- "resolved": "\"round\" | undefined",
1224
+ "original": "'soft' | 'round' | 'rectangular'",
1225
+ "resolved": "\"rectangular\" | \"round\" | \"soft\" | undefined",
1124
1226
  "references": {}
1125
1227
  },
1126
1228
  "required": false,
1127
1229
  "optional": true,
1128
1230
  "docs": {
1129
1231
  "tags": [],
1130
- "text": "The shape of the select. If \"round\" it will have an increased border radius."
1232
+ "text": "Set to `\"soft\"` for a select with slightly rounded corners,\n`\"round\"` for a select with fully rounded corners,\nor `\"rectangular\"` for a select without rounded corners.\n\nDefaults to `\"round\"` for the `\"ionic\"` theme, undefined for all other themes."
1131
1233
  },
1132
1234
  "attribute": "shape",
1133
1235
  "reflect": false
1134
1236
  },
1135
- "value": {
1136
- "type": "any",
1137
- "mutable": true,
1237
+ "size": {
1238
+ "type": "string",
1239
+ "mutable": false,
1138
1240
  "complexType": {
1139
- "original": "any | null",
1140
- "resolved": "any",
1241
+ "original": "'small' | 'medium' | 'large'",
1242
+ "resolved": "\"large\" | \"medium\" | \"small\" | undefined",
1141
1243
  "references": {}
1142
1244
  },
1143
1245
  "required": false,
1144
1246
  "optional": true,
1145
1247
  "docs": {
1146
1248
  "tags": [],
1147
- "text": "The value of the select."
1249
+ "text": "The size of the select. If \"large\" it will increase the height of the select, while\n\"small\" and \"medium\" provide progressively smaller heights.\n\nDefaults to `\"medium\"` for the ionic theme, and undefined for all other themes."
1148
1250
  },
1149
- "attribute": "value",
1251
+ "attribute": "size",
1150
1252
  "reflect": false
1151
1253
  },
1152
- "required": {
1153
- "type": "boolean",
1154
- "mutable": false,
1254
+ "value": {
1255
+ "type": "any",
1256
+ "mutable": true,
1155
1257
  "complexType": {
1156
- "original": "boolean",
1157
- "resolved": "boolean",
1258
+ "original": "any | null",
1259
+ "resolved": "any",
1158
1260
  "references": {}
1159
1261
  },
1160
1262
  "required": false,
1161
- "optional": false,
1263
+ "optional": true,
1162
1264
  "docs": {
1163
1265
  "tags": [],
1164
- "text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
1266
+ "text": "The value of the select."
1165
1267
  },
1166
- "attribute": "required",
1167
- "reflect": false,
1168
- "defaultValue": "false"
1268
+ "attribute": "value",
1269
+ "reflect": false
1169
1270
  }
1170
1271
  };
1171
1272
  }