@amwaljs/checkout-button 0.3.1 → 0.3.2

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 (888) hide show
  1. package/README.md +1 -1
  2. package/dist/checkout/checkout.esm.js +1 -1
  3. package/dist/checkout/{p-c03b6161.entry.js → p-00045a8c.entry.js} +1 -1
  4. package/dist/checkout/p-01bbe74f.entry.js +1 -0
  5. package/dist/checkout/p-051412fa.entry.js +1 -0
  6. package/dist/checkout/p-09cbe586.entry.js +4 -0
  7. package/dist/checkout/{p-439ad699.entry.js → p-0a85a01f.entry.js} +2 -2
  8. package/dist/checkout/{p-d5652cd4.entry.js → p-0bbfeb3c.entry.js} +1 -1
  9. package/dist/checkout/{p-4ae1a390.entry.js → p-0d96b482.entry.js} +1 -1
  10. package/dist/checkout/{p-DUa_5Mmb.js → p-0f03cd28.js} +2 -2
  11. package/dist/checkout/p-104d7733.entry.js +1 -0
  12. package/dist/checkout/{p-8036cf49.entry.js → p-10ad151a.entry.js} +5 -5
  13. package/dist/checkout/p-112455b1.js +1 -0
  14. package/dist/checkout/p-11beffea.entry.js +1 -0
  15. package/dist/checkout/p-13245fd4.js +1 -0
  16. package/dist/checkout/p-13741a94.entry.js +1 -0
  17. package/dist/checkout/p-14ea2c82.entry.js +1 -0
  18. package/dist/checkout/p-167dc7a7.entry.js +4 -0
  19. package/dist/checkout/p-1a749b59.entry.js +1 -0
  20. package/dist/checkout/p-1c718939.entry.js +1 -0
  21. package/dist/checkout/{p-11205aeb.entry.js → p-1cbb13f2.entry.js} +1 -1
  22. package/dist/checkout/{p-46ff73b3.entry.js → p-20df5234.entry.js} +1 -1
  23. package/dist/checkout/p-24068b1c.entry.js +1 -0
  24. package/dist/checkout/{p-7006753a.entry.js → p-28ccecc7.entry.js} +2 -2
  25. package/dist/checkout/p-361649c3.js +4 -0
  26. package/dist/{components/p-DoR35tr_.js → checkout/p-39ad94cf.js} +2 -2
  27. package/dist/checkout/p-3b75b22a.js +5 -0
  28. package/dist/checkout/p-3b80783d.js +8 -0
  29. package/dist/checkout/p-3d3eefc3.js +4 -0
  30. package/dist/checkout/p-3e1e3453.js +4 -0
  31. package/dist/checkout/p-3e681e57.js +4 -0
  32. package/dist/checkout/{p-bf933eb6.entry.js → p-3e8da476.entry.js} +1 -1
  33. package/dist/checkout/{p-1dc08181.entry.js → p-4028c0d2.entry.js} +1 -1
  34. package/dist/checkout/p-44c91c42.entry.js +1 -0
  35. package/dist/checkout/p-464f5a60.entry.js +1 -0
  36. package/dist/checkout/p-46b7ee7f.entry.js +1 -0
  37. package/dist/checkout/p-48784250.entry.js +1 -0
  38. package/dist/{components/p-wiOwkFtc.js → checkout/p-4be20bf2.js} +1 -1
  39. package/dist/{components/p-Dl_WhQZu.js → checkout/p-4f78d3a0.js} +2 -2
  40. package/dist/checkout/{p-4da4ecc4.entry.js → p-529bce3f.entry.js} +1 -1
  41. package/dist/checkout/p-536a0294.js +4 -0
  42. package/dist/checkout/{p-eae2d3f2.entry.js → p-5eecd5ef.entry.js} +1 -1
  43. package/dist/checkout/p-64257c8d.entry.js +1 -0
  44. package/dist/checkout/{p-5903b3af.entry.js → p-64bd1dd3.entry.js} +1 -1
  45. package/dist/checkout/{p-9b7d7231.entry.js → p-68a4caba.entry.js} +1 -1
  46. package/dist/checkout/{p-978b3762.entry.js → p-69242ed6.entry.js} +1 -1
  47. package/dist/checkout/{p-62b7c8b0.entry.js → p-6d886d7e.entry.js} +1 -1
  48. package/dist/checkout/{p-ofaUly0p.js → p-6fa979e3.js} +2 -2
  49. package/dist/checkout/p-6fb474f3.entry.js +1 -0
  50. package/dist/checkout/p-77104220.js +7 -0
  51. package/dist/checkout/{p-aba43d04.entry.js → p-79ec3e4b.entry.js} +1 -1
  52. package/dist/checkout/{p-cd2c344b.entry.js → p-7b51bf67.entry.js} +2 -2
  53. package/dist/checkout/p-7f0004c9.js +4 -0
  54. package/dist/checkout/p-7fe50ab4.entry.js +1 -0
  55. package/dist/checkout/p-880b451c.entry.js +4 -0
  56. package/dist/checkout/p-886dad62.entry.js +1 -0
  57. package/dist/checkout/p-886e8746.entry.js +1 -0
  58. package/dist/checkout/p-88abdf59.js +4 -0
  59. package/dist/checkout/{p-f845e91b.entry.js → p-8a97a411.entry.js} +1 -1
  60. package/dist/checkout/p-8af3c6cc.entry.js +1 -0
  61. package/dist/checkout/{p-8b015c21.entry.js → p-8c022f5d.entry.js} +1 -1
  62. package/dist/checkout/{p-56e307eb.entry.js → p-91855eae.entry.js} +1 -1
  63. package/dist/checkout/{p-ca257d45.entry.js → p-9185e55b.entry.js} +1 -1
  64. package/dist/checkout/{p-4b34896c.entry.js → p-926eda98.entry.js} +1 -1
  65. package/dist/checkout/p-93e5b313.entry.js +4 -0
  66. package/dist/checkout/{p-4a86b731.entry.js → p-97024acb.entry.js} +1 -1
  67. package/dist/checkout/p-99e447f9.js +1 -0
  68. package/dist/{components/p-BgOwfqIY.js → checkout/p-9b519de5.js} +2 -2
  69. package/dist/checkout/{p-b8245f6a.entry.js → p-9b65a6e5.entry.js} +1 -1
  70. package/dist/checkout/{p-53ae9dd0.entry.js → p-9cc1fdfb.entry.js} +1 -1
  71. package/dist/checkout/{p-8fc1287a.entry.js → p-9f26fb71.entry.js} +1 -1
  72. package/dist/checkout/p-9f41a631.entry.js +1 -0
  73. package/dist/checkout/{p-5f005b5e.entry.js → p-a2ce8858.entry.js} +1 -1
  74. package/dist/checkout/{p-e4d0702d.entry.js → p-a3fca65c.entry.js} +1 -1
  75. package/dist/checkout/{p-d370e756.entry.js → p-a6056eb1.entry.js} +2 -2
  76. package/dist/checkout/{p-c929d6ea.entry.js → p-a7b2cbb9.entry.js} +1 -1
  77. package/dist/{components/p-Dwo-QLgs.js → checkout/p-ab16e6ce.js} +1 -1
  78. package/dist/checkout/{p-63db3363.entry.js → p-ab9a18c4.entry.js} +1 -1
  79. package/dist/checkout/p-b038db20.js +4 -0
  80. package/dist/checkout/p-b4ad8642.entry.js +1 -0
  81. package/dist/checkout/p-b4cf78ad.entry.js +1 -0
  82. package/dist/checkout/p-b7be2ec0.js +4 -0
  83. package/dist/checkout/p-b84d9e44.js +4 -0
  84. package/dist/{components/p-CwRU9ccI.js → checkout/p-b8fdd517.js} +1 -1
  85. package/dist/checkout/{p-d799009b.entry.js → p-b9d8ab12.entry.js} +1 -1
  86. package/dist/checkout/p-bb1f698e.js +4 -0
  87. package/dist/checkout/p-bd17be25.js +4 -0
  88. package/dist/checkout/p-bd4df0bc.entry.js +1 -0
  89. package/dist/checkout/p-c152bdea.js +4 -0
  90. package/dist/checkout/{p-f22v7XAM.js → p-c30e2b28.js} +2 -2
  91. package/dist/checkout/{p-c2296aa1.entry.js → p-c61a3d5d.entry.js} +1 -1
  92. package/dist/checkout/p-c6ee4bb6.entry.js +1 -0
  93. package/dist/checkout/p-c771a565.entry.js +1 -0
  94. package/dist/checkout/{p-3c9a8bee.entry.js → p-c82b2823.entry.js} +1 -1
  95. package/dist/checkout/p-c8f7d1b5.entry.js +1 -0
  96. package/dist/checkout/p-ceef30cd.entry.js +1 -0
  97. package/dist/checkout/p-d5733333.entry.js +1 -0
  98. package/dist/checkout/p-d5bba69c.entry.js +1 -0
  99. package/dist/checkout/p-d60b2328.js +4 -0
  100. package/dist/checkout/p-d60e05e2.entry.js +1 -0
  101. package/dist/checkout/p-d6b04157.entry.js +1 -0
  102. package/dist/checkout/p-d7a430bf.js +2 -0
  103. package/dist/checkout/{p-B3WORC1a.js → p-d839c693.js} +1 -1
  104. package/dist/checkout/{p-141f2eab.entry.js → p-d9dfb3ae.entry.js} +3 -3
  105. package/dist/checkout/p-dc51d318.js +5 -0
  106. package/dist/checkout/p-ddbe30b8.entry.js +1 -0
  107. package/dist/checkout/p-de418dd1.entry.js +1 -0
  108. package/dist/checkout/{p-b4000357.entry.js → p-defa5f72.entry.js} +2 -2
  109. package/dist/checkout/{p-b90c064e.entry.js → p-df0fa5e1.entry.js} +2 -2
  110. package/dist/checkout/{p-c8740acc.entry.js → p-e0f073f1.entry.js} +3 -3
  111. package/dist/checkout/p-e237d611.entry.js +1 -0
  112. package/dist/checkout/p-ea71fb8d.entry.js +1 -0
  113. package/dist/checkout/{p-95563c4c.entry.js → p-eda93a0b.entry.js} +1 -1
  114. package/dist/checkout/p-eee05053.entry.js +1 -0
  115. package/dist/checkout/{p-95431a73.entry.js → p-f8460dc4.entry.js} +1 -1
  116. package/dist/checkout/p-f875507d.entry.js +1 -0
  117. package/dist/checkout/p-faf06441.js +4 -0
  118. package/dist/checkout/p-fb147065.entry.js +1 -0
  119. package/dist/checkout/{p-af32124b.entry.js → p-fb45cdd1.entry.js} +1 -1
  120. package/dist/cjs/_commonjsHelpers-537d719a.js +20 -0
  121. package/dist/cjs/amwal-checkout-button_5.cjs.entry.js +1298 -2881
  122. package/dist/cjs/amwal-installments-guide.cjs.entry.js +42 -43
  123. package/dist/cjs/amwal-pos.cjs.entry.js +3180 -3452
  124. package/dist/cjs/amwal-widget-modal.cjs.entry.js +162 -175
  125. package/dist/cjs/amwal-widget.cjs.entry.js +314 -343
  126. package/dist/cjs/{animation-BhN-MT4J.js → animation-26241cb2.js} +2 -2
  127. package/dist/cjs/{app-globals-NtXImkuk.js → app-globals-42a13029.js} +1 -1
  128. package/dist/cjs/{ar-CbT6TM-Q.js → ar-3a6829a4.js} +10 -4
  129. package/dist/cjs/{capacitor-CqhugS19.js → capacitor-a9365f60.js} +1 -1
  130. package/dist/cjs/checkout.cjs.js +19 -16
  131. package/dist/cjs/{data-UgkxeXMB.js → data-19081291.js} +1 -1
  132. package/dist/cjs/{form-controller-DRf0gBOg.js → form-controller-3ffb27b1.js} +1 -1
  133. package/dist/cjs/{framework-delegate-D-6PUvOi.js → framework-delegate-ab2cc190.js} +1 -1
  134. package/dist/cjs/{gesture-controller-IMq9Cgi2.js → gesture-controller-b1c0efac.js} +1 -1
  135. package/dist/cjs/{haptic-CC9tl6g8.js → haptic-80174512.js} +1 -1
  136. package/dist/cjs/{hardware-back-button-C2D2eOk8.js → hardware-back-button-ddfefd22.js} +3 -3
  137. package/dist/cjs/{helpers-B4vhh9gt.js → helpers-72ba682d.js} +4 -1
  138. package/dist/cjs/i18n-18ad02d5.js +13 -0
  139. package/dist/cjs/{index-CKcQE8Zg.js → index-0d0b84fb.js} +4 -3
  140. package/dist/cjs/{index-6eOg4xTk.js → index-2602a653.js} +0 -1
  141. package/dist/cjs/{index-DZA7ogU0.js → index-2cd1a895.js} +4 -4
  142. package/dist/cjs/index-7522b3a9.js +2256 -0
  143. package/dist/cjs/{index-bc_r9XRf.js → index-9b7d2c31.js} +9 -9
  144. package/dist/cjs/{index-q1ImtF5k.js → index-ce06e6a3.js} +3 -3
  145. package/dist/cjs/{index-XMjUjboS.js → index-da554121.js} +3 -3
  146. package/dist/cjs/{input-shims-CCRbO2DB.js → input-shims-1a8ed779.js} +6 -6
  147. package/dist/cjs/{input.utils-CyVgmmWQ.js → input.utils-67143876.js} +3 -3
  148. package/dist/cjs/ion-accordion-group.cjs.entry.js +199 -203
  149. package/dist/cjs/ion-accordion.cjs.entry.js +305 -305
  150. package/dist/cjs/ion-action-sheet_3.cjs.entry.js +695 -705
  151. package/dist/cjs/ion-app.cjs.entry.js +95 -93
  152. package/dist/cjs/ion-avatar.cjs.entry.js +14 -12
  153. package/dist/cjs/ion-back-button.cjs.entry.js +78 -76
  154. package/dist/cjs/ion-backdrop.cjs.entry.js +44 -42
  155. package/dist/cjs/ion-badge.cjs.entry.js +19 -17
  156. package/dist/cjs/ion-breadcrumb.cjs.entry.js +86 -84
  157. package/dist/cjs/ion-breadcrumbs.cjs.entry.js +120 -124
  158. package/dist/cjs/ion-buttons_3.cjs.entry.js +822 -822
  159. package/dist/cjs/ion-card-content.cjs.entry.js +19 -17
  160. package/dist/cjs/ion-card-header.cjs.entry.js +22 -20
  161. package/dist/cjs/ion-card-subtitle.cjs.entry.js +20 -18
  162. package/dist/cjs/ion-card-title.cjs.entry.js +20 -18
  163. package/dist/cjs/ion-card.cjs.entry.js +55 -53
  164. package/dist/cjs/ion-checkbox_7.cjs.entry.js +862 -882
  165. package/dist/cjs/ion-chip.cjs.entry.js +24 -22
  166. package/dist/cjs/ion-col.cjs.entry.js +110 -108
  167. package/dist/cjs/ion-content.cjs.entry.js +376 -374
  168. package/dist/cjs/ion-datetime-button.cjs.entry.js +330 -328
  169. package/dist/cjs/ion-datetime.cjs.entry.js +1547 -1567
  170. package/dist/cjs/ion-fab-button.cjs.entry.js +78 -76
  171. package/dist/cjs/ion-fab-list.cjs.entry.js +31 -31
  172. package/dist/cjs/ion-fab.cjs.entry.js +58 -58
  173. package/dist/cjs/ion-footer.cjs.entry.js +94 -92
  174. package/dist/cjs/ion-grid.cjs.entry.js +17 -15
  175. package/dist/cjs/ion-header.cjs.entry.js +143 -141
  176. package/dist/cjs/ion-icon.cjs.entry.js +104 -112
  177. package/dist/cjs/ion-img.cjs.entry.js +83 -83
  178. package/dist/cjs/ion-infinite-scroll-content.cjs.entry.js +34 -32
  179. package/dist/cjs/ion-infinite-scroll.cjs.entry.js +174 -176
  180. package/dist/cjs/ion-input.cjs.entry.js +447 -453
  181. package/dist/cjs/ion-item-divider.cjs.entry.js +23 -21
  182. package/dist/cjs/ion-item-group.cjs.entry.js +20 -18
  183. package/dist/cjs/ion-item-option.cjs.entry.js +45 -43
  184. package/dist/cjs/ion-item-options.cjs.entry.js +40 -38
  185. package/dist/cjs/ion-item-sliding.cjs.entry.js +391 -391
  186. package/dist/cjs/ion-loading.cjs.entry.js +162 -164
  187. package/dist/cjs/ion-menu-button.cjs.entry.js +60 -58
  188. package/dist/cjs/ion-menu-toggle.cjs.entry.js +36 -34
  189. package/dist/cjs/ion-menu.cjs.entry.js +606 -612
  190. package/dist/cjs/ion-modal.cjs.entry.js +551 -553
  191. package/dist/cjs/ion-nav-link.cjs.entry.js +17 -15
  192. package/dist/cjs/ion-nav.cjs.entry.js +823 -825
  193. package/dist/cjs/ion-note.cjs.entry.js +19 -17
  194. package/dist/cjs/ion-picker-column.cjs.entry.js +327 -327
  195. package/dist/cjs/ion-picker.cjs.entry.js +198 -200
  196. package/dist/cjs/ion-popover.cjs.entry.js +326 -330
  197. package/dist/cjs/ion-progress-bar.cjs.entry.js +44 -42
  198. package/dist/cjs/ion-range.cjs.entry.js +644 -654
  199. package/dist/cjs/ion-refresher-content.cjs.entry.js +53 -51
  200. package/dist/cjs/ion-refresher.cjs.entry.js +586 -586
  201. package/dist/cjs/ion-reorder-group.cjs.entry.js +252 -252
  202. package/dist/cjs/ion-reorder.cjs.entry.js +26 -24
  203. package/dist/cjs/ion-route-redirect.cjs.entry.js +19 -21
  204. package/dist/cjs/ion-route.cjs.entry.js +37 -41
  205. package/dist/cjs/ion-router-link.cjs.entry.js +31 -29
  206. package/dist/cjs/ion-router-outlet.cjs.entry.js +178 -178
  207. package/dist/cjs/ion-router.cjs.entry.js +266 -264
  208. package/dist/cjs/ion-row.cjs.entry.js +12 -10
  209. package/dist/cjs/ion-searchbar.cjs.entry.js +388 -396
  210. package/dist/cjs/ion-segment-button.cjs.entry.js +96 -96
  211. package/dist/cjs/ion-segment.cjs.entry.js +414 -420
  212. package/dist/cjs/ion-select-option.cjs.entry.js +16 -14
  213. package/dist/cjs/ion-select.cjs.entry.js +693 -699
  214. package/dist/cjs/ion-skeleton-text.cjs.entry.js +35 -33
  215. package/dist/cjs/ion-spinner.cjs.entry.js +50 -48
  216. package/dist/cjs/ion-split-pane.cjs.entry.js +120 -124
  217. package/dist/cjs/ion-tab-bar.cjs.entry.js +66 -66
  218. package/dist/cjs/ion-tab-button.cjs.entry.js +82 -80
  219. package/dist/cjs/ion-tab.cjs.entry.js +50 -50
  220. package/dist/cjs/ion-tabs.cjs.entry.js +134 -132
  221. package/dist/cjs/ion-textarea.cjs.entry.js +396 -400
  222. package/dist/cjs/ion-thumbnail.cjs.entry.js +12 -10
  223. package/dist/cjs/ion-title.cjs.entry.js +43 -43
  224. package/dist/cjs/ion-toast.cjs.entry.js +371 -375
  225. package/dist/cjs/ion-toggle.cjs.entry.js +230 -230
  226. package/dist/cjs/ion-toolbar.cjs.entry.js +61 -59
  227. package/dist/cjs/{ionic-global-DRLi5Iq3.js → ionic-global-3915f1f1.js} +55 -58
  228. package/dist/cjs/{ios.transition-D4vyO_a_.js → ios.transition-b9c0b967.js} +5 -5
  229. package/dist/cjs/{keyboard-iyHR2ZF4.js → keyboard-5d4b83b3.js} +3 -3
  230. package/dist/cjs/{keyboard-DuKzsHsS.js → keyboard-bc8ebbf7.js} +1 -1
  231. package/dist/cjs/{keyboard-controller-rH21qC_2.js → keyboard-controller-c6633754.js} +2 -2
  232. package/dist/cjs/loader.cjs.js +19 -8
  233. package/dist/cjs/{md.transition-Dkxy3kpE.js → md.transition-830acbb7.js} +5 -5
  234. package/dist/cjs/{menu-toggle-util-CmPuayU0.js → menu-toggle-util-315c26b3.js} +1 -1
  235. package/dist/cjs/{notch-controller-Dtpow1eD.js → notch-controller-dcf09601.js} +2 -2
  236. package/dist/cjs/{overlays-Bc8tk6t5.js → overlays-08819e3f.js} +6 -6
  237. package/dist/cjs/{refresher.utils-CPl6gciv.js → refresher.utils-e41509f7.js} +3 -3
  238. package/dist/cjs/{status-tap-XtIhF72O.js → status-tap-ec021cb4.js} +4 -4
  239. package/dist/cjs/{swipe-back-C9j0kufI.js → swipe-back-3d3a5129.js} +4 -4
  240. package/dist/collection/collection-manifest.json +8 -8
  241. package/dist/collection/components/amwal-checkout-button/amwal-checkout-button.js +1714 -1888
  242. package/dist/collection/components/amwal-checkout-button/amwal-checkout-button.stories.js +84 -84
  243. package/dist/collection/components/amwal-installments-guide/amwal-installments-guide.js +75 -80
  244. package/dist/collection/components/amwal-installments-guide/amwal-installments-guide.stories.js +25 -25
  245. package/dist/collection/components/amwal-installments-timeline/amwal-installments-timeline.js +506 -569
  246. package/dist/collection/components/amwal-installments-timeline/amwal-installments-timeline.stories.js +80 -80
  247. package/dist/collection/components/amwal-pos/amwal-pos.js +1022 -1094
  248. package/dist/collection/components/amwal-pos/amwal-pos.stories.js +209 -209
  249. package/dist/collection/components/amwal-widget/amwal-widget-modal.js +326 -350
  250. package/dist/collection/components/amwal-widget/amwal-widget.js +673 -736
  251. package/dist/collection/components/amwal-widget/amwal-widget.stories.js +184 -184
  252. package/dist/collection/lang/i18n.js +7 -7
  253. package/dist/components/amwal-checkout-button.d.ts +2 -2
  254. package/dist/components/amwal-checkout-button.js +3811 -1
  255. package/dist/components/amwal-installments-guide.d.ts +2 -2
  256. package/dist/components/amwal-installments-guide.js +75 -1
  257. package/dist/components/amwal-installments-timeline.d.ts +2 -2
  258. package/dist/components/amwal-installments-timeline.js +6 -1
  259. package/dist/components/amwal-pos.d.ts +2 -2
  260. package/dist/components/amwal-pos.js +3391 -1
  261. package/dist/components/amwal-widget-modal.d.ts +2 -2
  262. package/dist/components/amwal-widget-modal.js +6 -1
  263. package/dist/components/amwal-widget.d.ts +2 -2
  264. package/dist/components/amwal-widget.js +389 -1
  265. package/dist/components/index.d.ts +0 -6
  266. package/dist/components/index.js +6 -1
  267. package/dist/components/ion-accordion-group.js +248 -1
  268. package/dist/components/ion-accordion.js +353 -1
  269. package/dist/components/ion-action-sheet.js +6 -1
  270. package/dist/components/ion-alert.js +6 -1
  271. package/dist/components/ion-app.js +125 -1
  272. package/dist/components/ion-avatar.js +39 -1
  273. package/dist/components/ion-back-button.js +127 -1
  274. package/dist/components/ion-backdrop.js +6 -1
  275. package/dist/components/ion-badge.js +46 -1
  276. package/dist/components/ion-breadcrumb.js +131 -1
  277. package/dist/components/ion-breadcrumbs.js +152 -1
  278. package/dist/components/ion-button.js +6 -1
  279. package/dist/components/ion-buttons.js +6 -1
  280. package/dist/components/ion-card-content.js +43 -1
  281. package/dist/components/ion-card-header.js +50 -1
  282. package/dist/components/ion-card-subtitle.js +47 -1
  283. package/dist/components/ion-card-title.js +47 -1
  284. package/dist/components/ion-card.js +98 -1
  285. package/dist/components/ion-checkbox.js +6 -1
  286. package/dist/components/ion-chip.js +59 -1
  287. package/dist/components/ion-col.js +186 -2
  288. package/dist/components/ion-content.js +440 -1
  289. package/dist/components/ion-datetime-button.js +378 -1
  290. package/dist/components/ion-datetime.js +1961 -2
  291. package/dist/components/ion-fab-button.js +130 -1
  292. package/dist/components/ion-fab-list.js +56 -1
  293. package/dist/components/ion-fab.js +90 -1
  294. package/dist/components/ion-footer.js +152 -2
  295. package/dist/components/ion-grid.js +41 -1
  296. package/dist/components/ion-header.js +356 -2
  297. package/dist/components/ion-icon.js +6 -1
  298. package/dist/components/ion-img.js +124 -1
  299. package/dist/components/ion-infinite-scroll-content.js +69 -1
  300. package/dist/components/ion-infinite-scroll.js +209 -1
  301. package/dist/components/ion-input.js +564 -1
  302. package/dist/components/ion-item-divider.js +51 -1
  303. package/dist/components/ion-item-group.js +44 -1
  304. package/dist/components/ion-item-option.js +85 -1
  305. package/dist/components/ion-item-options.js +67 -1
  306. package/dist/components/ion-item-sliding.js +449 -1
  307. package/dist/components/ion-item.js +6 -1
  308. package/dist/components/ion-label.js +6 -1
  309. package/dist/components/ion-list-header.js +6 -1
  310. package/dist/components/ion-list.js +6 -1
  311. package/dist/components/ion-loading.js +325 -3
  312. package/dist/components/ion-menu-button.js +100 -1
  313. package/dist/components/ion-menu-toggle.js +57 -1
  314. package/dist/components/ion-menu.js +679 -1
  315. package/dist/components/ion-modal.js +1775 -3
  316. package/dist/components/ion-nav-link.js +63 -2
  317. package/dist/components/ion-nav.js +945 -2
  318. package/dist/components/ion-note.js +6 -1
  319. package/dist/components/ion-picker-column-internal.js +6 -1
  320. package/dist/components/ion-picker-column.js +6 -1
  321. package/dist/components/ion-picker-internal.js +6 -1
  322. package/dist/components/ion-picker.js +317 -3
  323. package/dist/components/ion-popover.js +6 -1
  324. package/dist/components/ion-progress-bar.js +79 -1
  325. package/dist/components/ion-radio-group.js +6 -1
  326. package/dist/components/ion-radio.js +6 -1
  327. package/dist/components/ion-range.js +778 -2
  328. package/dist/components/ion-refresher-content.js +90 -1
  329. package/dist/components/ion-refresher.js +652 -1
  330. package/dist/components/ion-reorder-group.js +300 -1
  331. package/dist/components/ion-reorder.js +58 -1
  332. package/dist/components/ion-ripple-effect.js +6 -1
  333. package/dist/components/ion-route-redirect.js +42 -1
  334. package/dist/components/ion-route.js +66 -1
  335. package/dist/components/ion-router-link.js +60 -1
  336. package/dist/components/ion-router-outlet.js +219 -1
  337. package/dist/components/ion-router.js +833 -3
  338. package/dist/components/ion-row.js +34 -1
  339. package/dist/components/ion-searchbar.js +472 -1
  340. package/dist/components/ion-segment-button.js +139 -1
  341. package/dist/components/ion-segment.js +472 -1
  342. package/dist/components/ion-select-option.js +42 -1
  343. package/dist/components/ion-select-popover.js +6 -1
  344. package/dist/components/ion-select.js +864 -1
  345. package/dist/components/ion-skeleton-text.js +59 -1
  346. package/dist/components/ion-spinner.js +6 -1
  347. package/dist/components/ion-split-pane.js +166 -1
  348. package/dist/components/ion-tab-bar.js +95 -1
  349. package/dist/components/ion-tab-button.js +125 -1
  350. package/dist/components/ion-tab.js +80 -1
  351. package/dist/components/ion-tabs.js +176 -1
  352. package/dist/components/ion-text.js +6 -1
  353. package/dist/components/ion-textarea.js +496 -1
  354. package/dist/components/ion-thumbnail.js +34 -1
  355. package/dist/components/ion-title.js +71 -1
  356. package/dist/components/ion-toast.js +914 -3
  357. package/dist/components/ion-toggle.js +282 -1
  358. package/dist/components/ion-toolbar.js +91 -1
  359. package/dist/components/p-01b49f83.js +269 -0
  360. package/dist/{esm/ios.transition-DMsViooj.js → components/p-02b77441.js} +2 -5
  361. package/dist/components/p-02bc6b21.js +203 -0
  362. package/dist/components/p-031ed92d.js +389 -0
  363. package/dist/components/p-03803c7d.js +369 -0
  364. package/dist/components/p-089e034e.js +234 -0
  365. package/dist/components/p-0dc7a5ff.js +512 -0
  366. package/dist/components/p-110f8490.js +566 -0
  367. package/dist/components/p-112455b1.js +17 -0
  368. package/dist/{esm/index-BMJhFU53.js → components/p-1596e301.js} +4 -4
  369. package/dist/components/p-1785e30a.js +318 -0
  370. package/dist/{esm/helpers-C6kqtbmV.js → components/p-2bb89b46.js} +5 -2
  371. package/dist/components/p-2d7d745d.js +224 -0
  372. package/dist/components/p-2fc99fef.js +262 -0
  373. package/dist/{esm/input-shims-DSFPFhb7.js → components/p-3296ebd9.js} +4 -6
  374. package/dist/{esm/data-Cl-_yBA0.js → components/p-39ad94cf.js} +2 -2
  375. package/dist/{esm/capacitor-CG3xQUND.js → components/p-3d3eefc3.js} +1 -1
  376. package/dist/{esm/form-controller-xetTxjL6.js → components/p-3e1d2896.js} +1 -1
  377. package/dist/{esm/keyboard-controller-CqGCg8tB.js → components/p-3e1e3453.js} +2 -2
  378. package/dist/{esm/md.transition-BQT2r4ED.js → components/p-503328f2.js} +2 -5
  379. package/dist/components/p-51c44f42.js +98 -0
  380. package/dist/components/p-5280b372.js +42 -0
  381. package/dist/{esm/index-DuUXGZp2.js → components/p-53e2dbe4.js} +3 -3
  382. package/dist/components/p-5441c730.js +851 -0
  383. package/dist/{esm/refresher.utils-D4tPnZsM.js → components/p-74e68924.js} +4 -4
  384. package/dist/{esm/framework-delegate-D_uGiYYw.js → components/p-76525f0f.js} +1 -1
  385. package/dist/{esm/index-CcopIPA0.js → components/p-77104220.js} +6 -4
  386. package/dist/components/p-77ccb793.js +185 -0
  387. package/dist/components/p-83e529db.js +380 -0
  388. package/dist/{esm/animation-DRf3dwMu.js → components/p-89c4c5cb.js} +2 -2
  389. package/dist/components/p-8b3d1e06.js +67 -0
  390. package/dist/components/p-901c16c5.js +210 -0
  391. package/dist/components/p-93e2a608.js +374 -0
  392. package/dist/components/p-95c79593.js +43 -0
  393. package/dist/components/p-96073863.js +82 -0
  394. package/dist/components/p-99e447f9.js +13 -0
  395. package/dist/{esm/keyboard-DgiyREKb.js → components/p-9b519de5.js} +1 -1
  396. package/dist/{esm/input.utils-BuIvhxo3.js → components/p-9d350d61.js} +3 -3
  397. package/dist/{esm/notch-controller-CQeDnZLe.js → components/p-9df67c24.js} +2 -2
  398. package/dist/components/p-a0e691dd.js +39 -0
  399. package/dist/components/p-ab10d1ae.js +47 -0
  400. package/dist/components/p-abc01c5d.js +194 -0
  401. package/dist/components/p-abd248d1.js +196 -0
  402. package/dist/{esm/haptic-D5jGzBs8.js → components/p-af073aaf.js} +2 -2
  403. package/dist/{esm/swipe-back-DE05lWQD.js → components/p-b32529b9.js} +3 -4
  404. package/dist/{esm/index-C75BfBAE.js → components/p-b8fdd517.js} +1 -2
  405. package/dist/components/p-cebc113f.js +38 -0
  406. package/dist/components/p-d25fd077.js +331 -0
  407. package/dist/{esm/menu-toggle-util-wdO31cdC.js → components/p-d3596f64.js} +1 -1
  408. package/dist/{esm/keyboard-DcbqYXj5.js → components/p-d60b2328.js} +1 -3
  409. package/dist/components/p-d69dc32f.js +97 -0
  410. package/dist/{esm/hardware-back-button-CzxcJiYO.js → components/p-d72e8d7b.js} +2 -3
  411. package/dist/{esm/ar-B3WORC1a.js → components/p-d839c693.js} +12 -5
  412. package/dist/{esm/index-D8d_89Nl.js → components/p-e187a77c.js} +1 -1
  413. package/dist/components/p-e65ea9fb.js +1379 -0
  414. package/dist/components/p-ec0e3f3f.js +2040 -0
  415. package/dist/components/p-ecb4db1c.js +64 -0
  416. package/dist/{esm/gesture-controller-CukVBo5-.js → components/p-f728a68f.js} +1 -1
  417. package/dist/components/p-f7e3c502.js +73 -0
  418. package/dist/components/p-fe463a42.js +272 -0
  419. package/dist/esm/_commonjsHelpers-9943807e.js +17 -0
  420. package/dist/esm/amwal-checkout-button_5.entry.js +1296 -2881
  421. package/dist/esm/amwal-installments-guide.entry.js +40 -43
  422. package/dist/esm/amwal-pos.entry.js +3178 -3452
  423. package/dist/esm/amwal-widget-modal.entry.js +160 -175
  424. package/dist/esm/amwal-widget.entry.js +312 -343
  425. package/dist/esm/animation-a6d5c3b1.js +1063 -0
  426. package/dist/esm/{app-globals-BHnkZZiH.js → app-globals-c817b28b.js} +1 -1
  427. package/dist/esm/ar-7d2629bf.js +51 -0
  428. package/dist/esm/capacitor-ba4337da.js +13 -0
  429. package/dist/esm/checkout.js +18 -16
  430. package/dist/esm/config-8e06237c.js +171 -0
  431. package/dist/esm/cubic-bezier-874f336d.js +90 -0
  432. package/dist/esm/data-8916315d.js +1628 -0
  433. package/dist/esm/dir-1d4aa386.js +18 -0
  434. package/dist/esm/focus-visible-32968d3d.js +75 -0
  435. package/dist/esm/form-controller-b1aa7393.js +64 -0
  436. package/dist/esm/framework-delegate-de1aa369.js +140 -0
  437. package/dist/esm/gesture-controller-58ffa500.js +195 -0
  438. package/dist/esm/haptic-4d4d8eb1.js +206 -0
  439. package/dist/esm/hardware-back-button-f93acff0.js +116 -0
  440. package/dist/esm/helpers-f0dcbd72.js +418 -0
  441. package/dist/esm/i18n-53f85411.js +13 -0
  442. package/dist/esm/{index-CNcx43L8.js → index-0b560278.js} +4 -4
  443. package/dist/esm/index-5894dd63.js +196 -0
  444. package/dist/esm/{index-DUF6JAQL.js → index-5a126e54.js} +6 -6
  445. package/dist/esm/index-5e663431.js +128 -0
  446. package/dist/esm/index-8cc94b11.js +2219 -0
  447. package/dist/esm/index-afdf867c.js +26 -0
  448. package/dist/esm/index-d9b41a43.js +34 -0
  449. package/dist/esm/index-f6dce931.js +466 -0
  450. package/dist/esm/index-fb97e55c.js +7 -0
  451. package/dist/esm/input-shims-75d4750d.js +617 -0
  452. package/dist/esm/input.utils-79bde07f.js +138 -0
  453. package/dist/esm/ion-accordion-group.entry.js +197 -203
  454. package/dist/esm/ion-accordion.entry.js +303 -305
  455. package/dist/esm/ion-action-sheet_3.entry.js +693 -705
  456. package/dist/esm/ion-app.entry.js +93 -93
  457. package/dist/esm/ion-avatar.entry.js +12 -12
  458. package/dist/esm/ion-back-button.entry.js +76 -76
  459. package/dist/esm/ion-backdrop.entry.js +42 -42
  460. package/dist/esm/ion-badge.entry.js +17 -17
  461. package/dist/esm/ion-breadcrumb.entry.js +84 -84
  462. package/dist/esm/ion-breadcrumbs.entry.js +118 -124
  463. package/dist/esm/ion-buttons_3.entry.js +820 -822
  464. package/dist/esm/ion-card-content.entry.js +17 -17
  465. package/dist/esm/ion-card-header.entry.js +20 -20
  466. package/dist/esm/ion-card-subtitle.entry.js +18 -18
  467. package/dist/esm/ion-card-title.entry.js +18 -18
  468. package/dist/esm/ion-card.entry.js +53 -53
  469. package/dist/esm/ion-checkbox_7.entry.js +860 -882
  470. package/dist/esm/ion-chip.entry.js +22 -22
  471. package/dist/esm/ion-col.entry.js +108 -108
  472. package/dist/esm/ion-content.entry.js +374 -374
  473. package/dist/esm/ion-datetime-button.entry.js +328 -328
  474. package/dist/esm/ion-datetime.entry.js +1545 -1567
  475. package/dist/esm/ion-fab-button.entry.js +76 -76
  476. package/dist/esm/ion-fab-list.entry.js +29 -31
  477. package/dist/esm/ion-fab.entry.js +56 -58
  478. package/dist/esm/ion-footer.entry.js +92 -92
  479. package/dist/esm/ion-grid.entry.js +15 -15
  480. package/dist/esm/ion-header.entry.js +141 -141
  481. package/dist/esm/ion-icon.entry.js +102 -112
  482. package/dist/esm/ion-img.entry.js +81 -83
  483. package/dist/esm/ion-infinite-scroll-content.entry.js +32 -32
  484. package/dist/esm/ion-infinite-scroll.entry.js +172 -176
  485. package/dist/esm/ion-input.entry.js +445 -453
  486. package/dist/esm/ion-item-divider.entry.js +21 -21
  487. package/dist/esm/ion-item-group.entry.js +18 -18
  488. package/dist/esm/ion-item-option.entry.js +43 -43
  489. package/dist/esm/ion-item-options.entry.js +38 -38
  490. package/dist/esm/ion-item-sliding.entry.js +389 -391
  491. package/dist/esm/ion-loading.entry.js +160 -164
  492. package/dist/esm/ion-menu-button.entry.js +58 -58
  493. package/dist/esm/ion-menu-toggle.entry.js +34 -34
  494. package/dist/esm/ion-menu.entry.js +604 -612
  495. package/dist/esm/ion-modal.entry.js +549 -553
  496. package/dist/esm/ion-nav-link.entry.js +15 -15
  497. package/dist/esm/ion-nav.entry.js +821 -825
  498. package/dist/esm/ion-note.entry.js +17 -17
  499. package/dist/esm/ion-picker-column.entry.js +325 -327
  500. package/dist/esm/ion-picker.entry.js +196 -200
  501. package/dist/esm/ion-popover.entry.js +324 -330
  502. package/dist/esm/ion-progress-bar.entry.js +42 -42
  503. package/dist/esm/ion-range.entry.js +642 -654
  504. package/dist/esm/ion-refresher-content.entry.js +51 -51
  505. package/dist/esm/ion-refresher.entry.js +584 -586
  506. package/dist/esm/ion-reorder-group.entry.js +250 -252
  507. package/dist/esm/ion-reorder.entry.js +24 -24
  508. package/dist/esm/ion-route-redirect.entry.js +17 -21
  509. package/dist/esm/ion-route.entry.js +35 -41
  510. package/dist/esm/ion-router-link.entry.js +29 -29
  511. package/dist/esm/ion-router-outlet.entry.js +176 -178
  512. package/dist/esm/ion-router.entry.js +264 -264
  513. package/dist/esm/ion-row.entry.js +10 -10
  514. package/dist/esm/ion-searchbar.entry.js +386 -396
  515. package/dist/esm/ion-segment-button.entry.js +94 -96
  516. package/dist/esm/ion-segment.entry.js +412 -420
  517. package/dist/esm/ion-select-option.entry.js +14 -14
  518. package/dist/esm/ion-select.entry.js +691 -699
  519. package/dist/esm/ion-skeleton-text.entry.js +33 -33
  520. package/dist/esm/ion-spinner.entry.js +48 -48
  521. package/dist/esm/ion-split-pane.entry.js +118 -124
  522. package/dist/esm/ion-tab-bar.entry.js +64 -66
  523. package/dist/esm/ion-tab-button.entry.js +80 -80
  524. package/dist/esm/ion-tab.entry.js +48 -50
  525. package/dist/esm/ion-tabs.entry.js +132 -132
  526. package/dist/esm/ion-textarea.entry.js +394 -400
  527. package/dist/esm/ion-thumbnail.entry.js +10 -10
  528. package/dist/esm/ion-title.entry.js +41 -43
  529. package/dist/esm/ion-toast.entry.js +369 -375
  530. package/dist/esm/ion-toggle.entry.js +228 -230
  531. package/dist/esm/ion-toolbar.entry.js +59 -59
  532. package/dist/esm/{ionic-global-DXXzPLPc.js → ionic-global-0b7766cb.js} +55 -58
  533. package/dist/esm/ios.transition-22fb53bc.js +651 -0
  534. package/dist/esm/keyboard-1f073554.js +82 -0
  535. package/dist/esm/keyboard-96b6e80b.js +146 -0
  536. package/dist/esm/keyboard-controller-5a2f625f.js +165 -0
  537. package/dist/esm/loader.js +17 -8
  538. package/dist/esm/lock-controller-632e3c10.js +38 -0
  539. package/dist/esm/md.transition-f6ff9834.js +57 -0
  540. package/dist/esm/menu-toggle-util-594849ff.js +12 -0
  541. package/dist/esm/notch-controller-d511b3b3.js +153 -0
  542. package/dist/esm/{overlays-SBLrmFy6.js → overlays-642a91df.js} +7 -7
  543. package/dist/esm/polyfills/core-js.js +11 -0
  544. package/dist/esm/polyfills/css-shim.js +1 -0
  545. package/dist/esm/polyfills/dom.js +79 -0
  546. package/dist/esm/polyfills/es5-html-element.js +1 -0
  547. package/dist/esm/polyfills/index.js +34 -0
  548. package/dist/esm/polyfills/system.js +6 -0
  549. package/dist/esm/refresher.utils-19137568.js +196 -0
  550. package/dist/esm/{status-tap-CjxQA4Bj.js → status-tap-bb6959a8.js} +4 -4
  551. package/dist/esm/swipe-back-6cec4c33.js +79 -0
  552. package/dist/esm/theme-35c700b7.js +43 -0
  553. package/dist/esm/watch-options-7bf43687.js +47 -0
  554. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.ios.css +193 -0
  555. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.md.css +135 -0
  556. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.ios.css +127 -0
  557. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.md.css +229 -0
  558. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.ios.css +456 -0
  559. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.md.css +384 -0
  560. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.ios.css +755 -0
  561. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.md.css +770 -0
  562. package/dist/node_modules/@ionic/core/dist/collection/components/app/app.css +17 -0
  563. package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.ios.css +132 -0
  564. package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.md.css +132 -0
  565. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.ios.css +372 -0
  566. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.md.css +385 -0
  567. package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.ios.css +136 -0
  568. package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.md.css +136 -0
  569. package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.ios.css +168 -0
  570. package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.md.css +164 -0
  571. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.ios.css +326 -0
  572. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.md.css +310 -0
  573. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +81 -0
  574. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.md.css +80 -0
  575. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.ios.css +596 -0
  576. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.md.css +517 -0
  577. package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.ios.css +279 -0
  578. package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.md.css +299 -0
  579. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.ios.css +203 -0
  580. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.md.css +198 -0
  581. package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.ios.css +163 -0
  582. package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.md.css +165 -0
  583. package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.ios.css +141 -0
  584. package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.md.css +138 -0
  585. package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.ios.css +138 -0
  586. package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.md.css +136 -0
  587. package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.ios.css +137 -0
  588. package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.md.css +137 -0
  589. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.ios.css +536 -0
  590. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.md.css +552 -0
  591. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.ios.css +212 -0
  592. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.md.css +207 -0
  593. package/dist/node_modules/@ionic/core/dist/collection/components/col/col.css +200 -0
  594. package/dist/node_modules/@ionic/core/dist/collection/components/content/content.css +282 -0
  595. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.ios.css +850 -0
  596. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.md.css +706 -0
  597. package/dist/node_modules/@ionic/core/dist/collection/components/datetime-button/datetime-button.css +100 -0
  598. package/dist/node_modules/@ionic/core/dist/collection/components/fab/fab.css +366 -0
  599. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.ios.css +422 -0
  600. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.md.css +393 -0
  601. package/dist/node_modules/@ionic/core/dist/collection/components/fab-list/fab-list.css +240 -0
  602. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.ios.css +146 -0
  603. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.md.css +129 -0
  604. package/dist/node_modules/@ionic/core/dist/collection/components/grid/grid.css +235 -0
  605. package/dist/node_modules/@ionic/core/dist/collection/components/header/header.ios.css +250 -0
  606. package/dist/node_modules/@ionic/core/dist/collection/components/header/header.md.css +133 -0
  607. package/dist/node_modules/@ionic/core/dist/collection/components/img/img.css +12 -0
  608. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll/infinite-scroll.css +8 -0
  609. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +156 -0
  610. package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +156 -0
  611. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.ios.css +833 -0
  612. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.md.css +1446 -0
  613. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.ios.css +815 -0
  614. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.md.css +1187 -0
  615. package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.ios.css +351 -0
  616. package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.md.css +417 -0
  617. package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.ios.css +114 -0
  618. package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.md.css +114 -0
  619. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.ios.css +242 -0
  620. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.md.css +236 -0
  621. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.ios.css +287 -0
  622. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.md.css +284 -0
  623. package/dist/node_modules/@ionic/core/dist/collection/components/item-sliding/item-sliding.css +121 -0
  624. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.ios.css +334 -0
  625. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.md.css +421 -0
  626. package/dist/node_modules/@ionic/core/dist/collection/components/list/list.ios.css +242 -0
  627. package/dist/node_modules/@ionic/core/dist/collection/components/list/list.md.css +287 -0
  628. package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.ios.css +285 -0
  629. package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.md.css +266 -0
  630. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.ios.css +205 -0
  631. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.md.css +196 -0
  632. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.ios.css +378 -0
  633. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.md.css +374 -0
  634. package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.ios.css +279 -0
  635. package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.md.css +282 -0
  636. package/dist/node_modules/@ionic/core/dist/collection/components/menu-toggle/menu-toggle.css +3 -0
  637. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.ios.css +357 -0
  638. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.md.css +272 -0
  639. package/dist/node_modules/@ionic/core/dist/collection/components/nav/nav.css +64 -0
  640. package/dist/node_modules/@ionic/core/dist/collection/components/note/note.ios.css +127 -0
  641. package/dist/node_modules/@ionic/core/dist/collection/components/note/note.md.css +127 -0
  642. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.ios.css +367 -0
  643. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.md.css +354 -0
  644. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.ios.css +255 -0
  645. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.md.css +246 -0
  646. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +138 -0
  647. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.md.css +196 -0
  648. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.ios.css +262 -0
  649. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.md.css +258 -0
  650. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.ios.css +366 -0
  651. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.md.css +266 -0
  652. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.ios.css +261 -0
  653. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.md.css +261 -0
  654. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.ios.css +557 -0
  655. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.md.css +580 -0
  656. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.ios.css +660 -0
  657. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.md.css +819 -0
  658. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.ios.css +321 -0
  659. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.md.css +316 -0
  660. package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.ios.css +77 -0
  661. package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.md.css +77 -0
  662. package/dist/node_modules/@ionic/core/dist/collection/components/reorder-group/reorder-group.css +89 -0
  663. package/dist/node_modules/@ionic/core/dist/collection/components/ripple-effect/ripple-effect.css +113 -0
  664. package/dist/node_modules/@ionic/core/dist/collection/components/router-link/router-link.css +84 -0
  665. package/dist/node_modules/@ionic/core/dist/collection/components/router-outlet/router-outlet.css +64 -0
  666. package/dist/node_modules/@ionic/core/dist/collection/components/row/row.css +136 -0
  667. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.ios.css +477 -0
  668. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.md.css +456 -0
  669. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.ios.css +224 -0
  670. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.md.css +214 -0
  671. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.ios.css +520 -0
  672. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.md.css +506 -0
  673. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.ios.css +787 -0
  674. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.md.css +1374 -0
  675. package/dist/node_modules/@ionic/core/dist/collection/components/select-option/select-option.css +3 -0
  676. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.ios.css +190 -0
  677. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.md.css +212 -0
  678. package/dist/node_modules/@ionic/core/dist/collection/components/skeleton-text/skeleton-text.css +108 -0
  679. package/dist/node_modules/@ionic/core/dist/collection/components/spinner/spinner.css +232 -0
  680. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.ios.css +265 -0
  681. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.md.css +265 -0
  682. package/dist/node_modules/@ionic/core/dist/collection/components/tab/tab.css +4 -0
  683. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.ios.css +252 -0
  684. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.md.css +239 -0
  685. package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.ios.css +477 -0
  686. package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.md.css +501 -0
  687. package/dist/node_modules/@ionic/core/dist/collection/components/tabs/tabs.css +74 -0
  688. package/dist/node_modules/@ionic/core/dist/collection/components/text/text.css +58 -0
  689. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.ios.css +987 -0
  690. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.md.css +1553 -0
  691. package/dist/node_modules/@ionic/core/dist/collection/components/thumbnail/thumbnail.css +76 -0
  692. package/dist/node_modules/@ionic/core/dist/collection/components/title/title.ios.css +183 -0
  693. package/dist/node_modules/@ionic/core/dist/collection/components/title/title.md.css +102 -0
  694. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.ios.css +399 -0
  695. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.md.css +429 -0
  696. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.ios.css +680 -0
  697. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.md.css +625 -0
  698. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.ios.css +265 -0
  699. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.md.css +244 -0
  700. package/dist/node_modules/ionicons/dist/collection/components/icon/icon.css +144 -0
  701. package/dist/types/components/amwal-checkout-button/amwal-checkout-button.d.ts +327 -327
  702. package/dist/types/components/amwal-checkout-button/amwal-checkout-button.stories.d.ts +34 -34
  703. package/dist/types/components/amwal-installments-guide/amwal-installments-guide.d.ts +14 -14
  704. package/dist/types/components/amwal-installments-guide/amwal-installments-guide.stories.d.ts +17 -17
  705. package/dist/types/components/amwal-installments-timeline/amwal-installments-timeline.d.ts +106 -106
  706. package/dist/types/components/amwal-installments-timeline/amwal-installments-timeline.stories.d.ts +67 -67
  707. package/dist/types/components/amwal-pos/amwal-pos.d.ts +228 -228
  708. package/dist/types/components/amwal-pos/amwal-pos.stories.d.ts +185 -185
  709. package/dist/types/components/amwal-widget/amwal-widget-modal.d.ts +56 -56
  710. package/dist/types/components/amwal-widget/amwal-widget.d.ts +165 -165
  711. package/dist/types/components/amwal-widget/amwal-widget.stories.d.ts +101 -101
  712. package/dist/types/components.d.ts +0 -206
  713. package/dist/types/lang/i18n.d.ts +1 -1
  714. package/dist/types/stencil-public-runtime.d.ts +21 -191
  715. package/loader/cdn.js +3 -1
  716. package/loader/index.cjs.js +3 -1
  717. package/loader/index.d.ts +1 -4
  718. package/loader/index.es2017.js +3 -1
  719. package/loader/index.js +3 -1
  720. package/loader/package.json +11 -0
  721. package/package.json +28 -34
  722. package/dist/checkout/p-0161d109.entry.js +0 -1
  723. package/dist/checkout/p-0a8ef1ec.entry.js +0 -1
  724. package/dist/checkout/p-10a72fbe.entry.js +0 -1
  725. package/dist/checkout/p-12ed4081.entry.js +0 -1
  726. package/dist/checkout/p-13c36adc.entry.js +0 -1
  727. package/dist/checkout/p-194b17d8.entry.js +0 -1
  728. package/dist/checkout/p-272a1ffd.entry.js +0 -1
  729. package/dist/checkout/p-307af48b.entry.js +0 -1
  730. package/dist/checkout/p-3207674d.entry.js +0 -1
  731. package/dist/checkout/p-3208e56f.entry.js +0 -1
  732. package/dist/checkout/p-4426eb3b.entry.js +0 -1
  733. package/dist/checkout/p-458da59f.entry.js +0 -1
  734. package/dist/checkout/p-46e69508.entry.js +0 -1
  735. package/dist/checkout/p-49046c16.entry.js +0 -4
  736. package/dist/checkout/p-53dc0e86.entry.js +0 -1
  737. package/dist/checkout/p-5a6fc9fd.entry.js +0 -1
  738. package/dist/checkout/p-5e65653a.entry.js +0 -1
  739. package/dist/checkout/p-5f124c24.entry.js +0 -1
  740. package/dist/checkout/p-6a8ad104.entry.js +0 -1
  741. package/dist/checkout/p-76fb4325.entry.js +0 -1
  742. package/dist/checkout/p-78db60fb.entry.js +0 -1
  743. package/dist/checkout/p-8e34a1bb.entry.js +0 -1
  744. package/dist/checkout/p-91474b10.entry.js +0 -1
  745. package/dist/checkout/p-93OyAGoo.js +0 -2
  746. package/dist/checkout/p-94a57258.entry.js +0 -1
  747. package/dist/checkout/p-BEVStXwd.js +0 -7
  748. package/dist/checkout/p-BQu7QPd5.js +0 -4
  749. package/dist/checkout/p-BR7SJd-v.js +0 -4
  750. package/dist/checkout/p-BcFRJSFv.js +0 -4
  751. package/dist/checkout/p-BcUxrseY.js +0 -1
  752. package/dist/checkout/p-BdG893XR.js +0 -4
  753. package/dist/checkout/p-BgOwfqIY.js +0 -4
  754. package/dist/checkout/p-Bm9bMvCb.js +0 -4
  755. package/dist/checkout/p-C03M5ZSM.js +0 -1
  756. package/dist/checkout/p-C6kqtbmV.js +0 -4
  757. package/dist/checkout/p-C75BfBAE.js +0 -1
  758. package/dist/checkout/p-CVrvo9Qz.js +0 -4
  759. package/dist/checkout/p-ChixdDt6.js +0 -4
  760. package/dist/checkout/p-Cjnmql4G.js +0 -8
  761. package/dist/checkout/p-D0I0TqZU.js +0 -4
  762. package/dist/checkout/p-D2NxOvQ8.js +0 -4
  763. package/dist/checkout/p-D8d_89Nl.js +0 -4
  764. package/dist/checkout/p-DAhcxcAh.js +0 -4
  765. package/dist/checkout/p-DDtPO7yO.js +0 -4
  766. package/dist/checkout/p-DKg_dYcq.js +0 -4
  767. package/dist/checkout/p-DMAPbDyG.js +0 -4
  768. package/dist/checkout/p-DihS-5gH.js +0 -4
  769. package/dist/checkout/p-DkrNcwKK.js +0 -5
  770. package/dist/checkout/p-Dzj_jqIY.js +0 -4
  771. package/dist/checkout/p-E8AXUhZ3.js +0 -7
  772. package/dist/checkout/p-Ufaww5Lq.js +0 -4
  773. package/dist/checkout/p-a90efa79.entry.js +0 -1
  774. package/dist/checkout/p-abd12b84.entry.js +0 -1
  775. package/dist/checkout/p-abe1becc.entry.js +0 -1
  776. package/dist/checkout/p-b2f66c60.entry.js +0 -4
  777. package/dist/checkout/p-b45f5952.entry.js +0 -1
  778. package/dist/checkout/p-c2240d19.entry.js +0 -1
  779. package/dist/checkout/p-c28b4374.entry.js +0 -1
  780. package/dist/checkout/p-cb2db223.entry.js +0 -1
  781. package/dist/checkout/p-cb3967fc.entry.js +0 -1
  782. package/dist/checkout/p-cef16f11.entry.js +0 -1
  783. package/dist/checkout/p-df1b4347.entry.js +0 -4
  784. package/dist/checkout/p-e4bc42fb.entry.js +0 -1
  785. package/dist/checkout/p-e785fb8a.entry.js +0 -1
  786. package/dist/checkout/p-e8bd206a.entry.js +0 -1
  787. package/dist/checkout/p-ef749875.entry.js +0 -1
  788. package/dist/checkout/p-f157b6b2.entry.js +0 -4
  789. package/dist/checkout/p-f351a19a.entry.js +0 -1
  790. package/dist/checkout/p-ff2e59e3.entry.js +0 -1
  791. package/dist/checkout/p-hAETByzF.js +0 -5
  792. package/dist/checkout/p-vn1iXXUO.js +0 -9
  793. package/dist/cjs/i18n-uGNv9SLK.js +0 -13
  794. package/dist/cjs/index-DncWzXDA.js +0 -3738
  795. package/dist/components/p-55BwDerf.js +0 -8
  796. package/dist/components/p-B-M4K7iJ.js +0 -7
  797. package/dist/components/p-B-hirT0v.js +0 -4
  798. package/dist/components/p-B3WORC1a.js +0 -1
  799. package/dist/components/p-B5XH2zAk.js +0 -1
  800. package/dist/components/p-B5ZghgSh.js +0 -4
  801. package/dist/components/p-BEVStXwd.js +0 -7
  802. package/dist/components/p-BH0TCnxk.js +0 -4
  803. package/dist/components/p-BIA8A9ZO.js +0 -1
  804. package/dist/components/p-BOkYKP6F.js +0 -1
  805. package/dist/components/p-BOm0KT2x.js +0 -1
  806. package/dist/components/p-Bb_Zji0h.js +0 -4
  807. package/dist/components/p-BmVRXR1y.js +0 -4
  808. package/dist/components/p-BnQDByf2.js +0 -1
  809. package/dist/components/p-BoxjYI-Q.js +0 -4
  810. package/dist/components/p-BriBxgcM.js +0 -1
  811. package/dist/components/p-BwKjt_Dc.js +0 -4
  812. package/dist/components/p-Bx78uXfc.js +0 -5
  813. package/dist/components/p-C-20JWsp.js +0 -4
  814. package/dist/components/p-C03M5ZSM.js +0 -1
  815. package/dist/components/p-C53feagD.js +0 -4
  816. package/dist/components/p-CLrB3zV0.js +0 -4
  817. package/dist/components/p-CN34uOrj.js +0 -9
  818. package/dist/components/p-CQmcNwZM.js +0 -4
  819. package/dist/components/p-CYd0Smt1.js +0 -1
  820. package/dist/components/p-CgPXSjzI.js +0 -4
  821. package/dist/components/p-Cho32MPa.js +0 -4
  822. package/dist/components/p-ClE6rMJs.js +0 -4
  823. package/dist/components/p-Cm9b7fIl.js +0 -1
  824. package/dist/components/p-CukVBo5-.js +0 -4
  825. package/dist/components/p-D2NxOvQ8.js +0 -4
  826. package/dist/components/p-D4DqwBlW.js +0 -4
  827. package/dist/components/p-D7YY0NXg.js +0 -4
  828. package/dist/components/p-D8OVJo1v.js +0 -7
  829. package/dist/components/p-DKg_dYcq.js +0 -4
  830. package/dist/components/p-DLVYPrYs.js +0 -1
  831. package/dist/components/p-DMmSL7_l.js +0 -1
  832. package/dist/components/p-DOPF2QRF.js +0 -1
  833. package/dist/components/p-DTgJTJD6.js +0 -1
  834. package/dist/components/p-DiVJyqlX.js +0 -4
  835. package/dist/components/p-DrS88eFz.js +0 -1
  836. package/dist/components/p-Dtdm8lKC.js +0 -4
  837. package/dist/components/p-DuZ7hY1a.js +0 -4
  838. package/dist/components/p-Dx-C8Ob_.js +0 -7
  839. package/dist/components/p-DxEgz9x_.js +0 -1
  840. package/dist/components/p-DxSo4SXG.js +0 -1
  841. package/dist/components/p-HSPzo8it.js +0 -1
  842. package/dist/components/p-OrwCUtWu.js +0 -4
  843. package/dist/components/p-UgkI2Wa4.js +0 -1
  844. package/dist/components/p-VeNdmYSo.js +0 -1
  845. package/dist/components/p-YbpebnFS.js +0 -4
  846. package/dist/components/p-ZjP4CjeZ.js +0 -4
  847. package/dist/components/p-_VuKPdkD.js +0 -4
  848. package/dist/components/p-aWL6BxTN.js +0 -4
  849. package/dist/components/p-hHmYLOfE.js +0 -4
  850. package/dist/components/p-qoI-S7yk.js +0 -4
  851. package/dist/components/p-uXV7tzS3.js +0 -1
  852. package/dist/components/p-yu3xCFhr.js +0 -7
  853. package/dist/components/p-zp5f483d.js +0 -1
  854. package/dist/esm/i18n-C_AfxZ5D.js +0 -13
  855. package/dist/esm/index-93OyAGoo.js +0 -3721
  856. /package/dist/checkout/{p-B-hirT0v.js → p-01ad898f.js} +0 -0
  857. /package/dist/checkout/{p-DiVJyqlX.js → p-350e7423.js} +0 -0
  858. /package/dist/checkout/{p-sObYyvOy.js → p-52b4c112.js} +0 -0
  859. /package/dist/checkout/{p-BmVRXR1y.js → p-620fa0ec.js} +0 -0
  860. /package/dist/checkout/{p-hHmYLOfE.js → p-94286cc3.js} +0 -0
  861. /package/dist/checkout/{p-D4RIp70E.js → p-9efbca93.js} +0 -0
  862. /package/dist/checkout/{p-Dtdm8lKC.js → p-9f4ac833.js} +0 -0
  863. /package/dist/checkout/{p-yu3xCFhr.js → p-b2289937.js} +0 -0
  864. /package/dist/checkout/{p-C53feagD.js → p-d5862637.js} +0 -0
  865. /package/dist/checkout/{p-ZjP4CjeZ.js → p-d7fe59ee.js} +0 -0
  866. /package/dist/{components/p-CYPPT3AE.js → checkout/p-e187a77c.js} +0 -0
  867. /package/dist/checkout/{p-CukVBo5-.js → p-f728a68f.js} +0 -0
  868. /package/dist/cjs/{compare-with-utils-JlLIkecm.js → compare-with-utils-adbe64a6.js} +0 -0
  869. /package/dist/cjs/{config-ptk2Lf4l.js → config-e2a8c0c7.js} +0 -0
  870. /package/dist/cjs/{cubic-bezier-Bv3PvaRI.js → cubic-bezier-5ff9b04e.js} +0 -0
  871. /package/dist/cjs/{dir-Br-7_bel.js → dir-374f13f2.js} +0 -0
  872. /package/dist/cjs/{focus-visible-Da2o6bTP.js → focus-visible-b7381162.js} +0 -0
  873. /package/dist/cjs/{index-CH3IFTaK.js → index-071786b4.js} +0 -0
  874. /package/dist/cjs/{index-D3mJ1Cix.js → index-a281cac3.js} +0 -0
  875. /package/dist/cjs/{lock-controller-58TZFRHC.js → lock-controller-e2dfece6.js} +0 -0
  876. /package/dist/cjs/{spinner-configs-BN41iw42.js → spinner-configs-036ebfd8.js} +0 -0
  877. /package/dist/cjs/{theme-DbHdw1Nx.js → theme-12dec869.js} +0 -0
  878. /package/dist/cjs/{watch-options-DOFUPyuf.js → watch-options-1cccbe6a.js} +0 -0
  879. /package/dist/{esm/lock-controller-B-hirT0v.js → components/p-01ad898f.js} +0 -0
  880. /package/dist/{esm/theme-DiVJyqlX.js → components/p-350e7423.js} +0 -0
  881. /package/dist/{esm/focus-visible-BmVRXR1y.js → components/p-620fa0ec.js} +0 -0
  882. /package/dist/{esm/cubic-bezier-hHmYLOfE.js → components/p-94286cc3.js} +0 -0
  883. /package/dist/{esm/watch-options-Dtdm8lKC.js → components/p-9f4ac833.js} +0 -0
  884. /package/dist/{esm/config-yu3xCFhr.js → components/p-b2289937.js} +0 -0
  885. /package/dist/{esm/dir-C53feagD.js → components/p-d5862637.js} +0 -0
  886. /package/dist/{esm/index-ZjP4CjeZ.js → components/p-d7fe59ee.js} +0 -0
  887. /package/dist/esm/{compare-with-utils-sObYyvOy.js → compare-with-utils-d58be312.js} +0 -0
  888. /package/dist/esm/{spinner-configs-D4RIp70E.js → spinner-configs-c9fb0813.js} +0 -0
@@ -0,0 +1,1379 @@
1
+ import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-ec0e3f3f.js';
2
+ import { C as CoreDelegate, a as attachComponent, d as detachComponent } from './p-76525f0f.js';
3
+ import { b as raf, g as getElementRoot, a as addEventListener, l as hasLazyBuild } from './p-2bb89b46.js';
4
+ import { c as createLockController } from './p-01ad898f.js';
5
+ import { p as printIonWarning } from './p-e187a77c.js';
6
+ import { B as BACKDROP, b as prepareOverlay, f as setOverlayId, p as present, g as focusFirstDescendant, d as dismiss, e as eventMethod } from './p-5441c730.js';
7
+ import { g as getIonMode, a as isPlatform } from './p-901c16c5.js';
8
+ import { g as getClassMap } from './p-350e7423.js';
9
+ import { d as deepReady, w as waitForMount } from './p-089e034e.js';
10
+ import { c as createAnimation } from './p-89c4c5cb.js';
11
+ import { d as defineCustomElement$1 } from './p-f7e3c502.js';
12
+
13
+ /*!
14
+ * (C) Ionic http://ionicframework.com - MIT License
15
+ */
16
+ /**
17
+ * Returns the dimensions of the popover
18
+ * arrow on `ios` mode. If arrow is disabled
19
+ * returns (0, 0).
20
+ */
21
+ const getArrowDimensions = (arrowEl) => {
22
+ if (!arrowEl) {
23
+ return { arrowWidth: 0, arrowHeight: 0 };
24
+ }
25
+ const { width, height } = arrowEl.getBoundingClientRect();
26
+ return { arrowWidth: width, arrowHeight: height };
27
+ };
28
+ /**
29
+ * Returns the recommended dimensions of the popover
30
+ * that takes into account whether or not the width
31
+ * should match the trigger width.
32
+ */
33
+ const getPopoverDimensions = (size, contentEl, triggerEl) => {
34
+ const contentDimentions = contentEl.getBoundingClientRect();
35
+ const contentHeight = contentDimentions.height;
36
+ let contentWidth = contentDimentions.width;
37
+ if (size === 'cover' && triggerEl) {
38
+ const triggerDimensions = triggerEl.getBoundingClientRect();
39
+ contentWidth = triggerDimensions.width;
40
+ }
41
+ return {
42
+ contentWidth,
43
+ contentHeight,
44
+ };
45
+ };
46
+ const configureDismissInteraction = (triggerEl, triggerAction, popoverEl, parentPopoverEl) => {
47
+ let dismissCallbacks = [];
48
+ const root = getElementRoot(parentPopoverEl);
49
+ const parentContentEl = root.querySelector('.popover-content');
50
+ switch (triggerAction) {
51
+ case 'hover':
52
+ dismissCallbacks = [
53
+ {
54
+ /**
55
+ * Do not use mouseover here
56
+ * as this will causes the event to
57
+ * be dispatched on each underlying
58
+ * element rather than on the popover
59
+ * content as a whole.
60
+ */
61
+ eventName: 'mouseenter',
62
+ callback: (ev) => {
63
+ /**
64
+ * Do not dismiss the popover is we
65
+ * are hovering over its trigger.
66
+ * This would be easier if we used mouseover
67
+ * but this would cause the event to be dispatched
68
+ * more often than we would like, potentially
69
+ * causing performance issues.
70
+ */
71
+ const element = document.elementFromPoint(ev.clientX, ev.clientY);
72
+ if (element === triggerEl) {
73
+ return;
74
+ }
75
+ popoverEl.dismiss(undefined, undefined, false);
76
+ },
77
+ },
78
+ ];
79
+ break;
80
+ case 'context-menu':
81
+ case 'click':
82
+ default:
83
+ dismissCallbacks = [
84
+ {
85
+ eventName: 'click',
86
+ callback: (ev) => {
87
+ /**
88
+ * Do not dismiss the popover is we
89
+ * are hovering over its trigger.
90
+ */
91
+ const target = ev.target;
92
+ const closestTrigger = target.closest('[data-ion-popover-trigger]');
93
+ if (closestTrigger === triggerEl) {
94
+ /**
95
+ * stopPropagation here so if the
96
+ * popover has dismissOnSelect="true"
97
+ * the popover does not dismiss since
98
+ * we just clicked a trigger element.
99
+ */
100
+ ev.stopPropagation();
101
+ return;
102
+ }
103
+ popoverEl.dismiss(undefined, undefined, false);
104
+ },
105
+ },
106
+ ];
107
+ break;
108
+ }
109
+ dismissCallbacks.forEach(({ eventName, callback }) => parentContentEl.addEventListener(eventName, callback));
110
+ return () => {
111
+ dismissCallbacks.forEach(({ eventName, callback }) => parentContentEl.removeEventListener(eventName, callback));
112
+ };
113
+ };
114
+ /**
115
+ * Configures the triggerEl to respond
116
+ * to user interaction based upon the triggerAction
117
+ * prop that devs have defined.
118
+ */
119
+ const configureTriggerInteraction = (triggerEl, triggerAction, popoverEl) => {
120
+ let triggerCallbacks = [];
121
+ /**
122
+ * Based upon the kind of trigger interaction
123
+ * the user wants, we setup the correct event
124
+ * listeners.
125
+ */
126
+ switch (triggerAction) {
127
+ case 'hover':
128
+ let hoverTimeout;
129
+ triggerCallbacks = [
130
+ {
131
+ eventName: 'mouseenter',
132
+ callback: async (ev) => {
133
+ ev.stopPropagation();
134
+ if (hoverTimeout) {
135
+ clearTimeout(hoverTimeout);
136
+ }
137
+ /**
138
+ * Hovering over a trigger should not
139
+ * immediately open the next popover.
140
+ */
141
+ hoverTimeout = setTimeout(() => {
142
+ raf(() => {
143
+ popoverEl.presentFromTrigger(ev);
144
+ hoverTimeout = undefined;
145
+ });
146
+ }, 100);
147
+ },
148
+ },
149
+ {
150
+ eventName: 'mouseleave',
151
+ callback: (ev) => {
152
+ if (hoverTimeout) {
153
+ clearTimeout(hoverTimeout);
154
+ }
155
+ /**
156
+ * If mouse is over another popover
157
+ * that is not this popover then we should
158
+ * close this popover.
159
+ */
160
+ const target = ev.relatedTarget;
161
+ if (!target) {
162
+ return;
163
+ }
164
+ if (target.closest('ion-popover') !== popoverEl) {
165
+ popoverEl.dismiss(undefined, undefined, false);
166
+ }
167
+ },
168
+ },
169
+ {
170
+ /**
171
+ * stopPropagation here prevents the popover
172
+ * from dismissing when dismiss-on-select="true".
173
+ */
174
+ eventName: 'click',
175
+ callback: (ev) => ev.stopPropagation(),
176
+ },
177
+ {
178
+ eventName: 'ionPopoverActivateTrigger',
179
+ callback: (ev) => popoverEl.presentFromTrigger(ev, true),
180
+ },
181
+ ];
182
+ break;
183
+ case 'context-menu':
184
+ triggerCallbacks = [
185
+ {
186
+ eventName: 'contextmenu',
187
+ callback: (ev) => {
188
+ /**
189
+ * Prevents the platform context
190
+ * menu from appearing.
191
+ */
192
+ ev.preventDefault();
193
+ popoverEl.presentFromTrigger(ev);
194
+ },
195
+ },
196
+ {
197
+ eventName: 'click',
198
+ callback: (ev) => ev.stopPropagation(),
199
+ },
200
+ {
201
+ eventName: 'ionPopoverActivateTrigger',
202
+ callback: (ev) => popoverEl.presentFromTrigger(ev, true),
203
+ },
204
+ ];
205
+ break;
206
+ case 'click':
207
+ default:
208
+ triggerCallbacks = [
209
+ {
210
+ /**
211
+ * Do not do a stopPropagation() here
212
+ * because if you had two click triggers
213
+ * then clicking the first trigger and then
214
+ * clicking the second trigger would not cause
215
+ * the first popover to dismiss.
216
+ */
217
+ eventName: 'click',
218
+ callback: (ev) => popoverEl.presentFromTrigger(ev),
219
+ },
220
+ {
221
+ eventName: 'ionPopoverActivateTrigger',
222
+ callback: (ev) => popoverEl.presentFromTrigger(ev, true),
223
+ },
224
+ ];
225
+ break;
226
+ }
227
+ triggerCallbacks.forEach(({ eventName, callback }) => triggerEl.addEventListener(eventName, callback));
228
+ triggerEl.setAttribute('data-ion-popover-trigger', 'true');
229
+ return () => {
230
+ triggerCallbacks.forEach(({ eventName, callback }) => triggerEl.removeEventListener(eventName, callback));
231
+ triggerEl.removeAttribute('data-ion-popover-trigger');
232
+ };
233
+ };
234
+ /**
235
+ * Returns the index of an ion-item in an array of ion-items.
236
+ */
237
+ const getIndexOfItem = (items, item) => {
238
+ if (!item || item.tagName !== 'ION-ITEM') {
239
+ return -1;
240
+ }
241
+ return items.findIndex((el) => el === item);
242
+ };
243
+ /**
244
+ * Given an array of elements and a currently focused ion-item
245
+ * returns the next ion-item relative to the focused one or
246
+ * undefined.
247
+ */
248
+ const getNextItem = (items, currentItem) => {
249
+ const currentItemIndex = getIndexOfItem(items, currentItem);
250
+ return items[currentItemIndex + 1];
251
+ };
252
+ /**
253
+ * Given an array of elements and a currently focused ion-item
254
+ * returns the previous ion-item relative to the focused one or
255
+ * undefined.
256
+ */
257
+ const getPrevItem = (items, currentItem) => {
258
+ const currentItemIndex = getIndexOfItem(items, currentItem);
259
+ return items[currentItemIndex - 1];
260
+ };
261
+ /** Focus the internal button of the ion-item */
262
+ const focusItem = (item) => {
263
+ const root = getElementRoot(item);
264
+ const button = root.querySelector('button');
265
+ if (button) {
266
+ raf(() => button.focus());
267
+ }
268
+ };
269
+ /**
270
+ * Returns `true` if `el` has been designated
271
+ * as a trigger element for an ion-popover.
272
+ */
273
+ const isTriggerElement = (el) => el.hasAttribute('data-ion-popover-trigger');
274
+ const configureKeyboardInteraction = (popoverEl) => {
275
+ const callback = async (ev) => {
276
+ var _a;
277
+ const activeElement = document.activeElement;
278
+ let items = [];
279
+ const targetTagName = (_a = ev.target) === null || _a === void 0 ? void 0 : _a.tagName;
280
+ /**
281
+ * Only handle custom keyboard interactions for the host popover element
282
+ * and children ion-item elements.
283
+ */
284
+ if (targetTagName !== 'ION-POPOVER' && targetTagName !== 'ION-ITEM') {
285
+ return;
286
+ }
287
+ /**
288
+ * Complex selectors with :not() are :not supported
289
+ * in older versions of Chromium so we need to do a
290
+ * try/catch here so errors are not thrown.
291
+ */
292
+ try {
293
+ /**
294
+ * Select all ion-items that are not children of child popovers.
295
+ * i.e. only select ion-item elements that are part of this popover
296
+ */
297
+ items = Array.from(popoverEl.querySelectorAll('ion-item:not(ion-popover ion-popover *):not([disabled])'));
298
+ /* eslint-disable-next-line */
299
+ }
300
+ catch (_b) { }
301
+ switch (ev.key) {
302
+ /**
303
+ * If we are in a child popover
304
+ * then pressing the left arrow key
305
+ * should close this popover and move
306
+ * focus to the popover that presented
307
+ * this one.
308
+ */
309
+ case 'ArrowLeft':
310
+ const parentPopover = await popoverEl.getParentPopover();
311
+ if (parentPopover) {
312
+ popoverEl.dismiss(undefined, undefined, false);
313
+ }
314
+ break;
315
+ /**
316
+ * ArrowDown should move focus to the next focusable ion-item.
317
+ */
318
+ case 'ArrowDown':
319
+ // Disable movement/scroll with keyboard
320
+ ev.preventDefault();
321
+ const nextItem = getNextItem(items, activeElement);
322
+ if (nextItem !== undefined) {
323
+ focusItem(nextItem);
324
+ }
325
+ break;
326
+ /**
327
+ * ArrowUp should move focus to the previous focusable ion-item.
328
+ */
329
+ case 'ArrowUp':
330
+ // Disable movement/scroll with keyboard
331
+ ev.preventDefault();
332
+ const prevItem = getPrevItem(items, activeElement);
333
+ if (prevItem !== undefined) {
334
+ focusItem(prevItem);
335
+ }
336
+ break;
337
+ /**
338
+ * Home should move focus to the first focusable ion-item.
339
+ */
340
+ case 'Home':
341
+ ev.preventDefault();
342
+ const firstItem = items[0];
343
+ if (firstItem !== undefined) {
344
+ focusItem(firstItem);
345
+ }
346
+ break;
347
+ /**
348
+ * End should move focus to the last focusable ion-item.
349
+ */
350
+ case 'End':
351
+ ev.preventDefault();
352
+ const lastItem = items[items.length - 1];
353
+ if (lastItem !== undefined) {
354
+ focusItem(lastItem);
355
+ }
356
+ break;
357
+ /**
358
+ * ArrowRight, Spacebar, or Enter should activate
359
+ * the currently focused trigger item to open a
360
+ * popover if the element is a trigger item.
361
+ */
362
+ case 'ArrowRight':
363
+ case ' ':
364
+ case 'Enter':
365
+ if (activeElement && isTriggerElement(activeElement)) {
366
+ const rightEvent = new CustomEvent('ionPopoverActivateTrigger');
367
+ activeElement.dispatchEvent(rightEvent);
368
+ }
369
+ break;
370
+ }
371
+ };
372
+ popoverEl.addEventListener('keydown', callback);
373
+ return () => popoverEl.removeEventListener('keydown', callback);
374
+ };
375
+ /**
376
+ * Positions a popover by taking into account
377
+ * the reference point, preferred side, alignment
378
+ * and viewport dimensions.
379
+ */
380
+ const getPopoverPosition = (isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, triggerEl, event) => {
381
+ var _a;
382
+ let referenceCoordinates = {
383
+ top: 0,
384
+ left: 0,
385
+ width: 0,
386
+ height: 0,
387
+ };
388
+ /**
389
+ * Calculate position relative to the
390
+ * x-y coordinates in the event that
391
+ * was passed in
392
+ */
393
+ switch (reference) {
394
+ case 'event':
395
+ if (!event) {
396
+ return defaultPosition;
397
+ }
398
+ const mouseEv = event;
399
+ referenceCoordinates = {
400
+ top: mouseEv.clientY,
401
+ left: mouseEv.clientX,
402
+ width: 1,
403
+ height: 1,
404
+ };
405
+ break;
406
+ /**
407
+ * Calculate position relative to the bounding
408
+ * box on either the trigger element
409
+ * specified via the `trigger` prop or
410
+ * the target specified on the event
411
+ * that was passed in.
412
+ */
413
+ case 'trigger':
414
+ default:
415
+ const customEv = event;
416
+ /**
417
+ * ionShadowTarget is used when we need to align the
418
+ * popover with an element inside of the shadow root
419
+ * of an Ionic component. Ex: Presenting a popover
420
+ * by clicking on the collapsed indicator inside
421
+ * of `ion-breadcrumb` and centering it relative
422
+ * to the indicator rather than `ion-breadcrumb`
423
+ * as a whole.
424
+ */
425
+ const actualTriggerEl = (triggerEl ||
426
+ ((_a = customEv === null || customEv === void 0 ? void 0 : customEv.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) ||
427
+ (customEv === null || customEv === void 0 ? void 0 : customEv.target));
428
+ if (!actualTriggerEl) {
429
+ return defaultPosition;
430
+ }
431
+ const triggerBoundingBox = actualTriggerEl.getBoundingClientRect();
432
+ referenceCoordinates = {
433
+ top: triggerBoundingBox.top,
434
+ left: triggerBoundingBox.left,
435
+ width: triggerBoundingBox.width,
436
+ height: triggerBoundingBox.height,
437
+ };
438
+ break;
439
+ }
440
+ /**
441
+ * Get top/left offset that would allow
442
+ * popover to be positioned on the
443
+ * preferred side of the reference.
444
+ */
445
+ const coordinates = calculatePopoverSide(side, referenceCoordinates, contentWidth, contentHeight, arrowWidth, arrowHeight, isRTL);
446
+ /**
447
+ * Get the top/left adjustments that
448
+ * would allow the popover content
449
+ * to have the correct alignment.
450
+ */
451
+ const alignedCoordinates = calculatePopoverAlign(align, side, referenceCoordinates, contentWidth, contentHeight);
452
+ const top = coordinates.top + alignedCoordinates.top;
453
+ const left = coordinates.left + alignedCoordinates.left;
454
+ const { arrowTop, arrowLeft } = calculateArrowPosition(side, arrowWidth, arrowHeight, top, left, contentWidth, contentHeight, isRTL);
455
+ const { originX, originY } = calculatePopoverOrigin(side, align, isRTL);
456
+ return { top, left, referenceCoordinates, arrowTop, arrowLeft, originX, originY };
457
+ };
458
+ /**
459
+ * Determines the transform-origin
460
+ * of the popover animation so that it
461
+ * is in line with what the side and alignment
462
+ * prop values are. Currently only used
463
+ * with the MD animation.
464
+ */
465
+ const calculatePopoverOrigin = (side, align, isRTL) => {
466
+ switch (side) {
467
+ case 'top':
468
+ return { originX: getOriginXAlignment(align), originY: 'bottom' };
469
+ case 'bottom':
470
+ return { originX: getOriginXAlignment(align), originY: 'top' };
471
+ case 'left':
472
+ return { originX: 'right', originY: getOriginYAlignment(align) };
473
+ case 'right':
474
+ return { originX: 'left', originY: getOriginYAlignment(align) };
475
+ case 'start':
476
+ return { originX: isRTL ? 'left' : 'right', originY: getOriginYAlignment(align) };
477
+ case 'end':
478
+ return { originX: isRTL ? 'right' : 'left', originY: getOriginYAlignment(align) };
479
+ }
480
+ };
481
+ const getOriginXAlignment = (align) => {
482
+ switch (align) {
483
+ case 'start':
484
+ return 'left';
485
+ case 'center':
486
+ return 'center';
487
+ case 'end':
488
+ return 'right';
489
+ }
490
+ };
491
+ const getOriginYAlignment = (align) => {
492
+ switch (align) {
493
+ case 'start':
494
+ return 'top';
495
+ case 'center':
496
+ return 'center';
497
+ case 'end':
498
+ return 'bottom';
499
+ }
500
+ };
501
+ /**
502
+ * Calculates where the arrow positioning
503
+ * should be relative to the popover content.
504
+ */
505
+ const calculateArrowPosition = (side, arrowWidth, arrowHeight, top, left, contentWidth, contentHeight, isRTL) => {
506
+ /**
507
+ * Note: When side is left, right, start, or end, the arrow is
508
+ * been rotated using a `transform`, so to move the arrow up or down
509
+ * by its dimension, you need to use `arrowWidth`.
510
+ */
511
+ const leftPosition = {
512
+ arrowTop: top + contentHeight / 2 - arrowWidth / 2,
513
+ arrowLeft: left + contentWidth - arrowWidth / 2,
514
+ };
515
+ /**
516
+ * Move the arrow to the left by arrowWidth and then
517
+ * again by half of its width because we have rotated
518
+ * the arrow using a transform.
519
+ */
520
+ const rightPosition = { arrowTop: top + contentHeight / 2 - arrowWidth / 2, arrowLeft: left - arrowWidth * 1.5 };
521
+ switch (side) {
522
+ case 'top':
523
+ return { arrowTop: top + contentHeight, arrowLeft: left + contentWidth / 2 - arrowWidth / 2 };
524
+ case 'bottom':
525
+ return { arrowTop: top - arrowHeight, arrowLeft: left + contentWidth / 2 - arrowWidth / 2 };
526
+ case 'left':
527
+ return leftPosition;
528
+ case 'right':
529
+ return rightPosition;
530
+ case 'start':
531
+ return isRTL ? rightPosition : leftPosition;
532
+ case 'end':
533
+ return isRTL ? leftPosition : rightPosition;
534
+ default:
535
+ return { arrowTop: 0, arrowLeft: 0 };
536
+ }
537
+ };
538
+ /**
539
+ * Calculates the required top/left
540
+ * values needed to position the popover
541
+ * content on the side specified in the
542
+ * `side` prop.
543
+ */
544
+ const calculatePopoverSide = (side, triggerBoundingBox, contentWidth, contentHeight, arrowWidth, arrowHeight, isRTL) => {
545
+ const sideLeft = {
546
+ top: triggerBoundingBox.top,
547
+ left: triggerBoundingBox.left - contentWidth - arrowWidth,
548
+ };
549
+ const sideRight = {
550
+ top: triggerBoundingBox.top,
551
+ left: triggerBoundingBox.left + triggerBoundingBox.width + arrowWidth,
552
+ };
553
+ switch (side) {
554
+ case 'top':
555
+ return {
556
+ top: triggerBoundingBox.top - contentHeight - arrowHeight,
557
+ left: triggerBoundingBox.left,
558
+ };
559
+ case 'right':
560
+ return sideRight;
561
+ case 'bottom':
562
+ return {
563
+ top: triggerBoundingBox.top + triggerBoundingBox.height + arrowHeight,
564
+ left: triggerBoundingBox.left,
565
+ };
566
+ case 'left':
567
+ return sideLeft;
568
+ case 'start':
569
+ return isRTL ? sideRight : sideLeft;
570
+ case 'end':
571
+ return isRTL ? sideLeft : sideRight;
572
+ }
573
+ };
574
+ /**
575
+ * Calculates the required top/left
576
+ * offset values needed to provide the
577
+ * correct alignment regardless while taking
578
+ * into account the side the popover is on.
579
+ */
580
+ const calculatePopoverAlign = (align, side, triggerBoundingBox, contentWidth, contentHeight) => {
581
+ switch (align) {
582
+ case 'center':
583
+ return calculatePopoverCenterAlign(side, triggerBoundingBox, contentWidth, contentHeight);
584
+ case 'end':
585
+ return calculatePopoverEndAlign(side, triggerBoundingBox, contentWidth, contentHeight);
586
+ case 'start':
587
+ default:
588
+ return { top: 0, left: 0 };
589
+ }
590
+ };
591
+ /**
592
+ * Calculate the end alignment for
593
+ * the popover. If side is on the x-axis
594
+ * then the align values refer to the top
595
+ * and bottom margins of the content.
596
+ * If side is on the y-axis then the
597
+ * align values refer to the left and right
598
+ * margins of the content.
599
+ */
600
+ const calculatePopoverEndAlign = (side, triggerBoundingBox, contentWidth, contentHeight) => {
601
+ switch (side) {
602
+ case 'start':
603
+ case 'end':
604
+ case 'left':
605
+ case 'right':
606
+ return {
607
+ top: -(contentHeight - triggerBoundingBox.height),
608
+ left: 0,
609
+ };
610
+ case 'top':
611
+ case 'bottom':
612
+ default:
613
+ return {
614
+ top: 0,
615
+ left: -(contentWidth - triggerBoundingBox.width),
616
+ };
617
+ }
618
+ };
619
+ /**
620
+ * Calculate the center alignment for
621
+ * the popover. If side is on the x-axis
622
+ * then the align values refer to the top
623
+ * and bottom margins of the content.
624
+ * If side is on the y-axis then the
625
+ * align values refer to the left and right
626
+ * margins of the content.
627
+ */
628
+ const calculatePopoverCenterAlign = (side, triggerBoundingBox, contentWidth, contentHeight) => {
629
+ switch (side) {
630
+ case 'start':
631
+ case 'end':
632
+ case 'left':
633
+ case 'right':
634
+ return {
635
+ top: -(contentHeight / 2 - triggerBoundingBox.height / 2),
636
+ left: 0,
637
+ };
638
+ case 'top':
639
+ case 'bottom':
640
+ default:
641
+ return {
642
+ top: 0,
643
+ left: -(contentWidth / 2 - triggerBoundingBox.width / 2),
644
+ };
645
+ }
646
+ };
647
+ /**
648
+ * Adjusts popover positioning coordinates
649
+ * such that popover does not appear offscreen
650
+ * or overlapping safe area bounds.
651
+ */
652
+ const calculateWindowAdjustment = (side, coordTop, coordLeft, bodyPadding, bodyWidth, bodyHeight, contentWidth, contentHeight, safeAreaMargin, contentOriginX, contentOriginY, triggerCoordinates, coordArrowTop = 0, coordArrowLeft = 0, arrowHeight = 0) => {
653
+ let arrowTop = coordArrowTop;
654
+ const arrowLeft = coordArrowLeft;
655
+ let left = coordLeft;
656
+ let top = coordTop;
657
+ let bottom;
658
+ let originX = contentOriginX;
659
+ let originY = contentOriginY;
660
+ let checkSafeAreaLeft = false;
661
+ let checkSafeAreaRight = false;
662
+ const triggerTop = triggerCoordinates
663
+ ? triggerCoordinates.top + triggerCoordinates.height
664
+ : bodyHeight / 2 - contentHeight / 2;
665
+ const triggerHeight = triggerCoordinates ? triggerCoordinates.height : 0;
666
+ let addPopoverBottomClass = false;
667
+ /**
668
+ * Adjust popover so it does not
669
+ * go off the left of the screen.
670
+ */
671
+ if (left < bodyPadding + safeAreaMargin) {
672
+ left = bodyPadding;
673
+ checkSafeAreaLeft = true;
674
+ originX = 'left';
675
+ /**
676
+ * Adjust popover so it does not
677
+ * go off the right of the screen.
678
+ */
679
+ }
680
+ else if (contentWidth + bodyPadding + left + safeAreaMargin > bodyWidth) {
681
+ checkSafeAreaRight = true;
682
+ left = bodyWidth - contentWidth - bodyPadding;
683
+ originX = 'right';
684
+ }
685
+ /**
686
+ * Adjust popover so it does not
687
+ * go off the top of the screen.
688
+ * If popover is on the left or the right of
689
+ * the trigger, then we should not adjust top
690
+ * margins.
691
+ */
692
+ if (triggerTop + triggerHeight + contentHeight > bodyHeight && (side === 'top' || side === 'bottom')) {
693
+ if (triggerTop - contentHeight > 0) {
694
+ /**
695
+ * While we strive to align the popover with the trigger
696
+ * on smaller screens this is not always possible. As a result,
697
+ * we adjust the popover up so that it does not hang
698
+ * off the bottom of the screen. However, we do not want to move
699
+ * the popover up so much that it goes off the top of the screen.
700
+ *
701
+ * We chose 12 here so that the popover position looks a bit nicer as
702
+ * it is not right up against the edge of the screen.
703
+ */
704
+ top = Math.max(12, triggerTop - contentHeight - triggerHeight - (arrowHeight - 1));
705
+ arrowTop = top + contentHeight;
706
+ originY = 'bottom';
707
+ addPopoverBottomClass = true;
708
+ /**
709
+ * If not enough room for popover to appear
710
+ * above trigger, then cut it off.
711
+ */
712
+ }
713
+ else {
714
+ bottom = bodyPadding;
715
+ }
716
+ }
717
+ return {
718
+ top,
719
+ left,
720
+ bottom,
721
+ originX,
722
+ originY,
723
+ checkSafeAreaLeft,
724
+ checkSafeAreaRight,
725
+ arrowTop,
726
+ arrowLeft,
727
+ addPopoverBottomClass,
728
+ };
729
+ };
730
+ const shouldShowArrow = (side, didAdjustBounds = false, ev, trigger) => {
731
+ /**
732
+ * If no event provided and
733
+ * we do not have a trigger,
734
+ * then this popover was likely
735
+ * presented via the popoverController
736
+ * or users called `present` manually.
737
+ * In this case, the arrow should not be
738
+ * shown as we do not have a reference.
739
+ */
740
+ if (!ev && !trigger) {
741
+ return false;
742
+ }
743
+ /**
744
+ * If popover is on the left or the right
745
+ * of a trigger, but we needed to adjust the
746
+ * popover due to screen bounds, then we should
747
+ * hide the arrow as it will never be pointing
748
+ * at the trigger.
749
+ */
750
+ if (side !== 'top' && side !== 'bottom' && didAdjustBounds) {
751
+ return false;
752
+ }
753
+ return true;
754
+ };
755
+
756
+ /*!
757
+ * (C) Ionic http://ionicframework.com - MIT License
758
+ */
759
+ const POPOVER_IOS_BODY_PADDING = 5;
760
+ /**
761
+ * iOS Popover Enter Animation
762
+ */
763
+ // TODO(FW-2832): types
764
+ const iosEnterAnimation = (baseEl, opts) => {
765
+ var _a;
766
+ const { event: ev, size, trigger, reference, side, align } = opts;
767
+ const doc = baseEl.ownerDocument;
768
+ const isRTL = doc.dir === 'rtl';
769
+ const bodyWidth = doc.defaultView.innerWidth;
770
+ const bodyHeight = doc.defaultView.innerHeight;
771
+ const root = getElementRoot(baseEl);
772
+ const contentEl = root.querySelector('.popover-content');
773
+ const arrowEl = root.querySelector('.popover-arrow');
774
+ const referenceSizeEl = trigger || ((_a = ev === null || ev === void 0 ? void 0 : ev.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) || (ev === null || ev === void 0 ? void 0 : ev.target);
775
+ const { contentWidth, contentHeight } = getPopoverDimensions(size, contentEl, referenceSizeEl);
776
+ const { arrowWidth, arrowHeight } = getArrowDimensions(arrowEl);
777
+ const defaultPosition = {
778
+ top: bodyHeight / 2 - contentHeight / 2,
779
+ left: bodyWidth / 2 - contentWidth / 2,
780
+ originX: isRTL ? 'right' : 'left',
781
+ originY: 'top',
782
+ };
783
+ const results = getPopoverPosition(isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, trigger, ev);
784
+ const padding = size === 'cover' ? 0 : POPOVER_IOS_BODY_PADDING;
785
+ const margin = size === 'cover' ? 0 : 25;
786
+ const { originX, originY, top, left, bottom, checkSafeAreaLeft, checkSafeAreaRight, arrowTop, arrowLeft, addPopoverBottomClass, } = calculateWindowAdjustment(side, results.top, results.left, padding, bodyWidth, bodyHeight, contentWidth, contentHeight, margin, results.originX, results.originY, results.referenceCoordinates, results.arrowTop, results.arrowLeft, arrowHeight);
787
+ const baseAnimation = createAnimation();
788
+ const backdropAnimation = createAnimation();
789
+ const contentAnimation = createAnimation();
790
+ backdropAnimation
791
+ .addElement(root.querySelector('ion-backdrop'))
792
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
793
+ .beforeStyles({
794
+ 'pointer-events': 'none',
795
+ })
796
+ .afterClearStyles(['pointer-events']);
797
+ // In Chromium, if the wrapper animates, the backdrop filter doesn't work.
798
+ // The Chromium team stated that this behavior is expected and not a bug. The element animating opacity creates a backdrop root for the backdrop-filter.
799
+ // To get around this, instead of animating the wrapper, animate both the arrow and content.
800
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=1148826
801
+ contentAnimation
802
+ .addElement(root.querySelector('.popover-arrow'))
803
+ .addElement(root.querySelector('.popover-content'))
804
+ .fromTo('opacity', 0.01, 1);
805
+ // TODO(FW-4376) Ensure that arrow also blurs when translucent
806
+ return baseAnimation
807
+ .easing('ease')
808
+ .duration(100)
809
+ .beforeAddWrite(() => {
810
+ if (size === 'cover') {
811
+ baseEl.style.setProperty('--width', `${contentWidth}px`);
812
+ }
813
+ if (addPopoverBottomClass) {
814
+ baseEl.classList.add('popover-bottom');
815
+ }
816
+ if (bottom !== undefined) {
817
+ contentEl.style.setProperty('bottom', `${bottom}px`);
818
+ }
819
+ const safeAreaLeft = ' + var(--ion-safe-area-left, 0)';
820
+ const safeAreaRight = ' - var(--ion-safe-area-right, 0)';
821
+ let leftValue = `${left}px`;
822
+ if (checkSafeAreaLeft) {
823
+ leftValue = `${left}px${safeAreaLeft}`;
824
+ }
825
+ if (checkSafeAreaRight) {
826
+ leftValue = `${left}px${safeAreaRight}`;
827
+ }
828
+ contentEl.style.setProperty('top', `calc(${top}px + var(--offset-y, 0))`);
829
+ contentEl.style.setProperty('left', `calc(${leftValue} + var(--offset-x, 0))`);
830
+ contentEl.style.setProperty('transform-origin', `${originY} ${originX}`);
831
+ if (arrowEl !== null) {
832
+ const didAdjustBounds = results.top !== top || results.left !== left;
833
+ const showArrow = shouldShowArrow(side, didAdjustBounds, ev, trigger);
834
+ if (showArrow) {
835
+ arrowEl.style.setProperty('top', `calc(${arrowTop}px + var(--offset-y, 0))`);
836
+ arrowEl.style.setProperty('left', `calc(${arrowLeft}px + var(--offset-x, 0))`);
837
+ }
838
+ else {
839
+ arrowEl.style.setProperty('display', 'none');
840
+ }
841
+ }
842
+ })
843
+ .addAnimation([backdropAnimation, contentAnimation]);
844
+ };
845
+
846
+ /*!
847
+ * (C) Ionic http://ionicframework.com - MIT License
848
+ */
849
+ /**
850
+ * iOS Popover Leave Animation
851
+ */
852
+ const iosLeaveAnimation = (baseEl) => {
853
+ const root = getElementRoot(baseEl);
854
+ const contentEl = root.querySelector('.popover-content');
855
+ const arrowEl = root.querySelector('.popover-arrow');
856
+ const baseAnimation = createAnimation();
857
+ const backdropAnimation = createAnimation();
858
+ const contentAnimation = createAnimation();
859
+ backdropAnimation.addElement(root.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
860
+ contentAnimation
861
+ .addElement(root.querySelector('.popover-arrow'))
862
+ .addElement(root.querySelector('.popover-content'))
863
+ .fromTo('opacity', 0.99, 0);
864
+ return baseAnimation
865
+ .easing('ease')
866
+ .afterAddWrite(() => {
867
+ baseEl.style.removeProperty('--width');
868
+ baseEl.classList.remove('popover-bottom');
869
+ contentEl.style.removeProperty('top');
870
+ contentEl.style.removeProperty('left');
871
+ contentEl.style.removeProperty('bottom');
872
+ contentEl.style.removeProperty('transform-origin');
873
+ if (arrowEl) {
874
+ arrowEl.style.removeProperty('top');
875
+ arrowEl.style.removeProperty('left');
876
+ arrowEl.style.removeProperty('display');
877
+ }
878
+ })
879
+ .duration(300)
880
+ .addAnimation([backdropAnimation, contentAnimation]);
881
+ };
882
+
883
+ /*!
884
+ * (C) Ionic http://ionicframework.com - MIT License
885
+ */
886
+ const POPOVER_MD_BODY_PADDING = 12;
887
+ /**
888
+ * Md Popover Enter Animation
889
+ */
890
+ // TODO(FW-2832): types
891
+ const mdEnterAnimation = (baseEl, opts) => {
892
+ var _a;
893
+ const { event: ev, size, trigger, reference, side, align } = opts;
894
+ const doc = baseEl.ownerDocument;
895
+ const isRTL = doc.dir === 'rtl';
896
+ const bodyWidth = doc.defaultView.innerWidth;
897
+ const bodyHeight = doc.defaultView.innerHeight;
898
+ const root = getElementRoot(baseEl);
899
+ const contentEl = root.querySelector('.popover-content');
900
+ const referenceSizeEl = trigger || ((_a = ev === null || ev === void 0 ? void 0 : ev.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) || (ev === null || ev === void 0 ? void 0 : ev.target);
901
+ const { contentWidth, contentHeight } = getPopoverDimensions(size, contentEl, referenceSizeEl);
902
+ const defaultPosition = {
903
+ top: bodyHeight / 2 - contentHeight / 2,
904
+ left: bodyWidth / 2 - contentWidth / 2,
905
+ originX: isRTL ? 'right' : 'left',
906
+ originY: 'top',
907
+ };
908
+ const results = getPopoverPosition(isRTL, contentWidth, contentHeight, 0, 0, reference, side, align, defaultPosition, trigger, ev);
909
+ const padding = size === 'cover' ? 0 : POPOVER_MD_BODY_PADDING;
910
+ const { originX, originY, top, left, bottom } = calculateWindowAdjustment(side, results.top, results.left, padding, bodyWidth, bodyHeight, contentWidth, contentHeight, 0, results.originX, results.originY, results.referenceCoordinates);
911
+ const baseAnimation = createAnimation();
912
+ const backdropAnimation = createAnimation();
913
+ const wrapperAnimation = createAnimation();
914
+ const contentAnimation = createAnimation();
915
+ const viewportAnimation = createAnimation();
916
+ backdropAnimation
917
+ .addElement(root.querySelector('ion-backdrop'))
918
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
919
+ .beforeStyles({
920
+ 'pointer-events': 'none',
921
+ })
922
+ .afterClearStyles(['pointer-events']);
923
+ wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).duration(150).fromTo('opacity', 0.01, 1);
924
+ contentAnimation
925
+ .addElement(contentEl)
926
+ .beforeStyles({
927
+ top: `calc(${top}px + var(--offset-y, 0px))`,
928
+ left: `calc(${left}px + var(--offset-x, 0px))`,
929
+ 'transform-origin': `${originY} ${originX}`,
930
+ })
931
+ .beforeAddWrite(() => {
932
+ if (bottom !== undefined) {
933
+ contentEl.style.setProperty('bottom', `${bottom}px`);
934
+ }
935
+ })
936
+ .fromTo('transform', 'scale(0.8)', 'scale(1)');
937
+ viewportAnimation.addElement(root.querySelector('.popover-viewport')).fromTo('opacity', 0.01, 1);
938
+ return baseAnimation
939
+ .easing('cubic-bezier(0.36,0.66,0.04,1)')
940
+ .duration(300)
941
+ .beforeAddWrite(() => {
942
+ if (size === 'cover') {
943
+ baseEl.style.setProperty('--width', `${contentWidth}px`);
944
+ }
945
+ if (originY === 'bottom') {
946
+ baseEl.classList.add('popover-bottom');
947
+ }
948
+ })
949
+ .addAnimation([backdropAnimation, wrapperAnimation, contentAnimation, viewportAnimation]);
950
+ };
951
+
952
+ /*!
953
+ * (C) Ionic http://ionicframework.com - MIT License
954
+ */
955
+ /**
956
+ * Md Popover Leave Animation
957
+ */
958
+ const mdLeaveAnimation = (baseEl) => {
959
+ const root = getElementRoot(baseEl);
960
+ const contentEl = root.querySelector('.popover-content');
961
+ const baseAnimation = createAnimation();
962
+ const backdropAnimation = createAnimation();
963
+ const wrapperAnimation = createAnimation();
964
+ backdropAnimation.addElement(root.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
965
+ wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).fromTo('opacity', 0.99, 0);
966
+ return baseAnimation
967
+ .easing('ease')
968
+ .afterAddWrite(() => {
969
+ baseEl.style.removeProperty('--width');
970
+ baseEl.classList.remove('popover-bottom');
971
+ contentEl.style.removeProperty('top');
972
+ contentEl.style.removeProperty('left');
973
+ contentEl.style.removeProperty('bottom');
974
+ contentEl.style.removeProperty('transform-origin');
975
+ })
976
+ .duration(150)
977
+ .addAnimation([backdropAnimation, wrapperAnimation]);
978
+ };
979
+
980
+ const popoverIosCss = ":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:flex;position:fixed;align-items:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:flex;position:absolute;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:flex;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, #e6e6e6)}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden;z-index:11}.popover-arrow::after{top:3px;border-radius:3px;position:absolute;width:14px;height:14px;transform:rotate(45deg);background:var(--background);content:\"\";z-index:10}@supports (inset-inline-start: 0){.popover-arrow::after{inset-inline-start:3px}}@supports not (inset-inline-start: 0){.popover-arrow::after{left:3px}:host-context([dir=rtl]) .popover-arrow::after{left:unset;right:unset;right:3px}[dir=rtl] .popover-arrow::after{left:unset;right:unset;right:3px}@supports selector(:dir(rtl)){.popover-arrow::after:dir(rtl){left:unset;right:unset;right:3px}}}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports (backdrop-filter: blur(0)){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);backdrop-filter:saturate(180%) blur(20px)}}";
981
+
982
+ const popoverMdCss = ":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:flex;position:fixed;align-items:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:flex;position:absolute;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:flex;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content{border-radius:4px;transform-origin:left top}:host-context([dir=rtl]) .popover-content{transform-origin:right top}[dir=rtl] .popover-content{transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){transform-origin:right top}}.popover-viewport{transition-delay:100ms}.popover-wrapper{opacity:0}";
983
+
984
+ const Popover = /*@__PURE__*/ proxyCustomElement(class Popover extends H {
985
+ constructor() {
986
+ super();
987
+ this.__registerHost();
988
+ this.__attachShadow();
989
+ this.didPresent = createEvent(this, "ionPopoverDidPresent", 7);
990
+ this.willPresent = createEvent(this, "ionPopoverWillPresent", 7);
991
+ this.willDismiss = createEvent(this, "ionPopoverWillDismiss", 7);
992
+ this.didDismiss = createEvent(this, "ionPopoverDidDismiss", 7);
993
+ this.didPresentShorthand = createEvent(this, "didPresent", 7);
994
+ this.willPresentShorthand = createEvent(this, "willPresent", 7);
995
+ this.willDismissShorthand = createEvent(this, "willDismiss", 7);
996
+ this.didDismissShorthand = createEvent(this, "didDismiss", 7);
997
+ this.ionMount = createEvent(this, "ionMount", 7);
998
+ this.parentPopover = null;
999
+ this.coreDelegate = CoreDelegate();
1000
+ this.lockController = createLockController();
1001
+ this.inline = false;
1002
+ this.focusDescendantOnPresent = false;
1003
+ this.onBackdropTap = () => {
1004
+ this.dismiss(undefined, BACKDROP);
1005
+ };
1006
+ this.onLifecycle = (modalEvent) => {
1007
+ const el = this.usersElement;
1008
+ const name = LIFECYCLE_MAP[modalEvent.type];
1009
+ if (el && name) {
1010
+ const event = new CustomEvent(name, {
1011
+ bubbles: false,
1012
+ cancelable: false,
1013
+ detail: modalEvent.detail,
1014
+ });
1015
+ el.dispatchEvent(event);
1016
+ }
1017
+ };
1018
+ this.configureTriggerInteraction = () => {
1019
+ const { trigger, triggerAction, el, destroyTriggerInteraction } = this;
1020
+ if (destroyTriggerInteraction) {
1021
+ destroyTriggerInteraction();
1022
+ }
1023
+ if (trigger === undefined) {
1024
+ return;
1025
+ }
1026
+ const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
1027
+ if (!triggerEl) {
1028
+ printIonWarning(`A trigger element with the ID "${trigger}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`, this.el);
1029
+ return;
1030
+ }
1031
+ this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
1032
+ };
1033
+ this.configureKeyboardInteraction = () => {
1034
+ const { destroyKeyboardInteraction, el } = this;
1035
+ if (destroyKeyboardInteraction) {
1036
+ destroyKeyboardInteraction();
1037
+ }
1038
+ this.destroyKeyboardInteraction = configureKeyboardInteraction(el);
1039
+ };
1040
+ this.configureDismissInteraction = () => {
1041
+ const { destroyDismissInteraction, parentPopover, triggerAction, triggerEl, el } = this;
1042
+ if (!parentPopover || !triggerEl) {
1043
+ return;
1044
+ }
1045
+ if (destroyDismissInteraction) {
1046
+ destroyDismissInteraction();
1047
+ }
1048
+ this.destroyDismissInteraction = configureDismissInteraction(triggerEl, triggerAction, el, parentPopover);
1049
+ };
1050
+ this.presented = false;
1051
+ this.hasController = false;
1052
+ this.delegate = undefined;
1053
+ this.overlayIndex = undefined;
1054
+ this.enterAnimation = undefined;
1055
+ this.leaveAnimation = undefined;
1056
+ this.component = undefined;
1057
+ this.componentProps = undefined;
1058
+ this.keyboardClose = true;
1059
+ this.cssClass = undefined;
1060
+ this.backdropDismiss = true;
1061
+ this.event = undefined;
1062
+ this.showBackdrop = true;
1063
+ this.translucent = false;
1064
+ this.animated = true;
1065
+ this.htmlAttributes = undefined;
1066
+ this.triggerAction = 'click';
1067
+ this.trigger = undefined;
1068
+ this.size = 'auto';
1069
+ this.dismissOnSelect = false;
1070
+ this.reference = 'trigger';
1071
+ this.side = 'bottom';
1072
+ this.alignment = undefined;
1073
+ this.arrow = true;
1074
+ this.isOpen = false;
1075
+ this.keyboardEvents = false;
1076
+ this.keepContentsMounted = false;
1077
+ }
1078
+ onTriggerChange() {
1079
+ this.configureTriggerInteraction();
1080
+ }
1081
+ onIsOpenChange(newValue, oldValue) {
1082
+ if (newValue === true && oldValue === false) {
1083
+ this.present();
1084
+ }
1085
+ else if (newValue === false && oldValue === true) {
1086
+ this.dismiss();
1087
+ }
1088
+ }
1089
+ connectedCallback() {
1090
+ const { configureTriggerInteraction, el } = this;
1091
+ prepareOverlay(el);
1092
+ configureTriggerInteraction();
1093
+ }
1094
+ disconnectedCallback() {
1095
+ const { destroyTriggerInteraction } = this;
1096
+ if (destroyTriggerInteraction) {
1097
+ destroyTriggerInteraction();
1098
+ }
1099
+ }
1100
+ componentWillLoad() {
1101
+ const { el } = this;
1102
+ const popoverId = setOverlayId(el);
1103
+ this.parentPopover = el.closest(`ion-popover:not(#${popoverId})`);
1104
+ if (this.alignment === undefined) {
1105
+ this.alignment = getIonMode(this) === 'ios' ? 'center' : 'start';
1106
+ }
1107
+ }
1108
+ componentDidLoad() {
1109
+ const { parentPopover, isOpen } = this;
1110
+ /**
1111
+ * If popover was rendered with isOpen="true"
1112
+ * then we should open popover immediately.
1113
+ */
1114
+ if (isOpen === true) {
1115
+ raf(() => this.present());
1116
+ }
1117
+ if (parentPopover) {
1118
+ addEventListener(parentPopover, 'ionPopoverWillDismiss', () => {
1119
+ this.dismiss(undefined, undefined, false);
1120
+ });
1121
+ }
1122
+ /**
1123
+ * When binding values in frameworks such as Angular
1124
+ * it is possible for the value to be set after the Web Component
1125
+ * initializes but before the value watcher is set up in Stencil.
1126
+ * As a result, the watcher callback may not be fired.
1127
+ * We work around this by manually calling the watcher
1128
+ * callback when the component has loaded and the watcher
1129
+ * is configured.
1130
+ */
1131
+ this.configureTriggerInteraction();
1132
+ }
1133
+ /**
1134
+ * When opening a popover from a trigger, we should not be
1135
+ * modifying the `event` prop from inside the component.
1136
+ * Additionally, when pressing the "Right" arrow key, we need
1137
+ * to shift focus to the first descendant in the newly presented
1138
+ * popover.
1139
+ *
1140
+ * @internal
1141
+ */
1142
+ async presentFromTrigger(event, focusDescendant = false) {
1143
+ this.focusDescendantOnPresent = focusDescendant;
1144
+ await this.present(event);
1145
+ this.focusDescendantOnPresent = false;
1146
+ }
1147
+ /**
1148
+ * Determines whether or not an overlay
1149
+ * is being used inline or via a controller/JS
1150
+ * and returns the correct delegate.
1151
+ * By default, subsequent calls to getDelegate
1152
+ * will use a cached version of the delegate.
1153
+ * This is useful for calling dismiss after
1154
+ * present so that the correct delegate is given.
1155
+ */
1156
+ getDelegate(force = false) {
1157
+ if (this.workingDelegate && !force) {
1158
+ return {
1159
+ delegate: this.workingDelegate,
1160
+ inline: this.inline,
1161
+ };
1162
+ }
1163
+ /**
1164
+ * If using overlay inline
1165
+ * we potentially need to use the coreDelegate
1166
+ * so that this works in vanilla JS apps.
1167
+ * If a developer has presented this component
1168
+ * via a controller, then we can assume
1169
+ * the component is already in the
1170
+ * correct place.
1171
+ */
1172
+ const parentEl = this.el.parentNode;
1173
+ const inline = (this.inline = parentEl !== null && !this.hasController);
1174
+ const delegate = (this.workingDelegate = inline ? this.delegate || this.coreDelegate : this.delegate);
1175
+ return { inline, delegate };
1176
+ }
1177
+ /**
1178
+ * Present the popover overlay after it has been created.
1179
+ * Developers can pass a mouse, touch, or pointer event
1180
+ * to position the popover relative to where that event
1181
+ * was dispatched.
1182
+ */
1183
+ async present(event) {
1184
+ const unlock = await this.lockController.lock();
1185
+ if (this.presented) {
1186
+ unlock();
1187
+ return;
1188
+ }
1189
+ const { el } = this;
1190
+ const { inline, delegate } = this.getDelegate(true);
1191
+ /**
1192
+ * Emit ionMount so JS Frameworks have an opportunity
1193
+ * to add the child component to the DOM. The child
1194
+ * component will be assigned to this.usersElement below.
1195
+ */
1196
+ this.ionMount.emit();
1197
+ this.usersElement = await attachComponent(delegate, el, this.component, ['popover-viewport'], this.componentProps, inline);
1198
+ if (!this.keyboardEvents) {
1199
+ this.configureKeyboardInteraction();
1200
+ }
1201
+ this.configureDismissInteraction();
1202
+ /**
1203
+ * When using the lazy loaded build of Stencil, we need to wait
1204
+ * for every Stencil component instance to be ready before presenting
1205
+ * otherwise there can be a flash of unstyled content. With the
1206
+ * custom elements bundle we need to wait for the JS framework
1207
+ * mount the inner contents of the overlay otherwise WebKit may
1208
+ * get the transition incorrect.
1209
+ */
1210
+ if (hasLazyBuild(el)) {
1211
+ await deepReady(this.usersElement);
1212
+ /**
1213
+ * If keepContentsMounted="true" then the
1214
+ * JS Framework has already mounted the inner
1215
+ * contents so there is no need to wait.
1216
+ * Otherwise, we need to wait for the JS
1217
+ * Framework to mount the inner contents
1218
+ * of this component.
1219
+ */
1220
+ }
1221
+ else if (!this.keepContentsMounted) {
1222
+ await waitForMount();
1223
+ }
1224
+ await present(this, 'popoverEnter', iosEnterAnimation, mdEnterAnimation, {
1225
+ event: event || this.event,
1226
+ size: this.size,
1227
+ trigger: this.triggerEl,
1228
+ reference: this.reference,
1229
+ side: this.side,
1230
+ align: this.alignment,
1231
+ });
1232
+ /**
1233
+ * If popover is nested and was
1234
+ * presented using the "Right" arrow key,
1235
+ * we need to move focus to the first
1236
+ * descendant inside of the popover.
1237
+ */
1238
+ if (this.focusDescendantOnPresent) {
1239
+ focusFirstDescendant(this.el, this.el);
1240
+ }
1241
+ unlock();
1242
+ }
1243
+ /**
1244
+ * Dismiss the popover overlay after it has been presented.
1245
+ *
1246
+ * @param data Any data to emit in the dismiss events.
1247
+ * @param role The role of the element that is dismissing the popover. For example, 'cancel' or 'backdrop'.
1248
+ * @param dismissParentPopover If `true`, dismissing this popover will also dismiss
1249
+ * a parent popover if this popover is nested. Defaults to `true`.
1250
+ *
1251
+ * This is a no-op if the overlay has not been presented yet. If you want
1252
+ * to remove an overlay from the DOM that was never presented, use the
1253
+ * [remove](https://developer.mozilla.org/en-US/docs/Web/API/Element/remove) method.
1254
+ */
1255
+ async dismiss(data, role, dismissParentPopover = true) {
1256
+ const unlock = await this.lockController.lock();
1257
+ const { destroyKeyboardInteraction, destroyDismissInteraction } = this;
1258
+ if (dismissParentPopover && this.parentPopover) {
1259
+ this.parentPopover.dismiss(data, role, dismissParentPopover);
1260
+ }
1261
+ const shouldDismiss = await dismiss(this, data, role, 'popoverLeave', iosLeaveAnimation, mdLeaveAnimation, this.event);
1262
+ if (shouldDismiss) {
1263
+ if (destroyKeyboardInteraction) {
1264
+ destroyKeyboardInteraction();
1265
+ this.destroyKeyboardInteraction = undefined;
1266
+ }
1267
+ if (destroyDismissInteraction) {
1268
+ destroyDismissInteraction();
1269
+ this.destroyDismissInteraction = undefined;
1270
+ }
1271
+ /**
1272
+ * If using popover inline
1273
+ * we potentially need to use the coreDelegate
1274
+ * so that this works in vanilla JS apps
1275
+ */
1276
+ const { delegate } = this.getDelegate();
1277
+ await detachComponent(delegate, this.usersElement);
1278
+ }
1279
+ unlock();
1280
+ return shouldDismiss;
1281
+ }
1282
+ /**
1283
+ * @internal
1284
+ */
1285
+ async getParentPopover() {
1286
+ return this.parentPopover;
1287
+ }
1288
+ /**
1289
+ * Returns a promise that resolves when the popover did dismiss.
1290
+ */
1291
+ onDidDismiss() {
1292
+ return eventMethod(this.el, 'ionPopoverDidDismiss');
1293
+ }
1294
+ /**
1295
+ * Returns a promise that resolves when the popover will dismiss.
1296
+ */
1297
+ onWillDismiss() {
1298
+ return eventMethod(this.el, 'ionPopoverWillDismiss');
1299
+ }
1300
+ render() {
1301
+ const mode = getIonMode(this);
1302
+ const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes } = this;
1303
+ const desktop = isPlatform('desktop');
1304
+ const enableArrow = arrow && !parentPopover;
1305
+ return (h(Host, Object.assign({ key: 'f3b86c7bc6ef6b1b27a6ac78e7ddd98e46223bd4', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1306
+ zIndex: `${20000 + this.overlayIndex}`,
1307
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && h("ion-backdrop", { key: 'f7fbd914100838ed7d419eedd19e6b1efa691127', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { key: 'a651cb4daa6556e761c2e2b672306ad25e4c9429', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { key: '7c5c7d8d6f9530535124e3fc75a38055f68b7589', class: "popover-arrow", part: "arrow" }), h("div", { key: '9f92fff4f36941e8f7de9774aef7d7508ca5cfe5', class: "popover-content", part: "content" }, h("slot", { key: '26c4e3df40a4832caff996ead3321c656eb5704f' })))));
1308
+ }
1309
+ get el() { return this; }
1310
+ static get watchers() { return {
1311
+ "trigger": ["onTriggerChange"],
1312
+ "triggerAction": ["onTriggerChange"],
1313
+ "isOpen": ["onIsOpenChange"]
1314
+ }; }
1315
+ static get style() { return {
1316
+ ios: popoverIosCss,
1317
+ md: popoverMdCss
1318
+ }; }
1319
+ }, [33, "ion-popover", {
1320
+ "hasController": [4, "has-controller"],
1321
+ "delegate": [16],
1322
+ "overlayIndex": [2, "overlay-index"],
1323
+ "enterAnimation": [16],
1324
+ "leaveAnimation": [16],
1325
+ "component": [1],
1326
+ "componentProps": [16],
1327
+ "keyboardClose": [4, "keyboard-close"],
1328
+ "cssClass": [1, "css-class"],
1329
+ "backdropDismiss": [4, "backdrop-dismiss"],
1330
+ "event": [8],
1331
+ "showBackdrop": [4, "show-backdrop"],
1332
+ "translucent": [4],
1333
+ "animated": [4],
1334
+ "htmlAttributes": [16],
1335
+ "triggerAction": [1, "trigger-action"],
1336
+ "trigger": [1],
1337
+ "size": [1],
1338
+ "dismissOnSelect": [4, "dismiss-on-select"],
1339
+ "reference": [1],
1340
+ "side": [1],
1341
+ "alignment": [1025],
1342
+ "arrow": [4],
1343
+ "isOpen": [4, "is-open"],
1344
+ "keyboardEvents": [4, "keyboard-events"],
1345
+ "keepContentsMounted": [4, "keep-contents-mounted"],
1346
+ "presented": [32],
1347
+ "presentFromTrigger": [64],
1348
+ "present": [64],
1349
+ "dismiss": [64],
1350
+ "getParentPopover": [64],
1351
+ "onDidDismiss": [64],
1352
+ "onWillDismiss": [64]
1353
+ }]);
1354
+ const LIFECYCLE_MAP = {
1355
+ ionPopoverDidPresent: 'ionViewDidEnter',
1356
+ ionPopoverWillPresent: 'ionViewWillEnter',
1357
+ ionPopoverWillDismiss: 'ionViewWillLeave',
1358
+ ionPopoverDidDismiss: 'ionViewDidLeave',
1359
+ };
1360
+ function defineCustomElement() {
1361
+ if (typeof customElements === "undefined") {
1362
+ return;
1363
+ }
1364
+ const components = ["ion-popover", "ion-backdrop"];
1365
+ components.forEach(tagName => { switch (tagName) {
1366
+ case "ion-popover":
1367
+ if (!customElements.get(tagName)) {
1368
+ customElements.define(tagName, Popover);
1369
+ }
1370
+ break;
1371
+ case "ion-backdrop":
1372
+ if (!customElements.get(tagName)) {
1373
+ defineCustomElement$1();
1374
+ }
1375
+ break;
1376
+ } });
1377
+ }
1378
+
1379
+ export { Popover as P, defineCustomElement as d };