@ionic/core 8.7.13-dev.11765486444.14025098 → 8.7.13-dev.11765552290.11441928

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 +59 -83
  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 +63 -87
  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 +59 -83
  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 +63 -87
  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-074839fc.entry.js → p-01e27965.entry.js} +1 -1
  230. package/dist/ionic/{p-ea509e3c.entry.js → p-0852af24.entry.js} +1 -1
  231. package/dist/ionic/p-0ca0fe9c.entry.js +4 -0
  232. package/dist/ionic/{p-72c38b88.entry.js → p-20f135b4.entry.js} +1 -1
  233. package/dist/ionic/{p-316c0420.entry.js → p-221a3d8c.entry.js} +1 -1
  234. package/dist/ionic/{p-3a6caca9.entry.js → p-2668188b.entry.js} +1 -1
  235. package/dist/ionic/{p-d3014190.entry.js → p-2bd1ea35.entry.js} +1 -1
  236. package/dist/ionic/p-2ccaee5c.entry.js +4 -0
  237. package/dist/ionic/{p-a127bee2.entry.js → p-30333874.entry.js} +1 -1
  238. package/dist/ionic/{p-1647c46c.entry.js → p-363d1209.entry.js} +1 -1
  239. package/dist/ionic/{p-a8ed848b.entry.js → p-3b0b7a05.entry.js} +1 -1
  240. package/dist/ionic/p-43c5249f.entry.js +4 -0
  241. package/dist/ionic/{p-0dfa5a37.entry.js → p-530fcd71.entry.js} +1 -1
  242. package/dist/ionic/{p-0bf76d0f.entry.js → p-59a5cdf5.entry.js} +1 -1
  243. package/dist/ionic/{p-40c261a3.entry.js → p-64841854.entry.js} +1 -1
  244. package/dist/ionic/{p-dbbe606a.entry.js → p-652318c3.entry.js} +1 -1
  245. package/dist/ionic/{p-675b1a31.entry.js → p-65db57d7.entry.js} +1 -1
  246. package/dist/ionic/{p-0abeb0fc.entry.js → p-67f46577.entry.js} +1 -1
  247. package/dist/ionic/{p-cc45bcbc.entry.js → p-69c6fe52.entry.js} +1 -1
  248. package/dist/ionic/{p-2a939845.entry.js → p-6f37536a.entry.js} +1 -1
  249. package/dist/ionic/{p-cebb0328.entry.js → p-75ebaa15.entry.js} +1 -1
  250. package/dist/ionic/p-7f98e710.entry.js +4 -0
  251. package/dist/ionic/{p-6d070558.entry.js → p-82d5bb3d.entry.js} +1 -1
  252. package/dist/ionic/{p-11518b31.entry.js → p-85ee4a92.entry.js} +1 -1
  253. package/dist/ionic/{p-31f7095f.entry.js → p-a4a9f5ae.entry.js} +1 -1
  254. package/dist/ionic/{p-c19f63d0.entry.js → p-b30c3430.entry.js} +1 -1
  255. package/dist/ionic/{p-86f53961.entry.js → p-b8551510.entry.js} +1 -1
  256. package/dist/ionic/{p-ac4eb91d.entry.js → p-bccc9207.entry.js} +1 -1
  257. package/dist/ionic/{p-d126e8d3.entry.js → p-bce86e56.entry.js} +1 -1
  258. package/dist/ionic/{p-639dd543.entry.js → p-c175d792.entry.js} +1 -1
  259. package/dist/ionic/{p-020af078.entry.js → p-cc2a9936.entry.js} +1 -1
  260. package/dist/ionic/p-ce8dad03.entry.js +4 -0
  261. package/dist/ionic/{p-6444c606.entry.js → p-d655735d.entry.js} +1 -1
  262. package/dist/ionic/{p-b57c6d3e.entry.js → p-dbc82f0e.entry.js} +1 -1
  263. package/dist/ionic/{p-6241ce47.entry.js → p-e036eb2f.entry.js} +1 -1
  264. package/dist/ionic/{p-9575b654.entry.js → p-e48f026f.entry.js} +1 -1
  265. package/dist/ionic/{p-7268efa5.entry.js → p-e64b550c.entry.js} +1 -1
  266. package/dist/ionic/{p-46d74291.entry.js → p-ee8ecd40.entry.js} +1 -1
  267. package/dist/ionic/{p-c85a2127.entry.js → p-f097a9e5.entry.js} +1 -1
  268. package/dist/ionic/{p-f8f22cc0.entry.js → p-fb0271ae.entry.js} +1 -1
  269. package/dist/ionic/{p-370e4237.entry.js → p-fbb00634.entry.js} +1 -1
  270. package/dist/ionic/{p-ec654c42.entry.js → p-fc14f34a.entry.js} +1 -1
  271. package/dist/types/components/datetime/datetime.d.ts +1 -11
  272. package/hydrate/index.js +187 -211
  273. package/hydrate/index.mjs +187 -211
  274. package/package.json +1 -1
  275. package/dist/ionic/p-4b658a7c.entry.js +0 -4
  276. package/dist/ionic/p-4e41ea20.entry.js +0 -4
  277. package/dist/ionic/p-51a60e0f.entry.js +0 -4
  278. package/dist/ionic/p-576e0965.entry.js +0 -4
  279. package/dist/ionic/p-94de5cfa.entry.js +0 -4
package/hydrate/index.mjs CHANGED
@@ -13433,28 +13433,6 @@ class Datetime {
13433
13433
  destroyKeyboardMO();
13434
13434
  }
13435
13435
  };
13436
- /**
13437
- * TODO(FW-6931): Remove this fallback upon solving the root cause
13438
- * Fallback to ensure the datetime becomes ready even if
13439
- * IntersectionObserver never reports it as intersecting.
13440
- *
13441
- * This is primarily used in environments where the observer
13442
- * might not fire as expected, such as when running under
13443
- * synthetic tests that stub IntersectionObserver.
13444
- */
13445
- this.ensureReadyIfVisible = () => {
13446
- if (this.el.classList.contains('datetime-ready')) {
13447
- return;
13448
- }
13449
- const rect = this.el.getBoundingClientRect();
13450
- if (rect.width === 0 || rect.height === 0) {
13451
- return;
13452
- }
13453
- this.initializeListeners();
13454
- writeTask(() => {
13455
- this.el.classList.add('datetime-ready');
13456
- });
13457
- };
13458
13436
  this.processValue = (value) => {
13459
13437
  const hasValue = value !== null && value !== undefined && value !== '' && (!Array.isArray(value) || value.length > 0);
13460
13438
  const valueToProcess = hasValue ? parseDate(value) : this.defaultParts;
@@ -13732,84 +13710,82 @@ class Datetime {
13732
13710
  this.clearFocusVisible();
13733
13711
  this.clearFocusVisible = undefined;
13734
13712
  }
13713
+ if (this.resizeObserver) {
13714
+ this.resizeObserver.disconnect();
13715
+ this.resizeObserver = undefined;
13716
+ }
13735
13717
  }
13736
13718
  initializeListeners() {
13737
13719
  this.initializeCalendarListener();
13738
13720
  this.initializeKeyboardListeners();
13739
13721
  }
13740
13722
  componentDidLoad() {
13741
- const { el, intersectionTrackerRef } = this;
13723
+ const { el } = this;
13742
13724
  /**
13743
13725
  * If a scrollable element is hidden using `display: none`,
13744
13726
  * it will not have a scroll height meaning we cannot scroll elements
13745
13727
  * into view. As a result, we will need to wait for the datetime to become
13746
13728
  * visible if used inside of a modal or a popover otherwise the scrollable
13747
13729
  * areas will not have the correct values snapped into place.
13748
- */
13749
- const visibleCallback = (entries) => {
13750
- const ev = entries[0];
13751
- if (!ev.isIntersecting) {
13752
- return;
13753
- }
13754
- this.initializeListeners();
13730
+ *
13731
+ * FW-6931: We use ResizeObserver to detect when the element transitions
13732
+ * between having dimensions (visible) and zero dimensions (hidden). This
13733
+ * is more reliable than IntersectionObserver for detecting visibility
13734
+ * changes, especially when the element is inside a modal or popover.
13735
+ */
13736
+ if (typeof ResizeObserver !== 'undefined') {
13737
+ this.resizeObserver = new ResizeObserver((entries) => {
13738
+ const entry = entries[0];
13739
+ const { width, height } = entry.contentRect;
13740
+ const isVisible = width > 0 && height > 0;
13741
+ const isReady = el.classList.contains('datetime-ready');
13742
+ if (isVisible && !isReady) {
13743
+ this.initializeListeners();
13744
+ /**
13745
+ * TODO FW-2793: Datetime needs a frame to ensure that it
13746
+ * can properly scroll contents into view. As a result
13747
+ * we hide the scrollable content until after that frame
13748
+ * so users do not see the content quickly shifting. The downside
13749
+ * is that the content will pop into view a frame after. Maybe there
13750
+ * is a better way to handle this?
13751
+ */
13752
+ writeTask(() => {
13753
+ el.classList.add('datetime-ready');
13754
+ });
13755
+ }
13756
+ else if (!isVisible && isReady) {
13757
+ /**
13758
+ * Clean up listeners when hidden so we can properly
13759
+ * reinitialize scroll positions on re-presentation.
13760
+ */
13761
+ this.destroyInteractionListeners();
13762
+ /**
13763
+ * Close month/year picker when hidden, otherwise
13764
+ * it will be open when re-presented with a 0-height
13765
+ * scroll area, showing the wrong month.
13766
+ */
13767
+ this.showMonthAndYear = false;
13768
+ writeTask(() => {
13769
+ el.classList.remove('datetime-ready');
13770
+ });
13771
+ }
13772
+ });
13755
13773
  /**
13756
- * TODO FW-2793: Datetime needs a frame to ensure that it
13757
- * can properly scroll contents into view. As a result
13758
- * we hide the scrollable content until after that frame
13759
- * so users do not see the content quickly shifting. The downside
13760
- * is that the content will pop into view a frame after. Maybe there
13761
- * is a better way to handle this?
13774
+ * Use raf to avoid a race condition between the component loading and
13775
+ * its display animation starting (such as when shown in a modal).
13762
13776
  */
13763
- writeTask(() => {
13764
- this.el.classList.add('datetime-ready');
13765
- });
13766
- };
13767
- const visibleIO = new IntersectionObserver(visibleCallback, { threshold: 0.01, root: el });
13768
- /**
13769
- * Use raf to avoid a race condition between the component loading and
13770
- * its display animation starting (such as when shown in a modal). This
13771
- * could cause the datetime to start at a visibility of 0, erroneously
13772
- * triggering the `hiddenIO` observer below.
13773
- */
13774
- raf(() => visibleIO === null || visibleIO === void 0 ? void 0 : visibleIO.observe(intersectionTrackerRef));
13775
- /**
13776
- * TODO(FW-6931): Remove this fallback upon solving the root cause
13777
- * Fallback: If IntersectionObserver never reports that the
13778
- * datetime is visible but the host clearly has layout, ensure
13779
- * we still initialize listeners and mark the component as ready.
13780
- *
13781
- * We schedule this after everything has had a chance to run.
13782
- */
13783
- setTimeout(() => {
13784
- this.ensureReadyIfVisible();
13785
- }, 100);
13786
- /**
13787
- * We need to clean up listeners when the datetime is hidden
13788
- * in a popover/modal so that we can properly scroll containers
13789
- * back into view if they are re-presented. When the datetime is hidden
13790
- * the scroll areas have scroll widths/heights of 0px, so any snapping
13791
- * we did originally has been lost.
13792
- */
13793
- const hiddenCallback = (entries) => {
13794
- const ev = entries[0];
13795
- if (ev.isIntersecting) {
13796
- return;
13797
- }
13798
- this.destroyInteractionListeners();
13777
+ raf(() => { var _a; return (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.observe(el); });
13778
+ }
13779
+ else {
13799
13780
  /**
13800
- * When datetime is hidden, we need to make sure that
13801
- * the month/year picker is closed. Otherwise,
13802
- * it will be open when the datetime re-appears
13803
- * and the scroll area of the calendar grid will be 0.
13804
- * As a result, the wrong month will be shown.
13781
+ * Fallback for test environments where ResizeObserver is not available.
13782
+ * Just mark as ready without initializing scroll/keyboard listeners
13783
+ * since those also require browser APIs not available in Jest.
13805
13784
  */
13806
- this.showMonthAndYear = false;
13807
13785
  writeTask(() => {
13808
- this.el.classList.remove('datetime-ready');
13786
+ el.classList.add('datetime-ready');
13809
13787
  });
13810
- };
13811
- const hiddenIO = new IntersectionObserver(hiddenCallback, { threshold: 0, root: el });
13812
- raf(() => hiddenIO === null || hiddenIO === void 0 ? void 0 : hiddenIO.observe(intersectionTrackerRef));
13788
+ }
13813
13789
  /**
13814
13790
  * Datetime uses Ionic components that emit
13815
13791
  * ionFocus and ionBlur. These events are
@@ -14538,7 +14514,7 @@ class Datetime {
14538
14514
  const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
14539
14515
  const hasWheelVariant = hasDatePresentation && preferWheel;
14540
14516
  renderHiddenInput(true, el, name, formatValue(value), disabled);
14541
- return (hAsync(Host, { key: 'efdbc0922670a841bc667ceac392cdc1dedffd01', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
14517
+ return (hAsync(Host, { key: '187a5b5cf1413449a9db33f8c5b0fd3b7fded302', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: Object.assign({}, createColorClasses$1(color, {
14542
14518
  [mode]: true,
14543
14519
  ['datetime-readonly']: readonly,
14544
14520
  ['datetime-disabled']: disabled,
@@ -14548,7 +14524,7 @@ class Datetime {
14548
14524
  [`datetime-size-${size}`]: true,
14549
14525
  [`datetime-prefer-wheel`]: hasWheelVariant,
14550
14526
  [`datetime-grid`]: isGridStyle,
14551
- })) }, hAsync("div", { key: '3f8bb75fcb0baff55182ef3aa1b535eacc58d81f', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
14527
+ })) }, this.renderDatetime(mode)));
14552
14528
  }
14553
14529
  get el() { return getElement(this); }
14554
14530
  static get watchers() { return {
@@ -14959,11 +14935,11 @@ class DatetimeButton {
14959
14935
  render() {
14960
14936
  const { color, dateText, timeText, selectedButton, datetimeActive, disabled } = this;
14961
14937
  const mode = getIonMode$1(this);
14962
- return (hAsync(Host, { key: '11d037e6ab061e5116842970760b04850b42f2c7', class: createColorClasses$1(color, {
14938
+ return (hAsync(Host, { key: '0cad13e702cd8f76b10364d44993495d1aac40fb', class: createColorClasses$1(color, {
14963
14939
  [mode]: true,
14964
14940
  [`${selectedButton}-active`]: datetimeActive,
14965
14941
  ['datetime-button-disabled']: disabled,
14966
- }) }, dateText && (hAsync("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) }, hAsync("slot", { key: '1c04853d4d23c0f1a594602bde44511c98355644', name: "date-target" }, dateText), mode === 'md' && hAsync("ion-ripple-effect", { key: '5fc566cd4bc885bcf983ce99e3dc65d7f485bf9b' }))), timeText && (hAsync("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) }, hAsync("slot", { key: '147a9d2069dbf737f6fc64787823d6d5af5aa653', name: "time-target" }, timeText), mode === 'md' && hAsync("ion-ripple-effect", { key: '70a5e25b75ed90ac6bba003468435f67aa9d8f0a' })))));
14942
+ }) }, dateText && (hAsync("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) }, hAsync("slot", { key: '251c03d7dc30180caf5f2728818ab445b7b99b52', name: "date-target" }, dateText), mode === 'md' && hAsync("ion-ripple-effect", { key: 'ce5fa19ed565fd788c6096aa55d8102ac36a1307' }))), timeText && (hAsync("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) }, hAsync("slot", { key: '60966f907d725aea78af66dbb57f1d6f212a1ef5', name: "time-target" }, timeText), mode === 'md' && hAsync("ion-ripple-effect", { key: 'c26bd731e8991e2b2b7984a2bd859f36337a038b' })))));
14967
14943
  }
14968
14944
  get el() { return getElement(this); }
14969
14945
  static get style() { return {
@@ -15043,12 +15019,12 @@ class Fab {
15043
15019
  render() {
15044
15020
  const { horizontal, vertical, edge } = this;
15045
15021
  const mode = getIonMode$1(this);
15046
- return (hAsync(Host, { key: '8a310806d0e748d7ebb0ed3d9a2652038e0f2960', class: {
15022
+ return (hAsync(Host, { key: 'cb44cf6486b0a6439b99da87c065b0b52e2514f4', class: {
15047
15023
  [mode]: true,
15048
15024
  [`fab-horizontal-${horizontal}`]: horizontal !== undefined,
15049
15025
  [`fab-vertical-${vertical}`]: vertical !== undefined,
15050
15026
  'fab-edge': edge,
15051
- } }, hAsync("slot", { key: '9394ef6d6e5b0410fa6ba212171f687fb178ce2d' })));
15027
+ } }, hAsync("slot", { key: '1ed484c7ecb10cd81fbca9a4f5c4049bf82f9f8a' })));
15052
15028
  }
15053
15029
  get el() { return getElement(this); }
15054
15030
  static get watchers() { return {
@@ -15155,7 +15131,7 @@ class FabButton {
15155
15131
  rel: this.rel,
15156
15132
  target: this.target,
15157
15133
  };
15158
- return (hAsync(Host, { key: '4eee204d20b0e2ffed49a88f6cb3e04b6697965c', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
15134
+ return (hAsync(Host, { key: 'eb347f7d6749c40637540d84778eb8d1b667a947', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, class: createColorClasses$1(color, {
15159
15135
  [mode]: true,
15160
15136
  'fab-button-in-list': inList,
15161
15137
  'fab-button-translucent-in-list': inList && translucent,
@@ -15166,7 +15142,7 @@ class FabButton {
15166
15142
  'ion-activatable': true,
15167
15143
  'ion-focusable': true,
15168
15144
  [`fab-button-${size}`]: size !== undefined,
15169
- }) }, hAsync(TagType, Object.assign({ key: '914561622c0c6bd41453e828a7d8a39f924875ac' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur, onClick: (ev) => openURL(href, ev, this.routerDirection, this.routerAnimation) }, inheritedAttributes), hAsync("ion-icon", { key: '2c8090742a64c62a79243667027a195cca9d5912', "aria-hidden": "true", icon: this.closeIcon, part: "close-icon", class: "close-icon", lazy: false }), hAsync("span", { key: 'c3e55291e4c4d306d34a4b95dd2e727e87bdf39c', class: "button-inner" }, hAsync("slot", { key: 'f8e57f71d8f8878d9746cfece82f57f19ef9e988' })), mode === 'md' && hAsync("ion-ripple-effect", { key: 'a5e94fa0bb9836072300617245ed0c1b4887bac6' }))));
15145
+ }) }, hAsync(TagType, Object.assign({ key: '83e853c8815f41543c848eb2e05ec2bb1716110a' }, attrs, { class: "button-native", part: "native", disabled: disabled, onFocus: this.onFocus, onBlur: this.onBlur, onClick: (ev) => openURL(href, ev, this.routerDirection, this.routerAnimation) }, inheritedAttributes), hAsync("ion-icon", { key: '798deede94de658e4345acf7c2aafe2ab2567b0b', "aria-hidden": "true", icon: this.closeIcon, part: "close-icon", class: "close-icon", lazy: false }), hAsync("span", { key: '99252fde6de1aca73fc240a6da7e29acac9acb18', class: "button-inner" }, hAsync("slot", { key: 'dc73e9b41bf1f0e385e5784f975dfb81e37c8dfb' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '8413e162f44a0350f54dff06cff7aad101de3549' }))));
15170
15146
  }
15171
15147
  get el() { return getElement(this); }
15172
15148
  static get style() { return {
@@ -15222,11 +15198,11 @@ class FabList {
15222
15198
  }
15223
15199
  render() {
15224
15200
  const mode = getIonMode$1(this);
15225
- return (hAsync(Host, { key: '64b33366447f66c7f979cfac56307fbb1a6fac1c', class: {
15201
+ return (hAsync(Host, { key: 'fa1d195b9950654ba0e984bf61d981c977d05275', class: {
15226
15202
  [mode]: true,
15227
15203
  'fab-list-active': this.activated,
15228
15204
  [`fab-list-side-${this.side}`]: true,
15229
- } }, hAsync("slot", { key: 'd9f474f7f20fd7e813db358fddc720534ca05bb6' })));
15205
+ } }, hAsync("slot", { key: '2ec738c66c05112e1e2521155d6adfc36d2fd1db' })));
15230
15206
  }
15231
15207
  get el() { return getElement(this); }
15232
15208
  static get watchers() { return {
@@ -15683,7 +15659,7 @@ class Footer {
15683
15659
  const mode = getIonMode$1(this);
15684
15660
  const tabs = this.el.closest('ion-tabs');
15685
15661
  const tabBar = tabs === null || tabs === void 0 ? void 0 : tabs.querySelector(':scope > ion-tab-bar');
15686
- return (hAsync(Host, { key: 'ddc228f1a1e7fa4f707dccf74db2490ca3241137', role: "contentinfo", class: {
15662
+ return (hAsync(Host, { key: '5da19dc38ba73e1ddfd1bef3ebd485105d77c751', role: "contentinfo", class: {
15687
15663
  [mode]: true,
15688
15664
  // Used internally for styling
15689
15665
  [`footer-${mode}`]: true,
@@ -15691,7 +15667,7 @@ class Footer {
15691
15667
  [`footer-translucent-${mode}`]: translucent,
15692
15668
  ['footer-toolbar-padding']: !this.keyboardVisible && (!tabBar || tabBar.slot !== 'bottom'),
15693
15669
  [`footer-collapse-${collapse}`]: collapse !== undefined,
15694
- } }, mode === 'ios' && translucent && hAsync("div", { key: 'e16ed4963ff94e06de77eb8038201820af73937c', class: "footer-background" }), hAsync("slot", { key: 'f186934febf85d37133d9351a96c1a64b0a4b203' })));
15670
+ } }, mode === 'ios' && translucent && hAsync("div", { key: 'fafad08090a33d8c4e8a5b63d61929dcb89aab47', class: "footer-background" }), hAsync("slot", { key: 'e0a443d346afa55e4317c0bc1263fdbe3c619559' })));
15695
15671
  }
15696
15672
  get el() { return getElement(this); }
15697
15673
  static get style() { return {
@@ -15724,10 +15700,10 @@ class Grid {
15724
15700
  }
15725
15701
  render() {
15726
15702
  const mode = getIonMode$1(this);
15727
- return (hAsync(Host, { key: '617127ecfabf9bf615bef1dda1be3fed5a065949', class: {
15703
+ return (hAsync(Host, { key: '930ce78b02f8360fbca08a35d364d2c09128c6c8', class: {
15728
15704
  [mode]: true,
15729
15705
  'grid-fixed': this.fixed,
15730
- } }, hAsync("slot", { key: 'c781fff853b093d8f44bdb7943bbc4f17c903803' })));
15706
+ } }, hAsync("slot", { key: 'c47bf7ef2197f5ebc42d3e2c55044276fb0db393' })));
15731
15707
  }
15732
15708
  static get style() { return gridCss; }
15733
15709
  static get cmpMeta() { return {
@@ -16120,14 +16096,14 @@ class Header {
16120
16096
  const isCondensed = collapse === 'condense';
16121
16097
  // banner role must be at top level, so remove role if inside a menu
16122
16098
  const roleType = getRoleType(hostContext('ion-menu', this.el), isCondensed, mode);
16123
- return (hAsync(Host, Object.assign({ key: '863c4568cd7b8c0ec55109f193bbbaed68a1346e', role: roleType, class: {
16099
+ return (hAsync(Host, Object.assign({ key: '42fb0d8aa663bef7b1a21e026ea45e932b965794', role: roleType, class: {
16124
16100
  [mode]: true,
16125
16101
  // Used internally for styling
16126
16102
  [`header-${mode}`]: true,
16127
16103
  [`header-translucent`]: this.translucent,
16128
16104
  [`header-collapse-${collapse}`]: true,
16129
16105
  [`header-translucent-${mode}`]: this.translucent,
16130
- } }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: '25c3bdce328b0b35607d154c8b8374679313d881', class: "header-background" }), hAsync("slot", { key: 'b44fab0a9be7920b9650da26117c783e751e1702' })));
16106
+ } }, inheritedAttributes), mode === 'ios' && translucent && hAsync("div", { key: '31fac480feb43bf4adcc97529d88f1fa8034ce98', class: "header-background" }), hAsync("slot", { key: '8fb8d10312836c3de63ba3fccf9ec1a08ca5b9d1' })));
16131
16107
  }
16132
16108
  get el() { return getElement(this); }
16133
16109
  static get style() { return {
@@ -16453,7 +16429,7 @@ class Img {
16453
16429
  render() {
16454
16430
  const { loadSrc, alt, onLoad, loadError, inheritedAttributes } = this;
16455
16431
  const { draggable } = inheritedAttributes;
16456
- return (hAsync(Host, { key: 'da600442894427dee1974a28e545613afac69fca', class: getIonMode$1(this) }, hAsync("img", { key: '16df0c7069af86c0fa7ce5af598bc0f63b4eb71a', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
16432
+ return (hAsync(Host, { key: '14d24d65ec8e5522192ca58035264971b1ab883b', class: getIonMode$1(this) }, hAsync("img", { key: '345ba155a5fdce5e66c397a599b7333d37d9cb1d', decoding: "async", src: loadSrc, alt: alt, onLoad: onLoad, onError: loadError, part: "image", draggable: isDraggable(draggable) })));
16457
16433
  }
16458
16434
  get el() { return getElement(this); }
16459
16435
  static get watchers() { return {
@@ -16681,7 +16657,7 @@ class InfiniteScroll {
16681
16657
  render() {
16682
16658
  const mode = getIonMode$1(this);
16683
16659
  const disabled = this.disabled;
16684
- return (hAsync(Host, { key: 'e844956795f69be33396ce4480aa7a54ad01b28c', class: {
16660
+ return (hAsync(Host, { key: '1444429a86950c449953cbf578436cc8cabf40ec', class: {
16685
16661
  [mode]: true,
16686
16662
  'infinite-scroll-loading': this.isLoading,
16687
16663
  'infinite-scroll-enabled': !disabled,
@@ -16733,11 +16709,11 @@ class InfiniteScrollContent {
16733
16709
  }
16734
16710
  render() {
16735
16711
  const mode = getIonMode$1(this);
16736
- return (hAsync(Host, { key: '7c16060dcfe2a0b0fb3e2f8f4c449589a76f1baa', class: {
16712
+ return (hAsync(Host, { key: '060278bf9cb0321e182352f9613be4ebbb028259', class: {
16737
16713
  [mode]: true,
16738
16714
  // Used internally for styling
16739
16715
  [`infinite-scroll-content-${mode}`]: true,
16740
- } }, hAsync("div", { key: 'a94f4d8746e053dc718f97520bd7e48cb316443a', class: "infinite-loading" }, this.loadingSpinner && (hAsync("div", { key: '10143d5d2a50a2a2bc5de1cee8e7ab51263bcf23', class: "infinite-loading-spinner" }, hAsync("ion-spinner", { key: '8846e88191690d9c61a0b462889ed56fbfed8b0d', name: this.loadingSpinner }))), this.loadingText !== undefined && this.renderLoadingText())));
16716
+ } }, hAsync("div", { key: '07d3cada920145f979ad315bd187fb878e0c3da3', class: "infinite-loading" }, this.loadingSpinner && (hAsync("div", { key: '6254f175d7543d09f3dd47cd0589a2809182cd8c', class: "infinite-loading-spinner" }, hAsync("ion-spinner", { key: 'a6a816d1c65b60b786333b209b63492aa716a283', name: this.loadingSpinner }))), this.loadingText !== undefined && this.renderLoadingText())));
16741
16717
  }
16742
16718
  static get style() { return {
16743
16719
  ios: infiniteScrollContentIosCss,
@@ -17380,7 +17356,7 @@ class Input {
17380
17356
  * TODO(FW-5592): Remove hasStartEndSlots condition
17381
17357
  */
17382
17358
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
17383
- return (hAsync(Host, { key: '97b5308021064d9e7434ef2d3d96f27045c1b0c4', class: createColorClasses$1(this.color, {
17359
+ return (hAsync(Host, { key: '81b44a68138ec7a9f1d4a27549d0c32283dea50d', class: createColorClasses$1(this.color, {
17384
17360
  [mode]: true,
17385
17361
  'has-value': hasValue,
17386
17362
  'has-focus': hasFocus,
@@ -17391,14 +17367,14 @@ class Input {
17391
17367
  'in-item': inItem,
17392
17368
  'in-item-color': hostContext('ion-item.ion-color', this.el),
17393
17369
  'input-disabled': disabled,
17394
- }) }, hAsync("label", { key: '353f68726ce180299bd9adc81e5ff7d26a48f54f', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: '2034b4bad04fc157f3298a1805819216b6f439d0', class: "native-wrapper", onClick: this.onLabelClick }, hAsync("slot", { key: '96bb5e30176b2bd76dfb75bfbf6c1c3d4403f4bb', name: "start" }), hAsync("input", Object.assign({ key: '1a1d75b0e414a95c89d5a760757c33548d234aca', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (hAsync("button", { key: '95f3df17b7691d9a2e7dcd4a51f16a94aa3ca36f', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
17370
+ }) }, hAsync("label", { key: '049adad1bdcb64ee416e420b523e222cb9c0d3df', class: "input-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: '00414cbb2adcc565d52dd5ba3af0280df3ba2c9c', class: "native-wrapper", onClick: this.onLabelClick }, hAsync("slot", { key: 'a09366b057322372e48daeb5a70619e5603b6972', name: "start" }), hAsync("input", Object.assign({ key: '8bd259fca7c30885df0bef6fa37a3c6516b7533e', class: "native-input", ref: (input) => (this.nativeInput = input), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder || '', readOnly: readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, type: this.type, value: value, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeydown, onCompositionstart: this.onCompositionStart, onCompositionend: this.onCompositionEnd, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined }, this.inheritedAttributes)), this.clearInput && !readonly && !disabled && (hAsync("button", { key: '9655b387bf51a371877ab40879c9cdc953a8019f', "aria-label": "reset", type: "button", class: "input-clear-icon", onPointerDown: (ev) => {
17395
17371
  /**
17396
17372
  * This prevents mobile browsers from
17397
17373
  * blurring the input when the clear
17398
17374
  * button is activated.
17399
17375
  */
17400
17376
  ev.preventDefault();
17401
- }, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '16b0af75eed50c8115fb5597f73b5fbf71c2530e', "aria-hidden": "true", icon: clearIconData }))), hAsync("slot", { key: 'c48da0f8ddb3764ac43efa705bb4a6bb2d9cc2fd', name: "end" })), shouldRenderHighlight && hAsync("div", { key: 'f15238481fc20de56ca7ecb6e350b3c024cc755e', class: "input-highlight" })), this.renderBottomContent()));
17377
+ }, onClick: this.clearTextInput }, hAsync("ion-icon", { key: '834670e725e0140069eead8ff6c7a63d87f0aac0', "aria-hidden": "true", icon: clearIconData }))), hAsync("slot", { key: 'e41136ffef6bd8f8fb4c8480bf6dfaa3b61dc286', name: "end" })), shouldRenderHighlight && hAsync("div", { key: '517a556a9748600af6c258c9f668e7b10a798427', class: "input-highlight" })), this.renderBottomContent()));
17402
17378
  }
17403
17379
  get el() { return getElement(this); }
17404
17380
  static get watchers() { return {
@@ -18069,7 +18045,7 @@ class InputOTP {
18069
18045
  const tabbableIndex = this.getTabbableIndex();
18070
18046
  const pattern = this.getPattern();
18071
18047
  const hasDescription = ((_b = (_a = el.querySelector('.input-otp-description')) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) !== '';
18072
- return (hAsync(Host, { key: 'f15a29fb17b681ef55885ca36d3d5f899cbaca83', class: createColorClasses$1(color, {
18048
+ return (hAsync(Host, { key: '76126aeef5a333d3ce86149d1ce21da6c7834898', class: createColorClasses$1(color, {
18073
18049
  [mode]: true,
18074
18050
  'has-focus': hasFocus,
18075
18051
  [`input-otp-size-${size}`]: true,
@@ -18077,10 +18053,10 @@ class InputOTP {
18077
18053
  [`input-otp-fill-${fill}`]: true,
18078
18054
  'input-otp-disabled': disabled,
18079
18055
  'input-otp-readonly': readonly,
18080
- }) }, hAsync("div", Object.assign({ key: 'd7e1d4edd8aafcf2ed4313301287282e90fc7e82', role: "group", "aria-label": "One-time password input", class: "input-otp-group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (hAsync(Fragment, null, hAsync("div", { class: "native-wrapper" }, hAsync("input", { class: "native-input", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && hAsync("div", { class: "input-otp-separator" }))))), hAsync("div", { key: '3724a3159d02860971879a906092f9965f5a7c47', class: {
18056
+ }) }, hAsync("div", Object.assign({ key: 'e9aa792de40a0e49075e8881c6a11245807e1051', role: "group", "aria-label": "One-time password input", class: "input-otp-group" }, inheritedAttributes), Array.from({ length }).map((_, index) => (hAsync(Fragment, null, hAsync("div", { class: "native-wrapper" }, hAsync("input", { class: "native-input", id: `${inputId}-${index}`, "aria-label": `Input ${index + 1} of ${length}`, type: "text", autoCapitalize: autocapitalize, inputmode: inputmode, pattern: pattern, disabled: disabled, readOnly: readonly, tabIndex: index === tabbableIndex ? 0 : -1, value: inputValues[index] || '', autocomplete: "one-time-code", ref: (el) => (inputRefs[index] = el), onInput: this.onInput(index), onBlur: this.onBlur, onFocus: this.onFocus(index), onKeyDown: this.onKeyDown(index), onPaste: this.onPaste })), this.showSeparator(index) && hAsync("div", { class: "input-otp-separator" }))))), hAsync("div", { key: '262ead41c9401a2144e9d7b7bd85311e366d09b2', class: {
18081
18057
  'input-otp-description': true,
18082
18058
  'input-otp-description-hidden': !hasDescription,
18083
- } }, hAsync("slot", { key: '11baa2624926a08274508afe0833d9237a8dc35c' }))));
18059
+ } }, hAsync("slot", { key: '63a4b07ef5e3174cc75cdaed59305cdaebcfd1ad' }))));
18084
18060
  }
18085
18061
  get el() { return getElement(this); }
18086
18062
  static get watchers() { return {
@@ -18180,16 +18156,16 @@ class InputPasswordToggle {
18180
18156
  const showPasswordIcon = (_a = this.showIcon) !== null && _a !== void 0 ? _a : eye;
18181
18157
  const hidePasswordIcon = (_b = this.hideIcon) !== null && _b !== void 0 ? _b : eyeOff;
18182
18158
  const isPasswordVisible = type === 'text';
18183
- return (hAsync(Host, { key: '91bc55664d496fe457518bd112865dd7811d0c17', class: createColorClasses$1(color, {
18159
+ return (hAsync(Host, { key: '07e26969f77ad361e358efe33a3b3728d9669017', class: createColorClasses$1(color, {
18184
18160
  [mode]: true,
18185
- }) }, hAsync("ion-button", { key: 'f3e436422110c9cb4d5c0b83500255b24ab4cdef', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', role: "switch", type: "button", onPointerDown: (ev) => {
18161
+ }) }, hAsync("ion-button", { key: '9f21eaea5756844d37930d52d8d3013c9d476b9f', mode: mode, color: color, fill: "clear", shape: "round", "aria-checked": isPasswordVisible ? 'true' : 'false', "aria-label": isPasswordVisible ? 'Hide password' : 'Show password', role: "switch", type: "button", onPointerDown: (ev) => {
18186
18162
  /**
18187
18163
  * This prevents mobile browsers from
18188
18164
  * blurring the input when the password toggle
18189
18165
  * button is activated.
18190
18166
  */
18191
18167
  ev.preventDefault();
18192
- }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: '5c8b121153f148f92aa7cba0447673a4f6f3ad1e', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
18168
+ }, onClick: this.togglePasswordVisibility }, hAsync("ion-icon", { key: 'd7b1f55b77b71bf2c147f3bde83de1e9083f70ba', slot: "icon-only", "aria-hidden": "true", icon: isPasswordVisible ? hidePasswordIcon : showPasswordIcon }))));
18193
18169
  }
18194
18170
  get el() { return getElement(this); }
18195
18171
  static get watchers() { return {
@@ -18520,11 +18496,11 @@ class ItemDivider {
18520
18496
  }
18521
18497
  render() {
18522
18498
  const mode = getIonMode$1(this);
18523
- return (hAsync(Host, { key: '1523095ce4af3f2611512ff0948ead659959ee4a', class: createColorClasses$1(this.color, {
18499
+ return (hAsync(Host, { key: 'ee8b2c8d5e415c0d8badf84fa7670932da4e809e', class: createColorClasses$1(this.color, {
18524
18500
  [mode]: true,
18525
18501
  'item-divider-sticky': this.sticky,
18526
18502
  item: true,
18527
- }) }, hAsync("slot", { key: '39105d888e115416c3a3fe588da44b4c61f4e5fe', name: "start" }), hAsync("div", { key: '67e16f1056bd39187f3629c1bb383b7abbda829b', class: "item-divider-inner" }, hAsync("div", { key: 'b3a218fdcc7b9aeab6e0155340152d39fa0b6329', class: "item-divider-wrapper" }, hAsync("slot", { key: '69d8587533b387869d34b075d02f61396858fc90' })), hAsync("slot", { key: 'b91c654699b3b26d0012ea0c719c4a07d1fcfbaa', name: "end" }))));
18503
+ }) }, hAsync("slot", { key: 'a1b7bbb1a008b0a56887f130d166931033801746', name: "start" }), hAsync("div", { key: '9d572da46ab616bdf881098e96aa6796a249507f', class: "item-divider-inner" }, hAsync("div", { key: 'a57a2c17093b74b9e4f8fd2778230a440b293aa1', class: "item-divider-wrapper" }, hAsync("slot", { key: 'ef15ebf58f3acd4b4d1b7c51144e26c3759dba49' })), hAsync("slot", { key: '1787c2400534301fe72b8ec213d0ce1e8f75b65a', name: "end" }))));
18528
18504
  }
18529
18505
  get el() { return getElement(this); }
18530
18506
  static get style() { return {
@@ -18554,7 +18530,7 @@ class ItemGroup {
18554
18530
  }
18555
18531
  render() {
18556
18532
  const mode = getIonMode$1(this);
18557
- return (hAsync(Host, { key: 'e49dc8f99247d2431d7c6db01b6e021a0f5b1c37', role: "group", class: {
18533
+ return (hAsync(Host, { key: 'f1743af1d075682f63fae3802c5c5bf050507563', role: "group", class: {
18558
18534
  [mode]: true,
18559
18535
  // Used internally for styling
18560
18536
  [`item-group-${mode}`]: true,
@@ -18624,12 +18600,12 @@ class ItemOption {
18624
18600
  href: this.href,
18625
18601
  target: this.target,
18626
18602
  };
18627
- return (hAsync(Host, { key: '189a0040b97163b2336bf216baa71d584c5923a8', onClick: this.onClick, class: createColorClasses$1(this.color, {
18603
+ return (hAsync(Host, { key: '058310ac361612c16f2ef70c74279ba7c24128c5', onClick: this.onClick, class: createColorClasses$1(this.color, {
18628
18604
  [mode]: true,
18629
18605
  'item-option-disabled': disabled,
18630
18606
  'item-option-expandable': expandable,
18631
18607
  'ion-activatable': true,
18632
- }) }, hAsync(TagType, Object.assign({ key: '5a7140eb99da5ec82fe2ea3ea134513130763399' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: '9b8577e612706b43e575c9a20f2f9d35c0d1bcb1', class: "button-inner" }, hAsync("slot", { key: '9acb82f04e4822bfaa363cc2c4d29d5c0fec0ad6', name: "top" }), hAsync("div", { key: '66f5fb4fdd0c39f205574c602c793dcf109c7a17', class: "horizontal-wrapper" }, hAsync("slot", { key: '3761a32bca7c6c41b7eb394045497cfde181a62a', name: "start" }), hAsync("slot", { key: 'a96a568955cf6962883dc6771726d3d07462da00', name: "icon-only" }), hAsync("slot", { key: 'af5dfe5eb41456b9359bafe3615b576617ed7b57' }), hAsync("slot", { key: '00426958066ab7b949ff966fabad5cf8a0b54079', name: "end" })), hAsync("slot", { key: 'ae66c8bd536a9f27865f49240980d7b4b831b229', name: "bottom" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '30df6c935ef8a3f28a6bc1f3bb162ca4f80aaf26' }))));
18608
+ }) }, hAsync(TagType, Object.assign({ key: '045052656ab652bec065d421950fe9ea00dc1141' }, attrs, { class: "button-native", part: "native", disabled: disabled }), hAsync("span", { key: '988b9166c0dda3c822a99ceace4c105339b2465b', class: "button-inner" }, hAsync("slot", { key: '8050b870ada6b09283f8acbcbb6d2bd1c76508b3', name: "top" }), hAsync("div", { key: 'a206e7b09e660c878ce3c5b61d018e8cdd89dc55', class: "horizontal-wrapper" }, hAsync("slot", { key: '394e5e4ce14cd19b5d5eafca29bb9f971f5f0741', name: "start" }), hAsync("slot", { key: 'dd4c3a1bee7622df40a3d8f2a298045b772f1600', name: "icon-only" }), hAsync("slot", { key: '318f3ec97b722c5e7df1a78b1e0439f919d0aacc' }), hAsync("slot", { key: 'fff6a9a602cf7bd698528982f91742a2d36ea245', name: "end" })), hAsync("slot", { key: '26b4bb155701d8080b486dbad7bb9a6d2e35182c', name: "bottom" })), mode === 'md' && hAsync("ion-ripple-effect", { key: '152b74643bf0f5725c39bfdbb940f0f32ec83d58' }))));
18633
18609
  }
18634
18610
  get el() { return getElement(this); }
18635
18611
  static get style() { return {
@@ -18678,7 +18654,7 @@ class ItemOptions {
18678
18654
  render() {
18679
18655
  const mode = getIonMode$1(this);
18680
18656
  const isEnd = isEndSide(this.side);
18681
- return (hAsync(Host, { key: '05a22a505e043c2715e3805e5e26ab4668940af0', class: {
18657
+ return (hAsync(Host, { key: '7b4b93984182222c64c7a2a22a18e52ac19e3049', class: {
18682
18658
  [mode]: true,
18683
18659
  // Used internally for styling
18684
18660
  [`item-options-${mode}`]: true,
@@ -19143,7 +19119,7 @@ class ItemSliding {
19143
19119
  }
19144
19120
  render() {
19145
19121
  const mode = getIonMode$1(this);
19146
- return (hAsync(Host, { key: 'd812322c9fb5da4ee16e99dc38bfb24cb4590d03', class: {
19122
+ return (hAsync(Host, { key: '8fd81d74701402294a48b79c56d6eceadafd4881', class: {
19147
19123
  [mode]: true,
19148
19124
  'item-sliding-active-slide': this.state !== 2 /* SlidingState.Disabled */,
19149
19125
  'item-sliding-active-options-end': (this.state & 8 /* SlidingState.End */) !== 0,
@@ -19248,13 +19224,13 @@ class Label {
19248
19224
  render() {
19249
19225
  const position = this.position;
19250
19226
  const mode = getIonMode$1(this);
19251
- return (hAsync(Host, { key: 'd6fba1a97189acc8ddfd64a2f009954a3e46e188', class: createColorClasses$1(this.color, {
19227
+ return (hAsync(Host, { key: '684ddfa719e34d743489ff05a0df067829257c73', class: createColorClasses$1(this.color, {
19252
19228
  [mode]: true,
19253
19229
  'in-item-color': hostContext('ion-item.ion-color', this.el),
19254
19230
  [`label-${position}`]: position !== undefined,
19255
19231
  [`label-no-animate`]: this.noAnimate,
19256
19232
  'label-rtl': document.dir === 'rtl',
19257
- }) }, hAsync("slot", { key: 'ce0ab50b5700398fdf50f36d02b7ad287eb71481' })));
19233
+ }) }, hAsync("slot", { key: '4aace3e2b36250e832c44f63bea21116d77220fb' })));
19258
19234
  }
19259
19235
  get el() { return getElement(this); }
19260
19236
  static get watchers() { return {
@@ -19310,7 +19286,7 @@ class List {
19310
19286
  render() {
19311
19287
  const mode = getIonMode$1(this);
19312
19288
  const { lines, inset } = this;
19313
- return (hAsync(Host, { key: '7f9943751542d2cbd49a4ad3f28e16d9949f70d4', role: "list", class: {
19289
+ return (hAsync(Host, { key: '76580117b59d26e355e89f49b385fa8db05026a2', role: "list", class: {
19314
19290
  [mode]: true,
19315
19291
  // Used internally for styling
19316
19292
  [`list-${mode}`]: true,
@@ -19352,10 +19328,10 @@ class ListHeader {
19352
19328
  render() {
19353
19329
  const { lines } = this;
19354
19330
  const mode = getIonMode$1(this);
19355
- return (hAsync(Host, { key: 'd9bc827ad8cc77231efddc2435831a7fc080f77d', class: createColorClasses$1(this.color, {
19331
+ return (hAsync(Host, { key: '2e529021279761b2b2889885437f619b0e8f71c4', class: createColorClasses$1(this.color, {
19356
19332
  [mode]: true,
19357
19333
  [`list-header-lines-${lines}`]: lines !== undefined,
19358
- }) }, hAsync("div", { key: '02dd9698304a7b2997ea1487e2f308bebea2b44c', class: "list-header-inner" }, hAsync("slot", { key: '01d63a572c003286ae467a1ab23631e37e695042' }))));
19334
+ }) }, hAsync("div", { key: '9a6a11b0db015df79374f6489a40b959bc80b3e4', class: "list-header-inner" }, hAsync("slot", { key: 'ef347fc6afb47850797e2e4d1aeefcd6a318f789' }))));
19359
19335
  }
19360
19336
  static get style() { return {
19361
19337
  ios: listHeaderIosCss,
@@ -19640,9 +19616,9 @@ class Loading {
19640
19616
  * Otherwise, don't set aria-labelledby.
19641
19617
  */
19642
19618
  const ariaLabelledBy = message !== undefined ? msgId : null;
19643
- return (hAsync(Host, Object.assign({ key: '4497183ce220242abe19ae15f328f9a92ccafbbc', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
19619
+ return (hAsync(Host, Object.assign({ key: 'f86ddbc600cb5c396b7de38fb5f49625388c3c3f', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
19644
19620
  zIndex: `${40000 + this.overlayIndex}`,
19645
- }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: '231dec84e424a2dc358ce95b84d6035cf43e4dea', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'c9af29b6e6bb49a217396a5c874bbfb8835a926c', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: 'a8659863743cdeccbe1ba810eaabfd3ebfcb86f3', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: '3b346f39bc71691bd8686556a1e142198a7b12fa', class: "loading-spinner" }, hAsync("ion-spinner", { key: '8dc2bf1556e5138e262827f1516c59ecd09f3520', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: '054164c0dbae9a0e0973dd3c8e28f5b771820310', tabindex: "0", "aria-hidden": "true" })));
19621
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), hAsync("ion-backdrop", { key: 'b53727aaddc37ef3c685fcc150c6d5193290a847', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '4c61bede8e0a4e47daa6f1f9d0f364ef6aec0bc3', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '84e51ceb07118f1eaeb757df28801c255496931b', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (hAsync("div", { key: 'fc97f1912e0fc558b7c309a5bc084415f5f620b2', class: "loading-spinner" }, hAsync("ion-spinner", { key: '6e186d856cd3f10f22c3e317ef00f31b4216459c', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), hAsync("div", { key: 'dcbe9d9a619daa1c08174e73827bdabeb59dde92', tabindex: "0", "aria-hidden": "true" })));
19646
19622
  }
19647
19623
  get el() { return getElement(this); }
19648
19624
  static get watchers() { return {
@@ -20691,14 +20667,14 @@ class Menu {
20691
20667
  * the ionBackButton listener in the menu controller
20692
20668
  * will handle closing the menu when Escape is pressed.
20693
20669
  */
20694
- return (hAsync(Host, { key: '70a427f3414a476414c3386efe6c8723fd37eccf', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
20670
+ return (hAsync(Host, { key: '29ef73894e2795e4ce23e59888ffb87faf4dd543', onKeyDown: shouldUseCloseWatcher() ? null : this.onKeydown, role: "navigation", "aria-label": inheritedAttributes['aria-label'] || 'menu', class: {
20695
20671
  [mode]: true,
20696
20672
  [`menu-type-${type}`]: true,
20697
20673
  'menu-enabled': !disabled,
20698
20674
  [`menu-side-${side}`]: true,
20699
20675
  'menu-pane-visible': isPaneVisible,
20700
20676
  'split-pane-side': hostContext('ion-split-pane', el),
20701
- } }, hAsync("div", { key: '83af04e5a47d5a92caafaf06088a7114ae61984b', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '7b35048642864bd0f30de9f6b61c949c1b601692' })), hAsync("ion-backdrop", { key: '347af516c7970d80dd11c6d1ed61e9a040ceb5fb', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
20677
+ } }, hAsync("div", { key: '22e44f7bd602ee0c96550f0dfc22ac81c0033ad6', class: "menu-inner", part: "container", ref: (el) => (this.menuInnerEl = el) }, hAsync("slot", { key: '7bbef92fe03bb3ce4d3981eb8535aab449aab2fc' })), hAsync("ion-backdrop", { key: '9ab8d5b61563e16b212c71c03869d4fc23a0400b', ref: (el) => (this.backdropEl = el), class: "menu-backdrop", tappable: false, stopPropagation: false, part: "backdrop" })));
20702
20678
  }
20703
20679
  get el() { return getElement(this); }
20704
20680
  static get watchers() { return {
@@ -20806,7 +20782,7 @@ class MenuButton {
20806
20782
  type: this.type,
20807
20783
  };
20808
20784
  const ariaLabel = inheritedAttributes['aria-label'] || 'menu';
20809
- return (hAsync(Host, { key: '9f0f0e50d39a6872508220c58e64bb2092a0d7ef', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
20785
+ return (hAsync(Host, { key: 'dcade732e366f0687d92cb9ce4065b78b0b41d24', onClick: this.onClick, "aria-disabled": disabled ? 'true' : null, "aria-hidden": hidden ? 'true' : null, class: createColorClasses$1(color, {
20810
20786
  [mode]: true,
20811
20787
  button: true, // ion-buttons target .button
20812
20788
  'menu-button-hidden': hidden,
@@ -20815,7 +20791,7 @@ class MenuButton {
20815
20791
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
20816
20792
  'ion-activatable': true,
20817
20793
  'ion-focusable': true,
20818
- }) }, hAsync("button", Object.assign({ key: 'ffebf7083d23501839970059ef8e411b571de197' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: 'cab0c1c763b3ce33ef11dba1d230f66126e59424', class: "button-inner" }, hAsync("slot", { key: 'ccfd2be8479b75b5c63e97e1ca7dfe203e9b36ee' }, hAsync("ion-icon", { key: 'ac254fe7f327b08f1ae3fcea89d5cf0e83c9a96c', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && hAsync("ion-ripple-effect", { key: 'f0f17c4ca96e3eed3c1727ee00578d40af8f0115', type: "unbounded" }))));
20794
+ }) }, hAsync("button", Object.assign({ key: '7c4a449e239679376f38471d95fd602f9caec5f6' }, attrs, { disabled: disabled, class: "button-native", part: "native", "aria-label": ariaLabel }), hAsync("span", { key: '8bb5bf453280a66109198c970b678ad800c7a8cf', class: "button-inner" }, hAsync("slot", { key: '7f78b1e7a0695f2bd600d13ca81f50dd8b965726' }, hAsync("ion-icon", { key: '9f67f5bb06b1f03a6e5df9ecbe23ebf69fb40756', part: "icon", icon: menuIcon, mode: mode, lazy: false, "aria-hidden": "true" }))), mode === 'md' && hAsync("ion-ripple-effect", { key: '10be7145c614144e94c3cc0b92dc5ee4e1587fe6', type: "unbounded" }))));
20819
20795
  }
20820
20796
  get el() { return getElement(this); }
20821
20797
  static get style() { return {
@@ -20868,10 +20844,10 @@ class MenuToggle {
20868
20844
  render() {
20869
20845
  const mode = getIonMode$1(this);
20870
20846
  const hidden = this.autoHide && !this.visible;
20871
- return (hAsync(Host, { key: 'cd567114769a30bd3871ed5d15bf42aed39956e1', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
20847
+ return (hAsync(Host, { key: '55135952f3a42cb5d21916dfb7b169d894b381e3', onClick: this.onClick, "aria-hidden": hidden ? 'true' : null, class: {
20872
20848
  [mode]: true,
20873
20849
  'menu-toggle-hidden': hidden,
20874
- } }, hAsync("slot", { key: '773d4cff95ca75f23578b1e1dca53c9933f28a33' })));
20850
+ } }, hAsync("slot", { key: 'e8ecb59a6ec075b07e2a1b8fcdf7df3dd9975a03' })));
20875
20851
  }
20876
20852
  static get style() { return menuToggleCss; }
20877
20853
  static get cmpMeta() { return {
@@ -23708,20 +23684,20 @@ class Modal {
23708
23684
  const isCardModal = presentingElement !== undefined && mode === 'ios';
23709
23685
  const isHandleCycle = handleBehavior === 'cycle';
23710
23686
  const isSheetModalWithHandle = isSheetModal && showHandle;
23711
- return (hAsync(Host, Object.assign({ key: '9a75095a13de0cfc96f1fa69fd92777d25da8daa', "no-router": true,
23687
+ return (hAsync(Host, Object.assign({ key: '09af3299b0bd1daa5004fceed6d4246ebae57088', "no-router": true,
23712
23688
  // Allow the modal to be navigable when the handle is focusable
23713
23689
  tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
23714
23690
  zIndex: `${20000 + this.overlayIndex}`,
23715
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), hAsync("ion-backdrop", { key: 'd02612d8063ef20f59f173ff47795f71cdaaf63e', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '708761b70a93e34c08faae079569f444c7416a4c', class: "modal-shadow" }), hAsync("div", Object.assign({ key: 'a72226ff1a98229f9bfd9207b98fc57e02baa430',
23691
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), hAsync("ion-backdrop", { key: '472105fd981d02b596d109a396a2ee26cb03df07', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && hAsync("div", { key: '7312e6a55141c2cc8f7e12f9a3172fcb8b0a4fdf', class: "modal-shadow" }), hAsync("div", Object.assign({ key: '5f603333d4f4f73da0b0e93a3ea2ffdcccec079d',
23716
23692
  /*
23717
23693
  role and aria-modal must be used on the
23718
23694
  same element. They must also be set inside the
23719
23695
  shadow DOM otherwise ion-button will not be highlighted
23720
23696
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
23721
23697
  */
23722
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: '0547f32323882660221385d84d492929caa77c6b', class: "modal-handle",
23698
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (hAsync("button", { key: 'c99e0e874713c3bf97a896c52658a04c7dc37826', class: "modal-handle",
23723
23699
  // Prevents the handle from receiving keyboard focus when it does not cycle
23724
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), hAsync("slot", { key: 'fccbd64518b6fa22f9e874deb6b4ba55d8d89c3b', onSlotchange: this.onSlotChange }))));
23700
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), hAsync("slot", { key: '0afbfc8723876be1c70c815e51a711258a454e53', onSlotchange: this.onSlotChange }))));
23725
23701
  }
23726
23702
  get el() { return getElement(this); }
23727
23703
  static get watchers() { return {
@@ -24669,7 +24645,7 @@ class Nav {
24669
24645
  }
24670
24646
  }
24671
24647
  render() {
24672
- return hAsync("slot", { key: '8067c9835d255daec61f33dba200fd3a6ff839a0' });
24648
+ return hAsync("slot", { key: 'a549286b51b1bb23c9ef51f71148452228d0ab14' });
24673
24649
  }
24674
24650
  get el() { return getElement(this); }
24675
24651
  static get watchers() { return {
@@ -24742,7 +24718,7 @@ class NavLink {
24742
24718
  };
24743
24719
  }
24744
24720
  render() {
24745
- return hAsync(Host, { key: '6dbb1ad4f351e9215375aac11ab9b53762e07a08', onClick: this.onClick });
24721
+ return hAsync(Host, { key: 'd4d80feb51c0d92b0bedf6952c892f9df3002046', onClick: this.onClick });
24746
24722
  }
24747
24723
  get el() { return getElement(this); }
24748
24724
  static get cmpMeta() { return {
@@ -24773,9 +24749,9 @@ class Note {
24773
24749
  }
24774
24750
  render() {
24775
24751
  const mode = getIonMode$1(this);
24776
- return (hAsync(Host, { key: '0ec2ef7367d867fd7588611953f696eecdf3221e', class: createColorClasses$1(this.color, {
24752
+ return (hAsync(Host, { key: 'b86a6acc9274df6528d224d4c11ab826a0f84dbc', class: createColorClasses$1(this.color, {
24777
24753
  [mode]: true,
24778
- }) }, hAsync("slot", { key: 'a200b94ddffb29cf6dabe6e984220930ea7efdef' })));
24754
+ }) }, hAsync("slot", { key: '5de76567ed7713827cd277a42db102faf34190c8' })));
24779
24755
  }
24780
24756
  static get style() { return {
24781
24757
  ios: noteIosCss,
@@ -25247,7 +25223,7 @@ let Picker$1 = class Picker {
25247
25223
  this.emitInputModeChange();
25248
25224
  }
25249
25225
  render() {
25250
- return (hAsync(Host, { key: '28f81e4ed44a633178561757c5199c2c98f94b74', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, hAsync("input", { key: 'abb3d1ad25ef63856af7804111175a4d50008bc0', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
25226
+ return (hAsync(Host, { key: '2546ff9e4f6bb9f880600903cdfad67be2df014d', onPointerDown: (ev) => this.onPointerDown(ev), onClick: () => this.onClick() }, hAsync("input", { key: '58337ea0f6e3aba819fc48bad7dc0847251f72f1', "aria-hidden": "true", tabindex: -1, inputmode: "numeric", type: "number", onKeyDown: (ev) => {
25251
25227
  var _a;
25252
25228
  /**
25253
25229
  * The "Enter" key represents
@@ -25262,7 +25238,7 @@ let Picker$1 = class Picker {
25262
25238
  if (ev.key === 'Enter') {
25263
25239
  (_a = this.inputEl) === null || _a === void 0 ? void 0 : _a.blur();
25264
25240
  }
25265
- }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), hAsync("div", { key: '334a5abdc02e6b127c57177f626d7e4ff5526183', class: "picker-before" }), hAsync("div", { key: 'ffd6271931129e88fc7c820e919d684899e420c5', class: "picker-after" }), hAsync("div", { key: '78d1d95fd09e04f154ea59f24a1cece72c47ed7b', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), hAsync("slot", { key: '0bd5b9f875d3c71f6cbbde2054baeb1b0a2e8cd5' })));
25241
+ }, ref: (el) => (this.inputEl = el), onInput: () => this.onInputChange(), onBlur: () => this.exitInputMode() }), hAsync("div", { key: '395fa256c886725de0c562d05c9da8ac8defbede', class: "picker-before" }), hAsync("div", { key: '3471738349700fe3e9c7425a455132e2fd6e3224', class: "picker-after" }), hAsync("div", { key: '37557bd2cfb57db4b3b98a2063f5b733c40debb8', class: "picker-highlight", ref: (el) => (this.highlightEl = el) }), hAsync("slot", { key: '2d133fb7e178f95d02dd362a503c86abd3bb8e8d' })));
25266
25242
  }
25267
25243
  get el() { return getElement(this); }
25268
25244
  static get style() { return {
@@ -25535,11 +25511,11 @@ class Picker {
25535
25511
  render() {
25536
25512
  const { htmlAttributes } = this;
25537
25513
  const mode = getIonMode$1(this);
25538
- return (hAsync(Host, Object.assign({ key: 'b95440747eb80cba23ae676d399d5e5816722c58', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
25514
+ return (hAsync(Host, Object.assign({ key: '80f66d33780d8a1352d24be9cb63a0cc03d01ab5', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
25539
25515
  zIndex: `${20000 + this.overlayIndex}`,
25540
25516
  }, class: Object.assign({ [mode]: true,
25541
25517
  // Used internally for styling
25542
- [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '169d1c83ef40e7fcb134219a585298b403a70b0f', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: '98518e5f5cea2dfb8dfa63d9545e9ae3a5765023', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '151755ab8eb23f9adafbfe201349398f5a69dee7', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '5dcf93b2f4fe8f4fce7c7aec8f85ef45a03ef470', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: 'fd5d66708edd38adc5a4d2fad7298969398a05e3', class: "picker-columns" }, hAsync("div", { key: '1b5830fd6cef1016af7736792c514965d6cb38a8', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: 'c6edeca7afd69e13c9c66ba36f261974fd0f8f78', class: "picker-below-highlight" }))), hAsync("div", { key: 'e2a4b24710e30579b14b82dbfd3761b2187797b5', tabindex: "0", "aria-hidden": "true" })));
25518
+ [`picker-${mode}`]: true, 'overlay-hidden': true }, getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), hAsync("ion-backdrop", { key: '97fb8e10ba08b197610cb8c0cdea61103883d55f', visible: this.showBackdrop, tappable: this.backdropDismiss }), hAsync("div", { key: 'b3969cb6fbf7153623d14e3ca1493d3370efb211', tabindex: "0", "aria-hidden": "true" }), hAsync("div", { key: '299268483c3727e698d9135bfdf40349a7050ac1', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, hAsync("div", { key: '95394de3ef691899b7dbf416f56fd3e86bbdce3f', class: "picker-toolbar" }, this.buttons.map((b) => (hAsync("div", { class: buttonWrapperClass(b) }, hAsync("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass$1(b) }, b.text))))), hAsync("div", { key: '05f18bb8d00dc0e22f691b7e41f90f729a6c66d7', class: "picker-columns" }, hAsync("div", { key: '4a8fdf224effc0af67fd413e2e6aca8a78d1cf43', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => hAsync("ion-picker-legacy-column", { col: c })), hAsync("div", { key: 'e50a31db45e3f39e9d0fed36a21be9257eec09bf', class: "picker-below-highlight" }))), hAsync("div", { key: '5a78cb2176ac807ea0c195c6b76cd0e8eef9d4c0', tabindex: "0", "aria-hidden": "true" })));
25543
25519
  }
25544
25520
  get el() { return getElement(this); }
25545
25521
  static get watchers() { return {
@@ -26137,14 +26113,14 @@ class PickerColumn {
26137
26113
  render() {
26138
26114
  const { color, disabled, isActive, numericInput } = this;
26139
26115
  const mode = getIonMode$1(this);
26140
- return (hAsync(Host, { key: 'db903fd415f8a2d91994dececca481c1af8ba6a9', class: createColorClasses$1(color, {
26116
+ return (hAsync(Host, { key: 'fc7176e47e8d8776060197343b4c15c09f312528', class: createColorClasses$1(color, {
26141
26117
  [mode]: true,
26142
26118
  ['picker-column-active']: isActive,
26143
26119
  ['picker-column-numeric-input']: numericInput,
26144
26120
  ['picker-column-disabled']: disabled,
26145
- }) }, hAsync("slot", { key: '02ce9e1dd7df91afcd50b06416552bcffb5dec98', name: "prefix" }), hAsync("div", { key: '6dfd7d2429bec19244a6b1afb4448121963a031b', class: "picker-opts", ref: (el) => {
26121
+ }) }, hAsync("slot", { key: 'fce09abdcc48afa64fd5f869b1614f9e564b6759', name: "prefix" }), hAsync("div", { key: 'fbadc7cfa4965238a1ce5d47cb3bb258fa0214a1', class: "picker-opts", ref: (el) => {
26146
26122
  this.scrollEl = el;
26147
- }, 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) }, hAsync("div", { key: 'e30ce0b9cefbfe4d4441fa33acf595da31855c3f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '8be2bd293c12c6ba720d9b31d0d561a96f42e97d', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '8afdcddddabbf646fbb55cb0ba4448309a2c1dd9', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("slot", { key: '6aa0dacc34d6848575ad5b122b9046982308ca43' }), hAsync("div", { key: '92ec8a357414c1b779b11d1dd18fb87a7ee63982', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: 'b89457cb74b5907c25594ff6720ac54ca537e933', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '5bbc92e6bc24de08e39873bf08c5b668373ac0f8', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), hAsync("slot", { key: 'd7bf2b519214f0f3576a4ca79844ad97827dd97f', name: "suffix" })));
26123
+ }, 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) }, hAsync("div", { key: '9f1ba897db0a0469a77cf12f846cc80fea94f596', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '8265d65d90c512e70c20ca9023502610c0b9fc62', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: 'fd0e92a13eeea72f68f43e25ce47b357e5fc431f', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("slot", { key: '63cf74b36e665540c6e2dc038e5581d9e7016983' }), hAsync("div", { key: '48550abba1a52a57b195d7815265e19b3941e5db', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '06a739f9bbf18f4f45d613f88a6d803bda60afd1', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0"), hAsync("div", { key: '416effc018a21e72b5a197abc9cc49d05efcda7c', class: "picker-item-empty", "aria-hidden": "true" }, "\u00A0")), hAsync("slot", { key: '28fdc95c318b0c76a609e12a9b4e17238ba15f8e', name: "suffix" })));
26148
26124
  }
26149
26125
  get el() { return getElement(this); }
26150
26126
  static get watchers() { return {
@@ -26508,9 +26484,9 @@ class PickerColumnCmp {
26508
26484
  render() {
26509
26485
  const col = this.col;
26510
26486
  const mode = getIonMode$1(this);
26511
- return (hAsync(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: {
26487
+ return (hAsync(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: {
26512
26488
  'max-width': this.col.columnWidth,
26513
- } }, col.prefix && (hAsync("div", { key: '9f0634890e66fd4ae74f826d1eea3431de121393', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: '337e996e5be91af16446085fe22436f213b771eb', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: 'd69a132599d78d9e5107f12228978cfce4e43098', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
26489
+ } }, col.prefix && (hAsync("div", { key: 'b0f3d39e0bd128781066ffefb7a1e40d12a9e76d', class: "picker-prefix", style: { width: col.prefixWidth } }, col.prefix)), hAsync("div", { key: '0b106ac4d56916eaaa7f09d1b68348b3754b7bba', class: "picker-opts", style: { maxWidth: col.optionsWidth }, ref: (el) => (this.optsEl = el) }, col.options.map((o, index) => (hAsync("button", { "aria-label": o.ariaLabel, class: { 'picker-opt': true, 'picker-opt-disabled': !!o.disabled }, "opt-index": index }, o.text)))), col.suffix && (hAsync("div", { key: '00ff2f9dbb4561787e5a5223327c6a2a33f8362e', class: "picker-suffix", style: { width: col.suffixWidth } }, col.suffix))));
26514
26490
  }
26515
26491
  get el() { return getElement(this); }
26516
26492
  static get watchers() { return {
@@ -26627,10 +26603,10 @@ class PickerColumnOption {
26627
26603
  render() {
26628
26604
  const { color, disabled, ariaLabel } = this;
26629
26605
  const mode = getIonMode$1(this);
26630
- return (hAsync(Host, { key: 'f816729941aabcb31ddfdce3ffe2e2139030d715', class: createColorClasses$1(color, {
26606
+ return (hAsync(Host, { key: 'c45a1c14a351bf57d7113671164852349be5aa8a', class: createColorClasses$1(color, {
26631
26607
  [mode]: true,
26632
26608
  ['option-disabled']: disabled,
26633
- }) }, hAsync("div", { key: 'd942de84fd14d7dc06b1e5cf4f7920d1dc3c6371', class: 'picker-column-option-button', role: "button", "aria-label": ariaLabel, onClick: () => this.onClick() }, hAsync("slot", { key: 'b0df5717b42209e649097209a01476e1a66f5c5c' }))));
26609
+ }) }, hAsync("div", { key: '824930b658c6e3fb493ac4c6c2451d38c6bc4829', class: 'picker-column-option-button', role: "button", "aria-label": ariaLabel, onClick: () => this.onClick() }, hAsync("slot", { key: '019df4dcf46e629bdbebcd46ed3ab29669feab27' }))));
26634
26610
  }
26635
26611
  get el() { return getElement(this); }
26636
26612
  static get watchers() { return {
@@ -28071,9 +28047,9 @@ class Popover {
28071
28047
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
28072
28048
  const desktop = isPlatform('desktop');
28073
28049
  const enableArrow = arrow && !parentPopover;
28074
- return (hAsync(Host, Object.assign({ key: '42863f748c93f709d433931d969230137b37d42d', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
28050
+ return (hAsync(Host, Object.assign({ key: '2edd8333c630efbce59071f8a383e4326e928dbc', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
28075
28051
  zIndex: `${20000 + this.overlayIndex}`,
28076
- }, 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 && hAsync("ion-backdrop", { key: '22b6d82178b52158b76ab3fd9a7dd738fd6e4bbf', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: 'b76335c64e992a964ed3fb91d17a992c3474b4cd', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '018c846c32e7ff7fa010528e6b37a17e5f03c84c', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '350c468c80052da3a07768bceab98fe159c35a43', class: "popover-content", part: "content" }, hAsync("slot", { key: '686443c17ac9873d33905c1cdb67e6d6da675282' })))));
28052
+ }, 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 && hAsync("ion-backdrop", { key: 'aac4e68b08197534375e8ea3f8c9ea0c10ab2af4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), hAsync("div", { key: 'b7f4ebf57d4148b32856b0075d286f454be8de5d', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && hAsync("div", { key: '607d94c28d73e8e957175a7c0f6e8a99ec4dcd53', class: "popover-arrow", part: "arrow" }), hAsync("div", { key: '4366a5a5de550c09895e923f345583508e1ec30c', class: "popover-content", part: "content" }, hAsync("slot", { key: 'eb7886fbc99c15b667b7d825d24f1c12d9380f03' })))));
28077
28053
  }
28078
28054
  get el() { return getElement(this); }
28079
28055
  static get watchers() { return {
@@ -28178,7 +28154,7 @@ class ProgressBar {
28178
28154
  const mode = getIonMode$1(this);
28179
28155
  // If the progress is displayed as a solid bar.
28180
28156
  const progressSolid = buffer === 1;
28181
- return (hAsync(Host, { key: 'dc69693b5d2dcb2b6e4296d7cb85bc27507f3fa6', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
28157
+ return (hAsync(Host, { key: 'c859e48f3d24a458239e36d925e5dc003ed07c6b', role: "progressbar", "aria-valuenow": type === 'determinate' ? value : null, "aria-valuemin": "0", "aria-valuemax": "1", class: createColorClasses$1(color, {
28182
28158
  [mode]: true,
28183
28159
  [`progress-bar-${type}`]: true,
28184
28160
  'progress-paused': paused,
@@ -28363,7 +28339,7 @@ class Radio {
28363
28339
  const { checked, disabled, color, el, justify, labelPlacement, hasLabel, buttonTabindex, alignment } = this;
28364
28340
  const mode = getIonMode$1(this);
28365
28341
  const inItem = hostContext('ion-item', el);
28366
- return (hAsync(Host, { key: '3353b28172b7f837d4b38964169b5b5f4ba02788', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
28342
+ return (hAsync(Host, { key: 'af5dc59ed528150872e907ed1036e3e2decba939', onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses$1(color, {
28367
28343
  [mode]: true,
28368
28344
  'in-item': inItem,
28369
28345
  'radio-checked': checked,
@@ -28374,10 +28350,10 @@ class Radio {
28374
28350
  // Focus and active styling should not apply when the radio is in an item
28375
28351
  'ion-activatable': !inItem,
28376
28352
  'ion-focusable': !inItem,
28377
- }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '418a0a48366ff900e97da123abf665bbbda87fb7', class: "radio-wrapper" }, hAsync("div", { key: '6e5acdd8c8f5d0ad26632a65396afef8094153d1', class: {
28353
+ }), role: "radio", "aria-checked": checked ? 'true' : 'false', "aria-disabled": disabled ? 'true' : null, tabindex: buttonTabindex }, hAsync("label", { key: '1312aba3259a87fe23a6911cdfa477e309469c8b', class: "radio-wrapper" }, hAsync("div", { key: 'b342aa27e240a300836d2a135658d346b95daf09', class: {
28378
28354
  'label-text-wrapper': true,
28379
28355
  'label-text-wrapper-hidden': !hasLabel,
28380
- }, part: "label" }, hAsync("slot", { key: '10b157162cd283d624153c747679609cf0bbf11e' })), hAsync("div", { key: '4c45cca95cb105cd6df1025a26e3c045272184a0', class: "native-wrapper" }, this.renderRadioControl()))));
28356
+ }, part: "label" }, hAsync("slot", { key: '0a4613d29aa783d1882cf889377f7e4fd4fea51d' })), hAsync("div", { key: '191faea79dc4cd8befc4b873f5bd9f5af8ca2acc', class: "native-wrapper" }, this.renderRadioControl()))));
28381
28357
  }
28382
28358
  get el() { return getElement(this); }
28383
28359
  static get watchers() { return {
@@ -28616,7 +28592,7 @@ class RadioGroup {
28616
28592
  const { label, labelId, el, name, value } = this;
28617
28593
  const mode = getIonMode$1(this);
28618
28594
  renderHiddenInput(true, el, name, value, false);
28619
- return (hAsync(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(), hAsync("div", { key: '85045b45a0100a45f3b9a35d1c5a25ec63d525c4', class: "radio-group-wrapper" }, hAsync("slot", { key: '53dacb87ce62398e78771fb2efaf839ab922d946' }))));
28595
+ return (hAsync(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(), hAsync("div", { key: 'ee6796dedb5dc3abaf5129e906145dfcfa90dc99', class: "radio-group-wrapper" }, hAsync("slot", { key: 'e6a44dd32ee0e193fe73244286258b37f1aaa09b' }))));
28620
28596
  }
28621
28597
  get el() { return getElement(this); }
28622
28598
  static get watchers() { return {
@@ -29376,7 +29352,7 @@ class Range {
29376
29352
  const needsEndAdjustment = inItem && !hasEndContent;
29377
29353
  const mode = getIonMode$1(this);
29378
29354
  renderHiddenInput(true, el, this.name, JSON.stringify(this.getValue()), disabled);
29379
- return (hAsync(Host, { key: 'ef7b01f80515bcaeb2983934ad7f10a6bd5d13ec', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
29355
+ return (hAsync(Host, { key: 'affcac4709096a48a5b4c1864b209b6352f6b078', onFocusin: this.onFocus, onFocusout: this.onBlur, id: rangeId, class: createColorClasses$1(this.color, {
29380
29356
  [mode]: true,
29381
29357
  'in-item': inItem,
29382
29358
  'range-disabled': disabled,
@@ -29385,10 +29361,10 @@ class Range {
29385
29361
  [`range-label-placement-${labelPlacement}`]: true,
29386
29362
  'range-item-start-adjustment': needsStartAdjustment,
29387
29363
  'range-item-end-adjustment': needsEndAdjustment,
29388
- }) }, hAsync("label", { key: 'fd8aa90a9d52be9da024b907e68858dae424449d', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: '2172b4f329c22017dd23475c80aac25ba6e753eb', class: {
29364
+ }) }, hAsync("label", { key: 'c7cf95fa831d10b17c137995d0a9e0cf84006a76', class: "range-wrapper", id: "range-label" }, hAsync("div", { key: '5b8479c7939ae0f94a042c3aafd64316e4577d30', class: {
29389
29365
  'label-text-wrapper': true,
29390
29366
  'label-text-wrapper-hidden': !hasLabel,
29391
- }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '3c318bf2ea0576646d4c010bf44573fd0f483186', class: "native-wrapper" }, hAsync("slot", { key: '6586fd6fc96271e73f8a86c202d1913ad1a26f96', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '74ac0bc2d2cb66ef708bb729f88b6ecbc1b2155d', name: "end" })))));
29367
+ }, part: "label" }, label !== undefined ? hAsync("div", { class: "label-text" }, label) : hAsync("slot", { name: "label" })), hAsync("div", { key: '3c275d822b29a8008e044722e8b6bdabd3ecfad7', class: "native-wrapper" }, hAsync("slot", { key: '03c849d0aa708914984ad57ca292bc5fc66ecad5', name: "start" }), this.renderRangeSlider(), hAsync("slot", { key: '10ca7b8152cac00b45d8fa98ad91410f59fd176a', name: "end" })))));
29392
29368
  }
29393
29369
  get el() { return getElement(this); }
29394
29370
  static get watchers() { return {
@@ -30355,7 +30331,7 @@ class Refresher {
30355
30331
  }
30356
30332
  render() {
30357
30333
  const mode = getIonMode$1(this);
30358
- return (hAsync(Host, { key: '2d1bd880877b698604542ab2d602d38b9504d975', slot: "fixed", class: {
30334
+ return (hAsync(Host, { key: '06d61cc53260ce146dd6906cc96597e9baaa17cf', slot: "fixed", class: {
30359
30335
  [mode]: true,
30360
30336
  // Used internally for styling
30361
30337
  [`refresher-${mode}`]: true,
@@ -30579,7 +30555,7 @@ class RefresherContent {
30579
30555
  const pullingIcon = this.pullingIcon;
30580
30556
  const hasSpinner = pullingIcon != null && SPINNERS[pullingIcon] !== undefined;
30581
30557
  const mode = getIonMode$1(this);
30582
- return (hAsync(Host, { key: 'e235f8a9a84070ece2e2066ced234a64663bfa1d', class: mode }, hAsync("div", { key: '9121691818ddaa35801a5f442e144ac27686cf19', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: 'c8d65d740f1575041bd3b752c789077927397fe4', class: "refresher-pulling-icon" }, hAsync("div", { key: '309dd904977eaa788b09ea95b7fa4996a73bec5b', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: 'a2a1480f67775d56ca7822e76be1e9f983bca2f9', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: '811d7e06d324bf4b6a18a31427a43e5177f3ae3a', class: "arrow-container" }, hAsync("ion-icon", { key: '86cc48e2e8dc054ff6ff1299094da35b524be63d', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: '464ae097dbc95c18a2dd7dfd03f8489153dab719', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: 'ed6875978b9035add562caa743a68353743d978f', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: 'aff891924e44354543fec484e5cde1ca92e69904', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: '842d7ac4ff10a1058775493d62f31cbdcd34f7a0', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: '8c3e6195501e7e78d5cde1e3ad1fef90fd4a953f', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
30558
+ return (hAsync(Host, { key: '4add42b9fdfded359d1b054d04c2c6ff48e028c8', class: mode }, hAsync("div", { key: '45d4e4e0adfed7f96dd1849767aa2cde947de044', class: "refresher-pulling" }, this.pullingIcon && hasSpinner && (hAsync("div", { key: '6bd6c8ef5bf6e10699eec3bd8646431bfe1077a0', class: "refresher-pulling-icon" }, hAsync("div", { key: '852d20414da53352c8e58bc627e0fda38eff97cb', class: "spinner-arrow-container" }, hAsync("ion-spinner", { key: '0dde3578a80cc4b77a07c4d1db1af80c7eb10c27', name: this.pullingIcon, paused: true }), mode === 'md' && this.pullingIcon === 'circular' && (hAsync("div", { key: 'c71dbfcf416a19c30fed38f722ebf0358c2181dd', class: "arrow-container" }, hAsync("ion-icon", { key: 'fa7c2cf624e7a9c41964e66cabc88c594da6d1fd', icon: caretBackSharp, "aria-hidden": "true" })))))), this.pullingIcon && !hasSpinner && (hAsync("div", { key: '3dd68c9968b421c379d1c4349ba619ee0a189c6d', class: "refresher-pulling-icon" }, hAsync("ion-icon", { key: 'f83bceceae4fa8245f91939fb6db589a595e975b', icon: this.pullingIcon, lazy: false, "aria-hidden": "true" }))), this.pullingText !== undefined && this.renderPullingText()), hAsync("div", { key: '98e22ceb0f7883e871f815f6199f5cb313e2e086', class: "refresher-refreshing" }, this.refreshingSpinner && (hAsync("div", { key: 'faabe8a9b61c02a00994ef978bb82b9ba4537214', class: "refresher-refreshing-icon" }, hAsync("ion-spinner", { key: '029a0c073ee1a07f01211e12ba2abc985cf21ed7', name: this.refreshingSpinner }))), this.refreshingText !== undefined && this.renderRefreshingText())));
30583
30559
  }
30584
30560
  get el() { return getElement(this); }
30585
30561
  static get cmpMeta() { return {
@@ -30620,7 +30596,7 @@ class Reorder {
30620
30596
  render() {
30621
30597
  const mode = getIonMode$1(this);
30622
30598
  const reorderIcon = mode === 'ios' ? reorderThreeOutline : reorderTwoSharp;
30623
- return (hAsync(Host, { key: 'e6807bb349725682e99e791ac65e729a360d64e8', class: mode }, hAsync("slot", { key: '1c691cdbffa6427ba08dc12184c69559ed5d5506' }, hAsync("ion-icon", { key: '8b4150302cdca475379582b2251737b5e74079b1', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
30599
+ return (hAsync(Host, { key: 'b869db61ca6393cf1476f2111a66b387b567c6d1', class: mode }, hAsync("slot", { key: 'a78edd1776835282b8b5c841377018f36c83296c' }, hAsync("ion-icon", { key: '7fb067c47bbb9a7258e5063f028282cc097d0f94', icon: reorderIcon, lazy: false, class: "reorder-icon", part: "icon", "aria-hidden": "true" }))));
30624
30600
  }
30625
30601
  get el() { return getElement(this); }
30626
30602
  static get style() { return {
@@ -30891,7 +30867,7 @@ class ReorderGroup {
30891
30867
  }
30892
30868
  render() {
30893
30869
  const mode = getIonMode$1(this);
30894
- return (hAsync(Host, { key: 'b9641f3061d67fbfe68317b901ec33267046e073', class: {
30870
+ return (hAsync(Host, { key: '9527bbdedaab63d31f562c874a7332ea60c4b47b', class: {
30895
30871
  [mode]: true,
30896
30872
  'reorder-enabled': !this.disabled,
30897
30873
  'reorder-list-active': this.state !== 0 /* ReorderGroupState.Idle */,
@@ -31007,7 +30983,7 @@ class RippleEffect {
31007
30983
  }
31008
30984
  render() {
31009
30985
  const mode = getIonMode$1(this);
31010
- return (hAsync(Host, { key: 'ae9d3b1ed6773a9b9bb2267129f7e9af23b6c9fc', role: "presentation", class: {
30986
+ return (hAsync(Host, { key: '3b59cbb44741569a7350f9638b4392add673b6f1', role: "presentation", class: {
31011
30987
  [mode]: true,
31012
30988
  unbounded: this.unbounded,
31013
30989
  } }));
@@ -31966,10 +31942,10 @@ class RouterLink {
31966
31942
  rel: this.rel,
31967
31943
  target: this.target,
31968
31944
  };
31969
- return (hAsync(Host, { key: 'd7f2affcde45c5fbb6cb46cd1c30008ee92a68c5', onClick: this.onClick, class: createColorClasses$1(this.color, {
31945
+ return (hAsync(Host, { key: '8372835161d507c7b821b7536c55f912eb6ce704', onClick: this.onClick, class: createColorClasses$1(this.color, {
31970
31946
  [mode]: true,
31971
31947
  'ion-activatable': true,
31972
- }) }, hAsync("a", Object.assign({ key: 'babafae85ca5c6429958d383feff0493ff8cf33e' }, attrs), hAsync("slot", { key: '50314e9555bbf6dffa0c50c3f763009dee59b10b' }))));
31948
+ }) }, hAsync("a", Object.assign({ key: '315966e14a17760f3f64197e8315200039787897' }, attrs), hAsync("slot", { key: '95fc1697b884225e85e647dddcaa8f4af8b9a979' }))));
31973
31949
  }
31974
31950
  static get style() { return routerLinkCss; }
31975
31951
  static get cmpMeta() { return {
@@ -32166,7 +32142,7 @@ class RouterOutlet {
32166
32142
  return true;
32167
32143
  }
32168
32144
  render() {
32169
- return hAsync("slot", { key: '84b50f1155b0d780dff802ee13223287259fd525' });
32145
+ return hAsync("slot", { key: '386c41745b61daba161cf75063da97fe29ba36cb' });
32170
32146
  }
32171
32147
  get el() { return getElement(this); }
32172
32148
  static get watchers() { return {
@@ -32199,7 +32175,7 @@ class Row {
32199
32175
  registerInstance(this, hostRef);
32200
32176
  }
32201
32177
  render() {
32202
- return (hAsync(Host, { key: '65592a79621bd8f75f9566db3e8c05a4b8fc6048', class: getIonMode$1(this) }, hAsync("slot", { key: '56f09784db7a0299c9ce76dfcede185b295251ff' })));
32178
+ return (hAsync(Host, { key: '8ba906a8cbea060a79ed658c9bf34906f0c11d38', class: getIonMode$1(this) }, hAsync("slot", { key: 'd1009176f45b588fa52c7d9eb336f3c6d3214bb8' })));
32203
32179
  }
32204
32180
  static get style() { return rowCss; }
32205
32181
  static get cmpMeta() { return {
@@ -32640,8 +32616,8 @@ class Searchbar {
32640
32616
  const clearIcon = this.clearIcon || (mode === 'ios' ? closeCircle : closeSharp);
32641
32617
  const searchIcon = this.searchIcon || (mode === 'ios' ? searchOutline : searchSharp);
32642
32618
  const shouldShowCancelButton = this.shouldShowCancelButton();
32643
- const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: '19e18775856db87daeb4b9e3d7bca0461915a0df', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: 'b3bbdcc033f3bd3441d619e4a252cef0dad4d07e', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
32644
- return (hAsync(Host, { key: '074aa60e051bfb3225e87d44bbb6346c59c73574', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
32619
+ const cancelButton = this.showCancelButton !== 'never' && (hAsync("button", { key: 'bf574336a561a5bf66c771fb606a9b19adbecb68', "aria-label": cancelButtonText, "aria-hidden": shouldShowCancelButton ? undefined : 'true', type: "button", tabIndex: mode === 'ios' && !shouldShowCancelButton ? -1 : undefined, onMouseDown: this.onCancelSearchbar, onTouchStart: this.onCancelSearchbar, class: "searchbar-cancel-button" }, hAsync("div", { key: '747ad4368bda5044198259d5bc8f7be9e472e5af', "aria-hidden": "true" }, mode === 'md' ? (hAsync("ion-icon", { "aria-hidden": "true", mode: mode, icon: this.cancelButtonIcon, lazy: false })) : (cancelButtonText))));
32620
+ return (hAsync(Host, { key: 'bcc5b33a2859903ba11bfc5c611c6a2aaa71d06b', role: "search", "aria-disabled": this.disabled ? 'true' : null, class: createColorClasses$1(this.color, {
32645
32621
  [mode]: true,
32646
32622
  'searchbar-animated': animated,
32647
32623
  'searchbar-disabled': this.disabled,
@@ -32651,14 +32627,14 @@ class Searchbar {
32651
32627
  'searchbar-has-focus': this.focused,
32652
32628
  'searchbar-should-show-clear': this.shouldShowClearButton(),
32653
32629
  'searchbar-should-show-cancel': this.shouldShowCancelButton(),
32654
- }) }, hAsync("div", { key: '54f58a79fe36e85d9295157303f1be89c98bbdaf', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: 'f991a37fcf54d26b7ad10d89084764e03d97b9de', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: '8b44dd90a3292c5cf872ef16a8520675f5673494', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: '79d9cfed8f01268044f82811a35d323a12dca749', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
32630
+ }) }, hAsync("div", { key: 'ac0dbf5ddd9c4eb6d714f45c62c44ba3d0bf034d', class: "searchbar-input-container" }, hAsync("input", Object.assign({ key: '4b9fdac1b0d5a7a68bf61a6beb00f166434d3e84', "aria-label": "search text", disabled: this.disabled, ref: (el) => (this.nativeInput = el), class: "searchbar-input", inputMode: this.inputmode, enterKeyHint: this.enterkeyhint, name: this.name, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, minLength: this.minlength, maxLength: this.maxlength, placeholder: this.placeholder, type: this.type, value: this.getValue(), autoCapitalize: autocapitalize === 'default' ? undefined : autocapitalize, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, spellcheck: this.spellcheck }, this.inheritedAttributes)), mode === 'md' && cancelButton, hAsync("ion-icon", { key: '32a889c48b3960560a3873061b4ac5a8a5ce532f', "aria-hidden": "true", mode: mode, icon: searchIcon, lazy: false, class: "searchbar-search-icon" }), hAsync("button", { key: '71222df691ef0b95008e619f755224d069ee9388', "aria-label": "reset", type: "button", "no-blur": true, class: "searchbar-clear-button", onPointerDown: (ev) => {
32655
32631
  /**
32656
32632
  * This prevents mobile browsers from
32657
32633
  * blurring the input when the clear
32658
32634
  * button is activated.
32659
32635
  */
32660
32636
  ev.preventDefault();
32661
- }, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: 'aa3b9fa8a61f853236783ac7bcd0b113ea65ece2', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
32637
+ }, onClick: () => this.onClearInput(true) }, hAsync("ion-icon", { key: 'f1c8c0bd8fbb655085875731d3ece387dbe2967e', "aria-hidden": "true", mode: mode, icon: clearIcon, lazy: false, class: "searchbar-clear-icon" }))), mode === 'ios' && cancelButton));
32662
32638
  }
32663
32639
  get el() { return getElement(this); }
32664
32640
  static get watchers() { return {
@@ -33253,14 +33229,14 @@ class Segment {
33253
33229
  }
33254
33230
  render() {
33255
33231
  const mode = getIonMode$1(this);
33256
- return (hAsync(Host, { key: 'e67ed512739cf2cfe657b0c44ebc3dfb1e9fbb79', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
33232
+ return (hAsync(Host, { key: '725cc37b25c539fa5e3ae8d90530ae33ededc3de', role: "tablist", onClick: this.onClick, class: createColorClasses$1(this.color, {
33257
33233
  [mode]: true,
33258
33234
  'in-toolbar': hostContext('ion-toolbar', this.el),
33259
33235
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
33260
33236
  'segment-activated': this.activated,
33261
33237
  'segment-disabled': this.disabled,
33262
33238
  'segment-scrollable': this.scrollable,
33263
- }) }, hAsync("slot", { key: '804d8acfcb9abfeeee38244b015fbc5c36330b9e', onSlotchange: this.onSlottedItemsChange })));
33239
+ }) }, hAsync("slot", { key: 'c51cf7ea50325866a9367d214e12bc3754870335', onSlotchange: this.onSlottedItemsChange })));
33264
33240
  }
33265
33241
  get el() { return getElement(this); }
33266
33242
  static get watchers() { return {
@@ -33400,7 +33376,7 @@ class SegmentButton {
33400
33376
  const { checked, type, disabled, hasIcon, hasLabel, layout, segmentEl } = this;
33401
33377
  const mode = getIonMode$1(this);
33402
33378
  const hasSegmentColor = () => (segmentEl === null || segmentEl === void 0 ? void 0 : segmentEl.color) !== undefined;
33403
- return (hAsync(Host, { key: '26cb7ee90455bcaa6416125802d7e5729fa05b5b', class: {
33379
+ return (hAsync(Host, { key: 'f69e2a24198a7c57543dbe66902da039a6569c64', class: {
33404
33380
  [mode]: true,
33405
33381
  'in-toolbar': hostContext('ion-toolbar', this.el),
33406
33382
  'in-toolbar-color': hostContext('ion-toolbar[color]', this.el),
@@ -33416,7 +33392,7 @@ class SegmentButton {
33416
33392
  'ion-activatable': true,
33417
33393
  'ion-activatable-instant': true,
33418
33394
  'ion-focusable': true,
33419
- } }, hAsync("button", Object.assign({ key: '75add37f11c107d1e2cfdb154e08004e9579e863', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '8e720d2a3e304903685bf09d226a64e944d78a22', class: "button-inner" }, hAsync("slot", { key: 'c8e7b3ebf8f03042a1001155643b585283c73c65' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '3586ac317b8d82c92b0ccfbfae42f8778612321b' })), hAsync("div", { key: '9cf93957da9e8dc333c8b05327bb903385b1c5f4', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'd3b6f0b3860ec6896b46703f64ed1cc8c75612e3', part: "indicator-background", class: "segment-button-indicator-background" }))));
33395
+ } }, hAsync("button", Object.assign({ key: '0a6fea3a374074af19f7ece0ba3a7cf1e269ab6d', "aria-selected": checked ? 'true' : 'false', role: "tab", ref: (el) => (this.nativeEl = el), type: type, class: "button-native", part: "native", disabled: disabled }, this.inheritedAttributes), hAsync("span", { key: '991018a38c59a6f3d76b2e952e5569c874d2c13e', class: "button-inner" }, hAsync("slot", { key: '23c547c80108025027b913c7fcbec189286627a3' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '7faa9d06ab6aa7346d16b0b6808979759a79650c' })), hAsync("div", { key: '0d61badf2c227dc38e20185b2b2bb590a5efa434', part: "indicator", class: "segment-button-indicator segment-button-indicator-animated" }, hAsync("div", { key: 'a84035752b78491c344179d1e61d109fb4bd1cf1', part: "indicator-background", class: "segment-button-indicator-background" }))));
33420
33396
  }
33421
33397
  get el() { return getElement(this); }
33422
33398
  static get watchers() { return {
@@ -33451,7 +33427,7 @@ class SegmentContent {
33451
33427
  registerInstance(this, hostRef);
33452
33428
  }
33453
33429
  render() {
33454
- return (hAsync(Host, { key: 'db6876f2aee7afa1ea8bc147337670faa68fae1c' }, hAsync("slot", { key: 'bc05714a973a5655668679033f5809a1da6db8cc' })));
33430
+ return (hAsync(Host, { key: '665f41a854621f898eaf7ba9a49e77cc9326501e' }, hAsync("slot", { key: '635aa57fbf6167dcd36fe8dc5dfc1c313637ac04' })));
33455
33431
  }
33456
33432
  static get style() { return segmentContentCss; }
33457
33433
  static get cmpMeta() { return {
@@ -33566,10 +33542,10 @@ class SegmentView {
33566
33542
  }
33567
33543
  render() {
33568
33544
  const { disabled, isManualScroll } = this;
33569
- return (hAsync(Host, { key: 'e180b67bb3143a5f4611fb358c037be6fc782a8f', class: {
33545
+ return (hAsync(Host, { key: '1c9bfce83967a93d63c225031a5cd688509d8fc8', class: {
33570
33546
  'segment-view-disabled': disabled,
33571
33547
  'segment-view-scroll-disabled': isManualScroll === false,
33572
- } }, hAsync("slot", { key: '41c11d6a7406a10f5c64a2e73abfc072afd8fc73' })));
33548
+ } }, hAsync("slot", { key: '19fee034e76fffbdb5f622cb514037c00f9d55d5' })));
33573
33549
  }
33574
33550
  get el() { return getElement(this); }
33575
33551
  static get style() { return {
@@ -34336,7 +34312,7 @@ class Select {
34336
34312
  * TODO(FW-5592): Remove hasStartEndSlots condition
34337
34313
  */
34338
34314
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || isExpanded || hasStartEndSlots));
34339
- return (hAsync(Host, { key: 'd8026835993d0e6dce747098f741a06ae4e4f54d', onClick: this.onClick, class: createColorClasses$1(this.color, {
34315
+ return (hAsync(Host, { key: '9f0a833ebc3df27a42146b07bcbb181c05f5e5c4', onClick: this.onClick, class: createColorClasses$1(this.color, {
34340
34316
  [mode]: true,
34341
34317
  'in-item': inItem,
34342
34318
  'in-item-color': hostContext('ion-item.ion-color', el),
@@ -34354,7 +34330,7 @@ class Select {
34354
34330
  [`select-justify-${justify}`]: justifyEnabled,
34355
34331
  [`select-shape-${shape}`]: shape !== undefined,
34356
34332
  [`select-label-placement-${labelPlacement}`]: true,
34357
- }) }, hAsync("label", { key: 'fcfb40209d6d07d49c7fdca4884b31abf6ac2567', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: 'f191664f2290c3890bde1156157c83a6ff17dbe2', class: "select-wrapper-inner" }, hAsync("slot", { key: '317a28d1115b4214f291e228ce0fe6fc782e57d5', name: "start" }), hAsync("div", { key: 'db68e18abd5ca3a1023d7c7b58bf89893ae18073', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: '4274e042267c2234a198b0f65c89477898d08130', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: '2e2eb1ee2b2791e0683d9afb186fde6e938ca59c', class: "select-highlight" })), this.renderBottomContent()));
34333
+ }) }, hAsync("label", { key: '4b32396d8557c0d1cba13440a11e66b8eb7b13a9', class: "select-wrapper", id: "select-label", onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: 'd226cc8e30cd5202c235476cfa1632fc40bc609f', class: "select-wrapper-inner" }, hAsync("slot", { key: 'df813ff3b7de518c70ea4fedd25bcb965607026d', name: "start" }), hAsync("div", { key: '4a4e9348a136c598b7b08f80ecdcca268afec2d5', class: "native-wrapper", ref: (el) => (this.nativeWrapperEl = el), part: "container" }, this.renderSelectText(), this.renderListbox()), hAsync("slot", { key: 'f168d8b42a1e193ad27d09e5f1553b231f0332e5', name: "end" }), !hasFloatingOrStackedLabel && this.renderSelectIcon()), hasFloatingOrStackedLabel && this.renderSelectIcon(), shouldRenderHighlight && hAsync("div", { key: 'ec3deede22dd403cb16a08f532ae4809cf86a3e7', class: "select-highlight" })), this.renderBottomContent()));
34358
34334
  }
34359
34335
  get el() { return getElement(this); }
34360
34336
  static get watchers() { return {
@@ -34515,7 +34491,7 @@ class SelectModal {
34515
34491
  } }, option.text))));
34516
34492
  }
34517
34493
  render() {
34518
- return (hAsync(Host, { key: 'b6c0dec240b2e41985b15fdf4e5a6d3a145c1567', class: getIonMode$1(this) }, hAsync("ion-header", { key: 'cd177e85ee0f62a60a3a708342d6ab6eb19a44dc' }, hAsync("ion-toolbar", { key: 'aee8222a5a4daa540ad202b2e4cac1ef93d9558c' }, this.header !== undefined && hAsync("ion-title", { key: '5f8fecc764d97bf840d3d4cfddeeccd118ab4436' }, this.header), hAsync("ion-buttons", { key: '919033950d7c2b0101f96a9c9698219de9f568ea', slot: "end" }, hAsync("ion-button", { key: '34b571cab6dced4bde555a077a21e91800829931', onClick: () => this.closeModal() }, "Close")))), hAsync("ion-content", { key: '3c9153d26ba7a5a03d3b20fcd628d0c3031661a7' }, hAsync("ion-list", { key: 'e00b222c071bc97c82ad1bba4db95a8a5c43ed6d' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
34494
+ return (hAsync(Host, { key: '5bffdb106e6f628dae2e2aeb9ee8008b5c547b3a', class: getIonMode$1(this) }, hAsync("ion-header", { key: '4de1c33b0504372f8a0a26123e4e086080ee1ecb' }, hAsync("ion-toolbar", { key: '5d55a67d1db4352c260e9e0457d5dac6110b6598' }, this.header !== undefined && hAsync("ion-title", { key: '4f07fe8a9af8c9bd0852af2a9b95517d16356e50' }, this.header), hAsync("ion-buttons", { key: 'ca676a34f7cd3dd6b465b0d803434c2e2c8536c5', slot: "end" }, hAsync("ion-button", { key: '801ed63a357c7c9d354668851db65e5c1b0e1abe', onClick: () => this.closeModal() }, "Close")))), hAsync("ion-content", { key: 'f3c239ec9d84b8ed7413ea9db6efa18e29aca285' }, hAsync("ion-list", { key: '40c157e9abe477171a39ae7e6e1cd4ed08735cb4' }, this.multiple === true ? this.renderCheckboxOptions() : this.renderRadioOptions()))));
34519
34495
  }
34520
34496
  get el() { return getElement(this); }
34521
34497
  static get style() { return {
@@ -34549,7 +34525,7 @@ class SelectOption {
34549
34525
  this.disabled = false;
34550
34526
  }
34551
34527
  render() {
34552
- return hAsync(Host, { key: '3a70eea9fa03a9acba582180761d18347c72acee', role: "option", id: this.inputId, class: getIonMode$1(this) });
34528
+ return hAsync(Host, { key: '824730b6c1e4f15b716e91b05840e890af5f1577', role: "option", id: this.inputId, class: getIonMode$1(this) });
34553
34529
  }
34554
34530
  get el() { return getElement(this); }
34555
34531
  static get style() { return selectOptionCss; }
@@ -34666,7 +34642,7 @@ class SelectPopover {
34666
34642
  render() {
34667
34643
  const { header, message, options, subHeader } = this;
34668
34644
  const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
34669
- return (hAsync(Host, { key: 'ab931b49b59283825bd2afa3f7f995b0e6e05bef', class: getIonMode$1(this) }, hAsync("ion-list", { key: '3bd12b67832607596b912a73d5b3ae9b954b244d' }, header !== undefined && hAsync("ion-list-header", { key: '97da930246edf7423a039c030d40e3ff7a5148a3' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: 'c579df6ea8fac07bb0c59d34c69b149656863224' }, hAsync("ion-label", { key: 'af699c5f465710ccb13b8cf8e7be66f0e8acfad1', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: 'df9a936d42064b134e843c7229f314a2a3ec7e80' }, subHeader), message !== undefined && hAsync("p", { key: '9c3ddad378df00f106afa94e9928cf68c17124dd' }, message)))), this.renderOptions(options))));
34645
+ return (hAsync(Host, { key: '0c9845a40d3fc392b0a7d64e2a6ed27d94bb7634', class: getIonMode$1(this) }, hAsync("ion-list", { key: '84a30f6661b0f8c00e6fa199658ed2adbcf27358' }, header !== undefined && hAsync("ion-list-header", { key: '13f5f56bbfbc06751fa516291a2da72629b60ece' }, header), hasSubHeaderOrMessage && (hAsync("ion-item", { key: '3d39d18e720e798bbde334e79e6832091c7dfb81' }, hAsync("ion-label", { key: 'd3051b0d140120b44bf5e79572f6f287e7cfb03a', class: "ion-text-wrap" }, subHeader !== undefined && hAsync("h3", { key: 'b16805956f3316f8ec703c123b76f717488e8637' }, subHeader), message !== undefined && hAsync("p", { key: '2215ac4ab4146a14e75a79192e319a8016286b5f' }, message)))), this.renderOptions(options))));
34670
34646
  }
34671
34647
  get el() { return getElement(this); }
34672
34648
  static get style() { return {
@@ -34716,11 +34692,11 @@ class SkeletonText {
34716
34692
  const animated = this.animated && config.getBoolean('animated', true);
34717
34693
  const inMedia = hostContext('ion-avatar', this.el) || hostContext('ion-thumbnail', this.el);
34718
34694
  const mode = getIonMode$1(this);
34719
- return (hAsync(Host, { key: 'd86ef7392507cdbf48dfd3a71f02d7a83eda4aae', class: {
34695
+ return (hAsync(Host, { key: 'cb8da9aba121811b9a4ffdae60ed88105897cb3c', class: {
34720
34696
  [mode]: true,
34721
34697
  'skeleton-text-animated': animated,
34722
34698
  'in-media': inMedia,
34723
- } }, hAsync("span", { key: '8e8b5a232a6396d2bba691b05f9de4da44b2965c' }, "\u00A0")));
34699
+ } }, hAsync("span", { key: '5379deee3c76d46d615be0cba14b4f60129ffa25' }, "\u00A0")));
34724
34700
  }
34725
34701
  get el() { return getElement(this); }
34726
34702
  static get style() { return skeletonTextCss; }
@@ -34772,7 +34748,7 @@ class Spinner {
34772
34748
  svgs.push(buildLine(spinner, duration, i, spinner.lines));
34773
34749
  }
34774
34750
  }
34775
- return (hAsync(Host, { key: 'a33d6421fcc885995fbc7a348516525f68ca496c', class: createColorClasses$1(self.color, {
34751
+ return (hAsync(Host, { key: 'dd1954e557fa14b943e761474e29e4316ba53938', class: createColorClasses$1(self.color, {
34776
34752
  [mode]: true,
34777
34753
  [`spinner-${spinnerName}`]: true,
34778
34754
  'spinner-paused': self.paused || config.getBoolean('_testing'),
@@ -34871,12 +34847,12 @@ class SplitPane {
34871
34847
  }
34872
34848
  render() {
34873
34849
  const mode = getIonMode$1(this);
34874
- return (hAsync(Host, { key: 'd5e30df12f1f1f855da4c66f98076b9dce762c59', class: {
34850
+ return (hAsync(Host, { key: '05c88c009fbe2e223fd261760a2b49da1653ff62', class: {
34875
34851
  [mode]: true,
34876
34852
  // Used internally for styling
34877
34853
  [`split-pane-${mode}`]: true,
34878
34854
  'split-pane-visible': this.visible,
34879
- } }, hAsync("slot", { key: '3e30d7cf3bc1cf434e16876a0cb2a36377b8e00f' })));
34855
+ } }, hAsync("slot", { key: 'b35865082661253c4468520d79234fa5dab5bd35' })));
34880
34856
  }
34881
34857
  get el() { return getElement(this); }
34882
34858
  static get watchers() { return {
@@ -34942,10 +34918,10 @@ class Tab {
34942
34918
  }
34943
34919
  render() {
34944
34920
  const { tab, active, component } = this;
34945
- return (hAsync(Host, { key: 'dbad8fe9f1566277d14647626308eaf1601ab01f', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
34921
+ return (hAsync(Host, { key: 'fbd837bad7a0632336d46a597ace23673b153e48', role: "tabpanel", "aria-hidden": !active ? 'true' : null, "aria-labelledby": `tab-button-${tab}`, class: {
34946
34922
  'ion-page': component === undefined,
34947
34923
  'tab-hidden': !active,
34948
- } }, hAsync("slot", { key: '3be64f4e7161f6769aaf8e4dcb5293fcaa09af45' })));
34924
+ } }, hAsync("slot", { key: '35c218169fda826c9c1337558e0278d0c7f5f26a' })));
34949
34925
  }
34950
34926
  get el() { return getElement(this); }
34951
34927
  static get watchers() { return {
@@ -35037,11 +35013,11 @@ class TabBar {
35037
35013
  const { color, translucent, keyboardVisible } = this;
35038
35014
  const mode = getIonMode$1(this);
35039
35015
  const shouldHide = keyboardVisible && this.el.getAttribute('slot') !== 'top';
35040
- return (hAsync(Host, { key: '388ec37ce308035bab78d6c9a016bb616e9517a9', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
35016
+ return (hAsync(Host, { key: '47ddafd51bb665679dfdef0588df97ec63dce5ca', role: "tablist", "aria-hidden": shouldHide ? 'true' : null, class: createColorClasses$1(color, {
35041
35017
  [mode]: true,
35042
35018
  'tab-bar-translucent': translucent,
35043
35019
  'tab-bar-hidden': shouldHide,
35044
- }) }, hAsync("slot", { key: 'ce10ade2b86725e24f3254516483eeedd8ecb16a' })));
35020
+ }) }, hAsync("slot", { key: 'a4fc2dc72518023db6b7d17fb689e2841e833252' })));
35045
35021
  }
35046
35022
  get el() { return getElement(this); }
35047
35023
  static get watchers() { return {
@@ -35137,7 +35113,7 @@ class TabButton {
35137
35113
  rel,
35138
35114
  target,
35139
35115
  };
35140
- return (hAsync(Host, { key: 'ce9d29ced0c781d6b2fa62cd5feb801c11fc42e8', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
35116
+ return (hAsync(Host, { key: '638b93ef40701ec3aefb89b1579eb91aaf6d4f8a', onClick: this.onClick, onKeyup: this.onKeyUp, id: tab !== undefined ? `tab-button-${tab}` : null, class: {
35141
35117
  [mode]: true,
35142
35118
  'tab-selected': selected,
35143
35119
  'tab-disabled': disabled,
@@ -35149,7 +35125,7 @@ class TabButton {
35149
35125
  'ion-activatable': true,
35150
35126
  'ion-selectable': true,
35151
35127
  'ion-focusable': true,
35152
- } }, hAsync("a", Object.assign({ key: '01cb0ed2e77c5c1a8abd48da1bb07ac1b305d0b6' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: 'd0240c05f42217cfb186b86ff8a0c9cd70b9c8df', class: "button-inner" }, hAsync("slot", { key: '0a20b84925037dbaa8bb4a495b813d3f7c2e58ac' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '4c92c27178cdac89d69cffef8d2c39c3644914e8', type: "unbounded" }))));
35128
+ } }, hAsync("a", Object.assign({ key: 'c053d32fbcdad8d5e4a409956b47164d7a080c6b' }, attrs, { class: "button-native", part: "native", role: "tab", "aria-selected": selected ? 'true' : null, "aria-disabled": disabled ? 'true' : null, tabindex: disabled ? '-1' : undefined }, inheritedAttributes), hAsync("span", { key: 'b3b460d33ec978a46b069442280d31b23bc8e794', class: "button-inner" }, hAsync("slot", { key: '87b3928475c941263261101b8fae27c6370d4671' })), mode === 'md' && hAsync("ion-ripple-effect", { key: '6532e5b4546aebe4becaebe1c93ce0e6aedaffe7', type: "unbounded" }))));
35153
35129
  }
35154
35130
  get el() { return getElement(this); }
35155
35131
  static get style() { return {
@@ -35340,7 +35316,7 @@ class Tabs {
35340
35316
  return Array.from(this.el.querySelectorAll('ion-tab'));
35341
35317
  }
35342
35318
  render() {
35343
- return (hAsync(Host, { key: '7b4b302f2942d8d131f6fc24e817989a8be08867', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '2c51cf14c0f17a8ddf2d879858c984cdf8fd3147', name: "top" }), hAsync("div", { key: '7e9d6055092d41bd9bc80ae15965f77e216feb84', class: "tabs-inner" }, hAsync("slot", { key: 'c308a787e37ff7f6653531d70deca597a7602d26' })), hAsync("slot", { key: 'd5f5e693710c853570811602f859cf3e88272684', name: "bottom" })));
35319
+ return (hAsync(Host, { key: 'c7131135b31aa312dc0207602561e1c0f4ac3e53', onIonTabButtonClick: this.onTabClicked }, hAsync("slot", { key: '6c46e91c0389bbcea1f15f35cf3ea513a74ac545', name: "top" }), hAsync("div", { key: '4f1b649d8bb60b61402b97359de204979c5eda52', class: "tabs-inner" }, hAsync("slot", { key: '8d1ef4952be4fb33567376e1083ea4da697fcae0' })), hAsync("slot", { key: '260b8da8031494e9cb4635b3d22c49a433042db1', name: "bottom" })));
35344
35320
  }
35345
35321
  get el() { return getElement(this); }
35346
35322
  static get style() { return tabsCss; }
@@ -35380,9 +35356,9 @@ class Text {
35380
35356
  }
35381
35357
  render() {
35382
35358
  const mode = getIonMode$1(this);
35383
- return (hAsync(Host, { key: '361035eae7b92dc109794348d39bad2f596eb6be', class: createColorClasses$1(this.color, {
35359
+ return (hAsync(Host, { key: 'bfaa49d35f43b8036725ae8a322c716fc6e43bdf', class: createColorClasses$1(this.color, {
35384
35360
  [mode]: true,
35385
- }) }, hAsync("slot", { key: 'c7b8835cf485ba9ecd73298f0529276ce1ea0852' })));
35361
+ }) }, hAsync("slot", { key: 'c04880cd1935b42cbe60f58fd523b4d8a96072dc' })));
35386
35362
  }
35387
35363
  static get style() { return textCss; }
35388
35364
  static get cmpMeta() { return {
@@ -35843,7 +35819,7 @@ class Textarea {
35843
35819
  * TODO(FW-5592): Remove hasStartEndSlots condition
35844
35820
  */
35845
35821
  const labelShouldFloat = labelPlacement === 'stacked' || (labelPlacement === 'floating' && (hasValue || hasFocus || hasStartEndSlots));
35846
- return (hAsync(Host, { key: 'a70a62d7aae3831a50acd74f60b930925ada1326', class: createColorClasses$1(this.color, {
35822
+ return (hAsync(Host, { key: '2c9de566803dd007cee3639ddd04accb68663b32', class: createColorClasses$1(this.color, {
35847
35823
  [mode]: true,
35848
35824
  'has-value': hasValue,
35849
35825
  'has-focus': hasFocus,
@@ -35852,7 +35828,7 @@ class Textarea {
35852
35828
  [`textarea-shape-${shape}`]: shape !== undefined,
35853
35829
  [`textarea-label-placement-${labelPlacement}`]: true,
35854
35830
  'textarea-disabled': disabled,
35855
- }) }, hAsync("label", { key: '8a2dd59a60f7469df84018eb0ede3a9ec3862703', class: "textarea-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: '1bfc368236e3da7a225a45118c27fbfc1fe5fa46', class: "textarea-wrapper-inner" }, hAsync("div", { key: '215cbb2635ff52e31a8973376989b85e7245d40f', class: "start-slot-wrapper" }, hAsync("slot", { key: '9f6b461cdee9d629deb695d2bea054ece2f32305', name: "start" })), hAsync("div", { key: 'c1af35a2d5bc452bebe0b22a26d15ff52b4e9fc8', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '69a69b3cf0932baafbe37e6e846f1a571608d3f2', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined }, this.inheritedAttributes), value)), hAsync("div", { key: 'c053ea8b865d0e29763aed2e4939cc9c9e374c15', class: "end-slot-wrapper" }, hAsync("slot", { key: '930aa641833b0df54b9ea10368fc2f46d5f491f6', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: '8d12597d15f5f429d80e8272ea99e64ed924e482', class: "textarea-highlight" })), this.renderBottomContent()));
35831
+ }) }, hAsync("label", { key: 'a0602b57fae26f148729b19c296de31b4923ad44', class: "textarea-wrapper", htmlFor: inputId, onClick: this.onLabelClick }, this.renderLabelContainer(), hAsync("div", { key: '4ff96c999ba015c6c94be888da76d2dbd33020d7', class: "textarea-wrapper-inner" }, hAsync("div", { key: '8827db21d38d6c0bc2949f183b976eca692210be', class: "start-slot-wrapper" }, hAsync("slot", { key: 'e90b69e2b427a51f9a6ec201053e55b914ef5b9d', name: "start" })), hAsync("div", { key: '22de2b64734d6a677939ff372df9de13b58923e6', class: "native-wrapper", ref: (el) => (this.textareaWrapper = el) }, hAsync("textarea", Object.assign({ key: '0e125c47ae292bea21484824746dbee922e728b0', class: "native-textarea", ref: (el) => (this.nativeInput = el), id: inputId, disabled: disabled, autoCapitalize: this.autocapitalize, autoFocus: this.autofocus, enterKeyHint: this.enterkeyhint, inputMode: this.inputmode, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder || '', readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, cols: this.cols, rows: this.rows, wrap: this.wrap, onInput: this.onInput, onChange: this.onChange, onBlur: this.onBlur, onFocus: this.onFocus, onKeyDown: this.onKeyDown, "aria-describedby": this.getHintTextID(), "aria-invalid": this.isInvalid ? 'true' : undefined }, this.inheritedAttributes), value)), hAsync("div", { key: '52d8f9048596cd598a99b74e3d0b322890d8513d', class: "end-slot-wrapper" }, hAsync("slot", { key: 'd9c8a7c33c47533dfe2eb8b12006c7f38d3cd11b', name: "end" }))), shouldRenderHighlight && hAsync("div", { key: 'aaf672b846a35f0aeb0b3ec172dc808eb871eb5a', class: "textarea-highlight" })), this.renderBottomContent()));
35856
35832
  }
35857
35833
  get el() { return getElement(this); }
35858
35834
  static get watchers() { return {
@@ -35915,7 +35891,7 @@ class Thumbnail {
35915
35891
  registerInstance(this, hostRef);
35916
35892
  }
35917
35893
  render() {
35918
- return (hAsync(Host, { key: '70ada828e8cf541ab3b47f94b7e56ce34114ef88', class: getIonMode$1(this) }, hAsync("slot", { key: 'c43e105669d2bae123619b616f3af8ca2f722d61' })));
35894
+ return (hAsync(Host, { key: 'b250e01664238f1dca8f9757b15bc3d5d9387ffa', class: getIonMode$1(this) }, hAsync("slot", { key: '72cb568bccabc983c5186a7596ef6c6d4ebf5ad9' })));
35919
35895
  }
35920
35896
  static get style() { return thumbnailCss; }
35921
35897
  static get cmpMeta() { return {
@@ -36773,9 +36749,9 @@ class Toast {
36773
36749
  if (layout === 'stacked' && startButtons.length > 0 && endButtons.length > 0) {
36774
36750
  printIonWarning('[ion-toast] - This toast is using start and end buttons with the stacked toast layout. We recommend following the best practice of using either start or end buttons with the stacked toast layout.', el);
36775
36751
  }
36776
- return (hAsync(Host, Object.assign({ key: 'd1ecd90c87700aad4685e230cdd430aa286b8791', tabindex: "-1" }, this.htmlAttributes, { style: {
36752
+ return (hAsync(Host, Object.assign({ key: '4a303f9ebb69614e9dca677d9d80a4a275de0d85', tabindex: "-1" }, this.htmlAttributes, { style: {
36777
36753
  zIndex: `${60000 + this.overlayIndex}`,
36778
- }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '4bfc863417324de69e222054d5cf9c452038b41e', class: wrapperClass }, hAsync("div", { key: '3417940afec0392e81b7d54c7cb00f3ab6c30d47', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '6bf878fbc85c01e1e5faa9d97d46255a6511a952', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: '54b500348a9c37660c3aff37436d9188e4374947', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
36754
+ }, class: createColorClasses$1(this.color, Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'toast-translucent': this.translucent })), onIonToastWillDismiss: this.dispatchCancelHandler }), hAsync("div", { key: '4f58fcbba8dce9834eab743fc91715935216f3d0', class: wrapperClass }, hAsync("div", { key: 'bbc7b73b186432bd4be8247c5de2ce3b2551fb0a', class: "toast-container", part: "container" }, this.renderButtons(startButtons, 'start'), this.icon !== undefined && (hAsync("ion-icon", { key: '0b953478eb739ceb864373416183bfbf5ce2f9f1', class: "toast-icon", part: "icon", icon: this.icon, lazy: false, "aria-hidden": "true" })), hAsync("div", { key: '7a63497d1c0440256218426194851a969b042ca6', class: "toast-content", role: "status", "aria-atomic": "true", "aria-live": "polite" }, !revealContentToScreenReader && header !== undefined && this.renderHeader('oldHeader', 'true'), !revealContentToScreenReader && message !== undefined && this.renderToastMessage('oldMessage', 'true'), revealContentToScreenReader && header !== undefined && this.renderHeader('header'), revealContentToScreenReader && message !== undefined && this.renderToastMessage('header')), this.renderButtons(endButtons, 'end')))));
36779
36755
  }
36780
36756
  get el() { return getElement(this); }
36781
36757
  static get watchers() { return {
@@ -37087,7 +37063,7 @@ class Toggle {
37087
37063
  const value = this.getValue();
37088
37064
  const rtl = isRTL$1(el) ? 'rtl' : 'ltr';
37089
37065
  renderHiddenInput(true, el, name, checked ? value : '', disabled);
37090
- return (hAsync(Host, { key: 'f569148edd89ee041a4719ffc4733c16b05229bd', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, "aria-required": required ? 'true' : undefined, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, class: createColorClasses$1(color, {
37066
+ return (hAsync(Host, { key: '736e1dcfca34fd41f6f0632652e7f86d6996a232', role: "switch", "aria-checked": `${checked}`, "aria-describedby": this.hintTextId, "aria-invalid": this.isInvalid ? 'true' : undefined, onClick: this.onClick, "aria-labelledby": hasLabel ? inputLabelId : null, "aria-label": inheritedAttributes['aria-label'] || null, "aria-disabled": disabled ? 'true' : null, "aria-required": required ? 'true' : undefined, tabindex: disabled ? undefined : 0, onKeyDown: this.onKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, class: createColorClasses$1(color, {
37091
37067
  [mode]: true,
37092
37068
  'in-item': hostContext('ion-item', el),
37093
37069
  'toggle-activated': activated,
@@ -37097,10 +37073,10 @@ class Toggle {
37097
37073
  [`toggle-alignment-${alignment}`]: alignment !== undefined,
37098
37074
  [`toggle-label-placement-${labelPlacement}`]: true,
37099
37075
  [`toggle-${rtl}`]: true,
37100
- }) }, hAsync("label", { key: '3027f2ac4be6de422a14486d847fbee77f615db1', class: "toggle-wrapper", htmlFor: inputId }, hAsync("input", Object.assign({ key: '4b0304c9e879e432b80184b4e5de37d55c11b436', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, required: required }, inheritedAttributes)), hAsync("div", { key: '8ef265ec942e7f01ff31cbb202ed146c6bf94e02', class: {
37076
+ }) }, hAsync("label", { key: 'e697739fd3964c1c6c23331cf7e38a9841c46a6a', class: "toggle-wrapper", htmlFor: inputId }, hAsync("input", Object.assign({ key: '3d500b8c1bc879591249d183c1abb3f5f26aff6b', type: "checkbox", role: "switch", "aria-checked": `${checked}`, checked: checked, disabled: disabled, id: inputId, required: required }, inheritedAttributes)), hAsync("div", { key: 'e38f3fe0e66b4ca434fd81514f5ef771c2960841', class: {
37101
37077
  'label-text-wrapper': true,
37102
37078
  'label-text-wrapper-hidden': !hasLabel,
37103
- }, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: '7b162b7dd27199cca2a4c995276a18b9f8e44aaf' }), this.renderHintText()), hAsync("div", { key: 'd13c34bd42fca01cc73ddb4ea7e471b33a282a3e', class: "native-wrapper" }, this.renderToggleControl()))));
37079
+ }, part: "label", id: inputLabelId, onClick: this.onDivLabelClick }, hAsync("slot", { key: '006dd3558264d69ab020c07005b348adc4ecdd5b' }), this.renderHintText()), hAsync("div", { key: 'dd4e52de31caabee41ec1bc58efecd1e213368c9', class: "native-wrapper" }, this.renderToggleControl()))));
37104
37080
  }
37105
37081
  get el() { return getElement(this); }
37106
37082
  static get watchers() { return {
@@ -37210,10 +37186,10 @@ class Toolbar {
37210
37186
  this.childrenStyles.forEach((value) => {
37211
37187
  Object.assign(childStyles, value);
37212
37188
  });
37213
- return (hAsync(Host, { key: 'f6c4f669a6a61c5eac4cbb5ea0aa97c48ae5bd46', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
37189
+ return (hAsync(Host, { key: 'b849db2863778dee6c5a251bffa1b3a657aeb036', class: Object.assign(Object.assign({}, childStyles), createColorClasses$1(this.color, {
37214
37190
  [mode]: true,
37215
37191
  'in-toolbar': hostContext('ion-toolbar', this.el),
37216
- })) }, hAsync("div", { key: '9c81742ffa02de9ba7417025b077d05e67305074', class: "toolbar-background", part: "background" }), hAsync("div", { key: '5fc96d166fa47894a062e41541a9beee38078a36', class: "toolbar-container", part: "container" }, hAsync("slot", { key: 'b62c0d9d59a70176bdbf769aec6090d7a166853b', name: "start" }), hAsync("slot", { key: 'd01d3cc2c50e5aaa49c345b209fe8dbdf3d48131', name: "secondary" }), hAsync("div", { key: '3aaa3a2810aedd38c37eb616158ec7b9638528fc', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '357246690f8d5e1cc3ca369611d4845a79edf610' })), hAsync("slot", { key: '06ed3cca4f7ebff4a54cd877dad3cc925ccf9f75', name: "primary" }), hAsync("slot", { key: 'e453d43d14a26b0d72f41e1b81a554bab8ece811', name: "end" }))));
37192
+ })) }, hAsync("div", { key: '67f5bba9c4f527c3f35bfe1313a2b85741f9b246', class: "toolbar-background", part: "background" }), hAsync("div", { key: '085e8c68f056e5b0deb9d1606431fbeb45dae8e5', class: "toolbar-container", part: "container" }, hAsync("slot", { key: '15227c79c3baf883fd8c43fdb7e1313453933c79', name: "start" }), hAsync("slot", { key: '0b8a7f7e685aa31c80d9bc03446ccc3a9d07e0e8', name: "secondary" }), hAsync("div", { key: '57e4628c1fa89df79dd80456259db961bb691404', class: "toolbar-content", part: "content" }, hAsync("slot", { key: '82c2f6e1acf8d96db259bd8baf295881801edbd5' })), hAsync("slot", { key: 'b2d4afb15214199f206c0a5e08b581e4c9c2f58a', name: "primary" }), hAsync("slot", { key: 'bfb909a0c472f8834046c2ea23bef2f562167ad3', name: "end" }))));
37217
37193
  }
37218
37194
  get el() { return getElement(this); }
37219
37195
  static get style() { return {
@@ -37259,11 +37235,11 @@ class ToolbarTitle {
37259
37235
  render() {
37260
37236
  const mode = getIonMode$1(this);
37261
37237
  const size = this.getSize();
37262
- return (hAsync(Host, { key: 'e599c0bf1b0817df3fa8360bdcd6d787f751c371', class: createColorClasses$1(this.color, {
37238
+ return (hAsync(Host, { key: '44e63f8439df64c470692904427b417e19406476', class: createColorClasses$1(this.color, {
37263
37239
  [mode]: true,
37264
37240
  [`title-${size}`]: true,
37265
37241
  'title-rtl': document.dir === 'rtl',
37266
- }) }, hAsync("div", { key: '6e7eee9047d6759876bb31d7305b76efc7c4338c', class: "toolbar-title" }, hAsync("slot", { key: 'bf790eb4c83dd0af4f2fd1f85ab4af5819f46ff4' }))));
37242
+ }) }, hAsync("div", { key: '784cf60a0db16045391891cc8fad0c7dbeba4039', class: "toolbar-title" }, hAsync("slot", { key: '0c720a50479ba257e8756337aeb9b0ab7516a227' }))));
37267
37243
  }
37268
37244
  get el() { return getElement(this); }
37269
37245
  static get watchers() { return {