@venite/components 0.16.33 → 0.16.36

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 (1940) hide show
  1. package/dist/cjs/animation-ee586546.js +986 -0
  2. package/dist/cjs/app-globals-5906b2f0.js +7 -0
  3. package/dist/cjs/cubic-bezier-53d26d05.js +93 -0
  4. package/dist/cjs/dir-5af5259a.js +20 -0
  5. package/dist/cjs/focus-visible-b0b07ba6.js +76 -0
  6. package/dist/cjs/framework-delegate-59a98abd.js +111 -0
  7. package/dist/cjs/gesture-controller-0eb5579e.js +196 -0
  8. package/dist/cjs/haptic-780f33c4.js +116 -0
  9. package/dist/cjs/hardware-back-button-92d97ff8.js +76 -0
  10. package/dist/cjs/helpers-c2496722.js +425 -0
  11. package/dist/{esm/index-f0f6a379.js → cjs/index-01fdec29.js} +566 -132
  12. package/dist/cjs/index-12082cba.js +465 -0
  13. package/dist/cjs/index-25a76ef5.js +30 -0
  14. package/dist/cjs/index-59bd9a39.js +232 -0
  15. package/dist/cjs/index-8b5629a6.js +186 -0
  16. package/dist/cjs/index-9c7b27e4.js +140 -0
  17. package/dist/cjs/index-af080b50.js +139 -0
  18. package/dist/cjs/index-b6879fbc.js +48 -0
  19. package/dist/cjs/index-e56e09b8.js +38 -0
  20. package/dist/cjs/index-f8a7d3a6.js +314 -0
  21. package/dist/cjs/input-shims-f9d0c582.js +428 -0
  22. package/dist/cjs/ion-accordion-group.cjs.entry.js +205 -0
  23. package/dist/cjs/ion-accordion.cjs.entry.js +336 -0
  24. package/dist/cjs/ion-action-sheet_10.cjs.entry.js +3053 -0
  25. package/dist/cjs/ion-app.cjs.entry.js +30 -11
  26. package/dist/cjs/ion-avatar.cjs.entry.js +2 -2
  27. package/dist/cjs/ion-back-button.cjs.entry.js +27 -12
  28. package/dist/cjs/ion-backdrop.cjs.entry.js +5 -5
  29. package/dist/cjs/ion-badge.cjs.entry.js +6 -4
  30. package/dist/cjs/ion-breadcrumb.cjs.entry.js +101 -0
  31. package/dist/cjs/ion-breadcrumbs.cjs.entry.js +133 -0
  32. package/dist/cjs/ion-button_14.cjs.entry.js +2231 -0
  33. package/dist/cjs/ion-card-content_6.cjs.entry.js +51 -41
  34. package/dist/cjs/ion-card-subtitle.cjs.entry.js +7 -4
  35. package/dist/cjs/ion-card_2.cjs.entry.js +21 -15
  36. package/dist/cjs/ion-chip.cjs.entry.js +15 -6
  37. package/dist/cjs/ion-datetime-button.cjs.entry.js +312 -0
  38. package/dist/cjs/ion-datetime_4.cjs.entry.js +2584 -0
  39. package/dist/cjs/ion-fab-button.cjs.entry.js +43 -9
  40. package/dist/cjs/ion-fab-list.cjs.entry.js +4 -4
  41. package/dist/cjs/ion-fab.cjs.entry.js +15 -13
  42. package/dist/cjs/ion-footer.cjs.entry.js +139 -9
  43. package/dist/cjs/ion-img.cjs.entry.js +38 -9
  44. package/dist/cjs/ion-infinite-scroll-content.cjs.entry.js +5 -5
  45. package/dist/cjs/ion-infinite-scroll.cjs.entry.js +13 -13
  46. package/dist/cjs/ion-input_2.cjs.entry.js +102 -23
  47. package/dist/cjs/ion-item-divider.cjs.entry.js +8 -4
  48. package/dist/cjs/ion-item-group.cjs.entry.js +3 -3
  49. package/dist/cjs/ion-item-option.cjs.entry.js +13 -8
  50. package/dist/cjs/ion-item-options.cjs.entry.js +5 -5
  51. package/dist/cjs/ion-item-sliding.cjs.entry.js +69 -30
  52. package/dist/cjs/ion-loading.cjs.entry.js +92 -90
  53. package/dist/cjs/ion-menu-button.cjs.entry.js +27 -12
  54. package/dist/cjs/ion-menu-toggle.cjs.entry.js +7 -7
  55. package/dist/cjs/ion-menu.cjs.entry.js +172 -53
  56. package/dist/cjs/ion-modal.cjs.entry.js +1517 -318
  57. package/dist/cjs/ion-nav-link.cjs.entry.js +23 -20
  58. package/dist/cjs/ion-nav.cjs.entry.js +284 -224
  59. package/dist/cjs/ion-picker-column.cjs.entry.js +31 -27
  60. package/dist/cjs/ion-picker.cjs.entry.js +59 -52
  61. package/dist/cjs/ion-progress-bar.cjs.entry.js +23 -16
  62. package/dist/cjs/ion-range.cjs.entry.js +182 -62
  63. package/dist/cjs/ion-refresher-content.cjs.entry.js +7 -12
  64. package/dist/cjs/ion-refresher.cjs.entry.js +264 -293
  65. package/dist/cjs/ion-reorder-group.cjs.entry.js +19 -19
  66. package/dist/cjs/ion-reorder.cjs.entry.js +12 -5
  67. package/dist/cjs/ion-route-redirect.cjs.entry.js +1 -1
  68. package/dist/cjs/ion-route.cjs.entry.js +1 -1
  69. package/dist/cjs/ion-router-link.cjs.entry.js +9 -6
  70. package/dist/cjs/ion-router-outlet.cjs.entry.js +65 -25
  71. package/dist/cjs/ion-router.cjs.entry.js +598 -398
  72. package/dist/cjs/ion-segment_16.cjs.entry.js +172 -47
  73. package/dist/cjs/ion-slide.cjs.entry.js +3 -3
  74. package/dist/cjs/ion-slides.cjs.entry.js +38 -51
  75. package/dist/cjs/ion-spinner.cjs.entry.js +12 -8
  76. package/dist/cjs/ion-split-pane.cjs.entry.js +16 -12
  77. package/dist/cjs/ion-tab-bar.cjs.entry.js +24 -15
  78. package/dist/cjs/ion-tab-button.cjs.entry.js +11 -7
  79. package/dist/cjs/ion-tab.cjs.entry.js +4 -3
  80. package/dist/cjs/ion-tabs.cjs.entry.js +4 -5
  81. package/dist/cjs/ion-text.cjs.entry.js +6 -4
  82. package/dist/cjs/ion-textarea.cjs.entry.js +67 -36
  83. package/dist/cjs/ion-thumbnail.cjs.entry.js +2 -2
  84. package/dist/cjs/ion-toast.cjs.entry.js +105 -113
  85. package/dist/cjs/ion-virtual-scroll.cjs.entry.js +239 -228
  86. package/dist/cjs/ionic-global-bd0aab94.js +230 -0
  87. package/dist/cjs/ios.transition-f008fdcc.js +482 -0
  88. package/dist/cjs/keyboard-91096619.js +140 -0
  89. package/dist/cjs/ldf-day-name_5.cjs.entry.js +7 -7
  90. package/dist/cjs/ldf-editable-add-block-menu.cjs.entry.js +1 -1
  91. package/dist/cjs/ldf-editable-boolean_2.cjs.entry.js +129 -0
  92. package/dist/cjs/ldf-editable-condition-piece.cjs.entry.js +5 -2
  93. package/dist/cjs/ldf-editable-condition.cjs.entry.js +1 -1
  94. package/dist/cjs/ldf-editable-filter-documents.cjs.entry.js +1 -1
  95. package/dist/cjs/ldf-editable-lookup_2.cjs.entry.js +1 -1
  96. package/dist/cjs/ldf-editable-metadata.cjs.entry.js +1 -1
  97. package/dist/cjs/ldf-editable-preference-option.cjs.entry.js +1 -1
  98. package/dist/cjs/ldf-editable-preference.cjs.entry.js +1 -1
  99. package/dist/cjs/ldf-editable-preferences.cjs.entry.js +5 -4
  100. package/dist/cjs/ldf-editable-string-list.cjs.entry.js +3 -2
  101. package/dist/cjs/ldf-editor-cursors.cjs.entry.js +1 -1
  102. package/dist/cjs/ldf-editor.cjs.entry.js +1 -1
  103. package/dist/cjs/ldf.cjs.js +5 -5
  104. package/dist/cjs/loader.cjs.js +5 -5
  105. package/dist/cjs/md.transition-19d9d9b2.js +57 -0
  106. package/dist/cjs/menu-toggle-util-b6fb068f.js +14 -0
  107. package/dist/cjs/overlays-240c867b.js +509 -0
  108. package/dist/cjs/parse-c36185aa.js +1303 -0
  109. package/dist/cjs/spinner-configs-0ac05f2d.js +147 -0
  110. package/dist/cjs/status-tap-edb6375f.js +42 -0
  111. package/dist/cjs/swipe-back-4a826f9b.js +76 -0
  112. package/dist/cjs/{swiper.bundle-cb0f61f7.js → swiper.bundle-8c897c07.js} +260 -86
  113. package/dist/cjs/theme-b0b295c1.js +48 -0
  114. package/dist/collection/collection-manifest.json +9 -2
  115. package/dist/collection/components/bible-reading/bible-reading.js +1 -2
  116. package/dist/collection/components/day-name/day-name.js +1 -2
  117. package/dist/collection/components/editable-antiphon-field/editable-antiphon-field.js +1 -2
  118. package/dist/collection/components/editable-condition-piece/dist/editable-condition-piece.js +6 -4
  119. package/dist/collection/components/editable-condition-piece/editable-condition-piece.js +6 -4
  120. package/dist/collection/components/editable-string-list/dist/editable-string-list.js +51 -51
  121. package/dist/collection/components/editable-string-list/editable-string-list.js +2 -1
  122. package/dist/collection/components/editable-text/editable-text.js +1 -1
  123. package/dist/collection/components/string/string.css +1 -1
  124. package/dist/esm/animation-fa1c28fc.js +984 -0
  125. package/dist/esm/app-globals-07fa76a3.js +5 -0
  126. package/dist/esm/cubic-bezier-4c0db14f.js +91 -0
  127. package/dist/esm/dir-03012648.js +18 -0
  128. package/dist/esm/focus-visible-4e9a0764.js +74 -0
  129. package/dist/esm/framework-delegate-d512b396.js +107 -0
  130. package/dist/esm/gesture-controller-7be18351.js +194 -0
  131. package/dist/esm/haptic-522f76f2.js +110 -0
  132. package/dist/esm/hardware-back-button-fa04d6e9.js +71 -0
  133. package/dist/esm/helpers-af86adf0.js +403 -0
  134. package/dist/{cjs/index-8fe0df8d.js → esm/index-034add74.js} +530 -167
  135. package/dist/esm/index-09acb2ac.js +128 -0
  136. package/dist/esm/index-21661af2.js +463 -0
  137. package/dist/esm/index-5aa6aa3e.js +28 -0
  138. package/dist/esm/index-7a608887.js +312 -0
  139. package/dist/esm/index-ac6e5d74.js +34 -0
  140. package/dist/esm/index-be6112f8.js +137 -0
  141. package/dist/esm/index-ef8020d2.js +184 -0
  142. package/dist/esm/index-f258b2dd.js +25 -0
  143. package/dist/esm/index-faad3da4.js +223 -0
  144. package/dist/esm/input-shims-5f3fd3d0.js +426 -0
  145. package/dist/esm/ion-accordion-group.entry.js +201 -0
  146. package/dist/esm/ion-accordion.entry.js +332 -0
  147. package/dist/esm/ion-action-sheet_10.entry.js +3040 -0
  148. package/dist/esm/ion-app.entry.js +30 -11
  149. package/dist/esm/ion-avatar.entry.js +2 -2
  150. package/dist/esm/ion-back-button.entry.js +27 -12
  151. package/dist/esm/ion-backdrop.entry.js +5 -5
  152. package/dist/esm/ion-badge.entry.js +6 -4
  153. package/dist/esm/ion-breadcrumb.entry.js +97 -0
  154. package/dist/esm/ion-breadcrumbs.entry.js +129 -0
  155. package/dist/esm/ion-button_14.entry.js +2214 -0
  156. package/dist/esm/ion-card-content_6.entry.js +51 -41
  157. package/dist/esm/ion-card-subtitle.entry.js +7 -4
  158. package/dist/esm/ion-card_2.entry.js +21 -15
  159. package/dist/esm/ion-chip.entry.js +15 -6
  160. package/dist/esm/ion-datetime-button.entry.js +308 -0
  161. package/dist/esm/ion-datetime_4.entry.js +2577 -0
  162. package/dist/esm/ion-fab-button.entry.js +43 -9
  163. package/dist/esm/ion-fab-list.entry.js +4 -4
  164. package/dist/esm/ion-fab.entry.js +15 -13
  165. package/dist/esm/ion-footer.entry.js +137 -7
  166. package/dist/esm/ion-img.entry.js +38 -9
  167. package/dist/esm/ion-infinite-scroll-content.entry.js +5 -5
  168. package/dist/esm/ion-infinite-scroll.entry.js +13 -13
  169. package/dist/esm/ion-input_2.entry.js +102 -23
  170. package/dist/esm/ion-item-divider.entry.js +8 -4
  171. package/dist/esm/ion-item-group.entry.js +3 -3
  172. package/dist/esm/ion-item-option.entry.js +13 -8
  173. package/dist/esm/ion-item-options.entry.js +5 -5
  174. package/dist/esm/ion-item-sliding.entry.js +69 -30
  175. package/dist/esm/ion-loading.entry.js +92 -90
  176. package/dist/esm/ion-menu-button.entry.js +27 -12
  177. package/dist/esm/ion-menu-toggle.entry.js +7 -7
  178. package/dist/esm/ion-menu.entry.js +172 -53
  179. package/dist/esm/ion-modal.entry.js +1509 -310
  180. package/dist/esm/ion-nav-link.entry.js +23 -20
  181. package/dist/esm/ion-nav.entry.js +284 -224
  182. package/dist/esm/ion-picker-column.entry.js +31 -27
  183. package/dist/esm/ion-picker.entry.js +59 -52
  184. package/dist/esm/ion-progress-bar.entry.js +23 -16
  185. package/dist/esm/ion-range.entry.js +182 -62
  186. package/dist/esm/ion-refresher-content.entry.js +7 -12
  187. package/dist/esm/ion-refresher.entry.js +263 -292
  188. package/dist/esm/ion-reorder-group.entry.js +19 -19
  189. package/dist/esm/ion-reorder.entry.js +12 -5
  190. package/dist/esm/ion-route-redirect.entry.js +1 -1
  191. package/dist/esm/ion-route.entry.js +1 -1
  192. package/dist/esm/ion-router-link.entry.js +9 -6
  193. package/dist/esm/ion-router-outlet.entry.js +65 -25
  194. package/dist/esm/ion-router.entry.js +598 -398
  195. package/dist/esm/ion-segment_16.entry.js +172 -47
  196. package/dist/esm/ion-slide.entry.js +3 -3
  197. package/dist/esm/ion-slides.entry.js +38 -51
  198. package/dist/esm/ion-spinner.entry.js +12 -8
  199. package/dist/esm/ion-split-pane.entry.js +16 -12
  200. package/dist/esm/ion-tab-bar.entry.js +24 -15
  201. package/dist/esm/ion-tab-button.entry.js +11 -7
  202. package/dist/esm/ion-tab.entry.js +4 -3
  203. package/dist/esm/ion-tabs.entry.js +4 -5
  204. package/dist/esm/ion-text.entry.js +6 -4
  205. package/dist/esm/ion-textarea.entry.js +67 -36
  206. package/dist/esm/ion-thumbnail.entry.js +2 -2
  207. package/dist/esm/ion-toast.entry.js +105 -113
  208. package/dist/esm/ion-virtual-scroll.entry.js +239 -228
  209. package/dist/esm/ionic-global-24253941.js +225 -0
  210. package/dist/esm/ios.transition-971db583.js +479 -0
  211. package/dist/esm/keyboard-7e8329b3.js +128 -0
  212. package/dist/esm/ldf-day-name_5.entry.js +7 -7
  213. package/dist/esm/ldf-editable-add-block-menu.entry.js +1 -1
  214. package/dist/esm/ldf-editable-boolean_2.entry.js +124 -0
  215. package/dist/esm/ldf-editable-condition-piece.entry.js +5 -2
  216. package/dist/esm/ldf-editable-condition.entry.js +1 -1
  217. package/dist/esm/ldf-editable-filter-documents.entry.js +1 -1
  218. package/dist/esm/ldf-editable-lookup_2.entry.js +1 -1
  219. package/dist/esm/ldf-editable-metadata.entry.js +1 -1
  220. package/dist/esm/ldf-editable-preference-option.entry.js +1 -1
  221. package/dist/esm/ldf-editable-preference.entry.js +1 -1
  222. package/dist/esm/ldf-editable-preferences.entry.js +5 -4
  223. package/dist/esm/ldf-editable-string-list.entry.js +3 -2
  224. package/dist/esm/ldf-editor-cursors.entry.js +1 -1
  225. package/dist/esm/ldf-editor.entry.js +1 -1
  226. package/dist/esm/ldf.js +5 -5
  227. package/dist/esm/loader.js +5 -5
  228. package/dist/esm/md.transition-e0dd51e0.js +55 -0
  229. package/dist/esm/menu-toggle-util-22353199.js +12 -0
  230. package/dist/esm/overlays-59377e10.js +492 -0
  231. package/dist/esm/parse-9ce69067.js +1260 -0
  232. package/dist/esm/polyfills/css-shim.js +1 -1
  233. package/dist/esm/spinner-configs-a37e628a.js +145 -0
  234. package/dist/esm/status-tap-39682200.js +40 -0
  235. package/dist/esm/swipe-back-cac0fc31.js +74 -0
  236. package/dist/esm/{swiper.bundle-13b9da83.js → swiper.bundle-b6a959de.js} +260 -86
  237. package/dist/esm/theme-7ef00c83.js +43 -0
  238. package/dist/ldf/ldf.esm.js +1 -1
  239. package/dist/ldf/p-011c0279.js +4 -0
  240. package/dist/ldf/p-01454f1d.entry.js +1 -0
  241. package/dist/ldf/p-05c32d13.entry.js +1 -0
  242. package/dist/ldf/{p-aeaa99ba.entry.js → p-06480ead.entry.js} +1 -1
  243. package/dist/ldf/{p-78da8fe1.js → p-076f0239.js} +3 -0
  244. package/dist/ldf/p-0aca5787.entry.js +1 -0
  245. package/dist/ldf/p-0bd969ec.entry.js +1 -0
  246. package/dist/ldf/p-0d66aa76.entry.js +1 -0
  247. package/dist/ldf/p-0e4de1d0.js +4 -0
  248. package/dist/ldf/p-0f1ea192.js +4 -0
  249. package/dist/ldf/p-0f92b1b7.entry.js +1 -0
  250. package/dist/ldf/p-12ee702d.entry.js +7 -0
  251. package/dist/ldf/p-14744625.js +4 -0
  252. package/dist/ldf/{p-6fe24d85.entry.js → p-16c0303d.entry.js} +1 -1
  253. package/dist/ldf/p-23ba057c.entry.js +4 -0
  254. package/dist/ldf/p-252f09bb.entry.js +7 -0
  255. package/dist/ldf/{p-1411d9f8.entry.js → p-25fb58d0.entry.js} +1 -1
  256. package/dist/ldf/p-27bcb5ae.entry.js +1 -0
  257. package/dist/ldf/p-28c57ab2.entry.js +1 -0
  258. package/dist/ldf/p-2aae7b1d.js +5 -0
  259. package/dist/ldf/p-2d75b171.entry.js +1 -0
  260. package/dist/ldf/p-35c5e6ed.js +4 -0
  261. package/dist/ldf/p-371e3c25.js +1 -0
  262. package/dist/ldf/p-37b167f9.entry.js +5 -0
  263. package/dist/ldf/p-39b04d83.entry.js +1 -0
  264. package/dist/ldf/p-3bd0921b.entry.js +1 -0
  265. package/dist/ldf/p-41a3d41c.entry.js +1 -0
  266. package/dist/ldf/p-421481d2.js +1 -0
  267. package/dist/ldf/p-463c08f0.entry.js +1 -0
  268. package/dist/ldf/p-477b1f19.entry.js +7 -0
  269. package/dist/ldf/p-4aeedb04.js +4 -0
  270. package/dist/ldf/{p-70e47f8b.entry.js → p-4bdbb2e9.entry.js} +1 -1
  271. package/dist/ldf/p-4c623761.entry.js +4 -0
  272. package/dist/ldf/{p-177ede88.js → p-4d4077ea.js} +3 -0
  273. package/dist/ldf/p-4d92cd8f.entry.js +1 -0
  274. package/dist/ldf/{p-5906d820.entry.js → p-4ecb68ed.entry.js} +1 -1
  275. package/dist/ldf/p-506221fe.js +4 -0
  276. package/dist/ldf/p-554d477d.js +4 -0
  277. package/dist/ldf/p-5aeeffc1.entry.js +1 -0
  278. package/dist/ldf/p-5cd022a2.entry.js +1 -0
  279. package/dist/ldf/{p-c77ba7ad.entry.js → p-5e7c2a87.entry.js} +1 -1
  280. package/dist/ldf/p-604a7987.js +4 -0
  281. package/dist/ldf/p-63030685.entry.js +1 -0
  282. package/dist/ldf/p-6444fbf7.entry.js +4 -0
  283. package/dist/ldf/{p-0f706bcd.entry.js → p-6677c236.entry.js} +1 -1
  284. package/dist/ldf/{p-07d6d3ad.entry.js → p-683be896.entry.js} +1 -1
  285. package/dist/ldf/{p-c3807857.entry.js → p-6bde308b.entry.js} +1 -1
  286. package/dist/ldf/p-6c98ad19.entry.js +1 -0
  287. package/dist/ldf/p-7029115d.js +4 -0
  288. package/dist/ldf/p-787f82be.entry.js +1 -0
  289. package/dist/ldf/p-7b1975f8.entry.js +7 -0
  290. package/dist/ldf/p-7d8427eb.js +4 -0
  291. package/dist/ldf/p-7dbfc316.js +1 -0
  292. package/dist/ldf/p-7e55016b.entry.js +1 -0
  293. package/dist/ldf/p-7e7ce516.js +4 -0
  294. package/dist/ldf/p-814a5a13.js +2 -0
  295. package/dist/ldf/p-81b0dc47.entry.js +1 -0
  296. package/dist/ldf/p-81e57a8c.entry.js +1 -0
  297. package/dist/ldf/p-8311f0dc.entry.js +4 -0
  298. package/dist/ldf/{p-84ab4f0c.entry.js → p-83ec2b27.entry.js} +1 -1
  299. package/dist/ldf/p-851881fb.entry.js +1 -0
  300. package/dist/ldf/p-8582914d.entry.js +1 -0
  301. package/dist/ldf/{p-ea66c343.entry.js → p-8d4a57f4.entry.js} +1 -1
  302. package/dist/ldf/p-924b2917.js +4 -0
  303. package/dist/ldf/p-924f3f49.js +4 -0
  304. package/dist/ldf/p-95c875aa.entry.js +1 -0
  305. package/dist/ldf/p-963ace47.entry.js +1 -0
  306. package/dist/ldf/p-98bed85f.entry.js +1 -0
  307. package/dist/ldf/p-98f56fbf.entry.js +21 -0
  308. package/dist/ldf/p-9a866be1.js +4 -0
  309. package/dist/ldf/p-a15235e5.entry.js +1 -0
  310. package/dist/ldf/{p-d195c957.entry.js → p-a2af4e4a.entry.js} +1 -1
  311. package/dist/ldf/p-a4c2fe67.entry.js +1 -0
  312. package/dist/ldf/p-a7f912f0.js +4 -0
  313. package/dist/ldf/{p-dc445c36.entry.js → p-ad00fdd0.entry.js} +1 -1
  314. package/dist/ldf/p-ad0bf896.entry.js +1 -0
  315. package/dist/ldf/p-add30d46.js +4 -0
  316. package/dist/ldf/p-b78117ea.js +4 -0
  317. package/dist/ldf/p-b791c821.entry.js +1 -0
  318. package/dist/ldf/p-b7c33573.js +4 -0
  319. package/dist/ldf/p-bcb0ac1a.entry.js +1 -0
  320. package/dist/ldf/p-bf0050d8.entry.js +1 -0
  321. package/dist/ldf/p-c0777dea.js +4 -0
  322. package/dist/ldf/p-c30ef23d.entry.js +1 -0
  323. package/dist/ldf/{p-b7388aec.entry.js → p-c394b5c0.entry.js} +1 -1
  324. package/dist/ldf/p-c5583a99.entry.js +1 -0
  325. package/dist/ldf/p-c6d911c3.entry.js +1 -0
  326. package/dist/ldf/{p-c6163f81.entry.js → p-ce2e4949.entry.js} +1 -1
  327. package/dist/ldf/p-d0088940.js +4 -0
  328. package/dist/ldf/p-d0606e37.entry.js +7 -0
  329. package/dist/ldf/p-d06a35ea.js +7 -0
  330. package/dist/ldf/p-d289236b.entry.js +1 -0
  331. package/dist/ldf/p-de8a07a7.entry.js +5 -0
  332. package/dist/ldf/p-df5eb5f6.entry.js +1 -0
  333. package/dist/ldf/p-e23817f2.entry.js +1 -0
  334. package/dist/ldf/{p-8932ec85.entry.js → p-e2f62b3b.entry.js} +1 -1
  335. package/dist/ldf/p-e6ca76b2.entry.js +1 -0
  336. package/dist/ldf/p-e8ce0eea.entry.js +1 -0
  337. package/dist/ldf/{p-791369ff.entry.js → p-e930dae9.entry.js} +1 -1
  338. package/dist/ldf/p-e9431eeb.js +7 -0
  339. package/dist/ldf/p-e9aa89e8.entry.js +4 -0
  340. package/dist/ldf/p-ee42b36f.entry.js +1 -0
  341. package/dist/ldf/p-ef9aa667.entry.js +1 -0
  342. package/dist/ldf/p-f18e0f91.entry.js +7 -0
  343. package/dist/ldf/p-f3cba72a.js +4 -0
  344. package/dist/ldf/p-f503561a.entry.js +1 -0
  345. package/dist/ldf/p-f67dae27.entry.js +1 -0
  346. package/dist/ldf/p-f6e844e9.entry.js +1 -0
  347. package/dist/ldf/p-fdd761c5.entry.js +1 -0
  348. package/dist/ldf/p-fed23985.js +4 -0
  349. package/dist/ldf/p-ff287d5e.js +4 -0
  350. package/dist/ldf/svg/accessibility-outline.svg +1 -0
  351. package/dist/ldf/svg/accessibility-sharp.svg +1 -0
  352. package/dist/ldf/svg/accessibility.svg +1 -0
  353. package/dist/ldf/svg/add-circle-outline.svg +1 -1
  354. package/dist/ldf/svg/add-circle-sharp.svg +1 -1
  355. package/dist/ldf/svg/add-circle.svg +1 -1
  356. package/dist/ldf/svg/add-outline.svg +1 -1
  357. package/dist/ldf/svg/add-sharp.svg +1 -1
  358. package/dist/ldf/svg/add.svg +1 -1
  359. package/dist/ldf/svg/airplane-outline.svg +1 -1
  360. package/dist/ldf/svg/airplane-sharp.svg +1 -1
  361. package/dist/ldf/svg/airplane.svg +1 -1
  362. package/dist/ldf/svg/alarm-outline.svg +1 -1
  363. package/dist/ldf/svg/alarm-sharp.svg +1 -1
  364. package/dist/ldf/svg/alarm.svg +1 -1
  365. package/dist/ldf/svg/albums-outline.svg +1 -1
  366. package/dist/ldf/svg/albums-sharp.svg +1 -1
  367. package/dist/ldf/svg/albums.svg +1 -1
  368. package/dist/ldf/svg/alert-circle-outline.svg +1 -1
  369. package/dist/ldf/svg/alert-circle-sharp.svg +1 -1
  370. package/dist/ldf/svg/alert-circle.svg +1 -1
  371. package/dist/ldf/svg/alert-outline.svg +1 -1
  372. package/dist/ldf/svg/alert-sharp.svg +1 -1
  373. package/dist/ldf/svg/alert.svg +1 -1
  374. package/dist/ldf/svg/american-football-outline.svg +1 -1
  375. package/dist/ldf/svg/american-football-sharp.svg +1 -1
  376. package/dist/ldf/svg/american-football.svg +1 -1
  377. package/dist/ldf/svg/analytics-outline.svg +1 -1
  378. package/dist/ldf/svg/analytics-sharp.svg +1 -1
  379. package/dist/ldf/svg/analytics.svg +1 -1
  380. package/dist/ldf/svg/aperture-outline.svg +1 -1
  381. package/dist/ldf/svg/aperture-sharp.svg +1 -1
  382. package/dist/ldf/svg/aperture.svg +1 -1
  383. package/dist/ldf/svg/apps-outline.svg +1 -1
  384. package/dist/ldf/svg/apps-sharp.svg +1 -1
  385. package/dist/ldf/svg/apps.svg +1 -1
  386. package/dist/ldf/svg/archive-outline.svg +1 -1
  387. package/dist/ldf/svg/archive-sharp.svg +1 -1
  388. package/dist/ldf/svg/archive.svg +1 -1
  389. package/dist/ldf/svg/arrow-back-circle-outline.svg +1 -1
  390. package/dist/ldf/svg/arrow-back-circle-sharp.svg +1 -1
  391. package/dist/ldf/svg/arrow-back-circle.svg +1 -1
  392. package/dist/ldf/svg/arrow-back-outline.svg +1 -1
  393. package/dist/ldf/svg/arrow-back-sharp.svg +1 -1
  394. package/dist/ldf/svg/arrow-back.svg +1 -1
  395. package/dist/ldf/svg/arrow-down-circle-outline.svg +1 -1
  396. package/dist/ldf/svg/arrow-down-circle-sharp.svg +1 -1
  397. package/dist/ldf/svg/arrow-down-circle.svg +1 -1
  398. package/dist/ldf/svg/arrow-down-outline.svg +1 -1
  399. package/dist/ldf/svg/arrow-down-sharp.svg +1 -1
  400. package/dist/ldf/svg/arrow-down.svg +1 -1
  401. package/dist/ldf/svg/arrow-forward-circle-outline.svg +1 -1
  402. package/dist/ldf/svg/arrow-forward-circle-sharp.svg +1 -1
  403. package/dist/ldf/svg/arrow-forward-circle.svg +1 -1
  404. package/dist/ldf/svg/arrow-forward-outline.svg +1 -1
  405. package/dist/ldf/svg/arrow-forward-sharp.svg +1 -1
  406. package/dist/ldf/svg/arrow-forward.svg +1 -1
  407. package/dist/ldf/svg/arrow-redo-circle-outline.svg +1 -1
  408. package/dist/ldf/svg/arrow-redo-circle-sharp.svg +1 -1
  409. package/dist/ldf/svg/arrow-redo-circle.svg +1 -1
  410. package/dist/ldf/svg/arrow-redo-outline.svg +1 -1
  411. package/dist/ldf/svg/arrow-redo-sharp.svg +1 -1
  412. package/dist/ldf/svg/arrow-redo.svg +1 -1
  413. package/dist/ldf/svg/arrow-undo-circle-outline.svg +1 -1
  414. package/dist/ldf/svg/arrow-undo-circle-sharp.svg +1 -1
  415. package/dist/ldf/svg/arrow-undo-circle.svg +1 -1
  416. package/dist/ldf/svg/arrow-undo-outline.svg +1 -1
  417. package/dist/ldf/svg/arrow-undo-sharp.svg +1 -1
  418. package/dist/ldf/svg/arrow-undo.svg +1 -1
  419. package/dist/ldf/svg/arrow-up-circle-outline.svg +1 -1
  420. package/dist/ldf/svg/arrow-up-circle-sharp.svg +1 -1
  421. package/dist/ldf/svg/arrow-up-circle.svg +1 -1
  422. package/dist/ldf/svg/arrow-up-outline.svg +1 -1
  423. package/dist/ldf/svg/arrow-up-sharp.svg +1 -1
  424. package/dist/ldf/svg/arrow-up.svg +1 -1
  425. package/dist/ldf/svg/at-circle-outline.svg +1 -1
  426. package/dist/ldf/svg/at-circle-sharp.svg +1 -1
  427. package/dist/ldf/svg/at-circle.svg +1 -1
  428. package/dist/ldf/svg/at-outline.svg +1 -1
  429. package/dist/ldf/svg/at-sharp.svg +1 -1
  430. package/dist/ldf/svg/at.svg +1 -1
  431. package/dist/ldf/svg/attach-outline.svg +1 -1
  432. package/dist/ldf/svg/attach-sharp.svg +1 -1
  433. package/dist/ldf/svg/attach.svg +1 -1
  434. package/dist/ldf/svg/backspace-outline.svg +1 -1
  435. package/dist/ldf/svg/backspace-sharp.svg +1 -1
  436. package/dist/ldf/svg/backspace.svg +1 -1
  437. package/dist/ldf/svg/bag-add-outline.svg +1 -0
  438. package/dist/ldf/svg/bag-add-sharp.svg +1 -0
  439. package/dist/ldf/svg/bag-add.svg +1 -0
  440. package/dist/ldf/svg/bag-check-outline.svg +1 -0
  441. package/dist/ldf/svg/bag-check-sharp.svg +1 -0
  442. package/dist/ldf/svg/bag-check.svg +1 -0
  443. package/dist/ldf/svg/bag-handle-outline.svg +1 -0
  444. package/dist/ldf/svg/bag-handle-sharp.svg +1 -0
  445. package/dist/ldf/svg/bag-handle.svg +1 -0
  446. package/dist/ldf/svg/bag-outline.svg +1 -0
  447. package/dist/ldf/svg/bag-remove-outline.svg +1 -0
  448. package/dist/ldf/svg/bag-remove-sharp.svg +1 -0
  449. package/dist/ldf/svg/bag-remove.svg +1 -0
  450. package/dist/ldf/svg/bag-sharp.svg +1 -0
  451. package/dist/ldf/svg/bag.svg +1 -0
  452. package/dist/ldf/svg/balloon-outline.svg +1 -0
  453. package/dist/ldf/svg/balloon-sharp.svg +1 -0
  454. package/dist/ldf/svg/balloon.svg +1 -0
  455. package/dist/ldf/svg/ban-outline.svg +1 -0
  456. package/dist/ldf/svg/ban-sharp.svg +1 -0
  457. package/dist/ldf/svg/ban.svg +1 -0
  458. package/dist/ldf/svg/bandage-outline.svg +1 -1
  459. package/dist/ldf/svg/bandage-sharp.svg +1 -1
  460. package/dist/ldf/svg/bandage.svg +1 -1
  461. package/dist/ldf/svg/bar-chart-outline.svg +1 -1
  462. package/dist/ldf/svg/bar-chart-sharp.svg +1 -1
  463. package/dist/ldf/svg/bar-chart.svg +1 -1
  464. package/dist/ldf/svg/barbell-outline.svg +1 -1
  465. package/dist/ldf/svg/barbell-sharp.svg +1 -1
  466. package/dist/ldf/svg/barbell.svg +1 -1
  467. package/dist/ldf/svg/barcode-outline.svg +1 -1
  468. package/dist/ldf/svg/barcode-sharp.svg +1 -1
  469. package/dist/ldf/svg/barcode.svg +1 -1
  470. package/dist/ldf/svg/baseball-outline.svg +1 -1
  471. package/dist/ldf/svg/baseball-sharp.svg +1 -1
  472. package/dist/ldf/svg/baseball.svg +1 -1
  473. package/dist/ldf/svg/basket-outline.svg +1 -1
  474. package/dist/ldf/svg/basket-sharp.svg +1 -1
  475. package/dist/ldf/svg/basket.svg +1 -1
  476. package/dist/ldf/svg/basketball-outline.svg +1 -1
  477. package/dist/ldf/svg/basketball-sharp.svg +1 -1
  478. package/dist/ldf/svg/basketball.svg +1 -1
  479. package/dist/ldf/svg/battery-charging-outline.svg +1 -1
  480. package/dist/ldf/svg/battery-charging-sharp.svg +1 -1
  481. package/dist/ldf/svg/battery-charging.svg +1 -1
  482. package/dist/ldf/svg/battery-dead-outline.svg +1 -1
  483. package/dist/ldf/svg/battery-dead-sharp.svg +1 -1
  484. package/dist/ldf/svg/battery-dead.svg +1 -1
  485. package/dist/ldf/svg/battery-full-outline.svg +1 -1
  486. package/dist/ldf/svg/battery-full-sharp.svg +1 -1
  487. package/dist/ldf/svg/battery-full.svg +1 -1
  488. package/dist/ldf/svg/battery-half-outline.svg +1 -1
  489. package/dist/ldf/svg/battery-half-sharp.svg +1 -1
  490. package/dist/ldf/svg/battery-half.svg +1 -1
  491. package/dist/ldf/svg/beaker-outline.svg +1 -1
  492. package/dist/ldf/svg/beaker-sharp.svg +1 -1
  493. package/dist/ldf/svg/beaker.svg +1 -1
  494. package/dist/ldf/svg/bed-outline.svg +1 -1
  495. package/dist/ldf/svg/bed-sharp.svg +1 -1
  496. package/dist/ldf/svg/bed.svg +1 -1
  497. package/dist/ldf/svg/beer-outline.svg +1 -1
  498. package/dist/ldf/svg/beer-sharp.svg +1 -1
  499. package/dist/ldf/svg/beer.svg +1 -1
  500. package/dist/ldf/svg/bicycle-outline.svg +1 -1
  501. package/dist/ldf/svg/bicycle-sharp.svg +1 -1
  502. package/dist/ldf/svg/bicycle.svg +1 -1
  503. package/dist/ldf/svg/bluetooth-outline.svg +1 -1
  504. package/dist/ldf/svg/bluetooth-sharp.svg +1 -1
  505. package/dist/ldf/svg/bluetooth.svg +1 -1
  506. package/dist/ldf/svg/boat-outline.svg +1 -1
  507. package/dist/ldf/svg/boat-sharp.svg +1 -1
  508. package/dist/ldf/svg/boat.svg +1 -1
  509. package/dist/ldf/svg/body-outline.svg +1 -1
  510. package/dist/ldf/svg/body-sharp.svg +1 -1
  511. package/dist/ldf/svg/body.svg +1 -1
  512. package/dist/ldf/svg/bonfire-outline.svg +1 -1
  513. package/dist/ldf/svg/bonfire-sharp.svg +1 -1
  514. package/dist/ldf/svg/bonfire.svg +1 -1
  515. package/dist/ldf/svg/book-outline.svg +1 -1
  516. package/dist/ldf/svg/book-sharp.svg +1 -1
  517. package/dist/ldf/svg/book.svg +1 -1
  518. package/dist/ldf/svg/bookmark-outline.svg +1 -1
  519. package/dist/ldf/svg/bookmark-sharp.svg +1 -1
  520. package/dist/ldf/svg/bookmark.svg +1 -1
  521. package/dist/ldf/svg/bookmarks-outline.svg +1 -1
  522. package/dist/ldf/svg/bookmarks-sharp.svg +1 -1
  523. package/dist/ldf/svg/bookmarks.svg +1 -1
  524. package/dist/ldf/svg/bowling-ball-outline.svg +1 -0
  525. package/dist/ldf/svg/bowling-ball-sharp.svg +1 -0
  526. package/dist/ldf/svg/bowling-ball.svg +1 -0
  527. package/dist/ldf/svg/briefcase-outline.svg +1 -1
  528. package/dist/ldf/svg/briefcase-sharp.svg +1 -1
  529. package/dist/ldf/svg/briefcase.svg +1 -1
  530. package/dist/ldf/svg/browsers-outline.svg +1 -1
  531. package/dist/ldf/svg/browsers-sharp.svg +1 -1
  532. package/dist/ldf/svg/browsers.svg +1 -1
  533. package/dist/ldf/svg/brush-outline.svg +1 -1
  534. package/dist/ldf/svg/brush-sharp.svg +1 -1
  535. package/dist/ldf/svg/brush.svg +1 -1
  536. package/dist/ldf/svg/bug-outline.svg +1 -1
  537. package/dist/ldf/svg/bug-sharp.svg +1 -1
  538. package/dist/ldf/svg/bug.svg +1 -1
  539. package/dist/ldf/svg/build-outline.svg +1 -1
  540. package/dist/ldf/svg/build-sharp.svg +1 -1
  541. package/dist/ldf/svg/build.svg +1 -1
  542. package/dist/ldf/svg/bulb-outline.svg +1 -1
  543. package/dist/ldf/svg/bulb-sharp.svg +1 -1
  544. package/dist/ldf/svg/bulb.svg +1 -1
  545. package/dist/ldf/svg/bus-outline.svg +1 -1
  546. package/dist/ldf/svg/bus-sharp.svg +1 -1
  547. package/dist/ldf/svg/bus.svg +1 -1
  548. package/dist/ldf/svg/business-outline.svg +1 -1
  549. package/dist/ldf/svg/business-sharp.svg +1 -1
  550. package/dist/ldf/svg/business.svg +1 -1
  551. package/dist/ldf/svg/cafe-outline.svg +1 -1
  552. package/dist/ldf/svg/cafe-sharp.svg +1 -1
  553. package/dist/ldf/svg/cafe.svg +1 -1
  554. package/dist/ldf/svg/calculator-outline.svg +1 -1
  555. package/dist/ldf/svg/calculator-sharp.svg +1 -1
  556. package/dist/ldf/svg/calculator.svg +1 -1
  557. package/dist/ldf/svg/calendar-clear-outline.svg +1 -0
  558. package/dist/ldf/svg/calendar-clear-sharp.svg +1 -0
  559. package/dist/ldf/svg/calendar-clear.svg +1 -0
  560. package/dist/ldf/svg/calendar-number-outline.svg +1 -0
  561. package/dist/ldf/svg/calendar-number-sharp.svg +1 -0
  562. package/dist/ldf/svg/calendar-number.svg +1 -0
  563. package/dist/ldf/svg/calendar-outline.svg +1 -1
  564. package/dist/ldf/svg/calendar-sharp.svg +1 -1
  565. package/dist/ldf/svg/calendar.svg +1 -1
  566. package/dist/ldf/svg/call-outline.svg +1 -1
  567. package/dist/ldf/svg/call-sharp.svg +1 -1
  568. package/dist/ldf/svg/call.svg +1 -1
  569. package/dist/ldf/svg/camera-outline.svg +1 -1
  570. package/dist/ldf/svg/camera-reverse-outline.svg +1 -1
  571. package/dist/ldf/svg/camera-reverse-sharp.svg +1 -1
  572. package/dist/ldf/svg/camera-reverse.svg +1 -1
  573. package/dist/ldf/svg/camera-sharp.svg +1 -1
  574. package/dist/ldf/svg/camera.svg +1 -1
  575. package/dist/ldf/svg/car-outline.svg +1 -1
  576. package/dist/ldf/svg/car-sharp.svg +1 -1
  577. package/dist/ldf/svg/car-sport-outline.svg +1 -1
  578. package/dist/ldf/svg/car-sport-sharp.svg +1 -1
  579. package/dist/ldf/svg/car-sport.svg +1 -1
  580. package/dist/ldf/svg/car.svg +1 -1
  581. package/dist/ldf/svg/card-outline.svg +1 -1
  582. package/dist/ldf/svg/card-sharp.svg +1 -1
  583. package/dist/ldf/svg/card.svg +1 -1
  584. package/dist/ldf/svg/caret-back-circle-outline.svg +1 -1
  585. package/dist/ldf/svg/caret-back-circle-sharp.svg +1 -1
  586. package/dist/ldf/svg/caret-back-circle.svg +1 -1
  587. package/dist/ldf/svg/caret-back-outline.svg +1 -1
  588. package/dist/ldf/svg/caret-back-sharp.svg +1 -1
  589. package/dist/ldf/svg/caret-back.svg +1 -1
  590. package/dist/ldf/svg/caret-down-circle-outline.svg +1 -1
  591. package/dist/ldf/svg/caret-down-circle-sharp.svg +1 -1
  592. package/dist/ldf/svg/caret-down-circle.svg +1 -1
  593. package/dist/ldf/svg/caret-down-outline.svg +1 -1
  594. package/dist/ldf/svg/caret-down-sharp.svg +1 -1
  595. package/dist/ldf/svg/caret-down.svg +1 -1
  596. package/dist/ldf/svg/caret-forward-circle-outline.svg +1 -1
  597. package/dist/ldf/svg/caret-forward-circle-sharp.svg +1 -1
  598. package/dist/ldf/svg/caret-forward-circle.svg +1 -1
  599. package/dist/ldf/svg/caret-forward-outline.svg +1 -1
  600. package/dist/ldf/svg/caret-forward-sharp.svg +1 -1
  601. package/dist/ldf/svg/caret-forward.svg +1 -1
  602. package/dist/ldf/svg/caret-up-circle-outline.svg +1 -1
  603. package/dist/ldf/svg/caret-up-circle-sharp.svg +1 -1
  604. package/dist/ldf/svg/caret-up-circle.svg +1 -1
  605. package/dist/ldf/svg/caret-up-outline.svg +1 -1
  606. package/dist/ldf/svg/caret-up-sharp.svg +1 -1
  607. package/dist/ldf/svg/caret-up.svg +1 -1
  608. package/dist/ldf/svg/cart-outline.svg +1 -1
  609. package/dist/ldf/svg/cart-sharp.svg +1 -1
  610. package/dist/ldf/svg/cart.svg +1 -1
  611. package/dist/ldf/svg/cash-outline.svg +1 -1
  612. package/dist/ldf/svg/cash-sharp.svg +1 -1
  613. package/dist/ldf/svg/cash.svg +1 -1
  614. package/dist/ldf/svg/cellular-outline.svg +1 -1
  615. package/dist/ldf/svg/cellular-sharp.svg +1 -1
  616. package/dist/ldf/svg/cellular.svg +1 -1
  617. package/dist/ldf/svg/chatbox-ellipses-outline.svg +1 -1
  618. package/dist/ldf/svg/chatbox-ellipses-sharp.svg +1 -1
  619. package/dist/ldf/svg/chatbox-ellipses.svg +1 -1
  620. package/dist/ldf/svg/chatbox-outline.svg +1 -1
  621. package/dist/ldf/svg/chatbox-sharp.svg +1 -1
  622. package/dist/ldf/svg/chatbox.svg +1 -1
  623. package/dist/ldf/svg/chatbubble-ellipses-outline.svg +1 -1
  624. package/dist/ldf/svg/chatbubble-ellipses-sharp.svg +1 -1
  625. package/dist/ldf/svg/chatbubble-ellipses.svg +1 -1
  626. package/dist/ldf/svg/chatbubble-outline.svg +1 -1
  627. package/dist/ldf/svg/chatbubble-sharp.svg +1 -1
  628. package/dist/ldf/svg/chatbubble.svg +1 -1
  629. package/dist/ldf/svg/chatbubbles-outline.svg +1 -1
  630. package/dist/ldf/svg/chatbubbles-sharp.svg +1 -1
  631. package/dist/ldf/svg/chatbubbles.svg +1 -1
  632. package/dist/ldf/svg/checkbox-outline.svg +1 -1
  633. package/dist/ldf/svg/checkbox-sharp.svg +1 -1
  634. package/dist/ldf/svg/checkbox.svg +1 -1
  635. package/dist/ldf/svg/checkmark-circle-outline.svg +1 -1
  636. package/dist/ldf/svg/checkmark-circle-sharp.svg +1 -1
  637. package/dist/ldf/svg/checkmark-circle.svg +1 -1
  638. package/dist/ldf/svg/checkmark-done-circle-outline.svg +1 -1
  639. package/dist/ldf/svg/checkmark-done-circle-sharp.svg +1 -1
  640. package/dist/ldf/svg/checkmark-done-circle.svg +1 -1
  641. package/dist/ldf/svg/checkmark-done-outline.svg +1 -1
  642. package/dist/ldf/svg/checkmark-done-sharp.svg +1 -1
  643. package/dist/ldf/svg/checkmark-done.svg +1 -1
  644. package/dist/ldf/svg/checkmark-outline.svg +1 -1
  645. package/dist/ldf/svg/checkmark-sharp.svg +1 -1
  646. package/dist/ldf/svg/checkmark.svg +1 -1
  647. package/dist/ldf/svg/chevron-back-circle-outline.svg +1 -1
  648. package/dist/ldf/svg/chevron-back-circle-sharp.svg +1 -1
  649. package/dist/ldf/svg/chevron-back-circle.svg +1 -1
  650. package/dist/ldf/svg/chevron-back-outline.svg +1 -1
  651. package/dist/ldf/svg/chevron-back-sharp.svg +1 -1
  652. package/dist/ldf/svg/chevron-back.svg +1 -1
  653. package/dist/ldf/svg/chevron-down-circle-outline.svg +1 -1
  654. package/dist/ldf/svg/chevron-down-circle-sharp.svg +1 -1
  655. package/dist/ldf/svg/chevron-down-circle.svg +1 -1
  656. package/dist/ldf/svg/chevron-down-outline.svg +1 -1
  657. package/dist/ldf/svg/chevron-down-sharp.svg +1 -1
  658. package/dist/ldf/svg/chevron-down.svg +1 -1
  659. package/dist/ldf/svg/chevron-forward-circle-outline.svg +1 -1
  660. package/dist/ldf/svg/chevron-forward-circle-sharp.svg +1 -1
  661. package/dist/ldf/svg/chevron-forward-circle.svg +1 -1
  662. package/dist/ldf/svg/chevron-forward-outline.svg +1 -1
  663. package/dist/ldf/svg/chevron-forward-sharp.svg +1 -1
  664. package/dist/ldf/svg/chevron-forward.svg +1 -1
  665. package/dist/ldf/svg/chevron-up-circle-outline.svg +1 -1
  666. package/dist/ldf/svg/chevron-up-circle-sharp.svg +1 -1
  667. package/dist/ldf/svg/chevron-up-circle.svg +1 -1
  668. package/dist/ldf/svg/chevron-up-outline.svg +1 -1
  669. package/dist/ldf/svg/chevron-up-sharp.svg +1 -1
  670. package/dist/ldf/svg/chevron-up.svg +1 -1
  671. package/dist/ldf/svg/clipboard-outline.svg +1 -1
  672. package/dist/ldf/svg/clipboard-sharp.svg +1 -1
  673. package/dist/ldf/svg/clipboard.svg +1 -1
  674. package/dist/ldf/svg/close-circle-outline.svg +1 -1
  675. package/dist/ldf/svg/close-circle-sharp.svg +1 -1
  676. package/dist/ldf/svg/close-circle.svg +1 -1
  677. package/dist/ldf/svg/close-outline.svg +1 -1
  678. package/dist/ldf/svg/close-sharp.svg +1 -1
  679. package/dist/ldf/svg/close.svg +1 -1
  680. package/dist/ldf/svg/cloud-circle-outline.svg +1 -1
  681. package/dist/ldf/svg/cloud-circle-sharp.svg +1 -1
  682. package/dist/ldf/svg/cloud-circle.svg +1 -1
  683. package/dist/ldf/svg/cloud-done-outline.svg +1 -1
  684. package/dist/ldf/svg/cloud-done-sharp.svg +1 -1
  685. package/dist/ldf/svg/cloud-done.svg +1 -1
  686. package/dist/ldf/svg/cloud-download-outline.svg +1 -1
  687. package/dist/ldf/svg/cloud-download-sharp.svg +1 -1
  688. package/dist/ldf/svg/cloud-download.svg +1 -1
  689. package/dist/ldf/svg/cloud-offline-outline.svg +1 -1
  690. package/dist/ldf/svg/cloud-offline-sharp.svg +1 -1
  691. package/dist/ldf/svg/cloud-offline.svg +1 -1
  692. package/dist/ldf/svg/cloud-outline.svg +1 -1
  693. package/dist/ldf/svg/cloud-sharp.svg +1 -1
  694. package/dist/ldf/svg/cloud-upload-outline.svg +1 -1
  695. package/dist/ldf/svg/cloud-upload-sharp.svg +1 -1
  696. package/dist/ldf/svg/cloud-upload.svg +1 -1
  697. package/dist/ldf/svg/cloud.svg +1 -1
  698. package/dist/ldf/svg/cloudy-night-outline.svg +1 -1
  699. package/dist/ldf/svg/cloudy-night-sharp.svg +1 -1
  700. package/dist/ldf/svg/cloudy-night.svg +1 -1
  701. package/dist/ldf/svg/cloudy-outline.svg +1 -1
  702. package/dist/ldf/svg/cloudy-sharp.svg +1 -1
  703. package/dist/ldf/svg/cloudy.svg +1 -1
  704. package/dist/ldf/svg/code-download-outline.svg +1 -1
  705. package/dist/ldf/svg/code-download-sharp.svg +1 -1
  706. package/dist/ldf/svg/code-download.svg +1 -1
  707. package/dist/ldf/svg/code-outline.svg +1 -1
  708. package/dist/ldf/svg/code-sharp.svg +1 -1
  709. package/dist/ldf/svg/code-slash-outline.svg +1 -1
  710. package/dist/ldf/svg/code-slash-sharp.svg +1 -1
  711. package/dist/ldf/svg/code-slash.svg +1 -1
  712. package/dist/ldf/svg/code-working-outline.svg +1 -1
  713. package/dist/ldf/svg/code-working-sharp.svg +1 -1
  714. package/dist/ldf/svg/code-working.svg +1 -1
  715. package/dist/ldf/svg/code.svg +1 -1
  716. package/dist/ldf/svg/cog-outline.svg +1 -1
  717. package/dist/ldf/svg/cog-sharp.svg +1 -1
  718. package/dist/ldf/svg/cog.svg +1 -1
  719. package/dist/ldf/svg/color-fill-outline.svg +1 -1
  720. package/dist/ldf/svg/color-fill-sharp.svg +1 -1
  721. package/dist/ldf/svg/color-fill.svg +1 -1
  722. package/dist/ldf/svg/color-filter-outline.svg +1 -1
  723. package/dist/ldf/svg/color-filter-sharp.svg +1 -1
  724. package/dist/ldf/svg/color-filter.svg +1 -1
  725. package/dist/ldf/svg/color-palette-outline.svg +1 -1
  726. package/dist/ldf/svg/color-palette-sharp.svg +1 -1
  727. package/dist/ldf/svg/color-palette.svg +1 -1
  728. package/dist/ldf/svg/color-wand-outline.svg +1 -1
  729. package/dist/ldf/svg/color-wand-sharp.svg +1 -1
  730. package/dist/ldf/svg/color-wand.svg +1 -1
  731. package/dist/ldf/svg/compass-outline.svg +1 -1
  732. package/dist/ldf/svg/compass-sharp.svg +1 -1
  733. package/dist/ldf/svg/compass.svg +1 -1
  734. package/dist/ldf/svg/construct-outline.svg +1 -1
  735. package/dist/ldf/svg/construct-sharp.svg +1 -1
  736. package/dist/ldf/svg/construct.svg +1 -1
  737. package/dist/ldf/svg/contract-outline.svg +1 -1
  738. package/dist/ldf/svg/contract-sharp.svg +1 -1
  739. package/dist/ldf/svg/contract.svg +1 -1
  740. package/dist/ldf/svg/contrast-outline.svg +1 -1
  741. package/dist/ldf/svg/contrast-sharp.svg +1 -1
  742. package/dist/ldf/svg/contrast.svg +1 -1
  743. package/dist/ldf/svg/copy-outline.svg +1 -1
  744. package/dist/ldf/svg/copy-sharp.svg +1 -1
  745. package/dist/ldf/svg/copy.svg +1 -1
  746. package/dist/ldf/svg/create-outline.svg +1 -1
  747. package/dist/ldf/svg/create-sharp.svg +1 -1
  748. package/dist/ldf/svg/create.svg +1 -1
  749. package/dist/ldf/svg/crop-outline.svg +1 -1
  750. package/dist/ldf/svg/crop-sharp.svg +1 -1
  751. package/dist/ldf/svg/crop.svg +1 -1
  752. package/dist/ldf/svg/cube-outline.svg +1 -1
  753. package/dist/ldf/svg/cube-sharp.svg +1 -1
  754. package/dist/ldf/svg/cube.svg +1 -1
  755. package/dist/ldf/svg/cut-outline.svg +1 -1
  756. package/dist/ldf/svg/cut-sharp.svg +1 -1
  757. package/dist/ldf/svg/cut.svg +1 -1
  758. package/dist/ldf/svg/desktop-outline.svg +1 -1
  759. package/dist/ldf/svg/desktop-sharp.svg +1 -1
  760. package/dist/ldf/svg/desktop.svg +1 -1
  761. package/dist/ldf/svg/diamond-outline.svg +1 -0
  762. package/dist/ldf/svg/diamond-sharp.svg +1 -0
  763. package/dist/ldf/svg/diamond.svg +1 -0
  764. package/dist/ldf/svg/dice-outline.svg +1 -0
  765. package/dist/ldf/svg/dice-sharp.svg +1 -0
  766. package/dist/ldf/svg/dice.svg +1 -0
  767. package/dist/ldf/svg/disc-outline.svg +1 -1
  768. package/dist/ldf/svg/disc-sharp.svg +1 -1
  769. package/dist/ldf/svg/disc.svg +1 -1
  770. package/dist/ldf/svg/document-attach-outline.svg +1 -1
  771. package/dist/ldf/svg/document-attach-sharp.svg +1 -1
  772. package/dist/ldf/svg/document-attach.svg +1 -1
  773. package/dist/ldf/svg/document-lock-outline.svg +1 -0
  774. package/dist/ldf/svg/document-lock-sharp.svg +1 -0
  775. package/dist/ldf/svg/document-lock.svg +1 -0
  776. package/dist/ldf/svg/document-outline.svg +1 -1
  777. package/dist/ldf/svg/document-sharp.svg +1 -1
  778. package/dist/ldf/svg/document-text-outline.svg +1 -1
  779. package/dist/ldf/svg/document-text-sharp.svg +1 -1
  780. package/dist/ldf/svg/document-text.svg +1 -1
  781. package/dist/ldf/svg/document.svg +1 -1
  782. package/dist/ldf/svg/documents-outline.svg +1 -1
  783. package/dist/ldf/svg/documents-sharp.svg +1 -1
  784. package/dist/ldf/svg/documents.svg +1 -1
  785. package/dist/ldf/svg/download-outline.svg +1 -1
  786. package/dist/ldf/svg/download-sharp.svg +1 -1
  787. package/dist/ldf/svg/download.svg +1 -1
  788. package/dist/ldf/svg/duplicate-outline.svg +1 -1
  789. package/dist/ldf/svg/duplicate-sharp.svg +1 -1
  790. package/dist/ldf/svg/duplicate.svg +1 -1
  791. package/dist/ldf/svg/ear-outline.svg +1 -1
  792. package/dist/ldf/svg/ear-sharp.svg +1 -1
  793. package/dist/ldf/svg/ear.svg +1 -1
  794. package/dist/ldf/svg/earth-outline.svg +1 -1
  795. package/dist/ldf/svg/earth-sharp.svg +1 -1
  796. package/dist/ldf/svg/earth.svg +1 -1
  797. package/dist/ldf/svg/easel-outline.svg +1 -1
  798. package/dist/ldf/svg/easel-sharp.svg +1 -1
  799. package/dist/ldf/svg/easel.svg +1 -1
  800. package/dist/ldf/svg/egg-outline.svg +1 -1
  801. package/dist/ldf/svg/egg-sharp.svg +1 -1
  802. package/dist/ldf/svg/egg.svg +1 -1
  803. package/dist/ldf/svg/ellipse-outline.svg +1 -1
  804. package/dist/ldf/svg/ellipse-sharp.svg +1 -1
  805. package/dist/ldf/svg/ellipse.svg +1 -1
  806. package/dist/ldf/svg/ellipsis-horizontal-circle-outline.svg +1 -1
  807. package/dist/ldf/svg/ellipsis-horizontal-circle-sharp.svg +1 -1
  808. package/dist/ldf/svg/ellipsis-horizontal-circle.svg +1 -1
  809. package/dist/ldf/svg/ellipsis-horizontal-outline.svg +1 -1
  810. package/dist/ldf/svg/ellipsis-horizontal-sharp.svg +1 -1
  811. package/dist/ldf/svg/ellipsis-horizontal.svg +1 -1
  812. package/dist/ldf/svg/ellipsis-vertical-circle-outline.svg +1 -1
  813. package/dist/ldf/svg/ellipsis-vertical-circle-sharp.svg +1 -1
  814. package/dist/ldf/svg/ellipsis-vertical-circle.svg +1 -1
  815. package/dist/ldf/svg/ellipsis-vertical-outline.svg +1 -1
  816. package/dist/ldf/svg/ellipsis-vertical-sharp.svg +1 -1
  817. package/dist/ldf/svg/ellipsis-vertical.svg +1 -1
  818. package/dist/ldf/svg/enter-outline.svg +1 -1
  819. package/dist/ldf/svg/enter-sharp.svg +1 -1
  820. package/dist/ldf/svg/enter.svg +1 -1
  821. package/dist/ldf/svg/exit-outline.svg +1 -1
  822. package/dist/ldf/svg/exit-sharp.svg +1 -1
  823. package/dist/ldf/svg/exit.svg +1 -1
  824. package/dist/ldf/svg/expand-outline.svg +1 -1
  825. package/dist/ldf/svg/expand-sharp.svg +1 -1
  826. package/dist/ldf/svg/expand.svg +1 -1
  827. package/dist/ldf/svg/extension-puzzle-outline.svg +1 -0
  828. package/dist/ldf/svg/extension-puzzle-sharp.svg +1 -0
  829. package/dist/ldf/svg/extension-puzzle.svg +1 -0
  830. package/dist/ldf/svg/eye-off-outline.svg +1 -1
  831. package/dist/ldf/svg/eye-off-sharp.svg +1 -1
  832. package/dist/ldf/svg/eye-off.svg +1 -1
  833. package/dist/ldf/svg/eye-outline.svg +1 -1
  834. package/dist/ldf/svg/eye-sharp.svg +1 -1
  835. package/dist/ldf/svg/eye.svg +1 -1
  836. package/dist/ldf/svg/eyedrop-outline.svg +1 -1
  837. package/dist/ldf/svg/eyedrop-sharp.svg +1 -1
  838. package/dist/ldf/svg/eyedrop.svg +1 -1
  839. package/dist/ldf/svg/fast-food-outline.svg +1 -1
  840. package/dist/ldf/svg/fast-food-sharp.svg +1 -1
  841. package/dist/ldf/svg/fast-food.svg +1 -1
  842. package/dist/ldf/svg/female-outline.svg +1 -1
  843. package/dist/ldf/svg/female-sharp.svg +1 -1
  844. package/dist/ldf/svg/female.svg +1 -1
  845. package/dist/ldf/svg/file-tray-full-outline.svg +1 -1
  846. package/dist/ldf/svg/file-tray-full-sharp.svg +1 -1
  847. package/dist/ldf/svg/file-tray-full.svg +1 -1
  848. package/dist/ldf/svg/file-tray-outline.svg +1 -1
  849. package/dist/ldf/svg/file-tray-sharp.svg +1 -1
  850. package/dist/ldf/svg/file-tray-stacked-outline.svg +1 -1
  851. package/dist/ldf/svg/file-tray-stacked-sharp.svg +1 -1
  852. package/dist/ldf/svg/file-tray-stacked.svg +1 -1
  853. package/dist/ldf/svg/file-tray.svg +1 -1
  854. package/dist/ldf/svg/film-outline.svg +1 -1
  855. package/dist/ldf/svg/film-sharp.svg +1 -1
  856. package/dist/ldf/svg/film.svg +1 -1
  857. package/dist/ldf/svg/filter-circle-outline.svg +1 -0
  858. package/dist/ldf/svg/filter-circle-sharp.svg +1 -0
  859. package/dist/ldf/svg/filter-circle.svg +1 -0
  860. package/dist/ldf/svg/filter-outline.svg +1 -1
  861. package/dist/ldf/svg/filter-sharp.svg +1 -1
  862. package/dist/ldf/svg/filter.svg +1 -1
  863. package/dist/ldf/svg/finger-print-outline.svg +1 -1
  864. package/dist/ldf/svg/finger-print-sharp.svg +1 -1
  865. package/dist/ldf/svg/finger-print.svg +1 -1
  866. package/dist/ldf/svg/fish-outline.svg +1 -0
  867. package/dist/ldf/svg/fish-sharp.svg +1 -0
  868. package/dist/ldf/svg/fish.svg +1 -0
  869. package/dist/ldf/svg/fitness-outline.svg +1 -1
  870. package/dist/ldf/svg/fitness-sharp.svg +1 -1
  871. package/dist/ldf/svg/fitness.svg +1 -1
  872. package/dist/ldf/svg/flag-outline.svg +1 -1
  873. package/dist/ldf/svg/flag-sharp.svg +1 -1
  874. package/dist/ldf/svg/flag.svg +1 -1
  875. package/dist/ldf/svg/flame-outline.svg +1 -1
  876. package/dist/ldf/svg/flame-sharp.svg +1 -1
  877. package/dist/ldf/svg/flame.svg +1 -1
  878. package/dist/ldf/svg/flash-off-outline.svg +1 -1
  879. package/dist/ldf/svg/flash-off-sharp.svg +1 -1
  880. package/dist/ldf/svg/flash-off.svg +1 -1
  881. package/dist/ldf/svg/flash-outline.svg +1 -1
  882. package/dist/ldf/svg/flash-sharp.svg +1 -1
  883. package/dist/ldf/svg/flash.svg +1 -1
  884. package/dist/ldf/svg/flashlight-outline.svg +1 -1
  885. package/dist/ldf/svg/flashlight-sharp.svg +1 -1
  886. package/dist/ldf/svg/flashlight.svg +1 -1
  887. package/dist/ldf/svg/flask-outline.svg +1 -1
  888. package/dist/ldf/svg/flask-sharp.svg +1 -1
  889. package/dist/ldf/svg/flask.svg +1 -1
  890. package/dist/ldf/svg/flower-outline.svg +1 -1
  891. package/dist/ldf/svg/flower-sharp.svg +1 -1
  892. package/dist/ldf/svg/flower.svg +1 -1
  893. package/dist/ldf/svg/folder-open-outline.svg +1 -1
  894. package/dist/ldf/svg/folder-open-sharp.svg +1 -1
  895. package/dist/ldf/svg/folder-open.svg +1 -1
  896. package/dist/ldf/svg/folder-outline.svg +1 -1
  897. package/dist/ldf/svg/folder-sharp.svg +1 -1
  898. package/dist/ldf/svg/folder.svg +1 -1
  899. package/dist/ldf/svg/football-outline.svg +1 -1
  900. package/dist/ldf/svg/football-sharp.svg +1 -1
  901. package/dist/ldf/svg/football.svg +1 -1
  902. package/dist/ldf/svg/footsteps-outline.svg +1 -0
  903. package/dist/ldf/svg/footsteps-sharp.svg +1 -0
  904. package/dist/ldf/svg/footsteps.svg +1 -0
  905. package/dist/ldf/svg/funnel-outline.svg +1 -1
  906. package/dist/ldf/svg/funnel-sharp.svg +1 -1
  907. package/dist/ldf/svg/funnel.svg +1 -1
  908. package/dist/ldf/svg/game-controller-outline.svg +1 -1
  909. package/dist/ldf/svg/game-controller-sharp.svg +1 -1
  910. package/dist/ldf/svg/game-controller.svg +1 -1
  911. package/dist/ldf/svg/gift-outline.svg +1 -1
  912. package/dist/ldf/svg/gift-sharp.svg +1 -1
  913. package/dist/ldf/svg/gift.svg +1 -1
  914. package/dist/ldf/svg/git-branch-outline.svg +1 -1
  915. package/dist/ldf/svg/git-branch-sharp.svg +1 -1
  916. package/dist/ldf/svg/git-branch.svg +1 -1
  917. package/dist/ldf/svg/git-commit-outline.svg +1 -1
  918. package/dist/ldf/svg/git-commit-sharp.svg +1 -1
  919. package/dist/ldf/svg/git-commit.svg +1 -1
  920. package/dist/ldf/svg/git-compare-outline.svg +1 -1
  921. package/dist/ldf/svg/git-compare-sharp.svg +1 -1
  922. package/dist/ldf/svg/git-compare.svg +1 -1
  923. package/dist/ldf/svg/git-merge-outline.svg +1 -1
  924. package/dist/ldf/svg/git-merge-sharp.svg +1 -1
  925. package/dist/ldf/svg/git-merge.svg +1 -1
  926. package/dist/ldf/svg/git-network-outline.svg +1 -1
  927. package/dist/ldf/svg/git-network-sharp.svg +1 -1
  928. package/dist/ldf/svg/git-network.svg +1 -1
  929. package/dist/ldf/svg/git-pull-request-outline.svg +1 -1
  930. package/dist/ldf/svg/git-pull-request-sharp.svg +1 -1
  931. package/dist/ldf/svg/git-pull-request.svg +1 -1
  932. package/dist/ldf/svg/glasses-outline.svg +1 -1
  933. package/dist/ldf/svg/glasses-sharp.svg +1 -1
  934. package/dist/ldf/svg/glasses.svg +1 -1
  935. package/dist/ldf/svg/globe-outline.svg +1 -1
  936. package/dist/ldf/svg/globe-sharp.svg +1 -1
  937. package/dist/ldf/svg/globe.svg +1 -1
  938. package/dist/ldf/svg/golf-outline.svg +1 -1
  939. package/dist/ldf/svg/golf-sharp.svg +1 -1
  940. package/dist/ldf/svg/golf.svg +1 -1
  941. package/dist/ldf/svg/grid-outline.svg +1 -1
  942. package/dist/ldf/svg/grid-sharp.svg +1 -1
  943. package/dist/ldf/svg/grid.svg +1 -1
  944. package/dist/ldf/svg/hammer-outline.svg +1 -1
  945. package/dist/ldf/svg/hammer-sharp.svg +1 -1
  946. package/dist/ldf/svg/hammer.svg +1 -1
  947. package/dist/ldf/svg/hand-left-outline.svg +1 -1
  948. package/dist/ldf/svg/hand-left-sharp.svg +1 -1
  949. package/dist/ldf/svg/hand-left.svg +1 -1
  950. package/dist/ldf/svg/hand-right-outline.svg +1 -1
  951. package/dist/ldf/svg/hand-right-sharp.svg +1 -1
  952. package/dist/ldf/svg/hand-right.svg +1 -1
  953. package/dist/ldf/svg/happy-outline.svg +1 -1
  954. package/dist/ldf/svg/happy-sharp.svg +1 -1
  955. package/dist/ldf/svg/happy.svg +1 -1
  956. package/dist/ldf/svg/hardware-chip-outline.svg +1 -1
  957. package/dist/ldf/svg/hardware-chip-sharp.svg +1 -1
  958. package/dist/ldf/svg/hardware-chip.svg +1 -1
  959. package/dist/ldf/svg/headset-outline.svg +1 -1
  960. package/dist/ldf/svg/headset-sharp.svg +1 -1
  961. package/dist/ldf/svg/headset.svg +1 -1
  962. package/dist/ldf/svg/heart-circle-outline.svg +1 -1
  963. package/dist/ldf/svg/heart-circle-sharp.svg +1 -1
  964. package/dist/ldf/svg/heart-circle.svg +1 -1
  965. package/dist/ldf/svg/heart-dislike-circle-outline.svg +1 -1
  966. package/dist/ldf/svg/heart-dislike-circle-sharp.svg +1 -1
  967. package/dist/ldf/svg/heart-dislike-circle.svg +1 -1
  968. package/dist/ldf/svg/heart-dislike-outline.svg +1 -1
  969. package/dist/ldf/svg/heart-dislike-sharp.svg +1 -1
  970. package/dist/ldf/svg/heart-dislike.svg +1 -1
  971. package/dist/ldf/svg/heart-half-outline.svg +1 -1
  972. package/dist/ldf/svg/heart-half-sharp.svg +1 -1
  973. package/dist/ldf/svg/heart-half.svg +1 -1
  974. package/dist/ldf/svg/heart-outline.svg +1 -1
  975. package/dist/ldf/svg/heart-sharp.svg +1 -1
  976. package/dist/ldf/svg/heart.svg +1 -1
  977. package/dist/ldf/svg/help-buoy-outline.svg +1 -1
  978. package/dist/ldf/svg/help-buoy-sharp.svg +1 -1
  979. package/dist/ldf/svg/help-buoy.svg +1 -1
  980. package/dist/ldf/svg/help-circle-outline.svg +1 -1
  981. package/dist/ldf/svg/help-circle-sharp.svg +1 -1
  982. package/dist/ldf/svg/help-circle.svg +1 -1
  983. package/dist/ldf/svg/help-outline.svg +1 -1
  984. package/dist/ldf/svg/help-sharp.svg +1 -1
  985. package/dist/ldf/svg/help.svg +1 -1
  986. package/dist/ldf/svg/home-outline.svg +1 -1
  987. package/dist/ldf/svg/home-sharp.svg +1 -1
  988. package/dist/ldf/svg/home.svg +1 -1
  989. package/dist/ldf/svg/hourglass-outline.svg +1 -1
  990. package/dist/ldf/svg/hourglass-sharp.svg +1 -1
  991. package/dist/ldf/svg/hourglass.svg +1 -1
  992. package/dist/ldf/svg/ice-cream-outline.svg +1 -1
  993. package/dist/ldf/svg/ice-cream-sharp.svg +1 -1
  994. package/dist/ldf/svg/ice-cream.svg +1 -1
  995. package/dist/ldf/svg/id-card-outline.svg +1 -0
  996. package/dist/ldf/svg/id-card-sharp.svg +1 -0
  997. package/dist/ldf/svg/id-card.svg +1 -0
  998. package/dist/ldf/svg/image-outline.svg +1 -1
  999. package/dist/ldf/svg/image-sharp.svg +1 -1
  1000. package/dist/ldf/svg/image.svg +1 -1
  1001. package/dist/ldf/svg/images-outline.svg +1 -1
  1002. package/dist/ldf/svg/images-sharp.svg +1 -1
  1003. package/dist/ldf/svg/images.svg +1 -1
  1004. package/dist/ldf/svg/infinite-outline.svg +1 -1
  1005. package/dist/ldf/svg/infinite-sharp.svg +1 -1
  1006. package/dist/ldf/svg/infinite.svg +1 -1
  1007. package/dist/ldf/svg/information-circle-outline.svg +1 -1
  1008. package/dist/ldf/svg/information-circle-sharp.svg +1 -1
  1009. package/dist/ldf/svg/information-circle.svg +1 -1
  1010. package/dist/ldf/svg/information-outline.svg +1 -1
  1011. package/dist/ldf/svg/information-sharp.svg +1 -1
  1012. package/dist/ldf/svg/information.svg +1 -1
  1013. package/dist/ldf/svg/invert-mode-outline.svg +1 -0
  1014. package/dist/ldf/svg/invert-mode-sharp.svg +1 -0
  1015. package/dist/ldf/svg/invert-mode.svg +1 -0
  1016. package/dist/ldf/svg/journal-outline.svg +1 -1
  1017. package/dist/ldf/svg/journal-sharp.svg +1 -1
  1018. package/dist/ldf/svg/journal.svg +1 -1
  1019. package/dist/ldf/svg/key-outline.svg +1 -1
  1020. package/dist/ldf/svg/key-sharp.svg +1 -1
  1021. package/dist/ldf/svg/key.svg +1 -1
  1022. package/dist/ldf/svg/keypad-outline.svg +1 -1
  1023. package/dist/ldf/svg/keypad-sharp.svg +1 -1
  1024. package/dist/ldf/svg/keypad.svg +1 -1
  1025. package/dist/ldf/svg/language-outline.svg +1 -1
  1026. package/dist/ldf/svg/language-sharp.svg +1 -1
  1027. package/dist/ldf/svg/language.svg +1 -1
  1028. package/dist/ldf/svg/laptop-outline.svg +1 -1
  1029. package/dist/ldf/svg/laptop-sharp.svg +1 -1
  1030. package/dist/ldf/svg/laptop.svg +1 -1
  1031. package/dist/ldf/svg/layers-outline.svg +1 -1
  1032. package/dist/ldf/svg/layers-sharp.svg +1 -1
  1033. package/dist/ldf/svg/layers.svg +1 -1
  1034. package/dist/ldf/svg/leaf-outline.svg +1 -1
  1035. package/dist/ldf/svg/leaf-sharp.svg +1 -1
  1036. package/dist/ldf/svg/leaf.svg +1 -1
  1037. package/dist/ldf/svg/library-outline.svg +1 -1
  1038. package/dist/ldf/svg/library-sharp.svg +1 -1
  1039. package/dist/ldf/svg/library.svg +1 -1
  1040. package/dist/ldf/svg/link-outline.svg +1 -1
  1041. package/dist/ldf/svg/link-sharp.svg +1 -1
  1042. package/dist/ldf/svg/link.svg +1 -1
  1043. package/dist/ldf/svg/list-circle-outline.svg +1 -1
  1044. package/dist/ldf/svg/list-circle-sharp.svg +1 -1
  1045. package/dist/ldf/svg/list-circle.svg +1 -1
  1046. package/dist/ldf/svg/list-outline.svg +1 -1
  1047. package/dist/ldf/svg/list-sharp.svg +1 -1
  1048. package/dist/ldf/svg/list.svg +1 -1
  1049. package/dist/ldf/svg/locate-outline.svg +1 -1
  1050. package/dist/ldf/svg/locate-sharp.svg +1 -1
  1051. package/dist/ldf/svg/locate.svg +1 -1
  1052. package/dist/ldf/svg/location-outline.svg +1 -1
  1053. package/dist/ldf/svg/location-sharp.svg +1 -1
  1054. package/dist/ldf/svg/location.svg +1 -1
  1055. package/dist/ldf/svg/lock-closed-outline.svg +1 -1
  1056. package/dist/ldf/svg/lock-closed-sharp.svg +1 -1
  1057. package/dist/ldf/svg/lock-closed.svg +1 -1
  1058. package/dist/ldf/svg/lock-open-outline.svg +1 -1
  1059. package/dist/ldf/svg/lock-open-sharp.svg +1 -1
  1060. package/dist/ldf/svg/lock-open.svg +1 -1
  1061. package/dist/ldf/svg/log-in-outline.svg +1 -1
  1062. package/dist/ldf/svg/log-in-sharp.svg +1 -1
  1063. package/dist/ldf/svg/log-in.svg +1 -1
  1064. package/dist/ldf/svg/log-out-outline.svg +1 -1
  1065. package/dist/ldf/svg/log-out-sharp.svg +1 -1
  1066. package/dist/ldf/svg/log-out.svg +1 -1
  1067. package/dist/ldf/svg/logo-alipay.svg +1 -0
  1068. package/dist/ldf/svg/logo-amazon.svg +1 -1
  1069. package/dist/ldf/svg/logo-amplify.svg +1 -1
  1070. package/dist/ldf/svg/logo-android.svg +1 -1
  1071. package/dist/ldf/svg/logo-angular.svg +1 -1
  1072. package/dist/ldf/svg/logo-apple-appstore.svg +1 -1
  1073. package/dist/ldf/svg/logo-apple-ar.svg +1 -0
  1074. package/dist/ldf/svg/logo-apple.svg +1 -1
  1075. package/dist/ldf/svg/logo-behance.svg +1 -0
  1076. package/dist/ldf/svg/logo-bitbucket.svg +1 -1
  1077. package/dist/ldf/svg/logo-bitcoin.svg +1 -1
  1078. package/dist/ldf/svg/logo-buffer.svg +1 -1
  1079. package/dist/ldf/svg/logo-capacitor.svg +1 -1
  1080. package/dist/ldf/svg/logo-chrome.svg +1 -1
  1081. package/dist/ldf/svg/logo-closed-captioning.svg +1 -1
  1082. package/dist/ldf/svg/logo-codepen.svg +1 -1
  1083. package/dist/ldf/svg/logo-css3.svg +1 -1
  1084. package/dist/ldf/svg/logo-designernews.svg +1 -1
  1085. package/dist/ldf/svg/logo-deviantart.svg +1 -0
  1086. package/dist/ldf/svg/logo-discord.svg +1 -0
  1087. package/dist/ldf/svg/logo-docker.svg +1 -0
  1088. package/dist/ldf/svg/logo-dribbble.svg +1 -1
  1089. package/dist/ldf/svg/logo-dropbox.svg +1 -1
  1090. package/dist/ldf/svg/logo-edge.svg +1 -1
  1091. package/dist/ldf/svg/logo-electron.svg +1 -1
  1092. package/dist/ldf/svg/logo-euro.svg +1 -1
  1093. package/dist/ldf/svg/logo-facebook.svg +1 -1
  1094. package/dist/ldf/svg/logo-figma.svg +1 -0
  1095. package/dist/ldf/svg/logo-firebase.svg +1 -1
  1096. package/dist/ldf/svg/logo-firefox.svg +1 -1
  1097. package/dist/ldf/svg/logo-flickr.svg +1 -1
  1098. package/dist/ldf/svg/logo-foursquare.svg +1 -1
  1099. package/dist/ldf/svg/logo-github.svg +1 -1
  1100. package/dist/ldf/svg/logo-gitlab.svg +1 -0
  1101. package/dist/ldf/svg/logo-google-playstore.svg +1 -1
  1102. package/dist/ldf/svg/logo-google.svg +1 -1
  1103. package/dist/ldf/svg/logo-hackernews.svg +1 -1
  1104. package/dist/ldf/svg/logo-html5.svg +1 -1
  1105. package/dist/ldf/svg/logo-instagram.svg +1 -1
  1106. package/dist/ldf/svg/logo-ionic.svg +1 -1
  1107. package/dist/ldf/svg/logo-ionitron.svg +1 -1
  1108. package/dist/ldf/svg/logo-javascript.svg +1 -1
  1109. package/dist/ldf/svg/logo-laravel.svg +1 -1
  1110. package/dist/ldf/svg/logo-linkedin.svg +1 -1
  1111. package/dist/ldf/svg/logo-markdown.svg +1 -1
  1112. package/dist/ldf/svg/logo-mastodon.svg +1 -0
  1113. package/dist/ldf/svg/logo-medium.svg +1 -0
  1114. package/dist/ldf/svg/logo-microsoft.svg +1 -0
  1115. package/dist/ldf/svg/logo-no-smoking.svg +1 -1
  1116. package/dist/ldf/svg/logo-nodejs.svg +1 -1
  1117. package/dist/ldf/svg/logo-npm.svg +1 -1
  1118. package/dist/ldf/svg/logo-octocat.svg +1 -1
  1119. package/dist/ldf/svg/logo-paypal.svg +1 -0
  1120. package/dist/ldf/svg/logo-pinterest.svg +1 -1
  1121. package/dist/ldf/svg/logo-playstation.svg +1 -1
  1122. package/dist/ldf/svg/logo-pwa.svg +1 -1
  1123. package/dist/ldf/svg/logo-python.svg +1 -1
  1124. package/dist/ldf/svg/logo-react.svg +1 -1
  1125. package/dist/ldf/svg/logo-reddit.svg +1 -1
  1126. package/dist/ldf/svg/logo-rss.svg +1 -1
  1127. package/dist/ldf/svg/logo-sass.svg +1 -1
  1128. package/dist/ldf/svg/logo-skype.svg +1 -1
  1129. package/dist/ldf/svg/logo-slack.svg +1 -1
  1130. package/dist/ldf/svg/logo-snapchat.svg +1 -1
  1131. package/dist/ldf/svg/logo-soundcloud.svg +1 -0
  1132. package/dist/ldf/svg/logo-stackoverflow.svg +1 -1
  1133. package/dist/ldf/svg/logo-steam.svg +1 -1
  1134. package/dist/ldf/svg/logo-stencil.svg +1 -1
  1135. package/dist/ldf/svg/logo-tableau.svg +1 -0
  1136. package/dist/ldf/svg/logo-tiktok.svg +1 -0
  1137. package/dist/ldf/svg/logo-tumblr.svg +1 -1
  1138. package/dist/ldf/svg/logo-tux.svg +1 -1
  1139. package/dist/ldf/svg/logo-twitch.svg +1 -1
  1140. package/dist/ldf/svg/logo-twitter.svg +1 -1
  1141. package/dist/ldf/svg/logo-usd.svg +1 -1
  1142. package/dist/ldf/svg/logo-venmo.svg +1 -0
  1143. package/dist/ldf/svg/logo-vercel.svg +1 -0
  1144. package/dist/ldf/svg/logo-vimeo.svg +1 -1
  1145. package/dist/ldf/svg/logo-vk.svg +1 -1
  1146. package/dist/ldf/svg/logo-vue.svg +1 -1
  1147. package/dist/ldf/svg/logo-web-component.svg +1 -1
  1148. package/dist/ldf/svg/logo-wechat.svg +1 -0
  1149. package/dist/ldf/svg/logo-whatsapp.svg +1 -1
  1150. package/dist/ldf/svg/logo-windows.svg +1 -1
  1151. package/dist/ldf/svg/logo-wordpress.svg +1 -1
  1152. package/dist/ldf/svg/logo-xbox.svg +1 -1
  1153. package/dist/ldf/svg/logo-xing.svg +1 -1
  1154. package/dist/ldf/svg/logo-yahoo.svg +1 -1
  1155. package/dist/ldf/svg/logo-yen.svg +1 -1
  1156. package/dist/ldf/svg/logo-youtube.svg +1 -1
  1157. package/dist/ldf/svg/magnet-outline.svg +1 -1
  1158. package/dist/ldf/svg/magnet-sharp.svg +1 -1
  1159. package/dist/ldf/svg/magnet.svg +1 -1
  1160. package/dist/ldf/svg/mail-open-outline.svg +1 -1
  1161. package/dist/ldf/svg/mail-open-sharp.svg +1 -1
  1162. package/dist/ldf/svg/mail-open.svg +1 -1
  1163. package/dist/ldf/svg/mail-outline.svg +1 -1
  1164. package/dist/ldf/svg/mail-sharp.svg +1 -1
  1165. package/dist/ldf/svg/mail-unread-outline.svg +1 -1
  1166. package/dist/ldf/svg/mail-unread-sharp.svg +1 -1
  1167. package/dist/ldf/svg/mail-unread.svg +1 -1
  1168. package/dist/ldf/svg/mail.svg +1 -1
  1169. package/dist/ldf/svg/male-female-outline.svg +1 -1
  1170. package/dist/ldf/svg/male-female-sharp.svg +1 -1
  1171. package/dist/ldf/svg/male-female.svg +1 -1
  1172. package/dist/ldf/svg/male-outline.svg +1 -1
  1173. package/dist/ldf/svg/male-sharp.svg +1 -1
  1174. package/dist/ldf/svg/male.svg +1 -1
  1175. package/dist/ldf/svg/man-outline.svg +1 -1
  1176. package/dist/ldf/svg/man-sharp.svg +1 -1
  1177. package/dist/ldf/svg/man.svg +1 -1
  1178. package/dist/ldf/svg/map-outline.svg +1 -1
  1179. package/dist/ldf/svg/map-sharp.svg +1 -1
  1180. package/dist/ldf/svg/map.svg +1 -1
  1181. package/dist/ldf/svg/medal-outline.svg +1 -1
  1182. package/dist/ldf/svg/medal-sharp.svg +1 -1
  1183. package/dist/ldf/svg/medal.svg +1 -1
  1184. package/dist/ldf/svg/medical-outline.svg +1 -1
  1185. package/dist/ldf/svg/medical-sharp.svg +1 -1
  1186. package/dist/ldf/svg/medical.svg +1 -1
  1187. package/dist/ldf/svg/medkit-outline.svg +1 -1
  1188. package/dist/ldf/svg/medkit-sharp.svg +1 -1
  1189. package/dist/ldf/svg/medkit.svg +1 -1
  1190. package/dist/ldf/svg/megaphone-outline.svg +1 -1
  1191. package/dist/ldf/svg/megaphone-sharp.svg +1 -1
  1192. package/dist/ldf/svg/megaphone.svg +1 -1
  1193. package/dist/ldf/svg/menu-outline.svg +1 -1
  1194. package/dist/ldf/svg/menu-sharp.svg +1 -1
  1195. package/dist/ldf/svg/menu.svg +1 -1
  1196. package/dist/ldf/svg/mic-circle-outline.svg +1 -1
  1197. package/dist/ldf/svg/mic-circle-sharp.svg +1 -1
  1198. package/dist/ldf/svg/mic-circle.svg +1 -1
  1199. package/dist/ldf/svg/mic-off-circle-outline.svg +1 -1
  1200. package/dist/ldf/svg/mic-off-circle-sharp.svg +1 -1
  1201. package/dist/ldf/svg/mic-off-circle.svg +1 -1
  1202. package/dist/ldf/svg/mic-off-outline.svg +1 -1
  1203. package/dist/ldf/svg/mic-off-sharp.svg +1 -1
  1204. package/dist/ldf/svg/mic-off.svg +1 -1
  1205. package/dist/ldf/svg/mic-outline.svg +1 -1
  1206. package/dist/ldf/svg/mic-sharp.svg +1 -1
  1207. package/dist/ldf/svg/mic.svg +1 -1
  1208. package/dist/ldf/svg/moon-outline.svg +1 -1
  1209. package/dist/ldf/svg/moon-sharp.svg +1 -1
  1210. package/dist/ldf/svg/moon.svg +1 -1
  1211. package/dist/ldf/svg/move-outline.svg +1 -1
  1212. package/dist/ldf/svg/move-sharp.svg +1 -1
  1213. package/dist/ldf/svg/move.svg +1 -1
  1214. package/dist/ldf/svg/musical-note-outline.svg +1 -1
  1215. package/dist/ldf/svg/musical-note-sharp.svg +1 -1
  1216. package/dist/ldf/svg/musical-note.svg +1 -1
  1217. package/dist/ldf/svg/musical-notes-outline.svg +1 -1
  1218. package/dist/ldf/svg/musical-notes-sharp.svg +1 -1
  1219. package/dist/ldf/svg/musical-notes.svg +1 -1
  1220. package/dist/ldf/svg/navigate-circle-outline.svg +1 -1
  1221. package/dist/ldf/svg/navigate-circle-sharp.svg +1 -1
  1222. package/dist/ldf/svg/navigate-circle.svg +1 -1
  1223. package/dist/ldf/svg/navigate-outline.svg +1 -1
  1224. package/dist/ldf/svg/navigate-sharp.svg +1 -1
  1225. package/dist/ldf/svg/navigate.svg +1 -1
  1226. package/dist/ldf/svg/newspaper-outline.svg +1 -1
  1227. package/dist/ldf/svg/newspaper-sharp.svg +1 -1
  1228. package/dist/ldf/svg/newspaper.svg +1 -1
  1229. package/dist/ldf/svg/notifications-circle-outline.svg +1 -1
  1230. package/dist/ldf/svg/notifications-circle-sharp.svg +1 -1
  1231. package/dist/ldf/svg/notifications-circle.svg +1 -1
  1232. package/dist/ldf/svg/notifications-off-circle-outline.svg +1 -1
  1233. package/dist/ldf/svg/notifications-off-circle-sharp.svg +1 -1
  1234. package/dist/ldf/svg/notifications-off-circle.svg +1 -1
  1235. package/dist/ldf/svg/notifications-off-outline.svg +1 -1
  1236. package/dist/ldf/svg/notifications-off-sharp.svg +1 -1
  1237. package/dist/ldf/svg/notifications-off.svg +1 -1
  1238. package/dist/ldf/svg/notifications-outline.svg +1 -1
  1239. package/dist/ldf/svg/notifications-sharp.svg +1 -1
  1240. package/dist/ldf/svg/notifications.svg +1 -1
  1241. package/dist/ldf/svg/nuclear-outline.svg +1 -1
  1242. package/dist/ldf/svg/nuclear-sharp.svg +1 -1
  1243. package/dist/ldf/svg/nuclear.svg +1 -1
  1244. package/dist/ldf/svg/nutrition-outline.svg +1 -1
  1245. package/dist/ldf/svg/nutrition-sharp.svg +1 -1
  1246. package/dist/ldf/svg/nutrition.svg +1 -1
  1247. package/dist/ldf/svg/open-outline.svg +1 -1
  1248. package/dist/ldf/svg/open-sharp.svg +1 -1
  1249. package/dist/ldf/svg/open.svg +1 -1
  1250. package/dist/ldf/svg/options-outline.svg +1 -1
  1251. package/dist/ldf/svg/options-sharp.svg +1 -1
  1252. package/dist/ldf/svg/options.svg +1 -1
  1253. package/dist/ldf/svg/paper-plane-outline.svg +1 -1
  1254. package/dist/ldf/svg/paper-plane-sharp.svg +1 -1
  1255. package/dist/ldf/svg/paper-plane.svg +1 -1
  1256. package/dist/ldf/svg/partly-sunny-outline.svg +1 -1
  1257. package/dist/ldf/svg/partly-sunny-sharp.svg +1 -1
  1258. package/dist/ldf/svg/partly-sunny.svg +1 -1
  1259. package/dist/ldf/svg/pause-circle-outline.svg +1 -1
  1260. package/dist/ldf/svg/pause-circle-sharp.svg +1 -1
  1261. package/dist/ldf/svg/pause-circle.svg +1 -1
  1262. package/dist/ldf/svg/pause-outline.svg +1 -1
  1263. package/dist/ldf/svg/pause-sharp.svg +1 -1
  1264. package/dist/ldf/svg/pause.svg +1 -1
  1265. package/dist/ldf/svg/paw-outline.svg +1 -1
  1266. package/dist/ldf/svg/paw-sharp.svg +1 -1
  1267. package/dist/ldf/svg/paw.svg +1 -1
  1268. package/dist/ldf/svg/pencil-outline.svg +1 -1
  1269. package/dist/ldf/svg/pencil-sharp.svg +1 -1
  1270. package/dist/ldf/svg/pencil.svg +1 -1
  1271. package/dist/ldf/svg/people-circle-outline.svg +1 -1
  1272. package/dist/ldf/svg/people-circle-sharp.svg +1 -1
  1273. package/dist/ldf/svg/people-circle.svg +1 -1
  1274. package/dist/ldf/svg/people-outline.svg +1 -1
  1275. package/dist/ldf/svg/people-sharp.svg +1 -1
  1276. package/dist/ldf/svg/people.svg +1 -1
  1277. package/dist/ldf/svg/person-add-outline.svg +1 -1
  1278. package/dist/ldf/svg/person-add-sharp.svg +1 -1
  1279. package/dist/ldf/svg/person-add.svg +1 -1
  1280. package/dist/ldf/svg/person-circle-outline.svg +1 -1
  1281. package/dist/ldf/svg/person-circle-sharp.svg +1 -1
  1282. package/dist/ldf/svg/person-circle.svg +1 -1
  1283. package/dist/ldf/svg/person-outline.svg +1 -1
  1284. package/dist/ldf/svg/person-remove-outline.svg +1 -1
  1285. package/dist/ldf/svg/person-remove-sharp.svg +1 -1
  1286. package/dist/ldf/svg/person-remove.svg +1 -1
  1287. package/dist/ldf/svg/person-sharp.svg +1 -1
  1288. package/dist/ldf/svg/person.svg +1 -1
  1289. package/dist/ldf/svg/phone-landscape-outline.svg +1 -1
  1290. package/dist/ldf/svg/phone-landscape-sharp.svg +1 -1
  1291. package/dist/ldf/svg/phone-landscape.svg +1 -1
  1292. package/dist/ldf/svg/phone-portrait-outline.svg +1 -1
  1293. package/dist/ldf/svg/phone-portrait-sharp.svg +1 -1
  1294. package/dist/ldf/svg/phone-portrait.svg +1 -1
  1295. package/dist/ldf/svg/pie-chart-outline.svg +1 -1
  1296. package/dist/ldf/svg/pie-chart-sharp.svg +1 -1
  1297. package/dist/ldf/svg/pie-chart.svg +1 -1
  1298. package/dist/ldf/svg/pin-outline.svg +1 -1
  1299. package/dist/ldf/svg/pin-sharp.svg +1 -1
  1300. package/dist/ldf/svg/pin.svg +1 -1
  1301. package/dist/ldf/svg/pint-outline.svg +1 -1
  1302. package/dist/ldf/svg/pint-sharp.svg +1 -1
  1303. package/dist/ldf/svg/pint.svg +1 -1
  1304. package/dist/ldf/svg/pizza-outline.svg +1 -1
  1305. package/dist/ldf/svg/pizza-sharp.svg +1 -1
  1306. package/dist/ldf/svg/pizza.svg +1 -1
  1307. package/dist/ldf/svg/planet-outline.svg +1 -1
  1308. package/dist/ldf/svg/planet-sharp.svg +1 -1
  1309. package/dist/ldf/svg/planet.svg +1 -1
  1310. package/dist/ldf/svg/play-back-circle-outline.svg +1 -1
  1311. package/dist/ldf/svg/play-back-circle-sharp.svg +1 -1
  1312. package/dist/ldf/svg/play-back-circle.svg +1 -1
  1313. package/dist/ldf/svg/play-back-outline.svg +1 -1
  1314. package/dist/ldf/svg/play-back-sharp.svg +1 -1
  1315. package/dist/ldf/svg/play-back.svg +1 -1
  1316. package/dist/ldf/svg/play-circle-outline.svg +1 -1
  1317. package/dist/ldf/svg/play-circle-sharp.svg +1 -1
  1318. package/dist/ldf/svg/play-circle.svg +1 -1
  1319. package/dist/ldf/svg/play-forward-circle-outline.svg +1 -1
  1320. package/dist/ldf/svg/play-forward-circle-sharp.svg +1 -1
  1321. package/dist/ldf/svg/play-forward-circle.svg +1 -1
  1322. package/dist/ldf/svg/play-forward-outline.svg +1 -1
  1323. package/dist/ldf/svg/play-forward-sharp.svg +1 -1
  1324. package/dist/ldf/svg/play-forward.svg +1 -1
  1325. package/dist/ldf/svg/play-outline.svg +1 -1
  1326. package/dist/ldf/svg/play-sharp.svg +1 -1
  1327. package/dist/ldf/svg/play-skip-back-circle-outline.svg +1 -1
  1328. package/dist/ldf/svg/play-skip-back-circle-sharp.svg +1 -1
  1329. package/dist/ldf/svg/play-skip-back-circle.svg +1 -1
  1330. package/dist/ldf/svg/play-skip-back-outline.svg +1 -1
  1331. package/dist/ldf/svg/play-skip-back-sharp.svg +1 -1
  1332. package/dist/ldf/svg/play-skip-back.svg +1 -1
  1333. package/dist/ldf/svg/play-skip-forward-circle-outline.svg +1 -1
  1334. package/dist/ldf/svg/play-skip-forward-circle-sharp.svg +1 -1
  1335. package/dist/ldf/svg/play-skip-forward-circle.svg +1 -1
  1336. package/dist/ldf/svg/play-skip-forward-outline.svg +1 -1
  1337. package/dist/ldf/svg/play-skip-forward-sharp.svg +1 -1
  1338. package/dist/ldf/svg/play-skip-forward.svg +1 -1
  1339. package/dist/ldf/svg/play.svg +1 -1
  1340. package/dist/ldf/svg/podium-outline.svg +1 -1
  1341. package/dist/ldf/svg/podium-sharp.svg +1 -1
  1342. package/dist/ldf/svg/podium.svg +1 -1
  1343. package/dist/ldf/svg/power-outline.svg +1 -1
  1344. package/dist/ldf/svg/power-sharp.svg +1 -1
  1345. package/dist/ldf/svg/power.svg +1 -1
  1346. package/dist/ldf/svg/pricetag-outline.svg +1 -1
  1347. package/dist/ldf/svg/pricetag-sharp.svg +1 -1
  1348. package/dist/ldf/svg/pricetag.svg +1 -1
  1349. package/dist/ldf/svg/pricetags-outline.svg +1 -1
  1350. package/dist/ldf/svg/pricetags-sharp.svg +1 -1
  1351. package/dist/ldf/svg/pricetags.svg +1 -1
  1352. package/dist/ldf/svg/print-outline.svg +1 -1
  1353. package/dist/ldf/svg/print-sharp.svg +1 -1
  1354. package/dist/ldf/svg/print.svg +1 -1
  1355. package/dist/ldf/svg/prism-outline.svg +1 -0
  1356. package/dist/ldf/svg/prism-sharp.svg +1 -0
  1357. package/dist/ldf/svg/prism.svg +1 -0
  1358. package/dist/ldf/svg/pulse-outline.svg +1 -1
  1359. package/dist/ldf/svg/pulse-sharp.svg +1 -1
  1360. package/dist/ldf/svg/pulse.svg +1 -1
  1361. package/dist/ldf/svg/push-outline.svg +1 -1
  1362. package/dist/ldf/svg/push-sharp.svg +1 -1
  1363. package/dist/ldf/svg/push.svg +1 -1
  1364. package/dist/ldf/svg/qr-code-outline.svg +1 -1
  1365. package/dist/ldf/svg/qr-code-sharp.svg +1 -1
  1366. package/dist/ldf/svg/qr-code.svg +1 -1
  1367. package/dist/ldf/svg/radio-button-off-outline.svg +1 -1
  1368. package/dist/ldf/svg/radio-button-off-sharp.svg +1 -1
  1369. package/dist/ldf/svg/radio-button-off.svg +1 -1
  1370. package/dist/ldf/svg/radio-button-on-outline.svg +1 -1
  1371. package/dist/ldf/svg/radio-button-on-sharp.svg +1 -1
  1372. package/dist/ldf/svg/radio-button-on.svg +1 -1
  1373. package/dist/ldf/svg/radio-outline.svg +1 -1
  1374. package/dist/ldf/svg/radio-sharp.svg +1 -1
  1375. package/dist/ldf/svg/radio.svg +1 -1
  1376. package/dist/ldf/svg/rainy-outline.svg +1 -1
  1377. package/dist/ldf/svg/rainy-sharp.svg +1 -1
  1378. package/dist/ldf/svg/rainy.svg +1 -1
  1379. package/dist/ldf/svg/reader-outline.svg +1 -1
  1380. package/dist/ldf/svg/reader-sharp.svg +1 -1
  1381. package/dist/ldf/svg/reader.svg +1 -1
  1382. package/dist/ldf/svg/receipt-outline.svg +1 -1
  1383. package/dist/ldf/svg/receipt-sharp.svg +1 -1
  1384. package/dist/ldf/svg/receipt.svg +1 -1
  1385. package/dist/ldf/svg/recording-outline.svg +1 -1
  1386. package/dist/ldf/svg/recording-sharp.svg +1 -1
  1387. package/dist/ldf/svg/recording.svg +1 -1
  1388. package/dist/ldf/svg/refresh-circle-outline.svg +1 -1
  1389. package/dist/ldf/svg/refresh-circle-sharp.svg +1 -1
  1390. package/dist/ldf/svg/refresh-circle.svg +1 -1
  1391. package/dist/ldf/svg/refresh-outline.svg +1 -1
  1392. package/dist/ldf/svg/refresh-sharp.svg +1 -1
  1393. package/dist/ldf/svg/refresh.svg +1 -1
  1394. package/dist/ldf/svg/reload-circle-outline.svg +1 -1
  1395. package/dist/ldf/svg/reload-circle-sharp.svg +1 -1
  1396. package/dist/ldf/svg/reload-circle.svg +1 -1
  1397. package/dist/ldf/svg/reload-outline.svg +1 -1
  1398. package/dist/ldf/svg/reload-sharp.svg +1 -1
  1399. package/dist/ldf/svg/reload.svg +1 -1
  1400. package/dist/ldf/svg/remove-circle-outline.svg +1 -1
  1401. package/dist/ldf/svg/remove-circle-sharp.svg +1 -1
  1402. package/dist/ldf/svg/remove-circle.svg +1 -1
  1403. package/dist/ldf/svg/remove-outline.svg +1 -1
  1404. package/dist/ldf/svg/remove-sharp.svg +1 -1
  1405. package/dist/ldf/svg/remove.svg +1 -1
  1406. package/dist/ldf/svg/reorder-four-outline.svg +1 -1
  1407. package/dist/ldf/svg/reorder-four-sharp.svg +1 -1
  1408. package/dist/ldf/svg/reorder-four.svg +1 -1
  1409. package/dist/ldf/svg/reorder-three-outline.svg +1 -1
  1410. package/dist/ldf/svg/reorder-three-sharp.svg +1 -1
  1411. package/dist/ldf/svg/reorder-three.svg +1 -1
  1412. package/dist/ldf/svg/reorder-two-outline.svg +1 -1
  1413. package/dist/ldf/svg/reorder-two-sharp.svg +1 -1
  1414. package/dist/ldf/svg/reorder-two.svg +1 -1
  1415. package/dist/ldf/svg/repeat-outline.svg +1 -1
  1416. package/dist/ldf/svg/repeat-sharp.svg +1 -1
  1417. package/dist/ldf/svg/repeat.svg +1 -1
  1418. package/dist/ldf/svg/resize-outline.svg +1 -1
  1419. package/dist/ldf/svg/resize-sharp.svg +1 -1
  1420. package/dist/ldf/svg/resize.svg +1 -1
  1421. package/dist/ldf/svg/restaurant-outline.svg +1 -1
  1422. package/dist/ldf/svg/restaurant-sharp.svg +1 -1
  1423. package/dist/ldf/svg/restaurant.svg +1 -1
  1424. package/dist/ldf/svg/return-down-back-outline.svg +1 -1
  1425. package/dist/ldf/svg/return-down-back-sharp.svg +1 -1
  1426. package/dist/ldf/svg/return-down-back.svg +1 -1
  1427. package/dist/ldf/svg/return-down-forward-outline.svg +1 -1
  1428. package/dist/ldf/svg/return-down-forward-sharp.svg +1 -1
  1429. package/dist/ldf/svg/return-down-forward.svg +1 -1
  1430. package/dist/ldf/svg/return-up-back-outline.svg +1 -1
  1431. package/dist/ldf/svg/return-up-back-sharp.svg +1 -1
  1432. package/dist/ldf/svg/return-up-back.svg +1 -1
  1433. package/dist/ldf/svg/return-up-forward-outline.svg +1 -1
  1434. package/dist/ldf/svg/return-up-forward-sharp.svg +1 -1
  1435. package/dist/ldf/svg/return-up-forward.svg +1 -1
  1436. package/dist/ldf/svg/ribbon-outline.svg +1 -1
  1437. package/dist/ldf/svg/ribbon-sharp.svg +1 -1
  1438. package/dist/ldf/svg/ribbon.svg +1 -1
  1439. package/dist/ldf/svg/rocket-outline.svg +1 -1
  1440. package/dist/ldf/svg/rocket-sharp.svg +1 -1
  1441. package/dist/ldf/svg/rocket.svg +1 -1
  1442. package/dist/ldf/svg/rose-outline.svg +1 -1
  1443. package/dist/ldf/svg/rose-sharp.svg +1 -1
  1444. package/dist/ldf/svg/rose.svg +1 -1
  1445. package/dist/ldf/svg/sad-outline.svg +1 -1
  1446. package/dist/ldf/svg/sad-sharp.svg +1 -1
  1447. package/dist/ldf/svg/sad.svg +1 -1
  1448. package/dist/ldf/svg/save-outline.svg +1 -1
  1449. package/dist/ldf/svg/save-sharp.svg +1 -1
  1450. package/dist/ldf/svg/save.svg +1 -1
  1451. package/dist/ldf/svg/scale-outline.svg +1 -0
  1452. package/dist/ldf/svg/scale-sharp.svg +1 -0
  1453. package/dist/ldf/svg/scale.svg +1 -0
  1454. package/dist/ldf/svg/scan-circle-outline.svg +1 -1
  1455. package/dist/ldf/svg/scan-circle-sharp.svg +1 -1
  1456. package/dist/ldf/svg/scan-circle.svg +1 -1
  1457. package/dist/ldf/svg/scan-outline.svg +1 -1
  1458. package/dist/ldf/svg/scan-sharp.svg +1 -1
  1459. package/dist/ldf/svg/scan.svg +1 -1
  1460. package/dist/ldf/svg/school-outline.svg +1 -1
  1461. package/dist/ldf/svg/school-sharp.svg +1 -1
  1462. package/dist/ldf/svg/school.svg +1 -1
  1463. package/dist/ldf/svg/search-circle-outline.svg +1 -1
  1464. package/dist/ldf/svg/search-circle-sharp.svg +1 -1
  1465. package/dist/ldf/svg/search-circle.svg +1 -1
  1466. package/dist/ldf/svg/search-outline.svg +1 -1
  1467. package/dist/ldf/svg/search-sharp.svg +1 -1
  1468. package/dist/ldf/svg/search.svg +1 -1
  1469. package/dist/ldf/svg/send-outline.svg +1 -1
  1470. package/dist/ldf/svg/send-sharp.svg +1 -1
  1471. package/dist/ldf/svg/send.svg +1 -1
  1472. package/dist/ldf/svg/server-outline.svg +1 -1
  1473. package/dist/ldf/svg/server-sharp.svg +1 -1
  1474. package/dist/ldf/svg/server.svg +1 -1
  1475. package/dist/ldf/svg/settings-outline.svg +1 -1
  1476. package/dist/ldf/svg/settings-sharp.svg +1 -1
  1477. package/dist/ldf/svg/settings.svg +1 -1
  1478. package/dist/ldf/svg/shapes-outline.svg +1 -1
  1479. package/dist/ldf/svg/shapes-sharp.svg +1 -1
  1480. package/dist/ldf/svg/shapes.svg +1 -1
  1481. package/dist/ldf/svg/share-outline.svg +1 -1
  1482. package/dist/ldf/svg/share-sharp.svg +1 -1
  1483. package/dist/ldf/svg/share-social-outline.svg +1 -1
  1484. package/dist/ldf/svg/share-social-sharp.svg +1 -1
  1485. package/dist/ldf/svg/share-social.svg +1 -1
  1486. package/dist/ldf/svg/share.svg +1 -1
  1487. package/dist/ldf/svg/shield-checkmark-outline.svg +1 -1
  1488. package/dist/ldf/svg/shield-checkmark-sharp.svg +1 -1
  1489. package/dist/ldf/svg/shield-checkmark.svg +1 -1
  1490. package/dist/ldf/svg/shield-half-outline.svg +1 -0
  1491. package/dist/ldf/svg/shield-half-sharp.svg +1 -0
  1492. package/dist/ldf/svg/shield-half.svg +1 -0
  1493. package/dist/ldf/svg/shield-outline.svg +1 -1
  1494. package/dist/ldf/svg/shield-sharp.svg +1 -1
  1495. package/dist/ldf/svg/shield.svg +1 -1
  1496. package/dist/ldf/svg/shirt-outline.svg +1 -1
  1497. package/dist/ldf/svg/shirt-sharp.svg +1 -1
  1498. package/dist/ldf/svg/shirt.svg +1 -1
  1499. package/dist/ldf/svg/shuffle-outline.svg +1 -1
  1500. package/dist/ldf/svg/shuffle-sharp.svg +1 -1
  1501. package/dist/ldf/svg/shuffle.svg +1 -1
  1502. package/dist/ldf/svg/skull-outline.svg +1 -1
  1503. package/dist/ldf/svg/skull-sharp.svg +1 -1
  1504. package/dist/ldf/svg/skull.svg +1 -1
  1505. package/dist/ldf/svg/snow-outline.svg +1 -1
  1506. package/dist/ldf/svg/snow-sharp.svg +1 -1
  1507. package/dist/ldf/svg/snow.svg +1 -1
  1508. package/dist/ldf/svg/sparkles-outline.svg +1 -0
  1509. package/dist/ldf/svg/sparkles-sharp.svg +1 -0
  1510. package/dist/ldf/svg/sparkles.svg +1 -0
  1511. package/dist/ldf/svg/speedometer-outline.svg +1 -1
  1512. package/dist/ldf/svg/speedometer-sharp.svg +1 -1
  1513. package/dist/ldf/svg/speedometer.svg +1 -1
  1514. package/dist/ldf/svg/square-outline.svg +1 -1
  1515. package/dist/ldf/svg/square-sharp.svg +1 -1
  1516. package/dist/ldf/svg/square.svg +1 -1
  1517. package/dist/ldf/svg/star-half-outline.svg +1 -1
  1518. package/dist/ldf/svg/star-half-sharp.svg +1 -1
  1519. package/dist/ldf/svg/star-half.svg +1 -1
  1520. package/dist/ldf/svg/star-outline.svg +1 -1
  1521. package/dist/ldf/svg/star-sharp.svg +1 -1
  1522. package/dist/ldf/svg/star.svg +1 -1
  1523. package/dist/ldf/svg/stats-chart-outline.svg +1 -1
  1524. package/dist/ldf/svg/stats-chart-sharp.svg +1 -1
  1525. package/dist/ldf/svg/stats-chart.svg +1 -1
  1526. package/dist/ldf/svg/stop-circle-outline.svg +1 -1
  1527. package/dist/ldf/svg/stop-circle-sharp.svg +1 -1
  1528. package/dist/ldf/svg/stop-circle.svg +1 -1
  1529. package/dist/ldf/svg/stop-outline.svg +1 -1
  1530. package/dist/ldf/svg/stop-sharp.svg +1 -1
  1531. package/dist/ldf/svg/stop.svg +1 -1
  1532. package/dist/ldf/svg/stopwatch-outline.svg +1 -1
  1533. package/dist/ldf/svg/stopwatch-sharp.svg +1 -1
  1534. package/dist/ldf/svg/stopwatch.svg +1 -1
  1535. package/dist/ldf/svg/storefront-outline.svg +1 -0
  1536. package/dist/ldf/svg/storefront-sharp.svg +1 -0
  1537. package/dist/ldf/svg/storefront.svg +1 -0
  1538. package/dist/ldf/svg/subway-outline.svg +1 -1
  1539. package/dist/ldf/svg/subway-sharp.svg +1 -1
  1540. package/dist/ldf/svg/subway.svg +1 -1
  1541. package/dist/ldf/svg/sunny-outline.svg +1 -1
  1542. package/dist/ldf/svg/sunny-sharp.svg +1 -1
  1543. package/dist/ldf/svg/sunny.svg +1 -1
  1544. package/dist/ldf/svg/swap-horizontal-outline.svg +1 -1
  1545. package/dist/ldf/svg/swap-horizontal-sharp.svg +1 -1
  1546. package/dist/ldf/svg/swap-horizontal.svg +1 -1
  1547. package/dist/ldf/svg/swap-vertical-outline.svg +1 -1
  1548. package/dist/ldf/svg/swap-vertical-sharp.svg +1 -1
  1549. package/dist/ldf/svg/swap-vertical.svg +1 -1
  1550. package/dist/ldf/svg/sync-circle-outline.svg +1 -1
  1551. package/dist/ldf/svg/sync-circle-sharp.svg +1 -1
  1552. package/dist/ldf/svg/sync-circle.svg +1 -1
  1553. package/dist/ldf/svg/sync-outline.svg +1 -1
  1554. package/dist/ldf/svg/sync-sharp.svg +1 -1
  1555. package/dist/ldf/svg/sync.svg +1 -1
  1556. package/dist/ldf/svg/tablet-landscape-outline.svg +1 -1
  1557. package/dist/ldf/svg/tablet-landscape-sharp.svg +1 -1
  1558. package/dist/ldf/svg/tablet-landscape.svg +1 -1
  1559. package/dist/ldf/svg/tablet-portrait-outline.svg +1 -1
  1560. package/dist/ldf/svg/tablet-portrait-sharp.svg +1 -1
  1561. package/dist/ldf/svg/tablet-portrait.svg +1 -1
  1562. package/dist/ldf/svg/telescope-outline.svg +1 -0
  1563. package/dist/ldf/svg/telescope-sharp.svg +1 -0
  1564. package/dist/ldf/svg/telescope.svg +1 -0
  1565. package/dist/ldf/svg/tennisball-outline.svg +1 -1
  1566. package/dist/ldf/svg/tennisball-sharp.svg +1 -1
  1567. package/dist/ldf/svg/tennisball.svg +1 -1
  1568. package/dist/ldf/svg/terminal-outline.svg +1 -1
  1569. package/dist/ldf/svg/terminal-sharp.svg +1 -1
  1570. package/dist/ldf/svg/terminal.svg +1 -1
  1571. package/dist/ldf/svg/text-outline.svg +1 -1
  1572. package/dist/ldf/svg/text-sharp.svg +1 -1
  1573. package/dist/ldf/svg/text.svg +1 -1
  1574. package/dist/ldf/svg/thermometer-outline.svg +1 -1
  1575. package/dist/ldf/svg/thermometer-sharp.svg +1 -1
  1576. package/dist/ldf/svg/thermometer.svg +1 -1
  1577. package/dist/ldf/svg/thumbs-down-outline.svg +1 -1
  1578. package/dist/ldf/svg/thumbs-down-sharp.svg +1 -1
  1579. package/dist/ldf/svg/thumbs-down.svg +1 -1
  1580. package/dist/ldf/svg/thumbs-up-outline.svg +1 -1
  1581. package/dist/ldf/svg/thumbs-up-sharp.svg +1 -1
  1582. package/dist/ldf/svg/thumbs-up.svg +1 -1
  1583. package/dist/ldf/svg/thunderstorm-outline.svg +1 -1
  1584. package/dist/ldf/svg/thunderstorm-sharp.svg +1 -1
  1585. package/dist/ldf/svg/thunderstorm.svg +1 -1
  1586. package/dist/ldf/svg/ticket-outline.svg +1 -0
  1587. package/dist/ldf/svg/ticket-sharp.svg +1 -0
  1588. package/dist/ldf/svg/ticket.svg +1 -0
  1589. package/dist/ldf/svg/time-outline.svg +1 -1
  1590. package/dist/ldf/svg/time-sharp.svg +1 -1
  1591. package/dist/ldf/svg/time.svg +1 -1
  1592. package/dist/ldf/svg/timer-outline.svg +1 -1
  1593. package/dist/ldf/svg/timer-sharp.svg +1 -1
  1594. package/dist/ldf/svg/timer.svg +1 -1
  1595. package/dist/ldf/svg/today-outline.svg +1 -1
  1596. package/dist/ldf/svg/today-sharp.svg +1 -1
  1597. package/dist/ldf/svg/today.svg +1 -1
  1598. package/dist/ldf/svg/toggle-outline.svg +1 -1
  1599. package/dist/ldf/svg/toggle-sharp.svg +1 -1
  1600. package/dist/ldf/svg/toggle.svg +1 -1
  1601. package/dist/ldf/svg/trail-sign-outline.svg +1 -1
  1602. package/dist/ldf/svg/trail-sign-sharp.svg +1 -1
  1603. package/dist/ldf/svg/trail-sign.svg +1 -1
  1604. package/dist/ldf/svg/train-outline.svg +1 -1
  1605. package/dist/ldf/svg/train-sharp.svg +1 -1
  1606. package/dist/ldf/svg/train.svg +1 -1
  1607. package/dist/ldf/svg/transgender-outline.svg +1 -1
  1608. package/dist/ldf/svg/transgender-sharp.svg +1 -1
  1609. package/dist/ldf/svg/transgender.svg +1 -1
  1610. package/dist/ldf/svg/trash-bin-outline.svg +1 -1
  1611. package/dist/ldf/svg/trash-bin-sharp.svg +1 -1
  1612. package/dist/ldf/svg/trash-bin.svg +1 -1
  1613. package/dist/ldf/svg/trash-outline.svg +1 -1
  1614. package/dist/ldf/svg/trash-sharp.svg +1 -1
  1615. package/dist/ldf/svg/trash.svg +1 -1
  1616. package/dist/ldf/svg/trending-down-outline.svg +1 -1
  1617. package/dist/ldf/svg/trending-down-sharp.svg +1 -1
  1618. package/dist/ldf/svg/trending-down.svg +1 -1
  1619. package/dist/ldf/svg/trending-up-outline.svg +1 -1
  1620. package/dist/ldf/svg/trending-up-sharp.svg +1 -1
  1621. package/dist/ldf/svg/trending-up.svg +1 -1
  1622. package/dist/ldf/svg/triangle-outline.svg +1 -1
  1623. package/dist/ldf/svg/triangle-sharp.svg +1 -1
  1624. package/dist/ldf/svg/triangle.svg +1 -1
  1625. package/dist/ldf/svg/trophy-outline.svg +1 -1
  1626. package/dist/ldf/svg/trophy-sharp.svg +1 -1
  1627. package/dist/ldf/svg/trophy.svg +1 -1
  1628. package/dist/ldf/svg/tv-outline.svg +1 -1
  1629. package/dist/ldf/svg/tv-sharp.svg +1 -1
  1630. package/dist/ldf/svg/tv.svg +1 -1
  1631. package/dist/ldf/svg/umbrella-outline.svg +1 -1
  1632. package/dist/ldf/svg/umbrella-sharp.svg +1 -1
  1633. package/dist/ldf/svg/umbrella.svg +1 -1
  1634. package/dist/ldf/svg/unlink-outline.svg +1 -0
  1635. package/dist/ldf/svg/unlink-sharp.svg +1 -0
  1636. package/dist/ldf/svg/unlink.svg +1 -0
  1637. package/dist/ldf/svg/videocam-off-outline.svg +1 -0
  1638. package/dist/ldf/svg/videocam-off-sharp.svg +1 -0
  1639. package/dist/ldf/svg/videocam-off.svg +1 -0
  1640. package/dist/ldf/svg/videocam-outline.svg +1 -1
  1641. package/dist/ldf/svg/videocam-sharp.svg +1 -1
  1642. package/dist/ldf/svg/videocam.svg +1 -1
  1643. package/dist/ldf/svg/volume-high-outline.svg +1 -1
  1644. package/dist/ldf/svg/volume-high-sharp.svg +1 -1
  1645. package/dist/ldf/svg/volume-high.svg +1 -1
  1646. package/dist/ldf/svg/volume-low-outline.svg +1 -1
  1647. package/dist/ldf/svg/volume-low-sharp.svg +1 -1
  1648. package/dist/ldf/svg/volume-low.svg +1 -1
  1649. package/dist/ldf/svg/volume-medium-outline.svg +1 -1
  1650. package/dist/ldf/svg/volume-medium-sharp.svg +1 -1
  1651. package/dist/ldf/svg/volume-medium.svg +1 -1
  1652. package/dist/ldf/svg/volume-mute-outline.svg +1 -1
  1653. package/dist/ldf/svg/volume-mute-sharp.svg +1 -1
  1654. package/dist/ldf/svg/volume-mute.svg +1 -1
  1655. package/dist/ldf/svg/volume-off-outline.svg +1 -1
  1656. package/dist/ldf/svg/volume-off-sharp.svg +1 -1
  1657. package/dist/ldf/svg/volume-off.svg +1 -1
  1658. package/dist/ldf/svg/walk-outline.svg +1 -1
  1659. package/dist/ldf/svg/walk-sharp.svg +1 -1
  1660. package/dist/ldf/svg/walk.svg +1 -1
  1661. package/dist/ldf/svg/wallet-outline.svg +1 -1
  1662. package/dist/ldf/svg/wallet-sharp.svg +1 -1
  1663. package/dist/ldf/svg/wallet.svg +1 -1
  1664. package/dist/ldf/svg/warning-outline.svg +1 -1
  1665. package/dist/ldf/svg/warning-sharp.svg +1 -1
  1666. package/dist/ldf/svg/warning.svg +1 -1
  1667. package/dist/ldf/svg/watch-outline.svg +1 -1
  1668. package/dist/ldf/svg/watch-sharp.svg +1 -1
  1669. package/dist/ldf/svg/watch.svg +1 -1
  1670. package/dist/ldf/svg/water-outline.svg +1 -1
  1671. package/dist/ldf/svg/water-sharp.svg +1 -1
  1672. package/dist/ldf/svg/water.svg +1 -1
  1673. package/dist/ldf/svg/wifi-outline.svg +1 -1
  1674. package/dist/ldf/svg/wifi-sharp.svg +1 -1
  1675. package/dist/ldf/svg/wifi.svg +1 -1
  1676. package/dist/ldf/svg/wine-outline.svg +1 -1
  1677. package/dist/ldf/svg/wine-sharp.svg +1 -1
  1678. package/dist/ldf/svg/wine.svg +1 -1
  1679. package/dist/ldf/svg/woman-outline.svg +1 -1
  1680. package/dist/ldf/svg/woman-sharp.svg +1 -1
  1681. package/dist/ldf/svg/woman.svg +1 -1
  1682. package/dist/ldf/swiper/swiper.bundle.js +260 -86
  1683. package/dist/ldf/swiper/swiper.js +2 -2
  1684. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.ios.css +75 -0
  1685. package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.md.css +72 -0
  1686. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.ios.css +25 -0
  1687. package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.md.css +59 -0
  1688. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.ios.css +13 -19
  1689. package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.md.css +21 -16
  1690. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.ios.css +12 -1
  1691. package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.md.css +4 -3
  1692. package/dist/node_modules/@ionic/core/dist/collection/components/app/app.css +10 -0
  1693. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.ios.css +4 -0
  1694. package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.md.css +4 -0
  1695. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.ios.css +234 -0
  1696. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.md.css +237 -0
  1697. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +38 -0
  1698. package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.md.css +37 -0
  1699. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.ios.css +0 -1
  1700. package/dist/node_modules/@ionic/core/dist/collection/components/button/button.md.css +5 -5
  1701. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.ios.css +2 -2
  1702. package/dist/node_modules/@ionic/core/dist/collection/components/card/card.md.css +2 -2
  1703. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.ios.css +25 -3
  1704. package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.md.css +25 -3
  1705. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.ios.css +6 -0
  1706. package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.md.css +6 -0
  1707. package/dist/node_modules/@ionic/core/dist/collection/components/content/content.css +85 -15
  1708. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.ios.css +612 -70
  1709. package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.md.css +601 -70
  1710. package/dist/node_modules/@ionic/core/dist/collection/components/datetime-button/datetime-button.css +60 -0
  1711. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.ios.css +19 -5
  1712. package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.md.css +19 -5
  1713. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.ios.css +5 -1
  1714. package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.md.css +1 -1
  1715. package/dist/node_modules/@ionic/core/dist/collection/components/header/header.ios.css +16 -0
  1716. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.ios.css +21 -1
  1717. package/dist/node_modules/@ionic/core/dist/collection/components/input/input.md.css +21 -1
  1718. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.ios.css +129 -27
  1719. package/dist/node_modules/@ionic/core/dist/collection/components/item/item.md.css +326 -32
  1720. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.ios.css +6 -6
  1721. package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.md.css +6 -6
  1722. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.ios.css +6 -6
  1723. package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.md.css +6 -6
  1724. package/dist/node_modules/@ionic/core/dist/collection/components/item-sliding/item-sliding.css +2 -2
  1725. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.ios.css +8 -4
  1726. package/dist/node_modules/@ionic/core/dist/collection/components/label/label.md.css +113 -26
  1727. package/dist/node_modules/@ionic/core/dist/collection/components/list/list.ios.css +1 -1
  1728. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.ios.css +2 -6
  1729. package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.md.css +2 -6
  1730. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.ios.css +3 -7
  1731. package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.md.css +3 -7
  1732. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.ios.css +109 -17
  1733. package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.md.css +77 -4
  1734. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.ios.css +1 -0
  1735. package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.md.css +1 -0
  1736. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +82 -0
  1737. package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.md.css +85 -0
  1738. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.ios.css +127 -0
  1739. package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.md.css +123 -0
  1740. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.ios.css +84 -0
  1741. package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.md.css +50 -0
  1742. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.ios.css +53 -38
  1743. package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.md.css +53 -38
  1744. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.ios.css +32 -6
  1745. package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.md.css +32 -6
  1746. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.ios.css +5 -5
  1747. package/dist/node_modules/@ionic/core/dist/collection/components/range/range.md.css +7 -7
  1748. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.ios.css +12 -0
  1749. package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.md.css +2 -2
  1750. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.ios.css +12 -1
  1751. package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.md.css +12 -1
  1752. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.ios.css +1 -0
  1753. package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.md.css +1 -0
  1754. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.ios.css +4 -0
  1755. package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.md.css +4 -4
  1756. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.ios.css +27 -5
  1757. package/dist/node_modules/@ionic/core/dist/collection/components/select/select.md.css +60 -6
  1758. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/{select-popover.css → select-popover.ios.css} +4 -4
  1759. package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.md.css +37 -0
  1760. package/dist/node_modules/@ionic/core/dist/collection/components/skeleton-text/skeleton-text.css +4 -4
  1761. package/dist/node_modules/@ionic/core/dist/collection/components/spinner/spinner.css +23 -10
  1762. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.ios.css +1 -1
  1763. package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.md.css +1 -1
  1764. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.ios.css +2 -1
  1765. package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.md.css +1 -0
  1766. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.ios.css +51 -18
  1767. package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.md.css +51 -18
  1768. package/dist/node_modules/@ionic/core/dist/collection/components/title/title.ios.css +14 -2
  1769. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.ios.css +15 -2
  1770. package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.md.css +15 -2
  1771. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.ios.css +76 -4
  1772. package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.md.css +53 -3
  1773. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.ios.css +3 -2
  1774. package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.md.css +2 -1
  1775. package/dist/node_modules/@ionic/core/dist/collection/components/virtual-scroll/virtual-scroll.css +1 -1
  1776. package/dist/types/components/editable-string-list/editable-string-list.d.ts +2 -1
  1777. package/dist/types/components.d.ts +163 -51
  1778. package/dist/types/stencil-public-runtime.d.ts +196 -186
  1779. package/loader/index.d.ts +0 -1
  1780. package/package.json +5 -5
  1781. package/dist/cjs/animation-34a434a2.js +0 -957
  1782. package/dist/cjs/app-globals-60a4f972.js +0 -7
  1783. package/dist/cjs/cubic-bezier-f3b34d27.js +0 -91
  1784. package/dist/cjs/focus-visible-5621d6b1.js +0 -45
  1785. package/dist/cjs/framework-delegate-84d33ff0.js +0 -37
  1786. package/dist/cjs/gesture-controller-5bd9d825.js +0 -193
  1787. package/dist/cjs/haptic-88c261ab.js +0 -49
  1788. package/dist/cjs/hardware-back-button-8c2f48d2.js +0 -59
  1789. package/dist/cjs/helpers-41dfb43a.js +0 -110
  1790. package/dist/cjs/index-1a73a70c.js +0 -211
  1791. package/dist/cjs/index-4b7e4228.js +0 -135
  1792. package/dist/cjs/index-8197bb45.js +0 -441
  1793. package/dist/cjs/index-c5bdf2bc.js +0 -167
  1794. package/dist/cjs/index-e4c51e4d.js +0 -307
  1795. package/dist/cjs/input-shims-9c2d56bd.js +0 -357
  1796. package/dist/cjs/ion-action-sheet.cjs.entry.js +0 -230
  1797. package/dist/cjs/ion-alert.cjs.entry.js +0 -386
  1798. package/dist/cjs/ion-button_13.cjs.entry.js +0 -1806
  1799. package/dist/cjs/ion-checkbox_3.cjs.entry.js +0 -234
  1800. package/dist/cjs/ion-datetime_2.cjs.entry.js +0 -1125
  1801. package/dist/cjs/ion-list-header.cjs.entry.js +0 -28
  1802. package/dist/cjs/ion-note.cjs.entry.js +0 -27
  1803. package/dist/cjs/ion-popover.cjs.entry.js +0 -363
  1804. package/dist/cjs/ion-radio_2.cjs.entry.js +0 -149
  1805. package/dist/cjs/ion-select-popover.cjs.entry.js +0 -33
  1806. package/dist/cjs/ion-select_2.cjs.entry.js +0 -444
  1807. package/dist/cjs/ionic-global-581fb4f8.js +0 -204
  1808. package/dist/cjs/ios.transition-7244ac4e.js +0 -459
  1809. package/dist/cjs/md.transition-d86b1ef0.js +0 -62
  1810. package/dist/cjs/menu-toggle-util-293e388b.js +0 -11
  1811. package/dist/cjs/overlays-eb464d6d.js +0 -228
  1812. package/dist/cjs/spinner-configs-b0bec093.js +0 -112
  1813. package/dist/cjs/status-tap-7afb25f5.js +0 -25
  1814. package/dist/cjs/swipe-back-f887168e.js +0 -52
  1815. package/dist/cjs/tap-click-e0af5237.js +0 -169
  1816. package/dist/cjs/theme-81caa5b0.js +0 -47
  1817. package/dist/esm/animation-7a1025d0.js +0 -955
  1818. package/dist/esm/app-globals-729b03cf.js +0 -5
  1819. package/dist/esm/cubic-bezier-89113939.js +0 -89
  1820. package/dist/esm/focus-visible-571e113e.js +0 -43
  1821. package/dist/esm/framework-delegate-7af2c551.js +0 -34
  1822. package/dist/esm/gesture-controller-5bf8565e.js +0 -191
  1823. package/dist/esm/haptic-fc16a4d8.js +0 -44
  1824. package/dist/esm/hardware-back-button-b3b61715.js +0 -55
  1825. package/dist/esm/helpers-8c93393b.js +0 -98
  1826. package/dist/esm/index-734a6b69.js +0 -305
  1827. package/dist/esm/index-82044e24.js +0 -439
  1828. package/dist/esm/index-86d5f3ab.js +0 -133
  1829. package/dist/esm/index-9579282b.js +0 -202
  1830. package/dist/esm/index-c7ecbd63.js +0 -154
  1831. package/dist/esm/input-shims-a4ad2743.js +0 -355
  1832. package/dist/esm/ion-action-sheet.entry.js +0 -226
  1833. package/dist/esm/ion-alert.entry.js +0 -382
  1834. package/dist/esm/ion-button_13.entry.js +0 -1790
  1835. package/dist/esm/ion-checkbox_3.entry.js +0 -228
  1836. package/dist/esm/ion-datetime_2.entry.js +0 -1120
  1837. package/dist/esm/ion-list-header.entry.js +0 -24
  1838. package/dist/esm/ion-note.entry.js +0 -23
  1839. package/dist/esm/ion-popover.entry.js +0 -359
  1840. package/dist/esm/ion-radio_2.entry.js +0 -144
  1841. package/dist/esm/ion-select-popover.entry.js +0 -29
  1842. package/dist/esm/ion-select_2.entry.js +0 -439
  1843. package/dist/esm/ionic-global-ef89a0a5.js +0 -199
  1844. package/dist/esm/ios.transition-b1be0863.js +0 -456
  1845. package/dist/esm/md.transition-1763f475.js +0 -60
  1846. package/dist/esm/menu-toggle-util-29e61ff3.js +0 -9
  1847. package/dist/esm/overlays-06b43b65.js +0 -212
  1848. package/dist/esm/spinner-configs-5dd6891e.js +0 -110
  1849. package/dist/esm/status-tap-7458bd71.js +0 -23
  1850. package/dist/esm/swipe-back-762284df.js +0 -50
  1851. package/dist/esm/tap-click-9b3d603b.js +0 -167
  1852. package/dist/esm/theme-74c22054.js +0 -42
  1853. package/dist/ldf/p-018e57db.entry.js +0 -1
  1854. package/dist/ldf/p-03389897.js +0 -1
  1855. package/dist/ldf/p-04715bf0.entry.js +0 -1
  1856. package/dist/ldf/p-08584ccc.entry.js +0 -1
  1857. package/dist/ldf/p-0873a34a.entry.js +0 -1
  1858. package/dist/ldf/p-0ab55cf6.js +0 -1
  1859. package/dist/ldf/p-1482a707.js +0 -1
  1860. package/dist/ldf/p-1a8e2899.entry.js +0 -1
  1861. package/dist/ldf/p-1d5e9bac.entry.js +0 -1
  1862. package/dist/ldf/p-21e2f0a3.entry.js +0 -1
  1863. package/dist/ldf/p-25a736f1.entry.js +0 -1
  1864. package/dist/ldf/p-2c36a583.entry.js +0 -1
  1865. package/dist/ldf/p-302dc0d5.entry.js +0 -1
  1866. package/dist/ldf/p-31dc4ea7.entry.js +0 -1
  1867. package/dist/ldf/p-327b14ac.entry.js +0 -1
  1868. package/dist/ldf/p-32f7ba8e.entry.js +0 -1
  1869. package/dist/ldf/p-3545fcdc.entry.js +0 -1
  1870. package/dist/ldf/p-374118d7.entry.js +0 -1
  1871. package/dist/ldf/p-380f8655.entry.js +0 -1
  1872. package/dist/ldf/p-3c9930ff.entry.js +0 -1
  1873. package/dist/ldf/p-3f39c2ad.entry.js +0 -1
  1874. package/dist/ldf/p-402c811f.js +0 -1
  1875. package/dist/ldf/p-430c418a.entry.js +0 -1
  1876. package/dist/ldf/p-44c8d30b.entry.js +0 -1
  1877. package/dist/ldf/p-48e44122.js +0 -1
  1878. package/dist/ldf/p-4a4380fa.entry.js +0 -1
  1879. package/dist/ldf/p-4b80de48.js +0 -1
  1880. package/dist/ldf/p-4e0b3c0f.entry.js +0 -1
  1881. package/dist/ldf/p-52656429.entry.js +0 -1
  1882. package/dist/ldf/p-55d797c1.js +0 -1
  1883. package/dist/ldf/p-56ea465d.entry.js +0 -1
  1884. package/dist/ldf/p-59340423.entry.js +0 -1
  1885. package/dist/ldf/p-5b51185b.js +0 -1
  1886. package/dist/ldf/p-5be7ff17.entry.js +0 -1
  1887. package/dist/ldf/p-63b5daf6.entry.js +0 -1
  1888. package/dist/ldf/p-66a7385e.entry.js +0 -1
  1889. package/dist/ldf/p-6857574d.js +0 -1
  1890. package/dist/ldf/p-69f85ad3.entry.js +0 -1
  1891. package/dist/ldf/p-714cf0b2.js +0 -1
  1892. package/dist/ldf/p-718ae824.js +0 -1
  1893. package/dist/ldf/p-79a526a1.entry.js +0 -1
  1894. package/dist/ldf/p-7abeb82c.entry.js +0 -1
  1895. package/dist/ldf/p-7efa633b.entry.js +0 -1
  1896. package/dist/ldf/p-84f38db6.entry.js +0 -1
  1897. package/dist/ldf/p-8767a74e.entry.js +0 -1
  1898. package/dist/ldf/p-88dbd8b6.js +0 -1
  1899. package/dist/ldf/p-8af99fa3.entry.js +0 -1
  1900. package/dist/ldf/p-8c2727db.entry.js +0 -1
  1901. package/dist/ldf/p-978e2c6d.js +0 -1
  1902. package/dist/ldf/p-9bd5d1d4.entry.js +0 -1
  1903. package/dist/ldf/p-9c397c49.entry.js +0 -1
  1904. package/dist/ldf/p-9e255008.entry.js +0 -1
  1905. package/dist/ldf/p-9e2c172e.entry.js +0 -1
  1906. package/dist/ldf/p-ac7a17ce.entry.js +0 -1
  1907. package/dist/ldf/p-acbbd1ec.js +0 -1
  1908. package/dist/ldf/p-ada4d650.entry.js +0 -1
  1909. package/dist/ldf/p-afc1a02c.js +0 -1
  1910. package/dist/ldf/p-b1242016.js +0 -1
  1911. package/dist/ldf/p-b62e8f49.js +0 -1
  1912. package/dist/ldf/p-b78336d7.entry.js +0 -1
  1913. package/dist/ldf/p-ba021918.entry.js +0 -1
  1914. package/dist/ldf/p-c1df632d.entry.js +0 -1
  1915. package/dist/ldf/p-c3042920.entry.js +0 -1
  1916. package/dist/ldf/p-c3841978.entry.js +0 -1
  1917. package/dist/ldf/p-c41e055c.entry.js +0 -1
  1918. package/dist/ldf/p-c6a8f4aa.js +0 -1
  1919. package/dist/ldf/p-c6b42618.entry.js +0 -1
  1920. package/dist/ldf/p-c74d3fd0.entry.js +0 -1
  1921. package/dist/ldf/p-c82dd468.entry.js +0 -1
  1922. package/dist/ldf/p-ca698b8f.entry.js +0 -1
  1923. package/dist/ldf/p-cbfbb80c.entry.js +0 -1
  1924. package/dist/ldf/p-d282d4f9.js +0 -1
  1925. package/dist/ldf/p-d7966e9b.entry.js +0 -1
  1926. package/dist/ldf/p-d7f8c770.js +0 -1
  1927. package/dist/ldf/p-d9c1c1f6.js +0 -1
  1928. package/dist/ldf/p-dd99e42a.entry.js +0 -1
  1929. package/dist/ldf/p-de5bb5ad.js +0 -1
  1930. package/dist/ldf/p-e0e12ae3.entry.js +0 -1
  1931. package/dist/ldf/p-e215fd02.entry.js +0 -1
  1932. package/dist/ldf/p-e4be11ad.entry.js +0 -1
  1933. package/dist/ldf/p-ebd887c2.entry.js +0 -1
  1934. package/dist/ldf/p-ec5eecdc.entry.js +0 -1
  1935. package/dist/ldf/p-ed3327fa.js +0 -1
  1936. package/dist/ldf/p-f2ce126e.js +0 -1
  1937. package/dist/ldf/p-f3a0c163.js +0 -1
  1938. package/dist/ldf/p-fa135d5f.entry.js +0 -1
  1939. package/dist/ldf/p-fddee761.entry.js +0 -1
  1940. package/dist/ldf/p-fe59a676.entry.js +0 -1
@@ -0,0 +1,3040 @@
1
+ import { w as writeTask, r as registerInstance, c as createEvent, e as readTask, h, H as Host, d as getElement, f as forceUpdate } from './index-034add74.js';
2
+ import { g as getIonMode, a as isPlatform } from './ionic-global-24253941.js';
3
+ import { c as hapticSelectionEnd, a as hapticSelectionStart, b as hapticSelectionChanged } from './haptic-522f76f2.js';
4
+ import { createGesture } from './index-21661af2.js';
5
+ import { B as BACKDROP, i as isCancel, b as present, a as prepareOverlay, d as dismiss, e as eventMethod, s as safeCall, h as focusFirstDescendant, p as popoverController, j as actionSheetController, f as alertController } from './overlays-59377e10.js';
6
+ import { g as getClassMap, c as createColorClasses, h as hostContext } from './theme-7ef00c83.js';
7
+ import { c as createAnimation } from './animation-fa1c28fc.js';
8
+ import { s as sanitizeDOMString } from './index-be6112f8.js';
9
+ import { m as getAriaLabel, n as renderHiddenInput, r as raf, g as getElementRoot, b as addEventListener, e as removeEventListener, f as focusElement, p as findItemLabel } from './helpers-af86adf0.js';
10
+ import { C as CoreDelegate, a as attachComponent, d as detachComponent } from './framework-delegate-d512b396.js';
11
+ import { d as deepReady } from './index-faad3da4.js';
12
+ import './gesture-controller-7be18351.js';
13
+ import './hardware-back-button-fa04d6e9.js';
14
+
15
+ /*!
16
+ * (C) Ionic http://ionicframework.com - MIT License
17
+ */
18
+ const createButtonActiveGesture = (el, isButton) => {
19
+ let currentTouchedButton;
20
+ let initialTouchedButton;
21
+ const activateButtonAtPoint = (x, y, hapticFeedbackFn) => {
22
+ if (typeof document === 'undefined') {
23
+ return;
24
+ }
25
+ const target = document.elementFromPoint(x, y);
26
+ if (!target || !isButton(target)) {
27
+ clearActiveButton();
28
+ return;
29
+ }
30
+ if (target !== currentTouchedButton) {
31
+ clearActiveButton();
32
+ setActiveButton(target, hapticFeedbackFn);
33
+ }
34
+ };
35
+ const setActiveButton = (button, hapticFeedbackFn) => {
36
+ currentTouchedButton = button;
37
+ if (!initialTouchedButton) {
38
+ initialTouchedButton = currentTouchedButton;
39
+ }
40
+ const buttonToModify = currentTouchedButton;
41
+ writeTask(() => buttonToModify.classList.add('ion-activated'));
42
+ hapticFeedbackFn();
43
+ };
44
+ const clearActiveButton = (dispatchClick = false) => {
45
+ if (!currentTouchedButton) {
46
+ return;
47
+ }
48
+ const buttonToModify = currentTouchedButton;
49
+ writeTask(() => buttonToModify.classList.remove('ion-activated'));
50
+ /**
51
+ * Clicking on one button, but releasing on another button
52
+ * does not dispatch a click event in browsers, so we
53
+ * need to do it manually here. Some browsers will
54
+ * dispatch a click if clicking on one button, dragging over
55
+ * another button, and releasing on the original button. In that
56
+ * case, we need to make sure we do not cause a double click there.
57
+ */
58
+ if (dispatchClick && initialTouchedButton !== currentTouchedButton) {
59
+ currentTouchedButton.click();
60
+ }
61
+ currentTouchedButton = undefined;
62
+ };
63
+ return createGesture({
64
+ el,
65
+ gestureName: 'buttonActiveDrag',
66
+ threshold: 0,
67
+ onStart: (ev) => activateButtonAtPoint(ev.currentX, ev.currentY, hapticSelectionStart),
68
+ onMove: (ev) => activateButtonAtPoint(ev.currentX, ev.currentY, hapticSelectionChanged),
69
+ onEnd: () => {
70
+ clearActiveButton(true);
71
+ hapticSelectionEnd();
72
+ initialTouchedButton = undefined;
73
+ },
74
+ });
75
+ };
76
+
77
+ /*!
78
+ * (C) Ionic http://ionicframework.com - MIT License
79
+ */
80
+ /**
81
+ * iOS Action Sheet Enter Animation
82
+ */
83
+ const iosEnterAnimation$2 = (baseEl) => {
84
+ const baseAnimation = createAnimation();
85
+ const backdropAnimation = createAnimation();
86
+ const wrapperAnimation = createAnimation();
87
+ backdropAnimation
88
+ .addElement(baseEl.querySelector('ion-backdrop'))
89
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
90
+ .beforeStyles({
91
+ 'pointer-events': 'none',
92
+ })
93
+ .afterClearStyles(['pointer-events']);
94
+ wrapperAnimation
95
+ .addElement(baseEl.querySelector('.action-sheet-wrapper'))
96
+ .fromTo('transform', 'translateY(100%)', 'translateY(0%)');
97
+ return baseAnimation
98
+ .addElement(baseEl)
99
+ .easing('cubic-bezier(.36,.66,.04,1)')
100
+ .duration(400)
101
+ .addAnimation([backdropAnimation, wrapperAnimation]);
102
+ };
103
+
104
+ /*!
105
+ * (C) Ionic http://ionicframework.com - MIT License
106
+ */
107
+ /**
108
+ * iOS Action Sheet Leave Animation
109
+ */
110
+ const iosLeaveAnimation$2 = (baseEl) => {
111
+ const baseAnimation = createAnimation();
112
+ const backdropAnimation = createAnimation();
113
+ const wrapperAnimation = createAnimation();
114
+ backdropAnimation.addElement(baseEl.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
115
+ wrapperAnimation
116
+ .addElement(baseEl.querySelector('.action-sheet-wrapper'))
117
+ .fromTo('transform', 'translateY(0%)', 'translateY(100%)');
118
+ return baseAnimation
119
+ .addElement(baseEl)
120
+ .easing('cubic-bezier(.36,.66,.04,1)')
121
+ .duration(450)
122
+ .addAnimation([backdropAnimation, wrapperAnimation]);
123
+ };
124
+
125
+ /*!
126
+ * (C) Ionic http://ionicframework.com - MIT License
127
+ */
128
+ /**
129
+ * MD Action Sheet Enter Animation
130
+ */
131
+ const mdEnterAnimation$2 = (baseEl) => {
132
+ const baseAnimation = createAnimation();
133
+ const backdropAnimation = createAnimation();
134
+ const wrapperAnimation = createAnimation();
135
+ backdropAnimation
136
+ .addElement(baseEl.querySelector('ion-backdrop'))
137
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
138
+ .beforeStyles({
139
+ 'pointer-events': 'none',
140
+ })
141
+ .afterClearStyles(['pointer-events']);
142
+ wrapperAnimation
143
+ .addElement(baseEl.querySelector('.action-sheet-wrapper'))
144
+ .fromTo('transform', 'translateY(100%)', 'translateY(0%)');
145
+ return baseAnimation
146
+ .addElement(baseEl)
147
+ .easing('cubic-bezier(.36,.66,.04,1)')
148
+ .duration(400)
149
+ .addAnimation([backdropAnimation, wrapperAnimation]);
150
+ };
151
+
152
+ /*!
153
+ * (C) Ionic http://ionicframework.com - MIT License
154
+ */
155
+ /**
156
+ * MD Action Sheet Leave Animation
157
+ */
158
+ const mdLeaveAnimation$2 = (baseEl) => {
159
+ const baseAnimation = createAnimation();
160
+ const backdropAnimation = createAnimation();
161
+ const wrapperAnimation = createAnimation();
162
+ backdropAnimation.addElement(baseEl.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
163
+ wrapperAnimation
164
+ .addElement(baseEl.querySelector('.action-sheet-wrapper'))
165
+ .fromTo('transform', 'translateY(0%)', 'translateY(100%)');
166
+ return baseAnimation
167
+ .addElement(baseEl)
168
+ .easing('cubic-bezier(.36,.66,.04,1)')
169
+ .duration(450)
170
+ .addAnimation([backdropAnimation, wrapperAnimation]);
171
+ };
172
+
173
+ const actionSheetIosCss = ".sc-ion-action-sheet-ios-h{--color:initial;--button-color-activated:var(--button-color);--button-color-focused:var(--button-color);--button-color-hover:var(--button-color);--button-color-selected:var(--button-color);--min-width:auto;--width:100%;--max-width:500px;--min-height:auto;--height:100%;--max-height:calc(100% - (var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:block;position:fixed;outline:none;font-family:var(--ion-font-family, inherit);touch-action:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-action-sheet-ios-h{display:none}.action-sheet-wrapper.sc-ion-action-sheet-ios{left:0;right:0;bottom:0;transform:translate3d(0, 100%, 0);display:block;position:absolute;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);z-index:10;pointer-events:none}.action-sheet-button.sc-ion-action-sheet-ios{display:block;position:relative;width:100%;border:0;outline:none;background:var(--button-background);color:var(--button-color);font-family:inherit;overflow:hidden}.action-sheet-button-inner.sc-ion-action-sheet-ios{display:flex;position:relative;flex-flow:row nowrap;flex-shrink:0;align-items:center;justify-content:center;pointer-events:none;width:100%;height:100%;z-index:1}.action-sheet-container.sc-ion-action-sheet-ios{display:flex;flex-flow:column;justify-content:flex-end;height:100%;max-height:100%}.action-sheet-group.sc-ion-action-sheet-ios{flex-shrink:2;overscroll-behavior-y:contain;overflow-y:auto;-webkit-overflow-scrolling:touch;pointer-events:all;background:var(--background)}.action-sheet-group.sc-ion-action-sheet-ios::-webkit-scrollbar{display:none}.action-sheet-group-cancel.sc-ion-action-sheet-ios{flex-shrink:0;overflow:hidden}.action-sheet-button.sc-ion-action-sheet-ios::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}.action-sheet-selected.sc-ion-action-sheet-ios{color:var(--button-color-selected)}.action-sheet-selected.sc-ion-action-sheet-ios::after{background:var(--button-background-selected);opacity:var(--button-background-selected-opacity)}.action-sheet-button.ion-activated.sc-ion-action-sheet-ios{color:var(--button-color-activated)}.action-sheet-button.ion-activated.sc-ion-action-sheet-ios::after{background:var(--button-background-activated);opacity:var(--button-background-activated-opacity)}.action-sheet-button.ion-focused.sc-ion-action-sheet-ios{color:var(--button-color-focused)}.action-sheet-button.ion-focused.sc-ion-action-sheet-ios::after{background:var(--button-background-focused);opacity:var(--button-background-focused-opacity)}@media (any-hover: hover){.action-sheet-button.sc-ion-action-sheet-ios:hover{color:var(--button-color-hover)}.action-sheet-button.sc-ion-action-sheet-ios:hover::after{background:var(--button-background-hover);opacity:var(--button-background-hover-opacity)}}.sc-ion-action-sheet-ios-h{--background:var(--ion-overlay-background-color, var(--ion-color-step-100, #f9f9f9));--backdrop-opacity:var(--ion-backdrop-opacity, 0.4);--button-background:linear-gradient(0deg, rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.08), rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.08) 50%, transparent 50%) bottom/100% 1px no-repeat transparent;--button-background-activated:var(--ion-text-color, #000);--button-background-activated-opacity:.08;--button-background-hover:currentColor;--button-background-hover-opacity:.04;--button-background-focused:currentColor;--button-background-focused-opacity:.12;--button-background-selected:var(--ion-color-step-150, var(--ion-background-color, #fff));--button-background-selected-opacity:1;--button-color:var(--ion-color-primary, #3880ff);--color:var(--ion-color-step-400, #999999);text-align:center}.action-sheet-wrapper.sc-ion-action-sheet-ios{margin-left:auto;margin-right:auto;margin-top:var(--ion-safe-area-top, 0);margin-bottom:var(--ion-safe-area-bottom, 0)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-wrapper.sc-ion-action-sheet-ios{margin-left:unset;margin-right:unset;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}}.action-sheet-container.sc-ion-action-sheet-ios{padding-left:8px;padding-right:8px;padding-top:0;padding-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-container.sc-ion-action-sheet-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px}}.action-sheet-group.sc-ion-action-sheet-ios{border-radius:13px;margin-bottom:8px}.action-sheet-group.sc-ion-action-sheet-ios:first-child{margin-top:10px}.action-sheet-group.sc-ion-action-sheet-ios:last-child{margin-bottom:10px}@supports (backdrop-filter: blur(0)){.action-sheet-translucent.sc-ion-action-sheet-ios-h .action-sheet-group.sc-ion-action-sheet-ios{background-color:transparent;backdrop-filter:saturate(280%) blur(20px)}.action-sheet-translucent.sc-ion-action-sheet-ios-h .action-sheet-title.sc-ion-action-sheet-ios,.action-sheet-translucent.sc-ion-action-sheet-ios-h .action-sheet-button.sc-ion-action-sheet-ios{background-color:transparent;background-image:linear-gradient(0deg, rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8), rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8) 100%), linear-gradient(0deg, rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.4), rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.4) 50%, rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8) 50%);background-repeat:no-repeat;background-position:top, bottom;background-size:100% calc(100% - 1px), 100% 1px;backdrop-filter:saturate(120%)}.action-sheet-translucent.sc-ion-action-sheet-ios-h .action-sheet-button.ion-activated.sc-ion-action-sheet-ios{background-color:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.7);background-image:none}.action-sheet-translucent.sc-ion-action-sheet-ios-h .action-sheet-cancel.sc-ion-action-sheet-ios{background:var(--button-background-selected)}}.action-sheet-title.sc-ion-action-sheet-ios{background:linear-gradient(0deg, rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.08), rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.08) 50%, transparent 50%) bottom/100% 1px no-repeat transparent}.action-sheet-title.sc-ion-action-sheet-ios{padding-left:10px;padding-right:10px;padding-top:14px;padding-bottom:13px;color:var(--color, var(--ion-color-step-400, #999999));font-size:13px;font-weight:400;text-align:center}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-title.sc-ion-action-sheet-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}}.action-sheet-title.action-sheet-has-sub-title.sc-ion-action-sheet-ios{font-weight:600}.action-sheet-sub-title.sc-ion-action-sheet-ios{padding-left:0;padding-right:0;padding-top:6px;padding-bottom:0;font-size:13px;font-weight:400}.action-sheet-button.sc-ion-action-sheet-ios{padding-left:18px;padding-right:18px;padding-top:18px;padding-bottom:18px;height:56px;font-size:20px;contain:strict}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-button.sc-ion-action-sheet-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:18px;padding-inline-start:18px;-webkit-padding-end:18px;padding-inline-end:18px}}.action-sheet-button.sc-ion-action-sheet-ios .action-sheet-icon.sc-ion-action-sheet-ios{margin-right:0.3em;font-size:28px;pointer-events:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-button.sc-ion-action-sheet-ios .action-sheet-icon.sc-ion-action-sheet-ios{margin-right:unset;-webkit-margin-end:0.3em;margin-inline-end:0.3em}}.action-sheet-button.sc-ion-action-sheet-ios:last-child{background-image:none}.action-sheet-selected.sc-ion-action-sheet-ios{font-weight:bold}.action-sheet-cancel.sc-ion-action-sheet-ios{font-weight:600}.action-sheet-cancel.sc-ion-action-sheet-ios::after{background:var(--button-background-selected);opacity:var(--button-background-selected-opacity)}.action-sheet-destructive.sc-ion-action-sheet-ios,.action-sheet-destructive.ion-activated.sc-ion-action-sheet-ios,.action-sheet-destructive.ion-focused.sc-ion-action-sheet-ios{color:var(--ion-color-danger, #eb445a)}@media (any-hover: hover){.action-sheet-destructive.sc-ion-action-sheet-ios:hover{color:var(--ion-color-danger, #eb445a)}}";
174
+
175
+ const actionSheetMdCss = ".sc-ion-action-sheet-md-h{--color:initial;--button-color-activated:var(--button-color);--button-color-focused:var(--button-color);--button-color-hover:var(--button-color);--button-color-selected:var(--button-color);--min-width:auto;--width:100%;--max-width:500px;--min-height:auto;--height:100%;--max-height:calc(100% - (var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:block;position:fixed;outline:none;font-family:var(--ion-font-family, inherit);touch-action:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-action-sheet-md-h{display:none}.action-sheet-wrapper.sc-ion-action-sheet-md{left:0;right:0;bottom:0;transform:translate3d(0, 100%, 0);display:block;position:absolute;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);z-index:10;pointer-events:none}.action-sheet-button.sc-ion-action-sheet-md{display:block;position:relative;width:100%;border:0;outline:none;background:var(--button-background);color:var(--button-color);font-family:inherit;overflow:hidden}.action-sheet-button-inner.sc-ion-action-sheet-md{display:flex;position:relative;flex-flow:row nowrap;flex-shrink:0;align-items:center;justify-content:center;pointer-events:none;width:100%;height:100%;z-index:1}.action-sheet-container.sc-ion-action-sheet-md{display:flex;flex-flow:column;justify-content:flex-end;height:100%;max-height:100%}.action-sheet-group.sc-ion-action-sheet-md{flex-shrink:2;overscroll-behavior-y:contain;overflow-y:auto;-webkit-overflow-scrolling:touch;pointer-events:all;background:var(--background)}.action-sheet-group.sc-ion-action-sheet-md::-webkit-scrollbar{display:none}.action-sheet-group-cancel.sc-ion-action-sheet-md{flex-shrink:0;overflow:hidden}.action-sheet-button.sc-ion-action-sheet-md::after{left:0;right:0;top:0;bottom:0;position:absolute;content:\"\";opacity:0}.action-sheet-selected.sc-ion-action-sheet-md{color:var(--button-color-selected)}.action-sheet-selected.sc-ion-action-sheet-md::after{background:var(--button-background-selected);opacity:var(--button-background-selected-opacity)}.action-sheet-button.ion-activated.sc-ion-action-sheet-md{color:var(--button-color-activated)}.action-sheet-button.ion-activated.sc-ion-action-sheet-md::after{background:var(--button-background-activated);opacity:var(--button-background-activated-opacity)}.action-sheet-button.ion-focused.sc-ion-action-sheet-md{color:var(--button-color-focused)}.action-sheet-button.ion-focused.sc-ion-action-sheet-md::after{background:var(--button-background-focused);opacity:var(--button-background-focused-opacity)}@media (any-hover: hover){.action-sheet-button.sc-ion-action-sheet-md:hover{color:var(--button-color-hover)}.action-sheet-button.sc-ion-action-sheet-md:hover::after{background:var(--button-background-hover);opacity:var(--button-background-hover-opacity)}}.sc-ion-action-sheet-md-h{--background:var(--ion-overlay-background-color, var(--ion-background-color, #fff));--backdrop-opacity:var(--ion-backdrop-opacity, 0.32);--button-background:transparent;--button-background-selected:currentColor;--button-background-selected-opacity:0;--button-background-activated:transparent;--button-background-activated-opacity:0;--button-background-hover:currentColor;--button-background-hover-opacity:.04;--button-background-focused:currentColor;--button-background-focused-opacity:.12;--button-color:var(--ion-color-step-850, #262626);--color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.54)}.action-sheet-wrapper.sc-ion-action-sheet-md{margin-left:auto;margin-right:auto;margin-top:var(--ion-safe-area-top, 0);margin-bottom:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-wrapper.sc-ion-action-sheet-md{margin-left:unset;margin-right:unset;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}}.action-sheet-title.sc-ion-action-sheet-md{padding-left:16px;padding-right:16px;padding-top:20px;padding-bottom:17px;min-height:60px;color:var(--color, rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.54));font-size:16px;text-align:start}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-title.sc-ion-action-sheet-md{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}.action-sheet-sub-title.sc-ion-action-sheet-md{padding-left:0;padding-right:0;padding-top:16px;padding-bottom:0;font-size:14px}.action-sheet-group.sc-ion-action-sheet-md:first-child{padding-top:0}.action-sheet-group.sc-ion-action-sheet-md:last-child{padding-bottom:var(--ion-safe-area-bottom)}.action-sheet-button.sc-ion-action-sheet-md{padding-left:16px;padding-right:16px;padding-top:0;padding-bottom:0;position:relative;height:52px;font-size:16px;text-align:start;contain:strict;overflow:hidden}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-button.sc-ion-action-sheet-md{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}.action-sheet-icon.sc-ion-action-sheet-md{padding-bottom:4px;margin-left:0;margin-right:32px;margin-top:0;margin-bottom:0;color:var(--color);font-size:24px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.action-sheet-icon.sc-ion-action-sheet-md{margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:32px;margin-inline-end:32px}}.action-sheet-button-inner.sc-ion-action-sheet-md{justify-content:flex-start}.action-sheet-selected.sc-ion-action-sheet-md{font-weight:bold}";
176
+
177
+ const ActionSheet = class {
178
+ constructor(hostRef) {
179
+ registerInstance(this, hostRef);
180
+ this.didPresent = createEvent(this, "ionActionSheetDidPresent", 7);
181
+ this.willPresent = createEvent(this, "ionActionSheetWillPresent", 7);
182
+ this.willDismiss = createEvent(this, "ionActionSheetWillDismiss", 7);
183
+ this.didDismiss = createEvent(this, "ionActionSheetDidDismiss", 7);
184
+ this.presented = false;
185
+ /**
186
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
187
+ */
188
+ this.keyboardClose = true;
189
+ /**
190
+ * An array of buttons for the action sheet.
191
+ */
192
+ this.buttons = [];
193
+ /**
194
+ * If `true`, the action sheet will be dismissed when the backdrop is clicked.
195
+ */
196
+ this.backdropDismiss = true;
197
+ /**
198
+ * If `true`, the action sheet will be translucent.
199
+ * Only applies when the mode is `"ios"` and the device supports
200
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
201
+ */
202
+ this.translucent = false;
203
+ /**
204
+ * If `true`, the action sheet will animate.
205
+ */
206
+ this.animated = true;
207
+ this.onBackdropTap = () => {
208
+ this.dismiss(undefined, BACKDROP);
209
+ };
210
+ this.dispatchCancelHandler = (ev) => {
211
+ const role = ev.detail.role;
212
+ if (isCancel(role)) {
213
+ const cancelButton = this.getButtons().find((b) => b.role === 'cancel');
214
+ this.callButtonHandler(cancelButton);
215
+ }
216
+ };
217
+ }
218
+ /**
219
+ * Present the action sheet overlay after it has been created.
220
+ */
221
+ present() {
222
+ return present(this, 'actionSheetEnter', iosEnterAnimation$2, mdEnterAnimation$2);
223
+ }
224
+ connectedCallback() {
225
+ prepareOverlay(this.el);
226
+ }
227
+ /**
228
+ * Dismiss the action sheet overlay after it has been presented.
229
+ *
230
+ * @param data Any data to emit in the dismiss events.
231
+ * @param role The role of the element that is dismissing the action sheet.
232
+ * This can be useful in a button handler for determining which button was
233
+ * clicked to dismiss the action sheet.
234
+ * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
235
+ */
236
+ dismiss(data, role) {
237
+ return dismiss(this, data, role, 'actionSheetLeave', iosLeaveAnimation$2, mdLeaveAnimation$2);
238
+ }
239
+ /**
240
+ * Returns a promise that resolves when the action sheet did dismiss.
241
+ */
242
+ onDidDismiss() {
243
+ return eventMethod(this.el, 'ionActionSheetDidDismiss');
244
+ }
245
+ /**
246
+ * Returns a promise that resolves when the action sheet will dismiss.
247
+ *
248
+ */
249
+ onWillDismiss() {
250
+ return eventMethod(this.el, 'ionActionSheetWillDismiss');
251
+ }
252
+ async buttonClick(button) {
253
+ const role = button.role;
254
+ if (isCancel(role)) {
255
+ return this.dismiss(button.data, role);
256
+ }
257
+ const shouldDismiss = await this.callButtonHandler(button);
258
+ if (shouldDismiss) {
259
+ return this.dismiss(button.data, button.role);
260
+ }
261
+ return Promise.resolve();
262
+ }
263
+ async callButtonHandler(button) {
264
+ if (button) {
265
+ // a handler has been provided, execute it
266
+ // pass the handler the values from the inputs
267
+ const rtn = await safeCall(button.handler);
268
+ if (rtn === false) {
269
+ // if the return value of the handler is false then do not dismiss
270
+ return false;
271
+ }
272
+ }
273
+ return true;
274
+ }
275
+ getButtons() {
276
+ return this.buttons.map((b) => {
277
+ return typeof b === 'string' ? { text: b } : b;
278
+ });
279
+ }
280
+ disconnectedCallback() {
281
+ if (this.gesture) {
282
+ this.gesture.destroy();
283
+ this.gesture = undefined;
284
+ }
285
+ }
286
+ componentDidLoad() {
287
+ /**
288
+ * Do not create gesture if:
289
+ * 1. A gesture already exists
290
+ * 2. App is running in MD mode
291
+ * 3. A wrapper ref does not exist
292
+ */
293
+ const { groupEl, wrapperEl } = this;
294
+ if (this.gesture || getIonMode(this) === 'md' || !wrapperEl || !groupEl) {
295
+ return;
296
+ }
297
+ readTask(() => {
298
+ const isScrollable = groupEl.scrollHeight > groupEl.clientHeight;
299
+ if (!isScrollable) {
300
+ this.gesture = createButtonActiveGesture(wrapperEl, (refEl) => refEl.classList.contains('action-sheet-button'));
301
+ this.gesture.enable(true);
302
+ }
303
+ });
304
+ }
305
+ render() {
306
+ const { header, htmlAttributes, overlayIndex } = this;
307
+ const mode = getIonMode(this);
308
+ const allButtons = this.getButtons();
309
+ const cancelButton = allButtons.find((b) => b.role === 'cancel');
310
+ const buttons = allButtons.filter((b) => b.role !== 'cancel');
311
+ const headerID = `action-sheet-${overlayIndex}-header`;
312
+ return (h(Host, Object.assign({ role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1" }, htmlAttributes, { style: {
313
+ zIndex: `${20000 + this.overlayIndex}`,
314
+ }, class: Object.assign(Object.assign({ [mode]: true }, getClassMap(this.cssClass)), { 'overlay-hidden': true, 'action-sheet-translucent': this.translucent }), onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), h("ion-backdrop", { tappable: this.backdropDismiss }), h("div", { tabindex: "0" }), h("div", { class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, h("div", { class: "action-sheet-container" }, h("div", { class: "action-sheet-group", ref: (el) => (this.groupEl = el) }, header !== undefined && (h("div", { id: headerID, class: {
315
+ 'action-sheet-title': true,
316
+ 'action-sheet-has-sub-title': this.subHeader !== undefined,
317
+ } }, header, this.subHeader && h("div", { class: "action-sheet-sub-title" }, this.subHeader))), buttons.map((b) => (h("button", { type: "button", id: b.id, class: buttonClass$1(b), onClick: () => this.buttonClick(b) }, h("span", { class: "action-sheet-button-inner" }, b.icon && h("ion-icon", { icon: b.icon, lazy: false, class: "action-sheet-icon" }), b.text), mode === 'md' && h("ion-ripple-effect", null))))), cancelButton && (h("div", { class: "action-sheet-group action-sheet-group-cancel" }, h("button", { type: "button", class: buttonClass$1(cancelButton), onClick: () => this.buttonClick(cancelButton) }, h("span", { class: "action-sheet-button-inner" }, cancelButton.icon && h("ion-icon", { icon: cancelButton.icon, lazy: false, class: "action-sheet-icon" }), cancelButton.text), mode === 'md' && h("ion-ripple-effect", null)))))), h("div", { tabindex: "0" })));
318
+ }
319
+ get el() { return getElement(this); }
320
+ };
321
+ const buttonClass$1 = (button) => {
322
+ return Object.assign({ 'action-sheet-button': true, 'ion-activatable': true, 'ion-focusable': true, [`action-sheet-${button.role}`]: button.role !== undefined }, getClassMap(button.cssClass));
323
+ };
324
+ ActionSheet.style = {
325
+ ios: actionSheetIosCss,
326
+ md: actionSheetMdCss
327
+ };
328
+
329
+ /*!
330
+ * (C) Ionic http://ionicframework.com - MIT License
331
+ */
332
+ /**
333
+ * iOS Alert Enter Animation
334
+ */
335
+ const iosEnterAnimation$1 = (baseEl) => {
336
+ const baseAnimation = createAnimation();
337
+ const backdropAnimation = createAnimation();
338
+ const wrapperAnimation = createAnimation();
339
+ backdropAnimation
340
+ .addElement(baseEl.querySelector('ion-backdrop'))
341
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
342
+ .beforeStyles({
343
+ 'pointer-events': 'none',
344
+ })
345
+ .afterClearStyles(['pointer-events']);
346
+ wrapperAnimation.addElement(baseEl.querySelector('.alert-wrapper')).keyframes([
347
+ { offset: 0, opacity: '0.01', transform: 'scale(1.1)' },
348
+ { offset: 1, opacity: '1', transform: 'scale(1)' },
349
+ ]);
350
+ return baseAnimation
351
+ .addElement(baseEl)
352
+ .easing('ease-in-out')
353
+ .duration(200)
354
+ .addAnimation([backdropAnimation, wrapperAnimation]);
355
+ };
356
+
357
+ /*!
358
+ * (C) Ionic http://ionicframework.com - MIT License
359
+ */
360
+ /**
361
+ * iOS Alert Leave Animation
362
+ */
363
+ const iosLeaveAnimation$1 = (baseEl) => {
364
+ const baseAnimation = createAnimation();
365
+ const backdropAnimation = createAnimation();
366
+ const wrapperAnimation = createAnimation();
367
+ backdropAnimation.addElement(baseEl.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
368
+ wrapperAnimation.addElement(baseEl.querySelector('.alert-wrapper')).keyframes([
369
+ { offset: 0, opacity: 0.99, transform: 'scale(1)' },
370
+ { offset: 1, opacity: 0, transform: 'scale(0.9)' },
371
+ ]);
372
+ return baseAnimation
373
+ .addElement(baseEl)
374
+ .easing('ease-in-out')
375
+ .duration(200)
376
+ .addAnimation([backdropAnimation, wrapperAnimation]);
377
+ };
378
+
379
+ /*!
380
+ * (C) Ionic http://ionicframework.com - MIT License
381
+ */
382
+ /**
383
+ * Md Alert Enter Animation
384
+ */
385
+ const mdEnterAnimation$1 = (baseEl) => {
386
+ const baseAnimation = createAnimation();
387
+ const backdropAnimation = createAnimation();
388
+ const wrapperAnimation = createAnimation();
389
+ backdropAnimation
390
+ .addElement(baseEl.querySelector('ion-backdrop'))
391
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
392
+ .beforeStyles({
393
+ 'pointer-events': 'none',
394
+ })
395
+ .afterClearStyles(['pointer-events']);
396
+ wrapperAnimation.addElement(baseEl.querySelector('.alert-wrapper')).keyframes([
397
+ { offset: 0, opacity: '0.01', transform: 'scale(0.9)' },
398
+ { offset: 1, opacity: '1', transform: 'scale(1)' },
399
+ ]);
400
+ return baseAnimation
401
+ .addElement(baseEl)
402
+ .easing('ease-in-out')
403
+ .duration(150)
404
+ .addAnimation([backdropAnimation, wrapperAnimation]);
405
+ };
406
+
407
+ /*!
408
+ * (C) Ionic http://ionicframework.com - MIT License
409
+ */
410
+ /**
411
+ * Md Alert Leave Animation
412
+ */
413
+ const mdLeaveAnimation$1 = (baseEl) => {
414
+ const baseAnimation = createAnimation();
415
+ const backdropAnimation = createAnimation();
416
+ const wrapperAnimation = createAnimation();
417
+ backdropAnimation.addElement(baseEl.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
418
+ wrapperAnimation.addElement(baseEl.querySelector('.alert-wrapper')).fromTo('opacity', 0.99, 0);
419
+ return baseAnimation
420
+ .addElement(baseEl)
421
+ .easing('ease-in-out')
422
+ .duration(150)
423
+ .addAnimation([backdropAnimation, wrapperAnimation]);
424
+ };
425
+
426
+ const alertIosCss = ".sc-ion-alert-ios-h{--min-width:250px;--width:auto;--min-height:auto;--height:auto;--max-height:90%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:flex;position:absolute;align-items:center;justify-content:center;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;touch-action:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-alert-ios-h{display:none}.alert-top.sc-ion-alert-ios-h{padding-top:50px;align-items:flex-start}.alert-wrapper.sc-ion-alert-ios{display:flex;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);contain:content;opacity:0;z-index:10}.alert-title.sc-ion-alert-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}.alert-sub-title.sc-ion-alert-ios{margin-left:0;margin-right:0;margin-top:5px;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;font-weight:normal}.alert-message.sc-ion-alert-ios{box-sizing:border-box;-webkit-overflow-scrolling:touch;overflow-y:auto;overscroll-behavior-y:contain}.alert-checkbox-group.sc-ion-alert-ios::-webkit-scrollbar,.alert-radio-group.sc-ion-alert-ios::-webkit-scrollbar,.alert-message.sc-ion-alert-ios::-webkit-scrollbar{display:none}.alert-input.sc-ion-alert-ios{padding-left:0;padding-right:0;padding-top:10px;padding-bottom:10px;width:100%;border:0;background:inherit;font:inherit;box-sizing:border-box}.alert-button-group.sc-ion-alert-ios{display:flex;flex-direction:row;width:100%}.alert-button-group-vertical.sc-ion-alert-ios{flex-direction:column;flex-wrap:nowrap}.alert-button.sc-ion-alert-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;border:0;font-size:14px;line-height:20px;z-index:0}.alert-button.ion-focused.sc-ion-alert-ios,.alert-tappable.ion-focused.sc-ion-alert-ios{background:var(--ion-color-step-100, #e6e6e6)}.alert-button-inner.sc-ion-alert-ios{display:flex;flex-flow:row nowrap;flex-shrink:0;align-items:center;justify-content:center;width:100%;height:100%}.alert-input-disabled.sc-ion-alert-ios,.alert-checkbox-button-disabled.sc-ion-alert-ios .alert-button-inner.sc-ion-alert-ios,.alert-radio-button-disabled.sc-ion-alert-ios .alert-button-inner.sc-ion-alert-ios{cursor:default;opacity:0.5;pointer-events:none}.alert-tappable.sc-ion-alert-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:flex;width:100%;border:0;background:transparent;font-size:inherit;line-height:initial;text-align:start;appearance:none;contain:strict}.alert-button.sc-ion-alert-ios,.alert-checkbox.sc-ion-alert-ios,.alert-input.sc-ion-alert-ios,.alert-radio.sc-ion-alert-ios{outline:none}.alert-radio-icon.sc-ion-alert-ios,.alert-checkbox-icon.sc-ion-alert-ios,.alert-checkbox-inner.sc-ion-alert-ios{box-sizing:border-box}textarea.alert-input.sc-ion-alert-ios{min-height:37px;resize:none}.sc-ion-alert-ios-h{--background:var(--ion-overlay-background-color, var(--ion-color-step-100, #f9f9f9));--max-width:270px;--backdrop-opacity:var(--ion-backdrop-opacity, 0.3);font-size:14px}.alert-wrapper.sc-ion-alert-ios{border-radius:13px;box-shadow:none;overflow:hidden}.alert-button.sc-ion-alert-ios .alert-button-inner.sc-ion-alert-ios{pointer-events:none}@supports (backdrop-filter: blur(0)){.alert-translucent.sc-ion-alert-ios-h .alert-wrapper.sc-ion-alert-ios{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.9);backdrop-filter:saturate(180%) blur(20px)}}.alert-head.sc-ion-alert-ios{padding-left:16px;padding-right:16px;padding-top:12px;padding-bottom:7px;text-align:center}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-head.sc-ion-alert-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}.alert-title.sc-ion-alert-ios{margin-top:8px;color:var(--ion-text-color, #000);font-size:17px;font-weight:600}.alert-sub-title.sc-ion-alert-ios{color:var(--ion-color-step-600, #666666);font-size:14px}.alert-message.sc-ion-alert-ios,.alert-input-group.sc-ion-alert-ios{padding-left:16px;padding-right:16px;padding-top:0;padding-bottom:21px;color:var(--ion-text-color, #000);font-size:13px;text-align:center}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-message.sc-ion-alert-ios,.alert-input-group.sc-ion-alert-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px}}.alert-message.sc-ion-alert-ios{max-height:240px}.alert-message.sc-ion-alert-ios:empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:12px}.alert-input.sc-ion-alert-ios{border-radius:4px;margin-top:10px;padding-left:6px;padding-right:6px;padding-top:6px;padding-bottom:6px;border:0.55px solid var(--ion-color-step-250, #bfbfbf);background-color:var(--ion-background-color, #fff);appearance:none}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-input.sc-ion-alert-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:6px;padding-inline-start:6px;-webkit-padding-end:6px;padding-inline-end:6px}}.alert-input.sc-ion-alert-ios::placeholder{color:var(--ion-placeholder-color, var(--ion-color-step-400, #999999));font-family:inherit;font-weight:inherit}.alert-input.sc-ion-alert-ios::-ms-clear{display:none}.alert-radio-group.sc-ion-alert-ios,.alert-checkbox-group.sc-ion-alert-ios{overscroll-behavior:contain;max-height:240px;border-top:0.55px solid rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.2);overflow-y:auto;-webkit-overflow-scrolling:touch}.alert-tappable.sc-ion-alert-ios{height:44px}.alert-radio-label.sc-ion-alert-ios{padding-left:13px;padding-right:13px;padding-top:13px;padding-bottom:13px;flex:1;order:0;color:var(--ion-text-color, #000);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-radio-label.sc-ion-alert-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:13px;padding-inline-start:13px;-webkit-padding-end:13px;padding-inline-end:13px}}[aria-checked=true].sc-ion-alert-ios .alert-radio-label.sc-ion-alert-ios{color:var(--ion-color-primary, #3880ff)}.alert-radio-icon.sc-ion-alert-ios{position:relative;order:1;min-width:30px}[aria-checked=true].sc-ion-alert-ios .alert-radio-inner.sc-ion-alert-ios{left:7px;top:-7px;position:absolute;width:6px;height:12px;transform:rotate(45deg);border-width:2px;border-top-width:0;border-left-width:0;border-style:solid;border-color:var(--ion-color-primary, #3880ff)}[dir=rtl].sc-ion-alert-ios [aria-checked=true].sc-ion-alert-ios .alert-radio-inner.sc-ion-alert-ios,[dir=rtl].sc-ion-alert-ios-h [aria-checked=true].sc-ion-alert-ios .alert-radio-inner.sc-ion-alert-ios,[dir=rtl] .sc-ion-alert-ios-h [aria-checked=true].sc-ion-alert-ios .alert-radio-inner.sc-ion-alert-ios{left:unset;right:unset;right:7px}.alert-checkbox-label.sc-ion-alert-ios{padding-left:13px;padding-right:13px;padding-top:13px;padding-bottom:13px;flex:1;color:var(--ion-text-color, #000);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-checkbox-label.sc-ion-alert-ios{padding-left:unset;padding-right:unset;-webkit-padding-start:13px;padding-inline-start:13px;-webkit-padding-end:13px;padding-inline-end:13px}}.alert-checkbox-icon.sc-ion-alert-ios{border-radius:50%;margin-left:16px;margin-right:6px;margin-top:10px;margin-bottom:10px;position:relative;width:24px;height:24px;border-width:1px;border-style:solid;border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, #c8c7cc)));background-color:var(--ion-item-background, var(--ion-background-color, #fff));contain:strict}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-checkbox-icon.sc-ion-alert-ios{margin-left:unset;margin-right:unset;-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:6px;margin-inline-end:6px}}[aria-checked=true].sc-ion-alert-ios .alert-checkbox-icon.sc-ion-alert-ios{border-color:var(--ion-color-primary, #3880ff);background-color:var(--ion-color-primary, #3880ff)}[aria-checked=true].sc-ion-alert-ios .alert-checkbox-inner.sc-ion-alert-ios{left:9px;top:4px;position:absolute;width:5px;height:12px;transform:rotate(45deg);border-width:1px;border-top-width:0;border-left-width:0;border-style:solid;border-color:var(--ion-background-color, #fff)}[dir=rtl].sc-ion-alert-ios [aria-checked=true].sc-ion-alert-ios .alert-checkbox-inner.sc-ion-alert-ios,[dir=rtl].sc-ion-alert-ios-h [aria-checked=true].sc-ion-alert-ios .alert-checkbox-inner.sc-ion-alert-ios,[dir=rtl] .sc-ion-alert-ios-h [aria-checked=true].sc-ion-alert-ios .alert-checkbox-inner.sc-ion-alert-ios{left:unset;right:unset;right:9px}.alert-button-group.sc-ion-alert-ios{margin-right:-0.55px;flex-wrap:wrap}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-button-group.sc-ion-alert-ios{margin-right:unset;-webkit-margin-end:-0.55px;margin-inline-end:-0.55px}}.alert-button.sc-ion-alert-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;border-radius:0;flex:1 1 auto;min-width:50%;height:44px;border-top:0.55px solid rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.2);border-right:0.55px solid rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.2);background-color:transparent;color:var(--ion-color-primary, #3880ff);font-size:17px;overflow:hidden}[dir=rtl].sc-ion-alert-ios .alert-button.sc-ion-alert-ios:first-child,[dir=rtl].sc-ion-alert-ios-h .alert-button.sc-ion-alert-ios:first-child,[dir=rtl] .sc-ion-alert-ios-h .alert-button.sc-ion-alert-ios:first-child{border-right:0}.alert-button.sc-ion-alert-ios:last-child{border-right:0;font-weight:bold}[dir=rtl].sc-ion-alert-ios .alert-button.sc-ion-alert-ios:last-child,[dir=rtl].sc-ion-alert-ios-h .alert-button.sc-ion-alert-ios:last-child,[dir=rtl] .sc-ion-alert-ios-h .alert-button.sc-ion-alert-ios:last-child{border-right:0.55px solid rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.2)}.alert-button.ion-activated.sc-ion-alert-ios{background-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.1)}.alert-button-role-destructive.sc-ion-alert-ios,.alert-button-role-destructive.ion-activated.sc-ion-alert-ios,.alert-button-role-destructive.ion-focused.sc-ion-alert-ios{color:var(--ion-color-danger, #eb445a)}";
427
+
428
+ const alertMdCss = ".sc-ion-alert-md-h{--min-width:250px;--width:auto;--min-height:auto;--height:auto;--max-height:90%;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;right:0;top:0;bottom:0;display:flex;position:absolute;align-items:center;justify-content:center;outline:none;font-family:var(--ion-font-family, inherit);contain:strict;touch-action:none;user-select:none;z-index:1001}.overlay-hidden.sc-ion-alert-md-h{display:none}.alert-top.sc-ion-alert-md-h{padding-top:50px;align-items:flex-start}.alert-wrapper.sc-ion-alert-md{display:flex;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);contain:content;opacity:0;z-index:10}.alert-title.sc-ion-alert-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}.alert-sub-title.sc-ion-alert-md{margin-left:0;margin-right:0;margin-top:5px;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;font-weight:normal}.alert-message.sc-ion-alert-md{box-sizing:border-box;-webkit-overflow-scrolling:touch;overflow-y:auto;overscroll-behavior-y:contain}.alert-checkbox-group.sc-ion-alert-md::-webkit-scrollbar,.alert-radio-group.sc-ion-alert-md::-webkit-scrollbar,.alert-message.sc-ion-alert-md::-webkit-scrollbar{display:none}.alert-input.sc-ion-alert-md{padding-left:0;padding-right:0;padding-top:10px;padding-bottom:10px;width:100%;border:0;background:inherit;font:inherit;box-sizing:border-box}.alert-button-group.sc-ion-alert-md{display:flex;flex-direction:row;width:100%}.alert-button-group-vertical.sc-ion-alert-md{flex-direction:column;flex-wrap:nowrap}.alert-button.sc-ion-alert-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;display:block;border:0;font-size:14px;line-height:20px;z-index:0}.alert-button.ion-focused.sc-ion-alert-md,.alert-tappable.ion-focused.sc-ion-alert-md{background:var(--ion-color-step-100, #e6e6e6)}.alert-button-inner.sc-ion-alert-md{display:flex;flex-flow:row nowrap;flex-shrink:0;align-items:center;justify-content:center;width:100%;height:100%}.alert-input-disabled.sc-ion-alert-md,.alert-checkbox-button-disabled.sc-ion-alert-md .alert-button-inner.sc-ion-alert-md,.alert-radio-button-disabled.sc-ion-alert-md .alert-button-inner.sc-ion-alert-md{cursor:default;opacity:0.5;pointer-events:none}.alert-tappable.sc-ion-alert-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:flex;width:100%;border:0;background:transparent;font-size:inherit;line-height:initial;text-align:start;appearance:none;contain:strict}.alert-button.sc-ion-alert-md,.alert-checkbox.sc-ion-alert-md,.alert-input.sc-ion-alert-md,.alert-radio.sc-ion-alert-md{outline:none}.alert-radio-icon.sc-ion-alert-md,.alert-checkbox-icon.sc-ion-alert-md,.alert-checkbox-inner.sc-ion-alert-md{box-sizing:border-box}textarea.alert-input.sc-ion-alert-md{min-height:37px;resize:none}.sc-ion-alert-md-h{--background:var(--ion-overlay-background-color, var(--ion-background-color, #fff));--max-width:280px;--backdrop-opacity:var(--ion-backdrop-opacity, 0.32);font-size:14px}.alert-wrapper.sc-ion-alert-md{border-radius:4px;box-shadow:0 11px 15px -7px rgba(0, 0, 0, 0.2), 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12)}.alert-head.sc-ion-alert-md{padding-left:23px;padding-right:23px;padding-top:20px;padding-bottom:15px;text-align:start}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-head.sc-ion-alert-md{padding-left:unset;padding-right:unset;-webkit-padding-start:23px;padding-inline-start:23px;-webkit-padding-end:23px;padding-inline-end:23px}}.alert-title.sc-ion-alert-md{color:var(--ion-text-color, #000);font-size:20px;font-weight:500}.alert-sub-title.sc-ion-alert-md{color:var(--ion-text-color, #000);font-size:16px}.alert-message.sc-ion-alert-md,.alert-input-group.sc-ion-alert-md{padding-left:24px;padding-right:24px;padding-top:20px;padding-bottom:20px;color:var(--ion-color-step-550, #737373)}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-message.sc-ion-alert-md,.alert-input-group.sc-ion-alert-md{padding-left:unset;padding-right:unset;-webkit-padding-start:24px;padding-inline-start:24px;-webkit-padding-end:24px;padding-inline-end:24px}}.alert-message.sc-ion-alert-md{max-height:266px;font-size:16px}.alert-message.sc-ion-alert-md:empty{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}.alert-head.sc-ion-alert-md+.alert-message.sc-ion-alert-md{padding-top:0}.alert-input.sc-ion-alert-md{margin-left:0;margin-right:0;margin-top:5px;margin-bottom:5px;border-bottom:1px solid var(--ion-color-step-150, #d9d9d9);color:var(--ion-text-color, #000)}.alert-input.sc-ion-alert-md::placeholder{color:var(--ion-placeholder-color, var(--ion-color-step-400, #999999));font-family:inherit;font-weight:inherit}.alert-input.sc-ion-alert-md::-ms-clear{display:none}.alert-input.sc-ion-alert-md:focus{margin-bottom:4px;border-bottom:2px solid var(--ion-color-primary, #3880ff)}.alert-radio-group.sc-ion-alert-md,.alert-checkbox-group.sc-ion-alert-md{position:relative;max-height:266px;border-top:1px solid var(--ion-color-step-150, #d9d9d9);border-bottom:1px solid var(--ion-color-step-150, #d9d9d9);overflow:auto}.alert-tappable.sc-ion-alert-md{position:relative;height:48px;overflow:hidden}.alert-radio-label.sc-ion-alert-md{padding-left:52px;padding-right:26px;padding-top:13px;padding-bottom:13px;flex:1;color:var(--ion-color-step-850, #262626);font-size:16px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-radio-label.sc-ion-alert-md{padding-left:unset;padding-right:unset;-webkit-padding-start:52px;padding-inline-start:52px;-webkit-padding-end:26px;padding-inline-end:26px}}.alert-radio-icon.sc-ion-alert-md{left:26px;top:0;border-radius:50%;display:block;position:relative;width:20px;height:20px;border-width:2px;border-style:solid;border-color:var(--ion-color-step-550, #737373)}[dir=rtl].sc-ion-alert-md .alert-radio-icon.sc-ion-alert-md,[dir=rtl].sc-ion-alert-md-h .alert-radio-icon.sc-ion-alert-md,[dir=rtl] .sc-ion-alert-md-h .alert-radio-icon.sc-ion-alert-md{left:unset;right:unset;right:26px}.alert-radio-inner.sc-ion-alert-md{left:3px;top:3px;border-radius:50%;position:absolute;width:10px;height:10px;transform:scale3d(0, 0, 0);transition:transform 280ms cubic-bezier(0.4, 0, 0.2, 1);background-color:var(--ion-color-primary, #3880ff)}[dir=rtl].sc-ion-alert-md .alert-radio-inner.sc-ion-alert-md,[dir=rtl].sc-ion-alert-md-h .alert-radio-inner.sc-ion-alert-md,[dir=rtl] .sc-ion-alert-md-h .alert-radio-inner.sc-ion-alert-md{left:unset;right:unset;right:3px}[aria-checked=true].sc-ion-alert-md .alert-radio-label.sc-ion-alert-md{color:var(--ion-color-step-850, #262626)}[aria-checked=true].sc-ion-alert-md .alert-radio-icon.sc-ion-alert-md{border-color:var(--ion-color-primary, #3880ff)}[aria-checked=true].sc-ion-alert-md .alert-radio-inner.sc-ion-alert-md{transform:scale3d(1, 1, 1)}.alert-checkbox-label.sc-ion-alert-md{padding-left:53px;padding-right:26px;padding-top:13px;padding-bottom:13px;flex:1;color:var(--ion-color-step-850, #262626);font-size:16px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-checkbox-label.sc-ion-alert-md{padding-left:unset;padding-right:unset;-webkit-padding-start:53px;padding-inline-start:53px;-webkit-padding-end:26px;padding-inline-end:26px}}.alert-checkbox-icon.sc-ion-alert-md{left:26px;top:0;border-radius:2px;position:relative;width:16px;height:16px;border-width:2px;border-style:solid;border-color:var(--ion-color-step-550, #737373);contain:strict}[dir=rtl].sc-ion-alert-md .alert-checkbox-icon.sc-ion-alert-md,[dir=rtl].sc-ion-alert-md-h .alert-checkbox-icon.sc-ion-alert-md,[dir=rtl] .sc-ion-alert-md-h .alert-checkbox-icon.sc-ion-alert-md{left:unset;right:unset;right:26px}[aria-checked=true].sc-ion-alert-md .alert-checkbox-icon.sc-ion-alert-md{border-color:var(--ion-color-primary, #3880ff);background-color:var(--ion-color-primary, #3880ff)}[aria-checked=true].sc-ion-alert-md .alert-checkbox-inner.sc-ion-alert-md{left:3px;top:0;position:absolute;width:6px;height:10px;transform:rotate(45deg);border-width:2px;border-top-width:0;border-left-width:0;border-style:solid;border-color:var(--ion-color-primary-contrast, #fff)}[dir=rtl].sc-ion-alert-md [aria-checked=true].sc-ion-alert-md .alert-checkbox-inner.sc-ion-alert-md,[dir=rtl].sc-ion-alert-md-h [aria-checked=true].sc-ion-alert-md .alert-checkbox-inner.sc-ion-alert-md,[dir=rtl] .sc-ion-alert-md-h [aria-checked=true].sc-ion-alert-md .alert-checkbox-inner.sc-ion-alert-md{left:unset;right:unset;right:3px}.alert-button-group.sc-ion-alert-md{padding-left:8px;padding-right:8px;padding-top:8px;padding-bottom:8px;box-sizing:border-box;flex-wrap:wrap-reverse;justify-content:flex-end}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-button-group.sc-ion-alert-md{padding-left:unset;padding-right:unset;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px}}.alert-button.sc-ion-alert-md{border-radius:2px;margin-left:0;margin-right:8px;margin-top:0;margin-bottom:0;padding-left:10px;padding-right:10px;padding-top:10px;padding-bottom:10px;position:relative;background-color:transparent;color:var(--ion-color-primary, #3880ff);font-weight:500;text-align:end;text-transform:uppercase;overflow:hidden}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-button.sc-ion-alert-md{margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:8px;margin-inline-end:8px}}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.alert-button.sc-ion-alert-md{padding-left:unset;padding-right:unset;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}}.alert-button-inner.sc-ion-alert-md{justify-content:flex-end}";
429
+
430
+ const Alert = class {
431
+ constructor(hostRef) {
432
+ registerInstance(this, hostRef);
433
+ this.didPresent = createEvent(this, "ionAlertDidPresent", 7);
434
+ this.willPresent = createEvent(this, "ionAlertWillPresent", 7);
435
+ this.willDismiss = createEvent(this, "ionAlertWillDismiss", 7);
436
+ this.didDismiss = createEvent(this, "ionAlertDidDismiss", 7);
437
+ this.processedInputs = [];
438
+ this.processedButtons = [];
439
+ this.presented = false;
440
+ /**
441
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
442
+ */
443
+ this.keyboardClose = true;
444
+ /**
445
+ * Array of buttons to be added to the alert.
446
+ */
447
+ this.buttons = [];
448
+ /**
449
+ * Array of input to show in the alert.
450
+ */
451
+ this.inputs = [];
452
+ /**
453
+ * If `true`, the alert will be dismissed when the backdrop is clicked.
454
+ */
455
+ this.backdropDismiss = true;
456
+ /**
457
+ * If `true`, the alert will be translucent.
458
+ * Only applies when the mode is `"ios"` and the device supports
459
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
460
+ */
461
+ this.translucent = false;
462
+ /**
463
+ * If `true`, the alert will animate.
464
+ */
465
+ this.animated = true;
466
+ this.onBackdropTap = () => {
467
+ this.dismiss(undefined, BACKDROP);
468
+ };
469
+ this.dispatchCancelHandler = (ev) => {
470
+ const role = ev.detail.role;
471
+ if (isCancel(role)) {
472
+ const cancelButton = this.processedButtons.find((b) => b.role === 'cancel');
473
+ this.callButtonHandler(cancelButton);
474
+ }
475
+ };
476
+ }
477
+ onKeydown(ev) {
478
+ const inputTypes = new Set(this.processedInputs.map((i) => i.type));
479
+ // The only inputs we want to navigate between using arrow keys are the radios
480
+ // ignore the keydown event if it is not on a radio button
481
+ if (!inputTypes.has('radio') ||
482
+ (ev.target && !this.el.contains(ev.target)) ||
483
+ ev.target.classList.contains('alert-button')) {
484
+ return;
485
+ }
486
+ // Get all radios inside of the radio group and then
487
+ // filter out disabled radios since we need to skip those
488
+ const query = this.el.querySelectorAll('.alert-radio');
489
+ const radios = Array.from(query).filter((radio) => !radio.disabled);
490
+ // The focused radio is the one that shares the same id as
491
+ // the event target
492
+ const index = radios.findIndex((radio) => radio.id === ev.target.id);
493
+ // We need to know what the next radio element should
494
+ // be in order to change the focus
495
+ let nextEl;
496
+ // If hitting arrow down or arrow right, move to the next radio
497
+ // If we're on the last radio, move to the first radio
498
+ if (['ArrowDown', 'ArrowRight'].includes(ev.code)) {
499
+ nextEl = index === radios.length - 1 ? radios[0] : radios[index + 1];
500
+ }
501
+ // If hitting arrow up or arrow left, move to the previous radio
502
+ // If we're on the first radio, move to the last radio
503
+ if (['ArrowUp', 'ArrowLeft'].includes(ev.code)) {
504
+ nextEl = index === 0 ? radios[radios.length - 1] : radios[index - 1];
505
+ }
506
+ if (nextEl && radios.includes(nextEl)) {
507
+ const nextProcessed = this.processedInputs.find((input) => input.id === (nextEl === null || nextEl === void 0 ? void 0 : nextEl.id));
508
+ if (nextProcessed) {
509
+ this.rbClick(nextProcessed);
510
+ nextEl.focus();
511
+ }
512
+ }
513
+ }
514
+ buttonsChanged() {
515
+ const buttons = this.buttons;
516
+ this.processedButtons = buttons.map((btn) => {
517
+ return typeof btn === 'string' ? { text: btn, role: btn.toLowerCase() === 'cancel' ? 'cancel' : undefined } : btn;
518
+ });
519
+ }
520
+ inputsChanged() {
521
+ const inputs = this.inputs;
522
+ // Get the first input that is not disabled and the checked one
523
+ // If an enabled checked input exists, set it to be the focusable input
524
+ // otherwise we default to focus the first input
525
+ // This will only be used when the input is type radio
526
+ const first = inputs.find((input) => !input.disabled);
527
+ const checked = inputs.find((input) => input.checked && !input.disabled);
528
+ const focusable = checked || first;
529
+ // An alert can be created with several different inputs. Radios,
530
+ // checkboxes and inputs are all accepted, but they cannot be mixed.
531
+ const inputTypes = new Set(inputs.map((i) => i.type));
532
+ if (inputTypes.has('checkbox') && inputTypes.has('radio')) {
533
+ console.warn(`Alert cannot mix input types: ${Array.from(inputTypes.values()).join('/')}. Please see alert docs for more info.`);
534
+ }
535
+ this.inputType = inputTypes.values().next().value;
536
+ this.processedInputs = inputs.map((i, index) => ({
537
+ type: i.type || 'text',
538
+ name: i.name || `${index}`,
539
+ placeholder: i.placeholder || '',
540
+ value: i.value,
541
+ label: i.label,
542
+ checked: !!i.checked,
543
+ disabled: !!i.disabled,
544
+ id: i.id || `alert-input-${this.overlayIndex}-${index}`,
545
+ handler: i.handler,
546
+ min: i.min,
547
+ max: i.max,
548
+ cssClass: i.cssClass || '',
549
+ attributes: i.attributes || {},
550
+ tabindex: i.type === 'radio' && i !== focusable ? -1 : 0,
551
+ }));
552
+ }
553
+ connectedCallback() {
554
+ prepareOverlay(this.el);
555
+ }
556
+ componentWillLoad() {
557
+ this.inputsChanged();
558
+ this.buttonsChanged();
559
+ }
560
+ disconnectedCallback() {
561
+ if (this.gesture) {
562
+ this.gesture.destroy();
563
+ this.gesture = undefined;
564
+ }
565
+ }
566
+ componentDidLoad() {
567
+ /**
568
+ * Do not create gesture if:
569
+ * 1. A gesture already exists
570
+ * 2. App is running in MD mode
571
+ * 3. A wrapper ref does not exist
572
+ */
573
+ if (this.gesture || getIonMode(this) === 'md' || !this.wrapperEl) {
574
+ return;
575
+ }
576
+ this.gesture = createButtonActiveGesture(this.wrapperEl, (refEl) => refEl.classList.contains('alert-button'));
577
+ this.gesture.enable(true);
578
+ }
579
+ /**
580
+ * Present the alert overlay after it has been created.
581
+ */
582
+ present() {
583
+ return present(this, 'alertEnter', iosEnterAnimation$1, mdEnterAnimation$1);
584
+ }
585
+ /**
586
+ * Dismiss the alert overlay after it has been presented.
587
+ *
588
+ * @param data Any data to emit in the dismiss events.
589
+ * @param role The role of the element that is dismissing the alert.
590
+ * This can be useful in a button handler for determining which button was
591
+ * clicked to dismiss the alert.
592
+ * Some examples include: ``"cancel"`, `"destructive"`, "selected"`, and `"backdrop"`.
593
+ */
594
+ dismiss(data, role) {
595
+ return dismiss(this, data, role, 'alertLeave', iosLeaveAnimation$1, mdLeaveAnimation$1);
596
+ }
597
+ /**
598
+ * Returns a promise that resolves when the alert did dismiss.
599
+ */
600
+ onDidDismiss() {
601
+ return eventMethod(this.el, 'ionAlertDidDismiss');
602
+ }
603
+ /**
604
+ * Returns a promise that resolves when the alert will dismiss.
605
+ */
606
+ onWillDismiss() {
607
+ return eventMethod(this.el, 'ionAlertWillDismiss');
608
+ }
609
+ rbClick(selectedInput) {
610
+ for (const input of this.processedInputs) {
611
+ input.checked = input === selectedInput;
612
+ input.tabindex = input === selectedInput ? 0 : -1;
613
+ }
614
+ this.activeId = selectedInput.id;
615
+ safeCall(selectedInput.handler, selectedInput);
616
+ forceUpdate(this);
617
+ }
618
+ cbClick(selectedInput) {
619
+ selectedInput.checked = !selectedInput.checked;
620
+ safeCall(selectedInput.handler, selectedInput);
621
+ forceUpdate(this);
622
+ }
623
+ buttonClick(button) {
624
+ const role = button.role;
625
+ const values = this.getValues();
626
+ if (isCancel(role)) {
627
+ return this.dismiss({ values }, role);
628
+ }
629
+ const returnData = this.callButtonHandler(button, values);
630
+ if (returnData !== false) {
631
+ return this.dismiss(Object.assign({ values }, returnData), button.role);
632
+ }
633
+ return Promise.resolve(false);
634
+ }
635
+ callButtonHandler(button, data) {
636
+ if (button === null || button === void 0 ? void 0 : button.handler) {
637
+ // a handler has been provided, execute it
638
+ // pass the handler the values from the inputs
639
+ const returnData = safeCall(button.handler, data);
640
+ if (returnData === false) {
641
+ // if the return value of the handler is false then do not dismiss
642
+ return false;
643
+ }
644
+ if (typeof returnData === 'object') {
645
+ return returnData;
646
+ }
647
+ }
648
+ return {};
649
+ }
650
+ getValues() {
651
+ if (this.processedInputs.length === 0) {
652
+ // this is an alert without any options/inputs at all
653
+ return undefined;
654
+ }
655
+ if (this.inputType === 'radio') {
656
+ // this is an alert with radio buttons (single value select)
657
+ // return the one value which is checked, otherwise undefined
658
+ const checkedInput = this.processedInputs.find((i) => !!i.checked);
659
+ return checkedInput ? checkedInput.value : undefined;
660
+ }
661
+ if (this.inputType === 'checkbox') {
662
+ // this is an alert with checkboxes (multiple value select)
663
+ // return an array of all the checked values
664
+ return this.processedInputs.filter((i) => i.checked).map((i) => i.value);
665
+ }
666
+ // this is an alert with text inputs
667
+ // return an object of all the values with the input name as the key
668
+ const values = {};
669
+ this.processedInputs.forEach((i) => {
670
+ values[i.name] = i.value || '';
671
+ });
672
+ return values;
673
+ }
674
+ renderAlertInputs() {
675
+ switch (this.inputType) {
676
+ case 'checkbox':
677
+ return this.renderCheckbox();
678
+ case 'radio':
679
+ return this.renderRadio();
680
+ default:
681
+ return this.renderInput();
682
+ }
683
+ }
684
+ renderCheckbox() {
685
+ const inputs = this.processedInputs;
686
+ const mode = getIonMode(this);
687
+ if (inputs.length === 0) {
688
+ return null;
689
+ }
690
+ return (h("div", { class: "alert-checkbox-group" }, inputs.map((i) => (h("button", { type: "button", onClick: () => this.cbClick(i), "aria-checked": `${i.checked}`, id: i.id, disabled: i.disabled, tabIndex: i.tabindex, role: "checkbox", class: Object.assign(Object.assign({}, getClassMap(i.cssClass)), { 'alert-tappable': true, 'alert-checkbox': true, 'alert-checkbox-button': true, 'ion-focusable': true, 'alert-checkbox-button-disabled': i.disabled || false }) }, h("div", { class: "alert-button-inner" }, h("div", { class: "alert-checkbox-icon" }, h("div", { class: "alert-checkbox-inner" })), h("div", { class: "alert-checkbox-label" }, i.label)), mode === 'md' && h("ion-ripple-effect", null))))));
691
+ }
692
+ renderRadio() {
693
+ const inputs = this.processedInputs;
694
+ if (inputs.length === 0) {
695
+ return null;
696
+ }
697
+ return (h("div", { class: "alert-radio-group", role: "radiogroup", "aria-activedescendant": this.activeId }, inputs.map((i) => (h("button", { type: "button", onClick: () => this.rbClick(i), "aria-checked": `${i.checked}`, disabled: i.disabled, id: i.id, tabIndex: i.tabindex, class: Object.assign(Object.assign({}, getClassMap(i.cssClass)), { 'alert-radio-button': true, 'alert-tappable': true, 'alert-radio': true, 'ion-focusable': true, 'alert-radio-button-disabled': i.disabled || false }), role: "radio" }, h("div", { class: "alert-button-inner" }, h("div", { class: "alert-radio-icon" }, h("div", { class: "alert-radio-inner" })), h("div", { class: "alert-radio-label" }, i.label)))))));
698
+ }
699
+ renderInput() {
700
+ const inputs = this.processedInputs;
701
+ if (inputs.length === 0) {
702
+ return null;
703
+ }
704
+ return (h("div", { class: "alert-input-group" }, inputs.map((i) => {
705
+ var _a, _b, _c, _d;
706
+ if (i.type === 'textarea') {
707
+ return (h("div", { class: "alert-input-wrapper" }, h("textarea", Object.assign({ placeholder: i.placeholder, value: i.value, id: i.id, tabIndex: i.tabindex }, i.attributes, { disabled: (_b = (_a = i.attributes) === null || _a === void 0 ? void 0 : _a.disabled) !== null && _b !== void 0 ? _b : i.disabled, class: inputClass(i), onInput: (e) => {
708
+ var _a;
709
+ i.value = e.target.value;
710
+ if ((_a = i.attributes) === null || _a === void 0 ? void 0 : _a.onInput) {
711
+ i.attributes.onInput(e);
712
+ }
713
+ } }))));
714
+ }
715
+ else {
716
+ return (h("div", { class: "alert-input-wrapper" }, h("input", Object.assign({ placeholder: i.placeholder, type: i.type, min: i.min, max: i.max, value: i.value, id: i.id, tabIndex: i.tabindex }, i.attributes, { disabled: (_d = (_c = i.attributes) === null || _c === void 0 ? void 0 : _c.disabled) !== null && _d !== void 0 ? _d : i.disabled, class: inputClass(i), onInput: (e) => {
717
+ var _a;
718
+ i.value = e.target.value;
719
+ if ((_a = i.attributes) === null || _a === void 0 ? void 0 : _a.onInput) {
720
+ i.attributes.onInput(e);
721
+ }
722
+ } }))));
723
+ }
724
+ })));
725
+ }
726
+ renderAlertButtons() {
727
+ const buttons = this.processedButtons;
728
+ const mode = getIonMode(this);
729
+ const alertButtonGroupClass = {
730
+ 'alert-button-group': true,
731
+ 'alert-button-group-vertical': buttons.length > 2,
732
+ };
733
+ return (h("div", { class: alertButtonGroupClass }, buttons.map((button) => (h("button", { type: "button", id: button.id, class: buttonClass(button), tabIndex: 0, onClick: () => this.buttonClick(button) }, h("span", { class: "alert-button-inner" }, button.text), mode === 'md' && h("ion-ripple-effect", null))))));
734
+ }
735
+ render() {
736
+ const { overlayIndex, header, subHeader, message, htmlAttributes } = this;
737
+ const mode = getIonMode(this);
738
+ const hdrId = `alert-${overlayIndex}-hdr`;
739
+ const subHdrId = `alert-${overlayIndex}-sub-hdr`;
740
+ const msgId = `alert-${overlayIndex}-msg`;
741
+ const role = this.inputs.length > 0 || this.buttons.length > 0 ? 'alertdialog' : 'alert';
742
+ /**
743
+ * If the header is defined, use that. Otherwise, fall back to the subHeader.
744
+ * If neither is defined, don't set aria-labelledby.
745
+ */
746
+ const ariaLabelledBy = header ? hdrId : subHeader ? subHdrId : null;
747
+ return (h(Host, Object.assign({ role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message ? msgId : null, tabindex: "-1" }, htmlAttributes, { style: {
748
+ zIndex: `${20000 + overlayIndex}`,
749
+ }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), h("ion-backdrop", { tappable: this.backdropDismiss }), h("div", { tabindex: "0" }), h("div", { class: "alert-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, h("div", { class: "alert-head" }, header && (h("h2", { id: hdrId, class: "alert-title" }, header)), subHeader && (h("h2", { id: subHdrId, class: "alert-sub-title" }, subHeader))), h("div", { id: msgId, class: "alert-message", innerHTML: sanitizeDOMString(message) }), this.renderAlertInputs(), this.renderAlertButtons()), h("div", { tabindex: "0" })));
750
+ }
751
+ get el() { return getElement(this); }
752
+ static get watchers() { return {
753
+ "buttons": ["buttonsChanged"],
754
+ "inputs": ["inputsChanged"]
755
+ }; }
756
+ };
757
+ const inputClass = (input) => {
758
+ var _a, _b, _c;
759
+ return Object.assign(Object.assign({ 'alert-input': true, 'alert-input-disabled': ((_b = (_a = input.attributes) === null || _a === void 0 ? void 0 : _a.disabled) !== null && _b !== void 0 ? _b : input.disabled) || false }, getClassMap(input.cssClass)), getClassMap(input.attributes ? (_c = input.attributes.class) === null || _c === void 0 ? void 0 : _c.toString() : ''));
760
+ };
761
+ const buttonClass = (button) => {
762
+ return Object.assign({ 'alert-button': true, 'ion-focusable': true, 'ion-activatable': true, [`alert-button-role-${button.role}`]: button.role !== undefined }, getClassMap(button.cssClass));
763
+ };
764
+ Alert.style = {
765
+ ios: alertIosCss,
766
+ md: alertMdCss
767
+ };
768
+
769
+ const checkboxIosCss = ":host{--background-checked:var(--ion-color-primary, #3880ff);--border-color-checked:var(--ion-color-primary, #3880ff);--checkmark-color:var(--ion-color-primary-contrast, #fff);--checkmark-width:1;--transition:none;display:inline-block;position:relative;user-select:none;z-index:2}:host(.ion-color){--background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none;display:flex;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.checkbox-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:50%;--border-width:1px;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.23);--background:var(--ion-item-background, var(--ion-background-color, #fff));--size:26px;width:var(--size);height:var(--size)}:host(.checkbox-disabled){opacity:0.3}:host(.in-item){margin-left:0;margin-right:8px;margin-top:10px;margin-bottom:9px;display:block;position:static}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item){margin-left:unset;margin-right:unset;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:8px;margin-inline-end:8px}}:host(.in-item[slot=start]){margin-left:2px;margin-right:20px;margin-top:8px;margin-bottom:8px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:2px;margin-inline-start:2px;-webkit-margin-end:20px;margin-inline-end:20px}}";
770
+
771
+ const checkboxMdCss = ":host{--background-checked:var(--ion-color-primary, #3880ff);--border-color-checked:var(--ion-color-primary, #3880ff);--checkmark-color:var(--ion-color-primary-contrast, #fff);--checkmark-width:1;--transition:none;display:inline-block;position:relative;user-select:none;z-index:2}:host(.ion-color){--background-checked:var(--ion-color-base);--border-color-checked:var(--ion-color-base);--checkmark-color:var(--ion-color-contrast)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none;display:flex;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.checkbox-icon{border-radius:var(--border-radius);display:block;position:relative;width:100%;height:100%;transition:var(--transition);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);box-sizing:border-box}.checkbox-icon path{fill:none;stroke:var(--checkmark-color);stroke-width:var(--checkmark-width);opacity:0}:host(.checkbox-checked) .checkbox-icon,:host(.checkbox-indeterminate) .checkbox-icon{border-color:var(--border-color-checked);background:var(--background-checked)}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{opacity:1}:host(.checkbox-disabled){pointer-events:none}:host{--border-radius:calc(var(--size) * .125);--border-width:2px;--border-style:solid;--border-color:rgba(var(--ion-text-color-rgb, 0, 0, 0), 0.51);--checkmark-width:3;--background:var(--ion-item-background, var(--ion-background-color, #fff));--transition:background 180ms cubic-bezier(0.4, 0, 0.2, 1);--size:18px;width:var(--size);height:var(--size)}.checkbox-icon path{stroke-dasharray:30;stroke-dashoffset:30}:host(.checkbox-checked) .checkbox-icon path,:host(.checkbox-indeterminate) .checkbox-icon path{stroke-dashoffset:0;transition:stroke-dashoffset 90ms linear 90ms}:host(.checkbox-disabled){opacity:0.3}:host(.in-item){margin-left:0;margin-right:0;margin-top:18px;margin-bottom:18px;display:block;position:static}:host(.in-item[slot=start]){margin-left:4px;margin-right:36px;margin-top:18px;margin-bottom:18px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:36px;margin-inline-end:36px}}";
772
+
773
+ const Checkbox = class {
774
+ constructor(hostRef) {
775
+ registerInstance(this, hostRef);
776
+ this.ionChange = createEvent(this, "ionChange", 7);
777
+ this.ionFocus = createEvent(this, "ionFocus", 7);
778
+ this.ionBlur = createEvent(this, "ionBlur", 7);
779
+ this.ionStyle = createEvent(this, "ionStyle", 7);
780
+ this.inputId = `ion-cb-${checkboxIds++}`;
781
+ /**
782
+ * The name of the control, which is submitted with the form data.
783
+ */
784
+ this.name = this.inputId;
785
+ /**
786
+ * If `true`, the checkbox is selected.
787
+ */
788
+ this.checked = false;
789
+ /**
790
+ * If `true`, the checkbox will visually appear as indeterminate.
791
+ */
792
+ this.indeterminate = false;
793
+ /**
794
+ * If `true`, the user cannot interact with the checkbox.
795
+ */
796
+ this.disabled = false;
797
+ /**
798
+ * The value of the checkbox does not mean if it's checked or not, use the `checked`
799
+ * property for that.
800
+ *
801
+ * The value of a checkbox is analogous to the value of an `<input type="checkbox">`,
802
+ * it's only used when the checkbox participates in a native `<form>`.
803
+ */
804
+ this.value = 'on';
805
+ this.onClick = (ev) => {
806
+ ev.preventDefault();
807
+ this.setFocus();
808
+ this.checked = !this.checked;
809
+ this.indeterminate = false;
810
+ };
811
+ this.onFocus = () => {
812
+ this.ionFocus.emit();
813
+ };
814
+ this.onBlur = () => {
815
+ this.ionBlur.emit();
816
+ };
817
+ }
818
+ componentWillLoad() {
819
+ this.emitStyle();
820
+ }
821
+ checkedChanged(isChecked) {
822
+ this.ionChange.emit({
823
+ checked: isChecked,
824
+ value: this.value,
825
+ });
826
+ this.emitStyle();
827
+ }
828
+ disabledChanged() {
829
+ this.emitStyle();
830
+ }
831
+ emitStyle() {
832
+ this.ionStyle.emit({
833
+ 'checkbox-checked': this.checked,
834
+ 'interactive-disabled': this.disabled,
835
+ });
836
+ }
837
+ setFocus() {
838
+ if (this.focusEl) {
839
+ this.focusEl.focus();
840
+ }
841
+ }
842
+ render() {
843
+ const { color, checked, disabled, el, indeterminate, inputId, name, value } = this;
844
+ const mode = getIonMode(this);
845
+ const { label, labelId, labelText } = getAriaLabel(el, inputId);
846
+ renderHiddenInput(true, el, name, checked ? value : '', disabled);
847
+ let path = indeterminate ? (h("path", { d: "M6 12L18 12", part: "mark" })) : (h("path", { d: "M5.9,12.5l3.8,3.8l8.8-8.8", part: "mark" }));
848
+ if (mode === 'md') {
849
+ path = indeterminate ? (h("path", { d: "M2 12H22", part: "mark" })) : (h("path", { d: "M1.73,12.91 8.1,19.28 22.79,4.59", part: "mark" }));
850
+ }
851
+ return (h(Host, { onClick: this.onClick, "aria-labelledby": label ? labelId : null, "aria-checked": `${checked}`, "aria-hidden": disabled ? 'true' : null, role: "checkbox", class: createColorClasses(color, {
852
+ [mode]: true,
853
+ 'in-item': hostContext('ion-item', el),
854
+ 'checkbox-checked': checked,
855
+ 'checkbox-disabled': disabled,
856
+ 'checkbox-indeterminate': indeterminate,
857
+ interactive: true,
858
+ }) }, h("svg", { class: "checkbox-icon", viewBox: "0 0 24 24", part: "container" }, path), h("label", { htmlFor: inputId }, labelText), h("input", { type: "checkbox", "aria-checked": `${checked}`, disabled: disabled, id: inputId, onFocus: () => this.onFocus(), onBlur: () => this.onBlur(), ref: (focusEl) => (this.focusEl = focusEl) })));
859
+ }
860
+ get el() { return getElement(this); }
861
+ static get watchers() { return {
862
+ "checked": ["checkedChanged"],
863
+ "disabled": ["disabledChanged"]
864
+ }; }
865
+ };
866
+ let checkboxIds = 0;
867
+ Checkbox.style = {
868
+ ios: checkboxIosCss,
869
+ md: checkboxMdCss
870
+ };
871
+
872
+ const listHeaderIosCss = ":host{--border-style:solid;--border-width:0;--inner-border-width:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);color:var(--color);overflow:hidden}:host(.ion-color){background:var(--ion-color-base);color:var(--ion-color-contrast)}.list-header-inner{display:flex;position:relative;flex:1;flex-direction:inherit;align-items:inherit;align-self:stretch;min-height:inherit;border-width:var(--inner-border-width);border-style:var(--border-style);border-color:var(--border-color);overflow:inherit;box-sizing:border-box}::slotted(ion-label){flex:1 1 auto}:host(.list-header-lines-inset),:host(.list-header-lines-none){--border-width:0}:host(.list-header-lines-full),:host(.list-header-lines-none){--inner-border-width:0}:host{--background:transparent;--color:var(--ion-color-step-850, #262626);--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-250, #c8c7cc)));padding-left:calc(var(--ion-safe-area-left, 0px) + 20px);position:relative;align-items:flex-end;font-size:22px;font-weight:700;letter-spacing:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;-webkit-padding-start:calc(var(--ion-safe-area-left, 0px) + 20px);padding-inline-start:calc(var(--ion-safe-area-left, 0px) + 20px)}}::slotted(ion-button),::slotted(ion-label){margin-top:29px;margin-bottom:6px}::slotted(ion-button){margin-left:3px;margin-right:3px;height:1.4em}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){::slotted(ion-button){margin-left:unset;margin-right:unset;-webkit-margin-start:3px;margin-inline-start:3px;-webkit-margin-end:3px;margin-inline-end:3px}}:host(.list-header-lines-full){--border-width:0 0 0.55px 0}:host(.list-header-lines-inset){--inner-border-width:0 0 0.55px 0}";
873
+
874
+ const listHeaderMdCss = ":host{--border-style:solid;--border-width:0;--inner-border-width:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);color:var(--color);overflow:hidden}:host(.ion-color){background:var(--ion-color-base);color:var(--ion-color-contrast)}.list-header-inner{display:flex;position:relative;flex:1;flex-direction:inherit;align-items:inherit;align-self:stretch;min-height:inherit;border-width:var(--inner-border-width);border-style:var(--border-style);border-color:var(--border-color);overflow:inherit;box-sizing:border-box}::slotted(ion-label){flex:1 1 auto}:host(.list-header-lines-inset),:host(.list-header-lines-none){--border-width:0}:host(.list-header-lines-full),:host(.list-header-lines-none){--inner-border-width:0}:host{--background:transparent;--color:var(--ion-text-color, #000);--border-color:var(--ion-item-border-color, var(--ion-border-color, var(--ion-color-step-150, rgba(0, 0, 0, 0.13))));padding-left:calc(var(--ion-safe-area-left, 0) + 16px);min-height:45px;font-size:14px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;-webkit-padding-start:calc(var(--ion-safe-area-left, 0) + 16px);padding-inline-start:calc(var(--ion-safe-area-left, 0) + 16px)}}:host(.list-header-lines-full){--border-width:0 0 1px 0}:host(.list-header-lines-inset){--inner-border-width:0 0 1px 0}";
875
+
876
+ const ListHeader = class {
877
+ constructor(hostRef) {
878
+ registerInstance(this, hostRef);
879
+ }
880
+ render() {
881
+ const { lines } = this;
882
+ const mode = getIonMode(this);
883
+ return (h(Host, { class: createColorClasses(this.color, {
884
+ [mode]: true,
885
+ [`list-header-lines-${lines}`]: lines !== undefined,
886
+ }) }, h("div", { class: "list-header-inner" }, h("slot", null))));
887
+ }
888
+ };
889
+ ListHeader.style = {
890
+ ios: listHeaderIosCss,
891
+ md: listHeaderMdCss
892
+ };
893
+
894
+ /*!
895
+ * (C) Ionic http://ionicframework.com - MIT License
896
+ */
897
+ /**
898
+ * Returns the dimensions of the popover
899
+ * arrow on `ios` mode. If arrow is disabled
900
+ * returns (0, 0).
901
+ */
902
+ const getArrowDimensions = (arrowEl) => {
903
+ if (!arrowEl) {
904
+ return { arrowWidth: 0, arrowHeight: 0 };
905
+ }
906
+ const { width, height } = arrowEl.getBoundingClientRect();
907
+ return { arrowWidth: width, arrowHeight: height };
908
+ };
909
+ /**
910
+ * Returns the recommended dimensions of the popover
911
+ * that takes into account whether or not the width
912
+ * should match the trigger width.
913
+ */
914
+ const getPopoverDimensions = (size, contentEl, triggerEl) => {
915
+ const contentDimentions = contentEl.getBoundingClientRect();
916
+ const contentHeight = contentDimentions.height;
917
+ let contentWidth = contentDimentions.width;
918
+ if (size === 'cover' && triggerEl) {
919
+ const triggerDimensions = triggerEl.getBoundingClientRect();
920
+ contentWidth = triggerDimensions.width;
921
+ }
922
+ return {
923
+ contentWidth,
924
+ contentHeight,
925
+ };
926
+ };
927
+ const configureDismissInteraction = (triggerEl, triggerAction, popoverEl, parentPopoverEl) => {
928
+ let dismissCallbacks = [];
929
+ const root = getElementRoot(parentPopoverEl);
930
+ const parentContentEl = root.querySelector('.popover-content');
931
+ switch (triggerAction) {
932
+ case 'hover':
933
+ dismissCallbacks = [
934
+ {
935
+ /**
936
+ * Do not use mouseover here
937
+ * as this will causes the event to
938
+ * be dispatched on each underlying
939
+ * element rather than on the popover
940
+ * content as a whole.
941
+ */
942
+ eventName: 'mouseenter',
943
+ callback: (ev) => {
944
+ /**
945
+ * Do not dismiss the popover is we
946
+ * are hovering over its trigger.
947
+ * This would be easier if we used mouseover
948
+ * but this would cause the event to be dispatched
949
+ * more often than we would like, potentially
950
+ * causing performance issues.
951
+ */
952
+ const element = document.elementFromPoint(ev.clientX, ev.clientY);
953
+ if (element === triggerEl) {
954
+ return;
955
+ }
956
+ popoverEl.dismiss(undefined, undefined, false);
957
+ },
958
+ },
959
+ ];
960
+ break;
961
+ case 'context-menu':
962
+ case 'click':
963
+ default:
964
+ dismissCallbacks = [
965
+ {
966
+ eventName: 'click',
967
+ callback: (ev) => {
968
+ /**
969
+ * Do not dismiss the popover is we
970
+ * are hovering over its trigger.
971
+ */
972
+ const target = ev.target;
973
+ const closestTrigger = target.closest('[data-ion-popover-trigger]');
974
+ if (closestTrigger === triggerEl) {
975
+ /**
976
+ * stopPropagation here so if the
977
+ * popover has dismissOnSelect="true"
978
+ * the popover does not dismiss since
979
+ * we just clicked a trigger element.
980
+ */
981
+ ev.stopPropagation();
982
+ return;
983
+ }
984
+ popoverEl.dismiss(undefined, undefined, false);
985
+ },
986
+ },
987
+ ];
988
+ break;
989
+ }
990
+ dismissCallbacks.forEach(({ eventName, callback }) => parentContentEl.addEventListener(eventName, callback));
991
+ return () => {
992
+ dismissCallbacks.forEach(({ eventName, callback }) => parentContentEl.removeEventListener(eventName, callback));
993
+ };
994
+ };
995
+ /**
996
+ * Configures the triggerEl to respond
997
+ * to user interaction based upon the triggerAction
998
+ * prop that devs have defined.
999
+ */
1000
+ const configureTriggerInteraction = (triggerEl, triggerAction, popoverEl) => {
1001
+ let triggerCallbacks = [];
1002
+ /**
1003
+ * Based upon the kind of trigger interaction
1004
+ * the user wants, we setup the correct event
1005
+ * listeners.
1006
+ */
1007
+ switch (triggerAction) {
1008
+ case 'hover':
1009
+ let hoverTimeout;
1010
+ triggerCallbacks = [
1011
+ {
1012
+ eventName: 'mouseenter',
1013
+ callback: async (ev) => {
1014
+ ev.stopPropagation();
1015
+ if (hoverTimeout) {
1016
+ clearTimeout(hoverTimeout);
1017
+ }
1018
+ /**
1019
+ * Hovering over a trigger should not
1020
+ * immediately open the next popover.
1021
+ */
1022
+ hoverTimeout = setTimeout(() => {
1023
+ raf(() => {
1024
+ popoverEl.presentFromTrigger(ev);
1025
+ hoverTimeout = undefined;
1026
+ });
1027
+ }, 100);
1028
+ },
1029
+ },
1030
+ {
1031
+ eventName: 'mouseleave',
1032
+ callback: (ev) => {
1033
+ if (hoverTimeout) {
1034
+ clearTimeout(hoverTimeout);
1035
+ }
1036
+ /**
1037
+ * If mouse is over another popover
1038
+ * that is not this popover then we should
1039
+ * close this popover.
1040
+ */
1041
+ const target = ev.relatedTarget;
1042
+ if (!target) {
1043
+ return;
1044
+ }
1045
+ if (target.closest('ion-popover') !== popoverEl) {
1046
+ popoverEl.dismiss(undefined, undefined, false);
1047
+ }
1048
+ },
1049
+ },
1050
+ {
1051
+ /**
1052
+ * stopPropagation here prevents the popover
1053
+ * from dismissing when dismiss-on-select="true".
1054
+ */
1055
+ eventName: 'click',
1056
+ callback: (ev) => ev.stopPropagation(),
1057
+ },
1058
+ {
1059
+ eventName: 'ionPopoverActivateTrigger',
1060
+ callback: (ev) => popoverEl.presentFromTrigger(ev, true),
1061
+ },
1062
+ ];
1063
+ break;
1064
+ case 'context-menu':
1065
+ triggerCallbacks = [
1066
+ {
1067
+ eventName: 'contextmenu',
1068
+ callback: (ev) => {
1069
+ /**
1070
+ * Prevents the platform context
1071
+ * menu from appearing.
1072
+ */
1073
+ ev.preventDefault();
1074
+ popoverEl.presentFromTrigger(ev);
1075
+ },
1076
+ },
1077
+ {
1078
+ eventName: 'click',
1079
+ callback: (ev) => ev.stopPropagation(),
1080
+ },
1081
+ {
1082
+ eventName: 'ionPopoverActivateTrigger',
1083
+ callback: (ev) => popoverEl.presentFromTrigger(ev, true),
1084
+ },
1085
+ ];
1086
+ break;
1087
+ case 'click':
1088
+ default:
1089
+ triggerCallbacks = [
1090
+ {
1091
+ /**
1092
+ * Do not do a stopPropagation() here
1093
+ * because if you had two click triggers
1094
+ * then clicking the first trigger and then
1095
+ * clicking the second trigger would not cause
1096
+ * the first popover to dismiss.
1097
+ */
1098
+ eventName: 'click',
1099
+ callback: (ev) => popoverEl.presentFromTrigger(ev),
1100
+ },
1101
+ {
1102
+ eventName: 'ionPopoverActivateTrigger',
1103
+ callback: (ev) => popoverEl.presentFromTrigger(ev, true),
1104
+ },
1105
+ ];
1106
+ break;
1107
+ }
1108
+ triggerCallbacks.forEach(({ eventName, callback }) => triggerEl.addEventListener(eventName, callback));
1109
+ triggerEl.setAttribute('data-ion-popover-trigger', 'true');
1110
+ return () => {
1111
+ triggerCallbacks.forEach(({ eventName, callback }) => triggerEl.removeEventListener(eventName, callback));
1112
+ triggerEl.removeAttribute('data-ion-popover-trigger');
1113
+ };
1114
+ };
1115
+ /**
1116
+ * Returns the index of an ion-item in an array of ion-items.
1117
+ */
1118
+ const getIndexOfItem = (items, item) => {
1119
+ if (!item || item.tagName !== 'ION-ITEM') {
1120
+ return -1;
1121
+ }
1122
+ return items.findIndex((el) => el === item);
1123
+ };
1124
+ /**
1125
+ * Given an array of elements and a currently focused ion-item
1126
+ * returns the next ion-item relative to the focused one or
1127
+ * undefined.
1128
+ */
1129
+ const getNextItem = (items, currentItem) => {
1130
+ const currentItemIndex = getIndexOfItem(items, currentItem);
1131
+ return items[currentItemIndex + 1];
1132
+ };
1133
+ /**
1134
+ * Given an array of elements and a currently focused ion-item
1135
+ * returns the previous ion-item relative to the focused one or
1136
+ * undefined.
1137
+ */
1138
+ const getPrevItem = (items, currentItem) => {
1139
+ const currentItemIndex = getIndexOfItem(items, currentItem);
1140
+ return items[currentItemIndex - 1];
1141
+ };
1142
+ /** Focus the internal button of the ion-item */
1143
+ const focusItem = (item) => {
1144
+ const root = getElementRoot(item);
1145
+ const button = root.querySelector('button');
1146
+ if (button) {
1147
+ raf(() => button.focus());
1148
+ }
1149
+ };
1150
+ /**
1151
+ * Returns `true` if `el` has been designated
1152
+ * as a trigger element for an ion-popover.
1153
+ */
1154
+ const isTriggerElement = (el) => el.hasAttribute('data-ion-popover-trigger');
1155
+ const configureKeyboardInteraction = (popoverEl) => {
1156
+ const callback = async (ev) => {
1157
+ var _a;
1158
+ const activeElement = document.activeElement;
1159
+ let items = [];
1160
+ const targetTagName = (_a = ev.target) === null || _a === void 0 ? void 0 : _a.tagName;
1161
+ /**
1162
+ * Only handle custom keyboard interactions for the host popover element
1163
+ * and children ion-item elements.
1164
+ */
1165
+ if (targetTagName !== 'ION-POPOVER' && targetTagName !== 'ION-ITEM') {
1166
+ return;
1167
+ }
1168
+ /**
1169
+ * Complex selectors with :not() are :not supported
1170
+ * in older versions of Chromium so we need to do a
1171
+ * try/catch here so errors are not thrown.
1172
+ */
1173
+ try {
1174
+ /**
1175
+ * Select all ion-items that are not children of child popovers.
1176
+ * i.e. only select ion-item elements that are part of this popover
1177
+ */
1178
+ items = Array.from(popoverEl.querySelectorAll('ion-item:not(ion-popover ion-popover *):not([disabled])'));
1179
+ /* eslint-disable-next-line */
1180
+ }
1181
+ catch (_b) { }
1182
+ switch (ev.key) {
1183
+ /**
1184
+ * If we are in a child popover
1185
+ * then pressing the left arrow key
1186
+ * should close this popover and move
1187
+ * focus to the popover that presented
1188
+ * this one.
1189
+ */
1190
+ case 'ArrowLeft':
1191
+ const parentPopover = await popoverEl.getParentPopover();
1192
+ if (parentPopover) {
1193
+ popoverEl.dismiss(undefined, undefined, false);
1194
+ }
1195
+ break;
1196
+ /**
1197
+ * ArrowDown should move focus to the next focusable ion-item.
1198
+ */
1199
+ case 'ArrowDown':
1200
+ // Disable movement/scroll with keyboard
1201
+ ev.preventDefault();
1202
+ const nextItem = getNextItem(items, activeElement);
1203
+ if (nextItem !== undefined) {
1204
+ focusItem(nextItem);
1205
+ }
1206
+ break;
1207
+ /**
1208
+ * ArrowUp should move focus to the previous focusable ion-item.
1209
+ */
1210
+ case 'ArrowUp':
1211
+ // Disable movement/scroll with keyboard
1212
+ ev.preventDefault();
1213
+ const prevItem = getPrevItem(items, activeElement);
1214
+ if (prevItem !== undefined) {
1215
+ focusItem(prevItem);
1216
+ }
1217
+ break;
1218
+ /**
1219
+ * Home should move focus to the first focusable ion-item.
1220
+ */
1221
+ case 'Home':
1222
+ ev.preventDefault();
1223
+ const firstItem = items[0];
1224
+ if (firstItem !== undefined) {
1225
+ focusItem(firstItem);
1226
+ }
1227
+ break;
1228
+ /**
1229
+ * End should move focus to the last focusable ion-item.
1230
+ */
1231
+ case 'End':
1232
+ ev.preventDefault();
1233
+ const lastItem = items[items.length - 1];
1234
+ if (lastItem !== undefined) {
1235
+ focusItem(lastItem);
1236
+ }
1237
+ break;
1238
+ /**
1239
+ * ArrowRight, Spacebar, or Enter should activate
1240
+ * the currently focused trigger item to open a
1241
+ * popover if the element is a trigger item.
1242
+ */
1243
+ case 'ArrowRight':
1244
+ case ' ':
1245
+ case 'Enter':
1246
+ if (activeElement && isTriggerElement(activeElement)) {
1247
+ const rightEvent = new CustomEvent('ionPopoverActivateTrigger');
1248
+ activeElement.dispatchEvent(rightEvent);
1249
+ }
1250
+ break;
1251
+ }
1252
+ };
1253
+ popoverEl.addEventListener('keydown', callback);
1254
+ return () => popoverEl.removeEventListener('keydown', callback);
1255
+ };
1256
+ /**
1257
+ * Positions a popover by taking into account
1258
+ * the reference point, preferred side, alignment
1259
+ * and viewport dimensions.
1260
+ */
1261
+ const getPopoverPosition = (isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, triggerEl, event) => {
1262
+ var _a;
1263
+ let referenceCoordinates = {
1264
+ top: 0,
1265
+ left: 0,
1266
+ width: 0,
1267
+ height: 0,
1268
+ };
1269
+ /**
1270
+ * Calculate position relative to the
1271
+ * x-y coordinates in the event that
1272
+ * was passed in
1273
+ */
1274
+ switch (reference) {
1275
+ case 'event':
1276
+ if (!event) {
1277
+ return defaultPosition;
1278
+ }
1279
+ const mouseEv = event;
1280
+ referenceCoordinates = {
1281
+ top: mouseEv.clientY,
1282
+ left: mouseEv.clientX,
1283
+ width: 1,
1284
+ height: 1,
1285
+ };
1286
+ break;
1287
+ /**
1288
+ * Calculate position relative to the bounding
1289
+ * box on either the trigger element
1290
+ * specified via the `trigger` prop or
1291
+ * the target specified on the event
1292
+ * that was passed in.
1293
+ */
1294
+ case 'trigger':
1295
+ default:
1296
+ const customEv = event;
1297
+ /**
1298
+ * ionShadowTarget is used when we need to align the
1299
+ * popover with an element inside of the shadow root
1300
+ * of an Ionic component. Ex: Presenting a popover
1301
+ * by clicking on the collapsed indicator inside
1302
+ * of `ion-breadcrumb` and centering it relative
1303
+ * to the indicator rather than `ion-breadcrumb`
1304
+ * as a whole.
1305
+ */
1306
+ const actualTriggerEl = (triggerEl ||
1307
+ ((_a = customEv === null || customEv === void 0 ? void 0 : customEv.detail) === null || _a === void 0 ? void 0 : _a.ionShadowTarget) ||
1308
+ (customEv === null || customEv === void 0 ? void 0 : customEv.target));
1309
+ if (!actualTriggerEl) {
1310
+ return defaultPosition;
1311
+ }
1312
+ const triggerBoundingBox = actualTriggerEl.getBoundingClientRect();
1313
+ referenceCoordinates = {
1314
+ top: triggerBoundingBox.top,
1315
+ left: triggerBoundingBox.left,
1316
+ width: triggerBoundingBox.width,
1317
+ height: triggerBoundingBox.height,
1318
+ };
1319
+ break;
1320
+ }
1321
+ /**
1322
+ * Get top/left offset that would allow
1323
+ * popover to be positioned on the
1324
+ * preferred side of the reference.
1325
+ */
1326
+ const coordinates = calculatePopoverSide(side, referenceCoordinates, contentWidth, contentHeight, arrowWidth, arrowHeight, isRTL);
1327
+ /**
1328
+ * Get the top/left adjustments that
1329
+ * would allow the popover content
1330
+ * to have the correct alignment.
1331
+ */
1332
+ const alignedCoordinates = calculatePopoverAlign(align, side, referenceCoordinates, contentWidth, contentHeight);
1333
+ const top = coordinates.top + alignedCoordinates.top;
1334
+ const left = coordinates.left + alignedCoordinates.left;
1335
+ const { arrowTop, arrowLeft } = calculateArrowPosition(side, arrowWidth, arrowHeight, top, left, contentWidth, contentHeight, isRTL);
1336
+ const { originX, originY } = calculatePopoverOrigin(side, align, isRTL);
1337
+ return { top, left, referenceCoordinates, arrowTop, arrowLeft, originX, originY };
1338
+ };
1339
+ /**
1340
+ * Determines the transform-origin
1341
+ * of the popover animation so that it
1342
+ * is in line with what the side and alignment
1343
+ * prop values are. Currently only used
1344
+ * with the MD animation.
1345
+ */
1346
+ const calculatePopoverOrigin = (side, align, isRTL) => {
1347
+ switch (side) {
1348
+ case 'top':
1349
+ return { originX: getOriginXAlignment(align), originY: 'bottom' };
1350
+ case 'bottom':
1351
+ return { originX: getOriginXAlignment(align), originY: 'top' };
1352
+ case 'left':
1353
+ return { originX: 'right', originY: getOriginYAlignment(align) };
1354
+ case 'right':
1355
+ return { originX: 'left', originY: getOriginYAlignment(align) };
1356
+ case 'start':
1357
+ return { originX: isRTL ? 'left' : 'right', originY: getOriginYAlignment(align) };
1358
+ case 'end':
1359
+ return { originX: isRTL ? 'right' : 'left', originY: getOriginYAlignment(align) };
1360
+ }
1361
+ };
1362
+ const getOriginXAlignment = (align) => {
1363
+ switch (align) {
1364
+ case 'start':
1365
+ return 'left';
1366
+ case 'center':
1367
+ return 'center';
1368
+ case 'end':
1369
+ return 'right';
1370
+ }
1371
+ };
1372
+ const getOriginYAlignment = (align) => {
1373
+ switch (align) {
1374
+ case 'start':
1375
+ return 'top';
1376
+ case 'center':
1377
+ return 'center';
1378
+ case 'end':
1379
+ return 'bottom';
1380
+ }
1381
+ };
1382
+ /**
1383
+ * Calculates where the arrow positioning
1384
+ * should be relative to the popover content.
1385
+ */
1386
+ const calculateArrowPosition = (side, arrowWidth, arrowHeight, top, left, contentWidth, contentHeight, isRTL) => {
1387
+ /**
1388
+ * Note: When side is left, right, start, or end, the arrow is
1389
+ * been rotated using a `transform`, so to move the arrow up or down
1390
+ * by its dimension, you need to use `arrowWidth`.
1391
+ */
1392
+ const leftPosition = {
1393
+ arrowTop: top + contentHeight / 2 - arrowWidth / 2,
1394
+ arrowLeft: left + contentWidth - arrowWidth / 2,
1395
+ };
1396
+ /**
1397
+ * Move the arrow to the left by arrowWidth and then
1398
+ * again by half of its width because we have rotated
1399
+ * the arrow using a transform.
1400
+ */
1401
+ const rightPosition = { arrowTop: top + contentHeight / 2 - arrowWidth / 2, arrowLeft: left - arrowWidth * 1.5 };
1402
+ switch (side) {
1403
+ case 'top':
1404
+ return { arrowTop: top + contentHeight, arrowLeft: left + contentWidth / 2 - arrowWidth / 2 };
1405
+ case 'bottom':
1406
+ return { arrowTop: top - arrowHeight, arrowLeft: left + contentWidth / 2 - arrowWidth / 2 };
1407
+ case 'left':
1408
+ return leftPosition;
1409
+ case 'right':
1410
+ return rightPosition;
1411
+ case 'start':
1412
+ return isRTL ? rightPosition : leftPosition;
1413
+ case 'end':
1414
+ return isRTL ? leftPosition : rightPosition;
1415
+ default:
1416
+ return { arrowTop: 0, arrowLeft: 0 };
1417
+ }
1418
+ };
1419
+ /**
1420
+ * Calculates the required top/left
1421
+ * values needed to position the popover
1422
+ * content on the side specified in the
1423
+ * `side` prop.
1424
+ */
1425
+ const calculatePopoverSide = (side, triggerBoundingBox, contentWidth, contentHeight, arrowWidth, arrowHeight, isRTL) => {
1426
+ const sideLeft = {
1427
+ top: triggerBoundingBox.top,
1428
+ left: triggerBoundingBox.left - contentWidth - arrowWidth,
1429
+ };
1430
+ const sideRight = {
1431
+ top: triggerBoundingBox.top,
1432
+ left: triggerBoundingBox.left + triggerBoundingBox.width + arrowWidth,
1433
+ };
1434
+ switch (side) {
1435
+ case 'top':
1436
+ return {
1437
+ top: triggerBoundingBox.top - contentHeight - arrowHeight,
1438
+ left: triggerBoundingBox.left,
1439
+ };
1440
+ case 'right':
1441
+ return sideRight;
1442
+ case 'bottom':
1443
+ return {
1444
+ top: triggerBoundingBox.top + triggerBoundingBox.height + arrowHeight,
1445
+ left: triggerBoundingBox.left,
1446
+ };
1447
+ case 'left':
1448
+ return sideLeft;
1449
+ case 'start':
1450
+ return isRTL ? sideRight : sideLeft;
1451
+ case 'end':
1452
+ return isRTL ? sideLeft : sideRight;
1453
+ }
1454
+ };
1455
+ /**
1456
+ * Calculates the required top/left
1457
+ * offset values needed to provide the
1458
+ * correct alignment regardless while taking
1459
+ * into account the side the popover is on.
1460
+ */
1461
+ const calculatePopoverAlign = (align, side, triggerBoundingBox, contentWidth, contentHeight) => {
1462
+ switch (align) {
1463
+ case 'center':
1464
+ return calculatePopoverCenterAlign(side, triggerBoundingBox, contentWidth, contentHeight);
1465
+ case 'end':
1466
+ return calculatePopoverEndAlign(side, triggerBoundingBox, contentWidth, contentHeight);
1467
+ case 'start':
1468
+ default:
1469
+ return { top: 0, left: 0 };
1470
+ }
1471
+ };
1472
+ /**
1473
+ * Calculate the end alignment for
1474
+ * the popover. If side is on the x-axis
1475
+ * then the align values refer to the top
1476
+ * and bottom margins of the content.
1477
+ * If side is on the y-axis then the
1478
+ * align values refer to the left and right
1479
+ * margins of the content.
1480
+ */
1481
+ const calculatePopoverEndAlign = (side, triggerBoundingBox, contentWidth, contentHeight) => {
1482
+ switch (side) {
1483
+ case 'start':
1484
+ case 'end':
1485
+ case 'left':
1486
+ case 'right':
1487
+ return {
1488
+ top: -(contentHeight - triggerBoundingBox.height),
1489
+ left: 0,
1490
+ };
1491
+ case 'top':
1492
+ case 'bottom':
1493
+ default:
1494
+ return {
1495
+ top: 0,
1496
+ left: -(contentWidth - triggerBoundingBox.width),
1497
+ };
1498
+ }
1499
+ };
1500
+ /**
1501
+ * Calculate the center alignment for
1502
+ * the popover. If side is on the x-axis
1503
+ * then the align values refer to the top
1504
+ * and bottom margins of the content.
1505
+ * If side is on the y-axis then the
1506
+ * align values refer to the left and right
1507
+ * margins of the content.
1508
+ */
1509
+ const calculatePopoverCenterAlign = (side, triggerBoundingBox, contentWidth, contentHeight) => {
1510
+ switch (side) {
1511
+ case 'start':
1512
+ case 'end':
1513
+ case 'left':
1514
+ case 'right':
1515
+ return {
1516
+ top: -(contentHeight / 2 - triggerBoundingBox.height / 2),
1517
+ left: 0,
1518
+ };
1519
+ case 'top':
1520
+ case 'bottom':
1521
+ default:
1522
+ return {
1523
+ top: 0,
1524
+ left: -(contentWidth / 2 - triggerBoundingBox.width / 2),
1525
+ };
1526
+ }
1527
+ };
1528
+ /**
1529
+ * Adjusts popover positioning coordinates
1530
+ * such that popover does not appear offscreen
1531
+ * or overlapping safe area bounds.
1532
+ */
1533
+ const calculateWindowAdjustment = (side, coordTop, coordLeft, bodyPadding, bodyWidth, bodyHeight, contentWidth, contentHeight, safeAreaMargin, contentOriginX, contentOriginY, triggerCoordinates, coordArrowTop = 0, coordArrowLeft = 0, arrowHeight = 0) => {
1534
+ let arrowTop = coordArrowTop;
1535
+ const arrowLeft = coordArrowLeft;
1536
+ let left = coordLeft;
1537
+ let top = coordTop;
1538
+ let bottom;
1539
+ let originX = contentOriginX;
1540
+ let originY = contentOriginY;
1541
+ let checkSafeAreaLeft = false;
1542
+ let checkSafeAreaRight = false;
1543
+ const triggerTop = triggerCoordinates
1544
+ ? triggerCoordinates.top + triggerCoordinates.height
1545
+ : bodyHeight / 2 - contentHeight / 2;
1546
+ const triggerHeight = triggerCoordinates ? triggerCoordinates.height : 0;
1547
+ let addPopoverBottomClass = false;
1548
+ /**
1549
+ * Adjust popover so it does not
1550
+ * go off the left of the screen.
1551
+ */
1552
+ if (left < bodyPadding + safeAreaMargin) {
1553
+ left = bodyPadding;
1554
+ checkSafeAreaLeft = true;
1555
+ originX = 'left';
1556
+ /**
1557
+ * Adjust popover so it does not
1558
+ * go off the right of the screen.
1559
+ */
1560
+ }
1561
+ else if (contentWidth + bodyPadding + left + safeAreaMargin > bodyWidth) {
1562
+ checkSafeAreaRight = true;
1563
+ left = bodyWidth - contentWidth - bodyPadding;
1564
+ originX = 'right';
1565
+ }
1566
+ /**
1567
+ * Adjust popover so it does not
1568
+ * go off the top of the screen.
1569
+ * If popover is on the left or the right of
1570
+ * the trigger, then we should not adjust top
1571
+ * margins.
1572
+ */
1573
+ if (triggerTop + triggerHeight + contentHeight > bodyHeight && (side === 'top' || side === 'bottom')) {
1574
+ if (triggerTop - contentHeight > 0) {
1575
+ /**
1576
+ * While we strive to align the popover with the trigger
1577
+ * on smaller screens this is not always possible. As a result,
1578
+ * we adjust the popover up so that it does not hang
1579
+ * off the bottom of the screen. However, we do not want to move
1580
+ * the popover up so much that it goes off the top of the screen.
1581
+ *
1582
+ * We chose 12 here so that the popover position looks a bit nicer as
1583
+ * it is not right up against the edge of the screen.
1584
+ */
1585
+ top = Math.max(12, triggerTop - contentHeight - triggerHeight - (arrowHeight - 1));
1586
+ arrowTop = top + contentHeight;
1587
+ originY = 'bottom';
1588
+ addPopoverBottomClass = true;
1589
+ /**
1590
+ * If not enough room for popover to appear
1591
+ * above trigger, then cut it off.
1592
+ */
1593
+ }
1594
+ else {
1595
+ bottom = bodyPadding;
1596
+ }
1597
+ }
1598
+ return {
1599
+ top,
1600
+ left,
1601
+ bottom,
1602
+ originX,
1603
+ originY,
1604
+ checkSafeAreaLeft,
1605
+ checkSafeAreaRight,
1606
+ arrowTop,
1607
+ arrowLeft,
1608
+ addPopoverBottomClass,
1609
+ };
1610
+ };
1611
+ const shouldShowArrow = (side, didAdjustBounds = false, ev, trigger) => {
1612
+ /**
1613
+ * If no event provided and
1614
+ * we do not have a trigger,
1615
+ * then this popover was likely
1616
+ * presented via the popoverController
1617
+ * or users called `present` manually.
1618
+ * In this case, the arrow should not be
1619
+ * shown as we do not have a reference.
1620
+ */
1621
+ if (!ev && !trigger) {
1622
+ return false;
1623
+ }
1624
+ /**
1625
+ * If popover is on the left or the right
1626
+ * of a trigger, but we needed to adjust the
1627
+ * popover due to screen bounds, then we should
1628
+ * hide the arrow as it will never be pointing
1629
+ * at the trigger.
1630
+ */
1631
+ if (side !== 'top' && side !== 'bottom' && didAdjustBounds) {
1632
+ return false;
1633
+ }
1634
+ return true;
1635
+ };
1636
+
1637
+ /*!
1638
+ * (C) Ionic http://ionicframework.com - MIT License
1639
+ */
1640
+ const POPOVER_IOS_BODY_PADDING = 5;
1641
+ /**
1642
+ * iOS Popover Enter Animation
1643
+ */
1644
+ const iosEnterAnimation = (baseEl, opts) => {
1645
+ var _a;
1646
+ const { event: ev, size, trigger, reference, side, align } = opts;
1647
+ const doc = baseEl.ownerDocument;
1648
+ const isRTL = doc.dir === 'rtl';
1649
+ const bodyWidth = doc.defaultView.innerWidth;
1650
+ const bodyHeight = doc.defaultView.innerHeight;
1651
+ const root = getElementRoot(baseEl);
1652
+ const contentEl = root.querySelector('.popover-content');
1653
+ const arrowEl = root.querySelector('.popover-arrow');
1654
+ 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);
1655
+ const { contentWidth, contentHeight } = getPopoverDimensions(size, contentEl, referenceSizeEl);
1656
+ const { arrowWidth, arrowHeight } = getArrowDimensions(arrowEl);
1657
+ const defaultPosition = {
1658
+ top: bodyHeight / 2 - contentHeight / 2,
1659
+ left: bodyWidth / 2 - contentWidth / 2,
1660
+ originX: isRTL ? 'right' : 'left',
1661
+ originY: 'top',
1662
+ };
1663
+ const results = getPopoverPosition(isRTL, contentWidth, contentHeight, arrowWidth, arrowHeight, reference, side, align, defaultPosition, trigger, ev);
1664
+ const padding = size === 'cover' ? 0 : POPOVER_IOS_BODY_PADDING;
1665
+ const margin = size === 'cover' ? 0 : 25;
1666
+ 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);
1667
+ const baseAnimation = createAnimation();
1668
+ const backdropAnimation = createAnimation();
1669
+ const wrapperAnimation = createAnimation();
1670
+ backdropAnimation
1671
+ .addElement(root.querySelector('ion-backdrop'))
1672
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
1673
+ .beforeStyles({
1674
+ 'pointer-events': 'none',
1675
+ })
1676
+ .afterClearStyles(['pointer-events']);
1677
+ wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).fromTo('opacity', 0.01, 1);
1678
+ return baseAnimation
1679
+ .easing('ease')
1680
+ .duration(100)
1681
+ .beforeAddWrite(() => {
1682
+ if (size === 'cover') {
1683
+ baseEl.style.setProperty('--width', `${contentWidth}px`);
1684
+ }
1685
+ if (addPopoverBottomClass) {
1686
+ baseEl.classList.add('popover-bottom');
1687
+ }
1688
+ if (bottom !== undefined) {
1689
+ contentEl.style.setProperty('bottom', `${bottom}px`);
1690
+ }
1691
+ const safeAreaLeft = ' + var(--ion-safe-area-left, 0)';
1692
+ const safeAreaRight = ' - var(--ion-safe-area-right, 0)';
1693
+ let leftValue = `${left}px`;
1694
+ if (checkSafeAreaLeft) {
1695
+ leftValue = `${left}px${safeAreaLeft}`;
1696
+ }
1697
+ if (checkSafeAreaRight) {
1698
+ leftValue = `${left}px${safeAreaRight}`;
1699
+ }
1700
+ contentEl.style.setProperty('top', `calc(${top}px + var(--offset-y, 0))`);
1701
+ contentEl.style.setProperty('left', `calc(${leftValue} + var(--offset-x, 0))`);
1702
+ contentEl.style.setProperty('transform-origin', `${originY} ${originX}`);
1703
+ if (arrowEl !== null) {
1704
+ const didAdjustBounds = results.top !== top || results.left !== left;
1705
+ const showArrow = shouldShowArrow(side, didAdjustBounds, ev, trigger);
1706
+ if (showArrow) {
1707
+ arrowEl.style.setProperty('top', `calc(${arrowTop}px + var(--offset-y, 0))`);
1708
+ arrowEl.style.setProperty('left', `calc(${arrowLeft}px + var(--offset-x, 0))`);
1709
+ }
1710
+ else {
1711
+ arrowEl.style.setProperty('display', 'none');
1712
+ }
1713
+ }
1714
+ })
1715
+ .addAnimation([backdropAnimation, wrapperAnimation]);
1716
+ };
1717
+
1718
+ /*!
1719
+ * (C) Ionic http://ionicframework.com - MIT License
1720
+ */
1721
+ /**
1722
+ * iOS Popover Leave Animation
1723
+ */
1724
+ const iosLeaveAnimation = (baseEl) => {
1725
+ const root = getElementRoot(baseEl);
1726
+ const contentEl = root.querySelector('.popover-content');
1727
+ const arrowEl = root.querySelector('.popover-arrow');
1728
+ const baseAnimation = createAnimation();
1729
+ const backdropAnimation = createAnimation();
1730
+ const wrapperAnimation = createAnimation();
1731
+ backdropAnimation.addElement(root.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
1732
+ wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).fromTo('opacity', 0.99, 0);
1733
+ return baseAnimation
1734
+ .easing('ease')
1735
+ .afterAddWrite(() => {
1736
+ baseEl.style.removeProperty('--width');
1737
+ baseEl.classList.remove('popover-bottom');
1738
+ contentEl.style.removeProperty('top');
1739
+ contentEl.style.removeProperty('left');
1740
+ contentEl.style.removeProperty('bottom');
1741
+ contentEl.style.removeProperty('transform-origin');
1742
+ if (arrowEl) {
1743
+ arrowEl.style.removeProperty('top');
1744
+ arrowEl.style.removeProperty('left');
1745
+ arrowEl.style.removeProperty('display');
1746
+ }
1747
+ })
1748
+ .duration(300)
1749
+ .addAnimation([backdropAnimation, wrapperAnimation]);
1750
+ };
1751
+
1752
+ /*!
1753
+ * (C) Ionic http://ionicframework.com - MIT License
1754
+ */
1755
+ const POPOVER_MD_BODY_PADDING = 12;
1756
+ /**
1757
+ * Md Popover Enter Animation
1758
+ */
1759
+ const mdEnterAnimation = (baseEl, opts) => {
1760
+ var _a;
1761
+ const { event: ev, size, trigger, reference, side, align } = opts;
1762
+ const doc = baseEl.ownerDocument;
1763
+ const isRTL = doc.dir === 'rtl';
1764
+ const bodyWidth = doc.defaultView.innerWidth;
1765
+ const bodyHeight = doc.defaultView.innerHeight;
1766
+ const root = getElementRoot(baseEl);
1767
+ const contentEl = root.querySelector('.popover-content');
1768
+ 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);
1769
+ const { contentWidth, contentHeight } = getPopoverDimensions(size, contentEl, referenceSizeEl);
1770
+ const defaultPosition = {
1771
+ top: bodyHeight / 2 - contentHeight / 2,
1772
+ left: bodyWidth / 2 - contentWidth / 2,
1773
+ originX: isRTL ? 'right' : 'left',
1774
+ originY: 'top',
1775
+ };
1776
+ const results = getPopoverPosition(isRTL, contentWidth, contentHeight, 0, 0, reference, side, align, defaultPosition, trigger, ev);
1777
+ const padding = size === 'cover' ? 0 : POPOVER_MD_BODY_PADDING;
1778
+ const { originX, originY, top, left, bottom } = calculateWindowAdjustment(side, results.top, results.left, padding, bodyWidth, bodyHeight, contentWidth, contentHeight, 0, results.originX, results.originY, results.referenceCoordinates);
1779
+ const baseAnimation = createAnimation();
1780
+ const backdropAnimation = createAnimation();
1781
+ const wrapperAnimation = createAnimation();
1782
+ const contentAnimation = createAnimation();
1783
+ const viewportAnimation = createAnimation();
1784
+ backdropAnimation
1785
+ .addElement(root.querySelector('ion-backdrop'))
1786
+ .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')
1787
+ .beforeStyles({
1788
+ 'pointer-events': 'none',
1789
+ })
1790
+ .afterClearStyles(['pointer-events']);
1791
+ wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).duration(150).fromTo('opacity', 0.01, 1);
1792
+ contentAnimation
1793
+ .addElement(contentEl)
1794
+ .beforeStyles({
1795
+ top: `calc(${top}px + var(--offset-y, 0px))`,
1796
+ left: `calc(${left}px + var(--offset-x, 0px))`,
1797
+ 'transform-origin': `${originY} ${originX}`,
1798
+ })
1799
+ .beforeAddWrite(() => {
1800
+ if (bottom !== undefined) {
1801
+ contentEl.style.setProperty('bottom', `${bottom}px`);
1802
+ }
1803
+ })
1804
+ .fromTo('transform', 'scale(0.8)', 'scale(1)');
1805
+ viewportAnimation.addElement(root.querySelector('.popover-viewport')).fromTo('opacity', 0.01, 1);
1806
+ return baseAnimation
1807
+ .easing('cubic-bezier(0.36,0.66,0.04,1)')
1808
+ .duration(300)
1809
+ .beforeAddWrite(() => {
1810
+ if (size === 'cover') {
1811
+ baseEl.style.setProperty('--width', `${contentWidth}px`);
1812
+ }
1813
+ if (originY === 'bottom') {
1814
+ baseEl.classList.add('popover-bottom');
1815
+ }
1816
+ })
1817
+ .addAnimation([backdropAnimation, wrapperAnimation, contentAnimation, viewportAnimation]);
1818
+ };
1819
+
1820
+ /*!
1821
+ * (C) Ionic http://ionicframework.com - MIT License
1822
+ */
1823
+ /**
1824
+ * Md Popover Leave Animation
1825
+ */
1826
+ const mdLeaveAnimation = (baseEl) => {
1827
+ const root = getElementRoot(baseEl);
1828
+ const contentEl = root.querySelector('.popover-content');
1829
+ const baseAnimation = createAnimation();
1830
+ const backdropAnimation = createAnimation();
1831
+ const wrapperAnimation = createAnimation();
1832
+ backdropAnimation.addElement(root.querySelector('ion-backdrop')).fromTo('opacity', 'var(--backdrop-opacity)', 0);
1833
+ wrapperAnimation.addElement(root.querySelector('.popover-wrapper')).fromTo('opacity', 0.99, 0);
1834
+ return baseAnimation
1835
+ .easing('ease')
1836
+ .afterAddWrite(() => {
1837
+ baseEl.style.removeProperty('--width');
1838
+ baseEl.classList.remove('popover-bottom');
1839
+ contentEl.style.removeProperty('top');
1840
+ contentEl.style.removeProperty('left');
1841
+ contentEl.style.removeProperty('bottom');
1842
+ contentEl.style.removeProperty('transform-origin');
1843
+ })
1844
+ .duration(150)
1845
+ .addAnimation([backdropAnimation, wrapperAnimation]);
1846
+ };
1847
+
1848
+ 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{opacity:0;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}.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;overflow:hidden}: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}: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}: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}.popover-arrow::after{left:3px;top:3px;border-radius:3px;position:absolute;width:14px;height:14px;transform:rotate(45deg);background:var(--background);content:\"\";z-index:10}[dir=rtl] .popover-arrow::after,:host-context([dir=rtl]) .popover-arrow::after{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)}: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 (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)}}";
1849
+
1850
+ 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{opacity:0;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}.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;overflow:hidden}: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}: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}: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}[dir=rtl] .popover-content,:host-context([dir=rtl]) .popover-content{transform-origin:right top}.popover-viewport{transition-delay:100ms}";
1851
+
1852
+ const Popover = class {
1853
+ constructor(hostRef) {
1854
+ registerInstance(this, hostRef);
1855
+ this.didPresent = createEvent(this, "ionPopoverDidPresent", 7);
1856
+ this.willPresent = createEvent(this, "ionPopoverWillPresent", 7);
1857
+ this.willDismiss = createEvent(this, "ionPopoverWillDismiss", 7);
1858
+ this.didDismiss = createEvent(this, "ionPopoverDidDismiss", 7);
1859
+ this.didPresentShorthand = createEvent(this, "didPresent", 7);
1860
+ this.willPresentShorthand = createEvent(this, "willPresent", 7);
1861
+ this.willDismissShorthand = createEvent(this, "willDismiss", 7);
1862
+ this.didDismissShorthand = createEvent(this, "didDismiss", 7);
1863
+ this.parentPopover = null;
1864
+ this.popoverIndex = popoverIds++;
1865
+ this.coreDelegate = CoreDelegate();
1866
+ this.inline = false;
1867
+ this.focusDescendantOnPresent = false;
1868
+ this.presented = false;
1869
+ /** @internal */
1870
+ this.hasController = false;
1871
+ /**
1872
+ * If `true`, the keyboard will be automatically dismissed when the overlay is presented.
1873
+ */
1874
+ this.keyboardClose = true;
1875
+ /**
1876
+ * If `true`, the popover will be dismissed when the backdrop is clicked.
1877
+ */
1878
+ this.backdropDismiss = true;
1879
+ /**
1880
+ * If `true`, a backdrop will be displayed behind the popover.
1881
+ * This property controls whether or not the backdrop
1882
+ * darkens the screen when the popover is presented.
1883
+ * It does not control whether or not the backdrop
1884
+ * is active or present in the DOM.
1885
+ */
1886
+ this.showBackdrop = true;
1887
+ /**
1888
+ * If `true`, the popover will be translucent.
1889
+ * Only applies when the mode is `"ios"` and the device supports
1890
+ * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).
1891
+ */
1892
+ this.translucent = false;
1893
+ /**
1894
+ * If `true`, the popover will animate.
1895
+ */
1896
+ this.animated = true;
1897
+ /**
1898
+ * Describes what kind of interaction with the trigger that
1899
+ * should cause the popover to open. Does not apply when the `trigger`
1900
+ * property is `undefined`.
1901
+ * If `'click'`, the popover will be presented when the trigger is left clicked.
1902
+ * If `'hover'`, the popover will be presented when a pointer hovers over the trigger.
1903
+ * If `'context-menu'`, the popover will be presented when the trigger is right
1904
+ * clicked on desktop and long pressed on mobile. This will also prevent your
1905
+ * device's normal context menu from appearing.
1906
+ */
1907
+ this.triggerAction = 'click';
1908
+ /**
1909
+ * Describes how to calculate the popover width.
1910
+ * If `'cover'`, the popover width will match the width of the trigger.
1911
+ * If `'auto'`, the popover width will be determined by the content in
1912
+ * the popover.
1913
+ */
1914
+ this.size = 'auto';
1915
+ /**
1916
+ * If `true`, the popover will be automatically
1917
+ * dismissed when the content has been clicked.
1918
+ */
1919
+ this.dismissOnSelect = false;
1920
+ /**
1921
+ * Describes what to position the popover relative to.
1922
+ * If `'trigger'`, the popover will be positioned relative
1923
+ * to the trigger button. If passing in an event, this is
1924
+ * determined via event.target.
1925
+ * If `'event'`, the popover will be positioned relative
1926
+ * to the x/y coordinates of the trigger action. If passing
1927
+ * in an event, this is determined via event.clientX and event.clientY.
1928
+ */
1929
+ this.reference = 'trigger';
1930
+ /**
1931
+ * Describes which side of the `reference` point to position
1932
+ * the popover on. The `'start'` and `'end'` values are RTL-aware,
1933
+ * and the `'left'` and `'right'` values are not.
1934
+ */
1935
+ this.side = 'bottom';
1936
+ /**
1937
+ * If `true`, the popover will display an arrow that points at the
1938
+ * `reference` when running in `ios` mode. Does not apply in `md` mode.
1939
+ */
1940
+ this.arrow = true;
1941
+ /**
1942
+ * If `true`, the popover will open. If `false`, the popover will close.
1943
+ * Use this if you need finer grained control over presentation, otherwise
1944
+ * just use the popoverController or the `trigger` property.
1945
+ * Note: `isOpen` will not automatically be set back to `false` when
1946
+ * the popover dismisses. You will need to do that in your code.
1947
+ */
1948
+ this.isOpen = false;
1949
+ /**
1950
+ * @internal
1951
+ *
1952
+ * If `true` the popover will not register its own keyboard event handlers.
1953
+ * This allows the contents of the popover to handle their own keyboard interactions.
1954
+ *
1955
+ * If `false`, the popover will register its own keyboard event handlers for
1956
+ * navigating `ion-list` items within a popover (up/down/home/end/etc.).
1957
+ * This will also cancel browser keyboard event bindings to prevent scroll
1958
+ * behavior in a popover using a list of items.
1959
+ */
1960
+ this.keyboardEvents = false;
1961
+ /**
1962
+ * If `true`, the component passed into `ion-popover` will
1963
+ * automatically be mounted when the popover is created. The
1964
+ * component will remain mounted even when the popover is dismissed.
1965
+ * However, the component will be destroyed when the popover is
1966
+ * destroyed. This property is not reactive and should only be
1967
+ * used when initially creating a popover.
1968
+ *
1969
+ * Note: This feature only applies to inline popovers in JavaScript
1970
+ * frameworks such as Angular, React, and Vue.
1971
+ */
1972
+ this.keepContentsMounted = false;
1973
+ this.onBackdropTap = () => {
1974
+ this.dismiss(undefined, BACKDROP);
1975
+ };
1976
+ this.onLifecycle = (modalEvent) => {
1977
+ const el = this.usersElement;
1978
+ const name = LIFECYCLE_MAP[modalEvent.type];
1979
+ if (el && name) {
1980
+ const event = new CustomEvent(name, {
1981
+ bubbles: false,
1982
+ cancelable: false,
1983
+ detail: modalEvent.detail,
1984
+ });
1985
+ el.dispatchEvent(event);
1986
+ }
1987
+ };
1988
+ this.configureTriggerInteraction = () => {
1989
+ const { trigger, triggerAction, el, destroyTriggerInteraction } = this;
1990
+ if (destroyTriggerInteraction) {
1991
+ destroyTriggerInteraction();
1992
+ }
1993
+ const triggerEl = (this.triggerEl = trigger !== undefined ? document.getElementById(trigger) : null);
1994
+ if (!triggerEl) {
1995
+ return;
1996
+ }
1997
+ this.destroyTriggerInteraction = configureTriggerInteraction(triggerEl, triggerAction, el);
1998
+ };
1999
+ this.configureKeyboardInteraction = () => {
2000
+ const { destroyKeyboardInteraction, el } = this;
2001
+ if (destroyKeyboardInteraction) {
2002
+ destroyKeyboardInteraction();
2003
+ }
2004
+ this.destroyKeyboardInteraction = configureKeyboardInteraction(el);
2005
+ };
2006
+ this.configureDismissInteraction = () => {
2007
+ const { destroyDismissInteraction, parentPopover, triggerAction, triggerEl, el } = this;
2008
+ if (!parentPopover || !triggerEl) {
2009
+ return;
2010
+ }
2011
+ if (destroyDismissInteraction) {
2012
+ destroyDismissInteraction();
2013
+ }
2014
+ this.destroyDismissInteraction = configureDismissInteraction(triggerEl, triggerAction, el, parentPopover);
2015
+ };
2016
+ }
2017
+ onTriggerChange() {
2018
+ this.configureTriggerInteraction();
2019
+ }
2020
+ onIsOpenChange(newValue, oldValue) {
2021
+ if (newValue === true && oldValue === false) {
2022
+ this.present();
2023
+ }
2024
+ else if (newValue === false && oldValue === true) {
2025
+ this.dismiss();
2026
+ }
2027
+ }
2028
+ connectedCallback() {
2029
+ prepareOverlay(this.el);
2030
+ }
2031
+ componentWillLoad() {
2032
+ /**
2033
+ * If user has custom ID set then we should
2034
+ * not assign the default incrementing ID.
2035
+ */
2036
+ this.popoverId = this.el.hasAttribute('id') ? this.el.getAttribute('id') : `ion-popover-${this.popoverIndex}`;
2037
+ this.parentPopover = this.el.closest(`ion-popover:not(#${this.popoverId})`);
2038
+ if (this.alignment === undefined) {
2039
+ this.alignment = getIonMode(this) === 'ios' ? 'center' : 'start';
2040
+ }
2041
+ }
2042
+ componentDidLoad() {
2043
+ const { parentPopover, isOpen } = this;
2044
+ /**
2045
+ * If popover was rendered with isOpen="true"
2046
+ * then we should open popover immediately.
2047
+ */
2048
+ if (isOpen === true) {
2049
+ raf(() => this.present());
2050
+ }
2051
+ if (parentPopover) {
2052
+ addEventListener(parentPopover, 'ionPopoverWillDismiss', () => {
2053
+ this.dismiss(undefined, undefined, false);
2054
+ });
2055
+ }
2056
+ this.configureTriggerInteraction();
2057
+ }
2058
+ /**
2059
+ * When opening a popover from a trigger, we should not be
2060
+ * modifying the `event` prop from inside the component.
2061
+ * Additionally, when pressing the "Right" arrow key, we need
2062
+ * to shift focus to the first descendant in the newly presented
2063
+ * popover.
2064
+ *
2065
+ * @internal
2066
+ */
2067
+ async presentFromTrigger(event, focusDescendant = false) {
2068
+ this.focusDescendantOnPresent = focusDescendant;
2069
+ await this.present(event);
2070
+ this.focusDescendantOnPresent = false;
2071
+ }
2072
+ /**
2073
+ * Determines whether or not an overlay
2074
+ * is being used inline or via a controller/JS
2075
+ * and returns the correct delegate.
2076
+ * By default, subsequent calls to getDelegate
2077
+ * will use a cached version of the delegate.
2078
+ * This is useful for calling dismiss after
2079
+ * present so that the correct delegate is given.
2080
+ */
2081
+ getDelegate(force = false) {
2082
+ if (this.workingDelegate && !force) {
2083
+ return {
2084
+ delegate: this.workingDelegate,
2085
+ inline: this.inline,
2086
+ };
2087
+ }
2088
+ /**
2089
+ * If using overlay inline
2090
+ * we potentially need to use the coreDelegate
2091
+ * so that this works in vanilla JS apps.
2092
+ * If a developer has presented this component
2093
+ * via a controller, then we can assume
2094
+ * the component is already in the
2095
+ * correct place.
2096
+ */
2097
+ const parentEl = this.el.parentNode;
2098
+ const inline = (this.inline = parentEl !== null && !this.hasController);
2099
+ const delegate = (this.workingDelegate = inline ? this.delegate || this.coreDelegate : this.delegate);
2100
+ return { inline, delegate };
2101
+ }
2102
+ /**
2103
+ * Present the popover overlay after it has been created.
2104
+ * Developers can pass a mouse, touch, or pointer event
2105
+ * to position the popover relative to where that event
2106
+ * was dispatched.
2107
+ */
2108
+ async present(event) {
2109
+ if (this.presented) {
2110
+ return;
2111
+ }
2112
+ /**
2113
+ * When using an inline popover
2114
+ * and dismissing a popover it is possible to
2115
+ * quickly present the popover while it is
2116
+ * dismissing. We need to await any current
2117
+ * transition to allow the dismiss to finish
2118
+ * before presenting again.
2119
+ */
2120
+ if (this.currentTransition !== undefined) {
2121
+ await this.currentTransition;
2122
+ }
2123
+ const data = Object.assign(Object.assign({}, this.componentProps), { popover: this.el });
2124
+ const { inline, delegate } = this.getDelegate(true);
2125
+ this.usersElement = await attachComponent(delegate, this.el, this.component, ['popover-viewport'], data, inline);
2126
+ await deepReady(this.usersElement);
2127
+ if (!this.keyboardEvents) {
2128
+ this.configureKeyboardInteraction();
2129
+ }
2130
+ this.configureDismissInteraction();
2131
+ this.currentTransition = present(this, 'popoverEnter', iosEnterAnimation, mdEnterAnimation, {
2132
+ event: event || this.event,
2133
+ size: this.size,
2134
+ trigger: this.triggerEl,
2135
+ reference: this.reference,
2136
+ side: this.side,
2137
+ align: this.alignment,
2138
+ });
2139
+ await this.currentTransition;
2140
+ this.currentTransition = undefined;
2141
+ /**
2142
+ * If popover is nested and was
2143
+ * presented using the "Right" arrow key,
2144
+ * we need to move focus to the first
2145
+ * descendant inside of the popover.
2146
+ */
2147
+ if (this.focusDescendantOnPresent) {
2148
+ focusFirstDescendant(this.el, this.el);
2149
+ }
2150
+ }
2151
+ /**
2152
+ * Dismiss the popover overlay after it has been presented.
2153
+ *
2154
+ * @param data Any data to emit in the dismiss events.
2155
+ * @param role The role of the element that is dismissing the popover. For example, 'cancel' or 'backdrop'.
2156
+ * @param dismissParentPopover If `true`, dismissing this popover will also dismiss
2157
+ * a parent popover if this popover is nested. Defaults to `true`.
2158
+ */
2159
+ async dismiss(data, role, dismissParentPopover = true) {
2160
+ /**
2161
+ * When using an inline popover
2162
+ * and presenting a popover it is possible to
2163
+ * quickly dismiss the popover while it is
2164
+ * presenting. We need to await any current
2165
+ * transition to allow the present to finish
2166
+ * before dismissing again.
2167
+ */
2168
+ if (this.currentTransition !== undefined) {
2169
+ await this.currentTransition;
2170
+ }
2171
+ const { destroyKeyboardInteraction, destroyDismissInteraction } = this;
2172
+ if (dismissParentPopover && this.parentPopover) {
2173
+ this.parentPopover.dismiss(data, role, dismissParentPopover);
2174
+ }
2175
+ this.currentTransition = dismiss(this, data, role, 'popoverLeave', iosLeaveAnimation, mdLeaveAnimation, this.event);
2176
+ const shouldDismiss = await this.currentTransition;
2177
+ if (shouldDismiss) {
2178
+ if (destroyKeyboardInteraction) {
2179
+ destroyKeyboardInteraction();
2180
+ this.destroyKeyboardInteraction = undefined;
2181
+ }
2182
+ if (destroyDismissInteraction) {
2183
+ destroyDismissInteraction();
2184
+ this.destroyDismissInteraction = undefined;
2185
+ }
2186
+ /**
2187
+ * If using popover inline
2188
+ * we potentially need to use the coreDelegate
2189
+ * so that this works in vanilla JS apps
2190
+ */
2191
+ const { delegate } = this.getDelegate();
2192
+ await detachComponent(delegate, this.usersElement);
2193
+ }
2194
+ this.currentTransition = undefined;
2195
+ return shouldDismiss;
2196
+ }
2197
+ /**
2198
+ * @internal
2199
+ */
2200
+ async getParentPopover() {
2201
+ return this.parentPopover;
2202
+ }
2203
+ /**
2204
+ * Returns a promise that resolves when the popover did dismiss.
2205
+ */
2206
+ onDidDismiss() {
2207
+ return eventMethod(this.el, 'ionPopoverDidDismiss');
2208
+ }
2209
+ /**
2210
+ * Returns a promise that resolves when the popover will dismiss.
2211
+ */
2212
+ onWillDismiss() {
2213
+ return eventMethod(this.el, 'ionPopoverWillDismiss');
2214
+ }
2215
+ render() {
2216
+ const mode = getIonMode(this);
2217
+ const { onLifecycle, popoverId, parentPopover, dismissOnSelect, side, arrow, htmlAttributes } = this;
2218
+ const desktop = isPlatform('desktop');
2219
+ const enableArrow = arrow && !parentPopover;
2220
+ return (h(Host, Object.assign({ "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
2221
+ zIndex: `${20000 + this.overlayIndex}`,
2222
+ }, id: popoverId, 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", { tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), h("div", { class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && h("div", { class: "popover-arrow", part: "arrow" }), h("div", { class: "popover-content", part: "content" }, h("slot", null)))));
2223
+ }
2224
+ get el() { return getElement(this); }
2225
+ static get watchers() { return {
2226
+ "trigger": ["onTriggerChange"],
2227
+ "triggerAction": ["onTriggerChange"],
2228
+ "isOpen": ["onIsOpenChange"]
2229
+ }; }
2230
+ };
2231
+ const LIFECYCLE_MAP = {
2232
+ ionPopoverDidPresent: 'ionViewDidEnter',
2233
+ ionPopoverWillPresent: 'ionViewWillEnter',
2234
+ ionPopoverWillDismiss: 'ionViewWillLeave',
2235
+ ionPopoverDidDismiss: 'ionViewDidLeave',
2236
+ };
2237
+ let popoverIds = 0;
2238
+ Popover.style = {
2239
+ ios: popoverIosCss,
2240
+ md: popoverMdCss
2241
+ };
2242
+
2243
+ const radioIosCss = ":host{--inner-border-radius:50%;display:inline-block;position:relative;box-sizing:border-box;user-select:none;z-index:2}:host(.radio-disabled){pointer-events:none}.radio-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;contain:layout size style}.radio-icon,.radio-inner{box-sizing:border-box}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none;display:flex;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host(:focus){outline:none}:host{--color-checked:var(--ion-color-primary, #3880ff);width:15px;height:24px}:host(.ion-color.radio-checked) .radio-inner{border-color:var(--ion-color-base)}.item-radio.item-ios ion-label{margin-left:0}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){.item-radio.item-ios ion-label{margin-left:unset;-webkit-margin-start:0;margin-inline-start:0}}.radio-inner{width:33%;height:50%}:host(.radio-checked) .radio-inner{transform:rotate(45deg);border-width:2px;border-top-width:0;border-left-width:0;border-style:solid;border-color:var(--color-checked)}:host(.radio-disabled){opacity:0.3}:host(.ion-focused) .radio-icon::after{border-radius:var(--inner-border-radius);left:-9px;top:-8px;display:block;position:absolute;width:36px;height:36px;background:var(--ion-color-primary-tint, #4c8dff);content:\"\";opacity:0.2}:host-context([dir=rtl]):host(.ion-focused) .radio-icon::after,:host-context([dir=rtl]).ion-focused .radio-icon::after{left:unset;right:unset;right:-9px}:host(.in-item){margin-left:10px;margin-right:11px;margin-top:8px;margin-bottom:8px;display:block;position:static}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item){margin-left:unset;margin-right:unset;-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:11px;margin-inline-end:11px}}:host(.in-item[slot=start]){margin-left:3px;margin-right:21px;margin-top:8px;margin-bottom:8px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:3px;margin-inline-start:3px;-webkit-margin-end:21px;margin-inline-end:21px}}";
2244
+
2245
+ const radioMdCss = ":host{--inner-border-radius:50%;display:inline-block;position:relative;box-sizing:border-box;user-select:none;z-index:2}:host(.radio-disabled){pointer-events:none}.radio-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%;contain:layout size style}.radio-icon,.radio-inner{box-sizing:border-box}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none;display:flex;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}input{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}:host(:focus){outline:none}:host{--color:var(--ion-color-step-400, #999999);--color-checked:var(--ion-color-primary, #3880ff);--border-width:2px;--border-style:solid;--border-radius:50%;width:20px;height:20px}:host(.ion-color) .radio-inner{background:var(--ion-color-base)}:host(.ion-color.radio-checked) .radio-icon{border-color:var(--ion-color-base)}.radio-icon{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;border-radius:var(--border-radius);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--color)}.radio-inner{border-radius:var(--inner-border-radius);width:calc(50% + var(--border-width));height:calc(50% + var(--border-width));transform:scale3d(0, 0, 0);transition:transform 280ms cubic-bezier(0.4, 0, 0.2, 1);background:var(--color-checked)}:host(.radio-checked) .radio-icon{border-color:var(--color-checked)}:host(.radio-checked) .radio-inner{transform:scale3d(1, 1, 1)}:host(.radio-disabled){opacity:0.3}:host(.ion-focused) .radio-icon::after{border-radius:var(--inner-border-radius);left:-12px;top:-12px;display:block;position:absolute;width:36px;height:36px;background:var(--ion-color-primary-tint, #4c8dff);content:\"\";opacity:0.2}:host-context([dir=rtl]):host(.ion-focused) .radio-icon::after,:host-context([dir=rtl]).ion-focused .radio-icon::after{left:unset;right:unset;right:-12px}:host(.in-item){margin-left:0;margin-right:0;margin-top:9px;margin-bottom:9px;display:block;position:static}:host(.in-item[slot=start]){margin-left:4px;margin-right:36px;margin-top:11px;margin-bottom:10px}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host(.in-item[slot=start]){margin-left:unset;margin-right:unset;-webkit-margin-start:4px;margin-inline-start:4px;-webkit-margin-end:36px;margin-inline-end:36px}}";
2246
+
2247
+ const Radio = class {
2248
+ constructor(hostRef) {
2249
+ registerInstance(this, hostRef);
2250
+ this.ionStyle = createEvent(this, "ionStyle", 7);
2251
+ this.ionFocus = createEvent(this, "ionFocus", 7);
2252
+ this.ionBlur = createEvent(this, "ionBlur", 7);
2253
+ this.inputId = `ion-rb-${radioButtonIds++}`;
2254
+ this.radioGroup = null;
2255
+ /**
2256
+ * If `true`, the radio is selected.
2257
+ */
2258
+ this.checked = false;
2259
+ /**
2260
+ * The tabindex of the radio button.
2261
+ * @internal
2262
+ */
2263
+ this.buttonTabindex = -1;
2264
+ /**
2265
+ * The name of the control, which is submitted with the form data.
2266
+ */
2267
+ this.name = this.inputId;
2268
+ /**
2269
+ * If `true`, the user cannot interact with the radio.
2270
+ */
2271
+ this.disabled = false;
2272
+ this.updateState = () => {
2273
+ if (this.radioGroup) {
2274
+ this.checked = this.radioGroup.value === this.value;
2275
+ }
2276
+ };
2277
+ this.onClick = () => {
2278
+ this.checked = this.nativeInput.checked;
2279
+ };
2280
+ this.onFocus = () => {
2281
+ this.ionFocus.emit();
2282
+ };
2283
+ this.onBlur = () => {
2284
+ this.ionBlur.emit();
2285
+ };
2286
+ }
2287
+ /** @internal */
2288
+ async setFocus(ev) {
2289
+ ev.stopPropagation();
2290
+ ev.preventDefault();
2291
+ this.el.focus();
2292
+ }
2293
+ /** @internal */
2294
+ async setButtonTabindex(value) {
2295
+ this.buttonTabindex = value;
2296
+ }
2297
+ connectedCallback() {
2298
+ if (this.value === undefined) {
2299
+ this.value = this.inputId;
2300
+ }
2301
+ const radioGroup = (this.radioGroup = this.el.closest('ion-radio-group'));
2302
+ if (radioGroup) {
2303
+ this.updateState();
2304
+ addEventListener(radioGroup, 'ionChange', this.updateState);
2305
+ }
2306
+ }
2307
+ disconnectedCallback() {
2308
+ const radioGroup = this.radioGroup;
2309
+ if (radioGroup) {
2310
+ removeEventListener(radioGroup, 'ionChange', this.updateState);
2311
+ this.radioGroup = null;
2312
+ }
2313
+ }
2314
+ componentWillLoad() {
2315
+ this.emitStyle();
2316
+ }
2317
+ emitStyle() {
2318
+ this.ionStyle.emit({
2319
+ 'radio-checked': this.checked,
2320
+ 'interactive-disabled': this.disabled,
2321
+ });
2322
+ }
2323
+ render() {
2324
+ const { inputId, disabled, checked, color, el, buttonTabindex } = this;
2325
+ const mode = getIonMode(this);
2326
+ const { label, labelId, labelText } = getAriaLabel(el, inputId);
2327
+ return (h(Host, { "aria-checked": `${checked}`, "aria-hidden": disabled ? 'true' : null, "aria-labelledby": label ? labelId : null, role: "radio", tabindex: buttonTabindex, onFocus: this.onFocus, onBlur: this.onBlur, onClick: this.onClick, class: createColorClasses(color, {
2328
+ [mode]: true,
2329
+ 'in-item': hostContext('ion-item', el),
2330
+ interactive: true,
2331
+ 'radio-checked': checked,
2332
+ 'radio-disabled': disabled,
2333
+ }) }, h("div", { class: "radio-icon", part: "container" }, h("div", { class: "radio-inner", part: "mark" }), h("div", { class: "radio-ripple" })), h("label", { htmlFor: inputId }, labelText), h("input", { type: "radio", checked: checked, disabled: disabled, tabindex: "-1", id: inputId, ref: (nativeEl) => (this.nativeInput = nativeEl) })));
2334
+ }
2335
+ get el() { return getElement(this); }
2336
+ static get watchers() { return {
2337
+ "color": ["emitStyle"],
2338
+ "checked": ["emitStyle"],
2339
+ "disabled": ["emitStyle"]
2340
+ }; }
2341
+ };
2342
+ let radioButtonIds = 0;
2343
+ Radio.style = {
2344
+ ios: radioIosCss,
2345
+ md: radioMdCss
2346
+ };
2347
+
2348
+ const RadioGroup = class {
2349
+ constructor(hostRef) {
2350
+ registerInstance(this, hostRef);
2351
+ this.ionChange = createEvent(this, "ionChange", 7);
2352
+ this.inputId = `ion-rg-${radioGroupIds++}`;
2353
+ this.labelId = `${this.inputId}-lbl`;
2354
+ /**
2355
+ * If `true`, the radios can be deselected.
2356
+ */
2357
+ this.allowEmptySelection = false;
2358
+ /**
2359
+ * The name of the control, which is submitted with the form data.
2360
+ */
2361
+ this.name = this.inputId;
2362
+ this.setRadioTabindex = (value) => {
2363
+ const radios = this.getRadios();
2364
+ // Get the first radio that is not disabled and the checked one
2365
+ const first = radios.find((radio) => !radio.disabled);
2366
+ const checked = radios.find((radio) => radio.value === value && !radio.disabled);
2367
+ if (!first && !checked) {
2368
+ return;
2369
+ }
2370
+ // If an enabled checked radio exists, set it to be the focusable radio
2371
+ // otherwise we default to focus the first radio
2372
+ const focusable = checked || first;
2373
+ for (const radio of radios) {
2374
+ const tabindex = radio === focusable ? 0 : -1;
2375
+ radio.setButtonTabindex(tabindex);
2376
+ }
2377
+ };
2378
+ this.onClick = (ev) => {
2379
+ ev.preventDefault();
2380
+ const selectedRadio = ev.target && ev.target.closest('ion-radio');
2381
+ if (selectedRadio) {
2382
+ const currentValue = this.value;
2383
+ const newValue = selectedRadio.value;
2384
+ if (newValue !== currentValue) {
2385
+ this.value = newValue;
2386
+ }
2387
+ else if (this.allowEmptySelection) {
2388
+ this.value = undefined;
2389
+ }
2390
+ }
2391
+ };
2392
+ }
2393
+ valueChanged(value) {
2394
+ this.setRadioTabindex(value);
2395
+ this.ionChange.emit({ value });
2396
+ }
2397
+ componentDidLoad() {
2398
+ this.setRadioTabindex(this.value);
2399
+ }
2400
+ async connectedCallback() {
2401
+ // Get the list header if it exists and set the id
2402
+ // this is used to set aria-labelledby
2403
+ const header = this.el.querySelector('ion-list-header') || this.el.querySelector('ion-item-divider');
2404
+ if (header) {
2405
+ const label = (this.label = header.querySelector('ion-label'));
2406
+ if (label) {
2407
+ this.labelId = label.id = this.name + '-lbl';
2408
+ }
2409
+ }
2410
+ }
2411
+ getRadios() {
2412
+ return Array.from(this.el.querySelectorAll('ion-radio'));
2413
+ }
2414
+ onKeydown(ev) {
2415
+ const inSelectPopover = !!this.el.closest('ion-select-popover');
2416
+ if (ev.target && !this.el.contains(ev.target)) {
2417
+ return;
2418
+ }
2419
+ // Get all radios inside of the radio group and then
2420
+ // filter out disabled radios since we need to skip those
2421
+ const radios = this.getRadios().filter((radio) => !radio.disabled);
2422
+ // Only move the radio if the current focus is in the radio group
2423
+ if (ev.target && radios.includes(ev.target)) {
2424
+ const index = radios.findIndex((radio) => radio === ev.target);
2425
+ const current = radios[index];
2426
+ let next;
2427
+ // If hitting arrow down or arrow right, move to the next radio
2428
+ // If we're on the last radio, move to the first radio
2429
+ if (['ArrowDown', 'ArrowRight'].includes(ev.code)) {
2430
+ next = index === radios.length - 1 ? radios[0] : radios[index + 1];
2431
+ }
2432
+ // If hitting arrow up or arrow left, move to the previous radio
2433
+ // If we're on the first radio, move to the last radio
2434
+ if (['ArrowUp', 'ArrowLeft'].includes(ev.code)) {
2435
+ next = index === 0 ? radios[radios.length - 1] : radios[index - 1];
2436
+ }
2437
+ if (next && radios.includes(next)) {
2438
+ next.setFocus(ev);
2439
+ if (!inSelectPopover) {
2440
+ this.value = next.value;
2441
+ }
2442
+ }
2443
+ // Update the radio group value when a user presses the
2444
+ // space bar on top of a selected radio
2445
+ if (['Space'].includes(ev.code)) {
2446
+ this.value = this.allowEmptySelection && this.value !== undefined ? undefined : current.value;
2447
+ // Prevent browsers from jumping
2448
+ // to the bottom of the screen
2449
+ ev.preventDefault();
2450
+ }
2451
+ }
2452
+ }
2453
+ render() {
2454
+ const { label, labelId } = this;
2455
+ const mode = getIonMode(this);
2456
+ return h(Host, { role: "radiogroup", "aria-labelledby": label ? labelId : null, onClick: this.onClick, class: mode });
2457
+ }
2458
+ get el() { return getElement(this); }
2459
+ static get watchers() { return {
2460
+ "value": ["valueChanged"]
2461
+ }; }
2462
+ };
2463
+ let radioGroupIds = 0;
2464
+
2465
+ /*!
2466
+ * (C) Ionic http://ionicframework.com - MIT License
2467
+ */
2468
+ const watchForOptions = (containerEl, tagName, onChange) => {
2469
+ if (typeof MutationObserver === 'undefined') {
2470
+ return;
2471
+ }
2472
+ const mutation = new MutationObserver((mutationList) => {
2473
+ onChange(getSelectedOption(mutationList, tagName));
2474
+ });
2475
+ mutation.observe(containerEl, {
2476
+ childList: true,
2477
+ subtree: true,
2478
+ });
2479
+ return mutation;
2480
+ };
2481
+ const getSelectedOption = (mutationList, tagName) => {
2482
+ let newOption;
2483
+ mutationList.forEach((mut) => {
2484
+ // eslint-disable-next-line @typescript-eslint/prefer-for-of
2485
+ for (let i = 0; i < mut.addedNodes.length; i++) {
2486
+ newOption = findCheckedOption(mut.addedNodes[i], tagName) || newOption;
2487
+ }
2488
+ });
2489
+ return newOption;
2490
+ };
2491
+ const findCheckedOption = (el, tagName) => {
2492
+ if (el.nodeType !== 1) {
2493
+ return undefined;
2494
+ }
2495
+ const options = el.tagName === tagName.toUpperCase() ? [el] : Array.from(el.querySelectorAll(tagName));
2496
+ return options.find((o) => o.value === el.value);
2497
+ };
2498
+
2499
+ const selectIosCss = ":host{--placeholder-color:currentColor;--placeholder-opacity:0.33;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:flex;position:relative;align-items:center;font-family:var(--ion-font-family, inherit);overflow:hidden;z-index:2}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}:host(.in-item){position:static;max-width:45%}:host(.select-disabled){opacity:0.4;pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none;display:flex;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{position:relative}.select-text{flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-icon-inner{left:5px;top:50%;margin-top:-2px;position:absolute;width:0;height:0;border-top:5px solid;border-right:5px solid transparent;border-left:5px solid transparent;color:currentColor;pointer-events:none}[dir=rtl] .select-icon-inner,:host-context([dir=rtl]) .select-icon-inner{left:unset;right:unset;right:5px}:host{--padding-top:10px;--padding-end:10px;--padding-bottom:10px;--padding-start:20px}.select-icon{width:12px;height:18px;opacity:0.33}";
2500
+
2501
+ const selectMdCss = ":host{--placeholder-color:currentColor;--placeholder-opacity:0.33;padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:flex;position:relative;align-items:center;font-family:var(--ion-font-family, inherit);overflow:hidden;z-index:2}@supports (margin-inline-start: 0) or (-webkit-margin-start: 0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}:host(.in-item){position:static;max-width:45%}:host(.select-disabled){opacity:0.4;pointer-events:none}:host(.ion-focused) button{border:2px solid #5e9ed6}.select-placeholder{color:var(--placeholder-color);opacity:var(--placeholder-opacity)}label{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;appearance:none;outline:none;display:flex;align-items:center;opacity:0}[dir=rtl] label,:host-context([dir=rtl]) label{left:unset;right:unset;right:0}label::-moz-focus-inner{border:0}button{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;clip:rect(0 0 0 0);opacity:0;overflow:hidden;-webkit-appearance:none;-moz-appearance:none}.select-icon{position:relative}.select-text{flex:1;min-width:16px;font-size:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-icon-inner{left:5px;top:50%;margin-top:-2px;position:absolute;width:0;height:0;border-top:5px solid;border-right:5px solid transparent;border-left:5px solid transparent;color:currentColor;pointer-events:none}[dir=rtl] .select-icon-inner,:host-context([dir=rtl]) .select-icon-inner{left:unset;right:unset;right:5px}:host{--padding-top:10px;--padding-end:0;--padding-bottom:10px;--padding-start:16px}.select-icon{width:19px;height:19px;transition:transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);opacity:0.55}:host-context(.item-label-stacked) .select-icon,:host-context(.item-label-floating:not(.item-fill-outline)) .select-icon,:host-context(.item-label-floating.item-fill-outline){transform:translate3d(0, -9px, 0)}:host-context(.item-has-focus) .select-icon{transform:rotate(180deg)}:host-context(.item-has-focus.item-label-stacked) .select-icon,:host-context(.item-has-focus.item-label-floating:not(.item-fill-outline)) .select-icon{transform:translate3d(0, -9px, 0) rotate(180deg)}:host-context(ion-item.ion-focused) .select-icon,:host-context(.item-has-focus) .select-icon{color:var(--highlight-color-focused);opacity:1}";
2502
+
2503
+ const Select = class {
2504
+ constructor(hostRef) {
2505
+ registerInstance(this, hostRef);
2506
+ this.ionChange = createEvent(this, "ionChange", 7);
2507
+ this.ionCancel = createEvent(this, "ionCancel", 7);
2508
+ this.ionDismiss = createEvent(this, "ionDismiss", 7);
2509
+ this.ionFocus = createEvent(this, "ionFocus", 7);
2510
+ this.ionBlur = createEvent(this, "ionBlur", 7);
2511
+ this.ionStyle = createEvent(this, "ionStyle", 7);
2512
+ this.inputId = `ion-sel-${selectIds++}`;
2513
+ this.didInit = false;
2514
+ this.isExpanded = false;
2515
+ /**
2516
+ * If `true`, the user cannot interact with the select.
2517
+ */
2518
+ this.disabled = false;
2519
+ /**
2520
+ * The text to display on the cancel button.
2521
+ */
2522
+ this.cancelText = 'Cancel';
2523
+ /**
2524
+ * The text to display on the ok button.
2525
+ */
2526
+ this.okText = 'OK';
2527
+ /**
2528
+ * The name of the control, which is submitted with the form data.
2529
+ */
2530
+ this.name = this.inputId;
2531
+ /**
2532
+ * If `true`, the select can accept multiple values.
2533
+ */
2534
+ this.multiple = false;
2535
+ /**
2536
+ * The interface the select should use: `action-sheet`, `popover` or `alert`.
2537
+ */
2538
+ this.interface = 'alert';
2539
+ /**
2540
+ * Any additional options that the `alert`, `action-sheet` or `popover` interface
2541
+ * can take. See the [ion-alert docs](./alert), the
2542
+ * [ion-action-sheet docs](./action-sheet) and the
2543
+ * [ion-popover docs](./popover) for the
2544
+ * create options for each interface.
2545
+ *
2546
+ * Note: `interfaceOptions` will not override `inputs` or `buttons` with the `alert` interface.
2547
+ */
2548
+ this.interfaceOptions = {};
2549
+ this.onClick = (ev) => {
2550
+ this.setFocus();
2551
+ this.open(ev);
2552
+ };
2553
+ this.onFocus = () => {
2554
+ this.ionFocus.emit();
2555
+ };
2556
+ this.onBlur = () => {
2557
+ this.ionBlur.emit();
2558
+ };
2559
+ }
2560
+ styleChanged() {
2561
+ this.emitStyle();
2562
+ }
2563
+ valueChanged() {
2564
+ this.emitStyle();
2565
+ // TODO: FW-1160 - Remove the `didInit` property when ionChange behavior is changed in v7.
2566
+ if (this.didInit) {
2567
+ this.ionChange.emit({
2568
+ value: this.value,
2569
+ });
2570
+ }
2571
+ }
2572
+ async connectedCallback() {
2573
+ this.updateOverlayOptions();
2574
+ this.emitStyle();
2575
+ this.mutationO = watchForOptions(this.el, 'ion-select-option', async () => {
2576
+ this.updateOverlayOptions();
2577
+ });
2578
+ }
2579
+ disconnectedCallback() {
2580
+ if (this.mutationO) {
2581
+ this.mutationO.disconnect();
2582
+ this.mutationO = undefined;
2583
+ }
2584
+ }
2585
+ componentDidLoad() {
2586
+ this.didInit = true;
2587
+ }
2588
+ /**
2589
+ * Open the select overlay. The overlay is either an alert, action sheet, or popover,
2590
+ * depending on the `interface` property on the `ion-select`.
2591
+ *
2592
+ * @param event The user interface event that called the open.
2593
+ */
2594
+ async open(event) {
2595
+ if (this.disabled || this.isExpanded) {
2596
+ return undefined;
2597
+ }
2598
+ this.isExpanded = true;
2599
+ const overlay = (this.overlay = await this.createOverlay(event));
2600
+ overlay.onDidDismiss().then(() => {
2601
+ this.overlay = undefined;
2602
+ this.isExpanded = false;
2603
+ this.ionDismiss.emit();
2604
+ this.setFocus();
2605
+ });
2606
+ await overlay.present();
2607
+ // focus selected option for popovers
2608
+ if (this.interface === 'popover') {
2609
+ let indexOfSelected = this.childOpts.map((o) => o.value).indexOf(this.value);
2610
+ indexOfSelected = indexOfSelected > -1 ? indexOfSelected : 0; // default to first option if nothing selected
2611
+ const selectedEl = overlay.querySelector(`.select-interface-option:nth-child(${indexOfSelected + 1})`);
2612
+ if (selectedEl) {
2613
+ focusElement(selectedEl);
2614
+ }
2615
+ }
2616
+ return overlay;
2617
+ }
2618
+ createOverlay(ev) {
2619
+ let selectInterface = this.interface;
2620
+ if (selectInterface === 'action-sheet' && this.multiple) {
2621
+ console.warn(`Select interface cannot be "${selectInterface}" with a multi-value select. Using the "alert" interface instead.`);
2622
+ selectInterface = 'alert';
2623
+ }
2624
+ if (selectInterface === 'popover' && !ev) {
2625
+ console.warn(`Select interface cannot be a "${selectInterface}" without passing an event. Using the "alert" interface instead.`);
2626
+ selectInterface = 'alert';
2627
+ }
2628
+ if (selectInterface === 'action-sheet') {
2629
+ return this.openActionSheet();
2630
+ }
2631
+ if (selectInterface === 'popover') {
2632
+ return this.openPopover(ev);
2633
+ }
2634
+ return this.openAlert();
2635
+ }
2636
+ updateOverlayOptions() {
2637
+ const overlay = this.overlay;
2638
+ if (!overlay) {
2639
+ return;
2640
+ }
2641
+ const childOpts = this.childOpts;
2642
+ const value = this.value;
2643
+ switch (this.interface) {
2644
+ case 'action-sheet':
2645
+ overlay.buttons = this.createActionSheetButtons(childOpts, value);
2646
+ break;
2647
+ case 'popover':
2648
+ const popover = overlay.querySelector('ion-select-popover');
2649
+ if (popover) {
2650
+ popover.options = this.createPopoverOptions(childOpts, value);
2651
+ }
2652
+ break;
2653
+ case 'alert':
2654
+ const inputType = this.multiple ? 'checkbox' : 'radio';
2655
+ overlay.inputs = this.createAlertInputs(childOpts, inputType, value);
2656
+ break;
2657
+ }
2658
+ }
2659
+ createActionSheetButtons(data, selectValue) {
2660
+ const actionSheetButtons = data.map((option) => {
2661
+ const value = getOptionValue(option);
2662
+ // Remove hydrated before copying over classes
2663
+ const copyClasses = Array.from(option.classList)
2664
+ .filter((cls) => cls !== 'hydrated')
2665
+ .join(' ');
2666
+ const optClass = `${OPTION_CLASS} ${copyClasses}`;
2667
+ return {
2668
+ role: isOptionSelected(selectValue, value, this.compareWith) ? 'selected' : '',
2669
+ text: option.textContent,
2670
+ cssClass: optClass,
2671
+ handler: () => {
2672
+ this.value = value;
2673
+ },
2674
+ };
2675
+ });
2676
+ // Add "cancel" button
2677
+ actionSheetButtons.push({
2678
+ text: this.cancelText,
2679
+ role: 'cancel',
2680
+ handler: () => {
2681
+ this.ionCancel.emit();
2682
+ },
2683
+ });
2684
+ return actionSheetButtons;
2685
+ }
2686
+ createAlertInputs(data, inputType, selectValue) {
2687
+ const alertInputs = data.map((option) => {
2688
+ const value = getOptionValue(option);
2689
+ // Remove hydrated before copying over classes
2690
+ const copyClasses = Array.from(option.classList)
2691
+ .filter((cls) => cls !== 'hydrated')
2692
+ .join(' ');
2693
+ const optClass = `${OPTION_CLASS} ${copyClasses}`;
2694
+ return {
2695
+ type: inputType,
2696
+ cssClass: optClass,
2697
+ label: option.textContent || '',
2698
+ value,
2699
+ checked: isOptionSelected(selectValue, value, this.compareWith),
2700
+ disabled: option.disabled,
2701
+ };
2702
+ });
2703
+ return alertInputs;
2704
+ }
2705
+ createPopoverOptions(data, selectValue) {
2706
+ const popoverOptions = data.map((option) => {
2707
+ const value = getOptionValue(option);
2708
+ // Remove hydrated before copying over classes
2709
+ const copyClasses = Array.from(option.classList)
2710
+ .filter((cls) => cls !== 'hydrated')
2711
+ .join(' ');
2712
+ const optClass = `${OPTION_CLASS} ${copyClasses}`;
2713
+ return {
2714
+ text: option.textContent || '',
2715
+ cssClass: optClass,
2716
+ value,
2717
+ checked: isOptionSelected(selectValue, value, this.compareWith),
2718
+ disabled: option.disabled,
2719
+ handler: (selected) => {
2720
+ this.value = selected;
2721
+ if (!this.multiple) {
2722
+ this.close();
2723
+ }
2724
+ },
2725
+ };
2726
+ });
2727
+ return popoverOptions;
2728
+ }
2729
+ async openPopover(ev) {
2730
+ const interfaceOptions = this.interfaceOptions;
2731
+ const mode = getIonMode(this);
2732
+ const showBackdrop = mode === 'md' ? false : true;
2733
+ const multiple = this.multiple;
2734
+ const value = this.value;
2735
+ let event = ev;
2736
+ let size = 'auto';
2737
+ const item = this.el.closest('ion-item');
2738
+ // If the select is inside of an item containing a floating
2739
+ // or stacked label then the popover should take up the
2740
+ // full width of the item when it presents
2741
+ if (item && (item.classList.contains('item-label-floating') || item.classList.contains('item-label-stacked'))) {
2742
+ event = Object.assign(Object.assign({}, ev), { detail: {
2743
+ ionShadowTarget: item,
2744
+ } });
2745
+ size = 'cover';
2746
+ }
2747
+ const popoverOpts = Object.assign(Object.assign({ mode,
2748
+ event, alignment: 'center', size,
2749
+ showBackdrop }, interfaceOptions), { component: 'ion-select-popover', cssClass: ['select-popover', interfaceOptions.cssClass], componentProps: {
2750
+ header: interfaceOptions.header,
2751
+ subHeader: interfaceOptions.subHeader,
2752
+ message: interfaceOptions.message,
2753
+ multiple,
2754
+ value,
2755
+ options: this.createPopoverOptions(this.childOpts, value),
2756
+ } });
2757
+ return popoverController.create(popoverOpts);
2758
+ }
2759
+ async openActionSheet() {
2760
+ const mode = getIonMode(this);
2761
+ const interfaceOptions = this.interfaceOptions;
2762
+ const actionSheetOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { buttons: this.createActionSheetButtons(this.childOpts, this.value), cssClass: ['select-action-sheet', interfaceOptions.cssClass] });
2763
+ return actionSheetController.create(actionSheetOpts);
2764
+ }
2765
+ async openAlert() {
2766
+ const label = this.getLabel();
2767
+ const labelText = label ? label.textContent : null;
2768
+ const interfaceOptions = this.interfaceOptions;
2769
+ const inputType = this.multiple ? 'checkbox' : 'radio';
2770
+ const mode = getIonMode(this);
2771
+ const alertOpts = Object.assign(Object.assign({ mode }, interfaceOptions), { header: interfaceOptions.header ? interfaceOptions.header : labelText, inputs: this.createAlertInputs(this.childOpts, inputType, this.value), buttons: [
2772
+ {
2773
+ text: this.cancelText,
2774
+ role: 'cancel',
2775
+ handler: () => {
2776
+ this.ionCancel.emit();
2777
+ },
2778
+ },
2779
+ {
2780
+ text: this.okText,
2781
+ handler: (selectedValues) => {
2782
+ this.value = selectedValues;
2783
+ },
2784
+ },
2785
+ ], cssClass: [
2786
+ 'select-alert',
2787
+ interfaceOptions.cssClass,
2788
+ this.multiple ? 'multiple-select-alert' : 'single-select-alert',
2789
+ ] });
2790
+ return alertController.create(alertOpts);
2791
+ }
2792
+ /**
2793
+ * Close the select interface.
2794
+ */
2795
+ close() {
2796
+ // TODO check !this.overlay || !this.isFocus()
2797
+ if (!this.overlay) {
2798
+ return Promise.resolve(false);
2799
+ }
2800
+ return this.overlay.dismiss();
2801
+ }
2802
+ getLabel() {
2803
+ return findItemLabel(this.el);
2804
+ }
2805
+ hasValue() {
2806
+ return this.getText() !== '';
2807
+ }
2808
+ get childOpts() {
2809
+ return Array.from(this.el.querySelectorAll('ion-select-option'));
2810
+ }
2811
+ getText() {
2812
+ const selectedText = this.selectedText;
2813
+ if (selectedText != null && selectedText !== '') {
2814
+ return selectedText;
2815
+ }
2816
+ return generateText(this.childOpts, this.value, this.compareWith);
2817
+ }
2818
+ setFocus() {
2819
+ if (this.focusEl) {
2820
+ this.focusEl.focus();
2821
+ }
2822
+ }
2823
+ emitStyle() {
2824
+ this.ionStyle.emit({
2825
+ interactive: true,
2826
+ 'interactive-disabled': this.disabled,
2827
+ select: true,
2828
+ 'select-disabled': this.disabled,
2829
+ 'has-placeholder': this.placeholder !== undefined,
2830
+ 'has-value': this.hasValue(),
2831
+ 'has-focus': this.isExpanded,
2832
+ });
2833
+ }
2834
+ render() {
2835
+ const { disabled, el, inputId, isExpanded, name, placeholder, value } = this;
2836
+ const mode = getIonMode(this);
2837
+ const { labelText, labelId } = getAriaLabel(el, inputId);
2838
+ renderHiddenInput(true, el, name, parseValue(value), disabled);
2839
+ const displayValue = this.getText();
2840
+ let addPlaceholderClass = false;
2841
+ let selectText = displayValue;
2842
+ if (selectText === '' && placeholder !== undefined) {
2843
+ selectText = placeholder;
2844
+ addPlaceholderClass = true;
2845
+ }
2846
+ const selectTextClasses = {
2847
+ 'select-text': true,
2848
+ 'select-placeholder': addPlaceholderClass,
2849
+ };
2850
+ const textPart = addPlaceholderClass ? 'placeholder' : 'text';
2851
+ // If there is a label then we need to concatenate it with the
2852
+ // current value (or placeholder) and a comma so it separates
2853
+ // nicely when the screen reader announces it, otherwise just
2854
+ // announce the value / placeholder
2855
+ const displayLabel = labelText !== undefined ? (selectText !== '' ? `${selectText}, ${labelText}` : labelText) : selectText;
2856
+ return (h(Host, { onClick: this.onClick, role: "button", "aria-haspopup": "listbox", "aria-disabled": disabled ? 'true' : null, "aria-label": displayLabel, class: {
2857
+ [mode]: true,
2858
+ 'in-item': hostContext('ion-item', el),
2859
+ 'select-disabled': disabled,
2860
+ 'select-expanded': isExpanded,
2861
+ } }, h("div", { "aria-hidden": "true", class: selectTextClasses, part: textPart }, selectText), h("div", { class: "select-icon", role: "presentation", part: "icon" }, h("div", { class: "select-icon-inner" })), h("label", { id: labelId }, displayLabel), h("button", { type: "button", disabled: disabled, id: inputId, "aria-labelledby": labelId, "aria-haspopup": "listbox", "aria-expanded": `${isExpanded}`, onFocus: this.onFocus, onBlur: this.onBlur, ref: (focusEl) => (this.focusEl = focusEl) })));
2862
+ }
2863
+ get el() { return getElement(this); }
2864
+ static get watchers() { return {
2865
+ "disabled": ["styleChanged"],
2866
+ "placeholder": ["styleChanged"],
2867
+ "isExpanded": ["styleChanged"],
2868
+ "value": ["valueChanged"]
2869
+ }; }
2870
+ };
2871
+ const isOptionSelected = (currentValue, compareValue, compareWith) => {
2872
+ if (currentValue === undefined) {
2873
+ return false;
2874
+ }
2875
+ if (Array.isArray(currentValue)) {
2876
+ return currentValue.some((val) => compareOptions(val, compareValue, compareWith));
2877
+ }
2878
+ else {
2879
+ return compareOptions(currentValue, compareValue, compareWith);
2880
+ }
2881
+ };
2882
+ const getOptionValue = (el) => {
2883
+ const value = el.value;
2884
+ return value === undefined ? el.textContent || '' : value;
2885
+ };
2886
+ const parseValue = (value) => {
2887
+ if (value == null) {
2888
+ return undefined;
2889
+ }
2890
+ if (Array.isArray(value)) {
2891
+ return value.join(',');
2892
+ }
2893
+ return value.toString();
2894
+ };
2895
+ const compareOptions = (currentValue, compareValue, compareWith) => {
2896
+ if (typeof compareWith === 'function') {
2897
+ return compareWith(currentValue, compareValue);
2898
+ }
2899
+ else if (typeof compareWith === 'string') {
2900
+ return currentValue[compareWith] === compareValue[compareWith];
2901
+ }
2902
+ else {
2903
+ return Array.isArray(compareValue) ? compareValue.includes(currentValue) : currentValue === compareValue;
2904
+ }
2905
+ };
2906
+ const generateText = (opts, value, compareWith) => {
2907
+ if (value === undefined) {
2908
+ return '';
2909
+ }
2910
+ if (Array.isArray(value)) {
2911
+ return value
2912
+ .map((v) => textForValue(opts, v, compareWith))
2913
+ .filter((opt) => opt !== null)
2914
+ .join(', ');
2915
+ }
2916
+ else {
2917
+ return textForValue(opts, value, compareWith) || '';
2918
+ }
2919
+ };
2920
+ const textForValue = (opts, value, compareWith) => {
2921
+ const selectOpt = opts.find((opt) => {
2922
+ return compareOptions(value, getOptionValue(opt), compareWith);
2923
+ });
2924
+ return selectOpt ? selectOpt.textContent : null;
2925
+ };
2926
+ let selectIds = 0;
2927
+ const OPTION_CLASS = 'select-interface-option';
2928
+ Select.style = {
2929
+ ios: selectIosCss,
2930
+ md: selectMdCss
2931
+ };
2932
+
2933
+ const selectOptionCss = ":host{display:none}";
2934
+
2935
+ const SelectOption = class {
2936
+ constructor(hostRef) {
2937
+ registerInstance(this, hostRef);
2938
+ this.inputId = `ion-selopt-${selectOptionIds++}`;
2939
+ /**
2940
+ * If `true`, the user cannot interact with the select option. This property does not apply when `interface="action-sheet"` as `ion-action-sheet` does not allow for disabled buttons.
2941
+ */
2942
+ this.disabled = false;
2943
+ }
2944
+ render() {
2945
+ return h(Host, { role: "option", id: this.inputId, class: getIonMode(this) });
2946
+ }
2947
+ get el() { return getElement(this); }
2948
+ };
2949
+ let selectOptionIds = 0;
2950
+ SelectOption.style = selectOptionCss;
2951
+
2952
+ const selectPopoverIosCss = ".sc-ion-select-popover-ios-h ion-list.sc-ion-select-popover-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-list-header.sc-ion-select-popover-ios,ion-label.sc-ion-select-popover-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}";
2953
+
2954
+ const selectPopoverMdCss = ".sc-ion-select-popover-md-h ion-list.sc-ion-select-popover-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-list-header.sc-ion-select-popover-md,ion-label.sc-ion-select-popover-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md{opacity:0}ion-item.sc-ion-select-popover-md{--inner-border-width:0}.item-radio-checked.sc-ion-select-popover-md{--background:rgba(var(--ion-color-primary-rgb, 56, 128, 255), 0.08);--background-focused:var(--ion-color-primary, #3880ff);--background-focused-opacity:0.2;--background-hover:var(--ion-color-primary, #3880ff);--background-hover-opacity:0.12}.item-checkbox-checked.sc-ion-select-popover-md{--background-activated:var(--ion-item-color, var(--ion-text-color, #000));--background-focused:var(--ion-item-color, var(--ion-text-color, #000));--background-hover:var(--ion-item-color, var(--ion-text-color, #000));--color:var(--ion-color-primary, #3880ff)}";
2955
+
2956
+ const SelectPopover = class {
2957
+ constructor(hostRef) {
2958
+ registerInstance(this, hostRef);
2959
+ /**
2960
+ * An array of options for the popover
2961
+ */
2962
+ this.options = [];
2963
+ }
2964
+ onSelect(ev) {
2965
+ this.setChecked(ev);
2966
+ this.callOptionHandler(ev);
2967
+ }
2968
+ findOptionFromEvent(ev) {
2969
+ const { options } = this;
2970
+ return options.find((o) => o.value === ev.target.value);
2971
+ }
2972
+ /**
2973
+ * When an option is selected we need to get the value(s)
2974
+ * of the selected option(s) and return it in the option
2975
+ * handler
2976
+ */
2977
+ callOptionHandler(ev) {
2978
+ const option = this.findOptionFromEvent(ev);
2979
+ const values = this.getValues(ev);
2980
+ if (option === null || option === void 0 ? void 0 : option.handler) {
2981
+ safeCall(option.handler, values);
2982
+ }
2983
+ }
2984
+ /**
2985
+ * This is required when selecting a radio that is already
2986
+ * selected because it will not trigger the ionChange event
2987
+ * but we still want to close the popover
2988
+ */
2989
+ rbClick(ev) {
2990
+ this.callOptionHandler(ev);
2991
+ }
2992
+ setChecked(ev) {
2993
+ const { multiple } = this;
2994
+ const option = this.findOptionFromEvent(ev);
2995
+ // this is a popover with checkboxes (multiple value select)
2996
+ // we need to set the checked value for this option
2997
+ if (multiple && option) {
2998
+ option.checked = ev.detail.checked;
2999
+ }
3000
+ }
3001
+ getValues(ev) {
3002
+ const { multiple, options } = this;
3003
+ if (multiple) {
3004
+ // this is a popover with checkboxes (multiple value select)
3005
+ // return an array of all the checked values
3006
+ return options.filter((o) => o.checked).map((o) => o.value);
3007
+ }
3008
+ // this is a popover with radio buttons (single value select)
3009
+ // return the value that was clicked, otherwise undefined
3010
+ const option = this.findOptionFromEvent(ev);
3011
+ return option ? option.value : undefined;
3012
+ }
3013
+ renderOptions(options) {
3014
+ const { multiple } = this;
3015
+ switch (multiple) {
3016
+ case true:
3017
+ return this.renderCheckboxOptions(options);
3018
+ default:
3019
+ return this.renderRadioOptions(options);
3020
+ }
3021
+ }
3022
+ renderCheckboxOptions(options) {
3023
+ return options.map((option) => (h("ion-item", { class: getClassMap(option.cssClass) }, h("ion-checkbox", { slot: "start", value: option.value, disabled: option.disabled, checked: option.checked }), h("ion-label", null, option.text))));
3024
+ }
3025
+ renderRadioOptions(options) {
3026
+ const checked = options.filter((o) => o.checked).map((o) => o.value)[0];
3027
+ return (h("ion-radio-group", { value: checked }, options.map((option) => (h("ion-item", { class: getClassMap(option.cssClass) }, h("ion-label", null, option.text), h("ion-radio", { value: option.value, disabled: option.disabled, onClick: (ev) => this.rbClick(ev) }))))));
3028
+ }
3029
+ render() {
3030
+ const { header, message, options, subHeader } = this;
3031
+ const hasSubHeaderOrMessage = subHeader !== undefined || message !== undefined;
3032
+ return (h(Host, { class: getIonMode(this) }, h("ion-list", null, header !== undefined && h("ion-list-header", null, header), hasSubHeaderOrMessage && (h("ion-item", null, h("ion-label", { class: "ion-text-wrap" }, subHeader !== undefined && h("h3", null, subHeader), message !== undefined && h("p", null, message)))), this.renderOptions(options))));
3033
+ }
3034
+ };
3035
+ SelectPopover.style = {
3036
+ ios: selectPopoverIosCss,
3037
+ md: selectPopoverMdCss
3038
+ };
3039
+
3040
+ export { ActionSheet as ion_action_sheet, Alert as ion_alert, Checkbox as ion_checkbox, ListHeader as ion_list_header, Popover as ion_popover, Radio as ion_radio, RadioGroup as ion_radio_group, Select as ion_select, SelectOption as ion_select_option, SelectPopover as ion_select_popover };