@siemens/ix 1.6.3 → 2.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1549) hide show
  1. package/dist/cjs/a11y-fa9abd92.js +82 -0
  2. package/dist/cjs/a11y-fa9abd92.js.map +1 -0
  3. package/dist/cjs/base-button-c158438e.js +50 -0
  4. package/dist/cjs/base-button-c158438e.js.map +1 -0
  5. package/dist/cjs/base-icon-button-bbca2582.js +20 -0
  6. package/dist/cjs/base-icon-button-bbca2582.js.map +1 -0
  7. package/dist/cjs/breakpoints-e19e827e.js +27 -0
  8. package/dist/cjs/breakpoints-e19e827e.js.map +1 -0
  9. package/dist/cjs/context-0fdf2fa1.js +106 -0
  10. package/dist/cjs/context-0fdf2fa1.js.map +1 -0
  11. package/dist/cjs/flip-tile-state-183236a1.js +20 -0
  12. package/dist/cjs/flip-tile-state-183236a1.js.map +1 -0
  13. package/dist/cjs/floating-ui.dom.esm-3b936e26.js +1520 -0
  14. package/dist/cjs/floating-ui.dom.esm-3b936e26.js.map +1 -0
  15. package/dist/cjs/icon-9e9f2faf.js +114 -0
  16. package/dist/cjs/icon-9e9f2faf.js.map +1 -0
  17. package/dist/cjs/index-1061a1c1.js +8 -0
  18. package/dist/cjs/index-1061a1c1.js.map +1 -0
  19. package/dist/cjs/index-be499a74.js +2287 -0
  20. package/dist/cjs/index-be499a74.js.map +1 -0
  21. package/dist/cjs/index.cjs.js +48 -9
  22. package/dist/cjs/index.cjs.js.map +1 -1
  23. package/dist/cjs/ix-action-card.cjs.entry.js +3 -3
  24. package/dist/cjs/ix-action-card.cjs.entry.js.map +1 -1
  25. package/dist/cjs/ix-application-header.cjs.entry.js +26 -18
  26. package/dist/cjs/ix-application-header.cjs.entry.js.map +1 -1
  27. package/dist/cjs/ix-application-sidebar.cjs.entry.js +47 -0
  28. package/dist/cjs/ix-application-sidebar.cjs.entry.js.map +1 -0
  29. package/dist/cjs/ix-application.cjs.entry.js +109 -0
  30. package/dist/cjs/ix-application.cjs.entry.js.map +1 -0
  31. package/dist/cjs/ix-avatar.cjs.entry.js +39 -0
  32. package/dist/cjs/ix-avatar.cjs.entry.js.map +1 -0
  33. package/dist/cjs/ix-basic-navigation.cjs.entry.js +51 -19
  34. package/dist/cjs/ix-basic-navigation.cjs.entry.js.map +1 -1
  35. package/dist/cjs/ix-blind.cjs.entry.js +6 -14
  36. package/dist/cjs/ix-blind.cjs.entry.js.map +1 -1
  37. package/dist/cjs/ix-breadcrumb_2.cjs.entry.js +100 -92
  38. package/dist/cjs/ix-breadcrumb_2.cjs.entry.js.map +1 -1
  39. package/dist/cjs/ix-burger-menu.cjs.entry.js +7 -3
  40. package/dist/cjs/ix-burger-menu.cjs.entry.js.map +1 -1
  41. package/dist/cjs/ix-button.cjs.entry.js +25 -8
  42. package/dist/cjs/ix-button.cjs.entry.js.map +1 -1
  43. package/dist/cjs/ix-card-accordion_2.cjs.entry.js +2 -2
  44. package/dist/cjs/ix-card-accordion_2.cjs.entry.js.map +1 -1
  45. package/dist/cjs/ix-card-list.cjs.entry.js +2 -2
  46. package/dist/cjs/ix-card-list.cjs.entry.js.map +1 -1
  47. package/dist/cjs/ix-card_2.cjs.entry.js +36 -0
  48. package/dist/cjs/ix-card_2.cjs.entry.js.map +1 -0
  49. package/dist/cjs/ix-category-filter.cjs.entry.js +73 -40
  50. package/dist/cjs/ix-category-filter.cjs.entry.js.map +1 -1
  51. package/dist/cjs/ix-chip.cjs.entry.js +23 -15
  52. package/dist/cjs/ix-chip.cjs.entry.js.map +1 -1
  53. package/dist/cjs/ix-col.cjs.entry.js +77 -0
  54. package/dist/cjs/ix-col.cjs.entry.js.map +1 -0
  55. package/dist/cjs/ix-content-header.cjs.entry.js +3 -3
  56. package/dist/cjs/ix-content-header.cjs.entry.js.map +1 -1
  57. package/dist/cjs/ix-content.cjs.entry.js +32 -0
  58. package/dist/cjs/ix-content.cjs.entry.js.map +1 -0
  59. package/dist/cjs/ix-css-grid-item.cjs.entry.js +1 -1
  60. package/dist/cjs/ix-css-grid-item.cjs.entry.js.map +1 -1
  61. package/dist/cjs/ix-css-grid.cjs.entry.js +1 -1
  62. package/dist/cjs/ix-css-grid.cjs.entry.js.map +1 -1
  63. package/dist/cjs/ix-date-picker_2.cjs.entry.js +8 -9
  64. package/dist/cjs/ix-date-picker_2.cjs.entry.js.map +1 -1
  65. package/dist/cjs/ix-date-time-card.cjs.entry.js +2 -3
  66. package/dist/cjs/ix-date-time-card.cjs.entry.js.map +1 -1
  67. package/dist/cjs/ix-datetime-picker.cjs.entry.js +2 -2
  68. package/dist/cjs/ix-datetime-picker.cjs.entry.js.map +1 -1
  69. package/dist/cjs/ix-divider.cjs.entry.js +1 -1
  70. package/dist/cjs/ix-drawer.cjs.entry.js +5 -2
  71. package/dist/cjs/ix-drawer.cjs.entry.js.map +1 -1
  72. package/dist/cjs/ix-dropdown-button.cjs.entry.js +8 -6
  73. package/dist/cjs/ix-dropdown-button.cjs.entry.js.map +1 -1
  74. package/dist/cjs/ix-dropdown-header.cjs.entry.js +22 -0
  75. package/dist/cjs/ix-dropdown-header.cjs.entry.js.map +1 -0
  76. package/dist/cjs/ix-dropdown-quick-actions.cjs.entry.js +1 -1
  77. package/dist/cjs/ix-dropdown_2.cjs.entry.js +65 -33
  78. package/dist/cjs/ix-dropdown_2.cjs.entry.js.map +1 -1
  79. package/dist/cjs/ix-empty-state.cjs.entry.js +2 -2
  80. package/dist/cjs/ix-empty-state.cjs.entry.js.map +1 -1
  81. package/dist/cjs/ix-event-list_2.cjs.entry.js +44 -25
  82. package/dist/cjs/ix-event-list_2.cjs.entry.js.map +1 -1
  83. package/dist/cjs/ix-expanding-search.cjs.entry.js +5 -8
  84. package/dist/cjs/ix-expanding-search.cjs.entry.js.map +1 -1
  85. package/dist/cjs/ix-filter-chip.cjs.entry.js +4 -3
  86. package/dist/cjs/ix-filter-chip.cjs.entry.js.map +1 -1
  87. package/dist/cjs/ix-flip-tile_2.cjs.entry.js +29 -19
  88. package/dist/cjs/ix-flip-tile_2.cjs.entry.js.map +1 -1
  89. package/dist/cjs/ix-form-field.cjs.entry.js +27 -0
  90. package/dist/cjs/ix-form-field.cjs.entry.js.map +1 -0
  91. package/dist/cjs/ix-grid.cjs.entry.js +29 -0
  92. package/dist/cjs/ix-grid.cjs.entry.js.map +1 -0
  93. package/dist/cjs/ix-group-context-menu.cjs.entry.js +26 -14
  94. package/dist/cjs/ix-group-context-menu.cjs.entry.js.map +1 -1
  95. package/dist/cjs/ix-group_2.cjs.entry.js +159 -0
  96. package/dist/cjs/ix-group_2.cjs.entry.js.map +1 -0
  97. package/dist/cjs/ix-icon-button.cjs.entry.js +23 -10
  98. package/dist/cjs/ix-icon-button.cjs.entry.js.map +1 -1
  99. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js +88 -0
  100. package/dist/cjs/ix-icon-toggle-button.cjs.entry.js.map +1 -0
  101. package/dist/cjs/ix-icon.cjs.entry.js +2 -2
  102. package/dist/cjs/ix-input-group.cjs.entry.js +85 -18
  103. package/dist/cjs/ix-input-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/ix-key-value-list.cjs.entry.js +1 -1
  105. package/dist/cjs/ix-key-value.cjs.entry.js +1 -1
  106. package/dist/cjs/ix-kpi.cjs.entry.js +2 -2
  107. package/dist/cjs/ix-kpi.cjs.entry.js.map +1 -1
  108. package/dist/cjs/ix-link-button.cjs.entry.js +30 -0
  109. package/dist/cjs/ix-link-button.cjs.entry.js.map +1 -0
  110. package/dist/cjs/ix-map-navigation_2.cjs.entry.js +26 -8
  111. package/dist/cjs/ix-map-navigation_2.cjs.entry.js.map +1 -1
  112. package/dist/cjs/ix-menu-category.cjs.entry.js +139 -0
  113. package/dist/cjs/ix-menu-category.cjs.entry.js.map +1 -0
  114. package/dist/cjs/ix-menu_9.cjs.entry.js +286 -347
  115. package/dist/cjs/ix-menu_9.cjs.entry.js.map +1 -1
  116. package/dist/cjs/ix-message-bar.cjs.entry.js +2 -2
  117. package/dist/cjs/ix-message-bar.cjs.entry.js.map +1 -1
  118. package/dist/cjs/ix-modal-content.cjs.entry.js +21 -0
  119. package/dist/cjs/ix-modal-content.cjs.entry.js.map +1 -0
  120. package/dist/cjs/ix-modal-example.cjs.entry.js +6 -4
  121. package/dist/cjs/ix-modal-example.cjs.entry.js.map +1 -1
  122. package/dist/cjs/ix-modal-footer.cjs.entry.js +21 -0
  123. package/dist/cjs/ix-modal-footer.cjs.entry.js.map +1 -0
  124. package/dist/cjs/ix-modal-header.cjs.entry.js +48 -0
  125. package/dist/cjs/ix-modal-header.cjs.entry.js.map +1 -0
  126. package/dist/cjs/ix-modal-loading.cjs.entry.js +21 -0
  127. package/dist/cjs/ix-modal-loading.cjs.entry.js.map +1 -0
  128. package/dist/cjs/ix-modal.cjs.entry.js +130 -0
  129. package/dist/cjs/ix-modal.cjs.entry.js.map +1 -0
  130. package/dist/cjs/ix-pagination.cjs.entry.js +32 -15
  131. package/dist/cjs/ix-pagination.cjs.entry.js.map +1 -1
  132. package/dist/cjs/ix-pill.cjs.entry.js +28 -10
  133. package/dist/cjs/ix-pill.cjs.entry.js.map +1 -1
  134. package/dist/cjs/ix-push-card.cjs.entry.js +5 -2
  135. package/dist/cjs/ix-push-card.cjs.entry.js.map +1 -1
  136. package/dist/cjs/ix-row.cjs.entry.js +21 -0
  137. package/dist/cjs/ix-row.cjs.entry.js.map +1 -0
  138. package/dist/cjs/ix-select_2.cjs.entry.js +85 -54
  139. package/dist/cjs/ix-select_2.cjs.entry.js.map +1 -1
  140. package/dist/cjs/ix-spinner.cjs.entry.js +10 -3
  141. package/dist/cjs/ix-spinner.cjs.entry.js.map +1 -1
  142. package/dist/cjs/ix-split-button_2.cjs.entry.js +17 -11
  143. package/dist/cjs/ix-split-button_2.cjs.entry.js.map +1 -1
  144. package/dist/cjs/ix-tab-item.cjs.entry.js +11 -3
  145. package/dist/cjs/ix-tab-item.cjs.entry.js.map +1 -1
  146. package/dist/cjs/ix-tabs.cjs.entry.js +34 -11
  147. package/dist/cjs/ix-tabs.cjs.entry.js.map +1 -1
  148. package/dist/cjs/ix-tile.cjs.entry.js +18 -3
  149. package/dist/cjs/ix-tile.cjs.entry.js.map +1 -1
  150. package/dist/cjs/ix-toast_2.cjs.entry.js +6 -7
  151. package/dist/cjs/ix-toast_2.cjs.entry.js.map +1 -1
  152. package/dist/cjs/ix-toggle-button.cjs.entry.js +77 -0
  153. package/dist/cjs/ix-toggle-button.cjs.entry.js.map +1 -0
  154. package/dist/cjs/ix-toggle.cjs.entry.js +11 -30
  155. package/dist/cjs/ix-toggle.cjs.entry.js.map +1 -1
  156. package/dist/cjs/ix-tooltip.cjs.entry.js +2 -2
  157. package/dist/cjs/ix-tree_2.cjs.entry.js +16 -9
  158. package/dist/cjs/ix-tree_2.cjs.entry.js.map +1 -1
  159. package/dist/cjs/ix-typography.cjs.entry.js +59 -0
  160. package/dist/cjs/ix-typography.cjs.entry.js.map +1 -0
  161. package/dist/cjs/ix-upload.cjs.entry.js +19 -7
  162. package/dist/cjs/ix-upload.cjs.entry.js.map +1 -1
  163. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +12 -25
  164. package/dist/cjs/ix-validation-tooltip.cjs.entry.js.map +1 -1
  165. package/dist/cjs/ix-workflow-step_2.cjs.entry.js +20 -28
  166. package/dist/cjs/ix-workflow-step_2.cjs.entry.js.map +1 -1
  167. package/dist/cjs/loader.cjs.js +2 -2
  168. package/dist/cjs/menu-service-f7ef5265.js +159 -0
  169. package/dist/cjs/menu-service-f7ef5265.js.map +1 -0
  170. package/dist/cjs/modal-26ae4715.js +253 -0
  171. package/dist/cjs/modal-26ae4715.js.map +1 -0
  172. package/dist/cjs/my-component.cjs.entry.js +1 -1
  173. package/dist/cjs/my-component.cjs.entry.js.map +1 -1
  174. package/dist/cjs/shadow-dom-9b10f758.js +24 -0
  175. package/dist/cjs/shadow-dom-9b10f758.js.map +1 -0
  176. package/dist/cjs/siemens-ix.cjs.js +2 -2
  177. package/dist/cjs/theme-switcher-d0386ac9.js +126 -0
  178. package/dist/cjs/theme-switcher-d0386ac9.js.map +1 -0
  179. package/dist/collection/collection-manifest.json +31 -33
  180. package/dist/collection/components/action-card/action-card.css +36 -0
  181. package/dist/collection/components/action-card/action-card.js +1 -1
  182. package/dist/collection/components/action-card/action-card.js.map +1 -1
  183. package/dist/collection/components/application/application.css +106 -0
  184. package/dist/collection/components/application/application.js +220 -0
  185. package/dist/collection/components/application/application.js.map +1 -0
  186. package/dist/collection/components/application-header/application-header.css +4 -2
  187. package/dist/collection/components/application-header/application-header.js +23 -16
  188. package/dist/collection/components/application-header/application-header.js.map +1 -1
  189. package/dist/collection/components/application-header/test/application-headet.ct.js +20 -0
  190. package/dist/collection/components/application-header/test/application-headet.ct.js.map +1 -0
  191. package/dist/collection/components/application-sidebar/application-sidebar.css +69 -0
  192. package/dist/collection/components/application-sidebar/application-sidebar.js +70 -0
  193. package/dist/collection/components/application-sidebar/application-sidebar.js.map +1 -0
  194. package/dist/collection/components/application-sidebar/events.js +15 -0
  195. package/dist/collection/components/application-sidebar/events.js.map +1 -0
  196. package/dist/collection/components/avatar/avatar.css +70 -0
  197. package/dist/collection/components/avatar/avatar.js +80 -0
  198. package/dist/collection/components/avatar/avatar.js.map +1 -0
  199. package/dist/collection/components/basic-navigation/basic-navigation.css +69 -4
  200. package/dist/collection/components/basic-navigation/basic-navigation.js +100 -19
  201. package/dist/collection/components/basic-navigation/basic-navigation.js.map +1 -1
  202. package/dist/collection/components/blind/blind.css +23 -8
  203. package/dist/collection/components/blind/blind.js +23 -2
  204. package/dist/collection/components/blind/blind.js.map +1 -1
  205. package/dist/collection/components/breadcrumb/breadcrumb.css +49 -153
  206. package/dist/collection/components/breadcrumb/breadcrumb.js +80 -92
  207. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -1
  208. package/dist/collection/components/breadcrumb/test/breadcrumb.ct.js +97 -0
  209. package/dist/collection/components/breadcrumb/test/breadcrumb.ct.js.map +1 -0
  210. package/dist/collection/components/breadcrumb-item/breadcrumb-item.css +1063 -1
  211. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +153 -3
  212. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -1
  213. package/dist/collection/components/button/base-button.js +10 -1
  214. package/dist/collection/components/button/base-button.js.map +1 -1
  215. package/dist/collection/components/button/button.css +298 -204
  216. package/dist/collection/components/button/button.js +95 -37
  217. package/dist/collection/components/button/button.js.map +1 -1
  218. package/dist/collection/components/button/test/button.ct.js +36 -0
  219. package/dist/collection/components/button/test/button.ct.js.map +1 -0
  220. package/dist/collection/components/card/card.css +36 -0
  221. package/dist/collection/components/card-accordion/card-accordion.css +37 -0
  222. package/dist/collection/components/card-content/card-content.css +36 -0
  223. package/dist/collection/components/card-list/card-list.css +36 -0
  224. package/dist/collection/components/category-filter/category-filter.css +1303 -4
  225. package/dist/collection/components/category-filter/category-filter.js +115 -55
  226. package/dist/collection/components/category-filter/category-filter.js.map +1 -1
  227. package/dist/collection/components/chip/chip.css +185 -149
  228. package/dist/collection/components/chip/chip.js +22 -14
  229. package/dist/collection/components/chip/chip.js.map +1 -1
  230. package/dist/collection/components/col/col.css +19 -0
  231. package/dist/collection/components/col/col.js +189 -0
  232. package/dist/collection/components/col/col.js.map +1 -0
  233. package/dist/collection/components/content/content.css +75 -0
  234. package/dist/collection/components/content/content.js +46 -0
  235. package/dist/collection/components/content/content.js.map +1 -0
  236. package/dist/collection/components/content-header/content-header.js +4 -4
  237. package/dist/collection/components/content-header/content-header.js.map +1 -1
  238. package/dist/collection/components/css-grid/builder.js.map +1 -0
  239. package/dist/collection/components/css-grid/css-grid-item.js.map +1 -0
  240. package/dist/collection/components/css-grid/css-grid.js +123 -0
  241. package/dist/collection/components/css-grid/css-grid.js.map +1 -0
  242. package/dist/collection/components/date-picker/date-picker.css +50 -2
  243. package/dist/collection/components/date-picker/date-picker.js +4 -4
  244. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  245. package/dist/collection/components/date-time-card/date-time-card.css +66 -8
  246. package/dist/collection/components/date-time-card/date-time-card.js +1 -2
  247. package/dist/collection/components/date-time-card/date-time-card.js.map +1 -1
  248. package/dist/collection/components/datetime-picker/datetime-picker.css +52 -6
  249. package/dist/collection/components/datetime-picker/datetime-picker.js +1 -1
  250. package/dist/collection/components/datetime-picker/datetime-picker.js.map +1 -1
  251. package/dist/collection/components/drawer/drawer.css +36 -0
  252. package/dist/collection/components/drawer/drawer.js +3 -0
  253. package/dist/collection/components/drawer/drawer.js.map +1 -1
  254. package/dist/collection/components/drawer/test/drawer.ct.js +47 -0
  255. package/dist/collection/components/drawer/test/drawer.ct.js.map +1 -0
  256. package/dist/collection/components/dropdown/dropdown.css +39 -458
  257. package/dist/collection/components/dropdown/dropdown.js +77 -63
  258. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  259. package/dist/collection/components/dropdown/placement.js.map +1 -1
  260. package/dist/collection/components/dropdown-button/dropdown-button.css +62 -6
  261. package/dist/collection/components/dropdown-button/dropdown-button.js +39 -9
  262. package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -1
  263. package/dist/collection/components/dropdown-header/dropdown-header.css +68 -0
  264. package/dist/collection/components/dropdown-header/dropdown-header.js +54 -0
  265. package/dist/collection/components/dropdown-header/dropdown-header.js.map +1 -0
  266. package/dist/collection/components/dropdown-item/dropdown-item.css +112 -28
  267. package/dist/collection/components/dropdown-item/dropdown-item.js +57 -12
  268. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  269. package/dist/collection/components/empty-state/empty-state.css +38 -0
  270. package/dist/collection/components/event-list/event-list.css +56 -35
  271. package/dist/collection/components/event-list/event-list.js +35 -16
  272. package/dist/collection/components/event-list/event-list.js.map +1 -1
  273. package/dist/collection/components/event-list-item/event-list-item.css +100 -35
  274. package/dist/collection/components/event-list-item/event-list-item.js +17 -10
  275. package/dist/collection/components/event-list-item/event-list-item.js.map +1 -1
  276. package/dist/collection/components/expanding-search/expanding-search.css +306 -9
  277. package/dist/collection/components/expanding-search/expanding-search.js +4 -7
  278. package/dist/collection/components/expanding-search/expanding-search.js.map +1 -1
  279. package/dist/collection/components/expanding-search/test/expanding-search.ct.js +56 -0
  280. package/dist/collection/components/expanding-search/test/expanding-search.ct.js.map +1 -0
  281. package/dist/collection/components/filter-chip/filter-chip.css +83 -23
  282. package/dist/collection/components/filter-chip/filter-chip.js +24 -2
  283. package/dist/collection/components/filter-chip/filter-chip.js.map +1 -1
  284. package/dist/collection/components/flip-tile/flip-tile-state.js +5 -5
  285. package/dist/collection/components/flip-tile/flip-tile-state.js.map +1 -1
  286. package/dist/collection/components/flip-tile/flip-tile.css +208 -0
  287. package/dist/collection/components/flip-tile/flip-tile.js +25 -36
  288. package/dist/collection/components/flip-tile/flip-tile.js.map +1 -1
  289. package/dist/collection/components/flip-tile/test/flip-tile.ct.js +57 -0
  290. package/dist/collection/components/flip-tile/test/flip-tile.ct.js.map +1 -0
  291. package/dist/collection/components/flip-tile-content/flip-tile-content.js +29 -1
  292. package/dist/collection/components/flip-tile-content/flip-tile-content.js.map +1 -1
  293. package/dist/collection/components/form-field/form-field.css +234 -0
  294. package/dist/collection/components/form-field/form-field.js +56 -0
  295. package/dist/collection/components/form-field/form-field.js.map +1 -0
  296. package/dist/collection/components/grid/grid.css +26 -0
  297. package/dist/collection/components/grid/grid.js +98 -0
  298. package/dist/collection/components/grid/grid.js.map +1 -0
  299. package/dist/collection/components/group/group-context-menu.css +2 -3
  300. package/dist/collection/components/group/group-context-menu.js +27 -15
  301. package/dist/collection/components/group/group-context-menu.js.map +1 -1
  302. package/dist/collection/components/group/group.css +10 -4
  303. package/dist/collection/components/group/group.js +29 -48
  304. package/dist/collection/components/group/group.js.map +1 -1
  305. package/dist/collection/components/group-item/group-item.css +95 -33
  306. package/dist/collection/components/group-item/group-item.js +2 -2
  307. package/dist/collection/components/group-item/group-item.js.map +1 -1
  308. package/dist/collection/components/icon-button/base-icon-button.js +14 -0
  309. package/dist/collection/components/icon-button/base-icon-button.js.map +1 -0
  310. package/dist/collection/components/icon-button/icon-button.css +405 -165
  311. package/dist/collection/components/icon-button/icon-button.js +48 -50
  312. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  313. package/dist/collection/components/icon-button/test/icon-button.ct.js +26 -0
  314. package/dist/collection/components/icon-button/test/icon-button.ct.js.map +1 -0
  315. package/dist/collection/components/icon-toggle-button/icon-toggle-button.css +618 -0
  316. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js +274 -0
  317. package/dist/collection/components/icon-toggle-button/icon-toggle-button.js.map +1 -0
  318. package/dist/collection/components/input-group/input-group.css +56 -1
  319. package/dist/collection/components/input-group/input-group.js +92 -17
  320. package/dist/collection/components/input-group/input-group.js.map +1 -1
  321. package/dist/collection/components/kpi/kpi.css +38 -2
  322. package/dist/collection/components/link-button/link-button.css +446 -0
  323. package/dist/collection/components/link-button/link-button.js +98 -0
  324. package/dist/collection/components/link-button/link-button.js.map +1 -0
  325. package/dist/collection/components/map-navigation/map-navigation.css +53 -1
  326. package/dist/collection/components/map-navigation/map-navigation.js +26 -7
  327. package/dist/collection/components/map-navigation/map-navigation.js.map +1 -1
  328. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.css +56 -0
  329. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +1 -1
  330. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js.map +1 -1
  331. package/dist/collection/components/menu/burger-menu.css +430 -5
  332. package/dist/collection/components/menu/burger-menu.js +42 -2
  333. package/dist/collection/components/menu/burger-menu.js.map +1 -1
  334. package/dist/collection/components/menu/menu.css +1766 -24
  335. package/dist/collection/components/menu/menu.js +289 -342
  336. package/dist/collection/components/menu/menu.js.map +1 -1
  337. package/dist/collection/components/menu/test/menu.ct.js +162 -0
  338. package/dist/collection/components/menu/test/menu.ct.js.map +1 -0
  339. package/dist/collection/components/menu-about/menu-about.css +2 -2
  340. package/dist/collection/components/menu-about/menu-about.js +9 -8
  341. package/dist/collection/components/menu-about/menu-about.js.map +1 -1
  342. package/dist/collection/components/menu-about-item/menu-about-item.js +1 -1
  343. package/dist/collection/components/menu-about-item/menu-about-item.js.map +1 -1
  344. package/dist/collection/components/menu-about-news/menu-about-news.css +55 -4
  345. package/dist/collection/components/menu-about-news/menu-about-news.js +3 -3
  346. package/dist/collection/components/menu-about-news/menu-about-news.js.map +1 -1
  347. package/dist/collection/components/menu-avatar/menu-avatar.css +58 -2
  348. package/dist/collection/components/menu-avatar/menu-avatar.js +3 -10
  349. package/dist/collection/components/menu-avatar/menu-avatar.js.map +1 -1
  350. package/dist/collection/components/menu-avatar-item/menu-avatar-item.css +49 -2
  351. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js +2 -2
  352. package/dist/collection/components/menu-avatar-item/menu-avatar-item.js.map +1 -1
  353. package/dist/collection/components/menu-category/menu-category.css +104 -0
  354. package/dist/collection/components/menu-category/menu-category.js +212 -0
  355. package/dist/collection/components/menu-category/menu-category.js.map +1 -0
  356. package/dist/collection/components/menu-category/test/menu-category.ct.js +124 -0
  357. package/dist/collection/components/menu-category/test/menu-category.ct.js.map +1 -0
  358. package/dist/collection/components/menu-item/menu-item.css +17 -16
  359. package/dist/collection/components/menu-item/menu-item.js +46 -7
  360. package/dist/collection/components/menu-item/menu-item.js.map +1 -1
  361. package/dist/collection/components/menu-settings/menu-settings.css +53 -1
  362. package/dist/collection/components/menu-settings/menu-settings.js +9 -8
  363. package/dist/collection/components/menu-settings/menu-settings.js.map +1 -1
  364. package/dist/collection/components/menu-settings-item/menu-settings-item.css +0 -1
  365. package/dist/collection/components/menu-settings-item/menu-settings-item.js +1 -1
  366. package/dist/collection/components/menu-settings-item/menu-settings-item.js.map +1 -1
  367. package/dist/collection/components/message-bar/message-bar.css +38 -0
  368. package/dist/collection/components/modal/modal.css +58 -75
  369. package/dist/collection/components/modal/modal.js +143 -312
  370. package/dist/collection/components/modal/modal.js.map +1 -1
  371. package/dist/collection/components/modal-content/modal-content.css +63 -0
  372. package/dist/collection/components/modal-content/modal-content.js +30 -0
  373. package/dist/collection/components/modal-content/modal-content.js.map +1 -0
  374. package/dist/collection/components/modal-footer/modal-footer.css +66 -0
  375. package/dist/collection/components/modal-footer/modal-footer.js +30 -0
  376. package/dist/collection/components/modal-footer/modal-footer.js.map +1 -0
  377. package/dist/collection/components/modal-header/modal-header.css +70 -0
  378. package/dist/collection/components/modal-header/modal-header.js +139 -0
  379. package/dist/collection/components/modal-header/modal-header.js.map +1 -0
  380. package/dist/collection/components/modal-loading/modal-loading.css +22 -0
  381. package/dist/collection/components/modal-loading/modal-loading.js +30 -0
  382. package/dist/collection/components/modal-loading/modal-loading.js.map +1 -0
  383. package/dist/collection/components/my-component/example-modal.js +1 -1
  384. package/dist/collection/components/my-component/example-modal.js.map +1 -1
  385. package/dist/collection/components/my-component/my-component.js +1 -1
  386. package/dist/collection/components/my-component/my-component.js.map +1 -1
  387. package/dist/collection/components/pagination/pagination.css +919 -2
  388. package/dist/collection/components/pagination/pagination.js +31 -14
  389. package/dist/collection/components/pagination/pagination.js.map +1 -1
  390. package/dist/collection/components/pill/pill.css +138 -166
  391. package/dist/collection/components/pill/pill.js +27 -9
  392. package/dist/collection/components/pill/pill.js.map +1 -1
  393. package/dist/collection/components/push-card/push-card.js +4 -1
  394. package/dist/collection/components/push-card/push-card.js.map +1 -1
  395. package/dist/collection/components/row/row.css +17 -0
  396. package/dist/collection/components/row/row.js +30 -0
  397. package/dist/collection/components/row/row.js.map +1 -0
  398. package/dist/collection/components/select/select.css +75 -7
  399. package/dist/collection/components/select/select.js +149 -59
  400. package/dist/collection/components/select/select.js.map +1 -1
  401. package/dist/collection/components/select/test/select.ct.js +119 -0
  402. package/dist/collection/components/select/test/select.ct.js.map +1 -0
  403. package/dist/collection/components/select-item/select-item.css +12 -0
  404. package/dist/collection/components/select-item/select-item.js +4 -2
  405. package/dist/collection/components/select-item/select-item.js.map +1 -1
  406. package/dist/collection/components/spinner/spinner.css +576 -23
  407. package/dist/collection/components/spinner/spinner.js +33 -5
  408. package/dist/collection/components/spinner/spinner.js.map +1 -1
  409. package/dist/collection/components/split-button/split-button.css +76 -2
  410. package/dist/collection/components/split-button/split-button.js +17 -35
  411. package/dist/collection/components/split-button/split-button.js.map +1 -1
  412. package/dist/collection/components/split-button-item/split-button-item.css +1 -1
  413. package/dist/collection/components/split-button-item/split-button-item.js +5 -2
  414. package/dist/collection/components/split-button-item/split-button-item.js.map +1 -1
  415. package/dist/collection/components/tab-item/tab-item.css +149 -81
  416. package/dist/collection/components/tab-item/tab-item.js +35 -1
  417. package/dist/collection/components/tab-item/tab-item.js.map +1 -1
  418. package/dist/collection/components/tabs/tabs.css +73 -19
  419. package/dist/collection/components/tabs/tabs.js +59 -9
  420. package/dist/collection/components/tabs/tabs.js.map +1 -1
  421. package/dist/collection/components/tabs/test/tabs.ct.js +84 -0
  422. package/dist/collection/components/tabs/test/tabs.ct.js.map +1 -0
  423. package/dist/collection/components/tile/tile.css +90 -24
  424. package/dist/collection/components/tile/tile.js +23 -2
  425. package/dist/collection/components/tile/tile.js.map +1 -1
  426. package/dist/collection/components/time-picker/time-picker.css +522 -38
  427. package/dist/collection/components/time-picker/time-picker.js +3 -4
  428. package/dist/collection/components/time-picker/time-picker.js.map +1 -1
  429. package/dist/collection/components/toast/toast-container.js +2 -3
  430. package/dist/collection/components/toast/toast-container.js.map +1 -1
  431. package/dist/collection/components/toast/toast.css +73 -0
  432. package/dist/collection/components/toast/toast.js +5 -5
  433. package/dist/collection/components/toast/toast.js.map +1 -1
  434. package/dist/collection/components/toggle/test/toggle.ct.js +52 -0
  435. package/dist/collection/components/toggle/test/toggle.ct.js.map +1 -0
  436. package/dist/collection/components/toggle/toggle.css +100 -145
  437. package/dist/collection/components/toggle/toggle.js +11 -60
  438. package/dist/collection/components/toggle/toggle.js.map +1 -1
  439. package/dist/collection/components/toggle-button/toggle-button.css +447 -0
  440. package/dist/collection/components/toggle-button/toggle-button.js +246 -0
  441. package/dist/collection/components/toggle-button/toggle-button.js.map +1 -0
  442. package/dist/collection/components/tree/test/tree.ct.js +154 -0
  443. package/dist/collection/components/tree/test/tree.ct.js.map +1 -0
  444. package/dist/collection/components/tree/tree.js +14 -7
  445. package/dist/collection/components/tree/tree.js.map +1 -1
  446. package/dist/collection/components/tree-item/tree-item.css +56 -14
  447. package/dist/collection/components/tree-item/tree-item.js +1 -1
  448. package/dist/collection/components/tree-item/tree-item.js.map +1 -1
  449. package/dist/collection/components/typography/typography.css +444 -14
  450. package/dist/collection/components/typography/typography.js +96 -15
  451. package/dist/collection/components/typography/typography.js.map +1 -1
  452. package/dist/collection/components/upload/upload.css +60 -3
  453. package/dist/collection/components/upload/upload.js +18 -6
  454. package/dist/collection/components/upload/upload.js.map +1 -1
  455. package/dist/collection/components/utils/a11y.js +66 -0
  456. package/dist/collection/components/utils/a11y.js.map +1 -1
  457. package/dist/collection/components/utils/application-layout/context.js +19 -0
  458. package/dist/collection/components/utils/application-layout/context.js.map +1 -0
  459. package/dist/collection/components/utils/application-layout/index.js +10 -0
  460. package/dist/collection/components/utils/application-layout/index.js.map +1 -0
  461. package/dist/collection/components/utils/application-layout/service.js +92 -0
  462. package/dist/collection/components/utils/application-layout/service.js.map +1 -0
  463. package/dist/collection/components/utils/breakpoints.js +22 -0
  464. package/dist/collection/components/utils/breakpoints.js.map +1 -0
  465. package/dist/collection/components/utils/context.js +79 -0
  466. package/dist/collection/components/utils/context.js.map +1 -0
  467. package/dist/collection/components/utils/delegate.js +29 -0
  468. package/dist/collection/components/utils/delegate.js.map +1 -0
  469. package/dist/collection/components/utils/menu-service/menu-service.js +25 -0
  470. package/dist/collection/components/utils/menu-service/menu-service.js.map +1 -1
  471. package/dist/collection/components/utils/modal/index.js +12 -0
  472. package/dist/collection/components/utils/modal/index.js.map +1 -0
  473. package/dist/collection/components/utils/modal/loading.js +35 -0
  474. package/dist/collection/components/utils/modal/loading.js.map +1 -0
  475. package/dist/collection/components/utils/modal/message.js +138 -0
  476. package/dist/collection/components/utils/modal/message.js.map +1 -0
  477. package/dist/collection/components/utils/modal/modal.js +77 -0
  478. package/dist/collection/components/utils/modal/modal.js.map +1 -0
  479. package/dist/collection/components/utils/shadow-dom.js +25 -0
  480. package/dist/collection/components/utils/shadow-dom.js.map +1 -0
  481. package/dist/collection/components/utils/theme-switcher.js +35 -3
  482. package/dist/collection/components/utils/theme-switcher.js.map +1 -1
  483. package/dist/collection/components/validation-tooltip/validation-tooltip.js +35 -18
  484. package/dist/collection/components/validation-tooltip/validation-tooltip.js.map +1 -1
  485. package/dist/collection/components/workflow-step/workflow-step.css +53 -2
  486. package/dist/collection/components/workflow-step/workflow-step.js +8 -24
  487. package/dist/collection/components/workflow-step/workflow-step.js.map +1 -1
  488. package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js +74 -0
  489. package/dist/collection/components/workflow-steps/test/workflow-steps.ct.js.map +1 -0
  490. package/dist/collection/components/workflow-steps/workflow-steps.css +51 -0
  491. package/dist/collection/components/workflow-steps/workflow-steps.js +23 -36
  492. package/dist/collection/components/workflow-steps/workflow-steps.js.map +1 -1
  493. package/dist/collection/index.js +2 -1
  494. package/dist/collection/index.js.map +1 -1
  495. package/dist/collection/tests/utils/test/page.js +12 -5
  496. package/dist/collection/tests/utils/test/page.js.map +1 -1
  497. package/dist/components/a11y.js +79 -0
  498. package/dist/components/a11y.js.map +1 -0
  499. package/dist/components/application-header.js +44 -18
  500. package/dist/components/application-header.js.map +1 -1
  501. package/dist/components/avatar.js +53 -0
  502. package/dist/components/avatar.js.map +1 -0
  503. package/dist/components/base-button.js +16 -2
  504. package/dist/components/base-button.js.map +1 -1
  505. package/dist/components/base-icon-button.js +18 -0
  506. package/dist/components/base-icon-button.js.map +1 -0
  507. package/dist/components/breadcrumb-item.js +99 -0
  508. package/dist/components/breadcrumb-item.js.map +1 -0
  509. package/dist/components/breakpoints.js +25 -0
  510. package/dist/components/breakpoints.js.map +1 -0
  511. package/dist/components/burger-menu.js +28 -4
  512. package/dist/components/burger-menu.js.map +1 -1
  513. package/dist/components/button.js +42 -11
  514. package/dist/components/button.js.map +1 -1
  515. package/dist/components/card-accordion.js +1 -1
  516. package/dist/components/card-accordion.js.map +1 -1
  517. package/dist/components/card-content.js +1 -1
  518. package/dist/components/card-content.js.map +1 -1
  519. package/dist/components/card.js +1 -1
  520. package/dist/components/card.js.map +1 -1
  521. package/dist/components/context.js +101 -0
  522. package/dist/components/context.js.map +1 -0
  523. package/dist/components/date-picker.js +22 -15
  524. package/dist/components/date-picker.js.map +1 -1
  525. package/dist/components/date-time-card.js +3 -3
  526. package/dist/components/date-time-card.js.map +1 -1
  527. package/dist/components/divider.js +32 -0
  528. package/dist/components/divider.js.map +1 -0
  529. package/dist/components/dropdown-item.js +19 -13
  530. package/dist/components/dropdown-item.js.map +1 -1
  531. package/dist/components/dropdown.js +50 -22
  532. package/dist/components/dropdown.js.map +1 -1
  533. package/dist/components/filter-chip.js +21 -6
  534. package/dist/components/filter-chip.js.map +1 -1
  535. package/dist/components/flip-tile-state.js +5 -5
  536. package/dist/components/flip-tile-state.js.map +1 -1
  537. package/dist/components/floating-ui.dom.esm.js +656 -637
  538. package/dist/components/floating-ui.dom.esm.js.map +1 -1
  539. package/dist/components/group-context-menu.js +37 -18
  540. package/dist/components/group-context-menu.js.map +1 -1
  541. package/dist/components/group-item.js +4 -3
  542. package/dist/components/group-item.js.map +1 -1
  543. package/dist/components/icon-button.js +31 -14
  544. package/dist/components/icon-button.js.map +1 -1
  545. package/dist/components/index.js +38 -3
  546. package/dist/components/index.js.map +1 -1
  547. package/dist/components/index2.js +6 -0
  548. package/dist/components/index2.js.map +1 -0
  549. package/dist/components/ix-action-card.js +2 -2
  550. package/dist/components/ix-action-card.js.map +1 -1
  551. package/dist/components/ix-application-sidebar.d.ts +11 -0
  552. package/dist/components/ix-application-sidebar.js +63 -0
  553. package/dist/components/ix-application-sidebar.js.map +1 -0
  554. package/dist/components/ix-application.d.ts +11 -0
  555. package/dist/components/ix-application.js +128 -0
  556. package/dist/components/ix-application.js.map +1 -0
  557. package/dist/components/ix-avatar.d.ts +11 -0
  558. package/dist/components/ix-avatar.js +8 -0
  559. package/dist/components/ix-avatar.js.map +1 -0
  560. package/dist/components/ix-basic-navigation.js +76 -24
  561. package/dist/components/ix-basic-navigation.js.map +1 -1
  562. package/dist/components/ix-blind.js +14 -15
  563. package/dist/components/ix-blind.js.map +1 -1
  564. package/dist/components/ix-breadcrumb-item.js +1 -32
  565. package/dist/components/ix-breadcrumb-item.js.map +1 -1
  566. package/dist/components/ix-breadcrumb.js +76 -98
  567. package/dist/components/ix-breadcrumb.js.map +1 -1
  568. package/dist/components/ix-card-list.js +17 -11
  569. package/dist/components/ix-card-list.js.map +1 -1
  570. package/dist/components/ix-category-filter.js +90 -49
  571. package/dist/components/ix-category-filter.js.map +1 -1
  572. package/dist/components/ix-chip.js +38 -17
  573. package/dist/components/ix-chip.js.map +1 -1
  574. package/dist/components/ix-col.d.ts +11 -0
  575. package/dist/components/ix-col.js +96 -0
  576. package/dist/components/ix-col.js.map +1 -0
  577. package/dist/components/ix-content-header.js +12 -6
  578. package/dist/components/ix-content-header.js.map +1 -1
  579. package/dist/components/ix-content.d.ts +11 -0
  580. package/dist/components/ix-content.js +48 -0
  581. package/dist/components/ix-content.js.map +1 -0
  582. package/dist/components/ix-css-grid-item.js.map +1 -1
  583. package/dist/components/ix-css-grid.js.map +1 -1
  584. package/dist/components/ix-datetime-picker.js +29 -16
  585. package/dist/components/ix-datetime-picker.js.map +1 -1
  586. package/dist/components/ix-divider.js +1 -28
  587. package/dist/components/ix-divider.js.map +1 -1
  588. package/dist/components/ix-drawer.js +14 -5
  589. package/dist/components/ix-drawer.js.map +1 -1
  590. package/dist/components/ix-dropdown-button.js +24 -14
  591. package/dist/components/ix-dropdown-button.js.map +1 -1
  592. package/dist/components/ix-dropdown-header.d.ts +11 -0
  593. package/dist/components/ix-dropdown-header.js +44 -0
  594. package/dist/components/ix-dropdown-header.js.map +1 -0
  595. package/dist/components/ix-empty-state.js +11 -5
  596. package/dist/components/ix-empty-state.js.map +1 -1
  597. package/dist/components/ix-event-list-item.js +21 -11
  598. package/dist/components/ix-event-list-item.js.map +1 -1
  599. package/dist/components/ix-event-list.js +34 -17
  600. package/dist/components/ix-event-list.js.map +1 -1
  601. package/dist/components/ix-expanding-search.js +16 -12
  602. package/dist/components/ix-expanding-search.js.map +1 -1
  603. package/dist/components/ix-flip-tile-content.js +5 -2
  604. package/dist/components/ix-flip-tile-content.js.map +1 -1
  605. package/dist/components/ix-flip-tile.js +37 -22
  606. package/dist/components/ix-flip-tile.js.map +1 -1
  607. package/dist/components/ix-form-field.d.ts +11 -0
  608. package/dist/components/ix-form-field.js +43 -0
  609. package/dist/components/ix-form-field.js.map +1 -0
  610. package/dist/components/ix-grid.d.ts +11 -0
  611. package/dist/components/ix-grid.js +47 -0
  612. package/dist/components/ix-grid.js.map +1 -0
  613. package/dist/components/ix-group.js +51 -49
  614. package/dist/components/ix-group.js.map +1 -1
  615. package/dist/components/ix-icon-toggle-button.d.ts +11 -0
  616. package/dist/components/ix-icon-toggle-button.js +122 -0
  617. package/dist/components/ix-icon-toggle-button.js.map +1 -0
  618. package/dist/components/ix-input-group.js +89 -18
  619. package/dist/components/ix-input-group.js.map +1 -1
  620. package/dist/components/ix-kpi.js +1 -1
  621. package/dist/components/ix-kpi.js.map +1 -1
  622. package/dist/components/ix-link-button.d.ts +11 -0
  623. package/dist/components/ix-link-button.js +54 -0
  624. package/dist/components/ix-link-button.js.map +1 -0
  625. package/dist/components/ix-map-navigation.js +42 -17
  626. package/dist/components/ix-map-navigation.js.map +1 -1
  627. package/dist/components/ix-menu-about-item.js +3 -2
  628. package/dist/components/ix-menu-about-item.js.map +1 -1
  629. package/dist/components/ix-menu-about-news.js +27 -8
  630. package/dist/components/ix-menu-about-news.js.map +1 -1
  631. package/dist/components/ix-menu-about.js +19 -11
  632. package/dist/components/ix-menu-about.js.map +1 -1
  633. package/dist/components/ix-menu-avatar.js +12 -20
  634. package/dist/components/ix-menu-avatar.js.map +1 -1
  635. package/dist/components/ix-menu-category.d.ts +11 -0
  636. package/dist/components/ix-menu-category.js +196 -0
  637. package/dist/components/ix-menu-category.js.map +1 -0
  638. package/dist/components/ix-menu-settings-item.js +3 -2
  639. package/dist/components/ix-menu-settings-item.js.map +1 -1
  640. package/dist/components/ix-menu-settings.js +19 -11
  641. package/dist/components/ix-menu-settings.js.map +1 -1
  642. package/dist/components/ix-menu.js +262 -321
  643. package/dist/components/ix-menu.js.map +1 -1
  644. package/dist/components/ix-message-bar.js +11 -5
  645. package/dist/components/ix-message-bar.js.map +1 -1
  646. package/dist/components/ix-modal-content.d.ts +11 -0
  647. package/dist/components/ix-modal-content.js +35 -0
  648. package/dist/components/ix-modal-content.js.map +1 -0
  649. package/dist/components/ix-modal-example.js +10 -15
  650. package/dist/components/ix-modal-example.js.map +1 -1
  651. package/dist/components/ix-modal-footer.d.ts +11 -0
  652. package/dist/components/ix-modal-footer.js +35 -0
  653. package/dist/components/ix-modal-footer.js.map +1 -0
  654. package/dist/components/ix-modal-header.d.ts +11 -0
  655. package/dist/components/ix-modal-header.js +90 -0
  656. package/dist/components/ix-modal-header.js.map +1 -0
  657. package/dist/components/ix-modal-loading.d.ts +11 -0
  658. package/dist/components/ix-modal-loading.js +41 -0
  659. package/dist/components/ix-modal-loading.js.map +1 -0
  660. package/dist/components/ix-modal.js +148 -1
  661. package/dist/components/ix-modal.js.map +1 -1
  662. package/dist/components/ix-pagination.js +55 -31
  663. package/dist/components/ix-pagination.js.map +1 -1
  664. package/dist/components/ix-pill.js +29 -10
  665. package/dist/components/ix-pill.js.map +1 -1
  666. package/dist/components/ix-push-card.js +4 -1
  667. package/dist/components/ix-push-card.js.map +1 -1
  668. package/dist/components/ix-row.d.ts +11 -0
  669. package/dist/components/ix-row.js +35 -0
  670. package/dist/components/ix-row.js.map +1 -0
  671. package/dist/components/ix-split-button-item.js +7 -3
  672. package/dist/components/ix-split-button-item.js.map +1 -1
  673. package/dist/components/ix-split-button.js +35 -14
  674. package/dist/components/ix-split-button.js.map +1 -1
  675. package/dist/components/ix-tile.js +22 -4
  676. package/dist/components/ix-tile.js.map +1 -1
  677. package/dist/components/ix-toast-container.js +12 -6
  678. package/dist/components/ix-toast-container.js.map +1 -1
  679. package/dist/components/ix-toggle-button.d.ts +11 -0
  680. package/dist/components/ix-toggle-button.js +111 -0
  681. package/dist/components/ix-toggle-button.js.map +1 -0
  682. package/dist/components/ix-toggle.js +15 -34
  683. package/dist/components/ix-toggle.js.map +1 -1
  684. package/dist/components/ix-tree.js +16 -8
  685. package/dist/components/ix-tree.js.map +1 -1
  686. package/dist/components/ix-upload.js +28 -10
  687. package/dist/components/ix-upload.js.map +1 -1
  688. package/dist/components/ix-validation-tooltip.js +14 -25
  689. package/dist/components/ix-validation-tooltip.js.map +1 -1
  690. package/dist/components/ix-workflow-step.js +9 -15
  691. package/dist/components/ix-workflow-step.js.map +1 -1
  692. package/dist/components/ix-workflow-steps.js +17 -18
  693. package/dist/components/ix-workflow-steps.js.map +1 -1
  694. package/dist/components/map-navigation-overlay.js +13 -6
  695. package/dist/components/map-navigation-overlay.js.map +1 -1
  696. package/dist/components/menu-avatar-item.js +3 -2
  697. package/dist/components/menu-avatar-item.js.map +1 -1
  698. package/dist/components/menu-item.js +23 -3
  699. package/dist/components/menu-item.js.map +1 -1
  700. package/dist/components/menu-service.js +156 -0
  701. package/dist/components/menu-service.js.map +1 -0
  702. package/dist/components/modal.js +225 -165
  703. package/dist/components/modal.js.map +1 -1
  704. package/dist/components/my-component.js.map +1 -1
  705. package/dist/components/select-item.js +6 -3
  706. package/dist/components/select-item.js.map +1 -1
  707. package/dist/components/select.js +102 -65
  708. package/dist/components/select.js.map +1 -1
  709. package/dist/components/shadow-dom.js +21 -0
  710. package/dist/components/shadow-dom.js.map +1 -0
  711. package/dist/components/spinner.js +11 -3
  712. package/dist/components/spinner.js.map +1 -1
  713. package/dist/components/tab-item.js +13 -4
  714. package/dist/components/tab-item.js.map +1 -1
  715. package/dist/components/tabs.js +44 -14
  716. package/dist/components/tabs.js.map +1 -1
  717. package/dist/components/theme-switcher.js +35 -3
  718. package/dist/components/theme-switcher.js.map +1 -1
  719. package/dist/components/time-picker.js +25 -13
  720. package/dist/components/time-picker.js.map +1 -1
  721. package/dist/components/toast.js +17 -10
  722. package/dist/components/toast.js.map +1 -1
  723. package/dist/components/tree-item.js +3 -2
  724. package/dist/components/tree-item.js.map +1 -1
  725. package/dist/components/typography.js +29 -13
  726. package/dist/components/typography.js.map +1 -1
  727. package/dist/esm/a11y-aa83c2d1.js +79 -0
  728. package/dist/esm/a11y-aa83c2d1.js.map +1 -0
  729. package/dist/esm/base-button-87048318.js +47 -0
  730. package/dist/esm/base-button-87048318.js.map +1 -0
  731. package/dist/esm/base-icon-button-afac2d95.js +18 -0
  732. package/dist/esm/base-icon-button-afac2d95.js.map +1 -0
  733. package/dist/esm/breakpoints-b8d59fd9.js +25 -0
  734. package/dist/esm/breakpoints-b8d59fd9.js.map +1 -0
  735. package/dist/esm/context-6a3bc77f.js +101 -0
  736. package/dist/esm/context-6a3bc77f.js.map +1 -0
  737. package/dist/esm/flip-tile-state-db31345f.js +20 -0
  738. package/dist/esm/flip-tile-state-db31345f.js.map +1 -0
  739. package/dist/esm/floating-ui.dom.esm-cbe44820.js +1512 -0
  740. package/dist/esm/floating-ui.dom.esm-cbe44820.js.map +1 -0
  741. package/dist/esm/icon-f54a8bc4.js +112 -0
  742. package/dist/esm/icon-f54a8bc4.js.map +1 -0
  743. package/dist/esm/index-7b24b7fa.js +6 -0
  744. package/dist/esm/index-7b24b7fa.js.map +1 -0
  745. package/dist/esm/index-eb0be730.js +2256 -0
  746. package/dist/esm/index-eb0be730.js.map +1 -0
  747. package/dist/esm/index.js +41 -6
  748. package/dist/esm/index.js.map +1 -1
  749. package/dist/esm/ix-action-card.entry.js +3 -3
  750. package/dist/esm/ix-action-card.entry.js.map +1 -1
  751. package/dist/esm/ix-application-header.entry.js +25 -17
  752. package/dist/esm/ix-application-header.entry.js.map +1 -1
  753. package/dist/esm/ix-application-sidebar.entry.js +43 -0
  754. package/dist/esm/ix-application-sidebar.entry.js.map +1 -0
  755. package/dist/esm/ix-application.entry.js +105 -0
  756. package/dist/esm/ix-application.entry.js.map +1 -0
  757. package/dist/esm/ix-avatar.entry.js +35 -0
  758. package/dist/esm/ix-avatar.entry.js.map +1 -0
  759. package/dist/esm/ix-basic-navigation.entry.js +51 -19
  760. package/dist/esm/ix-basic-navigation.entry.js.map +1 -1
  761. package/dist/esm/ix-blind.entry.js +6 -14
  762. package/dist/esm/ix-blind.entry.js.map +1 -1
  763. package/dist/esm/ix-breadcrumb_2.entry.js +100 -92
  764. package/dist/esm/ix-breadcrumb_2.entry.js.map +1 -1
  765. package/dist/esm/ix-burger-menu.entry.js +7 -3
  766. package/dist/esm/ix-burger-menu.entry.js.map +1 -1
  767. package/dist/esm/ix-button.entry.js +25 -8
  768. package/dist/esm/ix-button.entry.js.map +1 -1
  769. package/dist/esm/ix-card-accordion_2.entry.js +2 -2
  770. package/dist/esm/ix-card-accordion_2.entry.js.map +1 -1
  771. package/dist/esm/ix-card-list.entry.js +2 -2
  772. package/dist/esm/ix-card-list.entry.js.map +1 -1
  773. package/dist/esm/ix-card_2.entry.js +31 -0
  774. package/dist/esm/ix-card_2.entry.js.map +1 -0
  775. package/dist/esm/ix-category-filter.entry.js +73 -40
  776. package/dist/esm/ix-category-filter.entry.js.map +1 -1
  777. package/dist/esm/ix-chip.entry.js +23 -15
  778. package/dist/esm/ix-chip.entry.js.map +1 -1
  779. package/dist/esm/ix-col.entry.js +73 -0
  780. package/dist/esm/ix-col.entry.js.map +1 -0
  781. package/dist/esm/ix-content-header.entry.js +3 -3
  782. package/dist/esm/ix-content-header.entry.js.map +1 -1
  783. package/dist/esm/ix-content.entry.js +28 -0
  784. package/dist/esm/ix-content.entry.js.map +1 -0
  785. package/dist/esm/ix-css-grid-item.entry.js +1 -1
  786. package/dist/esm/ix-css-grid-item.entry.js.map +1 -1
  787. package/dist/esm/ix-css-grid.entry.js +1 -1
  788. package/dist/esm/ix-css-grid.entry.js.map +1 -1
  789. package/dist/esm/ix-date-picker_2.entry.js +8 -9
  790. package/dist/esm/ix-date-picker_2.entry.js.map +1 -1
  791. package/dist/esm/ix-date-time-card.entry.js +2 -3
  792. package/dist/esm/ix-date-time-card.entry.js.map +1 -1
  793. package/dist/esm/ix-datetime-picker.entry.js +2 -2
  794. package/dist/esm/ix-datetime-picker.entry.js.map +1 -1
  795. package/dist/esm/ix-divider.entry.js +1 -1
  796. package/dist/esm/ix-drawer.entry.js +5 -2
  797. package/dist/esm/ix-drawer.entry.js.map +1 -1
  798. package/dist/esm/ix-dropdown-button.entry.js +8 -6
  799. package/dist/esm/ix-dropdown-button.entry.js.map +1 -1
  800. package/dist/esm/ix-dropdown-header.entry.js +18 -0
  801. package/dist/esm/ix-dropdown-header.entry.js.map +1 -0
  802. package/dist/esm/ix-dropdown-quick-actions.entry.js +1 -1
  803. package/dist/esm/ix-dropdown_2.entry.js +65 -33
  804. package/dist/esm/ix-dropdown_2.entry.js.map +1 -1
  805. package/dist/esm/ix-empty-state.entry.js +2 -2
  806. package/dist/esm/ix-empty-state.entry.js.map +1 -1
  807. package/dist/esm/ix-event-list_2.entry.js +44 -25
  808. package/dist/esm/ix-event-list_2.entry.js.map +1 -1
  809. package/dist/esm/ix-expanding-search.entry.js +5 -8
  810. package/dist/esm/ix-expanding-search.entry.js.map +1 -1
  811. package/dist/esm/ix-filter-chip.entry.js +4 -3
  812. package/dist/esm/ix-filter-chip.entry.js.map +1 -1
  813. package/dist/esm/ix-flip-tile_2.entry.js +29 -19
  814. package/dist/esm/ix-flip-tile_2.entry.js.map +1 -1
  815. package/dist/esm/ix-form-field.entry.js +23 -0
  816. package/dist/esm/ix-form-field.entry.js.map +1 -0
  817. package/dist/esm/ix-grid.entry.js +25 -0
  818. package/dist/esm/ix-grid.entry.js.map +1 -0
  819. package/dist/esm/ix-group-context-menu.entry.js +26 -14
  820. package/dist/esm/ix-group-context-menu.entry.js.map +1 -1
  821. package/dist/esm/ix-group_2.entry.js +154 -0
  822. package/dist/esm/ix-group_2.entry.js.map +1 -0
  823. package/dist/esm/ix-icon-button.entry.js +23 -10
  824. package/dist/esm/ix-icon-button.entry.js.map +1 -1
  825. package/dist/esm/ix-icon-toggle-button.entry.js +84 -0
  826. package/dist/esm/ix-icon-toggle-button.entry.js.map +1 -0
  827. package/dist/esm/ix-icon.entry.js +2 -2
  828. package/dist/esm/ix-input-group.entry.js +85 -18
  829. package/dist/esm/ix-input-group.entry.js.map +1 -1
  830. package/dist/esm/ix-key-value-list.entry.js +1 -1
  831. package/dist/esm/ix-key-value.entry.js +1 -1
  832. package/dist/esm/ix-kpi.entry.js +2 -2
  833. package/dist/esm/ix-kpi.entry.js.map +1 -1
  834. package/dist/esm/ix-link-button.entry.js +26 -0
  835. package/dist/esm/ix-link-button.entry.js.map +1 -0
  836. package/dist/esm/ix-map-navigation_2.entry.js +26 -8
  837. package/dist/esm/ix-map-navigation_2.entry.js.map +1 -1
  838. package/dist/esm/ix-menu-category.entry.js +135 -0
  839. package/dist/esm/ix-menu-category.entry.js.map +1 -0
  840. package/dist/esm/ix-menu_9.entry.js +285 -346
  841. package/dist/esm/ix-menu_9.entry.js.map +1 -1
  842. package/dist/esm/ix-message-bar.entry.js +2 -2
  843. package/dist/esm/ix-message-bar.entry.js.map +1 -1
  844. package/dist/esm/ix-modal-content.entry.js +17 -0
  845. package/dist/esm/ix-modal-content.entry.js.map +1 -0
  846. package/dist/esm/ix-modal-example.entry.js +4 -2
  847. package/dist/esm/ix-modal-example.entry.js.map +1 -1
  848. package/dist/esm/ix-modal-footer.entry.js +17 -0
  849. package/dist/esm/ix-modal-footer.entry.js.map +1 -0
  850. package/dist/esm/ix-modal-header.entry.js +44 -0
  851. package/dist/esm/ix-modal-header.entry.js.map +1 -0
  852. package/dist/esm/ix-modal-loading.entry.js +17 -0
  853. package/dist/esm/ix-modal-loading.entry.js.map +1 -0
  854. package/dist/esm/ix-modal.entry.js +126 -0
  855. package/dist/esm/ix-modal.entry.js.map +1 -0
  856. package/dist/esm/ix-pagination.entry.js +32 -15
  857. package/dist/esm/ix-pagination.entry.js.map +1 -1
  858. package/dist/esm/ix-pill.entry.js +28 -10
  859. package/dist/esm/ix-pill.entry.js.map +1 -1
  860. package/dist/esm/ix-push-card.entry.js +5 -2
  861. package/dist/esm/ix-push-card.entry.js.map +1 -1
  862. package/dist/esm/ix-row.entry.js +17 -0
  863. package/dist/esm/ix-row.entry.js.map +1 -0
  864. package/dist/esm/ix-select_2.entry.js +85 -54
  865. package/dist/esm/ix-select_2.entry.js.map +1 -1
  866. package/dist/esm/ix-spinner.entry.js +10 -3
  867. package/dist/esm/ix-spinner.entry.js.map +1 -1
  868. package/dist/esm/ix-split-button_2.entry.js +17 -11
  869. package/dist/esm/ix-split-button_2.entry.js.map +1 -1
  870. package/dist/esm/ix-tab-item.entry.js +11 -3
  871. package/dist/esm/ix-tab-item.entry.js.map +1 -1
  872. package/dist/esm/ix-tabs.entry.js +34 -11
  873. package/dist/esm/ix-tabs.entry.js.map +1 -1
  874. package/dist/esm/ix-tile.entry.js +18 -3
  875. package/dist/esm/ix-tile.entry.js.map +1 -1
  876. package/dist/esm/ix-toast_2.entry.js +6 -7
  877. package/dist/esm/ix-toast_2.entry.js.map +1 -1
  878. package/dist/esm/ix-toggle-button.entry.js +73 -0
  879. package/dist/esm/ix-toggle-button.entry.js.map +1 -0
  880. package/dist/esm/ix-toggle.entry.js +11 -30
  881. package/dist/esm/ix-toggle.entry.js.map +1 -1
  882. package/dist/esm/ix-tooltip.entry.js +2 -2
  883. package/dist/esm/ix-tree_2.entry.js +16 -9
  884. package/dist/esm/ix-tree_2.entry.js.map +1 -1
  885. package/dist/esm/ix-typography.entry.js +55 -0
  886. package/dist/esm/ix-typography.entry.js.map +1 -0
  887. package/dist/esm/ix-upload.entry.js +19 -7
  888. package/dist/esm/ix-upload.entry.js.map +1 -1
  889. package/dist/esm/ix-validation-tooltip.entry.js +12 -25
  890. package/dist/esm/ix-validation-tooltip.entry.js.map +1 -1
  891. package/dist/esm/ix-workflow-step_2.entry.js +20 -28
  892. package/dist/esm/ix-workflow-step_2.entry.js.map +1 -1
  893. package/dist/esm/loader.js +3 -3
  894. package/dist/esm/menu-service-12a09006.js +156 -0
  895. package/dist/esm/menu-service-12a09006.js.map +1 -0
  896. package/dist/esm/modal-68c6d3f6.js +245 -0
  897. package/dist/esm/modal-68c6d3f6.js.map +1 -0
  898. package/dist/esm/my-component.entry.js +1 -1
  899. package/dist/esm/my-component.entry.js.map +1 -1
  900. package/dist/esm/shadow-dom-b9df3d9b.js +21 -0
  901. package/dist/esm/shadow-dom-b9df3d9b.js.map +1 -0
  902. package/dist/esm/siemens-ix.js +3 -3
  903. package/dist/esm/theme-switcher-9ede3823.js +123 -0
  904. package/dist/esm/theme-switcher-9ede3823.js.map +1 -0
  905. package/dist/siemens-ix/index.esm.js +1 -1
  906. package/dist/siemens-ix/index.esm.js.map +1 -1
  907. package/dist/siemens-ix/p-00616f87.entry.js +2 -0
  908. package/dist/siemens-ix/p-00616f87.entry.js.map +1 -0
  909. package/dist/siemens-ix/p-00df4a8c.js +2 -0
  910. package/dist/siemens-ix/p-00df4a8c.js.map +1 -0
  911. package/dist/siemens-ix/p-04eeba9e.js +2 -0
  912. package/dist/siemens-ix/p-04eeba9e.js.map +1 -0
  913. package/dist/siemens-ix/p-0b71cde4.js +2 -0
  914. package/dist/siemens-ix/p-0b71cde4.js.map +1 -0
  915. package/dist/siemens-ix/p-0e2045b9.entry.js +2 -0
  916. package/dist/siemens-ix/p-0e2045b9.entry.js.map +1 -0
  917. package/dist/siemens-ix/p-134b6bd5.js +2 -0
  918. package/dist/siemens-ix/p-134b6bd5.js.map +1 -0
  919. package/dist/siemens-ix/p-14621fbd.entry.js +2 -0
  920. package/dist/siemens-ix/p-14621fbd.entry.js.map +1 -0
  921. package/dist/siemens-ix/p-1b227e9a.js +2 -0
  922. package/dist/siemens-ix/p-1b227e9a.js.map +1 -0
  923. package/dist/siemens-ix/p-1b705d7b.js +2 -0
  924. package/dist/siemens-ix/p-1b705d7b.js.map +1 -0
  925. package/dist/siemens-ix/p-1b9b19e6.js +2 -0
  926. package/dist/siemens-ix/p-1b9b19e6.js.map +1 -0
  927. package/dist/siemens-ix/p-1fc8e513.entry.js +2 -0
  928. package/dist/siemens-ix/p-1fc8e513.entry.js.map +1 -0
  929. package/dist/siemens-ix/p-26855b3f.entry.js +2 -0
  930. package/dist/siemens-ix/p-26855b3f.entry.js.map +1 -0
  931. package/dist/siemens-ix/p-281fa225.entry.js +2 -0
  932. package/dist/siemens-ix/p-281fa225.entry.js.map +1 -0
  933. package/dist/siemens-ix/p-2a29e187.entry.js +2 -0
  934. package/dist/siemens-ix/p-2a29e187.entry.js.map +1 -0
  935. package/dist/siemens-ix/p-36c48f12.entry.js +2 -0
  936. package/dist/siemens-ix/p-36c48f12.entry.js.map +1 -0
  937. package/dist/siemens-ix/p-36f0b470.entry.js +2 -0
  938. package/dist/siemens-ix/p-36f0b470.entry.js.map +1 -0
  939. package/dist/siemens-ix/p-37dd62fc.entry.js +2 -0
  940. package/dist/siemens-ix/p-37dd62fc.entry.js.map +1 -0
  941. package/dist/siemens-ix/p-3983ee89.entry.js +2 -0
  942. package/dist/siemens-ix/p-3983ee89.entry.js.map +1 -0
  943. package/dist/siemens-ix/p-3dbeeecf.entry.js +2 -0
  944. package/dist/siemens-ix/p-3dbeeecf.entry.js.map +1 -0
  945. package/dist/siemens-ix/p-3eabf464.entry.js +2 -0
  946. package/dist/siemens-ix/p-3eabf464.entry.js.map +1 -0
  947. package/dist/siemens-ix/p-40ecc8be.entry.js +2 -0
  948. package/dist/siemens-ix/p-40ecc8be.entry.js.map +1 -0
  949. package/dist/siemens-ix/p-43497703.entry.js +2 -0
  950. package/dist/siemens-ix/p-43497703.entry.js.map +1 -0
  951. package/dist/siemens-ix/p-4659c550.entry.js +2 -0
  952. package/dist/siemens-ix/p-475d8732.entry.js +2 -0
  953. package/dist/siemens-ix/p-475d8732.entry.js.map +1 -0
  954. package/dist/siemens-ix/p-49b9f9f5.entry.js +2 -0
  955. package/dist/siemens-ix/p-49b9f9f5.entry.js.map +1 -0
  956. package/dist/siemens-ix/p-4dbae019.entry.js +2 -0
  957. package/dist/siemens-ix/p-4f8954a7.entry.js +2 -0
  958. package/dist/siemens-ix/p-4f8954a7.entry.js.map +1 -0
  959. package/dist/siemens-ix/p-5017cf39.entry.js +2 -0
  960. package/dist/siemens-ix/p-5017cf39.entry.js.map +1 -0
  961. package/dist/siemens-ix/p-5029fd0f.entry.js +2 -0
  962. package/dist/siemens-ix/p-5029fd0f.entry.js.map +1 -0
  963. package/dist/siemens-ix/p-553ebcb1.entry.js +2 -0
  964. package/dist/siemens-ix/p-553ebcb1.entry.js.map +1 -0
  965. package/dist/siemens-ix/p-5650383d.entry.js +2 -0
  966. package/dist/siemens-ix/p-5650383d.entry.js.map +1 -0
  967. package/dist/siemens-ix/p-567f71a2.entry.js +2 -0
  968. package/dist/siemens-ix/p-567f71a2.entry.js.map +1 -0
  969. package/dist/siemens-ix/p-5d132cc5.entry.js +2 -0
  970. package/dist/siemens-ix/p-5d132cc5.entry.js.map +1 -0
  971. package/dist/siemens-ix/p-5e3f8c0b.entry.js +2 -0
  972. package/dist/siemens-ix/p-5e3f8c0b.entry.js.map +1 -0
  973. package/dist/siemens-ix/p-61ffc6e1.entry.js +2 -0
  974. package/dist/siemens-ix/p-61ffc6e1.entry.js.map +1 -0
  975. package/dist/siemens-ix/p-655d177c.entry.js +2 -0
  976. package/dist/siemens-ix/p-655d177c.entry.js.map +1 -0
  977. package/dist/siemens-ix/p-737fca1b.entry.js +2 -0
  978. package/dist/siemens-ix/p-737fca1b.entry.js.map +1 -0
  979. package/dist/siemens-ix/p-76a509c7.js +3 -0
  980. package/dist/siemens-ix/p-76a509c7.js.map +1 -0
  981. package/dist/siemens-ix/p-7918fd50.entry.js +2 -0
  982. package/dist/siemens-ix/p-7918fd50.entry.js.map +1 -0
  983. package/dist/siemens-ix/p-7a884056.entry.js +2 -0
  984. package/dist/siemens-ix/p-7a884056.entry.js.map +1 -0
  985. package/dist/siemens-ix/p-7b536489.entry.js +2 -0
  986. package/dist/siemens-ix/p-7b536489.entry.js.map +1 -0
  987. package/dist/siemens-ix/p-85f39bd4.js +2 -0
  988. package/dist/siemens-ix/p-85f39bd4.js.map +1 -0
  989. package/dist/siemens-ix/p-8c7d1e06.js +2 -0
  990. package/dist/siemens-ix/p-8e39298f.js +2 -0
  991. package/dist/siemens-ix/p-8e39298f.js.map +1 -0
  992. package/dist/siemens-ix/p-94ecb1af.entry.js +2 -0
  993. package/dist/siemens-ix/p-94ecb1af.entry.js.map +1 -0
  994. package/dist/siemens-ix/p-9848e4de.entry.js +2 -0
  995. package/dist/siemens-ix/p-9848e4de.entry.js.map +1 -0
  996. package/dist/siemens-ix/p-98b03a9b.entry.js +2 -0
  997. package/dist/siemens-ix/p-98b03a9b.entry.js.map +1 -0
  998. package/dist/siemens-ix/p-9a05ac00.js +2 -0
  999. package/dist/siemens-ix/p-9a05ac00.js.map +1 -0
  1000. package/dist/siemens-ix/p-9b6075de.entry.js +2 -0
  1001. package/dist/siemens-ix/p-9b6075de.entry.js.map +1 -0
  1002. package/dist/siemens-ix/p-9c030990.js +2 -0
  1003. package/dist/siemens-ix/p-9c030990.js.map +1 -0
  1004. package/dist/siemens-ix/p-a0fdaa04.entry.js +2 -0
  1005. package/dist/siemens-ix/p-a0fdaa04.entry.js.map +1 -0
  1006. package/dist/siemens-ix/p-a18f1744.entry.js +2 -0
  1007. package/dist/siemens-ix/p-a18f1744.entry.js.map +1 -0
  1008. package/dist/siemens-ix/p-a3d6abfb.entry.js +2 -0
  1009. package/dist/siemens-ix/p-a3d6abfb.entry.js.map +1 -0
  1010. package/dist/siemens-ix/p-a5ae7bfa.entry.js +2 -0
  1011. package/dist/siemens-ix/p-a5ae7bfa.entry.js.map +1 -0
  1012. package/dist/siemens-ix/p-a6345f97.entry.js +2 -0
  1013. package/dist/siemens-ix/p-a6345f97.entry.js.map +1 -0
  1014. package/dist/siemens-ix/p-a8424ce3.entry.js +2 -0
  1015. package/dist/siemens-ix/p-a8424ce3.entry.js.map +1 -0
  1016. package/dist/siemens-ix/p-a85299c6.entry.js +2 -0
  1017. package/dist/siemens-ix/p-a85299c6.entry.js.map +1 -0
  1018. package/dist/siemens-ix/p-ab452b82.js +2 -0
  1019. package/dist/siemens-ix/p-ab452b82.js.map +1 -0
  1020. package/dist/siemens-ix/p-ab4bdb4e.entry.js +2 -0
  1021. package/dist/siemens-ix/p-ab4bdb4e.entry.js.map +1 -0
  1022. package/dist/siemens-ix/p-ac00ae47.entry.js +2 -0
  1023. package/dist/siemens-ix/p-ac00ae47.entry.js.map +1 -0
  1024. package/dist/siemens-ix/p-b007e4b4.entry.js +2 -0
  1025. package/dist/siemens-ix/p-b007e4b4.entry.js.map +1 -0
  1026. package/dist/siemens-ix/p-b0a1930d.entry.js +2 -0
  1027. package/dist/siemens-ix/p-b0a1930d.entry.js.map +1 -0
  1028. package/dist/siemens-ix/p-b25c770f.entry.js +2 -0
  1029. package/dist/siemens-ix/p-b25c770f.entry.js.map +1 -0
  1030. package/dist/siemens-ix/p-b38eff08.entry.js +2 -0
  1031. package/dist/siemens-ix/p-b45ca515.entry.js +2 -0
  1032. package/dist/siemens-ix/p-b45ca515.entry.js.map +1 -0
  1033. package/dist/siemens-ix/p-b735ee5e.entry.js +2 -0
  1034. package/dist/siemens-ix/p-c1ac2d01.entry.js +2 -0
  1035. package/dist/siemens-ix/p-c1ac2d01.entry.js.map +1 -0
  1036. package/dist/siemens-ix/p-c1f5a59a.entry.js +2 -0
  1037. package/dist/siemens-ix/p-c1f5a59a.entry.js.map +1 -0
  1038. package/dist/siemens-ix/p-c75264af.entry.js +2 -0
  1039. package/dist/siemens-ix/p-c75264af.entry.js.map +1 -0
  1040. package/dist/siemens-ix/p-cd0e77f1.entry.js +2 -0
  1041. package/dist/siemens-ix/p-cd0e77f1.entry.js.map +1 -0
  1042. package/dist/siemens-ix/p-cd1e0061.entry.js +2 -0
  1043. package/dist/siemens-ix/p-cd1e0061.entry.js.map +1 -0
  1044. package/dist/siemens-ix/p-ce0a7c1a.entry.js +2 -0
  1045. package/dist/siemens-ix/p-ce0a7c1a.entry.js.map +1 -0
  1046. package/dist/siemens-ix/p-d214f57a.entry.js +2 -0
  1047. package/dist/siemens-ix/p-d214f57a.entry.js.map +1 -0
  1048. package/dist/siemens-ix/p-d29bcf75.entry.js +2 -0
  1049. package/dist/siemens-ix/p-d29bcf75.entry.js.map +1 -0
  1050. package/dist/siemens-ix/p-d87de06f.entry.js +2 -0
  1051. package/dist/siemens-ix/p-d87de06f.entry.js.map +1 -0
  1052. package/dist/siemens-ix/p-da133606.entry.js +2 -0
  1053. package/dist/siemens-ix/p-da133606.entry.js.map +1 -0
  1054. package/dist/siemens-ix/p-db174600.entry.js +2 -0
  1055. package/dist/siemens-ix/p-db2f237f.entry.js +2 -0
  1056. package/dist/siemens-ix/p-db2f237f.entry.js.map +1 -0
  1057. package/dist/siemens-ix/p-dc77f962.entry.js +2 -0
  1058. package/dist/siemens-ix/p-dc77f962.entry.js.map +1 -0
  1059. package/dist/siemens-ix/p-de013166.entry.js +2 -0
  1060. package/dist/siemens-ix/p-de013166.entry.js.map +1 -0
  1061. package/dist/siemens-ix/p-e2c200f3.entry.js +2 -0
  1062. package/dist/siemens-ix/p-e2c200f3.entry.js.map +1 -0
  1063. package/dist/siemens-ix/p-e610b2b8.entry.js +2 -0
  1064. package/dist/siemens-ix/p-e610b2b8.entry.js.map +1 -0
  1065. package/dist/siemens-ix/p-eb29049a.entry.js +2 -0
  1066. package/dist/siemens-ix/p-eb29049a.entry.js.map +1 -0
  1067. package/dist/siemens-ix/p-eb3f1ef6.entry.js +2 -0
  1068. package/dist/siemens-ix/p-eb3f1ef6.entry.js.map +1 -0
  1069. package/dist/siemens-ix/p-ebeef6fd.entry.js +2 -0
  1070. package/dist/siemens-ix/p-ebeef6fd.entry.js.map +1 -0
  1071. package/dist/siemens-ix/p-f71da594.entry.js +2 -0
  1072. package/dist/siemens-ix/p-f71da594.entry.js.map +1 -0
  1073. package/dist/siemens-ix/p-f88b25d7.entry.js +2 -0
  1074. package/dist/siemens-ix/p-f9b004ba.entry.js +2 -0
  1075. package/dist/siemens-ix/p-f9b004ba.entry.js.map +1 -0
  1076. package/dist/siemens-ix/p-f9d4ca13.entry.js +2 -0
  1077. package/dist/siemens-ix/p-f9d4ca13.entry.js.map +1 -0
  1078. package/dist/siemens-ix/p-feb80449.entry.js +2 -0
  1079. package/dist/siemens-ix/p-feb80449.entry.js.map +1 -0
  1080. package/dist/siemens-ix/siemens-ix-core.css +1 -0
  1081. package/dist/siemens-ix/siemens-ix.css +4232 -7647
  1082. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  1083. package/dist/siemens-ix/siemens-ix.esm.js.map +1 -1
  1084. package/dist/siemens-ix/theme/classic-dark.css +1 -0
  1085. package/dist/siemens-ix/theme/classic-light.css +1 -0
  1086. package/dist/siemens-ix/theme/legacy-classic-dark.css +1 -0
  1087. package/dist/siemens-ix/theme/legacy-classic-light.css +1 -0
  1088. package/dist/types/components/application/application.d.ts +36 -0
  1089. package/dist/types/components/application-header/application-header.d.ts +4 -3
  1090. package/dist/types/components/application-header/test/application-headet.ct.d.ts +1 -0
  1091. package/dist/types/components/application-sidebar/application-sidebar.d.ts +7 -0
  1092. package/dist/types/components/application-sidebar/events.d.ts +4 -0
  1093. package/dist/types/components/avatar/avatar.d.ts +17 -0
  1094. package/dist/types/components/basic-navigation/basic-navigation.d.ts +16 -5
  1095. package/dist/types/components/blind/blind.d.ts +5 -0
  1096. package/dist/types/components/breadcrumb/breadcrumb.d.ts +15 -14
  1097. package/dist/types/components/breadcrumb/test/breadcrumb.ct.d.ts +1 -0
  1098. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +15 -0
  1099. package/dist/types/components/button/base-button.d.ts +27 -1
  1100. package/dist/types/components/button/button.d.ts +15 -11
  1101. package/dist/types/components/button/test/button.ct.d.ts +1 -0
  1102. package/dist/types/components/category-filter/category-filter.d.ts +12 -5
  1103. package/dist/types/components/col/col.d.ts +31 -0
  1104. package/dist/types/components/content/content.d.ts +7 -0
  1105. package/dist/types/components/content-header/content-header.d.ts +1 -1
  1106. package/dist/types/components/date-time-card/date-time-card.d.ts +0 -1
  1107. package/dist/types/components/drawer/drawer.d.ts +1 -0
  1108. package/dist/types/components/drawer/test/drawer.ct.d.ts +1 -0
  1109. package/dist/types/components/dropdown/dropdown.d.ts +10 -13
  1110. package/dist/types/components/dropdown/placement.d.ts +3 -4
  1111. package/dist/types/components/dropdown-button/dropdown-button.d.ts +10 -1
  1112. package/dist/types/components/dropdown-header/dropdown-header.d.ts +10 -0
  1113. package/dist/types/components/dropdown-item/dropdown-item.d.ts +9 -0
  1114. package/dist/types/components/event-list/event-list.d.ts +3 -1
  1115. package/dist/types/components/event-list-item/event-list-item.d.ts +4 -2
  1116. package/dist/types/components/expanding-search/test/expanding-search.ct.d.ts +1 -0
  1117. package/dist/types/components/filter-chip/filter-chip.d.ts +5 -0
  1118. package/dist/types/components/flip-tile/flip-tile-state.d.ts +5 -5
  1119. package/dist/types/components/flip-tile/flip-tile.d.ts +9 -11
  1120. package/dist/types/components/flip-tile/test/flip-tile.ct.d.ts +1 -0
  1121. package/dist/types/components/flip-tile-content/flip-tile-content.d.ts +6 -0
  1122. package/dist/types/components/form-field/form-field.d.ts +10 -0
  1123. package/dist/types/components/grid/grid.d.ts +18 -0
  1124. package/dist/types/components/group/group-context-menu.d.ts +3 -4
  1125. package/dist/types/components/group/group.d.ts +7 -8
  1126. package/dist/types/components/icon-button/base-icon-button.d.ts +2 -0
  1127. package/dist/types/components/icon-button/icon-button.d.ts +11 -14
  1128. package/dist/types/components/icon-button/test/icon-button.ct.d.ts +1 -0
  1129. package/dist/types/components/icon-toggle-button/icon-toggle-button.d.ts +54 -0
  1130. package/dist/types/components/input-group/input-group.d.ts +11 -1
  1131. package/dist/types/components/link-button/link-button.d.ts +20 -0
  1132. package/dist/types/components/map-navigation/map-navigation.d.ts +4 -1
  1133. package/dist/types/components/menu/burger-menu.d.ts +9 -1
  1134. package/dist/types/components/menu/menu.d.ts +42 -36
  1135. package/dist/types/components/menu/test/menu.ct.d.ts +1 -0
  1136. package/dist/types/components/menu-about/menu-about.d.ts +4 -1
  1137. package/dist/types/components/menu-category/menu-category.d.ts +37 -0
  1138. package/dist/types/components/menu-category/test/menu-category.ct.d.ts +1 -0
  1139. package/dist/types/components/menu-item/menu-item.d.ts +11 -2
  1140. package/dist/types/components/menu-settings/menu-settings.d.ts +4 -1
  1141. package/dist/types/components/modal/modal.d.ts +35 -66
  1142. package/dist/types/components/modal-content/modal-content.d.ts +6 -0
  1143. package/dist/types/components/modal-footer/modal-footer.d.ts +6 -0
  1144. package/dist/types/components/modal-header/modal-header.d.ts +28 -0
  1145. package/dist/types/components/modal-loading/modal-loading.d.ts +6 -0
  1146. package/dist/types/components/pagination/pagination.d.ts +1 -1
  1147. package/dist/types/components/row/row.d.ts +6 -0
  1148. package/dist/types/components/select/select.d.ts +32 -8
  1149. package/dist/types/components/select/test/select.ct.d.ts +1 -0
  1150. package/dist/types/components/spinner/spinner.d.ts +7 -2
  1151. package/dist/types/components/split-button/split-button.d.ts +3 -9
  1152. package/dist/types/components/tab-item/tab-item.d.ts +10 -0
  1153. package/dist/types/components/tabs/tabs.d.ts +8 -0
  1154. package/dist/types/components/tabs/test/tabs.ct.d.ts +1 -0
  1155. package/dist/types/components/tile/tile.d.ts +5 -0
  1156. package/dist/types/components/time-picker/time-picker.d.ts +0 -1
  1157. package/dist/types/components/toast/toast-container.d.ts +0 -1
  1158. package/dist/types/components/toast/toast.d.ts +1 -1
  1159. package/dist/types/components/toggle/test/toggle.ct.d.ts +1 -0
  1160. package/dist/types/components/toggle/toggle.d.ts +3 -10
  1161. package/dist/types/components/toggle-button/toggle-button.d.ts +48 -0
  1162. package/dist/types/components/tree/test/tree.ct.d.ts +1 -0
  1163. package/dist/types/components/tree/tree.d.ts +2 -1
  1164. package/dist/types/components/typography/typography.d.ts +24 -1
  1165. package/dist/types/components/utils/a11y.d.ts +7 -0
  1166. package/dist/types/components/utils/application-layout/context.d.ts +6 -0
  1167. package/dist/types/components/utils/application-layout/index.d.ts +1 -0
  1168. package/dist/types/components/utils/application-layout/service.d.ts +16 -0
  1169. package/dist/types/components/utils/breakpoints.d.ts +8 -0
  1170. package/dist/types/components/utils/context.d.ts +57 -0
  1171. package/dist/types/components/utils/delegate.d.ts +15 -0
  1172. package/dist/types/components/utils/menu-service/menu-service.d.ts +3 -0
  1173. package/dist/types/components/utils/modal/index.d.ts +3 -0
  1174. package/dist/types/components/utils/modal/loading.d.ts +4 -0
  1175. package/dist/types/components/utils/modal/message.d.ts +41 -0
  1176. package/dist/types/components/utils/modal/modal.d.ts +25 -0
  1177. package/dist/types/components/utils/shadow-dom.d.ts +3 -0
  1178. package/dist/types/components/utils/theme-switcher.d.ts +10 -3
  1179. package/dist/types/components/validation-tooltip/validation-tooltip.d.ts +9 -3
  1180. package/dist/types/components/workflow-step/workflow-step.d.ts +2 -3
  1181. package/dist/types/components/workflow-steps/test/workflow-steps.ct.d.ts +1 -0
  1182. package/dist/types/components/workflow-steps/workflow-steps.d.ts +1 -6
  1183. package/dist/types/components.d.ts +995 -405
  1184. package/dist/types/index.d.ts +2 -1
  1185. package/package.json +13 -10
  1186. package/scss/_core.scss +66 -0
  1187. package/scss/components/_checkboxes.scss +9 -3
  1188. package/scss/components/_fonts.scss +131 -0
  1189. package/scss/components/_links.scss +24 -0
  1190. package/scss/components/_table.scss +1 -1
  1191. package/scss/components/form/_input.scss +155 -0
  1192. package/scss/ix-core.scss +11 -0
  1193. package/scss/ix.scss +3 -74
  1194. package/scss/legacy/_fonts.scss +70 -0
  1195. package/scss/legacy/components/_buttons.scss +181 -0
  1196. package/scss/legacy/components/_dropdown.scss +170 -0
  1197. package/scss/legacy/components/_forms.scss +167 -0
  1198. package/scss/legacy/components/_modal.scss +41 -0
  1199. package/scss/legacy/mixins/_fonts.scss +166 -0
  1200. package/scss/mixins/_break-points.scss +25 -0
  1201. package/scss/mixins/_fonts.scss +149 -105
  1202. package/scss/mixins/_hover.scss +35 -1
  1203. package/scss/mixins/_scrollbar.scss +44 -0
  1204. package/scss/mixins/shadow-dom/_component.scss +4 -0
  1205. package/scss/mixins/shadow-dom/_host-disabled.scss +14 -0
  1206. package/scss/mixins/shadow-dom/_hover.scss +26 -0
  1207. package/scss/theme/classic-dark/_borderRadius.scss +5 -5
  1208. package/scss/theme/classic-dark/_borderWidth.scss +5 -5
  1209. package/scss/theme/classic-dark/_boxShadow.scss +7 -7
  1210. package/scss/theme/classic-dark/_color.scss +423 -418
  1211. package/scss/theme/classic-dark/_fontFamilies.scss +2 -1
  1212. package/scss/theme/classic-dark/_fontSizes.scss +11 -0
  1213. package/scss/theme/classic-dark/_fontWeights.scss +2 -1
  1214. package/scss/theme/classic-dark/_index.scss +7 -0
  1215. package/scss/theme/classic-dark/_letterSpacing.scss +13 -0
  1216. package/scss/theme/classic-dark/_lineHeights.scss +4 -1
  1217. package/scss/theme/classic-dark/_other.scss +4 -4
  1218. package/scss/theme/classic-dark/_sizing.scss +13 -1
  1219. package/scss/theme/classic-dark/_spacing.scss +12 -0
  1220. package/scss/theme/classic-dark/_typography.scss +39 -16
  1221. package/scss/theme/classic-light/_borderRadius.scss +4 -4
  1222. package/scss/theme/classic-light/_borderWidth.scss +5 -5
  1223. package/scss/theme/classic-light/_boxShadow.scss +7 -7
  1224. package/scss/theme/classic-light/_color.scss +420 -415
  1225. package/scss/theme/classic-light/_fontFamilies.scss +2 -1
  1226. package/scss/theme/classic-light/_fontSizes.scss +11 -0
  1227. package/scss/theme/classic-light/_fontWeights.scss +2 -1
  1228. package/scss/theme/classic-light/_index.scss +7 -0
  1229. package/scss/theme/classic-light/_letterSpacing.scss +13 -0
  1230. package/scss/theme/classic-light/_lineHeights.scss +4 -1
  1231. package/scss/theme/classic-light/_other.scss +4 -4
  1232. package/scss/theme/classic-light/_sizing.scss +13 -1
  1233. package/scss/theme/classic-light/_spacing.scss +12 -0
  1234. package/scss/theme/classic-light/_typography.scss +39 -16
  1235. package/scss/theme/legacy-classic-dark/_border.scss +35 -0
  1236. package/scss/theme/legacy-classic-dark/_borderRadius.scss +24 -0
  1237. package/scss/theme/legacy-classic-dark/_borderWidth.scss +18 -0
  1238. package/scss/theme/legacy-classic-dark/_boxShadow.scss +19 -0
  1239. package/scss/theme/legacy-classic-dark/_color.scss +864 -0
  1240. package/scss/theme/legacy-classic-dark/_fontFamilies.scss +9 -0
  1241. package/scss/theme/legacy-classic-dark/_fontSizes.scss +24 -0
  1242. package/scss/theme/legacy-classic-dark/_fontWeights.scss +10 -0
  1243. package/scss/theme/legacy-classic-dark/_index.scss +23 -0
  1244. package/scss/theme/legacy-classic-dark/_letterSpacing.scss +13 -0
  1245. package/scss/theme/legacy-classic-dark/_lineHeights.scss +21 -0
  1246. package/scss/theme/legacy-classic-dark/_other.scss +16 -0
  1247. package/scss/theme/legacy-classic-dark/_sizing.scss +28 -0
  1248. package/scss/theme/legacy-classic-dark/_spacing.scss +21 -0
  1249. package/scss/theme/legacy-classic-dark/_typography.scss +46 -0
  1250. package/scss/theme/legacy-classic-light/_border.scss +35 -0
  1251. package/scss/theme/legacy-classic-light/_borderRadius.scss +24 -0
  1252. package/scss/theme/legacy-classic-light/_borderWidth.scss +18 -0
  1253. package/scss/theme/legacy-classic-light/_boxShadow.scss +19 -0
  1254. package/scss/theme/legacy-classic-light/_color.scss +864 -0
  1255. package/scss/theme/legacy-classic-light/_fontFamilies.scss +9 -0
  1256. package/scss/theme/legacy-classic-light/_fontSizes.scss +24 -0
  1257. package/scss/theme/legacy-classic-light/_fontWeights.scss +10 -0
  1258. package/scss/theme/legacy-classic-light/_index.scss +23 -0
  1259. package/scss/theme/legacy-classic-light/_letterSpacing.scss +13 -0
  1260. package/scss/theme/legacy-classic-light/_lineHeights.scss +21 -0
  1261. package/scss/theme/legacy-classic-light/_other.scss +16 -0
  1262. package/scss/theme/legacy-classic-light/_sizing.scss +28 -0
  1263. package/scss/theme/legacy-classic-light/_spacing.scss +21 -0
  1264. package/scss/theme/legacy-classic-light/_typography.scss +46 -0
  1265. package/dist/cjs/base-button-497db257.js +0 -35
  1266. package/dist/cjs/base-button-497db257.js.map +0 -1
  1267. package/dist/cjs/context-a0900b95.js +0 -77
  1268. package/dist/cjs/context-a0900b95.js.map +0 -1
  1269. package/dist/cjs/flip-tile-state-b5ff5ea0.js +0 -20
  1270. package/dist/cjs/flip-tile-state-b5ff5ea0.js.map +0 -1
  1271. package/dist/cjs/floating-ui.dom.esm-01fe5abe.js +0 -1502
  1272. package/dist/cjs/floating-ui.dom.esm-01fe5abe.js.map +0 -1
  1273. package/dist/cjs/icon-4c954853.js +0 -114
  1274. package/dist/cjs/icon-4c954853.js.map +0 -1
  1275. package/dist/cjs/index-c978628a.js +0 -2584
  1276. package/dist/cjs/index-c978628a.js.map +0 -1
  1277. package/dist/cjs/ix-animated-tab_2.cjs.entry.js +0 -214
  1278. package/dist/cjs/ix-animated-tab_2.cjs.entry.js.map +0 -1
  1279. package/dist/cjs/ix-card_3.cjs.entry.js +0 -74
  1280. package/dist/cjs/ix-card_3.cjs.entry.js.map +0 -1
  1281. package/dist/cjs/ix-counter-pill.cjs.entry.js +0 -35
  1282. package/dist/cjs/ix-counter-pill.cjs.entry.js.map +0 -1
  1283. package/dist/cjs/ix-group_3.cjs.entry.js +0 -181
  1284. package/dist/cjs/ix-group_3.cjs.entry.js.map +0 -1
  1285. package/dist/cjs/ix-index-button.cjs.entry.js +0 -28
  1286. package/dist/cjs/ix-index-button.cjs.entry.js.map +0 -1
  1287. package/dist/cjs/ix-modal_2.cjs.entry.js +0 -227
  1288. package/dist/cjs/ix-modal_2.cjs.entry.js.map +0 -1
  1289. package/dist/cjs/modal-utils-b645989b.js +0 -44
  1290. package/dist/cjs/modal-utils-b645989b.js.map +0 -1
  1291. package/dist/cjs/service-18dc5907.js +0 -75
  1292. package/dist/cjs/service-18dc5907.js.map +0 -1
  1293. package/dist/cjs/theme-switcher-bdbd0d30.js +0 -94
  1294. package/dist/cjs/theme-switcher-bdbd0d30.js.map +0 -1
  1295. package/dist/collection/components/animated-tab/animated-tab.css +0 -14
  1296. package/dist/collection/components/animated-tab/animated-tab.js +0 -69
  1297. package/dist/collection/components/animated-tab/animated-tab.js.map +0 -1
  1298. package/dist/collection/components/animated-tabs/animated-tabs.css +0 -158
  1299. package/dist/collection/components/animated-tabs/animated-tabs.js +0 -303
  1300. package/dist/collection/components/animated-tabs/animated-tabs.js.map +0 -1
  1301. package/dist/collection/components/counter-pill/counter-pill.css +0 -323
  1302. package/dist/collection/components/counter-pill/counter-pill.js +0 -135
  1303. package/dist/collection/components/counter-pill/counter-pill.js.map +0 -1
  1304. package/dist/collection/components/dropdown/alignment.js +0 -10
  1305. package/dist/collection/components/dropdown/alignment.js.map +0 -1
  1306. package/dist/collection/components/group-dropdown-item/group-dropdown-item.css +0 -11
  1307. package/dist/collection/components/group-dropdown-item/group-dropdown-item.js +0 -69
  1308. package/dist/collection/components/group-dropdown-item/group-dropdown-item.js.map +0 -1
  1309. package/dist/collection/components/index-button/index-button.css +0 -31
  1310. package/dist/collection/components/index-button/index-button.js +0 -83
  1311. package/dist/collection/components/index-button/index-button.js.map +0 -1
  1312. package/dist/collection/components/layout/css-grid/builder.js.map +0 -1
  1313. package/dist/collection/components/layout/css-grid/css-grid-item.js.map +0 -1
  1314. package/dist/collection/components/layout/css-grid/css-grid.js +0 -123
  1315. package/dist/collection/components/layout/css-grid/css-grid.js.map +0 -1
  1316. package/dist/collection/components/modal/modal-utils.js +0 -37
  1317. package/dist/collection/components/modal/modal-utils.js.map +0 -1
  1318. package/dist/collection/components/modal-container/modal-container.css +0 -14
  1319. package/dist/collection/components/modal-container/modal-container.js +0 -126
  1320. package/dist/collection/components/modal-container/modal-container.js.map +0 -1
  1321. package/dist/collection/components/utils/screen/context.js +0 -30
  1322. package/dist/collection/components/utils/screen/context.js.map +0 -1
  1323. package/dist/collection/components/utils/screen/index.js +0 -10
  1324. package/dist/collection/components/utils/screen/index.js.map +0 -1
  1325. package/dist/collection/components/utils/screen/mode.js +0 -37
  1326. package/dist/collection/components/utils/screen/mode.js.map +0 -1
  1327. package/dist/collection/components/utils/screen/service.js +0 -46
  1328. package/dist/collection/components/utils/screen/service.js.map +0 -1
  1329. package/dist/components/index-button.js +0 -41
  1330. package/dist/components/index-button.js.map +0 -1
  1331. package/dist/components/ix-animated-tab.d.ts +0 -11
  1332. package/dist/components/ix-animated-tab.js +0 -39
  1333. package/dist/components/ix-animated-tab.js.map +0 -1
  1334. package/dist/components/ix-animated-tabs.d.ts +0 -11
  1335. package/dist/components/ix-animated-tabs.js +0 -224
  1336. package/dist/components/ix-animated-tabs.js.map +0 -1
  1337. package/dist/components/ix-counter-pill.d.ts +0 -11
  1338. package/dist/components/ix-counter-pill.js +0 -54
  1339. package/dist/components/ix-counter-pill.js.map +0 -1
  1340. package/dist/components/ix-group-dropdown-item.d.ts +0 -11
  1341. package/dist/components/ix-group-dropdown-item.js +0 -51
  1342. package/dist/components/ix-group-dropdown-item.js.map +0 -1
  1343. package/dist/components/ix-index-button.d.ts +0 -11
  1344. package/dist/components/ix-index-button.js +0 -8
  1345. package/dist/components/ix-index-button.js.map +0 -1
  1346. package/dist/components/ix-modal-container.d.ts +0 -11
  1347. package/dist/components/ix-modal-container.js +0 -8
  1348. package/dist/components/ix-modal-container.js.map +0 -1
  1349. package/dist/components/modal-container.js +0 -109
  1350. package/dist/components/modal-container.js.map +0 -1
  1351. package/dist/components/modal-utils.js +0 -40
  1352. package/dist/components/modal-utils.js.map +0 -1
  1353. package/dist/components/service.js +0 -141
  1354. package/dist/components/service.js.map +0 -1
  1355. package/dist/esm/base-button-5bfeb71c.js +0 -33
  1356. package/dist/esm/base-button-5bfeb71c.js.map +0 -1
  1357. package/dist/esm/context-f6a2b727.js +0 -73
  1358. package/dist/esm/context-f6a2b727.js.map +0 -1
  1359. package/dist/esm/flip-tile-state-051bb2fd.js +0 -20
  1360. package/dist/esm/flip-tile-state-051bb2fd.js.map +0 -1
  1361. package/dist/esm/floating-ui.dom.esm-3130eda0.js +0 -1493
  1362. package/dist/esm/floating-ui.dom.esm-3130eda0.js.map +0 -1
  1363. package/dist/esm/icon-c659fc0f.js +0 -112
  1364. package/dist/esm/icon-c659fc0f.js.map +0 -1
  1365. package/dist/esm/index-8ddfb6d8.js +0 -2553
  1366. package/dist/esm/index-8ddfb6d8.js.map +0 -1
  1367. package/dist/esm/ix-animated-tab_2.entry.js +0 -209
  1368. package/dist/esm/ix-animated-tab_2.entry.js.map +0 -1
  1369. package/dist/esm/ix-card_3.entry.js +0 -68
  1370. package/dist/esm/ix-card_3.entry.js.map +0 -1
  1371. package/dist/esm/ix-counter-pill.entry.js +0 -31
  1372. package/dist/esm/ix-counter-pill.entry.js.map +0 -1
  1373. package/dist/esm/ix-group_3.entry.js +0 -175
  1374. package/dist/esm/ix-group_3.entry.js.map +0 -1
  1375. package/dist/esm/ix-index-button.entry.js +0 -24
  1376. package/dist/esm/ix-index-button.entry.js.map +0 -1
  1377. package/dist/esm/ix-modal_2.entry.js +0 -222
  1378. package/dist/esm/ix-modal_2.entry.js.map +0 -1
  1379. package/dist/esm/modal-utils-aecbcba5.js +0 -40
  1380. package/dist/esm/modal-utils-aecbcba5.js.map +0 -1
  1381. package/dist/esm/service-fc436c5b.js +0 -73
  1382. package/dist/esm/service-fc436c5b.js.map +0 -1
  1383. package/dist/esm/theme-switcher-7498e4f2.js +0 -91
  1384. package/dist/esm/theme-switcher-7498e4f2.js.map +0 -1
  1385. package/dist/siemens-ix/p-003e9355.entry.js +0 -2
  1386. package/dist/siemens-ix/p-07c932da.entry.js +0 -2
  1387. package/dist/siemens-ix/p-07c932da.entry.js.map +0 -1
  1388. package/dist/siemens-ix/p-0899258a.entry.js +0 -2
  1389. package/dist/siemens-ix/p-0899258a.entry.js.map +0 -1
  1390. package/dist/siemens-ix/p-1331a920.entry.js +0 -2
  1391. package/dist/siemens-ix/p-1331a920.entry.js.map +0 -1
  1392. package/dist/siemens-ix/p-13bda5ea.entry.js +0 -2
  1393. package/dist/siemens-ix/p-1572aab3.js +0 -2
  1394. package/dist/siemens-ix/p-1572aab3.js.map +0 -1
  1395. package/dist/siemens-ix/p-15bebd8a.js +0 -2
  1396. package/dist/siemens-ix/p-15bebd8a.js.map +0 -1
  1397. package/dist/siemens-ix/p-1c64b073.js +0 -3
  1398. package/dist/siemens-ix/p-1c64b073.js.map +0 -1
  1399. package/dist/siemens-ix/p-1e8ee4af.entry.js +0 -2
  1400. package/dist/siemens-ix/p-3172249b.entry.js +0 -2
  1401. package/dist/siemens-ix/p-3172249b.entry.js.map +0 -1
  1402. package/dist/siemens-ix/p-323d5529.js +0 -2
  1403. package/dist/siemens-ix/p-323d5529.js.map +0 -1
  1404. package/dist/siemens-ix/p-3ddf017b.entry.js +0 -2
  1405. package/dist/siemens-ix/p-3ec2368b.entry.js +0 -2
  1406. package/dist/siemens-ix/p-3ec2368b.entry.js.map +0 -1
  1407. package/dist/siemens-ix/p-3f4a9e1f.entry.js +0 -2
  1408. package/dist/siemens-ix/p-3f4a9e1f.entry.js.map +0 -1
  1409. package/dist/siemens-ix/p-40982e21.entry.js +0 -2
  1410. package/dist/siemens-ix/p-40982e21.entry.js.map +0 -1
  1411. package/dist/siemens-ix/p-4597dd77.entry.js +0 -2
  1412. package/dist/siemens-ix/p-4597dd77.entry.js.map +0 -1
  1413. package/dist/siemens-ix/p-46ced516.entry.js +0 -2
  1414. package/dist/siemens-ix/p-46ced516.entry.js.map +0 -1
  1415. package/dist/siemens-ix/p-47422d47.entry.js +0 -2
  1416. package/dist/siemens-ix/p-47422d47.entry.js.map +0 -1
  1417. package/dist/siemens-ix/p-4851ea38.entry.js +0 -2
  1418. package/dist/siemens-ix/p-4851ea38.entry.js.map +0 -1
  1419. package/dist/siemens-ix/p-4e851aa3.entry.js +0 -2
  1420. package/dist/siemens-ix/p-4e851aa3.entry.js.map +0 -1
  1421. package/dist/siemens-ix/p-51c81a20.entry.js +0 -2
  1422. package/dist/siemens-ix/p-51c81a20.entry.js.map +0 -1
  1423. package/dist/siemens-ix/p-529d7530.js +0 -2
  1424. package/dist/siemens-ix/p-529d7530.js.map +0 -1
  1425. package/dist/siemens-ix/p-55b54a81.entry.js +0 -2
  1426. package/dist/siemens-ix/p-55b54a81.entry.js.map +0 -1
  1427. package/dist/siemens-ix/p-5b39e04e.js +0 -2
  1428. package/dist/siemens-ix/p-5b39e04e.js.map +0 -1
  1429. package/dist/siemens-ix/p-6124d173.entry.js +0 -2
  1430. package/dist/siemens-ix/p-6124d173.entry.js.map +0 -1
  1431. package/dist/siemens-ix/p-626fbee2.entry.js +0 -2
  1432. package/dist/siemens-ix/p-626fbee2.entry.js.map +0 -1
  1433. package/dist/siemens-ix/p-652ba2c1.entry.js +0 -2
  1434. package/dist/siemens-ix/p-652ba2c1.entry.js.map +0 -1
  1435. package/dist/siemens-ix/p-67be3720.entry.js +0 -2
  1436. package/dist/siemens-ix/p-67be3720.entry.js.map +0 -1
  1437. package/dist/siemens-ix/p-6acce5c9.entry.js +0 -2
  1438. package/dist/siemens-ix/p-6c033b08.entry.js +0 -2
  1439. package/dist/siemens-ix/p-6c033b08.entry.js.map +0 -1
  1440. package/dist/siemens-ix/p-821ca55e.entry.js +0 -2
  1441. package/dist/siemens-ix/p-821ca55e.entry.js.map +0 -1
  1442. package/dist/siemens-ix/p-85f01dba.entry.js +0 -2
  1443. package/dist/siemens-ix/p-85f01dba.entry.js.map +0 -1
  1444. package/dist/siemens-ix/p-8719eeff.entry.js +0 -2
  1445. package/dist/siemens-ix/p-8719eeff.entry.js.map +0 -1
  1446. package/dist/siemens-ix/p-905977c4.entry.js +0 -2
  1447. package/dist/siemens-ix/p-905977c4.entry.js.map +0 -1
  1448. package/dist/siemens-ix/p-94ab7c1c.entry.js +0 -2
  1449. package/dist/siemens-ix/p-94ab7c1c.entry.js.map +0 -1
  1450. package/dist/siemens-ix/p-9a82921b.entry.js +0 -2
  1451. package/dist/siemens-ix/p-9a82921b.entry.js.map +0 -1
  1452. package/dist/siemens-ix/p-a08e1bbc.entry.js +0 -2
  1453. package/dist/siemens-ix/p-a08e1bbc.entry.js.map +0 -1
  1454. package/dist/siemens-ix/p-a422c64a.entry.js +0 -2
  1455. package/dist/siemens-ix/p-a422c64a.entry.js.map +0 -1
  1456. package/dist/siemens-ix/p-a7212f01.entry.js +0 -2
  1457. package/dist/siemens-ix/p-a7212f01.entry.js.map +0 -1
  1458. package/dist/siemens-ix/p-a73580a5.entry.js +0 -2
  1459. package/dist/siemens-ix/p-a73580a5.entry.js.map +0 -1
  1460. package/dist/siemens-ix/p-a89a1fa5.entry.js +0 -2
  1461. package/dist/siemens-ix/p-a89a1fa5.entry.js.map +0 -1
  1462. package/dist/siemens-ix/p-b14308ed.js +0 -2
  1463. package/dist/siemens-ix/p-b14308ed.js.map +0 -1
  1464. package/dist/siemens-ix/p-b1db27a3.js +0 -2
  1465. package/dist/siemens-ix/p-b5c40bb3.entry.js +0 -2
  1466. package/dist/siemens-ix/p-b5c40bb3.entry.js.map +0 -1
  1467. package/dist/siemens-ix/p-b60bd26c.entry.js +0 -2
  1468. package/dist/siemens-ix/p-b60bd26c.entry.js.map +0 -1
  1469. package/dist/siemens-ix/p-bd24f35f.entry.js +0 -2
  1470. package/dist/siemens-ix/p-c7109071.entry.js +0 -2
  1471. package/dist/siemens-ix/p-c7109071.entry.js.map +0 -1
  1472. package/dist/siemens-ix/p-c724bb65.entry.js +0 -2
  1473. package/dist/siemens-ix/p-c724bb65.entry.js.map +0 -1
  1474. package/dist/siemens-ix/p-ca4d28fb.entry.js +0 -2
  1475. package/dist/siemens-ix/p-ca4d28fb.entry.js.map +0 -1
  1476. package/dist/siemens-ix/p-cd3cfc78.entry.js +0 -2
  1477. package/dist/siemens-ix/p-cd3cfc78.entry.js.map +0 -1
  1478. package/dist/siemens-ix/p-cd4e3593.entry.js +0 -2
  1479. package/dist/siemens-ix/p-cd4e3593.entry.js.map +0 -1
  1480. package/dist/siemens-ix/p-cd75b455.entry.js +0 -2
  1481. package/dist/siemens-ix/p-cd75b455.entry.js.map +0 -1
  1482. package/dist/siemens-ix/p-cf2717c1.entry.js +0 -2
  1483. package/dist/siemens-ix/p-cf2717c1.entry.js.map +0 -1
  1484. package/dist/siemens-ix/p-d2225fc2.entry.js +0 -2
  1485. package/dist/siemens-ix/p-d2225fc2.entry.js.map +0 -1
  1486. package/dist/siemens-ix/p-d5302336.entry.js +0 -2
  1487. package/dist/siemens-ix/p-d5302336.entry.js.map +0 -1
  1488. package/dist/siemens-ix/p-d784a04b.entry.js +0 -2
  1489. package/dist/siemens-ix/p-d784a04b.entry.js.map +0 -1
  1490. package/dist/siemens-ix/p-d7e23a1f.entry.js +0 -2
  1491. package/dist/siemens-ix/p-d7e23a1f.entry.js.map +0 -1
  1492. package/dist/siemens-ix/p-d848739e.entry.js +0 -2
  1493. package/dist/siemens-ix/p-d848739e.entry.js.map +0 -1
  1494. package/dist/siemens-ix/p-dbcec49e.entry.js +0 -2
  1495. package/dist/siemens-ix/p-dbcec49e.entry.js.map +0 -1
  1496. package/dist/siemens-ix/p-dc98d3f4.entry.js +0 -2
  1497. package/dist/siemens-ix/p-dc98d3f4.entry.js.map +0 -1
  1498. package/dist/siemens-ix/p-df138b2a.entry.js +0 -2
  1499. package/dist/siemens-ix/p-df138b2a.entry.js.map +0 -1
  1500. package/dist/siemens-ix/p-eccc2475.entry.js +0 -2
  1501. package/dist/siemens-ix/p-eccc2475.entry.js.map +0 -1
  1502. package/dist/siemens-ix/p-ecd1145b.entry.js +0 -2
  1503. package/dist/siemens-ix/p-ecd1145b.entry.js.map +0 -1
  1504. package/dist/siemens-ix/p-f207e578.entry.js +0 -2
  1505. package/dist/siemens-ix/p-f207e578.entry.js.map +0 -1
  1506. package/dist/siemens-ix/p-f34a16c6.js +0 -2
  1507. package/dist/siemens-ix/p-f34a16c6.js.map +0 -1
  1508. package/dist/siemens-ix/p-f48b706b.entry.js +0 -2
  1509. package/dist/siemens-ix/p-f48b706b.entry.js.map +0 -1
  1510. package/dist/siemens-ix/p-f50697b9.entry.js +0 -2
  1511. package/dist/siemens-ix/p-f50697b9.entry.js.map +0 -1
  1512. package/dist/siemens-ix/p-f6ae45fb.entry.js +0 -2
  1513. package/dist/siemens-ix/p-f6ae45fb.entry.js.map +0 -1
  1514. package/dist/siemens-ix/p-f74c7692.entry.js +0 -2
  1515. package/dist/siemens-ix/p-f74c7692.entry.js.map +0 -1
  1516. package/dist/siemens-ix/p-feb8c2c4.entry.js +0 -2
  1517. package/dist/siemens-ix/p-feb8c2c4.entry.js.map +0 -1
  1518. package/dist/types/components/animated-tab/animated-tab.d.ts +0 -11
  1519. package/dist/types/components/animated-tabs/animated-tabs.d.ts +0 -44
  1520. package/dist/types/components/counter-pill/counter-pill.d.ts +0 -24
  1521. package/dist/types/components/dropdown/alignment.d.ts +0 -2
  1522. package/dist/types/components/group-dropdown-item/group-dropdown-item.d.ts +0 -11
  1523. package/dist/types/components/index-button/index-button.d.ts +0 -16
  1524. package/dist/types/components/modal/modal-utils.d.ts +0 -29
  1525. package/dist/types/components/modal-container/modal-container.d.ts +0 -12
  1526. package/dist/types/components/utils/screen/context.d.ts +0 -4
  1527. package/dist/types/components/utils/screen/index.d.ts +0 -1
  1528. package/dist/types/components/utils/screen/mode.d.ts +0 -10
  1529. package/dist/types/components/utils/screen/service.d.ts +0 -10
  1530. package/scss/_fonts.scss +0 -70
  1531. package/scss/components/_buttons.scss +0 -175
  1532. package/scss/components/_dropdown.scss +0 -169
  1533. package/scss/components/_forms.scss +0 -161
  1534. package/scss/components/_modal.scss +0 -41
  1535. /package/dist/collection/components/{layout/css-grid → css-grid}/builder.js +0 -0
  1536. /package/dist/collection/components/{layout/css-grid → css-grid}/css-grid-item.css +0 -0
  1537. /package/dist/collection/components/{layout/css-grid → css-grid}/css-grid-item.js +0 -0
  1538. /package/dist/collection/components/{layout/css-grid → css-grid}/css-grid.css +0 -0
  1539. /package/dist/siemens-ix/{p-13bda5ea.entry.js.map → p-4659c550.entry.js.map} +0 -0
  1540. /package/dist/siemens-ix/{p-6acce5c9.entry.js.map → p-4dbae019.entry.js.map} +0 -0
  1541. /package/dist/siemens-ix/{p-b1db27a3.js.map → p-8c7d1e06.js.map} +0 -0
  1542. /package/dist/siemens-ix/{p-1e8ee4af.entry.js.map → p-b38eff08.entry.js.map} +0 -0
  1543. /package/dist/siemens-ix/{p-bd24f35f.entry.js.map → p-b735ee5e.entry.js.map} +0 -0
  1544. /package/dist/siemens-ix/{p-3ddf017b.entry.js.map → p-db174600.entry.js.map} +0 -0
  1545. /package/dist/siemens-ix/{p-003e9355.entry.js.map → p-f88b25d7.entry.js.map} +0 -0
  1546. /package/dist/types/components/{layout/css-grid → css-grid}/builder.d.ts +0 -0
  1547. /package/dist/types/components/{layout/css-grid → css-grid}/css-grid-item.d.ts +0 -0
  1548. /package/dist/types/components/{layout/css-grid → css-grid}/css-grid.d.ts +0 -0
  1549. /package/scss/{components → legacy/components}/_button-group.scss +0 -0
@@ -1,17 +1,121 @@
1
+ const min = Math.min;
2
+ const max = Math.max;
3
+ const round = Math.round;
4
+ const floor = Math.floor;
5
+ const createCoords = v => ({
6
+ x: v,
7
+ y: v
8
+ });
9
+ const oppositeSideMap = {
10
+ left: 'right',
11
+ right: 'left',
12
+ bottom: 'top',
13
+ top: 'bottom'
14
+ };
15
+ const oppositeAlignmentMap = {
16
+ start: 'end',
17
+ end: 'start'
18
+ };
19
+ function clamp(start, value, end) {
20
+ return max(start, min(value, end));
21
+ }
22
+ function evaluate(value, param) {
23
+ return typeof value === 'function' ? value(param) : value;
24
+ }
25
+ function getSide(placement) {
26
+ return placement.split('-')[0];
27
+ }
1
28
  function getAlignment(placement) {
2
29
  return placement.split('-')[1];
3
30
  }
4
-
5
- function getLengthFromAxis(axis) {
31
+ function getOppositeAxis(axis) {
32
+ return axis === 'x' ? 'y' : 'x';
33
+ }
34
+ function getAxisLength(axis) {
6
35
  return axis === 'y' ? 'height' : 'width';
7
36
  }
8
-
9
- function getSide(placement) {
10
- return placement.split('-')[0];
37
+ function getSideAxis(placement) {
38
+ return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';
11
39
  }
12
-
13
- function getMainAxisFromPlacement(placement) {
14
- return ['top', 'bottom'].includes(getSide(placement)) ? 'x' : 'y';
40
+ function getAlignmentAxis(placement) {
41
+ return getOppositeAxis(getSideAxis(placement));
42
+ }
43
+ function getAlignmentSides(placement, rects, rtl) {
44
+ if (rtl === void 0) {
45
+ rtl = false;
46
+ }
47
+ const alignment = getAlignment(placement);
48
+ const alignmentAxis = getAlignmentAxis(placement);
49
+ const length = getAxisLength(alignmentAxis);
50
+ let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
51
+ if (rects.reference[length] > rects.floating[length]) {
52
+ mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
53
+ }
54
+ return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
55
+ }
56
+ function getExpandedPlacements(placement) {
57
+ const oppositePlacement = getOppositePlacement(placement);
58
+ return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
59
+ }
60
+ function getOppositeAlignmentPlacement(placement) {
61
+ return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
62
+ }
63
+ function getSideList(side, isStart, rtl) {
64
+ const lr = ['left', 'right'];
65
+ const rl = ['right', 'left'];
66
+ const tb = ['top', 'bottom'];
67
+ const bt = ['bottom', 'top'];
68
+ switch (side) {
69
+ case 'top':
70
+ case 'bottom':
71
+ if (rtl) return isStart ? rl : lr;
72
+ return isStart ? lr : rl;
73
+ case 'left':
74
+ case 'right':
75
+ return isStart ? tb : bt;
76
+ default:
77
+ return [];
78
+ }
79
+ }
80
+ function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
81
+ const alignment = getAlignment(placement);
82
+ let list = getSideList(getSide(placement), direction === 'start', rtl);
83
+ if (alignment) {
84
+ list = list.map(side => side + "-" + alignment);
85
+ if (flipAlignment) {
86
+ list = list.concat(list.map(getOppositeAlignmentPlacement));
87
+ }
88
+ }
89
+ return list;
90
+ }
91
+ function getOppositePlacement(placement) {
92
+ return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
93
+ }
94
+ function expandPaddingObject(padding) {
95
+ return {
96
+ top: 0,
97
+ right: 0,
98
+ bottom: 0,
99
+ left: 0,
100
+ ...padding
101
+ };
102
+ }
103
+ function getPaddingObject(padding) {
104
+ return typeof padding !== 'number' ? expandPaddingObject(padding) : {
105
+ top: padding,
106
+ right: padding,
107
+ bottom: padding,
108
+ left: padding
109
+ };
110
+ }
111
+ function rectToClientRect(rect) {
112
+ return {
113
+ ...rect,
114
+ top: rect.y,
115
+ left: rect.x,
116
+ right: rect.x + rect.width,
117
+ bottom: rect.y + rect.height
118
+ };
15
119
  }
16
120
 
17
121
  function computeCoordsFromPlacement(_ref, placement, rtl) {
@@ -19,13 +123,14 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
19
123
  reference,
20
124
  floating
21
125
  } = _ref;
126
+ const sideAxis = getSideAxis(placement);
127
+ const alignmentAxis = getAlignmentAxis(placement);
128
+ const alignLength = getAxisLength(alignmentAxis);
129
+ const side = getSide(placement);
130
+ const isVertical = sideAxis === 'y';
22
131
  const commonX = reference.x + reference.width / 2 - floating.width / 2;
23
132
  const commonY = reference.y + reference.height / 2 - floating.height / 2;
24
- const mainAxis = getMainAxisFromPlacement(placement);
25
- const length = getLengthFromAxis(mainAxis);
26
- const commonAlign = reference[length] / 2 - floating[length] / 2;
27
- const side = getSide(placement);
28
- const isVertical = mainAxis === 'x';
133
+ const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;
29
134
  let coords;
30
135
  switch (side) {
31
136
  case 'top':
@@ -60,10 +165,10 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
60
165
  }
61
166
  switch (getAlignment(placement)) {
62
167
  case 'start':
63
- coords[mainAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
168
+ coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
64
169
  break;
65
170
  case 'end':
66
- coords[mainAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
171
+ coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
67
172
  break;
68
173
  }
69
174
  return coords;
@@ -161,44 +266,15 @@ const computePosition$1 = async (reference, floating, config) => {
161
266
  };
162
267
  };
163
268
 
164
- function expandPaddingObject(padding) {
165
- return {
166
- top: 0,
167
- right: 0,
168
- bottom: 0,
169
- left: 0,
170
- ...padding
171
- };
172
- }
173
-
174
- function getSideObjectFromPadding(padding) {
175
- return typeof padding !== 'number' ? expandPaddingObject(padding) : {
176
- top: padding,
177
- right: padding,
178
- bottom: padding,
179
- left: padding
180
- };
181
- }
182
-
183
- function rectToClientRect(rect) {
184
- return {
185
- ...rect,
186
- top: rect.y,
187
- left: rect.x,
188
- right: rect.x + rect.width,
189
- bottom: rect.y + rect.height
190
- };
191
- }
192
-
193
269
  /**
194
270
  * Resolves with an object of overflow side offsets that determine how much the
195
- * element is overflowing a given clipping boundary.
271
+ * element is overflowing a given clipping boundary on each side.
196
272
  * - positive = overflowing the boundary by that number of pixels
197
273
  * - negative = how many pixels left before it will overflow
198
274
  * - 0 = lies flush with the boundary
199
275
  * @see https://floating-ui.com/docs/detectOverflow
200
276
  */
201
- async function detectOverflow(middlewareArguments, options) {
277
+ async function detectOverflow(state, options) {
202
278
  var _await$platform$isEle;
203
279
  if (options === void 0) {
204
280
  options = {};
@@ -210,15 +286,15 @@ async function detectOverflow(middlewareArguments, options) {
210
286
  rects,
211
287
  elements,
212
288
  strategy
213
- } = middlewareArguments;
289
+ } = state;
214
290
  const {
215
291
  boundary = 'clippingAncestors',
216
292
  rootBoundary = 'viewport',
217
293
  elementContext = 'floating',
218
294
  altBoundary = false,
219
295
  padding = 0
220
- } = options;
221
- const paddingObject = getSideObjectFromPadding(padding);
296
+ } = evaluate(options, state);
297
+ const paddingObject = getPaddingObject(padding);
222
298
  const altContext = elementContext === 'floating' ? 'reference' : 'floating';
223
299
  const element = elements[altBoundary ? altContext : elementContext];
224
300
  const clippingClientRect = rectToClientRect(await platform.getClippingRect({
@@ -253,252 +329,87 @@ async function detectOverflow(middlewareArguments, options) {
253
329
  };
254
330
  }
255
331
 
256
- const min$1 = Math.min;
257
- const max$1 = Math.max;
258
-
259
- function within(min$1$1, value, max$1$1) {
260
- return max$1(min$1$1, min$1(value, max$1$1));
261
- }
262
-
263
332
  /**
264
- * Positions an inner element of the floating element such that it is centered
265
- * to the reference element.
333
+ * Provides data to position an inner element of the floating element so that it
334
+ * appears centered to the reference element.
266
335
  * @see https://floating-ui.com/docs/arrow
267
336
  */
268
337
  const arrow = options => ({
269
338
  name: 'arrow',
270
339
  options,
271
- async fn(middlewareArguments) {
272
- // Since `element` is required, we don't Partial<> the type.
273
- const {
274
- element,
275
- padding = 0
276
- } = options || {};
340
+ async fn(state) {
277
341
  const {
278
342
  x,
279
343
  y,
280
344
  placement,
281
345
  rects,
282
- platform
283
- } = middlewareArguments;
346
+ platform,
347
+ elements
348
+ } = state;
349
+ // Since `element` is required, we don't Partial<> the type.
350
+ const {
351
+ element,
352
+ padding = 0
353
+ } = evaluate(options, state) || {};
284
354
  if (element == null) {
285
355
  return {};
286
356
  }
287
- const paddingObject = getSideObjectFromPadding(padding);
357
+ const paddingObject = getPaddingObject(padding);
288
358
  const coords = {
289
359
  x,
290
360
  y
291
361
  };
292
- const axis = getMainAxisFromPlacement(placement);
293
- const length = getLengthFromAxis(axis);
362
+ const axis = getAlignmentAxis(placement);
363
+ const length = getAxisLength(axis);
294
364
  const arrowDimensions = await platform.getDimensions(element);
295
- const minProp = axis === 'y' ? 'top' : 'left';
296
- const maxProp = axis === 'y' ? 'bottom' : 'right';
365
+ const isYAxis = axis === 'y';
366
+ const minProp = isYAxis ? 'top' : 'left';
367
+ const maxProp = isYAxis ? 'bottom' : 'right';
368
+ const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';
297
369
  const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];
298
370
  const startDiff = coords[axis] - rects.reference[axis];
299
371
  const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));
300
- let clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;
301
- if (clientSize === 0) {
302
- clientSize = rects.floating[length];
372
+ let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;
373
+
374
+ // DOM platform can return `window` as the `offsetParent`.
375
+ if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {
376
+ clientSize = elements.floating[clientProp] || rects.floating[length];
303
377
  }
304
378
  const centerToReference = endDiff / 2 - startDiff / 2;
305
379
 
380
+ // If the padding is large enough that it causes the arrow to no longer be
381
+ // centered, modify the padding so that it is centered.
382
+ const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
383
+ const minPadding = min(paddingObject[minProp], largestPossiblePadding);
384
+ const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);
385
+
306
386
  // Make sure the arrow doesn't overflow the floating element if the center
307
387
  // point is outside the floating element's bounds.
308
- const min = paddingObject[minProp];
309
- const max = clientSize - arrowDimensions[length] - paddingObject[maxProp];
388
+ const min$1 = minPadding;
389
+ const max = clientSize - arrowDimensions[length] - maxPadding;
310
390
  const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
311
- const offset = within(min, center, max);
391
+ const offset = clamp(min$1, center, max);
312
392
 
313
393
  // If the reference is small enough that the arrow's padding causes it to
314
394
  // to point to nothing for an aligned placement, adjust the offset of the
315
395
  // floating element itself. This stops `shift()` from taking action, but can
316
396
  // be worked around by calling it again after the `arrow()` if desired.
317
- const shouldAddOffset = getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min ? paddingObject[minProp] : paddingObject[maxProp]) - arrowDimensions[length] / 2 < 0;
318
- const alignmentOffset = shouldAddOffset ? center < min ? min - center : max - center : 0;
397
+ const shouldAddOffset = getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
398
+ const alignmentOffset = shouldAddOffset ? center < min$1 ? min$1 - center : max - center : 0;
319
399
  return {
320
400
  [axis]: coords[axis] - alignmentOffset,
321
401
  data: {
322
402
  [axis]: offset,
323
- centerOffset: center - offset
403
+ centerOffset: center - offset + alignmentOffset
324
404
  }
325
405
  };
326
406
  }
327
407
  });
328
408
 
329
- const sides = ['top', 'right', 'bottom', 'left'];
330
- const allPlacements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + "-start", side + "-end"), []);
331
-
332
- const oppositeSideMap = {
333
- left: 'right',
334
- right: 'left',
335
- bottom: 'top',
336
- top: 'bottom'
337
- };
338
- function getOppositePlacement(placement) {
339
- return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);
340
- }
341
-
342
- function getAlignmentSides(placement, rects, rtl) {
343
- if (rtl === void 0) {
344
- rtl = false;
345
- }
346
- const alignment = getAlignment(placement);
347
- const mainAxis = getMainAxisFromPlacement(placement);
348
- const length = getLengthFromAxis(mainAxis);
349
- let mainAlignmentSide = mainAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';
350
- if (rects.reference[length] > rects.floating[length]) {
351
- mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
352
- }
353
- return {
354
- main: mainAlignmentSide,
355
- cross: getOppositePlacement(mainAlignmentSide)
356
- };
357
- }
358
-
359
- const oppositeAlignmentMap = {
360
- start: 'end',
361
- end: 'start'
362
- };
363
- function getOppositeAlignmentPlacement(placement) {
364
- return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);
365
- }
366
-
367
- function getPlacementList(alignment, autoAlignment, allowedPlacements) {
368
- const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);
369
- return allowedPlacementsSortedByAlignment.filter(placement => {
370
- if (alignment) {
371
- return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);
372
- }
373
- return true;
374
- });
375
- }
376
- /**
377
- * Automatically chooses the `placement` which has the most space available.
378
- * @see https://floating-ui.com/docs/autoPlacement
379
- */
380
- const autoPlacement = function (options) {
381
- if (options === void 0) {
382
- options = {};
383
- }
384
- return {
385
- name: 'autoPlacement',
386
- options,
387
- async fn(middlewareArguments) {
388
- var _middlewareData$autoP, _middlewareData$autoP2, _placementsSortedByLe;
389
- const {
390
- rects,
391
- middlewareData,
392
- placement,
393
- platform,
394
- elements
395
- } = middlewareArguments;
396
- const {
397
- alignment,
398
- allowedPlacements = allPlacements,
399
- autoAlignment = true,
400
- ...detectOverflowOptions
401
- } = options;
402
- const placements = alignment !== undefined || allowedPlacements === allPlacements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;
403
- const overflow = await detectOverflow(middlewareArguments, detectOverflowOptions);
404
- const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;
405
- const currentPlacement = placements[currentIndex];
406
- if (currentPlacement == null) {
407
- return {};
408
- }
409
- const {
410
- main,
411
- cross
412
- } = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));
413
-
414
- // Make `computeCoords` start from the right place.
415
- if (placement !== currentPlacement) {
416
- return {
417
- reset: {
418
- placement: placements[0]
419
- }
420
- };
421
- }
422
- const currentOverflows = [overflow[getSide(currentPlacement)], overflow[main], overflow[cross]];
423
- const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {
424
- placement: currentPlacement,
425
- overflows: currentOverflows
426
- }];
427
- const nextPlacement = placements[currentIndex + 1];
428
-
429
- // There are more placements to check.
430
- if (nextPlacement) {
431
- return {
432
- data: {
433
- index: currentIndex + 1,
434
- overflows: allOverflows
435
- },
436
- reset: {
437
- placement: nextPlacement
438
- }
439
- };
440
- }
441
- const placementsSortedByLeastOverflow = allOverflows.slice().sort((a, b) => a.overflows[0] - b.overflows[0]);
442
- const placementThatFitsOnAllSides = (_placementsSortedByLe = placementsSortedByLeastOverflow.find(_ref => {
443
- let {
444
- overflows
445
- } = _ref;
446
- return overflows.every(overflow => overflow <= 0);
447
- })) == null ? void 0 : _placementsSortedByLe.placement;
448
- const resetPlacement = placementThatFitsOnAllSides || placementsSortedByLeastOverflow[0].placement;
449
- if (resetPlacement !== placement) {
450
- return {
451
- data: {
452
- index: currentIndex + 1,
453
- overflows: allOverflows
454
- },
455
- reset: {
456
- placement: resetPlacement
457
- }
458
- };
459
- }
460
- return {};
461
- }
462
- };
463
- };
464
-
465
- function getExpandedPlacements(placement) {
466
- const oppositePlacement = getOppositePlacement(placement);
467
- return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
468
- }
469
-
470
- function getSideList(side, isStart, rtl) {
471
- const lr = ['left', 'right'];
472
- const rl = ['right', 'left'];
473
- const tb = ['top', 'bottom'];
474
- const bt = ['bottom', 'top'];
475
- switch (side) {
476
- case 'top':
477
- case 'bottom':
478
- if (rtl) return isStart ? rl : lr;
479
- return isStart ? lr : rl;
480
- case 'left':
481
- case 'right':
482
- return isStart ? tb : bt;
483
- default:
484
- return [];
485
- }
486
- }
487
- function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
488
- const alignment = getAlignment(placement);
489
- let list = getSideList(getSide(placement), direction === 'start', rtl);
490
- if (alignment) {
491
- list = list.map(side => side + "-" + alignment);
492
- if (flipAlignment) {
493
- list = list.concat(list.map(getOppositeAlignmentPlacement));
494
- }
495
- }
496
- return list;
497
- }
498
-
499
409
  /**
500
- * Changes the placement of the floating element to one that will fit if the
501
- * initially specified `placement` does not.
410
+ * Optimizes the visibility of the floating element by flipping the `placement`
411
+ * in order to keep it in view when the preferred placement(s) will overflow the
412
+ * clipping boundary. Alternative to `autoPlacement`.
502
413
  * @see https://floating-ui.com/docs/flip
503
414
  */
504
415
  const flip = function (options) {
@@ -508,7 +419,7 @@ const flip = function (options) {
508
419
  return {
509
420
  name: 'flip',
510
421
  options,
511
- async fn(middlewareArguments) {
422
+ async fn(state) {
512
423
  var _middlewareData$flip;
513
424
  const {
514
425
  placement,
@@ -517,7 +428,7 @@ const flip = function (options) {
517
428
  initialPlacement,
518
429
  platform,
519
430
  elements
520
- } = middlewareArguments;
431
+ } = state;
521
432
  const {
522
433
  mainAxis: checkMainAxis = true,
523
434
  crossAxis: checkCrossAxis = true,
@@ -526,7 +437,7 @@ const flip = function (options) {
526
437
  fallbackAxisSideDirection = 'none',
527
438
  flipAlignment = true,
528
439
  ...detectOverflowOptions
529
- } = options;
440
+ } = evaluate(options, state);
530
441
  const side = getSide(placement);
531
442
  const isBasePlacement = getSide(initialPlacement) === initialPlacement;
532
443
  const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
@@ -535,18 +446,15 @@ const flip = function (options) {
535
446
  fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
536
447
  }
537
448
  const placements = [initialPlacement, ...fallbackPlacements];
538
- const overflow = await detectOverflow(middlewareArguments, detectOverflowOptions);
449
+ const overflow = await detectOverflow(state, detectOverflowOptions);
539
450
  const overflows = [];
540
451
  let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
541
452
  if (checkMainAxis) {
542
453
  overflows.push(overflow[side]);
543
454
  }
544
455
  if (checkCrossAxis) {
545
- const {
546
- main,
547
- cross
548
- } = getAlignmentSides(placement, rects, rtl);
549
- overflows.push(overflow[main], overflow[cross]);
456
+ const sides = getAlignmentSides(placement, rects, rtl);
457
+ overflows.push(overflow[sides[0]], overflow[sides[1]]);
550
458
  }
551
459
  overflowsData = [...overflowsData, {
552
460
  placement,
@@ -555,7 +463,7 @@ const flip = function (options) {
555
463
 
556
464
  // One or more sides is overflowing.
557
465
  if (!overflows.every(side => side <= 0)) {
558
- var _middlewareData$flip2;
466
+ var _middlewareData$flip2, _overflowsData$filter;
559
467
  const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
560
468
  const nextPlacement = placements[nextIndex];
561
469
  if (nextPlacement) {
@@ -570,20 +478,27 @@ const flip = function (options) {
570
478
  }
571
479
  };
572
480
  }
573
- let resetPlacement = 'bottom';
574
- switch (fallbackStrategy) {
575
- case 'bestFit':
576
- {
577
- var _overflowsData$map$so;
578
- const placement = (_overflowsData$map$so = overflowsData.map(d => [d, 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].placement;
579
- if (placement) {
580
- resetPlacement = placement;
481
+
482
+ // First, find the candidates that fit on the mainAxis side of overflow,
483
+ // then find the placement that fits the best on the main crossAxis side.
484
+ 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;
485
+
486
+ // Otherwise fallback.
487
+ if (!resetPlacement) {
488
+ switch (fallbackStrategy) {
489
+ case 'bestFit':
490
+ {
491
+ var _overflowsData$map$so;
492
+ 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];
493
+ if (placement) {
494
+ resetPlacement = placement;
495
+ }
496
+ break;
581
497
  }
498
+ case 'initialPlacement':
499
+ resetPlacement = initialPlacement;
582
500
  break;
583
- }
584
- case 'initialPlacement':
585
- resetPlacement = initialPlacement;
586
- break;
501
+ }
587
502
  }
588
503
  if (placement !== resetPlacement) {
589
504
  return {
@@ -598,8 +513,35 @@ const flip = function (options) {
598
513
  };
599
514
  };
600
515
 
601
- /**
602
- * Provides improved positioning for inline reference elements that can span
516
+ function getBoundingRect(rects) {
517
+ const minX = min(...rects.map(rect => rect.left));
518
+ const minY = min(...rects.map(rect => rect.top));
519
+ const maxX = max(...rects.map(rect => rect.right));
520
+ const maxY = max(...rects.map(rect => rect.bottom));
521
+ return {
522
+ x: minX,
523
+ y: minY,
524
+ width: maxX - minX,
525
+ height: maxY - minY
526
+ };
527
+ }
528
+ function getRectsByLine(rects) {
529
+ const sortedRects = rects.slice().sort((a, b) => a.y - b.y);
530
+ const groups = [];
531
+ let prevRect = null;
532
+ for (let i = 0; i < sortedRects.length; i++) {
533
+ const rect = sortedRects[i];
534
+ if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {
535
+ groups.push([rect]);
536
+ } else {
537
+ groups[groups.length - 1].push(rect);
538
+ }
539
+ prevRect = rect;
540
+ }
541
+ return groups.map(rect => rectToClientRect(getBoundingRect(rect)));
542
+ }
543
+ /**
544
+ * Provides improved positioning for inline reference elements that can span
603
545
  * over multiple lines, such as hyperlinks or range selections.
604
546
  * @see https://floating-ui.com/docs/inline
605
547
  */
@@ -610,14 +552,14 @@ const inline = function (options) {
610
552
  return {
611
553
  name: 'inline',
612
554
  options,
613
- async fn(middlewareArguments) {
555
+ async fn(state) {
614
556
  const {
615
557
  placement,
616
558
  elements,
617
559
  rects,
618
560
  platform,
619
561
  strategy
620
- } = middlewareArguments;
562
+ } = state;
621
563
  // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a
622
564
  // ClientRect's bounds, despite the event listener being triggered. A
623
565
  // padding of 2 seems to handle this issue.
@@ -625,14 +567,11 @@ const inline = function (options) {
625
567
  padding = 2,
626
568
  x,
627
569
  y
628
- } = options;
629
- const fallback = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
630
- rect: rects.reference,
631
- offsetParent: await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating)),
632
- strategy
633
- }) : rects.reference);
634
- const clientRects = (await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || [];
635
- const paddingObject = getSideObjectFromPadding(padding);
570
+ } = evaluate(options, state);
571
+ const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);
572
+ const clientRects = getRectsByLine(nativeClientRects);
573
+ const fallback = rectToClientRect(getBoundingRect(nativeClientRects));
574
+ const paddingObject = getPaddingObject(padding);
636
575
  function getBoundingClientRect() {
637
576
  // There are two rects and they are disjoined.
638
577
  if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {
@@ -642,7 +581,7 @@ const inline = function (options) {
642
581
 
643
582
  // There are 2 or more connected rects.
644
583
  if (clientRects.length >= 2) {
645
- if (getMainAxisFromPlacement(placement) === 'x') {
584
+ if (getSideAxis(placement) === 'y') {
646
585
  const firstRect = clientRects[0];
647
586
  const lastRect = clientRects[clientRects.length - 1];
648
587
  const isTop = getSide(placement) === 'top';
@@ -664,8 +603,8 @@ const inline = function (options) {
664
603
  };
665
604
  }
666
605
  const isLeftSide = getSide(placement) === 'left';
667
- const maxRight = max$1(...clientRects.map(rect => rect.right));
668
- const minLeft = min$1(...clientRects.map(rect => rect.left));
606
+ const maxRight = max(...clientRects.map(rect => rect.right));
607
+ const minLeft = min(...clientRects.map(rect => rect.left));
669
608
  const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);
670
609
  const top = measureRects[0].top;
671
610
  const bottom = measureRects[measureRects.length - 1].bottom;
@@ -705,19 +644,21 @@ const inline = function (options) {
705
644
  };
706
645
  };
707
646
 
708
- async function convertValueToCoords(middlewareArguments, value) {
647
+ // For type backwards-compatibility, the `OffsetOptions` type was also
648
+ // Derivable.
649
+ async function convertValueToCoords(state, options) {
709
650
  const {
710
651
  placement,
711
652
  platform,
712
653
  elements
713
- } = middlewareArguments;
654
+ } = state;
714
655
  const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
715
656
  const side = getSide(placement);
716
657
  const alignment = getAlignment(placement);
717
- const isVertical = getMainAxisFromPlacement(placement) === 'x';
658
+ const isVertical = getSideAxis(placement) === 'y';
718
659
  const mainAxisMulti = ['left', 'top'].includes(side) ? -1 : 1;
719
660
  const crossAxisMulti = rtl && isVertical ? -1 : 1;
720
- const rawValue = typeof value === 'function' ? value(middlewareArguments) : value;
661
+ const rawValue = evaluate(options, state);
721
662
 
722
663
  // eslint-disable-next-line prefer-const
723
664
  let {
@@ -747,22 +688,25 @@ async function convertValueToCoords(middlewareArguments, value) {
747
688
  }
748
689
 
749
690
  /**
750
- * Displaces the floating element from its reference element.
691
+ * Modifies the placement by translating the floating element along the
692
+ * specified axes.
693
+ * A number (shorthand for `mainAxis` or distance), or an axes configuration
694
+ * object may be passed.
751
695
  * @see https://floating-ui.com/docs/offset
752
696
  */
753
- const offset = function (value) {
754
- if (value === void 0) {
755
- value = 0;
697
+ const offset = function (options) {
698
+ if (options === void 0) {
699
+ options = 0;
756
700
  }
757
701
  return {
758
702
  name: 'offset',
759
- options: value,
760
- async fn(middlewareArguments) {
703
+ options,
704
+ async fn(state) {
761
705
  const {
762
706
  x,
763
707
  y
764
- } = middlewareArguments;
765
- const diffCoords = await convertValueToCoords(middlewareArguments, value);
708
+ } = state;
709
+ const diffCoords = await convertValueToCoords(state, options);
766
710
  return {
767
711
  x: x + diffCoords.x,
768
712
  y: y + diffCoords.y,
@@ -772,13 +716,9 @@ const offset = function (value) {
772
716
  };
773
717
  };
774
718
 
775
- function getCrossAxis(axis) {
776
- return axis === 'x' ? 'y' : 'x';
777
- }
778
-
779
719
  /**
780
- * Shifts the floating element in order to keep it in view when it will overflow
781
- * a clipping boundary.
720
+ * Optimizes the visibility of the floating element by shifting it in order to
721
+ * keep it in view when it will overflow the clipping boundary.
782
722
  * @see https://floating-ui.com/docs/shift
783
723
  */
784
724
  const shift = function (options) {
@@ -788,12 +728,12 @@ const shift = function (options) {
788
728
  return {
789
729
  name: 'shift',
790
730
  options,
791
- async fn(middlewareArguments) {
731
+ async fn(state) {
792
732
  const {
793
733
  x,
794
734
  y,
795
735
  placement
796
- } = middlewareArguments;
736
+ } = state;
797
737
  const {
798
738
  mainAxis: checkMainAxis = true,
799
739
  crossAxis: checkCrossAxis = false,
@@ -810,14 +750,14 @@ const shift = function (options) {
810
750
  }
811
751
  },
812
752
  ...detectOverflowOptions
813
- } = options;
753
+ } = evaluate(options, state);
814
754
  const coords = {
815
755
  x,
816
756
  y
817
757
  };
818
- const overflow = await detectOverflow(middlewareArguments, detectOverflowOptions);
819
- const mainAxis = getMainAxisFromPlacement(getSide(placement));
820
- const crossAxis = getCrossAxis(mainAxis);
758
+ const overflow = await detectOverflow(state, detectOverflowOptions);
759
+ const crossAxis = getSideAxis(getSide(placement));
760
+ const mainAxis = getOppositeAxis(crossAxis);
821
761
  let mainAxisCoord = coords[mainAxis];
822
762
  let crossAxisCoord = coords[crossAxis];
823
763
  if (checkMainAxis) {
@@ -825,17 +765,17 @@ const shift = function (options) {
825
765
  const maxSide = mainAxis === 'y' ? 'bottom' : 'right';
826
766
  const min = mainAxisCoord + overflow[minSide];
827
767
  const max = mainAxisCoord - overflow[maxSide];
828
- mainAxisCoord = within(min, mainAxisCoord, max);
768
+ mainAxisCoord = clamp(min, mainAxisCoord, max);
829
769
  }
830
770
  if (checkCrossAxis) {
831
771
  const minSide = crossAxis === 'y' ? 'top' : 'left';
832
772
  const maxSide = crossAxis === 'y' ? 'bottom' : 'right';
833
773
  const min = crossAxisCoord + overflow[minSide];
834
774
  const max = crossAxisCoord - overflow[maxSide];
835
- crossAxisCoord = within(min, crossAxisCoord, max);
775
+ crossAxisCoord = clamp(min, crossAxisCoord, max);
836
776
  }
837
777
  const limitedCoords = limiter.fn({
838
- ...middlewareArguments,
778
+ ...state,
839
779
  [mainAxis]: mainAxisCoord,
840
780
  [crossAxis]: crossAxisCoord
841
781
  });
@@ -850,48 +790,38 @@ const shift = function (options) {
850
790
  };
851
791
  };
852
792
 
793
+ function getNodeName(node) {
794
+ if (isNode(node)) {
795
+ return (node.nodeName || '').toLowerCase();
796
+ }
797
+ // Mocked nodes in testing environments may not be instances of Node. By
798
+ // returning `#document` an infinite loop won't occur.
799
+ // https://github.com/floating-ui/floating-ui/issues/2317
800
+ return '#document';
801
+ }
853
802
  function getWindow(node) {
854
803
  var _node$ownerDocument;
855
- return ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
804
+ return (node == null ? void 0 : (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
856
805
  }
857
-
858
- function getComputedStyle$1(element) {
859
- return getWindow(element).getComputedStyle(element);
860
- }
861
-
862
- function getNodeName(node) {
863
- return isNode(node) ? (node.nodeName || '').toLowerCase() : '';
864
- }
865
-
866
- let uaString;
867
- function getUAString() {
868
- if (uaString) {
869
- return uaString;
870
- }
871
- const uaData = navigator.userAgentData;
872
- if (uaData && Array.isArray(uaData.brands)) {
873
- uaString = uaData.brands.map(item => item.brand + "/" + item.version).join(' ');
874
- return uaString;
875
- }
876
- return navigator.userAgent;
806
+ function getDocumentElement(node) {
807
+ var _ref;
808
+ return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
877
809
  }
878
-
879
- function isHTMLElement(value) {
880
- return value instanceof getWindow(value).HTMLElement;
810
+ function isNode(value) {
811
+ return value instanceof Node || value instanceof getWindow(value).Node;
881
812
  }
882
813
  function isElement(value) {
883
- return value instanceof getWindow(value).Element;
814
+ return value instanceof Element || value instanceof getWindow(value).Element;
884
815
  }
885
- function isNode(value) {
886
- return value instanceof getWindow(value).Node;
816
+ function isHTMLElement(value) {
817
+ return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
887
818
  }
888
- function isShadowRoot(node) {
889
- // Browsers without `ShadowRoot` support
819
+ function isShadowRoot(value) {
820
+ // Browsers without `ShadowRoot` support.
890
821
  if (typeof ShadowRoot === 'undefined') {
891
822
  return false;
892
823
  }
893
- const OwnElement = getWindow(node).ShadowRoot;
894
- return node instanceof OwnElement || node instanceof ShadowRoot;
824
+ return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
895
825
  }
896
826
  function isOverflowElement(element) {
897
827
  const {
@@ -899,52 +829,100 @@ function isOverflowElement(element) {
899
829
  overflowX,
900
830
  overflowY,
901
831
  display
902
- } = getComputedStyle$1(element);
832
+ } = getComputedStyle(element);
903
833
  return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !['inline', 'contents'].includes(display);
904
834
  }
905
835
  function isTableElement(element) {
906
836
  return ['table', 'td', 'th'].includes(getNodeName(element));
907
837
  }
908
838
  function isContainingBlock(element) {
909
- // TODO: Try and use feature detection here instead
910
- const isFirefox = /firefox/i.test(getUAString());
911
- const css = getComputedStyle$1(element);
912
- const backdropFilter = css.backdropFilter || css.WebkitBackdropFilter;
839
+ const webkit = isWebKit();
840
+ const css = getComputedStyle(element);
913
841
 
914
- // This is non-exhaustive but covers the most common CSS properties that
915
- // create a containing block.
916
842
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
917
- return css.transform !== 'none' || css.perspective !== 'none' || (backdropFilter ? backdropFilter !== 'none' : false) || isFirefox && css.willChange === 'filter' || isFirefox && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective'].some(value => css.willChange.includes(value)) || ['paint', 'layout', 'strict', 'content'].some(
918
- // TS 4.1 compat
919
- value => {
920
- const contain = css.contain;
921
- return contain != null ? contain.includes(value) : false;
922
- });
843
+ 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));
923
844
  }
924
- function isLayoutViewport() {
925
- // Not Safari
926
- return !/^((?!chrome|android).)*safari/i.test(getUAString());
927
- // Feature detection for this fails in various ways
928
- // • Always-visible scrollbar or not
929
- // Width of <html>, etc.
930
- // const vV = win.visualViewport;
931
- // return vV ? Math.abs(win.innerWidth / vV.scale - vV.width) < 0.5 : true;
845
+ function getContainingBlock(element) {
846
+ let currentNode = getParentNode(element);
847
+ while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
848
+ if (isContainingBlock(currentNode)) {
849
+ return currentNode;
850
+ } else {
851
+ currentNode = getParentNode(currentNode);
852
+ }
853
+ }
854
+ return null;
855
+ }
856
+ function isWebKit() {
857
+ if (typeof CSS === 'undefined' || !CSS.supports) return false;
858
+ return CSS.supports('-webkit-backdrop-filter', 'none');
932
859
  }
933
-
934
860
  function isLastTraversableNode(node) {
935
861
  return ['html', 'body', '#document'].includes(getNodeName(node));
936
862
  }
937
-
938
- const min = Math.min;
939
- const max = Math.max;
940
- const round = Math.round;
863
+ function getComputedStyle(element) {
864
+ return getWindow(element).getComputedStyle(element);
865
+ }
866
+ function getNodeScroll(element) {
867
+ if (isElement(element)) {
868
+ return {
869
+ scrollLeft: element.scrollLeft,
870
+ scrollTop: element.scrollTop
871
+ };
872
+ }
873
+ return {
874
+ scrollLeft: element.pageXOffset,
875
+ scrollTop: element.pageYOffset
876
+ };
877
+ }
878
+ function getParentNode(node) {
879
+ if (getNodeName(node) === 'html') {
880
+ return node;
881
+ }
882
+ const result =
883
+ // Step into the shadow DOM of the parent of a slotted node.
884
+ node.assignedSlot ||
885
+ // DOM Element detected.
886
+ node.parentNode ||
887
+ // ShadowRoot detected.
888
+ isShadowRoot(node) && node.host ||
889
+ // Fallback.
890
+ getDocumentElement(node);
891
+ return isShadowRoot(result) ? result.host : result;
892
+ }
893
+ function getNearestOverflowAncestor(node) {
894
+ const parentNode = getParentNode(node);
895
+ if (isLastTraversableNode(parentNode)) {
896
+ return node.ownerDocument ? node.ownerDocument.body : node.body;
897
+ }
898
+ if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
899
+ return parentNode;
900
+ }
901
+ return getNearestOverflowAncestor(parentNode);
902
+ }
903
+ function getOverflowAncestors(node, list) {
904
+ var _node$ownerDocument2;
905
+ if (list === void 0) {
906
+ list = [];
907
+ }
908
+ const scrollableAncestor = getNearestOverflowAncestor(node);
909
+ const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
910
+ const win = getWindow(scrollableAncestor);
911
+ if (isBody) {
912
+ return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : []);
913
+ }
914
+ return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));
915
+ }
941
916
 
942
917
  function getCssDimensions(element) {
943
- const css = getComputedStyle$1(element);
944
- let width = parseFloat(css.width);
945
- let height = parseFloat(css.height);
946
- const offsetWidth = element.offsetWidth;
947
- const offsetHeight = element.offsetHeight;
918
+ const css = getComputedStyle(element);
919
+ // In testing environments, the `width` and `height` properties are empty
920
+ // strings for SVG elements, returning NaN. Fallback to `0` in this case.
921
+ let width = parseFloat(css.width) || 0;
922
+ let height = parseFloat(css.height) || 0;
923
+ const hasOffset = isHTMLElement(element);
924
+ const offsetWidth = hasOffset ? element.offsetWidth : width;
925
+ const offsetHeight = hasOffset ? element.offsetHeight : height;
948
926
  const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
949
927
  if (shouldFallback) {
950
928
  width = offsetWidth;
@@ -953,7 +931,7 @@ function getCssDimensions(element) {
953
931
  return {
954
932
  width,
955
933
  height,
956
- fallback: shouldFallback
934
+ $: shouldFallback
957
935
  };
958
936
  }
959
937
 
@@ -961,23 +939,19 @@ function unwrapElement(element) {
961
939
  return !isElement(element) ? element.contextElement : element;
962
940
  }
963
941
 
964
- const FALLBACK_SCALE = {
965
- x: 1,
966
- y: 1
967
- };
968
942
  function getScale(element) {
969
943
  const domElement = unwrapElement(element);
970
944
  if (!isHTMLElement(domElement)) {
971
- return FALLBACK_SCALE;
945
+ return createCoords(1);
972
946
  }
973
947
  const rect = domElement.getBoundingClientRect();
974
948
  const {
975
949
  width,
976
950
  height,
977
- fallback
951
+ $
978
952
  } = getCssDimensions(domElement);
979
- let x = (fallback ? round(rect.width) : rect.width) / width;
980
- let y = (fallback ? round(rect.height) : rect.height) / height;
953
+ let x = ($ ? round(rect.width) : rect.width) / width;
954
+ let y = ($ ? round(rect.height) : rect.height) / height;
981
955
 
982
956
  // 0, NaN, or Infinity should always fallback to 1.
983
957
 
@@ -993,8 +967,28 @@ function getScale(element) {
993
967
  };
994
968
  }
995
969
 
970
+ const noOffsets = /*#__PURE__*/createCoords(0);
971
+ function getVisualOffsets(element) {
972
+ const win = getWindow(element);
973
+ if (!isWebKit() || !win.visualViewport) {
974
+ return noOffsets;
975
+ }
976
+ return {
977
+ x: win.visualViewport.offsetLeft,
978
+ y: win.visualViewport.offsetTop
979
+ };
980
+ }
981
+ function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
982
+ if (isFixed === void 0) {
983
+ isFixed = false;
984
+ }
985
+ if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {
986
+ return false;
987
+ }
988
+ return isFixed;
989
+ }
990
+
996
991
  function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
997
- var _win$visualViewport, _win$visualViewport2;
998
992
  if (includeScale === void 0) {
999
993
  includeScale = false;
1000
994
  }
@@ -1003,7 +997,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
1003
997
  }
1004
998
  const clientRect = element.getBoundingClientRect();
1005
999
  const domElement = unwrapElement(element);
1006
- let scale = FALLBACK_SCALE;
1000
+ let scale = createCoords(1);
1007
1001
  if (includeScale) {
1008
1002
  if (offsetParent) {
1009
1003
  if (isElement(offsetParent)) {
@@ -1013,10 +1007,9 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
1013
1007
  scale = getScale(element);
1014
1008
  }
1015
1009
  }
1016
- const win = domElement ? getWindow(domElement) : window;
1017
- const addVisualOffsets = !isLayoutViewport() && isFixedStrategy;
1018
- let x = (clientRect.left + (addVisualOffsets ? ((_win$visualViewport = win.visualViewport) == null ? void 0 : _win$visualViewport.offsetLeft) || 0 : 0)) / scale.x;
1019
- let y = (clientRect.top + (addVisualOffsets ? ((_win$visualViewport2 = win.visualViewport) == null ? void 0 : _win$visualViewport2.offsetTop) || 0 : 0)) / scale.y;
1010
+ const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
1011
+ let x = (clientRect.left + visualOffsets.x) / scale.x;
1012
+ let y = (clientRect.top + visualOffsets.y) / scale.y;
1020
1013
  let width = clientRect.width / scale.x;
1021
1014
  let height = clientRect.height / scale.y;
1022
1015
  if (domElement) {
@@ -1027,134 +1020,23 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
1027
1020
  const iframeScale = getScale(currentIFrame);
1028
1021
  const iframeRect = currentIFrame.getBoundingClientRect();
1029
1022
  const css = getComputedStyle(currentIFrame);
1030
- iframeRect.x += (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
1031
- iframeRect.y += (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
1023
+ const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
1024
+ const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
1032
1025
  x *= iframeScale.x;
1033
1026
  y *= iframeScale.y;
1034
1027
  width *= iframeScale.x;
1035
1028
  height *= iframeScale.y;
1036
- x += iframeRect.x;
1037
- y += iframeRect.y;
1029
+ x += left;
1030
+ y += top;
1038
1031
  currentIFrame = getWindow(currentIFrame).frameElement;
1039
1032
  }
1040
1033
  }
1041
- return {
1034
+ return rectToClientRect({
1042
1035
  width,
1043
1036
  height,
1044
- top: y,
1045
- right: x + width,
1046
- bottom: y + height,
1047
- left: x,
1048
1037
  x,
1049
1038
  y
1050
- };
1051
- }
1052
-
1053
- function getDocumentElement(node) {
1054
- return ((isNode(node) ? node.ownerDocument : node.document) || window.document).documentElement;
1055
- }
1056
-
1057
- function getNodeScroll(element) {
1058
- if (isElement(element)) {
1059
- return {
1060
- scrollLeft: element.scrollLeft,
1061
- scrollTop: element.scrollTop
1062
- };
1063
- }
1064
- return {
1065
- scrollLeft: element.pageXOffset,
1066
- scrollTop: element.pageYOffset
1067
- };
1068
- }
1069
-
1070
- function getWindowScrollBarX(element) {
1071
- // If <html> has a CSS width greater than the viewport, then this will be
1072
- // incorrect for RTL.
1073
- return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
1074
- }
1075
-
1076
- function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
1077
- const isOffsetParentAnElement = isHTMLElement(offsetParent);
1078
- const documentElement = getDocumentElement(offsetParent);
1079
- const rect = getBoundingClientRect(element, true, strategy === 'fixed', offsetParent);
1080
- let scroll = {
1081
- scrollLeft: 0,
1082
- scrollTop: 0
1083
- };
1084
- const offsets = {
1085
- x: 0,
1086
- y: 0
1087
- };
1088
- if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
1089
- if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
1090
- scroll = getNodeScroll(offsetParent);
1091
- }
1092
- if (isHTMLElement(offsetParent)) {
1093
- const offsetRect = getBoundingClientRect(offsetParent, true);
1094
- offsets.x = offsetRect.x + offsetParent.clientLeft;
1095
- offsets.y = offsetRect.y + offsetParent.clientTop;
1096
- } else if (documentElement) {
1097
- offsets.x = getWindowScrollBarX(documentElement);
1098
- }
1099
- }
1100
- return {
1101
- x: rect.left + scroll.scrollLeft - offsets.x,
1102
- y: rect.top + scroll.scrollTop - offsets.y,
1103
- width: rect.width,
1104
- height: rect.height
1105
- };
1106
- }
1107
-
1108
- function getParentNode(node) {
1109
- if (getNodeName(node) === 'html') {
1110
- return node;
1111
- }
1112
- const result =
1113
- // Step into the shadow DOM of the parent of a slotted node
1114
- node.assignedSlot ||
1115
- // DOM Element detected
1116
- node.parentNode || (
1117
- // ShadowRoot detected
1118
- isShadowRoot(node) ? node.host : null) ||
1119
- // Fallback
1120
- getDocumentElement(node);
1121
- return isShadowRoot(result) ? result.host : result;
1122
- }
1123
-
1124
- function getTrueOffsetParent(element) {
1125
- if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {
1126
- return null;
1127
- }
1128
- return element.offsetParent;
1129
- }
1130
- function getContainingBlock(element) {
1131
- let currentNode = getParentNode(element);
1132
- while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
1133
- if (isContainingBlock(currentNode)) {
1134
- return currentNode;
1135
- } else {
1136
- currentNode = getParentNode(currentNode);
1137
- }
1138
- }
1139
- return null;
1140
- }
1141
-
1142
- // Gets the closest ancestor positioned element. Handles some edge cases,
1143
- // such as table ancestors and cross browser bugs.
1144
- function getOffsetParent(element) {
1145
- const window = getWindow(element);
1146
- let offsetParent = getTrueOffsetParent(element);
1147
- while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') {
1148
- offsetParent = getTrueOffsetParent(offsetParent);
1149
- }
1150
- if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
1151
- return window;
1152
- }
1153
- return offsetParent || getContainingBlock(element) || window;
1154
- }
1155
-
1156
- function getDimensions(element) {
1157
- return getCssDimensions(element);
1039
+ });
1158
1040
  }
1159
1041
 
1160
1042
  function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
@@ -1172,14 +1054,8 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
1172
1054
  scrollLeft: 0,
1173
1055
  scrollTop: 0
1174
1056
  };
1175
- let scale = {
1176
- x: 1,
1177
- y: 1
1178
- };
1179
- const offsets = {
1180
- x: 0,
1181
- y: 0
1182
- };
1057
+ let scale = createCoords(1);
1058
+ const offsets = createCoords(0);
1183
1059
  if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
1184
1060
  if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
1185
1061
  scroll = getNodeScroll(offsetParent);
@@ -1190,12 +1066,7 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
1190
1066
  offsets.x = offsetRect.x + offsetParent.clientLeft;
1191
1067
  offsets.y = offsetRect.y + offsetParent.clientTop;
1192
1068
  }
1193
- // This doesn't appear to need to be negated.
1194
- // else if (documentElement) {
1195
- // offsets.x = getWindowScrollBarX(documentElement);
1196
- // }
1197
1069
  }
1198
-
1199
1070
  return {
1200
1071
  width: rect.width * scale.x,
1201
1072
  height: rect.height * scale.y,
@@ -1204,6 +1075,37 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
1204
1075
  };
1205
1076
  }
1206
1077
 
1078
+ function getClientRects(element) {
1079
+ return Array.from(element.getClientRects());
1080
+ }
1081
+
1082
+ function getWindowScrollBarX(element) {
1083
+ // If <html> has a CSS width greater than the viewport, then this will be
1084
+ // incorrect for RTL.
1085
+ return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
1086
+ }
1087
+
1088
+ // Gets the entire size of the scrollable document area, even extending outside
1089
+ // of the `<html>` and `<body>` rect bounds if horizontally scrollable.
1090
+ function getDocumentRect(element) {
1091
+ const html = getDocumentElement(element);
1092
+ const scroll = getNodeScroll(element);
1093
+ const body = element.ownerDocument.body;
1094
+ const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
1095
+ const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
1096
+ let x = -scroll.scrollLeft + getWindowScrollBarX(element);
1097
+ const y = -scroll.scrollTop;
1098
+ if (getComputedStyle(body).direction === 'rtl') {
1099
+ x += max(html.clientWidth, body.clientWidth) - width;
1100
+ }
1101
+ return {
1102
+ width,
1103
+ height,
1104
+ x,
1105
+ y
1106
+ };
1107
+ }
1108
+
1207
1109
  function getViewportRect(element, strategy) {
1208
1110
  const win = getWindow(element);
1209
1111
  const html = getDocumentElement(element);
@@ -1215,8 +1117,8 @@ function getViewportRect(element, strategy) {
1215
1117
  if (visualViewport) {
1216
1118
  width = visualViewport.width;
1217
1119
  height = visualViewport.height;
1218
- const layoutViewport = isLayoutViewport();
1219
- if (layoutViewport || !layoutViewport && strategy === 'fixed') {
1120
+ const visualViewportBased = isWebKit();
1121
+ if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {
1220
1122
  x = visualViewport.offsetLeft;
1221
1123
  y = visualViewport.offsetTop;
1222
1124
  }
@@ -1229,86 +1131,47 @@ function getViewportRect(element, strategy) {
1229
1131
  };
1230
1132
  }
1231
1133
 
1232
- // Gets the entire size of the scrollable document area, even extending outside
1233
- // of the `<html>` and `<body>` rect bounds if horizontally scrollable
1234
- function getDocumentRect(element) {
1235
- var _element$ownerDocumen;
1236
- const html = getDocumentElement(element);
1237
- const scroll = getNodeScroll(element);
1238
- const body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;
1239
- const width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);
1240
- const height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);
1241
- let x = -scroll.scrollLeft + getWindowScrollBarX(element);
1242
- const y = -scroll.scrollTop;
1243
- if (getComputedStyle$1(body || html).direction === 'rtl') {
1244
- x += max(html.clientWidth, body ? body.clientWidth : 0) - width;
1245
- }
1246
- return {
1247
- width,
1248
- height,
1249
- x,
1250
- y
1251
- };
1252
- }
1253
-
1254
- function getNearestOverflowAncestor(node) {
1255
- const parentNode = getParentNode(node);
1256
- if (isLastTraversableNode(parentNode)) {
1257
- // @ts-ignore assume body is always available
1258
- return node.ownerDocument.body;
1259
- }
1260
- if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
1261
- return parentNode;
1262
- }
1263
- return getNearestOverflowAncestor(parentNode);
1264
- }
1265
-
1266
- function getOverflowAncestors(node, list) {
1267
- var _node$ownerDocument;
1268
- if (list === void 0) {
1269
- list = [];
1270
- }
1271
- const scrollableAncestor = getNearestOverflowAncestor(node);
1272
- const isBody = scrollableAncestor === ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.body);
1273
- const win = getWindow(scrollableAncestor);
1274
- if (isBody) {
1275
- return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : []);
1276
- }
1277
- return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor));
1278
- }
1279
-
1280
- // Returns the inner client rect, subtracting scrollbars if present
1134
+ // Returns the inner client rect, subtracting scrollbars if present.
1281
1135
  function getInnerBoundingClientRect(element, strategy) {
1282
1136
  const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
1283
1137
  const top = clientRect.top + element.clientTop;
1284
1138
  const left = clientRect.left + element.clientLeft;
1285
- const scale = isHTMLElement(element) ? getScale(element) : {
1286
- x: 1,
1287
- y: 1
1288
- };
1139
+ const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
1289
1140
  const width = element.clientWidth * scale.x;
1290
1141
  const height = element.clientHeight * scale.y;
1291
1142
  const x = left * scale.x;
1292
1143
  const y = top * scale.y;
1293
1144
  return {
1294
- top: y,
1295
- left: x,
1296
- right: x + width,
1297
- bottom: y + height,
1298
- x,
1299
- y,
1300
1145
  width,
1301
- height
1146
+ height,
1147
+ x,
1148
+ y
1302
1149
  };
1303
1150
  }
1304
1151
  function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
1152
+ let rect;
1305
1153
  if (clippingAncestor === 'viewport') {
1306
- return rectToClientRect(getViewportRect(element, strategy));
1154
+ rect = getViewportRect(element, strategy);
1155
+ } else if (clippingAncestor === 'document') {
1156
+ rect = getDocumentRect(getDocumentElement(element));
1157
+ } else if (isElement(clippingAncestor)) {
1158
+ rect = getInnerBoundingClientRect(clippingAncestor, strategy);
1159
+ } else {
1160
+ const visualOffsets = getVisualOffsets(element);
1161
+ rect = {
1162
+ ...clippingAncestor,
1163
+ x: clippingAncestor.x - visualOffsets.x,
1164
+ y: clippingAncestor.y - visualOffsets.y
1165
+ };
1307
1166
  }
1308
- if (isElement(clippingAncestor)) {
1309
- return getInnerBoundingClientRect(clippingAncestor, strategy);
1167
+ return rectToClientRect(rect);
1168
+ }
1169
+ function hasFixedPositionAncestor(element, stopNode) {
1170
+ const parentNode = getParentNode(element);
1171
+ if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
1172
+ return false;
1310
1173
  }
1311
- return rectToClientRect(getDocumentRect(getDocumentElement(element)));
1174
+ return getComputedStyle(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);
1312
1175
  }
1313
1176
 
1314
1177
  // A "clipping ancestor" is an `overflow` element with the characteristic of
@@ -1321,19 +1184,22 @@ function getClippingElementAncestors(element, cache) {
1321
1184
  }
1322
1185
  let result = getOverflowAncestors(element).filter(el => isElement(el) && getNodeName(el) !== 'body');
1323
1186
  let currentContainingBlockComputedStyle = null;
1324
- const elementIsFixed = getComputedStyle$1(element).position === 'fixed';
1187
+ const elementIsFixed = getComputedStyle(element).position === 'fixed';
1325
1188
  let currentNode = elementIsFixed ? getParentNode(element) : element;
1326
1189
 
1327
1190
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
1328
1191
  while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
1329
- const computedStyle = getComputedStyle$1(currentNode);
1330
- const containingBlock = isContainingBlock(currentNode);
1331
- const shouldDropCurrentNode = elementIsFixed ? !containingBlock && !currentContainingBlockComputedStyle : !containingBlock && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position);
1192
+ const computedStyle = getComputedStyle(currentNode);
1193
+ const currentNodeIsContaining = isContainingBlock(currentNode);
1194
+ if (!currentNodeIsContaining && computedStyle.position === 'fixed') {
1195
+ currentContainingBlockComputedStyle = null;
1196
+ }
1197
+ const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
1332
1198
  if (shouldDropCurrentNode) {
1333
- // Drop non-containing blocks
1199
+ // Drop non-containing blocks.
1334
1200
  result = result.filter(ancestor => ancestor !== currentNode);
1335
1201
  } else {
1336
- // Record last containing block for next iteration
1202
+ // Record last containing block for next iteration.
1337
1203
  currentContainingBlockComputedStyle = computedStyle;
1338
1204
  }
1339
1205
  currentNode = getParentNode(currentNode);
@@ -1343,7 +1209,7 @@ function getClippingElementAncestors(element, cache) {
1343
1209
  }
1344
1210
 
1345
1211
  // Gets the maximum area that the element is visible in due to any number of
1346
- // clipping ancestors
1212
+ // clipping ancestors.
1347
1213
  function getClippingRect(_ref) {
1348
1214
  let {
1349
1215
  element,
@@ -1370,37 +1236,182 @@ function getClippingRect(_ref) {
1370
1236
  };
1371
1237
  }
1372
1238
 
1239
+ function getDimensions(element) {
1240
+ return getCssDimensions(element);
1241
+ }
1242
+
1243
+ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
1244
+ const isOffsetParentAnElement = isHTMLElement(offsetParent);
1245
+ const documentElement = getDocumentElement(offsetParent);
1246
+ const isFixed = strategy === 'fixed';
1247
+ const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
1248
+ let scroll = {
1249
+ scrollLeft: 0,
1250
+ scrollTop: 0
1251
+ };
1252
+ const offsets = createCoords(0);
1253
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
1254
+ if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
1255
+ scroll = getNodeScroll(offsetParent);
1256
+ }
1257
+ if (isOffsetParentAnElement) {
1258
+ const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
1259
+ offsets.x = offsetRect.x + offsetParent.clientLeft;
1260
+ offsets.y = offsetRect.y + offsetParent.clientTop;
1261
+ } else if (documentElement) {
1262
+ offsets.x = getWindowScrollBarX(documentElement);
1263
+ }
1264
+ }
1265
+ return {
1266
+ x: rect.left + scroll.scrollLeft - offsets.x,
1267
+ y: rect.top + scroll.scrollTop - offsets.y,
1268
+ width: rect.width,
1269
+ height: rect.height
1270
+ };
1271
+ }
1272
+
1273
+ function getTrueOffsetParent(element, polyfill) {
1274
+ if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {
1275
+ return null;
1276
+ }
1277
+ if (polyfill) {
1278
+ return polyfill(element);
1279
+ }
1280
+ return element.offsetParent;
1281
+ }
1282
+
1283
+ // Gets the closest ancestor positioned element. Handles some edge cases,
1284
+ // such as table ancestors and cross browser bugs.
1285
+ function getOffsetParent(element, polyfill) {
1286
+ const window = getWindow(element);
1287
+ if (!isHTMLElement(element)) {
1288
+ return window;
1289
+ }
1290
+ let offsetParent = getTrueOffsetParent(element, polyfill);
1291
+ while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {
1292
+ offsetParent = getTrueOffsetParent(offsetParent, polyfill);
1293
+ }
1294
+ if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
1295
+ return window;
1296
+ }
1297
+ return offsetParent || getContainingBlock(element) || window;
1298
+ }
1299
+
1300
+ const getElementRects = async function (_ref) {
1301
+ let {
1302
+ reference,
1303
+ floating,
1304
+ strategy
1305
+ } = _ref;
1306
+ const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
1307
+ const getDimensionsFn = this.getDimensions;
1308
+ return {
1309
+ reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),
1310
+ floating: {
1311
+ x: 0,
1312
+ y: 0,
1313
+ ...(await getDimensionsFn(floating))
1314
+ }
1315
+ };
1316
+ };
1317
+
1318
+ function isRTL(element) {
1319
+ return getComputedStyle(element).direction === 'rtl';
1320
+ }
1321
+
1373
1322
  const platform = {
1374
- getClippingRect,
1375
1323
  convertOffsetParentRelativeRectToViewportRelativeRect,
1376
- isElement,
1377
- getDimensions,
1378
- getOffsetParent,
1379
1324
  getDocumentElement,
1325
+ getClippingRect,
1326
+ getOffsetParent,
1327
+ getElementRects,
1328
+ getClientRects,
1329
+ getDimensions,
1380
1330
  getScale,
1381
- async getElementRects(_ref) {
1382
- let {
1383
- reference,
1384
- floating,
1385
- strategy
1386
- } = _ref;
1387
- const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
1388
- const getDimensionsFn = this.getDimensions;
1389
- return {
1390
- reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),
1391
- floating: {
1392
- x: 0,
1393
- y: 0,
1394
- ...(await getDimensionsFn(floating))
1395
- }
1396
- };
1397
- },
1398
- getClientRects: element => Array.from(element.getClientRects()),
1399
- isRTL: element => getComputedStyle$1(element).direction === 'rtl'
1331
+ isElement,
1332
+ isRTL
1400
1333
  };
1401
1334
 
1335
+ // https://samthor.au/2021/observing-dom/
1336
+ function observeMove(element, onMove) {
1337
+ let io = null;
1338
+ let timeoutId;
1339
+ const root = getDocumentElement(element);
1340
+ function cleanup() {
1341
+ clearTimeout(timeoutId);
1342
+ io && io.disconnect();
1343
+ io = null;
1344
+ }
1345
+ function refresh(skip, threshold) {
1346
+ if (skip === void 0) {
1347
+ skip = false;
1348
+ }
1349
+ if (threshold === void 0) {
1350
+ threshold = 1;
1351
+ }
1352
+ cleanup();
1353
+ const {
1354
+ left,
1355
+ top,
1356
+ width,
1357
+ height
1358
+ } = element.getBoundingClientRect();
1359
+ if (!skip) {
1360
+ onMove();
1361
+ }
1362
+ if (!width || !height) {
1363
+ return;
1364
+ }
1365
+ const insetTop = floor(top);
1366
+ const insetRight = floor(root.clientWidth - (left + width));
1367
+ const insetBottom = floor(root.clientHeight - (top + height));
1368
+ const insetLeft = floor(left);
1369
+ const rootMargin = -insetTop + "px " + -insetRight + "px " + -insetBottom + "px " + -insetLeft + "px";
1370
+ const options = {
1371
+ rootMargin,
1372
+ threshold: max(0, min(1, threshold)) || 1
1373
+ };
1374
+ let isFirstUpdate = true;
1375
+ function handleObserve(entries) {
1376
+ const ratio = entries[0].intersectionRatio;
1377
+ if (ratio !== threshold) {
1378
+ if (!isFirstUpdate) {
1379
+ return refresh();
1380
+ }
1381
+ if (!ratio) {
1382
+ timeoutId = setTimeout(() => {
1383
+ refresh(false, 1e-7);
1384
+ }, 100);
1385
+ } else {
1386
+ refresh(false, ratio);
1387
+ }
1388
+ }
1389
+ isFirstUpdate = false;
1390
+ }
1391
+
1392
+ // Older browsers don't support a `document` as the root and will throw an
1393
+ // error.
1394
+ try {
1395
+ io = new IntersectionObserver(handleObserve, {
1396
+ ...options,
1397
+ // Handle <iframe>s
1398
+ root: root.ownerDocument
1399
+ });
1400
+ } catch (e) {
1401
+ io = new IntersectionObserver(handleObserve, options);
1402
+ }
1403
+ io.observe(element);
1404
+ }
1405
+ refresh(true);
1406
+ return cleanup;
1407
+ }
1408
+
1402
1409
  /**
1403
1410
  * Automatically updates the position of the floating element when necessary.
1411
+ * Should only be called when the floating element is mounted on the DOM or
1412
+ * visible on the screen.
1413
+ * @returns cleanup function that should be invoked when the floating element is
1414
+ * removed from the DOM or hidden from the screen.
1404
1415
  * @see https://floating-ui.com/docs/autoUpdate
1405
1416
  */
1406
1417
  function autoUpdate(reference, floating, update, options) {
@@ -1408,33 +1419,41 @@ function autoUpdate(reference, floating, update, options) {
1408
1419
  options = {};
1409
1420
  }
1410
1421
  const {
1411
- ancestorScroll: _ancestorScroll = true,
1422
+ ancestorScroll = true,
1412
1423
  ancestorResize = true,
1413
- elementResize = true,
1424
+ elementResize = typeof ResizeObserver === 'function',
1425
+ layoutShift = typeof IntersectionObserver === 'function',
1414
1426
  animationFrame = false
1415
1427
  } = options;
1416
- const ancestorScroll = _ancestorScroll && !animationFrame;
1417
- const ancestors = ancestorScroll || ancestorResize ? [...(isElement(reference) ? getOverflowAncestors(reference) : reference.contextElement ? getOverflowAncestors(reference.contextElement) : []), ...getOverflowAncestors(floating)] : [];
1428
+ const referenceEl = unwrapElement(reference);
1429
+ const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...getOverflowAncestors(floating)] : [];
1418
1430
  ancestors.forEach(ancestor => {
1419
1431
  ancestorScroll && ancestor.addEventListener('scroll', update, {
1420
1432
  passive: true
1421
1433
  });
1422
1434
  ancestorResize && ancestor.addEventListener('resize', update);
1423
1435
  });
1424
- let observer = null;
1436
+ const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;
1437
+ let reobserveFrame = -1;
1438
+ let resizeObserver = null;
1425
1439
  if (elementResize) {
1426
- let initialUpdate = true;
1427
- observer = new ResizeObserver(() => {
1428
- if (!initialUpdate) {
1429
- update();
1440
+ resizeObserver = new ResizeObserver(_ref => {
1441
+ let [firstEntry] = _ref;
1442
+ if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {
1443
+ // Prevent update loops when using the `size` middleware.
1444
+ // https://github.com/floating-ui/floating-ui/issues/1740
1445
+ resizeObserver.unobserve(floating);
1446
+ cancelAnimationFrame(reobserveFrame);
1447
+ reobserveFrame = requestAnimationFrame(() => {
1448
+ resizeObserver && resizeObserver.observe(floating);
1449
+ });
1430
1450
  }
1431
- initialUpdate = false;
1451
+ update();
1432
1452
  });
1433
- isElement(reference) && !animationFrame && observer.observe(reference);
1434
- if (!isElement(reference) && reference.contextElement && !animationFrame) {
1435
- observer.observe(reference.contextElement);
1453
+ if (referenceEl && !animationFrame) {
1454
+ resizeObserver.observe(referenceEl);
1436
1455
  }
1437
- observer.observe(floating);
1456
+ resizeObserver.observe(floating);
1438
1457
  }
1439
1458
  let frameId;
1440
1459
  let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
@@ -1451,13 +1470,13 @@ function autoUpdate(reference, floating, update, options) {
1451
1470
  }
1452
1471
  update();
1453
1472
  return () => {
1454
- var _observer;
1455
1473
  ancestors.forEach(ancestor => {
1456
1474
  ancestorScroll && ancestor.removeEventListener('scroll', update);
1457
1475
  ancestorResize && ancestor.removeEventListener('resize', update);
1458
1476
  });
1459
- (_observer = observer) == null ? void 0 : _observer.disconnect();
1460
- observer = null;
1477
+ cleanupIo && cleanupIo();
1478
+ resizeObserver && resizeObserver.disconnect();
1479
+ resizeObserver = null;
1461
1480
  if (animationFrame) {
1462
1481
  cancelAnimationFrame(frameId);
1463
1482
  }
@@ -1488,6 +1507,6 @@ const computePosition = (reference, floating, options) => {
1488
1507
  });
1489
1508
  };
1490
1509
 
1491
- export { autoUpdate as a, arrow as b, computePosition as c, autoPlacement as d, flip as f, inline as i, offset as o, shift as s };
1510
+ export { autoUpdate as a, arrow as b, computePosition as c, flip as f, inline as i, offset as o, shift as s };
1492
1511
 
1493
1512
  //# sourceMappingURL=floating-ui.dom.esm.js.map