@ionic/core 8.4.4-dev.11741030124.1142ac6a → 8.4.4-dev.11741046329.16b83b14

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 (369) hide show
  1. package/components/checkbox.js +40 -6
  2. package/components/helpers.js +1 -11
  3. package/components/index6.js +11 -3
  4. package/components/index9.js +1 -1
  5. package/components/ion-segment-button.js +9 -40
  6. package/components/ion-select.js +16 -41
  7. package/components/ion-toggle.js +6 -4
  8. package/components/modal.js +259 -35
  9. package/components/toolbar.js +2 -2
  10. package/css/core.css.map +1 -1
  11. package/css/ionic.bundle.css.map +1 -1
  12. package/dist/cjs/{data-21dc0f81.js → data-108e531d.js} +1 -1
  13. package/dist/cjs/{framework-delegate-05579976.js → framework-delegate-55f5683a.js} +1 -1
  14. package/dist/cjs/{helpers-4be3f90d.js → helpers-afaa9001.js} +0 -11
  15. package/dist/cjs/{index-c441c903.js → index-0d762bba.js} +2 -2
  16. package/dist/cjs/{index-5915f9b3.js → index-2a46a047.js} +11 -3
  17. package/dist/cjs/{index-1ae3f40a.js → index-3652c918.js} +2 -2
  18. package/dist/cjs/{index-ad7a712e.js → index-9509ecad.js} +1 -1
  19. package/dist/cjs/{index-4e14a46e.js → index-e975c92b.js} +4 -4
  20. package/dist/cjs/index.cjs.js +8 -8
  21. package/dist/cjs/{input-shims-e748a364.js → input-shims-cd05268a.js} +5 -3
  22. package/dist/cjs/{input.utils-74e4ec28.js → input.utils-ffb2f81b.js} +2 -2
  23. package/dist/cjs/ion-accordion_2.cjs.entry.js +2 -2
  24. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  25. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  26. package/dist/cjs/ion-app_8.cjs.entry.js +11 -11
  27. package/dist/cjs/ion-back-button.cjs.entry.js +1 -1
  28. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +1 -1
  29. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  30. package/dist/cjs/ion-card_5.cjs.entry.js +1 -1
  31. package/dist/cjs/ion-checkbox.cjs.entry.js +38 -7
  32. package/dist/cjs/ion-datetime-button.cjs.entry.js +3 -3
  33. package/dist/cjs/ion-datetime_3.cjs.entry.js +5 -5
  34. package/dist/cjs/ion-fab_3.cjs.entry.js +1 -1
  35. package/dist/cjs/ion-img.cjs.entry.js +1 -1
  36. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
  37. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +1 -1
  38. package/dist/cjs/ion-input.cjs.entry.js +4 -4
  39. package/dist/cjs/ion-item-option_3.cjs.entry.js +3 -3
  40. package/dist/cjs/ion-item_8.cjs.entry.js +1 -1
  41. package/dist/cjs/ion-loading.cjs.entry.js +4 -4
  42. package/dist/cjs/ion-menu_3.cjs.entry.js +5 -5
  43. package/dist/cjs/ion-modal.cjs.entry.js +264 -41
  44. package/dist/cjs/ion-nav_2.cjs.entry.js +5 -5
  45. package/dist/cjs/ion-picker-column-option.cjs.entry.js +1 -1
  46. package/dist/cjs/ion-picker-column.cjs.entry.js +1 -1
  47. package/dist/cjs/ion-picker.cjs.entry.js +1 -1
  48. package/dist/cjs/ion-popover.cjs.entry.js +5 -5
  49. package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
  50. package/dist/cjs/ion-radio_2.cjs.entry.js +1 -1
  51. package/dist/cjs/ion-range.cjs.entry.js +3 -3
  52. package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
  53. package/dist/cjs/ion-reorder_2.cjs.entry.js +3 -3
  54. package/dist/cjs/ion-route_4.cjs.entry.js +1 -1
  55. package/dist/cjs/ion-searchbar.cjs.entry.js +1 -1
  56. package/dist/cjs/ion-segment_2.cjs.entry.js +9 -40
  57. package/dist/cjs/ion-select-modal.cjs.entry.js +4 -4
  58. package/dist/cjs/ion-select_3.cjs.entry.js +19 -45
  59. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +1 -1
  60. package/dist/cjs/ion-tab_2.cjs.entry.js +2 -2
  61. package/dist/cjs/ion-textarea.cjs.entry.js +4 -4
  62. package/dist/cjs/ion-toast.cjs.entry.js +4 -4
  63. package/dist/cjs/ion-toggle.cjs.entry.js +6 -5
  64. package/dist/cjs/ionic.cjs.js +1 -1
  65. package/dist/cjs/{ios.transition-afdec89f.js → ios.transition-0e664e88.js} +3 -3
  66. package/dist/cjs/loader.cjs.js +1 -1
  67. package/dist/cjs/{md.transition-9f0d3db5.js → md.transition-2e8aef2c.js} +3 -3
  68. package/dist/cjs/{notch-controller-a0c464d1.js → notch-controller-d69150f5.js} +1 -1
  69. package/dist/cjs/{overlays-76b29cd4.js → overlays-65fdaff6.js} +3 -3
  70. package/dist/cjs/{status-tap-fb807fad.js → status-tap-d74f1429.js} +4 -3
  71. package/dist/cjs/{swipe-back-47a52b83.js → swipe-back-0303a5e4.js} +1 -1
  72. package/dist/collection/components/checkbox/checkbox.ios.css +52 -15
  73. package/dist/collection/components/checkbox/checkbox.js +90 -4
  74. package/dist/collection/components/checkbox/checkbox.md.css +52 -15
  75. package/dist/collection/components/modal/animations/ios.enter.js +50 -4
  76. package/dist/collection/components/modal/animations/ios.leave.js +24 -2
  77. package/dist/collection/components/modal/animations/md.enter.js +52 -5
  78. package/dist/collection/components/modal/animations/md.leave.js +26 -3
  79. package/dist/collection/components/modal/animations/sheet.js +11 -2
  80. package/dist/collection/components/modal/gestures/sheet.js +79 -10
  81. package/dist/collection/components/modal/modal.ios.css +16 -0
  82. package/dist/collection/components/modal/modal.js +32 -7
  83. package/dist/collection/components/modal/modal.md.css +6 -0
  84. package/dist/collection/components/segment-button/segment-button.js +9 -40
  85. package/dist/collection/components/select/select.js +32 -40
  86. package/dist/collection/components/toggle/toggle.js +23 -4
  87. package/dist/collection/components/toolbar/toolbar.js +6 -2
  88. package/dist/collection/utils/helpers.js +0 -10
  89. package/dist/collection/utils/logging/index.js +10 -3
  90. package/dist/docs.json +187 -2
  91. package/dist/esm/{data-ae11fd43.js → data-b3284b5e.js} +1 -1
  92. package/dist/esm/{framework-delegate-f683816e.js → framework-delegate-63d1a679.js} +1 -1
  93. package/dist/esm/{helpers-9b49d7d2.js → helpers-da915de8.js} +1 -11
  94. package/dist/esm/{index-7ec5519a.js → index-2f7fde3d.js} +4 -4
  95. package/dist/esm/{index-9b0d46f4.js → index-6ad967f3.js} +11 -3
  96. package/dist/esm/{index-5a0f5fd0.js → index-79b30591.js} +1 -1
  97. package/dist/esm/{index-8785a9c6.js → index-cb21eccb.js} +2 -2
  98. package/dist/esm/{index-33f7e3ff.js → index-efb8ecdf.js} +2 -2
  99. package/dist/esm/index.js +8 -8
  100. package/dist/esm/{input-shims-0e65111b.js → input-shims-2fd7c6ef.js} +5 -3
  101. package/dist/esm/{input.utils-1ad8dafc.js → input.utils-961c9f17.js} +2 -2
  102. package/dist/esm/ion-accordion_2.entry.js +2 -2
  103. package/dist/esm/ion-action-sheet.entry.js +4 -4
  104. package/dist/esm/ion-alert.entry.js +4 -4
  105. package/dist/esm/ion-app_8.entry.js +11 -11
  106. package/dist/esm/ion-back-button.entry.js +1 -1
  107. package/dist/esm/ion-breadcrumb_2.entry.js +1 -1
  108. package/dist/esm/ion-button_2.entry.js +2 -2
  109. package/dist/esm/ion-card_5.entry.js +1 -1
  110. package/dist/esm/ion-checkbox.entry.js +38 -7
  111. package/dist/esm/ion-datetime-button.entry.js +3 -3
  112. package/dist/esm/ion-datetime_3.entry.js +5 -5
  113. package/dist/esm/ion-fab_3.entry.js +1 -1
  114. package/dist/esm/ion-img.entry.js +1 -1
  115. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
  116. package/dist/esm/ion-input-password-toggle.entry.js +1 -1
  117. package/dist/esm/ion-input.entry.js +4 -4
  118. package/dist/esm/ion-item-option_3.entry.js +3 -3
  119. package/dist/esm/ion-item_8.entry.js +1 -1
  120. package/dist/esm/ion-loading.entry.js +4 -4
  121. package/dist/esm/ion-menu_3.entry.js +5 -5
  122. package/dist/esm/ion-modal.entry.js +264 -41
  123. package/dist/esm/ion-nav_2.entry.js +5 -5
  124. package/dist/esm/ion-picker-column-option.entry.js +1 -1
  125. package/dist/esm/ion-picker-column.entry.js +1 -1
  126. package/dist/esm/ion-picker.entry.js +1 -1
  127. package/dist/esm/ion-popover.entry.js +5 -5
  128. package/dist/esm/ion-progress-bar.entry.js +1 -1
  129. package/dist/esm/ion-radio_2.entry.js +1 -1
  130. package/dist/esm/ion-range.entry.js +3 -3
  131. package/dist/esm/ion-refresher_2.entry.js +3 -3
  132. package/dist/esm/ion-reorder_2.entry.js +3 -3
  133. package/dist/esm/ion-route_4.entry.js +1 -1
  134. package/dist/esm/ion-searchbar.entry.js +1 -1
  135. package/dist/esm/ion-segment_2.entry.js +9 -40
  136. package/dist/esm/ion-select-modal.entry.js +4 -4
  137. package/dist/esm/ion-select_3.entry.js +19 -45
  138. package/dist/esm/ion-tab-bar_2.entry.js +1 -1
  139. package/dist/esm/ion-tab_2.entry.js +2 -2
  140. package/dist/esm/ion-textarea.entry.js +4 -4
  141. package/dist/esm/ion-toast.entry.js +4 -4
  142. package/dist/esm/ion-toggle.entry.js +6 -5
  143. package/dist/esm/ionic.js +1 -1
  144. package/dist/esm/{ios.transition-085853ff.js → ios.transition-b1da3753.js} +3 -3
  145. package/dist/esm/loader.js +1 -1
  146. package/dist/esm/{md.transition-33826623.js → md.transition-571b3859.js} +3 -3
  147. package/dist/esm/{notch-controller-3dc61260.js → notch-controller-55b09e11.js} +1 -1
  148. package/dist/esm/{overlays-e3d0d356.js → overlays-5deab4de.js} +3 -3
  149. package/dist/esm/{status-tap-163e8128.js → status-tap-79eac0ac.js} +4 -3
  150. package/dist/esm/{swipe-back-23ee7ab1.js → swipe-back-e5394307.js} +1 -1
  151. package/dist/esm-es5/{data-ae11fd43.js → data-b3284b5e.js} +1 -1
  152. package/dist/esm-es5/{framework-delegate-f683816e.js → framework-delegate-63d1a679.js} +1 -1
  153. package/dist/esm-es5/{helpers-9b49d7d2.js → helpers-da915de8.js} +1 -1
  154. package/dist/esm-es5/{index-7ec5519a.js → index-2f7fde3d.js} +1 -1
  155. package/dist/esm-es5/index-6ad967f3.js +4 -0
  156. package/dist/esm-es5/{index-5a0f5fd0.js → index-79b30591.js} +1 -1
  157. package/dist/esm-es5/{index-8785a9c6.js → index-cb21eccb.js} +1 -1
  158. package/dist/esm-es5/{index-33f7e3ff.js → index-efb8ecdf.js} +1 -1
  159. package/dist/esm-es5/index.js +1 -1
  160. package/dist/esm-es5/input-shims-2fd7c6ef.js +4 -0
  161. package/dist/esm-es5/{input.utils-1ad8dafc.js → input.utils-961c9f17.js} +1 -1
  162. package/dist/esm-es5/ion-accordion_2.entry.js +1 -1
  163. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  164. package/dist/esm-es5/ion-alert.entry.js +1 -1
  165. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  166. package/dist/esm-es5/ion-back-button.entry.js +1 -1
  167. package/dist/esm-es5/ion-breadcrumb_2.entry.js +1 -1
  168. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  169. package/dist/esm-es5/ion-card_5.entry.js +1 -1
  170. package/dist/esm-es5/ion-checkbox.entry.js +1 -1
  171. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  172. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  173. package/dist/esm-es5/ion-fab_3.entry.js +1 -1
  174. package/dist/esm-es5/ion-img.entry.js +1 -1
  175. package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
  176. package/dist/esm-es5/ion-input-password-toggle.entry.js +1 -1
  177. package/dist/esm-es5/ion-input.entry.js +1 -1
  178. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  179. package/dist/esm-es5/ion-item_8.entry.js +1 -1
  180. package/dist/esm-es5/ion-loading.entry.js +1 -1
  181. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  182. package/dist/esm-es5/ion-modal.entry.js +1 -1
  183. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  184. package/dist/esm-es5/ion-picker-column-option.entry.js +1 -1
  185. package/dist/esm-es5/ion-picker-column.entry.js +1 -1
  186. package/dist/esm-es5/ion-picker.entry.js +1 -1
  187. package/dist/esm-es5/ion-popover.entry.js +1 -1
  188. package/dist/esm-es5/ion-progress-bar.entry.js +1 -1
  189. package/dist/esm-es5/ion-radio_2.entry.js +1 -1
  190. package/dist/esm-es5/ion-range.entry.js +1 -1
  191. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  192. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  193. package/dist/esm-es5/ion-route_4.entry.js +1 -1
  194. package/dist/esm-es5/ion-searchbar.entry.js +1 -1
  195. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  196. package/dist/esm-es5/ion-select-modal.entry.js +1 -1
  197. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  198. package/dist/esm-es5/ion-tab-bar_2.entry.js +1 -1
  199. package/dist/esm-es5/ion-tab_2.entry.js +1 -1
  200. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  201. package/dist/esm-es5/ion-toast.entry.js +1 -1
  202. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  203. package/dist/esm-es5/ionic.js +1 -1
  204. package/dist/esm-es5/{ios.transition-085853ff.js → ios.transition-b1da3753.js} +1 -1
  205. package/dist/esm-es5/loader.js +1 -1
  206. package/dist/esm-es5/md.transition-571b3859.js +4 -0
  207. package/dist/esm-es5/{notch-controller-3dc61260.js → notch-controller-55b09e11.js} +1 -1
  208. package/dist/esm-es5/{overlays-e3d0d356.js → overlays-5deab4de.js} +1 -1
  209. package/dist/esm-es5/status-tap-79eac0ac.js +4 -0
  210. package/dist/esm-es5/{swipe-back-23ee7ab1.js → swipe-back-e5394307.js} +1 -1
  211. package/dist/html.html-data.json +24 -0
  212. package/dist/ionic/index.esm.js +1 -1
  213. package/dist/ionic/ionic.esm.js +1 -1
  214. package/dist/ionic/{p-a9e24ae2.system.entry.js → p-01186920.system.entry.js} +1 -1
  215. package/dist/ionic/p-0430c2e0.entry.js +4 -0
  216. package/dist/ionic/{p-3eaf1444.system.entry.js → p-05b74e45.system.entry.js} +1 -1
  217. package/dist/ionic/{p-bb2a6761.entry.js → p-081a4ce4.entry.js} +1 -1
  218. package/dist/ionic/p-0af823e1.js +4 -0
  219. package/dist/ionic/{p-aa63b365.system.js → p-0eb35a7f.system.js} +1 -1
  220. package/dist/ionic/p-1132ffee.entry.js +4 -0
  221. package/dist/ionic/{p-203633d1.entry.js → p-120fb79a.entry.js} +1 -1
  222. package/dist/ionic/{p-5cde8ef3.entry.js → p-15d18206.entry.js} +1 -1
  223. package/dist/ionic/{p-e8f34871.entry.js → p-15e76dd1.entry.js} +1 -1
  224. package/dist/ionic/{p-7b98cebe.entry.js → p-16188af7.entry.js} +1 -1
  225. package/dist/ionic/{p-5126cf1e.system.js → p-19ea7bff.system.js} +1 -1
  226. package/dist/ionic/{p-d60342e3.js → p-1a5bc5f7.js} +1 -1
  227. package/dist/ionic/{p-42808996.js → p-1ab13b2b.js} +1 -1
  228. package/dist/ionic/{p-84d08aae.system.entry.js → p-1e67b266.system.entry.js} +1 -1
  229. package/dist/ionic/{p-e2e19375.system.entry.js → p-2172893e.system.entry.js} +1 -1
  230. package/dist/ionic/{p-0c9b6d3a.system.entry.js → p-2346ab53.system.entry.js} +1 -1
  231. package/dist/ionic/{p-162c8d0c.system.entry.js → p-248318e0.system.entry.js} +1 -1
  232. package/dist/ionic/{p-f5035354.js → p-28706c6f.js} +1 -1
  233. package/dist/ionic/{p-2515cb4d.system.entry.js → p-2b838f86.system.entry.js} +1 -1
  234. package/dist/ionic/{p-4c252070.entry.js → p-2da9c8a7.entry.js} +1 -1
  235. package/dist/ionic/{p-2ef3c7ee.system.entry.js → p-2e46590d.system.entry.js} +1 -1
  236. package/dist/ionic/{p-e265ae18.system.entry.js → p-302b50bb.system.entry.js} +1 -1
  237. package/dist/ionic/p-322c5fb4.system.js +1 -1
  238. package/dist/ionic/{p-f687573e.system.js → p-343b6b1d.system.js} +1 -1
  239. package/dist/ionic/{p-2bc73fb5.js → p-34b11c24.js} +1 -1
  240. package/dist/ionic/{p-b3680e2f.system.js → p-3ad285e3.system.js} +1 -1
  241. package/dist/ionic/{p-d4ca0475.js → p-3cc276f4.js} +1 -1
  242. package/dist/ionic/p-4c2d5b80.system.js +4 -0
  243. package/dist/ionic/p-4c98e2cf.system.js +4 -0
  244. package/dist/ionic/p-4ec778aa.entry.js +4 -0
  245. package/dist/ionic/{p-4ad78edc.entry.js → p-52d7a191.entry.js} +1 -1
  246. package/dist/ionic/{p-92365bc1.system.entry.js → p-567de071.system.entry.js} +1 -1
  247. package/dist/ionic/p-577bc414.entry.js +4 -0
  248. package/dist/ionic/{p-b91acf8d.system.entry.js → p-585b455c.system.entry.js} +1 -1
  249. package/dist/ionic/{p-da8ef548.system.entry.js → p-58d5df0c.system.entry.js} +1 -1
  250. package/dist/ionic/{p-9eee4de1.system.js → p-5c08627a.system.js} +1 -1
  251. package/dist/ionic/{p-cc700b6b.entry.js → p-5c9eb9af.entry.js} +1 -1
  252. package/dist/ionic/{p-6b1bd0c1.entry.js → p-61db139d.entry.js} +1 -1
  253. package/dist/ionic/{p-f89cf011.system.entry.js → p-63b0abde.system.entry.js} +1 -1
  254. package/dist/ionic/p-67222c16.system.js +4 -0
  255. package/dist/ionic/{p-a4575db1.system.entry.js → p-6933c482.system.entry.js} +1 -1
  256. package/dist/ionic/{p-6190d0d6.entry.js → p-6d6cedc5.entry.js} +1 -1
  257. package/dist/ionic/{p-9a1f985d.system.entry.js → p-6dfb0f39.system.entry.js} +1 -1
  258. package/dist/ionic/{p-7a1766d6.js → p-72812e99.js} +1 -1
  259. package/dist/ionic/p-72bc8a1c.js +4 -0
  260. package/dist/ionic/{p-4346c79d.system.entry.js → p-744c8672.system.entry.js} +1 -1
  261. package/dist/ionic/{p-1bbe8665.system.entry.js → p-74e3f0af.system.entry.js} +2 -2
  262. package/dist/ionic/p-7513b0c4.js +4 -0
  263. package/dist/ionic/{p-f78af648.system.entry.js → p-797eeea8.system.entry.js} +1 -1
  264. package/dist/ionic/{p-83e68c71.entry.js → p-7a02f476.entry.js} +1 -1
  265. package/dist/ionic/{p-14143257.entry.js → p-7a6eaf9e.entry.js} +1 -1
  266. package/dist/ionic/{p-fca17935.entry.js → p-7b9a2b23.entry.js} +1 -1
  267. package/dist/ionic/{p-70ccc275.system.entry.js → p-7ddc46c3.system.entry.js} +1 -1
  268. package/dist/ionic/{p-a2b6dd57.system.js → p-7de1e42c.system.js} +1 -1
  269. package/dist/ionic/{p-0eb2553a.system.entry.js → p-7ed1657c.system.entry.js} +1 -1
  270. package/dist/ionic/{p-95da3ae2.system.js → p-8635f5e6.system.js} +1 -1
  271. package/dist/ionic/{p-803f0bc2.entry.js → p-8694928f.entry.js} +1 -1
  272. package/dist/ionic/{p-da074ff7.entry.js → p-89bf08c7.entry.js} +1 -1
  273. package/dist/ionic/{p-c29f8157.system.entry.js → p-8cfba7e9.system.entry.js} +1 -1
  274. package/dist/ionic/{p-82b931e2.entry.js → p-92763d3d.entry.js} +1 -1
  275. package/dist/ionic/{p-561ddcd4.system.entry.js → p-933727f9.system.entry.js} +2 -2
  276. package/dist/ionic/p-9343a445.js +4 -0
  277. package/dist/ionic/{p-02e23f26.entry.js → p-937a7e21.entry.js} +1 -1
  278. package/dist/ionic/{p-57379000.entry.js → p-948e6c6a.entry.js} +1 -1
  279. package/dist/ionic/{p-77e7b7b6.system.entry.js → p-98231c01.system.entry.js} +1 -1
  280. package/dist/ionic/{p-dc146a2a.system.entry.js → p-985a7e17.system.entry.js} +1 -1
  281. package/dist/ionic/{p-76446a85.entry.js → p-98ff6b32.entry.js} +1 -1
  282. package/dist/ionic/{p-a3c78186.system.entry.js → p-9b122e3c.system.entry.js} +1 -1
  283. package/dist/ionic/{p-0397811d.entry.js → p-9b428d25.entry.js} +1 -1
  284. package/dist/ionic/{p-41780810.entry.js → p-9df2c6fb.entry.js} +1 -1
  285. package/dist/ionic/{p-d3b26da4.system.entry.js → p-9f364443.system.entry.js} +1 -1
  286. package/dist/ionic/{p-3572f86a.system.entry.js → p-a090bce8.system.entry.js} +1 -1
  287. package/dist/ionic/{p-1bc65aec.system.entry.js → p-a0eb506c.system.entry.js} +1 -1
  288. package/dist/ionic/{p-4452a8ac.system.js → p-a15ddedb.system.js} +1 -1
  289. package/dist/ionic/p-a3db8ee3.js +4 -0
  290. package/dist/ionic/{p-e456ee59.system.entry.js → p-a4a2420e.system.entry.js} +1 -1
  291. package/dist/ionic/{p-1a790eef.system.js → p-a88dec0d.system.js} +2 -2
  292. package/dist/ionic/{p-b0d8bbee.entry.js → p-a8f2c254.entry.js} +1 -1
  293. package/dist/ionic/{p-3df889b3.system.entry.js → p-ab674093.system.entry.js} +1 -1
  294. package/dist/ionic/{p-c1b51537.system.js → p-ada36597.system.js} +1 -1
  295. package/dist/ionic/{p-45de8d2a.entry.js → p-b1eb86fd.entry.js} +1 -1
  296. package/dist/ionic/{p-e8232807.system.js → p-b3c60433.system.js} +1 -1
  297. package/dist/ionic/{p-bb11d9fb.js → p-b51e4004.js} +1 -1
  298. package/dist/ionic/{p-13dc21b0.js → p-b6efeab8.js} +1 -1
  299. package/dist/ionic/{p-9b3bb24e.entry.js → p-b9d7015f.entry.js} +1 -1
  300. package/dist/ionic/{p-c32644d7.entry.js → p-bb0db172.entry.js} +1 -1
  301. package/dist/ionic/{p-d06601eb.system.entry.js → p-bdf2cb2e.system.entry.js} +1 -1
  302. package/dist/ionic/{p-c8d645b3.entry.js → p-c41ac815.entry.js} +1 -1
  303. package/dist/ionic/{p-340e3f24.system.js → p-c4238c12.system.js} +1 -1
  304. package/dist/ionic/p-c4b53b16.system.entry.js +4 -0
  305. package/dist/ionic/{p-dd0c9350.system.entry.js → p-cac0e0b3.system.entry.js} +1 -1
  306. package/dist/ionic/{p-51dec25d.js → p-cb13696c.js} +1 -1
  307. package/dist/ionic/{p-7b96e5c1.system.entry.js → p-cba1f9bc.system.entry.js} +1 -1
  308. package/dist/ionic/p-cdc83025.entry.js +4 -0
  309. package/dist/ionic/p-d1c5b60e.system.js +4 -0
  310. package/dist/ionic/{p-881d9e52.system.js → p-d22e2a38.system.js} +1 -1
  311. package/dist/ionic/{p-9be5f3ee.system.entry.js → p-d6eaffb1.system.entry.js} +2 -2
  312. package/dist/ionic/{p-955c3eb8.entry.js → p-d7aa6b00.entry.js} +1 -1
  313. package/dist/ionic/p-d7dd8fb1.entry.js +4 -0
  314. package/dist/ionic/{p-265939f0.entry.js → p-de930745.entry.js} +1 -1
  315. package/dist/ionic/{p-57ceead7.entry.js → p-e06057c9.entry.js} +1 -1
  316. package/dist/ionic/{p-91f17b25.system.entry.js → p-e09d6392.system.entry.js} +2 -2
  317. package/dist/ionic/p-e3171ff3.entry.js +4 -0
  318. package/dist/ionic/{p-f301a694.system.entry.js → p-e4ee80be.system.entry.js} +1 -1
  319. package/dist/ionic/p-e4fde4fb.system.entry.js +4 -0
  320. package/dist/ionic/p-e6376b93.system.entry.js +4 -0
  321. package/dist/ionic/{p-f42743d1.entry.js → p-e76dae93.entry.js} +1 -1
  322. package/dist/ionic/p-e8d56122.js +4 -0
  323. package/dist/ionic/{p-e1bbacb7.entry.js → p-eef505e8.entry.js} +1 -1
  324. package/dist/ionic/{p-26194519.entry.js → p-f1060cd8.entry.js} +1 -1
  325. package/dist/ionic/{p-d192fdf7.system.entry.js → p-f1120724.system.entry.js} +1 -1
  326. package/dist/ionic/{p-02e1ebd9.js → p-f1c4dcd4.js} +1 -1
  327. package/dist/ionic/{p-32e99b0a.entry.js → p-f63c2d12.entry.js} +1 -1
  328. package/dist/ionic/{p-ffc48bc5.system.entry.js → p-fbd41a7e.system.entry.js} +1 -1
  329. package/dist/ionic/{p-e97a3f44.entry.js → p-fceec762.entry.js} +1 -1
  330. package/dist/types/components/checkbox/checkbox.d.ts +25 -0
  331. package/dist/types/components/modal/animations/sheet.d.ts +1 -0
  332. package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
  333. package/dist/types/components/modal/modal-interface.d.ts +1 -0
  334. package/dist/types/components/modal/modal.d.ts +11 -0
  335. package/dist/types/components/segment-button/segment-button.d.ts +1 -2
  336. package/dist/types/components/select/select.d.ts +6 -0
  337. package/dist/types/components/toggle/toggle.d.ts +6 -0
  338. package/dist/types/components/toolbar/toolbar.d.ts +4 -0
  339. package/dist/types/components.d.ts +48 -0
  340. package/dist/types/utils/config.d.ts +9 -0
  341. package/dist/types/utils/helpers.d.ts +0 -1
  342. package/dist/types/utils/logging/index.d.ts +13 -1
  343. package/hydrate/index.js +346 -139
  344. package/hydrate/index.mjs +346 -139
  345. package/package.json +3 -3
  346. package/dist/esm-es5/index-9b0d46f4.js +0 -4
  347. package/dist/esm-es5/input-shims-0e65111b.js +0 -4
  348. package/dist/esm-es5/md.transition-33826623.js +0 -4
  349. package/dist/esm-es5/status-tap-163e8128.js +0 -4
  350. package/dist/ionic/p-06fee233.js +0 -4
  351. package/dist/ionic/p-075a94bd.js +0 -4
  352. package/dist/ionic/p-0a59f4fa.entry.js +0 -4
  353. package/dist/ionic/p-0e43be1b.entry.js +0 -4
  354. package/dist/ionic/p-0ee3b5a2.system.js +0 -4
  355. package/dist/ionic/p-135e5731.js +0 -4
  356. package/dist/ionic/p-1f405274.js +0 -4
  357. package/dist/ionic/p-25fa1d30.system.entry.js +0 -4
  358. package/dist/ionic/p-2c9eb774.system.js +0 -4
  359. package/dist/ionic/p-48a8d9b4.system.entry.js +0 -4
  360. package/dist/ionic/p-56da53ad.system.entry.js +0 -4
  361. package/dist/ionic/p-61d044b4.entry.js +0 -4
  362. package/dist/ionic/p-68dc53a5.js +0 -4
  363. package/dist/ionic/p-84b1b9a0.entry.js +0 -4
  364. package/dist/ionic/p-8a836849.entry.js +0 -4
  365. package/dist/ionic/p-af09741c.entry.js +0 -4
  366. package/dist/ionic/p-b7433d7d.js +0 -4
  367. package/dist/ionic/p-df862603.entry.js +0 -4
  368. package/dist/ionic/p-e308de5b.system.js +0 -4
  369. package/dist/ionic/p-ff4b7e40.system.js +0 -4
@@ -6,10 +6,10 @@ import { i as inheritAriaAttributes, e as renderHiddenInput } from './helpers.js
6
6
  import { c as createColorClasses, h as hostContext } from './theme.js';
7
7
  import { b as getIonMode } from './ionic-global.js';
8
8
 
9
- const checkboxIosCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:0.125rem;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--size:min(1.375rem, 55.836px);--checkmark-width:1.5px}:host(.checkbox-disabled){opacity:0.3}";
9
+ const checkboxIosCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}.checkbox-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.checkbox-label-placement-stacked) .checkbox-bottom{font-size:1rem}.checkbox-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.checkbox-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .checkbox-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .checkbox-bottom .helper-text{display:none}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:0.125rem;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--size:min(1.375rem, 55.836px);--checkmark-width:1.5px}:host(.checkbox-disabled){opacity:0.3}";
10
10
  const IonCheckboxIosStyle0 = checkboxIosCss;
11
11
 
12
- const checkboxMdCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:calc(var(--size) * .125);--border-width:2px;--border-style:solid;--border-color:rgb(var(--ion-text-color-rgb, 0, 0, 0), 0.6);--checkmark-width:3;--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--transition:background 180ms cubic-bezier(0.4, 0, 0.2, 1);--size:18px}.checkbox-icon path{stroke-dasharray:30;stroke-dashoffset:30}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{stroke-dashoffset:0;-webkit-transition:stroke-dashoffset 90ms linear 90ms;transition:stroke-dashoffset 90ms linear 90ms}:host(.checkbox-disabled) .label-text-wrapper{opacity:0.38}:host(.checkbox-disabled) .native-wrapper{opacity:0.63}";
12
+ const checkboxMdCss = ":host{--checkbox-background-checked:var(--ion-color-primary, #0054e9);--border-color-checked:var(--ion-color-primary, #0054e9);--checkmark-color:var(--ion-color-primary-contrast, #fff);--transition:none;display:inline-block;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.in-item){-ms-flex:1 1 0px;flex:1 1 0;width:100%;height:100%}:host([slot=start]),:host([slot=end]){-ms-flex:initial;flex:initial;width:auto}:host(.ion-color){--checkbox-background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}.checkbox-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;height:inherit;cursor:inherit}.label-text-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host(.in-item) .label-text-wrapper,:host(.in-item:not(.checkbox-label-placement-stacked):not([slot])) .native-wrapper{margin-top:10px;margin-bottom:10px}:host(.in-item.checkbox-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.checkbox-label-placement-stacked) .native-wrapper{margin-bottom:10px}.label-text-wrapper-hidden{display:none}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.checkbox-icon{border-radius:var(--border-radius);position:relative;width:var(--size);height:var(--size);-webkit-transition:var(--transition);transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--checkbox-background);-webkit-box-sizing:border-box;box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}.checkbox-bottom{padding-top:4px;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:0.75rem;white-space:normal}:host(.checkbox-label-placement-stacked) .checkbox-bottom{font-size:1rem}.checkbox-bottom .error-text{display:none;color:var(--ion-color-danger, #c5000f)}.checkbox-bottom .helper-text{display:block;color:var(--ion-color-step-700, var(--ion-text-color-step-300, #4d4d4d))}:host(.ion-touched.ion-invalid) .checkbox-bottom .error-text{display:block}:host(.ion-touched.ion-invalid) .checkbox-bottom .helper-text{display:none}:host(.checkbox-label-placement-start) .checkbox-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.checkbox-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-end) .checkbox-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse;-ms-flex-pack:start;justify-content:start}:host(.checkbox-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px}:host(.checkbox-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.checkbox-label-placement-stacked) .checkbox-wrapper{-ms-flex-direction:column;flex-direction:column;text-align:center}:host(.checkbox-label-placement-stacked) .label-text-wrapper{-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-start) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-start .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-start:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper{-webkit-transform-origin:center top;transform-origin:center top}:host-context([dir=rtl]):host(.checkbox-label-placement-stacked.checkbox-alignment-center) .label-text-wrapper,:host-context([dir=rtl]).checkbox-label-placement-stacked.checkbox-alignment-center .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}@supports selector(:dir(rtl)){:host(.checkbox-label-placement-stacked.checkbox-alignment-center:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:calc(100% - center) top;transform-origin:calc(100% - center) top}}:host(.checkbox-justify-space-between) .checkbox-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.checkbox-justify-start) .checkbox-wrapper{-ms-flex-pack:start;justify-content:start}:host(.checkbox-justify-end) .checkbox-wrapper{-ms-flex-pack:end;justify-content:end}:host(.checkbox-alignment-start) .checkbox-wrapper{-ms-flex-align:start;align-items:start}:host(.checkbox-alignment-center) .checkbox-wrapper{-ms-flex-align:center;align-items:center}:host(.checkbox-justify-space-between),:host(.checkbox-justify-start),:host(.checkbox-justify-end),:host(.checkbox-alignment-start),:host(.checkbox-alignment-center){display:block}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--checkbox-background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:calc(var(--size) * .125);--border-width:2px;--border-style:solid;--border-color:rgb(var(--ion-text-color-rgb, 0, 0, 0), 0.6);--checkmark-width:3;--checkbox-background:var(--ion-item-background, var(--ion-background-color, #fff));--transition:background 180ms cubic-bezier(0.4, 0, 0.2, 1);--size:18px}.checkbox-icon path{stroke-dasharray:30;stroke-dashoffset:30}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{stroke-dashoffset:0;-webkit-transition:stroke-dashoffset 90ms linear 90ms;transition:stroke-dashoffset 90ms linear 90ms}:host(.checkbox-disabled) .label-text-wrapper{opacity:0.38}:host(.checkbox-disabled) .native-wrapper{opacity:0.63}";
13
13
  const IonCheckboxMdStyle0 = checkboxMdCss;
14
14
 
15
15
  const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLElement {
@@ -21,6 +21,8 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
21
21
  this.ionFocus = createEvent(this, "ionFocus", 7);
22
22
  this.ionBlur = createEvent(this, "ionBlur", 7);
23
23
  this.inputId = `ion-cb-${checkboxIds++}`;
24
+ this.helperTextId = `${this.inputId}-helper-text`;
25
+ this.errorTextId = `${this.inputId}-error-text`;
24
26
  this.inheritedAttributes = {};
25
27
  /**
26
28
  * Sets the checked property and emits
@@ -58,10 +60,13 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
58
60
  this.checked = false;
59
61
  this.indeterminate = false;
60
62
  this.disabled = false;
63
+ this.errorText = undefined;
64
+ this.helperText = undefined;
61
65
  this.value = 'on';
62
66
  this.labelPlacement = 'start';
63
67
  this.justify = undefined;
64
68
  this.alignment = undefined;
69
+ this.required = false;
65
70
  }
66
71
  componentWillLoad() {
67
72
  this.inheritedAttributes = Object.assign({}, inheritAriaAttributes(this.el));
@@ -72,12 +77,38 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
72
77
  this.focusEl.focus();
73
78
  }
74
79
  }
80
+ getHintTextID() {
81
+ const { el, helperText, errorText, helperTextId, errorTextId } = this;
82
+ if (el.classList.contains('ion-touched') && el.classList.contains('ion-invalid') && errorText) {
83
+ return errorTextId;
84
+ }
85
+ if (helperText) {
86
+ return helperTextId;
87
+ }
88
+ return undefined;
89
+ }
90
+ /**
91
+ * Responsible for rendering helper text and error text.
92
+ * This element should only be rendered if hint text is set.
93
+ */
94
+ renderHintText() {
95
+ const { helperText, errorText, helperTextId, errorTextId } = this;
96
+ /**
97
+ * undefined and empty string values should
98
+ * be treated as not having helper/error text.
99
+ */
100
+ const hasHintText = !!helperText || !!errorText;
101
+ if (!hasHintText) {
102
+ return;
103
+ }
104
+ return (h("div", { class: "checkbox-bottom" }, h("div", { id: helperTextId, class: "helper-text", part: "supporting-text helper-text" }, helperText), h("div", { id: errorTextId, class: "error-text", part: "supporting-text error-text" }, errorText)));
105
+ }
75
106
  render() {
76
- const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, } = this;
107
+ const { color, checked, disabled, el, getSVGPath, indeterminate, inheritedAttributes, inputId, justify, labelPlacement, name, value, alignment, required, } = this;
77
108
  const mode = getIonMode(this);
78
109
  const path = getSVGPath(mode, indeterminate);
79
110
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
80
- return (h(Host, { key: '6dc787e1100521d08c4900104e1a3e2f594e919f', "aria-checked": indeterminate ? 'mixed' : `${checked}`, class: createColorClasses(color, {
111
+ return (h(Host, { key: '7ac31df89b07c781ddcd30a6a8c109494d0c500a', "aria-checked": indeterminate ? 'mixed' : `${checked}`, "aria-describedby": this.getHintTextID(), "aria-invalid": this.getHintTextID() === this.errorTextId, class: createColorClasses(color, {
81
112
  [mode]: true,
82
113
  'in-item': hostContext('ion-item', el),
83
114
  'checkbox-checked': checked,
@@ -87,10 +118,10 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
87
118
  [`checkbox-justify-${justify}`]: justify !== undefined,
88
119
  [`checkbox-alignment-${alignment}`]: alignment !== undefined,
89
120
  [`checkbox-label-placement-${labelPlacement}`]: true,
90
- }), onClick: this.onClick }, h("label", { key: '68222fb736a5ec3f2e488649b0e2ce0417dcb224', class: "checkbox-wrapper" }, h("input", Object.assign({ key: 'f12962d7e9b19c744cfdbdeccc67ae7f5d080281', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) }, inheritedAttributes)), h("div", { key: 'c72df2699414b1e5a41a1bc267bc634f0c93dcff', class: {
121
+ }), onClick: this.onClick }, h("label", { key: '674e923fe1ec83a33c31d67b0d414d61ba8f9e4b', class: "checkbox-wrapper" }, h("input", Object.assign({ key: 'c4866e392fbdf3b76edcd1507cb67f40a213a4e7', type: "checkbox", checked: checked ? true : undefined, disabled: disabled, id: inputId, onChange: this.toggleChecked, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl), required: required }, inheritedAttributes)), h("div", { key: '79cb96e5963b9331a760438ec8cc9e456215de91', class: {
91
122
  'label-text-wrapper': true,
92
123
  'label-text-wrapper-hidden': el.textContent === '',
93
- }, part: "label" }, h("slot", { key: 'a2a80285178a7e0e3b536fc9ca26b8b444aa4307' })), h("div", { key: 'c2b05e0d1fe8df5dcd72858220b5ff51ecaee4cc', class: "native-wrapper" }, h("svg", { key: 'ee24913fded72258ebd9713654a6dba92a18fcf7', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
124
+ }, part: "label" }, h("slot", { key: '896cb26292c9a4a6c105afb39611472b93bf5e90' }), this.renderHintText()), h("div", { key: '52cd22e79fd5db30b45d7b092aa5af3944392336', class: "native-wrapper" }, h("svg", { key: '18d862ab7cc32055eaf200eea560ff1b2b6cbde0', class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path)))));
94
125
  }
95
126
  getSVGPath(mode, indeterminate) {
96
127
  let path = indeterminate ? (h("path", { d: "M6 12L18 12", part: "mark" })) : (h("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
@@ -110,10 +141,13 @@ const Checkbox = /*@__PURE__*/ proxyCustomElement(class Checkbox extends HTMLEle
110
141
  "checked": [1028],
111
142
  "indeterminate": [1028],
112
143
  "disabled": [4],
144
+ "errorText": [1, "error-text"],
145
+ "helperText": [1, "helper-text"],
113
146
  "value": [8],
114
147
  "labelPlacement": [1, "label-placement"],
115
148
  "justify": [1],
116
149
  "alignment": [1],
150
+ "required": [4],
117
151
  "setFocus": [64]
118
152
  }]);
119
153
  let checkboxIds = 0;
@@ -358,15 +358,5 @@ const shallowEqualStringMap = (map1, map2) => {
358
358
  }
359
359
  return true;
360
360
  };
361
- const getNextSiblingOfType = (element) => {
362
- let sibling = element.nextSibling;
363
- while (sibling) {
364
- if (sibling.nodeType === Node.ELEMENT_NODE && sibling !== null) {
365
- return sibling;
366
- }
367
- sibling = sibling.nextSibling;
368
- }
369
- return null;
370
- };
371
361
 
372
- export { addEventListener as a, removeEventListener as b, componentOnReady as c, inheritAttributes as d, renderHiddenInput as e, focusVisibleElement as f, getElementRoot as g, hasShadowDom as h, inheritAriaAttributes as i, hasLazyBuild as j, clamp as k, debounceEvent as l, isEndSide as m, assert as n, debounce as o, getNextSiblingOfType as p, pointerCoord as q, raf as r, shallowEqualStringMap as s, transitionEndAsync as t };
362
+ export { addEventListener as a, removeEventListener as b, componentOnReady as c, inheritAttributes as d, renderHiddenInput as e, focusVisibleElement as f, getElementRoot as g, hasShadowDom as h, inheritAriaAttributes as i, hasLazyBuild as j, clamp as k, debounceEvent as l, isEndSide as m, assert as n, debounce as o, pointerCoord as p, raf as r, shallowEqualStringMap as s, transitionEndAsync as t };
@@ -1,6 +1,8 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
+ import { c as config } from './ionic-global.js';
5
+
4
6
  /**
5
7
  * Logs a warning to the console with an Ionic prefix
6
8
  * to indicate the library that is warning the developer.
@@ -8,9 +10,12 @@
8
10
  * @param message - The string message to be logged to the console.
9
11
  */
10
12
  const printIonWarning = (message, ...params) => {
11
- return console.warn(`[Ionic Warning]: ${message}`, ...params);
13
+ const logLevel = config.get('logLevel', "WARN" /* LogLevel.WARN */);
14
+ if (["WARN" /* LogLevel.WARN */].includes(logLevel)) {
15
+ return console.warn(`[Ionic Warning]: ${message}`, ...params);
16
+ }
12
17
  };
13
- /*
18
+ /**
14
19
  * Logs an error to the console with an Ionic prefix
15
20
  * to indicate the library that is warning the developer.
16
21
  *
@@ -18,7 +23,10 @@ const printIonWarning = (message, ...params) => {
18
23
  * @param params - Additional arguments to supply to the console.error.
19
24
  */
20
25
  const printIonError = (message, ...params) => {
21
- return console.error(`[Ionic Error]: ${message}`, ...params);
26
+ const logLevel = config.get('logLevel', "ERROR" /* LogLevel.ERROR */);
27
+ if (["ERROR" /* LogLevel.ERROR */, "WARN" /* LogLevel.WARN */].includes(logLevel)) {
28
+ return console.error(`[Ionic Error]: ${message}`, ...params);
29
+ }
22
30
  };
23
31
  /**
24
32
  * Prints an error informing developers that an implementation requires an element to be used
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { d as doc } from './index5.js';
5
- import { q as pointerCoord } from './helpers.js';
5
+ import { p as pointerCoord } from './helpers.js';
6
6
 
7
7
  const startTapClick = (config) => {
8
8
  if (doc === undefined) {
@@ -2,7 +2,7 @@
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, forceUpdate, h, Host } from '@stencil/core/internal/client';
5
- import { a as addEventListener, b as removeEventListener, d as inheritAttributes, p as getNextSiblingOfType } from './helpers.js';
5
+ import { a as addEventListener, b as removeEventListener, d as inheritAttributes } from './helpers.js';
6
6
  import { h as hostContext } from './theme.js';
7
7
  import { b as getIonMode } from './ionic-global.js';
8
8
  import { d as defineCustomElement$2 } from './ripple-effect.js';
@@ -43,35 +43,7 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
43
43
  valueChanged() {
44
44
  this.updateState();
45
45
  }
46
- waitForSegmentContent(ionSegment, contentId) {
47
- return new Promise((resolve, reject) => {
48
- let timeoutId = undefined;
49
- let animationFrameId;
50
- const check = () => {
51
- if (!ionSegment) {
52
- reject(new Error(`Segment not found when looking for Segment Content`));
53
- return;
54
- }
55
- const segmentView = getNextSiblingOfType(ionSegment); // Skip the text nodes
56
- const segmentContent = segmentView === null || segmentView === void 0 ? void 0 : segmentView.querySelector(`ion-segment-content[id="${contentId}"]`);
57
- if (segmentContent && timeoutId) {
58
- clearTimeout(timeoutId); // Clear the timeout if the segmentContent is found
59
- cancelAnimationFrame(animationFrameId);
60
- resolve(segmentContent);
61
- }
62
- else {
63
- animationFrameId = requestAnimationFrame(check); // Keep checking on the next animation frame
64
- }
65
- };
66
- check();
67
- // Set a timeout to reject the promise
68
- timeoutId = setTimeout(() => {
69
- cancelAnimationFrame(animationFrameId);
70
- reject(new Error(`Unable to find Segment Content with id="${contentId} within 1000 ms`));
71
- }, 1000);
72
- });
73
- }
74
- async connectedCallback() {
46
+ connectedCallback() {
75
47
  const segmentEl = (this.segmentEl = this.el.closest('ion-segment'));
76
48
  if (segmentEl) {
77
49
  this.updateState();
@@ -81,14 +53,11 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
81
53
  // Return if there is no contentId defined
82
54
  if (!this.contentId)
83
55
  return;
84
- let segmentContent;
85
- try {
86
- // Attempt to find the Segment Content by its contentId
87
- segmentContent = await this.waitForSegmentContent(segmentEl, this.contentId);
88
- }
89
- catch (error) {
90
- // If no associated Segment Content exists, log an error and return
91
- console.error('Segment Button: ', error.message);
56
+ // Attempt to find the Segment Content by its contentId
57
+ const segmentContent = document.getElementById(this.contentId);
58
+ // If no associated Segment Content exists, log an error and return
59
+ if (!segmentContent) {
60
+ console.error(`Segment Button: Unable to find Segment Content with id="${this.contentId}".`);
92
61
  return;
93
62
  }
94
63
  // Ensure the found element is a valid ION-SEGMENT-CONTENT
@@ -134,7 +103,7 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
134
103
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
135
104
  const mode = getIonMode(this);
136
105
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
137
- return (h(Host, { key: 'f9da656c8eccb80e4ef30e3fa977f2dbbefbc988', class: {
106
+ return (h(Host, { key: 'd50a5d5e2f6206e8523598f258d8217d2903f69b', class: {
138
107
  [mode]: true,
139
108
  'in-toolbar': hostContext('ion-toolbar', this.el),
140
109
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -150,7 +119,7 @@ const SegmentButton = /*@__PURE__*/ proxyCustomElement(class SegmentButton exten
150
119
  'ion-activatable': true,
151
120
  'ion-activatable-instant': true,
152
121
  'ion-focusable': true,
153
- } }, h("button", Object.assign({ key: '00dbcdbd81cd74abdd39803f6840a6e477cc7b0c', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), h("span", { key: '5200c082a9c4788010c4fc33fe75e2b2ad28364a', class: "button-inner" }, h("slot", { key: 'cf3fce2b5d22436b84cd4367a5885df7d6a2715f' })), mode === 'md' && h("ion-ripple-effect", { key: 'f1a2816465f4c2c06644be07315bff2da77e2342' })), h("div", { key: 'aaf31c0ed39641fca698ee98d0773131f4eea6bd', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, h("div", { key: 'fc556651361b7ac305aaedd25ea4afe3173abd20', part: "indicator-background", class: "segment-button-indicator-background" }))));
122
+ } }, h("button", Object.assign({ key: 'b4f6f145286ba8ab79669e11035b906daa85ae7e', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), h("span", { key: '67965996c9ffe70553875e00d3da0ae5b2b1d814', class: "button-inner" }, h("slot", { key: '5087988fe45a8fdf388ec44c395d0b745b207806' })), mode === 'md' && h("ion-ripple-effect", { key: 'b24858de0750bbc769b3183fac0077dfe817ba27' })), h("div", { key: '97b4359432acd1c9da0816360cd1df9472e183f7', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, h("div", { key: '0561738ea15b0986f4ed3d8276d5e6f2d13f7e51', part: "indicator-background", class: "segment-button-indicator-background" }))));
154
123
  }
155
124
  get el() { return this; }
156
125
  static get watchers() { return {
@@ -4,7 +4,7 @@
4
4
  import { proxyCustomElement, HTMLElement, createEvent, h, Host, forceUpdate } from '@stencil/core/internal/client';
5
5
  import { c as createNotchController } from './notch-controller.js';
6
6
  import { i as isOptionSelected, c as compareOptions, d as defineCustomElement$8 } from './radio.js';
7
- import { d as inheritAttributes, e as renderHiddenInput, f as focusVisibleElement } from './helpers.js';
7
+ import { d as inheritAttributes, f as focusVisibleElement, e as renderHiddenInput } from './helpers.js';
8
8
  import { c as popoverController, b as actionSheetController, a as alertController, m as modalController } from './overlays.js';
9
9
  import { i as isRTL } from './dir.js';
10
10
  import { h as hostContext, c as createColorClasses } from './theme.js';
@@ -115,6 +115,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
115
115
  this.expandedIcon = undefined;
116
116
  this.shape = undefined;
117
117
  this.value = undefined;
118
+ this.required = false;
118
119
  }
119
120
  styleChanged() {
120
121
  this.emitStyle();
@@ -177,8 +178,15 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
177
178
  }
178
179
  this.isExpanded = true;
179
180
  const overlay = (this.overlay = await this.createOverlay(event));
180
- // Add logic to scroll selected item into view before presenting
181
- const scrollSelectedIntoView = () => {
181
+ overlay.onDidDismiss().then(() => {
182
+ this.overlay = undefined;
183
+ this.isExpanded = false;
184
+ this.ionDismiss.emit();
185
+ this.setFocus();
186
+ });
187
+ await overlay.present();
188
+ // focus selected option for popovers and modals
189
+ if (this.interface === 'popover' || this.interface === 'modal') {
182
190
  const indexOfSelected = this.childOpts.findIndex((o) => o.value === this.value);
183
191
  if (indexOfSelected > -1) {
184
192
  const selectedItem = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
@@ -196,7 +204,6 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
196
204
  */
197
205
  const interactiveEl = selectedItem.querySelector('ion-radio, ion-checkbox');
198
206
  if (interactiveEl) {
199
- selectedItem.scrollIntoView({ block: 'nearest' });
200
207
  // Needs to be called before `focusVisibleElement` to prevent issue with focus event bubbling
201
208
  // and removing `ion-focused` style
202
209
  interactiveEl.setFocus();
@@ -220,40 +227,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
220
227
  focusVisibleElement(firstEnabledOption.closest('ion-item'));
221
228
  }
222
229
  }
223
- };
224
- // For modals and popovers, we can scroll before they're visible
225
- if (this.interface === 'modal') {
226
- overlay.addEventListener('ionModalWillPresent', scrollSelectedIntoView, { once: true });
227
- }
228
- else if (this.interface === 'popover') {
229
- overlay.addEventListener('ionPopoverWillPresent', scrollSelectedIntoView, { once: true });
230
230
  }
231
- else {
232
- /**
233
- * For alerts and action sheets, we need to wait a frame after willPresent
234
- * because these overlays don't have their content in the DOM immediately
235
- * when willPresent fires. By waiting a frame, we ensure the content is
236
- * rendered and can be properly scrolled into view.
237
- */
238
- const scrollAfterRender = () => {
239
- requestAnimationFrame(() => {
240
- scrollSelectedIntoView();
241
- });
242
- };
243
- if (this.interface === 'alert') {
244
- overlay.addEventListener('ionAlertWillPresent', scrollAfterRender, { once: true });
245
- }
246
- else if (this.interface === 'action-sheet') {
247
- overlay.addEventListener('ionActionSheetWillPresent', scrollAfterRender, { once: true });
248
- }
249
- }
250
- overlay.onDidDismiss().then(() => {
251
- this.overlay = undefined;
252
- this.isExpanded = false;
253
- this.ionDismiss.emit();
254
- this.setFocus();
255
- });
256
- await overlay.present();
257
231
  return overlay;
258
232
  }
259
233
  createOverlay(ev) {
@@ -633,8 +607,8 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
633
607
  return renderedLabel;
634
608
  }
635
609
  renderListbox() {
636
- const { disabled, inputId, isExpanded } = this;
637
- 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) }));
610
+ const { disabled, inputId, isExpanded, required } = this;
611
+ return (h("button", { disabled: disabled, id: inputId, "aria-label": this.ariaLabel, "aria-haspopup": "dialog", "aria-expanded": `${isExpanded}`, "aria-required": `${required}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) }));
638
612
  }
639
613
  render() {
640
614
  const { disabled, el, isExpanded, expandedIcon, labelPlacement, justify, placeholder, fill, shape, name, value } = this;
@@ -665,7 +639,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
665
639
  * TODO(FW-5592): Remove hasStartEndSlots condition
666
640
  */
667
641
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
668
- return (h(Host, { key: 'b2dca9ae25d88e4d9fdb55003041a66be5668fcf', onClick: this.onClick, class: createColorClasses(this.color, {
642
+ return (h(Host, { key: '491cf1b0e3aa31e7c9cfad3e87d83eb54272312a', onClick: this.onClick, class: createColorClasses(this.color, {
669
643
  [mode]: true,
670
644
  'in-item': inItem,
671
645
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -681,7 +655,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
681
655
  [`select-justify-${justify}`]: justifyEnabled,
682
656
  [`select-shape-${shape}`]: shape !== undefined,
683
657
  [`select-label-placement-${labelPlacement}`]: true,
684
- }) }, 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" }))));
658
+ }) }, h("label", { key: '07bf3cb57bd1121383d8c746e3ac49da38300082', class: "select-wrapper", id: "select-label" }, this.renderLabelContainer(), h("div", { key: '884facd18342797576bbacc761d18d83c52762e3', class: "select-wrapper-inner" }, h("slot", { key: 'c4f2a2a7a76f52db15f9a0b806017caea443c47a', name: "start" }), h("div", { key: '235cf383f268cc74412722cd31e246cbd4c2abe5', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), h("slot", { key: '1481302e11c494d49dfd80a7aaf743f7e851558f', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && h("div", { key: '8a45ea9280651695c8e5435f266c286f3e3f6a18', class: "select-highlight" }))));
685
659
  }
686
660
  get el() { return this; }
687
661
  static get watchers() { return {
@@ -714,6 +688,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class Select extends HTMLElement
714
688
  "expandedIcon": [1, "expanded-icon"],
715
689
  "shape": [1],
716
690
  "value": [1032],
691
+ "required": [4],
717
692
  "isExpanded": [32],
718
693
  "open": [64]
719
694
  }, undefined, {
@@ -75,6 +75,7 @@ const Toggle = /*@__PURE__*/ proxyCustomElement(class Toggle extends HTMLElement
75
75
  this.labelPlacement = 'start';
76
76
  this.justify = undefined;
77
77
  this.alignment = undefined;
78
+ this.required = false;
78
79
  }
79
80
  disabledChanged() {
80
81
  if (this.gesture) {
@@ -156,12 +157,12 @@ const Toggle = /*@__PURE__*/ proxyCustomElement(class Toggle extends HTMLElement
156
157
  return this.el.textContent !== '';
157
158
  }
158
159
  render() {
159
- const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment } = this;
160
+ const { activated, color, checked, disabled, el, justify, labelPlacement, inputId, name, alignment, required } = this;
160
161
  const mode = getIonMode(this);
161
162
  const value = this.getValue();
162
163
  const rtl = isRTL(el) ? 'rtl' : 'ltr';
163
164
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
164
- return (h(Host, { key: 'f52195ec3bc14c024647cb41319c32a4cd330e19', onClick: this.onClick, class: createColorClasses(color, {
165
+ return (h(Host, { key: 'ed75573caa6e37011f1453dd7f723fb9bd8a3656', onClick: this.onClick, class: createColorClasses(color, {
165
166
  [mode]: true,
166
167
  'in-item': hostContext('ion-item', el),
167
168
  'toggle-activated': activated,
@@ -171,10 +172,10 @@ const Toggle = /*@__PURE__*/ proxyCustomElement(class Toggle extends HTMLElement
171
172
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
172
173
  [`toggle-label-placement-${labelPlacement}`]: true,
173
174
  [`toggle-${rtl}`]: true,
174
- }) }, 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: {
175
+ }) }, 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: {
175
176
  'label-text-wrapper': true,
176
177
  'label-text-wrapper-hidden': !this.hasLabel,
177
- }, part: "label" }, h("slot", { key: '80a6672e2e792c15011a9496dcd75363cdba31c6' })), h("div", { key: '2b2b318b38ab27b194c0dab4cecd77d9d780f2ca', class: "native-wrapper" }, this.renderToggleControl()))));
178
+ }, part: "label" }, h("slot", { key: '9495a4a39889822ee68e0d89dc5a2f863d1feb3c' })), h("div", { key: '55f1eb08c4b705e94fbcf02220bbe1d292f06155', class: "native-wrapper" }, this.renderToggleControl()))));
178
179
  }
179
180
  get el() { return this; }
180
181
  static get watchers() { return {
@@ -194,6 +195,7 @@ const Toggle = /*@__PURE__*/ proxyCustomElement(class Toggle extends HTMLElement
194
195
  "labelPlacement": [1, "label-placement"],
195
196
  "justify": [1],
196
197
  "alignment": [1],
198
+ "required": [4],
197
199
  "activated": [32]
198
200
  }, undefined, {
199
201
  "disabled": ["disabledChanged"]