@ionic/core 8.4.4-dev.11741289071.1e8e1c3f → 8.4.4-dev.11741294920.1c3e822a

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 (449) hide show
  1. package/components/alert.js +30 -4
  2. package/components/checkbox.js +4 -6
  3. package/components/helpers.js +7 -1
  4. package/components/index6.js +3 -11
  5. package/components/index9.js +1 -1
  6. package/components/ion-input.js +2 -2
  7. package/components/ion-range.js +5 -1
  8. package/components/ion-router.js +1 -1
  9. package/components/ion-segment-button.js +1 -1
  10. package/components/ion-select.js +6 -50
  11. package/components/ion-textarea.js +2 -2
  12. package/components/ion-toggle.js +4 -6
  13. package/components/ionic-global.js +2 -1
  14. package/components/modal.js +35 -259
  15. package/components/toolbar.js +2 -2
  16. package/css/core.css.map +1 -1
  17. package/css/ionic.bundle.css.map +1 -1
  18. package/dist/cjs/{app-globals-21afee77.js → app-globals-4283fe37.js} +1 -1
  19. package/dist/cjs/{data-108e531d.js → data-21dc0f81.js} +1 -1
  20. package/dist/cjs/{framework-delegate-05579976.js → framework-delegate-c4f2ba04.js} +1 -1
  21. package/dist/cjs/{hardware-back-button-9e8a2c4f.js → hardware-back-button-f2cbbdce.js} +1 -1
  22. package/dist/cjs/{helpers-4be3f90d.js → helpers-b14a0f09.js} +7 -0
  23. package/dist/cjs/{index-0ff61d0b.js → index-1248dbd7.js} +4 -4
  24. package/dist/cjs/{index-26bb7e42.js → index-4e37257d.js} +5 -5
  25. package/dist/cjs/{index-2a46a047.js → index-5915f9b3.js} +3 -11
  26. package/dist/cjs/{index-ad7a712e.js → index-786364c7.js} +1 -1
  27. package/dist/cjs/{index-6770fc00.js → index-a4a74252.js} +2 -2
  28. package/dist/cjs/index.cjs.js +10 -10
  29. package/dist/cjs/{input-shims-fd997b01.js → input-shims-b4c0eee7.js} +3 -5
  30. package/dist/cjs/{input.utils-c15a1814.js → input.utils-4af208ab.js} +2 -2
  31. package/dist/cjs/ion-accordion_2.cjs.entry.js +3 -3
  32. package/dist/cjs/ion-action-sheet.cjs.entry.js +6 -6
  33. package/dist/cjs/ion-alert.cjs.entry.js +36 -10
  34. package/dist/cjs/ion-app_8.cjs.entry.js +14 -14
  35. package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
  36. package/dist/cjs/ion-back-button.cjs.entry.js +2 -2
  37. package/dist/cjs/ion-backdrop.cjs.entry.js +1 -1
  38. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +2 -2
  39. package/dist/cjs/ion-button_2.cjs.entry.js +3 -3
  40. package/dist/cjs/ion-card_5.cjs.entry.js +2 -2
  41. package/dist/cjs/ion-checkbox.cjs.entry.js +6 -7
  42. package/dist/cjs/ion-chip.cjs.entry.js +1 -1
  43. package/dist/cjs/ion-col_3.cjs.entry.js +1 -1
  44. package/dist/cjs/ion-datetime-button.cjs.entry.js +4 -4
  45. package/dist/cjs/ion-datetime_3.cjs.entry.js +7 -7
  46. package/dist/cjs/ion-fab_3.cjs.entry.js +2 -2
  47. package/dist/cjs/ion-img.cjs.entry.js +2 -2
  48. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +4 -4
  49. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +2 -2
  50. package/dist/cjs/ion-input.cjs.entry.js +7 -7
  51. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  52. package/dist/cjs/ion-item_8.cjs.entry.js +2 -2
  53. package/dist/cjs/ion-loading.cjs.entry.js +6 -6
  54. package/dist/cjs/ion-menu_3.cjs.entry.js +7 -7
  55. package/dist/cjs/ion-modal.cjs.entry.js +43 -266
  56. package/dist/cjs/ion-nav_2.cjs.entry.js +6 -6
  57. package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
  58. package/dist/cjs/ion-picker-column.cjs.entry.js +2 -2
  59. package/dist/cjs/ion-picker.cjs.entry.js +1 -1
  60. package/dist/cjs/ion-popover.cjs.entry.js +7 -7
  61. package/dist/cjs/ion-progress-bar.cjs.entry.js +2 -2
  62. package/dist/cjs/ion-radio_2.cjs.entry.js +2 -2
  63. package/dist/cjs/ion-range.cjs.entry.js +8 -4
  64. package/dist/cjs/ion-refresher_2.cjs.entry.js +4 -4
  65. package/dist/cjs/ion-reorder_2.cjs.entry.js +4 -4
  66. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  67. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  68. package/dist/cjs/ion-searchbar.cjs.entry.js +2 -2
  69. package/dist/cjs/ion-segment_2.cjs.entry.js +2 -2
  70. package/dist/cjs/ion-select-modal.cjs.entry.js +6 -6
  71. package/dist/cjs/ion-select_3.cjs.entry.js +13 -54
  72. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  73. package/dist/cjs/ion-split-pane.cjs.entry.js +1 -1
  74. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +2 -2
  75. package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
  76. package/dist/cjs/ion-text.cjs.entry.js +1 -1
  77. package/dist/cjs/ion-textarea.cjs.entry.js +7 -7
  78. package/dist/cjs/ion-toast.cjs.entry.js +6 -6
  79. package/dist/cjs/ion-toggle.cjs.entry.js +6 -7
  80. package/dist/cjs/{ionic-global-d9a8bb5b.js → ionic-global-96da1b2e.js} +2 -1
  81. package/dist/cjs/ionic.cjs.js +3 -3
  82. package/dist/cjs/{ios.transition-a4f35c55.js → ios.transition-8d363d77.js} +4 -4
  83. package/dist/cjs/loader.cjs.js +3 -3
  84. package/dist/cjs/{md.transition-cdf904e6.js → md.transition-57d695fa.js} +4 -4
  85. package/dist/cjs/{notch-controller-a0c464d1.js → notch-controller-bd07748b.js} +1 -1
  86. package/dist/cjs/{overlays-86695cf1.js → overlays-27703a30.js} +5 -5
  87. package/dist/cjs/{status-tap-1a2485c1.js → status-tap-654077ee.js} +3 -4
  88. package/dist/cjs/{swipe-back-47a52b83.js → swipe-back-b70cd52e.js} +1 -1
  89. package/dist/collection/components/alert/alert.js +34 -4
  90. package/dist/collection/components/checkbox/checkbox.js +4 -23
  91. package/dist/collection/components/input/input.ios.css +2 -3
  92. package/dist/collection/components/input/input.md.css +2 -7
  93. package/dist/collection/components/modal/animations/ios.enter.js +4 -50
  94. package/dist/collection/components/modal/animations/ios.leave.js +2 -24
  95. package/dist/collection/components/modal/animations/md.enter.js +5 -52
  96. package/dist/collection/components/modal/animations/md.leave.js +3 -26
  97. package/dist/collection/components/modal/animations/sheet.js +2 -11
  98. package/dist/collection/components/modal/gestures/sheet.js +10 -79
  99. package/dist/collection/components/modal/modal.ios.css +0 -16
  100. package/dist/collection/components/modal/modal.js +7 -32
  101. package/dist/collection/components/modal/modal.md.css +0 -6
  102. package/dist/collection/components/select/select.ios.css +0 -59
  103. package/dist/collection/components/select/select.js +4 -100
  104. package/dist/collection/components/select/select.md.css +0 -61
  105. package/dist/collection/components/textarea/textarea.ios.css +2 -3
  106. package/dist/collection/components/textarea/textarea.md.css +2 -7
  107. package/dist/collection/components/toggle/toggle.js +4 -23
  108. package/dist/collection/components/toolbar/toolbar.js +2 -6
  109. package/dist/collection/utils/floating-point/index.js +5 -0
  110. package/dist/collection/utils/helpers.js +6 -0
  111. package/dist/collection/utils/logging/index.js +3 -10
  112. package/dist/collection/utils/platform.js +2 -1
  113. package/dist/collection/utils/test/platform.utils.js +1 -1
  114. package/dist/docs.json +6 -187
  115. package/dist/esm/{app-globals-5dbb61a5.js → app-globals-c10a1137.js} +1 -1
  116. package/dist/esm/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  117. package/dist/esm/{framework-delegate-f683816e.js → framework-delegate-42bc40b1.js} +1 -1
  118. package/dist/esm/{hardware-back-button-06ef3c3e.js → hardware-back-button-44195e92.js} +1 -1
  119. package/dist/esm/{helpers-9b49d7d2.js → helpers-13b816c6.js} +7 -1
  120. package/dist/esm/{index-5a0f5fd0.js → index-28c8fd64.js} +1 -1
  121. package/dist/esm/{index-6a5baab0.js → index-4b39521b.js} +5 -5
  122. package/dist/esm/{index-7105cd59.js → index-6b548278.js} +4 -4
  123. package/dist/esm/{index-6ad967f3.js → index-9b0d46f4.js} +3 -11
  124. package/dist/esm/{index-dd0f7395.js → index-edf58462.js} +2 -2
  125. package/dist/esm/index.js +10 -10
  126. package/dist/esm/{input-shims-dff819a9.js → input-shims-5e5e47e8.js} +3 -5
  127. package/dist/esm/{input.utils-2f1029cf.js → input.utils-d3717b00.js} +2 -2
  128. package/dist/esm/ion-accordion_2.entry.js +3 -3
  129. package/dist/esm/ion-action-sheet.entry.js +6 -6
  130. package/dist/esm/ion-alert.entry.js +36 -10
  131. package/dist/esm/ion-app_8.entry.js +14 -14
  132. package/dist/esm/ion-avatar_3.entry.js +1 -1
  133. package/dist/esm/ion-back-button.entry.js +2 -2
  134. package/dist/esm/ion-backdrop.entry.js +1 -1
  135. package/dist/esm/ion-breadcrumb_2.entry.js +2 -2
  136. package/dist/esm/ion-button_2.entry.js +3 -3
  137. package/dist/esm/ion-card_5.entry.js +2 -2
  138. package/dist/esm/ion-checkbox.entry.js +6 -7
  139. package/dist/esm/ion-chip.entry.js +1 -1
  140. package/dist/esm/ion-col_3.entry.js +1 -1
  141. package/dist/esm/ion-datetime-button.entry.js +4 -4
  142. package/dist/esm/ion-datetime_3.entry.js +7 -7
  143. package/dist/esm/ion-fab_3.entry.js +2 -2
  144. package/dist/esm/ion-img.entry.js +2 -2
  145. package/dist/esm/ion-infinite-scroll_2.entry.js +4 -4
  146. package/dist/esm/ion-input-password-toggle.entry.js +2 -2
  147. package/dist/esm/ion-input.entry.js +7 -7
  148. package/dist/esm/ion-item-option_3.entry.js +4 -4
  149. package/dist/esm/ion-item_8.entry.js +2 -2
  150. package/dist/esm/ion-loading.entry.js +6 -6
  151. package/dist/esm/ion-menu_3.entry.js +7 -7
  152. package/dist/esm/ion-modal.entry.js +43 -266
  153. package/dist/esm/ion-nav_2.entry.js +6 -6
  154. package/dist/esm/ion-picker-column-option.entry.js +2 -2
  155. package/dist/esm/ion-picker-column.entry.js +2 -2
  156. package/dist/esm/ion-picker.entry.js +1 -1
  157. package/dist/esm/ion-popover.entry.js +7 -7
  158. package/dist/esm/ion-progress-bar.entry.js +2 -2
  159. package/dist/esm/ion-radio_2.entry.js +2 -2
  160. package/dist/esm/ion-range.entry.js +8 -4
  161. package/dist/esm/ion-refresher_2.entry.js +4 -4
  162. package/dist/esm/ion-reorder_2.entry.js +4 -4
  163. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  164. package/dist/esm/ion-route_4.entry.js +2 -2
  165. package/dist/esm/ion-searchbar.entry.js +2 -2
  166. package/dist/esm/ion-segment_2.entry.js +2 -2
  167. package/dist/esm/ion-select-modal.entry.js +6 -6
  168. package/dist/esm/ion-select_3.entry.js +13 -54
  169. package/dist/esm/ion-spinner.entry.js +1 -1
  170. package/dist/esm/ion-split-pane.entry.js +1 -1
  171. package/dist/esm/ion-tab-bar_2.entry.js +2 -2
  172. package/dist/esm/ion-tab_2.entry.js +2 -2
  173. package/dist/esm/ion-text.entry.js +1 -1
  174. package/dist/esm/ion-textarea.entry.js +7 -7
  175. package/dist/esm/ion-toast.entry.js +6 -6
  176. package/dist/esm/ion-toggle.entry.js +6 -7
  177. package/dist/esm/{ionic-global-c81d82ab.js → ionic-global-bf78a847.js} +2 -1
  178. package/dist/esm/ionic.js +3 -3
  179. package/dist/esm/{ios.transition-314468a2.js → ios.transition-e7a4de4f.js} +4 -4
  180. package/dist/esm/loader.js +3 -3
  181. package/dist/esm/{md.transition-a560e0e2.js → md.transition-290d8802.js} +4 -4
  182. package/dist/esm/{notch-controller-3dc61260.js → notch-controller-bb8f3a48.js} +1 -1
  183. package/dist/esm/{overlays-9a81f230.js → overlays-4ff6e618.js} +5 -5
  184. package/dist/esm/{status-tap-d07dbc82.js → status-tap-ba401484.js} +3 -4
  185. package/dist/esm/{swipe-back-23ee7ab1.js → swipe-back-a258b011.js} +1 -1
  186. package/dist/esm-es5/app-globals-c10a1137.js +4 -0
  187. package/dist/esm-es5/{data-b3284b5e.js → data-ae11fd43.js} +1 -1
  188. package/dist/esm-es5/{framework-delegate-f683816e.js → framework-delegate-42bc40b1.js} +1 -1
  189. package/dist/esm-es5/{hardware-back-button-06ef3c3e.js → hardware-back-button-44195e92.js} +1 -1
  190. package/dist/esm-es5/{helpers-9b49d7d2.js → helpers-13b816c6.js} +1 -1
  191. package/dist/esm-es5/{index-5a0f5fd0.js → index-28c8fd64.js} +1 -1
  192. package/dist/esm-es5/{index-6a5baab0.js → index-4b39521b.js} +1 -1
  193. package/dist/esm-es5/{index-7105cd59.js → index-6b548278.js} +1 -1
  194. package/dist/esm-es5/index-9b0d46f4.js +4 -0
  195. package/dist/esm-es5/{index-dd0f7395.js → index-edf58462.js} +1 -1
  196. package/dist/esm-es5/index.js +1 -1
  197. package/dist/esm-es5/input-shims-5e5e47e8.js +4 -0
  198. package/dist/esm-es5/{input.utils-2f1029cf.js → input.utils-d3717b00.js} +1 -1
  199. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  200. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  201. package/dist/esm-es5/ion-alert.entry.js +1 -1
  202. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  203. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  204. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  205. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  206. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  207. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  208. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  209. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  210. package/dist/esm-es5/ion-chip.entry.js +1 -1
  211. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  212. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  213. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  214. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  215. package/dist/esm-es5/ion-img.entry.js +1 -1
  216. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  217. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  218. package/dist/esm-es5/ion-input.entry.js +1 -1
  219. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  220. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  221. package/dist/esm-es5/ion-loading.entry.js +1 -1
  222. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  223. package/dist/esm-es5/ion-modal.entry.js +1 -1
  224. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  225. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  226. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  227. package/dist/esm-es5/ion-picker.entry.js +1 -1
  228. package/dist/esm-es5/ion-popover.entry.js +1 -1
  229. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  230. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  231. package/dist/esm-es5/ion-range.entry.js +1 -1
  232. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  233. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  234. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  235. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  236. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  237. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  238. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  239. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  240. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  241. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  242. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  243. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  244. package/dist/esm-es5/ion-text.entry.js +1 -1
  245. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  246. package/dist/esm-es5/ion-toast.entry.js +1 -1
  247. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  248. package/dist/esm-es5/{ionic-global-c81d82ab.js → ionic-global-bf78a847.js} +1 -1
  249. package/dist/esm-es5/ionic.js +1 -1
  250. package/dist/esm-es5/{ios.transition-314468a2.js → ios.transition-e7a4de4f.js} +1 -1
  251. package/dist/esm-es5/loader.js +1 -1
  252. package/dist/esm-es5/md.transition-290d8802.js +4 -0
  253. package/dist/esm-es5/{notch-controller-3dc61260.js → notch-controller-bb8f3a48.js} +1 -1
  254. package/dist/esm-es5/{overlays-9a81f230.js → overlays-4ff6e618.js} +1 -1
  255. package/dist/esm-es5/status-tap-ba401484.js +4 -0
  256. package/dist/esm-es5/{swipe-back-23ee7ab1.js → swipe-back-a258b011.js} +1 -1
  257. package/dist/html.html-data.json +0 -24
  258. package/dist/ionic/index.esm.js +1 -1
  259. package/dist/ionic/ionic.esm.js +1 -1
  260. package/dist/ionic/ionic.js +1 -1
  261. package/dist/ionic/{p-bb2a6761.entry.js → p-00d5ab83.entry.js} +1 -1
  262. package/dist/ionic/{p-73897169.system.js → p-0116e7d7.system.js} +1 -1
  263. package/dist/ionic/{p-5b932840.entry.js → p-026517fb.entry.js} +1 -1
  264. package/dist/ionic/{p-da8ef548.system.entry.js → p-05f90810.system.entry.js} +1 -1
  265. package/dist/ionic/p-06fee233.js +4 -0
  266. package/dist/ionic/{p-e32557bb.system.entry.js → p-0793353d.system.entry.js} +1 -1
  267. package/dist/ionic/{p-c935cfc9.js → p-07d0478c.js} +1 -1
  268. package/dist/ionic/{p-70af0afb.entry.js → p-13637707.entry.js} +1 -1
  269. package/dist/ionic/{p-df862603.entry.js → p-136ff13e.entry.js} +1 -1
  270. package/dist/ionic/{p-76446a85.entry.js → p-166f4ba0.entry.js} +1 -1
  271. package/dist/ionic/{p-fca17935.entry.js → p-16dd9c9b.entry.js} +1 -1
  272. package/dist/ionic/{p-a5b31c0f.entry.js → p-17c772fb.entry.js} +1 -1
  273. package/dist/ionic/{p-0bfffa34.system.entry.js → p-1b2657c9.system.entry.js} +1 -1
  274. package/dist/ionic/p-1c89b09c.system.entry.js +4 -0
  275. package/dist/ionic/p-1f1b8704.entry.js +4 -0
  276. package/dist/ionic/{p-4ad78edc.entry.js → p-1f62c30b.entry.js} +1 -1
  277. package/dist/ionic/{p-eeb5cb45.system.entry.js → p-213b12ce.system.entry.js} +2 -2
  278. package/dist/ionic/{p-990630ca.js → p-230af7f2.js} +1 -1
  279. package/dist/ionic/{p-dd0c9350.system.entry.js → p-25580c85.system.entry.js} +1 -1
  280. package/dist/ionic/p-30ec5574.entry.js +4 -0
  281. package/dist/ionic/{p-8818edd8.entry.js → p-31918ee1.entry.js} +1 -1
  282. package/dist/ionic/{p-bc616455.entry.js → p-327b452e.entry.js} +1 -1
  283. package/dist/ionic/{p-9b3bb24e.entry.js → p-34182275.entry.js} +1 -1
  284. package/dist/ionic/{p-2bc73fb5.js → p-3559bd4f.js} +1 -1
  285. package/dist/ionic/{p-acc8399c.system.entry.js → p-361ab803.system.entry.js} +2 -2
  286. package/dist/ionic/{p-d821466d.system.entry.js → p-364ed29d.system.entry.js} +1 -1
  287. package/dist/ionic/{p-265939f0.entry.js → p-37264dcc.entry.js} +1 -1
  288. package/dist/ionic/{p-f5d6624d.entry.js → p-379d9002.entry.js} +1 -1
  289. package/dist/ionic/{p-02e23f26.entry.js → p-37a21d70.entry.js} +1 -1
  290. package/dist/ionic/{p-77e7b7b6.system.entry.js → p-3fe95571.system.entry.js} +1 -1
  291. package/dist/ionic/p-4075165f.js +4 -0
  292. package/dist/ionic/p-4133f9ec.entry.js +4 -0
  293. package/dist/ionic/{p-afecb188.entry.js → p-42a9bb35.entry.js} +1 -1
  294. package/dist/ionic/{p-5010643d.system.entry.js → p-43df2d06.system.entry.js} +1 -1
  295. package/dist/ionic/{p-e8f34871.entry.js → p-441c2c8c.entry.js} +1 -1
  296. package/dist/ionic/{p-9962f63f.entry.js → p-4429e8c5.entry.js} +1 -1
  297. package/dist/ionic/{p-d1172fe3.system.entry.js → p-45109533.system.entry.js} +1 -1
  298. package/dist/ionic/{p-f3102647.system.entry.js → p-478dfa8c.system.entry.js} +1 -1
  299. package/dist/ionic/p-47ed8b64.entry.js +4 -0
  300. package/dist/ionic/p-486dc46d.system.entry.js +4 -0
  301. package/dist/ionic/{p-92365bc1.system.entry.js → p-48e13807.system.entry.js} +1 -1
  302. package/dist/ionic/{p-0eb2553a.system.entry.js → p-4a98a017.system.entry.js} +1 -1
  303. package/dist/ionic/p-4e8946f7.js +4 -0
  304. package/dist/ionic/{p-2abae1cc.system.entry.js → p-4eed0eb2.system.entry.js} +1 -1
  305. package/dist/ionic/p-51d4cdba.system.js +4 -0
  306. package/dist/ionic/{p-5126cf1e.system.js → p-52b61cba.system.js} +1 -1
  307. package/dist/ionic/{p-95775830.entry.js → p-56a8aa85.entry.js} +1 -1
  308. package/dist/ionic/{p-2515cb4d.system.entry.js → p-5996d3ad.system.entry.js} +1 -1
  309. package/dist/ionic/{p-346b2baf.js → p-5ae70860.js} +1 -1
  310. package/dist/ionic/{p-39dd4f62.js → p-5d1be985.js} +1 -1
  311. package/dist/ionic/{p-f78af648.system.entry.js → p-5d3dc32b.system.entry.js} +1 -1
  312. package/dist/ionic/{p-155c2bb0.entry.js → p-5e9733d0.entry.js} +1 -1
  313. package/dist/ionic/{p-f301a694.system.entry.js → p-6347c733.system.entry.js} +1 -1
  314. package/dist/ionic/{p-058e61eb.system.js → p-64bb1da1.system.js} +1 -1
  315. package/dist/ionic/p-665f9987.entry.js +4 -0
  316. package/dist/ionic/{p-578efda4.system.js → p-6a649fcd.system.js} +2 -2
  317. package/dist/ionic/{p-70ccc275.system.entry.js → p-6c85db7e.system.entry.js} +1 -1
  318. package/dist/ionic/{p-bb11d9fb.js → p-6eb35904.js} +1 -1
  319. package/dist/ionic/{p-ecceeb90.js → p-6f3d8334.js} +1 -1
  320. package/dist/ionic/{p-fca6ef5f.system.entry.js → p-712b57f9.system.entry.js} +1 -1
  321. package/dist/ionic/{p-d99e8644.system.js → p-733f53f8.system.js} +1 -1
  322. package/dist/ionic/{p-18e101b7.system.entry.js → p-7a9407cc.system.entry.js} +2 -2
  323. package/dist/ionic/{p-d7bb5325.entry.js → p-80f2a47b.entry.js} +1 -1
  324. package/dist/ionic/{p-8cfba7e9.system.entry.js → p-830f1a37.system.entry.js} +1 -1
  325. package/dist/ionic/{p-62af944c.entry.js → p-85b1ffae.entry.js} +1 -1
  326. package/dist/ionic/{p-3c8e5c23.system.js → p-8911101b.system.js} +1 -1
  327. package/dist/ionic/{p-7a1766d6.js → p-89e678fa.js} +1 -1
  328. package/dist/ionic/{p-b3680e2f.system.js → p-8aa290af.system.js} +1 -1
  329. package/dist/ionic/p-8b367303.entry.js +4 -0
  330. package/dist/ionic/{p-41780810.entry.js → p-8c0d81a9.entry.js} +1 -1
  331. package/dist/ionic/p-8f3d6be8.entry.js +4 -0
  332. package/dist/ionic/{p-955c3eb8.entry.js → p-8f89c8e3.entry.js} +1 -1
  333. package/dist/ionic/{p-c32644d7.entry.js → p-91b944fa.entry.js} +1 -1
  334. package/dist/ionic/{p-af452fa4.system.js → p-953d9cf5.system.js} +1 -1
  335. package/dist/ionic/{p-5fce0c0b.system.entry.js → p-9c7efe25.system.entry.js} +1 -1
  336. package/dist/ionic/{p-bdad26e3.entry.js → p-9d4a8059.entry.js} +1 -1
  337. package/dist/ionic/p-9e23592d.system.js +4 -0
  338. package/dist/ionic/{p-c8d645b3.entry.js → p-a4b108a7.entry.js} +1 -1
  339. package/dist/ionic/{p-9de5c787.entry.js → p-a69cf9ea.entry.js} +1 -1
  340. package/dist/ionic/p-a749d4a9.entry.js +4 -0
  341. package/dist/ionic/{p-2507278c.system.entry.js → p-a873feda.system.entry.js} +1 -1
  342. package/dist/ionic/{p-2cbe5399.entry.js → p-a8d31cd5.entry.js} +1 -1
  343. package/dist/ionic/{p-655723eb.system.entry.js → p-ac2c154f.system.entry.js} +1 -1
  344. package/dist/ionic/p-acb5a6e4.entry.js +4 -0
  345. package/dist/ionic/{p-4d413973.system.entry.js → p-ae02a7ea.system.entry.js} +1 -1
  346. package/dist/ionic/p-b1c4a9db.js +4 -0
  347. package/dist/ionic/{p-af744710.system.entry.js → p-b533b7ab.system.entry.js} +1 -1
  348. package/dist/ionic/{p-d4ca0475.js → p-b566749e.js} +1 -1
  349. package/dist/ionic/p-b58057d4.js +4 -0
  350. package/dist/ionic/p-b5a10c8b.system.entry.js +4 -0
  351. package/dist/ionic/p-b6ee3fc7.system.entry.js +4 -0
  352. package/dist/ionic/{p-8e407469.system.js → p-bba0bc47.system.js} +1 -1
  353. package/dist/ionic/{p-10327ad2.system.entry.js → p-bc148b43.system.entry.js} +1 -1
  354. package/dist/ionic/{p-fec13c57.entry.js → p-c06312bf.entry.js} +1 -1
  355. package/dist/ionic/{p-860eb968.system.js → p-c09a2f58.system.js} +1 -1
  356. package/dist/ionic/{p-6d32975a.entry.js → p-c2583512.entry.js} +1 -1
  357. package/dist/ionic/p-c312ea08.entry.js +4 -0
  358. package/dist/ionic/{p-2ef3c7ee.system.entry.js → p-c3a51c19.system.entry.js} +1 -1
  359. package/dist/ionic/{p-f89cf011.system.entry.js → p-c3de6cd1.system.entry.js} +1 -1
  360. package/dist/ionic/p-c42a4dad.system.entry.js +4 -0
  361. package/dist/ionic/{p-a9e24ae2.system.entry.js → p-c55254f0.system.entry.js} +1 -1
  362. package/dist/ionic/{p-33a8a71b.entry.js → p-c66604e4.entry.js} +1 -1
  363. package/dist/ionic/{p-72ec9a26.entry.js → p-ca5eef42.entry.js} +1 -1
  364. package/dist/ionic/{p-037fc3f3.entry.js → p-cc991f05.entry.js} +1 -1
  365. package/dist/ionic/{p-7458862e.system.entry.js → p-d4896d36.system.entry.js} +1 -1
  366. package/dist/ionic/{p-1a5bc5f7.js → p-d60342e3.js} +1 -1
  367. package/dist/ionic/{p-5882bffa.system.entry.js → p-d6b3e734.system.entry.js} +1 -1
  368. package/dist/ionic/{p-acb30a5c.system.js → p-d7607262.system.js} +1 -1
  369. package/dist/ionic/{p-31a6efce.system.entry.js → p-d785235b.system.entry.js} +1 -1
  370. package/dist/ionic/{p-ed75fcfb.system.entry.js → p-d7fef52e.system.entry.js} +1 -1
  371. package/dist/ionic/{p-65346408.system.entry.js → p-d854f4bc.system.entry.js} +1 -1
  372. package/dist/ionic/{p-a69b9fc5.system.js → p-d86d7845.system.js} +1 -1
  373. package/dist/ionic/{p-dc146a2a.system.entry.js → p-de4fef3c.system.entry.js} +1 -1
  374. package/dist/ionic/p-e03cd18a.system.entry.js +4 -0
  375. package/dist/ionic/p-e03d645e.entry.js +4 -0
  376. package/dist/ionic/{p-84d08aae.system.entry.js → p-e0a2abde.system.entry.js} +1 -1
  377. package/dist/ionic/{p-d743e981.js → p-e25cd3c7.js} +1 -1
  378. package/dist/ionic/{p-484d855b.system.entry.js → p-e3be9fa8.system.entry.js} +2 -2
  379. package/dist/ionic/{p-56da53ad.system.entry.js → p-e4c1fd74.system.entry.js} +1 -1
  380. package/dist/ionic/{p-e2e19375.system.entry.js → p-e84da6cb.system.entry.js} +1 -1
  381. package/dist/ionic/{p-36c448fe.entry.js → p-eab9414f.entry.js} +1 -1
  382. package/dist/ionic/{p-9f3008d4.system.js → p-eb4ac14d.system.js} +1 -1
  383. package/dist/ionic/{p-6190d0d6.entry.js → p-ebb85488.entry.js} +1 -1
  384. package/dist/ionic/{p-89bf08c7.entry.js → p-ebd0a280.entry.js} +1 -1
  385. package/dist/ionic/{p-93e3654c.system.entry.js → p-ee41045b.system.entry.js} +1 -1
  386. package/dist/ionic/p-efa8edbc.system.js +4 -0
  387. package/dist/ionic/p-f1bbc785.js +4 -0
  388. package/dist/ionic/p-f4f255cb.system.js +4 -0
  389. package/dist/ionic/{p-4452a8ac.system.js → p-f5a536e1.system.js} +1 -1
  390. package/dist/ionic/{p-343b6b1d.system.js → p-f687573e.system.js} +1 -1
  391. package/dist/ionic/{p-95da3ae2.system.js → p-f6e7870b.system.js} +1 -1
  392. package/dist/ionic/p-f6fe87c1.js +4 -0
  393. package/dist/ionic/{p-f56752be.system.entry.js → p-f8ef15ba.system.entry.js} +1 -1
  394. package/dist/ionic/{p-e5849f8d.entry.js → p-fced06e0.entry.js} +1 -1
  395. package/dist/ionic/{p-7b98cebe.entry.js → p-fd2c0aa6.entry.js} +1 -1
  396. package/dist/ionic/{p-63c09585.system.entry.js → p-feab8373.system.entry.js} +1 -1
  397. package/dist/ionic/p-ff4b7e40.system.js +4 -0
  398. package/dist/ionic/{p-4d3a5f86.js → p-ffb6d30e.js} +1 -1
  399. package/dist/types/components/checkbox/checkbox.d.ts +0 -6
  400. package/dist/types/components/modal/animations/sheet.d.ts +0 -1
  401. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  402. package/dist/types/components/modal/modal-interface.d.ts +0 -1
  403. package/dist/types/components/modal/modal.d.ts +0 -11
  404. package/dist/types/components/select/select.d.ts +0 -29
  405. package/dist/types/components/toggle/toggle.d.ts +0 -6
  406. package/dist/types/components/toolbar/toolbar.d.ts +0 -4
  407. package/dist/types/components.d.ts +0 -48
  408. package/dist/types/utils/config.d.ts +0 -9
  409. package/dist/types/utils/helpers.d.ts +4 -0
  410. package/dist/types/utils/logging/index.d.ts +1 -13
  411. package/dist/types/utils/native/capacitor.d.ts +7 -1
  412. package/dist/types/utils/test/platform.utils.d.ts +1 -1
  413. package/hydrate/index.js +100 -348
  414. package/hydrate/index.mjs +100 -348
  415. package/package.json +5 -5
  416. package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
  417. package/dist/esm-es5/index-6ad967f3.js +0 -4
  418. package/dist/esm-es5/input-shims-dff819a9.js +0 -4
  419. package/dist/esm-es5/md.transition-a560e0e2.js +0 -4
  420. package/dist/esm-es5/status-tap-d07dbc82.js +0 -4
  421. package/dist/ionic/p-04e08129.entry.js +0 -4
  422. package/dist/ionic/p-0574e87e.js +0 -4
  423. package/dist/ionic/p-155f4d90.entry.js +0 -4
  424. package/dist/ionic/p-16bfb979.system.entry.js +0 -4
  425. package/dist/ionic/p-1f405274.js +0 -4
  426. package/dist/ionic/p-21227121.js +0 -4
  427. package/dist/ionic/p-22149a4f.js +0 -4
  428. package/dist/ionic/p-2c9eb774.system.js +0 -4
  429. package/dist/ionic/p-322c5fb4.system.js +0 -4
  430. package/dist/ionic/p-34479cfb.entry.js +0 -4
  431. package/dist/ionic/p-4129228f.system.entry.js +0 -4
  432. package/dist/ionic/p-42c9deb1.entry.js +0 -4
  433. package/dist/ionic/p-49a0e74c.entry.js +0 -4
  434. package/dist/ionic/p-52245809.js +0 -4
  435. package/dist/ionic/p-5c47ebbd.system.entry.js +0 -4
  436. package/dist/ionic/p-5c9324c6.js +0 -4
  437. package/dist/ionic/p-67222c16.system.js +0 -4
  438. package/dist/ionic/p-712fedc9.entry.js +0 -4
  439. package/dist/ionic/p-80c6d619.entry.js +0 -4
  440. package/dist/ionic/p-9a100adc.entry.js +0 -4
  441. package/dist/ionic/p-a18470c6.entry.js +0 -4
  442. package/dist/ionic/p-af09741c.entry.js +0 -4
  443. package/dist/ionic/p-b936eb7e.system.entry.js +0 -4
  444. package/dist/ionic/p-c3802319.system.js +0 -4
  445. package/dist/ionic/p-d0546368.entry.js +0 -4
  446. package/dist/ionic/p-e8d56122.js +0 -4
  447. package/dist/ionic/p-efbf5af5.system.entry.js +0 -4
  448. package/dist/ionic/p-f2613334.system.entry.js +0 -4
  449. package/dist/ionic/p-fbf86e62.system.js +0 -4
@@ -23,15 +23,10 @@ import { getIonMode } from "../../global/ionic-global";
23
23
  * @part icon - The select icon container.
24
24
  * @part container - The container for the selected text or placeholder.
25
25
  * @part label - The label text describing the select.
26
- * @part supporting-text - Supporting text displayed beneath the select.
27
- * @part helper-text - Supporting text displayed beneath the select when the select is valid.
28
- * @part error-text - Supporting text displayed beneath the select when the select is invalid and touched.
29
26
  */
30
27
  export class Select {
31
28
  constructor() {
32
29
  this.inputId = `ion-sel-${selectIds++}`;
33
- this.helperTextId = `${this.inputId}-helper-text`;
34
- this.errorTextId = `${this.inputId}-error-text`;
35
30
  this.inheritedAttributes = {};
36
31
  this.onClick = (ev) => {
37
32
  const target = ev.target;
@@ -82,8 +77,6 @@ export class Select {
82
77
  this.compareWith = undefined;
83
78
  this.disabled = false;
84
79
  this.fill = undefined;
85
- this.errorText = undefined;
86
- this.helperText = undefined;
87
80
  this.interface = 'alert';
88
81
  this.interfaceOptions = {};
89
82
  this.justify = undefined;
@@ -98,7 +91,6 @@ export class Select {
98
91
  this.expandedIcon = undefined;
99
92
  this.shape = undefined;
100
93
  this.value = undefined;
101
- this.required = false;
102
94
  }
103
95
  styleChanged() {
104
96
  this.emitStyle();
@@ -663,44 +655,8 @@ export class Select {
663
655
  return renderedLabel;
664
656
  }
665
657
  renderListbox() {
666
- const { disabled, inputId, isExpanded, required } = this;
667
- return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
668
- }
669
- getHintTextID() {
670
- const { el, helperText, errorText, helperTextId, errorTextId } = this;
671
- if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
672
- return errorTextId;
673
- }
674
- if (helperText) {
675
- return helperTextId;
676
- }
677
- return undefined;
678
- }
679
- /**
680
- * Renders the helper text or error text values
681
- */
682
- renderHintText() {
683
- const { helperText, errorText, helperTextId, errorTextId } = this;
684
- return [
685
- h("div", { id: helperTextId, class: "helper-text", part: "supporting-text helper-text" }, helperText),
686
- h("div", { id: errorTextId, class: "error-text", part: "supporting-text error-text" }, errorText),
687
- ];
688
- }
689
- /**
690
- * Responsible for rendering helper text, and error text. This element
691
- * should only be rendered if hint text is set.
692
- */
693
- renderBottomContent() {
694
- const { helperText, errorText } = this;
695
- /**
696
- * undefined and empty string values should
697
- * be treated as not having helper/error text.
698
- */
699
- const hasHintText = !!helperText || !!errorText;
700
- if (!hasHintText) {
701
- return;
702
- }
703
- return h("div", { class: "select-bottom" }, this.renderHintText());
658
+ const { disabled, inputId, isExpanded } = this;
659
+ 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) }));
704
660
  }
705
661
  render() {
706
662
  const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
@@ -731,7 +687,7 @@ export class Select {
731
687
  * TODO(FW-5592): Remove hasStartEndSlots condition
732
688
  */
733
689
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
734
- return (h(Host, { key: '6c0141f40087a1793516882641e4473a6a82a0b2', onClick: this.onClick, class: createColorClasses(this.color, {
690
+ return (h(Host, { key: 'b2dca9ae25d88e4d9fdb55003041a66be5668fcf', onClick: this.onClick, class: createColorClasses(this.color, {
735
691
  [mode]: true,
736
692
  'in-item': inItem,
737
693
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -747,7 +703,7 @@ export class Select {
747
703
  [`select-justify-${justify}`]: justifyEnabled,
748
704
  [`select-shape-${shape}`]: shape !== undefined,
749
705
  [`select-label-placement-${labelPlacement}`]: true,
750
- }) }, h("label", { key: 'a0d70c7cfb6c784f200e9b0893ddcbd25b59b167', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: 'd398f85e1c3af2758cf0672ce8eab1ffa1e3e6a8', class: "select-wrapper-inner" }, h("slot", { key: 'b2ba9dbc8b944c04981b5f97975231a4b1c18768', name: "start" }), h("div", { key: '625c1029456701694f521a9b3e2199a8fd6c3331', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '54bee045845d773e11f8952b9278c97082534488', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: 'cf70509d4140259a41367333ca3815a427f9ad66', class: "select-highlight" })), this.renderBottomContent()));
706
+ }) }, h("label", { key: 'c22fe9aee8cd448223497ef143e89529fcef8af6', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '601972df4579f4fa6a9c2c12865593e807decb72', class: "select-wrapper-inner" }, h("slot", { key: '5f7b1261862f74b978b26f026533e3fd1cc666ba', name: "start" }), h("div", { key: '39616da89f4b4b78432f6da85116a7de2ca589e7', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '1d7b3601b73af7c05b3627cfc8e5147ea379bb03', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: 'b0344f0ac15003e22fee66d3d7ed03a07da7e8b7', class: "select-highlight" }))));
751
707
  }
752
708
  static get is() { return "ion-select"; }
753
709
  static get encapsulation() { return "shadow"; }
@@ -864,40 +820,6 @@ export class Select {
864
820
  "attribute": "fill",
865
821
  "reflect": false
866
822
  },
867
- "errorText": {
868
- "type": "string",
869
- "mutable": false,
870
- "complexType": {
871
- "original": "string",
872
- "resolved": "string | undefined",
873
- "references": {}
874
- },
875
- "required": false,
876
- "optional": true,
877
- "docs": {
878
- "tags": [],
879
- "text": "Text that is placed under the select and displayed when an error is detected."
880
- },
881
- "attribute": "error-text",
882
- "reflect": false
883
- },
884
- "helperText": {
885
- "type": "string",
886
- "mutable": false,
887
- "complexType": {
888
- "original": "string",
889
- "resolved": "string | undefined",
890
- "references": {}
891
- },
892
- "required": false,
893
- "optional": true,
894
- "docs": {
895
- "tags": [],
896
- "text": "Text that is placed under the select and displayed when no error is detected."
897
- },
898
- "attribute": "helper-text",
899
- "reflect": false
900
- },
901
823
  "interface": {
902
824
  "type": "string",
903
825
  "mutable": false,
@@ -1147,24 +1069,6 @@ export class Select {
1147
1069
  },
1148
1070
  "attribute": "value",
1149
1071
  "reflect": false
1150
- },
1151
- "required": {
1152
- "type": "boolean",
1153
- "mutable": false,
1154
- "complexType": {
1155
- "original": "boolean",
1156
- "resolved": "boolean",
1157
- "references": {}
1158
- },
1159
- "required": false,
1160
- "optional": false,
1161
- "docs": {
1162
- "tags": [],
1163
- "text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
1164
- },
1165
- "attribute": "required",
1166
- "reflect": false,
1167
- "defaultValue": "false"
1168
1072
  }
1169
1073
  };
1170
1074
  }
@@ -299,63 +299,6 @@ button {
299
299
  --highlight-color: var(--highlight-color-valid);
300
300
  }
301
301
 
302
- .select-bottom {
303
- /**
304
- * The bottom content should take on the start and end
305
- * padding so it is always aligned with either the label
306
- * or the start of the text select.
307
- */
308
- -webkit-padding-start: var(--padding-start);
309
- padding-inline-start: var(--padding-start);
310
- -webkit-padding-end: var(--padding-end);
311
- padding-inline-end: var(--padding-end);
312
- padding-top: 5px;
313
- padding-bottom: 0;
314
- display: flex;
315
- justify-content: space-between;
316
- border-top: var(--border-width) var(--border-style) var(--border-color);
317
- font-size: 0.75rem;
318
- white-space: normal;
319
- }
320
-
321
- /**
322
- * If the select has a validity state, the
323
- * border and label should reflect that as a color.
324
- * The invalid state should show if the select is
325
- * invalid and has already been touched.
326
- * The valid state should show if the select
327
- * is valid, has already been touched, and
328
- * is currently focused. Do not show the valid
329
- * highlight when the select is blurred.
330
- */
331
- :host(.has-focus.ion-valid),
332
- :host(.ion-touched.ion-invalid) {
333
- --border-color: var(--highlight-color);
334
- }
335
-
336
- /**
337
- * Error text should only be shown when .ion-invalid is
338
- * present on the select. Otherwise the helper text should
339
- * be shown.
340
- */
341
- .select-bottom .error-text {
342
- display: none;
343
- color: var(--highlight-color-invalid);
344
- }
345
-
346
- .select-bottom .helper-text {
347
- display: block;
348
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
349
- }
350
-
351
- :host(.ion-touched.ion-invalid) .select-bottom .error-text {
352
- display: block;
353
- }
354
-
355
- :host(.ion-touched.ion-invalid) .select-bottom .helper-text {
356
- display: none;
357
- }
358
-
359
302
  .label-text-wrapper {
360
303
  /**
361
304
  * This causes the label to take up
@@ -825,10 +768,6 @@ button {
825
768
  --border-color: var(--highlight-color);
826
769
  }
827
770
 
828
- /**
829
- * The bottom content should never have
830
- * a border with the solid style.
831
- */
832
771
  :host(.select-fill-solid) .select-bottom {
833
772
  border-top: none;
834
773
  }
@@ -373,7 +373,6 @@
373
373
  justify-content: space-between;
374
374
  border-top: var(--border-width) var(--border-style) var(--border-color);
375
375
  font-size: 0.75rem;
376
- white-space: normal;
377
376
  }
378
377
 
379
378
  /**
@@ -397,7 +396,7 @@
397
396
 
398
397
  .textarea-bottom .helper-text {
399
398
  display: block;
400
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
399
+ color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
401
400
  }
402
401
 
403
402
  :host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
@@ -416,7 +415,7 @@
416
415
  */
417
416
  -webkit-margin-start: auto;
418
417
  margin-inline-start: auto;
419
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
418
+ color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
420
419
  white-space: nowrap;
421
420
  padding-inline-start: 16px;
422
421
  }
@@ -373,7 +373,6 @@
373
373
  justify-content: space-between;
374
374
  border-top: var(--border-width) var(--border-style) var(--border-color);
375
375
  font-size: 0.75rem;
376
- white-space: normal;
377
376
  }
378
377
 
379
378
  /**
@@ -397,7 +396,7 @@
397
396
 
398
397
  .textarea-bottom .helper-text {
399
398
  display: block;
400
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
399
+ color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
401
400
  }
402
401
 
403
402
  :host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
@@ -416,7 +415,7 @@
416
415
  */
417
416
  -webkit-margin-start: auto;
418
417
  margin-inline-start: auto;
419
- color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
418
+ color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
420
419
  white-space: nowrap;
421
420
  padding-inline-start: 16px;
422
421
  }
@@ -929,10 +928,6 @@
929
928
  --border-color: var(--highlight-color);
930
929
  }
931
930
 
932
- /**
933
- * The bottom content should never have
934
- * a border with the solid style.
935
- */
936
931
  :host(.textarea-fill-solid) .textarea-bottom {
937
932
  border-top: none;
938
933
  }
@@ -71,7 +71,6 @@ export class Toggle {
71
71
  this.labelPlacement = 'start';
72
72
  this.justify = undefined;
73
73
  this.alignment = undefined;
74
- this.required = false;
75
74
  }
76
75
  disabledChanged() {
77
76
  if (this.gesture) {
@@ -153,12 +152,12 @@ export class Toggle {
153
152
  return this.el.textContent !== '';
154
153
  }
155
154
  render() {
156
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
155
+ const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
157
156
  const mode = getIonMode(this);
158
157
  const value = this.getValue();
159
158
  const rtl = isRTL(el) ? 'rtl' : 'ltr';
160
159
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
161
- return (h(Host, { key: 'ed75573caa6e37011f1453dd7f723fb9bd8a3656', onClick: this.onClick, class: createColorClasses(color, {
160
+ return (h(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses(color, {
162
161
  [mode]: true,
163
162
  'in-item': hostContext('ion-item', el),
164
163
  'toggle-activated': activated,
@@ -168,10 +167,10 @@ export class Toggle {
168
167
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
169
168
  [`toggle-label-placement-${labelPlacement}`]: true,
170
169
  [`toggle-${rtl}`]: true,
171
- }) }, h("label", { key: '484860e2a33f4d123904edb96159f0e1972d3add', class: "toggle-wrapper" }, h("input", Object.assign({ key: '360b53080aacfd99a9ff60ffb5219816bd4163ee', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, this.inheritedAttributes)), h("div", { key: 'f7239fa668fe11257239ea30cf0198e4f3274f6b', class: {
170
+ }) }, h("label", { key: 'f8b3a215ad85b2cee611ad63449b584e1640f27f', class: "toggle-wrapper" }, h("input", Object.assign({ key: 'f387b1ea840737a9737917e516834c887be99c09', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, this.inheritedAttributes)), h("div", { key: '936af880db59fe377cd2de9101eb28a1c4fb8914', class: {
172
171
  'label-text-wrapper': true,
173
172
  'label-text-wrapper-hidden': !this.hasLabel,
174
- }, part: "label" }, h("slot", { key: '9495a4a39889822ee68e0d89dc5a2f863d1feb3c' })), h("div", { key: '55f1eb08c4b705e94fbcf02220bbe1d292f06155', class: "native-wrapper" }, this.renderToggleControl()))));
173
+ }, part: "label" }, h("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), h("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
175
174
  }
176
175
  static get is() { return "ion-toggle"; }
177
176
  static get encapsulation() { return "shadow"; }
@@ -353,24 +352,6 @@ export class Toggle {
353
352
  },
354
353
  "attribute": "alignment",
355
354
  "reflect": false
356
- },
357
- "required": {
358
- "type": "boolean",
359
- "mutable": false,
360
- "complexType": {
361
- "original": "boolean",
362
- "resolved": "boolean",
363
- "references": {}
364
- },
365
- "required": false,
366
- "optional": false,
367
- "docs": {
368
- "tags": [],
369
- "text": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid."
370
- },
371
- "attribute": "required",
372
- "reflect": false,
373
- "defaultValue": "false"
374
355
  }
375
356
  };
376
357
  }
@@ -12,10 +12,6 @@ import { getIonMode } from "../../global/ionic-global";
12
12
  * @slot secondary - Content is placed to the left of the toolbar text in `ios` mode, and directly to the right in `md` mode.
13
13
  * @slot primary - Content is placed to the right of the toolbar text in `ios` mode, and to the far right in `md` mode.
14
14
  * @slot end - Content is placed to the right of the toolbar text in LTR, and to the left in RTL.
15
- *
16
- * @part background - The background of the toolbar, covering the entire area behind the toolbar content.
17
- * @part container - The container that wraps all toolbar content, including the default slot and named slot content.
18
- * @part content - The container for the default slot, wrapping content provided without a named slot.
19
15
  */
20
16
  export class Toolbar {
21
17
  constructor() {
@@ -66,10 +62,10 @@ export class Toolbar {
66
62
  this.childrenStyles.forEach((value) => {
67
63
  Object.assign(childStyles, value);
68
64
  });
69
- return (h(Host, { key: '4fdc9ae82a93237cc28ceb95b0ebd8069b62839d', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
65
+ return (h(Host, { key: '462538a5ecd01baf3cde116c9f029aeda26c81be', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
70
66
  [mode]: true,
71
67
  'in-toolbar': hostContext('ion-toolbar', this.el),
72
- })) }, h("div", { key: '443a216362bbbf1c149ed12140d52b0f0ea2d664', class: "toolbar-background", part: "background" }), h("div", { key: '1df87f4027d605e42757a13d4828df45b90a4fdc', class: "toolbar-container", part: "container" }, h("slot", { key: 'f66f34972be8e3f4915b9c6f5808600dbaedb1ea', name: "start" }), h("slot", { key: '14f38b0975e956f404c4eb3ee56f2055c6615276', name: "secondary" }), h("div", { key: '75ba5953a25c7544793484d2b245792cb0a5af75', class: "toolbar-content", part: "content" }, h("slot", { key: '149dfa58ff7106f318fecb4134e7c69edf8bc231' })), h("slot", { key: '807ab9ad21d7f1d9d427a4086460bcb9e5e8c019', name: "primary" }), h("slot", { key: 'bd2f9da95d2fa8e74dc6e0666587ceecbba99d9f', name: "end" }))));
68
+ })) }, h("div", { key: 'c0b4415d3b2472de643a9be7cb3b13b3b628621b', class: "toolbar-background" }), h("div", { key: '0ccb8a2dbeaa28d8f9bed87629c0c097446690c2', class: "toolbar-container" }, h("slot", { key: '3e726dac359e923df21d80301651f16063a3de20', name: "start" }), h("slot", { key: 'cd799330b56a7f8833bc61bb2807aafb21846f71', name: "secondary" }), h("div", { key: '395282e6ac8c53576922dcdb5f08c25d34638c86', class: "toolbar-content" }, h("slot", { key: 'a437c60e4ba5aae65e55169ae82a6f379868ec1d' })), h("slot", { key: '711af9b9d321a7b31ede924c9bdcad767aa9a1ca', name: "primary" }), h("slot", { key: 'ecc02edeaf80a837890bcb08d5096df1e22a0b9a', name: "end" }))));
73
69
  }
74
70
  static get is() { return "ion-toolbar"; }
75
71
  static get encapsulation() { return "shadow"; }
@@ -1,7 +1,10 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ import { isSafeNumber } from "../helpers";
4
5
  export function getDecimalPlaces(n) {
6
+ if (!isSafeNumber(n))
7
+ return 0;
5
8
  if (n % 1 === 0)
6
9
  return 0;
7
10
  return n.toString().split('.')[1].length;
@@ -39,6 +42,8 @@ export function getDecimalPlaces(n) {
39
42
  * be used as a reference for the desired specificity.
40
43
  */
41
44
  export function roundToMaxDecimalPlaces(n, ...references) {
45
+ if (!isSafeNumber(n))
46
+ return 0;
42
47
  const maxPlaces = Math.max(...references.map((r) => getDecimalPlaces(r)));
43
48
  return Number(n.toFixed(maxPlaces));
44
49
  }
@@ -374,3 +374,9 @@ export const getNextSiblingOfType = (element) => {
374
374
  }
375
375
  return null;
376
376
  };
377
+ /**
378
+ * Checks input for usable number. Not NaN and not Infinite.
379
+ */
380
+ export const isSafeNumber = (input) => {
381
+ return typeof input === 'number' && !isNaN(input) && isFinite(input);
382
+ };
@@ -1,7 +1,6 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import { config } from "../../global/config";
5
4
  /**
6
5
  * Logs a warning to the console with an Ionic prefix
7
6
  * to indicate the library that is warning the developer.
@@ -9,12 +8,9 @@ import { config } from "../../global/config";
9
8
  * @param message - The string message to be logged to the console.
10
9
  */
11
10
  export const printIonWarning = (message, ...params) => {
12
- const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
13
- if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
14
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
15
- }
11
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
16
12
  };
17
- /**
13
+ /*
18
14
  * Logs an error to the console with an Ionic prefix
19
15
  * to indicate the library that is warning the developer.
20
16
  *
@@ -22,10 +18,7 @@ export const printIonWarning = (message, ...params) => {
22
18
  * @param params - Additional arguments to supply to the console.error.
23
19
  */
24
20
  export const printIonError = (message, ...params) => {
25
- const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
26
- if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
27
- return console.error(`[Ionic Error]: ${message}`, ...params);
28
- }
21
+ return console.error(`[Ionic Error]: ${message}`, ...params);
29
22
  };
30
23
  /**
31
24
  * Prints an error informing developers that an implementation requires an element to be used
@@ -67,7 +67,8 @@ const isHybrid = (win) => isCordova(win) || isCapacitorNative(win);
67
67
  const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
68
68
  const isCapacitorNative = (win) => {
69
69
  const capacitor = win['Capacitor'];
70
- return !!(capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNative);
70
+ // TODO(ROU-11693): Remove when we no longer support Capacitor 2, which does not have isNativePlatform
71
+ return !!((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNative) || ((capacitor === null || capacitor === void 0 ? void 0 : capacitor.isNativePlatform) && !!capacitor.isNativePlatform()));
71
72
  };
72
73
  const isElectron = (win) => testUserAgent(win, /electron/i);
73
74
  const isPWA = (win) => { var _a; return !!(((_a = win.matchMedia) === null || _a === void 0 ? void 0 : _a.call(win, '(display-mode: standalone)').matches) || win.navigator.standalone); };
@@ -28,7 +28,7 @@ export const PlatformConfiguration = {
28
28
  },
29
29
  Capacitor: {
30
30
  Capacitor: {
31
- isNative: true,
31
+ isNativePlatform: () => true,
32
32
  },
33
33
  },
34
34
  PWA: {