@ionic/core 7.5.8-dev.11701791090.18ebbea8 → 7.5.8-dev.11701806358.1ca1b519

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 (308) hide show
  1. package/components/backdrop.js +0 -12
  2. package/components/data.js +1 -1
  3. package/components/gesture-controller.js +1 -1
  4. package/components/ion-content.js +1 -1
  5. package/components/ion-datetime.js +40 -64
  6. package/components/ion-input.js +2 -21
  7. package/components/ion-picker-column-option.d.ts +11 -0
  8. package/components/ion-picker-column-option.js +9 -0
  9. package/components/ion-picker-column.js +2 -2
  10. package/components/ion-picker-legacy-column.d.ts +11 -0
  11. package/components/ion-picker-legacy-column.js +9 -0
  12. package/components/{ion-picker-internal.d.ts → ion-picker-legacy.d.ts} +4 -4
  13. package/components/ion-picker-legacy.js +309 -0
  14. package/components/ion-picker.js +1 -309
  15. package/components/ion-textarea.js +2 -25
  16. package/components/overlays.js +11 -4
  17. package/components/picker-column-option.js +122 -0
  18. package/components/picker-column.js +363 -317
  19. package/components/picker-column2.js +379 -0
  20. package/components/{picker-internal.js → picker.js} +16 -16
  21. package/dist/cjs/{button-active-417ccdcb.js → button-active-9d7e0640.js} +1 -1
  22. package/dist/cjs/{data-36b9094e.js → data-e7526b58.js} +1 -1
  23. package/dist/cjs/{gesture-controller-c40c045a.js → gesture-controller-9436f482.js} +1 -0
  24. package/dist/cjs/{index-d1b59ffa.js → index-ee07ed59.js} +1 -1
  25. package/dist/cjs/index.cjs.js +3 -3
  26. package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
  27. package/dist/cjs/ion-alert.cjs.entry.js +4 -4
  28. package/dist/cjs/ion-app_8.cjs.entry.js +2 -2
  29. package/dist/cjs/ion-backdrop.cjs.entry.js +0 -12
  30. package/dist/cjs/ion-datetime-button.cjs.entry.js +1 -1
  31. package/dist/cjs/ion-datetime_3.cjs.entry.js +36 -56
  32. package/dist/cjs/ion-input.cjs.entry.js +2 -21
  33. package/dist/cjs/ion-item-option_3.cjs.entry.js +1 -1
  34. package/dist/cjs/ion-loading.cjs.entry.js +2 -1
  35. package/dist/cjs/ion-menu_3.cjs.entry.js +3 -3
  36. package/dist/cjs/ion-modal.cjs.entry.js +3 -3
  37. package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
  38. package/dist/cjs/ion-picker-column-option.cjs.entry.js +104 -0
  39. package/dist/cjs/{ion-picker-column-internal.cjs.entry.js → ion-picker-column.cjs.entry.js} +105 -72
  40. package/dist/cjs/{ion-picker-internal.cjs.entry.js → ion-picker.cjs.entry.js} +13 -13
  41. package/dist/cjs/ion-popover.cjs.entry.js +2 -1
  42. package/dist/cjs/ion-range.cjs.entry.js +1 -1
  43. package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
  44. package/dist/cjs/ion-reorder_2.cjs.entry.js +1 -1
  45. package/dist/cjs/ion-segment_2.cjs.entry.js +1 -1
  46. package/dist/cjs/ion-select_3.cjs.entry.js +2 -1
  47. package/dist/cjs/ion-textarea.cjs.entry.js +2 -25
  48. package/dist/cjs/ion-toast.cjs.entry.js +2 -1
  49. package/dist/cjs/ion-toggle.cjs.entry.js +1 -1
  50. package/dist/cjs/ionic.cjs.js +1 -1
  51. package/dist/cjs/loader.cjs.js +1 -1
  52. package/dist/cjs/{overlays-5c379703.js → overlays-e8e05b0e.js} +11 -4
  53. package/dist/cjs/{swipe-back-2a858bbd.js → swipe-back-b8f2330b.js} +2 -2
  54. package/dist/collection/collection-manifest.json +7 -6
  55. package/dist/collection/components/backdrop/backdrop.js +0 -12
  56. package/dist/collection/components/content/content.css +0 -4
  57. package/dist/collection/components/datetime/datetime.ios.css +83 -37
  58. package/dist/collection/components/datetime/datetime.js +24 -36
  59. package/dist/collection/components/datetime/datetime.md.css +88 -37
  60. package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
  61. package/dist/collection/components/datetime/test/a11y/datetime.spec.js +6 -9
  62. package/dist/collection/components/datetime/test/basic/datetime.e2e.js +10 -0
  63. package/dist/collection/components/datetime/test/datetime.e2e.js +2 -2
  64. package/dist/collection/components/datetime/test/disabled/datetime.spec.js +4 -4
  65. package/dist/collection/components/datetime/test/locale/datetime.e2e.js +2 -2
  66. package/dist/collection/components/datetime/test/minmax/datetime.e2e.js +6 -6
  67. package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
  68. package/dist/collection/components/datetime/test/prefer-wheel/datetime.e2e.js +43 -41
  69. package/dist/collection/components/datetime/test/presentation/datetime.e2e.js +1 -1
  70. package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +4 -4
  71. package/dist/collection/components/datetime/test/values/datetime.e2e.js +15 -12
  72. package/dist/collection/components/datetime/utils/data.js +1 -1
  73. package/dist/collection/components/input/input.js +2 -21
  74. package/dist/collection/components/input/test/clear-on-edit/input.e2e.js +9 -21
  75. package/dist/collection/components/picker/picker.ios.css +100 -205
  76. package/dist/collection/components/picker/picker.js +461 -743
  77. package/dist/collection/components/picker/picker.md.css +98 -194
  78. package/dist/collection/components/{picker-internal/test/a11y/picker-internal.e2e.js → picker/test/a11y/picker.e2e.js} +2 -2
  79. package/dist/collection/components/picker/test/basic/picker.e2e.js +99 -13
  80. package/dist/collection/components/{picker-internal/test/keyboard-entry/picker-internal.e2e.js → picker/test/keyboard-entry/picker.e2e.js} +23 -22
  81. package/dist/collection/components/picker-column/picker-column.ios.css +120 -160
  82. package/dist/collection/components/picker-column/picker-column.js +514 -329
  83. package/dist/collection/components/picker-column/picker-column.md.css +134 -107
  84. package/dist/collection/components/{picker-column-internal/test/basic/picker-column-internal.e2e.js → picker-column/test/basic/picker-column.e2e.js} +8 -8
  85. package/dist/collection/components/picker-column/test/disabled/picker-column.e2e.js +113 -0
  86. package/dist/collection/components/picker-column/test/slots/picker-column.e2e.js +39 -0
  87. package/dist/collection/components/picker-column-option/picker-column-option.ios.css +87 -0
  88. package/dist/collection/components/picker-column-option/picker-column-option.js +173 -0
  89. package/dist/collection/components/{picker-column-internal/picker-column-internal.ios.css → picker-column-option/picker-column-option.md.css} +6 -53
  90. package/dist/collection/components/picker-column-option/test/a11y/picker-column-option.e2e.js +18 -0
  91. package/dist/collection/components/picker-column-option/test/basic/picker-column-option.e2e.js +37 -0
  92. package/dist/collection/components/picker-legacy/picker.ios.css +367 -0
  93. package/dist/collection/components/picker-legacy/picker.js +817 -0
  94. package/dist/collection/components/{picker-internal/picker-internal.ios.css → picker-legacy/picker.md.css} +192 -100
  95. package/dist/collection/components/picker-legacy/test/basic/picker.e2e.js +25 -0
  96. package/dist/collection/components/{picker → picker-legacy}/test/is-open/picker.e2e.js +4 -4
  97. package/dist/collection/components/{picker → picker-legacy}/test/picker-id.spec.js +5 -5
  98. package/dist/collection/components/{picker → picker-legacy}/test/trigger/picker.e2e.js +1 -1
  99. package/dist/collection/components/{picker-internal/picker-internal.md.css → picker-legacy-column/picker-column.ios.css} +98 -101
  100. package/dist/collection/components/picker-legacy-column/picker-column.js +419 -0
  101. package/dist/collection/components/{picker-column-internal/picker-column-internal.md.css → picker-legacy-column/picker-column.md.css} +113 -63
  102. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-aria.spec.js +3 -3
  103. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column-dynamic.spec.js +2 -2
  104. package/dist/collection/components/{picker-column → picker-legacy-column}/test/picker-column.spec.js +2 -2
  105. package/dist/collection/components/{picker-column → picker-legacy-column}/test/standalone/picker-column.e2e.js +3 -3
  106. package/dist/collection/components/textarea/test/clear-on-edit/textarea.e2e.js +0 -28
  107. package/dist/collection/components/textarea/textarea.js +2 -25
  108. package/dist/collection/utils/gesture/gesture-controller.js +1 -1
  109. package/dist/collection/utils/overlays.js +11 -4
  110. package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +65 -0
  111. package/dist/docs.json +493 -40
  112. package/dist/esm/{button-active-3fdf3e4f.js → button-active-ed9d848c.js} +1 -1
  113. package/dist/esm/{data-f5c75b4e.js → data-4b9508c9.js} +1 -1
  114. package/dist/esm/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  115. package/dist/esm/{index-2cf77112.js → index-39782642.js} +2 -2
  116. package/dist/esm/index.js +3 -3
  117. package/dist/esm/ion-action-sheet.entry.js +4 -4
  118. package/dist/esm/ion-alert.entry.js +4 -4
  119. package/dist/esm/ion-app_8.entry.js +2 -2
  120. package/dist/esm/ion-backdrop.entry.js +0 -12
  121. package/dist/esm/ion-datetime-button.entry.js +1 -1
  122. package/dist/esm/ion-datetime_3.entry.js +35 -55
  123. package/dist/esm/ion-input.entry.js +2 -21
  124. package/dist/esm/ion-item-option_3.entry.js +1 -1
  125. package/dist/esm/ion-loading.entry.js +2 -1
  126. package/dist/esm/ion-menu_3.entry.js +3 -3
  127. package/dist/esm/ion-modal.entry.js +3 -3
  128. package/dist/esm/ion-nav_2.entry.js +1 -1
  129. package/dist/esm/ion-picker-column-option.entry.js +100 -0
  130. package/dist/esm/{ion-picker-column-internal.entry.js → ion-picker-column.entry.js} +105 -72
  131. package/dist/esm/{ion-picker-internal.entry.js → ion-picker.entry.js} +13 -13
  132. package/dist/esm/ion-popover.entry.js +2 -1
  133. package/dist/esm/ion-range.entry.js +1 -1
  134. package/dist/esm/ion-refresher_2.entry.js +3 -3
  135. package/dist/esm/ion-reorder_2.entry.js +1 -1
  136. package/dist/esm/ion-segment_2.entry.js +1 -1
  137. package/dist/esm/ion-select_3.entry.js +2 -1
  138. package/dist/esm/ion-textarea.entry.js +2 -25
  139. package/dist/esm/ion-toast.entry.js +2 -1
  140. package/dist/esm/ion-toggle.entry.js +1 -1
  141. package/dist/esm/ionic.js +1 -1
  142. package/dist/esm/loader.js +1 -1
  143. package/dist/esm/{overlays-abf58489.js → overlays-fbc5cab5.js} +11 -4
  144. package/dist/esm/{swipe-back-a6f386fc.js → swipe-back-a8ca7f93.js} +2 -2
  145. package/dist/esm-es5/{button-active-3fdf3e4f.js → button-active-ed9d848c.js} +1 -1
  146. package/dist/esm-es5/{gesture-controller-1bf57181.js → gesture-controller-314a54f6.js} +1 -1
  147. package/dist/esm-es5/{index-2cf77112.js → index-39782642.js} +1 -1
  148. package/dist/esm-es5/index.js +1 -1
  149. package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
  150. package/dist/esm-es5/ion-alert.entry.js +1 -1
  151. package/dist/esm-es5/ion-app_8.entry.js +1 -1
  152. package/dist/esm-es5/ion-backdrop.entry.js +1 -1
  153. package/dist/esm-es5/ion-datetime-button.entry.js +1 -1
  154. package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
  155. package/dist/esm-es5/ion-input.entry.js +1 -1
  156. package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
  157. package/dist/esm-es5/ion-loading.entry.js +1 -1
  158. package/dist/esm-es5/ion-menu_3.entry.js +1 -1
  159. package/dist/esm-es5/ion-modal.entry.js +1 -1
  160. package/dist/esm-es5/ion-nav_2.entry.js +1 -1
  161. package/dist/esm-es5/ion-picker-column-option.entry.js +4 -0
  162. package/dist/esm-es5/ion-picker-column.entry.js +4 -0
  163. package/dist/esm-es5/ion-picker.entry.js +4 -0
  164. package/dist/esm-es5/ion-popover.entry.js +1 -1
  165. package/dist/esm-es5/ion-range.entry.js +1 -1
  166. package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
  167. package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
  168. package/dist/esm-es5/ion-segment_2.entry.js +1 -1
  169. package/dist/esm-es5/ion-select_3.entry.js +1 -1
  170. package/dist/esm-es5/ion-textarea.entry.js +1 -1
  171. package/dist/esm-es5/ion-toast.entry.js +1 -1
  172. package/dist/esm-es5/ion-toggle.entry.js +1 -1
  173. package/dist/esm-es5/ionic.js +1 -1
  174. package/dist/esm-es5/loader.js +1 -1
  175. package/dist/esm-es5/overlays-fbc5cab5.js +4 -0
  176. package/dist/esm-es5/swipe-back-a8ca7f93.js +4 -0
  177. package/dist/html.html-data.json +152 -1
  178. package/dist/ionic/index.esm.js +1 -1
  179. package/dist/ionic/ionic.esm.js +1 -1
  180. package/dist/ionic/{p-b0dc1cf9.system.js → p-1d624e03.system.js} +1 -1
  181. package/dist/ionic/{p-d40a974a.entry.js → p-1fc72959.entry.js} +1 -1
  182. package/dist/ionic/{p-c7c8429a.system.js → p-20d469d0.system.js} +1 -1
  183. package/dist/ionic/{p-0519cd21.entry.js → p-21c3515a.entry.js} +1 -1
  184. package/dist/ionic/{p-6470b136.entry.js → p-22e5af95.entry.js} +1 -1
  185. package/dist/ionic/p-232d1f22.entry.js +4 -0
  186. package/dist/ionic/p-23672c82.system.entry.js +4 -0
  187. package/dist/ionic/p-26798a7b.system.entry.js +4 -0
  188. package/dist/ionic/p-27bcbbc7.system.entry.js +4 -0
  189. package/dist/ionic/{p-765a08a7.system.entry.js → p-32303650.system.entry.js} +1 -1
  190. package/dist/ionic/p-3ba01a9c.system.entry.js +4 -0
  191. package/dist/ionic/{p-31b2326e.system.js → p-3e1e14d9.system.js} +1 -1
  192. package/dist/ionic/{p-667df818.system.entry.js → p-3fd26bd6.system.entry.js} +1 -1
  193. package/dist/ionic/{p-864c4046.entry.js → p-42ba3902.entry.js} +1 -1
  194. package/dist/ionic/{p-88fde0e0.entry.js → p-4911a5d6.entry.js} +1 -1
  195. package/dist/ionic/{p-a6f9dd7b.entry.js → p-4a081ea9.entry.js} +1 -1
  196. package/dist/ionic/{p-7b8d0af2.system.entry.js → p-4a36430f.system.entry.js} +1 -1
  197. package/dist/ionic/p-51abefb7.system.js +4 -0
  198. package/dist/ionic/{p-0b1bc636.entry.js → p-535d2a67.entry.js} +1 -1
  199. package/dist/ionic/{p-af5cfad2.system.js → p-54dfc9b5.system.js} +1 -1
  200. package/dist/ionic/p-563c41f0.system.entry.js +4 -0
  201. package/dist/ionic/{p-b04e4d62.entry.js → p-5d42b6b4.entry.js} +1 -1
  202. package/dist/ionic/{p-50880712.entry.js → p-6b7c55cd.entry.js} +1 -1
  203. package/dist/ionic/{p-a1987850.entry.js → p-6d72fb44.entry.js} +1 -1
  204. package/dist/ionic/{p-e6d68e02.system.entry.js → p-6fd64e7c.system.entry.js} +1 -1
  205. package/dist/ionic/p-73190c5f.entry.js +4 -0
  206. package/dist/ionic/p-73aa7604.entry.js +4 -0
  207. package/dist/ionic/{p-17f893be.js → p-76d3765d.js} +1 -1
  208. package/dist/ionic/{p-94389114.system.entry.js → p-77965464.system.entry.js} +1 -1
  209. package/dist/ionic/{p-98b14ece.entry.js → p-7b725280.entry.js} +1 -1
  210. package/dist/ionic/p-8017aad2.system.entry.js +4 -0
  211. package/dist/ionic/p-846ee227.entry.js +4 -0
  212. package/dist/ionic/p-8c97cdc0.entry.js +4 -0
  213. package/dist/ionic/{p-f5d2dc9b.js → p-8ededb41.js} +1 -1
  214. package/dist/ionic/p-8fa6583d.system.js +4 -0
  215. package/dist/ionic/p-9282b16f.entry.js +4 -0
  216. package/dist/ionic/{p-d7be6b7e.system.entry.js → p-96dbbac1.system.entry.js} +1 -1
  217. package/dist/ionic/{p-bb3615f7.js → p-9b97df10.js} +1 -1
  218. package/dist/ionic/p-9ba90516.system.entry.js +4 -0
  219. package/dist/ionic/{p-a0126dd5.system.entry.js → p-9c229210.system.entry.js} +2 -2
  220. package/dist/ionic/{p-7faba551.system.entry.js → p-a225bf0f.system.entry.js} +1 -1
  221. package/dist/ionic/p-a60a1ce5.js +4 -0
  222. package/dist/ionic/p-a8baa23e.entry.js +4 -0
  223. package/dist/ionic/{p-ad019ef0.entry.js → p-a9a80f5b.entry.js} +1 -1
  224. package/dist/ionic/p-afcf4620.entry.js +4 -0
  225. package/dist/ionic/{p-ddb30596.entry.js → p-b133e9b4.entry.js} +1 -1
  226. package/dist/ionic/{p-08f196ce.system.entry.js → p-b4d31b30.system.entry.js} +1 -1
  227. package/dist/ionic/{p-e553006f.system.entry.js → p-c18de88a.system.entry.js} +1 -1
  228. package/dist/ionic/p-c2910c78.entry.js +4 -0
  229. package/dist/ionic/p-c8f0a036.entry.js +4 -0
  230. package/dist/ionic/p-ca8938f4.js +4 -0
  231. package/dist/ionic/p-ca9d1792.system.entry.js +4 -0
  232. package/dist/ionic/{p-c3d09cf2.system.entry.js → p-cde52378.system.entry.js} +1 -1
  233. package/dist/ionic/p-da15f571.system.entry.js +4 -0
  234. package/dist/ionic/p-e3584231.system.js +1 -1
  235. package/dist/ionic/{p-6577aea9.system.entry.js → p-e8e86f69.system.entry.js} +1 -1
  236. package/dist/ionic/{p-9eec42cc.system.entry.js → p-f910cc73.system.entry.js} +1 -1
  237. package/dist/ionic/{p-3b686a65.system.entry.js → p-fbf3a689.system.entry.js} +1 -1
  238. package/dist/ionic/p-fe4dde76.entry.js +4 -0
  239. package/dist/ionic/p-ffd5dba4.system.entry.js +4 -0
  240. package/dist/types/components/backdrop/backdrop.d.ts +0 -3
  241. package/dist/types/components/datetime/datetime.d.ts +0 -1
  242. package/dist/types/components/datetime/utils/data.d.ts +2 -2
  243. package/dist/types/components/menu/menu.d.ts +1 -1
  244. package/dist/types/components/picker/picker-interfaces.d.ts +8 -0
  245. package/dist/types/components/picker/picker.d.ts +74 -131
  246. package/dist/types/components/picker-column/picker-column.d.ts +105 -39
  247. package/dist/types/components/picker-column-option/picker-column-option.d.ts +66 -0
  248. package/dist/types/components/picker-legacy/picker.d.ts +158 -0
  249. package/dist/types/components/picker-legacy-column/picker-column.d.ts +46 -0
  250. package/dist/types/components.d.ts +163 -122
  251. package/dist/types/interface.d.ts +1 -1
  252. package/dist/types/utils/config.d.ts +2 -2
  253. package/dist/types/utils/gesture/gesture-controller.d.ts +1 -0
  254. package/dist/types/utils/overlays.d.ts +5 -2
  255. package/hydrate/index.js +1367 -1296
  256. package/package.json +1 -1
  257. package/components/ion-picker-column-internal.d.ts +0 -11
  258. package/components/ion-picker-column-internal.js +0 -9
  259. package/components/ion-picker-internal.js +0 -9
  260. package/components/picker-column-internal.js +0 -390
  261. package/dist/collection/components/picker-column-internal/picker-column-internal.js +0 -565
  262. package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +0 -162
  263. package/dist/collection/components/picker-internal/picker-internal.js +0 -544
  264. package/dist/collection/components/picker-internal/test/basic/picker-internal.e2e.js +0 -118
  265. package/dist/esm-es5/ion-picker-column-internal.entry.js +0 -4
  266. package/dist/esm-es5/ion-picker-internal.entry.js +0 -4
  267. package/dist/esm-es5/overlays-abf58489.js +0 -4
  268. package/dist/esm-es5/swipe-back-a6f386fc.js +0 -4
  269. package/dist/ionic/p-18b6bd23.system.entry.js +0 -4
  270. package/dist/ionic/p-1d17219f.entry.js +0 -4
  271. package/dist/ionic/p-25b32c3d.entry.js +0 -4
  272. package/dist/ionic/p-2ba0657d.system.entry.js +0 -4
  273. package/dist/ionic/p-35ce400e.system.js +0 -4
  274. package/dist/ionic/p-3de71759.entry.js +0 -4
  275. package/dist/ionic/p-3e960213.system.entry.js +0 -4
  276. package/dist/ionic/p-61d7d7fb.js +0 -4
  277. package/dist/ionic/p-67da080d.entry.js +0 -4
  278. package/dist/ionic/p-6a6477b2.js +0 -4
  279. package/dist/ionic/p-73637557.system.entry.js +0 -4
  280. package/dist/ionic/p-73ea8f82.system.entry.js +0 -4
  281. package/dist/ionic/p-80fa068e.entry.js +0 -4
  282. package/dist/ionic/p-82045bc1.entry.js +0 -4
  283. package/dist/ionic/p-908475e7.system.entry.js +0 -4
  284. package/dist/ionic/p-9c3b6849.entry.js +0 -4
  285. package/dist/ionic/p-b4bad293.system.entry.js +0 -4
  286. package/dist/ionic/p-c3289ef2.entry.js +0 -4
  287. package/dist/ionic/p-cce9f61a.system.entry.js +0 -4
  288. package/dist/ionic/p-d1cb29a8.system.entry.js +0 -4
  289. package/dist/ionic/p-e94c392d.entry.js +0 -4
  290. package/dist/ionic/p-f2c21dae.system.js +0 -4
  291. package/dist/ionic/p-f51666d3.entry.js +0 -4
  292. package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +0 -102
  293. package/dist/types/components/picker-internal/picker-internal-interfaces.d.ts +0 -8
  294. package/dist/types/components/picker-internal/picker-internal.d.ts +0 -102
  295. /package/dist/collection/components/{picker-internal/picker-internal-interfaces.js → picker/picker-interfaces.js} +0 -0
  296. /package/dist/collection/components/{picker-column-internal/picker-column-internal-interfaces.js → picker-column/picker-column-interfaces.js} +0 -0
  297. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.enter.js +0 -0
  298. /package/dist/collection/components/{picker → picker-legacy}/animations/ios.leave.js +0 -0
  299. /package/dist/collection/components/{picker → picker-legacy}/picker-interface.js +0 -0
  300. /package/dist/collection/components/{picker-column → picker-legacy-column}/test/test.utils.js +0 -0
  301. /package/dist/esm-es5/{data-f5c75b4e.js → data-4b9508c9.js} +0 -0
  302. /package/dist/ionic/{p-2aea8b1e.js → p-368f5215.js} +0 -0
  303. /package/dist/ionic/{p-82e3d633.system.js → p-f58981c2.system.js} +0 -0
  304. /package/dist/types/components/{picker-column-internal/picker-column-internal-interfaces.d.ts → picker-column/picker-column-interfaces.d.ts} +0 -0
  305. /package/dist/types/components/{picker → picker-legacy}/animations/ios.enter.d.ts +0 -0
  306. /package/dist/types/components/{picker → picker-legacy}/animations/ios.leave.d.ts +0 -0
  307. /package/dist/types/components/{picker → picker-legacy}/picker-interface.d.ts +0 -0
  308. /package/dist/types/components/{picker-column → picker-legacy-column}/test/test.utils.d.ts +0 -0
@@ -0,0 +1,173 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import { Host, h } from "@stencil/core";
5
+ import { inheritAttributes } from "../../utils/helpers";
6
+ import { createColorClasses } from "../../utils/theme";
7
+ import { getIonMode } from "../../global/ionic-global";
8
+ export class PickerColumnOption {
9
+ constructor() {
10
+ /**
11
+ * We keep track of the parent picker column
12
+ * so we can update the value of it when
13
+ * clicking an enable option.
14
+ */
15
+ this.pickerColumn = null;
16
+ this.ariaLabel = null;
17
+ this.disabled = false;
18
+ this.value = undefined;
19
+ this.color = 'primary';
20
+ }
21
+ /**
22
+ * The aria-label of the option has changed after the
23
+ * first render and needs to be updated within the component.
24
+ *
25
+ * @param ariaLbl The new aria-label value.
26
+ */
27
+ onAriaLabelChange(ariaLbl) {
28
+ this.ariaLabel = ariaLbl;
29
+ }
30
+ componentWillLoad() {
31
+ const inheritedAttributes = inheritAttributes(this.el, ['aria-label']);
32
+ /**
33
+ * The initial value of `aria-label` needs to be set for
34
+ * the first render.
35
+
36
+ */
37
+ this.ariaLabel = inheritedAttributes['aria-label'] || null;
38
+ }
39
+ connectedCallback() {
40
+ this.pickerColumn = this.el.closest('ion-picker-column');
41
+ }
42
+ disconnectedCallback() {
43
+ this.pickerColumn = null;
44
+ }
45
+ /**
46
+ * The column options can load at any time
47
+ * so the options needs to tell the
48
+ * parent picker column when it is loaded
49
+ * so the picker column can ensure it is
50
+ * centered in the view.
51
+ *
52
+ * We intentionally run this for every
53
+ * option. If we only ran this from
54
+ * the selected option then if the newly
55
+ * loaded options were not selected then
56
+ * scrollActiveItemIntoView would not be called.
57
+ */
58
+ componentDidLoad() {
59
+ const { pickerColumn } = this;
60
+ if (pickerColumn !== null) {
61
+ pickerColumn.scrollActiveItemIntoView();
62
+ }
63
+ }
64
+ /**
65
+ * When an option is clicked update the
66
+ * parent picker column value. This
67
+ * component will handle centering the option
68
+ * in the column view.
69
+ */
70
+ onClick() {
71
+ const { pickerColumn } = this;
72
+ if (pickerColumn !== null) {
73
+ pickerColumn.setValue(this.value);
74
+ }
75
+ }
76
+ render() {
77
+ const { color, disabled, ariaLabel } = this;
78
+ const mode = getIonMode(this);
79
+ return (h(Host, { class: createColorClasses(color, {
80
+ [mode]: true,
81
+ ['option-disabled']: disabled,
82
+ }) }, h("button", { tabindex: "-1", "aria-label": ariaLabel, disabled: disabled, onClick: () => this.onClick() }, h("slot", null))));
83
+ }
84
+ static get is() { return "ion-picker-column-option"; }
85
+ static get encapsulation() { return "shadow"; }
86
+ static get originalStyleUrls() {
87
+ return {
88
+ "ios": ["picker-column-option.ios.scss"],
89
+ "md": ["picker-column-option.md.scss"]
90
+ };
91
+ }
92
+ static get styleUrls() {
93
+ return {
94
+ "ios": ["picker-column-option.ios.css"],
95
+ "md": ["picker-column-option.md.css"]
96
+ };
97
+ }
98
+ static get properties() {
99
+ return {
100
+ "disabled": {
101
+ "type": "boolean",
102
+ "mutable": false,
103
+ "complexType": {
104
+ "original": "boolean",
105
+ "resolved": "boolean",
106
+ "references": {}
107
+ },
108
+ "required": false,
109
+ "optional": false,
110
+ "docs": {
111
+ "tags": [],
112
+ "text": "If `true`, the user cannot interact with the picker column option."
113
+ },
114
+ "attribute": "disabled",
115
+ "reflect": false,
116
+ "defaultValue": "false"
117
+ },
118
+ "value": {
119
+ "type": "any",
120
+ "mutable": false,
121
+ "complexType": {
122
+ "original": "any | null",
123
+ "resolved": "any",
124
+ "references": {}
125
+ },
126
+ "required": false,
127
+ "optional": true,
128
+ "docs": {
129
+ "tags": [],
130
+ "text": "The text value of the option."
131
+ },
132
+ "attribute": "value",
133
+ "reflect": false
134
+ },
135
+ "color": {
136
+ "type": "string",
137
+ "mutable": false,
138
+ "complexType": {
139
+ "original": "Color",
140
+ "resolved": "\"danger\" | \"dark\" | \"light\" | \"medium\" | \"primary\" | \"secondary\" | \"success\" | \"tertiary\" | \"warning\" | string & Record<never, never> | undefined",
141
+ "references": {
142
+ "Color": {
143
+ "location": "import",
144
+ "path": "../../interface",
145
+ "id": "src/interface.d.ts::Color"
146
+ }
147
+ }
148
+ },
149
+ "required": false,
150
+ "optional": true,
151
+ "docs": {
152
+ "tags": [],
153
+ "text": "The color to use from your application's color palette.\nDefault options are: `\"primary\"`, `\"secondary\"`, `\"tertiary\"`, `\"success\"`, `\"warning\"`, `\"danger\"`, `\"light\"`, `\"medium\"`, and `\"dark\"`.\nFor more information on colors, see [theming](/docs/theming/basics)."
154
+ },
155
+ "attribute": "color",
156
+ "reflect": true,
157
+ "defaultValue": "'primary'"
158
+ }
159
+ };
160
+ }
161
+ static get states() {
162
+ return {
163
+ "ariaLabel": {}
164
+ };
165
+ }
166
+ static get elementRef() { return "el"; }
167
+ static get watchers() {
168
+ return [{
169
+ "propName": "aria-label",
170
+ "methodName": "onAriaLabelChange"
171
+ }];
172
+ }
173
+ }
@@ -53,35 +53,7 @@
53
53
  * }
54
54
  * }
55
55
  */
56
- :host {
57
- -webkit-padding-start: 16px;
58
- padding-inline-start: 16px;
59
- -webkit-padding-end: 16px;
60
- padding-inline-end: 16px;
61
- padding-top: 0px;
62
- padding-bottom: 0px;
63
- height: 200px;
64
- outline: none;
65
- font-size: 22px;
66
- scroll-snap-type: y mandatory;
67
- /**
68
- * Need to explicitly set overflow-x: hidden
69
- * for older implementations of scroll snapping.
70
- */
71
- overflow-x: hidden;
72
- overflow-y: scroll;
73
- scrollbar-width: none;
74
- text-align: center;
75
- }
76
-
77
- /**
78
- * Hide scrollbars on Chrome and Safari
79
- */
80
- :host::-webkit-scrollbar {
81
- display: none;
82
- }
83
-
84
- :host .picker-item {
56
+ button {
85
57
  padding-left: 0;
86
58
  padding-right: 0;
87
59
  padding-top: 0;
@@ -90,7 +62,6 @@
90
62
  margin-right: 0;
91
63
  margin-top: 0;
92
64
  margin-bottom: 0;
93
- display: block;
94
65
  width: 100%;
95
66
  height: 34px;
96
67
  border: 0px;
@@ -105,34 +76,16 @@
105
76
  white-space: nowrap;
106
77
  cursor: pointer;
107
78
  overflow: hidden;
108
- scroll-snap-align: center;
109
79
  }
110
80
 
111
- :host .picker-item-empty,
112
- :host .picker-item[disabled] {
113
- cursor: default;
114
- }
115
-
116
- :host .picker-item-empty,
117
- :host(:not([disabled])) .picker-item[disabled] {
118
- scroll-snap-align: none;
119
- }
120
-
121
- :host([disabled]) {
122
- overflow-y: hidden;
123
- }
124
-
125
- :host .picker-item[disabled] {
81
+ :host(.option-disabled) {
126
82
  opacity: 0.4;
127
83
  }
128
84
 
129
- :host(.picker-column-active) .picker-item.picker-item-active {
130
- color: var(--ion-color-base);
85
+ :host(.option-disabled) button {
86
+ cursor: default;
131
87
  }
132
88
 
133
- @media (any-hover: hover) {
134
- :host(:focus) {
135
- outline: none;
136
- background: rgba(var(--ion-color-base-rgb), 0.2);
137
- }
89
+ :host(.option-active) {
90
+ color: var(--ion-color-base);
138
91
  }
@@ -0,0 +1,18 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import AxeBuilder from "@axe-core/playwright";
5
+ import { expect } from "@playwright/test";
6
+ import { configs, test } from "../../../../utils/test/playwright/index";
7
+ /**
8
+ * This behavior does not vary across directions
9
+ */
10
+ configs({ directions: ['ltr'] }).forEach(({ config, title }) => {
11
+ test.describe(title('picker column option: a11y'), () => {
12
+ test('should not have accessibility violations', async ({ page }) => {
13
+ await page.goto(`/src/components/picker-column-option/test/a11y`, config);
14
+ const results = await new AxeBuilder({ page }).analyze();
15
+ expect(results.violations).toEqual([]);
16
+ });
17
+ });
18
+ });
@@ -0,0 +1,37 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import { expect } from "@playwright/test";
5
+ import { configs, test } from "../../../../utils/test/playwright/index";
6
+ configs({ directions: ['ltr'] }).forEach(({ title, screenshot, config }) => {
7
+ test.describe(title('picker-column-option: rendering'), () => {
8
+ test('picker option should not have visual regressions', async ({ page }) => {
9
+ await page.setContent(`
10
+ <ion-picker-column-option value="option">My Option</ion-picker-column-option>
11
+ `, config);
12
+ const option = page.locator('ion-picker-column-option');
13
+ await expect(option).toHaveScreenshot(screenshot('picker-column-option'));
14
+ });
15
+ test('disabled picker option should not have visual regressions', async ({ page }) => {
16
+ await page.setContent(`
17
+ <ion-picker-column-option disabled="true" value="option">My Option</ion-picker-column-option>
18
+ `, config);
19
+ const option = page.locator('ion-picker-column-option');
20
+ await expect(option).toHaveScreenshot(screenshot('disabled-picker-column-option'));
21
+ });
22
+ test('active picker option should not have visual regressions', async ({ page }) => {
23
+ await page.setContent(`
24
+ <ion-picker-column-option class="option-active" value="option">My Option</ion-picker-column-option>
25
+ `, config);
26
+ const option = page.locator('ion-picker-column-option');
27
+ await expect(option).toHaveScreenshot(screenshot('active-picker-column-option'));
28
+ });
29
+ test('disabled active picker option should not have visual regressions', async ({ page }) => {
30
+ await page.setContent(`
31
+ <ion-picker-column-option class="option-active" disabled="true" value="option">My Option</ion-picker-column-option>
32
+ `, config);
33
+ const option = page.locator('ion-picker-column-option');
34
+ await expect(option).toHaveScreenshot(screenshot('disabled-active-picker-column-option'));
35
+ });
36
+ });
37
+ });
@@ -0,0 +1,367 @@
1
+ /**
2
+ * Convert a font size to a dynamic font size.
3
+ * Fonts that participate in Dynamic Type should use
4
+ * dynamic font sizes.
5
+ * @param size - The initial font size including the unit (i.e. px or pt)
6
+ * @param unit (optional) - The unit to convert to. Use this if you want to
7
+ * convert to a unit other than $baselineUnit.
8
+ */
9
+ /**
10
+ * Convert a font size to a dynamic font size but impose
11
+ * a maximum font size.
12
+ * @param size - The initial font size including the unit (i.e. px or pt)
13
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
14
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
15
+ * convert to a unit other than $baselineUnit.
16
+ */
17
+ /**
18
+ * Convert a font size to a dynamic font size but impose
19
+ * a minimum font size.
20
+ * @param size - The initial font size including the unit (i.e. px or pt)
21
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
22
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
23
+ * convert to a unit other than $baselineUnit.
24
+ */
25
+ /**
26
+ * Convert a font size to a dynamic font size but impose
27
+ * maximum and minimum font sizes.
28
+ * @param size - The initial font size including the unit (i.e. px or pt)
29
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
30
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
31
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
32
+ * convert to a unit other than $baselineUnit.
33
+ */
34
+ /**
35
+ * A heuristic that applies CSS to tablet
36
+ * viewports.
37
+ *
38
+ * Usage:
39
+ * @include tablet-viewport() {
40
+ * :host {
41
+ * background-color: green;
42
+ * }
43
+ * }
44
+ */
45
+ /**
46
+ * A heuristic that applies CSS to mobile
47
+ * viewports (i.e. phones, not tablets).
48
+ *
49
+ * Usage:
50
+ * @include mobile-viewport() {
51
+ * :host {
52
+ * background-color: blue;
53
+ * }
54
+ * }
55
+ */
56
+ :host {
57
+ /**
58
+ * @prop --background: Background of the picker
59
+ * @prop --background-rgb: Background of the picker in rgb format
60
+ *
61
+ * @prop --border-radius: Border radius of the picker
62
+ * @prop --border-color: Border color of the picker
63
+ * @prop --border-width: Border width of the picker
64
+ * @prop --border-style: Border style of the picker
65
+ *
66
+ * @prop --min-width: Minimum width of the picker
67
+ * @prop --width: Width of the picker
68
+ * @prop --max-width: Maximum width of the picker
69
+ *
70
+ * @prop --min-height: Minimum height of the picker
71
+ * @prop --height: Height of the picker
72
+ * @prop --max-height: Maximum height of the picker
73
+ *
74
+ * @prop --backdrop-opacity: Opacity of the backdrop
75
+ */
76
+ --border-radius: 0;
77
+ --border-style: solid;
78
+ --min-width: auto;
79
+ --width: 100%;
80
+ --max-width: 500px;
81
+ --min-height: auto;
82
+ --max-height: auto;
83
+ -moz-osx-font-smoothing: grayscale;
84
+ -webkit-font-smoothing: antialiased;
85
+ top: 0;
86
+ display: block;
87
+ position: absolute;
88
+ width: 100%;
89
+ height: 100%;
90
+ outline: none;
91
+ font-family: var(--ion-font-family, inherit);
92
+ contain: strict;
93
+ user-select: none;
94
+ z-index: 1001;
95
+ }
96
+ @supports (inset-inline-start: 0) {
97
+ :host {
98
+ inset-inline-start: 0;
99
+ }
100
+ }
101
+ @supports not (inset-inline-start: 0) {
102
+ :host {
103
+ left: 0;
104
+ }
105
+ :host-context([dir=rtl]) {
106
+ left: unset;
107
+ right: unset;
108
+ right: 0;
109
+ }
110
+ @supports selector(:dir(rtl)) {
111
+ :host(:dir(rtl)) {
112
+ left: unset;
113
+ right: unset;
114
+ right: 0;
115
+ }
116
+ }
117
+ }
118
+
119
+ :host(.overlay-hidden) {
120
+ display: none;
121
+ }
122
+
123
+ .picker-wrapper {
124
+ border-radius: var(--border-radius);
125
+ left: 0;
126
+ right: 0;
127
+ bottom: 0;
128
+ -webkit-margin-start: auto;
129
+ margin-inline-start: auto;
130
+ -webkit-margin-end: auto;
131
+ margin-inline-end: auto;
132
+ margin-top: auto;
133
+ margin-bottom: auto;
134
+ transform: translate3d(0, 100%, 0);
135
+ display: flex;
136
+ position: absolute;
137
+ flex-direction: column;
138
+ width: var(--width);
139
+ min-width: var(--min-width);
140
+ max-width: var(--max-width);
141
+ height: var(--height);
142
+ min-height: var(--min-height);
143
+ max-height: var(--max-height);
144
+ border-width: var(--border-width);
145
+ border-style: var(--border-style);
146
+ border-color: var(--border-color);
147
+ background: var(--background);
148
+ contain: strict;
149
+ overflow: hidden;
150
+ z-index: 10;
151
+ }
152
+
153
+ .picker-toolbar {
154
+ width: 100%;
155
+ background: transparent;
156
+ contain: strict;
157
+ z-index: 1;
158
+ }
159
+
160
+ .picker-button {
161
+ border: 0;
162
+ font-family: inherit;
163
+ }
164
+
165
+ .picker-button:active, .picker-button:focus {
166
+ outline: none;
167
+ }
168
+
169
+ .picker-columns {
170
+ display: flex;
171
+ position: relative;
172
+ justify-content: center;
173
+ margin-bottom: var(--ion-safe-area-bottom, 0);
174
+ contain: strict;
175
+ overflow: hidden;
176
+ }
177
+
178
+ .picker-above-highlight,
179
+ .picker-below-highlight {
180
+ display: none;
181
+ pointer-events: none;
182
+ }
183
+
184
+ /**
185
+ * Convert a font size to a dynamic font size.
186
+ * Fonts that participate in Dynamic Type should use
187
+ * dynamic font sizes.
188
+ * @param size - The initial font size including the unit (i.e. px or pt)
189
+ * @param unit (optional) - The unit to convert to. Use this if you want to
190
+ * convert to a unit other than $baselineUnit.
191
+ */
192
+ /**
193
+ * Convert a font size to a dynamic font size but impose
194
+ * a maximum font size.
195
+ * @param size - The initial font size including the unit (i.e. px or pt)
196
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
197
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
198
+ * convert to a unit other than $baselineUnit.
199
+ */
200
+ /**
201
+ * Convert a font size to a dynamic font size but impose
202
+ * a minimum font size.
203
+ * @param size - The initial font size including the unit (i.e. px or pt)
204
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
205
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
206
+ * convert to a unit other than $baselineUnit.
207
+ */
208
+ /**
209
+ * Convert a font size to a dynamic font size but impose
210
+ * maximum and minimum font sizes.
211
+ * @param size - The initial font size including the unit (i.e. px or pt)
212
+ * @param minScale - The minimum scale of the font (i.e. 0.8 for a minimum 80% scale).
213
+ * @param maxScale - The maximum scale of the font (i.e. 2.5 for a maximum 250% scale).
214
+ * @param unit (optional) - The unit to convert the initial font size to. Use this if you want to
215
+ * convert to a unit other than $baselineUnit.
216
+ */
217
+ /**
218
+ * A heuristic that applies CSS to tablet
219
+ * viewports.
220
+ *
221
+ * Usage:
222
+ * @include tablet-viewport() {
223
+ * :host {
224
+ * background-color: green;
225
+ * }
226
+ * }
227
+ */
228
+ /**
229
+ * A heuristic that applies CSS to mobile
230
+ * viewports (i.e. phones, not tablets).
231
+ *
232
+ * Usage:
233
+ * @include mobile-viewport() {
234
+ * :host {
235
+ * background-color: blue;
236
+ * }
237
+ * }
238
+ */
239
+ :host {
240
+ --background: var(--ion-background-color, #fff);
241
+ --border-width: 1px 0 0;
242
+ --border-color: var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, #c8c7cc)));
243
+ --height: 260px;
244
+ --backdrop-opacity: var(--ion-backdrop-opacity, 0.26);
245
+ color: var(--ion-item-color, var(--ion-text-color, #000));
246
+ }
247
+
248
+ .picker-toolbar {
249
+ display: flex;
250
+ height: 44px;
251
+ border-bottom: 0.55px solid var(--border-color);
252
+ }
253
+
254
+ .picker-toolbar-button {
255
+ flex: 1;
256
+ text-align: end;
257
+ }
258
+
259
+ .picker-toolbar-button:last-child .picker-button {
260
+ font-weight: 600;
261
+ }
262
+
263
+ .picker-toolbar-button:first-child {
264
+ font-weight: normal;
265
+ text-align: start;
266
+ }
267
+
268
+ .picker-button,
269
+ .picker-button.ion-activated {
270
+ margin-left: 0;
271
+ margin-right: 0;
272
+ margin-top: 0;
273
+ margin-bottom: 0;
274
+ -webkit-padding-start: 1em;
275
+ padding-inline-start: 1em;
276
+ -webkit-padding-end: 1em;
277
+ padding-inline-end: 1em;
278
+ padding-top: 0;
279
+ padding-bottom: 0;
280
+ height: 44px;
281
+ background: transparent;
282
+ color: var(--ion-color-primary, #3880ff);
283
+ font-size: 16px;
284
+ }
285
+
286
+ .picker-columns {
287
+ height: 215px;
288
+ perspective: 1000px;
289
+ }
290
+
291
+ .picker-above-highlight {
292
+ top: 0;
293
+ transform: translate3d(0, 0, 90px);
294
+ display: block;
295
+ position: absolute;
296
+ width: 100%;
297
+ height: 81px;
298
+ border-bottom: 1px solid var(--border-color);
299
+ background: linear-gradient(to bottom, var(--background, var(--ion-background-color, #fff)) 20%, rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8) 100%);
300
+ z-index: 10;
301
+ }
302
+ @supports (inset-inline-start: 0) {
303
+ .picker-above-highlight {
304
+ inset-inline-start: 0;
305
+ }
306
+ }
307
+ @supports not (inset-inline-start: 0) {
308
+ .picker-above-highlight {
309
+ left: 0;
310
+ }
311
+ :host-context([dir=rtl]) .picker-above-highlight {
312
+ left: unset;
313
+ right: unset;
314
+ right: 0;
315
+ }
316
+ [dir=rtl] .picker-above-highlight {
317
+ left: unset;
318
+ right: unset;
319
+ right: 0;
320
+ }
321
+ @supports selector(:dir(rtl)) {
322
+ .picker-above-highlight:dir(rtl) {
323
+ left: unset;
324
+ right: unset;
325
+ right: 0;
326
+ }
327
+ }
328
+ }
329
+
330
+ .picker-below-highlight {
331
+ top: 115px;
332
+ transform: translate3d(0, 0, 90px);
333
+ display: block;
334
+ position: absolute;
335
+ width: 100%;
336
+ height: 119px;
337
+ border-top: 1px solid var(--border-color);
338
+ background: linear-gradient(to top, var(--background, var(--ion-background-color, #fff)) 30%, rgba(var(--background-rgb, var(--ion-background-color-rgb, 255, 255, 255)), 0.8) 100%);
339
+ z-index: 11;
340
+ }
341
+ @supports (inset-inline-start: 0) {
342
+ .picker-below-highlight {
343
+ inset-inline-start: 0;
344
+ }
345
+ }
346
+ @supports not (inset-inline-start: 0) {
347
+ .picker-below-highlight {
348
+ left: 0;
349
+ }
350
+ :host-context([dir=rtl]) .picker-below-highlight {
351
+ left: unset;
352
+ right: unset;
353
+ right: 0;
354
+ }
355
+ [dir=rtl] .picker-below-highlight {
356
+ left: unset;
357
+ right: unset;
358
+ right: 0;
359
+ }
360
+ @supports selector(:dir(rtl)) {
361
+ .picker-below-highlight:dir(rtl) {
362
+ left: unset;
363
+ right: unset;
364
+ right: 0;
365
+ }
366
+ }
367
+ }