@ionic/core 8.4.2-dev.11736797843.16cc5058 → 8.4.2-dev.11739377372.17be7c08

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 (1195) hide show
  1. package/components/action-sheet.js +29 -40
  2. package/components/alert.js +33 -46
  3. package/components/animation.js +1 -1
  4. package/components/backdrop.js +10 -15
  5. package/components/button.js +58 -36
  6. package/components/buttons.js +11 -19
  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 +39 -44
  12. package/components/config2.js +79 -0
  13. package/components/content.js +16 -34
  14. package/components/data.js +6 -6
  15. package/components/focus-visible.js +8 -1
  16. package/components/framework-delegate.js +3 -1
  17. package/components/header.js +26 -24
  18. package/components/helpers.js +4 -1
  19. package/components/index2.js +2 -2
  20. package/components/index4.js +8 -9
  21. package/components/index5.js +27 -3
  22. package/components/index6.js +114 -20
  23. package/components/index7.js +163 -27
  24. package/components/input-shims.js +2 -2
  25. package/components/input.utils.js +1 -2
  26. package/components/ion-accordion-group.js +27 -23
  27. package/components/ion-accordion.js +43 -44
  28. package/components/ion-app.js +9 -77
  29. package/components/ion-avatar.js +52 -3
  30. package/components/ion-back-button.js +36 -27
  31. package/components/ion-badge.js +45 -8
  32. package/components/ion-breadcrumb.js +58 -28
  33. package/components/ion-breadcrumbs.js +15 -17
  34. package/components/ion-card-content.js +11 -7
  35. package/components/ion-card-header.js +10 -10
  36. package/components/ion-card-subtitle.js +10 -5
  37. package/components/ion-card-title.js +10 -5
  38. package/components/ion-card.js +23 -22
  39. package/components/ion-chip.js +46 -14
  40. package/components/ion-col.js +29 -5
  41. package/components/ion-datetime-button.js +17 -18
  42. package/components/ion-datetime.js +141 -138
  43. package/components/ion-fab-button.js +46 -42
  44. package/components/ion-fab-list.js +5 -11
  45. package/components/ion-fab.js +8 -15
  46. package/components/ion-footer.js +21 -22
  47. package/components/ion-grid.js +5 -8
  48. package/components/ion-img.js +9 -2
  49. package/components/ion-infinite-scroll-content.js +15 -8
  50. package/components/ion-infinite-scroll.js +9 -31
  51. package/components/ion-input-password-toggle.js +57 -18
  52. package/components/ion-input.js +152 -84
  53. package/components/ion-item-divider.js +10 -12
  54. package/components/ion-item-group.js +9 -5
  55. package/components/ion-item-option.js +36 -20
  56. package/components/ion-item-options.js +9 -9
  57. package/components/ion-item-sliding.js +5 -8
  58. package/components/ion-loading.js +25 -39
  59. package/components/ion-menu-button.js +33 -22
  60. package/components/ion-menu-toggle.js +8 -13
  61. package/components/ion-menu.js +15 -29
  62. package/components/ion-nav-link.js +5 -5
  63. package/components/ion-nav.js +13 -9
  64. package/components/ion-note.js +10 -5
  65. package/components/ion-picker-legacy.js +24 -47
  66. package/components/ion-progress-bar.js +12 -22
  67. package/components/ion-range.js +32 -71
  68. package/components/ion-refresher-content.js +32 -9
  69. package/components/ion-refresher.js +11 -57
  70. package/components/ion-reorder-group.js +5 -8
  71. package/components/ion-reorder.js +31 -5
  72. package/components/ion-route-redirect.js +2 -0
  73. package/components/ion-route.js +4 -6
  74. package/components/ion-router-link.js +12 -11
  75. package/components/ion-router-outlet.js +7 -9
  76. package/components/ion-router.js +0 -18
  77. package/components/ion-row.js +5 -2
  78. package/components/ion-searchbar.js +116 -90
  79. package/components/ion-segment-button.js +64 -30
  80. package/components/ion-segment-content.js +1 -1
  81. package/components/ion-segment-view.js +7 -5
  82. package/components/ion-segment.js +18 -27
  83. package/components/ion-select-option.js +6 -5
  84. package/components/ion-select.js +138 -76
  85. package/components/ion-skeleton-text.js +6 -8
  86. package/components/ion-split-pane.js +13 -16
  87. package/components/ion-tab-bar.js +33 -13
  88. package/components/ion-tab-button.js +36 -15
  89. package/components/ion-tab.js +5 -3
  90. package/components/ion-tabs.js +4 -4
  91. package/components/ion-text.js +6 -5
  92. package/components/ion-textarea.js +76 -70
  93. package/components/ion-thumbnail.js +5 -2
  94. package/components/ion-toast.js +53 -59
  95. package/components/ion-toggle.js +87 -51
  96. package/components/ionic-global.js +374 -84
  97. package/components/ios.transition.js +1 -0
  98. package/components/item.js +49 -27
  99. package/components/keyboard-controller.js +4 -2
  100. package/components/label.js +11 -5
  101. package/components/list-header.js +11 -5
  102. package/components/list.js +30 -9
  103. package/components/list2.js +6 -0
  104. package/components/modal.js +76 -113
  105. package/components/notch-controller.js +1 -1
  106. package/components/overlays.js +4 -5
  107. package/components/picker-column-option.js +10 -21
  108. package/components/picker-column.js +13 -30
  109. package/components/picker-column2.js +5 -4
  110. package/components/picker.js +8 -4
  111. package/components/popover.js +39 -130
  112. package/components/radio-group.js +9 -11
  113. package/components/radio.js +21 -33
  114. package/components/ripple-effect.js +18 -17
  115. package/components/select-modal.js +7 -5
  116. package/components/select-popover.js +13 -5
  117. package/components/spinner.js +39 -12
  118. package/components/status-tap.js +1 -1
  119. package/components/title.js +13 -7
  120. package/components/toolbar.js +12 -7
  121. package/components/x.js +6 -0
  122. package/css/core.css +1 -1
  123. package/css/core.css.map +1 -1
  124. package/css/display.css +1 -1
  125. package/css/display.css.map +1 -1
  126. package/css/flex-utils.css +1 -1
  127. package/css/flex-utils.css.map +1 -1
  128. package/css/float-elements.css.map +1 -1
  129. package/css/global.bundle.css.map +1 -1
  130. package/css/ionic/bundle.ionic.css +1 -0
  131. package/css/ionic/bundle.ionic.css.map +1 -0
  132. package/css/ionic/core.ionic.css +1 -0
  133. package/css/ionic/core.ionic.css.map +1 -0
  134. package/css/ionic/global.bundle.ionic.css +1 -0
  135. package/css/ionic/global.bundle.ionic.css.map +1 -0
  136. package/css/ionic/ionic-swiper.ionic.css +1 -0
  137. package/css/ionic/ionic-swiper.ionic.css.map +1 -0
  138. package/css/ionic/link.ionic.css +1 -0
  139. package/css/ionic/link.ionic.css.map +1 -0
  140. package/css/ionic/structure.ionic.css +1 -0
  141. package/css/ionic/structure.ionic.css.map +1 -0
  142. package/css/ionic/typography.ionic.css +1 -0
  143. package/css/ionic/typography.ionic.css.map +1 -0
  144. package/css/ionic/utils.bundle.ionic.css +1 -0
  145. package/css/ionic/utils.bundle.ionic.css.map +1 -0
  146. package/css/ionic-swiper.css +1 -1
  147. package/css/ionic-swiper.css.map +1 -1
  148. package/css/ionic.bundle.css +1 -1
  149. package/css/ionic.bundle.css.map +1 -1
  150. package/css/normalize.css.map +1 -1
  151. package/css/padding.css.map +1 -1
  152. package/css/palettes/dark.always.css.map +1 -1
  153. package/css/palettes/dark.class.css.map +1 -1
  154. package/css/palettes/dark.system.css.map +1 -1
  155. package/css/palettes/high-contrast-dark.always.css.map +1 -1
  156. package/css/palettes/high-contrast-dark.class.css.map +1 -1
  157. package/css/palettes/high-contrast-dark.system.css.map +1 -1
  158. package/css/palettes/high-contrast.always.css.map +1 -1
  159. package/css/palettes/high-contrast.class.css.map +1 -1
  160. package/css/palettes/high-contrast.system.css.map +1 -1
  161. package/css/structure.css.map +1 -1
  162. package/css/text-alignment.css.map +1 -1
  163. package/css/text-transformation.css.map +1 -1
  164. package/css/typography.css.map +1 -1
  165. package/css/utils.bundle.css +1 -1
  166. package/css/utils.bundle.css.map +1 -1
  167. package/dist/cjs/{animation-b4fdf128.js → animation-58015a44.js} +2 -2
  168. package/dist/cjs/{app-globals-d2d85416.js → app-globals-d64148d3.js} +1 -1
  169. package/dist/cjs/{button-active-8d4c8099.js → button-active-ec1fd1d8.js} +2 -2
  170. package/dist/cjs/{capacitor-c04564bf.js → capacitor-454dd071.js} +3 -3
  171. package/dist/cjs/caret-down-3c215cff.js +8 -0
  172. package/dist/cjs/caret-left-2bb66970.js +8 -0
  173. package/dist/cjs/caret-right-88e03970.js +8 -0
  174. package/dist/cjs/config-aff4ff52.js +84 -0
  175. package/dist/cjs/{data-21dc0f81.js → data-5a4013f1.js} +8 -8
  176. package/dist/cjs/{focus-visible-7a0ce04f.js → focus-visible-9aa87fa3.js} +8 -0
  177. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-32f1a0e4.js} +4 -2
  178. package/dist/cjs/{haptic-f6b37aa3.js → haptic-7c25be74.js} +1 -1
  179. package/dist/cjs/{helpers-afaa9001.js → helpers-4e2936d2.js} +4 -1
  180. package/dist/cjs/{index-38a015a8.js → index-03fbee1d.js} +14 -15
  181. package/dist/cjs/{index-9509ecad.js → index-0e0c6196.js} +9 -7
  182. package/dist/cjs/{index-5b6a7459.js → index-604c36ae.js} +3 -3
  183. package/dist/cjs/{index-2e7a27db.js → index-73f75efb.js} +847 -1215
  184. package/dist/cjs/{index-213cabf1.js → index-8f975cf4.js} +12 -12
  185. package/dist/cjs/index.cjs.js +11 -13
  186. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-4b4d2251.js} +18 -17
  187. package/dist/cjs/{input.utils-611cde0b.js → input.utils-fb1debe4.js} +4 -5
  188. package/dist/cjs/ion-accordion_2.cjs.entry.js +71 -69
  189. package/dist/cjs/ion-action-sheet.cjs.entry.js +38 -51
  190. package/dist/cjs/ion-alert.cjs.entry.js +44 -60
  191. package/dist/cjs/ion-app_8.cjs.entry.js +122 -212
  192. package/dist/cjs/ion-avatar_3.cjs.entry.js +95 -10
  193. package/dist/cjs/ion-back-button.cjs.entry.js +39 -30
  194. package/dist/cjs/ion-backdrop.cjs.entry.js +12 -16
  195. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +73 -45
  196. package/dist/cjs/ion-button_2.cjs.entry.js +64 -41
  197. package/dist/cjs/ion-card_5.cjs.entry.js +62 -47
  198. package/dist/cjs/ion-checkbox.cjs.entry.js +40 -46
  199. package/dist/cjs/ion-chip.cjs.entry.js +45 -14
  200. package/dist/cjs/ion-col_3.cjs.entry.js +39 -14
  201. package/dist/cjs/ion-datetime-button.cjs.entry.js +25 -25
  202. package/dist/cjs/ion-datetime_3.cjs.entry.js +251 -271
  203. package/dist/cjs/ion-fab_3.cjs.entry.js +58 -67
  204. package/dist/cjs/ion-img.cjs.entry.js +12 -4
  205. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +28 -44
  206. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +60 -21
  207. package/dist/cjs/ion-input.cjs.entry.js +153 -88
  208. package/dist/cjs/ion-item-option_3.cjs.entry.js +49 -37
  209. package/dist/cjs/ion-item_8.cjs.entry.js +129 -71
  210. package/dist/cjs/ion-loading.cjs.entry.js +33 -50
  211. package/dist/cjs/ion-menu_3.cjs.entry.js +60 -71
  212. package/dist/cjs/ion-modal.cjs.entry.js +120 -159
  213. package/dist/cjs/ion-nav_2.cjs.entry.js +25 -21
  214. package/dist/cjs/ion-picker-column-option.cjs.entry.js +13 -23
  215. package/dist/cjs/ion-picker-column.cjs.entry.js +19 -35
  216. package/dist/cjs/ion-picker.cjs.entry.js +11 -6
  217. package/dist/cjs/ion-popover.cjs.entry.js +49 -141
  218. package/dist/cjs/ion-progress-bar.cjs.entry.js +15 -25
  219. package/dist/cjs/ion-radio_2.cjs.entry.js +32 -45
  220. package/dist/cjs/ion-range.cjs.entry.js +40 -78
  221. package/dist/cjs/ion-refresher_2.cjs.entry.js +49 -74
  222. package/dist/cjs/ion-reorder_2.cjs.entry.js +38 -17
  223. package/dist/cjs/ion-ripple-effect.cjs.entry.js +19 -17
  224. package/dist/cjs/ion-route_4.cjs.entry.js +21 -37
  225. package/dist/cjs/ion-searchbar.cjs.entry.js +118 -92
  226. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  227. package/dist/cjs/ion-segment-view.cjs.entry.js +8 -6
  228. package/dist/cjs/ion-segment_2.cjs.entry.js +84 -58
  229. package/dist/cjs/ion-select-modal.cjs.entry.js +13 -13
  230. package/dist/cjs/ion-select_3.cjs.entry.js +158 -91
  231. package/dist/cjs/ion-spinner.cjs.entry.js +39 -13
  232. package/dist/cjs/ion-split-pane.cjs.entry.js +15 -17
  233. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +71 -34
  234. package/dist/cjs/ion-tab_2.cjs.entry.js +13 -10
  235. package/dist/cjs/ion-text.cjs.entry.js +8 -6
  236. package/dist/cjs/ion-textarea.cjs.entry.js +80 -76
  237. package/dist/cjs/ion-toast.cjs.entry.js +81 -89
  238. package/dist/cjs/ion-toggle.cjs.entry.js +90 -55
  239. package/dist/cjs/ionic-global-14af9c21.js +535 -0
  240. package/dist/cjs/ionic.cjs.js +6 -5
  241. package/dist/cjs/{ios.transition-ac964d6c.js → ios.transition-2bb0f7d5.js} +7 -7
  242. package/dist/cjs/{keyboard-af1bb365.js → keyboard-0a5d46dd.js} +5 -3
  243. package/dist/cjs/{keyboard-0272231f.js → keyboard-53c12a15.js} +1 -1
  244. package/dist/cjs/{keyboard-controller-c05e747a.js → keyboard-controller-102bad3e.js} +11 -9
  245. package/dist/cjs/list-2930c629.js +8 -0
  246. package/dist/cjs/loader.cjs.js +5 -4
  247. package/dist/cjs/{md.transition-45089eda.js → md.transition-cf600117.js} +6 -7
  248. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-ea70e230.js} +4 -4
  249. package/dist/cjs/{overlays-56fecd6c.js → overlays-542a90b3.js} +19 -20
  250. package/dist/cjs/{status-tap-84e22ef3.js → status-tap-aa97d209.js} +5 -4
  251. package/dist/cjs/{swipe-back-0303a5e4.js → swipe-back-27975274.js} +2 -1
  252. package/dist/cjs/x-81a8f51c.js +8 -0
  253. package/dist/collection/collection-manifest.json +2 -2
  254. package/dist/collection/components/accordion/accordion.ionic.css +197 -0
  255. package/dist/collection/components/accordion/accordion.ios.css +73 -58
  256. package/dist/collection/components/accordion/accordion.js +44 -58
  257. package/dist/collection/components/accordion/accordion.md.css +67 -59
  258. package/dist/collection/components/accordion-group/accordion-group.ionic.css +95 -0
  259. package/dist/collection/components/accordion-group/accordion-group.ios.css +16 -4
  260. package/dist/collection/components/accordion-group/accordion-group.js +45 -37
  261. package/dist/collection/components/accordion-group/accordion-group.md.css +22 -4
  262. package/dist/collection/components/action-sheet/action-sheet.ios.css +18 -6
  263. package/dist/collection/components/action-sheet/action-sheet.js +34 -78
  264. package/dist/collection/components/action-sheet/action-sheet.md.css +17 -5
  265. package/dist/collection/components/alert/alert.ios.css +19 -1
  266. package/dist/collection/components/alert/alert.js +37 -88
  267. package/dist/collection/components/alert/alert.md.css +19 -1
  268. package/dist/collection/components/app/app.js +12 -78
  269. package/dist/collection/components/avatar/avatar.ionic.css +268 -0
  270. package/dist/collection/components/avatar/avatar.ios.css +12 -0
  271. package/dist/collection/components/avatar/avatar.js +92 -4
  272. package/dist/collection/components/avatar/avatar.md.css +12 -0
  273. package/dist/collection/components/back-button/back-button.ios.css +60 -48
  274. package/dist/collection/components/back-button/back-button.js +35 -42
  275. package/dist/collection/components/back-button/back-button.md.css +60 -48
  276. package/dist/collection/components/backdrop/backdrop.ionic.css +151 -0
  277. package/dist/collection/components/backdrop/backdrop.ios.css +13 -1
  278. package/dist/collection/components/backdrop/backdrop.js +12 -21
  279. package/dist/collection/components/backdrop/backdrop.md.css +13 -1
  280. package/dist/collection/components/badge/badge.ionic.css +249 -0
  281. package/dist/collection/components/badge/badge.ios.css +106 -3
  282. package/dist/collection/components/badge/badge.js +78 -10
  283. package/dist/collection/components/badge/badge.md.css +106 -3
  284. package/dist/collection/components/breadcrumb/breadcrumb.ios.css +20 -8
  285. package/dist/collection/components/breadcrumb/breadcrumb.js +57 -55
  286. package/dist/collection/components/breadcrumb/breadcrumb.md.css +20 -8
  287. package/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +6 -0
  288. package/dist/collection/components/breadcrumbs/breadcrumbs.js +17 -29
  289. package/dist/collection/components/breadcrumbs/breadcrumbs.md.css +6 -0
  290. package/dist/collection/components/button/button.ionic.css +589 -0
  291. package/dist/collection/components/button/button.ios.css +129 -36
  292. package/dist/collection/components/button/button.js +64 -74
  293. package/dist/collection/components/button/button.md.css +120 -40
  294. package/dist/collection/components/buttons/buttons.ionic.css +100 -0
  295. package/dist/collection/components/buttons/buttons.ios.css +59 -7
  296. package/dist/collection/components/buttons/buttons.js +14 -22
  297. package/dist/collection/components/buttons/buttons.md.css +55 -3
  298. package/dist/collection/components/card/card.ionic.css +137 -0
  299. package/dist/collection/components/card/card.ios.css +65 -14
  300. package/dist/collection/components/card/card.js +40 -43
  301. package/dist/collection/components/card/card.md.css +65 -14
  302. package/dist/collection/components/card-content/card-content.ionic.css +90 -0
  303. package/dist/collection/components/card-content/card-content.ios.css +16 -1
  304. package/dist/collection/components/card-content/card-content.js +11 -8
  305. package/dist/collection/components/card-content/card-content.md.css +16 -1
  306. package/dist/collection/components/card-header/card-header.ionic.css +87 -0
  307. package/dist/collection/components/card-header/card-header.ios.css +27 -15
  308. package/dist/collection/components/card-header/card-header.js +13 -18
  309. package/dist/collection/components/card-header/card-header.md.css +27 -15
  310. package/dist/collection/components/card-subtitle/card-subtitle.ionic.css +146 -0
  311. package/dist/collection/components/card-subtitle/card-subtitle.ios.css +12 -0
  312. package/dist/collection/components/card-subtitle/card-subtitle.js +14 -10
  313. package/dist/collection/components/card-subtitle/card-subtitle.md.css +12 -0
  314. package/dist/collection/components/card-title/card-title.ios.css +73 -0
  315. package/dist/collection/components/card-title/card-title.js +14 -10
  316. package/dist/collection/components/card-title/card-title.md.css +73 -0
  317. package/dist/collection/components/checkbox/checkbox.ionic.css +402 -0
  318. package/dist/collection/components/checkbox/checkbox.ios.css +20 -2
  319. package/dist/collection/components/checkbox/checkbox.js +73 -64
  320. package/dist/collection/components/checkbox/checkbox.md.css +21 -3
  321. package/dist/collection/components/chip/chip.ionic.css +160 -0
  322. package/dist/collection/components/chip/chip.ios.css +20 -1
  323. package/dist/collection/components/chip/chip.js +78 -20
  324. package/dist/collection/components/chip/chip.md.css +20 -1
  325. package/dist/collection/components/col/col.css +12 -0
  326. package/dist/collection/components/col/col.js +35 -53
  327. package/dist/collection/components/content/content.css +8 -2
  328. package/dist/collection/components/content/content.js +18 -47
  329. package/dist/collection/components/datetime/datetime.ionic.css +673 -0
  330. package/dist/collection/components/datetime/datetime.ios.css +237 -86
  331. package/dist/collection/components/datetime/datetime.js +144 -201
  332. package/dist/collection/components/datetime/datetime.md.css +237 -86
  333. package/dist/collection/components/datetime/utils/data.js +5 -5
  334. package/dist/collection/components/datetime-button/datetime-button.ios.css +6 -0
  335. package/dist/collection/components/datetime-button/datetime-button.js +19 -26
  336. package/dist/collection/components/datetime-button/datetime-button.md.css +6 -0
  337. package/dist/collection/components/fab/fab.css +25 -1
  338. package/dist/collection/components/fab/fab.js +11 -22
  339. package/dist/collection/components/fab-button/fab-button.ios.css +18 -6
  340. package/dist/collection/components/fab-button/fab-button.js +50 -76
  341. package/dist/collection/components/fab-button/fab-button.md.css +20 -8
  342. package/dist/collection/components/fab-list/fab-list.css +12 -0
  343. package/dist/collection/components/fab-list/fab-list.js +9 -15
  344. package/dist/collection/components/footer/footer.ios.css +14 -2
  345. package/dist/collection/components/footer/footer.js +23 -29
  346. package/dist/collection/components/footer/footer.md.css +12 -0
  347. package/dist/collection/components/grid/grid.css +12 -0
  348. package/dist/collection/components/grid/grid.js +9 -10
  349. package/dist/collection/components/header/header.ionic.css +86 -0
  350. package/dist/collection/components/header/header.ios.css +25 -10
  351. package/dist/collection/components/header/header.js +44 -30
  352. package/dist/collection/components/header/header.md.css +23 -8
  353. package/dist/collection/components/img/img.js +12 -6
  354. package/dist/collection/components/infinite-scroll/infinite-scroll.js +12 -36
  355. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +12 -0
  356. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +18 -14
  357. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +12 -0
  358. package/dist/collection/components/input/input.ionic.css +1078 -0
  359. package/dist/collection/components/input/input.ios.css +21 -2
  360. package/dist/collection/components/input/input.js +179 -163
  361. package/dist/collection/components/input/input.md.css +43 -4
  362. package/dist/collection/components/input-password-toggle/input-password-toggle.common.css +61 -0
  363. package/dist/collection/components/input-password-toggle/input-password-toggle.ionic.css +141 -0
  364. package/dist/collection/components/input-password-toggle/input-password-toggle.js +52 -24
  365. package/dist/collection/components/item/item.ionic.css +497 -0
  366. package/dist/collection/components/item/item.ios.css +109 -69
  367. package/dist/collection/components/item/item.js +53 -59
  368. package/dist/collection/components/item/item.md.css +120 -68
  369. package/dist/collection/components/item-divider/item-divider.ios.css +18 -0
  370. package/dist/collection/components/item-divider/item-divider.js +12 -19
  371. package/dist/collection/components/item-divider/item-divider.md.css +18 -0
  372. package/dist/collection/components/item-group/item-group.ios.css +12 -0
  373. package/dist/collection/components/item-group/item-group.js +13 -7
  374. package/dist/collection/components/item-group/item-group.md.css +12 -0
  375. package/dist/collection/components/item-option/item-option.ionic.css +332 -0
  376. package/dist/collection/components/item-option/item-option.ios.css +14 -2
  377. package/dist/collection/components/item-option/item-option.js +51 -36
  378. package/dist/collection/components/item-option/item-option.md.css +14 -2
  379. package/dist/collection/components/item-options/item-options.ionic.css +259 -0
  380. package/dist/collection/components/item-options/item-options.ios.css +18 -0
  381. package/dist/collection/components/item-options/item-options.js +13 -13
  382. package/dist/collection/components/item-options/item-options.md.css +18 -0
  383. package/dist/collection/components/item-sliding/item-sliding.css +6 -0
  384. package/dist/collection/components/item-sliding/item-sliding.js +8 -9
  385. package/dist/collection/components/label/label.ios.css +18 -0
  386. package/dist/collection/components/label/label.js +13 -12
  387. package/dist/collection/components/label/label.md.css +18 -0
  388. package/dist/collection/components/list/list.ionic.css +192 -0
  389. package/dist/collection/components/list/list.ios.css +18 -0
  390. package/dist/collection/components/list/list.js +48 -16
  391. package/dist/collection/components/list/list.md.css +20 -2
  392. package/dist/collection/components/list-header/list-header.ionic.css +236 -0
  393. package/dist/collection/components/list-header/list-header.ios.css +18 -0
  394. package/dist/collection/components/list-header/list-header.js +15 -12
  395. package/dist/collection/components/list-header/list-header.md.css +18 -0
  396. package/dist/collection/components/loading/loading.ios.css +13 -1
  397. package/dist/collection/components/loading/loading.js +29 -79
  398. package/dist/collection/components/loading/loading.md.css +13 -1
  399. package/dist/collection/components/menu/menu.ios.css +15 -3
  400. package/dist/collection/components/menu/menu.js +15 -42
  401. package/dist/collection/components/menu/menu.md.css +15 -3
  402. package/dist/collection/components/menu-button/menu-button.ionic.css +238 -0
  403. package/dist/collection/components/menu-button/menu-button.ios.css +48 -14
  404. package/dist/collection/components/menu-button/menu-button.js +31 -32
  405. package/dist/collection/components/menu-button/menu-button.md.css +49 -15
  406. package/dist/collection/components/menu-toggle/menu-toggle.js +11 -17
  407. package/dist/collection/components/modal/animations/sheet.js +8 -2
  408. package/dist/collection/components/modal/gestures/sheet.js +10 -6
  409. package/dist/collection/components/modal/modal.ionic.css +239 -0
  410. package/dist/collection/components/modal/modal.ios.css +106 -63
  411. package/dist/collection/components/modal/modal.js +79 -158
  412. package/dist/collection/components/modal/modal.md.css +106 -63
  413. package/dist/collection/components/nav/nav.css +7 -1
  414. package/dist/collection/components/nav/nav.js +19 -23
  415. package/dist/collection/components/nav-link/nav-link.js +11 -15
  416. package/dist/collection/components/note/note.ios.css +12 -0
  417. package/dist/collection/components/note/note.js +14 -10
  418. package/dist/collection/components/note/note.md.css +12 -0
  419. package/dist/collection/components/picker/picker.ios.css +15 -3
  420. package/dist/collection/components/picker/picker.js +8 -5
  421. package/dist/collection/components/picker/picker.md.css +15 -3
  422. package/dist/collection/components/picker-column/picker-column.css +9 -2
  423. package/dist/collection/components/picker-column/picker-column.js +14 -37
  424. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +6 -0
  425. package/dist/collection/components/picker-column-option/picker-column-option.js +14 -29
  426. package/dist/collection/components/picker-column-option/picker-column-option.md.css +6 -0
  427. package/dist/collection/components/picker-legacy/picker.ios.css +13 -1
  428. package/dist/collection/components/picker-legacy/picker.js +28 -81
  429. package/dist/collection/components/picker-legacy/picker.md.css +13 -1
  430. package/dist/collection/components/picker-legacy-column/picker-column.ios.css +12 -0
  431. package/dist/collection/components/picker-legacy-column/picker-column.js +6 -7
  432. package/dist/collection/components/picker-legacy-column/picker-column.md.css +12 -0
  433. package/dist/collection/components/popover/popover.ios.css +13 -1
  434. package/dist/collection/components/popover/popover.js +48 -193
  435. package/dist/collection/components/popover/popover.md.css +13 -1
  436. package/dist/collection/components/progress-bar/progress-bar.ios.css +8 -2
  437. package/dist/collection/components/progress-bar/progress-bar.js +11 -33
  438. package/dist/collection/components/progress-bar/progress-bar.md.css +8 -2
  439. package/dist/collection/components/radio/radio.ionic.css +424 -0
  440. package/dist/collection/components/radio/radio.ios.css +134 -91
  441. package/dist/collection/components/radio/radio.js +21 -48
  442. package/dist/collection/components/radio/radio.md.css +134 -91
  443. package/dist/collection/components/radio-group/radio-group.js +13 -19
  444. package/dist/collection/components/range/range.ionic.css +555 -0
  445. package/dist/collection/components/range/range.ios.css +128 -85
  446. package/dist/collection/components/range/range.js +31 -102
  447. package/dist/collection/components/range/range.md.css +128 -85
  448. package/dist/collection/components/refresher/refresher.ios.css +14 -1
  449. package/dist/collection/components/refresher/refresher.js +11 -70
  450. package/dist/collection/components/refresher/refresher.md.css +15 -2
  451. package/dist/collection/components/refresher-content/refresher-content.js +32 -15
  452. package/dist/collection/components/reorder/reorder.ios.css +6 -0
  453. package/dist/collection/components/reorder/reorder.js +33 -6
  454. package/dist/collection/components/reorder/reorder.md.css +6 -0
  455. package/dist/collection/components/reorder-group/reorder-group.css +6 -0
  456. package/dist/collection/components/reorder-group/reorder-group.js +8 -9
  457. package/dist/collection/components/ripple-effect/{ripple-effect.css → ripple-effect.common.css} +7 -1
  458. package/dist/collection/components/ripple-effect/ripple-effect.ionic.css +154 -0
  459. package/dist/collection/components/ripple-effect/ripple-effect.js +14 -17
  460. package/dist/collection/components/route/route.js +11 -19
  461. package/dist/collection/components/route-redirect/route-redirect.js +4 -4
  462. package/dist/collection/components/router/router.js +4 -22
  463. package/dist/collection/components/router-link/router-link.css +8 -2
  464. package/dist/collection/components/router-link/router-link.js +16 -23
  465. package/dist/collection/components/router-outlet/router-outlet.css +7 -1
  466. package/dist/collection/components/router-outlet/router-outlet.js +11 -21
  467. package/dist/collection/components/row/row.css +12 -0
  468. package/dist/collection/components/row/row.js +9 -2
  469. package/dist/collection/components/searchbar/searchbar.ionic.css +345 -0
  470. package/dist/collection/components/searchbar/searchbar.ios.css +56 -18
  471. package/dist/collection/components/searchbar/searchbar.js +120 -143
  472. package/dist/collection/components/searchbar/searchbar.md.css +56 -18
  473. package/dist/collection/components/segment/segment.ionic.css +117 -0
  474. package/dist/collection/components/segment/segment.ios.css +45 -2
  475. package/dist/collection/components/segment/segment.js +18 -40
  476. package/dist/collection/components/segment/segment.md.css +45 -2
  477. package/dist/collection/components/segment-button/segment-button.ionic.css +355 -0
  478. package/dist/collection/components/segment-button/segment-button.ios.css +146 -105
  479. package/dist/collection/components/segment-button/segment-button.js +64 -41
  480. package/dist/collection/components/segment-button/segment-button.md.css +148 -107
  481. package/dist/collection/components/segment-content/segment-content.js +1 -1
  482. package/dist/collection/components/segment-view/segment-view.ios.css +6 -0
  483. package/dist/collection/components/segment-view/segment-view.js +7 -9
  484. package/dist/collection/components/segment-view/segment-view.md.css +6 -0
  485. package/dist/collection/components/select/select.ionic.css +706 -0
  486. package/dist/collection/components/select/select.ios.css +187 -121
  487. package/dist/collection/components/select/select.js +159 -120
  488. package/dist/collection/components/select/select.md.css +184 -226
  489. package/dist/collection/components/select-modal/select-modal.ionic.css +121 -0
  490. package/dist/collection/components/select-modal/select-modal.ios.css +0 -186
  491. package/dist/collection/components/select-modal/select-modal.js +6 -10
  492. package/dist/collection/components/select-modal/select-modal.md.css +7 -3
  493. package/dist/collection/components/select-option/select-option.js +10 -9
  494. package/dist/collection/components/select-popover/select-popover.ios.css +18 -0
  495. package/dist/collection/components/select-popover/select-popover.js +16 -17
  496. package/dist/collection/components/select-popover/select-popover.md.css +18 -0
  497. package/dist/collection/components/skeleton-text/skeleton-text.css +6 -0
  498. package/dist/collection/components/skeleton-text/skeleton-text.js +9 -10
  499. package/dist/collection/components/spinner/spinner.common.css +199 -0
  500. package/dist/collection/components/spinner/{spinner.css → spinner.ionic.css} +63 -0
  501. package/dist/collection/components/spinner/spinner.js +49 -17
  502. package/dist/collection/components/split-pane/split-pane.ios.css +20 -2
  503. package/dist/collection/components/split-pane/split-pane.js +15 -22
  504. package/dist/collection/components/split-pane/split-pane.md.css +20 -2
  505. package/dist/collection/components/tab/tab.js +10 -12
  506. package/dist/collection/components/tab-bar/tab-bar.ionic.css +188 -0
  507. package/dist/collection/components/tab-bar/tab-bar.ios.css +71 -43
  508. package/dist/collection/components/tab-bar/tab-bar.js +67 -21
  509. package/dist/collection/components/tab-bar/tab-bar.md.css +71 -43
  510. package/dist/collection/components/tab-button/tab-button.ionic.css +282 -0
  511. package/dist/collection/components/tab-button/tab-button.ios.css +103 -88
  512. package/dist/collection/components/tab-button/tab-button.js +51 -32
  513. package/dist/collection/components/tab-button/tab-button.md.css +103 -88
  514. package/dist/collection/components/tabs/tabs.css +7 -1
  515. package/dist/collection/components/tabs/tabs.js +6 -5
  516. package/dist/collection/components/text/text.css +6 -0
  517. package/dist/collection/components/text/text.js +10 -8
  518. package/dist/collection/components/textarea/textarea.ionic.css +834 -0
  519. package/dist/collection/components/textarea/textarea.ios.css +201 -96
  520. package/dist/collection/components/textarea/textarea.js +98 -132
  521. package/dist/collection/components/textarea/textarea.md.css +214 -97
  522. package/dist/collection/components/thumbnail/thumbnail.css +6 -0
  523. package/dist/collection/components/thumbnail/thumbnail.js +9 -2
  524. package/dist/collection/components/title/title.ionic.css +145 -0
  525. package/dist/collection/components/title/title.ios.css +32 -4
  526. package/dist/collection/components/title/title.js +17 -11
  527. package/dist/collection/components/title/title.md.css +32 -4
  528. package/dist/collection/components/toast/animations/utils.js +1 -1
  529. package/dist/collection/components/toast/toast.ionic.css +377 -0
  530. package/dist/collection/components/toast/toast.ios.css +74 -35
  531. package/dist/collection/components/toast/toast.js +73 -107
  532. package/dist/collection/components/toast/toast.md.css +74 -35
  533. package/dist/collection/components/toggle/toggle.ionic.css +419 -0
  534. package/dist/collection/components/toggle/toggle.ios.css +166 -120
  535. package/dist/collection/components/toggle/toggle.js +83 -69
  536. package/dist/collection/components/toggle/toggle.md.css +163 -120
  537. package/dist/collection/components/toolbar/toolbar.ionic.css +233 -0
  538. package/dist/collection/components/toolbar/toolbar.ios.css +90 -47
  539. package/dist/collection/components/toolbar/toolbar.js +14 -12
  540. package/dist/collection/components/toolbar/toolbar.md.css +90 -47
  541. package/dist/collection/global/ionic-global.js +229 -13
  542. package/dist/collection/utils/focus-visible.js +7 -0
  543. package/dist/collection/utils/framework-delegate.js +3 -1
  544. package/dist/collection/utils/helpers.js +3 -1
  545. package/dist/collection/utils/keyboard/keyboard-controller.js +3 -1
  546. package/dist/collection/utils/menu-controller/animations/overlay.js +3 -3
  547. package/dist/collection/utils/menu-controller/animations/push.js +2 -1
  548. package/dist/collection/utils/menu-controller/animations/reveal.js +2 -1
  549. package/dist/collection/utils/overlays.js +2 -1
  550. package/dist/collection/utils/test/playwright/generator.js +48 -23
  551. package/dist/collection/utils/test/playwright/page/utils/goto.js +14 -5
  552. package/dist/collection/utils/test/playwright/page/utils/set-content.js +16 -2
  553. package/dist/collection/utils/transition/ios.transition.js +1 -0
  554. package/dist/docs.d.ts +0 -8
  555. package/dist/docs.json +7864 -2219
  556. package/dist/esm/{animation-eab5a4ca.js → animation-f1a88600.js} +1 -1
  557. package/dist/esm/{app-globals-1318774c.js → app-globals-eceadabb.js} +1 -1
  558. package/dist/esm/{button-active-10b36beb.js → button-active-321f0dba.js} +2 -2
  559. package/dist/esm/{capacitor-59395cbd.js → capacitor-6b0341c8.js} +1 -1
  560. package/dist/esm/caret-down-3eaad1cc.js +6 -0
  561. package/dist/esm/caret-left-33424bb0.js +6 -0
  562. package/dist/esm/caret-right-68d856ad.js +6 -0
  563. package/dist/esm/config-84eb9670.js +79 -0
  564. package/dist/esm/{data-ae11fd43.js → data-98c06dea.js} +6 -6
  565. package/dist/esm/{focus-visible-dd40d69f.js → focus-visible-501aff19.js} +8 -1
  566. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-3e4a8c9f.js} +4 -2
  567. package/dist/esm/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  568. package/dist/esm/{helpers-da915de8.js → helpers-f08d15bd.js} +4 -1
  569. package/dist/esm/{index-ed9a6c67.js → index-31109e63.js} +10 -11
  570. package/dist/esm/{index-13b48bcb.js → index-59f81cb8.js} +6 -6
  571. package/{components/index9.js → dist/esm/index-62b4a18b.js} +4 -2
  572. package/dist/esm/{index-fcdfc1aa.js → index-723c0e5d.js} +848 -1216
  573. package/dist/esm/{index-5cc724f3.js → index-7bd160c2.js} +2 -2
  574. package/dist/esm/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  575. package/dist/esm/index.js +11 -13
  576. package/dist/esm/{input-shims-0314bbe5.js → input-shims-6be83e59.js} +7 -6
  577. package/dist/esm/{input.utils-09c71bc7.js → input.utils-67459bae.js} +2 -3
  578. package/dist/esm/ion-accordion_2.entry.js +70 -68
  579. package/dist/esm/ion-action-sheet.entry.js +38 -51
  580. package/dist/esm/ion-alert.entry.js +41 -57
  581. package/dist/esm/ion-app_8.entry.js +109 -199
  582. package/dist/esm/ion-avatar_3.entry.js +95 -10
  583. package/dist/esm/ion-back-button.entry.js +38 -29
  584. package/dist/esm/ion-backdrop.entry.js +12 -16
  585. package/dist/esm/ion-breadcrumb_2.entry.js +74 -46
  586. package/dist/esm/ion-button_2.entry.js +61 -38
  587. package/dist/esm/ion-card_5.entry.js +62 -47
  588. package/dist/esm/ion-checkbox.entry.js +40 -46
  589. package/dist/esm/ion-chip.entry.js +45 -14
  590. package/dist/esm/ion-col_3.entry.js +39 -14
  591. package/dist/esm/ion-datetime-button.entry.js +21 -21
  592. package/dist/esm/ion-datetime_3.entry.js +177 -197
  593. package/dist/esm/ion-fab_3.entry.js +59 -68
  594. package/dist/esm/ion-img.entry.js +12 -4
  595. package/dist/esm/ion-infinite-scroll_2.entry.js +25 -41
  596. package/dist/esm/ion-input-password-toggle.entry.js +58 -19
  597. package/dist/esm/ion-input.entry.js +154 -89
  598. package/dist/esm/ion-item-option_3.entry.js +49 -37
  599. package/dist/esm/ion-item_8.entry.js +129 -71
  600. package/dist/esm/ion-loading.entry.js +30 -47
  601. package/dist/esm/ion-menu_3.entry.js +59 -70
  602. package/dist/esm/ion-modal.entry.js +84 -123
  603. package/dist/esm/ion-nav_2.entry.js +23 -19
  604. package/dist/esm/ion-picker-column-option.entry.js +13 -23
  605. package/dist/esm/ion-picker-column.entry.js +18 -34
  606. package/dist/esm/ion-picker.entry.js +11 -6
  607. package/dist/esm/ion-popover.entry.js +46 -138
  608. package/dist/esm/ion-progress-bar.entry.js +14 -24
  609. package/dist/esm/ion-radio_2.entry.js +32 -45
  610. package/dist/esm/ion-range.entry.js +35 -73
  611. package/dist/esm/ion-refresher_2.entry.js +46 -71
  612. package/dist/esm/ion-reorder_2.entry.js +39 -18
  613. package/dist/esm/ion-ripple-effect.entry.js +19 -17
  614. package/dist/esm/ion-route_4.entry.js +21 -37
  615. package/dist/esm/ion-searchbar.entry.js +118 -92
  616. package/dist/esm/ion-segment-content.entry.js +2 -2
  617. package/dist/esm/ion-segment-view.entry.js +8 -6
  618. package/dist/esm/ion-segment_2.entry.js +84 -58
  619. package/dist/esm/ion-select-modal.entry.js +13 -13
  620. package/dist/esm/ion-select_3.entry.js +159 -92
  621. package/dist/esm/ion-spinner.entry.js +37 -11
  622. package/dist/esm/ion-split-pane.entry.js +15 -17
  623. package/dist/esm/ion-tab-bar_2.entry.js +70 -33
  624. package/dist/esm/ion-tab_2.entry.js +13 -10
  625. package/dist/esm/ion-text.entry.js +8 -6
  626. package/dist/esm/ion-textarea.entry.js +80 -76
  627. package/dist/esm/ion-toast.entry.js +57 -65
  628. package/dist/esm/ion-toggle.entry.js +91 -56
  629. package/dist/esm/ionic-global-3c97a4aa.js +521 -0
  630. package/dist/esm/ionic.js +7 -6
  631. package/dist/esm/{ios.transition-1cb16beb.js → ios.transition-06b78ea0.js} +7 -7
  632. package/dist/esm/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +5 -3
  633. package/dist/esm/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  634. package/dist/esm/{keyboard-controller-ec5c2bfa.js → keyboard-controller-aff395fd.js} +5 -3
  635. package/dist/esm/list-6524700c.js +6 -0
  636. package/dist/esm/loader.js +6 -5
  637. package/dist/esm/{md.transition-20f80721.js → md.transition-e5712bda.js} +6 -7
  638. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-c0bd22ff.js} +2 -2
  639. package/dist/esm/{overlays-6163edd5.js → overlays-66cb5522.js} +6 -7
  640. package/dist/esm/{status-tap-6971c722.js → status-tap-edf9f395.js} +5 -4
  641. package/dist/esm/{swipe-back-e5394307.js → swipe-back-17c42610.js} +2 -1
  642. package/dist/esm/x-a64bcd9f.js +6 -0
  643. package/dist/esm-es5/animation-f1a88600.js +4 -0
  644. package/dist/esm-es5/app-globals-eceadabb.js +4 -0
  645. package/dist/esm-es5/{button-active-10b36beb.js → button-active-321f0dba.js} +1 -1
  646. package/dist/esm-es5/capacitor-6b0341c8.js +4 -0
  647. package/dist/esm-es5/caret-down-3eaad1cc.js +4 -0
  648. package/dist/esm-es5/caret-left-33424bb0.js +4 -0
  649. package/dist/esm-es5/caret-right-68d856ad.js +4 -0
  650. package/dist/esm-es5/config-84eb9670.js +4 -0
  651. package/dist/esm-es5/data-98c06dea.js +4 -0
  652. package/dist/esm-es5/focus-visible-501aff19.js +4 -0
  653. package/dist/esm-es5/framework-delegate-3e4a8c9f.js +4 -0
  654. package/dist/esm-es5/{haptic-ac164e4c.js → haptic-dd6c0ea9.js} +1 -1
  655. package/dist/esm-es5/helpers-f08d15bd.js +4 -0
  656. package/dist/esm-es5/index-31109e63.js +4 -0
  657. package/dist/esm-es5/index-59f81cb8.js +4 -0
  658. package/dist/esm-es5/{index-79b30591.js → index-62b4a18b.js} +1 -1
  659. package/dist/esm-es5/index-723c0e5d.js +5 -0
  660. package/dist/esm-es5/index-7bd160c2.js +4 -0
  661. package/dist/esm-es5/{index-e2cf2ceb.js → index-d997525d.js} +1 -1
  662. package/dist/esm-es5/index.js +1 -1
  663. package/dist/esm-es5/input-shims-6be83e59.js +4 -0
  664. package/dist/esm-es5/input.utils-67459bae.js +4 -0
  665. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  666. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  667. package/dist/esm-es5/ion-alert.entry.js +1 -1
  668. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  669. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  670. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  671. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  672. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  673. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  674. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  675. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  676. package/dist/esm-es5/ion-chip.entry.js +1 -1
  677. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  678. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  679. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  680. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  681. package/dist/esm-es5/ion-img.entry.js +1 -1
  682. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  683. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  684. package/dist/esm-es5/ion-input.entry.js +1 -1
  685. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  686. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  687. package/dist/esm-es5/ion-loading.entry.js +1 -1
  688. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  689. package/dist/esm-es5/ion-modal.entry.js +1 -1
  690. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  691. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  692. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  693. package/dist/esm-es5/ion-picker.entry.js +1 -1
  694. package/dist/esm-es5/ion-popover.entry.js +1 -1
  695. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  696. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  697. package/dist/esm-es5/ion-range.entry.js +1 -1
  698. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  699. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  700. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  701. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  702. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  703. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  704. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  705. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  706. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  707. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  708. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  709. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  710. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  711. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  712. package/dist/esm-es5/ion-text.entry.js +1 -1
  713. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  714. package/dist/esm-es5/ion-toast.entry.js +1 -1
  715. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  716. package/dist/esm-es5/ionic-global-3c97a4aa.js +4 -0
  717. package/dist/esm-es5/ionic.js +1 -1
  718. package/dist/esm-es5/ios.transition-06b78ea0.js +4 -0
  719. package/dist/esm-es5/{keyboard-52278bd7.js → keyboard-5b1b354d.js} +1 -1
  720. package/dist/esm-es5/{keyboard-73175e24.js → keyboard-9bbd546a.js} +1 -1
  721. package/dist/esm-es5/keyboard-controller-aff395fd.js +4 -0
  722. package/dist/esm-es5/list-6524700c.js +4 -0
  723. package/dist/esm-es5/loader.js +1 -1
  724. package/dist/esm-es5/md.transition-e5712bda.js +4 -0
  725. package/dist/esm-es5/notch-controller-c0bd22ff.js +4 -0
  726. package/dist/esm-es5/overlays-66cb5522.js +4 -0
  727. package/dist/esm-es5/status-tap-edf9f395.js +4 -0
  728. package/dist/esm-es5/swipe-back-17c42610.js +4 -0
  729. package/dist/esm-es5/x-a64bcd9f.js +4 -0
  730. package/dist/html.html-data.json +2347 -209
  731. package/dist/ionic/index.esm.js +1 -1
  732. package/dist/ionic/ionic.esm.js +1 -1
  733. package/dist/ionic/ionic.js +1 -1
  734. package/dist/ionic/p-01451762.entry.js +4 -0
  735. package/dist/ionic/p-01d80901.system.js +4 -0
  736. package/dist/ionic/p-038a6294.js +4 -0
  737. package/dist/ionic/p-06ec4706.js +4 -0
  738. package/dist/ionic/p-06f2f110.system.entry.js +4 -0
  739. package/dist/ionic/p-09125f4f.entry.js +4 -0
  740. package/dist/ionic/p-096e5f6d.system.entry.js +4 -0
  741. package/dist/ionic/p-09c6b5e4.js +4 -0
  742. package/dist/ionic/p-0a0ce78f.system.entry.js +4 -0
  743. package/dist/ionic/p-0db90e9b.entry.js +4 -0
  744. package/dist/ionic/p-0fa218e9.system.js +5 -0
  745. package/dist/ionic/p-101ccd60.system.entry.js +4 -0
  746. package/dist/ionic/p-112120d7.system.js +4 -0
  747. package/dist/ionic/{p-c7e16491.js → p-11266916.js} +1 -1
  748. package/dist/ionic/{p-1e955a45.system.js → p-115d74cd.system.js} +1 -1
  749. package/dist/ionic/p-12337305.system.entry.js +4 -0
  750. package/dist/ionic/{p-34b11c24.js → p-12d6df53.js} +1 -1
  751. package/dist/ionic/p-156d17cd.js +4 -0
  752. package/dist/ionic/p-18892506.entry.js +4 -0
  753. package/dist/ionic/p-18bbe9a5.entry.js +4 -0
  754. package/dist/ionic/p-18c930a5.system.entry.js +4 -0
  755. package/dist/ionic/{p-b06ac4a5.system.js → p-18f86177.system.js} +1 -1
  756. package/dist/ionic/p-1abd1c99.entry.js +4 -0
  757. package/dist/ionic/p-1cf1141c.system.entry.js +4 -0
  758. package/dist/ionic/p-1dd2b0af.entry.js +4 -0
  759. package/dist/ionic/p-1eeb9796.entry.js +4 -0
  760. package/dist/ionic/p-1efa63f2.js +4 -0
  761. package/dist/ionic/p-23b31425.entry.js +4 -0
  762. package/dist/ionic/p-243adf8c.js +4 -0
  763. package/dist/ionic/p-24f15ce4.system.entry.js +4 -0
  764. package/dist/ionic/p-25cc2477.entry.js +4 -0
  765. package/dist/ionic/p-27258d5a.entry.js +4 -0
  766. package/dist/ionic/p-29ca4da2.entry.js +4 -0
  767. package/dist/ionic/p-2e35a770.system.js +4 -0
  768. package/dist/ionic/p-2ef115ec.system.entry.js +4 -0
  769. package/dist/ionic/p-330e703e.entry.js +4 -0
  770. package/dist/ionic/p-33dc4514.js +4 -0
  771. package/dist/ionic/p-346c67b0.js +4 -0
  772. package/dist/ionic/p-3583dd40.system.entry.js +4 -0
  773. package/dist/ionic/p-3608e72b.entry.js +4 -0
  774. package/dist/ionic/p-398b00a5.system.entry.js +4 -0
  775. package/dist/ionic/p-3b7adbc3.system.entry.js +4 -0
  776. package/dist/ionic/p-3ce95a91.entry.js +4 -0
  777. package/dist/ionic/p-3d61263b.system.entry.js +4 -0
  778. package/dist/ionic/{p-9ea607bd.system.js → p-3e91ea3a.system.js} +2 -2
  779. package/dist/ionic/{p-7a1241fe.system.js → p-41c19986.system.js} +1 -1
  780. package/dist/ionic/p-41f06734.entry.js +4 -0
  781. package/dist/ionic/p-4219582c.system.js +4 -0
  782. package/dist/ionic/p-429dd2b5.system.js +4 -0
  783. package/dist/ionic/p-4385e3fb.system.entry.js +4 -0
  784. package/dist/ionic/p-4459a66e.system.js +4 -0
  785. package/dist/ionic/{p-8985cdb6.system.js → p-4626fb32.system.js} +1 -1
  786. package/dist/ionic/p-46787abb.system.js +4 -0
  787. package/dist/ionic/p-47fd935c.system.js +4 -0
  788. package/dist/ionic/p-4a39ba11.entry.js +4 -0
  789. package/dist/ionic/p-4a6d4288.entry.js +4 -0
  790. package/dist/ionic/p-4a869870.entry.js +4 -0
  791. package/dist/ionic/p-4ac4f52a.system.entry.js +4 -0
  792. package/dist/ionic/p-4b4e4592.system.entry.js +4 -0
  793. package/dist/ionic/{p-89b61afc.js → p-4c275462.js} +1 -1
  794. package/dist/ionic/p-4c9e1b2c.js +4 -0
  795. package/dist/ionic/p-51371e21.system.js +4 -0
  796. package/dist/ionic/p-530c591a.entry.js +4 -0
  797. package/dist/ionic/p-5377db51.system.entry.js +4 -0
  798. package/dist/ionic/p-55546d77.system.entry.js +4 -0
  799. package/dist/ionic/p-556778bd.system.js +4 -0
  800. package/dist/ionic/p-5684893b.system.entry.js +4 -0
  801. package/dist/ionic/p-57de8d54.system.entry.js +4 -0
  802. package/dist/ionic/{p-cec30029.system.js → p-58aa8a36.system.js} +1 -1
  803. package/dist/ionic/p-58c64779.system.entry.js +4 -0
  804. package/dist/ionic/{p-da2b833b.js → p-58f16ef6.js} +1 -1
  805. package/dist/ionic/p-5a6b3c0d.entry.js +4 -0
  806. package/dist/ionic/p-5a6d245d.system.entry.js +4 -0
  807. package/dist/ionic/p-5b57d327.system.js +4 -0
  808. package/dist/ionic/p-5ce35a03.js +4 -0
  809. package/dist/ionic/p-5eb8561f.system.entry.js +4 -0
  810. package/dist/ionic/p-5ff5d2bb.entry.js +4 -0
  811. package/dist/ionic/p-607c9c33.js +4 -0
  812. package/dist/ionic/p-60d21ee9.system.entry.js +4 -0
  813. package/dist/ionic/p-61f85a49.system.entry.js +4 -0
  814. package/dist/ionic/p-623fcccc.entry.js +4 -0
  815. package/dist/ionic/{p-9146695e.system.js → p-62887754.system.js} +1 -1
  816. package/dist/ionic/p-63fde7fe.entry.js +4 -0
  817. package/dist/ionic/p-6433742e.system.entry.js +4 -0
  818. package/dist/ionic/p-67b6e18d.entry.js +4 -0
  819. package/dist/ionic/p-697eee8c.system.entry.js +4 -0
  820. package/dist/ionic/p-6a0dd6bc.js +4 -0
  821. package/dist/ionic/p-6bc2795b.entry.js +4 -0
  822. package/dist/ionic/p-6bd1c0ee.system.entry.js +4 -0
  823. package/dist/ionic/p-6caa76ec.js +4 -0
  824. package/dist/ionic/p-6cbca6c5.system.entry.js +4 -0
  825. package/dist/ionic/p-6dc32e8b.entry.js +4 -0
  826. package/dist/ionic/p-6e53290f.system.entry.js +4 -0
  827. package/dist/ionic/p-7071d7ca.js +4 -0
  828. package/dist/ionic/{p-f687573e.system.js → p-728f5b22.system.js} +1 -1
  829. package/dist/ionic/p-72cbf799.system.entry.js +4 -0
  830. package/dist/ionic/p-74d76684.js +4 -0
  831. package/dist/ionic/p-7607d8ba.system.entry.js +4 -0
  832. package/dist/ionic/p-78ed8923.js +4 -0
  833. package/dist/ionic/p-7a858bae.system.js +4 -0
  834. package/dist/ionic/p-7d36cf9f.system.entry.js +4 -0
  835. package/dist/ionic/p-815f649a.system.entry.js +4 -0
  836. package/dist/ionic/p-81b72701.entry.js +4 -0
  837. package/dist/ionic/p-822e47a9.system.js +4 -0
  838. package/dist/ionic/{p-976cffa3.js → p-82cb4235.js} +1 -1
  839. package/dist/ionic/p-83948e48.js +5 -0
  840. package/dist/ionic/p-8463212e.js +4 -0
  841. package/dist/ionic/p-84667060.entry.js +4 -0
  842. package/dist/ionic/p-857ba8d4.entry.js +4 -0
  843. package/dist/ionic/p-86d98446.system.entry.js +4 -0
  844. package/dist/ionic/p-86e9a917.system.entry.js +4 -0
  845. package/dist/ionic/p-871f4046.entry.js +4 -0
  846. package/dist/ionic/p-8956f9a8.system.entry.js +4 -0
  847. package/dist/ionic/p-8b0f0a87.entry.js +4 -0
  848. package/dist/ionic/p-8dbfae64.entry.js +4 -0
  849. package/dist/ionic/p-903c544a.js +4 -0
  850. package/dist/ionic/p-916bc9ed.system.entry.js +4 -0
  851. package/dist/ionic/p-92646426.js +4 -0
  852. package/dist/ionic/{p-27281edd.js → p-93e47936.js} +1 -1
  853. package/dist/ionic/{p-a93873de.system.js → p-94816e7a.system.js} +1 -1
  854. package/dist/ionic/p-94fc2104.system.entry.js +4 -0
  855. package/dist/ionic/p-986855d6.js +4 -0
  856. package/dist/ionic/p-9abb7d9b.entry.js +4 -0
  857. package/dist/ionic/p-9ac1a506.system.js +4 -0
  858. package/dist/ionic/{p-d60342e3.js → p-9ed87d1b.js} +1 -1
  859. package/dist/ionic/p-a1cdc742.js +4 -0
  860. package/dist/ionic/p-a2814291.system.js +4 -0
  861. package/dist/ionic/{p-782beb5a.js → p-a510e9c0.js} +1 -1
  862. package/dist/ionic/p-a538ab98.js +4 -0
  863. package/dist/ionic/p-a5a9206f.entry.js +4 -0
  864. package/dist/ionic/p-a685da08.system.entry.js +4 -0
  865. package/dist/ionic/p-a98061d0.entry.js +4 -0
  866. package/dist/ionic/p-a9af4103.js +4 -0
  867. package/dist/ionic/p-ac1c2b6a.js +4 -0
  868. package/dist/ionic/p-b18c52cd.entry.js +4 -0
  869. package/dist/ionic/p-b517144d.system.entry.js +4 -0
  870. package/dist/ionic/p-b5dc9a32.system.entry.js +4 -0
  871. package/dist/ionic/p-b80582fe.system.entry.js +4 -0
  872. package/dist/ionic/p-b9d2d554.entry.js +4 -0
  873. package/dist/ionic/p-bbcec459.system.js +4 -0
  874. package/dist/ionic/p-bcdd3eaf.entry.js +4 -0
  875. package/dist/ionic/p-be87ec25.entry.js +4 -0
  876. package/dist/ionic/p-c248c88d.system.js +4 -0
  877. package/dist/ionic/p-c373eebd.system.js +4 -0
  878. package/dist/ionic/p-cdff6a80.system.entry.js +4 -0
  879. package/dist/ionic/p-cea92c46.system.js +4 -0
  880. package/dist/ionic/p-d4862803.entry.js +4 -0
  881. package/dist/ionic/p-d6ed3be1.entry.js +4 -0
  882. package/dist/ionic/{p-19ea7bff.system.js → p-dbd39afd.system.js} +1 -1
  883. package/dist/ionic/p-dc286a59.entry.js +4 -0
  884. package/dist/ionic/p-df09db21.entry.js +4 -0
  885. package/dist/ionic/p-df4b88fc.system.entry.js +4 -0
  886. package/dist/ionic/p-e3b70846.system.js +4 -0
  887. package/dist/ionic/p-ea3ca474.system.js +4 -0
  888. package/dist/ionic/p-eb4ba253.entry.js +4 -0
  889. package/dist/ionic/p-ebd641e4.system.entry.js +4 -0
  890. package/dist/ionic/p-ebe94d15.entry.js +4 -0
  891. package/dist/ionic/p-eda736d7.entry.js +4 -0
  892. package/dist/ionic/p-ee17be82.entry.js +4 -0
  893. package/dist/ionic/p-eee899d5.system.entry.js +4 -0
  894. package/dist/ionic/p-f116fb3f.system.js +4 -0
  895. package/dist/ionic/{p-95902a17.system.js → p-f193945e.system.js} +1 -1
  896. package/dist/ionic/{p-aee73160.entry.js → p-f1e11e93.entry.js} +1 -1
  897. package/dist/ionic/p-f25ad420.system.entry.js +4 -0
  898. package/dist/ionic/p-f44c9c6e.system.entry.js +4 -0
  899. package/dist/ionic/p-f5be97b8.entry.js +4 -0
  900. package/dist/ionic/p-f8123284.entry.js +4 -0
  901. package/dist/ionic/{p-3e9fea9e.system.js → p-f8c63ac0.system.js} +2 -2
  902. package/dist/ionic/p-fad81132.system.entry.js +4 -0
  903. package/dist/ionic/p-fff78cd2.system.entry.js +4 -0
  904. package/dist/types/components/accordion/accordion.d.ts +5 -3
  905. package/dist/types/components/accordion-group/accordion-group.d.ts +12 -1
  906. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +3 -7
  907. package/dist/types/components/action-sheet/action-sheet.d.ts +3 -2
  908. package/dist/types/components/alert/alert-interface.d.ts +3 -7
  909. package/dist/types/components/alert/alert.d.ts +3 -2
  910. package/dist/types/components/app/app.d.ts +4 -2
  911. package/dist/types/components/avatar/avatar.d.ts +28 -0
  912. package/dist/types/components/back-button/back-button.d.ts +2 -1
  913. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  914. package/dist/types/components/badge/badge.d.ts +23 -1
  915. package/dist/types/components/breadcrumb/breadcrumb.d.ts +4 -1
  916. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  917. package/dist/types/components/button/button.d.ts +15 -4
  918. package/dist/types/components/buttons/buttons.d.ts +5 -1
  919. package/dist/types/components/card/card.d.ts +8 -1
  920. package/dist/types/components/card-content/card-content.d.ts +2 -1
  921. package/dist/types/components/card-header/card-header.d.ts +3 -2
  922. package/dist/types/components/card-subtitle/card-subtitle.d.ts +2 -1
  923. package/dist/types/components/card-title/card-title.d.ts +2 -1
  924. package/dist/types/components/checkbox/checkbox.d.ts +14 -4
  925. package/dist/types/components/chip/chip.d.ts +19 -1
  926. package/dist/types/components/col/col.d.ts +4 -0
  927. package/dist/types/components/content/content.d.ts +3 -0
  928. package/dist/types/components/datetime/datetime.d.ts +26 -1
  929. package/dist/types/components/datetime/utils/data.d.ts +5 -5
  930. package/dist/types/components/datetime-button/datetime-button.d.ts +2 -1
  931. package/dist/types/components/fab/fab.d.ts +4 -0
  932. package/dist/types/components/fab-button/fab-button.d.ts +5 -3
  933. package/dist/types/components/fab-list/fab-list.d.ts +4 -0
  934. package/dist/types/components/footer/footer.d.ts +4 -3
  935. package/dist/types/components/grid/grid.d.ts +4 -0
  936. package/dist/types/components/header/header.d.ts +9 -3
  937. package/dist/types/components/img/img.d.ts +3 -0
  938. package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +4 -0
  939. package/dist/types/components/infinite-scroll-content/infinite-scroll-content.d.ts +4 -0
  940. package/dist/types/components/input/input.d.ts +31 -5
  941. package/dist/types/components/input-password-toggle/input-password-toggle.d.ts +2 -0
  942. package/dist/types/components/item/item.d.ts +11 -4
  943. package/dist/types/components/item-divider/item-divider.d.ts +2 -1
  944. package/dist/types/components/item-group/item-group.d.ts +4 -0
  945. package/dist/types/components/item-option/item-option.d.ts +11 -1
  946. package/dist/types/components/item-options/item-options.d.ts +4 -0
  947. package/dist/types/components/item-sliding/item-sliding.d.ts +4 -0
  948. package/dist/types/components/label/label.d.ts +2 -1
  949. package/dist/types/components/list/list.d.ts +15 -1
  950. package/dist/types/components/list-header/list-header.d.ts +2 -1
  951. package/dist/types/components/loading/loading-interface.d.ts +2 -7
  952. package/dist/types/components/loading/loading.d.ts +3 -2
  953. package/dist/types/components/menu/menu.d.ts +3 -0
  954. package/dist/types/components/menu-button/menu-button.d.ts +3 -1
  955. package/dist/types/components/menu-toggle/menu-toggle.d.ts +3 -0
  956. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  957. package/dist/types/components/modal/modal-interface.d.ts +4 -7
  958. package/dist/types/components/modal/modal.d.ts +11 -1
  959. package/dist/types/components/nav/nav-interface.d.ts +9 -1
  960. package/dist/types/components/nav/nav.d.ts +5 -1
  961. package/dist/types/components/nav-link/nav-link.d.ts +4 -0
  962. package/dist/types/components/note/note.d.ts +2 -1
  963. package/dist/types/components/picker/picker.d.ts +2 -1
  964. package/dist/types/components/picker-column/picker-column.d.ts +2 -1
  965. package/dist/types/components/picker-column-option/picker-column-option.d.ts +4 -0
  966. package/dist/types/components/picker-legacy/picker.d.ts +2 -1
  967. package/dist/types/components/popover/popover-interface.d.ts +3 -6
  968. package/dist/types/components/popover/popover.d.ts +6 -5
  969. package/dist/types/components/progress-bar/progress-bar.d.ts +2 -1
  970. package/dist/types/components/radio/radio.d.ts +2 -1
  971. package/dist/types/components/radio-group/radio-group.d.ts +4 -0
  972. package/dist/types/components/range/range.d.ts +2 -1
  973. package/dist/types/components/refresher/refresher.d.ts +2 -1
  974. package/dist/types/components/refresher-content/refresher-content.d.ts +4 -0
  975. package/dist/types/components/reorder/reorder.d.ts +9 -0
  976. package/dist/types/components/reorder-group/reorder-group.d.ts +4 -0
  977. package/dist/types/components/ripple-effect/ripple-effect.d.ts +4 -0
  978. package/dist/types/components/route/route.d.ts +4 -0
  979. package/dist/types/components/router/router.d.ts +4 -0
  980. package/dist/types/components/router-link/router-link.d.ts +4 -0
  981. package/dist/types/components/router-outlet/router-outlet.d.ts +4 -1
  982. package/dist/types/components/row/row.d.ts +4 -0
  983. package/dist/types/components/searchbar/searchbar.d.ts +30 -8
  984. package/dist/types/components/segment/segment.d.ts +2 -1
  985. package/dist/types/components/segment-button/segment-button.d.ts +5 -2
  986. package/dist/types/components/select/select.d.ts +35 -7
  987. package/dist/types/components/select-option/select-option.d.ts +4 -0
  988. package/dist/types/components/select-popover/select-popover.d.ts +3 -0
  989. package/dist/types/components/skeleton-text/skeleton-text.d.ts +4 -0
  990. package/dist/types/components/spinner/spinner.d.ts +15 -0
  991. package/dist/types/components/split-pane/split-pane.d.ts +4 -0
  992. package/dist/types/components/tab/tab.d.ts +4 -0
  993. package/dist/types/components/tab-bar/tab-bar.d.ts +22 -2
  994. package/dist/types/components/tab-button/tab-button.d.ts +11 -1
  995. package/dist/types/components/tabs/tabs.d.ts +3 -0
  996. package/dist/types/components/text/text.d.ts +2 -1
  997. package/dist/types/components/textarea/textarea.d.ts +17 -4
  998. package/dist/types/components/thumbnail/thumbnail.d.ts +4 -0
  999. package/dist/types/components/title/title.d.ts +4 -0
  1000. package/dist/types/components/toast/animations/utils.d.ts +2 -2
  1001. package/dist/types/components/toast/toast-interface.d.ts +3 -7
  1002. package/dist/types/components/toast/toast.d.ts +12 -2
  1003. package/dist/types/components/toggle/toggle.d.ts +15 -1
  1004. package/dist/types/components/toolbar/toolbar.d.ts +4 -3
  1005. package/dist/types/components.d.ts +1384 -184
  1006. package/dist/types/global/ionic-global.d.ts +27 -2
  1007. package/dist/types/interface.d.ts +3 -0
  1008. package/dist/types/stencil-public-runtime.d.ts +0 -6
  1009. package/dist/types/utils/config.d.ts +106 -2
  1010. package/dist/types/utils/focus-visible.d.ts +1 -0
  1011. package/dist/types/utils/overlays-interface.d.ts +31 -1
  1012. package/dist/types/utils/test/playwright/generator.d.ts +31 -2
  1013. package/hydrate/index.d.ts +4 -10
  1014. package/hydrate/index.js +3805 -3847
  1015. package/hydrate/index.mjs +3805 -3847
  1016. package/package.json +10 -5
  1017. package/components/hardware-back-button.js +0 -115
  1018. package/components/index8.js +0 -128
  1019. package/dist/cjs/hardware-back-button-f0972dab.js +0 -122
  1020. package/dist/cjs/index-5915f9b3.js +0 -38
  1021. package/dist/cjs/index-c8d52405.js +0 -10
  1022. package/dist/cjs/ionic-global-3c758a1a.js +0 -237
  1023. package/dist/esm/hardware-back-button-0a284222.js +0 -116
  1024. package/dist/esm/index-79b30591.js +0 -167
  1025. package/dist/esm/index-9b0d46f4.js +0 -34
  1026. package/dist/esm/index-a5d50daf.js +0 -7
  1027. package/dist/esm/ionic-global-6b9f2b5a.js +0 -231
  1028. package/dist/esm-es5/animation-eab5a4ca.js +0 -4
  1029. package/dist/esm-es5/app-globals-1318774c.js +0 -4
  1030. package/dist/esm-es5/capacitor-59395cbd.js +0 -4
  1031. package/dist/esm-es5/data-ae11fd43.js +0 -4
  1032. package/dist/esm-es5/focus-visible-dd40d69f.js +0 -4
  1033. package/dist/esm-es5/framework-delegate-63d1a679.js +0 -4
  1034. package/dist/esm-es5/hardware-back-button-0a284222.js +0 -4
  1035. package/dist/esm-es5/helpers-da915de8.js +0 -4
  1036. package/dist/esm-es5/index-13b48bcb.js +0 -4
  1037. package/dist/esm-es5/index-5cc724f3.js +0 -4
  1038. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  1039. package/dist/esm-es5/index-a5d50daf.js +0 -4
  1040. package/dist/esm-es5/index-ed9a6c67.js +0 -4
  1041. package/dist/esm-es5/index-fcdfc1aa.js +0 -5
  1042. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  1043. package/dist/esm-es5/input.utils-09c71bc7.js +0 -4
  1044. package/dist/esm-es5/ionic-global-6b9f2b5a.js +0 -4
  1045. package/dist/esm-es5/ios.transition-1cb16beb.js +0 -4
  1046. package/dist/esm-es5/keyboard-controller-ec5c2bfa.js +0 -4
  1047. package/dist/esm-es5/md.transition-20f80721.js +0 -4
  1048. package/dist/esm-es5/notch-controller-55b09e11.js +0 -4
  1049. package/dist/esm-es5/overlays-6163edd5.js +0 -4
  1050. package/dist/esm-es5/status-tap-6971c722.js +0 -4
  1051. package/dist/esm-es5/swipe-back-e5394307.js +0 -4
  1052. package/dist/ionic/p-009f82b0.entry.js +0 -4
  1053. package/dist/ionic/p-00d0d756.system.entry.js +0 -4
  1054. package/dist/ionic/p-02a67bb6.entry.js +0 -4
  1055. package/dist/ionic/p-06db9f72.system.entry.js +0 -4
  1056. package/dist/ionic/p-06e58c4e.js +0 -4
  1057. package/dist/ionic/p-06fee233.js +0 -4
  1058. package/dist/ionic/p-0b7a6f61.system.entry.js +0 -4
  1059. package/dist/ionic/p-0c06e09b.system.js +0 -4
  1060. package/dist/ionic/p-0e3657b4.system.entry.js +0 -4
  1061. package/dist/ionic/p-0f461830.entry.js +0 -4
  1062. package/dist/ionic/p-1050c06b.entry.js +0 -4
  1063. package/dist/ionic/p-10e0c150.entry.js +0 -4
  1064. package/dist/ionic/p-12130ed6.entry.js +0 -4
  1065. package/dist/ionic/p-12f321c2.system.entry.js +0 -4
  1066. package/dist/ionic/p-13672c38.system.entry.js +0 -4
  1067. package/dist/ionic/p-1424bf51.system.entry.js +0 -4
  1068. package/dist/ionic/p-14862d17.js +0 -4
  1069. package/dist/ionic/p-15764963.entry.js +0 -4
  1070. package/dist/ionic/p-178f8860.js +0 -4
  1071. package/dist/ionic/p-19d9e3c1.entry.js +0 -4
  1072. package/dist/ionic/p-1a02bce6.system.js +0 -4
  1073. package/dist/ionic/p-1c152e5e.entry.js +0 -4
  1074. package/dist/ionic/p-1dfc11b3.system.js +0 -4
  1075. package/dist/ionic/p-1e4371bd.js +0 -4
  1076. package/dist/ionic/p-1fd5d9bc.system.js +0 -4
  1077. package/dist/ionic/p-20034878.entry.js +0 -4
  1078. package/dist/ionic/p-231bc1a6.entry.js +0 -4
  1079. package/dist/ionic/p-256d6439.system.entry.js +0 -4
  1080. package/dist/ionic/p-25ffd217.system.entry.js +0 -4
  1081. package/dist/ionic/p-2690b1de.js +0 -4
  1082. package/dist/ionic/p-2799a566.entry.js +0 -4
  1083. package/dist/ionic/p-27c32980.system.entry.js +0 -4
  1084. package/dist/ionic/p-28dfa27e.entry.js +0 -4
  1085. package/dist/ionic/p-2af55ad8.entry.js +0 -4
  1086. package/dist/ionic/p-2b7827c7.js +0 -4
  1087. package/dist/ionic/p-2d31d826.entry.js +0 -4
  1088. package/dist/ionic/p-2e092bfc.js +0 -4
  1089. package/dist/ionic/p-2e25154e.entry.js +0 -4
  1090. package/dist/ionic/p-33e4b80b.entry.js +0 -4
  1091. package/dist/ionic/p-39d3c108.entry.js +0 -4
  1092. package/dist/ionic/p-39f7d87a.system.entry.js +0 -4
  1093. package/dist/ionic/p-3ad285e3.system.js +0 -4
  1094. package/dist/ionic/p-3be897c8.system.entry.js +0 -4
  1095. package/dist/ionic/p-3cc276f4.js +0 -4
  1096. package/dist/ionic/p-40b63137.js +0 -4
  1097. package/dist/ionic/p-47dc25dc.system.entry.js +0 -4
  1098. package/dist/ionic/p-48da821c.system.js +0 -4
  1099. package/dist/ionic/p-49e8212a.entry.js +0 -4
  1100. package/dist/ionic/p-4c2d5b80.system.js +0 -4
  1101. package/dist/ionic/p-4c553a2a.system.entry.js +0 -4
  1102. package/dist/ionic/p-4e9cfad5.system.entry.js +0 -4
  1103. package/dist/ionic/p-50d264fa.system.entry.js +0 -4
  1104. package/dist/ionic/p-515d6848.system.entry.js +0 -4
  1105. package/dist/ionic/p-548a72aa.system.entry.js +0 -4
  1106. package/dist/ionic/p-550a3b74.system.entry.js +0 -4
  1107. package/dist/ionic/p-56b2ba69.system.entry.js +0 -4
  1108. package/dist/ionic/p-576c3a98.js +0 -4
  1109. package/dist/ionic/p-58f53534.entry.js +0 -4
  1110. package/dist/ionic/p-5d9ac963.entry.js +0 -4
  1111. package/dist/ionic/p-5ed6403e.system.entry.js +0 -4
  1112. package/dist/ionic/p-639d0578.system.entry.js +0 -4
  1113. package/dist/ionic/p-64bbdc67.entry.js +0 -4
  1114. package/dist/ionic/p-65d01407.entry.js +0 -4
  1115. package/dist/ionic/p-6b2e506b.entry.js +0 -4
  1116. package/dist/ionic/p-6b6a8f94.system.entry.js +0 -4
  1117. package/dist/ionic/p-6d119deb.system.entry.js +0 -4
  1118. package/dist/ionic/p-7148eaf9.system.js +0 -4
  1119. package/dist/ionic/p-72812e99.js +0 -4
  1120. package/dist/ionic/p-72bc8a1c.js +0 -4
  1121. package/dist/ionic/p-72bfbdb8.entry.js +0 -4
  1122. package/dist/ionic/p-78667ff0.entry.js +0 -4
  1123. package/dist/ionic/p-78c786a5.system.entry.js +0 -4
  1124. package/dist/ionic/p-792919fd.system.js +0 -4
  1125. package/dist/ionic/p-7b30edcc.js +0 -4
  1126. package/dist/ionic/p-7b5771f9.entry.js +0 -4
  1127. package/dist/ionic/p-7e58bbf9.system.js +0 -5
  1128. package/dist/ionic/p-81757650.entry.js +0 -4
  1129. package/dist/ionic/p-825e7bd7.system.entry.js +0 -4
  1130. package/dist/ionic/p-8318c25d.entry.js +0 -4
  1131. package/dist/ionic/p-861176bf.js +0 -5
  1132. package/dist/ionic/p-8635f5e6.system.js +0 -4
  1133. package/dist/ionic/p-87a5a16c.system.entry.js +0 -4
  1134. package/dist/ionic/p-87ce1c7b.system.entry.js +0 -4
  1135. package/dist/ionic/p-8dd3da91.entry.js +0 -4
  1136. package/dist/ionic/p-8e640927.entry.js +0 -4
  1137. package/dist/ionic/p-8ef7a3d4.js +0 -4
  1138. package/dist/ionic/p-900bf295.system.entry.js +0 -4
  1139. package/dist/ionic/p-9437291a.system.entry.js +0 -4
  1140. package/dist/ionic/p-96cc4814.js +0 -4
  1141. package/dist/ionic/p-9a87fe2d.entry.js +0 -4
  1142. package/dist/ionic/p-9b48727c.system.entry.js +0 -4
  1143. package/dist/ionic/p-a049797d.system.entry.js +0 -4
  1144. package/dist/ionic/p-a09686af.system.entry.js +0 -4
  1145. package/dist/ionic/p-a15ddedb.system.js +0 -4
  1146. package/dist/ionic/p-aa92906a.entry.js +0 -4
  1147. package/dist/ionic/p-abe101da.system.js +0 -4
  1148. package/dist/ionic/p-ae304d51.system.entry.js +0 -4
  1149. package/dist/ionic/p-ae830361.entry.js +0 -4
  1150. package/dist/ionic/p-af19e17f.entry.js +0 -4
  1151. package/dist/ionic/p-b13c5a74.system.js +0 -4
  1152. package/dist/ionic/p-b51e4004.js +0 -4
  1153. package/dist/ionic/p-b5400a4e.entry.js +0 -4
  1154. package/dist/ionic/p-b84b4728.system.entry.js +0 -4
  1155. package/dist/ionic/p-bc35609f.system.entry.js +0 -4
  1156. package/dist/ionic/p-c29e3a26.entry.js +0 -4
  1157. package/dist/ionic/p-c468af8a.system.js +0 -4
  1158. package/dist/ionic/p-c5bbf6c1.system.entry.js +0 -4
  1159. package/dist/ionic/p-c61cc894.js +0 -4
  1160. package/dist/ionic/p-c7d9e292.system.js +0 -4
  1161. package/dist/ionic/p-ccba2087.system.entry.js +0 -4
  1162. package/dist/ionic/p-cdf6fc3a.system.entry.js +0 -4
  1163. package/dist/ionic/p-d3e8f550.entry.js +0 -4
  1164. package/dist/ionic/p-d46804b1.system.entry.js +0 -4
  1165. package/dist/ionic/p-d47265c8.js +0 -4
  1166. package/dist/ionic/p-da1d2cb3.entry.js +0 -4
  1167. package/dist/ionic/p-dbdccd05.entry.js +0 -4
  1168. package/dist/ionic/p-dc480111.entry.js +0 -4
  1169. package/dist/ionic/p-dc75988a.system.entry.js +0 -4
  1170. package/dist/ionic/p-de104ff8.system.js +0 -4
  1171. package/dist/ionic/p-dfb78785.system.js +0 -4
  1172. package/dist/ionic/p-e3177e13.system.entry.js +0 -4
  1173. package/dist/ionic/p-e4e3296d.system.js +0 -4
  1174. package/dist/ionic/p-e8d1ae44.system.entry.js +0 -4
  1175. package/dist/ionic/p-e992e256.js +0 -4
  1176. package/dist/ionic/p-eb82a2ad.entry.js +0 -4
  1177. package/dist/ionic/p-ebef8e16.system.entry.js +0 -4
  1178. package/dist/ionic/p-f03983ca.system.entry.js +0 -4
  1179. package/dist/ionic/p-f244eea8.system.entry.js +0 -4
  1180. package/dist/ionic/p-f2e5ec87.entry.js +0 -4
  1181. package/dist/ionic/p-f5aef6f1.system.entry.js +0 -4
  1182. package/dist/ionic/p-f5b1cfba.entry.js +0 -4
  1183. package/dist/ionic/p-f8ff5ad1.entry.js +0 -4
  1184. package/dist/ionic/p-fa459c81.entry.js +0 -4
  1185. package/dist/ionic/p-fa7120fe.entry.js +0 -4
  1186. package/dist/ionic/p-fbebb25d.entry.js +0 -4
  1187. package/dist/ionic/p-fc8bdbc9.system.entry.js +0 -4
  1188. package/dist/ionic/p-fca658be.system.entry.js +0 -4
  1189. package/dist/ionic/p-fdb92b6d.entry.js +0 -4
  1190. package/dist/ionic/p-fe10600c.js +0 -4
  1191. package/dist/ionic/p-fe5dca01.system.entry.js +0 -4
  1192. package/dist/ionic/p-fe6ab8d4.entry.js +0 -4
  1193. package/dist/ionic/p-fee6c9c2.system.entry.js +0 -4
  1194. package/dist/ionic/p-ff4b7e40.system.js +0 -4
  1195. /package/dist/collection/components/{input-password-toggle/input-password-toggle.css → refresher-content/refresher-content.css} +0 -0
@@ -1,6 +1,7 @@
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";
@@ -9,10 +10,12 @@ import { isRTL } from "../../utils/rtl/index";
9
10
  import { createColorClasses, hostContext } from "../../utils/theme";
10
11
  import { watchForOptions } from "../../utils/watch-options";
11
12
  import { caretDownSharp, chevronExpand } from "ionicons/icons";
12
- import { getIonMode } from "../../global/ionic-global";
13
+ import { config } from "../../global/config";
14
+ import { getIonTheme } from "../../global/ionic-global";
13
15
  // TODO(FW-2832): types
14
16
  /**
15
- * @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.
16
19
  *
17
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.
18
21
  * @slot start - Content to display at the leading edge of the select.
@@ -28,51 +31,6 @@ export class Select {
28
31
  constructor() {
29
32
  this.inputId = `ion-sel-${selectIds++}`;
30
33
  this.inheritedAttributes = {};
31
- this.isExpanded = false;
32
- /**
33
- * The text to display on the cancel button.
34
- */
35
- this.cancelText = 'Cancel';
36
- /**
37
- * If `true`, the user cannot interact with the select.
38
- */
39
- this.disabled = false;
40
- /**
41
- * The interface the select should use: `action-sheet`, `popover`, `alert`, or `modal`.
42
- */
43
- this.interface = 'alert';
44
- /**
45
- * Any additional options that the `alert`, `action-sheet` or `popover` interface
46
- * can take. See the [ion-alert docs](./alert), the
47
- * [ion-action-sheet docs](./action-sheet), the
48
- * [ion-popover docs](./popover), and the [ion-modal docs](./modal) for the
49
- * create options for each interface.
50
- *
51
- * Note: `interfaceOptions` will not override `inputs` or `buttons` with the `alert` interface.
52
- */
53
- this.interfaceOptions = {};
54
- /**
55
- * Where to place the label relative to the select.
56
- * `"start"`: The label will appear to the left of the select in LTR and to the right in RTL.
57
- * `"end"`: The label will appear to the right of the select in LTR and to the left in RTL.
58
- * `"floating"`: The label will appear smaller and above the select when the select is focused or it has a value. Otherwise it will appear on top of the select.
59
- * `"stacked"`: The label will appear smaller and above the select regardless even when the select is blurred or has no value.
60
- * `"fixed"`: The label has the same behavior as `"start"` except it also has a fixed width. Long text will be truncated with ellipses ("...").
61
- * When using `"floating"` or `"stacked"` we recommend initializing the select with either a `value` or a `placeholder`.
62
- */
63
- this.labelPlacement = 'start';
64
- /**
65
- * If `true`, the select can accept multiple values.
66
- */
67
- this.multiple = false;
68
- /**
69
- * The name of the control, which is submitted with the form data.
70
- */
71
- this.name = this.inputId;
72
- /**
73
- * The text to display on the ok button.
74
- */
75
- this.okText = 'OK';
76
34
  this.onClick = (ev) => {
77
35
  const target = ev.target;
78
36
  const closestSlot = target.closest('[slot="start"], [slot="end"]');
@@ -116,6 +74,27 @@ export class Select {
116
74
  this.onBlur = () => {
117
75
  this.ionBlur.emit();
118
76
  };
77
+ this.isExpanded = false;
78
+ this.cancelText = 'Cancel';
79
+ this.color = undefined;
80
+ this.compareWith = undefined;
81
+ this.disabled = false;
82
+ this.fill = undefined;
83
+ this.interface = 'alert';
84
+ this.interfaceOptions = {};
85
+ this.justify = undefined;
86
+ this.label = undefined;
87
+ this.labelPlacement = 'start';
88
+ this.multiple = false;
89
+ this.name = this.inputId;
90
+ this.okText = 'OK';
91
+ this.placeholder = undefined;
92
+ this.selectedText = undefined;
93
+ this.toggleIcon = undefined;
94
+ this.expandedIcon = undefined;
95
+ this.shape = undefined;
96
+ this.value = undefined;
97
+ this.size = undefined;
119
98
  }
120
99
  styleChanged() {
121
100
  this.emitStyle();
@@ -353,8 +332,8 @@ export class Select {
353
332
  async openPopover(ev) {
354
333
  const { fill, labelPlacement } = this;
355
334
  const interfaceOptions = this.interfaceOptions;
356
- const mode = getIonMode(this);
357
- const showBackdrop = mode === 'md' ? false : true;
335
+ const theme = getIonTheme(this);
336
+ const showBackdrop = theme === 'md' ? false : true;
358
337
  const multiple = this.multiple;
359
338
  const value = this.value;
360
339
  let event = ev;
@@ -365,7 +344,7 @@ export class Select {
365
344
  * when using a fill in MD mode or if the
366
345
  * label is floating/stacked.
367
346
  */
368
- if (hasFloatingOrStackedLabel || (mode === 'md' && fill !== undefined)) {
347
+ if (hasFloatingOrStackedLabel || (theme === 'md' && fill !== undefined)) {
369
348
  size = 'cover';
370
349
  /**
371
350
  * Otherwise the popover
@@ -378,7 +357,7 @@ export class Select {
378
357
  ionShadowTarget: this.nativeWrapperEl,
379
358
  } });
380
359
  }
381
- const popoverOpts = Object.assign(Object.assign({ mode,
360
+ const popoverOpts = Object.assign(Object.assign({ theme,
382
361
  event, alignment: 'center', size,
383
362
  showBackdrop }, interfaceOptions), { component: 'ion-select-popover', cssClass: ['select-popover', interfaceOptions.cssClass], componentProps: {
384
363
  header: interfaceOptions.header,
@@ -403,9 +382,9 @@ export class Select {
403
382
  return popoverController.create(popoverOpts);
404
383
  }
405
384
  async openActionSheet() {
406
- const mode = getIonMode(this);
385
+ const theme = getIonTheme(this);
407
386
  const interfaceOptions = this.interfaceOptions;
408
- const actionSheetOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { buttons: this.createActionSheetButtons(this.childOpts, this.value), cssClass: ['select-action-sheet', interfaceOptions.cssClass] });
387
+ const actionSheetOpts = Object.assign(Object.assign({ theme }, interfaceOptions), { buttons: this.createActionSheetButtons(this.childOpts, this.value), cssClass: ['select-action-sheet', interfaceOptions.cssClass] });
409
388
  /**
410
389
  * Workaround for Stencil to autodefine
411
390
  * ion-action-sheet when
@@ -422,8 +401,8 @@ export class Select {
422
401
  async openAlert() {
423
402
  const interfaceOptions = this.interfaceOptions;
424
403
  const inputType = this.multiple ? 'checkbox' : 'radio';
425
- const mode = getIonMode(this);
426
- const alertOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { header: interfaceOptions.header ? interfaceOptions.header : this.labelText, inputs: this.createAlertInputs(this.childOpts, inputType, this.value), buttons: [
404
+ const theme = getIonTheme(this);
405
+ const alertOpts = Object.assign(Object.assign({ theme }, interfaceOptions), { header: interfaceOptions.header ? interfaceOptions.header : this.labelText, inputs: this.createAlertInputs(this.childOpts, inputType, this.value), buttons: [
427
406
  {
428
407
  text: this.cancelText,
429
408
  role: 'cancel',
@@ -457,8 +436,8 @@ export class Select {
457
436
  }
458
437
  openModal() {
459
438
  const { multiple, value, interfaceOptions } = this;
460
- const mode = getIonMode(this);
461
- const modalOpts = Object.assign(Object.assign({}, interfaceOptions), { mode, cssClass: ['select-modal', interfaceOptions.cssClass], component: 'ion-select-modal', componentProps: {
439
+ const theme = getIonTheme(this);
440
+ const modalOpts = Object.assign(Object.assign({}, interfaceOptions), { mode: theme, cssClass: ['select-modal', interfaceOptions.cssClass], component: 'ion-select-modal', componentProps: {
462
441
  header: interfaceOptions.header,
463
442
  multiple,
464
443
  value,
@@ -531,6 +510,18 @@ export class Select {
531
510
  };
532
511
  this.ionStyle.emit(style);
533
512
  }
513
+ getSize() {
514
+ const theme = getIonTheme(this);
515
+ const { size } = this;
516
+ // TODO(ROU-11370): Remove theme check when sizes are defined for all themes.
517
+ if (theme !== 'ionic') {
518
+ return undefined;
519
+ }
520
+ if (size === undefined) {
521
+ return 'medium';
522
+ }
523
+ return size;
524
+ }
534
525
  renderLabel() {
535
526
  const { label } = this;
536
527
  return (h("div", { class: {
@@ -563,8 +554,8 @@ export class Select {
563
554
  * when fill="outline".
564
555
  */
565
556
  renderLabelContainer() {
566
- const mode = getIonMode(this);
567
- const hasOutlineFill = mode === 'md' && this.fill === 'outline';
557
+ const theme = getIonTheme(this);
558
+ const hasOutlineFill = theme === 'md' && this.fill === 'outline';
568
559
  if (hasOutlineFill) {
569
560
  /**
570
561
  * The outline fill has a special outline
@@ -613,15 +604,10 @@ export class Select {
613
604
  * next to the select text.
614
605
  */
615
606
  renderSelectIcon() {
616
- const mode = getIonMode(this);
617
- const { isExpanded, toggleIcon, expandedIcon } = this;
618
- let icon;
619
- if (isExpanded && expandedIcon !== undefined) {
620
- icon = expandedIcon;
621
- }
622
- else {
623
- const defaultIcon = mode === 'ios' ? chevronExpand : caretDownSharp;
624
- icon = toggleIcon !== null && toggleIcon !== void 0 ? toggleIcon : defaultIcon;
607
+ const { isExpanded, selectExpandedIcon, selectCollapsedIcon } = this;
608
+ let icon = selectCollapsedIcon;
609
+ if (isExpanded) {
610
+ icon = selectExpandedIcon;
625
611
  }
626
612
  return h("ion-icon", { class: "select-icon", part: "icon", "aria-hidden": "true", icon: icon });
627
613
  }
@@ -656,14 +642,75 @@ export class Select {
656
642
  const { disabled, inputId, isExpanded } = this;
657
643
  return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
658
644
  }
645
+ getShape() {
646
+ const theme = getIonTheme(this);
647
+ const { shape } = this;
648
+ // TODO(ROU-11366): Remove theme check when shapes are defined for all themes.
649
+ if (theme === 'ionic' && shape === undefined) {
650
+ return 'round';
651
+ }
652
+ return shape;
653
+ }
654
+ /**
655
+ * Get the icon to use for the expand icon.
656
+ * If an icon is set on the component, use that.
657
+ * Otherwise, use the icon set in the config.
658
+ * If no icon is set in the config, use the default icon.
659
+ */
660
+ get selectExpandedIcon() {
661
+ // Return the expandedIcon or toggleIcon if either is explicitly set
662
+ if (this.expandedIcon != null) {
663
+ return this.expandedIcon;
664
+ }
665
+ else if (this.toggleIcon != null) {
666
+ return this.toggleIcon;
667
+ }
668
+ // Determine the theme and map to default icons
669
+ const theme = getIonTheme(this);
670
+ const defaultIcons = {
671
+ ios: chevronExpand,
672
+ ionic: caretDownRegular,
673
+ md: caretDownSharp,
674
+ };
675
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
676
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
677
+ // Return the configured select expanded icon or the default icon
678
+ return config.get('selectExpandedIcon', defaultIcon);
679
+ }
680
+ /**
681
+ * Get the icon to use for the collapsed icon.
682
+ * If an icon is set on the component, use that.
683
+ * Otherwise, use the icon set in the config.
684
+ * If no icon is set in the config, use the default icon.
685
+ */
686
+ get selectCollapsedIcon() {
687
+ // Return the toggleIcon if it is explicitly set
688
+ if (this.toggleIcon) {
689
+ return this.toggleIcon;
690
+ }
691
+ // Determine the theme and map to default icons
692
+ const theme = getIonTheme(this);
693
+ const defaultIcons = {
694
+ ios: chevronExpand,
695
+ ionic: caretDownRegular,
696
+ md: caretDownSharp,
697
+ };
698
+ // Get the default icon based on the theme, falling back to 'md' icon if necessary
699
+ const defaultIcon = defaultIcons[theme] || defaultIcons.md;
700
+ return config.get('selectCollapsedIcon', defaultIcon);
701
+ }
659
702
  render() {
660
- const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
661
- const mode = getIonMode(this);
703
+ const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, name, value } = this;
704
+ const theme = getIonTheme(this);
705
+ const shape = this.getShape();
662
706
  const hasFloatingOrStackedLabel = labelPlacement === 'floating' || labelPlacement === 'stacked';
707
+ const shouldRenderOuterIcon = theme !== 'ionic' && hasFloatingOrStackedLabel;
708
+ const shouldRenderInnerIcon = theme === 'ionic' || !hasFloatingOrStackedLabel;
663
709
  const justifyEnabled = !hasFloatingOrStackedLabel && justify !== undefined;
664
710
  const rtl = isRTL(el) ? 'rtl' : 'ltr';
665
711
  const inItem = hostContext('ion-item', this.el);
666
- const shouldRenderHighlight = mode === 'md' && fill !== 'outline' && !inItem;
712
+ const size = this.getSize();
713
+ const shouldRenderHighlight = theme === 'md' && fill !== 'outline' && !inItem;
667
714
  const hasValue = this.hasValue();
668
715
  const hasStartEndSlots = el.querySelector('[slot="start"], [slot="end"]') !== null;
669
716
  renderHiddenInput(true, el, name, parseValue(value), disabled);
@@ -685,8 +732,8 @@ export class Select {
685
732
  * TODO(FW-5592): Remove hasStartEndSlots condition
686
733
  */
687
734
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
688
- return (h(Host, { key: '144dfa5c49549a74fe516c65b9b8104a477ac789', onClick: this.onClick, class: createColorClasses(this.color, {
689
- [mode]: true,
735
+ return (h(Host, { key: '764b2a2f30615cb78b5fd0e20a829910898e8676', onClick: this.onClick, class: createColorClasses(this.color, {
736
+ [theme]: true,
690
737
  'in-item': inItem,
691
738
  'in-item-color': hostContext('ion-item.ion-color', el),
692
739
  'select-disabled': disabled,
@@ -701,20 +748,33 @@ export class Select {
701
748
  [`select-justify-${justify}`]: justifyEnabled,
702
749
  [`select-shape-${shape}`]: shape !== undefined,
703
750
  [`select-label-placement-${labelPlacement}`]: true,
704
- }) }, h("label", { key: '0edcfcbac575a9dccc77991531b6980d1caebf42', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '348151d90cb093f5d21c7d4a834264ac4a312c40', class: "select-wrapper-inner" }, h("slot", { key: '8b7708c7f81217435c58276da0c08bba766d9500', name: "start" }), h("div", { key: '10c520a335da0a0d1cf40f9365597beb244d3b48', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '0f15c40a5495e98e29d2a21ba21e0bc6f1c0125a', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: 'c87faad2e5ebf7f9453397d7ede43abd64d21294', class: "select-highlight" }))));
751
+ [`select-size-${size}`]: size !== undefined,
752
+ }) }, h("label", { key: '35f43c1ad2d01bcf996dd27a0fff3d6f323cd517', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '6d30179d19583b068e67552834d72b3d31f2c0f4', class: "select-wrapper-inner" },
753
+ /**
754
+ * For the ionic theme, we render the outline container here
755
+ * instead of higher up, so it can be positioned relative to
756
+ * the native wrapper instead of the <label> element or the
757
+ * entire component. This allows the label text to be positioned
758
+ * above the outline, while staying within the bounds of the
759
+ * <label> element, ensuring that clicking the label text
760
+ * focuses the select.
761
+ */
762
+ theme === 'ionic' && fill === 'outline' && h("div", { key: '01a8af86d9b25d5ea4cab0f85c4bf1db1465b5d8', class: "select-outline" }), h("slot", { key: 'd5478a1b67a3de05019167f26381d8c453cec8ff', name: "start" }), h("div", { key: '77547d4cca137afe346222988f16a74ea874a547', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '5ded9c58c3eb9508622c62820d85dd5ff033e6f2', name: "end" }), shouldRenderInnerIcon && this.renderSelectIcon()), shouldRenderOuterIcon && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: 'bebf742e3d961e4ed2c933e3925e920322f1d393', class: "select-highlight" }))));
705
763
  }
706
764
  static get is() { return "ion-select"; }
707
765
  static get encapsulation() { return "shadow"; }
708
766
  static get originalStyleUrls() {
709
767
  return {
710
768
  "ios": ["select.ios.scss"],
711
- "md": ["select.md.scss"]
769
+ "md": ["select.md.scss"],
770
+ "ionic": ["select.ionic.scss"]
712
771
  };
713
772
  }
714
773
  static get styleUrls() {
715
774
  return {
716
775
  "ios": ["select.ios.css"],
717
- "md": ["select.md.css"]
776
+ "md": ["select.md.css"],
777
+ "ionic": ["select.ionic.css"]
718
778
  };
719
779
  }
720
780
  static get properties() {
@@ -733,8 +793,6 @@ export class Select {
733
793
  "tags": [],
734
794
  "text": "The text to display on the cancel button."
735
795
  },
736
- "getter": false,
737
- "setter": false,
738
796
  "attribute": "cancel-text",
739
797
  "reflect": false,
740
798
  "defaultValue": "'Cancel'"
@@ -759,8 +817,6 @@ export class Select {
759
817
  "tags": [],
760
818
  "text": "The color to use from your application's color palette.\nDefault options are: `\"primary\"`, `\"secondary\"`, `\"tertiary\"`, `\"success\"`, `\"warning\"`, `\"danger\"`, `\"light\"`, `\"medium\"`, and `\"dark\"`.\nFor more information on colors, see [theming](/docs/theming/basics).\n\nThis property is only available when using the modern select syntax."
761
819
  },
762
- "getter": false,
763
- "setter": false,
764
820
  "attribute": "color",
765
821
  "reflect": true
766
822
  },
@@ -784,8 +840,6 @@ export class Select {
784
840
  "tags": [],
785
841
  "text": "This property allows developers to specify a custom function or property\nname for comparing objects when determining the selected option in the\nion-select. When not specified, the default behavior will use strict\nequality (===) for comparison."
786
842
  },
787
- "getter": false,
788
- "setter": false,
789
843
  "attribute": "compare-with",
790
844
  "reflect": false
791
845
  },
@@ -803,8 +857,6 @@ export class Select {
803
857
  "tags": [],
804
858
  "text": "If `true`, the user cannot interact with the select."
805
859
  },
806
- "getter": false,
807
- "setter": false,
808
860
  "attribute": "disabled",
809
861
  "reflect": false,
810
862
  "defaultValue": "false"
@@ -821,10 +873,8 @@ export class Select {
821
873
  "optional": true,
822
874
  "docs": {
823
875
  "tags": [],
824
- "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."
876
+ "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."
825
877
  },
826
- "getter": false,
827
- "setter": false,
828
878
  "attribute": "fill",
829
879
  "reflect": false
830
880
  },
@@ -848,8 +898,6 @@ export class Select {
848
898
  "tags": [],
849
899
  "text": "The interface the select should use: `action-sheet`, `popover`, `alert`, or `modal`."
850
900
  },
851
- "getter": false,
852
- "setter": false,
853
901
  "attribute": "interface",
854
902
  "reflect": false,
855
903
  "defaultValue": "'alert'"
@@ -868,8 +916,6 @@ export class Select {
868
916
  "tags": [],
869
917
  "text": "Any additional options that the `alert`, `action-sheet` or `popover` interface\ncan take. See the [ion-alert docs](./alert), the\n[ion-action-sheet docs](./action-sheet), the\n[ion-popover docs](./popover), and the [ion-modal docs](./modal) for the\ncreate options for each interface.\n\nNote: `interfaceOptions` will not override `inputs` or `buttons` with the `alert` interface."
870
918
  },
871
- "getter": false,
872
- "setter": false,
873
919
  "attribute": "interface-options",
874
920
  "reflect": false,
875
921
  "defaultValue": "{}"
@@ -888,8 +934,6 @@ export class Select {
888
934
  "tags": [],
889
935
  "text": "How to pack the label and select within a line.\n`justify` does not apply when the label and select\nare on different lines when `labelPlacement` is set to\n`\"floating\"` or `\"stacked\"`.\n`\"start\"`: The label and select will appear on the left in LTR and\non the right in RTL.\n`\"end\"`: The label and select will appear on the right in LTR and\non the left in RTL.\n`\"space-between\"`: The label and select will appear on opposite\nends of the line with space between the two elements."
890
936
  },
891
- "getter": false,
892
- "setter": false,
893
937
  "attribute": "justify",
894
938
  "reflect": false
895
939
  },
@@ -907,8 +951,6 @@ export class Select {
907
951
  "tags": [],
908
952
  "text": "The visible label associated with the select.\n\nUse this if you need to render a plaintext label.\n\nThe `label` property will take priority over the `label` slot if both are used."
909
953
  },
910
- "getter": false,
911
- "setter": false,
912
954
  "attribute": "label",
913
955
  "reflect": false
914
956
  },
@@ -926,8 +968,6 @@ export class Select {
926
968
  "tags": [],
927
969
  "text": "Where to place the label relative to the select.\n`\"start\"`: The label will appear to the left of the select in LTR and to the right in RTL.\n`\"end\"`: The label will appear to the right of the select in LTR and to the left in RTL.\n`\"floating\"`: The label will appear smaller and above the select when the select is focused or it has a value. Otherwise it will appear on top of the select.\n`\"stacked\"`: The label will appear smaller and above the select regardless even when the select is blurred or has no value.\n`\"fixed\"`: The label has the same behavior as `\"start\"` except it also has a fixed width. Long text will be truncated with ellipses (\"...\").\nWhen using `\"floating\"` or `\"stacked\"` we recommend initializing the select with either a `value` or a `placeholder`."
928
970
  },
929
- "getter": false,
930
- "setter": false,
931
971
  "attribute": "label-placement",
932
972
  "reflect": false,
933
973
  "defaultValue": "'start'"
@@ -946,8 +986,6 @@ export class Select {
946
986
  "tags": [],
947
987
  "text": "If `true`, the select can accept multiple values."
948
988
  },
949
- "getter": false,
950
- "setter": false,
951
989
  "attribute": "multiple",
952
990
  "reflect": false,
953
991
  "defaultValue": "false"
@@ -966,8 +1004,6 @@ export class Select {
966
1004
  "tags": [],
967
1005
  "text": "The name of the control, which is submitted with the form data."
968
1006
  },
969
- "getter": false,
970
- "setter": false,
971
1007
  "attribute": "name",
972
1008
  "reflect": false,
973
1009
  "defaultValue": "this.inputId"
@@ -986,8 +1022,6 @@ export class Select {
986
1022
  "tags": [],
987
1023
  "text": "The text to display on the ok button."
988
1024
  },
989
- "getter": false,
990
- "setter": false,
991
1025
  "attribute": "ok-text",
992
1026
  "reflect": false,
993
1027
  "defaultValue": "'OK'"
@@ -1006,8 +1040,6 @@ export class Select {
1006
1040
  "tags": [],
1007
1041
  "text": "The text to display when the select is empty."
1008
1042
  },
1009
- "getter": false,
1010
- "setter": false,
1011
1043
  "attribute": "placeholder",
1012
1044
  "reflect": false
1013
1045
  },
@@ -1025,8 +1057,6 @@ export class Select {
1025
1057
  "tags": [],
1026
1058
  "text": "The text to display instead of the selected option's value."
1027
1059
  },
1028
- "getter": false,
1029
- "setter": false,
1030
1060
  "attribute": "selected-text",
1031
1061
  "reflect": false
1032
1062
  },
@@ -1042,10 +1072,8 @@ export class Select {
1042
1072
  "optional": true,
1043
1073
  "docs": {
1044
1074
  "tags": [],
1045
- "text": "The toggle icon to use. Defaults to `chevronExpand` for `ios` mode,\nor `caretDownSharp` for `md` mode."
1075
+ "text": "The toggle icon to use. Defaults to `\"chevronExpand\"` for the `\"ios\"` theme,\nor `\"caretDownSharp\"` for the `\"md\"` and `\"ionic\"` themes."
1046
1076
  },
1047
- "getter": false,
1048
- "setter": false,
1049
1077
  "attribute": "toggle-icon",
1050
1078
  "reflect": false
1051
1079
  },
@@ -1061,10 +1089,8 @@ export class Select {
1061
1089
  "optional": true,
1062
1090
  "docs": {
1063
1091
  "tags": [],
1064
- "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."
1092
+ "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."
1065
1093
  },
1066
- "getter": false,
1067
- "setter": false,
1068
1094
  "attribute": "expanded-icon",
1069
1095
  "reflect": false
1070
1096
  },
@@ -1072,18 +1098,16 @@ export class Select {
1072
1098
  "type": "string",
1073
1099
  "mutable": false,
1074
1100
  "complexType": {
1075
- "original": "'round'",
1076
- "resolved": "\"round\" | undefined",
1101
+ "original": "'soft' | 'round' | 'rectangular'",
1102
+ "resolved": "\"rectangular\" | \"round\" | \"soft\" | undefined",
1077
1103
  "references": {}
1078
1104
  },
1079
1105
  "required": false,
1080
1106
  "optional": true,
1081
1107
  "docs": {
1082
1108
  "tags": [],
1083
- "text": "The shape of the select. If \"round\" it will have an increased border radius."
1109
+ "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."
1084
1110
  },
1085
- "getter": false,
1086
- "setter": false,
1087
1111
  "attribute": "shape",
1088
1112
  "reflect": false
1089
1113
  },
@@ -1101,10 +1125,25 @@ export class Select {
1101
1125
  "tags": [],
1102
1126
  "text": "The value of the select."
1103
1127
  },
1104
- "getter": false,
1105
- "setter": false,
1106
1128
  "attribute": "value",
1107
1129
  "reflect": false
1130
+ },
1131
+ "size": {
1132
+ "type": "string",
1133
+ "mutable": false,
1134
+ "complexType": {
1135
+ "original": "'small' | 'medium' | 'large'",
1136
+ "resolved": "\"large\" | \"medium\" | \"small\" | undefined",
1137
+ "references": {}
1138
+ },
1139
+ "required": false,
1140
+ "optional": true,
1141
+ "docs": {
1142
+ "tags": [],
1143
+ "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."
1144
+ },
1145
+ "attribute": "size",
1146
+ "reflect": false
1108
1147
  }
1109
1148
  };
1110
1149
  }