@ionic/core 9.0.1-dev.11787177893.1979eb13 → 9.0.1-nightly.20260820

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 (595) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-accordion-group.js +1 -1
  3. package/components/ion-accordion.js +1 -1
  4. package/components/ion-action-sheet.js +1 -1
  5. package/components/ion-alert.js +1 -1
  6. package/components/ion-app.js +1 -1
  7. package/components/ion-avatar.js +1 -1
  8. package/components/ion-back-button.js +1 -1
  9. package/components/ion-backdrop.js +1 -1
  10. package/components/ion-badge.js +1 -1
  11. package/components/ion-breadcrumb.js +1 -1
  12. package/components/ion-breadcrumbs.js +1 -1
  13. package/components/ion-button.js +1 -1
  14. package/components/ion-buttons.js +1 -1
  15. package/components/ion-card-content.js +1 -1
  16. package/components/ion-card-header.js +1 -1
  17. package/components/ion-card-subtitle.js +1 -1
  18. package/components/ion-card-title.js +1 -1
  19. package/components/ion-card.js +1 -1
  20. package/components/ion-checkbox.js +1 -1
  21. package/components/ion-chip.js +1 -1
  22. package/components/ion-col.js +1 -1
  23. package/components/ion-content.js +1 -1
  24. package/components/ion-datetime-button.js +1 -1
  25. package/components/ion-datetime.js +1 -1
  26. package/components/ion-fab-button.js +1 -1
  27. package/components/ion-fab-list.js +1 -1
  28. package/components/ion-fab.js +1 -1
  29. package/components/ion-footer.js +1 -1
  30. package/components/ion-grid.js +1 -1
  31. package/components/ion-header.js +1 -1
  32. package/components/ion-icon.js +1 -1
  33. package/components/ion-img.js +1 -1
  34. package/components/ion-infinite-scroll-content.js +1 -1
  35. package/components/ion-infinite-scroll.js +1 -1
  36. package/components/ion-input-otp.js +1 -1
  37. package/components/ion-input-password-toggle.js +1 -1
  38. package/components/ion-input.js +1 -1
  39. package/components/ion-item-divider.js +1 -1
  40. package/components/ion-item-group.js +1 -1
  41. package/components/ion-item-option.js +1 -1
  42. package/components/ion-item-options.js +1 -1
  43. package/components/ion-item-sliding.js +1 -1
  44. package/components/ion-item.js +1 -1
  45. package/components/ion-label.js +1 -1
  46. package/components/ion-list-header.js +1 -1
  47. package/components/ion-list.js +1 -1
  48. package/components/ion-loading.js +1 -1
  49. package/components/ion-menu-button.js +1 -1
  50. package/components/ion-menu-toggle.js +1 -1
  51. package/components/ion-menu.js +1 -1
  52. package/components/ion-modal.js +1 -1
  53. package/components/ion-nav-link.js +1 -1
  54. package/components/ion-nav.js +1 -1
  55. package/components/ion-note.js +1 -1
  56. package/components/ion-picker-column-option.js +1 -1
  57. package/components/ion-picker-column.js +1 -1
  58. package/components/ion-picker.js +1 -1
  59. package/components/ion-popover.js +1 -1
  60. package/components/ion-progress-bar.js +1 -1
  61. package/components/ion-radio-group.js +1 -1
  62. package/components/ion-radio.js +1 -1
  63. package/components/ion-range.js +1 -1
  64. package/components/ion-refresher-content.js +1 -1
  65. package/components/ion-refresher.js +1 -1
  66. package/components/ion-reorder-group.js +1 -1
  67. package/components/ion-reorder.js +1 -1
  68. package/components/ion-ripple-effect.js +1 -1
  69. package/components/ion-route-redirect.js +1 -1
  70. package/components/ion-route.js +1 -1
  71. package/components/ion-router-link.js +1 -1
  72. package/components/ion-router-outlet.js +1 -1
  73. package/components/ion-router.js +1 -1
  74. package/components/ion-row.js +1 -1
  75. package/components/ion-searchbar.js +1 -1
  76. package/components/ion-segment-button.js +1 -1
  77. package/components/ion-segment-content.js +1 -1
  78. package/components/ion-segment-view.js +1 -1
  79. package/components/ion-segment.js +1 -1
  80. package/components/ion-select-modal.js +1 -1
  81. package/components/ion-select-option.js +1 -1
  82. package/components/ion-select-popover.js +1 -1
  83. package/components/ion-select.js +1 -1
  84. package/components/ion-skeleton-text.js +1 -1
  85. package/components/ion-spinner.js +1 -1
  86. package/components/ion-split-pane.js +1 -1
  87. package/components/ion-tab-bar.js +1 -1
  88. package/components/ion-tab-button.js +1 -1
  89. package/components/ion-tab.js +1 -1
  90. package/components/ion-tabs.js +1 -1
  91. package/components/ion-text.js +1 -1
  92. package/components/ion-textarea.js +1 -1
  93. package/components/ion-thumbnail.js +1 -1
  94. package/components/ion-title.js +1 -1
  95. package/components/ion-toast.js +1 -1
  96. package/components/ion-toggle.js +1 -1
  97. package/components/ion-toolbar.js +1 -1
  98. package/components/{p-63OhffQv.js → p-66ogmUZU.js} +1 -1
  99. package/components/p-6Vp915Y7.js +4 -0
  100. package/components/p-7PNwKFZi.js +4 -0
  101. package/components/{p-G0TxqHfe.js → p-A8MJRBIY.js} +1 -1
  102. package/components/p-AQcCdH2_.js +4 -0
  103. package/{dist/ionic/p-Dn0mqQ_R.js → components/p-B6x5_b9w.js} +1 -1
  104. package/components/p-B8MQjdvk.js +4 -0
  105. package/components/p-BA_4ZIEg.js +4 -0
  106. package/components/p-BFtL8t1r.js +4 -0
  107. package/components/{p-DaA_8eqt.js → p-BMfgF-Tv.js} +1 -1
  108. package/components/p-BPDxVIRr.js +4 -0
  109. package/components/p-BSARlp49.js +4 -0
  110. package/components/p-B_gJaBk0.js +4 -0
  111. package/components/p-BdwCtX8Y.js +4 -0
  112. package/components/p-Bg4OwDwb.js +4 -0
  113. package/components/{p-DV85C0e0.js → p-BgUIV8NQ.js} +1 -1
  114. package/components/p-Bnc0m4SW.js +4 -0
  115. package/components/p-BpLt_Ptn.js +4 -0
  116. package/components/p-BqBDq1Ma.js +4 -0
  117. package/components/{p-C_phlPMC.js → p-BrFaQbGY.js} +1 -1
  118. package/{dist/ionic/p-Cdjxf_yg.js → components/p-BuPAFTWI.js} +1 -1
  119. package/components/p-Bx2saTHs.js +4 -0
  120. package/components/p-BxhE2W85.js +4 -0
  121. package/components/p-CHswSpKy.js +4 -0
  122. package/components/{p-fruGqVHh.js → p-CQAjyETU.js} +1 -1
  123. package/components/{p-1jI5oW-W.js → p-CR9OgE6N.js} +1 -1
  124. package/components/p-CWETxTjE.js +4 -0
  125. package/components/p-CaZeZIL2.js +4 -0
  126. package/components/p-CaiZOhfC.js +4 -0
  127. package/components/p-CgvDC7hC.js +4 -0
  128. package/components/{p-BqPNzJf6.js → p-CqyGR9Aq.js} +1 -1
  129. package/components/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
  130. package/components/p-D7ysFE2B.js +4 -0
  131. package/{dist/ionic/p-4eOQC00Z.js → components/p-DCWfzDM8.js} +1 -1
  132. package/components/{p-DwpKZ6rl.js → p-DDdkefwf.js} +1 -1
  133. package/components/{p-DzRT60Tw.js → p-DEW7CnUc.js} +1 -1
  134. package/components/p-DQ1IPvZO.js +4 -0
  135. package/components/p-DcOH6-o5.js +4 -0
  136. package/components/{p-DD5fQ4EQ.js → p-DfdYCsov.js} +1 -1
  137. package/components/{p-DSzSbVP2.js → p-DhOoEIAs.js} +1 -1
  138. package/components/{p-DM-PrAoh.js → p-Dl_7b_UJ.js} +1 -1
  139. package/components/p-DqAI6tg7.js +4 -0
  140. package/components/p-DrehWDfv.js +4 -0
  141. package/components/{p-ryyf_ItD.js → p-DysqCsJu.js} +1 -1
  142. package/components/p-H1f2qsk4.js +4 -0
  143. package/components/p-HVYBAhFx.js +4 -0
  144. package/components/{p-CbhUdtjf.js → p-Kmrg3Fed.js} +1 -1
  145. package/components/{p-Bjig0DJK.js → p-RFfE9hF6.js} +1 -1
  146. package/{dist/ionic/p-CBWAXjA5.js → components/p-SR-LLqp_.js} +1 -1
  147. package/components/p-eFI3mtEX.js +4 -0
  148. package/components/p-gFwXiYC_.js +4 -0
  149. package/components/p-tX3UxCnU.js +4 -0
  150. package/components/p-v2NpoOHp.js +4 -0
  151. package/dist/cjs/{animation-C0mOHzej.js → animation-D-OqR4a4.js} +1 -1
  152. package/dist/cjs/{app-globals-BREG4twP.js → app-globals-BzgwARwJ.js} +1 -1
  153. package/dist/cjs/{button-active-CVMevT9a.js → button-active-BlWSD7uK.js} +2 -2
  154. package/dist/cjs/{format-pp0Du3K-.js → format-D7ig6Vm0.js} +1 -1
  155. package/dist/cjs/{framework-delegate-Dfo5XsGv.js → framework-delegate-BZUx4TnE.js} +1 -1
  156. package/dist/cjs/{gesture-controller-BDUH7687.js → gesture-controller-CeJslptU.js} +6 -14
  157. package/dist/cjs/{hardware-back-button-fqpYh-kd.js → hardware-back-button-JOAEFSzc.js} +1 -1
  158. package/dist/cjs/{helpers-YPQybDph.js → helpers-Dj5o76mq.js} +1 -1
  159. package/dist/cjs/{index-BLdJCcJY.js → index-2sO-zkZ2.js} +4 -4
  160. package/dist/cjs/{index-uvry__L4.js → index-BrVMoqUk.js} +3 -1
  161. package/dist/cjs/{index-zVCah4Uz.js → index-C8zH6b3d.js} +2 -2
  162. package/dist/cjs/{index-DXsPSne6.js → index-CZ6vzt_q.js} +5 -5
  163. package/dist/cjs/{index-DDg31ZF5.js → index-Csue6G3m.js} +2 -2
  164. package/dist/cjs/{index-DwlRtFZe.js → index-DRPqwSvU.js} +1 -1
  165. package/dist/cjs/{index-B7zJsYWS.js → index-EJLjthTK.js} +1 -2
  166. package/dist/cjs/index.cjs.js +14 -14
  167. package/dist/cjs/{input-shims-Cbu1fcye.js → input-shims-Bh7bnt2v.js} +3 -3
  168. package/dist/cjs/{input.utils-BZdMWVrt.js → input.utils-Cq3g9uHy.js} +1 -1
  169. package/dist/cjs/ion-accordion_2.cjs.entry.js +335 -364
  170. package/dist/cjs/ion-action-sheet.cjs.entry.js +60 -140
  171. package/dist/cjs/ion-alert.cjs.entry.js +67 -159
  172. package/dist/cjs/ion-app_8.cjs.entry.js +163 -258
  173. package/dist/cjs/ion-avatar_3.cjs.entry.js +2 -8
  174. package/dist/cjs/ion-back-button.cjs.entry.js +21 -45
  175. package/dist/cjs/ion-backdrop.cjs.entry.js +14 -18
  176. package/dist/cjs/ion-breadcrumb_2.cjs.entry.js +117 -195
  177. package/dist/cjs/ion-button_2.cjs.entry.js +61 -130
  178. package/dist/cjs/ion-card_5.cjs.entry.js +28 -80
  179. package/dist/cjs/ion-checkbox.cjs.entry.js +98 -147
  180. package/dist/cjs/ion-chip.cjs.entry.js +10 -16
  181. package/dist/cjs/ion-col_3.cjs.entry.js +6 -126
  182. package/dist/cjs/ion-datetime-button.cjs.entry.js +232 -248
  183. package/dist/cjs/ion-datetime.cjs.entry.js +775 -953
  184. package/dist/cjs/ion-fab_3.cjs.entry.js +78 -136
  185. package/dist/cjs/ion-img.cjs.entry.js +11 -31
  186. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +71 -98
  187. package/dist/cjs/ion-input-otp.cjs.entry.js +352 -424
  188. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +14 -29
  189. package/dist/cjs/ion-input.cjs.entry.js +158 -302
  190. package/dist/cjs/ion-item-option_3.cjs.entry.js +45 -87
  191. package/dist/cjs/ion-item_8.cjs.entry.js +61 -157
  192. package/dist/cjs/ion-loading.cjs.entry.js +54 -131
  193. package/dist/cjs/ion-menu_3.cjs.entry.js +94 -158
  194. package/dist/cjs/ion-modal.cjs.entry.js +206 -362
  195. package/dist/cjs/ion-nav_2.cjs.entry.js +26 -78
  196. package/dist/cjs/ion-picker-column-option.cjs.entry.js +23 -33
  197. package/dist/cjs/ion-picker-column.cjs.entry.js +389 -410
  198. package/dist/cjs/ion-picker.cjs.entry.js +390 -400
  199. package/dist/cjs/ion-popover.cjs.entry.js +184 -292
  200. package/dist/cjs/ion-progress-bar.cjs.entry.js +23 -29
  201. package/dist/cjs/ion-radio_2.cjs.entry.js +128 -201
  202. package/dist/cjs/ion-range.cjs.entry.js +223 -293
  203. package/dist/cjs/ion-refresher_2.cjs.entry.js +82 -161
  204. package/dist/cjs/ion-reorder_2.cjs.entry.js +19 -49
  205. package/dist/cjs/ion-ripple-effect.cjs.entry.js +13 -13
  206. package/dist/cjs/ion-route_4.cjs.entry.js +45 -144
  207. package/dist/cjs/ion-searchbar.cjs.entry.js +182 -268
  208. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  209. package/dist/cjs/ion-segment-view.cjs.entry.js +12 -24
  210. package/dist/cjs/ion-segment_2.cjs.entry.js +111 -154
  211. package/dist/cjs/ion-select-modal.cjs.entry.js +19 -21
  212. package/dist/cjs/ion-select_3.cjs.entry.js +151 -319
  213. package/dist/cjs/ion-spinner.cjs.entry.js +6 -21
  214. package/dist/cjs/ion-split-pane.cjs.entry.js +14 -27
  215. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +32 -89
  216. package/dist/cjs/ion-tab_2.cjs.entry.js +22 -49
  217. package/dist/cjs/ion-text.cjs.entry.js +2 -8
  218. package/dist/cjs/ion-textarea.cjs.entry.js +139 -256
  219. package/dist/cjs/ion-toast.cjs.entry.js +106 -221
  220. package/dist/cjs/ion-toggle.cjs.entry.js +114 -165
  221. package/dist/cjs/{ionic-global-k6hOWWpn.js → ionic-global-DvgIzM2F.js} +1 -1
  222. package/dist/cjs/ionic.cjs.js +4 -4
  223. package/dist/cjs/{ios.transition-zTmJz8T-.js → ios.transition-zIgdoSYe.js} +4 -4
  224. package/dist/cjs/{item-multiple-inputs-BdYSbfKN.js → item-multiple-inputs-DG-ZGm6j.js} +1 -1
  225. package/dist/cjs/loader.cjs.js +4 -4
  226. package/dist/cjs/{md.transition-nb_4pUXu.js → md.transition-CXeJ9rfh.js} +4 -4
  227. package/dist/cjs/{overlays-KaNVDNqC.js → overlays-Bg0auTQa.js} +6 -6
  228. package/dist/cjs/{select-option-render-pULCGldr.js → select-option-render-7m1WdFzF.js} +2 -2
  229. package/dist/cjs/{slot-mutation-controller-DPHmqXdV.js → slot-mutation-controller-BJEJzx_e.js} +1 -1
  230. package/dist/cjs/{status-tap-o9IIymsP.js → status-tap-DxbUM5XX.js} +3 -3
  231. package/dist/cjs/{swipe-back-B7X9VOlH.js → swipe-back-F_DBt-Aw.js} +4 -4
  232. package/dist/collection/components/accordion/accordion.js +310 -314
  233. package/dist/collection/components/accordion-group/accordion-group.js +23 -46
  234. package/dist/collection/components/action-sheet/action-sheet.js +49 -128
  235. package/dist/collection/components/action-sheet/test/basic/fixture.js +0 -3
  236. package/dist/collection/components/alert/alert.js +56 -147
  237. package/dist/collection/components/app/app.js +0 -3
  238. package/dist/collection/components/back-button/back-button.js +19 -42
  239. package/dist/collection/components/backdrop/backdrop.js +14 -16
  240. package/dist/collection/components/badge/badge.js +0 -6
  241. package/dist/collection/components/breadcrumb/breadcrumb.js +29 -90
  242. package/dist/collection/components/breadcrumbs/breadcrumbs.js +87 -102
  243. package/dist/collection/components/button/button.js +59 -127
  244. package/dist/collection/components/buttons/buttons.js +15 -13
  245. package/dist/collection/components/card/card.js +20 -53
  246. package/dist/collection/components/card-header/card-header.js +8 -12
  247. package/dist/collection/components/card-subtitle/card-subtitle.js +0 -6
  248. package/dist/collection/components/card-title/card-title.js +0 -6
  249. package/dist/collection/components/checkbox/checkbox.js +95 -143
  250. package/dist/collection/components/chip/chip.js +10 -14
  251. package/dist/collection/components/col/col.js +0 -120
  252. package/dist/collection/components/content/content.js +60 -90
  253. package/dist/collection/components/datetime/datetime.js +762 -939
  254. package/dist/collection/components/datetime-button/datetime-button.js +229 -244
  255. package/dist/collection/components/fab/fab.js +13 -20
  256. package/dist/collection/components/fab-button/fab-button.js +54 -103
  257. package/dist/collection/components/fab-list/fab-list.js +11 -10
  258. package/dist/collection/components/footer/footer.js +43 -49
  259. package/dist/collection/components/grid/grid.js +6 -4
  260. package/dist/collection/components/header/header.js +23 -33
  261. package/dist/collection/components/img/img.js +9 -28
  262. package/dist/collection/components/infinite-scroll/infinite-scroll.js +66 -73
  263. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +3 -20
  264. package/dist/collection/components/input/input.js +154 -297
  265. package/dist/collection/components/input-otp/input-otp.js +350 -421
  266. package/dist/collection/components/input-password-toggle/input-password-toggle.js +13 -27
  267. package/dist/collection/components/item/item.js +37 -80
  268. package/dist/collection/components/item-divider/item-divider.js +10 -15
  269. package/dist/collection/components/item-option/item-option.js +20 -48
  270. package/dist/collection/components/item-options/item-options.js +7 -10
  271. package/dist/collection/components/item-sliding/item-sliding.js +16 -24
  272. package/dist/collection/components/label/label.js +4 -24
  273. package/dist/collection/components/list/list.js +6 -9
  274. package/dist/collection/components/list-header/list-header.js +0 -10
  275. package/dist/collection/components/loading/loading.js +46 -122
  276. package/dist/collection/components/menu/menu.js +55 -99
  277. package/dist/collection/components/menu-button/menu-button.js +19 -28
  278. package/dist/collection/components/menu-toggle/menu-toggle.js +13 -20
  279. package/dist/collection/components/modal/modal.js +196 -351
  280. package/dist/collection/components/modal/test/fixtures.js +0 -3
  281. package/dist/collection/components/nav/nav.js +12 -45
  282. package/dist/collection/components/nav/view-controller.js +1 -7
  283. package/dist/collection/components/nav-link/nav-link.js +9 -20
  284. package/dist/collection/components/note/note.js +0 -6
  285. package/dist/collection/components/picker/picker.js +388 -397
  286. package/dist/collection/components/picker-column/picker-column.js +389 -409
  287. package/dist/collection/components/picker-column-option/picker-column-option.js +21 -30
  288. package/dist/collection/components/popover/popover.js +176 -283
  289. package/dist/collection/components/popover/test/fixture.js +0 -1
  290. package/dist/collection/components/progress-bar/progress-bar.js +22 -26
  291. package/dist/collection/components/radio/radio.js +62 -98
  292. package/dist/collection/components/radio-group/radio-group.js +64 -99
  293. package/dist/collection/components/radio-group/test/fixtures.js +0 -2
  294. package/dist/collection/components/range/range.js +220 -289
  295. package/dist/collection/components/refresher/refresher.js +72 -112
  296. package/dist/collection/components/refresher-content/refresher-content.js +3 -40
  297. package/dist/collection/components/reorder/reorder.js +0 -1
  298. package/dist/collection/components/reorder-group/reorder-group.js +14 -43
  299. package/dist/collection/components/ripple-effect/ripple-effect.js +12 -11
  300. package/dist/collection/components/route/route.js +9 -38
  301. package/dist/collection/components/route-redirect/route-redirect.js +0 -31
  302. package/dist/collection/components/router/router.js +27 -35
  303. package/dist/collection/components/router/utils/matching.js +0 -1
  304. package/dist/collection/components/router-link/router-link.js +10 -35
  305. package/dist/collection/components/router-outlet/router-outlet.js +12 -34
  306. package/dist/collection/components/searchbar/searchbar.js +180 -265
  307. package/dist/collection/components/segment/segment.js +76 -113
  308. package/dist/collection/components/segment-button/segment-button.js +33 -37
  309. package/dist/collection/components/segment-view/segment-view.js +12 -23
  310. package/dist/collection/components/select/select.js +127 -240
  311. package/dist/collection/components/select-modal/select-modal.js +11 -12
  312. package/dist/collection/components/select-modal/test/fixtures.js +1 -8
  313. package/dist/collection/components/select-option/select-option.js +7 -44
  314. package/dist/collection/components/select-popover/select-popover.js +10 -25
  315. package/dist/collection/components/select-popover/test/fixtures.js +1 -8
  316. package/dist/collection/components/skeleton-text/skeleton-text.js +6 -10
  317. package/dist/collection/components/spinner/spinner.js +6 -19
  318. package/dist/collection/components/split-pane/split-pane.js +13 -25
  319. package/dist/collection/components/tab/tab.js +4 -15
  320. package/dist/collection/components/tab-bar/tab-bar.js +12 -30
  321. package/dist/collection/components/tab-button/tab-button.js +19 -56
  322. package/dist/collection/components/tabs/tabs.js +17 -31
  323. package/dist/collection/components/text/text.js +0 -6
  324. package/dist/collection/components/textarea/textarea.js +135 -251
  325. package/dist/collection/components/title/title.js +0 -16
  326. package/dist/collection/components/toast/toast.js +97 -211
  327. package/dist/collection/components/toggle/toggle.js +111 -161
  328. package/dist/collection/components/toolbar/toolbar.js +3 -8
  329. package/dist/collection/global/config.js +3 -1
  330. package/dist/collection/utils/gesture/gesture-controller.js +6 -14
  331. package/dist/collection/utils/sanitization/index.js +0 -1
  332. package/dist/collection/utils/test/playwright/page/event-spy.js +8 -9
  333. package/dist/collection/utils/test/press-keys.js +1 -4
  334. package/dist/docs.json +1 -1
  335. package/dist/esm/{animation-CGFdmGk9.js → animation-TxGPYeDn.js} +1 -1
  336. package/dist/esm/{app-globals-CYmMeGdU.js → app-globals-Do8rJest.js} +1 -1
  337. package/dist/esm/{button-active-BDOsVAiZ.js → button-active-ChA4D-ml.js} +2 -2
  338. package/dist/esm/{format-Dcwga61t.js → format-CVk5e_GP.js} +2 -2
  339. package/dist/esm/{framework-delegate-BHTU2Ip9.js → framework-delegate-DaLWnISz.js} +1 -1
  340. package/dist/esm/{gesture-controller-TXPDHL13.js → gesture-controller-B_gJaBk0.js} +6 -14
  341. package/dist/esm/{hardware-back-button-gLJHMX_F.js → hardware-back-button-D8W4L0JP.js} +1 -1
  342. package/dist/esm/{helpers-CAGf8Wgp.js → helpers-BIgoInJU.js} +1 -1
  343. package/dist/esm/{index-DcPaH5uL.js → index-BmLuEdV7.js} +1 -1
  344. package/dist/esm/{index-T0JxBI8V.js → index-BmOR8tCv.js} +2 -2
  345. package/dist/esm/{index-CqneaaGd.js → index-C5ZdL0qp.js} +5 -5
  346. package/dist/esm/{index-WlteAIqz.js → index-C8Dsa6li.js} +4 -4
  347. package/dist/esm/{index-ChhhtsGZ.js → index-CKYcsw8f.js} +3 -1
  348. package/dist/esm/{index-Clc-28O1.js → index-DHw2lZxe.js} +2 -2
  349. package/dist/esm/{index-CKM1DdGm.js → index-elneMH8y.js} +1 -2
  350. package/dist/esm/index.js +14 -14
  351. package/dist/esm/{input-shims-B8sfni1e.js → input-shims-09NN97kF.js} +3 -3
  352. package/dist/esm/{input.utils-B1ValN_N.js → input.utils-BxyH9l1w.js} +1 -1
  353. package/dist/esm/ion-accordion_2.entry.js +335 -364
  354. package/dist/esm/ion-action-sheet.entry.js +60 -140
  355. package/dist/esm/ion-alert.entry.js +67 -159
  356. package/dist/esm/ion-app_8.entry.js +163 -258
  357. package/dist/esm/ion-avatar_3.entry.js +2 -8
  358. package/dist/esm/ion-back-button.entry.js +21 -45
  359. package/dist/esm/ion-backdrop.entry.js +14 -18
  360. package/dist/esm/ion-breadcrumb_2.entry.js +117 -195
  361. package/dist/esm/ion-button_2.entry.js +61 -130
  362. package/dist/esm/ion-card_5.entry.js +28 -80
  363. package/dist/esm/ion-checkbox.entry.js +98 -147
  364. package/dist/esm/ion-chip.entry.js +10 -16
  365. package/dist/esm/ion-col_3.entry.js +6 -126
  366. package/dist/esm/ion-datetime-button.entry.js +232 -248
  367. package/dist/esm/ion-datetime.entry.js +775 -953
  368. package/dist/esm/ion-fab_3.entry.js +78 -136
  369. package/dist/esm/ion-img.entry.js +11 -31
  370. package/dist/esm/ion-infinite-scroll_2.entry.js +71 -98
  371. package/dist/esm/ion-input-otp.entry.js +352 -424
  372. package/dist/esm/ion-input-password-toggle.entry.js +14 -29
  373. package/dist/esm/ion-input.entry.js +158 -302
  374. package/dist/esm/ion-item-option_3.entry.js +45 -87
  375. package/dist/esm/ion-item_8.entry.js +61 -157
  376. package/dist/esm/ion-loading.entry.js +54 -131
  377. package/dist/esm/ion-menu_3.entry.js +94 -158
  378. package/dist/esm/ion-modal.entry.js +206 -362
  379. package/dist/esm/ion-nav_2.entry.js +26 -78
  380. package/dist/esm/ion-picker-column-option.entry.js +23 -33
  381. package/dist/esm/ion-picker-column.entry.js +389 -410
  382. package/dist/esm/ion-picker.entry.js +390 -400
  383. package/dist/esm/ion-popover.entry.js +184 -292
  384. package/dist/esm/ion-progress-bar.entry.js +23 -29
  385. package/dist/esm/ion-radio_2.entry.js +128 -201
  386. package/dist/esm/ion-range.entry.js +223 -293
  387. package/dist/esm/ion-refresher_2.entry.js +82 -161
  388. package/dist/esm/ion-reorder_2.entry.js +19 -49
  389. package/dist/esm/ion-ripple-effect.entry.js +13 -13
  390. package/dist/esm/ion-route_4.entry.js +45 -144
  391. package/dist/esm/ion-searchbar.entry.js +182 -268
  392. package/dist/esm/ion-segment-content.entry.js +1 -1
  393. package/dist/esm/ion-segment-view.entry.js +12 -24
  394. package/dist/esm/ion-segment_2.entry.js +111 -154
  395. package/dist/esm/ion-select-modal.entry.js +19 -21
  396. package/dist/esm/ion-select_3.entry.js +151 -319
  397. package/dist/esm/ion-spinner.entry.js +6 -21
  398. package/dist/esm/ion-split-pane.entry.js +14 -27
  399. package/dist/esm/ion-tab-bar_2.entry.js +32 -89
  400. package/dist/esm/ion-tab_2.entry.js +22 -49
  401. package/dist/esm/ion-text.entry.js +2 -8
  402. package/dist/esm/ion-textarea.entry.js +139 -256
  403. package/dist/esm/ion-toast.entry.js +106 -221
  404. package/dist/esm/ion-toggle.entry.js +114 -165
  405. package/dist/esm/{ionic-global-BVB7BrLT.js → ionic-global-lrowsHfi.js} +1 -1
  406. package/dist/esm/ionic.js +5 -5
  407. package/dist/esm/{ios.transition-DXRCmcbC.js → ios.transition-BQhADrk1.js} +4 -4
  408. package/dist/esm/{item-multiple-inputs-rU8VaNNg.js → item-multiple-inputs-D_N3fDkD.js} +1 -1
  409. package/dist/esm/loader.js +5 -5
  410. package/dist/esm/{md.transition-BMngO4i_.js → md.transition-D58NpmRa.js} +4 -4
  411. package/dist/esm/{overlays-CPmIs9Ls.js → overlays-BpnIFlXI.js} +6 -6
  412. package/dist/esm/{select-option-render-C4m76VGH.js → select-option-render-lIuu64EV.js} +2 -2
  413. package/dist/esm/{slot-mutation-controller-DiE_C9un.js → slot-mutation-controller-rS_T3FDR.js} +1 -1
  414. package/dist/esm/{status-tap-CHB7KwIb.js → status-tap-CpFQMLl6.js} +3 -3
  415. package/dist/esm/{swipe-back-C9HW1bug.js → swipe-back-rmc7zeNW.js} +4 -4
  416. package/dist/ionic/index.esm.js +1 -1
  417. package/dist/ionic/ionic.esm.js +1 -1
  418. package/dist/ionic/p-05800a02.entry.js +4 -0
  419. package/dist/ionic/p-0eb50dca.entry.js +4 -0
  420. package/dist/ionic/p-16e9f542.entry.js +4 -0
  421. package/dist/ionic/p-18d532a3.entry.js +4 -0
  422. package/dist/ionic/p-1d694d39.entry.js +4 -0
  423. package/dist/ionic/p-1db2afb4.entry.js +4 -0
  424. package/dist/ionic/p-1df75f9e.entry.js +4 -0
  425. package/dist/ionic/p-295ff427.entry.js +4 -0
  426. package/dist/ionic/p-34b9379b.entry.js +4 -0
  427. package/dist/ionic/p-39a8d4e0.entry.js +4 -0
  428. package/dist/ionic/p-4437015c.entry.js +4 -0
  429. package/dist/ionic/p-478035a7.entry.js +4 -0
  430. package/dist/ionic/p-485fb218.entry.js +4 -0
  431. package/dist/ionic/p-48c859fe.entry.js +4 -0
  432. package/dist/ionic/p-49b9d405.entry.js +4 -0
  433. package/dist/ionic/p-56307aea.entry.js +4 -0
  434. package/dist/ionic/p-5ee2d7b1.entry.js +4 -0
  435. package/dist/ionic/p-5f216b79.entry.js +4 -0
  436. package/dist/ionic/p-61c799d1.entry.js +4 -0
  437. package/dist/ionic/p-63bbba8d.entry.js +4 -0
  438. package/dist/ionic/p-68507e70.entry.js +4 -0
  439. package/dist/ionic/{p-ded69ceb.entry.js → p-6f048604.entry.js} +1 -1
  440. package/dist/ionic/p-70ee8888.entry.js +4 -0
  441. package/dist/ionic/p-72ad7c64.entry.js +4 -0
  442. package/dist/ionic/p-75887ee0.entry.js +4 -0
  443. package/dist/ionic/p-873a315a.entry.js +4 -0
  444. package/dist/ionic/p-881b6954.entry.js +4 -0
  445. package/dist/ionic/p-886d9e66.entry.js +4 -0
  446. package/dist/ionic/p-8e007f11.entry.js +4 -0
  447. package/dist/ionic/p-8f464a8f.entry.js +4 -0
  448. package/dist/ionic/p-8f51110d.entry.js +4 -0
  449. package/dist/ionic/p-90ba736e.entry.js +4 -0
  450. package/dist/ionic/p-959df5f8.entry.js +4 -0
  451. package/dist/ionic/p-9e455875.entry.js +4 -0
  452. package/dist/ionic/{p-CBR_W98Z.js → p-9wczfs_v.js} +1 -1
  453. package/dist/ionic/p-B1Y7LZhV.js +4 -0
  454. package/dist/ionic/p-B5RyLYvl.js +4 -0
  455. package/dist/ionic/{p-CPcPmkGv.js → p-BQv5i5Kf.js} +1 -1
  456. package/{components/p-8FN7p701.js → dist/ionic/p-BZVE25Gu.js} +1 -1
  457. package/{components/p-DFvZn99E.js → dist/ionic/p-BZxjcGRP.js} +1 -1
  458. package/dist/ionic/p-B_gJaBk0.js +4 -0
  459. package/dist/ionic/p-BnGA34Pd.js +4 -0
  460. package/dist/ionic/p-ByLaqOPm.js +4 -0
  461. package/dist/ionic/p-C06QNN45.js +4 -0
  462. package/dist/ionic/p-C4IBDDj6.js +4 -0
  463. package/dist/ionic/p-CCVlNZ__.js +4 -0
  464. package/dist/ionic/{p-CMRtMbJc.js → p-CDBop-kz.js} +1 -1
  465. package/dist/ionic/p-CKYcsw8f.js +5 -0
  466. package/dist/ionic/p-CazSodad.js +4 -0
  467. package/{components/p-ia3IDdJS.js → dist/ionic/p-ClrlQU2y.js} +1 -1
  468. package/dist/ionic/{p-UIBJkZf8.js → p-D0YpjgON.js} +1 -1
  469. package/dist/ionic/p-D0dfUysx.js +4 -0
  470. package/dist/ionic/{p-BB0LlG4y.js → p-D9yvytgv.js} +1 -1
  471. package/{components/p-C5KYjZWD.js → dist/ionic/p-DF_Uqql8.js} +1 -1
  472. package/dist/ionic/{p-BYEAtHr-.js → p-DXJgZWgi.js} +1 -1
  473. package/dist/ionic/{p-D94_RztK.js → p-DdhHqKj-.js} +1 -1
  474. package/dist/ionic/p-De0eY881.js +4 -0
  475. package/dist/ionic/p-DgUL3JbO.js +4 -0
  476. package/dist/ionic/{p-7CBuOvEo.js → p-RzUn7cKs.js} +1 -1
  477. package/dist/ionic/p-VquyMbjp.js +4 -0
  478. package/dist/ionic/p-a0fee899.entry.js +4 -0
  479. package/dist/ionic/p-a54bcd16.entry.js +4 -0
  480. package/dist/ionic/p-aebc4d69.entry.js +4 -0
  481. package/dist/ionic/p-b5f37106.entry.js +4 -0
  482. package/dist/ionic/{p-40424a88.entry.js → p-b62bfce8.entry.js} +1 -1
  483. package/dist/ionic/p-b7a11b58.entry.js +4 -0
  484. package/dist/ionic/p-bbf6878c.entry.js +4 -0
  485. package/dist/ionic/p-c49165af.entry.js +4 -0
  486. package/dist/ionic/p-cad4eccf.entry.js +4 -0
  487. package/dist/ionic/p-cdc5115e.entry.js +4 -0
  488. package/dist/ionic/p-d3384a40.entry.js +4 -0
  489. package/dist/ionic/p-d8bae128.entry.js +4 -0
  490. package/dist/ionic/p-d8deff43.entry.js +4 -0
  491. package/dist/ionic/p-ddfb7e5f.entry.js +4 -0
  492. package/dist/ionic/p-e538f18d.entry.js +4 -0
  493. package/dist/ionic/p-f376876b.entry.js +4 -0
  494. package/dist/ionic/p-f521b13c.entry.js +4 -0
  495. package/dist/ionic/p-fbd83d4c.entry.js +4 -0
  496. package/dist/types/components/refresher/refresher.d.ts +0 -7
  497. package/hydrate/index.js +5423 -8369
  498. package/hydrate/index.mjs +5423 -8369
  499. package/package.json +1 -1
  500. package/components/p--m5cCjbK.js +0 -4
  501. package/components/p-B4uHHhPK.js +0 -4
  502. package/components/p-BNJOu1Q2.js +0 -4
  503. package/components/p-BOvLNVKq.js +0 -4
  504. package/components/p-BeamQXHF.js +0 -4
  505. package/components/p-BjluhQMI.js +0 -4
  506. package/components/p-BlsIikdZ.js +0 -4
  507. package/components/p-BrD9Xv62.js +0 -4
  508. package/components/p-BvJqoZ5R.js +0 -4
  509. package/components/p-Bz6z3Asd.js +0 -4
  510. package/components/p-C6HnVvHO.js +0 -4
  511. package/components/p-C7jvh5Wy.js +0 -4
  512. package/components/p-C9BGR5fy.js +0 -4
  513. package/components/p-CB-y1CdP.js +0 -4
  514. package/components/p-CHH3loEE.js +0 -4
  515. package/components/p-CJKUWjmg.js +0 -4
  516. package/components/p-CMLAwl_N.js +0 -4
  517. package/components/p-CejmQs3h.js +0 -4
  518. package/components/p-CtZqa4HM.js +0 -4
  519. package/components/p-D9qIVSWm.js +0 -4
  520. package/components/p-DE-3iMNW.js +0 -4
  521. package/components/p-DHFt2rdc.js +0 -4
  522. package/components/p-D_RCyzwu.js +0 -4
  523. package/components/p-D_tD8r3L.js +0 -4
  524. package/components/p-DjCtLZbF.js +0 -4
  525. package/components/p-Dmd2xqCe.js +0 -4
  526. package/components/p-G6JR-cr_.js +0 -4
  527. package/components/p-GG5GhznE.js +0 -4
  528. package/components/p-TXPDHL13.js +0 -4
  529. package/components/p-_IKFD3ID.js +0 -4
  530. package/components/p-dKq2jIum.js +0 -4
  531. package/components/p-iYhH60Tc.js +0 -4
  532. package/dist/ionic/p-06ec7136.entry.js +0 -4
  533. package/dist/ionic/p-09fe4fa3.entry.js +0 -4
  534. package/dist/ionic/p-10d45a07.entry.js +0 -4
  535. package/dist/ionic/p-208c8a07.entry.js +0 -4
  536. package/dist/ionic/p-212474fa.entry.js +0 -4
  537. package/dist/ionic/p-2eef1396.entry.js +0 -4
  538. package/dist/ionic/p-347e005d.entry.js +0 -4
  539. package/dist/ionic/p-3b071259.entry.js +0 -4
  540. package/dist/ionic/p-4204184c.entry.js +0 -4
  541. package/dist/ionic/p-47464391.entry.js +0 -4
  542. package/dist/ionic/p-4f9c9126.entry.js +0 -4
  543. package/dist/ionic/p-5JsKPLJD.js +0 -4
  544. package/dist/ionic/p-5bc485c6.entry.js +0 -4
  545. package/dist/ionic/p-603a61e6.entry.js +0 -4
  546. package/dist/ionic/p-60576951.entry.js +0 -4
  547. package/dist/ionic/p-67a81d33.entry.js +0 -4
  548. package/dist/ionic/p-6affb775.entry.js +0 -4
  549. package/dist/ionic/p-6f120c25.entry.js +0 -4
  550. package/dist/ionic/p-71c82b60.entry.js +0 -4
  551. package/dist/ionic/p-79325ffe.entry.js +0 -4
  552. package/dist/ionic/p-7e4d51fa.entry.js +0 -4
  553. package/dist/ionic/p-7f5d4664.entry.js +0 -4
  554. package/dist/ionic/p-80ee82fc.entry.js +0 -4
  555. package/dist/ionic/p-84af7dbc.entry.js +0 -4
  556. package/dist/ionic/p-89ca830a.entry.js +0 -4
  557. package/dist/ionic/p-93b8ec8f.entry.js +0 -4
  558. package/dist/ionic/p-946f65c2.entry.js +0 -4
  559. package/dist/ionic/p-983b6c91.entry.js +0 -4
  560. package/dist/ionic/p-9c4b39fb.entry.js +0 -4
  561. package/dist/ionic/p-B1NEZUzQ.js +0 -4
  562. package/dist/ionic/p-B1ck5iy-.js +0 -4
  563. package/dist/ionic/p-B4FrqdW0.js +0 -4
  564. package/dist/ionic/p-C-94tAim.js +0 -4
  565. package/dist/ionic/p-C-eHZMYE.js +0 -4
  566. package/dist/ionic/p-CaRuIadB.js +0 -4
  567. package/dist/ionic/p-ChhhtsGZ.js +0 -5
  568. package/dist/ionic/p-CzS1qWve.js +0 -4
  569. package/dist/ionic/p-DjjfauRM.js +0 -4
  570. package/dist/ionic/p-DkUB-ROc.js +0 -4
  571. package/dist/ionic/p-DplOqGUv.js +0 -4
  572. package/dist/ionic/p-Dst_XmZh.js +0 -4
  573. package/dist/ionic/p-TXPDHL13.js +0 -4
  574. package/dist/ionic/p-a438b193.entry.js +0 -4
  575. package/dist/ionic/p-babaaaa7.entry.js +0 -4
  576. package/dist/ionic/p-be08d500.entry.js +0 -4
  577. package/dist/ionic/p-be9a4f51.entry.js +0 -4
  578. package/dist/ionic/p-c00d3092.entry.js +0 -4
  579. package/dist/ionic/p-c36dc8f5.entry.js +0 -4
  580. package/dist/ionic/p-c72a7e17.entry.js +0 -4
  581. package/dist/ionic/p-c8edd88c.entry.js +0 -4
  582. package/dist/ionic/p-ce0e380b.entry.js +0 -4
  583. package/dist/ionic/p-ce32912b.entry.js +0 -4
  584. package/dist/ionic/p-d07cf130.entry.js +0 -4
  585. package/dist/ionic/p-d27edeb3.entry.js +0 -4
  586. package/dist/ionic/p-d5d2c506.entry.js +0 -4
  587. package/dist/ionic/p-d5e31ca9.entry.js +0 -4
  588. package/dist/ionic/p-de91444f.entry.js +0 -4
  589. package/dist/ionic/p-df72866d.entry.js +0 -4
  590. package/dist/ionic/p-e47e3151.entry.js +0 -4
  591. package/dist/ionic/p-e621e5e8.entry.js +0 -4
  592. package/dist/ionic/p-eea9cf93.entry.js +0 -4
  593. package/dist/ionic/p-f402f5a4.entry.js +0 -4
  594. package/dist/ionic/p-fe1bfbcf.entry.js +0 -4
  595. package/dist/ionic/p-ffb90460.entry.js +0 -4
@@ -10,25 +10,82 @@ import { getIonMode } from "../../global/ionic-global";
10
10
  * @virtualProp {"ios" | "md"} mode - The mode determines which platform styles to use.
11
11
  */
12
12
  export class Segment {
13
- gesture;
14
- // Value before the segment is dragged
15
- valueBeforeGesture;
16
- segmentViewEl = null;
17
- lastNextIndex;
18
- /**
19
- * Whether to update the segment view, if exists, when the value changes.
20
- * This behavior is enabled by default, but is set false when scrolling content views
21
- * since we don't want to "double scroll" the segment view.
22
- */
23
- triggerScrollOnValueChange;
24
- el;
25
- activated = false;
26
- /**
27
- * The color to use from your application's color palette.
28
- * Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`.
29
- * For more information on colors, see [theming](/docs/theming/basics).
30
- */
31
- color;
13
+ constructor() {
14
+ this.segmentViewEl = null;
15
+ this.activated = false;
16
+ /**
17
+ * If `true`, the user cannot interact with the segment.
18
+ */
19
+ this.disabled = false;
20
+ /**
21
+ * If `true`, the segment buttons will overflow and the user can swipe to see them.
22
+ * In addition, this will disable the gesture to drag the indicator between the buttons
23
+ * in order to swipe to see hidden buttons.
24
+ */
25
+ this.scrollable = false;
26
+ /**
27
+ * If `true`, users will be able to swipe between segment buttons to activate them.
28
+ */
29
+ this.swipeGesture = true;
30
+ /**
31
+ * If `true`, navigating to an `ion-segment-button` with the keyboard will focus and select the element.
32
+ * If `false`, keyboard navigation will only focus the `ion-segment-button` element.
33
+ */
34
+ this.selectOnFocus = false;
35
+ this.onClick = (ev) => {
36
+ const current = ev.target;
37
+ const previous = this.checked;
38
+ // If the current element is a segment then that means
39
+ // the user tried to swipe to a segment button and
40
+ // click a segment button at the same time so we should
41
+ // not update the checked segment button
42
+ if (current.tagName === 'ION-SEGMENT') {
43
+ return;
44
+ }
45
+ this.value = current.value;
46
+ if (current !== previous) {
47
+ this.emitValueChange();
48
+ }
49
+ if (this.segmentViewEl) {
50
+ this.updateSegmentView();
51
+ if (this.scrollable && previous) {
52
+ this.checkButton(previous, current);
53
+ }
54
+ }
55
+ else if (this.scrollable || !this.swipeGesture) {
56
+ if (previous) {
57
+ this.checkButton(previous, current);
58
+ }
59
+ else {
60
+ this.setCheckedClasses();
61
+ }
62
+ }
63
+ };
64
+ this.onSlottedItemsChange = () => {
65
+ /**
66
+ * When the slotted segment buttons change we need to
67
+ * ensure that the new segment buttons are checked if
68
+ * the value matches the segment button value.
69
+ */
70
+ this.valueChanged(this.value);
71
+ };
72
+ this.getSegmentButton = (selector) => {
73
+ const buttons = this.getButtons().filter((button) => !button.disabled);
74
+ const currIndex = buttons.findIndex((button) => button === document.activeElement);
75
+ switch (selector) {
76
+ case 'first':
77
+ return buttons[0];
78
+ case 'last':
79
+ return buttons[buttons.length - 1];
80
+ case 'next':
81
+ return buttons[currIndex + 1] ?? buttons[0];
82
+ case 'previous':
83
+ return buttons[currIndex - 1] ?? buttons[buttons.length - 1];
84
+ default:
85
+ return null;
86
+ }
87
+ };
88
+ }
32
89
  colorChanged(value, oldValue) {
33
90
  /**
34
91
  * If color is set after not having
@@ -40,27 +97,9 @@ export class Segment {
40
97
  this.emitStyle();
41
98
  }
42
99
  }
43
- /**
44
- * If `true`, the user cannot interact with the segment.
45
- */
46
- disabled = false;
47
- /**
48
- * If `true`, the segment buttons will overflow and the user can swipe to see them.
49
- * In addition, this will disable the gesture to drag the indicator between the buttons
50
- * in order to swipe to see hidden buttons.
51
- */
52
- scrollable = false;
53
- /**
54
- * If `true`, users will be able to swipe between segment buttons to activate them.
55
- */
56
- swipeGesture = true;
57
100
  swipeGestureChanged() {
58
101
  this.gestureChanged();
59
102
  }
60
- /**
61
- * the value of the segment.
62
- */
63
- value;
64
103
  valueChanged(value, oldValue) {
65
104
  // Force a value to exist if we're using a segment view
66
105
  if (this.segmentViewEl && value === undefined) {
@@ -94,29 +133,6 @@ export class Segment {
94
133
  }
95
134
  this.triggerScrollOnValueChange = undefined;
96
135
  }
97
- /**
98
- * If `true`, navigating to an `ion-segment-button` with the keyboard will focus and select the element.
99
- * If `false`, keyboard navigation will only focus the `ion-segment-button` element.
100
- */
101
- selectOnFocus = false;
102
- /**
103
- * Emitted when the value property has changed and any dragging pointer has been released from `ion-segment`.
104
- *
105
- * This event will not emit when programmatically setting the `value` property.
106
- */
107
- ionChange;
108
- /**
109
- * Emitted when the value of the segment changes from user committed actions
110
- * or from externally assigning a value.
111
- *
112
- * @internal
113
- */
114
- ionSelect;
115
- /**
116
- * Emitted when the styles change.
117
- * @internal
118
- */
119
- ionStyle;
120
136
  disabledChanged() {
121
137
  this.gestureChanged();
122
138
  if (!this.segmentViewEl) {
@@ -486,59 +502,6 @@ export class Segment {
486
502
  segment: true,
487
503
  });
488
504
  }
489
- onClick = (ev) => {
490
- const current = ev.target;
491
- const previous = this.checked;
492
- // If the current element is a segment then that means
493
- // the user tried to swipe to a segment button and
494
- // click a segment button at the same time so we should
495
- // not update the checked segment button
496
- if (current.tagName === 'ION-SEGMENT') {
497
- return;
498
- }
499
- this.value = current.value;
500
- if (current !== previous) {
501
- this.emitValueChange();
502
- }
503
- if (this.segmentViewEl) {
504
- this.updateSegmentView();
505
- if (this.scrollable && previous) {
506
- this.checkButton(previous, current);
507
- }
508
- }
509
- else if (this.scrollable || !this.swipeGesture) {
510
- if (previous) {
511
- this.checkButton(previous, current);
512
- }
513
- else {
514
- this.setCheckedClasses();
515
- }
516
- }
517
- };
518
- onSlottedItemsChange = () => {
519
- /**
520
- * When the slotted segment buttons change we need to
521
- * ensure that the new segment buttons are checked if
522
- * the value matches the segment button value.
523
- */
524
- this.valueChanged(this.value);
525
- };
526
- getSegmentButton = (selector) => {
527
- const buttons = this.getButtons().filter((button) => !button.disabled);
528
- const currIndex = buttons.findIndex((button) => button === document.activeElement);
529
- switch (selector) {
530
- case 'first':
531
- return buttons[0];
532
- case 'last':
533
- return buttons[buttons.length - 1];
534
- case 'next':
535
- return buttons[currIndex + 1] ?? buttons[0];
536
- case 'previous':
537
- return buttons[currIndex - 1] ?? buttons[buttons.length - 1];
538
- default:
539
- return null;
540
- }
541
- };
542
505
  onKeyDown(ev) {
543
506
  const rtl = isRTL(this.el);
544
507
  let keyDownSelectsButton = this.selectOnFocus;
@@ -15,31 +15,39 @@ let ids = 0;
15
15
  * @part indicator-background - The background element for the indicator displayed on the checked segment button.
16
16
  */
17
17
  export class SegmentButton {
18
- segmentEl = null;
19
- nativeEl;
20
- inheritedAttributes = {};
21
- el;
22
- checked = false;
23
- /**
24
- * The `id` of the segment content.
25
- */
26
- contentId;
27
- /**
28
- * If `true`, the user cannot interact with the segment button.
29
- */
30
- disabled = false;
31
- /**
32
- * Set the layout of the text and icon in the segment.
33
- */
34
- layout = 'icon-top';
35
- /**
36
- * The type of the button.
37
- */
38
- type = 'button';
39
- /**
40
- * The value of the segment button.
41
- */
42
- value = 'ion-sb-' + ids++;
18
+ constructor() {
19
+ this.segmentEl = null;
20
+ this.inheritedAttributes = {};
21
+ this.checked = false;
22
+ /**
23
+ * If `true`, the user cannot interact with the segment button.
24
+ */
25
+ this.disabled = false;
26
+ /**
27
+ * Set the layout of the text and icon in the segment.
28
+ */
29
+ this.layout = 'icon-top';
30
+ /**
31
+ * The type of the button.
32
+ */
33
+ this.type = 'button';
34
+ /**
35
+ * The value of the segment button.
36
+ */
37
+ this.value = 'ion-sb-' + ids++;
38
+ this.updateStyle = () => {
39
+ forceUpdate(this);
40
+ };
41
+ this.updateState = () => {
42
+ const { segmentEl } = this;
43
+ if (segmentEl) {
44
+ this.checked = segmentEl.value === this.value;
45
+ if (segmentEl.disabled) {
46
+ this.disabled = true;
47
+ }
48
+ }
49
+ };
50
+ }
43
51
  valueChanged() {
44
52
  this.updateState();
45
53
  }
@@ -90,18 +98,6 @@ export class SegmentButton {
90
98
  get hasIcon() {
91
99
  return !!this.el.querySelector('ion-icon');
92
100
  }
93
- updateStyle = () => {
94
- forceUpdate(this);
95
- };
96
- updateState = () => {
97
- const { segmentEl } = this;
98
- if (segmentEl) {
99
- this.checked = segmentEl.value === this.value;
100
- if (segmentEl.disabled) {
101
- this.disabled = true;
102
- }
103
- }
104
- };
105
101
  /**
106
102
  * @internal
107
103
  * Focuses the native <button> element
@@ -4,29 +4,18 @@
4
4
  import { Host, h } from "@stencil/core";
5
5
  import { isRTL } from "../../utils/rtl/index";
6
6
  export class SegmentView {
7
- scrollEndTimeout = null;
8
- isTouching = false;
9
- el;
10
- /**
11
- * If `true`, the segment view cannot be interacted with.
12
- */
13
- disabled = false;
14
- /**
15
- * If `true`, users will be able to swipe the segment view to navigate between segment contents.
16
- */
17
- swipeGesture = true;
18
- /**
19
- * @internal
20
- *
21
- * If `true`, the segment view is scrollable.
22
- * If `false`, pointer events will be disabled. This is to prevent issues with
23
- * quickly scrolling after interacting with a segment button.
24
- */
25
- isManualScroll;
26
- /**
27
- * Emitted when the segment view is scrolled.
28
- */
29
- ionSegmentViewScroll;
7
+ constructor() {
8
+ this.scrollEndTimeout = null;
9
+ this.isTouching = false;
10
+ /**
11
+ * If `true`, the segment view cannot be interacted with.
12
+ */
13
+ this.disabled = false;
14
+ /**
15
+ * If `true`, users will be able to swipe the segment view to navigate between segment contents.
16
+ */
17
+ this.swipeGesture = true;
18
+ }
30
19
  handleScroll(ev) {
31
20
  const { scrollLeft, scrollWidth, clientWidth } = ev.target;
32
21
  const max = scrollWidth - clientWidth;