@pod-os/elements 0.7.1-92705ee.0 → 0.7.1-a71f01c.0

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 (634) hide show
  1. package/dist/cjs/{animation-5840e4df.js → animation-9bea118f.js} +115 -84
  2. package/dist/cjs/{app-globals-1aedd05c.js → app-globals-6352043e.js} +1 -1
  3. package/dist/cjs/{cubic-bezier-dcb7bfef.js → cubic-bezier-0b702a31.js} +13 -12
  4. package/dist/cjs/data-0c9489d7.js +1510 -0
  5. package/dist/cjs/dir-011f46ea.js +20 -0
  6. package/dist/cjs/elements.cjs.js +5 -5
  7. package/dist/cjs/focus-visible-2624ec15.js +76 -0
  8. package/dist/cjs/framework-delegate-437c0645.js +119 -0
  9. package/dist/cjs/{gesture-controller-fbbe9a65.js → gesture-controller-00a6b02f.js} +6 -2
  10. package/dist/cjs/{haptic-09e73337.js → haptic-7358cb0b.js} +37 -8
  11. package/dist/cjs/{hardware-back-button-01027575.js → hardware-back-button-25372ec7.js} +11 -8
  12. package/dist/cjs/{helpers-398ced09.js → helpers-cb08f5ae.js} +115 -15
  13. package/dist/cjs/{index-2067b305.js → index-1b07c737.js} +35 -24
  14. package/dist/cjs/{index-68ae43d2.js → index-2dc3637c.js} +34 -28
  15. package/dist/cjs/index-57b9fa9e.js +30 -0
  16. package/dist/cjs/{index-d01d9183.js → index-643851c6.js} +34 -19
  17. package/dist/cjs/index-731691ca.js +48 -0
  18. package/dist/cjs/{index-6bbae9b1.js → index-7d56774d.js} +12 -8
  19. package/dist/cjs/index-9fca5d6f.js +140 -0
  20. package/dist/cjs/index-b2a479e4.js +38 -0
  21. package/dist/cjs/{index-b4a9ece2.js → index-eaa0d16e.js} +7 -0
  22. package/dist/cjs/{tap-click-f24cb477.js → index-ed2ce04f.js} +37 -19
  23. package/dist/cjs/{input-shims-e959d9e2.js → input-shims-427999f7.js} +89 -38
  24. package/dist/cjs/ion-accordion-group.cjs.entry.js +205 -0
  25. package/dist/cjs/ion-accordion.cjs.entry.js +336 -0
  26. package/dist/cjs/ion-action-sheet_3.cjs.entry.js +865 -0
  27. package/dist/cjs/{ion-app_45.cjs.entry.js → ion-app_46.cjs.entry.js} +1906 -1492
  28. package/dist/cjs/ion-avatar.cjs.entry.js +2 -2
  29. package/dist/cjs/ion-back-button.cjs.entry.js +12 -11
  30. package/dist/cjs/ion-backdrop.cjs.entry.js +4 -4
  31. package/dist/cjs/ion-breadcrumb.cjs.entry.js +101 -0
  32. package/dist/cjs/ion-breadcrumbs.cjs.entry.js +137 -0
  33. package/dist/cjs/ion-buttons_3.cjs.entry.js +799 -0
  34. package/dist/cjs/ion-card-subtitle.cjs.entry.js +4 -4
  35. package/dist/cjs/{ion-list-header_3.cjs.entry.js → ion-checkbox_4.cjs.entry.js} +124 -23
  36. package/dist/cjs/ion-chip.cjs.entry.js +5 -10
  37. package/dist/cjs/ion-datetime-button.cjs.entry.js +346 -0
  38. package/dist/cjs/ion-datetime.cjs.entry.js +1548 -856
  39. package/dist/cjs/ion-fab-button.cjs.entry.js +26 -9
  40. package/dist/cjs/ion-fab-list.cjs.entry.js +4 -4
  41. package/dist/cjs/ion-fab.cjs.entry.js +15 -13
  42. package/dist/cjs/ion-img.cjs.entry.js +28 -4
  43. package/dist/cjs/ion-infinite-scroll-content.cjs.entry.js +5 -5
  44. package/dist/cjs/ion-infinite-scroll.cjs.entry.js +13 -13
  45. package/dist/cjs/ion-input.cjs.entry.js +57 -23
  46. package/dist/cjs/ion-item-option.cjs.entry.js +8 -8
  47. package/dist/cjs/ion-item-options.cjs.entry.js +5 -5
  48. package/dist/cjs/ion-item-sliding.cjs.entry.js +59 -63
  49. package/dist/cjs/ion-loading.cjs.entry.js +38 -37
  50. package/dist/cjs/ion-menu-button.cjs.entry.js +14 -12
  51. package/dist/cjs/ion-menu-toggle.cjs.entry.js +8 -7
  52. package/dist/cjs/ion-menu.cjs.entry.js +71 -57
  53. package/dist/cjs/ion-modal.cjs.entry.js +1386 -156
  54. package/dist/cjs/ion-nav-link.cjs.entry.js +5 -2
  55. package/dist/cjs/ion-nav.cjs.entry.js +177 -171
  56. package/dist/cjs/ion-picker-column.cjs.entry.js +25 -27
  57. package/dist/cjs/ion-picker.cjs.entry.js +22 -17
  58. package/dist/cjs/ion-popover.cjs.entry.js +1208 -182
  59. package/dist/cjs/ion-range.cjs.entry.js +137 -57
  60. package/dist/cjs/ion-refresher-content.cjs.entry.js +7 -12
  61. package/dist/cjs/ion-refresher.cjs.entry.js +150 -148
  62. package/dist/cjs/ion-reorder-group.cjs.entry.js +42 -35
  63. package/dist/cjs/ion-reorder.cjs.entry.js +5 -4
  64. package/dist/cjs/ion-route-redirect.cjs.entry.js +1 -1
  65. package/dist/cjs/ion-route.cjs.entry.js +1 -1
  66. package/dist/cjs/ion-router-link.cjs.entry.js +5 -5
  67. package/dist/cjs/ion-router-outlet.cjs.entry.js +24 -20
  68. package/dist/cjs/ion-router.cjs.entry.js +291 -194
  69. package/dist/cjs/ion-segment-button.cjs.entry.js +10 -17
  70. package/dist/cjs/ion-segment.cjs.entry.js +127 -26
  71. package/dist/cjs/ion-select-option.cjs.entry.js +3 -3
  72. package/dist/cjs/ion-select.cjs.entry.js +113 -78
  73. package/dist/cjs/ion-slide.cjs.entry.js +3 -3
  74. package/dist/cjs/ion-slides.cjs.entry.js +26 -27
  75. package/dist/cjs/ion-spinner.cjs.entry.js +10 -9
  76. package/dist/cjs/ion-split-pane.cjs.entry.js +16 -12
  77. package/dist/cjs/ion-tab-bar.cjs.entry.js +16 -23
  78. package/dist/cjs/ion-tab-button.cjs.entry.js +6 -6
  79. package/dist/cjs/ion-tab.cjs.entry.js +4 -4
  80. package/dist/cjs/ion-tabs.cjs.entry.js +4 -5
  81. package/dist/cjs/ion-text.cjs.entry.js +3 -3
  82. package/dist/cjs/ion-textarea.cjs.entry.js +31 -29
  83. package/dist/cjs/ion-thumbnail.cjs.entry.js +2 -2
  84. package/dist/cjs/ion-toast.cjs.entry.js +50 -60
  85. package/dist/cjs/ion-toggle.cjs.entry.js +41 -22
  86. package/dist/cjs/ion-virtual-scroll.cjs.entry.js +39 -31
  87. package/dist/cjs/{ionic-global-56e10eb5.js → ionic-global-f2d95fd3.js} +112 -93
  88. package/dist/cjs/{ios.transition-32e4623d.js → ios.transition-0f31ec9a.js} +78 -53
  89. package/dist/cjs/{keyboard-9e8103e4.js → keyboard-79afcba2.js} +6 -3
  90. package/dist/cjs/keyboard-controller-a934d106.js +42 -0
  91. package/dist/cjs/loader.cjs.js +5 -5
  92. package/dist/cjs/{md.transition-169c54f0.js → md.transition-d2a33a23.js} +15 -17
  93. package/dist/cjs/{menu-toggle-util-087678e0.js → menu-toggle-util-0a43ff7c.js} +5 -2
  94. package/dist/cjs/{overlays-49fe9ba7.js → overlays-f7d24abf.js} +190 -72
  95. package/dist/cjs/spinner-configs-cd0abbeb.js +147 -0
  96. package/dist/cjs/{status-tap-ada894ff.js → status-tap-beaa3a71.js} +10 -5
  97. package/dist/cjs/{swipe-back-c4a778df.js → swipe-back-666ea8e6.js} +34 -15
  98. package/dist/cjs/{theme-2259d0f5.js → theme-fc63803b.js} +9 -5
  99. package/dist/collection/collection-manifest.json +10 -4
  100. package/dist/collection/components/pos-rich-link/pos-rich-link.js +1 -1
  101. package/dist/components/ResourceAware.js +5 -0
  102. package/dist/components/action-sheet.js +309 -0
  103. package/dist/{esm/ion-alert.entry.js → components/alert.js} +150 -105
  104. package/dist/{esm/animation-fe6ed422.js → components/animation.js} +115 -84
  105. package/dist/components/app.js +112 -0
  106. package/dist/components/backdrop.js +82 -0
  107. package/dist/components/badge.js +42 -0
  108. package/dist/{esm/button-active-fd9d6d91.js → components/button-active.js} +9 -6
  109. package/dist/components/button.js +207 -0
  110. package/dist/{esm/ion-buttons.entry.js → components/buttons.js} +28 -12
  111. package/dist/components/card-content.js +40 -0
  112. package/dist/components/card-header.js +51 -0
  113. package/dist/components/card-title.js +43 -0
  114. package/dist/components/card.js +102 -0
  115. package/dist/{esm/ion-checkbox.entry.js → components/checkbox.js} +42 -24
  116. package/dist/components/col.js +161 -0
  117. package/dist/components/content.js +356 -0
  118. package/dist/{esm/cubic-bezier-108b8579.js → components/cubic-bezier.js} +13 -12
  119. package/dist/components/data.js +1463 -0
  120. package/dist/components/dir.js +18 -0
  121. package/dist/components/focus-visible.js +74 -0
  122. package/dist/components/footer.js +149 -0
  123. package/dist/components/framework-delegate.js +115 -0
  124. package/dist/{esm/gesture-controller-8f35af24.js → components/gesture-controller.js} +6 -2
  125. package/dist/components/grid.js +41 -0
  126. package/dist/{esm/haptic-c424e670.js → components/haptic.js} +38 -9
  127. package/dist/{esm/hardware-back-button-bb4c578a.js → components/hardware-back-button.js} +11 -8
  128. package/dist/components/header.js +360 -0
  129. package/dist/{esm/helpers-44e3bd9f.js → components/helpers.js} +113 -16
  130. package/dist/components/icon.js +367 -0
  131. package/dist/components/index.d.ts +41 -0
  132. package/dist/components/index.js +123 -0
  133. package/dist/components/index10.js +28 -0
  134. package/dist/{esm/tap-click-a7e55ef5.js → components/index11.js} +37 -19
  135. package/dist/components/index2.js +25 -0
  136. package/dist/{esm/index-8d682224.js → components/index3.js} +12 -8
  137. package/dist/components/index4.js +34 -0
  138. package/dist/components/index5.js +128 -0
  139. package/dist/{esm/index-97199683.js → components/index6.js} +34 -28
  140. package/dist/{esm/index-8a463a85.js → components/index7.js} +35 -24
  141. package/dist/{custom-elements/index.js → components/index8.js} +1049 -20945
  142. package/dist/{esm/index-3a1bd803.js → components/index9.js} +35 -20
  143. package/dist/{custom-elements → components}/input-shims.js +88 -38
  144. package/dist/components/ion-accordion-group.js +228 -0
  145. package/dist/components/ion-accordion.js +365 -0
  146. package/dist/components/ion-action-sheet.js +6 -0
  147. package/dist/components/ion-alert.js +6 -0
  148. package/dist/components/ion-app.js +6 -0
  149. package/dist/components/ion-avatar.js +39 -0
  150. package/dist/components/ion-back-button.js +128 -0
  151. package/dist/components/ion-backdrop.js +6 -0
  152. package/dist/components/ion-badge.js +6 -0
  153. package/dist/components/ion-breadcrumb.js +135 -0
  154. package/dist/components/ion-breadcrumbs.js +158 -0
  155. package/dist/components/ion-button.js +6 -0
  156. package/dist/components/ion-buttons.js +6 -0
  157. package/dist/components/ion-card-content.js +6 -0
  158. package/dist/components/ion-card-header.js +6 -0
  159. package/dist/components/ion-card-subtitle.js +46 -0
  160. package/dist/components/ion-card-title.js +6 -0
  161. package/dist/components/ion-card.js +6 -0
  162. package/dist/components/ion-checkbox.js +6 -0
  163. package/dist/components/ion-chip.js +59 -0
  164. package/dist/components/ion-col.js +6 -0
  165. package/dist/components/ion-content.js +6 -0
  166. package/dist/components/ion-datetime-button.js +375 -0
  167. package/dist/components/ion-datetime.js +1802 -0
  168. package/dist/components/ion-fab-button.js +149 -0
  169. package/dist/components/ion-fab-list.js +62 -0
  170. package/dist/components/ion-fab.js +97 -0
  171. package/dist/components/ion-footer.js +6 -0
  172. package/dist/components/ion-grid.js +6 -0
  173. package/dist/components/ion-header.js +6 -0
  174. package/dist/components/ion-icon.js +6 -0
  175. package/dist/components/ion-img.js +120 -0
  176. package/dist/components/ion-infinite-scroll-content.js +59 -0
  177. package/dist/components/ion-infinite-scroll.js +223 -0
  178. package/dist/components/ion-input.js +352 -0
  179. package/dist/components/ion-item-divider.js +6 -0
  180. package/dist/components/ion-item-group.js +6 -0
  181. package/dist/components/ion-item-option.js +89 -0
  182. package/dist/components/ion-item-options.js +63 -0
  183. package/dist/components/ion-item-sliding.js +419 -0
  184. package/dist/components/ion-item.js +6 -0
  185. package/dist/components/ion-label.js +6 -0
  186. package/dist/components/ion-list-header.js +6 -0
  187. package/dist/components/ion-list.js +6 -0
  188. package/dist/components/ion-loading.js +256 -0
  189. package/dist/components/ion-menu-button.js +107 -0
  190. package/dist/components/ion-menu-toggle.js +62 -0
  191. package/dist/components/ion-menu.js +611 -0
  192. package/dist/components/ion-modal.js +1765 -0
  193. package/dist/components/ion-nav-link.js +65 -0
  194. package/dist/components/ion-nav.js +905 -0
  195. package/dist/components/ion-note.js +6 -0
  196. package/dist/components/ion-picker-column-internal.js +6 -0
  197. package/dist/components/ion-picker-column.js +6 -0
  198. package/dist/components/ion-picker-internal.js +6 -0
  199. package/dist/components/ion-picker.js +263 -0
  200. package/dist/components/ion-popover.js +6 -0
  201. package/dist/components/ion-progress-bar.js +6 -0
  202. package/dist/components/ion-radio-group.js +6 -0
  203. package/dist/components/ion-radio.js +6 -0
  204. package/dist/components/ion-range.js +550 -0
  205. package/dist/components/ion-refresher-content.js +64 -0
  206. package/dist/components/ion-refresher.js +826 -0
  207. package/dist/components/ion-reorder-group.js +303 -0
  208. package/dist/components/ion-reorder.js +58 -0
  209. package/dist/components/ion-ripple-effect.js +6 -0
  210. package/dist/components/ion-route-redirect.js +40 -0
  211. package/dist/components/ion-route.js +68 -0
  212. package/dist/components/ion-router-link.js +59 -0
  213. package/dist/components/ion-router-outlet.js +223 -0
  214. package/dist/components/ion-router.js +852 -0
  215. package/dist/components/ion-row.js +6 -0
  216. package/dist/components/ion-searchbar.js +6 -0
  217. package/dist/components/ion-segment-button.js +128 -0
  218. package/dist/components/ion-segment.js +463 -0
  219. package/dist/components/ion-select-option.js +44 -0
  220. package/dist/components/ion-select-popover.js +6 -0
  221. package/dist/components/ion-select.js +596 -0
  222. package/dist/components/ion-skeleton-text.js +6 -0
  223. package/dist/components/ion-slide.js +38 -0
  224. package/dist/components/ion-slides.js +423 -0
  225. package/dist/components/ion-spinner.js +6 -0
  226. package/dist/components/ion-split-pane.js +179 -0
  227. package/dist/components/ion-tab-bar.js +86 -0
  228. package/dist/components/ion-tab-button.js +132 -0
  229. package/dist/components/ion-tab.js +86 -0
  230. package/dist/components/ion-tabs.js +176 -0
  231. package/dist/components/ion-text.js +40 -0
  232. package/dist/components/ion-textarea.js +287 -0
  233. package/dist/components/ion-thumbnail.js +34 -0
  234. package/dist/components/ion-title.js +6 -0
  235. package/dist/components/ion-toast.js +317 -0
  236. package/dist/components/ion-toggle.js +207 -0
  237. package/dist/components/ion-toolbar.js +6 -0
  238. package/dist/components/ion-virtual-scroll.js +588 -0
  239. package/dist/components/ionic-global.js +226 -0
  240. package/dist/{custom-elements → components}/ios.transition.js +75 -50
  241. package/dist/components/item-divider.js +54 -0
  242. package/dist/components/item-group.js +41 -0
  243. package/dist/components/item.js +323 -0
  244. package/dist/components/keyboard-controller.js +40 -0
  245. package/dist/{custom-elements → components}/keyboard.js +6 -3
  246. package/dist/components/label.js +95 -0
  247. package/dist/components/list-header.js +45 -0
  248. package/dist/components/list.js +66 -0
  249. package/dist/{custom-elements → components}/md.transition.js +12 -14
  250. package/dist/{esm/menu-toggle-util-562dfc9c.js → components/menu-toggle-util.js} +5 -2
  251. package/dist/components/note.js +42 -0
  252. package/dist/{esm/overlays-fc9a0625.js → components/overlays.js} +188 -72
  253. package/dist/components/picker-column-internal.js +315 -0
  254. package/dist/components/picker-column.js +343 -0
  255. package/dist/components/picker-internal.js +486 -0
  256. package/dist/components/popover.js +1440 -0
  257. package/dist/components/pos-app-browser.d.ts +11 -0
  258. package/dist/components/pos-app-browser.js +299 -0
  259. package/dist/components/pos-app-generic.d.ts +11 -0
  260. package/dist/components/pos-app-generic.js +6 -0
  261. package/dist/components/pos-app-generic2.js +194 -0
  262. package/dist/components/pos-app-image-viewer.d.ts +11 -0
  263. package/dist/components/pos-app-image-viewer.js +6 -0
  264. package/dist/components/pos-app-image-viewer2.js +162 -0
  265. package/dist/components/pos-app-rdf-document.d.ts +11 -0
  266. package/dist/components/pos-app-rdf-document.js +6 -0
  267. package/dist/components/pos-app-rdf-document2.js +170 -0
  268. package/dist/components/pos-app.d.ts +11 -0
  269. package/dist/components/pos-app.js +6 -0
  270. package/dist/components/pos-app2.js +53 -0
  271. package/dist/components/pos-description.d.ts +11 -0
  272. package/dist/components/pos-description.js +6 -0
  273. package/dist/components/pos-description2.js +38 -0
  274. package/dist/components/pos-image.d.ts +11 -0
  275. package/dist/components/pos-image.js +6 -0
  276. package/dist/components/pos-image2.js +117 -0
  277. package/dist/components/pos-label.d.ts +11 -0
  278. package/dist/components/pos-label.js +6 -0
  279. package/dist/components/pos-label2.js +38 -0
  280. package/dist/components/pos-literals.d.ts +11 -0
  281. package/dist/components/pos-literals.js +6 -0
  282. package/dist/components/pos-literals2.js +87 -0
  283. package/dist/components/pos-login.d.ts +11 -0
  284. package/dist/components/pos-login.js +6 -0
  285. package/dist/components/pos-login2.js +120 -0
  286. package/dist/components/pos-navigation-bar.d.ts +11 -0
  287. package/dist/components/pos-navigation-bar.js +6 -0
  288. package/dist/components/pos-navigation-bar2.js +52 -0
  289. package/dist/components/pos-picture.d.ts +11 -0
  290. package/dist/components/pos-picture.js +6 -0
  291. package/dist/components/pos-picture2.js +62 -0
  292. package/dist/components/pos-relations.d.ts +11 -0
  293. package/dist/components/pos-relations.js +6 -0
  294. package/dist/components/pos-relations2.js +135 -0
  295. package/dist/components/pos-resource.d.ts +11 -0
  296. package/dist/components/pos-resource.js +6 -0
  297. package/dist/components/pos-resource2.js +126 -0
  298. package/dist/components/pos-reverse-relations.d.ts +11 -0
  299. package/dist/components/pos-reverse-relations.js +6 -0
  300. package/dist/components/pos-reverse-relations2.js +135 -0
  301. package/dist/components/pos-rich-link.d.ts +11 -0
  302. package/dist/components/pos-rich-link.js +6 -0
  303. package/dist/components/pos-rich-link2.js +106 -0
  304. package/dist/components/pos-router.d.ts +11 -0
  305. package/dist/components/pos-router.js +6 -0
  306. package/dist/components/pos-router2.js +813 -0
  307. package/dist/components/pos-subjects.d.ts +11 -0
  308. package/dist/components/pos-subjects.js +6 -0
  309. package/dist/components/pos-subjects2.js +125 -0
  310. package/dist/components/pos-type-badges.d.ts +11 -0
  311. package/dist/components/pos-type-badges.js +6 -0
  312. package/dist/components/pos-type-badges2.js +69 -0
  313. package/dist/components/pos-type-router.d.ts +11 -0
  314. package/dist/components/pos-type-router.js +6 -0
  315. package/dist/components/pos-type-router2.js +241 -0
  316. package/dist/components/progress-bar.js +91 -0
  317. package/dist/components/radio-group.js +139 -0
  318. package/dist/components/radio.js +135 -0
  319. package/dist/components/ripple-effect.js +107 -0
  320. package/dist/components/row.js +31 -0
  321. package/dist/components/searchbar.js +412 -0
  322. package/dist/components/select-popover.js +174 -0
  323. package/dist/components/session.js +202 -0
  324. package/dist/components/skeleton-text.js +46 -0
  325. package/dist/components/spinner.js +224 -0
  326. package/dist/{custom-elements → components}/status-tap.js +8 -4
  327. package/dist/{custom-elements → components}/swipe-back.js +33 -13
  328. package/dist/{custom-elements → components}/swiper.bundle.js +0 -0
  329. package/dist/{esm/theme-d21826a7.js → components/theme.js} +9 -5
  330. package/dist/components/title.js +66 -0
  331. package/dist/components/toolbar.js +87 -0
  332. package/dist/elements/elements.css +1 -1
  333. package/dist/elements/elements.esm.js +1 -1
  334. package/dist/elements/p-00f19b1d.js +4 -0
  335. package/dist/elements/p-0587332d.entry.js +1 -0
  336. package/dist/elements/p-07f54139.entry.js +7 -0
  337. package/dist/elements/{p-cfc0e54d.js → p-0991c811.js} +3 -0
  338. package/dist/elements/p-0a69a563.entry.js +1 -0
  339. package/dist/elements/p-0d284fe0.entry.js +1 -0
  340. package/dist/elements/p-116437b0.entry.js +13 -0
  341. package/dist/elements/p-12880671.entry.js +1 -0
  342. package/dist/elements/p-14ccd586.entry.js +1 -0
  343. package/dist/elements/{p-83d45051.entry.js → p-14df6ac0.entry.js} +1 -1
  344. package/dist/elements/{p-e860be6a.entry.js → p-17079f06.entry.js} +1 -1
  345. package/dist/elements/p-19e4a688.js +4 -0
  346. package/dist/elements/p-1afc4eb4.js +4 -0
  347. package/dist/elements/p-1beaf6bf.js +4 -0
  348. package/dist/elements/p-1d1c6a6f.entry.js +1 -0
  349. package/dist/elements/{p-31d30e42.entry.js → p-1d98f84b.entry.js} +1 -1
  350. package/dist/elements/p-1e617706.entry.js +7 -0
  351. package/dist/elements/p-278ca4c9.js +4 -0
  352. package/dist/elements/p-27f5629c.entry.js +1 -0
  353. package/dist/elements/p-29c0f03f.js +4 -0
  354. package/dist/elements/p-2a629468.entry.js +4 -0
  355. package/dist/elements/p-2da59aca.js +4 -0
  356. package/dist/elements/p-3152143f.js +4 -0
  357. package/dist/elements/p-343ff720.entry.js +7 -0
  358. package/dist/elements/p-36d4c9a8.js +4 -0
  359. package/dist/elements/p-3a30dfb2.entry.js +1 -0
  360. package/dist/elements/p-3c013bf1.entry.js +1 -0
  361. package/dist/elements/{p-74ba1e42.entry.js → p-3c318da5.entry.js} +1 -1
  362. package/dist/elements/p-3cee3222.entry.js +1 -0
  363. package/dist/elements/p-3d0f59af.entry.js +7 -0
  364. package/dist/elements/p-41cb5688.entry.js +1 -0
  365. package/dist/elements/p-480b3c4f.entry.js +1 -0
  366. package/dist/elements/p-4e9d8f18.entry.js +1 -0
  367. package/dist/elements/p-53e23176.js +2 -0
  368. package/dist/elements/p-548524f3.js +4 -0
  369. package/dist/elements/p-5739fa41.entry.js +1 -0
  370. package/dist/elements/p-5808c505.js +1 -0
  371. package/dist/elements/p-58a8cc2a.js +4 -0
  372. package/dist/elements/p-6035415e.entry.js +1 -0
  373. package/dist/elements/p-60eeae90.js +4 -0
  374. package/dist/elements/p-667550a9.entry.js +14 -0
  375. package/dist/elements/p-67777478.entry.js +1 -0
  376. package/dist/elements/p-6ab826e1.entry.js +1 -0
  377. package/dist/elements/p-6f5a2827.entry.js +1 -0
  378. package/dist/elements/p-7916ecc5.entry.js +1 -0
  379. package/dist/elements/p-79f06b80.entry.js +1 -0
  380. package/dist/elements/p-7d0def79.js +5 -0
  381. package/dist/elements/p-8112afea.js +4 -0
  382. package/dist/elements/p-83678d7d.entry.js +4 -0
  383. package/dist/elements/p-87e45c94.entry.js +1 -0
  384. package/dist/elements/p-8f80768f.entry.js +4 -0
  385. package/dist/elements/p-8fe0433b.js +4 -0
  386. package/dist/elements/{p-4cb27b48.entry.js → p-9147d82b.entry.js} +1 -1
  387. package/dist/elements/p-96aeb07a.entry.js +1 -0
  388. package/dist/elements/p-97abb434.entry.js +1 -0
  389. package/dist/elements/p-98497a4b.entry.js +1 -0
  390. package/dist/elements/p-9c719139.js +4 -0
  391. package/dist/elements/p-9ca37332.js +4 -0
  392. package/dist/elements/{p-37de7110.js → p-9d48def2.js} +3 -0
  393. package/dist/elements/p-a805f2f9.entry.js +1 -0
  394. package/dist/elements/p-a86a5bfa.entry.js +1 -0
  395. package/dist/elements/{p-9c1dbe52.entry.js → p-ac34eab7.entry.js} +1 -1
  396. package/dist/elements/p-ad366eab.entry.js +4 -0
  397. package/dist/elements/p-aef3a931.js +7 -0
  398. package/dist/elements/p-b0537eb3.entry.js +1 -0
  399. package/dist/elements/p-b41e66f0.entry.js +1 -0
  400. package/dist/elements/p-b47e7091.entry.js +1 -0
  401. package/dist/elements/p-b840320e.js +4 -0
  402. package/dist/elements/p-b934ac5d.entry.js +1 -0
  403. package/dist/elements/p-bc63f4b6.entry.js +1 -0
  404. package/dist/elements/p-bd12806f.entry.js +1 -0
  405. package/dist/elements/p-bf90022d.entry.js +4 -0
  406. package/dist/elements/p-c16d38d5.js +4 -0
  407. package/dist/elements/p-c84205a3.js +4 -0
  408. package/dist/elements/{p-06675ac7.entry.js → p-cbe318f8.entry.js} +1 -1
  409. package/dist/elements/p-cfed7395.js +4 -0
  410. package/dist/elements/p-d3e75c94.entry.js +1 -0
  411. package/dist/elements/p-d8e7ebf4.entry.js +7 -0
  412. package/dist/elements/p-d9880221.entry.js +4 -0
  413. package/dist/elements/p-da5db8fb.entry.js +1 -0
  414. package/dist/elements/{p-91fe653f.js → p-dcc6b03c.js} +3 -0
  415. package/dist/elements/{p-305e246c.entry.js → p-dd846020.entry.js} +1 -1
  416. package/dist/elements/p-dffd8689.js +4 -0
  417. package/dist/elements/p-e3bcb6e8.entry.js +1 -0
  418. package/dist/elements/p-e495a095.js +4 -0
  419. package/dist/elements/p-e59d9789.entry.js +1 -0
  420. package/dist/elements/p-e5fc7d42.entry.js +1 -0
  421. package/dist/elements/{p-aaa8393e.entry.js → p-eb137e9d.entry.js} +1 -1
  422. package/dist/elements/p-f4e54a17.js +7 -0
  423. package/dist/elements/p-f67d0717.entry.js +1 -0
  424. package/dist/elements/p-f7f4c640.js +1 -0
  425. package/dist/elements/p-f851b91a.js +4 -0
  426. package/dist/elements/p-fb27ee76.entry.js +1 -0
  427. package/dist/elements/p-fbddca35.entry.js +1 -0
  428. package/dist/elements/p-fdac5f3a.js +4 -0
  429. package/dist/elements/p-feb0cea8.entry.js +4 -0
  430. package/dist/esm/animation-801a007a.js +986 -0
  431. package/dist/esm/{app-globals-27d92837.js → app-globals-05a3abfb.js} +1 -1
  432. package/dist/esm/cubic-bezier-538b6253.js +90 -0
  433. package/dist/esm/data-62c81c24.js +1463 -0
  434. package/dist/esm/dir-defb16c6.js +18 -0
  435. package/dist/esm/elements.js +5 -5
  436. package/dist/esm/focus-visible-78d55799.js +74 -0
  437. package/dist/esm/framework-delegate-7e2b767b.js +115 -0
  438. package/dist/esm/gesture-controller-c466ff14.js +195 -0
  439. package/dist/esm/haptic-e7d5ef4d.js +135 -0
  440. package/dist/esm/hardware-back-button-242191a7.js +71 -0
  441. package/dist/esm/helpers-aeff219b.js +410 -0
  442. package/dist/esm/index-0dbaca1a.js +28 -0
  443. package/dist/esm/index-1f3d8582.js +34 -0
  444. package/dist/esm/index-2be9a18b.js +312 -0
  445. package/dist/esm/index-51e4a829.js +137 -0
  446. package/dist/esm/index-6048aed6.js +224 -0
  447. package/dist/esm/index-65ecd543.js +25 -0
  448. package/dist/{custom-elements/tap-click.js → esm/index-b212db1c.js} +37 -19
  449. package/dist/esm/{index-e4deec27.js → index-cb938ffb.js} +7 -1
  450. package/dist/esm/index-d39eb62b.js +463 -0
  451. package/dist/esm/index-ebf7f059.js +128 -0
  452. package/dist/esm/{input-shims-3b48722f.js → input-shims-8a389148.js} +89 -38
  453. package/dist/esm/ion-accordion-group.entry.js +201 -0
  454. package/dist/esm/ion-accordion.entry.js +332 -0
  455. package/dist/esm/ion-action-sheet_3.entry.js +859 -0
  456. package/dist/esm/{ion-app_45.entry.js → ion-app_46.entry.js} +1906 -1493
  457. package/dist/esm/ion-avatar.entry.js +2 -2
  458. package/dist/esm/ion-back-button.entry.js +12 -11
  459. package/dist/esm/ion-backdrop.entry.js +4 -4
  460. package/dist/esm/ion-breadcrumb.entry.js +97 -0
  461. package/dist/esm/ion-breadcrumbs.entry.js +133 -0
  462. package/dist/esm/ion-buttons_3.entry.js +793 -0
  463. package/dist/esm/ion-card-subtitle.entry.js +4 -4
  464. package/dist/esm/{ion-list-header_3.entry.js → ion-checkbox_4.entry.js} +124 -24
  465. package/dist/esm/ion-chip.entry.js +5 -10
  466. package/dist/esm/ion-datetime-button.entry.js +342 -0
  467. package/dist/esm/ion-datetime.entry.js +1548 -856
  468. package/dist/esm/ion-fab-button.entry.js +26 -9
  469. package/dist/esm/ion-fab-list.entry.js +4 -4
  470. package/dist/esm/ion-fab.entry.js +15 -13
  471. package/dist/esm/ion-img.entry.js +28 -4
  472. package/dist/esm/ion-infinite-scroll-content.entry.js +5 -5
  473. package/dist/esm/ion-infinite-scroll.entry.js +13 -13
  474. package/dist/esm/ion-input.entry.js +57 -23
  475. package/dist/esm/ion-item-option.entry.js +8 -8
  476. package/dist/esm/ion-item-options.entry.js +5 -5
  477. package/dist/esm/ion-item-sliding.entry.js +59 -63
  478. package/dist/esm/ion-loading.entry.js +38 -37
  479. package/dist/esm/ion-menu-button.entry.js +14 -12
  480. package/dist/esm/ion-menu-toggle.entry.js +8 -7
  481. package/dist/esm/ion-menu.entry.js +71 -57
  482. package/dist/esm/ion-modal.entry.js +1377 -147
  483. package/dist/esm/ion-nav-link.entry.js +5 -2
  484. package/dist/esm/ion-nav.entry.js +177 -171
  485. package/dist/esm/ion-picker-column.entry.js +25 -27
  486. package/dist/esm/ion-picker.entry.js +22 -17
  487. package/dist/esm/ion-popover.entry.js +1208 -182
  488. package/dist/esm/ion-range.entry.js +137 -57
  489. package/dist/esm/ion-refresher-content.entry.js +7 -12
  490. package/dist/esm/ion-refresher.entry.js +149 -147
  491. package/dist/esm/ion-reorder-group.entry.js +42 -35
  492. package/dist/esm/ion-reorder.entry.js +5 -4
  493. package/dist/esm/ion-route-redirect.entry.js +1 -1
  494. package/dist/esm/ion-route.entry.js +1 -1
  495. package/dist/esm/ion-router-link.entry.js +5 -5
  496. package/dist/esm/ion-router-outlet.entry.js +24 -20
  497. package/dist/esm/ion-router.entry.js +291 -194
  498. package/dist/esm/ion-segment-button.entry.js +10 -17
  499. package/dist/esm/ion-segment.entry.js +127 -26
  500. package/dist/esm/ion-select-option.entry.js +3 -3
  501. package/dist/esm/ion-select.entry.js +113 -78
  502. package/dist/esm/ion-slide.entry.js +3 -3
  503. package/dist/esm/ion-slides.entry.js +26 -27
  504. package/dist/esm/ion-spinner.entry.js +10 -9
  505. package/dist/esm/ion-split-pane.entry.js +16 -12
  506. package/dist/esm/ion-tab-bar.entry.js +16 -23
  507. package/dist/esm/ion-tab-button.entry.js +6 -6
  508. package/dist/esm/ion-tab.entry.js +4 -4
  509. package/dist/esm/ion-tabs.entry.js +4 -5
  510. package/dist/esm/ion-text.entry.js +3 -3
  511. package/dist/esm/ion-textarea.entry.js +31 -29
  512. package/dist/esm/ion-thumbnail.entry.js +2 -2
  513. package/dist/esm/ion-toast.entry.js +50 -60
  514. package/dist/esm/ion-toggle.entry.js +41 -22
  515. package/dist/esm/ion-virtual-scroll.entry.js +39 -31
  516. package/dist/esm/{ionic-global-2e28f7c7.js → ionic-global-6cd57191.js} +112 -93
  517. package/dist/esm/{ios.transition-a783e3cd.js → ios.transition-bbd952f2.js} +78 -53
  518. package/dist/esm/{keyboard-e6abcb80.js → keyboard-413afe04.js} +6 -3
  519. package/dist/esm/keyboard-controller-33693bc2.js +40 -0
  520. package/dist/esm/loader.js +5 -5
  521. package/dist/esm/{md.transition-5a4a8c82.js → md.transition-5170a6d3.js} +15 -17
  522. package/dist/esm/menu-toggle-util-82bf888a.js +12 -0
  523. package/dist/esm/overlays-bd4abb68.js +502 -0
  524. package/dist/esm/spinner-configs-cbcd1f62.js +145 -0
  525. package/dist/esm/{status-tap-69e62ad6.js → status-tap-ad757b8a.js} +10 -5
  526. package/dist/esm/swipe-back-7ef22876.js +69 -0
  527. package/dist/esm/theme-7cf2cab0.js +43 -0
  528. package/dist/types/components.d.ts +0 -13
  529. package/package.json +7 -8
  530. package/dist/cjs/button-active-c14dab31.js +0 -66
  531. package/dist/cjs/focus-visible-16c98640.js +0 -45
  532. package/dist/cjs/framework-delegate-c45292a3.js +0 -37
  533. package/dist/cjs/ion-action-sheet.cjs.entry.js +0 -265
  534. package/dist/cjs/ion-alert.cjs.entry.js +0 -456
  535. package/dist/cjs/ion-buttons.cjs.entry.js +0 -42
  536. package/dist/cjs/ion-checkbox.cjs.entry.js +0 -117
  537. package/dist/cjs/ion-note.cjs.entry.js +0 -29
  538. package/dist/cjs/ion-select-popover.cjs.entry.js +0 -35
  539. package/dist/cjs/spinner-configs-fb16b986.js +0 -112
  540. package/dist/cjs/test-component.cjs.entry.js +0 -13
  541. package/dist/collection/test/TestComponent.js +0 -3
  542. package/dist/collection/test/mockPodOS.js +0 -35
  543. package/dist/collection/test/renderFunctionalComponent.js +0 -8
  544. package/dist/custom-elements/focus-visible.js +0 -43
  545. package/dist/custom-elements/index.d.ts +0 -165
  546. package/dist/elements/p-03bda390.js +0 -1
  547. package/dist/elements/p-0be044f1.entry.js +0 -1
  548. package/dist/elements/p-119c7c6c.entry.js +0 -1
  549. package/dist/elements/p-14c7c3ea.entry.js +0 -1
  550. package/dist/elements/p-1d4a2c61.js +0 -1
  551. package/dist/elements/p-1d894ac4.entry.js +0 -1
  552. package/dist/elements/p-1dafa1ce.entry.js +0 -1
  553. package/dist/elements/p-23b89ccb.entry.js +0 -1
  554. package/dist/elements/p-2c03b9ab.entry.js +0 -1
  555. package/dist/elements/p-346985f2.js +0 -1
  556. package/dist/elements/p-360f1c62.entry.js +0 -1
  557. package/dist/elements/p-373e1f25.entry.js +0 -1
  558. package/dist/elements/p-40547acb.entry.js +0 -1
  559. package/dist/elements/p-40b68014.entry.js +0 -1
  560. package/dist/elements/p-42e4f702.entry.js +0 -1
  561. package/dist/elements/p-489807e5.js +0 -1
  562. package/dist/elements/p-4ad72d54.entry.js +0 -1
  563. package/dist/elements/p-4cca7b5e.entry.js +0 -1
  564. package/dist/elements/p-4f24d306.js +0 -1
  565. package/dist/elements/p-519d6a53.entry.js +0 -1
  566. package/dist/elements/p-536e8e52.entry.js +0 -1
  567. package/dist/elements/p-599bb53f.entry.js +0 -1
  568. package/dist/elements/p-5eb7a546.js +0 -1
  569. package/dist/elements/p-60df2bed.entry.js +0 -1
  570. package/dist/elements/p-65133e33.js +0 -1
  571. package/dist/elements/p-6693fce8.js +0 -1
  572. package/dist/elements/p-689bdcc1.entry.js +0 -1
  573. package/dist/elements/p-70713b3d.entry.js +0 -1
  574. package/dist/elements/p-707d5d76.js +0 -1
  575. package/dist/elements/p-7212b7f2.js +0 -1
  576. package/dist/elements/p-73992898.entry.js +0 -1
  577. package/dist/elements/p-792c1e0f.entry.js +0 -1
  578. package/dist/elements/p-7e5300af.js +0 -2
  579. package/dist/elements/p-8068987c.entry.js +0 -1
  580. package/dist/elements/p-83accf46.entry.js +0 -1
  581. package/dist/elements/p-86635d06.entry.js +0 -1
  582. package/dist/elements/p-874c2b44.js +0 -1
  583. package/dist/elements/p-89c12ce8.entry.js +0 -1
  584. package/dist/elements/p-8bcba3f7.entry.js +0 -1
  585. package/dist/elements/p-8c759f51.entry.js +0 -1
  586. package/dist/elements/p-8f945e6b.entry.js +0 -1
  587. package/dist/elements/p-9300ab6a.js +0 -1
  588. package/dist/elements/p-93cacd51.entry.js +0 -1
  589. package/dist/elements/p-9408d0b4.entry.js +0 -1
  590. package/dist/elements/p-98c79eda.js +0 -1
  591. package/dist/elements/p-99f8abed.js +0 -1
  592. package/dist/elements/p-9ca7e079.js +0 -1
  593. package/dist/elements/p-a4648b74.entry.js +0 -1
  594. package/dist/elements/p-aab0f63c.js +0 -1
  595. package/dist/elements/p-ad4e2295.entry.js +0 -1
  596. package/dist/elements/p-afb8f7d5.entry.js +0 -1
  597. package/dist/elements/p-b055ec44.js +0 -1
  598. package/dist/elements/p-b078d63b.entry.js +0 -1
  599. package/dist/elements/p-b3460325.entry.js +0 -1
  600. package/dist/elements/p-b5406b58.entry.js +0 -1
  601. package/dist/elements/p-b5ef0c91.entry.js +0 -1
  602. package/dist/elements/p-b6ba623e.entry.js +0 -1
  603. package/dist/elements/p-b9926d8b.entry.js +0 -1
  604. package/dist/elements/p-bfd4cfcd.entry.js +0 -1
  605. package/dist/elements/p-c08dd7d0.entry.js +0 -1
  606. package/dist/elements/p-c0db9c51.entry.js +0 -1
  607. package/dist/elements/p-c1e7fbfb.js +0 -1
  608. package/dist/elements/p-ca69d6c9.js +0 -1
  609. package/dist/elements/p-cc4cb1ac.entry.js +0 -1
  610. package/dist/elements/p-cf8a7031.entry.js +0 -1
  611. package/dist/elements/p-cff82b6f.js +0 -1
  612. package/dist/elements/p-d01009b8.entry.js +0 -67
  613. package/dist/elements/p-d6d1e65f.entry.js +0 -1
  614. package/dist/elements/p-d9462b66.entry.js +0 -1
  615. package/dist/elements/p-e2e0fee9.entry.js +0 -1
  616. package/dist/elements/p-e642b266.entry.js +0 -1
  617. package/dist/elements/p-e953934f.entry.js +0 -1
  618. package/dist/elements/p-f0474f46.js +0 -1
  619. package/dist/elements/p-f10a94f6.entry.js +0 -1
  620. package/dist/elements/p-f2426182.entry.js +0 -1
  621. package/dist/elements/p-f327fd21.js +0 -1
  622. package/dist/elements/p-f84987ee.js +0 -1
  623. package/dist/elements/p-f8a3367d.entry.js +0 -1
  624. package/dist/esm/focus-visible-edb28f19.js +0 -43
  625. package/dist/esm/framework-delegate-9cd8048f.js +0 -34
  626. package/dist/esm/ion-action-sheet.entry.js +0 -261
  627. package/dist/esm/ion-note.entry.js +0 -25
  628. package/dist/esm/ion-select-popover.entry.js +0 -31
  629. package/dist/esm/spinner-configs-aaf2a1a9.js +0 -110
  630. package/dist/esm/swipe-back-d84cfc8a.js +0 -50
  631. package/dist/esm/test-component.entry.js +0 -9
  632. package/dist/types/test/TestComponent.d.ts +0 -2
  633. package/dist/types/test/mockPodOS.d.ts +0 -11
  634. package/dist/types/test/renderFunctionalComponent.d.ts +0 -1
@@ -1,14 +1,19 @@
1
1
  'use strict';
2
2
 
3
- const helpers = require('./helpers-398ced09.js');
3
+ const index = require('./index-9fca5d6f.js');
4
+ const helpers = require('./helpers-cb08f5ae.js');
5
+ require('./index-b2a479e4.js');
4
6
 
7
+ /*!
8
+ * (C) Ionic http://ionicframework.com - MIT License
9
+ */
5
10
  const cloneMap = new WeakMap();
6
- const relocateInput = (componentEl, inputEl, shouldRelocate, inputRelativeY = 0) => {
11
+ const relocateInput = (componentEl, inputEl, shouldRelocate, inputRelativeY = 0, disabledClonedInput = false) => {
7
12
  if (cloneMap.has(componentEl) === shouldRelocate) {
8
13
  return;
9
14
  }
10
15
  if (shouldRelocate) {
11
- addClone(componentEl, inputEl, inputRelativeY);
16
+ addClone(componentEl, inputEl, inputRelativeY, disabledClonedInput);
12
17
  }
13
18
  else {
14
19
  removeClone(componentEl, inputEl);
@@ -17,7 +22,7 @@ const relocateInput = (componentEl, inputEl, shouldRelocate, inputRelativeY = 0)
17
22
  const isFocused = (input) => {
18
23
  return input === input.getRootNode().activeElement;
19
24
  };
20
- const addClone = (componentEl, inputEl, inputRelativeY) => {
25
+ const addClone = (componentEl, inputEl, inputRelativeY, disabledClonedInput = false) => {
21
26
  // this allows for the actual input to receive the focus from
22
27
  // the user's touch event, but before it receives focus, it
23
28
  // moves the actual input to a location that will not screw
@@ -32,6 +37,21 @@ const addClone = (componentEl, inputEl, inputRelativeY) => {
32
37
  const clonedEl = inputEl.cloneNode(false);
33
38
  clonedEl.classList.add('cloned-input');
34
39
  clonedEl.tabIndex = -1;
40
+ /**
41
+ * Making the cloned input disabled prevents
42
+ * Chrome for Android from still scrolling
43
+ * the entire page since this cloned input
44
+ * will briefly be hidden by the keyboard
45
+ * even though it is not focused.
46
+ *
47
+ * This is not needed on iOS. While this
48
+ * does not cause functional issues on iOS,
49
+ * the input still appears slightly dimmed even
50
+ * if we set opacity: 1.
51
+ */
52
+ if (disabledClonedInput) {
53
+ clonedEl.disabled = true;
54
+ }
35
55
  parentEl.appendChild(clonedEl);
36
56
  cloneMap.set(componentEl, clonedEl);
37
57
  const doc = componentEl.ownerDocument;
@@ -49,9 +69,14 @@ const removeClone = (componentEl, inputEl) => {
49
69
  inputEl.style.transform = '';
50
70
  };
51
71
 
72
+ /*!
73
+ * (C) Ionic http://ionicframework.com - MIT License
74
+ */
52
75
  const enableHideCaretOnScroll = (componentEl, inputEl, scrollEl) => {
53
76
  if (!scrollEl || !inputEl) {
54
- return () => { return; };
77
+ return () => {
78
+ return;
79
+ };
55
80
  }
56
81
  const scrollHideCaret = (shouldHideCaret) => {
57
82
  if (isFocused(inputEl)) {
@@ -71,6 +96,9 @@ const enableHideCaretOnScroll = (componentEl, inputEl, scrollEl) => {
71
96
  };
72
97
  };
73
98
 
99
+ /*!
100
+ * (C) Ionic http://ionicframework.com - MIT License
101
+ */
74
102
  const SKIP_SELECTOR = 'input, textarea, [no-blur], [contenteditable]';
75
103
  const enableInputBlurring = () => {
76
104
  let focused = true;
@@ -105,7 +133,7 @@ const enableInputBlurring = () => {
105
133
  return;
106
134
  }
107
135
  focused = false;
108
- // TODO: find a better way, why 50ms?
136
+ // TODO FW-2796: find a better way, why 50ms?
109
137
  setTimeout(() => {
110
138
  if (!focused) {
111
139
  active.blur();
@@ -122,9 +150,13 @@ const enableInputBlurring = () => {
122
150
  };
123
151
  };
124
152
 
153
+ /*!
154
+ * (C) Ionic http://ionicframework.com - MIT License
155
+ */
125
156
  const SCROLL_ASSIST_SPEED = 0.3;
126
157
  const getScrollData = (componentEl, contentEl, keyboardHeight) => {
127
- const itemEl = componentEl.closest('ion-item,[ion-item]') || componentEl;
158
+ var _a;
159
+ const itemEl = (_a = componentEl.closest('ion-item,[ion-item]')) !== null && _a !== void 0 ? _a : componentEl;
128
160
  return calcScrollData(itemEl.getBoundingClientRect(), contentEl.getBoundingClientRect(), keyboardHeight, componentEl.ownerDocument.defaultView.innerHeight);
129
161
  };
130
162
  const calcScrollData = (inputRect, contentRect, keyboardHeight, platformHeight) => {
@@ -141,11 +173,7 @@ const calcScrollData = (inputRect, contentRect, keyboardHeight, platformHeight)
141
173
  const distanceToBottom = safeAreaBottom - inputBottom;
142
174
  const distanceToTop = safeAreaTop - inputTop;
143
175
  // desiredScrollAmount is the negated distance to the safe area according to our calculations.
144
- const desiredScrollAmount = Math.round((distanceToBottom < 0)
145
- ? -distanceToBottom
146
- : (distanceToTop > 0)
147
- ? -distanceToTop
148
- : 0);
176
+ const desiredScrollAmount = Math.round(distanceToBottom < 0 ? -distanceToBottom : distanceToTop > 0 ? -distanceToTop : 0);
149
177
  // our calculations make some assumptions that aren't always true, like the keyboard being closed when an input
150
178
  // gets focus, so make sure we don't scroll the input above the visible area
151
179
  const scrollAmount = Math.min(desiredScrollAmount, inputTop - visibleAreaTop);
@@ -156,11 +184,14 @@ const calcScrollData = (inputRect, contentRect, keyboardHeight, platformHeight)
156
184
  scrollAmount,
157
185
  scrollDuration,
158
186
  scrollPadding: keyboardHeight,
159
- inputSafeY: -(inputTop - safeAreaTop) + 4
187
+ inputSafeY: -(inputTop - safeAreaTop) + 4,
160
188
  };
161
189
  };
162
190
 
163
- const enableScrollAssist = (componentEl, inputEl, contentEl, footerEl, keyboardHeight) => {
191
+ /*!
192
+ * (C) Ionic http://ionicframework.com - MIT License
193
+ */
194
+ const enableScrollAssist = (componentEl, inputEl, contentEl, footerEl, keyboardHeight, disableClonedInput = false) => {
164
195
  let coord;
165
196
  const touchStart = (ev) => {
166
197
  coord = helpers.pointerCoord(ev);
@@ -175,19 +206,18 @@ const enableScrollAssist = (componentEl, inputEl, contentEl, footerEl, keyboardH
175
206
  // focus this input if the pointer hasn't moved XX pixels
176
207
  // and the input doesn't already have focus
177
208
  if (!hasPointerMoved(6, coord, endCoord) && !isFocused(inputEl)) {
178
- ev.stopPropagation();
179
209
  // begin the input focus process
180
- jsSetFocus(componentEl, inputEl, contentEl, footerEl, keyboardHeight);
210
+ jsSetFocus(componentEl, inputEl, contentEl, footerEl, keyboardHeight, disableClonedInput);
181
211
  }
182
212
  };
183
- componentEl.addEventListener('touchstart', touchStart, true);
213
+ componentEl.addEventListener('touchstart', touchStart, { capture: true, passive: true });
184
214
  componentEl.addEventListener('touchend', touchEnd, true);
185
215
  return () => {
186
216
  componentEl.removeEventListener('touchstart', touchStart, true);
187
217
  componentEl.removeEventListener('touchend', touchEnd, true);
188
218
  };
189
219
  };
190
- const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHeight) => {
220
+ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHeight, disableClonedInput = false) => {
191
221
  if (!contentEl && !footerEl) {
192
222
  return;
193
223
  }
@@ -201,7 +231,7 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
201
231
  // temporarily move the focus to the focus holder so the browser
202
232
  // doesn't freak out while it's trying to get the input in place
203
233
  // at this point the native text input still does not have focus
204
- relocateInput(componentEl, inputEl, true, scrollData.inputSafeY);
234
+ relocateInput(componentEl, inputEl, true, scrollData.inputSafeY, disableClonedInput);
205
235
  inputEl.focus();
206
236
  /**
207
237
  * Relocating/Focusing input causes the
@@ -209,7 +239,6 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
209
239
  * manually fire one here.
210
240
  */
211
241
  helpers.raf(() => componentEl.click());
212
- /* tslint:disable-next-line */
213
242
  if (typeof window !== 'undefined') {
214
243
  let scrollContentTimeout;
215
244
  const scrollContent = async () => {
@@ -221,7 +250,7 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
221
250
  window.removeEventListener('ionKeyboardDidShow', scrollContent);
222
251
  // scroll the input into place
223
252
  if (contentEl) {
224
- await contentEl.scrollByPoint(0, scrollData.scrollAmount, scrollData.scrollDuration);
253
+ await index.scrollByPoint(contentEl, 0, scrollData.scrollAmount, scrollData.scrollDuration);
225
254
  }
226
255
  // the scroll view is in the correct position now
227
256
  // give the native text input focus
@@ -234,7 +263,7 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
234
263
  window.addEventListener('ionKeyboardDidShow', scrollContent);
235
264
  };
236
265
  if (contentEl) {
237
- const scrollEl = await contentEl.getScrollElement();
266
+ const scrollEl = await index.getScrollElement(contentEl);
238
267
  /**
239
268
  * scrollData will only consider the amount we need
240
269
  * to scroll in order to properly bring the input
@@ -248,7 +277,7 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
248
277
  * bandwidth to become available.
249
278
  */
250
279
  const totalScrollAmount = scrollEl.scrollHeight - scrollEl.clientHeight;
251
- if (scrollData.scrollAmount > (totalScrollAmount - scrollEl.scrollTop)) {
280
+ if (scrollData.scrollAmount > totalScrollAmount - scrollEl.scrollTop) {
252
281
  /**
253
282
  * On iOS devices, the system will show a "Passwords" bar above the keyboard
254
283
  * after the initial keyboard is shown. This prevents the webview from resizing
@@ -277,14 +306,17 @@ const jsSetFocus = async (componentEl, inputEl, contentEl, footerEl, keyboardHei
277
306
  };
278
307
  const hasPointerMoved = (threshold, startCoord, endCoord) => {
279
308
  if (startCoord && endCoord) {
280
- const deltaX = (startCoord.x - endCoord.x);
281
- const deltaY = (startCoord.y - endCoord.y);
309
+ const deltaX = startCoord.x - endCoord.x;
310
+ const deltaY = startCoord.y - endCoord.y;
282
311
  const distance = deltaX * deltaX + deltaY * deltaY;
283
- return distance > (threshold * threshold);
312
+ return distance > threshold * threshold;
284
313
  }
285
314
  return false;
286
315
  };
287
316
 
317
+ /*!
318
+ * (C) Ionic http://ionicframework.com - MIT License
319
+ */
288
320
  const PADDING_TIMER_KEY = '$ionPaddingTimer';
289
321
  const enableScrollPadding = (keyboardHeight) => {
290
322
  const doc = document;
@@ -302,18 +334,17 @@ const enableScrollPadding = (keyboardHeight) => {
302
334
  };
303
335
  };
304
336
  const setScrollPadding = (input, keyboardHeight) => {
337
+ var _a, _b;
305
338
  if (input.tagName !== 'INPUT') {
306
339
  return;
307
340
  }
308
341
  if (input.parentElement && input.parentElement.tagName === 'ION-INPUT') {
309
342
  return;
310
343
  }
311
- if (input.parentElement &&
312
- input.parentElement.parentElement &&
313
- input.parentElement.parentElement.tagName === 'ION-SEARCHBAR') {
344
+ if (((_b = (_a = input.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.tagName) === 'ION-SEARCHBAR') {
314
345
  return;
315
346
  }
316
- const el = input.closest('ion-content');
347
+ const el = index.findClosestIonContent(input);
317
348
  if (el === null) {
318
349
  return;
319
350
  }
@@ -331,24 +362,34 @@ const setScrollPadding = (input, keyboardHeight) => {
331
362
  }
332
363
  };
333
364
 
365
+ /*!
366
+ * (C) Ionic http://ionicframework.com - MIT License
367
+ */
334
368
  const INPUT_BLURRING = true;
335
369
  const SCROLL_PADDING = true;
336
- const startInputShims = (config) => {
370
+ const startInputShims = (config, platform) => {
337
371
  const doc = document;
372
+ const isIOS = platform === 'ios';
373
+ const isAndroid = platform === 'android';
374
+ /**
375
+ * Hide Caret and Input Blurring are needed on iOS.
376
+ * Scroll Assist and Scroll Padding are needed on iOS and Android
377
+ * with Chrome web browser (not Chrome webview).
378
+ */
338
379
  const keyboardHeight = config.getNumber('keyboardHeight', 290);
339
380
  const scrollAssist = config.getBoolean('scrollAssist', true);
340
- const hideCaret = config.getBoolean('hideCaretOnScroll', true);
341
- const inputBlurring = config.getBoolean('inputBlurring', true);
381
+ const hideCaret = config.getBoolean('hideCaretOnScroll', isIOS);
382
+ const inputBlurring = config.getBoolean('inputBlurring', isIOS);
342
383
  const scrollPadding = config.getBoolean('scrollPadding', true);
343
384
  const inputs = Array.from(doc.querySelectorAll('ion-input, ion-textarea'));
344
385
  const hideCaretMap = new WeakMap();
345
386
  const scrollAssistMap = new WeakMap();
346
387
  const registerInput = async (componentEl) => {
347
- await new Promise(resolve => helpers.componentOnReady(componentEl, resolve));
388
+ await new Promise((resolve) => helpers.componentOnReady(componentEl, resolve));
348
389
  const inputRoot = componentEl.shadowRoot || componentEl;
349
390
  const inputEl = inputRoot.querySelector('input') || inputRoot.querySelector('textarea');
350
- const scrollEl = componentEl.closest('ion-content');
351
- const footerEl = (!scrollEl) ? componentEl.closest('ion-footer') : null;
391
+ const scrollEl = index.findClosestIonContent(componentEl);
392
+ const footerEl = !scrollEl ? componentEl.closest('ion-footer') : null;
352
393
  if (!inputEl) {
353
394
  return;
354
395
  }
@@ -356,8 +397,18 @@ const startInputShims = (config) => {
356
397
  const rmFn = enableHideCaretOnScroll(componentEl, inputEl, scrollEl);
357
398
  hideCaretMap.set(componentEl, rmFn);
358
399
  }
359
- if ((!!scrollEl || !!footerEl) && scrollAssist && !scrollAssistMap.has(componentEl)) {
360
- const rmFn = enableScrollAssist(componentEl, inputEl, scrollEl, footerEl, keyboardHeight);
400
+ /**
401
+ * date/datetime-locale inputs on mobile devices show date picker
402
+ * overlays instead of keyboards. As a result, scroll assist is
403
+ * not needed. This also works around a bug in iOS <16 where
404
+ * scroll assist causes the browser to lock up. See FW-1997.
405
+ */
406
+ const isDateInput = inputEl.type === 'date' || inputEl.type === 'datetime-local';
407
+ if (!isDateInput &&
408
+ (!!scrollEl || !!footerEl) &&
409
+ scrollAssist &&
410
+ !scrollAssistMap.has(componentEl)) {
411
+ const rmFn = enableScrollAssist(componentEl, inputEl, scrollEl, footerEl, keyboardHeight, isAndroid);
361
412
  scrollAssistMap.set(componentEl, rmFn);
362
413
  }
363
414
  };
@@ -0,0 +1,205 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-eaa0d16e.js');
6
+ const ionicGlobal = require('./ionic-global-f2d95fd3.js');
7
+
8
+ const accordionGroupIosCss = ":host{display:block}:host(.accordion-group-expand-inset){margin-left:16px;margin-right:16px;margin-top:16px;margin-bottom:16px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.accordion-group-expand-inset){margin-left:unset;margin-right:unset;-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px}}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanding),:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanded){border-bottom:none}";
9
+
10
+ const accordionGroupMdCss = ":host{display:block}:host(.accordion-group-expand-inset){margin-left:16px;margin-right:16px;margin-top:16px;margin-bottom:16px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.accordion-group-expand-inset){margin-left:unset;margin-right:unset;-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:16px;margin-inline-end:16px}}:host(.accordion-group-expand-inset) ::slotted(ion-accordion){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanding),:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-expanded){margin-left:0;margin-right:0;margin-top:16px;margin-bottom:16px;border-radius:6px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-previous){border-bottom-right-radius:6px;border-bottom-left-radius:6px}:host-context([dir=rtl]):host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-previous),:host-context([dir=rtl]).accordion-group-expand-inset ::slotted(ion-accordion.accordion-previous){border-bottom-right-radius:6px;border-bottom-left-radius:6px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-next){border-top-left-radius:6px;border-top-right-radius:6px}:host-context([dir=rtl]):host(.accordion-group-expand-inset) ::slotted(ion-accordion.accordion-next),:host-context([dir=rtl]).accordion-group-expand-inset ::slotted(ion-accordion.accordion-next){border-top-left-radius:6px;border-top-right-radius:6px}:host(.accordion-group-expand-inset) ::slotted(ion-accordion):first-of-type{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}";
11
+
12
+ const AccordionGroup = class {
13
+ constructor(hostRef) {
14
+ index.registerInstance(this, hostRef);
15
+ this.ionChange = index.createEvent(this, "ionChange", 7);
16
+ /**
17
+ * If `true`, all accordions inside of the
18
+ * accordion group will animate when expanding
19
+ * or collapsing.
20
+ */
21
+ this.animated = true;
22
+ /**
23
+ * If `true`, the accordion group cannot be interacted with.
24
+ */
25
+ this.disabled = false;
26
+ /**
27
+ * If `true`, the accordion group cannot be interacted with,
28
+ * but does not alter the opacity.
29
+ */
30
+ this.readonly = false;
31
+ /**
32
+ * Describes the expansion behavior for each accordion.
33
+ * Possible values are `"compact"` and `"inset"`.
34
+ * Defaults to `"compact"`.
35
+ */
36
+ this.expand = 'compact';
37
+ }
38
+ valueChanged() {
39
+ const { value, multiple } = this;
40
+ /**
41
+ * If accordion group does not
42
+ * let multiple accordions be open
43
+ * at once, but user passes an array
44
+ * just grab the first value.
45
+ */
46
+ if (!multiple && Array.isArray(value)) {
47
+ this.value = value[0];
48
+ }
49
+ else {
50
+ this.ionChange.emit({ value: this.value });
51
+ }
52
+ }
53
+ async disabledChanged() {
54
+ const { disabled } = this;
55
+ const accordions = await this.getAccordions();
56
+ for (const accordion of accordions) {
57
+ accordion.disabled = disabled;
58
+ }
59
+ }
60
+ async readonlyChanged() {
61
+ const { readonly } = this;
62
+ const accordions = await this.getAccordions();
63
+ for (const accordion of accordions) {
64
+ accordion.readonly = readonly;
65
+ }
66
+ }
67
+ async onKeydown(ev) {
68
+ const activeElement = document.activeElement;
69
+ if (!activeElement) {
70
+ return;
71
+ }
72
+ /**
73
+ * Make sure focus is in the header, not the body, of the accordion. This ensures
74
+ * that if there are any interactable elements in the body, their keyboard
75
+ * interaction doesn't get stolen by the accordion. Example: using up/down keys
76
+ * in ion-textarea.
77
+ */
78
+ const activeAccordionHeader = activeElement.closest('ion-accordion [slot="header"]');
79
+ if (!activeAccordionHeader) {
80
+ return;
81
+ }
82
+ const accordionEl = activeElement.tagName === 'ION-ACCORDION' ? activeElement : activeElement.closest('ion-accordion');
83
+ if (!accordionEl) {
84
+ return;
85
+ }
86
+ const closestGroup = accordionEl.closest('ion-accordion-group');
87
+ if (closestGroup !== this.el) {
88
+ return;
89
+ }
90
+ // If the active accordion is not in the current array of accordions, do not do anything
91
+ const accordions = await this.getAccordions();
92
+ const startingIndex = accordions.findIndex((a) => a === accordionEl);
93
+ if (startingIndex === -1) {
94
+ return;
95
+ }
96
+ let accordion;
97
+ if (ev.key === 'ArrowDown') {
98
+ accordion = this.findNextAccordion(accordions, startingIndex);
99
+ }
100
+ else if (ev.key === 'ArrowUp') {
101
+ accordion = this.findPreviousAccordion(accordions, startingIndex);
102
+ }
103
+ else if (ev.key === 'Home') {
104
+ accordion = accordions[0];
105
+ }
106
+ else if (ev.key === 'End') {
107
+ accordion = accordions[accordions.length - 1];
108
+ }
109
+ if (accordion !== undefined && accordion !== activeElement) {
110
+ accordion.focus();
111
+ }
112
+ }
113
+ async componentDidLoad() {
114
+ if (this.disabled) {
115
+ this.disabledChanged();
116
+ }
117
+ if (this.readonly) {
118
+ this.readonlyChanged();
119
+ }
120
+ }
121
+ /**
122
+ * @internal
123
+ */
124
+ async requestAccordionToggle(accordionValue, accordionExpand) {
125
+ const { multiple, value, readonly, disabled } = this;
126
+ if (readonly || disabled) {
127
+ return;
128
+ }
129
+ if (accordionExpand) {
130
+ /**
131
+ * If group accepts multiple values
132
+ * check to see if value is already in
133
+ * in values array. If not, add it
134
+ * to the array.
135
+ */
136
+ if (multiple) {
137
+ const groupValue = value !== null && value !== void 0 ? value : [];
138
+ const processedValue = Array.isArray(groupValue) ? groupValue : [groupValue];
139
+ const valueExists = processedValue.find((v) => v === accordionValue);
140
+ if (valueExists === undefined && accordionValue !== undefined) {
141
+ this.value = [...processedValue, accordionValue];
142
+ }
143
+ }
144
+ else {
145
+ this.value = accordionValue;
146
+ }
147
+ }
148
+ else {
149
+ /**
150
+ * If collapsing accordion, either filter the value
151
+ * out of the values array or unset the value.
152
+ */
153
+ if (multiple) {
154
+ const groupValue = value !== null && value !== void 0 ? value : [];
155
+ const processedValue = Array.isArray(groupValue) ? groupValue : [groupValue];
156
+ this.value = processedValue.filter((v) => v !== accordionValue);
157
+ }
158
+ else {
159
+ this.value = undefined;
160
+ }
161
+ }
162
+ }
163
+ findNextAccordion(accordions, startingIndex) {
164
+ const nextAccordion = accordions[startingIndex + 1];
165
+ if (nextAccordion === undefined) {
166
+ return accordions[0];
167
+ }
168
+ return nextAccordion;
169
+ }
170
+ findPreviousAccordion(accordions, startingIndex) {
171
+ const prevAccordion = accordions[startingIndex - 1];
172
+ if (prevAccordion === undefined) {
173
+ return accordions[accordions.length - 1];
174
+ }
175
+ return prevAccordion;
176
+ }
177
+ /**
178
+ * @internal
179
+ */
180
+ async getAccordions() {
181
+ return Array.from(this.el.querySelectorAll(':scope > ion-accordion'));
182
+ }
183
+ render() {
184
+ const { disabled, readonly, expand } = this;
185
+ const mode = ionicGlobal.getIonMode(this);
186
+ return (index.h(index.Host, { class: {
187
+ [mode]: true,
188
+ 'accordion-group-disabled': disabled,
189
+ 'accordion-group-readonly': readonly,
190
+ [`accordion-group-expand-${expand}`]: true,
191
+ }, role: "presentation" }, index.h("slot", null)));
192
+ }
193
+ get el() { return index.getElement(this); }
194
+ static get watchers() { return {
195
+ "value": ["valueChanged"],
196
+ "disabled": ["disabledChanged"],
197
+ "readonly": ["readonlyChanged"]
198
+ }; }
199
+ };
200
+ AccordionGroup.style = {
201
+ ios: accordionGroupIosCss,
202
+ md: accordionGroupMdCss
203
+ };
204
+
205
+ exports.ion_accordion_group = AccordionGroup;