voyager-ionic-core 8.4.1 → 8.5.0

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 (608) hide show
  1. package/components/alert.js +30 -4
  2. package/components/checkbox.js +40 -6
  3. package/components/helpers.js +17 -29
  4. package/components/index6.js +11 -3
  5. package/components/index9.js +1 -1
  6. package/components/ion-input.js +22 -9
  7. package/components/ion-item-divider.js +2 -2
  8. package/components/ion-item-group.js +1 -1
  9. package/components/ion-item-option.js +2 -2
  10. package/components/ion-item-options.js +1 -1
  11. package/components/ion-item-sliding.js +1 -1
  12. package/components/ion-loading.js +2 -2
  13. package/components/ion-menu-button.js +2 -2
  14. package/components/ion-menu-toggle.js +2 -2
  15. package/components/ion-menu.js +2 -2
  16. package/components/ion-nav-link.js +1 -1
  17. package/components/ion-nav.js +1 -1
  18. package/components/ion-note.js +2 -2
  19. package/components/ion-picker-legacy.js +2 -2
  20. package/components/ion-progress-bar.js +1 -1
  21. package/components/ion-range.js +28 -6
  22. package/components/ion-refresher-content.js +1 -1
  23. package/components/ion-refresher.js +1 -1
  24. package/components/ion-reorder-group.js +1 -1
  25. package/components/ion-reorder.js +1 -1
  26. package/components/ion-router-link.js +2 -2
  27. package/components/ion-router-outlet.js +1 -1
  28. package/components/ion-router.js +1 -1
  29. package/components/ion-row.js +1 -1
  30. package/components/ion-searchbar.js +4 -4
  31. package/components/ion-segment-button.js +40 -9
  32. package/components/ion-segment-content.js +1 -1
  33. package/components/ion-segment-view.js +2 -2
  34. package/components/ion-segment.js +3 -2
  35. package/components/ion-select-option.js +1 -1
  36. package/components/ion-select.js +87 -16
  37. package/components/ion-skeleton-text.js +2 -2
  38. package/components/ion-split-pane.js +2 -2
  39. package/components/ion-tab-bar.js +2 -2
  40. package/components/ion-tab-button.js +2 -2
  41. package/components/ion-tab.js +2 -2
  42. package/components/ion-tabs.js +1 -1
  43. package/components/ion-text.js +2 -2
  44. package/components/ion-textarea.js +21 -8
  45. package/components/ion-thumbnail.js +1 -1
  46. package/components/ion-toast.js +2 -2
  47. package/components/ion-toggle.js +41 -6
  48. package/components/ionic-global.js +3 -13
  49. package/components/label.js +2 -2
  50. package/components/list-header.js +2 -2
  51. package/components/modal.js +267 -35
  52. package/components/picker-column-option.js +2 -2
  53. package/components/picker-column2.js +2 -2
  54. package/components/popover.js +2 -2
  55. package/components/radio-group.js +39 -2
  56. package/components/radio.js +3 -3
  57. package/components/ripple-effect.js +1 -1
  58. package/components/select-modal.js +3 -3
  59. package/components/select-popover.js +1 -1
  60. package/components/spinner.js +1 -1
  61. package/components/title.js +2 -2
  62. package/components/toolbar.js +2 -2
  63. package/css/core.css.map +1 -1
  64. package/css/ionic.bundle.css.map +1 -1
  65. package/dist/cjs/{app-globals-21afee77.js → app-globals-dd592863.js} +1 -1
  66. package/dist/cjs/{button-active-3f2f60b4.js → button-active-43e2b419.js} +1 -1
  67. package/dist/cjs/{data-21dc0f81.js → data-27cc2c9c.js} +1 -1
  68. package/dist/cjs/{framework-delegate-55f5683a.js → framework-delegate-11b0ba2f.js} +1 -1
  69. package/dist/cjs/{hardware-back-button-9e8a2c4f.js → hardware-back-button-5a99001f.js} +2 -2
  70. package/dist/cjs/{helpers-afaa9001.js → helpers-d0dfbb50.js} +18 -28
  71. package/dist/cjs/{index-73f75efb.js → index-2e236a04.js} +0 -4
  72. package/dist/cjs/{index-9509ecad.js → index-363fe6b2.js} +1 -1
  73. package/dist/cjs/{index-5915f9b3.js → index-48b2a28e.js} +11 -3
  74. package/dist/cjs/{index-5b6a7459.js → index-9b945a2d.js} +2 -2
  75. package/dist/cjs/{index-f05acd21.js → index-f68a486a.js} +6 -6
  76. package/dist/cjs/{index-8e789962.js → index-fd6383b6.js} +4 -4
  77. package/dist/cjs/index.cjs.js +11 -11
  78. package/dist/cjs/{input-shims-9e59ef62.js → input-shims-2d27a5be.js} +5 -3
  79. package/dist/cjs/{input.utils-611cde0b.js → input.utils-2f642324.js} +2 -2
  80. package/dist/cjs/ion-accordion_2.cjs.entry.js +4 -4
  81. package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -8
  82. package/dist/cjs/ion-alert.cjs.entry.js +38 -12
  83. package/dist/cjs/ion-app_8.cjs.entry.js +18 -18
  84. package/dist/cjs/ion-avatar_3.cjs.entry.js +3 -3
  85. package/dist/cjs/ion-back-button.cjs.entry.js +3 -3
  86. package/dist/cjs/ion-backdrop.cjs.entry.js +2 -2
  87. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +3 -3
  88. package/dist/cjs/ion-button_2.cjs.entry.js +4 -4
  89. package/dist/cjs/ion-card_5.cjs.entry.js +3 -3
  90. package/dist/cjs/ion-checkbox.cjs.entry.js +40 -9
  91. package/dist/cjs/ion-chip.cjs.entry.js +2 -2
  92. package/dist/cjs/ion-col_3.cjs.entry.js +3 -3
  93. package/dist/cjs/ion-datetime-button.cjs.entry.js +5 -5
  94. package/dist/cjs/ion-datetime_3.cjs.entry.js +12 -12
  95. package/dist/cjs/ion-fab_3.cjs.entry.js +3 -3
  96. package/dist/cjs/ion-img.cjs.entry.js +3 -3
  97. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +5 -5
  98. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +3 -3
  99. package/dist/cjs/ion-input.cjs.entry.js +25 -13
  100. package/dist/cjs/ion-item-option_3.cjs.entry.js +9 -9
  101. package/dist/cjs/ion-item_8.cjs.entry.js +14 -14
  102. package/dist/cjs/ion-loading.cjs.entry.js +9 -9
  103. package/dist/cjs/ion-menu_3.cjs.entry.js +14 -14
  104. package/dist/cjs/ion-modal.cjs.entry.js +275 -44
  105. package/dist/cjs/ion-nav_2.cjs.entry.js +9 -9
  106. package/dist/cjs/ion-picker-column-option.cjs.entry.js +5 -5
  107. package/dist/cjs/ion-picker-column.cjs.entry.js +3 -3
  108. package/dist/cjs/ion-picker.cjs.entry.js +2 -2
  109. package/dist/cjs/ion-popover.cjs.entry.js +10 -10
  110. package/dist/cjs/ion-progress-bar.cjs.entry.js +4 -4
  111. package/dist/cjs/ion-radio_2.cjs.entry.js +42 -7
  112. package/dist/cjs/ion-range.cjs.entry.js +31 -10
  113. package/dist/cjs/ion-refresher_2.cjs.entry.js +7 -7
  114. package/dist/cjs/ion-reorder_2.cjs.entry.js +7 -7
  115. package/dist/cjs/ion-ripple-effect.cjs.entry.js +3 -3
  116. package/dist/cjs/ion-route_4.cjs.entry.js +5 -5
  117. package/dist/cjs/ion-searchbar.cjs.entry.js +7 -7
  118. package/dist/cjs/ion-segment-content.cjs.entry.js +2 -2
  119. package/dist/cjs/ion-segment-view.cjs.entry.js +3 -3
  120. package/dist/cjs/ion-segment_2.cjs.entry.js +45 -13
  121. package/dist/cjs/ion-select-modal.cjs.entry.js +10 -10
  122. package/dist/cjs/ion-select_3.cjs.entry.js +93 -25
  123. package/dist/cjs/ion-spinner.cjs.entry.js +3 -3
  124. package/dist/cjs/ion-split-pane.cjs.entry.js +4 -4
  125. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +7 -7
  126. package/dist/cjs/ion-tab_2.cjs.entry.js +6 -6
  127. package/dist/cjs/ion-text.cjs.entry.js +4 -4
  128. package/dist/cjs/ion-textarea.cjs.entry.js +24 -12
  129. package/dist/cjs/ion-toast.cjs.entry.js +9 -9
  130. package/dist/cjs/ion-toggle.cjs.entry.js +41 -9
  131. package/dist/cjs/{ionic-global-d9a8bb5b.js → ionic-global-acb665ad.js} +3 -13
  132. package/dist/cjs/ionic.cjs.js +4 -4
  133. package/dist/cjs/{ios.transition-cf40433b.js → ios.transition-f970164c.js} +5 -5
  134. package/dist/cjs/loader.cjs.js +4 -4
  135. package/dist/cjs/{md.transition-ededf99f.js → md.transition-aa8820dd.js} +5 -5
  136. package/dist/cjs/{notch-controller-d69150f5.js → notch-controller-58d2e557.js} +1 -1
  137. package/dist/cjs/{overlays-aa669eb8.js → overlays-737576a2.js} +5 -5
  138. package/dist/cjs/{status-tap-37681226.js → status-tap-08d1ac81.js} +5 -4
  139. package/dist/cjs/{swipe-back-f38a434a.js → swipe-back-5c0003bd.js} +1 -1
  140. package/dist/collection/components/alert/alert.js +34 -4
  141. package/dist/collection/components/checkbox/checkbox.ios.css +52 -15
  142. package/dist/collection/components/checkbox/checkbox.js +90 -4
  143. package/dist/collection/components/checkbox/checkbox.md.css +52 -15
  144. package/dist/collection/components/input/input.ios.css +3 -2
  145. package/dist/collection/components/input/input.js +18 -4
  146. package/dist/collection/components/input/input.md.css +7 -2
  147. package/dist/collection/components/item-divider/item-divider.js +2 -2
  148. package/dist/collection/components/item-group/item-group.js +1 -1
  149. package/dist/collection/components/item-option/item-option.js +2 -2
  150. package/dist/collection/components/item-options/item-options.js +1 -1
  151. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  152. package/dist/collection/components/label/label.js +2 -2
  153. package/dist/collection/components/list-header/list-header.js +2 -2
  154. package/dist/collection/components/loading/loading.js +2 -2
  155. package/dist/collection/components/menu/menu.js +2 -2
  156. package/dist/collection/components/menu-button/menu-button.js +2 -2
  157. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  158. package/dist/collection/components/modal/animations/ios.enter.js +50 -4
  159. package/dist/collection/components/modal/animations/ios.leave.js +24 -2
  160. package/dist/collection/components/modal/animations/md.enter.js +52 -5
  161. package/dist/collection/components/modal/animations/md.leave.js +26 -3
  162. package/dist/collection/components/modal/animations/sheet.js +11 -2
  163. package/dist/collection/components/modal/gestures/sheet.js +87 -10
  164. package/dist/collection/components/modal/modal.ios.css +16 -0
  165. package/dist/collection/components/modal/modal.js +32 -7
  166. package/dist/collection/components/modal/modal.md.css +6 -0
  167. package/dist/collection/components/nav/nav.js +1 -1
  168. package/dist/collection/components/nav-link/nav-link.js +1 -1
  169. package/dist/collection/components/note/note.js +2 -2
  170. package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
  171. package/dist/collection/components/picker-legacy/picker.js +2 -2
  172. package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
  173. package/dist/collection/components/popover/popover.js +2 -2
  174. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  175. package/dist/collection/components/radio/radio.js +3 -3
  176. package/dist/collection/components/radio-group/radio-group.ios.css +205 -0
  177. package/dist/collection/components/radio-group/radio-group.js +72 -1
  178. package/dist/collection/components/radio-group/radio-group.md.css +205 -0
  179. package/dist/collection/components/range/range.js +25 -6
  180. package/dist/collection/components/refresher/refresher.js +1 -1
  181. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  182. package/dist/collection/components/reorder/reorder.js +1 -1
  183. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  184. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  185. package/dist/collection/components/router-link/router-link.js +2 -2
  186. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  187. package/dist/collection/components/row/row.js +1 -1
  188. package/dist/collection/components/searchbar/searchbar.js +4 -4
  189. package/dist/collection/components/segment/segment.js +3 -2
  190. package/dist/collection/components/segment-button/segment-button.js +40 -9
  191. package/dist/collection/components/segment-content/segment-content.js +1 -1
  192. package/dist/collection/components/segment-view/segment-view.js +2 -2
  193. package/dist/collection/components/select/select.ios.css +59 -0
  194. package/dist/collection/components/select/select.js +136 -13
  195. package/dist/collection/components/select/select.md.css +61 -0
  196. package/dist/collection/components/select-modal/select-modal.ios.css +186 -0
  197. package/dist/collection/components/select-modal/select-modal.js +2 -2
  198. package/dist/collection/components/select-option/select-option.js +1 -1
  199. package/dist/collection/components/select-popover/select-popover.js +1 -1
  200. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  201. package/dist/collection/components/spinner/spinner.js +1 -1
  202. package/dist/collection/components/split-pane/split-pane.js +2 -2
  203. package/dist/collection/components/tab/tab.js +2 -2
  204. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  205. package/dist/collection/components/tab-button/tab-button.js +2 -2
  206. package/dist/collection/components/tabs/tabs.js +1 -1
  207. package/dist/collection/components/text/text.js +2 -2
  208. package/dist/collection/components/textarea/textarea.ios.css +3 -2
  209. package/dist/collection/components/textarea/textarea.js +17 -3
  210. package/dist/collection/components/textarea/textarea.md.css +7 -2
  211. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  212. package/dist/collection/components/title/title.js +2 -2
  213. package/dist/collection/components/toast/toast.js +2 -2
  214. package/dist/collection/components/toggle/toggle.ios.css +52 -15
  215. package/dist/collection/components/toggle/toggle.js +91 -4
  216. package/dist/collection/components/toggle/toggle.md.css +52 -15
  217. package/dist/collection/components/toolbar/toolbar.js +6 -2
  218. package/dist/collection/global/ionic-global.js +1 -12
  219. package/dist/collection/utils/floating-point/index.js +5 -0
  220. package/dist/collection/utils/helpers.js +16 -28
  221. package/dist/collection/utils/logging/index.js +10 -3
  222. package/dist/collection/utils/platform.js +2 -1
  223. package/dist/collection/utils/test/platform.utils.js +1 -1
  224. package/dist/docs.json +383 -2
  225. package/dist/esm/{app-globals-5dbb61a5.js → app-globals-7b6cbf1a.js} +1 -1
  226. package/dist/esm/{button-active-f6503382.js → button-active-90f1dbc4.js} +1 -1
  227. package/dist/esm/{data-ae11fd43.js → data-174ad5e0.js} +1 -1
  228. package/dist/esm/{framework-delegate-63d1a679.js → framework-delegate-c7d92b77.js} +1 -1
  229. package/dist/esm/{hardware-back-button-06ef3c3e.js → hardware-back-button-864101a3.js} +2 -2
  230. package/dist/esm/{helpers-da915de8.js → helpers-e48b0397.js} +17 -29
  231. package/dist/esm/{index-28849c61.js → index-527b9e34.js} +1 -4
  232. package/dist/esm/{index-9b0d46f4.js → index-738d7504.js} +11 -3
  233. package/dist/esm/{index-79b30591.js → index-8222b29f.js} +1 -1
  234. package/dist/esm/{index-5cc724f3.js → index-933ca126.js} +2 -2
  235. package/dist/esm/{index-3ad7f18b.js → index-a313df53.js} +6 -6
  236. package/dist/esm/{index-24b48b06.js → index-c63afbe6.js} +4 -4
  237. package/dist/esm/index.js +11 -11
  238. package/dist/esm/{input-shims-0314bbe5.js → input-shims-3070628a.js} +5 -3
  239. package/dist/esm/{input.utils-09c71bc7.js → input.utils-926c04a8.js} +2 -2
  240. package/dist/esm/ion-accordion_2.entry.js +4 -4
  241. package/dist/esm/ion-action-sheet.entry.js +8 -8
  242. package/dist/esm/ion-alert.entry.js +38 -12
  243. package/dist/esm/ion-app_8.entry.js +18 -18
  244. package/dist/esm/ion-avatar_3.entry.js +3 -3
  245. package/dist/esm/ion-back-button.entry.js +3 -3
  246. package/dist/esm/ion-backdrop.entry.js +2 -2
  247. package/dist/esm/ion-breadcrumb_2.entry.js +3 -3
  248. package/dist/esm/ion-button_2.entry.js +4 -4
  249. package/dist/esm/ion-card_5.entry.js +3 -3
  250. package/dist/esm/ion-checkbox.entry.js +40 -9
  251. package/dist/esm/ion-chip.entry.js +2 -2
  252. package/dist/esm/ion-col_3.entry.js +3 -3
  253. package/dist/esm/ion-datetime-button.entry.js +5 -5
  254. package/dist/esm/ion-datetime_3.entry.js +12 -12
  255. package/dist/esm/ion-fab_3.entry.js +3 -3
  256. package/dist/esm/ion-img.entry.js +3 -3
  257. package/dist/esm/ion-infinite-scroll_2.entry.js +5 -5
  258. package/dist/esm/ion-input-password-toggle.entry.js +3 -3
  259. package/dist/esm/ion-input.entry.js +25 -13
  260. package/dist/esm/ion-item-option_3.entry.js +9 -9
  261. package/dist/esm/ion-item_8.entry.js +14 -14
  262. package/dist/esm/ion-loading.entry.js +9 -9
  263. package/dist/esm/ion-menu_3.entry.js +14 -14
  264. package/dist/esm/ion-modal.entry.js +275 -44
  265. package/dist/esm/ion-nav_2.entry.js +9 -9
  266. package/dist/esm/ion-picker-column-option.entry.js +5 -5
  267. package/dist/esm/ion-picker-column.entry.js +3 -3
  268. package/dist/esm/ion-picker.entry.js +2 -2
  269. package/dist/esm/ion-popover.entry.js +10 -10
  270. package/dist/esm/ion-progress-bar.entry.js +4 -4
  271. package/dist/esm/ion-radio_2.entry.js +42 -7
  272. package/dist/esm/ion-range.entry.js +31 -10
  273. package/dist/esm/ion-refresher_2.entry.js +7 -7
  274. package/dist/esm/ion-reorder_2.entry.js +7 -7
  275. package/dist/esm/ion-ripple-effect.entry.js +3 -3
  276. package/dist/esm/ion-route_4.entry.js +5 -5
  277. package/dist/esm/ion-searchbar.entry.js +7 -7
  278. package/dist/esm/ion-segment-content.entry.js +2 -2
  279. package/dist/esm/ion-segment-view.entry.js +3 -3
  280. package/dist/esm/ion-segment_2.entry.js +45 -13
  281. package/dist/esm/ion-select-modal.entry.js +10 -10
  282. package/dist/esm/ion-select_3.entry.js +93 -25
  283. package/dist/esm/ion-spinner.entry.js +3 -3
  284. package/dist/esm/ion-split-pane.entry.js +4 -4
  285. package/dist/esm/ion-tab-bar_2.entry.js +7 -7
  286. package/dist/esm/ion-tab_2.entry.js +6 -6
  287. package/dist/esm/ion-text.entry.js +4 -4
  288. package/dist/esm/ion-textarea.entry.js +24 -12
  289. package/dist/esm/ion-toast.entry.js +9 -9
  290. package/dist/esm/ion-toggle.entry.js +41 -9
  291. package/dist/esm/{ionic-global-c81d82ab.js → ionic-global-ca86cf32.js} +3 -13
  292. package/dist/esm/ionic.js +5 -5
  293. package/dist/esm/{ios.transition-4ee1a3af.js → ios.transition-5fe4d6c8.js} +5 -5
  294. package/dist/esm/loader.js +5 -5
  295. package/dist/esm/{md.transition-5106a0d2.js → md.transition-3d0d3730.js} +5 -5
  296. package/dist/esm/{notch-controller-55b09e11.js → notch-controller-381a5334.js} +1 -1
  297. package/dist/esm/{overlays-e7b9d6d9.js → overlays-7579a420.js} +5 -5
  298. package/dist/esm/{status-tap-f472b09f.js → status-tap-6367b913.js} +5 -4
  299. package/dist/esm/{swipe-back-b613d7db.js → swipe-back-326faa1c.js} +1 -1
  300. package/dist/esm-es5/app-globals-7b6cbf1a.js +4 -0
  301. package/dist/esm-es5/{button-active-f6503382.js → button-active-90f1dbc4.js} +1 -1
  302. package/dist/esm-es5/{data-ae11fd43.js → data-174ad5e0.js} +1 -1
  303. package/dist/esm-es5/{framework-delegate-63d1a679.js → framework-delegate-c7d92b77.js} +1 -1
  304. package/dist/esm-es5/{hardware-back-button-06ef3c3e.js → hardware-back-button-864101a3.js} +1 -1
  305. package/dist/esm-es5/helpers-e48b0397.js +4 -0
  306. package/dist/esm-es5/index-527b9e34.js +5 -0
  307. package/dist/esm-es5/index-738d7504.js +4 -0
  308. package/dist/esm-es5/{index-79b30591.js → index-8222b29f.js} +1 -1
  309. package/dist/esm-es5/{index-5cc724f3.js → index-933ca126.js} +1 -1
  310. package/dist/esm-es5/{index-3ad7f18b.js → index-a313df53.js} +1 -1
  311. package/dist/esm-es5/{index-24b48b06.js → index-c63afbe6.js} +1 -1
  312. package/dist/esm-es5/index.js +1 -1
  313. package/dist/esm-es5/input-shims-3070628a.js +4 -0
  314. package/dist/esm-es5/{input.utils-09c71bc7.js → input.utils-926c04a8.js} +1 -1
  315. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  316. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  317. package/dist/esm-es5/ion-alert.entry.js +1 -1
  318. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  319. package/dist/esm-es5/ion-avatar_3.entry.js +1 -1
  320. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  321. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  322. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  323. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  324. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  325. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  326. package/dist/esm-es5/ion-chip.entry.js +1 -1
  327. package/dist/esm-es5/ion-col_3.entry.js +1 -1
  328. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  329. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  330. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  331. package/dist/esm-es5/ion-img.entry.js +1 -1
  332. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  333. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  334. package/dist/esm-es5/ion-input.entry.js +1 -1
  335. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  336. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  337. package/dist/esm-es5/ion-loading.entry.js +1 -1
  338. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  339. package/dist/esm-es5/ion-modal.entry.js +1 -1
  340. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  341. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  342. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  343. package/dist/esm-es5/ion-picker.entry.js +1 -1
  344. package/dist/esm-es5/ion-popover.entry.js +1 -1
  345. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  346. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  347. package/dist/esm-es5/ion-range.entry.js +1 -1
  348. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  349. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  350. package/dist/esm-es5/ion-ripple-effect.entry.js +1 -1
  351. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  352. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  353. package/dist/esm-es5/ion-segment-content.entry.js +1 -1
  354. package/dist/esm-es5/ion-segment-view.entry.js +1 -1
  355. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  356. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  357. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  358. package/dist/esm-es5/ion-spinner.entry.js +1 -1
  359. package/dist/esm-es5/ion-split-pane.entry.js +1 -1
  360. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  361. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  362. package/dist/esm-es5/ion-text.entry.js +1 -1
  363. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  364. package/dist/esm-es5/ion-toast.entry.js +1 -1
  365. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  366. package/dist/esm-es5/ionic-global-ca86cf32.js +4 -0
  367. package/dist/esm-es5/ionic.js +1 -1
  368. package/dist/esm-es5/{ios.transition-4ee1a3af.js → ios.transition-5fe4d6c8.js} +1 -1
  369. package/dist/esm-es5/loader.js +1 -1
  370. package/dist/esm-es5/md.transition-3d0d3730.js +4 -0
  371. package/dist/esm-es5/{notch-controller-55b09e11.js → notch-controller-381a5334.js} +1 -1
  372. package/dist/esm-es5/{overlays-e7b9d6d9.js → overlays-7579a420.js} +1 -1
  373. package/dist/esm-es5/status-tap-6367b913.js +4 -0
  374. package/dist/esm-es5/{swipe-back-b613d7db.js → swipe-back-326faa1c.js} +1 -1
  375. package/dist/html.html-data.json +48 -0
  376. package/dist/ionic/index.esm.js +1 -1
  377. package/dist/ionic/ionic.esm.js +1 -1
  378. package/dist/ionic/ionic.js +1 -1
  379. package/dist/ionic/{p-58d5df0c.system.entry.js → p-023e8017.system.entry.js} +1 -1
  380. package/dist/ionic/{p-f9a53abb.system.js → p-042d5353.system.js} +1 -1
  381. package/dist/ionic/p-060e4551.js +4 -0
  382. package/dist/ionic/p-0749768d.entry.js +4 -0
  383. package/dist/ionic/p-094c82d7.entry.js +4 -0
  384. package/dist/ionic/{p-7458862e.system.entry.js → p-0adb6909.system.entry.js} +1 -1
  385. package/dist/ionic/{p-508d024a.entry.js → p-0be8a0b5.entry.js} +1 -1
  386. package/dist/ionic/{p-2507278c.system.entry.js → p-0bedc891.system.entry.js} +2 -2
  387. package/dist/ionic/{p-63b0abde.system.entry.js → p-0c9b8240.system.entry.js} +1 -1
  388. package/dist/ionic/p-0ec5b7cf.system.js +4 -0
  389. package/dist/ionic/{p-7ed1657c.system.entry.js → p-1164ff6b.system.entry.js} +1 -1
  390. package/dist/ionic/p-13886789.entry.js +4 -0
  391. package/dist/ionic/p-143ff664.system.entry.js +4 -0
  392. package/dist/ionic/p-18f9b6d5.entry.js +4 -0
  393. package/dist/ionic/{p-62af944c.entry.js → p-19c32a76.entry.js} +1 -1
  394. package/dist/ionic/{p-e4f69534.system.entry.js → p-1a9613bf.system.entry.js} +1 -1
  395. package/dist/ionic/{p-f687573e.system.js → p-1bf5ec17.system.js} +1 -1
  396. package/dist/ionic/{p-5fce0c0b.system.entry.js → p-1c1d781d.system.entry.js} +1 -1
  397. package/dist/ionic/p-1d2844a5.system.entry.js +4 -0
  398. package/dist/ionic/p-1d98a7f1.entry.js +4 -0
  399. package/dist/ionic/p-1f837356.entry.js +4 -0
  400. package/dist/ionic/p-2027221d.js +4 -0
  401. package/dist/ionic/{p-69066a53.js → p-21891ead.js} +1 -1
  402. package/dist/ionic/{p-d743e981.js → p-22bc235f.js} +1 -1
  403. package/dist/ionic/{p-a4565eb5.system.js → p-24ae7b33.system.js} +1 -1
  404. package/dist/ionic/{p-184fbc9e.system.js → p-294271c7.system.js} +1 -1
  405. package/dist/ionic/p-297d6806.system.js +4 -0
  406. package/dist/ionic/p-29a5b4e4.entry.js +4 -0
  407. package/dist/ionic/{p-01186920.system.entry.js → p-2ab4a324.system.entry.js} +1 -1
  408. package/dist/ionic/{p-ffd131f9.system.entry.js → p-2b59470f.system.entry.js} +1 -1
  409. package/dist/ionic/{p-9e33104d.entry.js → p-2ee9a2c6.entry.js} +1 -1
  410. package/dist/ionic/p-2fa5a4b1.entry.js +4 -0
  411. package/dist/ionic/{p-e7ed4a7f.system.js → p-3479f51b.system.js} +1 -1
  412. package/dist/ionic/{p-afecb188.entry.js → p-35f14792.entry.js} +1 -1
  413. package/dist/ionic/{p-7ddc46c3.system.entry.js → p-37a438ad.system.entry.js} +2 -2
  414. package/dist/ionic/{p-937a7e21.entry.js → p-3af7b907.entry.js} +1 -1
  415. package/dist/ionic/{p-c449820c.system.js → p-3bd5fedc.system.js} +1 -1
  416. package/dist/ionic/{p-d18ab582.system.entry.js → p-3be7cdeb.system.entry.js} +2 -2
  417. package/dist/ionic/{p-a15ddedb.system.js → p-3e86b4fa.system.js} +1 -1
  418. package/dist/ionic/p-3f4327f7.js +4 -0
  419. package/dist/ionic/{p-982315a6.entry.js → p-42f6e75c.entry.js} +1 -1
  420. package/dist/ionic/{p-5823babc.system.entry.js → p-4470f87b.system.entry.js} +2 -2
  421. package/dist/ionic/p-4493c1ac.entry.js +4 -0
  422. package/dist/ionic/{p-8635f5e6.system.js → p-44e168f3.system.js} +1 -1
  423. package/dist/ionic/{p-c29f8157.system.entry.js → p-4630688e.system.entry.js} +1 -1
  424. package/dist/ionic/{p-98231c01.system.entry.js → p-472c7e08.system.entry.js} +1 -1
  425. package/dist/ionic/{p-2e46590d.system.entry.js → p-491de063.system.entry.js} +1 -1
  426. package/dist/ionic/{p-985a7e17.system.entry.js → p-49cb79a1.system.entry.js} +1 -1
  427. package/dist/ionic/{p-d6841eac.js → p-4c44d04c.js} +1 -1
  428. package/dist/ionic/p-4c94580e.js +4 -0
  429. package/dist/ionic/{p-1e010627.system.entry.js → p-4d0190ad.system.entry.js} +2 -2
  430. package/dist/ionic/{p-bb0db172.entry.js → p-50f38461.entry.js} +1 -1
  431. package/dist/ionic/{p-0c06e09b.system.js → p-51c363e7.system.js} +1 -1
  432. package/dist/ionic/{p-f1acf541.system.entry.js → p-524ad57e.system.entry.js} +1 -1
  433. package/dist/ionic/{p-a61cba41.entry.js → p-54893ae3.entry.js} +1 -1
  434. package/dist/ionic/p-54e9620f.js +4 -0
  435. package/dist/ionic/p-58c482af.entry.js +4 -0
  436. package/dist/ionic/p-597ff9af.js +4 -0
  437. package/dist/ionic/{p-5da94421.system.js → p-5eb6f582.system.js} +1 -1
  438. package/dist/ionic/{p-15e76dd1.entry.js → p-5f4ff20a.entry.js} +1 -1
  439. package/dist/ionic/{p-fbf284c7.entry.js → p-5f8cd560.entry.js} +1 -1
  440. package/dist/ionic/p-606887b7.system.entry.js +4 -0
  441. package/dist/ionic/{p-bdad26e3.entry.js → p-61e794fb.entry.js} +1 -1
  442. package/dist/ionic/p-66a5d6a8.js +5 -0
  443. package/dist/ionic/p-67163d4a.entry.js +4 -0
  444. package/dist/ionic/p-6797c66e.system.js +4 -0
  445. package/dist/ionic/p-6bb846d3.entry.js +4 -0
  446. package/dist/ionic/{p-d7aa6b00.entry.js → p-6e24cf82.entry.js} +1 -1
  447. package/dist/ionic/p-72e6a9c6.entry.js +4 -0
  448. package/dist/ionic/{p-5b932840.entry.js → p-747f9517.entry.js} +1 -1
  449. package/dist/ionic/{p-9ea607bd.system.js → p-77991411.system.js} +2 -2
  450. package/dist/ionic/{p-9f3008d4.system.js → p-7cc33a9a.system.js} +1 -1
  451. package/dist/ionic/{p-f3102647.system.entry.js → p-7e3b5638.system.entry.js} +1 -1
  452. package/dist/ionic/p-7f39653f.entry.js +4 -0
  453. package/dist/ionic/{p-98ff6b32.entry.js → p-7ff4f502.entry.js} +1 -1
  454. package/dist/ionic/p-81474833.system.entry.js +4 -0
  455. package/dist/ionic/{p-4439fc2a.entry.js → p-838cc359.entry.js} +1 -1
  456. package/dist/ionic/{p-52d7a191.entry.js → p-85f6070f.entry.js} +1 -1
  457. package/dist/ionic/{p-e4ee80be.system.entry.js → p-888d383b.system.entry.js} +1 -1
  458. package/dist/ionic/{p-da074ff7.entry.js → p-8b1c1fd7.entry.js} +1 -1
  459. package/dist/ionic/p-8deac7df.system.entry.js +4 -0
  460. package/dist/ionic/p-8fc426e2.entry.js +4 -0
  461. package/dist/ionic/p-959cf042.system.entry.js +4 -0
  462. package/dist/ionic/{p-17a9ca63.system.entry.js → p-96450929.system.entry.js} +2 -2
  463. package/dist/ionic/{p-19ea7bff.system.js → p-9a2ff5ea.system.js} +1 -1
  464. package/dist/ionic/p-9a5420dd.js +4 -0
  465. package/dist/ionic/{p-ecceeb90.js → p-9af7f110.js} +1 -1
  466. package/dist/ionic/{p-6d32975a.entry.js → p-9b069739.entry.js} +1 -1
  467. package/dist/ionic/{p-ca065903.system.entry.js → p-9df36075.system.entry.js} +1 -1
  468. package/dist/ionic/p-9e51f822.js +4 -0
  469. package/dist/ionic/{p-372ae7f4.system.js → p-a4866e3e.system.js} +1 -1
  470. package/dist/ionic/{p-95775830.entry.js → p-a520973b.entry.js} +1 -1
  471. package/dist/ionic/{p-17474161.system.js → p-a587b2ae.system.js} +1 -1
  472. package/dist/ionic/{p-cac0e0b3.system.entry.js → p-a63b345e.system.entry.js} +1 -1
  473. package/dist/ionic/{p-3c8e5c23.system.js → p-a6625de8.system.js} +1 -1
  474. package/dist/ionic/{p-6416c34c.system.entry.js → p-a6df5168.system.entry.js} +1 -1
  475. package/dist/ionic/p-a9f2c0a7.entry.js +4 -0
  476. package/dist/ionic/{p-73dc4950.entry.js → p-ab7337e1.entry.js} +1 -1
  477. package/dist/ionic/{p-ed75fcfb.system.entry.js → p-ac58d726.system.entry.js} +1 -1
  478. package/dist/ionic/p-ace2d2be.entry.js +4 -0
  479. package/dist/ionic/{p-efaffe74.entry.js → p-ada878ce.entry.js} +1 -1
  480. package/dist/ionic/p-b055d618.entry.js +4 -0
  481. package/dist/ionic/{p-2799c6d3.system.entry.js → p-b2296998.system.entry.js} +1 -1
  482. package/dist/ionic/{p-fca6ef5f.system.entry.js → p-b2ee0628.system.entry.js} +1 -1
  483. package/dist/ionic/{p-9fa07aec.entry.js → p-b6174297.entry.js} +1 -1
  484. package/dist/ionic/{p-c41ac815.entry.js → p-b85d199c.entry.js} +1 -1
  485. package/dist/ionic/p-b9ea58ef.js +4 -0
  486. package/dist/ionic/{p-14e159ea.system.entry.js → p-b9eb1465.system.entry.js} +1 -1
  487. package/dist/ionic/p-b9f2e353.entry.js +4 -0
  488. package/dist/ionic/p-bbc6db8c.entry.js +4 -0
  489. package/dist/ionic/p-bdd6102f.system.entry.js +4 -0
  490. package/dist/ionic/p-bf64af90.system.js +4 -0
  491. package/dist/ionic/p-bf77d6fa.entry.js +4 -0
  492. package/dist/ionic/{p-33a8a71b.entry.js → p-c005cc37.entry.js} +1 -1
  493. package/dist/ionic/{p-45693d7e.entry.js → p-c25c0ba4.entry.js} +1 -1
  494. package/dist/ionic/p-c5b5f44a.entry.js +4 -0
  495. package/dist/ionic/{p-2172893e.system.entry.js → p-c6a20407.system.entry.js} +1 -1
  496. package/dist/ionic/{p-1046866e.system.entry.js → p-c8331397.system.entry.js} +1 -1
  497. package/dist/ionic/{p-34b11c24.js → p-c8402249.js} +1 -1
  498. package/dist/ionic/p-c8bf9ba7.entry.js +4 -0
  499. package/dist/ionic/{p-72812e99.js → p-ceaea4ce.js} +1 -1
  500. package/dist/ionic/{p-1e67b266.system.entry.js → p-d37fdc68.system.entry.js} +1 -1
  501. package/dist/ionic/{p-0aa833fb.system.js → p-d7032956.system.js} +1 -1
  502. package/dist/ionic/p-d8c9d5ac.system.entry.js +4 -0
  503. package/dist/ionic/{p-2b838f86.system.entry.js → p-daf1e8ec.system.entry.js} +1 -1
  504. package/dist/ionic/{p-2bd0ae94.system.entry.js → p-def7a8bd.system.entry.js} +1 -1
  505. package/dist/ionic/p-e00b72ce.js +4 -0
  506. package/dist/ionic/{p-96cc4814.js → p-e0a05506.js} +1 -1
  507. package/dist/ionic/p-e0c0218f.system.entry.js +4 -0
  508. package/dist/ionic/{p-6499df44.system.entry.js → p-e0c43e11.system.entry.js} +1 -1
  509. package/dist/ionic/{p-2abae1cc.system.entry.js → p-e4683bfd.system.entry.js} +1 -1
  510. package/dist/ionic/{p-567de071.system.entry.js → p-e5708e5d.system.entry.js} +1 -1
  511. package/dist/ionic/{p-12a722b8.system.entry.js → p-e5c27d9f.system.entry.js} +1 -1
  512. package/dist/ionic/{p-06e58c4e.js → p-e7309bfa.js} +1 -1
  513. package/dist/ionic/p-ed768b77.entry.js +4 -0
  514. package/dist/ionic/p-eec4b772.entry.js +4 -0
  515. package/dist/ionic/p-eeee3990.system.entry.js +4 -0
  516. package/dist/ionic/p-efa0f3f5.entry.js +4 -0
  517. package/dist/ionic/p-f02e9382.system.entry.js +4 -0
  518. package/dist/ionic/p-f11a9436.system.js +5 -0
  519. package/dist/ionic/p-f201b53a.system.js +4 -0
  520. package/dist/ionic/{p-3cc276f4.js → p-f554845e.js} +1 -1
  521. package/dist/ionic/{p-424eb140.system.entry.js → p-f6bb9be7.system.entry.js} +1 -1
  522. package/dist/ionic/{p-d60342e3.js → p-f7ce606e.js} +1 -1
  523. package/dist/ionic/{p-1fe02220.system.entry.js → p-f94b2f2f.system.entry.js} +1 -1
  524. package/dist/ionic/{p-797eeea8.system.entry.js → p-ff4a1ba0.system.entry.js} +1 -1
  525. package/dist/types/components/checkbox/checkbox.d.ts +25 -0
  526. package/dist/types/components/input/input.d.ts +8 -0
  527. package/dist/types/components/modal/animations/sheet.d.ts +1 -0
  528. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  529. package/dist/types/components/modal/modal-interface.d.ts +1 -0
  530. package/dist/types/components/modal/modal.d.ts +14 -0
  531. package/dist/types/components/radio-group/radio-group.d.ts +15 -0
  532. package/dist/types/components/range/range.d.ts +3 -2
  533. package/dist/types/components/segment-button/segment-button.d.ts +2 -1
  534. package/dist/types/components/select/select.d.ts +29 -0
  535. package/dist/types/components/textarea/textarea.d.ts +8 -0
  536. package/dist/types/components/toggle/toggle.d.ts +25 -0
  537. package/dist/types/components/toolbar/toolbar.d.ts +4 -0
  538. package/dist/types/components.d.ts +96 -0
  539. package/dist/types/utils/config.d.ts +9 -3
  540. package/dist/types/utils/helpers.d.ts +5 -0
  541. package/dist/types/utils/logging/index.d.ts +13 -1
  542. package/dist/types/utils/native/capacitor.d.ts +7 -1
  543. package/dist/types/utils/test/platform.utils.d.ts +1 -1
  544. package/hydrate/index.js +723 -205
  545. package/hydrate/index.mjs +723 -205
  546. package/package.json +8 -8
  547. package/dist/esm-es5/app-globals-5dbb61a5.js +0 -4
  548. package/dist/esm-es5/helpers-da915de8.js +0 -4
  549. package/dist/esm-es5/index-28849c61.js +0 -5
  550. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  551. package/dist/esm-es5/input-shims-0314bbe5.js +0 -4
  552. package/dist/esm-es5/ionic-global-c81d82ab.js +0 -4
  553. package/dist/esm-es5/md.transition-5106a0d2.js +0 -4
  554. package/dist/esm-es5/status-tap-f472b09f.js +0 -4
  555. package/dist/ionic/p-0303d0f8.js +0 -4
  556. package/dist/ionic/p-04909654.entry.js +0 -4
  557. package/dist/ionic/p-0574e87e.js +0 -4
  558. package/dist/ionic/p-06fee233.js +0 -4
  559. package/dist/ionic/p-081a4ce4.entry.js +0 -4
  560. package/dist/ionic/p-12c45a7c.entry.js +0 -4
  561. package/dist/ionic/p-14be4015.entry.js +0 -4
  562. package/dist/ionic/p-16188af7.entry.js +0 -4
  563. package/dist/ionic/p-16799667.system.entry.js +0 -4
  564. package/dist/ionic/p-16bfb979.system.entry.js +0 -4
  565. package/dist/ionic/p-19ec4f42.entry.js +0 -4
  566. package/dist/ionic/p-21e5e7e4.js +0 -4
  567. package/dist/ionic/p-25180df3.system.js +0 -5
  568. package/dist/ionic/p-2690b1de.js +0 -4
  569. package/dist/ionic/p-2b9b78c7.entry.js +0 -4
  570. package/dist/ionic/p-2fc0dafe.entry.js +0 -4
  571. package/dist/ionic/p-322c5fb4.system.js +0 -4
  572. package/dist/ionic/p-37cb43bd.system.entry.js +0 -4
  573. package/dist/ionic/p-3ad285e3.system.js +0 -4
  574. package/dist/ionic/p-404aede0.system.entry.js +0 -4
  575. package/dist/ionic/p-49a0e74c.entry.js +0 -4
  576. package/dist/ionic/p-4ec778aa.entry.js +0 -4
  577. package/dist/ionic/p-51796b2d.entry.js +0 -4
  578. package/dist/ionic/p-5ab1b709.entry.js +0 -4
  579. package/dist/ionic/p-626fd66d.system.entry.js +0 -4
  580. package/dist/ionic/p-69666e8a.system.entry.js +0 -4
  581. package/dist/ionic/p-6b280620.entry.js +0 -4
  582. package/dist/ionic/p-6d6cedc5.entry.js +0 -4
  583. package/dist/ionic/p-7b9a2b23.entry.js +0 -4
  584. package/dist/ionic/p-88e63c7d.js +0 -4
  585. package/dist/ionic/p-908d6080.entry.js +0 -4
  586. package/dist/ionic/p-942b5e13.entry.js +0 -4
  587. package/dist/ionic/p-9df2c6fb.entry.js +0 -4
  588. package/dist/ionic/p-a43467d8.entry.js +0 -4
  589. package/dist/ionic/p-a69b9fc5.system.js +0 -4
  590. package/dist/ionic/p-adbc4bdf.entry.js +0 -4
  591. package/dist/ionic/p-b2272f51.system.entry.js +0 -4
  592. package/dist/ionic/p-b335ffed.system.entry.js +0 -4
  593. package/dist/ionic/p-b51e4004.js +0 -4
  594. package/dist/ionic/p-b79ba17c.entry.js +0 -4
  595. package/dist/ionic/p-b7af48c0.js +0 -4
  596. package/dist/ionic/p-b82d4cab.js +0 -4
  597. package/dist/ionic/p-b9d7015f.entry.js +0 -4
  598. package/dist/ionic/p-bc36ad98.system.entry.js +0 -4
  599. package/dist/ionic/p-c2b74d92.system.entry.js +0 -4
  600. package/dist/ionic/p-c9f3a539.entry.js +0 -4
  601. package/dist/ionic/p-d836d43e.js +0 -5
  602. package/dist/ionic/p-de930745.entry.js +0 -4
  603. package/dist/ionic/p-dfb78785.system.js +0 -4
  604. package/dist/ionic/p-e563a35c.entry.js +0 -4
  605. package/dist/ionic/p-e6635685.js +0 -4
  606. package/dist/ionic/p-ebf042e0.system.entry.js +0 -4
  607. package/dist/ionic/p-fec61c32.entry.js +0 -4
  608. package/dist/ionic/p-ff4b7e40.system.js +0 -4
@@ -1,3 +1,189 @@
1
1
  :host {
2
2
  height: 100%;
3
+ }
4
+
5
+ /**
6
+ * Convert a font size to a dynamic font size.
7
+ * Fonts that participate in Dynamic Type should use
8
+ * dynamic font sizes.
9
+ * @param size - The initial font size including the unit (i.e. px or pt)
10
+ * @param unit (optional) - The unit to convert to. Use this if you want to
11
+ * convert to a unit other than $baselineUnit.
12
+ */
13
+ /**
14
+ * Convert a font size to a dynamic font size but impose
15
+ * a maximum font size.
16
+ * @param size - The initial font size including the unit (i.e. px or pt)
17
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
18
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
19
+ * convert to a unit other than $baselineUnit.
20
+ */
21
+ /**
22
+ * Convert a font size to a dynamic font size but impose
23
+ * a minimum font size.
24
+ * @param size - The initial font size including the unit (i.e. px or pt)
25
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
26
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
27
+ * convert to a unit other than $baselineUnit.
28
+ */
29
+ /**
30
+ * Convert a font size to a dynamic font size but impose
31
+ * maximum and minimum font sizes.
32
+ * @param size - The initial font size including the unit (i.e. px or pt)
33
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
34
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
35
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
36
+ * convert to a unit other than $baselineUnit.
37
+ */
38
+ /**
39
+ * A heuristic that applies CSS to tablet
40
+ * viewports.
41
+ *
42
+ * Usage:
43
+ * @include tablet-viewport() {
44
+ * :host {
45
+ * background-color: green;
46
+ * }
47
+ * }
48
+ */
49
+ /**
50
+ * A heuristic that applies CSS to mobile
51
+ * viewports (i.e. phones, not tablets).
52
+ *
53
+ * Usage:
54
+ * @include mobile-viewport() {
55
+ * :host {
56
+ * background-color: blue;
57
+ * }
58
+ * }
59
+ */
60
+ /**
61
+ * Convert a font size to a dynamic font size.
62
+ * Fonts that participate in Dynamic Type should use
63
+ * dynamic font sizes.
64
+ * @param size - The initial font size including the unit (i.e. px or pt)
65
+ * @param unit (optional) - The unit to convert to. Use this if you want to
66
+ * convert to a unit other than $baselineUnit.
67
+ */
68
+ /**
69
+ * Convert a font size to a dynamic font size but impose
70
+ * a maximum font size.
71
+ * @param size - The initial font size including the unit (i.e. px or pt)
72
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
73
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
74
+ * convert to a unit other than $baselineUnit.
75
+ */
76
+ /**
77
+ * Convert a font size to a dynamic font size but impose
78
+ * a minimum font size.
79
+ * @param size - The initial font size including the unit (i.e. px or pt)
80
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
81
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
82
+ * convert to a unit other than $baselineUnit.
83
+ */
84
+ /**
85
+ * Convert a font size to a dynamic font size but impose
86
+ * maximum and minimum font sizes.
87
+ * @param size - The initial font size including the unit (i.e. px or pt)
88
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
89
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
90
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
91
+ * convert to a unit other than $baselineUnit.
92
+ */
93
+ /**
94
+ * A heuristic that applies CSS to tablet
95
+ * viewports.
96
+ *
97
+ * Usage:
98
+ * @include tablet-viewport() {
99
+ * :host {
100
+ * background-color: green;
101
+ * }
102
+ * }
103
+ */
104
+ /**
105
+ * A heuristic that applies CSS to mobile
106
+ * viewports (i.e. phones, not tablets).
107
+ *
108
+ * Usage:
109
+ * @include mobile-viewport() {
110
+ * :host {
111
+ * background-color: blue;
112
+ * }
113
+ * }
114
+ */
115
+ /**
116
+ * Convert a font size to a dynamic font size.
117
+ * Fonts that participate in Dynamic Type should use
118
+ * dynamic font sizes.
119
+ * @param size - The initial font size including the unit (i.e. px or pt)
120
+ * @param unit (optional) - The unit to convert to. Use this if you want to
121
+ * convert to a unit other than $baselineUnit.
122
+ */
123
+ /**
124
+ * Convert a font size to a dynamic font size but impose
125
+ * a maximum font size.
126
+ * @param size - The initial font size including the unit (i.e. px or pt)
127
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
128
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
129
+ * convert to a unit other than $baselineUnit.
130
+ */
131
+ /**
132
+ * Convert a font size to a dynamic font size but impose
133
+ * a minimum font size.
134
+ * @param size - The initial font size including the unit (i.e. px or pt)
135
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
136
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
137
+ * convert to a unit other than $baselineUnit.
138
+ */
139
+ /**
140
+ * Convert a font size to a dynamic font size but impose
141
+ * maximum and minimum font sizes.
142
+ * @param size - The initial font size including the unit (i.e. px or pt)
143
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
144
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
145
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
146
+ * convert to a unit other than $baselineUnit.
147
+ */
148
+ /**
149
+ * A heuristic that applies CSS to tablet
150
+ * viewports.
151
+ *
152
+ * Usage:
153
+ * @include tablet-viewport() {
154
+ * :host {
155
+ * background-color: green;
156
+ * }
157
+ * }
158
+ */
159
+ /**
160
+ * A heuristic that applies CSS to mobile
161
+ * viewports (i.e. phones, not tablets).
162
+ *
163
+ * Usage:
164
+ * @include mobile-viewport() {
165
+ * :host {
166
+ * background-color: blue;
167
+ * }
168
+ * }
169
+ */
170
+ ion-item {
171
+ --inner-padding-end: 0;
172
+ }
173
+
174
+ /**
175
+ * The bottom border of the item should only be displayed
176
+ * under the text and not the radio icon.
177
+ */
178
+ ion-radio::after {
179
+ bottom: 0;
180
+ position: absolute;
181
+ width: calc(100% - 0.9375rem - 16px); /* Adjust width based on the shift */
182
+ border-width: 0px 0px 0.55px 0px;
183
+ border-style: solid;
184
+ border-color: var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, var(--ion-background-color-step-250, #c8c7cc))));
185
+ content: "";
186
+ }
187
+ ion-radio::after {
188
+ inset-inline-start: calc(0.9375rem + 16px);
3
189
  }
@@ -51,7 +51,7 @@ export class SelectModal {
51
51
  }
52
52
  renderRadioOptions() {
53
53
  const checked = this.options.filter((o) => o.checked).map((o) => o.value)[0];
54
- return (h("ion-radio-group", { value: checked, onIonChange: (ev) => this.callOptionHandler(ev) }, this.options.map((option) => (h("ion-item", { class: Object.assign({
54
+ return (h("ion-radio-group", { value: checked, onIonChange: (ev) => this.callOptionHandler(ev) }, this.options.map((option) => (h("ion-item", { lines: "none", class: Object.assign({
55
55
  // TODO FW-4784
56
56
  'item-radio-checked': option.value === checked
57
57
  }, getClassMap(option.cssClass)) }, h("ion-radio", { value: option.value, disabled: option.disabled, justify: "start", labelPlacement: "end", onClick: () => this.closeModal(), onKeyUp: (ev) => {
@@ -77,7 +77,7 @@ export class SelectModal {
77
77
  } }, option.text))));
78
78
  }
79
79
  render() {
80
- return (h(Host, { key: 'f4b92f4fc3d646f9a327e43a9622abaf69659c28', class: getIonMode(this) }, h("ion-header", { key: '11232ef496e7abd69e55cef988963a4869a7b01e' }, h("ion-toolbar", { key: 'e7c41878691a504d44c658db02807867df542588' }, this.header !== undefined && h("ion-title", { key: 'fcf9d33e0f3e0076ff14805de68848f9ef199cca' }, this.header), h("ion-buttons", { key: '748a967ae0ce68bc2fd018a6b9ebe0e4b810f6ac', slot: "end" }, h("ion-button", { key: 'f5e60791870b5085a31b7af70ed4bb3fb83eb185', onClick: () => this.closeModal() }, "Close")))), h("ion-content", { key: '159797957b6f788a9b393d91864c18db34481c68' }, h("ion-list", { key: '4124554fe8b2411637cbf02f08e50e0d8f804175' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
80
+ return (h(Host, { key: '885198a9f21884e3bfb9bf0af53e0ee3ae37b231', class: getIonMode(this) }, h("ion-header", { key: 'd8b63726869747ac711e4fda78a50ce46f72970c' }, h("ion-toolbar", { key: '9ab2a4c1480dd74eeae38d7b580a2e87fb71270e' }, this.header !== undefined && h("ion-title", { key: '87a7034385ef57f55cefdd0371dbb66a64827290' }, this.header), h("ion-buttons", { key: '0a35424ea13ca002abc9a43b6138730254f187d0', slot: "end" }, h("ion-button", { key: '238bf40b47128d9aa995d14d9ff9ebcae4f79492', onClick: () => this.closeModal() }, "Close")))), h("ion-content", { key: '4a256f3381f8cabbc7194337b8ae4aa1c3ab1066' }, h("ion-list", { key: 'acd38fc52024632176467ed6a84106a454021544' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
81
81
  }
82
82
  static get is() { return "ion-select-modal"; }
83
83
  static get encapsulation() { return "scoped"; }
@@ -10,7 +10,7 @@ export class SelectOption {
10
10
  this.value = undefined;
11
11
  }
12
12
  render() {
13
- return h(Host, { key: '2e6fa159464f04f6d8720f960141f67918bc7534', role: "option", id: this.inputId, class: getIonMode(this) });
13
+ return h(Host, { key: '8c96c199ce3a3065de3fe446500f567236e0610a', role: "option", id: this.inputId, class: getIonMode(this) });
14
14
  }
15
15
  static get is() { return "ion-select-option"; }
16
16
  static get encapsulation() { return "shadow"; }
@@ -102,7 +102,7 @@ export class SelectPopover {
102
102
  render() {
103
103
  const { header, message, options, subHeader } = this;
104
104
  const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
105
- return (h(Host, { key: 'dd0990db4de4f175b176b27f35501dd1604ca400', class: getIonMode(this) }, h("ion-list", { key: 'cea2bc3687b8b2490a2a9ff4a1e16cd34169558e' }, header !== undefined && h("ion-list-header", { key: '194aebb53453c43f913daae45a1a3066a1708c4c' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: 'b706b07a3c63ad8104d2db413e210c735ec1bec9' }, h("ion-label", { key: '6e52b5b4cf6b04ff3dd5671d64264233de4190d5', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: '6ef4440d17f5db8c96c63b9aa5073f4fe4b8ad62' }, subHeader), message !== undefined && h("p", { key: 'c7b3b76c30ecd606c0e985a0258c13d3a75756e7' }, message)))), this.renderOptions(options))));
105
+ return (h(Host, { key: '542367ab8fb72bfebf7e65630b91017d68827fd6', class: getIonMode(this) }, h("ion-list", { key: 'f2f0f37e1365cd7780b02de1a1698700d0df48a7' }, header !== undefined && h("ion-list-header", { key: '4b8800a68e800f19277a44b7074ca24b70218daf' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: '932b7903daf97d5a57d289b7ee49e868bb9b0cf5' }, h("ion-label", { key: 'fc3f1b69aa2a0bc6125d35692dcad3a8a99fd160', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: 'eceab2f47afa95f04b138342b0bdbfa1f50919a8' }, subHeader), message !== undefined && h("p", { key: '70f4e27ad1316318efd0c17efce31e5e45c8fa02' }, message)))), this.renderOptions(options))));
106
106
  }
107
107
  static get is() { return "ion-select-popover"; }
108
108
  static get encapsulation() { return "scoped"; }
@@ -25,11 +25,11 @@ export class SkeletonText {
25
25
  const animated = this.animated && config.getBoolean('animated', true);
26
26
  const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
27
27
  const mode = getIonMode(this);
28
- return (h(Host, { key: 'fdfabf9364caf507450239b62be24f08873bd650', class: {
28
+ return (h(Host, { key: 'c193f9a8e8efab5139544f047bdae4b6d421aa86', class: {
29
29
  [mode]: true,
30
30
  'skeleton-text-animated': animated,
31
31
  'in-media': inMedia,
32
- } }, h("span", { key: '3482c88dcc177547185ce87972afa064a542367d' }, "\u00A0")));
32
+ } }, h("span", { key: 'e15db679bd3c359b4df5123efd2f92e5b380fde3' }, "\u00A0")));
33
33
  }
34
34
  static get is() { return "ion-skeleton-text"; }
35
35
  static get encapsulation() { return "shadow"; }
@@ -39,7 +39,7 @@ export class Spinner {
39
39
  svgs.push(buildLine(spinner, duration, i, spinner.lines));
40
40
  }
41
41
  }
42
- return (h(Host, { key: '9d30ee9f5aa0dd0e220da07e75d05b8b2435224d', class: createColorClasses(self.color, {
42
+ return (h(Host, { key: 'e0dfa8a3ee2a0469eb31323f506750bd77d65797', class: createColorClasses(self.color, {
43
43
  [mode]: true,
44
44
  [`spinner-${spinnerName}`]: true,
45
45
  'spinner-paused': self.paused || config.getBoolean('_testing'),
@@ -118,12 +118,12 @@ export class SplitPane {
118
118
  }
119
119
  render() {
120
120
  const mode = getIonMode(this);
121
- return (h(Host, { key: '1ca0b0299d03605bb358112ca56cbafbe58f00f5', class: {
121
+ return (h(Host, { key: '76be70d7fbebc52646a5851f47accc1006615b85', class: {
122
122
  [mode]: true,
123
123
  // Used internally for styling
124
124
  [`split-pane-${mode}`]: true,
125
125
  'split-pane-visible': this.visible,
126
- } }, h("slot", { key: 'abe231361727ae7fc63edd592a4490caac1909fb' })));
126
+ } }, h("slot", { key: '9a859530f4fb18aff43255bc3940feb9aca625d7' })));
127
127
  }
128
128
  static get is() { return "ion-split-pane"; }
129
129
  static get encapsulation() { return "shadow"; }
@@ -48,10 +48,10 @@ export class Tab {
48
48
  }
49
49
  render() {
50
50
  const { tab, active, component } = this;
51
- return (h(Host, { key: 'cb75d0877979b3b8df8f7e1952bfa9677da1eaa5', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
51
+ return (h(Host, { key: '2107ece2f1ebdf748bac8adb78a9ad67e7fc9057', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
52
52
  'ion-page': component === undefined,
53
53
  'tab-hidden': !active,
54
- } }, h("slot", { key: '37fbb7b7a6b03eb93b1dacd2dc1025b78eb2aa6b' })));
54
+ } }, h("slot", { key: 'b4a1bc1aa79f6b82b8f77b544bcb74e65229b541' })));
55
55
  }
56
56
  static get is() { return "ion-tab"; }
57
57
  static get encapsulation() { return "shadow"; }
@@ -51,11 +51,11 @@ export class TabBar {
51
51
  const { color, translucent, keyboardVisible } = this;
52
52
  const mode = getIonMode(this);
53
53
  const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
54
- return (h(Host, { key: 'a87fd2ea5df053705a37ea7ffec043e75c4a9907', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses(color, {
54
+ return (h(Host, { key: '62303a7f9d8c98ffab51a5900c144c5117b9c543', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses(color, {
55
55
  [mode]: true,
56
56
  'tab-bar-translucent': translucent,
57
57
  'tab-bar-hidden': shouldHide,
58
- }) }, h("slot", { key: '81a6223299b6cab29d7ddced590e9152e2b3ded0' })));
58
+ }) }, h("slot", { key: '5771a9828f748c2bd6b5e26758b9723c6b3de5ff' })));
59
59
  }
60
60
  static get is() { return "ion-tab-bar"; }
61
61
  static get encapsulation() { return "shadow"; }
@@ -70,7 +70,7 @@ export class TabButton {
70
70
  rel,
71
71
  target,
72
72
  };
73
- return (h(Host, { key: '5976c45943ea7ea8e7c1a85fc9996de421439f08', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
73
+ return (h(Host, { key: 'a86d441d8df350fe991f2f948fc6b6ad007728f7', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
74
74
  [mode]: true,
75
75
  'tab-selected': selected,
76
76
  'tab-disabled': disabled,
@@ -82,7 +82,7 @@ export class TabButton {
82
82
  'ion-activatable': true,
83
83
  'ion-selectable': true,
84
84
  'ion-focusable': true,
85
- } }, h("a", Object.assign({ key: '1db09d861b67ff292018fb4b0dc7b85bd4677eb8' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), h("span", { key: '4381eafcb27e8c7bb0d86d4f115ceb0caf03b9b4', class: "button-inner" }, h("slot", { key: '1981135f6fbb88376c1bd923c55c70fe8b5c5159' })), mode === 'md' && h("ion-ripple-effect", { key: '0509bc7155d055d1ed710600e9cf4df135881491', type: "unbounded" }))));
85
+ } }, h("a", Object.assign({ key: '8dfe1ccff2cf21601c5aea7f7f877c0fbe384e09' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), h("span", { key: '3f557cf6e96e22b9318b4aee19ede810eb7fb720', class: "button-inner" }, h("slot", { key: '836dd090dbe3c2ea97dc263fca7d01dea6ea0eb6' })), mode === 'md' && h("ion-ripple-effect", { key: '488a924fd04602c1b23e03d1a4c84dfa0f2ca03d', type: "unbounded" }))));
86
86
  }
87
87
  static get is() { return "ion-tab-button"; }
88
88
  static get encapsulation() { return "shadow"; }
@@ -145,7 +145,7 @@ export class Tabs {
145
145
  return Array.from(this.el.querySelectorAll('ion-tab'));
146
146
  }
147
147
  render() {
148
- return (h(Host, { key: 'e01ccf6bfaccad094515be50e407399c733fc226', onIonTabButtonClick: this.onTabClicked }, h("slot", { key: '38d2d01dbfd8a08f01e6f0e27274b21d75424e37', name: "top" }), h("div", { key: '7e894f0f423e2d43e1c68daff5f9f6c442fad237', class: "tabs-inner" }, h("slot", { key: 'df16be529a0370a26d0adf850530b31607507c23' })), h("slot", { key: '44642e1cb24c3281c43db75fd69a32fe0defe40a', name: "bottom" })));
148
+ return (h(Host, { key: 'd357c4607cfc89fb88404fe12ea7ef5b397fe6bf', onIonTabButtonClick: this.onTabClicked }, h("slot", { key: '18661896589a4ab3c74164f448b928abec9b4db0', name: "top" }), h("div", { key: '3bf30ea2540a196e868a78a861824b4b5d933afd', class: "tabs-inner" }, h("slot", { key: '7cfc154d4d6c1642188ab6508a6be72c8234585e' })), h("slot", { key: '8057679c959195cbdfae156b8ae0cbfd978c5037', name: "bottom" })));
149
149
  }
150
150
  static get is() { return "ion-tabs"; }
151
151
  static get encapsulation() { return "shadow"; }
@@ -13,9 +13,9 @@ export class Text {
13
13
  }
14
14
  render() {
15
15
  const mode = getIonMode(this);
16
- return (h(Host, { key: 'e134d70c04344b708a2ecf6253722781ad2ca826', class: createColorClasses(this.color, {
16
+ return (h(Host, { key: '0c2546ea3f24b0a6bfd606199441d0a4edfa4ca1', class: createColorClasses(this.color, {
17
17
  [mode]: true,
18
- }) }, h("slot", { key: 'da79c760f7ebbcd007ce110439f05a62cb22eac8' })));
18
+ }) }, h("slot", { key: 'b7623ccb06f9461090a1f33e9f85886c7a4d5eff' })));
19
19
  }
20
20
  static get is() { return "ion-text"; }
21
21
  static get encapsulation() { return "shadow"; }
@@ -373,6 +373,7 @@
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;
376
377
  }
377
378
 
378
379
  /**
@@ -396,7 +397,7 @@
396
397
 
397
398
  .textarea-bottom .helper-text {
398
399
  display: block;
399
- color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
400
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
400
401
  }
401
402
 
402
403
  :host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
@@ -415,7 +416,7 @@
415
416
  */
416
417
  -webkit-margin-start: auto;
417
418
  margin-inline-start: auto;
418
- color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
419
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
419
420
  white-space: nowrap;
420
421
  padding-inline-start: 16px;
421
422
  }
@@ -112,6 +112,17 @@ export class Textarea {
112
112
  }
113
113
  this.runAutoGrow();
114
114
  }
115
+ /**
116
+ * dir is a globally enumerated attribute.
117
+ * As a result, creating these as properties
118
+ * can have unintended side effects. Instead, we
119
+ * listen for attribute changes and inherit them
120
+ * to the inner `<textarea>` element.
121
+ */
122
+ onDirChanged(newValue) {
123
+ this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { dir: newValue });
124
+ forceUpdate(this);
125
+ }
115
126
  connectedCallback() {
116
127
  const { el } = this;
117
128
  this.slotMutationController = createSlotMutationController(el, ['label', 'start', 'end'], () => forceUpdate(this));
@@ -139,7 +150,7 @@ export class Textarea {
139
150
  }
140
151
  }
141
152
  componentWillLoad() {
142
- this.inheritedAttributes = Object.assign(Object.assign({}, inheritAriaAttributes(this.el)), inheritAttributes(this.el, ['data-form-type', 'title', 'tabindex']));
153
+ this.inheritedAttributes = Object.assign(Object.assign({}, inheritAriaAttributes(this.el)), inheritAttributes(this.el, ['data-form-type', 'title', 'tabindex', 'dir']));
143
154
  }
144
155
  componentDidLoad() {
145
156
  this.originalIonInput = this.ionInput;
@@ -374,7 +385,7 @@ export class Textarea {
374
385
  * TODO(FW-5592): Remove hasStartEndSlots condition
375
386
  */
376
387
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
377
- return (h(Host, { key: 'd6e25c83d8eab8cb1a5b6ab411c9a13847f69f8d', class: createColorClasses(this.color, {
388
+ return (h(Host, { key: '3bf42ea1fa739f334427c70f91a89b8b0e0f21ec', class: createColorClasses(this.color, {
378
389
  [mode]: true,
379
390
  'has-value': hasValue,
380
391
  'has-focus': hasFocus,
@@ -383,7 +394,7 @@ export class Textarea {
383
394
  [`textarea-shape-${shape}`]: shape !== undefined,
384
395
  [`textarea-label-placement-${labelPlacement}`]: true,
385
396
  'textarea-disabled': disabled,
386
- }) }, h("label", { key: 'f840a5be2b776a4b9c18c6da24e0b7d3d4838fee', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), h("div", { key: '979461fc0d4684926d79d75759c63c6867b7622b', class: "textarea-wrapper-inner" }, h("div", { key: '88f0d5d4bac29597cc2588e5b2ed72fb4fbe153d', class: "start-slot-wrapper" }, h("slot", { key: '21dcca0e59c1260e3d0d1e126c1c590de15c4bad', name: "start" })), h("div", { key: '3c48a4bb3d763a389d3429123e7c110064b9b8d4', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, h("textarea", Object.assign({ key: '1550599ad15b3f215c104c014e90711f073ace8b', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), h("div", { key: '4f01ab4d2994a6de6f49eb9ed2e310d00daf21b2', class: "end-slot-wrapper" }, h("slot", { key: '501e288b6807e039972bb4f0b63906114255518a', name: "end" }))), shouldRenderHighlight && h("div", { key: 'd3008eed34494aa9f8e98a28eac3b465dc4c2bd0', class: "textarea-highlight" })), this.renderBottomContent()));
397
+ }) }, h("label", { key: 'f7acceeb74849d13a6af8d39b66ea2701384c955', class: "textarea-wrapper", htmlFor: inputId }, this.renderLabelContainer(), h("div", { key: '05e9f2ebad1742a9e66d243d18c22ddd4c83ee04', class: "textarea-wrapper-inner" }, h("div", { key: '70a9935351c38413ced05f5e4dc0055b9b001ee9', class: "start-slot-wrapper" }, h("slot", { key: '11206eaa31d112c01f2218bf2ff46375ad819d1f', name: "start" })), h("div", { key: 'bfd215dbb5f4d60f5fb62d37226fdc6ce61ec107', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, h("textarea", Object.assign({ key: '2fa5cdf4c6614dd8cd4b7d2a19811a79c96ac50d', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId }, this.inheritedAttributes), value)), h("div", { key: '8a67ad8e3b5650680f770cefc562d190f6760718', class: "end-slot-wrapper" }, h("slot", { key: '03bb6bc5f2808c1f474a6c3168169d17f7569fda', name: "end" }))), shouldRenderHighlight && h("div", { key: 'cd564bd01a1ca3f914218e34a78d296ad0838e4a', class: "textarea-highlight" })), this.renderBottomContent()));
387
398
  }
388
399
  static get is() { return "ion-textarea"; }
389
400
  static get encapsulation() { return "scoped"; }
@@ -1035,6 +1046,9 @@ export class Textarea {
1035
1046
  }, {
1036
1047
  "propName": "value",
1037
1048
  "methodName": "valueChanged"
1049
+ }, {
1050
+ "propName": "dir",
1051
+ "methodName": "onDirChanged"
1038
1052
  }];
1039
1053
  }
1040
1054
  }
@@ -373,6 +373,7 @@
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;
376
377
  }
377
378
 
378
379
  /**
@@ -396,7 +397,7 @@
396
397
 
397
398
  .textarea-bottom .helper-text {
398
399
  display: block;
399
- color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
400
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
400
401
  }
401
402
 
402
403
  :host(.ion-touched.ion-invalid) .textarea-bottom .error-text {
@@ -415,7 +416,7 @@
415
416
  */
416
417
  -webkit-margin-start: auto;
417
418
  margin-inline-start: auto;
418
- color: var(--ion-color-step-550, var(--ion-text-color-step-450, #737373));
419
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
419
420
  white-space: nowrap;
420
421
  padding-inline-start: 16px;
421
422
  }
@@ -928,6 +929,10 @@
928
929
  --border-color: var(--highlight-color);
929
930
  }
930
931
 
932
+ /**
933
+ * The bottom content should never have
934
+ * a border with the solid style.
935
+ */
931
936
  :host(.textarea-fill-solid) .textarea-bottom {
932
937
  border-top: none;
933
938
  }
@@ -5,7 +5,7 @@ import { Host, h } from "@stencil/core";
5
5
  import { getIonMode } from "../../global/ionic-global";
6
6
  export class Thumbnail {
7
7
  render() {
8
- return (h(Host, { key: 'cfa9aeb1d4fd624a9732c5230d29dd887e4b7771', class: getIonMode(this) }, h("slot", { key: '29bc6e64063cba44e2643228df54394883933918' })));
8
+ return (h(Host, { key: '7f5fd6c056da2d82feb2c3c33f3e6dec898787f5', class: getIonMode(this) }, h("slot", { key: 'd15fd2b6cdc03777edc1930be95ad838e1b376c8' })));
9
9
  }
10
10
  static get is() { return "ion-thumbnail"; }
11
11
  static get encapsulation() { return "shadow"; }
@@ -27,11 +27,11 @@ export class ToolbarTitle {
27
27
  render() {
28
28
  const mode = getIonMode(this);
29
29
  const size = this.getSize();
30
- return (h(Host, { key: '7293d2ecd6262feb0d8d769effbb208230baed89', class: createColorClasses(this.color, {
30
+ return (h(Host, { key: '3f7b19c99961dbb86c0a925218332528b22e6880', class: createColorClasses(this.color, {
31
31
  [mode]: true,
32
32
  [`title-${size}`]: true,
33
33
  'title-rtl': document.dir === 'rtl',
34
- }) }, h("div", { key: '086ec3a361ebdf6506846a8704b457cda3a6f897', class: "toolbar-title" }, h("slot", { key: '59add7eb92b82d6832a8f0894f897c51fdf4f214' }))));
34
+ }) }, h("div", { key: '12054fbdd60e40a15875e442c20143766fc34fc3', class: "toolbar-title" }, h("slot", { key: '9f14fb14a67d4bd1e4536a4d64a637fbe5a151c7' }))));
35
35
  }
36
36
  static get is() { return "ion-title"; }
37
37
  static get encapsulation() { return "shadow"; }
@@ -391,9 +391,9 @@ export class Toast {
391
391
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
392
392
  printIonWarning('This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
393
393
  }
394
- return (h(Host, Object.assign({ key: 'c05655ff06af8d0e48c2a85396b07ad942fa81b4', tabindex: "-1" }, this.htmlAttributes, { style: {
394
+ return (h(Host, Object.assign({ key: '34036afc0701173d51c9c11ea4a2e1d65685ba41', tabindex: "-1" }, this.htmlAttributes, { style: {
395
395
  zIndex: `${60000 + this.overlayIndex}`,
396
- }, class: createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), h("div", { key: '9393ead4de1bf28529661d6f64049d34e18d725c', class: wrapperClass }, h("div", { key: '3e9dd73c17c337849c3f26e8d0f395b3e5ee20a7', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (h("ion-icon", { key: '5d15b18364301ad55e44e9f601014ac33181590b', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), h("div", { key: 'f6dd164502637a882c5caf18445d8509b85ad6f9', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
396
+ }, class: createColorClasses(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), h("div", { key: 'd927e43957f47888ce4e64f1e99c935d55757af7', class: wrapperClass }, h("div", { key: 'ca43bc42478181acdf8cdea6601a85fa95d12216', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (h("ion-icon", { key: 'fdd6fb8f6e947ed002bd2e63fdc8ec7e764f4a7d', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), h("div", { key: '37c16c81ee3e4304379dfbcabdffe73db73e4653', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
397
397
  }
398
398
  static get is() { return "ion-toast"; }
399
399
  static get encapsulation() { return "shadow"; }
@@ -171,32 +171,39 @@ input {
171
171
  align-items: center;
172
172
  }
173
173
 
174
- :host(.toggle-justify-space-between) .toggle-wrapper {
174
+ .toggle-bottom {
175
+ padding-top: 4px;
176
+ display: flex;
175
177
  justify-content: space-between;
178
+ font-size: 0.75rem;
179
+ white-space: normal;
176
180
  }
177
181
 
178
- :host(.toggle-justify-start) .toggle-wrapper {
179
- justify-content: start;
182
+ :host(.toggle-label-placement-stacked) .toggle-bottom {
183
+ font-size: 1rem;
180
184
  }
181
185
 
182
- :host(.toggle-justify-end) .toggle-wrapper {
183
- justify-content: end;
186
+ /**
187
+ * Error text should only be shown when .ion-invalid is
188
+ * present on the checkbox. Otherwise the helper text should
189
+ * be shown.
190
+ */
191
+ .toggle-bottom .error-text {
192
+ display: none;
193
+ color: var(--ion-color-danger, #c5000f);
184
194
  }
185
195
 
186
- :host(.toggle-alignment-start) .toggle-wrapper {
187
- align-items: start;
196
+ .toggle-bottom .helper-text {
197
+ display: block;
198
+ color: var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d));
188
199
  }
189
200
 
190
- :host(.toggle-alignment-center) .toggle-wrapper {
191
- align-items: center;
201
+ :host(.ion-touched.ion-invalid) .toggle-bottom .error-text {
202
+ display: block;
192
203
  }
193
204
 
194
- :host(.toggle-justify-space-between),
195
- :host(.toggle-justify-start),
196
- :host(.toggle-justify-end),
197
- :host(.toggle-alignment-start),
198
- :host(.toggle-alignment-center) {
199
- display: block;
205
+ :host(.ion-touched.ion-invalid) .toggle-bottom .helper-text {
206
+ display: none;
200
207
  }
201
208
 
202
209
  /**
@@ -225,6 +232,7 @@ input {
225
232
  */
226
233
  :host(.toggle-label-placement-end) .toggle-wrapper {
227
234
  flex-direction: row-reverse;
235
+ justify-content: start;
228
236
  }
229
237
 
230
238
  /**
@@ -267,6 +275,7 @@ input {
267
275
  */
268
276
  :host(.toggle-label-placement-stacked) .toggle-wrapper {
269
277
  flex-direction: column;
278
+ text-align: center;
270
279
  }
271
280
 
272
281
  :host(.toggle-label-placement-stacked) .label-text-wrapper {
@@ -312,6 +321,34 @@ input {
312
321
  }
313
322
  }
314
323
 
324
+ :host(.toggle-justify-space-between) .toggle-wrapper {
325
+ justify-content: space-between;
326
+ }
327
+
328
+ :host(.toggle-justify-start) .toggle-wrapper {
329
+ justify-content: start;
330
+ }
331
+
332
+ :host(.toggle-justify-end) .toggle-wrapper {
333
+ justify-content: end;
334
+ }
335
+
336
+ :host(.toggle-alignment-start) .toggle-wrapper {
337
+ align-items: start;
338
+ }
339
+
340
+ :host(.toggle-alignment-center) .toggle-wrapper {
341
+ align-items: center;
342
+ }
343
+
344
+ :host(.toggle-justify-space-between),
345
+ :host(.toggle-justify-start),
346
+ :host(.toggle-justify-end),
347
+ :host(.toggle-alignment-start),
348
+ :host(.toggle-alignment-center) {
349
+ display: block;
350
+ }
351
+
315
352
  .toggle-icon-wrapper {
316
353
  display: flex;
317
354
  position: relative;