@ionic/core 7.6.2-dev.11702924017.193c825c → 7.6.2-dev.11702926577.1a448647

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 (313) hide show
  1. package/components/action-sheet.js +4 -4
  2. package/components/backdrop.js +12 -0
  3. package/components/button-active.js +1 -1
  4. package/components/button.js +2 -2
  5. package/components/data.js +1 -1
  6. package/components/gesture-controller.js +1 -1
  7. package/components/ion-content.js +1 -1
  8. package/components/ion-datetime.js +64 -40
  9. package/components/ion-picker-column-internal.d.ts +11 -0
  10. package/components/ion-picker-column-internal.js +9 -0
  11. package/components/ion-picker-column.js +2 -2
  12. package/components/{ion-picker-legacy.d.ts → ion-picker-internal.d.ts} +4 -4
  13. package/components/ion-picker-internal.js +9 -0
  14. package/components/ion-picker.js +309 -1
  15. package/components/overlays.js +4 -11
  16. package/components/picker-column-internal.js +390 -0
  17. package/components/picker-column.js +322 -351
  18. package/components/{picker.js → picker-internal.js} +22 -29
  19. package/dist/cjs/{button-active-466dfc8a.js → button-active-962fe442.js} +2 -2
  20. package/dist/cjs/{data-e2bf21de.js → data-a5109f09.js} +1 -1
  21. package/dist/cjs/{gesture-controller-9436f482.js → gesture-controller-c40c045a.js} +0 -1
  22. package/dist/cjs/{index-ee07ed59.js → index-d1b59ffa.js} +1 -1
  23. package/dist/cjs/index.cjs.js +3 -3
  24. package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -8
  25. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  26. package/dist/cjs/ion-app_8.cjs.entry.js +2 -2
  27. package/dist/cjs/ion-backdrop.cjs.entry.js +12 -0
  28. package/dist/cjs/ion-button_2.cjs.entry.js +2 -2
  29. package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
  30. package/dist/cjs/ion-datetime_3.cjs.entry.js +56 -36
  31. package/dist/cjs/ion-item-option_3.cjs.entry.js +1 -1
  32. package/dist/cjs/ion-loading.cjs.entry.js +1 -2
  33. package/dist/cjs/ion-menu_3.cjs.entry.js +3 -3
  34. package/dist/cjs/ion-modal.cjs.entry.js +3 -3
  35. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
  36. package/dist/cjs/{ion-picker-column.cjs.entry.js → ion-picker-column-internal.cjs.entry.js} +87 -104
  37. package/dist/cjs/{ion-picker.cjs.entry.js → ion-picker-internal.cjs.entry.js} +19 -26
  38. package/dist/cjs/ion-popover.cjs.entry.js +1 -2
  39. package/dist/cjs/ion-range.cjs.entry.js +1 -1
  40. package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
  41. package/dist/cjs/ion-reorder_2.cjs.entry.js +1 -1
  42. package/dist/cjs/ion-segment_2.cjs.entry.js +1 -1
  43. package/dist/cjs/ion-select_3.cjs.entry.js +1 -2
  44. package/dist/cjs/ion-toast.cjs.entry.js +3 -3
  45. package/dist/cjs/ion-toggle.cjs.entry.js +1 -1
  46. package/dist/cjs/ionic.cjs.js +1 -1
  47. package/dist/cjs/loader.cjs.js +1 -1
  48. package/dist/cjs/{overlays-7773cbe1.js → overlays-e77cc023.js} +4 -11
  49. package/dist/cjs/{swipe-back-b8f2330b.js → swipe-back-2a858bbd.js} +2 -2
  50. package/dist/collection/collection-manifest.json +6 -7
  51. package/dist/collection/components/action-sheet/action-sheet.ios.css +2 -9
  52. package/dist/collection/components/action-sheet/action-sheet.js +2 -2
  53. package/dist/collection/components/action-sheet/action-sheet.md.css +2 -9
  54. package/dist/collection/components/action-sheet/test/basic/action-sheet-rendering.e2e.js +0 -20
  55. package/dist/collection/components/backdrop/backdrop.js +12 -0
  56. package/dist/collection/components/button/button.ios.css +1 -1
  57. package/dist/collection/components/button/button.md.css +1 -1
  58. package/dist/collection/components/button/test/wrap/button.e2e.js +24 -12
  59. package/dist/collection/components/content/content.css +4 -0
  60. package/dist/collection/components/datetime/datetime.ios.css +38 -91
  61. package/dist/collection/components/datetime/datetime.js +36 -24
  62. package/dist/collection/components/datetime/datetime.md.css +38 -96
  63. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
  64. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +9 -6
  65. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +0 -10
  66. package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
  67. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  68. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
  69. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
  70. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  71. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +41 -43
  72. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  73. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +4 -4
  74. package/dist/collection/components/datetime/test/values/datetime.e2e.js +12 -15
  75. package/dist/collection/components/datetime/utils/data.js +1 -1
  76. package/dist/collection/components/picker/picker.ios.css +211 -112
  77. package/dist/collection/components/picker/picker.js +744 -472
  78. package/dist/collection/components/picker/picker.md.css +198 -108
  79. package/dist/collection/components/picker/test/basic/picker.e2e.js +13 -99
  80. package/dist/collection/components/{picker-legacy → picker}/test/is-open/picker.e2e.js +4 -4
  81. package/dist/collection/components/{picker-legacy → picker}/test/picker-id.spec.js +5 -5
  82. package/dist/collection/components/{picker-legacy → picker}/test/trigger/picker.e2e.js +1 -1
  83. package/dist/collection/components/picker-column/picker-column.js +335 -497
  84. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-aria.spec.js +3 -3
  85. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column-dynamic.spec.js +2 -2
  86. package/dist/collection/components/{picker-legacy-column → picker-column}/test/picker-column.spec.js +2 -2
  87. package/dist/collection/components/{picker-legacy-column → picker-column}/test/standalone/picker-column.e2e.js +3 -3
  88. package/dist/collection/components/{picker-column-option/picker-column-option.md.css → picker-column-internal/picker-column-internal.ios.css} +53 -6
  89. package/dist/collection/components/picker-column-internal/picker-column-internal.js +565 -0
  90. package/dist/collection/components/{picker-column/picker-column.css → picker-column-internal/picker-column-internal.md.css} +83 -96
  91. package/dist/collection/components/{picker-column/test/basic/picker-column.e2e.js → picker-column-internal/test/basic/picker-column-internal.e2e.js} +8 -8
  92. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +162 -0
  93. package/dist/collection/components/{picker-legacy/picker.md.css → picker-internal/picker-internal.ios.css} +100 -192
  94. package/dist/collection/components/picker-internal/picker-internal.js +544 -0
  95. package/dist/collection/components/{picker-legacy/picker.ios.css → picker-internal/picker-internal.md.css} +98 -207
  96. package/dist/collection/components/{picker/test/a11y/picker.e2e.js → picker-internal/test/a11y/picker-internal.e2e.js} +2 -2
  97. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +118 -0
  98. package/dist/collection/components/{picker/test/keyboard-entry/picker.e2e.js → picker-internal/test/keyboard-entry/picker-internal.e2e.js} +32 -63
  99. package/dist/collection/utils/gesture/button-active.js +1 -1
  100. package/dist/collection/utils/gesture/gesture-controller.js +1 -1
  101. package/dist/collection/utils/overlays.js +4 -11
  102. package/dist/docs.json +42 -484
  103. package/dist/esm/{button-active-2758ff14.js → button-active-308d3edd.js} +2 -2
  104. package/dist/esm/{data-6a31d701.js → data-775093f5.js} +1 -1
  105. package/dist/esm/{gesture-controller-314a54f6.js → gesture-controller-1bf57181.js} +1 -1
  106. package/dist/esm/{index-39782642.js → index-2cf77112.js} +2 -2
  107. package/dist/esm/index.js +3 -3
  108. package/dist/esm/ion-action-sheet.entry.js +8 -8
  109. package/dist/esm/ion-alert.entry.js +4 -4
  110. package/dist/esm/ion-app_8.entry.js +2 -2
  111. package/dist/esm/ion-backdrop.entry.js +12 -0
  112. package/dist/esm/ion-button_2.entry.js +2 -2
  113. package/dist/esm/ion-datetime-button.entry.js +1 -1
  114. package/dist/esm/ion-datetime_3.entry.js +55 -35
  115. package/dist/esm/ion-item-option_3.entry.js +1 -1
  116. package/dist/esm/ion-loading.entry.js +1 -2
  117. package/dist/esm/ion-menu_3.entry.js +3 -3
  118. package/dist/esm/ion-modal.entry.js +3 -3
  119. package/dist/esm/ion-nav_2.entry.js +1 -1
  120. package/dist/esm/{ion-picker-column.entry.js → ion-picker-column-internal.entry.js} +87 -104
  121. package/dist/esm/{ion-picker.entry.js → ion-picker-internal.entry.js} +19 -26
  122. package/dist/esm/ion-popover.entry.js +1 -2
  123. package/dist/esm/ion-range.entry.js +1 -1
  124. package/dist/esm/ion-refresher_2.entry.js +3 -3
  125. package/dist/esm/ion-reorder_2.entry.js +1 -1
  126. package/dist/esm/ion-segment_2.entry.js +1 -1
  127. package/dist/esm/ion-select_3.entry.js +1 -2
  128. package/dist/esm/ion-toast.entry.js +3 -3
  129. package/dist/esm/ion-toggle.entry.js +1 -1
  130. package/dist/esm/ionic.js +1 -1
  131. package/dist/esm/loader.js +1 -1
  132. package/dist/esm/{overlays-94dac1cb.js → overlays-b33f6bca.js} +4 -11
  133. package/dist/esm/{swipe-back-a8ca7f93.js → swipe-back-a6f386fc.js} +2 -2
  134. package/dist/esm-es5/button-active-308d3edd.js +4 -0
  135. package/dist/esm-es5/{gesture-controller-314a54f6.js → gesture-controller-1bf57181.js} +1 -1
  136. package/dist/esm-es5/{index-39782642.js → index-2cf77112.js} +1 -1
  137. package/dist/esm-es5/index.js +1 -1
  138. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  139. package/dist/esm-es5/ion-alert.entry.js +1 -1
  140. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  141. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  142. package/dist/esm-es5/ion-button_2.entry.js +1 -1
  143. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  144. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  145. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  146. package/dist/esm-es5/ion-loading.entry.js +1 -1
  147. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  148. package/dist/esm-es5/ion-modal.entry.js +1 -1
  149. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  150. package/dist/esm-es5/ion-picker-column-internal.entry.js +4 -0
  151. package/dist/esm-es5/ion-picker-internal.entry.js +4 -0
  152. package/dist/esm-es5/ion-popover.entry.js +1 -1
  153. package/dist/esm-es5/ion-range.entry.js +1 -1
  154. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  155. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  156. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  157. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  158. package/dist/esm-es5/ion-toast.entry.js +1 -1
  159. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  160. package/dist/esm-es5/ionic.js +1 -1
  161. package/dist/esm-es5/loader.js +1 -1
  162. package/dist/esm-es5/overlays-b33f6bca.js +4 -0
  163. package/dist/esm-es5/swipe-back-a6f386fc.js +4 -0
  164. package/dist/html.html-data.json +1 -152
  165. package/dist/ionic/index.esm.js +1 -1
  166. package/dist/ionic/ionic.esm.js +1 -1
  167. package/dist/ionic/p-0235067a.js +4 -0
  168. package/dist/ionic/{p-f6cae0b2.system.entry.js → p-06abe918.system.entry.js} +1 -1
  169. package/dist/ionic/{p-5ff211d0.system.entry.js → p-10ec9af7.system.entry.js} +1 -1
  170. package/dist/ionic/{p-10339dcc.entry.js → p-11786dc7.entry.js} +1 -1
  171. package/dist/ionic/{p-1b14f0f8.entry.js → p-11a3973f.entry.js} +1 -1
  172. package/dist/ionic/p-12a62500.entry.js +4 -0
  173. package/dist/ionic/p-19d9ceb8.system.js +1 -1
  174. package/dist/ionic/{p-642ac927.entry.js → p-1b27ac67.entry.js} +1 -1
  175. package/dist/ionic/p-1c249831.entry.js +4 -0
  176. package/dist/ionic/{p-e2737fef.system.entry.js → p-22827063.system.entry.js} +1 -1
  177. package/dist/ionic/{p-d2634efe.system.entry.js → p-28740823.system.entry.js} +1 -1
  178. package/dist/ionic/{p-c01803db.entry.js → p-2894d5f6.entry.js} +1 -1
  179. package/dist/ionic/{p-b2b5d761.entry.js → p-2a583966.entry.js} +1 -1
  180. package/dist/ionic/{p-beed2450.system.entry.js → p-2df97906.system.entry.js} +1 -1
  181. package/dist/ionic/{p-3e1e14d9.system.js → p-31b2326e.system.js} +1 -1
  182. package/dist/ionic/p-35ce400e.system.js +4 -0
  183. package/dist/ionic/p-3671f1b9.system.js +4 -0
  184. package/dist/ionic/{p-bb3fd397.entry.js → p-3e8d5e53.entry.js} +1 -1
  185. package/dist/ionic/p-47bb15a1.entry.js +4 -0
  186. package/dist/ionic/p-4d145435.entry.js +4 -0
  187. package/dist/ionic/p-507ddbfe.system.entry.js +4 -0
  188. package/dist/ionic/p-648ad047.system.entry.js +4 -0
  189. package/dist/ionic/p-6a6477b2.js +4 -0
  190. package/dist/ionic/p-6ab03751.js +4 -0
  191. package/dist/ionic/{p-25312768.system.entry.js → p-6b0ce9b4.system.entry.js} +1 -1
  192. package/dist/ionic/p-6c277fa2.system.entry.js +4 -0
  193. package/dist/ionic/p-6fba0ce1.system.entry.js +4 -0
  194. package/dist/ionic/{p-3af5faf8.system.entry.js → p-745e3339.system.entry.js} +1 -1
  195. package/dist/ionic/{p-ba5d9e27.entry.js → p-767f1a92.entry.js} +1 -1
  196. package/dist/ionic/p-7dc892f8.entry.js +4 -0
  197. package/dist/ionic/p-85f48531.entry.js +4 -0
  198. package/dist/ionic/p-8f301ac5.system.entry.js +4 -0
  199. package/dist/ionic/p-932f2259.system.entry.js +4 -0
  200. package/dist/ionic/{p-0e908476.system.entry.js → p-96d4814f.system.entry.js} +1 -1
  201. package/dist/ionic/{p-964dcdb2.system.entry.js → p-9fda6824.system.entry.js} +1 -1
  202. package/dist/ionic/{p-bec6ae40.entry.js → p-a3ca2e64.entry.js} +1 -1
  203. package/dist/ionic/{p-4793c14c.system.entry.js → p-a42ef163.system.entry.js} +1 -1
  204. package/dist/ionic/{p-6e4c7340.system.entry.js → p-a821750c.system.entry.js} +1 -1
  205. package/dist/ionic/{p-ed8402d6.entry.js → p-aee39e06.entry.js} +1 -1
  206. package/dist/ionic/{p-1ab2642a.system.js → p-afa9f205.system.js} +1 -1
  207. package/dist/ionic/p-b1f29949.system.entry.js +4 -0
  208. package/dist/ionic/p-b7a2ffc9.system.entry.js +4 -0
  209. package/dist/ionic/{p-92bfb607.entry.js → p-b964aba3.entry.js} +1 -1
  210. package/dist/ionic/{p-9b97df10.js → p-bb3615f7.js} +1 -1
  211. package/dist/ionic/{p-3dc1b0f9.entry.js → p-c1701827.entry.js} +1 -1
  212. package/dist/ionic/{p-20755eb0.entry.js → p-c5acfeb1.entry.js} +1 -1
  213. package/dist/ionic/{p-20d469d0.system.js → p-c7c8429a.system.js} +1 -1
  214. package/dist/ionic/p-cd1b920b.entry.js +4 -0
  215. package/dist/ionic/p-da5e2652.entry.js +4 -0
  216. package/dist/ionic/{p-3b434dee.system.entry.js → p-dc71e4ef.system.entry.js} +1 -1
  217. package/dist/ionic/{p-db05ecb6.system.entry.js → p-ddd48faf.system.entry.js} +1 -1
  218. package/dist/ionic/p-ec652bc0.system.entry.js +4 -0
  219. package/dist/ionic/{p-13d4dfe7.entry.js → p-f2bfd3d7.entry.js} +1 -1
  220. package/dist/ionic/{p-8ededb41.js → p-f5d2dc9b.js} +1 -1
  221. package/dist/ionic/p-f6e9c227.system.js +4 -0
  222. package/dist/ionic/p-f894e0ad.entry.js +4 -0
  223. package/dist/types/components/action-sheet/action-sheet-interface.d.ts +0 -1
  224. package/dist/types/components/backdrop/backdrop.d.ts +3 -0
  225. package/dist/types/components/datetime/datetime.d.ts +1 -0
  226. package/dist/types/components/datetime/utils/data.d.ts +7 -11
  227. package/dist/types/components/menu/menu.d.ts +1 -1
  228. package/dist/types/components/picker/picker.d.ts +129 -75
  229. package/dist/types/components/picker-column/picker-column.d.ts +39 -99
  230. package/dist/types/components/picker-column-internal/picker-column-internal-interfaces.d.ts +5 -0
  231. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +102 -0
  232. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +8 -0
  233. package/dist/types/components/picker-internal/picker-internal.d.ts +102 -0
  234. package/dist/types/components.d.ts +122 -154
  235. package/dist/types/interface.d.ts +1 -1
  236. package/dist/types/utils/config.d.ts +2 -2
  237. package/dist/types/utils/gesture/gesture-controller.d.ts +0 -1
  238. package/dist/types/utils/overlays.d.ts +2 -5
  239. package/hydrate/index.js +1199 -1300
  240. package/package.json +2 -2
  241. package/components/ion-picker-column-option.d.ts +0 -11
  242. package/components/ion-picker-column-option.js +0 -9
  243. package/components/ion-picker-legacy-column.d.ts +0 -11
  244. package/components/ion-picker-legacy-column.js +0 -9
  245. package/components/ion-picker-legacy.js +0 -309
  246. package/components/picker-column-option.js +0 -122
  247. package/components/picker-column2.js +0 -379
  248. package/dist/cjs/ion-picker-column-option.cjs.entry.js +0 -104
  249. package/dist/collection/components/picker/test/custom/picker.e2e.js +0 -85
  250. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +0 -91
  251. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +0 -39
  252. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +0 -87
  253. package/dist/collection/components/picker-column-option/picker-column-option.js +0 -173
  254. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +0 -18
  255. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +0 -37
  256. package/dist/collection/components/picker-column-option/test/picker-column-option.spec.js +0 -29
  257. package/dist/collection/components/picker-legacy/picker.js +0 -817
  258. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +0 -25
  259. package/dist/collection/components/picker-legacy-column/picker-column.js +0 -419
  260. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +0 -65
  261. package/dist/esm/ion-picker-column-option.entry.js +0 -100
  262. package/dist/esm-es5/button-active-2758ff14.js +0 -4
  263. package/dist/esm-es5/ion-picker-column-option.entry.js +0 -4
  264. package/dist/esm-es5/ion-picker-column.entry.js +0 -4
  265. package/dist/esm-es5/ion-picker.entry.js +0 -4
  266. package/dist/esm-es5/overlays-94dac1cb.js +0 -4
  267. package/dist/esm-es5/swipe-back-a8ca7f93.js +0 -4
  268. package/dist/ionic/p-26ff1180.entry.js +0 -4
  269. package/dist/ionic/p-2f449cdf.system.entry.js +0 -4
  270. package/dist/ionic/p-3717e641.system.entry.js +0 -4
  271. package/dist/ionic/p-51abefb7.system.js +0 -4
  272. package/dist/ionic/p-71483cbb.entry.js +0 -4
  273. package/dist/ionic/p-73fbf18d.entry.js +0 -4
  274. package/dist/ionic/p-75a3e35b.entry.js +0 -4
  275. package/dist/ionic/p-77d78f68.system.entry.js +0 -4
  276. package/dist/ionic/p-7c0d778d.system.js +0 -4
  277. package/dist/ionic/p-80ad9792.system.js +0 -4
  278. package/dist/ionic/p-85a67421.system.entry.js +0 -4
  279. package/dist/ionic/p-8ad6d643.entry.js +0 -4
  280. package/dist/ionic/p-9164a09d.entry.js +0 -4
  281. package/dist/ionic/p-a1bd098f.system.entry.js +0 -4
  282. package/dist/ionic/p-a41eaff2.system.entry.js +0 -4
  283. package/dist/ionic/p-a60a1ce5.js +0 -4
  284. package/dist/ionic/p-c001b24f.entry.js +0 -4
  285. package/dist/ionic/p-c19bf524.entry.js +0 -4
  286. package/dist/ionic/p-c6176849.system.entry.js +0 -4
  287. package/dist/ionic/p-cf350317.entry.js +0 -4
  288. package/dist/ionic/p-d3525765.js +0 -4
  289. package/dist/ionic/p-dc63dccb.system.entry.js +0 -4
  290. package/dist/ionic/p-f0717d98.js +0 -4
  291. package/dist/ionic/p-f0dea903.system.entry.js +0 -4
  292. package/dist/ionic/p-f60807dd.system.entry.js +0 -4
  293. package/dist/ionic/p-f8c5008f.entry.js +0 -4
  294. package/dist/types/components/picker/picker-interfaces.d.ts +0 -8
  295. package/dist/types/components/picker-column/picker-column-interfaces.d.ts +0 -4
  296. package/dist/types/components/picker-column-option/picker-column-option.d.ts +0 -66
  297. package/dist/types/components/picker-legacy/picker.d.ts +0 -158
  298. package/dist/types/components/picker-legacy-column/picker-column.d.ts +0 -46
  299. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.enter.js +0 -0
  300. /package/dist/collection/components/{picker-legacy → picker}/animations/ios.leave.js +0 -0
  301. /package/dist/collection/components/picker/{picker-interfaces.js → picker-interface.js} +0 -0
  302. /package/dist/collection/components/{picker-legacy-column → picker-column}/picker-column.ios.css +0 -0
  303. /package/dist/collection/components/{picker-legacy-column → picker-column}/picker-column.md.css +0 -0
  304. /package/dist/collection/components/{picker-legacy-column → picker-column}/test/test.utils.js +0 -0
  305. /package/dist/collection/components/{picker-column/picker-column-interfaces.js → picker-column-internal/picker-column-internal-interfaces.js} +0 -0
  306. /package/dist/collection/components/{picker-legacy/picker-interface.js → picker-internal/picker-internal-interfaces.js} +0 -0
  307. /package/dist/esm-es5/{data-6a31d701.js → data-775093f5.js} +0 -0
  308. /package/dist/ionic/{p-a64accf5.js → p-18cae04f.js} +0 -0
  309. /package/dist/ionic/{p-7ff4359e.system.js → p-87bb3735.system.js} +0 -0
  310. /package/dist/types/components/{picker-legacy → picker}/animations/ios.enter.d.ts +0 -0
  311. /package/dist/types/components/{picker-legacy → picker}/animations/ios.leave.d.ts +0 -0
  312. /package/dist/types/components/{picker-legacy → picker}/picker-interface.d.ts +0 -0
  313. /package/dist/types/components/{picker-legacy-column → picker-column}/test/test.utils.d.ts +0 -0
@@ -6,16 +6,18 @@
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
8
  const index = require('./index-50dcfe2f.js');
9
- const index$1 = require('./index-c8d52405.js');
10
9
  const helpers = require('./helpers-76bb7efb.js');
11
10
  const haptic = require('./haptic-b882e0bb.js');
12
11
  const ionicGlobal = require('./ionic-global-a4edbf03.js');
13
12
  const theme = require('./theme-d1c573d2.js');
14
13
  require('./capacitor-c04564bf.js');
14
+ require('./index-c8d52405.js');
15
15
 
16
- const pickerColumnCss = ":host{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;height:200px;font-size:22px;text-align:center}.picker-opts{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-width:26px;max-height:200px;outline:none;text-align:inherit;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none}.picker-item-empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-opts::-webkit-scrollbar{display:none}::slotted(ion-picker-column-option){display:block;scroll-snap-align:center}.picker-item-empty,:host(:not([disabled])) ::slotted(ion-picker-column-option.option-disabled){scroll-snap-align:none}::slotted([slot=prefix]),::slotted([slot=suffix]){max-width:200px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::slotted([slot=prefix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:end;justify-content:end}::slotted([slot=suffix]){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0;padding-bottom:0;-ms-flex-pack:start;justify-content:start}:host(.picker-column-disabled) .picker-opts{overflow-y:hidden}:host(.picker-column-disabled) ::slotted(ion-picker-column-option){cursor:default;opacity:0.4;pointer-events:none}@media (any-hover: hover){:host(:focus) .picker-opts{outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
16
+ const pickerColumnInternalIosCss = ":host{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;height:200px;outline:none;font-size:22px;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none;text-align:center}:host::-webkit-scrollbar{display:none}:host .picker-item{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden;scroll-snap-align:center}:host .picker-item-empty,:host .picker-item[disabled]{cursor:default}:host .picker-item-empty,:host(:not([disabled])) .picker-item[disabled]{scroll-snap-align:none}:host([disabled]){overflow-y:hidden}:host .picker-item[disabled]{opacity:0.4}:host(.picker-column-active) .picker-item.picker-item-active{color:var(--ion-color-base)}@media (any-hover: hover){:host(:focus){outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}";
17
17
 
18
- const PickerColumn = class {
18
+ const pickerColumnInternalMdCss = ":host{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;height:200px;outline:none;font-size:22px;-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory;overflow-x:hidden;overflow-y:scroll;scrollbar-width:none;text-align:center}:host::-webkit-scrollbar{display:none}:host .picker-item{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;width:100%;height:34px;border:0px;outline:none;background:transparent;color:inherit;font-family:var(--ion-font-family, inherit);font-size:inherit;line-height:34px;text-align:inherit;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden;scroll-snap-align:center}:host .picker-item-empty,:host .picker-item[disabled]{cursor:default}:host .picker-item-empty,:host(:not([disabled])) .picker-item[disabled]{scroll-snap-align:none}:host([disabled]){overflow-y:hidden}:host .picker-item[disabled]{opacity:0.4}:host(.picker-column-active) .picker-item.picker-item-active{color:var(--ion-color-base)}@media (any-hover: hover){:host(:focus){outline:none;background:rgba(var(--ion-color-base-rgb), 0.2)}}:host .picker-item-active{color:var(--ion-color-base)}";
19
+
20
+ const PickerColumnInternal = class {
19
21
  constructor(hostRef) {
20
22
  index.registerInstance(this, hostRef);
21
23
  this.ionChange = index.createEvent(this, "ionChange", 7);
@@ -23,11 +25,11 @@ const PickerColumn = class {
23
25
  this.isColumnVisible = false;
24
26
  this.canExitInputMode = true;
25
27
  this.centerPickerItemInView = (target, smooth = true, canExitInputMode = true) => {
26
- const { isColumnVisible, scrollEl } = this;
27
- if (isColumnVisible && scrollEl) {
28
+ const { el, isColumnVisible } = this;
29
+ if (isColumnVisible) {
28
30
  // (Vertical offset from parent) - (three empty picker rows) + (half the height of the target to ensure the scroll triggers)
29
31
  const top = target.offsetTop - 3 * target.clientHeight + target.clientHeight / 2;
30
- if (scrollEl.scrollTop !== top) {
32
+ if (el.scrollTop !== top) {
31
33
  /**
32
34
  * Setting this flag prevents input
33
35
  * mode from exiting in the picker column's
@@ -36,7 +38,7 @@ const PickerColumn = class {
36
38
  * of these can cause a scroll to occur.
37
39
  */
38
40
  this.canExitInputMode = canExitInputMode;
39
- scrollEl.scroll({
41
+ el.scroll({
40
42
  top,
41
43
  left: 0,
42
44
  behavior: smooth ? 'smooth' : undefined,
@@ -47,9 +49,11 @@ const PickerColumn = class {
47
49
  this.setPickerItemActiveState = (item, isActive) => {
48
50
  if (isActive) {
49
51
  item.classList.add(PICKER_ITEM_ACTIVE_CLASS);
52
+ item.part.add(PICKER_ITEM_ACTIVE_PART);
50
53
  }
51
54
  else {
52
55
  item.classList.remove(PICKER_ITEM_ACTIVE_CLASS);
56
+ item.part.remove(PICKER_ITEM_ACTIVE_PART);
53
57
  }
54
58
  };
55
59
  /**
@@ -103,13 +107,11 @@ const PickerColumn = class {
103
107
  * be disabled on Android.
104
108
  */
105
109
  const enableHaptics = ionicGlobal.isPlatform('ios');
106
- const { el, scrollEl } = this;
110
+ const { el } = this;
107
111
  let timeout;
108
112
  let activeEl = this.activeItem;
109
113
  const scrollCallback = () => {
110
114
  helpers.raf(() => {
111
- if (!scrollEl)
112
- return;
113
115
  if (timeout) {
114
116
  clearTimeout(timeout);
115
117
  timeout = undefined;
@@ -122,54 +124,21 @@ const PickerColumn = class {
122
124
  * Select item in the center of the column
123
125
  * which is the month/year that we want to select
124
126
  */
125
- const bbox = scrollEl.getBoundingClientRect();
127
+ const bbox = el.getBoundingClientRect();
126
128
  const centerX = bbox.x + bbox.width / 2;
127
129
  const centerY = bbox.y + bbox.height / 2;
128
- /**
129
- * elementFromPoint returns the top-most element.
130
- * This means that if an ion-backdrop is overlaying the
131
- * picker then the appropriate picker column option will
132
- * not be selected. To account for this, we use elementsFromPoint
133
- * and use an Array.find to find the appropriate column option
134
- * at that point.
135
- *
136
- * Additionally, the picker column could be used in the
137
- * Shadow DOM (i.e. in ion-datetime) so we need to make
138
- * sure we are choosing the correct host otherwise
139
- * the elements returns by elementsFromPoint will be
140
- * retargeted. To account for this, we check to see
141
- * if the picker column has a parent shadow root. If
142
- * so, we use that shadow root when doing elementsFromPoint.
143
- * Otherwise, we just use the document.
144
- */
145
- const rootNode = el.getRootNode();
146
- const hasParentShadow = rootNode instanceof ShadowRoot;
147
- const referenceNode = hasParentShadow ? rootNode : index$1.doc;
148
- /**
149
- * If the reference node is undefined
150
- * then it's likely that doc is undefined
151
- * due to being in an SSR environment.
152
- */
153
- if (referenceNode === undefined) {
154
- return;
155
- }
156
- const elementsAtPoint = referenceNode.elementsFromPoint(centerX, centerY);
157
- /**
158
- * elementsFromPoint can returns multiple elements
159
- * so find the relevant picker column option if one exists.
160
- */
161
- const newActiveElement = elementsAtPoint.find((el) => el.tagName === 'ION-PICKER-COLUMN-OPTION');
162
- if (activeEl !== undefined) {
130
+ const activeElement = el.shadowRoot.elementFromPoint(centerX, centerY);
131
+ if (activeEl !== null) {
163
132
  this.setPickerItemActiveState(activeEl, false);
164
133
  }
165
- if (newActiveElement === undefined || newActiveElement.disabled) {
134
+ if (activeElement === null || activeElement.disabled) {
166
135
  return;
167
136
  }
168
137
  /**
169
138
  * If we are selecting a new value,
170
139
  * we need to run haptics again.
171
140
  */
172
- if (newActiveElement !== activeEl) {
141
+ if (activeElement !== activeEl) {
173
142
  enableHaptics && haptic.hapticSelectionChanged();
174
143
  if (this.canExitInputMode) {
175
144
  /**
@@ -186,8 +155,8 @@ const PickerColumn = class {
186
155
  this.exitInputMode();
187
156
  }
188
157
  }
189
- activeEl = newActiveElement;
190
- this.setPickerItemActiveState(newActiveElement, true);
158
+ activeEl = activeElement;
159
+ this.setPickerItemActiveState(activeElement, true);
191
160
  timeout = setTimeout(() => {
192
161
  this.isScrolling = false;
193
162
  enableHaptics && haptic.hapticSelectionEnd();
@@ -209,7 +178,20 @@ const PickerColumn = class {
209
178
  * case, we should exit input mode.
210
179
  */
211
180
  this.canExitInputMode = true;
212
- this.setValue(newActiveElement.value);
181
+ const dataIndex = activeElement.getAttribute('data-index');
182
+ /**
183
+ * If no value it is
184
+ * possible we hit one of the
185
+ * empty padding columns.
186
+ */
187
+ if (dataIndex === null) {
188
+ return;
189
+ }
190
+ const index = parseInt(dataIndex, 10);
191
+ const selectedItem = this.items[index];
192
+ if (selectedItem.value !== this.value) {
193
+ this.setValue(selectedItem.value);
194
+ }
213
195
  }, 250);
214
196
  });
215
197
  };
@@ -218,11 +200,9 @@ const PickerColumn = class {
218
200
  * does not fire when component is initially shown.
219
201
  */
220
202
  helpers.raf(() => {
221
- if (!scrollEl)
222
- return;
223
- scrollEl.addEventListener('scroll', scrollCallback);
203
+ el.addEventListener('scroll', scrollCallback);
224
204
  this.destroyScrollListener = () => {
225
- scrollEl.removeEventListener('scroll', scrollCallback);
205
+ el.removeEventListener('scroll', scrollCallback);
226
206
  };
227
207
  });
228
208
  };
@@ -250,6 +230,7 @@ const PickerColumn = class {
250
230
  };
251
231
  this.isActive = false;
252
232
  this.disabled = false;
233
+ this.items = [];
253
234
  this.value = undefined;
254
235
  this.color = 'primary';
255
236
  this.numericInput = false;
@@ -260,7 +241,7 @@ const PickerColumn = class {
260
241
  * Only scroll the active item into view when the picker column
261
242
  * is actively visible to the user.
262
243
  */
263
- this.scrollActiveItemIntoView(true);
244
+ this.scrollActiveItemIntoView();
264
245
  }
265
246
  }
266
247
  /**
@@ -298,33 +279,36 @@ const PickerColumn = class {
298
279
  }
299
280
  };
300
281
  new IntersectionObserver(visibleCallback, { threshold: 0.001 }).observe(this.el);
301
- const parentEl = (this.parentEl = this.el.closest('ion-picker'));
282
+ const parentEl = (this.parentEl = this.el.closest('ion-picker-internal'));
302
283
  if (parentEl !== null) {
303
284
  // TODO(FW-2832): type
304
285
  parentEl.addEventListener('ionInputModeChange', (ev) => this.inputModeChange(ev));
305
286
  }
306
287
  }
307
288
  componentDidRender() {
308
- const { el, activeItem, isColumnVisible, value } = this;
309
- if (isColumnVisible && !activeItem) {
310
- const firstOption = el.querySelector('ion-picker-column-option');
311
- /**
312
- * If the picker column does not have an active item and the current value
313
- * does not match the first item in the picker column, that means
314
- * the value is out of bounds. In this case, we assign the value to the
315
- * first item to match the scroll position of the column.
316
- *
317
- */
318
- if (firstOption !== null && firstOption.value !== value) {
319
- this.setValue(firstOption.value);
289
+ var _a;
290
+ const { activeItem, items, isColumnVisible, value } = this;
291
+ if (isColumnVisible) {
292
+ if (activeItem) {
293
+ this.scrollActiveItemIntoView();
294
+ }
295
+ else if (((_a = items[0]) === null || _a === void 0 ? void 0 : _a.value) !== value) {
296
+ /**
297
+ * If the picker column does not have an active item and the current value
298
+ * does not match the first item in the picker column, that means
299
+ * the value is out of bounds. In this case, we assign the value to the
300
+ * first item to match the scroll position of the column.
301
+ *
302
+ */
303
+ this.setValue(items[0].value);
320
304
  }
321
305
  }
322
306
  }
323
307
  /** @internal */
324
- async scrollActiveItemIntoView(smooth = false) {
308
+ async scrollActiveItemIntoView() {
325
309
  const activeEl = this.activeItem;
326
310
  if (activeEl) {
327
- this.centerPickerItemInView(activeEl, smooth, false);
311
+ this.centerPickerItemInView(activeEl, false, false);
328
312
  }
329
313
  }
330
314
  /**
@@ -335,53 +319,52 @@ const PickerColumn = class {
335
319
  * @internal
336
320
  */
337
321
  async setValue(value) {
338
- if (this.disabled === true || this.value === value) {
339
- return;
340
- }
322
+ const { items } = this;
341
323
  this.value = value;
342
- this.ionChange.emit({ value });
343
- }
344
- /**
345
- * Sets focus on the scrollable container within the picker column.
346
- * Use this method instead of the global `pickerColumn.focus()`.
347
- */
348
- async setFocus() {
349
- if (this.scrollEl) {
350
- this.scrollEl.focus();
324
+ const findItem = items.find((item) => item.value === value && item.disabled !== true);
325
+ if (findItem) {
326
+ this.ionChange.emit(findItem);
351
327
  }
352
328
  }
353
329
  get activeItem() {
354
- const { value } = this;
355
- const options = Array.from(this.el.querySelectorAll('ion-picker-column-option'));
356
- return options.find((option) => {
357
- /**
358
- * If the whole picker column is disabled, the current value should appear active
359
- * If the current value item is specifically disabled, it should not appear active
360
- */
361
- if (!this.disabled && option.disabled) {
362
- return false;
363
- }
364
- return option.value === value;
365
- });
330
+ // If the whole picker column is disabled, the current value should appear active
331
+ // If the current value item is specifically disabled, it should not appear active
332
+ const selector = `.picker-item[data-value="${this.value}"]${this.disabled ? '' : ':not([disabled])'}`;
333
+ return helpers.getElementRoot(this.el).querySelector(selector);
366
334
  }
367
335
  render() {
368
- const { color, disabled, isActive, numericInput } = this;
336
+ const { items, color, disabled: pickerDisabled, isActive, numericInput } = this;
369
337
  const mode = ionicGlobal.getIonMode(this);
370
- return (index.h(index.Host, { class: theme.createColorClasses(color, {
338
+ /**
339
+ * exportparts is needed so ion-datetime can expose the parts
340
+ * from two layers of shadow nesting. If this causes problems,
341
+ * the attribute can be moved to datetime.tsx and set on every
342
+ * instance of ion-picker-column-internal there instead.
343
+ */
344
+ return (index.h(index.Host, { exportparts: `${PICKER_ITEM_PART}, ${PICKER_ITEM_ACTIVE_PART}`, disabled: pickerDisabled, tabindex: pickerDisabled ? null : 0, class: theme.createColorClasses(color, {
371
345
  [mode]: true,
372
346
  ['picker-column-active']: isActive,
373
347
  ['picker-column-numeric-input']: numericInput,
374
- ['picker-column-disabled']: disabled,
375
- }) }, index.h("slot", { name: "prefix" }), index.h("div", { class: "picker-opts", tabindex: disabled ? undefined : 0, ref: (el) => {
376
- this.scrollEl = el;
377
- } }, index.h("div", { class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("slot", null), index.h("div", { class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), index.h("slot", { name: "suffix" })));
348
+ }) }, index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), items.map((item, index$1) => {
349
+ const isItemDisabled = pickerDisabled || item.disabled || false;
350
+ return (index.h("button", { tabindex: "-1", class: {
351
+ 'picker-item': true,
352
+ }, "data-value": item.value, "data-index": index$1, onClick: (ev) => {
353
+ this.centerPickerItemInView(ev.target, true);
354
+ }, disabled: isItemDisabled, part: PICKER_ITEM_PART }, item.text));
355
+ }), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0"), index.h("div", { class: "picker-item picker-item-empty", "aria-hidden": "true" }, "\u00A0")));
378
356
  }
379
357
  get el() { return index.getElement(this); }
380
358
  static get watchers() { return {
381
359
  "value": ["valueChange"]
382
360
  }; }
383
361
  };
384
- const PICKER_ITEM_ACTIVE_CLASS = 'option-active';
385
- PickerColumn.style = pickerColumnCss;
362
+ const PICKER_ITEM_ACTIVE_CLASS = 'picker-item-active';
363
+ const PICKER_ITEM_PART = 'wheel-item';
364
+ const PICKER_ITEM_ACTIVE_PART = 'active';
365
+ PickerColumnInternal.style = {
366
+ ios: pickerColumnInternalIosCss,
367
+ md: pickerColumnInternalMdCss
368
+ };
386
369
 
387
- exports.ion_picker_column = PickerColumn;
370
+ exports.ion_picker_column_internal = PickerColumnInternal;
@@ -8,11 +8,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
8
8
  const index = require('./index-50dcfe2f.js');
9
9
  const helpers = require('./helpers-76bb7efb.js');
10
10
 
11
- const pickerIosCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}@supports (inset-inline-start: 0){:host .picker-before{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-before{left:0}:host-context([dir=rtl]) .picker-before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-before{left:unset;right:unset;right:0}}}:host .picker-after{top:116px;height:84px}@supports (inset-inline-start: 0){:host .picker-after{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-after{left:0}:host-context([dir=rtl]) .picker-after{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-after{left:unset;right:unset;right:0}}}:host .picker-highlight{border-radius:var(--highlight-border-radius, 8px);left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--highlight-background);z-index:-1}:host 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}:host ::slotted(ion-picker-column:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to bottom, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to top, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-highlight{background:var(--highlight-background, var(--ion-color-step-150, #eeeeef))}";
11
+ const pickerInternalIosCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}@supports (inset-inline-start: 0){:host .picker-before{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-before{left:0}:host-context([dir=rtl]) .picker-before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-before{left:unset;right:unset;right:0}}}:host .picker-after{top:116px;height:84px}@supports (inset-inline-start: 0){:host .picker-after{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-after{left:0}:host-context([dir=rtl]) .picker-after{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-after{left:unset;right:unset;right:0}}}:host .picker-highlight{border-radius:8px;left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--wheel-highlight-background);z-index:-1}:host 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}:host ::slotted(ion-picker-column-internal:first-of-type){text-align:start}:host ::slotted(ion-picker-column-internal:last-of-type){text-align:end}:host ::slotted(ion-picker-column-internal:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to bottom, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), to(rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8)));background:linear-gradient(to top, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0.8) 100%)}:host .picker-highlight{background:var(--wheel-highlight-background, var(--ion-color-step-150, #eeeeef))}";
12
12
 
13
- const pickerMdCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}@supports (inset-inline-start: 0){:host .picker-before{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-before{left:0}:host-context([dir=rtl]) .picker-before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-before{left:unset;right:unset;right:0}}}:host .picker-after{top:116px;height:84px}@supports (inset-inline-start: 0){:host .picker-after{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-after{left:0}:host-context([dir=rtl]) .picker-after{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-after{left:unset;right:unset;right:0}}}:host .picker-highlight{border-radius:var(--highlight-border-radius, 8px);left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--highlight-background);z-index:-1}:host 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}:host ::slotted(ion-picker-column:first-of-type){text-align:start}:host ::slotted(ion-picker-column:last-of-type){text-align:end}:host ::slotted(ion-picker-column:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to bottom, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(30%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to top, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 30%, rgba(var(--fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}";
13
+ const pickerInternalMdCss = ":host{display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:200px;direction:ltr;z-index:0}:host .picker-before,:host .picker-after{position:absolute;width:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;pointer-events:none}:host .picker-before{top:0;height:83px}@supports (inset-inline-start: 0){:host .picker-before{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-before{left:0}:host-context([dir=rtl]) .picker-before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-before{left:unset;right:unset;right:0}}}:host .picker-after{top:116px;height:84px}@supports (inset-inline-start: 0){:host .picker-after{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host .picker-after{left:0}:host-context([dir=rtl]) .picker-after{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(:dir(rtl)) .picker-after{left:unset;right:unset;right:0}}}:host .picker-highlight{border-radius:8px;left:0;right:0;top:50%;bottom:0;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;position:absolute;width:calc(100% - 16px);height:34px;-webkit-transform:translateY(-50%);transform:translateY(-50%);background:var(--wheel-highlight-background);z-index:-1}:host 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}:host ::slotted(ion-picker-column-internal:first-of-type){text-align:start}:host ::slotted(ion-picker-column-internal:last-of-type){text-align:end}:host ::slotted(ion-picker-column-internal:only-child){text-align:center}:host .picker-before{background:-webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to bottom, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 20%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}:host .picker-after{background:-webkit-gradient(linear, left bottom, left top, color-stop(30%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1)), color-stop(90%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0)));background:linear-gradient(to top, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 1) 30%, rgba(var(--wheel-fade-background-rgb, var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255))), 0) 90%)}";
14
14
 
15
- const Picker = class {
15
+ const PickerInternal = class {
16
16
  constructor(hostRef) {
17
17
  index.registerInstance(this, hostRef);
18
18
  this.ionInputModeChange = index.createEvent(this, "ionInputModeChange", 7);
@@ -44,7 +44,7 @@ const Picker = class {
44
44
  this.onFocusOut = (ev) => {
45
45
  // TODO(FW-2832): type
46
46
  const { relatedTarget } = ev;
47
- if (!relatedTarget || (relatedTarget.tagName !== 'ION-PICKER-COLUMN' && relatedTarget !== this.inputEl)) {
47
+ if (!relatedTarget || (relatedTarget.tagName !== 'ION-PICKER-COLUMN-INTERNAL' && relatedTarget !== this.inputEl)) {
48
48
  this.exitInputMode();
49
49
  }
50
50
  };
@@ -62,7 +62,7 @@ const Picker = class {
62
62
  * make sure that this function only ever runs when
63
63
  * focusing a picker column.
64
64
  */
65
- if (target.tagName !== 'ION-PICKER-COLUMN') {
65
+ if (target.tagName !== 'ION-PICKER-COLUMN-INTERNAL') {
66
66
  return;
67
67
  }
68
68
  /**
@@ -129,7 +129,7 @@ const Picker = class {
129
129
  * since we just tapped the highlight and
130
130
  * not a column.
131
131
  */
132
- if (ev.target.tagName === 'ION-PICKER-COLUMN') {
132
+ if (ev.target.tagName === 'ION-PICKER-COLUMN-INTERNAL') {
133
133
  /**
134
134
  * If user taps 2 different columns
135
135
  * then we should just switch to input mode
@@ -163,7 +163,7 @@ const Picker = class {
163
163
  * If there is only 1 numeric input column
164
164
  * then we should skip multi column input.
165
165
  */
166
- const columns = el.querySelectorAll('ion-picker-column.picker-column-numeric-input');
166
+ const columns = el.querySelectorAll('ion-picker-column-internal.picker-column-numeric-input');
167
167
  const columnEl = columns.length === 1 ? ev.target : undefined;
168
168
  this.actionOnClick = () => {
169
169
  this.enterInputMode(columnEl);
@@ -197,7 +197,7 @@ const Picker = class {
197
197
  * Only active input mode if there is at
198
198
  * least one column that accepts numeric input.
199
199
  */
200
- const hasInputColumn = el.querySelector('ion-picker-column.picker-column-numeric-input');
200
+ const hasInputColumn = el.querySelector('ion-picker-column-internal.picker-column-numeric-input');
201
201
  if (!hasInputColumn) {
202
202
  return;
203
203
  }
@@ -250,7 +250,7 @@ const Picker = class {
250
250
  if (!inputEl || !inputModeColumn) {
251
251
  return;
252
252
  }
253
- const options = Array.from(inputModeColumn.querySelectorAll('ion-picker-column-option')).filter((el) => el.disabled !== true);
253
+ const values = inputModeColumn.items.filter((item) => item.disabled !== true);
254
254
  /**
255
255
  * If users pause for a bit, the search
256
256
  * value should be reset similar to how a
@@ -290,13 +290,8 @@ const Picker = class {
290
290
  * 0+(?=[1-9]) --> Match 1 or more zeros that are followed by 1-9
291
291
  * 0+(?=0$) --> Match 1 or more zeros that must be followed by one 0 and end.
292
292
  */
293
- const findItemFromCompleteValue = options.find(({ textContent }) => {
294
- /**
295
- * Keyboard entry is currently only used inside of Datetime
296
- * where we guarantee textContent is set.
297
- * If we end up exposing this feature publicly we should revisit this assumption.
298
- */
299
- const parsedText = textContent.replace(/^0+(?=[1-9])|0+(?=0$)/, '');
293
+ const findItemFromCompleteValue = values.find(({ text }) => {
294
+ const parsedText = text.replace(/^0+(?=[1-9])|0+(?=0$)/, '');
300
295
  return parsedText === inputEl.value;
301
296
  });
302
297
  if (findItemFromCompleteValue) {
@@ -321,11 +316,9 @@ const Picker = class {
321
316
  */
322
317
  this.searchColumn = (colEl, value, zeroBehavior = 'start') => {
323
318
  const behavior = zeroBehavior === 'start' ? /^0+/ : /0$/;
324
- const option = Array.from(colEl.querySelectorAll('ion-picker-column-option')).find((el) => {
325
- return el.disabled !== true && el.textContent.replace(behavior, '') === value;
326
- });
327
- if (option) {
328
- colEl.setValue(option.value);
319
+ const item = colEl.items.find(({ text, disabled }) => disabled !== true && text.replace(behavior, '') === value);
320
+ if (item) {
321
+ colEl.setValue(item.value);
329
322
  }
330
323
  };
331
324
  this.selectMultiColumn = () => {
@@ -333,7 +326,7 @@ const Picker = class {
333
326
  if (!inputEl) {
334
327
  return;
335
328
  }
336
- const numericPickers = Array.from(el.querySelectorAll('ion-picker-column')).filter((col) => col.numericInput);
329
+ const numericPickers = Array.from(el.querySelectorAll('ion-picker-column-internal')).filter((col) => col.numericInput);
337
330
  const firstColumn = numericPickers[0];
338
331
  const lastColumn = numericPickers[1];
339
332
  let value = inputEl.value;
@@ -485,9 +478,9 @@ const Picker = class {
485
478
  }
486
479
  get el() { return index.getElement(this); }
487
480
  };
488
- Picker.style = {
489
- ios: pickerIosCss,
490
- md: pickerMdCss
481
+ PickerInternal.style = {
482
+ ios: pickerInternalIosCss,
483
+ md: pickerInternalMdCss
491
484
  };
492
485
 
493
- exports.ion_picker = Picker;
486
+ exports.ion_picker_internal = PickerInternal;
@@ -10,13 +10,12 @@ const frameworkDelegate = require('./framework-delegate-1c29b14a.js');
10
10
  const helpers = require('./helpers-76bb7efb.js');
11
11
  const lockController = require('./lock-controller-6585a42a.js');
12
12
  const index$1 = require('./index-5915f9b3.js');
13
- const overlays = require('./overlays-7773cbe1.js');
13
+ const overlays = require('./overlays-e77cc023.js');
14
14
  const ionicGlobal = require('./ionic-global-a4edbf03.js');
15
15
  const theme = require('./theme-d1c573d2.js');
16
16
  const index$2 = require('./index-17ab7794.js');
17
17
  const animation = require('./animation-9b401d39.js');
18
18
  require('./index-c8d52405.js');
19
- require('./gesture-controller-9436f482.js');
20
19
  require('./hardware-back-button-76833cac.js');
21
20
 
22
21
  /**
@@ -96,7 +96,7 @@ const Range = class {
96
96
  this.setupGesture = async () => {
97
97
  const rangeSlider = this.rangeSlider;
98
98
  if (rangeSlider) {
99
- this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
99
+ this.gesture = (await Promise.resolve().then(function () { return require('./index-d1b59ffa.js'); })).createGesture({
100
100
  el: rangeSlider,
101
101
  gestureName: 'range',
102
102
  gesturePriority: 100,
@@ -334,7 +334,7 @@ const Refresher = class {
334
334
  });
335
335
  };
336
336
  this.scrollEl.addEventListener('scroll', this.scrollListenerCallback);
337
- this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
337
+ this.gesture = (await Promise.resolve().then(function () { return require('./index-d1b59ffa.js'); })).createGesture({
338
338
  el: this.scrollEl,
339
339
  gestureName: 'refresher',
340
340
  gesturePriority: 31,
@@ -386,7 +386,7 @@ const Refresher = class {
386
386
  refreshingCircle.style.setProperty('animation-delay', '-655ms');
387
387
  });
388
388
  }
389
- this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
389
+ this.gesture = (await Promise.resolve().then(function () { return require('./index-d1b59ffa.js'); })).createGesture({
390
390
  el: this.scrollEl,
391
391
  gestureName: 'refresher',
392
392
  gesturePriority: 31,
@@ -512,7 +512,7 @@ const Refresher = class {
512
512
  this.setupNativeRefresher(contentEl);
513
513
  }
514
514
  else {
515
- this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
515
+ this.gesture = (await Promise.resolve().then(function () { return require('./index-d1b59ffa.js'); })).createGesture({
516
516
  el: contentEl,
517
517
  gestureName: 'refresher',
518
518
  gesturePriority: 31,
@@ -70,7 +70,7 @@ const ReorderGroup = class {
70
70
  if (contentEl) {
71
71
  this.scrollEl = await index$2.getScrollElement(contentEl);
72
72
  }
73
- this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
73
+ this.gesture = (await Promise.resolve().then(function () { return require('./index-d1b59ffa.js'); })).createGesture({
74
74
  el: this.el,
75
75
  gestureName: 'reorder',
76
76
  gesturePriority: 110,
@@ -124,7 +124,7 @@ const Segment = class {
124
124
  */
125
125
  this.scrollActiveButtonIntoView(false);
126
126
  });
127
- this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
127
+ this.gesture = (await Promise.resolve().then(function () { return require('./index-d1b59ffa.js'); })).createGesture({
128
128
  el: this.el,
129
129
  gestureName: 'segment',
130
130
  gesturePriority: 100,
@@ -11,7 +11,7 @@ const notchController = require('./notch-controller-9735e7ac.js');
11
11
  const compareWithUtils = require('./compare-with-utils-df1001d7.js');
12
12
  const helpers = require('./helpers-76bb7efb.js');
13
13
  const index$1 = require('./index-5915f9b3.js');
14
- const overlays = require('./overlays-7773cbe1.js');
14
+ const overlays = require('./overlays-e77cc023.js');
15
15
  const dir = require('./dir-94c21456.js');
16
16
  const theme = require('./theme-d1c573d2.js');
17
17
  const watchOptions = require('./watch-options-f5f3e158.js');
@@ -19,7 +19,6 @@ const index$2 = require('./index-09471526.js');
19
19
  const ionicGlobal = require('./ionic-global-a4edbf03.js');
20
20
  require('./index-c8d52405.js');
21
21
  require('./framework-delegate-1c29b14a.js');
22
- require('./gesture-controller-9436f482.js');
23
22
  require('./hardware-back-button-76833cac.js');
24
23
 
25
24
  const selectIosCss = ":host{--padding-top:0px;--padding-end:0px;--padding-bottom:0px;--padding-start:0px;--placeholder-color:currentColor;--placeholder-opacity:0.6;--background:transparent;--border-style:solid;--highlight-color-focused:var(--ion-color-primary, #3880ff);--highlight-color-valid:var(--ion-color-success, #2dd36f);--highlight-color-invalid:var(--ion-color-danger, #eb445a);--highlight-color:var(--highlight-color-focused);display:block;position:relative;font-family:var(--ion-font-family, inherit);white-space:nowrap;cursor:pointer;z-index:2}:host(:not(.legacy-select)){width:100%;min-height:44px}:host(.select-label-placement-floating),:host(.select-label-placement-stacked){min-height:56px}:host(.ion-color){--highlight-color-focused:var(--ion-color-base)}:host(.legacy-select){-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;overflow:hidden}:host(.in-item:not(.legacy-select)){-ms-flex:1 1 0px;flex:1 1 0}:host(.in-item.legacy-select){position:static;max-width:45%}:host(.select-disabled){pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}:host([slot=start]:not(.legacy-select)),:host([slot=end]:not(.legacy-select)){width:auto}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}:host(.legacy-select) label{top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;opacity:0}@supports (inset-inline-start: 0){:host(.legacy-select) label{inset-inline-start:0}}@supports not (inset-inline-start: 0){:host(.legacy-select) label{left:0}:host-context([dir=rtl]):host(.legacy-select) label,:host-context([dir=rtl]).legacy-select label{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){:host(.legacy-select:dir(rtl)) label{left:unset;right:unset;right:0}}}:host(.legacy-select) label::-moz-focus-inner{border:0}button{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}.select-icon{-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0;position:relative;-ms-flex-negative:0;flex-shrink:0}:host(.in-item-color) .select-icon{color:inherit}:host(.select-label-placement-stacked) .select-icon,:host(.select-label-placement-floating) .select-icon{position:absolute;height:100%}:host(.select-ltr.select-label-placement-stacked) .select-icon,:host(.select-ltr.select-label-placement-floating) .select-icon{right:var(--padding-end, 0)}:host(.select-rtl.select-label-placement-stacked) .select-icon,:host(.select-rtl.select-label-placement-floating) .select-icon{left:var(--padding-start, 0)}.select-text{-ms-flex:1;flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:inherit;overflow:hidden}.select-wrapper{-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);border-radius:var(--border-radius);display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;height:inherit;min-height:inherit;-webkit-transition:background-color 15ms linear;transition:background-color 15ms linear;background:var(--background);line-height:normal;cursor:inherit;-webkit-box-sizing:border-box;box-sizing:border-box}.select-wrapper .select-placeholder{-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.select-wrapper-inner{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;overflow:hidden}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{-ms-flex-positive:1;flex-grow:1}:host(.ion-touched.ion-invalid){--highlight-color:var(--highlight-color-invalid)}:host(.ion-valid){--highlight-color:var(--highlight-color-valid)}.label-text-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;max-width:200px;-webkit-transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:color 150ms cubic-bezier(0.4, 0, 0.2, 1), transform 150ms cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 150ms cubic-bezier(0.4, 0, 0.2, 1);pointer-events:none}.label-text,::slotted([slot=label]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden,.select-outline-notch-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);overflow:hidden}:host(.select-justify-space-between) .select-wrapper{-ms-flex-pack:justify;justify-content:space-between}:host(.select-justify-start) .select-wrapper{-ms-flex-pack:start;justify-content:start}:host(.select-justify-end) .select-wrapper{-ms-flex-pack:end;justify-content:end}:host(.select-label-placement-start) .select-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.select-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-end) .select-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.select-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.select-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.select-label-placement-stacked) .select-wrapper,:host(.select-label-placement-floating) .select-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:start}:host(.select-label-placement-stacked) .label-text-wrapper,:host(.select-label-placement-floating) .label-text-wrapper{max-width:100%}:host(.select-ltr.select-label-placement-stacked) .label-text-wrapper,:host(.select-ltr.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top}:host(.select-rtl.select-label-placement-stacked) .label-text-wrapper,:host(.select-rtl.select-label-placement-floating) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}:host(.select-label-placement-stacked) .native-wrapper,:host(.select-label-placement-floating) .native-wrapper{margin-left:0;margin-right:0;margin-top:1px;margin-bottom:0;-ms-flex-positive:1;flex-grow:1;width:100%}:host(.select-label-placement-floating) .label-text-wrapper{-webkit-transform:translateY(100%) scale(1);transform:translateY(100%) scale(1)}:host(.select-label-placement-floating:not(.label-floating)) .native-wrapper .select-placeholder{opacity:0}:host(.select-expanded.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.ion-focused.select-label-placement-floating) .native-wrapper .select-placeholder,:host(.has-value.select-label-placement-floating) .native-wrapper .select-placeholder{opacity:1}:host(.label-floating) .label-text-wrapper{-webkit-transform:translateY(50%) scale(0.75);transform:translateY(50%) scale(0.75);max-width:calc(100% / 0.75)}::slotted([slot=start]),::slotted([slot=end]){-ms-flex-negative:0;flex-shrink:0}::slotted([slot=start]){-webkit-margin-end:16px;margin-inline-end:16px;-webkit-margin-start:0;margin-inline-start:0}::slotted([slot=end]){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0}:host(.legacy-select){--padding-top:10px;--padding-end:8px;--padding-bottom:10px;--padding-start:16px}.select-icon{width:1.125rem;height:1.125rem;color:var(--ion-color-step-650, #595959)}:host(.select-label-placement-stacked) .select-wrapper-inner,:host(.select-label-placement-floating) .select-wrapper-inner{width:calc(100% - 1.125rem - 4px)}:host(.select-disabled){opacity:0.3}::slotted(ion-button[slot=start].button-has-icon-only),::slotted(ion-button[slot=end].button-has-icon-only){--border-radius:50%;--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;aspect-ratio:1}";
@@ -10,15 +10,15 @@ const config = require('./config-4f60b98a.js');
10
10
  const helpers = require('./helpers-76bb7efb.js');
11
11
  const lockController = require('./lock-controller-6585a42a.js');
12
12
  const index$1 = require('./index-5915f9b3.js');
13
- const overlays = require('./overlays-7773cbe1.js');
13
+ const overlays = require('./overlays-e77cc023.js');
14
14
  const theme = require('./theme-d1c573d2.js');
15
15
  const ionicGlobal = require('./ionic-global-a4edbf03.js');
16
16
  const animation = require('./animation-9b401d39.js');
17
17
  const index = require('./index-c8d52405.js');
18
- const index$2 = require('./index-ee07ed59.js');
18
+ const index$2 = require('./index-d1b59ffa.js');
19
19
  require('./framework-delegate-1c29b14a.js');
20
- require('./gesture-controller-9436f482.js');
21
20
  require('./hardware-back-button-76833cac.js');
21
+ require('./gesture-controller-c40c045a.js');
22
22
 
23
23
  /**
24
24
  * Calculate the CSS top and bottom position of the toast, to be used
@@ -37,7 +37,7 @@ const Toggle = class {
37
37
  this.setupGesture = async () => {
38
38
  const { toggleTrack } = this;
39
39
  if (toggleTrack) {
40
- this.gesture = (await Promise.resolve().then(function () { return require('./index-ee07ed59.js'); })).createGesture({
40
+ this.gesture = (await Promise.resolve().then(function () { return require('./index-d1b59ffa.js'); })).createGesture({
41
41
  el: toggleTrack,
42
42
  gestureName: 'toggle',
43
43
  gesturePriority: 100,