@ionic/core 8.7.13-dev.11765560568.1a8772e8 → 8.7.13-dev.11765829391.14bc580c

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 (279) hide show
  1. package/components/header.js +2 -2
  2. package/components/ion-datetime-button.js +2 -2
  3. package/components/ion-datetime.js +85 -86
  4. package/components/ion-fab-button.js +2 -2
  5. package/components/ion-fab-list.js +2 -2
  6. package/components/ion-fab.js +2 -2
  7. package/components/ion-footer.js +2 -2
  8. package/components/ion-grid.js +2 -2
  9. package/components/ion-img.js +1 -1
  10. package/components/ion-infinite-scroll-content.js +2 -2
  11. package/components/ion-infinite-scroll.js +1 -1
  12. package/components/ion-input-otp.js +3 -3
  13. package/components/ion-input-password-toggle.js +3 -3
  14. package/components/ion-input.js +3 -3
  15. package/components/ion-item-divider.js +2 -2
  16. package/components/ion-item-group.js +1 -1
  17. package/components/ion-item-option.js +2 -2
  18. package/components/ion-item-options.js +1 -1
  19. package/components/ion-item-sliding.js +1 -1
  20. package/components/ion-loading.js +2 -2
  21. package/components/ion-menu-button.js +2 -2
  22. package/components/ion-menu-toggle.js +2 -2
  23. package/components/ion-menu.js +2 -2
  24. package/components/ion-nav-link.js +1 -1
  25. package/components/ion-nav.js +1 -1
  26. package/components/ion-note.js +2 -2
  27. package/components/ion-picker-legacy.js +2 -2
  28. package/components/ion-progress-bar.js +1 -1
  29. package/components/ion-range.js +3 -3
  30. package/components/ion-refresher-content.js +1 -1
  31. package/components/ion-refresher.js +1 -1
  32. package/components/ion-reorder-group.js +1 -1
  33. package/components/ion-reorder.js +1 -1
  34. package/components/ion-router-link.js +2 -2
  35. package/components/ion-router-outlet.js +1 -1
  36. package/components/ion-row.js +1 -1
  37. package/components/ion-searchbar.js +4 -4
  38. package/components/ion-segment-button.js +2 -2
  39. package/components/ion-segment-content.js +1 -1
  40. package/components/ion-segment-view.js +2 -2
  41. package/components/ion-segment.js +2 -2
  42. package/components/ion-select-option.js +1 -1
  43. package/components/ion-select.js +2 -2
  44. package/components/ion-skeleton-text.js +2 -2
  45. package/components/ion-split-pane.js +2 -2
  46. package/components/ion-tab-bar.js +2 -2
  47. package/components/ion-tab-button.js +2 -2
  48. package/components/ion-tab.js +2 -2
  49. package/components/ion-tabs.js +1 -1
  50. package/components/ion-text.js +2 -2
  51. package/components/ion-textarea.js +2 -2
  52. package/components/ion-thumbnail.js +1 -1
  53. package/components/ion-toast.js +2 -2
  54. package/components/ion-toggle.js +3 -3
  55. package/components/label.js +2 -2
  56. package/components/list-header.js +2 -2
  57. package/components/list.js +1 -1
  58. package/components/modal.js +4 -4
  59. package/components/picker-column-option.js +2 -2
  60. package/components/picker-column.js +3 -3
  61. package/components/picker-column2.js +2 -2
  62. package/components/picker.js +2 -2
  63. package/components/popover.js +2 -2
  64. package/components/radio-group.js +1 -1
  65. package/components/radio.js +3 -3
  66. package/components/ripple-effect.js +1 -1
  67. package/components/select-modal.js +1 -1
  68. package/components/select-popover.js +1 -1
  69. package/components/spinner.js +1 -1
  70. package/components/title.js +2 -2
  71. package/components/toolbar.js +2 -2
  72. package/dist/cjs/ion-app_8.cjs.entry.js +9 -9
  73. package/dist/cjs/ion-avatar_3.cjs.entry.js +1 -1
  74. package/dist/cjs/ion-col_3.cjs.entry.js +3 -3
  75. package/dist/cjs/ion-datetime-button.cjs.entry.js +2 -2
  76. package/dist/cjs/ion-datetime_3.cjs.entry.js +89 -90
  77. package/dist/cjs/ion-fab_3.cjs.entry.js +6 -6
  78. package/dist/cjs/ion-img.cjs.entry.js +1 -1
  79. package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -3
  80. package/dist/cjs/ion-input-otp.cjs.entry.js +3 -3
  81. package/dist/cjs/ion-input-password-toggle.cjs.entry.js +3 -3
  82. package/dist/cjs/ion-input.cjs.entry.js +3 -3
  83. package/dist/cjs/ion-item-option_3.cjs.entry.js +4 -4
  84. package/dist/cjs/ion-item_8.cjs.entry.js +12 -12
  85. package/dist/cjs/ion-loading.cjs.entry.js +2 -2
  86. package/dist/cjs/ion-menu_3.cjs.entry.js +6 -6
  87. package/dist/cjs/ion-modal.cjs.entry.js +4 -4
  88. package/dist/cjs/ion-nav_2.cjs.entry.js +2 -2
  89. package/dist/cjs/ion-picker-column-option.cjs.entry.js +2 -2
  90. package/dist/cjs/ion-picker-column.cjs.entry.js +3 -3
  91. package/dist/cjs/ion-picker.cjs.entry.js +2 -2
  92. package/dist/cjs/ion-popover.cjs.entry.js +2 -2
  93. package/dist/cjs/ion-progress-bar.cjs.entry.js +1 -1
  94. package/dist/cjs/ion-radio_2.cjs.entry.js +4 -4
  95. package/dist/cjs/ion-range.cjs.entry.js +3 -3
  96. package/dist/cjs/ion-refresher_2.cjs.entry.js +2 -2
  97. package/dist/cjs/ion-reorder_2.cjs.entry.js +2 -2
  98. package/dist/cjs/ion-ripple-effect.cjs.entry.js +1 -1
  99. package/dist/cjs/ion-route_4.cjs.entry.js +2 -2
  100. package/dist/cjs/ion-searchbar.cjs.entry.js +4 -4
  101. package/dist/cjs/ion-segment-content.cjs.entry.js +1 -1
  102. package/dist/cjs/ion-segment-view.cjs.entry.js +2 -2
  103. package/dist/cjs/ion-segment_2.cjs.entry.js +4 -4
  104. package/dist/cjs/ion-select-modal.cjs.entry.js +1 -1
  105. package/dist/cjs/ion-select_3.cjs.entry.js +4 -4
  106. package/dist/cjs/ion-spinner.cjs.entry.js +1 -1
  107. package/dist/cjs/ion-split-pane.cjs.entry.js +2 -2
  108. package/dist/cjs/ion-tab-bar_2.cjs.entry.js +4 -4
  109. package/dist/cjs/ion-tab_2.cjs.entry.js +3 -3
  110. package/dist/cjs/ion-text.cjs.entry.js +2 -2
  111. package/dist/cjs/ion-textarea.cjs.entry.js +2 -2
  112. package/dist/cjs/ion-toast.cjs.entry.js +2 -2
  113. package/dist/cjs/ion-toggle.cjs.entry.js +3 -3
  114. package/dist/collection/components/datetime/datetime.js +85 -86
  115. package/dist/collection/components/datetime-button/datetime-button.js +2 -2
  116. package/dist/collection/components/fab/fab.js +2 -2
  117. package/dist/collection/components/fab-button/fab-button.js +2 -2
  118. package/dist/collection/components/fab-list/fab-list.js +2 -2
  119. package/dist/collection/components/footer/footer.js +2 -2
  120. package/dist/collection/components/grid/grid.js +2 -2
  121. package/dist/collection/components/header/header.js +2 -2
  122. package/dist/collection/components/img/img.js +1 -1
  123. package/dist/collection/components/infinite-scroll/infinite-scroll.js +1 -1
  124. package/dist/collection/components/infinite-scroll-content/infinite-scroll-content.js +2 -2
  125. package/dist/collection/components/input/input.js +3 -3
  126. package/dist/collection/components/input-otp/input-otp.js +3 -3
  127. package/dist/collection/components/input-password-toggle/input-password-toggle.js +3 -3
  128. package/dist/collection/components/item-divider/item-divider.js +2 -2
  129. package/dist/collection/components/item-group/item-group.js +1 -1
  130. package/dist/collection/components/item-option/item-option.js +2 -2
  131. package/dist/collection/components/item-options/item-options.js +1 -1
  132. package/dist/collection/components/item-sliding/item-sliding.js +1 -1
  133. package/dist/collection/components/label/label.js +2 -2
  134. package/dist/collection/components/list/list.js +1 -1
  135. package/dist/collection/components/list-header/list-header.js +2 -2
  136. package/dist/collection/components/loading/loading.js +2 -2
  137. package/dist/collection/components/menu/menu.js +2 -2
  138. package/dist/collection/components/menu-button/menu-button.js +2 -2
  139. package/dist/collection/components/menu-toggle/menu-toggle.js +2 -2
  140. package/dist/collection/components/modal/modal.js +4 -4
  141. package/dist/collection/components/nav/nav.js +1 -1
  142. package/dist/collection/components/nav-link/nav-link.js +1 -1
  143. package/dist/collection/components/note/note.js +2 -2
  144. package/dist/collection/components/picker/picker.js +2 -2
  145. package/dist/collection/components/picker-column/picker-column.js +3 -3
  146. package/dist/collection/components/picker-column-option/picker-column-option.js +2 -2
  147. package/dist/collection/components/picker-legacy/picker.js +2 -2
  148. package/dist/collection/components/picker-legacy-column/picker-column.js +2 -2
  149. package/dist/collection/components/popover/popover.js +2 -2
  150. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  151. package/dist/collection/components/radio/radio.js +3 -3
  152. package/dist/collection/components/radio-group/radio-group.js +1 -1
  153. package/dist/collection/components/range/range.js +3 -3
  154. package/dist/collection/components/refresher/refresher.js +1 -1
  155. package/dist/collection/components/refresher-content/refresher-content.js +1 -1
  156. package/dist/collection/components/reorder/reorder.js +1 -1
  157. package/dist/collection/components/reorder-group/reorder-group.js +1 -1
  158. package/dist/collection/components/ripple-effect/ripple-effect.js +1 -1
  159. package/dist/collection/components/router-link/router-link.js +2 -2
  160. package/dist/collection/components/router-outlet/router-outlet.js +1 -1
  161. package/dist/collection/components/row/row.js +1 -1
  162. package/dist/collection/components/searchbar/searchbar.js +4 -4
  163. package/dist/collection/components/segment/segment.js +2 -2
  164. package/dist/collection/components/segment-button/segment-button.js +2 -2
  165. package/dist/collection/components/segment-content/segment-content.js +1 -1
  166. package/dist/collection/components/segment-view/segment-view.js +2 -2
  167. package/dist/collection/components/select/select.js +2 -2
  168. package/dist/collection/components/select-modal/select-modal.js +1 -1
  169. package/dist/collection/components/select-option/select-option.js +1 -1
  170. package/dist/collection/components/select-popover/select-popover.js +1 -1
  171. package/dist/collection/components/skeleton-text/skeleton-text.js +2 -2
  172. package/dist/collection/components/spinner/spinner.js +1 -1
  173. package/dist/collection/components/split-pane/split-pane.js +2 -2
  174. package/dist/collection/components/tab/tab.js +2 -2
  175. package/dist/collection/components/tab-bar/tab-bar.js +2 -2
  176. package/dist/collection/components/tab-button/tab-button.js +2 -2
  177. package/dist/collection/components/tabs/tabs.js +1 -1
  178. package/dist/collection/components/text/text.js +2 -2
  179. package/dist/collection/components/textarea/textarea.js +2 -2
  180. package/dist/collection/components/thumbnail/thumbnail.js +1 -1
  181. package/dist/collection/components/title/title.js +2 -2
  182. package/dist/collection/components/toast/toast.js +2 -2
  183. package/dist/collection/components/toggle/toggle.js +3 -3
  184. package/dist/collection/components/toolbar/toolbar.js +2 -2
  185. package/dist/docs.json +1 -1
  186. package/dist/esm/ion-app_8.entry.js +9 -9
  187. package/dist/esm/ion-avatar_3.entry.js +1 -1
  188. package/dist/esm/ion-col_3.entry.js +3 -3
  189. package/dist/esm/ion-datetime-button.entry.js +2 -2
  190. package/dist/esm/ion-datetime_3.entry.js +89 -90
  191. package/dist/esm/ion-fab_3.entry.js +6 -6
  192. package/dist/esm/ion-img.entry.js +1 -1
  193. package/dist/esm/ion-infinite-scroll_2.entry.js +3 -3
  194. package/dist/esm/ion-input-otp.entry.js +3 -3
  195. package/dist/esm/ion-input-password-toggle.entry.js +3 -3
  196. package/dist/esm/ion-input.entry.js +3 -3
  197. package/dist/esm/ion-item-option_3.entry.js +4 -4
  198. package/dist/esm/ion-item_8.entry.js +12 -12
  199. package/dist/esm/ion-loading.entry.js +2 -2
  200. package/dist/esm/ion-menu_3.entry.js +6 -6
  201. package/dist/esm/ion-modal.entry.js +4 -4
  202. package/dist/esm/ion-nav_2.entry.js +2 -2
  203. package/dist/esm/ion-picker-column-option.entry.js +2 -2
  204. package/dist/esm/ion-picker-column.entry.js +3 -3
  205. package/dist/esm/ion-picker.entry.js +2 -2
  206. package/dist/esm/ion-popover.entry.js +2 -2
  207. package/dist/esm/ion-progress-bar.entry.js +1 -1
  208. package/dist/esm/ion-radio_2.entry.js +4 -4
  209. package/dist/esm/ion-range.entry.js +3 -3
  210. package/dist/esm/ion-refresher_2.entry.js +2 -2
  211. package/dist/esm/ion-reorder_2.entry.js +2 -2
  212. package/dist/esm/ion-ripple-effect.entry.js +1 -1
  213. package/dist/esm/ion-route_4.entry.js +2 -2
  214. package/dist/esm/ion-searchbar.entry.js +4 -4
  215. package/dist/esm/ion-segment-content.entry.js +1 -1
  216. package/dist/esm/ion-segment-view.entry.js +2 -2
  217. package/dist/esm/ion-segment_2.entry.js +4 -4
  218. package/dist/esm/ion-select-modal.entry.js +1 -1
  219. package/dist/esm/ion-select_3.entry.js +4 -4
  220. package/dist/esm/ion-spinner.entry.js +1 -1
  221. package/dist/esm/ion-split-pane.entry.js +2 -2
  222. package/dist/esm/ion-tab-bar_2.entry.js +4 -4
  223. package/dist/esm/ion-tab_2.entry.js +3 -3
  224. package/dist/esm/ion-text.entry.js +2 -2
  225. package/dist/esm/ion-textarea.entry.js +2 -2
  226. package/dist/esm/ion-toast.entry.js +2 -2
  227. package/dist/esm/ion-toggle.entry.js +3 -3
  228. package/dist/ionic/ionic.esm.js +1 -1
  229. package/dist/ionic/{p-cc2a9936.entry.js → p-020af078.entry.js} +1 -1
  230. package/dist/ionic/{p-01e27965.entry.js → p-074839fc.entry.js} +1 -1
  231. package/dist/ionic/{p-67f46577.entry.js → p-0abeb0fc.entry.js} +1 -1
  232. package/dist/ionic/{p-59a5cdf5.entry.js → p-0bf76d0f.entry.js} +1 -1
  233. package/dist/ionic/{p-530fcd71.entry.js → p-0dfa5a37.entry.js} +1 -1
  234. package/dist/ionic/{p-85ee4a92.entry.js → p-11518b31.entry.js} +1 -1
  235. package/dist/ionic/{p-363d1209.entry.js → p-1647c46c.entry.js} +1 -1
  236. package/dist/ionic/{p-6f37536a.entry.js → p-2a939845.entry.js} +1 -1
  237. package/dist/ionic/{p-221a3d8c.entry.js → p-316c0420.entry.js} +1 -1
  238. package/dist/ionic/{p-a4a9f5ae.entry.js → p-31f7095f.entry.js} +1 -1
  239. package/dist/ionic/{p-fbb00634.entry.js → p-370e4237.entry.js} +1 -1
  240. package/dist/ionic/{p-2668188b.entry.js → p-3a6caca9.entry.js} +1 -1
  241. package/dist/ionic/{p-64841854.entry.js → p-40c261a3.entry.js} +1 -1
  242. package/dist/ionic/{p-ee8ecd40.entry.js → p-46d74291.entry.js} +1 -1
  243. package/dist/ionic/p-4b658a7c.entry.js +4 -0
  244. package/dist/ionic/p-4e41ea20.entry.js +4 -0
  245. package/dist/ionic/p-51a60e0f.entry.js +4 -0
  246. package/dist/ionic/p-576e0965.entry.js +4 -0
  247. package/dist/ionic/{p-e036eb2f.entry.js → p-6241ce47.entry.js} +1 -1
  248. package/dist/ionic/{p-c175d792.entry.js → p-639dd543.entry.js} +1 -1
  249. package/dist/ionic/{p-d655735d.entry.js → p-6444c606.entry.js} +1 -1
  250. package/dist/ionic/{p-65db57d7.entry.js → p-675b1a31.entry.js} +1 -1
  251. package/dist/ionic/{p-82d5bb3d.entry.js → p-6d070558.entry.js} +1 -1
  252. package/dist/ionic/{p-e64b550c.entry.js → p-7268efa5.entry.js} +1 -1
  253. package/dist/ionic/{p-20f135b4.entry.js → p-72c38b88.entry.js} +1 -1
  254. package/dist/ionic/{p-b8551510.entry.js → p-86f53961.entry.js} +1 -1
  255. package/dist/ionic/p-94de5cfa.entry.js +4 -0
  256. package/dist/ionic/{p-e48f026f.entry.js → p-9575b654.entry.js} +1 -1
  257. package/dist/ionic/{p-30333874.entry.js → p-a127bee2.entry.js} +1 -1
  258. package/dist/ionic/{p-3b0b7a05.entry.js → p-a8ed848b.entry.js} +1 -1
  259. package/dist/ionic/{p-bccc9207.entry.js → p-ac4eb91d.entry.js} +1 -1
  260. package/dist/ionic/{p-dbc82f0e.entry.js → p-b57c6d3e.entry.js} +1 -1
  261. package/dist/ionic/{p-b30c3430.entry.js → p-c19f63d0.entry.js} +1 -1
  262. package/dist/ionic/{p-f097a9e5.entry.js → p-c85a2127.entry.js} +1 -1
  263. package/dist/ionic/{p-69c6fe52.entry.js → p-cc45bcbc.entry.js} +1 -1
  264. package/dist/ionic/{p-75ebaa15.entry.js → p-cebb0328.entry.js} +1 -1
  265. package/dist/ionic/{p-bce86e56.entry.js → p-d126e8d3.entry.js} +1 -1
  266. package/dist/ionic/{p-2bd1ea35.entry.js → p-d3014190.entry.js} +1 -1
  267. package/dist/ionic/{p-652318c3.entry.js → p-dbbe606a.entry.js} +1 -1
  268. package/dist/ionic/{p-0852af24.entry.js → p-ea509e3c.entry.js} +1 -1
  269. package/dist/ionic/{p-fc14f34a.entry.js → p-ec654c42.entry.js} +1 -1
  270. package/dist/ionic/{p-fb0271ae.entry.js → p-f8f22cc0.entry.js} +1 -1
  271. package/dist/types/components/datetime/datetime.d.ts +8 -9
  272. package/hydrate/index.js +213 -214
  273. package/hydrate/index.mjs +213 -214
  274. package/package.json +5 -5
  275. package/dist/ionic/p-0ca0fe9c.entry.js +0 -4
  276. package/dist/ionic/p-43c5249f.entry.js +0 -4
  277. package/dist/ionic/p-7f98e710.entry.js +0 -4
  278. package/dist/ionic/p-ce8dad03.entry.js +0 -4
  279. package/dist/ionic/p-ebcfc1d2.entry.js +0 -4
@@ -551,14 +551,14 @@ const PickerColumn = /*@__PURE__*/ proxyCustomElement(class PickerColumn extends
551
551
  render() {
552
552
  const { color, disabled, isActive, numericInput } = this;
553
553
  const mode = getIonMode(this);
554
- return (h(Host, { key: 'fc7176e47e8d8776060197343b4c15c09f312528', class: createColorClasses(color, {
554
+ return (h(Host, { key: 'db903fd415f8a2d91994dececca481c1af8ba6a9', class: createColorClasses(color, {
555
555
  [mode]: true,
556
556
  ['picker-column-active']: isActive,
557
557
  ['picker-column-numeric-input']: numericInput,
558
558
  ['picker-column-disabled']: disabled,
559
- }) }, h("slot", { key: 'fce09abdcc48afa64fd5f869b1614f9e564b6759', name: "prefix" }), h("div", { key: 'fbadc7cfa4965238a1ce5d47cb3bb258fa0214a1', class: "picker-opts", ref: (el) => {
559
+ }) }, h("slot", { key: '02ce9e1dd7df91afcd50b06416552bcffb5dec98', name: "prefix" }), h("div", { key: '6dfd7d2429bec19244a6b1afb4448121963a031b', class: "picker-opts", ref: (el) => {
560
560
  this.scrollEl = el;
561
- }, role: "slider", tabindex: this.disabled ? undefined : 0, "aria-label": this.ariaLabel, "aria-valuemin": 0, "aria-valuemax": 0, "aria-valuenow": 0, "aria-valuetext": this.getOptionValueText(this.activeItem), "aria-orientation": "vertical", onKeyDown: (ev) => this.onKeyDown(ev) }, h("div", { key: '9f1ba897db0a0469a77cf12f846cc80fea94f596', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '8265d65d90c512e70c20ca9023502610c0b9fc62', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'fd0e92a13eeea72f68f43e25ce47b357e5fc431f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("slot", { key: '63cf74b36e665540c6e2dc038e5581d9e7016983' }), h("div", { key: '48550abba1a52a57b195d7815265e19b3941e5db', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '06a739f9bbf18f4f45d613f88a6d803bda60afd1', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '416effc018a21e72b5a197abc9cc49d05efcda7c', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), h("slot", { key: '28fdc95c318b0c76a609e12a9b4e17238ba15f8e', name: "suffix" })));
561
+ }, role: "slider", tabindex: this.disabled ? undefined : 0, "aria-label": this.ariaLabel, "aria-valuemin": 0, "aria-valuemax": 0, "aria-valuenow": 0, "aria-valuetext": this.getOptionValueText(this.activeItem), "aria-orientation": "vertical", onKeyDown: (ev) => this.onKeyDown(ev) }, h("div", { key: 'e30ce0b9cefbfe4d4441fa33acf595da31855c3f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '8be2bd293c12c6ba720d9b31d0d561a96f42e97d', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '8afdcddddabbf646fbb55cb0ba4448309a2c1dd9', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("slot", { key: '6aa0dacc34d6848575ad5b122b9046982308ca43' }), h("div", { key: '92ec8a357414c1b779b11d1dd18fb87a7ee63982', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: 'b89457cb74b5907c25594ff6720ac54ca537e933', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), h("div", { key: '5bbc92e6bc24de08e39873bf08c5b668373ac0f8', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), h("slot", { key: 'd7bf2b519214f0f3576a4ca79844ad97827dd97f', name: "suffix" })));
562
562
  }
563
563
  get el() { return this; }
564
564
  static get watchers() { return {
@@ -342,9 +342,9 @@ const PickerColumnCmp = /*@__PURE__*/ proxyCustomElement(class PickerColumnCmp e
342
342
  render() {
343
343
  const col = this.col;
344
344
  const mode = getIonMode(this);
345
- return (h(Host, { key: '86125e95f18837dfd021db01777d72a1562d8ee3', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
345
+ return (h(Host, { key: 'ed32d108dd94f0302fb453c31a3497ebae65ec37', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, getClassMap(col.cssClass)), style: {
346
346
  'max-width': this.col.columnWidth,
347
- } }, col.prefix && (h("div", { key: 'b0f3d39e0bd128781066ffefb7a1e40d12a9e76d', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '0b106ac4d56916eaaa7f09d1b68348b3754b7bba', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { key: '00ff2f9dbb4561787e5a5223327c6a2a33f8362e', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
347
+ } }, col.prefix && (h("div", { key: '9f0634890e66fd4ae74f826d1eea3431de121393', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), h("div", { key: '337e996e5be91af16446085fe22436f213b771eb', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (h("div", { key: 'd69a132599d78d9e5107f12228978cfce4e43098', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
348
348
  }
349
349
  get el() { return this; }
350
350
  static get watchers() { return {
@@ -459,7 +459,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
459
459
  this.emitInputModeChange();
460
460
  }
461
461
  render() {
462
- return (h(Host, { key: '2546ff9e4f6bb9f880600903cdfad67be2df014d', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: '58337ea0f6e3aba819fc48bad7dc0847251f72f1', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
462
+ return (h(Host, { key: '28f81e4ed44a633178561757c5199c2c98f94b74', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, h("input", { key: 'abb3d1ad25ef63856af7804111175a4d50008bc0', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
463
463
  var _a;
464
464
  /**
465
465
  * The "Enter" key represents
@@ -474,7 +474,7 @@ const Picker = /*@__PURE__*/ proxyCustomElement(class Picker extends HTMLElement
474
474
  if (ev.key === 'Enter') {
475
475
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
476
476
  }
477
- }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '395fa256c886725de0c562d05c9da8ac8defbede', class: "picker-before" }), h("div", { key: '3471738349700fe3e9c7425a455132e2fd6e3224', class: "picker-after" }), h("div", { key: '37557bd2cfb57db4b3b98a2063f5b733c40debb8', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: '2d133fb7e178f95d02dd362a503c86abd3bb8e8d' })));
477
+ }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), h("div", { key: '334a5abdc02e6b127c57177f626d7e4ff5526183', class: "picker-before" }), h("div", { key: 'ffd6271931129e88fc7c820e919d684899e420c5', class: "picker-after" }), h("div", { key: '78d1d95fd09e04f154ea59f24a1cece72c47ed7b', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), h("slot", { key: '0bd5b9f875d3c71f6cbbde2054baeb1b0a2e8cd5' })));
478
478
  }
479
479
  get el() { return this; }
480
480
  static get style() { return {
@@ -1423,9 +1423,9 @@ const Popover = /*@__PURE__*/ proxyCustomElement(class Popover extends HTMLEleme
1423
1423
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
1424
1424
  const desktop = isPlatform('desktop');
1425
1425
  const enableArrow = arrow && !parentPopover;
1426
- return (h(Host, Object.assign({ key: '2edd8333c630efbce59071f8a383e4326e928dbc', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1426
+ return (h(Host, Object.assign({ key: '42863f748c93f709d433931d969230137b37d42d', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1427
1427
  zIndex: `${20000 + this.overlayIndex}`,
1428
- }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: 'aac4e68b08197534375e8ea3f8c9ea0c10ab2af4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'b7f4ebf57d4148b32856b0075d286f454be8de5d', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '607d94c28d73e8e957175a7c0f6e8a99ec4dcd53', class: "popover-arrow", part: "arrow" }), h("div", { key: '4366a5a5de550c09895e923f345583508e1ec30c', class: "popover-content", part: "content" }, h("slot", { key: 'eb7886fbc99c15b667b7d825d24f1c12d9380f03' })))));
1428
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: '22b6d82178b52158b76ab3fd9a7dd738fd6e4bbf', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'b76335c64e992a964ed3fb91d17a992c3474b4cd', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '018c846c32e7ff7fa010528e6b37a17e5f03c84c', class: "popover-arrow", part: "arrow" }), h("div", { key: '350c468c80052da3a07768bceab98fe159c35a43', class: "popover-content", part: "content" }, h("slot", { key: '686443c17ac9873d33905c1cdb67e6d6da675282' })))));
1429
1429
  }
1430
1430
  get el() { return this; }
1431
1431
  static get watchers() { return {
@@ -249,7 +249,7 @@ const RadioGroup = /*@__PURE__*/ proxyCustomElement(class RadioGroup extends HTM
249
249
  const { label, labelId, el, name, value } = this;
250
250
  const mode = getIonMode(this);
251
251
  renderHiddenInput(true, el, name, value, false);
252
- return (h(Host, { key: '9434938f48ea6c7405009704c05b4f01bb1e1293', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, class: mode }, this.renderHintText(), h("div", { key: 'ee6796dedb5dc3abaf5129e906145dfcfa90dc99', class: "radio-group-wrapper" }, h("slot", { key: 'e6a44dd32ee0e193fe73244286258b37f1aaa09b' }))));
252
+ return (h(Host, { key: 'db593b3ed511e9395e3c7bfd91b787328692cd6d', role: "radiogroup", "aria-labelledby": label ? labelId : null, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, class: mode }, this.renderHintText(), h("div", { key: '85045b45a0100a45f3b9a35d1c5a25ec63d525c4', class: "radio-group-wrapper" }, h("slot", { key: '53dacb87ce62398e78771fb2efaf839ab922d946' }))));
253
253
  }
254
254
  get el() { return this; }
255
255
  static get watchers() { return {
@@ -175,7 +175,7 @@ const Radio = /*@__PURE__*/ proxyCustomElement(class Radio extends HTMLElement {
175
175
  const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
176
176
  const mode = getIonMode(this);
177
177
  const inItem = hostContext('ion-item', el);
178
- return (h(Host, { key: 'af5dc59ed528150872e907ed1036e3e2decba939', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
178
+ return (h(Host, { key: '3353b28172b7f837d4b38964169b5b5f4ba02788', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
179
179
  [mode]: true,
180
180
  'in-item': inItem,
181
181
  'radio-checked': checked,
@@ -186,10 +186,10 @@ const Radio = /*@__PURE__*/ proxyCustomElement(class Radio extends HTMLElement {
186
186
  // Focus and active styling should not apply when the radio is in an item
187
187
  'ion-activatable': !inItem,
188
188
  'ion-focusable': !inItem,
189
- }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '1312aba3259a87fe23a6911cdfa477e309469c8b', class: "radio-wrapper" }, h("div", { key: 'b342aa27e240a300836d2a135658d346b95daf09', class: {
189
+ }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, h("label", { key: '418a0a48366ff900e97da123abf665bbbda87fb7', class: "radio-wrapper" }, h("div", { key: '6e5acdd8c8f5d0ad26632a65396afef8094153d1', class: {
190
190
  'label-text-wrapper': true,
191
191
  'label-text-wrapper-hidden': !hasLabel,
192
- }, part: "label" }, h("slot", { key: '0a4613d29aa783d1882cf889377f7e4fd4fea51d' })), h("div", { key: '191faea79dc4cd8befc4b873f5bd9f5af8ca2acc', class: "native-wrapper" }, this.renderRadioControl()))));
192
+ }, part: "label" }, h("slot", { key: '10b157162cd283d624153c747679609cf0bbf11e' })), h("div", { key: '4c45cca95cb105cd6df1025a26e3c045272184a0', class: "native-wrapper" }, this.renderRadioControl()))));
193
193
  }
194
194
  get el() { return this; }
195
195
  static get watchers() { return {
@@ -76,7 +76,7 @@ const RippleEffect = /*@__PURE__*/ proxyCustomElement(class RippleEffect extends
76
76
  }
77
77
  render() {
78
78
  const mode = getIonMode(this);
79
- return (h(Host, { key: '3b59cbb44741569a7350f9638b4392add673b6f1', role: "presentation", class: {
79
+ return (h(Host, { key: 'ae9d3b1ed6773a9b9bb2267129f7e9af23b6c9fc', role: "presentation", class: {
80
80
  [mode]: true,
81
81
  unbounded: this.unbounded,
82
82
  } }));
@@ -99,7 +99,7 @@ const SelectModal = /*@__PURE__*/ proxyCustomElement(class SelectModal extends H
99
99
  } }, option.text))));
100
100
  }
101
101
  render() {
102
- return (h(Host, { key: '5bffdb106e6f628dae2e2aeb9ee8008b5c547b3a', class: getIonMode(this) }, h("ion-header", { key: '4de1c33b0504372f8a0a26123e4e086080ee1ecb' }, h("ion-toolbar", { key: '5d55a67d1db4352c260e9e0457d5dac6110b6598' }, this.header !== undefined && h("ion-title", { key: '4f07fe8a9af8c9bd0852af2a9b95517d16356e50' }, this.header), h("ion-buttons", { key: 'ca676a34f7cd3dd6b465b0d803434c2e2c8536c5', slot: "end" }, h("ion-button", { key: '801ed63a357c7c9d354668851db65e5c1b0e1abe', onClick: () => this.closeModal() }, "Close")))), h("ion-content", { key: 'f3c239ec9d84b8ed7413ea9db6efa18e29aca285' }, h("ion-list", { key: '40c157e9abe477171a39ae7e6e1cd4ed08735cb4' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
102
+ return (h(Host, { key: 'b6c0dec240b2e41985b15fdf4e5a6d3a145c1567', class: getIonMode(this) }, h("ion-header", { key: 'cd177e85ee0f62a60a3a708342d6ab6eb19a44dc' }, h("ion-toolbar", { key: 'aee8222a5a4daa540ad202b2e4cac1ef93d9558c' }, this.header !== undefined && h("ion-title", { key: '5f8fecc764d97bf840d3d4cfddeeccd118ab4436' }, this.header), h("ion-buttons", { key: '919033950d7c2b0101f96a9c9698219de9f568ea', slot: "end" }, h("ion-button", { key: '34b571cab6dced4bde555a077a21e91800829931', onClick: () => this.closeModal() }, "Close")))), h("ion-content", { key: '3c9153d26ba7a5a03d3b20fcd628d0c3031661a7' }, h("ion-list", { key: 'e00b222c071bc97c82ad1bba4db95a8a5c43ed6d' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
103
103
  }
104
104
  get el() { return this; }
105
105
  static get style() { return {
@@ -116,7 +116,7 @@ const SelectPopover = /*@__PURE__*/ proxyCustomElement(class SelectPopover exten
116
116
  render() {
117
117
  const { header, message, options, subHeader } = this;
118
118
  const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
119
- return (h(Host, { key: '0c9845a40d3fc392b0a7d64e2a6ed27d94bb7634', class: getIonMode(this) }, h("ion-list", { key: '84a30f6661b0f8c00e6fa199658ed2adbcf27358' }, header !== undefined && h("ion-list-header", { key: '13f5f56bbfbc06751fa516291a2da72629b60ece' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: '3d39d18e720e798bbde334e79e6832091c7dfb81' }, h("ion-label", { key: 'd3051b0d140120b44bf5e79572f6f287e7cfb03a', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: 'b16805956f3316f8ec703c123b76f717488e8637' }, subHeader), message !== undefined && h("p", { key: '2215ac4ab4146a14e75a79192e319a8016286b5f' }, message)))), this.renderOptions(options))));
119
+ return (h(Host, { key: 'ab931b49b59283825bd2afa3f7f995b0e6e05bef', class: getIonMode(this) }, h("ion-list", { key: '3bd12b67832607596b912a73d5b3ae9b954b244d' }, header !== undefined && h("ion-list-header", { key: '97da930246edf7423a039c030d40e3ff7a5148a3' }, header), hasSubHeaderOrMessage && (h("ion-item", { key: 'c579df6ea8fac07bb0c59d34c69b149656863224' }, h("ion-label", { key: 'af699c5f465710ccb13b8cf8e7be66f0e8acfad1', class: "ion-text-wrap" }, subHeader !== undefined && h("h3", { key: 'df9a936d42064b134e843c7229f314a2a3ec7e80' }, subHeader), message !== undefined && h("p", { key: '9c3ddad378df00f106afa94e9928cf68c17124dd' }, message)))), this.renderOptions(options))));
120
120
  }
121
121
  get el() { return this; }
122
122
  static get style() { return {
@@ -187,7 +187,7 @@ const Spinner = /*@__PURE__*/ proxyCustomElement(class Spinner extends HTMLEleme
187
187
  svgs.push(buildLine(spinner, duration, i, spinner.lines));
188
188
  }
189
189
  }
190
- return (h(Host, { key: 'dd1954e557fa14b943e761474e29e4316ba53938', class: createColorClasses(self.color, {
190
+ return (h(Host, { key: 'a33d6421fcc885995fbc7a348516525f68ca496c', class: createColorClasses(self.color, {
191
191
  [mode]: true,
192
192
  [`spinner-${spinnerName}`]: true,
193
193
  'spinner-paused': self.paused || config.getBoolean('_testing'),
@@ -36,11 +36,11 @@ const ToolbarTitle = /*@__PURE__*/ proxyCustomElement(class ToolbarTitle extends
36
36
  render() {
37
37
  const mode = getIonMode(this);
38
38
  const size = this.getSize();
39
- return (h(Host, { key: '44e63f8439df64c470692904427b417e19406476', class: createColorClasses(this.color, {
39
+ return (h(Host, { key: 'e599c0bf1b0817df3fa8360bdcd6d787f751c371', class: createColorClasses(this.color, {
40
40
  [mode]: true,
41
41
  [`title-${size}`]: true,
42
42
  'title-rtl': document.dir === 'rtl',
43
- }) }, h("div", { key: '784cf60a0db16045391891cc8fad0c7dbeba4039', class: "toolbar-title" }, h("slot", { key: '0c720a50479ba257e8756337aeb9b0ab7516a227' }))));
43
+ }) }, h("div", { key: '6e7eee9047d6759876bb31d7305b76efc7c4338c', class: "toolbar-title" }, h("slot", { key: 'bf790eb4c83dd0af4f2fd1f85ab4af5819f46ff4' }))));
44
44
  }
45
45
  get el() { return this; }
46
46
  static get watchers() { return {
@@ -62,10 +62,10 @@ const Toolbar = /*@__PURE__*/ proxyCustomElement(class Toolbar extends HTMLEleme
62
62
  this.childrenStyles.forEach((value) => {
63
63
  Object.assign(childStyles, value);
64
64
  });
65
- return (h(Host, { key: 'b849db2863778dee6c5a251bffa1b3a657aeb036', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
65
+ return (h(Host, { key: 'f6c4f669a6a61c5eac4cbb5ea0aa97c48ae5bd46', class: Object.assign(Object.assign({}, childStyles), createColorClasses(this.color, {
66
66
  [mode]: true,
67
67
  'in-toolbar': hostContext('ion-toolbar', this.el),
68
- })) }, h("div", { key: '67f5bba9c4f527c3f35bfe1313a2b85741f9b246', class: "toolbar-background", part: "background" }), h("div", { key: '085e8c68f056e5b0deb9d1606431fbeb45dae8e5', class: "toolbar-container", part: "container" }, h("slot", { key: '15227c79c3baf883fd8c43fdb7e1313453933c79', name: "start" }), h("slot", { key: '0b8a7f7e685aa31c80d9bc03446ccc3a9d07e0e8', name: "secondary" }), h("div", { key: '57e4628c1fa89df79dd80456259db961bb691404', class: "toolbar-content", part: "content" }, h("slot", { key: '82c2f6e1acf8d96db259bd8baf295881801edbd5' })), h("slot", { key: 'b2d4afb15214199f206c0a5e08b581e4c9c2f58a', name: "primary" }), h("slot", { key: 'bfb909a0c472f8834046c2ea23bef2f562167ad3', name: "end" }))));
68
+ })) }, h("div", { key: '9c81742ffa02de9ba7417025b077d05e67305074', class: "toolbar-background", part: "background" }), h("div", { key: '5fc96d166fa47894a062e41541a9beee38078a36', class: "toolbar-container", part: "container" }, h("slot", { key: 'b62c0d9d59a70176bdbf769aec6090d7a166853b', name: "start" }), h("slot", { key: 'd01d3cc2c50e5aaa49c345b209fe8dbdf3d48131', name: "secondary" }), h("div", { key: '3aaa3a2810aedd38c37eb616158ec7b9638528fc', class: "toolbar-content", part: "content" }, h("slot", { key: '357246690f8d5e1cc3ca369611d4845a79edf610' })), h("slot", { key: '06ed3cca4f7ebff4a54cd877dad3cc925ccf9f75', name: "primary" }), h("slot", { key: 'e453d43d14a26b0d72f41e1b81a554bab8ece811', name: "end" }))));
69
69
  }
70
70
  get el() { return this; }
71
71
  static get style() { return {
@@ -701,7 +701,7 @@ const Footer = class {
701
701
  const mode = ionicGlobal.getIonMode(this);
702
702
  const tabs = this.el.closest('ion-tabs');
703
703
  const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
704
- return (index.h(index.Host, { key: '5da19dc38ba73e1ddfd1bef3ebd485105d77c751', role: "contentinfo", class: {
704
+ return (index.h(index.Host, { key: 'ddc228f1a1e7fa4f707dccf74db2490ca3241137', role: "contentinfo", class: {
705
705
  [mode]: true,
706
706
  // Used internally for styling
707
707
  [`footer-${mode}`]: true,
@@ -709,7 +709,7 @@ const Footer = class {
709
709
  [`footer-translucent-${mode}`]: translucent,
710
710
  ['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
711
711
  [`footer-collapse-${collapse}`]: collapse !== undefined,
712
- } }, mode === 'ios' && translucent && index.h("div", { key: 'fafad08090a33d8c4e8a5b63d61929dcb89aab47', class: "footer-background" }), index.h("slot", { key: 'e0a443d346afa55e4317c0bc1263fdbe3c619559' })));
712
+ } }, mode === 'ios' && translucent && index.h("div", { key: 'e16ed4963ff94e06de77eb8038201820af73937c', class: "footer-background" }), index.h("slot", { key: 'f186934febf85d37133d9351a96c1a64b0a4b203' })));
713
713
  }
714
714
  get el() { return index.getElement(this); }
715
715
  };
@@ -1093,14 +1093,14 @@ const Header = class {
1093
1093
  const isCondensed = collapse === 'condense';
1094
1094
  // banner role must be at top level, so remove role if inside a menu
1095
1095
  const roleType = getRoleType(theme.hostContext('ion-menu', this.el), isCondensed, mode);
1096
- return (index.h(index.Host, Object.assign({ key: '42fb0d8aa663bef7b1a21e026ea45e932b965794', role: roleType, class: {
1096
+ return (index.h(index.Host, Object.assign({ key: '863c4568cd7b8c0ec55109f193bbbaed68a1346e', role: roleType, class: {
1097
1097
  [mode]: true,
1098
1098
  // Used internally for styling
1099
1099
  [`header-${mode}`]: true,
1100
1100
  [`header-translucent`]: this.translucent,
1101
1101
  [`header-collapse-${collapse}`]: true,
1102
1102
  [`header-translucent-${mode}`]: this.translucent,
1103
- } }, inheritedAttributes), mode === 'ios' && translucent && index.h("div", { key: '31fac480feb43bf4adcc97529d88f1fa8034ce98', class: "header-background" }), index.h("slot", { key: '8fb8d10312836c3de63ba3fccf9ec1a08ca5b9d1' })));
1103
+ } }, inheritedAttributes), mode === 'ios' && translucent && index.h("div", { key: '25c3bdce328b0b35607d154c8b8374679313d881', class: "header-background" }), index.h("slot", { key: 'b44fab0a9be7920b9650da26117c783e751e1702' })));
1104
1104
  }
1105
1105
  get el() { return index.getElement(this); }
1106
1106
  };
@@ -1286,7 +1286,7 @@ const RouterOutlet = class {
1286
1286
  return true;
1287
1287
  }
1288
1288
  render() {
1289
- return index.h("slot", { key: '386c41745b61daba161cf75063da97fe29ba36cb' });
1289
+ return index.h("slot", { key: '84b50f1155b0d780dff802ee13223287259fd525' });
1290
1290
  }
1291
1291
  get el() { return index.getElement(this); }
1292
1292
  static get watchers() { return {
@@ -1322,11 +1322,11 @@ const ToolbarTitle = class {
1322
1322
  render() {
1323
1323
  const mode = ionicGlobal.getIonMode(this);
1324
1324
  const size = this.getSize();
1325
- return (index.h(index.Host, { key: '44e63f8439df64c470692904427b417e19406476', class: theme.createColorClasses(this.color, {
1325
+ return (index.h(index.Host, { key: 'e599c0bf1b0817df3fa8360bdcd6d787f751c371', class: theme.createColorClasses(this.color, {
1326
1326
  [mode]: true,
1327
1327
  [`title-${size}`]: true,
1328
1328
  'title-rtl': document.dir === 'rtl',
1329
- }) }, index.h("div", { key: '784cf60a0db16045391891cc8fad0c7dbeba4039', class: "toolbar-title" }, index.h("slot", { key: '0c720a50479ba257e8756337aeb9b0ab7516a227' }))));
1329
+ }) }, index.h("div", { key: '6e7eee9047d6759876bb31d7305b76efc7c4338c', class: "toolbar-title" }, index.h("slot", { key: 'bf790eb4c83dd0af4f2fd1f85ab4af5819f46ff4' }))));
1330
1330
  }
1331
1331
  get el() { return index.getElement(this); }
1332
1332
  static get watchers() { return {
@@ -1391,10 +1391,10 @@ const Toolbar = class {
1391
1391
  this.childrenStyles.forEach((value) => {
1392
1392
  Object.assign(childStyles, value);
1393
1393
  });
1394
- return (index.h(index.Host, { key: 'b849db2863778dee6c5a251bffa1b3a657aeb036', class: Object.assign(Object.assign({}, childStyles), theme.createColorClasses(this.color, {
1394
+ return (index.h(index.Host, { key: 'f6c4f669a6a61c5eac4cbb5ea0aa97c48ae5bd46', class: Object.assign(Object.assign({}, childStyles), theme.createColorClasses(this.color, {
1395
1395
  [mode]: true,
1396
1396
  'in-toolbar': theme.hostContext('ion-toolbar', this.el),
1397
- })) }, index.h("div", { key: '67f5bba9c4f527c3f35bfe1313a2b85741f9b246', class: "toolbar-background", part: "background" }), index.h("div", { key: '085e8c68f056e5b0deb9d1606431fbeb45dae8e5', class: "toolbar-container", part: "container" }, index.h("slot", { key: '15227c79c3baf883fd8c43fdb7e1313453933c79', name: "start" }), index.h("slot", { key: '0b8a7f7e685aa31c80d9bc03446ccc3a9d07e0e8', name: "secondary" }), index.h("div", { key: '57e4628c1fa89df79dd80456259db961bb691404', class: "toolbar-content", part: "content" }, index.h("slot", { key: '82c2f6e1acf8d96db259bd8baf295881801edbd5' })), index.h("slot", { key: 'b2d4afb15214199f206c0a5e08b581e4c9c2f58a', name: "primary" }), index.h("slot", { key: 'bfb909a0c472f8834046c2ea23bef2f562167ad3', name: "end" }))));
1397
+ })) }, index.h("div", { key: '9c81742ffa02de9ba7417025b077d05e67305074', class: "toolbar-background", part: "background" }), index.h("div", { key: '5fc96d166fa47894a062e41541a9beee38078a36', class: "toolbar-container", part: "container" }, index.h("slot", { key: 'b62c0d9d59a70176bdbf769aec6090d7a166853b', name: "start" }), index.h("slot", { key: 'd01d3cc2c50e5aaa49c345b209fe8dbdf3d48131', name: "secondary" }), index.h("div", { key: '3aaa3a2810aedd38c37eb616158ec7b9638528fc', class: "toolbar-content", part: "content" }, index.h("slot", { key: '357246690f8d5e1cc3ca369611d4845a79edf610' })), index.h("slot", { key: '06ed3cca4f7ebff4a54cd877dad3cc925ccf9f75', name: "primary" }), index.h("slot", { key: 'e453d43d14a26b0d72f41e1b81a554bab8ece811', name: "end" }))));
1398
1398
  }
1399
1399
  get el() { return index.getElement(this); }
1400
1400
  };
@@ -51,7 +51,7 @@ const Thumbnail = class {
51
51
  index.registerInstance(this, hostRef);
52
52
  }
53
53
  render() {
54
- return (index.h(index.Host, { key: 'b250e01664238f1dca8f9757b15bc3d5d9387ffa', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: '72cb568bccabc983c5186a7596ef6c6d4ebf5ad9' })));
54
+ return (index.h(index.Host, { key: '70ada828e8cf541ab3b47f94b7e56ce34114ef88', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: 'c43e105669d2bae123619b616f3af8ca2f722d61' })));
55
55
  }
56
56
  };
57
57
  Thumbnail.style = thumbnailCss;
@@ -132,10 +132,10 @@ const Grid = class {
132
132
  }
133
133
  render() {
134
134
  const mode = ionicGlobal.getIonMode(this);
135
- return (index.h(index.Host, { key: '930ce78b02f8360fbca08a35d364d2c09128c6c8', class: {
135
+ return (index.h(index.Host, { key: '617127ecfabf9bf615bef1dda1be3fed5a065949', class: {
136
136
  [mode]: true,
137
137
  'grid-fixed': this.fixed,
138
- } }, index.h("slot", { key: 'c47bf7ef2197f5ebc42d3e2c55044276fb0db393' })));
138
+ } }, index.h("slot", { key: 'c781fff853b093d8f44bdb7943bbc4f17c903803' })));
139
139
  }
140
140
  };
141
141
  Grid.style = gridCss;
@@ -147,7 +147,7 @@ const Row = class {
147
147
  index.registerInstance(this, hostRef);
148
148
  }
149
149
  render() {
150
- return (index.h(index.Host, { key: '8ba906a8cbea060a79ed658c9bf34906f0c11d38', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: 'd1009176f45b588fa52c7d9eb336f3c6d3214bb8' })));
150
+ return (index.h(index.Host, { key: '65592a79621bd8f75f9566db3e8c05a4b8fc6048', class: ionicGlobal.getIonMode(this) }, index.h("slot", { key: '56f09784db7a0299c9ce76dfcede185b295251ff' })));
151
151
  }
152
152
  };
153
153
  Row.style = rowCss;
@@ -337,11 +337,11 @@ const DatetimeButton = class {
337
337
  render() {
338
338
  const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
339
339
  const mode = ionicGlobal.getIonMode(this);
340
- return (index.h(index.Host, { key: '0cad13e702cd8f76b10364d44993495d1aac40fb', class: theme.createColorClasses(color, {
340
+ return (index.h(index.Host, { key: '11d037e6ab061e5116842970760b04850b42f2c7', class: theme.createColorClasses(color, {
341
341
  [mode]: true,
342
342
  [`${selectedButton}-active`]: datetimeActive,
343
343
  ['datetime-button-disabled']: disabled,
344
- }) }, dateText && (index.h("button", { key: '03ceb62c8dd7b4a97eca211d8ad73a4cfa8c2a1a', class: "ion-activatable", id: "date-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleDateClick, disabled: disabled, part: "native", ref: (el) => (this.dateTargetEl = el) }, index.h("slot", { key: '251c03d7dc30180caf5f2728818ab445b7b99b52', name: "date-target" }, dateText), mode === 'md' && index.h("ion-ripple-effect", { key: 'ce5fa19ed565fd788c6096aa55d8102ac36a1307' }))), timeText && (index.h("button", { key: '4833eb0e7b23f7c4faf03c998a58cc80cc714887', class: "ion-activatable", id: "time-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleTimeClick, disabled: disabled, part: "native", ref: (el) => (this.timeTargetEl = el) }, index.h("slot", { key: '60966f907d725aea78af66dbb57f1d6f212a1ef5', name: "time-target" }, timeText), mode === 'md' && index.h("ion-ripple-effect", { key: 'c26bd731e8991e2b2b7984a2bd859f36337a038b' })))));
344
+ }) }, dateText && (index.h("button", { key: '08ecb62da0fcbf7466a1f2403276712a3ff17fbc', class: "ion-activatable", id: "date-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleDateClick, disabled: disabled, part: "native", ref: (el) => (this.dateTargetEl = el) }, index.h("slot", { key: '1c04853d4d23c0f1a594602bde44511c98355644', name: "date-target" }, dateText), mode === 'md' && index.h("ion-ripple-effect", { key: '5fc566cd4bc885bcf983ce99e3dc65d7f485bf9b' }))), timeText && (index.h("button", { key: 'c9c5c34ac338badf8659da22bea5829d62c51169', class: "ion-activatable", id: "time-button", "aria-expanded": datetimeActive ? 'true' : 'false', onClick: this.handleTimeClick, disabled: disabled, part: "native", ref: (el) => (this.timeTargetEl = el) }, index.h("slot", { key: '147a9d2069dbf737f6fc64787823d6d5af5aa653', name: "time-target" }, timeText), mode === 'md' && index.h("ion-ripple-effect", { key: '70a5e25b75ed90ac6bba003468435f67aa9d8f0a' })))));
345
345
  }
346
346
  get el() { return index.getElement(this); }
347
347
  };
@@ -786,6 +786,28 @@ const Datetime = class {
786
786
  destroyKeyboardMO();
787
787
  }
788
788
  };
789
+ /**
790
+ * TODO(FW-6931): Remove this fallback upon solving the root cause
791
+ * Fallback to ensure the datetime becomes ready even if
792
+ * IntersectionObserver never reports it as intersecting.
793
+ *
794
+ * This is primarily used in environments where the observer
795
+ * might not fire as expected, such as when running under
796
+ * synthetic tests that stub IntersectionObserver.
797
+ */
798
+ this.ensureReadyIfVisible = () => {
799
+ if (this.el.classList.contains('datetime-ready')) {
800
+ return;
801
+ }
802
+ const rect = this.el.getBoundingClientRect();
803
+ if (rect.width === 0 || rect.height === 0) {
804
+ return;
805
+ }
806
+ this.initializeListeners();
807
+ index.writeTask(() => {
808
+ this.el.classList.add('datetime-ready');
809
+ });
810
+ };
789
811
  this.processValue = (value) => {
790
812
  const hasValue = value !== null && value !== undefined && value !== '' && (!Array.isArray(value) || value.length > 0);
791
813
  const valueToProcess = hasValue ? data.parseDate(value) : this.defaultParts;
@@ -1063,107 +1085,84 @@ const Datetime = class {
1063
1085
  this.clearFocusVisible();
1064
1086
  this.clearFocusVisible = undefined;
1065
1087
  }
1066
- if (this.resizeObserver) {
1067
- this.resizeObserver.disconnect();
1068
- this.resizeObserver = undefined;
1069
- }
1070
- if (this.destroyOverlayListeners) {
1071
- this.destroyOverlayListeners();
1072
- this.destroyOverlayListeners = undefined;
1073
- }
1074
1088
  }
1075
1089
  initializeListeners() {
1076
1090
  this.initializeCalendarListener();
1077
1091
  this.initializeKeyboardListeners();
1078
1092
  }
1079
- /**
1080
- * Sets up visibility detection for the datetime component.
1081
- *
1082
- * Uses multiple strategies to reliably detect when the datetime becomes
1083
- * visible, which is necessary for proper initialization of scrollable areas:
1084
- * 1. ResizeObserver - detects dimension changes
1085
- * 2. Overlay event listeners - for datetime inside modals/popovers
1086
- * 3. Polling fallback - for browsers where observers are unreliable (WebKit)
1087
- */
1088
- initializeVisibilityObserver() {
1089
- const { el } = this;
1090
- const markReady = () => {
1091
- if (el.classList.contains('datetime-ready')) {
1093
+ componentDidLoad() {
1094
+ const { el, intersectionTrackerRef } = this;
1095
+ /**
1096
+ * If a scrollable element is hidden using `display: none`,
1097
+ * it will not have a scroll height meaning we cannot scroll elements
1098
+ * into view. As a result, we will need to wait for the datetime to become
1099
+ * visible if used inside of a modal or a popover otherwise the scrollable
1100
+ * areas will not have the correct values snapped into place.
1101
+ */
1102
+ const visibleCallback = (entries) => {
1103
+ const ev = entries[0];
1104
+ if (!ev.isIntersecting) {
1092
1105
  return;
1093
1106
  }
1094
1107
  this.initializeListeners();
1108
+ /**
1109
+ * TODO FW-2793: Datetime needs a frame to ensure that it
1110
+ * can properly scroll contents into view. As a result
1111
+ * we hide the scrollable content until after that frame
1112
+ * so users do not see the content quickly shifting. The downside
1113
+ * is that the content will pop into view a frame after. Maybe there
1114
+ * is a better way to handle this?
1115
+ */
1095
1116
  index.writeTask(() => {
1096
- el.classList.add('datetime-ready');
1097
- });
1098
- };
1099
- const markHidden = () => {
1100
- this.destroyInteractionListeners();
1101
- this.showMonthAndYear = false;
1102
- index.writeTask(() => {
1103
- el.classList.remove('datetime-ready');
1117
+ this.el.classList.add('datetime-ready');
1104
1118
  });
1105
- startVisibilityPolling();
1106
1119
  };
1120
+ const visibleIO = new IntersectionObserver(visibleCallback, { threshold: 0.01, root: el });
1107
1121
  /**
1108
- * FW-6931: Poll for visibility as a fallback for browsers where
1109
- * ResizeObserver doesn't fire reliably (e.g., WebKit).
1122
+ * Use raf to avoid a race condition between the component loading and
1123
+ * its display animation starting (such as when shown in a modal). This
1124
+ * could cause the datetime to start at a visibility of 0, erroneously
1125
+ * triggering the `hiddenIO` observer below.
1110
1126
  */
1111
- const startVisibilityPolling = () => {
1112
- let pollCount = 0;
1113
- const poll = () => {
1114
- if (el.classList.contains('datetime-ready') || pollCount++ >= 60) {
1115
- return;
1116
- }
1117
- const { width, height } = el.getBoundingClientRect();
1118
- if (width > 0 && height > 0) {
1119
- markReady();
1120
- }
1121
- else {
1122
- helpers.raf(poll);
1123
- }
1124
- };
1125
- helpers.raf(poll);
1126
- };
1127
+ helpers.raf(() => visibleIO === null || visibleIO === void 0 ? void 0 : visibleIO.observe(intersectionTrackerRef));
1127
1128
  /**
1128
- * FW-6931: Listen for overlay present/dismiss events when datetime
1129
- * is inside a modal or popover.
1129
+ * TODO(FW-6931): Remove this fallback upon solving the root cause
1130
+ * Fallback: If IntersectionObserver never reports that the
1131
+ * datetime is visible but the host clearly has layout, ensure
1132
+ * we still initialize listeners and mark the component as ready.
1133
+ *
1134
+ * We schedule this after everything has had a chance to run.
1130
1135
  */
1131
- const parentOverlay = el.closest('ion-modal, ion-popover');
1132
- if (parentOverlay) {
1133
- const handlePresent = () => markReady();
1134
- const handleDismiss = () => markHidden();
1135
- parentOverlay.addEventListener('didPresent', handlePresent);
1136
- parentOverlay.addEventListener('didDismiss', handleDismiss);
1137
- this.destroyOverlayListeners = () => {
1138
- parentOverlay.removeEventListener('didPresent', handlePresent);
1139
- parentOverlay.removeEventListener('didDismiss', handleDismiss);
1140
- };
1141
- }
1142
- if (typeof ResizeObserver !== 'undefined') {
1143
- this.resizeObserver = new ResizeObserver((entries) => {
1144
- const { width, height } = entries[0].contentRect;
1145
- const isVisible = width > 0 && height > 0;
1146
- const isReady = el.classList.contains('datetime-ready');
1147
- if (isVisible && !isReady) {
1148
- markReady();
1149
- }
1150
- else if (!isVisible && isReady) {
1151
- markHidden();
1152
- }
1153
- });
1154
- // Use raf to avoid race condition with modal/popover animations
1155
- helpers.raf(() => { var _a; return (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.observe(el); });
1156
- startVisibilityPolling();
1157
- }
1158
- else {
1159
- // Test environment fallback - mark ready immediately
1136
+ setTimeout(() => {
1137
+ this.ensureReadyIfVisible();
1138
+ }, 100);
1139
+ /**
1140
+ * We need to clean up listeners when the datetime is hidden
1141
+ * in a popover/modal so that we can properly scroll containers
1142
+ * back into view if they are re-presented. When the datetime is hidden
1143
+ * the scroll areas have scroll widths/heights of 0px, so any snapping
1144
+ * we did originally has been lost.
1145
+ */
1146
+ const hiddenCallback = (entries) => {
1147
+ const ev = entries[0];
1148
+ if (ev.isIntersecting) {
1149
+ return;
1150
+ }
1151
+ this.destroyInteractionListeners();
1152
+ /**
1153
+ * When datetime is hidden, we need to make sure that
1154
+ * the month/year picker is closed. Otherwise,
1155
+ * it will be open when the datetime re-appears
1156
+ * and the scroll area of the calendar grid will be 0.
1157
+ * As a result, the wrong month will be shown.
1158
+ */
1159
+ this.showMonthAndYear = false;
1160
1160
  index.writeTask(() => {
1161
- el.classList.add('datetime-ready');
1161
+ this.el.classList.remove('datetime-ready');
1162
1162
  });
1163
- }
1164
- }
1165
- componentDidLoad() {
1166
- this.initializeVisibilityObserver();
1163
+ };
1164
+ const hiddenIO = new IntersectionObserver(hiddenCallback, { threshold: 0, root: el });
1165
+ helpers.raf(() => hiddenIO === null || hiddenIO === void 0 ? void 0 : hiddenIO.observe(intersectionTrackerRef));
1167
1166
  /**
1168
1167
  * Datetime uses Ionic components that emit
1169
1168
  * ionFocus and ionBlur. These events are
@@ -1892,7 +1891,7 @@ const Datetime = class {
1892
1891
  const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
1893
1892
  const hasWheelVariant = hasDatePresentation && preferWheel;
1894
1893
  helpers.renderHiddenInput(true, el, name, data.formatValue(value), disabled);
1895
- return (index.h(index.Host, { key: '2fb2938db507a134622a3feac44804f11071c589', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, theme.createColorClasses(color, {
1894
+ return (index.h(index.Host, { key: 'efdbc0922670a841bc667ceac392cdc1dedffd01', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, theme.createColorClasses(color, {
1896
1895
  [mode]: true,
1897
1896
  ['datetime-readonly']: readonly,
1898
1897
  ['datetime-disabled']: disabled,
@@ -1902,7 +1901,7 @@ const Datetime = class {
1902
1901
  [`datetime-size-${size}`]: true,
1903
1902
  [`datetime-prefer-wheel`]: hasWheelVariant,
1904
1903
  [`datetime-grid`]: isGridStyle,
1905
- })) }, this.renderDatetime(mode)));
1904
+ })) }, index.h("div", { key: '3f8bb75fcb0baff55182ef3aa1b535eacc58d81f', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
1906
1905
  }
1907
1906
  get el() { return index.getElement(this); }
1908
1907
  static get watchers() { return {
@@ -2179,11 +2178,11 @@ const Picker = class {
2179
2178
  render() {
2180
2179
  const { htmlAttributes } = this;
2181
2180
  const mode = ionicGlobal.getIonMode(this);
2182
- return (index.h(index.Host, Object.assign({ key: '80f66d33780d8a1352d24be9cb63a0cc03d01ab5', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
2181
+ return (index.h(index.Host, Object.assign({ key: 'b95440747eb80cba23ae676d399d5e5816722c58', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
2183
2182
  zIndex: `${20000 + this.overlayIndex}`,
2184
2183
  }, class: Object.assign({ [mode]: true,
2185
2184
  // Used internally for styling
2186
- [`picker-${mode}`]: true, 'overlay-hidden': true }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), index.h("ion-backdrop", { key: '97fb8e10ba08b197610cb8c0cdea61103883d55f', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: 'b3969cb6fbf7153623d14e3ca1493d3370efb211', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: '299268483c3727e698d9135bfdf40349a7050ac1', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, index.h("div", { key: '95394de3ef691899b7dbf416f56fd3e86bbdce3f', class: "picker-toolbar" }, this.buttons.map((b) => (index.h("div", { class: buttonWrapperClass(b) }, index.h("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass(b) }, b.text))))), index.h("div", { key: '05f18bb8d00dc0e22f691b7e41f90f729a6c66d7', class: "picker-columns" }, index.h("div", { key: '4a8fdf224effc0af67fd413e2e6aca8a78d1cf43', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => index.h("ion-picker-legacy-column", { col: c })), index.h("div", { key: 'e50a31db45e3f39e9d0fed36a21be9257eec09bf', class: "picker-below-highlight" }))), index.h("div", { key: '5a78cb2176ac807ea0c195c6b76cd0e8eef9d4c0', tabindex: "0", "aria-hidden": "true" })));
2185
+ [`picker-${mode}`]: true, 'overlay-hidden': true }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), index.h("ion-backdrop", { key: '169d1c83ef40e7fcb134219a585298b403a70b0f', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: '98518e5f5cea2dfb8dfa63d9545e9ae3a5765023', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: '151755ab8eb23f9adafbfe201349398f5a69dee7', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, index.h("div", { key: '5dcf93b2f4fe8f4fce7c7aec8f85ef45a03ef470', class: "picker-toolbar" }, this.buttons.map((b) => (index.h("div", { class: buttonWrapperClass(b) }, index.h("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass(b) }, b.text))))), index.h("div", { key: 'fd5d66708edd38adc5a4d2fad7298969398a05e3', class: "picker-columns" }, index.h("div", { key: '1b5830fd6cef1016af7736792c514965d6cb38a8', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => index.h("ion-picker-legacy-column", { col: c })), index.h("div", { key: 'c6edeca7afd69e13c9c66ba36f261974fd0f8f78', class: "picker-below-highlight" }))), index.h("div", { key: 'e2a4b24710e30579b14b82dbfd3761b2187797b5', tabindex: "0", "aria-hidden": "true" })));
2187
2186
  }
2188
2187
  get el() { return index.getElement(this); }
2189
2188
  static get watchers() { return {
@@ -2537,9 +2536,9 @@ const PickerColumnCmp = class {
2537
2536
  render() {
2538
2537
  const col = this.col;
2539
2538
  const mode = ionicGlobal.getIonMode(this);
2540
- return (index.h(index.Host, { key: '86125e95f18837dfd021db01777d72a1562d8ee3', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, theme.getClassMap(col.cssClass)), style: {
2539
+ return (index.h(index.Host, { key: 'ed32d108dd94f0302fb453c31a3497ebae65ec37', class: Object.assign({ [mode]: true, 'picker-col': true, 'picker-opts-left': this.col.align === 'left', 'picker-opts-right': this.col.align === 'right' }, theme.getClassMap(col.cssClass)), style: {
2541
2540
  'max-width': this.col.columnWidth,
2542
- } }, col.prefix && (index.h("div", { key: 'b0f3d39e0bd128781066ffefb7a1e40d12a9e76d', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), index.h("div", { key: '0b106ac4d56916eaaa7f09d1b68348b3754b7bba', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index$1) => (index.h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index$1 }, o.text)))), col.suffix && (index.h("div", { key: '00ff2f9dbb4561787e5a5223327c6a2a33f8362e', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
2541
+ } }, col.prefix && (index.h("div", { key: '9f0634890e66fd4ae74f826d1eea3431de121393', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), index.h("div", { key: '337e996e5be91af16446085fe22436f213b771eb', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index$1) => (index.h("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index$1 }, o.text)))), col.suffix && (index.h("div", { key: 'd69a132599d78d9e5107f12228978cfce4e43098', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
2543
2542
  }
2544
2543
  get el() { return index.getElement(this); }
2545
2544
  static get watchers() { return {