@esri/solutions-components 0.8.36 → 0.8.38

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1183) hide show
  1. package/dist/assets/t9n/layer-list/resources_ar.json +1 -1
  2. package/dist/assets/t9n/layer-list/resources_bg.json +1 -1
  3. package/dist/assets/t9n/layer-list/resources_bs.json +1 -1
  4. package/dist/assets/t9n/layer-list/resources_ca.json +1 -1
  5. package/dist/assets/t9n/layer-list/resources_cs.json +1 -1
  6. package/dist/assets/t9n/layer-list/resources_da.json +1 -1
  7. package/dist/assets/t9n/layer-list/resources_de.json +1 -1
  8. package/dist/assets/t9n/layer-list/resources_el.json +1 -1
  9. package/dist/assets/t9n/layer-list/resources_es.json +1 -1
  10. package/dist/assets/t9n/layer-list/resources_et.json +1 -1
  11. package/dist/assets/t9n/layer-list/resources_fi.json +1 -1
  12. package/dist/assets/t9n/layer-list/resources_fr.json +1 -1
  13. package/dist/assets/t9n/layer-list/resources_he.json +1 -1
  14. package/dist/assets/t9n/layer-list/resources_hr.json +1 -1
  15. package/dist/assets/t9n/layer-list/resources_hu.json +1 -1
  16. package/dist/assets/t9n/layer-list/resources_id.json +1 -1
  17. package/dist/assets/t9n/layer-list/resources_it.json +1 -1
  18. package/dist/assets/t9n/layer-list/resources_ja.json +1 -1
  19. package/dist/assets/t9n/layer-list/resources_ko.json +1 -1
  20. package/dist/assets/t9n/layer-list/resources_lt.json +1 -1
  21. package/dist/assets/t9n/layer-list/resources_lv.json +1 -1
  22. package/dist/assets/t9n/layer-list/resources_nb.json +1 -1
  23. package/dist/assets/t9n/layer-list/resources_nl.json +1 -1
  24. package/dist/assets/t9n/layer-list/resources_pl.json +1 -1
  25. package/dist/assets/t9n/layer-list/resources_pt-BR.json +1 -1
  26. package/dist/assets/t9n/layer-list/resources_pt-PT.json +1 -1
  27. package/dist/assets/t9n/layer-list/resources_ro.json +1 -1
  28. package/dist/assets/t9n/layer-list/resources_ru.json +1 -1
  29. package/dist/assets/t9n/layer-list/resources_sk.json +1 -1
  30. package/dist/assets/t9n/layer-list/resources_sl.json +1 -1
  31. package/dist/assets/t9n/layer-list/resources_sr.json +1 -1
  32. package/dist/assets/t9n/layer-list/resources_sv.json +1 -1
  33. package/dist/assets/t9n/layer-list/resources_th.json +1 -1
  34. package/dist/assets/t9n/layer-list/resources_tr.json +1 -1
  35. package/dist/assets/t9n/layer-list/resources_uk.json +1 -1
  36. package/dist/assets/t9n/layer-list/resources_vi.json +1 -1
  37. package/dist/assets/t9n/layer-list/resources_zh-CN.json +1 -1
  38. package/dist/assets/t9n/layer-list/resources_zh-HK.json +1 -1
  39. package/dist/assets/t9n/layer-list/resources_zh-TW.json +1 -1
  40. package/dist/cjs/ExpandToggle-1ff416a1.js +118 -0
  41. package/dist/cjs/FloatingArrow-ba8caba2.js +50 -0
  42. package/dist/cjs/Heading-f1f9e2dd.js +25 -0
  43. package/dist/cjs/Validation-425b2de4.js +20 -0
  44. package/dist/cjs/ar-a2f57db2.js +105 -0
  45. package/dist/cjs/arcgis-login.cjs.entry.js +1 -1
  46. package/dist/cjs/basemap-gallery_7.cjs.entry.js +10 -2
  47. package/dist/cjs/bg-cb903045.js +83 -0
  48. package/dist/cjs/breakpoints-7d21666f.js +17 -0
  49. package/dist/cjs/browser-d12b6cd5.js +25 -0
  50. package/dist/cjs/bs-3690f22d.js +52 -0
  51. package/dist/cjs/buffer-tools_3.cjs.entry.js +4 -4
  52. package/dist/cjs/ca-fec18921.js +72 -0
  53. package/dist/cjs/calcite-accordion-item.cjs.entry.js +4 -4
  54. package/dist/cjs/calcite-accordion.cjs.entry.js +2 -2
  55. package/dist/cjs/calcite-action-bar.cjs.entry.js +7 -7
  56. package/dist/cjs/calcite-action-group.cjs.entry.js +6 -6
  57. package/dist/cjs/calcite-action-menu_3.cjs.entry.js +9 -9
  58. package/dist/cjs/calcite-action-pad_2.cjs.entry.js +10 -10
  59. package/dist/cjs/calcite-action_2.cjs.entry.js +7 -7
  60. package/dist/cjs/calcite-alert_4.cjs.entry.js +12 -12
  61. package/dist/cjs/calcite-avatar_2.cjs.entry.js +2 -2
  62. package/dist/cjs/calcite-block-section.cjs.entry.js +5 -5
  63. package/dist/cjs/calcite-block_5.cjs.entry.js +54 -53
  64. package/dist/cjs/calcite-button.cjs.entry.js +9 -9
  65. package/dist/cjs/calcite-card-group.cjs.entry.js +4 -4
  66. package/dist/cjs/calcite-card.cjs.entry.js +7 -7
  67. package/dist/cjs/calcite-carousel-item.cjs.entry.js +1 -1
  68. package/dist/cjs/calcite-carousel.cjs.entry.js +7 -7
  69. package/dist/cjs/calcite-checkbox.cjs.entry.js +5 -5
  70. package/dist/cjs/calcite-chip-group.cjs.entry.js +4 -4
  71. package/dist/cjs/calcite-chip_2.cjs.entry.js +10 -10
  72. package/dist/cjs/calcite-color-picker-hex-input_2.cjs.entry.js +2 -2
  73. package/dist/cjs/calcite-color-picker.cjs.entry.js +7 -7
  74. package/dist/cjs/calcite-combobox-item-group.cjs.entry.js +2 -2
  75. package/dist/cjs/calcite-combobox_3.cjs.entry.js +12 -12
  76. package/dist/cjs/calcite-date-picker-day_3.cjs.entry.js +8 -8
  77. package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +6 -6
  78. package/dist/cjs/calcite-dropdown_2.cjs.entry.js +8 -8
  79. package/dist/cjs/calcite-fab.cjs.entry.js +4 -4
  80. package/dist/cjs/calcite-filter_5.cjs.entry.js +7 -7
  81. package/dist/cjs/calcite-flow_6.cjs.entry.js +19 -24
  82. package/dist/cjs/calcite-icon.cjs.entry.js +2 -2
  83. package/dist/cjs/calcite-inline-editable.cjs.entry.js +7 -7
  84. package/dist/cjs/calcite-input-number.cjs.entry.js +9 -9
  85. package/dist/cjs/calcite-input-text.cjs.entry.js +9 -9
  86. package/dist/cjs/calcite-input-time-picker-686f45e7.js +1864 -0
  87. package/dist/cjs/calcite-input-time-picker.cjs.entry.js +12 -12
  88. package/dist/cjs/calcite-input-time-zone.cjs.entry.js +8 -8
  89. package/dist/cjs/calcite-input_2.cjs.entry.js +9 -9
  90. package/dist/cjs/calcite-label.cjs.entry.js +1 -1
  91. package/dist/cjs/calcite-link.cjs.entry.js +4 -4
  92. package/dist/cjs/calcite-list-item-group.cjs.entry.js +3 -3
  93. package/dist/cjs/calcite-menu-item.cjs.entry.js +5 -5
  94. package/dist/cjs/calcite-menu.cjs.entry.js +5 -5
  95. package/dist/cjs/calcite-meter.cjs.entry.js +5 -5
  96. package/dist/cjs/calcite-modal.cjs.entry.js +7 -7
  97. package/dist/cjs/calcite-navigation-logo.cjs.entry.js +4 -4
  98. package/dist/cjs/calcite-navigation.cjs.entry.js +2 -2
  99. package/dist/cjs/calcite-notice.cjs.entry.js +7 -7
  100. package/dist/cjs/calcite-option-group.cjs.entry.js +1 -1
  101. package/dist/cjs/calcite-option_2.cjs.entry.js +7 -7
  102. package/dist/cjs/calcite-pagination.cjs.entry.js +5 -5
  103. package/dist/cjs/calcite-panel_2.cjs.entry.js +9 -9
  104. package/dist/cjs/calcite-pick-list-group.cjs.entry.js +4 -4
  105. package/dist/cjs/calcite-pick-list-item.cjs.entry.js +8 -8
  106. package/dist/cjs/calcite-pick-list.cjs.entry.js +6 -6
  107. package/dist/cjs/calcite-radio-button-group.cjs.entry.js +4 -4
  108. package/dist/cjs/calcite-radio-button.cjs.entry.js +5 -5
  109. package/dist/cjs/calcite-rating.cjs.entry.js +8 -8
  110. package/dist/cjs/calcite-segmented-control_2.cjs.entry.js +7 -7
  111. package/dist/cjs/calcite-sheet.cjs.entry.js +4 -4
  112. package/dist/cjs/calcite-shell-center-row.cjs.entry.js +3 -3
  113. package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +15 -15
  114. package/dist/cjs/calcite-sortable-list.cjs.entry.js +4 -4
  115. package/dist/cjs/calcite-split-button.cjs.entry.js +4 -4
  116. package/dist/cjs/calcite-stepper-item.cjs.entry.js +8 -8
  117. package/dist/cjs/calcite-stepper.cjs.entry.js +4 -4
  118. package/dist/cjs/calcite-switch.cjs.entry.js +5 -5
  119. package/dist/cjs/calcite-table-cell_2.cjs.entry.js +7 -7
  120. package/dist/cjs/calcite-table-row.cjs.entry.js +3 -3
  121. package/dist/cjs/calcite-table.cjs.entry.js +6 -6
  122. package/dist/cjs/calcite-text-area.cjs.entry.js +9 -9
  123. package/dist/cjs/calcite-tile-group.cjs.entry.js +4 -4
  124. package/dist/cjs/calcite-tile-select-group.cjs.entry.js +3 -3
  125. package/dist/cjs/calcite-tile-select.cjs.entry.js +4 -4
  126. package/dist/cjs/calcite-tile.cjs.entry.js +4 -4
  127. package/dist/cjs/calcite-time-picker.cjs.entry.js +6 -6
  128. package/dist/cjs/calcite-tip-group.cjs.entry.js +1 -1
  129. package/dist/cjs/calcite-tip-manager.cjs.entry.js +5 -5
  130. package/dist/cjs/calcite-tip.cjs.entry.js +6 -6
  131. package/dist/cjs/calcite-tooltip.cjs.entry.js +4 -4
  132. package/dist/cjs/calcite-tree_2.cjs.entry.js +6 -6
  133. package/dist/cjs/card-manager_3.cjs.entry.js +6 -6
  134. package/dist/cjs/common-03600219.js +38 -0
  135. package/dist/cjs/conditionalSlot-349d1b3a.js +54 -0
  136. package/dist/cjs/consent-manager.cjs.entry.js +10 -1031
  137. package/dist/cjs/crowdsource-manager.cjs.entry.js +3 -3
  138. package/dist/cjs/crowdsource-reporter.cjs.entry.js +3 -3
  139. package/dist/cjs/cs-b061b441.js +148 -0
  140. package/dist/cjs/da-e3c379ae.js +67 -0
  141. package/dist/cjs/date-874bf94e.js +261 -0
  142. package/dist/cjs/de-65d2876f.js +92 -0
  143. package/dist/cjs/de-at-16b7b50e.js +91 -0
  144. package/dist/cjs/de-ch-11dcd113.js +91 -0
  145. package/dist/cjs/deduct-calculator.cjs.entry.js +2 -2
  146. package/dist/cjs/downloadUtils-839a1425.js +3165 -0
  147. package/dist/cjs/el-321d43b5.js +67 -0
  148. package/dist/cjs/en-au-c48e6b73.js +67 -0
  149. package/dist/cjs/en-ca-9cc0e8f7.js +66 -0
  150. package/dist/cjs/en-gb-8ced841b.js +70 -0
  151. package/dist/cjs/es-aca5e6b4.js +67 -0
  152. package/dist/cjs/es-mx-b69f0ebb.js +66 -0
  153. package/dist/cjs/et-7e29340d.js +93 -0
  154. package/dist/cjs/feature-comments.cjs.entry.js +1 -1
  155. package/dist/cjs/feature-form-flow-item.cjs.entry.js +1 -1
  156. package/dist/cjs/feature-list.cjs.entry.js +7 -7
  157. package/dist/cjs/features-flow-item.cjs.entry.js +1 -1
  158. package/dist/cjs/fi-f215f4d1.js +116 -0
  159. package/dist/cjs/floating-ui-beb70d3c.js +2295 -0
  160. package/dist/cjs/form-71a108a7.js +381 -0
  161. package/dist/cjs/fr-0daba4be.js +69 -0
  162. package/dist/cjs/fr-ch-76f752e9.js +67 -0
  163. package/dist/cjs/he-32860a76.js +106 -0
  164. package/dist/cjs/helpers-7cee3150.js +940 -0
  165. package/dist/cjs/hi-c5639f76.js +66 -0
  166. package/dist/cjs/hr-eb700fd5.js +81 -0
  167. package/dist/cjs/hu-e30e3d3a.js +89 -0
  168. package/dist/cjs/id-a3e96e5b.js +67 -0
  169. package/dist/cjs/index-97020c9d.js +201 -0
  170. package/dist/cjs/index-ff18be0d.js +1739 -0
  171. package/dist/cjs/index.es-dd4d4842.js +11317 -0
  172. package/dist/cjs/instant-apps-ckeditor-wrapper_3.cjs.entry.js +8 -8
  173. package/dist/cjs/instant-apps-control-panel.cjs.entry.js +3 -3
  174. package/dist/cjs/instant-apps-create.cjs.entry.js +52 -50
  175. package/dist/cjs/instant-apps-export.cjs.entry.js +6 -6
  176. package/dist/cjs/instant-apps-header.cjs.entry.js +6 -6
  177. package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +142 -141
  178. package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +6 -6
  179. package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +7 -7
  180. package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +11 -11
  181. package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +6 -6
  182. package/dist/cjs/instant-apps-keyboard-shortcuts.cjs.entry.js +5 -5
  183. package/dist/cjs/instant-apps-landing-page.cjs.entry.js +12 -12
  184. package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +8 -8
  185. package/dist/cjs/instant-apps-language-translator.cjs.entry.js +8 -8
  186. package/dist/cjs/instant-apps-measurement.cjs.entry.js +5 -5
  187. package/dist/cjs/instant-apps-popover.cjs.entry.js +5 -5
  188. package/dist/cjs/instant-apps-popovers.cjs.entry.js +2 -2
  189. package/dist/cjs/instant-apps-scoreboard.cjs.entry.js +6 -6
  190. package/dist/cjs/instant-apps-sign-in.cjs.entry.js +7 -7
  191. package/dist/cjs/instant-apps-splash.cjs.entry.js +11 -11
  192. package/dist/cjs/interactive-7e5c7df4.js +154 -0
  193. package/dist/cjs/it-acd3cf54.js +67 -0
  194. package/dist/cjs/it-ch-c78435e7.js +67 -0
  195. package/dist/cjs/ja-ede2132a.js +73 -0
  196. package/dist/cjs/ko-fcd96551.js +73 -0
  197. package/dist/cjs/languageSwitcher-1154d55d.js +60 -0
  198. package/dist/cjs/languageUtil-d23251cd.js +69 -0
  199. package/dist/cjs/layout-manager.cjs.entry.js +2 -2
  200. package/dist/cjs/list-flow-item.cjs.entry.js +1 -1
  201. package/dist/cjs/loadModules-4189814e.js +23 -0
  202. package/dist/cjs/loadable-5d538ba2.js +94 -0
  203. package/dist/cjs/loader.cjs.js +2 -2
  204. package/dist/cjs/locale-62f4cef2.js +91 -0
  205. package/dist/cjs/locale-6973733d.js +161 -0
  206. package/dist/cjs/locale-d2a1066a.js +584 -0
  207. package/dist/cjs/location-flow-item.cjs.entry.js +1 -1
  208. package/dist/cjs/lt-a30330ef.js +98 -0
  209. package/dist/cjs/lv-ac3b6560.js +67 -0
  210. package/dist/cjs/map-select-tools_3.cjs.entry.js +14 -12
  211. package/dist/cjs/mapViewUtils-78b14528.js +510 -0
  212. package/dist/cjs/mk-a3053dea.js +67 -0
  213. package/dist/cjs/mode-3478ba36.js +19 -0
  214. package/dist/cjs/nb-7ab0bac1.js +68 -0
  215. package/dist/cjs/nl-7fa437ef.js +68 -0
  216. package/dist/cjs/observers-2a59d471.js +55 -0
  217. package/dist/cjs/openCloseComponent-e752f2a5.js +92 -0
  218. package/dist/cjs/pci-calculator.cjs.entry.js +2 -2
  219. package/dist/cjs/pciUtils-f1adcf64.js +847 -0
  220. package/dist/cjs/pl-ea95b104.js +115 -0
  221. package/dist/cjs/popupUtils-bae7f923.js +111 -0
  222. package/dist/cjs/pt-472083c2.js +68 -0
  223. package/dist/cjs/pt-br-5f18543e.js +66 -0
  224. package/dist/cjs/public-notification.cjs.entry.js +33 -20
  225. package/dist/cjs/publicNotificationStore-691f6f30.js +47 -0
  226. package/dist/cjs/refine-results-flow-item.cjs.entry.js +1 -1
  227. package/dist/cjs/restHelpersGet-afc74285.js +919 -0
  228. package/dist/cjs/ro-e8b3d65c.js +67 -0
  229. package/dist/cjs/ru-becefd01.js +127 -0
  230. package/dist/cjs/share-item.cjs.entry.js +1 -1
  231. package/dist/cjs/shared-list-render-6491aae1.js +365 -0
  232. package/dist/cjs/sk-2f5fd4e0.js +149 -0
  233. package/dist/cjs/sl-3ae17da6.js +169 -0
  234. package/dist/cjs/solution-configuration.cjs.entry.js +6 -6
  235. package/dist/cjs/solution-contents_3.cjs.entry.js +7 -7
  236. package/dist/cjs/solution-item-icon.cjs.entry.js +1 -1
  237. package/dist/cjs/solution-resource-ffe3c333.js +145 -0
  238. package/dist/cjs/solution-store-c8bada29.js +1344 -0
  239. package/dist/cjs/solutions-components.cjs.js +3 -3
  240. package/dist/cjs/spatial-ref.cjs.entry.js +4 -4
  241. package/dist/cjs/sr-7d6b8d1b.js +102 -0
  242. package/dist/cjs/store-manager.cjs.entry.js +1 -1
  243. package/dist/cjs/styles-ef2b1e04.js +13 -0
  244. package/dist/cjs/sv-9c51da5c.js +72 -0
  245. package/dist/cjs/t9n-ef615628.js +100 -0
  246. package/dist/cjs/th-fec0a074.js +66 -0
  247. package/dist/cjs/time-089ab043.js +289 -0
  248. package/dist/cjs/tr-8d7c18a1.js +67 -0
  249. package/dist/cjs/uk-46a61312.js +105 -0
  250. package/dist/cjs/utils-1de4eaa0.js +130 -0
  251. package/dist/cjs/utils-d237cb85.js +65 -0
  252. package/dist/cjs/vi-4114aa90.js +71 -0
  253. package/dist/cjs/zh-cn-30aca6fe.js +95 -0
  254. package/dist/cjs/zh-hk-5971eb67.js +72 -0
  255. package/dist/cjs/zh-tw-5fb5e7a9.js +93 -0
  256. package/dist/collection/collection-manifest.json +1 -1
  257. package/dist/collection/components/consent-manager/consent-manager.js +1 -0
  258. package/dist/collection/components/feature-details/feature-details.js +10 -15
  259. package/dist/collection/components/floor-filter/floor-filter.js +8 -0
  260. package/dist/collection/components/map-select-tools/map-select-tools.js +21 -3
  261. package/dist/collection/components/public-notification/public-notification.js +42 -12
  262. package/dist/collection/components/refine-selection/refine-selection.js +19 -1
  263. package/dist/collection/utils/mapViewUtils.js +2 -0
  264. package/dist/collection/utils/mapViewUtils.ts +2 -0
  265. package/dist/collection/utils/pciUtils.js +1 -1
  266. package/dist/collection/utils/pciUtils.ts +2 -2
  267. package/dist/components/breakpoints.js +5 -5
  268. package/dist/components/button.js +1 -1
  269. package/dist/components/calcite-accordion-item.js +1 -1
  270. package/dist/components/calcite-navigation-logo.js +1 -1
  271. package/dist/components/calcite-stepper-item.js +1 -1
  272. package/dist/components/combobox-item.js +1 -1
  273. package/dist/components/consent-manager.js +7 -1029
  274. package/dist/components/deduct-calculator2.js +1 -1
  275. package/dist/components/dropdown-item.js +1 -1
  276. package/dist/components/feature-details2.js +10 -15
  277. package/dist/components/floor-filter2.js +8 -0
  278. package/dist/components/helpers.js +723 -691
  279. package/dist/components/instant-apps-ckeditor-wrapper2.js +1 -1
  280. package/dist/components/instant-apps-control-panel.js +1 -1
  281. package/dist/components/instant-apps-create.js +47 -45
  282. package/dist/components/instant-apps-export.js +1 -1
  283. package/dist/components/instant-apps-filter-list2.js +24 -24
  284. package/dist/components/instant-apps-header2.js +2 -2
  285. package/dist/components/instant-apps-interactive-legend-classic2.js +139 -138
  286. package/dist/components/instant-apps-interactive-legend-count2.js +1 -1
  287. package/dist/components/instant-apps-interactive-legend-group-legend-element-caption.js +3 -3
  288. package/dist/components/instant-apps-interactive-legend-group-legend-element2.js +2 -2
  289. package/dist/components/instant-apps-interactive-legend-layer-element-caption2.js +2 -2
  290. package/dist/components/instant-apps-interactive-legend-layer-element2.js +2 -2
  291. package/dist/components/instant-apps-interactive-legend-legend-element-caption2.js +1 -1
  292. package/dist/components/instant-apps-interactive-legend-legend-element2.js +2 -2
  293. package/dist/components/instant-apps-interactive-legend-relationship2.js +2 -2
  294. package/dist/components/instant-apps-keyboard-shortcuts.js +1 -1
  295. package/dist/components/instant-apps-landing-page.js +10 -10
  296. package/dist/components/instant-apps-language-switcher.js +1 -1
  297. package/dist/components/instant-apps-language-translator-search2.js +1 -1
  298. package/dist/components/instant-apps-language-translator2.js +44 -44
  299. package/dist/components/instant-apps-measurement-tool2.js +2 -2
  300. package/dist/components/instant-apps-measurement.js +1 -1
  301. package/dist/components/instant-apps-popover.js +1 -1
  302. package/dist/components/instant-apps-popovers.js +1 -1
  303. package/dist/components/instant-apps-scoreboard.js +1 -1
  304. package/dist/components/instant-apps-sign-in2.js +3 -3
  305. package/dist/components/instant-apps-social-share2.js +12 -11
  306. package/dist/components/instant-apps-splash.js +7 -7
  307. package/dist/components/languageUtil.js +43 -43
  308. package/dist/components/loadModules2.js +3 -3
  309. package/dist/components/locale3.js +58 -58
  310. package/dist/components/map-select-tools2.js +5 -3
  311. package/dist/components/mapViewUtils.js +2 -0
  312. package/dist/components/mode.js +6 -6
  313. package/dist/components/public-notification.js +26 -12
  314. package/dist/components/refine-selection2.js +3 -1
  315. package/dist/components/restHelpersGet.js +329 -382
  316. package/dist/components/solution-resource.js +107 -107
  317. package/dist/components/solution-store.js +482 -482
  318. package/dist/components/store.js +66 -66
  319. package/dist/components/styles.js +1 -1
  320. package/dist/components/tab-title.js +1 -1
  321. package/dist/components/tree-item.js +1 -1
  322. package/dist/components/utils4.js +80 -80
  323. package/dist/esm/ExpandToggle-12c73c9f.js +110 -0
  324. package/dist/esm/FloatingArrow-5585c8f7.js +48 -0
  325. package/dist/esm/Heading-63031c74.js +22 -0
  326. package/dist/esm/Validation-6712b322.js +18 -0
  327. package/dist/esm/ar-19d4f5c7.js +103 -0
  328. package/dist/esm/arcgis-login.entry.js +1 -1
  329. package/dist/esm/basemap-gallery_7.entry.js +11 -3
  330. package/dist/esm/bg-63235b1a.js +81 -0
  331. package/dist/esm/breakpoints-3afa0fd9.js +15 -0
  332. package/dist/esm/browser-e76c94f7.js +23 -0
  333. package/dist/esm/bs-a1b74ac8.js +50 -0
  334. package/dist/esm/buffer-tools_3.entry.js +5 -5
  335. package/dist/esm/ca-b29c38ed.js +70 -0
  336. package/dist/esm/calcite-accordion-item.entry.js +4 -4
  337. package/dist/esm/calcite-accordion.entry.js +2 -2
  338. package/dist/esm/calcite-action-bar.entry.js +7 -7
  339. package/dist/esm/calcite-action-group.entry.js +6 -6
  340. package/dist/esm/calcite-action-menu_3.entry.js +9 -9
  341. package/dist/esm/calcite-action-pad_2.entry.js +11 -11
  342. package/dist/esm/calcite-action_2.entry.js +7 -7
  343. package/dist/esm/calcite-alert_4.entry.js +13 -13
  344. package/dist/esm/calcite-avatar_2.entry.js +2 -2
  345. package/dist/esm/calcite-block-section.entry.js +5 -5
  346. package/dist/esm/calcite-block_5.entry.js +55 -54
  347. package/dist/esm/calcite-button.entry.js +9 -9
  348. package/dist/esm/calcite-card-group.entry.js +4 -4
  349. package/dist/esm/calcite-card.entry.js +7 -7
  350. package/dist/esm/calcite-carousel-item.entry.js +1 -1
  351. package/dist/esm/calcite-carousel.entry.js +7 -7
  352. package/dist/esm/calcite-checkbox.entry.js +5 -5
  353. package/dist/esm/calcite-chip-group.entry.js +4 -4
  354. package/dist/esm/calcite-chip_2.entry.js +10 -10
  355. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +2 -2
  356. package/dist/esm/calcite-color-picker.entry.js +7 -7
  357. package/dist/esm/calcite-combobox-item-group.entry.js +2 -2
  358. package/dist/esm/calcite-combobox_3.entry.js +12 -12
  359. package/dist/esm/calcite-date-picker-day_3.entry.js +8 -8
  360. package/dist/esm/calcite-dropdown-group_2.entry.js +7 -7
  361. package/dist/esm/calcite-dropdown_2.entry.js +8 -8
  362. package/dist/esm/calcite-fab.entry.js +4 -4
  363. package/dist/esm/calcite-filter_5.entry.js +7 -7
  364. package/dist/esm/calcite-flow_6.entry.js +20 -25
  365. package/dist/esm/calcite-icon.entry.js +2 -2
  366. package/dist/esm/calcite-inline-editable.entry.js +7 -7
  367. package/dist/esm/calcite-input-number.entry.js +9 -9
  368. package/dist/esm/calcite-input-text.entry.js +9 -9
  369. package/dist/esm/calcite-input-time-picker-7d1c6e48.js +1861 -0
  370. package/dist/esm/calcite-input-time-picker.entry.js +12 -12
  371. package/dist/esm/calcite-input-time-zone.entry.js +8 -8
  372. package/dist/esm/calcite-input_2.entry.js +9 -9
  373. package/dist/esm/calcite-label.entry.js +1 -1
  374. package/dist/esm/calcite-link.entry.js +4 -4
  375. package/dist/esm/calcite-list-item-group.entry.js +3 -3
  376. package/dist/esm/calcite-menu-item.entry.js +5 -5
  377. package/dist/esm/calcite-menu.entry.js +5 -5
  378. package/dist/esm/calcite-meter.entry.js +5 -5
  379. package/dist/esm/calcite-modal.entry.js +7 -7
  380. package/dist/esm/calcite-navigation-logo.entry.js +4 -4
  381. package/dist/esm/calcite-navigation.entry.js +2 -2
  382. package/dist/esm/calcite-notice.entry.js +7 -7
  383. package/dist/esm/calcite-option-group.entry.js +1 -1
  384. package/dist/esm/calcite-option_2.entry.js +7 -7
  385. package/dist/esm/calcite-pagination.entry.js +5 -5
  386. package/dist/esm/calcite-panel_2.entry.js +9 -9
  387. package/dist/esm/calcite-pick-list-group.entry.js +4 -4
  388. package/dist/esm/calcite-pick-list-item.entry.js +8 -8
  389. package/dist/esm/calcite-pick-list.entry.js +6 -6
  390. package/dist/esm/calcite-radio-button-group.entry.js +4 -4
  391. package/dist/esm/calcite-radio-button.entry.js +5 -5
  392. package/dist/esm/calcite-rating.entry.js +8 -8
  393. package/dist/esm/calcite-segmented-control_2.entry.js +7 -7
  394. package/dist/esm/calcite-sheet.entry.js +4 -4
  395. package/dist/esm/calcite-shell-center-row.entry.js +3 -3
  396. package/dist/esm/calcite-shell-panel_14.entry.js +16 -16
  397. package/dist/esm/calcite-sortable-list.entry.js +4 -4
  398. package/dist/esm/calcite-split-button.entry.js +4 -4
  399. package/dist/esm/calcite-stepper-item.entry.js +8 -8
  400. package/dist/esm/calcite-stepper.entry.js +4 -4
  401. package/dist/esm/calcite-switch.entry.js +5 -5
  402. package/dist/esm/calcite-table-cell_2.entry.js +7 -7
  403. package/dist/esm/calcite-table-row.entry.js +3 -3
  404. package/dist/esm/calcite-table.entry.js +6 -6
  405. package/dist/esm/calcite-text-area.entry.js +9 -9
  406. package/dist/esm/calcite-tile-group.entry.js +4 -4
  407. package/dist/esm/calcite-tile-select-group.entry.js +3 -3
  408. package/dist/esm/calcite-tile-select.entry.js +4 -4
  409. package/dist/esm/calcite-tile.entry.js +4 -4
  410. package/dist/esm/calcite-time-picker.entry.js +6 -6
  411. package/dist/esm/calcite-tip-group.entry.js +1 -1
  412. package/dist/esm/calcite-tip-manager.entry.js +5 -5
  413. package/dist/esm/calcite-tip.entry.js +6 -6
  414. package/dist/esm/calcite-tooltip.entry.js +4 -4
  415. package/dist/esm/calcite-tree_2.entry.js +6 -6
  416. package/dist/esm/card-manager_3.entry.js +7 -7
  417. package/dist/esm/common-8697fccd.js +36 -0
  418. package/dist/esm/conditionalSlot-56bdb202.js +51 -0
  419. package/dist/esm/consent-manager.entry.js +10 -1031
  420. package/dist/esm/crowdsource-manager.entry.js +4 -4
  421. package/dist/esm/crowdsource-reporter.entry.js +4 -4
  422. package/dist/esm/cs-da7231d6.js +146 -0
  423. package/dist/esm/da-7e105037.js +65 -0
  424. package/dist/esm/date-93ae46b9.js +245 -0
  425. package/dist/esm/de-at-1d9434bb.js +89 -0
  426. package/dist/esm/de-b5646b5d.js +90 -0
  427. package/dist/esm/de-ch-7beada93.js +89 -0
  428. package/dist/esm/deduct-calculator.entry.js +2 -2
  429. package/dist/esm/downloadUtils-97acca92.js +3158 -0
  430. package/dist/esm/el-0f4bf89b.js +65 -0
  431. package/dist/esm/en-au-5c144cef.js +65 -0
  432. package/dist/esm/en-ca-1160089a.js +64 -0
  433. package/dist/esm/en-gb-ae98fc58.js +68 -0
  434. package/dist/esm/es-88e1743a.js +65 -0
  435. package/dist/esm/es-mx-020dfaaa.js +64 -0
  436. package/dist/esm/esri-loader-3080dcc0.js +311 -0
  437. package/dist/esm/et-84f63ef8.js +91 -0
  438. package/dist/esm/feature-comments.entry.js +1 -1
  439. package/dist/esm/feature-form-flow-item.entry.js +1 -1
  440. package/dist/esm/feature-list.entry.js +8 -8
  441. package/dist/esm/features-flow-item.entry.js +1 -1
  442. package/dist/esm/fi-1016ee6e.js +114 -0
  443. package/dist/esm/floating-ui-f086572c.js +2287 -0
  444. package/dist/esm/form-8fd73cbd.js +372 -0
  445. package/dist/esm/fr-0e7ffd73.js +67 -0
  446. package/dist/esm/fr-ch-e18bae2c.js +65 -0
  447. package/dist/esm/he-0cebe004.js +104 -0
  448. package/dist/esm/helpers-7c88b974.js +913 -0
  449. package/dist/esm/hi-cded031d.js +64 -0
  450. package/dist/esm/hr-5643b2ab.js +79 -0
  451. package/dist/esm/html2canvas-fd387d87.js +7845 -0
  452. package/dist/esm/hu-6d605858.js +87 -0
  453. package/dist/esm/id-7d804c46.js +65 -0
  454. package/dist/esm/index-83b693bc.js +1705 -0
  455. package/dist/esm/index-d97f4f15.js +199 -0
  456. package/dist/esm/index.es-ee5497bc.js +11230 -0
  457. package/dist/esm/instant-apps-ckeditor-wrapper_3.entry.js +9 -9
  458. package/dist/esm/instant-apps-control-panel.entry.js +4 -4
  459. package/dist/esm/instant-apps-create.entry.js +53 -51
  460. package/dist/esm/instant-apps-export.entry.js +7 -7
  461. package/dist/esm/instant-apps-header.entry.js +7 -7
  462. package/dist/esm/instant-apps-interactive-legend-classic.entry.js +143 -142
  463. package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +7 -7
  464. package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +8 -8
  465. package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +12 -12
  466. package/dist/esm/instant-apps-interactive-legend.entry.js +7 -7
  467. package/dist/esm/instant-apps-keyboard-shortcuts.entry.js +6 -6
  468. package/dist/esm/instant-apps-landing-page.entry.js +12 -12
  469. package/dist/esm/instant-apps-language-switcher.entry.js +9 -9
  470. package/dist/esm/instant-apps-language-translator.entry.js +9 -9
  471. package/dist/esm/instant-apps-measurement.entry.js +6 -6
  472. package/dist/esm/instant-apps-popover.entry.js +6 -6
  473. package/dist/esm/instant-apps-popovers.entry.js +2 -2
  474. package/dist/esm/instant-apps-scoreboard.entry.js +7 -7
  475. package/dist/esm/instant-apps-sign-in.entry.js +8 -8
  476. package/dist/esm/instant-apps-splash.entry.js +12 -12
  477. package/dist/esm/interactive-3b9600a6.js +149 -0
  478. package/dist/esm/it-849be361.js +65 -0
  479. package/dist/esm/it-ch-453fa26d.js +65 -0
  480. package/dist/esm/ja-edff1441.js +71 -0
  481. package/dist/esm/ko-dc103450.js +71 -0
  482. package/dist/esm/languageSwitcher-0f693a04.js +57 -0
  483. package/dist/esm/languageUtil-de206286.js +66 -0
  484. package/dist/esm/layout-manager.entry.js +3 -3
  485. package/dist/esm/list-flow-item.entry.js +1 -1
  486. package/dist/esm/loadModules-43119ac8.js +21 -0
  487. package/dist/esm/loadable-b765a6f6.js +89 -0
  488. package/dist/esm/loader.js +3 -3
  489. package/dist/esm/locale-42369411.js +156 -0
  490. package/dist/esm/locale-70630b7c.js +86 -0
  491. package/dist/esm/locale-a4cbae12.js +571 -0
  492. package/dist/esm/location-flow-item.entry.js +1 -1
  493. package/dist/esm/lt-270cc811.js +96 -0
  494. package/dist/esm/lv-c877043c.js +65 -0
  495. package/dist/esm/map-select-tools_3.entry.js +15 -13
  496. package/dist/esm/mapViewUtils-e3de60cc.js +492 -0
  497. package/dist/esm/mk-a816a702.js +65 -0
  498. package/dist/esm/mode-8c5f5dc9.js +17 -0
  499. package/dist/esm/nb-e9c09b70.js +66 -0
  500. package/dist/esm/nl-56e70f3b.js +66 -0
  501. package/dist/esm/observers-fcb1c07b.js +53 -0
  502. package/dist/esm/openCloseComponent-bbe76c58.js +90 -0
  503. package/dist/esm/pci-calculator.entry.js +2 -2
  504. package/dist/esm/pciUtils-986ddad9.js +844 -0
  505. package/dist/esm/pl-687b559a.js +113 -0
  506. package/dist/esm/popupUtils-98ad70f3.js +109 -0
  507. package/dist/esm/pt-8b05fed2.js +66 -0
  508. package/dist/esm/pt-br-85bdf812.js +64 -0
  509. package/dist/esm/public-notification.entry.js +34 -21
  510. package/dist/esm/publicNotificationStore-08faccff.js +45 -0
  511. package/dist/esm/purify-caded4cd.js +1714 -0
  512. package/dist/esm/refine-results-flow-item.entry.js +1 -1
  513. package/dist/esm/restHelpersGet-dab84057.js +906 -0
  514. package/dist/esm/ro-0975d6bb.js +65 -0
  515. package/dist/esm/ru-24b83704.js +125 -0
  516. package/dist/esm/share-item.entry.js +1 -1
  517. package/dist/esm/shared-list-render-07a20fc5.js +343 -0
  518. package/dist/esm/sk-8179af4d.js +147 -0
  519. package/dist/esm/sl-e6922692.js +167 -0
  520. package/dist/esm/solution-configuration.entry.js +7 -7
  521. package/dist/esm/solution-contents_3.entry.js +8 -8
  522. package/dist/esm/solution-item-icon.entry.js +1 -1
  523. package/dist/esm/solution-resource-a2fff3bf.js +142 -0
  524. package/dist/esm/solution-store-30a19a45.js +1342 -0
  525. package/dist/esm/solutions-components.js +4 -4
  526. package/dist/esm/spatial-ref.entry.js +5 -5
  527. package/dist/esm/sr-1d30e69e.js +100 -0
  528. package/dist/esm/store-manager.entry.js +1 -1
  529. package/dist/esm/styles-b3492d9f.js +11 -0
  530. package/dist/esm/sv-ea3c4b80.js +70 -0
  531. package/dist/esm/t9n-dd2a98fc.js +95 -0
  532. package/dist/esm/th-0f1b35bc.js +64 -0
  533. package/dist/esm/time-bc97792f.js +274 -0
  534. package/dist/esm/tr-eb4e860e.js +65 -0
  535. package/dist/esm/uk-f3ebd952.js +103 -0
  536. package/dist/esm/utils-9bb48951.js +121 -0
  537. package/dist/esm/utils-bf012a3f.js +54 -0
  538. package/dist/esm/vi-872e449d.js +69 -0
  539. package/dist/esm/zh-cn-8c5a3222.js +93 -0
  540. package/dist/esm/zh-hk-247683c2.js +70 -0
  541. package/dist/esm/zh-tw-76a429e9.js +91 -0
  542. package/dist/loader/cdn.js +1 -2
  543. package/dist/loader/index.cjs.js +1 -2
  544. package/dist/loader/index.es2017.js +1 -2
  545. package/dist/loader/index.js +1 -2
  546. package/dist/node_modules/@esri/calcite-components/dist/collection/components/accordion-item/accordion-item.css +1 -2
  547. package/dist/node_modules/@esri/calcite-components/dist/collection/components/button/button.css +2 -4
  548. package/dist/node_modules/@esri/calcite-components/dist/collection/components/combobox-item/combobox-item.css +2 -4
  549. package/dist/node_modules/@esri/calcite-components/dist/collection/components/dropdown-item/dropdown-item.css +4 -8
  550. package/dist/node_modules/@esri/calcite-components/dist/collection/components/navigation-logo/navigation-logo.css +1 -2
  551. package/dist/node_modules/@esri/calcite-components/dist/collection/components/stepper-item/stepper-item.css +1 -2
  552. package/dist/node_modules/@esri/calcite-components/dist/collection/components/tab-title/tab-title.css +1 -2
  553. package/dist/node_modules/@esri/calcite-components/dist/collection/components/tree-item/tree-item.css +1 -4
  554. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-header/instant-apps-header.css +5 -0
  555. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-sign-in/instant-apps-sign-in.css +1 -6
  556. package/dist/solutions-components/p-01ba6099.js +6 -0
  557. package/dist/solutions-components/p-03178c37.js +6 -0
  558. package/dist/solutions-components/p-046acd6b.entry.js +6 -0
  559. package/dist/solutions-components/p-0a053ed7.js +6 -0
  560. package/dist/solutions-components/p-0ab0b1ad.entry.js +11 -0
  561. package/dist/solutions-components/p-0e8ad7d1.entry.js +11 -0
  562. package/dist/solutions-components/p-11094d76.entry.js +29 -0
  563. package/dist/solutions-components/p-11b4cd1a.entry.js +6 -0
  564. package/dist/solutions-components/p-123fcb43.entry.js +6 -0
  565. package/dist/solutions-components/p-12b84e3b.entry.js +36 -0
  566. package/dist/solutions-components/p-132b1138.entry.js +21 -0
  567. package/dist/solutions-components/p-13b513ed.entry.js +11 -0
  568. package/dist/solutions-components/p-15e08453.js +6 -0
  569. package/dist/solutions-components/p-17feaae0.entry.js +17 -0
  570. package/dist/solutions-components/p-1983d6e8.js +6 -0
  571. package/dist/solutions-components/p-1a8f7075.entry.js +6 -0
  572. package/dist/solutions-components/p-1b4149b8.entry.js +11 -0
  573. package/dist/solutions-components/p-1cc7fcd0.entry.js +11 -0
  574. package/dist/solutions-components/p-1ceaab98.entry.js +11 -0
  575. package/dist/solutions-components/p-1d369231.js +21 -0
  576. package/dist/solutions-components/p-1fd9cd5f.entry.js +6 -0
  577. package/dist/solutions-components/p-20a567b0.entry.js +6 -0
  578. package/dist/solutions-components/p-21965dcd.entry.js +11 -0
  579. package/dist/solutions-components/p-2305749d.entry.js +17 -0
  580. package/dist/solutions-components/p-24634430.entry.js +11 -0
  581. package/dist/solutions-components/p-2599399f.entry.js +6 -0
  582. package/dist/solutions-components/p-27c68097.js +11 -0
  583. package/dist/solutions-components/p-27e4dc8a.entry.js +11 -0
  584. package/dist/solutions-components/p-28fd26ed.js +6 -0
  585. package/dist/solutions-components/p-293d376c.js +6 -0
  586. package/dist/solutions-components/p-29c60f3d.entry.js +11 -0
  587. package/dist/solutions-components/p-2a2e4578.entry.js +6 -0
  588. package/dist/solutions-components/p-2a7111ad.entry.js +6 -0
  589. package/dist/solutions-components/p-2a990146.entry.js +6 -0
  590. package/dist/solutions-components/p-2b4e50ed.js +6 -0
  591. package/dist/solutions-components/p-2d99bd61.js +6 -0
  592. package/dist/solutions-components/p-2e401f51.js +6 -0
  593. package/dist/solutions-components/p-2e64dc3b.entry.js +6 -0
  594. package/dist/solutions-components/p-3102119d.entry.js +11 -0
  595. package/dist/solutions-components/p-3137377f.entry.js +11 -0
  596. package/dist/solutions-components/p-34722455.entry.js +6 -0
  597. package/dist/solutions-components/p-36f5dee9.entry.js +6 -0
  598. package/dist/solutions-components/p-37e2754a.js +6 -0
  599. package/dist/solutions-components/p-398ff315.js +11 -0
  600. package/dist/solutions-components/p-3a50fe57.entry.js +17 -0
  601. package/dist/solutions-components/p-3ac77bd5.entry.js +11 -0
  602. package/dist/solutions-components/p-3acc8a71.entry.js +6 -0
  603. package/dist/solutions-components/p-3b1f45b4.entry.js +12 -0
  604. package/dist/solutions-components/p-3b931fc5.entry.js +6 -0
  605. package/dist/solutions-components/p-3eb49703.js +489 -0
  606. package/dist/solutions-components/p-42ea2581.js +6 -0
  607. package/dist/solutions-components/p-44043ef6.entry.js +11 -0
  608. package/dist/solutions-components/p-44bfa87d.js +11 -0
  609. package/dist/solutions-components/p-45db29e2.js +6 -0
  610. package/dist/solutions-components/p-465fbfc2.js +6 -0
  611. package/dist/solutions-components/p-4691b6ad.entry.js +11 -0
  612. package/dist/solutions-components/p-49250010.js +6 -0
  613. package/dist/solutions-components/p-4b80b699.entry.js +6 -0
  614. package/dist/solutions-components/p-4b85c3dc.js +6 -0
  615. package/dist/solutions-components/p-4e92c1ba.entry.js +17 -0
  616. package/dist/solutions-components/p-4fbd1a02.js +6 -0
  617. package/dist/solutions-components/p-50aa0e5a.js +6 -0
  618. package/dist/solutions-components/p-52bcd209.entry.js +6 -0
  619. package/dist/solutions-components/p-52bdaec9.entry.js +6 -0
  620. package/dist/solutions-components/p-5443995c.entry.js +11 -0
  621. package/dist/solutions-components/p-55730588.js +6 -0
  622. package/dist/solutions-components/p-57961ae0.entry.js +6 -0
  623. package/dist/solutions-components/p-57a03a95.js +17 -0
  624. package/dist/solutions-components/p-59f016a1.js +61 -0
  625. package/dist/solutions-components/p-5b2d9899.entry.js +6 -0
  626. package/dist/solutions-components/p-5bd6a732.entry.js +6 -0
  627. package/dist/solutions-components/p-5db64297.entry.js +11 -0
  628. package/dist/solutions-components/p-5eb6219c.js +11 -0
  629. package/dist/solutions-components/p-5ed5626f.entry.js +6 -0
  630. package/dist/solutions-components/p-5ed825c4.js +6 -0
  631. package/dist/solutions-components/p-5f1fdaf9.js +11 -0
  632. package/dist/solutions-components/p-5fb4ddc2.entry.js +6 -0
  633. package/dist/solutions-components/p-61dcdc62.js +6 -0
  634. package/dist/solutions-components/p-622f33ee.entry.js +6 -0
  635. package/dist/solutions-components/p-64ee17c6.entry.js +6 -0
  636. package/dist/solutions-components/p-652140aa.entry.js +6 -0
  637. package/dist/solutions-components/p-6809e050.entry.js +11 -0
  638. package/dist/solutions-components/p-69cfc738.entry.js +6 -0
  639. package/dist/solutions-components/p-69db1e2c.js +6 -0
  640. package/dist/solutions-components/p-6acf6c8f.js +7 -0
  641. package/dist/solutions-components/p-6bf91f6e.js +6 -0
  642. package/dist/solutions-components/p-6c7e34c1.entry.js +47 -0
  643. package/dist/solutions-components/p-6d0404a6.entry.js +6 -0
  644. package/dist/solutions-components/p-6d51c6bf.js +6 -0
  645. package/dist/solutions-components/p-6df9b158.entry.js +11 -0
  646. package/dist/solutions-components/p-716a0878.js +11 -0
  647. package/dist/solutions-components/p-71c212e6.entry.js +12 -0
  648. package/dist/solutions-components/p-71ed8170.entry.js +11 -0
  649. package/dist/solutions-components/p-727b8bf8.entry.js +11 -0
  650. package/dist/solutions-components/p-7388563d.js +6 -0
  651. package/dist/solutions-components/p-747d4b59.js +21 -0
  652. package/dist/solutions-components/p-74dbad36.js +6 -0
  653. package/dist/solutions-components/p-7638ce3d.js +6 -0
  654. package/dist/solutions-components/p-76f51550.entry.js +11 -0
  655. package/dist/solutions-components/p-7773d8ea.js +6 -0
  656. package/dist/solutions-components/p-7822e93b.js +16 -0
  657. package/dist/solutions-components/p-789eb1c2.entry.js +6 -0
  658. package/dist/solutions-components/p-7996f123.js +50 -0
  659. package/dist/solutions-components/p-79c7ff2b.entry.js +24 -0
  660. package/dist/solutions-components/p-7a2f1801.entry.js +6 -0
  661. package/dist/solutions-components/p-7a646a97.js +6 -0
  662. package/dist/solutions-components/p-7afca6b4.js +26 -0
  663. package/dist/solutions-components/p-7dcf6b16.entry.js +6 -0
  664. package/dist/solutions-components/p-7efcfb47.js +6 -0
  665. package/dist/solutions-components/p-7f4bc6d2.entry.js +6 -0
  666. package/dist/solutions-components/p-7fe77355.js +6 -0
  667. package/dist/solutions-components/p-7fea6d8a.js +6 -0
  668. package/dist/solutions-components/p-8008449b.entry.js +16 -0
  669. package/dist/solutions-components/p-813d004f.js +16 -0
  670. package/dist/solutions-components/p-8241b179.entry.js +17 -0
  671. package/dist/solutions-components/p-8413a2ae.entry.js +6 -0
  672. package/dist/solutions-components/p-853d952d.entry.js +6 -0
  673. package/dist/solutions-components/p-89f6ff72.js +6 -0
  674. package/dist/solutions-components/p-8a4f9e8d.entry.js +11 -0
  675. package/dist/solutions-components/p-8babc507.entry.js +6 -0
  676. package/dist/solutions-components/p-8c6d9b5a.js +6 -0
  677. package/dist/solutions-components/p-8dcc5305.entry.js +12 -0
  678. package/dist/solutions-components/p-8ed6ce4d.js +11 -0
  679. package/dist/solutions-components/p-9088fa3a.js +6 -0
  680. package/dist/solutions-components/p-90e3ce7f.js +6 -0
  681. package/dist/solutions-components/p-9271710d.js +6 -0
  682. package/dist/solutions-components/p-9377260c.js +6 -0
  683. package/dist/solutions-components/p-941e55f0.entry.js +6 -0
  684. package/dist/solutions-components/p-946ee345.js +145 -0
  685. package/dist/solutions-components/p-97421bb9.js +6 -0
  686. package/dist/solutions-components/p-9808250d.entry.js +6 -0
  687. package/dist/solutions-components/p-9a7e00b8.js +6 -0
  688. package/dist/solutions-components/p-9b38e6a0.entry.js +6 -0
  689. package/dist/solutions-components/p-9c1fbf73.entry.js +6 -0
  690. package/dist/solutions-components/p-9c6c056a.js +12 -0
  691. package/dist/solutions-components/p-9d82f0e3.entry.js +6 -0
  692. package/dist/solutions-components/p-9dd1049f.entry.js +11 -0
  693. package/dist/solutions-components/p-9e77f5c7.js +11 -0
  694. package/dist/solutions-components/p-9fa1855f.entry.js +6 -0
  695. package/dist/solutions-components/p-a146dcbe.entry.js +6 -0
  696. package/dist/solutions-components/p-a204dcff.entry.js +11 -0
  697. package/dist/solutions-components/p-a2390bee.entry.js +6 -0
  698. package/dist/solutions-components/p-a805c11f.entry.js +6 -0
  699. package/dist/solutions-components/p-a89e61f4.js +11 -0
  700. package/dist/solutions-components/p-aa967a48.entry.js +6 -0
  701. package/dist/solutions-components/p-ab8039f5.js +6 -0
  702. package/dist/solutions-components/p-acef743f.entry.js +11 -0
  703. package/dist/solutions-components/p-ada34f83.js +6 -0
  704. package/dist/solutions-components/p-af1c9389.entry.js +6 -0
  705. package/dist/solutions-components/p-afd2b67b.entry.js +23 -0
  706. package/dist/solutions-components/p-b1a4c444.entry.js +6 -0
  707. package/dist/solutions-components/p-b1abf15c.entry.js +29 -0
  708. package/dist/solutions-components/p-b25e8339.js +6 -0
  709. package/dist/solutions-components/p-b2ba3c28.entry.js +11 -0
  710. package/dist/solutions-components/p-b2f11718.entry.js +11 -0
  711. package/dist/solutions-components/p-b4230022.entry.js +11 -0
  712. package/dist/solutions-components/p-b442aa02.entry.js +17 -0
  713. package/dist/solutions-components/p-b592fbc6.entry.js +11 -0
  714. package/dist/solutions-components/p-b5c88983.js +6 -0
  715. package/dist/solutions-components/p-b64cc55e.js +11 -0
  716. package/dist/solutions-components/p-b77b6c26.js +6 -0
  717. package/dist/solutions-components/p-b7d060b0.entry.js +6 -0
  718. package/dist/solutions-components/p-b8d4452e.entry.js +11 -0
  719. package/dist/solutions-components/p-ba569f8b.js +11 -0
  720. package/dist/solutions-components/p-bac8a4cd.js +6 -0
  721. package/dist/solutions-components/p-bd459df3.entry.js +11 -0
  722. package/dist/solutions-components/p-bf27cd5f.js +6 -0
  723. package/dist/solutions-components/p-c27bb7cf.entry.js +11 -0
  724. package/dist/solutions-components/p-c32d79e2.entry.js +22 -0
  725. package/dist/solutions-components/p-c4160bf7.js +6 -0
  726. package/dist/solutions-components/p-c4ddb206.js +21 -0
  727. package/dist/solutions-components/p-c554abce.entry.js +11 -0
  728. package/dist/solutions-components/p-c63a8225.entry.js +6 -0
  729. package/dist/solutions-components/p-c8935707.entry.js +11 -0
  730. package/dist/solutions-components/p-c96bde1d.js +6 -0
  731. package/dist/solutions-components/p-c9b22653.js +36 -0
  732. package/dist/solutions-components/p-cb6165e9.entry.js +16 -0
  733. package/dist/solutions-components/p-cc07069d.entry.js +11 -0
  734. package/dist/solutions-components/p-cc388a08.js +11 -0
  735. package/dist/solutions-components/p-cc9fdd5f.entry.js +6 -0
  736. package/dist/solutions-components/p-cf0eeb0a.entry.js +6 -0
  737. package/dist/solutions-components/p-d029b513.js +6 -0
  738. package/dist/solutions-components/p-d11d941c.js +6 -0
  739. package/dist/solutions-components/p-d27ab863.js +37 -0
  740. package/dist/solutions-components/p-d31a139f.entry.js +11 -0
  741. package/dist/solutions-components/p-d36fb1b5.entry.js +6 -0
  742. package/dist/solutions-components/p-d6f3fc2c.entry.js +11 -0
  743. package/dist/solutions-components/p-d9e190a4.entry.js +6 -0
  744. package/dist/solutions-components/p-da75df88.entry.js +6 -0
  745. package/dist/solutions-components/p-de279d51.entry.js +6 -0
  746. package/dist/solutions-components/p-de4cf79a.entry.js +11 -0
  747. package/dist/solutions-components/p-df0a1d4b.js +11 -0
  748. package/dist/solutions-components/p-dff78ae3.entry.js +11 -0
  749. package/dist/solutions-components/p-e0277e0b.entry.js +6 -0
  750. package/dist/solutions-components/p-e11a4728.entry.js +6 -0
  751. package/dist/solutions-components/p-e528c321.js +6 -0
  752. package/dist/solutions-components/p-e6c9e6af.js +11 -0
  753. package/dist/solutions-components/p-e6e4071e.entry.js +17 -0
  754. package/dist/solutions-components/p-e7ed87eb.entry.js +11 -0
  755. package/dist/solutions-components/p-e89c05d6.entry.js +6 -0
  756. package/dist/solutions-components/p-ec0c2611.entry.js +11 -0
  757. package/dist/solutions-components/p-ee309d0b.js +6 -0
  758. package/dist/solutions-components/p-ee7f7c24.js +6 -0
  759. package/dist/solutions-components/p-ef54f211.js +6 -0
  760. package/dist/solutions-components/p-ef930f76.entry.js +11 -0
  761. package/dist/solutions-components/p-f163a137.js +6 -0
  762. package/dist/solutions-components/p-f1ae51dc.js +21 -0
  763. package/dist/solutions-components/p-f480b275.js +6 -0
  764. package/dist/solutions-components/p-f539a342.entry.js +11 -0
  765. package/dist/solutions-components/p-f8c45269.entry.js +6 -0
  766. package/dist/solutions-components/p-fa1ceaf9.js +7 -0
  767. package/dist/solutions-components/p-fb7b9bd3.entry.js +6 -0
  768. package/dist/solutions-components/p-fc9a49db.js +6 -0
  769. package/dist/solutions-components/solutions-components.esm.js +1 -1
  770. package/dist/solutions-components/utils/mapViewUtils.ts +2 -0
  771. package/dist/solutions-components/utils/pciUtils.ts +2 -2
  772. package/dist/types/components/floor-filter/floor-filter.d.ts +4 -0
  773. package/dist/types/components/map-select-tools/map-select-tools.d.ts +4 -0
  774. package/dist/types/components/public-notification/public-notification.d.ts +4 -0
  775. package/dist/types/components/refine-selection/refine-selection.d.ts +4 -0
  776. package/dist/types/components.d.ts +24 -0
  777. package/dist/types/stencil-public-runtime.d.ts +3 -8
  778. package/package.json +41 -40
  779. package/dist/cjs/ExpandToggle-249fdc45.js +0 -118
  780. package/dist/cjs/FloatingArrow-28abf7c7.js +0 -50
  781. package/dist/cjs/Heading-1f831135.js +0 -25
  782. package/dist/cjs/Validation-eb9afded.js +0 -20
  783. package/dist/cjs/ar-1013e0a6.js +0 -105
  784. package/dist/cjs/bg-7013971e.js +0 -83
  785. package/dist/cjs/breakpoints-fcd0f2a0.js +0 -17
  786. package/dist/cjs/browser-a96d0614.js +0 -25
  787. package/dist/cjs/bs-97bd61eb.js +0 -52
  788. package/dist/cjs/ca-2a76034c.js +0 -72
  789. package/dist/cjs/calcite-input-time-picker-ebdc5205.js +0 -1864
  790. package/dist/cjs/common-6d2c14c6.js +0 -38
  791. package/dist/cjs/conditionalSlot-93779916.js +0 -54
  792. package/dist/cjs/cs-b189af7b.js +0 -148
  793. package/dist/cjs/da-ebb3b688.js +0 -67
  794. package/dist/cjs/date-456675b2.js +0 -261
  795. package/dist/cjs/de-01ac3f09.js +0 -92
  796. package/dist/cjs/de-at-1437180c.js +0 -91
  797. package/dist/cjs/de-ch-b9a068a3.js +0 -91
  798. package/dist/cjs/downloadUtils-83bf79ba.js +0 -3165
  799. package/dist/cjs/el-7ce5c99d.js +0 -67
  800. package/dist/cjs/en-au-c3ca3a9f.js +0 -67
  801. package/dist/cjs/en-ca-34007cde.js +0 -66
  802. package/dist/cjs/en-gb-2db136a2.js +0 -70
  803. package/dist/cjs/es-f00ce3f0.js +0 -67
  804. package/dist/cjs/es-mx-503b9e1a.js +0 -66
  805. package/dist/cjs/et-556f49fd.js +0 -93
  806. package/dist/cjs/fi-47ef7686.js +0 -116
  807. package/dist/cjs/floating-ui-06d961ad.js +0 -2295
  808. package/dist/cjs/form-a27f759c.js +0 -381
  809. package/dist/cjs/fr-5ba5763a.js +0 -69
  810. package/dist/cjs/fr-ch-9b02cb30.js +0 -67
  811. package/dist/cjs/he-07cce409.js +0 -106
  812. package/dist/cjs/helpers-618a3f7d.js +0 -907
  813. package/dist/cjs/hi-7b691fb6.js +0 -66
  814. package/dist/cjs/hr-ebd3ae66.js +0 -81
  815. package/dist/cjs/hu-b177f75e.js +0 -89
  816. package/dist/cjs/id-ffab63fb.js +0 -67
  817. package/dist/cjs/index-79b35510.js +0 -1682
  818. package/dist/cjs/index-c078ea5f.js +0 -201
  819. package/dist/cjs/index.es-4e523f8b.js +0 -11317
  820. package/dist/cjs/interactive-f08f0369.js +0 -154
  821. package/dist/cjs/it-8646ff2a.js +0 -67
  822. package/dist/cjs/it-ch-6c949267.js +0 -67
  823. package/dist/cjs/ja-cf48eff1.js +0 -73
  824. package/dist/cjs/ko-294e5fae.js +0 -73
  825. package/dist/cjs/languageSwitcher-b9a1485c.js +0 -60
  826. package/dist/cjs/languageUtil-da436671.js +0 -69
  827. package/dist/cjs/loadModules-b28900c2.js +0 -23
  828. package/dist/cjs/loadable-b374ef4b.js +0 -94
  829. package/dist/cjs/locale-3fd260e3.js +0 -91
  830. package/dist/cjs/locale-48d76c59.js +0 -161
  831. package/dist/cjs/locale-5efdf085.js +0 -584
  832. package/dist/cjs/lt-a592829c.js +0 -98
  833. package/dist/cjs/lv-39a6d278.js +0 -67
  834. package/dist/cjs/mapViewUtils-911698e5.js +0 -508
  835. package/dist/cjs/mk-afea13c6.js +0 -67
  836. package/dist/cjs/mode-d6c12b38.js +0 -19
  837. package/dist/cjs/nb-b7cf648c.js +0 -68
  838. package/dist/cjs/nl-72021978.js +0 -68
  839. package/dist/cjs/observers-4fa351d9.js +0 -55
  840. package/dist/cjs/openCloseComponent-6a283ac3.js +0 -92
  841. package/dist/cjs/pciUtils-a238f3a1.js +0 -847
  842. package/dist/cjs/pl-82312f6a.js +0 -115
  843. package/dist/cjs/popupUtils-9ca69f8c.js +0 -111
  844. package/dist/cjs/pt-42d95816.js +0 -68
  845. package/dist/cjs/pt-br-b0b546fc.js +0 -66
  846. package/dist/cjs/publicNotificationStore-3bfbbed3.js +0 -47
  847. package/dist/cjs/restHelpersGet-dbaa28df.js +0 -972
  848. package/dist/cjs/ro-e7948270.js +0 -67
  849. package/dist/cjs/ru-3526e86f.js +0 -127
  850. package/dist/cjs/shared-list-render-b6b23d9e.js +0 -365
  851. package/dist/cjs/sk-0f35900e.js +0 -149
  852. package/dist/cjs/sl-abc6455f.js +0 -169
  853. package/dist/cjs/solution-resource-a577e84f.js +0 -145
  854. package/dist/cjs/solution-store-8ba2ab4b.js +0 -1344
  855. package/dist/cjs/sr-fe2d4b5b.js +0 -102
  856. package/dist/cjs/styles-c9e1375a.js +0 -13
  857. package/dist/cjs/sv-6503d7e1.js +0 -72
  858. package/dist/cjs/t9n-9d199056.js +0 -100
  859. package/dist/cjs/th-9600cb11.js +0 -66
  860. package/dist/cjs/time-d250cbf5.js +0 -289
  861. package/dist/cjs/tr-faae7cc6.js +0 -67
  862. package/dist/cjs/uk-5e626d2b.js +0 -105
  863. package/dist/cjs/utils-e3996e43.js +0 -65
  864. package/dist/cjs/utils-f3710824.js +0 -130
  865. package/dist/cjs/vi-74653398.js +0 -71
  866. package/dist/cjs/zh-cn-b53af030.js +0 -95
  867. package/dist/cjs/zh-hk-96b751d5.js +0 -72
  868. package/dist/cjs/zh-tw-50d1a248.js +0 -93
  869. package/dist/esm/ExpandToggle-73432b0a.js +0 -110
  870. package/dist/esm/FloatingArrow-c3a62ec9.js +0 -48
  871. package/dist/esm/Heading-03b41bf8.js +0 -22
  872. package/dist/esm/Validation-59757032.js +0 -18
  873. package/dist/esm/ar-a0f8473e.js +0 -103
  874. package/dist/esm/bg-4a8059f0.js +0 -81
  875. package/dist/esm/breakpoints-f0f1417d.js +0 -15
  876. package/dist/esm/browser-9897260d.js +0 -23
  877. package/dist/esm/bs-3d9fa4b7.js +0 -50
  878. package/dist/esm/ca-a74ba459.js +0 -70
  879. package/dist/esm/calcite-input-time-picker-2cdb1664.js +0 -1861
  880. package/dist/esm/common-7f72122b.js +0 -36
  881. package/dist/esm/conditionalSlot-16953b0d.js +0 -51
  882. package/dist/esm/cs-cd3323d4.js +0 -146
  883. package/dist/esm/da-eccb7ace.js +0 -65
  884. package/dist/esm/date-562b6fba.js +0 -245
  885. package/dist/esm/de-269c8d62.js +0 -90
  886. package/dist/esm/de-at-742cc453.js +0 -89
  887. package/dist/esm/de-ch-b4ff8ebb.js +0 -89
  888. package/dist/esm/downloadUtils-571a502d.js +0 -3158
  889. package/dist/esm/el-e7e0181b.js +0 -65
  890. package/dist/esm/en-au-0f12d4ae.js +0 -65
  891. package/dist/esm/en-ca-d692f9a4.js +0 -64
  892. package/dist/esm/en-gb-e91744e9.js +0 -68
  893. package/dist/esm/es-867bace7.js +0 -65
  894. package/dist/esm/es-mx-cde6ed6f.js +0 -64
  895. package/dist/esm/esri-loader-2bf735ed.js +0 -311
  896. package/dist/esm/et-a2613f53.js +0 -91
  897. package/dist/esm/fi-07875b7a.js +0 -114
  898. package/dist/esm/floating-ui-9ee6fe17.js +0 -2287
  899. package/dist/esm/form-6d38f4ee.js +0 -372
  900. package/dist/esm/fr-669ba3b9.js +0 -67
  901. package/dist/esm/fr-ch-da569be6.js +0 -65
  902. package/dist/esm/he-6cbfe53b.js +0 -104
  903. package/dist/esm/helpers-61b05164.js +0 -881
  904. package/dist/esm/hi-913d1595.js +0 -64
  905. package/dist/esm/hr-8f581dc9.js +0 -79
  906. package/dist/esm/html2canvas-28c7de60.js +0 -7845
  907. package/dist/esm/hu-02bb4a04.js +0 -87
  908. package/dist/esm/id-306dcc93.js +0 -65
  909. package/dist/esm/index-ba5da2b0.js +0 -1648
  910. package/dist/esm/index-c06194fa.js +0 -199
  911. package/dist/esm/index.es-2f9f04c5.js +0 -11230
  912. package/dist/esm/interactive-52276a00.js +0 -149
  913. package/dist/esm/it-3f0c20a1.js +0 -65
  914. package/dist/esm/it-ch-fe18a6c5.js +0 -65
  915. package/dist/esm/ja-41455a15.js +0 -71
  916. package/dist/esm/ko-88a4fc75.js +0 -71
  917. package/dist/esm/languageSwitcher-d60f03b2.js +0 -57
  918. package/dist/esm/languageUtil-36f8f4ef.js +0 -66
  919. package/dist/esm/loadModules-496086ee.js +0 -21
  920. package/dist/esm/loadable-cca582a3.js +0 -89
  921. package/dist/esm/locale-353c1c36.js +0 -571
  922. package/dist/esm/locale-69333b8e.js +0 -86
  923. package/dist/esm/locale-a490c4f6.js +0 -156
  924. package/dist/esm/lt-5c1c3aa4.js +0 -96
  925. package/dist/esm/lv-acb76551.js +0 -65
  926. package/dist/esm/mapViewUtils-b8deb4ae.js +0 -490
  927. package/dist/esm/mk-b12a886b.js +0 -65
  928. package/dist/esm/mode-66911cb5.js +0 -17
  929. package/dist/esm/nb-50bbf4fa.js +0 -66
  930. package/dist/esm/nl-6dd1488e.js +0 -66
  931. package/dist/esm/observers-19e5cb73.js +0 -53
  932. package/dist/esm/openCloseComponent-04234cea.js +0 -90
  933. package/dist/esm/pciUtils-73d4b6b4.js +0 -844
  934. package/dist/esm/pl-f0ccb3a4.js +0 -113
  935. package/dist/esm/polyfills/core-js.js +0 -11
  936. package/dist/esm/polyfills/dom.js +0 -79
  937. package/dist/esm/polyfills/es5-html-element.js +0 -1
  938. package/dist/esm/polyfills/index.js +0 -34
  939. package/dist/esm/polyfills/system.js +0 -6
  940. package/dist/esm/popupUtils-8efd3cde.js +0 -109
  941. package/dist/esm/pt-3adf4f5e.js +0 -66
  942. package/dist/esm/pt-br-5ad78776.js +0 -64
  943. package/dist/esm/publicNotificationStore-74c7e9f4.js +0 -45
  944. package/dist/esm/purify-dbd0968e.js +0 -1714
  945. package/dist/esm/restHelpersGet-1bd54274.js +0 -959
  946. package/dist/esm/ro-ba24a126.js +0 -65
  947. package/dist/esm/ru-2feffc99.js +0 -125
  948. package/dist/esm/shared-list-render-aaa69039.js +0 -343
  949. package/dist/esm/sk-097e96ba.js +0 -147
  950. package/dist/esm/sl-27721fe2.js +0 -167
  951. package/dist/esm/solution-resource-0d0eb597.js +0 -142
  952. package/dist/esm/solution-store-997e0cb8.js +0 -1342
  953. package/dist/esm/sr-b421770e.js +0 -100
  954. package/dist/esm/styles-367380b5.js +0 -11
  955. package/dist/esm/sv-3bad8e53.js +0 -70
  956. package/dist/esm/t9n-165900a5.js +0 -95
  957. package/dist/esm/th-7cc88e5d.js +0 -64
  958. package/dist/esm/time-d605c462.js +0 -274
  959. package/dist/esm/tr-0a2743e1.js +0 -65
  960. package/dist/esm/uk-6d2572d0.js +0 -103
  961. package/dist/esm/utils-26baa5d3.js +0 -54
  962. package/dist/esm/utils-bd72a603.js +0 -121
  963. package/dist/esm/vi-e8feb97f.js +0 -69
  964. package/dist/esm/zh-cn-fdec5be5.js +0 -93
  965. package/dist/esm/zh-hk-07c60ac2.js +0 -70
  966. package/dist/esm/zh-tw-b1e4174b.js +0 -91
  967. package/dist/solutions-components/p-011892f2.entry.js +0 -11
  968. package/dist/solutions-components/p-022edd7a.entry.js +0 -11
  969. package/dist/solutions-components/p-02651dd3.entry.js +0 -11
  970. package/dist/solutions-components/p-04af53a2.js +0 -6
  971. package/dist/solutions-components/p-053be79f.entry.js +0 -12
  972. package/dist/solutions-components/p-061da95a.entry.js +0 -6
  973. package/dist/solutions-components/p-0669c156.entry.js +0 -17
  974. package/dist/solutions-components/p-06748b7a.entry.js +0 -6
  975. package/dist/solutions-components/p-070b98cd.entry.js +0 -17
  976. package/dist/solutions-components/p-0894d584.js +0 -6
  977. package/dist/solutions-components/p-0971d8ac.entry.js +0 -23
  978. package/dist/solutions-components/p-0a00df9e.entry.js +0 -6
  979. package/dist/solutions-components/p-0bb3b378.entry.js +0 -11
  980. package/dist/solutions-components/p-0c523112.js +0 -6
  981. package/dist/solutions-components/p-0ce36a4a.entry.js +0 -17
  982. package/dist/solutions-components/p-0d17246a.entry.js +0 -6
  983. package/dist/solutions-components/p-0fba267c.entry.js +0 -12
  984. package/dist/solutions-components/p-0fdcc10a.entry.js +0 -6
  985. package/dist/solutions-components/p-105d8256.js +0 -6
  986. package/dist/solutions-components/p-11881a54.js +0 -6
  987. package/dist/solutions-components/p-11e873c7.entry.js +0 -6
  988. package/dist/solutions-components/p-12c80030.js +0 -11
  989. package/dist/solutions-components/p-1506751c.entry.js +0 -11
  990. package/dist/solutions-components/p-17674f66.js +0 -6
  991. package/dist/solutions-components/p-177a139d.entry.js +0 -11
  992. package/dist/solutions-components/p-18b27561.entry.js +0 -11
  993. package/dist/solutions-components/p-19dbfe71.js +0 -6
  994. package/dist/solutions-components/p-1a3f82c5.entry.js +0 -11
  995. package/dist/solutions-components/p-1aa91fbf.entry.js +0 -6
  996. package/dist/solutions-components/p-1ae3b886.entry.js +0 -17
  997. package/dist/solutions-components/p-1e915546.entry.js +0 -47
  998. package/dist/solutions-components/p-229ec6a3.js +0 -11
  999. package/dist/solutions-components/p-238d8710.entry.js +0 -11
  1000. package/dist/solutions-components/p-23d35d76.js +0 -6
  1001. package/dist/solutions-components/p-2445cf51.js +0 -7
  1002. package/dist/solutions-components/p-2455bcb0.js +0 -21
  1003. package/dist/solutions-components/p-246b1648.entry.js +0 -12
  1004. package/dist/solutions-components/p-261880f7.entry.js +0 -11
  1005. package/dist/solutions-components/p-2665663a.entry.js +0 -6
  1006. package/dist/solutions-components/p-26eb1225.entry.js +0 -6
  1007. package/dist/solutions-components/p-2775f82b.js +0 -6
  1008. package/dist/solutions-components/p-27e9ea86.entry.js +0 -6
  1009. package/dist/solutions-components/p-287d2d49.entry.js +0 -11
  1010. package/dist/solutions-components/p-28d2ab1a.js +0 -6
  1011. package/dist/solutions-components/p-28e582b0.entry.js +0 -11
  1012. package/dist/solutions-components/p-2d90ec69.entry.js +0 -11
  1013. package/dist/solutions-components/p-2e625f11.js +0 -11
  1014. package/dist/solutions-components/p-302fccc1.entry.js +0 -6
  1015. package/dist/solutions-components/p-314dc933.entry.js +0 -6
  1016. package/dist/solutions-components/p-31ce0b61.entry.js +0 -11
  1017. package/dist/solutions-components/p-328fbf6d.js +0 -11
  1018. package/dist/solutions-components/p-334e6394.js +0 -37
  1019. package/dist/solutions-components/p-3365a6de.entry.js +0 -11
  1020. package/dist/solutions-components/p-34c5a71c.entry.js +0 -11
  1021. package/dist/solutions-components/p-370283a4.js +0 -6
  1022. package/dist/solutions-components/p-392be4a7.js +0 -6
  1023. package/dist/solutions-components/p-3b7e0d5a.js +0 -26
  1024. package/dist/solutions-components/p-3c24cda7.entry.js +0 -11
  1025. package/dist/solutions-components/p-3ce690d9.js +0 -6
  1026. package/dist/solutions-components/p-3da83eee.entry.js +0 -22
  1027. package/dist/solutions-components/p-3e33078e.entry.js +0 -11
  1028. package/dist/solutions-components/p-400a584e.js +0 -6
  1029. package/dist/solutions-components/p-415d519f.entry.js +0 -6
  1030. package/dist/solutions-components/p-420b8eb1.entry.js +0 -11
  1031. package/dist/solutions-components/p-4370de50.js +0 -6
  1032. package/dist/solutions-components/p-43d1b0bd.js +0 -11
  1033. package/dist/solutions-components/p-4870be89.entry.js +0 -6
  1034. package/dist/solutions-components/p-489be360.entry.js +0 -11
  1035. package/dist/solutions-components/p-490e4875.entry.js +0 -11
  1036. package/dist/solutions-components/p-4ac019d3.js +0 -6
  1037. package/dist/solutions-components/p-4ba6f8f0.js +0 -6
  1038. package/dist/solutions-components/p-4ca83bea.js +0 -6
  1039. package/dist/solutions-components/p-4e07c030.entry.js +0 -11
  1040. package/dist/solutions-components/p-502172da.entry.js +0 -17
  1041. package/dist/solutions-components/p-50741707.entry.js +0 -6
  1042. package/dist/solutions-components/p-51b5ac05.entry.js +0 -6
  1043. package/dist/solutions-components/p-51d5532f.entry.js +0 -6
  1044. package/dist/solutions-components/p-52dba022.js +0 -489
  1045. package/dist/solutions-components/p-530b73ce.js +0 -66
  1046. package/dist/solutions-components/p-533a9cca.entry.js +0 -11
  1047. package/dist/solutions-components/p-570a3777.js +0 -6
  1048. package/dist/solutions-components/p-57eeed77.js +0 -61
  1049. package/dist/solutions-components/p-5862de8d.entry.js +0 -6
  1050. package/dist/solutions-components/p-591175a6.js +0 -6
  1051. package/dist/solutions-components/p-5974ba05.js +0 -16
  1052. package/dist/solutions-components/p-5b654493.entry.js +0 -6
  1053. package/dist/solutions-components/p-5c5e3745.entry.js +0 -6
  1054. package/dist/solutions-components/p-5f873153.js +0 -6
  1055. package/dist/solutions-components/p-6085ab9c.js +0 -11
  1056. package/dist/solutions-components/p-614ebce7.js +0 -6
  1057. package/dist/solutions-components/p-616c3c0c.entry.js +0 -6
  1058. package/dist/solutions-components/p-628874a6.entry.js +0 -6
  1059. package/dist/solutions-components/p-62c34f96.entry.js +0 -11
  1060. package/dist/solutions-components/p-636c0ebf.entry.js +0 -29
  1061. package/dist/solutions-components/p-63e6cab2.entry.js +0 -11
  1062. package/dist/solutions-components/p-680a43bb.entry.js +0 -6
  1063. package/dist/solutions-components/p-6bdafe3f.js +0 -6
  1064. package/dist/solutions-components/p-6d753a3d.js +0 -7
  1065. package/dist/solutions-components/p-6e260ca3.entry.js +0 -6
  1066. package/dist/solutions-components/p-70ec2b39.entry.js +0 -6
  1067. package/dist/solutions-components/p-7348c869.entry.js +0 -6
  1068. package/dist/solutions-components/p-74a283fb.entry.js +0 -11
  1069. package/dist/solutions-components/p-76d70d3e.js +0 -6
  1070. package/dist/solutions-components/p-77cd573b.entry.js +0 -6
  1071. package/dist/solutions-components/p-7883b885.entry.js +0 -17
  1072. package/dist/solutions-components/p-790ab21b.js +0 -6
  1073. package/dist/solutions-components/p-798d20c2.entry.js +0 -11
  1074. package/dist/solutions-components/p-79e2e203.entry.js +0 -6
  1075. package/dist/solutions-components/p-7b13fafe.entry.js +0 -6
  1076. package/dist/solutions-components/p-7b17e929.entry.js +0 -6
  1077. package/dist/solutions-components/p-7fb072e0.entry.js +0 -11
  1078. package/dist/solutions-components/p-80b3eb6b.entry.js +0 -6
  1079. package/dist/solutions-components/p-80e8dac5.entry.js +0 -6
  1080. package/dist/solutions-components/p-814ad17b.js +0 -6
  1081. package/dist/solutions-components/p-820d8935.js +0 -11
  1082. package/dist/solutions-components/p-8294d644.js +0 -21
  1083. package/dist/solutions-components/p-82e085d0.js +0 -6
  1084. package/dist/solutions-components/p-84913712.js +0 -6
  1085. package/dist/solutions-components/p-865a9a2b.js +0 -6
  1086. package/dist/solutions-components/p-8674e740.js +0 -11
  1087. package/dist/solutions-components/p-86a8cf0e.js +0 -11
  1088. package/dist/solutions-components/p-8959c8fb.entry.js +0 -6
  1089. package/dist/solutions-components/p-896c9644.js +0 -36
  1090. package/dist/solutions-components/p-89a0889f.js +0 -21
  1091. package/dist/solutions-components/p-8f760a96.js +0 -11
  1092. package/dist/solutions-components/p-8fd36ce2.js +0 -6
  1093. package/dist/solutions-components/p-92eadd14.entry.js +0 -6
  1094. package/dist/solutions-components/p-937f5a14.js +0 -6
  1095. package/dist/solutions-components/p-96c901b4.entry.js +0 -6
  1096. package/dist/solutions-components/p-96e9c88b.js +0 -6
  1097. package/dist/solutions-components/p-972fd6e2.js +0 -11
  1098. package/dist/solutions-components/p-996a9b86.js +0 -6
  1099. package/dist/solutions-components/p-997ed04c.js +0 -6
  1100. package/dist/solutions-components/p-9cfc59dd.entry.js +0 -6
  1101. package/dist/solutions-components/p-9d495d2d.entry.js +0 -6
  1102. package/dist/solutions-components/p-9db9645e.js +0 -12
  1103. package/dist/solutions-components/p-9f11bcc0.js +0 -6
  1104. package/dist/solutions-components/p-9f27fdfb.js +0 -6
  1105. package/dist/solutions-components/p-9f635891.js +0 -17
  1106. package/dist/solutions-components/p-9fdd8168.entry.js +0 -11
  1107. package/dist/solutions-components/p-a008937e.entry.js +0 -6
  1108. package/dist/solutions-components/p-a24e5541.js +0 -6
  1109. package/dist/solutions-components/p-a25bbcc1.js +0 -11
  1110. package/dist/solutions-components/p-a520fedd.js +0 -6
  1111. package/dist/solutions-components/p-a5f1bbe9.js +0 -6
  1112. package/dist/solutions-components/p-a87405cb.entry.js +0 -11
  1113. package/dist/solutions-components/p-abd5ccf9.entry.js +0 -11
  1114. package/dist/solutions-components/p-ac77e72f.js +0 -6
  1115. package/dist/solutions-components/p-ad5e5e4d.entry.js +0 -11
  1116. package/dist/solutions-components/p-b0a4644b.js +0 -6
  1117. package/dist/solutions-components/p-b5bfe190.js +0 -16
  1118. package/dist/solutions-components/p-b5e4046b.entry.js +0 -6
  1119. package/dist/solutions-components/p-b965c059.entry.js +0 -16
  1120. package/dist/solutions-components/p-bb2e669d.entry.js +0 -6
  1121. package/dist/solutions-components/p-bb53e532.js +0 -6
  1122. package/dist/solutions-components/p-bc82830a.js +0 -6
  1123. package/dist/solutions-components/p-bda54b12.entry.js +0 -6
  1124. package/dist/solutions-components/p-bdcf99c0.js +0 -6
  1125. package/dist/solutions-components/p-bfd3d428.js +0 -11
  1126. package/dist/solutions-components/p-c02351ae.entry.js +0 -11
  1127. package/dist/solutions-components/p-c0c5c7a9.js +0 -6
  1128. package/dist/solutions-components/p-c1222f6b.entry.js +0 -6
  1129. package/dist/solutions-components/p-c151a297.entry.js +0 -6
  1130. package/dist/solutions-components/p-c4a44f66.js +0 -6
  1131. package/dist/solutions-components/p-c512fcfb.entry.js +0 -6
  1132. package/dist/solutions-components/p-c5becad1.entry.js +0 -6
  1133. package/dist/solutions-components/p-c6be0487.entry.js +0 -6
  1134. package/dist/solutions-components/p-c757c37b.js +0 -6
  1135. package/dist/solutions-components/p-c791e836.entry.js +0 -6
  1136. package/dist/solutions-components/p-c7f0e7a8.entry.js +0 -6
  1137. package/dist/solutions-components/p-c8260cf0.js +0 -145
  1138. package/dist/solutions-components/p-c9653aec.js +0 -6
  1139. package/dist/solutions-components/p-ca37a0ef.entry.js +0 -16
  1140. package/dist/solutions-components/p-cb20ba34.entry.js +0 -21
  1141. package/dist/solutions-components/p-cce71e60.entry.js +0 -11
  1142. package/dist/solutions-components/p-cd190ff9.js +0 -6
  1143. package/dist/solutions-components/p-cd91c3e7.entry.js +0 -29
  1144. package/dist/solutions-components/p-ceba37d3.entry.js +0 -11
  1145. package/dist/solutions-components/p-cf5d4ed0.entry.js +0 -11
  1146. package/dist/solutions-components/p-d0e73f95.entry.js +0 -11
  1147. package/dist/solutions-components/p-d0ebefa0.entry.js +0 -11
  1148. package/dist/solutions-components/p-d893cddf.entry.js +0 -11
  1149. package/dist/solutions-components/p-d8a15e32.entry.js +0 -6
  1150. package/dist/solutions-components/p-d8da6406.entry.js +0 -6
  1151. package/dist/solutions-components/p-da6b3c8a.entry.js +0 -6
  1152. package/dist/solutions-components/p-dcc5f283.entry.js +0 -6
  1153. package/dist/solutions-components/p-dd3e8920.entry.js +0 -6
  1154. package/dist/solutions-components/p-deb3adb8.js +0 -6
  1155. package/dist/solutions-components/p-e2400b0d.entry.js +0 -6
  1156. package/dist/solutions-components/p-e2c898f9.entry.js +0 -24
  1157. package/dist/solutions-components/p-e2efd3ac.entry.js +0 -11
  1158. package/dist/solutions-components/p-e64a3cc4.entry.js +0 -11
  1159. package/dist/solutions-components/p-e96d0b39.js +0 -6
  1160. package/dist/solutions-components/p-ead4a5f5.entry.js +0 -6
  1161. package/dist/solutions-components/p-ec843a3e.js +0 -6
  1162. package/dist/solutions-components/p-eda6994e.entry.js +0 -6
  1163. package/dist/solutions-components/p-edb1e0b4.entry.js +0 -17
  1164. package/dist/solutions-components/p-edcc1f23.entry.js +0 -36
  1165. package/dist/solutions-components/p-ee81a7c3.js +0 -6
  1166. package/dist/solutions-components/p-eeaed243.js +0 -11
  1167. package/dist/solutions-components/p-f1822d63.js +0 -6
  1168. package/dist/solutions-components/p-f22a4439.js +0 -21
  1169. package/dist/solutions-components/p-f2e68b62.entry.js +0 -6
  1170. package/dist/solutions-components/p-f4456214.js +0 -6
  1171. package/dist/solutions-components/p-f7b791a8.entry.js +0 -6
  1172. package/dist/solutions-components/p-f9475704.js +0 -6
  1173. package/dist/solutions-components/p-fac36b42.entry.js +0 -6
  1174. package/dist/solutions-components/p-fc6313ba.entry.js +0 -11
  1175. package/dist/solutions-components/p-fc79eaaf.js +0 -6
  1176. package/dist/solutions-components/p-fcb11407.entry.js +0 -11
  1177. package/dist/solutions-components/p-fd28754c.entry.js +0 -6
  1178. package/dist/solutions-components/p-fd6f2ba3.js +0 -6
  1179. package/dist/solutions-components/p-ff8f475a.entry.js +0 -11
  1180. /package/dist/solutions-components/{p-abea8ef5.js → p-04674a1e.js} +0 -0
  1181. /package/dist/solutions-components/{p-5aaa05ef.js → p-996c1ac5.js} +0 -0
  1182. /package/dist/solutions-components/{p-eeee7c7a.js → p-a42ff7fe.js} +0 -0
  1183. /package/dist/solutions-components/{p-c96eb2db.js → p-a9a72626.js} +0 -0
@@ -0,0 +1,2295 @@
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ 'use strict';
7
+
8
+ require('./index-ff18be0d.js');
9
+ const dom = require('./dom-1c78fa73.js');
10
+ const debounce = require('./debounce-7f1e04d6.js');
11
+
12
+ /**
13
+ * Custom positioning reference element.
14
+ * @see https://floating-ui.com/docs/virtual-elements
15
+ */
16
+
17
+ const sides = ['top', 'right', 'bottom', 'left'];
18
+ const alignments = ['start', 'end'];
19
+ const placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + "-" + alignments[0], side + "-" + alignments[1]), []);
20
+ const min = Math.min;
21
+ const max = Math.max;
22
+ const round = Math.round;
23
+ const floor = Math.floor;
24
+ const createCoords = v => ({
25
+ x: v,
26
+ y: v
27
+ });
28
+ const oppositeSideMap = {
29
+ left: 'right',
30
+ right: 'left',
31
+ bottom: 'top',
32
+ top: 'bottom'
33
+ };
34
+ const oppositeAlignmentMap = {
35
+ start: 'end',
36
+ end: 'start'
37
+ };
38
+ function clamp(start, value, end) {
39
+ return max(start, min(value, end));
40
+ }
41
+ function evaluate(value, param) {
42
+ return typeof value === 'function' ? value(param) : value;
43
+ }
44
+ function getSide(placement) {
45
+ return placement.split('-')[0];
46
+ }
47
+ function getAlignment(placement) {
48
+ return placement.split('-')[1];
49
+ }
50
+ function getOppositeAxis(axis) {
51
+ return axis === 'x' ? 'y' : 'x';
52
+ }
53
+ function getAxisLength(axis) {
54
+ return axis === 'y' ? 'height' : 'width';
55
+ }
56
+ function getSideAxis(placement) {
57
+ return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
58
+ }
59
+ function getAlignmentAxis(placement) {
60
+ return getOppositeAxis(getSideAxis(placement));
61
+ }
62
+ function getAlignmentSides(placement, rects, rtl) {
63
+ if (rtl === void 0) {
64
+ rtl = false;
65
+ }
66
+ const alignment = getAlignment(placement);
67
+ const alignmentAxis = getAlignmentAxis(placement);
68
+ const length = getAxisLength(alignmentAxis);
69
+ let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
70
+ if (rects.reference[length] > rects.floating[length]) {
71
+ mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
72
+ }
73
+ return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
74
+ }
75
+ function getExpandedPlacements(placement) {
76
+ const oppositePlacement = getOppositePlacement(placement);
77
+ return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
78
+ }
79
+ function getOppositeAlignmentPlacement(placement) {
80
+ return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
81
+ }
82
+ function getSideList(side, isStart, rtl) {
83
+ const lr = ['left', 'right'];
84
+ const rl = ['right', 'left'];
85
+ const tb = ['top', 'bottom'];
86
+ const bt = ['bottom', 'top'];
87
+ switch (side) {
88
+ case 'top':
89
+ case 'bottom':
90
+ if (rtl) return isStart ? rl : lr;
91
+ return isStart ? lr : rl;
92
+ case 'left':
93
+ case 'right':
94
+ return isStart ? tb : bt;
95
+ default:
96
+ return [];
97
+ }
98
+ }
99
+ function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
100
+ const alignment = getAlignment(placement);
101
+ let list = getSideList(getSide(placement), direction === 'start', rtl);
102
+ if (alignment) {
103
+ list = list.map(side => side + "-" + alignment);
104
+ if (flipAlignment) {
105
+ list = list.concat(list.map(getOppositeAlignmentPlacement));
106
+ }
107
+ }
108
+ return list;
109
+ }
110
+ function getOppositePlacement(placement) {
111
+ return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
112
+ }
113
+ function expandPaddingObject(padding) {
114
+ return {
115
+ top: 0,
116
+ right: 0,
117
+ bottom: 0,
118
+ left: 0,
119
+ ...padding
120
+ };
121
+ }
122
+ function getPaddingObject(padding) {
123
+ return typeof padding !== 'number' ? expandPaddingObject(padding) : {
124
+ top: padding,
125
+ right: padding,
126
+ bottom: padding,
127
+ left: padding
128
+ };
129
+ }
130
+ function rectToClientRect(rect) {
131
+ const {
132
+ x,
133
+ y,
134
+ width,
135
+ height
136
+ } = rect;
137
+ return {
138
+ width,
139
+ height,
140
+ top: y,
141
+ left: x,
142
+ right: x + width,
143
+ bottom: y + height,
144
+ x,
145
+ y
146
+ };
147
+ }
148
+
149
+ function computeCoordsFromPlacement(_ref, placement, rtl) {
150
+ let {
151
+ reference,
152
+ floating
153
+ } = _ref;
154
+ const sideAxis = getSideAxis(placement);
155
+ const alignmentAxis = getAlignmentAxis(placement);
156
+ const alignLength = getAxisLength(alignmentAxis);
157
+ const side = getSide(placement);
158
+ const isVertical = sideAxis === 'y';
159
+ const commonX = reference.x + reference.width / 2 - floating.width / 2;
160
+ const commonY = reference.y + reference.height / 2 - floating.height / 2;
161
+ const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;
162
+ let coords;
163
+ switch (side) {
164
+ case 'top':
165
+ coords = {
166
+ x: commonX,
167
+ y: reference.y - floating.height
168
+ };
169
+ break;
170
+ case 'bottom':
171
+ coords = {
172
+ x: commonX,
173
+ y: reference.y + reference.height
174
+ };
175
+ break;
176
+ case 'right':
177
+ coords = {
178
+ x: reference.x + reference.width,
179
+ y: commonY
180
+ };
181
+ break;
182
+ case 'left':
183
+ coords = {
184
+ x: reference.x - floating.width,
185
+ y: commonY
186
+ };
187
+ break;
188
+ default:
189
+ coords = {
190
+ x: reference.x,
191
+ y: reference.y
192
+ };
193
+ }
194
+ switch (getAlignment(placement)) {
195
+ case 'start':
196
+ coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
197
+ break;
198
+ case 'end':
199
+ coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
200
+ break;
201
+ }
202
+ return coords;
203
+ }
204
+
205
+ /**
206
+ * Computes the `x` and `y` coordinates that will place the floating element
207
+ * next to a given reference element.
208
+ *
209
+ * This export does not have any `platform` interface logic. You will need to
210
+ * write one for the platform you are using Floating UI with.
211
+ */
212
+ const computePosition$1 = async (reference, floating, config) => {
213
+ const {
214
+ placement = 'bottom',
215
+ strategy = 'absolute',
216
+ middleware = [],
217
+ platform
218
+ } = config;
219
+ const validMiddleware = middleware.filter(Boolean);
220
+ const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));
221
+ let rects = await platform.getElementRects({
222
+ reference,
223
+ floating,
224
+ strategy
225
+ });
226
+ let {
227
+ x,
228
+ y
229
+ } = computeCoordsFromPlacement(rects, placement, rtl);
230
+ let statefulPlacement = placement;
231
+ let middlewareData = {};
232
+ let resetCount = 0;
233
+ for (let i = 0; i < validMiddleware.length; i++) {
234
+ const {
235
+ name,
236
+ fn
237
+ } = validMiddleware[i];
238
+ const {
239
+ x: nextX,
240
+ y: nextY,
241
+ data,
242
+ reset
243
+ } = await fn({
244
+ x,
245
+ y,
246
+ initialPlacement: placement,
247
+ placement: statefulPlacement,
248
+ strategy,
249
+ middlewareData,
250
+ rects,
251
+ platform,
252
+ elements: {
253
+ reference,
254
+ floating
255
+ }
256
+ });
257
+ x = nextX != null ? nextX : x;
258
+ y = nextY != null ? nextY : y;
259
+ middlewareData = {
260
+ ...middlewareData,
261
+ [name]: {
262
+ ...middlewareData[name],
263
+ ...data
264
+ }
265
+ };
266
+ if (reset && resetCount <= 50) {
267
+ resetCount++;
268
+ if (typeof reset === 'object') {
269
+ if (reset.placement) {
270
+ statefulPlacement = reset.placement;
271
+ }
272
+ if (reset.rects) {
273
+ rects = reset.rects === true ? await platform.getElementRects({
274
+ reference,
275
+ floating,
276
+ strategy
277
+ }) : reset.rects;
278
+ }
279
+ ({
280
+ x,
281
+ y
282
+ } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));
283
+ }
284
+ i = -1;
285
+ }
286
+ }
287
+ return {
288
+ x,
289
+ y,
290
+ placement: statefulPlacement,
291
+ strategy,
292
+ middlewareData
293
+ };
294
+ };
295
+
296
+ /**
297
+ * Resolves with an object of overflow side offsets that determine how much the
298
+ * element is overflowing a given clipping boundary on each side.
299
+ * - positive = overflowing the boundary by that number of pixels
300
+ * - negative = how many pixels left before it will overflow
301
+ * - 0 = lies flush with the boundary
302
+ * @see https://floating-ui.com/docs/detectOverflow
303
+ */
304
+ async function detectOverflow(state, options) {
305
+ var _await$platform$isEle;
306
+ if (options === void 0) {
307
+ options = {};
308
+ }
309
+ const {
310
+ x,
311
+ y,
312
+ platform,
313
+ rects,
314
+ elements,
315
+ strategy
316
+ } = state;
317
+ const {
318
+ boundary = 'clippingAncestors',
319
+ rootBoundary = 'viewport',
320
+ elementContext = 'floating',
321
+ altBoundary = false,
322
+ padding = 0
323
+ } = evaluate(options, state);
324
+ const paddingObject = getPaddingObject(padding);
325
+ const altContext = elementContext === 'floating' ? 'reference' : 'floating';
326
+ const element = elements[altBoundary ? altContext : elementContext];
327
+ const clippingClientRect = rectToClientRect(await platform.getClippingRect({
328
+ element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),
329
+ boundary,
330
+ rootBoundary,
331
+ strategy
332
+ }));
333
+ const rect = elementContext === 'floating' ? {
334
+ x,
335
+ y,
336
+ width: rects.floating.width,
337
+ height: rects.floating.height
338
+ } : rects.reference;
339
+ const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
340
+ const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {
341
+ x: 1,
342
+ y: 1
343
+ } : {
344
+ x: 1,
345
+ y: 1
346
+ };
347
+ const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
348
+ elements,
349
+ rect,
350
+ offsetParent,
351
+ strategy
352
+ }) : rect);
353
+ return {
354
+ top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
355
+ bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
356
+ left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
357
+ right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
358
+ };
359
+ }
360
+
361
+ /**
362
+ * Provides data to position an inner element of the floating element so that it
363
+ * appears centered to the reference element.
364
+ * @see https://floating-ui.com/docs/arrow
365
+ */
366
+ const arrow$1 = options => ({
367
+ name: 'arrow',
368
+ options,
369
+ async fn(state) {
370
+ const {
371
+ x,
372
+ y,
373
+ placement,
374
+ rects,
375
+ platform,
376
+ elements,
377
+ middlewareData
378
+ } = state;
379
+ // Since `element` is required, we don't Partial<> the type.
380
+ const {
381
+ element,
382
+ padding = 0
383
+ } = evaluate(options, state) || {};
384
+ if (element == null) {
385
+ return {};
386
+ }
387
+ const paddingObject = getPaddingObject(padding);
388
+ const coords = {
389
+ x,
390
+ y
391
+ };
392
+ const axis = getAlignmentAxis(placement);
393
+ const length = getAxisLength(axis);
394
+ const arrowDimensions = await platform.getDimensions(element);
395
+ const isYAxis = axis === 'y';
396
+ const minProp = isYAxis ? 'top' : 'left';
397
+ const maxProp = isYAxis ? 'bottom' : 'right';
398
+ const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';
399
+ const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];
400
+ const startDiff = coords[axis] - rects.reference[axis];
401
+ const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));
402
+ let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;
403
+
404
+ // DOM platform can return `window` as the `offsetParent`.
405
+ if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {
406
+ clientSize = elements.floating[clientProp] || rects.floating[length];
407
+ }
408
+ const centerToReference = endDiff / 2 - startDiff / 2;
409
+
410
+ // If the padding is large enough that it causes the arrow to no longer be
411
+ // centered, modify the padding so that it is centered.
412
+ const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
413
+ const minPadding = min(paddingObject[minProp], largestPossiblePadding);
414
+ const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);
415
+
416
+ // Make sure the arrow doesn't overflow the floating element if the center
417
+ // point is outside the floating element's bounds.
418
+ const min$1 = minPadding;
419
+ const max = clientSize - arrowDimensions[length] - maxPadding;
420
+ const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
421
+ const offset = clamp(min$1, center, max);
422
+
423
+ // If the reference is small enough that the arrow's padding causes it to
424
+ // to point to nothing for an aligned placement, adjust the offset of the
425
+ // floating element itself. To ensure `shift()` continues to take action,
426
+ // a single reset is performed when this is true.
427
+ const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
428
+ const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;
429
+ return {
430
+ [axis]: coords[axis] + alignmentOffset,
431
+ data: {
432
+ [axis]: offset,
433
+ centerOffset: center - offset - alignmentOffset,
434
+ ...(shouldAddOffset && {
435
+ alignmentOffset
436
+ })
437
+ },
438
+ reset: shouldAddOffset
439
+ };
440
+ }
441
+ });
442
+
443
+ function getPlacementList(alignment, autoAlignment, allowedPlacements) {
444
+ const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);
445
+ return allowedPlacementsSortedByAlignment.filter(placement => {
446
+ if (alignment) {
447
+ return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);
448
+ }
449
+ return true;
450
+ });
451
+ }
452
+ /**
453
+ * Optimizes the visibility of the floating element by choosing the placement
454
+ * that has the most space available automatically, without needing to specify a
455
+ * preferred placement. Alternative to `flip`.
456
+ * @see https://floating-ui.com/docs/autoPlacement
457
+ */
458
+ const autoPlacement$1 = function (options) {
459
+ if (options === void 0) {
460
+ options = {};
461
+ }
462
+ return {
463
+ name: 'autoPlacement',
464
+ options,
465
+ async fn(state) {
466
+ var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;
467
+ const {
468
+ rects,
469
+ middlewareData,
470
+ placement,
471
+ platform,
472
+ elements
473
+ } = state;
474
+ const {
475
+ crossAxis = false,
476
+ alignment,
477
+ allowedPlacements = placements,
478
+ autoAlignment = true,
479
+ ...detectOverflowOptions
480
+ } = evaluate(options, state);
481
+ const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;
482
+ const overflow = await detectOverflow(state, detectOverflowOptions);
483
+ const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;
484
+ const currentPlacement = placements$1[currentIndex];
485
+ if (currentPlacement == null) {
486
+ return {};
487
+ }
488
+ const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));
489
+
490
+ // Make `computeCoords` start from the right place.
491
+ if (placement !== currentPlacement) {
492
+ return {
493
+ reset: {
494
+ placement: placements$1[0]
495
+ }
496
+ };
497
+ }
498
+ const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];
499
+ const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {
500
+ placement: currentPlacement,
501
+ overflows: currentOverflows
502
+ }];
503
+ const nextPlacement = placements$1[currentIndex + 1];
504
+
505
+ // There are more placements to check.
506
+ if (nextPlacement) {
507
+ return {
508
+ data: {
509
+ index: currentIndex + 1,
510
+ overflows: allOverflows
511
+ },
512
+ reset: {
513
+ placement: nextPlacement
514
+ }
515
+ };
516
+ }
517
+ const placementsSortedByMostSpace = allOverflows.map(d => {
518
+ const alignment = getAlignment(d.placement);
519
+ return [d.placement, alignment && crossAxis ?
520
+ // Check along the mainAxis and main crossAxis side.
521
+ d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :
522
+ // Check only the mainAxis.
523
+ d.overflows[0], d.overflows];
524
+ }).sort((a, b) => a[1] - b[1]);
525
+ const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,
526
+ // Aligned placements should not check their opposite crossAxis
527
+ // side.
528
+ getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));
529
+ const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];
530
+ if (resetPlacement !== placement) {
531
+ return {
532
+ data: {
533
+ index: currentIndex + 1,
534
+ overflows: allOverflows
535
+ },
536
+ reset: {
537
+ placement: resetPlacement
538
+ }
539
+ };
540
+ }
541
+ return {};
542
+ }
543
+ };
544
+ };
545
+
546
+ /**
547
+ * Optimizes the visibility of the floating element by flipping the `placement`
548
+ * in order to keep it in view when the preferred placement(s) will overflow the
549
+ * clipping boundary. Alternative to `autoPlacement`.
550
+ * @see https://floating-ui.com/docs/flip
551
+ */
552
+ const flip$1 = function (options) {
553
+ if (options === void 0) {
554
+ options = {};
555
+ }
556
+ return {
557
+ name: 'flip',
558
+ options,
559
+ async fn(state) {
560
+ var _middlewareData$arrow, _middlewareData$flip;
561
+ const {
562
+ placement,
563
+ middlewareData,
564
+ rects,
565
+ initialPlacement,
566
+ platform,
567
+ elements
568
+ } = state;
569
+ const {
570
+ mainAxis: checkMainAxis = true,
571
+ crossAxis: checkCrossAxis = true,
572
+ fallbackPlacements: specifiedFallbackPlacements,
573
+ fallbackStrategy = 'bestFit',
574
+ fallbackAxisSideDirection = 'none',
575
+ flipAlignment = true,
576
+ ...detectOverflowOptions
577
+ } = evaluate(options, state);
578
+
579
+ // If a reset by the arrow was caused due to an alignment offset being
580
+ // added, we should skip any logic now since `flip()` has already done its
581
+ // work.
582
+ // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643
583
+ if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
584
+ return {};
585
+ }
586
+ const side = getSide(placement);
587
+ const isBasePlacement = getSide(initialPlacement) === initialPlacement;
588
+ const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
589
+ const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
590
+ if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {
591
+ fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
592
+ }
593
+ const placements = [initialPlacement, ...fallbackPlacements];
594
+ const overflow = await detectOverflow(state, detectOverflowOptions);
595
+ const overflows = [];
596
+ let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
597
+ if (checkMainAxis) {
598
+ overflows.push(overflow[side]);
599
+ }
600
+ if (checkCrossAxis) {
601
+ const sides = getAlignmentSides(placement, rects, rtl);
602
+ overflows.push(overflow[sides[0]], overflow[sides[1]]);
603
+ }
604
+ overflowsData = [...overflowsData, {
605
+ placement,
606
+ overflows
607
+ }];
608
+
609
+ // One or more sides is overflowing.
610
+ if (!overflows.every(side => side <= 0)) {
611
+ var _middlewareData$flip2, _overflowsData$filter;
612
+ const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
613
+ const nextPlacement = placements[nextIndex];
614
+ if (nextPlacement) {
615
+ // Try next placement and re-run the lifecycle.
616
+ return {
617
+ data: {
618
+ index: nextIndex,
619
+ overflows: overflowsData
620
+ },
621
+ reset: {
622
+ placement: nextPlacement
623
+ }
624
+ };
625
+ }
626
+
627
+ // First, find the candidates that fit on the mainAxis side of overflow,
628
+ // then find the placement that fits the best on the main crossAxis side.
629
+ let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;
630
+
631
+ // Otherwise fallback.
632
+ if (!resetPlacement) {
633
+ switch (fallbackStrategy) {
634
+ case 'bestFit':
635
+ {
636
+ var _overflowsData$map$so;
637
+ const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];
638
+ if (placement) {
639
+ resetPlacement = placement;
640
+ }
641
+ break;
642
+ }
643
+ case 'initialPlacement':
644
+ resetPlacement = initialPlacement;
645
+ break;
646
+ }
647
+ }
648
+ if (placement !== resetPlacement) {
649
+ return {
650
+ reset: {
651
+ placement: resetPlacement
652
+ }
653
+ };
654
+ }
655
+ }
656
+ return {};
657
+ }
658
+ };
659
+ };
660
+
661
+ function getSideOffsets(overflow, rect) {
662
+ return {
663
+ top: overflow.top - rect.height,
664
+ right: overflow.right - rect.width,
665
+ bottom: overflow.bottom - rect.height,
666
+ left: overflow.left - rect.width
667
+ };
668
+ }
669
+ function isAnySideFullyClipped(overflow) {
670
+ return sides.some(side => overflow[side] >= 0);
671
+ }
672
+ /**
673
+ * Provides data to hide the floating element in applicable situations, such as
674
+ * when it is not in the same clipping context as the reference element.
675
+ * @see https://floating-ui.com/docs/hide
676
+ */
677
+ const hide$1 = function (options) {
678
+ if (options === void 0) {
679
+ options = {};
680
+ }
681
+ return {
682
+ name: 'hide',
683
+ options,
684
+ async fn(state) {
685
+ const {
686
+ rects
687
+ } = state;
688
+ const {
689
+ strategy = 'referenceHidden',
690
+ ...detectOverflowOptions
691
+ } = evaluate(options, state);
692
+ switch (strategy) {
693
+ case 'referenceHidden':
694
+ {
695
+ const overflow = await detectOverflow(state, {
696
+ ...detectOverflowOptions,
697
+ elementContext: 'reference'
698
+ });
699
+ const offsets = getSideOffsets(overflow, rects.reference);
700
+ return {
701
+ data: {
702
+ referenceHiddenOffsets: offsets,
703
+ referenceHidden: isAnySideFullyClipped(offsets)
704
+ }
705
+ };
706
+ }
707
+ case 'escaped':
708
+ {
709
+ const overflow = await detectOverflow(state, {
710
+ ...detectOverflowOptions,
711
+ altBoundary: true
712
+ });
713
+ const offsets = getSideOffsets(overflow, rects.floating);
714
+ return {
715
+ data: {
716
+ escapedOffsets: offsets,
717
+ escaped: isAnySideFullyClipped(offsets)
718
+ }
719
+ };
720
+ }
721
+ default:
722
+ {
723
+ return {};
724
+ }
725
+ }
726
+ }
727
+ };
728
+ };
729
+
730
+ function getBoundingRect(rects) {
731
+ const minX = min(...rects.map(rect => rect.left));
732
+ const minY = min(...rects.map(rect => rect.top));
733
+ const maxX = max(...rects.map(rect => rect.right));
734
+ const maxY = max(...rects.map(rect => rect.bottom));
735
+ return {
736
+ x: minX,
737
+ y: minY,
738
+ width: maxX - minX,
739
+ height: maxY - minY
740
+ };
741
+ }
742
+ function getRectsByLine(rects) {
743
+ const sortedRects = rects.slice().sort((a, b) => a.y - b.y);
744
+ const groups = [];
745
+ let prevRect = null;
746
+ for (let i = 0; i < sortedRects.length; i++) {
747
+ const rect = sortedRects[i];
748
+ if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {
749
+ groups.push([rect]);
750
+ } else {
751
+ groups[groups.length - 1].push(rect);
752
+ }
753
+ prevRect = rect;
754
+ }
755
+ return groups.map(rect => rectToClientRect(getBoundingRect(rect)));
756
+ }
757
+ /**
758
+ * Provides improved positioning for inline reference elements that can span
759
+ * over multiple lines, such as hyperlinks or range selections.
760
+ * @see https://floating-ui.com/docs/inline
761
+ */
762
+ const inline = function (options) {
763
+ if (options === void 0) {
764
+ options = {};
765
+ }
766
+ return {
767
+ name: 'inline',
768
+ options,
769
+ async fn(state) {
770
+ const {
771
+ placement,
772
+ elements,
773
+ rects,
774
+ platform,
775
+ strategy
776
+ } = state;
777
+ // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a
778
+ // ClientRect's bounds, despite the event listener being triggered. A
779
+ // padding of 2 seems to handle this issue.
780
+ const {
781
+ padding = 2,
782
+ x,
783
+ y
784
+ } = evaluate(options, state);
785
+ const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);
786
+ const clientRects = getRectsByLine(nativeClientRects);
787
+ const fallback = rectToClientRect(getBoundingRect(nativeClientRects));
788
+ const paddingObject = getPaddingObject(padding);
789
+ function getBoundingClientRect() {
790
+ // There are two rects and they are disjoined.
791
+ if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {
792
+ // Find the first rect in which the point is fully inside.
793
+ return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;
794
+ }
795
+
796
+ // There are 2 or more connected rects.
797
+ if (clientRects.length >= 2) {
798
+ if (getSideAxis(placement) === 'y') {
799
+ const firstRect = clientRects[0];
800
+ const lastRect = clientRects[clientRects.length - 1];
801
+ const isTop = getSide(placement) === 'top';
802
+ const top = firstRect.top;
803
+ const bottom = lastRect.bottom;
804
+ const left = isTop ? firstRect.left : lastRect.left;
805
+ const right = isTop ? firstRect.right : lastRect.right;
806
+ const width = right - left;
807
+ const height = bottom - top;
808
+ return {
809
+ top,
810
+ bottom,
811
+ left,
812
+ right,
813
+ width,
814
+ height,
815
+ x: left,
816
+ y: top
817
+ };
818
+ }
819
+ const isLeftSide = getSide(placement) === 'left';
820
+ const maxRight = max(...clientRects.map(rect => rect.right));
821
+ const minLeft = min(...clientRects.map(rect => rect.left));
822
+ const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);
823
+ const top = measureRects[0].top;
824
+ const bottom = measureRects[measureRects.length - 1].bottom;
825
+ const left = minLeft;
826
+ const right = maxRight;
827
+ const width = right - left;
828
+ const height = bottom - top;
829
+ return {
830
+ top,
831
+ bottom,
832
+ left,
833
+ right,
834
+ width,
835
+ height,
836
+ x: left,
837
+ y: top
838
+ };
839
+ }
840
+ return fallback;
841
+ }
842
+ const resetRects = await platform.getElementRects({
843
+ reference: {
844
+ getBoundingClientRect
845
+ },
846
+ floating: elements.floating,
847
+ strategy
848
+ });
849
+ if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {
850
+ return {
851
+ reset: {
852
+ rects: resetRects
853
+ }
854
+ };
855
+ }
856
+ return {};
857
+ }
858
+ };
859
+ };
860
+
861
+ // For type backwards-compatibility, the `OffsetOptions` type was also
862
+ // Derivable.
863
+
864
+ async function convertValueToCoords(state, options) {
865
+ const {
866
+ placement,
867
+ platform,
868
+ elements
869
+ } = state;
870
+ const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
871
+ const side = getSide(placement);
872
+ const alignment = getAlignment(placement);
873
+ const isVertical = getSideAxis(placement) === 'y';
874
+ const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
875
+ const crossAxisMulti = rtl && isVertical ? -1 : 1;
876
+ const rawValue = evaluate(options, state);
877
+
878
+ // eslint-disable-next-line prefer-const
879
+ let {
880
+ mainAxis,
881
+ crossAxis,
882
+ alignmentAxis
883
+ } = typeof rawValue === 'number' ? {
884
+ mainAxis: rawValue,
885
+ crossAxis: 0,
886
+ alignmentAxis: null
887
+ } : {
888
+ mainAxis: 0,
889
+ crossAxis: 0,
890
+ alignmentAxis: null,
891
+ ...rawValue
892
+ };
893
+ if (alignment && typeof alignmentAxis === 'number') {
894
+ crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;
895
+ }
896
+ return isVertical ? {
897
+ x: crossAxis * crossAxisMulti,
898
+ y: mainAxis * mainAxisMulti
899
+ } : {
900
+ x: mainAxis * mainAxisMulti,
901
+ y: crossAxis * crossAxisMulti
902
+ };
903
+ }
904
+
905
+ /**
906
+ * Modifies the placement by translating the floating element along the
907
+ * specified axes.
908
+ * A number (shorthand for `mainAxis` or distance), or an axes configuration
909
+ * object may be passed.
910
+ * @see https://floating-ui.com/docs/offset
911
+ */
912
+ const offset = function (options) {
913
+ if (options === void 0) {
914
+ options = 0;
915
+ }
916
+ return {
917
+ name: 'offset',
918
+ options,
919
+ async fn(state) {
920
+ var _middlewareData$offse, _middlewareData$arrow;
921
+ const {
922
+ x,
923
+ y,
924
+ placement,
925
+ middlewareData
926
+ } = state;
927
+ const diffCoords = await convertValueToCoords(state, options);
928
+
929
+ // If the placement is the same and the arrow caused an alignment offset
930
+ // then we don't need to change the positioning coordinates.
931
+ if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
932
+ return {};
933
+ }
934
+ return {
935
+ x: x + diffCoords.x,
936
+ y: y + diffCoords.y,
937
+ data: {
938
+ ...diffCoords,
939
+ placement
940
+ }
941
+ };
942
+ }
943
+ };
944
+ };
945
+
946
+ /**
947
+ * Optimizes the visibility of the floating element by shifting it in order to
948
+ * keep it in view when it will overflow the clipping boundary.
949
+ * @see https://floating-ui.com/docs/shift
950
+ */
951
+ const shift$1 = function (options) {
952
+ if (options === void 0) {
953
+ options = {};
954
+ }
955
+ return {
956
+ name: 'shift',
957
+ options,
958
+ async fn(state) {
959
+ const {
960
+ x,
961
+ y,
962
+ placement
963
+ } = state;
964
+ const {
965
+ mainAxis: checkMainAxis = true,
966
+ crossAxis: checkCrossAxis = false,
967
+ limiter = {
968
+ fn: _ref => {
969
+ let {
970
+ x,
971
+ y
972
+ } = _ref;
973
+ return {
974
+ x,
975
+ y
976
+ };
977
+ }
978
+ },
979
+ ...detectOverflowOptions
980
+ } = evaluate(options, state);
981
+ const coords = {
982
+ x,
983
+ y
984
+ };
985
+ const overflow = await detectOverflow(state, detectOverflowOptions);
986
+ const crossAxis = getSideAxis(getSide(placement));
987
+ const mainAxis = getOppositeAxis(crossAxis);
988
+ let mainAxisCoord = coords[mainAxis];
989
+ let crossAxisCoord = coords[crossAxis];
990
+ if (checkMainAxis) {
991
+ const minSide = mainAxis === 'y' ? 'top' : 'left';
992
+ const maxSide = mainAxis === 'y' ? 'bottom' : 'right';
993
+ const min = mainAxisCoord + overflow[minSide];
994
+ const max = mainAxisCoord - overflow[maxSide];
995
+ mainAxisCoord = clamp(min, mainAxisCoord, max);
996
+ }
997
+ if (checkCrossAxis) {
998
+ const minSide = crossAxis === 'y' ? 'top' : 'left';
999
+ const maxSide = crossAxis === 'y' ? 'bottom' : 'right';
1000
+ const min = crossAxisCoord + overflow[minSide];
1001
+ const max = crossAxisCoord - overflow[maxSide];
1002
+ crossAxisCoord = clamp(min, crossAxisCoord, max);
1003
+ }
1004
+ const limitedCoords = limiter.fn({
1005
+ ...state,
1006
+ [mainAxis]: mainAxisCoord,
1007
+ [crossAxis]: crossAxisCoord
1008
+ });
1009
+ return {
1010
+ ...limitedCoords,
1011
+ data: {
1012
+ x: limitedCoords.x - x,
1013
+ y: limitedCoords.y - y
1014
+ }
1015
+ };
1016
+ }
1017
+ };
1018
+ };
1019
+ /**
1020
+ * Built-in `limiter` that will stop `shift()` at a certain point.
1021
+ */
1022
+ const limitShift = function (options) {
1023
+ if (options === void 0) {
1024
+ options = {};
1025
+ }
1026
+ return {
1027
+ options,
1028
+ fn(state) {
1029
+ const {
1030
+ x,
1031
+ y,
1032
+ placement,
1033
+ rects,
1034
+ middlewareData
1035
+ } = state;
1036
+ const {
1037
+ offset = 0,
1038
+ mainAxis: checkMainAxis = true,
1039
+ crossAxis: checkCrossAxis = true
1040
+ } = evaluate(options, state);
1041
+ const coords = {
1042
+ x,
1043
+ y
1044
+ };
1045
+ const crossAxis = getSideAxis(placement);
1046
+ const mainAxis = getOppositeAxis(crossAxis);
1047
+ let mainAxisCoord = coords[mainAxis];
1048
+ let crossAxisCoord = coords[crossAxis];
1049
+ const rawOffset = evaluate(offset, state);
1050
+ const computedOffset = typeof rawOffset === 'number' ? {
1051
+ mainAxis: rawOffset,
1052
+ crossAxis: 0
1053
+ } : {
1054
+ mainAxis: 0,
1055
+ crossAxis: 0,
1056
+ ...rawOffset
1057
+ };
1058
+ if (checkMainAxis) {
1059
+ const len = mainAxis === 'y' ? 'height' : 'width';
1060
+ const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;
1061
+ const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;
1062
+ if (mainAxisCoord < limitMin) {
1063
+ mainAxisCoord = limitMin;
1064
+ } else if (mainAxisCoord > limitMax) {
1065
+ mainAxisCoord = limitMax;
1066
+ }
1067
+ }
1068
+ if (checkCrossAxis) {
1069
+ var _middlewareData$offse, _middlewareData$offse2;
1070
+ const len = mainAxis === 'y' ? 'width' : 'height';
1071
+ const isOriginSide = ['top', 'left'].includes(getSide(placement));
1072
+ const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);
1073
+ const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);
1074
+ if (crossAxisCoord < limitMin) {
1075
+ crossAxisCoord = limitMin;
1076
+ } else if (crossAxisCoord > limitMax) {
1077
+ crossAxisCoord = limitMax;
1078
+ }
1079
+ }
1080
+ return {
1081
+ [mainAxis]: mainAxisCoord,
1082
+ [crossAxis]: crossAxisCoord
1083
+ };
1084
+ }
1085
+ };
1086
+ };
1087
+
1088
+ /**
1089
+ * Provides data that allows you to change the size of the floating element —
1090
+ * for instance, prevent it from overflowing the clipping boundary or match the
1091
+ * width of the reference element.
1092
+ * @see https://floating-ui.com/docs/size
1093
+ */
1094
+ const size = function (options) {
1095
+ if (options === void 0) {
1096
+ options = {};
1097
+ }
1098
+ return {
1099
+ name: 'size',
1100
+ options,
1101
+ async fn(state) {
1102
+ const {
1103
+ placement,
1104
+ rects,
1105
+ platform,
1106
+ elements
1107
+ } = state;
1108
+ const {
1109
+ apply = () => {},
1110
+ ...detectOverflowOptions
1111
+ } = evaluate(options, state);
1112
+ const overflow = await detectOverflow(state, detectOverflowOptions);
1113
+ const side = getSide(placement);
1114
+ const alignment = getAlignment(placement);
1115
+ const isYAxis = getSideAxis(placement) === 'y';
1116
+ const {
1117
+ width,
1118
+ height
1119
+ } = rects.floating;
1120
+ let heightSide;
1121
+ let widthSide;
1122
+ if (side === 'top' || side === 'bottom') {
1123
+ heightSide = side;
1124
+ widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';
1125
+ } else {
1126
+ widthSide = side;
1127
+ heightSide = alignment === 'end' ? 'top' : 'bottom';
1128
+ }
1129
+ const maximumClippingHeight = height - overflow.top - overflow.bottom;
1130
+ const maximumClippingWidth = width - overflow.left - overflow.right;
1131
+ const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);
1132
+ const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);
1133
+ const noShift = !state.middlewareData.shift;
1134
+ let availableHeight = overflowAvailableHeight;
1135
+ let availableWidth = overflowAvailableWidth;
1136
+ if (isYAxis) {
1137
+ availableWidth = alignment || noShift ? min(overflowAvailableWidth, maximumClippingWidth) : maximumClippingWidth;
1138
+ } else {
1139
+ availableHeight = alignment || noShift ? min(overflowAvailableHeight, maximumClippingHeight) : maximumClippingHeight;
1140
+ }
1141
+ if (noShift && !alignment) {
1142
+ const xMin = max(overflow.left, 0);
1143
+ const xMax = max(overflow.right, 0);
1144
+ const yMin = max(overflow.top, 0);
1145
+ const yMax = max(overflow.bottom, 0);
1146
+ if (isYAxis) {
1147
+ availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));
1148
+ } else {
1149
+ availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));
1150
+ }
1151
+ }
1152
+ await apply({
1153
+ ...state,
1154
+ availableWidth,
1155
+ availableHeight
1156
+ });
1157
+ const nextDimensions = await platform.getDimensions(elements.floating);
1158
+ if (width !== nextDimensions.width || height !== nextDimensions.height) {
1159
+ return {
1160
+ reset: {
1161
+ rects: true
1162
+ }
1163
+ };
1164
+ }
1165
+ return {};
1166
+ }
1167
+ };
1168
+ };
1169
+
1170
+ function getNodeName(node) {
1171
+ if (isNode(node)) {
1172
+ return (node.nodeName || '').toLowerCase();
1173
+ }
1174
+ // Mocked nodes in testing environments may not be instances of Node. By
1175
+ // returning `#document` an infinite loop won't occur.
1176
+ // https://github.com/floating-ui/floating-ui/issues/2317
1177
+ return '#document';
1178
+ }
1179
+ function getWindow(node) {
1180
+ var _node$ownerDocument;
1181
+ return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
1182
+ }
1183
+ function getDocumentElement(node) {
1184
+ var _ref;
1185
+ return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
1186
+ }
1187
+ function isNode(value) {
1188
+ return value instanceof Node || value instanceof getWindow(value).Node;
1189
+ }
1190
+ function isElement(value) {
1191
+ return value instanceof Element || value instanceof getWindow(value).Element;
1192
+ }
1193
+ function isHTMLElement(value) {
1194
+ return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
1195
+ }
1196
+ function isShadowRoot(value) {
1197
+ // Browsers without `ShadowRoot` support.
1198
+ if (typeof ShadowRoot === 'undefined') {
1199
+ return false;
1200
+ }
1201
+ return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
1202
+ }
1203
+ function isOverflowElement(element) {
1204
+ const {
1205
+ overflow,
1206
+ overflowX,
1207
+ overflowY,
1208
+ display
1209
+ } = getComputedStyle$1(element);
1210
+ return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);
1211
+ }
1212
+ function isTableElement(element) {
1213
+ return ['table', 'td', 'th'].includes(getNodeName(element));
1214
+ }
1215
+ function isContainingBlock(element) {
1216
+ const webkit = isWebKit();
1217
+ const css = getComputedStyle$1(element);
1218
+
1219
+ // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
1220
+ return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
1221
+ }
1222
+ function getContainingBlock(element) {
1223
+ let currentNode = getParentNode(element);
1224
+ while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
1225
+ if (isContainingBlock(currentNode)) {
1226
+ return currentNode;
1227
+ }
1228
+ currentNode = getParentNode(currentNode);
1229
+ }
1230
+ return null;
1231
+ }
1232
+ function isWebKit() {
1233
+ if (typeof CSS === 'undefined' || !CSS.supports) return false;
1234
+ return CSS.supports('-webkit-backdrop-filter', 'none');
1235
+ }
1236
+ function isLastTraversableNode(node) {
1237
+ return ['html', 'body', '#document'].includes(getNodeName(node));
1238
+ }
1239
+ function getComputedStyle$1(element) {
1240
+ return getWindow(element).getComputedStyle(element);
1241
+ }
1242
+ function getNodeScroll(element) {
1243
+ if (isElement(element)) {
1244
+ return {
1245
+ scrollLeft: element.scrollLeft,
1246
+ scrollTop: element.scrollTop
1247
+ };
1248
+ }
1249
+ return {
1250
+ scrollLeft: element.pageXOffset,
1251
+ scrollTop: element.pageYOffset
1252
+ };
1253
+ }
1254
+ function getParentNode(node) {
1255
+ if (getNodeName(node) === 'html') {
1256
+ return node;
1257
+ }
1258
+ const result =
1259
+ // Step into the shadow DOM of the parent of a slotted node.
1260
+ node.assignedSlot ||
1261
+ // DOM Element detected.
1262
+ node.parentNode ||
1263
+ // ShadowRoot detected.
1264
+ isShadowRoot(node) && node.host ||
1265
+ // Fallback.
1266
+ getDocumentElement(node);
1267
+ return isShadowRoot(result) ? result.host : result;
1268
+ }
1269
+ function getNearestOverflowAncestor(node) {
1270
+ const parentNode = getParentNode(node);
1271
+ if (isLastTraversableNode(parentNode)) {
1272
+ return node.ownerDocument ? node.ownerDocument.body : node.body;
1273
+ }
1274
+ if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
1275
+ return parentNode;
1276
+ }
1277
+ return getNearestOverflowAncestor(parentNode);
1278
+ }
1279
+ function getOverflowAncestors(node, list, traverseIframes) {
1280
+ var _node$ownerDocument2;
1281
+ if (list === void 0) {
1282
+ list = [];
1283
+ }
1284
+ if (traverseIframes === void 0) {
1285
+ traverseIframes = true;
1286
+ }
1287
+ const scrollableAncestor = getNearestOverflowAncestor(node);
1288
+ const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
1289
+ const win = getWindow(scrollableAncestor);
1290
+ if (isBody) {
1291
+ return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], win.frameElement && traverseIframes ? getOverflowAncestors(win.frameElement) : []);
1292
+ }
1293
+ return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
1294
+ }
1295
+
1296
+ function getCssDimensions(element) {
1297
+ const css = getComputedStyle$1(element);
1298
+ // In testing environments, the `width` and `height` properties are empty
1299
+ // strings for SVG elements, returning NaN. Fallback to `0` in this case.
1300
+ let width = parseFloat(css.width) || 0;
1301
+ let height = parseFloat(css.height) || 0;
1302
+ const hasOffset = isHTMLElement(element);
1303
+ const offsetWidth = hasOffset ? element.offsetWidth : width;
1304
+ const offsetHeight = hasOffset ? element.offsetHeight : height;
1305
+ const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
1306
+ if (shouldFallback) {
1307
+ width = offsetWidth;
1308
+ height = offsetHeight;
1309
+ }
1310
+ return {
1311
+ width,
1312
+ height,
1313
+ $: shouldFallback
1314
+ };
1315
+ }
1316
+
1317
+ function unwrapElement(element) {
1318
+ return !isElement(element) ? element.contextElement : element;
1319
+ }
1320
+
1321
+ function getScale(element) {
1322
+ const domElement = unwrapElement(element);
1323
+ if (!isHTMLElement(domElement)) {
1324
+ return createCoords(1);
1325
+ }
1326
+ const rect = domElement.getBoundingClientRect();
1327
+ const {
1328
+ width,
1329
+ height,
1330
+ $
1331
+ } = getCssDimensions(domElement);
1332
+ let x = ($ ? round(rect.width) : rect.width) / width;
1333
+ let y = ($ ? round(rect.height) : rect.height) / height;
1334
+
1335
+ // 0, NaN, or Infinity should always fallback to 1.
1336
+
1337
+ if (!x || !Number.isFinite(x)) {
1338
+ x = 1;
1339
+ }
1340
+ if (!y || !Number.isFinite(y)) {
1341
+ y = 1;
1342
+ }
1343
+ return {
1344
+ x,
1345
+ y
1346
+ };
1347
+ }
1348
+
1349
+ const noOffsets = /*#__PURE__*/createCoords(0);
1350
+ function getVisualOffsets(element) {
1351
+ const win = getWindow(element);
1352
+ if (!isWebKit() || !win.visualViewport) {
1353
+ return noOffsets;
1354
+ }
1355
+ return {
1356
+ x: win.visualViewport.offsetLeft,
1357
+ y: win.visualViewport.offsetTop
1358
+ };
1359
+ }
1360
+ function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
1361
+ if (isFixed === void 0) {
1362
+ isFixed = false;
1363
+ }
1364
+ if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {
1365
+ return false;
1366
+ }
1367
+ return isFixed;
1368
+ }
1369
+
1370
+ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
1371
+ if (includeScale === void 0) {
1372
+ includeScale = false;
1373
+ }
1374
+ if (isFixedStrategy === void 0) {
1375
+ isFixedStrategy = false;
1376
+ }
1377
+ const clientRect = element.getBoundingClientRect();
1378
+ const domElement = unwrapElement(element);
1379
+ let scale = createCoords(1);
1380
+ if (includeScale) {
1381
+ if (offsetParent) {
1382
+ if (isElement(offsetParent)) {
1383
+ scale = getScale(offsetParent);
1384
+ }
1385
+ } else {
1386
+ scale = getScale(element);
1387
+ }
1388
+ }
1389
+ const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
1390
+ let x = (clientRect.left + visualOffsets.x) / scale.x;
1391
+ let y = (clientRect.top + visualOffsets.y) / scale.y;
1392
+ let width = clientRect.width / scale.x;
1393
+ let height = clientRect.height / scale.y;
1394
+ if (domElement) {
1395
+ const win = getWindow(domElement);
1396
+ const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
1397
+ let currentWin = win;
1398
+ let currentIFrame = currentWin.frameElement;
1399
+ while (currentIFrame && offsetParent && offsetWin !== currentWin) {
1400
+ const iframeScale = getScale(currentIFrame);
1401
+ const iframeRect = currentIFrame.getBoundingClientRect();
1402
+ const css = getComputedStyle$1(currentIFrame);
1403
+ const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
1404
+ const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
1405
+ x *= iframeScale.x;
1406
+ y *= iframeScale.y;
1407
+ width *= iframeScale.x;
1408
+ height *= iframeScale.y;
1409
+ x += left;
1410
+ y += top;
1411
+ currentWin = getWindow(currentIFrame);
1412
+ currentIFrame = currentWin.frameElement;
1413
+ }
1414
+ }
1415
+ return rectToClientRect({
1416
+ width,
1417
+ height,
1418
+ x,
1419
+ y
1420
+ });
1421
+ }
1422
+
1423
+ const topLayerSelectors = [':popover-open', ':modal'];
1424
+ function isTopLayer(floating) {
1425
+ return topLayerSelectors.some(selector => {
1426
+ try {
1427
+ return floating.matches(selector);
1428
+ } catch (e) {
1429
+ return false;
1430
+ }
1431
+ });
1432
+ }
1433
+
1434
+ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
1435
+ let {
1436
+ elements,
1437
+ rect,
1438
+ offsetParent,
1439
+ strategy
1440
+ } = _ref;
1441
+ const isFixed = strategy === 'fixed';
1442
+ const documentElement = getDocumentElement(offsetParent);
1443
+ const topLayer = elements ? isTopLayer(elements.floating) : false;
1444
+ if (offsetParent === documentElement || topLayer && isFixed) {
1445
+ return rect;
1446
+ }
1447
+ let scroll = {
1448
+ scrollLeft: 0,
1449
+ scrollTop: 0
1450
+ };
1451
+ let scale = createCoords(1);
1452
+ const offsets = createCoords(0);
1453
+ const isOffsetParentAnElement = isHTMLElement(offsetParent);
1454
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
1455
+ if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
1456
+ scroll = getNodeScroll(offsetParent);
1457
+ }
1458
+ if (isHTMLElement(offsetParent)) {
1459
+ const offsetRect = getBoundingClientRect(offsetParent);
1460
+ scale = getScale(offsetParent);
1461
+ offsets.x = offsetRect.x + offsetParent.clientLeft;
1462
+ offsets.y = offsetRect.y + offsetParent.clientTop;
1463
+ }
1464
+ }
1465
+ return {
1466
+ width: rect.width * scale.x,
1467
+ height: rect.height * scale.y,
1468
+ x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,
1469
+ y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y
1470
+ };
1471
+ }
1472
+
1473
+ function getClientRects(element) {
1474
+ return Array.from(element.getClientRects());
1475
+ }
1476
+
1477
+ function getWindowScrollBarX(element) {
1478
+ // If <html> has a CSS width greater than the viewport, then this will be
1479
+ // incorrect for RTL.
1480
+ return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
1481
+ }
1482
+
1483
+ // Gets the entire size of the scrollable document area, even extending outside
1484
+ // of the `<html>` and `<body>` rect bounds if horizontally scrollable.
1485
+ function getDocumentRect(element) {
1486
+ const html = getDocumentElement(element);
1487
+ const scroll = getNodeScroll(element);
1488
+ const body = element.ownerDocument.body;
1489
+ const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
1490
+ const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
1491
+ let x = -scroll.scrollLeft + getWindowScrollBarX(element);
1492
+ const y = -scroll.scrollTop;
1493
+ if (getComputedStyle$1(body).direction === 'rtl') {
1494
+ x += max(html.clientWidth, body.clientWidth) - width;
1495
+ }
1496
+ return {
1497
+ width,
1498
+ height,
1499
+ x,
1500
+ y
1501
+ };
1502
+ }
1503
+
1504
+ function getViewportRect(element, strategy) {
1505
+ const win = getWindow(element);
1506
+ const html = getDocumentElement(element);
1507
+ const visualViewport = win.visualViewport;
1508
+ let width = html.clientWidth;
1509
+ let height = html.clientHeight;
1510
+ let x = 0;
1511
+ let y = 0;
1512
+ if (visualViewport) {
1513
+ width = visualViewport.width;
1514
+ height = visualViewport.height;
1515
+ const visualViewportBased = isWebKit();
1516
+ if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {
1517
+ x = visualViewport.offsetLeft;
1518
+ y = visualViewport.offsetTop;
1519
+ }
1520
+ }
1521
+ return {
1522
+ width,
1523
+ height,
1524
+ x,
1525
+ y
1526
+ };
1527
+ }
1528
+
1529
+ // Returns the inner client rect, subtracting scrollbars if present.
1530
+ function getInnerBoundingClientRect(element, strategy) {
1531
+ const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
1532
+ const top = clientRect.top + element.clientTop;
1533
+ const left = clientRect.left + element.clientLeft;
1534
+ const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
1535
+ const width = element.clientWidth * scale.x;
1536
+ const height = element.clientHeight * scale.y;
1537
+ const x = left * scale.x;
1538
+ const y = top * scale.y;
1539
+ return {
1540
+ width,
1541
+ height,
1542
+ x,
1543
+ y
1544
+ };
1545
+ }
1546
+ function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
1547
+ let rect;
1548
+ if (clippingAncestor === 'viewport') {
1549
+ rect = getViewportRect(element, strategy);
1550
+ } else if (clippingAncestor === 'document') {
1551
+ rect = getDocumentRect(getDocumentElement(element));
1552
+ } else if (isElement(clippingAncestor)) {
1553
+ rect = getInnerBoundingClientRect(clippingAncestor, strategy);
1554
+ } else {
1555
+ const visualOffsets = getVisualOffsets(element);
1556
+ rect = {
1557
+ ...clippingAncestor,
1558
+ x: clippingAncestor.x - visualOffsets.x,
1559
+ y: clippingAncestor.y - visualOffsets.y
1560
+ };
1561
+ }
1562
+ return rectToClientRect(rect);
1563
+ }
1564
+ function hasFixedPositionAncestor(element, stopNode) {
1565
+ const parentNode = getParentNode(element);
1566
+ if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
1567
+ return false;
1568
+ }
1569
+ return getComputedStyle$1(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);
1570
+ }
1571
+
1572
+ // A "clipping ancestor" is an `overflow` element with the characteristic of
1573
+ // clipping (or hiding) child elements. This returns all clipping ancestors
1574
+ // of the given element up the tree.
1575
+ function getClippingElementAncestors(element, cache) {
1576
+ const cachedResult = cache.get(element);
1577
+ if (cachedResult) {
1578
+ return cachedResult;
1579
+ }
1580
+ let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');
1581
+ let currentContainingBlockComputedStyle = null;
1582
+ const elementIsFixed = getComputedStyle$1(element).position === 'fixed';
1583
+ let currentNode = elementIsFixed ? getParentNode(element) : element;
1584
+
1585
+ // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
1586
+ while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
1587
+ const computedStyle = getComputedStyle$1(currentNode);
1588
+ const currentNodeIsContaining = isContainingBlock(currentNode);
1589
+ if (!currentNodeIsContaining && computedStyle.position === 'fixed') {
1590
+ currentContainingBlockComputedStyle = null;
1591
+ }
1592
+ const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
1593
+ if (shouldDropCurrentNode) {
1594
+ // Drop non-containing blocks.
1595
+ result = result.filter(ancestor => ancestor !== currentNode);
1596
+ } else {
1597
+ // Record last containing block for next iteration.
1598
+ currentContainingBlockComputedStyle = computedStyle;
1599
+ }
1600
+ currentNode = getParentNode(currentNode);
1601
+ }
1602
+ cache.set(element, result);
1603
+ return result;
1604
+ }
1605
+
1606
+ // Gets the maximum area that the element is visible in due to any number of
1607
+ // clipping ancestors.
1608
+ function getClippingRect(_ref) {
1609
+ let {
1610
+ element,
1611
+ boundary,
1612
+ rootBoundary,
1613
+ strategy
1614
+ } = _ref;
1615
+ const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);
1616
+ const clippingAncestors = [...elementClippingAncestors, rootBoundary];
1617
+ const firstClippingAncestor = clippingAncestors[0];
1618
+ const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {
1619
+ const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);
1620
+ accRect.top = max(rect.top, accRect.top);
1621
+ accRect.right = min(rect.right, accRect.right);
1622
+ accRect.bottom = min(rect.bottom, accRect.bottom);
1623
+ accRect.left = max(rect.left, accRect.left);
1624
+ return accRect;
1625
+ }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));
1626
+ return {
1627
+ width: clippingRect.right - clippingRect.left,
1628
+ height: clippingRect.bottom - clippingRect.top,
1629
+ x: clippingRect.left,
1630
+ y: clippingRect.top
1631
+ };
1632
+ }
1633
+
1634
+ function getDimensions(element) {
1635
+ const {
1636
+ width,
1637
+ height
1638
+ } = getCssDimensions(element);
1639
+ return {
1640
+ width,
1641
+ height
1642
+ };
1643
+ }
1644
+
1645
+ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
1646
+ const isOffsetParentAnElement = isHTMLElement(offsetParent);
1647
+ const documentElement = getDocumentElement(offsetParent);
1648
+ const isFixed = strategy === 'fixed';
1649
+ const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
1650
+ let scroll = {
1651
+ scrollLeft: 0,
1652
+ scrollTop: 0
1653
+ };
1654
+ const offsets = createCoords(0);
1655
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
1656
+ if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
1657
+ scroll = getNodeScroll(offsetParent);
1658
+ }
1659
+ if (isOffsetParentAnElement) {
1660
+ const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
1661
+ offsets.x = offsetRect.x + offsetParent.clientLeft;
1662
+ offsets.y = offsetRect.y + offsetParent.clientTop;
1663
+ } else if (documentElement) {
1664
+ offsets.x = getWindowScrollBarX(documentElement);
1665
+ }
1666
+ }
1667
+ const x = rect.left + scroll.scrollLeft - offsets.x;
1668
+ const y = rect.top + scroll.scrollTop - offsets.y;
1669
+ return {
1670
+ x,
1671
+ y,
1672
+ width: rect.width,
1673
+ height: rect.height
1674
+ };
1675
+ }
1676
+
1677
+ function getTrueOffsetParent(element, polyfill) {
1678
+ if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
1679
+ return null;
1680
+ }
1681
+ if (polyfill) {
1682
+ return polyfill(element);
1683
+ }
1684
+ return element.offsetParent;
1685
+ }
1686
+
1687
+ // Gets the closest ancestor positioned element. Handles some edge cases,
1688
+ // such as table ancestors and cross browser bugs.
1689
+ function getOffsetParent(element, polyfill) {
1690
+ const window = getWindow(element);
1691
+ if (!isHTMLElement(element) || isTopLayer(element)) {
1692
+ return window;
1693
+ }
1694
+ let offsetParent = getTrueOffsetParent(element, polyfill);
1695
+ while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
1696
+ offsetParent = getTrueOffsetParent(offsetParent, polyfill);
1697
+ }
1698
+ if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
1699
+ return window;
1700
+ }
1701
+ return offsetParent || getContainingBlock(element) || window;
1702
+ }
1703
+
1704
+ const getElementRects = async function (data) {
1705
+ const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
1706
+ const getDimensionsFn = this.getDimensions;
1707
+ return {
1708
+ reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
1709
+ floating: {
1710
+ x: 0,
1711
+ y: 0,
1712
+ ...(await getDimensionsFn(data.floating))
1713
+ }
1714
+ };
1715
+ };
1716
+
1717
+ function isRTL(element) {
1718
+ return getComputedStyle$1(element).direction === 'rtl';
1719
+ }
1720
+
1721
+ const platform = {
1722
+ convertOffsetParentRelativeRectToViewportRelativeRect,
1723
+ getDocumentElement,
1724
+ getClippingRect,
1725
+ getOffsetParent,
1726
+ getElementRects,
1727
+ getClientRects,
1728
+ getDimensions,
1729
+ getScale,
1730
+ isElement,
1731
+ isRTL
1732
+ };
1733
+
1734
+ // https://samthor.au/2021/observing-dom/
1735
+ function observeMove(element, onMove) {
1736
+ let io = null;
1737
+ let timeoutId;
1738
+ const root = getDocumentElement(element);
1739
+ function cleanup() {
1740
+ var _io;
1741
+ clearTimeout(timeoutId);
1742
+ (_io = io) == null || _io.disconnect();
1743
+ io = null;
1744
+ }
1745
+ function refresh(skip, threshold) {
1746
+ if (skip === void 0) {
1747
+ skip = false;
1748
+ }
1749
+ if (threshold === void 0) {
1750
+ threshold = 1;
1751
+ }
1752
+ cleanup();
1753
+ const {
1754
+ left,
1755
+ top,
1756
+ width,
1757
+ height
1758
+ } = element.getBoundingClientRect();
1759
+ if (!skip) {
1760
+ onMove();
1761
+ }
1762
+ if (!width || !height) {
1763
+ return;
1764
+ }
1765
+ const insetTop = floor(top);
1766
+ const insetRight = floor(root.clientWidth - (left + width));
1767
+ const insetBottom = floor(root.clientHeight - (top + height));
1768
+ const insetLeft = floor(left);
1769
+ const rootMargin = -insetTop + "px " + -insetRight + "px " + -insetBottom + "px " + -insetLeft + "px";
1770
+ const options = {
1771
+ rootMargin,
1772
+ threshold: max(0, min(1, threshold)) || 1
1773
+ };
1774
+ let isFirstUpdate = true;
1775
+ function handleObserve(entries) {
1776
+ const ratio = entries[0].intersectionRatio;
1777
+ if (ratio !== threshold) {
1778
+ if (!isFirstUpdate) {
1779
+ return refresh();
1780
+ }
1781
+ if (!ratio) {
1782
+ timeoutId = setTimeout(() => {
1783
+ refresh(false, 1e-7);
1784
+ }, 100);
1785
+ } else {
1786
+ refresh(false, ratio);
1787
+ }
1788
+ }
1789
+ isFirstUpdate = false;
1790
+ }
1791
+
1792
+ // Older browsers don't support a `document` as the root and will throw an
1793
+ // error.
1794
+ try {
1795
+ io = new IntersectionObserver(handleObserve, {
1796
+ ...options,
1797
+ // Handle <iframe>s
1798
+ root: root.ownerDocument
1799
+ });
1800
+ } catch (e) {
1801
+ io = new IntersectionObserver(handleObserve, options);
1802
+ }
1803
+ io.observe(element);
1804
+ }
1805
+ refresh(true);
1806
+ return cleanup;
1807
+ }
1808
+
1809
+ /**
1810
+ * Automatically updates the position of the floating element when necessary.
1811
+ * Should only be called when the floating element is mounted on the DOM or
1812
+ * visible on the screen.
1813
+ * @returns cleanup function that should be invoked when the floating element is
1814
+ * removed from the DOM or hidden from the screen.
1815
+ * @see https://floating-ui.com/docs/autoUpdate
1816
+ */
1817
+ function autoUpdate(reference, floating, update, options) {
1818
+ if (options === void 0) {
1819
+ options = {};
1820
+ }
1821
+ const {
1822
+ ancestorScroll = true,
1823
+ ancestorResize = true,
1824
+ elementResize = typeof ResizeObserver === 'function',
1825
+ layoutShift = typeof IntersectionObserver === 'function',
1826
+ animationFrame = false
1827
+ } = options;
1828
+ const referenceEl = unwrapElement(reference);
1829
+ const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...getOverflowAncestors(floating)] : [];
1830
+ ancestors.forEach(ancestor => {
1831
+ ancestorScroll && ancestor.addEventListener('scroll', update, {
1832
+ passive: true
1833
+ });
1834
+ ancestorResize && ancestor.addEventListener('resize', update);
1835
+ });
1836
+ const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;
1837
+ let reobserveFrame = -1;
1838
+ let resizeObserver = null;
1839
+ if (elementResize) {
1840
+ resizeObserver = new ResizeObserver(_ref => {
1841
+ let [firstEntry] = _ref;
1842
+ if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {
1843
+ // Prevent update loops when using the `size` middleware.
1844
+ // https://github.com/floating-ui/floating-ui/issues/1740
1845
+ resizeObserver.unobserve(floating);
1846
+ cancelAnimationFrame(reobserveFrame);
1847
+ reobserveFrame = requestAnimationFrame(() => {
1848
+ var _resizeObserver;
1849
+ (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);
1850
+ });
1851
+ }
1852
+ update();
1853
+ });
1854
+ if (referenceEl && !animationFrame) {
1855
+ resizeObserver.observe(referenceEl);
1856
+ }
1857
+ resizeObserver.observe(floating);
1858
+ }
1859
+ let frameId;
1860
+ let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
1861
+ if (animationFrame) {
1862
+ frameLoop();
1863
+ }
1864
+ function frameLoop() {
1865
+ const nextRefRect = getBoundingClientRect(reference);
1866
+ if (prevRefRect && (nextRefRect.x !== prevRefRect.x || nextRefRect.y !== prevRefRect.y || nextRefRect.width !== prevRefRect.width || nextRefRect.height !== prevRefRect.height)) {
1867
+ update();
1868
+ }
1869
+ prevRefRect = nextRefRect;
1870
+ frameId = requestAnimationFrame(frameLoop);
1871
+ }
1872
+ update();
1873
+ return () => {
1874
+ var _resizeObserver2;
1875
+ ancestors.forEach(ancestor => {
1876
+ ancestorScroll && ancestor.removeEventListener('scroll', update);
1877
+ ancestorResize && ancestor.removeEventListener('resize', update);
1878
+ });
1879
+ cleanupIo == null || cleanupIo();
1880
+ (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();
1881
+ resizeObserver = null;
1882
+ if (animationFrame) {
1883
+ cancelAnimationFrame(frameId);
1884
+ }
1885
+ };
1886
+ }
1887
+
1888
+ /**
1889
+ * Optimizes the visibility of the floating element by choosing the placement
1890
+ * that has the most space available automatically, without needing to specify a
1891
+ * preferred placement. Alternative to `flip`.
1892
+ * @see https://floating-ui.com/docs/autoPlacement
1893
+ */
1894
+ const autoPlacement = autoPlacement$1;
1895
+
1896
+ /**
1897
+ * Optimizes the visibility of the floating element by shifting it in order to
1898
+ * keep it in view when it will overflow the clipping boundary.
1899
+ * @see https://floating-ui.com/docs/shift
1900
+ */
1901
+ const shift = shift$1;
1902
+
1903
+ /**
1904
+ * Optimizes the visibility of the floating element by flipping the `placement`
1905
+ * in order to keep it in view when the preferred placement(s) will overflow the
1906
+ * clipping boundary. Alternative to `autoPlacement`.
1907
+ * @see https://floating-ui.com/docs/flip
1908
+ */
1909
+ const flip = flip$1;
1910
+
1911
+ /**
1912
+ * Provides data that allows you to change the size of the floating element —
1913
+ * for instance, prevent it from overflowing the clipping boundary or match the
1914
+ * width of the reference element.
1915
+ * @see https://floating-ui.com/docs/size
1916
+ */
1917
+ size;
1918
+
1919
+ /**
1920
+ * Provides data to hide the floating element in applicable situations, such as
1921
+ * when it is not in the same clipping context as the reference element.
1922
+ * @see https://floating-ui.com/docs/hide
1923
+ */
1924
+ const hide = hide$1;
1925
+
1926
+ /**
1927
+ * Provides data to position an inner element of the floating element so that it
1928
+ * appears centered to the reference element.
1929
+ * @see https://floating-ui.com/docs/arrow
1930
+ */
1931
+ const arrow = arrow$1;
1932
+
1933
+ /**
1934
+ * Provides improved positioning for inline reference elements that can span
1935
+ * over multiple lines, such as hyperlinks or range selections.
1936
+ * @see https://floating-ui.com/docs/inline
1937
+ */
1938
+ inline;
1939
+
1940
+ /**
1941
+ * Built-in `limiter` that will stop `shift()` at a certain point.
1942
+ */
1943
+ limitShift;
1944
+
1945
+ /**
1946
+ * Computes the `x` and `y` coordinates that will place the floating element
1947
+ * next to a given reference element.
1948
+ */
1949
+ const computePosition = (reference, floating, options) => {
1950
+ // This caches the expensive `getClippingElementAncestors` function so that
1951
+ // multiple lifecycle resets re-use the same result. It only lives for a
1952
+ // single call. If other functions become expensive, we can add them as well.
1953
+ const cache = new Map();
1954
+ const mergedOptions = {
1955
+ platform,
1956
+ ...options
1957
+ };
1958
+ const platformWithCache = {
1959
+ ...mergedOptions.platform,
1960
+ _c: cache
1961
+ };
1962
+ return computePosition$1(reference, floating, {
1963
+ ...mergedOptions,
1964
+ platform: platformWithCache
1965
+ });
1966
+ };
1967
+
1968
+ /* eslint-disable @typescript-eslint/ban-types */
1969
+ function offsetParent(element) {
1970
+ return offsetParentPolyfill(element);
1971
+ }
1972
+ function flatTreeParent(element) {
1973
+ if (element.assignedSlot) {
1974
+ return element.assignedSlot;
1975
+ }
1976
+ if (element.parentNode instanceof ShadowRoot) {
1977
+ return element.parentNode.host;
1978
+ }
1979
+ return element.parentNode;
1980
+ }
1981
+ function offsetParentPolyfill(element) {
1982
+ // Do an initial walk to check for display:none ancestors.
1983
+ for (let ancestor = element; ancestor; ancestor = flatTreeParent(ancestor)) {
1984
+ if (!(ancestor instanceof Element)) {
1985
+ continue;
1986
+ }
1987
+ if (getComputedStyle(ancestor).display === 'none') {
1988
+ return null;
1989
+ }
1990
+ }
1991
+ for (let ancestor = flatTreeParent(element); ancestor; ancestor = flatTreeParent(ancestor)) {
1992
+ if (!(ancestor instanceof Element)) {
1993
+ continue;
1994
+ }
1995
+ const style = getComputedStyle(ancestor);
1996
+ // Display:contents nodes aren't in the layout tree so they should be skipped.
1997
+ if (style.display === 'contents') {
1998
+ continue;
1999
+ }
2000
+ if (style.position !== 'static' || style.filter !== 'none') {
2001
+ return ancestor;
2002
+ }
2003
+ if (ancestor.tagName === 'BODY') {
2004
+ return ancestor;
2005
+ }
2006
+ }
2007
+ return null;
2008
+ }
2009
+
2010
+ /*!
2011
+ * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
2012
+ * See https://github.com/Esri/calcite-design-system/blob/main/LICENSE.md for details.
2013
+ * v2.8.2
2014
+ */
2015
+ (function setUpFloatingUiForShadowDomPositioning() {
2016
+ {
2017
+ const originalGetOffsetParent = platform.getOffsetParent;
2018
+ platform.getOffsetParent = (element) => originalGetOffsetParent(element, offsetParent);
2019
+ }
2020
+ })();
2021
+ function roundByDPR(value) {
2022
+ const dpr = window.devicePixelRatio || 1;
2023
+ return Math.round(value * dpr) / dpr;
2024
+ }
2025
+ /**
2026
+ * Positions the floating element relative to the reference element.
2027
+ *
2028
+ * **Note:** exported for testing purposes only
2029
+ *
2030
+ * @param root0
2031
+ * @param root0.referenceEl
2032
+ * @param root0.floatingEl
2033
+ * @param root0.overlayPositioning
2034
+ * @param root0.placement
2035
+ * @param root0.flipDisabled
2036
+ * @param root0.flipPlacements
2037
+ * @param root0.offsetDistance
2038
+ * @param root0.offsetSkidding
2039
+ * @param root0.arrowEl
2040
+ * @param root0.type
2041
+ * @param component
2042
+ * @param root0.referenceEl.referenceEl
2043
+ * @param root0.referenceEl.floatingEl
2044
+ * @param root0.referenceEl.overlayPositioning
2045
+ * @param root0.referenceEl.placement
2046
+ * @param root0.referenceEl.flipDisabled
2047
+ * @param root0.referenceEl.flipPlacements
2048
+ * @param root0.referenceEl.offsetDistance
2049
+ * @param root0.referenceEl.offsetSkidding
2050
+ * @param root0.referenceEl.arrowEl
2051
+ * @param root0.referenceEl.type
2052
+ * @param component.referenceEl
2053
+ * @param component.floatingEl
2054
+ * @param component.overlayPositioning
2055
+ * @param component.placement
2056
+ * @param component.flipDisabled
2057
+ * @param component.flipPlacements
2058
+ * @param component.offsetDistance
2059
+ * @param component.offsetSkidding
2060
+ * @param component.arrowEl
2061
+ * @param component.type
2062
+ */
2063
+ const positionFloatingUI =
2064
+ /* we export arrow function to allow us to spy on it during testing */
2065
+ async (component, { referenceEl, floatingEl, overlayPositioning = "absolute", placement, flipDisabled, flipPlacements, offsetDistance, offsetSkidding, arrowEl, type, }) => {
2066
+ if (!referenceEl || !floatingEl) {
2067
+ return null;
2068
+ }
2069
+ const { x, y, placement: effectivePlacement, strategy: position, middlewareData, } = await computePosition(referenceEl, floatingEl, {
2070
+ strategy: overlayPositioning,
2071
+ placement: placement === "auto" || placement === "auto-start" || placement === "auto-end"
2072
+ ? undefined
2073
+ : getEffectivePlacement(floatingEl, placement),
2074
+ middleware: getMiddleware({
2075
+ placement,
2076
+ flipDisabled,
2077
+ flipPlacements,
2078
+ offsetDistance,
2079
+ offsetSkidding,
2080
+ arrowEl,
2081
+ type,
2082
+ }),
2083
+ });
2084
+ if (arrowEl && middlewareData.arrow) {
2085
+ const { x, y } = middlewareData.arrow;
2086
+ const side = effectivePlacement.split("-")[0];
2087
+ const alignment = x != null ? "left" : "top";
2088
+ const transform = ARROW_CSS_TRANSFORM[side];
2089
+ const reset = { left: "", top: "", bottom: "", right: "" };
2090
+ if ("floatingLayout" in component) {
2091
+ component.floatingLayout = side === "left" || side === "right" ? "horizontal" : "vertical";
2092
+ }
2093
+ Object.assign(arrowEl.style, {
2094
+ ...reset,
2095
+ [alignment]: `${alignment == "left" ? x : y}px`,
2096
+ [side]: "100%",
2097
+ transform,
2098
+ });
2099
+ }
2100
+ const referenceHidden = middlewareData.hide?.referenceHidden;
2101
+ const visibility = referenceHidden ? "hidden" : null;
2102
+ const pointerEvents = visibility ? "none" : null;
2103
+ floatingEl.setAttribute(placementDataAttribute, effectivePlacement);
2104
+ const { open } = component;
2105
+ Object.assign(floatingEl.style, {
2106
+ visibility,
2107
+ pointerEvents,
2108
+ position,
2109
+ transform: open ? `translate(${roundByDPR(x)}px,${roundByDPR(y)}px)` : "",
2110
+ top: 0,
2111
+ left: 0,
2112
+ });
2113
+ };
2114
+ /**
2115
+ * Exported for testing purposes only
2116
+ */
2117
+ const placementDataAttribute = "data-placement";
2118
+ /**
2119
+ * Exported for testing purposes only
2120
+ */
2121
+ const repositionDebounceTimeout = 100;
2122
+ const effectivePlacements = [
2123
+ "top",
2124
+ "bottom",
2125
+ "right",
2126
+ "left",
2127
+ "top-start",
2128
+ "top-end",
2129
+ "bottom-start",
2130
+ "bottom-end",
2131
+ "right-start",
2132
+ "right-end",
2133
+ "left-start",
2134
+ "left-end",
2135
+ ];
2136
+ const defaultMenuPlacement = "bottom-start";
2137
+ const FloatingCSS = {
2138
+ animation: "calcite-floating-ui-anim",
2139
+ animationActive: "calcite-floating-ui-anim--active",
2140
+ };
2141
+ function getMiddleware({ placement, flipDisabled, flipPlacements, offsetDistance, offsetSkidding, arrowEl, type, }) {
2142
+ const defaultMiddleware = [shift(), hide()];
2143
+ if (type === "menu") {
2144
+ return [
2145
+ ...defaultMiddleware,
2146
+ flip({
2147
+ fallbackPlacements: flipPlacements || ["top-start", "top", "top-end", "bottom-start", "bottom", "bottom-end"],
2148
+ }),
2149
+ ];
2150
+ }
2151
+ if (type === "popover" || type === "tooltip") {
2152
+ const middleware = [
2153
+ ...defaultMiddleware,
2154
+ offset({
2155
+ mainAxis: typeof offsetDistance === "number" ? offsetDistance : 0,
2156
+ crossAxis: typeof offsetSkidding === "number" ? offsetSkidding : 0,
2157
+ }),
2158
+ ];
2159
+ if (placement === "auto" || placement === "auto-start" || placement === "auto-end") {
2160
+ middleware.push(autoPlacement({ alignment: placement === "auto-start" ? "start" : placement === "auto-end" ? "end" : null }));
2161
+ }
2162
+ else if (!flipDisabled) {
2163
+ middleware.push(flip(flipPlacements ? { fallbackPlacements: flipPlacements } : {}));
2164
+ }
2165
+ if (arrowEl) {
2166
+ middleware.push(arrow({
2167
+ element: arrowEl,
2168
+ }));
2169
+ }
2170
+ return middleware;
2171
+ }
2172
+ return [];
2173
+ }
2174
+ function filterComputedPlacements(placements, el) {
2175
+ const filteredPlacements = placements.filter((placement) => effectivePlacements.includes(placement));
2176
+ if (filteredPlacements.length !== placements.length) {
2177
+ console.warn(`${el.tagName}: Invalid value found in: flipPlacements. Try any of these: ${effectivePlacements
2178
+ .map((placement) => `"${placement}"`)
2179
+ .join(", ")
2180
+ .trim()}`, { el });
2181
+ }
2182
+ return filteredPlacements;
2183
+ }
2184
+ function getEffectivePlacement(floatingEl, placement) {
2185
+ const placements = ["left", "right"];
2186
+ if (dom.getElementDir(floatingEl) === "rtl") {
2187
+ placements.reverse();
2188
+ }
2189
+ return placement.replace(/leading/gi, placements[0]).replace(/trailing/gi, placements[1]);
2190
+ }
2191
+ /**
2192
+ * Convenience function to manage `reposition` calls for FloatingUIComponents that use `positionFloatingUI.
2193
+ *
2194
+ * Note: this is not needed for components that use `calcite-popover`.
2195
+ *
2196
+ * @param component - A floating-ui component.
2197
+ * @param options - Reposition parameters.
2198
+ * @param options.referenceEl - The `referenceElement` used to position the component according to its `placement` value.
2199
+ * @param options.floatingEl - The `floatingElement` containing the floating ui.
2200
+ * @param options.overlayPositioning - type of positioning to use for the overlaid content.
2201
+ * @param options.placement - Determines where the component will be positioned relative to the `referenceElement`.
2202
+ * @param options.flipDisabled - Prevents flipping the component's placement when overlapping its `referenceElement`.
2203
+ * @param options.flipPlacements - Defines the available placements that can be used when a flip occurs.
2204
+ * @param options.offsetDistance - Offsets the position of the popover away from the `referenceElement`.
2205
+ * @param options.offsetSkidding - Offsets the position of the component along the `referenceElement`.
2206
+ * @param options.arrowEl - A customizable arrow element.
2207
+ * @param options.type - The type of floating UI.
2208
+ * @param delayed - Reposition the component after a delay.
2209
+ * @returns {Promise<void>}
2210
+ */
2211
+ async function reposition(component, options, delayed = false) {
2212
+ if (!component.open) {
2213
+ return;
2214
+ }
2215
+ const positionFunction = delayed ? getDebouncedReposition(component) : positionFloatingUI;
2216
+ return positionFunction(component, options);
2217
+ }
2218
+ function getDebouncedReposition(component) {
2219
+ let debounced = componentToDebouncedRepositionMap.get(component);
2220
+ if (debounced) {
2221
+ return debounced;
2222
+ }
2223
+ debounced = debounce.debounce(positionFloatingUI, repositionDebounceTimeout, {
2224
+ leading: true,
2225
+ maxWait: repositionDebounceTimeout,
2226
+ });
2227
+ componentToDebouncedRepositionMap.set(component, debounced);
2228
+ return debounced;
2229
+ }
2230
+ const ARROW_CSS_TRANSFORM = {
2231
+ top: "",
2232
+ left: "rotate(-90deg)",
2233
+ bottom: "rotate(180deg)",
2234
+ right: "rotate(90deg)",
2235
+ };
2236
+ /**
2237
+ * Exported for testing purposes only
2238
+ *
2239
+ * @internal
2240
+ */
2241
+ const cleanupMap = new WeakMap();
2242
+ const componentToDebouncedRepositionMap = new WeakMap();
2243
+ /**
2244
+ * Helper to set up floating element interactions on connectedCallback.
2245
+ *
2246
+ * @param component - A floating-ui component.
2247
+ * @param referenceEl - The `referenceElement` used to position the component according to its `placement` value.
2248
+ * @param floatingEl - The `floatingElement` containing the floating ui.
2249
+ */
2250
+ function connectFloatingUI(component, referenceEl, floatingEl) {
2251
+ if (!floatingEl || !referenceEl) {
2252
+ return;
2253
+ }
2254
+ disconnectFloatingUI(component, referenceEl, floatingEl);
2255
+ Object.assign(floatingEl.style, {
2256
+ visibility: "hidden",
2257
+ pointerEvents: "none",
2258
+ // initial positioning based on https://floating-ui.com/docs/computePosition#initial-layout
2259
+ position: component.overlayPositioning,
2260
+ });
2261
+ const runAutoUpdate = autoUpdate
2262
+ ;
2263
+ cleanupMap.set(component, runAutoUpdate(referenceEl, floatingEl, () => component.reposition()));
2264
+ }
2265
+ /**
2266
+ * Helper to tear down floating element interactions on disconnectedCallback.
2267
+ *
2268
+ * @param component - A floating-ui component.
2269
+ * @param referenceEl - The `referenceElement` used to position the component according to its `placement` value.
2270
+ * @param floatingEl - The `floatingElement` containing the floating ui.
2271
+ */
2272
+ function disconnectFloatingUI(component, referenceEl, floatingEl) {
2273
+ if (!floatingEl || !referenceEl) {
2274
+ return;
2275
+ }
2276
+ cleanupMap.get(component)?.();
2277
+ cleanupMap.delete(component);
2278
+ componentToDebouncedRepositionMap.get(component)?.cancel();
2279
+ componentToDebouncedRepositionMap.delete(component);
2280
+ }
2281
+ const visiblePointerSize = 4;
2282
+ /**
2283
+ * Default offset the position of the floating element away from the reference element.
2284
+ *
2285
+ * @default 6
2286
+ */
2287
+ const defaultOffsetDistance = Math.ceil(Math.hypot(visiblePointerSize, visiblePointerSize));
2288
+
2289
+ exports.FloatingCSS = FloatingCSS;
2290
+ exports.connectFloatingUI = connectFloatingUI;
2291
+ exports.defaultMenuPlacement = defaultMenuPlacement;
2292
+ exports.defaultOffsetDistance = defaultOffsetDistance;
2293
+ exports.disconnectFloatingUI = disconnectFloatingUI;
2294
+ exports.filterComputedPlacements = filterComputedPlacements;
2295
+ exports.reposition = reposition;