@eightshift/ui-components 6.3.0 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (973) hide show
  1. package/dist/Button-h6xF_WrP.js +225 -0
  2. package/dist/Dialog-i5VLQw1o.js +2488 -0
  3. package/dist/Disclosure-NYWFw9RJ.js +188 -0
  4. package/dist/FieldError-BWDbP5Db.js +213 -0
  5. package/dist/FocusScope-CgwbGOBB.js +746 -0
  6. package/dist/Form-DTMkbrQY.js +5 -0
  7. package/dist/Heading-Hol-wS_B.js +16 -0
  8. package/dist/Hidden-8TB37dpK.js +51 -0
  9. package/dist/Input-BURqyJXW.js +161 -0
  10. package/dist/Label-DFXXxMKY.js +17 -0
  11. package/dist/List-CMK5qsNF.js +506 -0
  12. package/dist/ListBox-B21SgugS.js +601 -0
  13. package/dist/NumberFormatter-m5VW6MTK.js +122 -0
  14. package/dist/OverlayArrow-BoloUPQM.js +573 -0
  15. package/dist/PortalProvider-DinZZCKX.js +14 -0
  16. package/dist/RSPContexts-C_z0bI8W.js +12 -0
  17. package/dist/RadioGroup-BwlGtCja.js +329 -0
  18. package/dist/SearchField-DR_I4_yn.js +765 -0
  19. package/dist/SelectionIndicator-31L6EI9F.js +13 -0
  20. package/dist/SelectionManager-B8lLv6Ue.js +2176 -0
  21. package/dist/Slider-DW1RuMVp.js +827 -0
  22. package/dist/Text-O6VBBDlP.js +16 -0
  23. package/dist/VisuallyHidden-CfsnJHZb.js +43 -0
  24. package/dist/animation-Bd2peown.js +62 -0
  25. package/dist/assets/style-admin.css +197 -200
  26. package/dist/assets/style-editor.css +197 -200
  27. package/dist/assets/style.css +197 -200
  28. package/dist/build-module-sxK3nxOK.js +855 -0
  29. package/dist/button-COTeluL8.js +524 -0
  30. package/dist/checkbox-D0AWkLhp.js +338 -0
  31. package/dist/clsx-BUU5J41u.js +16 -0
  32. package/dist/color-swatch-CBYsO_Zs.js +2572 -0
  33. package/dist/components/animated-visibility/animated-visibility.js +87 -111
  34. package/dist/components/base-control/base-control.js +73 -86
  35. package/dist/components/base-control/container.js +199 -227
  36. package/dist/components/breakpoint-preview/breakpoint-preview.js +162 -158
  37. package/dist/components/button/button.js +3 -580
  38. package/dist/components/checkbox/checkbox.js +2 -391
  39. package/dist/components/color-pickers/color-picker.js +172 -276
  40. package/dist/components/color-pickers/color-swatch.js +3 -7
  41. package/dist/components/color-pickers/gradient-editor.js +4 -552
  42. package/dist/components/color-pickers/solid-color-picker.js +3 -1710
  43. package/dist/components/component-toggle/component-toggle.js +107 -160
  44. package/dist/components/container-panel/container-panel.js +94 -151
  45. package/dist/components/draggable/draggable-context.js +4 -4
  46. package/dist/components/draggable/draggable-handle.js +27 -43
  47. package/dist/components/draggable/draggable.js +3 -7638
  48. package/dist/components/draggable-list/draggable-list-context.js +4 -4
  49. package/dist/components/draggable-list/draggable-list-item.js +63 -80
  50. package/dist/components/draggable-list/draggable-list.js +115 -142
  51. package/dist/components/expandable/expandable.js +105 -407
  52. package/dist/components/index.js +30 -106
  53. package/dist/components/input-field/input-field.js +2 -326
  54. package/dist/components/item-collection/item-collection.js +50 -56
  55. package/dist/components/layout/hstack.js +27 -29
  56. package/dist/components/layout/vstack.js +27 -29
  57. package/dist/components/link-input/link-input.js +3 -1943
  58. package/dist/components/matrix-align/matrix-align.js +127 -161
  59. package/dist/components/menu/menu.js +253 -356
  60. package/dist/components/modal/modal.js +3 -399
  61. package/dist/components/notice/notice.js +99 -139
  62. package/dist/components/number-picker/number-picker.js +3 -344
  63. package/dist/components/option-select/option-select.js +226 -404
  64. package/dist/components/options-panel/options-panel.js +138 -175
  65. package/dist/components/placeholders/file-picker-shell.js +91 -141
  66. package/dist/components/placeholders/file-placeholder.js +41 -53
  67. package/dist/components/placeholders/image-placeholder.js +65 -96
  68. package/dist/components/placeholders/media-placeholder.js +65 -68
  69. package/dist/components/popover/popover.js +147 -221
  70. package/dist/components/portal-provider/portal-provider.js +23 -21
  71. package/dist/components/radio/radio.js +246 -294
  72. package/dist/components/repeater/repeater-context.js +4 -4
  73. package/dist/components/repeater/repeater-item.js +95 -114
  74. package/dist/components/repeater/repeater.js +221 -278
  75. package/dist/components/responsive/mini-responsive.js +403 -495
  76. package/dist/components/responsive/responsive-legacy.js +271 -336
  77. package/dist/components/responsive/responsive.js +445 -562
  78. package/dist/components/responsive-preview/responsive-preview.js +94 -117
  79. package/dist/components/rich-label/rich-label.js +80 -75
  80. package/dist/components/select/async-multi-select.js +360 -589
  81. package/dist/components/select/async-select.js +284 -492
  82. package/dist/components/select/multi-select.js +340 -552
  83. package/dist/components/select/shared.js +3 -17
  84. package/dist/components/select/single-select.js +278 -475
  85. package/dist/components/select/styles.js +84 -0
  86. package/dist/components/slider/column-config-slider.js +170 -301
  87. package/dist/components/slider/slider.js +258 -405
  88. package/dist/components/slider/utils.js +77 -121
  89. package/dist/components/smart-image/image-analysis-worker.js +128 -0
  90. package/dist/components/smart-image/smart-image.js +3 -205
  91. package/dist/components/smart-image/worker-inline.js +4 -4
  92. package/dist/components/spacer/spacer.js +80 -94
  93. package/dist/components/tabs/tabs.js +3 -1051
  94. package/dist/components/toggle/switch.js +2 -295
  95. package/dist/components/toggle/toggle.js +54 -64
  96. package/dist/components/toggle-button/toggle-button.js +2 -451
  97. package/dist/components/tooltip/tooltip.js +2 -535
  98. package/dist/context-C-XNeJ_l.js +93 -0
  99. package/dist/debounce-throttle-DXxSAKpq.js +120 -0
  100. package/dist/dist-DIK9pFxO.js +55 -0
  101. package/dist/draggable-CYQyD9gG.js +6961 -0
  102. package/dist/es-dash-HqXWZZ3_.js +303 -0
  103. package/dist/filterDOMProps-_2_3GD-K.js +69 -0
  104. package/dist/general-D-7dwhuF.js +4277 -0
  105. package/dist/gradient-editor-DbH8NU2p.js +604 -0
  106. package/dist/icons/block-icon.js +34 -39
  107. package/dist/icons/generated-icon-loaders.js +759 -0
  108. package/dist/icons/generic-color-swatch.js +81 -111
  109. package/dist/icons/icon.js +67 -0
  110. package/dist/icons/icons.js +218 -3656
  111. package/dist/icons/index.js +756 -10
  112. package/dist/icons/internal.js +758 -0
  113. package/dist/icons/jsx-svg.js +2 -94
  114. package/dist/icons/spinner.js +16 -18
  115. package/dist/icons/ui-icons/a11y-warning.js +34 -0
  116. package/dist/icons/ui-icons/a11y.js +29 -0
  117. package/dist/icons/ui-icons/accelerometer.js +51 -0
  118. package/dist/icons/ui-icons/activity-log.js +53 -0
  119. package/dist/icons/ui-icons/add.js +20 -0
  120. package/dist/icons/ui-icons/alert.js +31 -0
  121. package/dist/icons/ui-icons/align-horizontal-vertical-alt.js +37 -0
  122. package/dist/icons/ui-icons/align-horizontal-vertical-alt2.js +36 -0
  123. package/dist/icons/ui-icons/align-horizontal-vertical.js +34 -0
  124. package/dist/icons/ui-icons/alt-text-generic-alt.js +19 -0
  125. package/dist/icons/ui-icons/alt-text-generic.js +25 -0
  126. package/dist/icons/ui-icons/alt-text.js +36 -0
  127. package/dist/icons/ui-icons/anchor-page.js +44 -0
  128. package/dist/icons/ui-icons/anchor.js +28 -0
  129. package/dist/icons/ui-icons/angle.js +24 -0
  130. package/dist/icons/ui-icons/animation-file.js +66 -0
  131. package/dist/icons/ui-icons/animation-generic.js +36 -0
  132. package/dist/icons/ui-icons/animation-list-generic.js +41 -0
  133. package/dist/icons/ui-icons/animation-settings-generic.js +41 -0
  134. package/dist/icons/ui-icons/animation.js +55 -0
  135. package/dist/icons/ui-icons/archive-file.js +24 -0
  136. package/dist/icons/ui-icons/archive.js +39 -0
  137. package/dist/icons/ui-icons/aria-label.js +42 -0
  138. package/dist/icons/ui-icons/arrow-down-circle-alt.js +28 -0
  139. package/dist/icons/ui-icons/arrow-down-circle.js +28 -0
  140. package/dist/icons/ui-icons/arrow-down-square-alt.js +28 -0
  141. package/dist/icons/ui-icons/arrow-down-square.js +28 -0
  142. package/dist/icons/ui-icons/arrow-down.js +20 -0
  143. package/dist/icons/ui-icons/arrow-left-circle-alt.js +28 -0
  144. package/dist/icons/ui-icons/arrow-left-circle.js +28 -0
  145. package/dist/icons/ui-icons/arrow-left-square-alt.js +28 -0
  146. package/dist/icons/ui-icons/arrow-left-square.js +28 -0
  147. package/dist/icons/ui-icons/arrow-left.js +20 -0
  148. package/dist/icons/ui-icons/arrow-right-circle-alt.js +28 -0
  149. package/dist/icons/ui-icons/arrow-right-circle.js +28 -0
  150. package/dist/icons/ui-icons/arrow-right-square-alt.js +28 -0
  151. package/dist/icons/ui-icons/arrow-right-square.js +28 -0
  152. package/dist/icons/ui-icons/arrow-right.js +20 -0
  153. package/dist/icons/ui-icons/arrow-up-circle-alt.js +28 -0
  154. package/dist/icons/ui-icons/arrow-up-circle.js +28 -0
  155. package/dist/icons/ui-icons/arrow-up-square-alt.js +28 -0
  156. package/dist/icons/ui-icons/arrow-up-square.js +28 -0
  157. package/dist/icons/ui-icons/arrow-up.js +20 -0
  158. package/dist/icons/ui-icons/arrows-down.js +38 -0
  159. package/dist/icons/ui-icons/arrows-horizontal.js +20 -0
  160. package/dist/icons/ui-icons/arrows-left-diagonal.js +20 -0
  161. package/dist/icons/ui-icons/arrows-left.js +38 -0
  162. package/dist/icons/ui-icons/arrows-right-diagonal.js +20 -0
  163. package/dist/icons/ui-icons/arrows-right.js +38 -0
  164. package/dist/icons/ui-icons/arrows-up.js +38 -0
  165. package/dist/icons/ui-icons/arrows-vertical.js +20 -0
  166. package/dist/icons/ui-icons/aspect-ratio-auto.js +38 -0
  167. package/dist/icons/ui-icons/aspect-ratio-nine-sixteen.js +28 -0
  168. package/dist/icons/ui-icons/aspect-ratio-sixteen-nine.js +28 -0
  169. package/dist/icons/ui-icons/aspect-ratio-square.js +28 -0
  170. package/dist/icons/ui-icons/aspect-ratio-three-two.js +28 -0
  171. package/dist/icons/ui-icons/aspect-ratio-twenty-one-nine.js +28 -0
  172. package/dist/icons/ui-icons/aspect-ratio.js +27 -0
  173. package/dist/icons/ui-icons/attachment.js +19 -0
  174. package/dist/icons/ui-icons/auto-close.js +26 -0
  175. package/dist/icons/ui-icons/auto-pause-scroll.js +39 -0
  176. package/dist/icons/ui-icons/auto-pause.js +26 -0
  177. package/dist/icons/ui-icons/automatic-alt.js +19 -0
  178. package/dist/icons/ui-icons/automatic.js +20 -0
  179. package/dist/icons/ui-icons/autoplay-alt.js +34 -0
  180. package/dist/icons/ui-icons/autoplay-alt2.js +23 -0
  181. package/dist/icons/ui-icons/autoplay.js +36 -0
  182. package/dist/icons/ui-icons/award.js +39 -0
  183. package/dist/icons/ui-icons/background-blur.js +66 -0
  184. package/dist/icons/ui-icons/background-color-swatch.js +48 -0
  185. package/dist/icons/ui-icons/background-image.js +41 -0
  186. package/dist/icons/ui-icons/background-repeat.js +95 -0
  187. package/dist/icons/ui-icons/background-type-alt.js +38 -0
  188. package/dist/icons/ui-icons/background-type-alt2.js +27 -0
  189. package/dist/icons/ui-icons/background-type.js +27 -0
  190. package/dist/icons/ui-icons/block-parts.js +54 -0
  191. package/dist/icons/ui-icons/bold.js +21 -0
  192. package/dist/icons/ui-icons/book.js +40 -0
  193. package/dist/icons/ui-icons/bookmark.js +18 -0
  194. package/dist/icons/ui-icons/boolean-exclude.js +24 -0
  195. package/dist/icons/ui-icons/boolean-intersect.js +31 -0
  196. package/dist/icons/ui-icons/boolean-subtract.js +27 -0
  197. package/dist/icons/ui-icons/boolean-union.js +33 -0
  198. package/dist/icons/ui-icons/border-color.js +79 -0
  199. package/dist/icons/ui-icons/border.js +60 -0
  200. package/dist/icons/ui-icons/bot-deny.js +61 -0
  201. package/dist/icons/ui-icons/bot.js +47 -0
  202. package/dist/icons/ui-icons/box.js +35 -0
  203. package/dist/icons/ui-icons/brain.js +20 -0
  204. package/dist/icons/ui-icons/branch-fork.js +46 -0
  205. package/dist/icons/ui-icons/branch.js +46 -0
  206. package/dist/icons/ui-icons/briefcase.js +26 -0
  207. package/dist/icons/ui-icons/browser.js +60 -0
  208. package/dist/icons/ui-icons/button-disabled.js +30 -0
  209. package/dist/icons/ui-icons/button-filled.js +19 -0
  210. package/dist/icons/ui-icons/button-ghost.js +28 -0
  211. package/dist/icons/ui-icons/button-outline.js +27 -0
  212. package/dist/icons/ui-icons/calculator.js +139 -0
  213. package/dist/icons/ui-icons/calendar-add.js +51 -0
  214. package/dist/icons/ui-icons/calendar-download.js +62 -0
  215. package/dist/icons/ui-icons/calendar-remove.js +51 -0
  216. package/dist/icons/ui-icons/calendar.js +34 -0
  217. package/dist/icons/ui-icons/caption-generic.js +25 -0
  218. package/dist/icons/ui-icons/card-featured.js +28 -0
  219. package/dist/icons/ui-icons/caret-down-fill.js +19 -0
  220. package/dist/icons/ui-icons/caret-down.js +19 -0
  221. package/dist/icons/ui-icons/caret-left-fill.js +19 -0
  222. package/dist/icons/ui-icons/caret-left.js +19 -0
  223. package/dist/icons/ui-icons/caret-right-fill.js +19 -0
  224. package/dist/icons/ui-icons/caret-right.js +19 -0
  225. package/dist/icons/ui-icons/caret-up-fill.js +19 -0
  226. package/dist/icons/ui-icons/caret-up.js +19 -0
  227. package/dist/icons/ui-icons/center-point.js +25 -0
  228. package/dist/icons/ui-icons/chat-bubble-alt.js +25 -0
  229. package/dist/icons/ui-icons/chat-bubble.js +19 -0
  230. package/dist/icons/ui-icons/chat.js +25 -0
  231. package/dist/icons/ui-icons/check-circle-fill-transparent.js +24 -0
  232. package/dist/icons/ui-icons/check-circle-fill.js +17 -0
  233. package/dist/icons/ui-icons/check-circle.js +27 -0
  234. package/dist/icons/ui-icons/check-square.js +28 -0
  235. package/dist/icons/ui-icons/check.js +20 -0
  236. package/dist/icons/ui-icons/checks-circle.js +26 -0
  237. package/dist/icons/ui-icons/checks.js +26 -0
  238. package/dist/icons/ui-icons/chevron-down.js +20 -0
  239. package/dist/icons/ui-icons/chevron-left.js +20 -0
  240. package/dist/icons/ui-icons/chevron-right.js +20 -0
  241. package/dist/icons/ui-icons/chevron-up.js +20 -0
  242. package/dist/icons/ui-icons/clear-alt.js +25 -0
  243. package/dist/icons/ui-icons/clear.js +20 -0
  244. package/dist/icons/ui-icons/clipboard-plain.js +35 -0
  245. package/dist/icons/ui-icons/clipboard.js +43 -0
  246. package/dist/icons/ui-icons/clock.js +26 -0
  247. package/dist/icons/ui-icons/closed-captions.js +27 -0
  248. package/dist/icons/ui-icons/code-variable.js +20 -0
  249. package/dist/icons/ui-icons/code.js +20 -0
  250. package/dist/icons/ui-icons/color-alt.js +40 -0
  251. package/dist/icons/ui-icons/color-fill-swatch.js +61 -0
  252. package/dist/icons/ui-icons/color-picker-fill.js +42 -0
  253. package/dist/icons/ui-icons/color-picker-list-marker.js +41 -0
  254. package/dist/icons/ui-icons/color-picker-text-highlight.js +19 -0
  255. package/dist/icons/ui-icons/color-picker-text.js +20 -0
  256. package/dist/icons/ui-icons/color-select.js +33 -0
  257. package/dist/icons/ui-icons/color.js +22 -0
  258. package/dist/icons/ui-icons/column-gutters-lr.js +54 -0
  259. package/dist/icons/ui-icons/columns.js +42 -0
  260. package/dist/icons/ui-icons/columns3366.js +30 -0
  261. package/dist/icons/ui-icons/columns6633.js +30 -0
  262. package/dist/icons/ui-icons/component-generic.js +27 -0
  263. package/dist/icons/ui-icons/component-options.js +36 -0
  264. package/dist/icons/ui-icons/condition-h.js +20 -0
  265. package/dist/icons/ui-icons/condition-v.js +20 -0
  266. package/dist/icons/ui-icons/conditional-visibility.js +26 -0
  267. package/dist/icons/ui-icons/container-height.js +68 -0
  268. package/dist/icons/ui-icons/container-spacing-h.js +41 -0
  269. package/dist/icons/ui-icons/container-spacing.js +41 -0
  270. package/dist/icons/ui-icons/container-width.js +68 -0
  271. package/dist/icons/ui-icons/content-bottom-left.js +31 -0
  272. package/dist/icons/ui-icons/content-bottom-right.js +31 -0
  273. package/dist/icons/ui-icons/content-center.js +31 -0
  274. package/dist/icons/ui-icons/content-top-left.js +31 -0
  275. package/dist/icons/ui-icons/content-top-right.js +31 -0
  276. package/dist/icons/ui-icons/contrast-alt.js +27 -0
  277. package/dist/icons/ui-icons/contrast.js +26 -0
  278. package/dist/icons/ui-icons/cookie-alt.js +124 -0
  279. package/dist/icons/ui-icons/cookie.js +76 -0
  280. package/dist/icons/ui-icons/copy.js +26 -0
  281. package/dist/icons/ui-icons/currency.js +48 -0
  282. package/dist/icons/ui-icons/current-page.js +42 -0
  283. package/dist/icons/ui-icons/cursor-disabled.js +35 -0
  284. package/dist/icons/ui-icons/cursor-move.js +20 -0
  285. package/dist/icons/ui-icons/dark-mode.js +20 -0
  286. package/dist/icons/ui-icons/data.js +33 -0
  287. package/dist/icons/ui-icons/date-time.js +67 -0
  288. package/dist/icons/ui-icons/defer.js +26 -0
  289. package/dist/icons/ui-icons/description-link.js +40 -0
  290. package/dist/icons/ui-icons/design.js +48 -0
  291. package/dist/icons/ui-icons/dice.js +59 -0
  292. package/dist/icons/ui-icons/divider-bottom.js +23 -0
  293. package/dist/icons/ui-icons/divider-side.js +53 -0
  294. package/dist/icons/ui-icons/divider-status.js +53 -0
  295. package/dist/icons/ui-icons/divider-top.js +23 -0
  296. package/dist/icons/ui-icons/divider.js +23 -0
  297. package/dist/icons/ui-icons/door-in.js +32 -0
  298. package/dist/icons/ui-icons/door-out.js +32 -0
  299. package/dist/icons/ui-icons/door.js +27 -0
  300. package/dist/icons/ui-icons/download.js +20 -0
  301. package/dist/icons/ui-icons/dropdown-caret-alt.js +17 -0
  302. package/dist/icons/ui-icons/dropdown-caret.js +20 -0
  303. package/dist/icons/ui-icons/dropdown-close.js +52 -0
  304. package/dist/icons/ui-icons/dropdown-open.js +38 -0
  305. package/dist/icons/ui-icons/dropdown.js +38 -0
  306. package/dist/icons/ui-icons/dummy-spacer.js +17 -0
  307. package/dist/icons/ui-icons/edit-options.js +32 -0
  308. package/dist/icons/ui-icons/edit.js +22 -0
  309. package/dist/icons/ui-icons/email-remove.js +42 -0
  310. package/dist/icons/ui-icons/email.js +28 -0
  311. package/dist/icons/ui-icons/embed.js +28 -0
  312. package/dist/icons/ui-icons/empty-circle.js +23 -0
  313. package/dist/icons/ui-icons/empty-rect.js +25 -0
  314. package/dist/icons/ui-icons/equal-columns.js +25 -0
  315. package/dist/icons/ui-icons/equal-rows.js +25 -0
  316. package/dist/icons/ui-icons/equals.js +20 -0
  317. package/dist/icons/ui-icons/error-circle-fill-transparent.js +23 -0
  318. package/dist/icons/ui-icons/error-circle-fill.js +17 -0
  319. package/dist/icons/ui-icons/error-circle.js +24 -0
  320. package/dist/icons/ui-icons/exclude-item-alt.js +38 -0
  321. package/dist/icons/ui-icons/exclude-item.js +42 -0
  322. package/dist/icons/ui-icons/exclude.js +29 -0
  323. package/dist/icons/ui-icons/expand-xl.js +20 -0
  324. package/dist/icons/ui-icons/expand.js +20 -0
  325. package/dist/icons/ui-icons/experiment.js +33 -0
  326. package/dist/icons/ui-icons/external-link.js +25 -0
  327. package/dist/icons/ui-icons/extract-alt.js +25 -0
  328. package/dist/icons/ui-icons/extract.js +25 -0
  329. package/dist/icons/ui-icons/eyedropper.js +36 -0
  330. package/dist/icons/ui-icons/fast-forward.js +26 -0
  331. package/dist/icons/ui-icons/fast-reverse.js +26 -0
  332. package/dist/icons/ui-icons/field-after-text.js +54 -0
  333. package/dist/icons/ui-icons/field-before-text.js +46 -0
  334. package/dist/icons/ui-icons/field-disabled.js +35 -0
  335. package/dist/icons/ui-icons/field-help.js +46 -0
  336. package/dist/icons/ui-icons/field-label.js +38 -0
  337. package/dist/icons/ui-icons/field-name.js +45 -0
  338. package/dist/icons/ui-icons/field-placeholder.js +49 -0
  339. package/dist/icons/ui-icons/field-readonly.js +36 -0
  340. package/dist/icons/ui-icons/field-required.js +37 -0
  341. package/dist/icons/ui-icons/field-type.js +36 -0
  342. package/dist/icons/ui-icons/field-value.js +46 -0
  343. package/dist/icons/ui-icons/field-width.js +27 -0
  344. package/dist/icons/ui-icons/file-download.js +33 -0
  345. package/dist/icons/ui-icons/file-error.js +25 -0
  346. package/dist/icons/ui-icons/file-metadata.js +41 -0
  347. package/dist/icons/ui-icons/file-pdf.js +34 -0
  348. package/dist/icons/ui-icons/file-size-max.js +33 -0
  349. package/dist/icons/ui-icons/file-size-min.js +33 -0
  350. package/dist/icons/ui-icons/file-size.js +34 -0
  351. package/dist/icons/ui-icons/file-type.js +42 -0
  352. package/dist/icons/ui-icons/file-upload.js +33 -0
  353. package/dist/icons/ui-icons/file.js +24 -0
  354. package/dist/icons/ui-icons/files.js +34 -0
  355. package/dist/icons/ui-icons/fill-color.js +49 -0
  356. package/dist/icons/ui-icons/filter-alt.js +24 -0
  357. package/dist/icons/ui-icons/filter.js +20 -0
  358. package/dist/icons/ui-icons/flag-alt.js +24 -0
  359. package/dist/icons/ui-icons/flag.js +24 -0
  360. package/dist/icons/ui-icons/flip-h.js +27 -0
  361. package/dist/icons/ui-icons/flip-v.js +27 -0
  362. package/dist/icons/ui-icons/focus.js +21 -0
  363. package/dist/icons/ui-icons/folder-add.js +22 -0
  364. package/dist/icons/ui-icons/folder-open-solid.js +17 -0
  365. package/dist/icons/ui-icons/folder-open.js +19 -0
  366. package/dist/icons/ui-icons/folder-solid.js +17 -0
  367. package/dist/icons/ui-icons/folder-top-level.js +22 -0
  368. package/dist/icons/ui-icons/folder.js +19 -0
  369. package/dist/icons/ui-icons/font-family.js +24 -0
  370. package/dist/icons/ui-icons/footer.js +23 -0
  371. package/dist/icons/ui-icons/form-alt.js +71 -0
  372. package/dist/icons/ui-icons/form.js +53 -0
  373. package/dist/icons/ui-icons/four-columns.js +38 -0
  374. package/dist/icons/ui-icons/frame.js +33 -0
  375. package/dist/icons/ui-icons/full-max-shield.js +26 -0
  376. package/dist/icons/ui-icons/full-max-text.js +20 -0
  377. package/dist/icons/ui-icons/full-width-image.js +35 -0
  378. package/dist/icons/ui-icons/gears-fill.js +19 -0
  379. package/dist/icons/ui-icons/gears.js +38 -0
  380. package/dist/icons/ui-icons/generic-color-swatch.js +6 -0
  381. package/dist/icons/ui-icons/generic-shapes-alt.js +33 -0
  382. package/dist/icons/ui-icons/generic-shapes.js +38 -0
  383. package/dist/icons/ui-icons/globe-anchor.js +55 -0
  384. package/dist/icons/ui-icons/globe-hash.js +40 -0
  385. package/dist/icons/ui-icons/globe.js +37 -0
  386. package/dist/icons/ui-icons/google-tag-manager.js +36 -0
  387. package/dist/icons/ui-icons/gradient-repeat.js +41 -0
  388. package/dist/icons/ui-icons/gradient-stop.js +36 -0
  389. package/dist/icons/ui-icons/gradient.js +54 -0
  390. package/dist/icons/ui-icons/grid-alt.js +19 -0
  391. package/dist/icons/ui-icons/grid-auto-cols.js +46 -0
  392. package/dist/icons/ui-icons/grid-auto-rows.js +41 -0
  393. package/dist/icons/ui-icons/grid-col.js +22 -0
  394. package/dist/icons/ui-icons/grid-height.js +22 -0
  395. package/dist/icons/ui-icons/grid-list-toggle.js +48 -0
  396. package/dist/icons/ui-icons/grid-manual.js +18 -0
  397. package/dist/icons/ui-icons/grid-row.js +22 -0
  398. package/dist/icons/ui-icons/grid-width.js +22 -0
  399. package/dist/icons/ui-icons/group.js +33 -0
  400. package/dist/icons/ui-icons/gutter.js +28 -0
  401. package/dist/icons/ui-icons/gyroscope.js +53 -0
  402. package/dist/icons/ui-icons/h1.js +28 -0
  403. package/dist/icons/ui-icons/h2.js +28 -0
  404. package/dist/icons/ui-icons/h3.js +28 -0
  405. package/dist/icons/ui-icons/h4.js +28 -0
  406. package/dist/icons/ui-icons/h5.js +28 -0
  407. package/dist/icons/ui-icons/h6.js +28 -0
  408. package/dist/icons/ui-icons/hamburger-menu.js +19 -0
  409. package/dist/icons/ui-icons/hard-drive.js +35 -0
  410. package/dist/icons/ui-icons/header.js +23 -0
  411. package/dist/icons/ui-icons/heading-level-alt.js +28 -0
  412. package/dist/icons/ui-icons/heading-level.js +28 -0
  413. package/dist/icons/ui-icons/heading.js +20 -0
  414. package/dist/icons/ui-icons/heart-fill-transparent.js +19 -0
  415. package/dist/icons/ui-icons/heart-fill.js +18 -0
  416. package/dist/icons/ui-icons/heart.js +18 -0
  417. package/dist/icons/ui-icons/height.js +30 -0
  418. package/dist/icons/ui-icons/help-fill.js +19 -0
  419. package/dist/icons/ui-icons/help.js +38 -0
  420. package/dist/icons/ui-icons/hide.js +29 -0
  421. package/dist/icons/ui-icons/highlighted-checkmark.js +24 -0
  422. package/dist/icons/ui-icons/highlighted-exclamation-mark.js +33 -0
  423. package/dist/icons/ui-icons/history.js +26 -0
  424. package/dist/icons/ui-icons/horizontal-align-alt.js +27 -0
  425. package/dist/icons/ui-icons/horizontal-align-around.js +37 -0
  426. package/dist/icons/ui-icons/horizontal-align-between-alt.js +37 -0
  427. package/dist/icons/ui-icons/horizontal-align-between.js +46 -0
  428. package/dist/icons/ui-icons/horizontal-align-center.js +41 -0
  429. package/dist/icons/ui-icons/horizontal-align-evenly.js +37 -0
  430. package/dist/icons/ui-icons/horizontal-align-left.js +44 -0
  431. package/dist/icons/ui-icons/horizontal-align-right.js +48 -0
  432. package/dist/icons/ui-icons/horizontal-align-stretch.js +37 -0
  433. package/dist/icons/ui-icons/horizontal-align.js +35 -0
  434. package/dist/icons/ui-icons/hover-background-glow.js +61 -0
  435. package/dist/icons/ui-icons/hover-background-type.js +34 -0
  436. package/dist/icons/ui-icons/hover-invert-object.js +42 -0
  437. package/dist/icons/ui-icons/hover-invert-text.js +32 -0
  438. package/dist/icons/ui-icons/hover-rotate.js +20 -0
  439. package/dist/icons/ui-icons/hover-zoom.js +25 -0
  440. package/dist/icons/ui-icons/hyphenate-alt.js +20 -0
  441. package/dist/icons/ui-icons/hyphenate-alt2.js +20 -0
  442. package/dist/icons/ui-icons/hyphenate.js +25 -0
  443. package/dist/icons/ui-icons/icon-generic.js +23 -0
  444. package/dist/icons/ui-icons/id-card.js +45 -0
  445. package/dist/icons/ui-icons/id.js +28 -0
  446. package/dist/icons/ui-icons/image-blur.js +50 -0
  447. package/dist/icons/ui-icons/image-caption.js +36 -0
  448. package/dist/icons/ui-icons/image-error.js +36 -0
  449. package/dist/icons/ui-icons/image-file.js +40 -0
  450. package/dist/icons/ui-icons/image-lazy-load.js +52 -0
  451. package/dist/icons/ui-icons/image-opacity.js +31 -0
  452. package/dist/icons/ui-icons/image-overlay-alt.js +93 -0
  453. package/dist/icons/ui-icons/image-overlay-alt2.js +93 -0
  454. package/dist/icons/ui-icons/image-overlay.js +92 -0
  455. package/dist/icons/ui-icons/image-remove.js +46 -0
  456. package/dist/icons/ui-icons/image.js +25 -0
  457. package/dist/icons/ui-icons/index.js +753 -0
  458. package/dist/icons/ui-icons/info-circle-fill-transparent.js +21 -0
  459. package/dist/icons/ui-icons/info-circle-fill.js +17 -0
  460. package/dist/icons/ui-icons/info-circle.js +24 -0
  461. package/dist/icons/ui-icons/info.js +17 -0
  462. package/dist/icons/ui-icons/inherit.js +41 -0
  463. package/dist/icons/ui-icons/inline-gradient-format.js +62 -0
  464. package/dist/icons/ui-icons/input-field.js +27 -0
  465. package/dist/icons/ui-icons/italic.js +20 -0
  466. package/dist/icons/ui-icons/item-limit.js +35 -0
  467. package/dist/icons/ui-icons/item-select.js +33 -0
  468. package/dist/icons/ui-icons/item-wrap.js +60 -0
  469. package/dist/icons/ui-icons/items-per-page.js +48 -0
  470. package/dist/icons/ui-icons/items-per-row.js +45 -0
  471. package/dist/icons/ui-icons/key.js +25 -0
  472. package/dist/icons/ui-icons/keyboard.js +19 -0
  473. package/dist/icons/ui-icons/large.js +24 -0
  474. package/dist/icons/ui-icons/latest-posts.js +44 -0
  475. package/dist/icons/ui-icons/layer-off.js +20 -0
  476. package/dist/icons/ui-icons/layer.js +19 -0
  477. package/dist/icons/ui-icons/layers.js +33 -0
  478. package/dist/icons/ui-icons/layout-alt.js +19 -0
  479. package/dist/icons/ui-icons/layout-alt2.js +23 -0
  480. package/dist/icons/ui-icons/layout-alt3.js +19 -0
  481. package/dist/icons/ui-icons/layout-alt4.js +19 -0
  482. package/dist/icons/ui-icons/layout-bento-box.js +19 -0
  483. package/dist/icons/ui-icons/layout-masonry.js +79 -0
  484. package/dist/icons/ui-icons/layout.js +43 -0
  485. package/dist/icons/ui-icons/left-panel-alt.js +25 -0
  486. package/dist/icons/ui-icons/left-panel.js +22 -0
  487. package/dist/icons/ui-icons/light-bulb-alt.js +30 -0
  488. package/dist/icons/ui-icons/light-bulb.js +33 -0
  489. package/dist/icons/ui-icons/light-mode.js +26 -0
  490. package/dist/icons/ui-icons/limit-width.js +26 -0
  491. package/dist/icons/ui-icons/line-break-alt-off.js +26 -0
  492. package/dist/icons/ui-icons/line-break-alt.js +25 -0
  493. package/dist/icons/ui-icons/line-break-off-alt.js +35 -0
  494. package/dist/icons/ui-icons/line-break-off.js +41 -0
  495. package/dist/icons/ui-icons/line-break.js +29 -0
  496. package/dist/icons/ui-icons/line-breaks-hyphenation.js +36 -0
  497. package/dist/icons/ui-icons/link-add.js +41 -0
  498. package/dist/icons/ui-icons/link-nav.js +59 -0
  499. package/dist/icons/ui-icons/link-remove.js +41 -0
  500. package/dist/icons/ui-icons/link.js +19 -0
  501. package/dist/icons/ui-icons/list-indent.js +26 -0
  502. package/dist/icons/ui-icons/list-ordered.js +43 -0
  503. package/dist/icons/ui-icons/list-outdent.js +26 -0
  504. package/dist/icons/ui-icons/list-unordered.js +43 -0
  505. package/dist/icons/ui-icons/loader-alt.js +19 -0
  506. package/dist/icons/ui-icons/loader.js +19 -0
  507. package/dist/icons/ui-icons/location-add.js +44 -0
  508. package/dist/icons/ui-icons/location-allow.js +44 -0
  509. package/dist/icons/ui-icons/location-deny.js +44 -0
  510. package/dist/icons/ui-icons/location-settings.js +36 -0
  511. package/dist/icons/ui-icons/location.js +26 -0
  512. package/dist/icons/ui-icons/lock.js +44 -0
  513. package/dist/icons/ui-icons/loop-mode.js +20 -0
  514. package/dist/icons/ui-icons/magic-alt-fill-transparent.js +20 -0
  515. package/dist/icons/ui-icons/magic-alt-fill.js +19 -0
  516. package/dist/icons/ui-icons/magic-alt.js +19 -0
  517. package/dist/icons/ui-icons/magic-fill-transparent.js +20 -0
  518. package/dist/icons/ui-icons/magic-fill.js +19 -0
  519. package/dist/icons/ui-icons/magic.js +19 -0
  520. package/dist/icons/ui-icons/map-layer-json.js +35 -0
  521. package/dist/icons/ui-icons/map-layer-raster.js +121 -0
  522. package/dist/icons/ui-icons/map-layer-vector.js +81 -0
  523. package/dist/icons/ui-icons/map-layer.js +26 -0
  524. package/dist/icons/ui-icons/map-pin.js +41 -0
  525. package/dist/icons/ui-icons/matrix-align-control-dot-active.js +23 -0
  526. package/dist/icons/ui-icons/matrix-align-control-dot-inactive.js +21 -0
  527. package/dist/icons/ui-icons/media.js +49 -0
  528. package/dist/icons/ui-icons/medium.js +24 -0
  529. package/dist/icons/ui-icons/menu-item-check.js +20 -0
  530. package/dist/icons/ui-icons/menu-item-circle.js +19 -0
  531. package/dist/icons/ui-icons/microphone.js +23 -0
  532. package/dist/icons/ui-icons/migration-alt-v.js +20 -0
  533. package/dist/icons/ui-icons/migration-alt.js +20 -0
  534. package/dist/icons/ui-icons/migration.js +26 -0
  535. package/dist/icons/ui-icons/module.js +24 -0
  536. package/dist/icons/ui-icons/money-paper.js +58 -0
  537. package/dist/icons/ui-icons/more-h-circle.js +40 -0
  538. package/dist/icons/ui-icons/more-h.js +33 -0
  539. package/dist/icons/ui-icons/more-v-circle.js +44 -0
  540. package/dist/icons/ui-icons/more-v.js +36 -0
  541. package/dist/icons/ui-icons/mouse-cursor.js +20 -0
  542. package/dist/icons/ui-icons/mouse-wheel.js +27 -0
  543. package/dist/icons/ui-icons/multi-item-left-inset-mobile.js +58 -0
  544. package/dist/icons/ui-icons/multi-item-left-inset.js +39 -0
  545. package/dist/icons/ui-icons/multi-item-right-inset-mobile.js +55 -0
  546. package/dist/icons/ui-icons/multi-item-right-inset.js +36 -0
  547. package/dist/icons/ui-icons/multiple.js +34 -0
  548. package/dist/icons/ui-icons/music-note.js +40 -0
  549. package/dist/icons/ui-icons/mute-centered.js +20 -0
  550. package/dist/icons/ui-icons/mute.js +20 -0
  551. package/dist/icons/ui-icons/narrow-bottom.js +49 -0
  552. package/dist/icons/ui-icons/narrow-left.js +49 -0
  553. package/dist/icons/ui-icons/narrow-right.js +49 -0
  554. package/dist/icons/ui-icons/narrow-top.js +49 -0
  555. package/dist/icons/ui-icons/navigation-buttons.js +39 -0
  556. package/dist/icons/ui-icons/new-tab.js +27 -0
  557. package/dist/icons/ui-icons/newspaper.js +45 -0
  558. package/dist/icons/ui-icons/none.js +25 -0
  559. package/dist/icons/ui-icons/notebook.js +44 -0
  560. package/dist/icons/ui-icons/num0-circle-alt.js +24 -0
  561. package/dist/icons/ui-icons/num0-circle.js +24 -0
  562. package/dist/icons/ui-icons/num0-square-alt.js +26 -0
  563. package/dist/icons/ui-icons/num0-square.js +26 -0
  564. package/dist/icons/ui-icons/num1-circle-alt.js +26 -0
  565. package/dist/icons/ui-icons/num1-circle.js +26 -0
  566. package/dist/icons/ui-icons/num1-square-alt.js +28 -0
  567. package/dist/icons/ui-icons/num1-square.js +28 -0
  568. package/dist/icons/ui-icons/num2-circle-alt.js +26 -0
  569. package/dist/icons/ui-icons/num2-circle.js +26 -0
  570. package/dist/icons/ui-icons/num2-square-alt.js +28 -0
  571. package/dist/icons/ui-icons/num2-square.js +28 -0
  572. package/dist/icons/ui-icons/num3-circle-alt.js +26 -0
  573. package/dist/icons/ui-icons/num3-circle.js +26 -0
  574. package/dist/icons/ui-icons/num3-square-alt.js +28 -0
  575. package/dist/icons/ui-icons/num3-square.js +28 -0
  576. package/dist/icons/ui-icons/num4-circle-alt.js +26 -0
  577. package/dist/icons/ui-icons/num4-circle.js +26 -0
  578. package/dist/icons/ui-icons/num4-square-alt.js +28 -0
  579. package/dist/icons/ui-icons/num4-square.js +28 -0
  580. package/dist/icons/ui-icons/num5-circle-alt.js +26 -0
  581. package/dist/icons/ui-icons/num5-circle.js +26 -0
  582. package/dist/icons/ui-icons/num5-square-alt.js +28 -0
  583. package/dist/icons/ui-icons/num5-square.js +28 -0
  584. package/dist/icons/ui-icons/num6-circle-alt.js +26 -0
  585. package/dist/icons/ui-icons/num6-circle.js +26 -0
  586. package/dist/icons/ui-icons/num6-square-alt.js +28 -0
  587. package/dist/icons/ui-icons/num6-square.js +28 -0
  588. package/dist/icons/ui-icons/num7-circle-alt.js +26 -0
  589. package/dist/icons/ui-icons/num7-circle.js +26 -0
  590. package/dist/icons/ui-icons/num7-square-alt.js +28 -0
  591. package/dist/icons/ui-icons/num7-square.js +28 -0
  592. package/dist/icons/ui-icons/num8-circle-alt.js +24 -0
  593. package/dist/icons/ui-icons/num8-circle.js +24 -0
  594. package/dist/icons/ui-icons/num8-square-alt.js +26 -0
  595. package/dist/icons/ui-icons/num8-square.js +26 -0
  596. package/dist/icons/ui-icons/num9-circle-alt.js +26 -0
  597. package/dist/icons/ui-icons/num9-circle.js +26 -0
  598. package/dist/icons/ui-icons/num9-square-alt.js +28 -0
  599. package/dist/icons/ui-icons/num9-square.js +28 -0
  600. package/dist/icons/ui-icons/office-building.js +203 -0
  601. package/dist/icons/ui-icons/office-buildings.js +256 -0
  602. package/dist/icons/ui-icons/offset-auto.js +46 -0
  603. package/dist/icons/ui-icons/offset.js +39 -0
  604. package/dist/icons/ui-icons/option-list-alt.js +61 -0
  605. package/dist/icons/ui-icons/option-list.js +63 -0
  606. package/dist/icons/ui-icons/options.js +24 -0
  607. package/dist/icons/ui-icons/order.js +49 -0
  608. package/dist/icons/ui-icons/padding-bottom.js +35 -0
  609. package/dist/icons/ui-icons/padding-top.js +35 -0
  610. package/dist/icons/ui-icons/padding.js +34 -0
  611. package/dist/icons/ui-icons/pagination.js +49 -0
  612. package/dist/icons/ui-icons/palette-color.js +111 -0
  613. package/dist/icons/ui-icons/panel-collapse.js +41 -0
  614. package/dist/icons/ui-icons/panel-expand.js +41 -0
  615. package/dist/icons/ui-icons/paragraph.js +24 -0
  616. package/dist/icons/ui-icons/paste.js +52 -0
  617. package/dist/icons/ui-icons/pause.js +20 -0
  618. package/dist/icons/ui-icons/people-group.js +57 -0
  619. package/dist/icons/ui-icons/people.js +43 -0
  620. package/dist/icons/ui-icons/person.js +26 -0
  621. package/dist/icons/ui-icons/photo-camera.js +26 -0
  622. package/dist/icons/ui-icons/picture-in-picture.js +33 -0
  623. package/dist/icons/ui-icons/play-reverse.js +20 -0
  624. package/dist/icons/ui-icons/play.js +20 -0
  625. package/dist/icons/ui-icons/playback-options.js +24 -0
  626. package/dist/icons/ui-icons/plus-circle-fill-alt.js +23 -0
  627. package/dist/icons/ui-icons/plus-circle-fill.js +17 -0
  628. package/dist/icons/ui-icons/plus-circle.js +26 -0
  629. package/dist/icons/ui-icons/plus-minus-buttons-h.js +25 -0
  630. package/dist/icons/ui-icons/plus-minus-buttons-v.js +25 -0
  631. package/dist/icons/ui-icons/plus-square-fill-transparent.js +27 -0
  632. package/dist/icons/ui-icons/plus-square-fill.js +17 -0
  633. package/dist/icons/ui-icons/plus-square.js +27 -0
  634. package/dist/icons/ui-icons/pointer-hand-disabled.js +34 -0
  635. package/dist/icons/ui-icons/pointer-hand.js +20 -0
  636. package/dist/icons/ui-icons/position-arrows-h.js +26 -0
  637. package/dist/icons/ui-icons/position-arrows-inverted-h.js +26 -0
  638. package/dist/icons/ui-icons/position-arrows-inverted-v.js +26 -0
  639. package/dist/icons/ui-icons/position-arrows-inverted.js +26 -0
  640. package/dist/icons/ui-icons/position-arrows-v.js +26 -0
  641. package/dist/icons/ui-icons/position-arrows.js +26 -0
  642. package/dist/icons/ui-icons/position-h-center.js +43 -0
  643. package/dist/icons/ui-icons/position-h-end.js +43 -0
  644. package/dist/icons/ui-icons/position-h-start.js +43 -0
  645. package/dist/icons/ui-icons/position-left.js +31 -0
  646. package/dist/icons/ui-icons/position-right.js +31 -0
  647. package/dist/icons/ui-icons/position-v-center.js +43 -0
  648. package/dist/icons/ui-icons/position-v-end.js +43 -0
  649. package/dist/icons/ui-icons/position-v-start.js +43 -0
  650. package/dist/icons/ui-icons/position2x2-bottom-left.js +52 -0
  651. package/dist/icons/ui-icons/position2x2-bottom-right.js +52 -0
  652. package/dist/icons/ui-icons/position2x2-empty.js +51 -0
  653. package/dist/icons/ui-icons/position2x2-top-left.js +52 -0
  654. package/dist/icons/ui-icons/position2x2-top-right.js +52 -0
  655. package/dist/icons/ui-icons/position3x3-bottom-center.js +97 -0
  656. package/dist/icons/ui-icons/position3x3-bottom-left.js +97 -0
  657. package/dist/icons/ui-icons/position3x3-bottom-right.js +97 -0
  658. package/dist/icons/ui-icons/position3x3-center-center.js +97 -0
  659. package/dist/icons/ui-icons/position3x3-center-left.js +97 -0
  660. package/dist/icons/ui-icons/position3x3-center-right.js +97 -0
  661. package/dist/icons/ui-icons/position3x3-empty.js +96 -0
  662. package/dist/icons/ui-icons/position3x3-top-center.js +97 -0
  663. package/dist/icons/ui-icons/position3x3-top-left.js +97 -0
  664. package/dist/icons/ui-icons/position3x3-top-right.js +97 -0
  665. package/dist/icons/ui-icons/positioning-guide-alt.js +30 -0
  666. package/dist/icons/ui-icons/positioning-guide.js +30 -0
  667. package/dist/icons/ui-icons/positioning-width-guide.js +40 -0
  668. package/dist/icons/ui-icons/preload.js +44 -0
  669. package/dist/icons/ui-icons/preview-responsive.js +48 -0
  670. package/dist/icons/ui-icons/preview.js +35 -0
  671. package/dist/icons/ui-icons/progressbar-intermittent.js +26 -0
  672. package/dist/icons/ui-icons/progressbar.js +30 -0
  673. package/dist/icons/ui-icons/range-max.js +48 -0
  674. package/dist/icons/ui-icons/range-mid.js +40 -0
  675. package/dist/icons/ui-icons/range-min.js +48 -0
  676. package/dist/icons/ui-icons/range.js +61 -0
  677. package/dist/icons/ui-icons/read-only.js +25 -0
  678. package/dist/icons/ui-icons/reduce-height-bottom.js +49 -0
  679. package/dist/icons/ui-icons/reduce-height-top.js +49 -0
  680. package/dist/icons/ui-icons/regex.js +39 -0
  681. package/dist/icons/ui-icons/remove.js +20 -0
  682. package/dist/icons/ui-icons/rename.js +24 -0
  683. package/dist/icons/ui-icons/reorder-grabber-h.js +51 -0
  684. package/dist/icons/ui-icons/reorder-grabber-v.js +57 -0
  685. package/dist/icons/ui-icons/reorder.js +35 -0
  686. package/dist/icons/ui-icons/required-alt.js +20 -0
  687. package/dist/icons/ui-icons/required.js +19 -0
  688. package/dist/icons/ui-icons/reset-to-zero.js +33 -0
  689. package/dist/icons/ui-icons/reset.js +25 -0
  690. package/dist/icons/ui-icons/responsive-overrides-alt-fill.js +26 -0
  691. package/dist/icons/ui-icons/responsive-overrides-alt.js +49 -0
  692. package/dist/icons/ui-icons/responsive-overrides-alt2-fill.js +34 -0
  693. package/dist/icons/ui-icons/responsive-overrides-alt2.js +45 -0
  694. package/dist/icons/ui-icons/responsive-overrides-alt3-fill.js +33 -0
  695. package/dist/icons/ui-icons/responsive-overrides.js +39 -0
  696. package/dist/icons/ui-icons/responsive.js +33 -0
  697. package/dist/icons/ui-icons/right-panel-alt.js +23 -0
  698. package/dist/icons/ui-icons/right-panel.js +22 -0
  699. package/dist/icons/ui-icons/rotate-left.js +20 -0
  700. package/dist/icons/ui-icons/rotate-right.js +20 -0
  701. package/dist/icons/ui-icons/rounded-corners.js +19 -0
  702. package/dist/icons/ui-icons/route.js +27 -0
  703. package/dist/icons/ui-icons/row-add.js +45 -0
  704. package/dist/icons/ui-icons/row-empty.js +51 -0
  705. package/dist/icons/ui-icons/row.js +45 -0
  706. package/dist/icons/ui-icons/rows.js +42 -0
  707. package/dist/icons/ui-icons/ruler.js +28 -0
  708. package/dist/icons/ui-icons/save.js +26 -0
  709. package/dist/icons/ui-icons/screen-desktop.js +32 -0
  710. package/dist/icons/ui-icons/screen-large.js +23 -0
  711. package/dist/icons/ui-icons/screen-mobile.js +39 -0
  712. package/dist/icons/ui-icons/screen-tablet-large.js +36 -0
  713. package/dist/icons/ui-icons/screen-tablet.js +36 -0
  714. package/dist/icons/ui-icons/scrollbar-h.js +40 -0
  715. package/dist/icons/ui-icons/scrollbar-v.js +41 -0
  716. package/dist/icons/ui-icons/scrollbars.js +55 -0
  717. package/dist/icons/ui-icons/search-empty.js +37 -0
  718. package/dist/icons/ui-icons/search.js +25 -0
  719. package/dist/icons/ui-icons/separator-h.js +41 -0
  720. package/dist/icons/ui-icons/separator-v.js +39 -0
  721. package/dist/icons/ui-icons/shadow.js +61 -0
  722. package/dist/icons/ui-icons/share.js +26 -0
  723. package/dist/icons/ui-icons/shield-plus-alt.js +27 -0
  724. package/dist/icons/ui-icons/shield-plus.js +20 -0
  725. package/dist/icons/ui-icons/shield.js +20 -0
  726. package/dist/icons/ui-icons/shrink-diagonal-left-xl.js +20 -0
  727. package/dist/icons/ui-icons/shrink-diagonal-left.js +20 -0
  728. package/dist/icons/ui-icons/shrink-diagonal-right-xl.js +20 -0
  729. package/dist/icons/ui-icons/shrink-diagonal-right.js +20 -0
  730. package/dist/icons/ui-icons/shrink-xl.js +20 -0
  731. package/dist/icons/ui-icons/shrink.js +20 -0
  732. package/dist/icons/ui-icons/shuffle.js +20 -0
  733. package/dist/icons/ui-icons/sidebar-flip.js +22 -0
  734. package/dist/icons/ui-icons/sidebar.js +22 -0
  735. package/dist/icons/ui-icons/single-item-left-inset-mobile.js +48 -0
  736. package/dist/icons/ui-icons/single-item-left-inset.js +23 -0
  737. package/dist/icons/ui-icons/single-item-right-inset-mobile.js +50 -0
  738. package/dist/icons/ui-icons/single-item-right-inset.js +23 -0
  739. package/dist/icons/ui-icons/size-alt.js +33 -0
  740. package/dist/icons/ui-icons/size.js +29 -0
  741. package/dist/icons/ui-icons/slider.js +31 -0
  742. package/dist/icons/ui-icons/sliders.js +68 -0
  743. package/dist/icons/ui-icons/small.js +24 -0
  744. package/dist/icons/ui-icons/solid-circle-fill-transparent.js +22 -0
  745. package/dist/icons/ui-icons/solid-circle-filled.js +21 -0
  746. package/dist/icons/ui-icons/solid-circle-gradient.js +31 -0
  747. package/dist/icons/ui-icons/solid-circle.js +21 -0
  748. package/dist/icons/ui-icons/solid-color.js +19 -0
  749. package/dist/icons/ui-icons/solid-rect-fill-transparent.js +24 -0
  750. package/dist/icons/ui-icons/solid-rect-filled.js +23 -0
  751. package/dist/icons/ui-icons/solid-rect-gradient.js +33 -0
  752. package/dist/icons/ui-icons/solid-rect.js +23 -0
  753. package/dist/icons/ui-icons/sort-asc.js +20 -0
  754. package/dist/icons/ui-icons/sort-desc.js +20 -0
  755. package/dist/icons/ui-icons/sort-generic.js +25 -0
  756. package/dist/icons/ui-icons/spacing-bottom-in.js +23 -0
  757. package/dist/icons/ui-icons/spacing-bottom.js +23 -0
  758. package/dist/icons/ui-icons/spacing-left-in.js +23 -0
  759. package/dist/icons/ui-icons/spacing-left.js +23 -0
  760. package/dist/icons/ui-icons/spacing-right-in.js +23 -0
  761. package/dist/icons/ui-icons/spacing-right.js +23 -0
  762. package/dist/icons/ui-icons/spacing-top-in.js +23 -0
  763. package/dist/icons/ui-icons/spacing-top.js +23 -0
  764. package/dist/icons/ui-icons/speed.js +25 -0
  765. package/dist/icons/ui-icons/stagger.js +53 -0
  766. package/dist/icons/ui-icons/star.js +18 -0
  767. package/dist/icons/ui-icons/step.js +27 -0
  768. package/dist/icons/ui-icons/stop.js +20 -0
  769. package/dist/icons/ui-icons/swap.js +41 -0
  770. package/dist/icons/ui-icons/tag-alt.js +24 -0
  771. package/dist/icons/ui-icons/tag.js +26 -0
  772. package/dist/icons/ui-icons/text-abc.js +40 -0
  773. package/dist/icons/ui-icons/text-above.js +25 -0
  774. package/dist/icons/ui-icons/text-align-center.js +20 -0
  775. package/dist/icons/ui-icons/text-align-generic.js +20 -0
  776. package/dist/icons/ui-icons/text-align-justify.js +20 -0
  777. package/dist/icons/ui-icons/text-align-left.js +20 -0
  778. package/dist/icons/ui-icons/text-align-right.js +20 -0
  779. package/dist/icons/ui-icons/text-below.js +25 -0
  780. package/dist/icons/ui-icons/text-box-edit.js +35 -0
  781. package/dist/icons/ui-icons/text-color-swatch.js +40 -0
  782. package/dist/icons/ui-icons/text-highlight-color-swatch-alt.js +49 -0
  783. package/dist/icons/ui-icons/text-highlight-color-swatch.js +48 -0
  784. package/dist/icons/ui-icons/text-larger.js +23 -0
  785. package/dist/icons/ui-icons/text-length.js +20 -0
  786. package/dist/icons/ui-icons/text-size-alt.js +23 -0
  787. package/dist/icons/ui-icons/text-size.js +20 -0
  788. package/dist/icons/ui-icons/text-smaller.js +23 -0
  789. package/dist/icons/ui-icons/text-strikethrough.js +26 -0
  790. package/dist/icons/ui-icons/text-uppercase.js +25 -0
  791. package/dist/icons/ui-icons/text-write.js +39 -0
  792. package/dist/icons/ui-icons/thumbs-down.js +22 -0
  793. package/dist/icons/ui-icons/thumbs-up.js +22 -0
  794. package/dist/icons/ui-icons/title-generic.js +25 -0
  795. package/dist/icons/ui-icons/toggle-off.js +33 -0
  796. package/dist/icons/ui-icons/toggle-on-alt.js +19 -0
  797. package/dist/icons/ui-icons/toggle-on.js +31 -0
  798. package/dist/icons/ui-icons/tools.js +25 -0
  799. package/dist/icons/ui-icons/total-items.js +45 -0
  800. package/dist/icons/ui-icons/trash-alt.js +44 -0
  801. package/dist/icons/ui-icons/trash.js +33 -0
  802. package/dist/icons/ui-icons/tree-alt.js +62 -0
  803. package/dist/icons/ui-icons/tree-alt2.js +79 -0
  804. package/dist/icons/ui-icons/tree.js +70 -0
  805. package/dist/icons/ui-icons/troubleshoot-alt.js +39 -0
  806. package/dist/icons/ui-icons/two-cards-left.js +32 -0
  807. package/dist/icons/ui-icons/two-cards-right.js +32 -0
  808. package/dist/icons/ui-icons/two-columns.js +30 -0
  809. package/dist/icons/ui-icons/typography-options.js +77 -0
  810. package/dist/icons/ui-icons/typography.js +71 -0
  811. package/dist/icons/ui-icons/underline.js +19 -0
  812. package/dist/icons/ui-icons/ungroup.js +39 -0
  813. package/dist/icons/ui-icons/upload.js +20 -0
  814. package/dist/icons/ui-icons/venn-diagram-alt.js +34 -0
  815. package/dist/icons/ui-icons/venn-diagram-alt2.js +34 -0
  816. package/dist/icons/ui-icons/venn-diagram-alt3.js +34 -0
  817. package/dist/icons/ui-icons/venn-diagram-alt4.js +34 -0
  818. package/dist/icons/ui-icons/venn-diagram-alt5.js +34 -0
  819. package/dist/icons/ui-icons/venn-diagram-alt6.js +34 -0
  820. package/dist/icons/ui-icons/venn-diagram-alt7.js +39 -0
  821. package/dist/icons/ui-icons/venn-diagram.js +26 -0
  822. package/dist/icons/ui-icons/vertical-align-alt.js +27 -0
  823. package/dist/icons/ui-icons/vertical-align-around.js +39 -0
  824. package/dist/icons/ui-icons/vertical-align-between-alt.js +39 -0
  825. package/dist/icons/ui-icons/vertical-align-between.js +48 -0
  826. package/dist/icons/ui-icons/vertical-align-bottom.js +44 -0
  827. package/dist/icons/ui-icons/vertical-align-center.js +39 -0
  828. package/dist/icons/ui-icons/vertical-align-evenly.js +39 -0
  829. package/dist/icons/ui-icons/vertical-align-stretch.js +39 -0
  830. package/dist/icons/ui-icons/vertical-align-top.js +46 -0
  831. package/dist/icons/ui-icons/vertical-align.js +35 -0
  832. package/dist/icons/ui-icons/vertical-spacing.js +28 -0
  833. package/dist/icons/ui-icons/video-chapters.js +25 -0
  834. package/dist/icons/ui-icons/video-controls.js +67 -0
  835. package/dist/icons/ui-icons/video-file.js +40 -0
  836. package/dist/icons/ui-icons/video-poster-image.js +40 -0
  837. package/dist/icons/ui-icons/video-subtitle-alt.js +39 -0
  838. package/dist/icons/ui-icons/video-subtitle.js +27 -0
  839. package/dist/icons/ui-icons/video.js +36 -0
  840. package/dist/icons/ui-icons/visibility-alt.js +40 -0
  841. package/dist/icons/ui-icons/visibility-alt2.js +41 -0
  842. package/dist/icons/ui-icons/visibility.js +45 -0
  843. package/dist/icons/ui-icons/visible.js +28 -0
  844. package/dist/icons/ui-icons/volume.js +25 -0
  845. package/dist/icons/ui-icons/warning-circle-fill-transparent.js +30 -0
  846. package/dist/icons/ui-icons/warning-circle-fill.js +17 -0
  847. package/dist/icons/ui-icons/warning-circle.js +33 -0
  848. package/dist/icons/ui-icons/warning-fill-transparent.js +30 -0
  849. package/dist/icons/ui-icons/warning-fill.js +17 -0
  850. package/dist/icons/ui-icons/warning.js +30 -0
  851. package/dist/icons/ui-icons/web-video.js +63 -0
  852. package/dist/icons/ui-icons/wide-bottom.js +49 -0
  853. package/dist/icons/ui-icons/wide-left.js +49 -0
  854. package/dist/icons/ui-icons/wide-right.js +49 -0
  855. package/dist/icons/ui-icons/wide-top.js +49 -0
  856. package/dist/icons/ui-icons/width.js +29 -0
  857. package/dist/icons/ui-icons/wordpress.js +17 -0
  858. package/dist/icons/ui-icons/wrapper-alt.js +71 -0
  859. package/dist/icons/ui-icons/wrapper-config.js +41 -0
  860. package/dist/icons/ui-icons/wrapper-off-alt.js +19 -0
  861. package/dist/icons/ui-icons/wrapper-overflow.js +31 -0
  862. package/dist/icons/ui-icons/wrapper-simple-alt.js +58 -0
  863. package/dist/icons/ui-icons/wrapper-simple.js +32 -0
  864. package/dist/icons/ui-icons/wrapper.js +42 -0
  865. package/dist/icons/ui-icons/wrench.js +19 -0
  866. package/dist/icons/ui-icons/zap-fill.js +20 -0
  867. package/dist/icons/ui-icons/zap.js +19 -0
  868. package/dist/index.js +32 -108
  869. package/dist/input-field-UCZL5bqv.js +290 -0
  870. package/dist/jsx-svg-OBADs_Qs.js +11123 -0
  871. package/dist/link-input-D7iDRpOM.js +1821 -0
  872. package/dist/modal-DbVLYMkH.js +318 -0
  873. package/dist/number-ZZIxJukn.js +40 -0
  874. package/dist/number-picker-CkA1iJNZ.js +268 -0
  875. package/dist/proxy-BG7-_Ou3.js +9638 -0
  876. package/dist/shared-DFDimxvX.js +1038 -0
  877. package/dist/smart-image-CbSsEASF.js +284 -0
  878. package/dist/solid-color-picker-DbT-aoVx.js +1415 -0
  879. package/dist/style-admin.js +1 -1
  880. package/dist/style-editor.js +1 -1
  881. package/dist/style.js +1 -1
  882. package/dist/switch-L8dFSQWQ.js +274 -0
  883. package/dist/tabs-BrdyBER5.js +975 -0
  884. package/dist/textSelection-Dv6WPj0Z.js +45 -0
  885. package/dist/toggle-button-DJ8jNQ-9.js +424 -0
  886. package/dist/tooltip-BzJzYlcc.js +440 -0
  887. package/dist/useAsyncList-BNzwKoX4.js +412 -0
  888. package/dist/useButton-ra1ZSZ4z.js +57 -0
  889. package/dist/useEvent-DkZVfgsS.js +22 -0
  890. package/dist/useField-D0WrzR2F.js +32 -0
  891. package/dist/useFilter-OiMnf6sb.js +44 -0
  892. package/dist/useFocusRing-DuYL4cdO.js +98 -0
  893. package/dist/useFormReset-DdkykzAn.js +18 -0
  894. package/dist/useHover-qaMm3XFO.js +982 -0
  895. package/dist/useLabel-2EohW5l6.js +27 -0
  896. package/dist/useLabels-B2p7RXi5.js +16 -0
  897. package/dist/useListState-CD_5vfyy.js +147 -0
  898. package/dist/useLocalizedStringFormatter-Dv2diN3k.js +108 -0
  899. package/dist/useNumberField-2xbi3jRV.js +1318 -0
  900. package/dist/useNumberFormatter-C2Cm2mNj.js +10 -0
  901. package/dist/usePress-ZP1TjkFf.js +678 -0
  902. package/dist/useToggle-ecIirvIM.js +64 -0
  903. package/dist/useToggleState-IIDbiKPl.js +23 -0
  904. package/dist/utilities/array-helpers.js +38 -49
  905. package/dist/utilities/debounce-throttle.js +2 -123
  906. package/dist/utilities/es-dash.js +2 -400
  907. package/dist/utilities/general.js +2 -10
  908. package/dist/utilities/hash.js +31 -35
  909. package/dist/utilities/index.js +6 -41
  910. package/dist/utilities/text-helpers.js +96 -129
  911. package/dist/utilities/web-workers.js +61 -44
  912. package/dist/utilities-CPFDXC3B.js +7 -0
  913. package/dist/utils-B_uiqNa4.js +372 -0
  914. package/dist/workers/image-analysis.worker.js +56 -48
  915. package/package.json +30 -18
  916. package/dist/Button-DtRmB6b8.js +0 -243
  917. package/dist/Dialog-DTIxSDhz.js +0 -2790
  918. package/dist/FieldError-BPG0hKfB.js +0 -42
  919. package/dist/FocusScope-CjFQ7cbd.js +0 -832
  920. package/dist/Form-Cq3fu75_.js +0 -5
  921. package/dist/Heading-CY-_gt-U.js +0 -16
  922. package/dist/Hidden-DOH36apC.js +0 -58
  923. package/dist/Input-BG9DaxYN.js +0 -169
  924. package/dist/Label-_aSf9-8u.js +0 -18
  925. package/dist/List-CQFXnN4w.js +0 -590
  926. package/dist/ListBox-DXFyyj_r.js +0 -695
  927. package/dist/NumberFormatter-DA8u1Ot7.js +0 -140
  928. package/dist/OverlayArrow-Fuxj-1QM.js +0 -614
  929. package/dist/PortalProvider-BQ1X8vGX.js +0 -19
  930. package/dist/RSPContexts-CJ-HBf0L.js +0 -18
  931. package/dist/RadioGroup-DCeiLxLK.js +0 -371
  932. package/dist/SearchField-B_yKFXRk.js +0 -817
  933. package/dist/SelectionIndicator-D7WMzeAW.js +0 -7
  934. package/dist/SelectionManager-B02LcxLr.js +0 -2505
  935. package/dist/SharedElementTransition-CtoWSaF0.js +0 -12
  936. package/dist/Slider-bR3fAmim.js +0 -897
  937. package/dist/Text-CjFEHSfr.js +0 -17
  938. package/dist/VisuallyHidden-DZnWrkn8.js +0 -48
  939. package/dist/animation-Dfl8uEb3.js +0 -67
  940. package/dist/clsx-DgYk2OaC.js +0 -16
  941. package/dist/color-swatch-bUFkK7ox.js +0 -2570
  942. package/dist/components/smart-image/image-analysis-worker-next.js +0 -144
  943. package/dist/components/smart-image/smart-image-next.js +0 -294
  944. package/dist/context-iUFQCK8m.js +0 -95
  945. package/dist/default-i18n-CnQeC5Pl.js +0 -731
  946. package/dist/filterDOMProps-eGTqWSTd.js +0 -71
  947. package/dist/general-BfKmjm56.js +0 -4378
  948. package/dist/index-BHpUy2Ix.js +0 -44
  949. package/dist/index-BL5gdWX4.js +0 -28323
  950. package/dist/number-7sOvrqo0.js +0 -41
  951. package/dist/proxy-CNEXmkdK.js +0 -7948
  952. package/dist/react-jsx-parser.min-DAh4myol.js +0 -11736
  953. package/dist/shared-CNH8QfV9.js +0 -1111
  954. package/dist/sprintf-DmNrJSYG.js +0 -51
  955. package/dist/textSelection-DA3VcKpG.js +0 -46
  956. package/dist/useAsyncList-DsZvQXls.js +0 -453
  957. package/dist/useButton-DyMX0EVr.js +0 -59
  958. package/dist/useEvent-Bfy68GHZ.js +0 -22
  959. package/dist/useFilter-Bg5C34XC.js +0 -50
  960. package/dist/useFocusRing-B2glEZ25.js +0 -114
  961. package/dist/useFormReset-BoxsKyJ9.js +0 -20
  962. package/dist/useFormValidation-BrbMhS2N.js +0 -232
  963. package/dist/useHover-DkmPQdGE.js +0 -1047
  964. package/dist/useLabel-DzXzKZZZ.js +0 -27
  965. package/dist/useLabels-D8O3gOdV.js +0 -23
  966. package/dist/useListState-BjnzKozj.js +0 -171
  967. package/dist/useLocalizedStringFormatter-CEDs0LsA.js +0 -121
  968. package/dist/useNumberField-CsygZKz9.js +0 -1330
  969. package/dist/useNumberFormatter-CG_IQXp9.js +0 -13
  970. package/dist/usePress-Ck5xMtDr.js +0 -701
  971. package/dist/useToggle-Ddc7N8pR.js +0 -72
  972. package/dist/useToggleState-H_lORSWO.js +0 -23
  973. package/dist/utils-Cr3pLd9c.js +0 -420
@@ -1,567 +1,450 @@
1
- import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
- import { useState } from "react";
3
- import { DecorativeTooltip } from "../tooltip/tooltip.js";
4
- import { c as clsx } from "../../clsx-DgYk2OaC.js";
5
- import { s as sprintf } from "../../sprintf-DmNrJSYG.js";
6
- import { _ as __ } from "../../default-i18n-CnQeC5Pl.js";
7
- import { BreakpointPreview } from "../breakpoint-preview/breakpoint-preview.js";
8
- import { upperFirst } from "../../utilities/es-dash.js";
9
- import { icons } from "../../icons/icons.js";
10
- import { Menu, MenuSectionHeader, MenuSeparator, SubMenuItem, MenuItem } from "../menu/menu.js";
11
- import { ResponsivePreview } from "../responsive-preview/responsive-preview.js";
12
- import { Button, ButtonGroup } from "../button/button.js";
1
+ import { t as clsx } from "../../clsx-BUU5J41u.js";
13
2
  import { AnimatedVisibility } from "../animated-visibility/animated-visibility.js";
14
- import { ToggleButton } from "../toggle-button/toggle-button.js";
3
+ import { t as DecorativeTooltip } from "../../tooltip-BzJzYlcc.js";
4
+ import { t as ToggleButton } from "../../toggle-button-DJ8jNQ-9.js";
5
+ import { n as ButtonGroup, t as Button } from "../../button-COTeluL8.js";
15
6
  import { BaseControl } from "../base-control/base-control.js";
7
+ import { f as upperFirst } from "../../es-dash-HqXWZZ3_.js";
8
+ import { BreakpointPreview } from "../breakpoint-preview/breakpoint-preview.js";
9
+ import { r as sprintf, t as __ } from "../../build-module-sxK3nxOK.js";
10
+ import { Icon } from "../../icons/icon.js";
11
+ import { clearAlt } from "../../icons/ui-icons/clear-alt.js";
12
+ import { dropdownCaretAlt } from "../../icons/ui-icons/dropdown-caret-alt.js";
13
+ import { previewResponsive } from "../../icons/ui-icons/preview-responsive.js";
14
+ import { responsiveOverridesAltFill } from "../../icons/ui-icons/responsive-overrides-alt-fill.js";
15
+ import { responsiveOverridesAlt2Fill } from "../../icons/ui-icons/responsive-overrides-alt2-fill.js";
16
+ import { responsiveOverridesAlt3Fill } from "../../icons/ui-icons/responsive-overrides-alt3-fill.js";
17
+ import { Menu, MenuItem, MenuSectionHeader, MenuSeparator, SubMenuItem } from "../menu/menu.js";
16
18
  import { OptionSelect } from "../option-select/option-select.js";
19
+ import { ResponsivePreview } from "../responsive-preview/responsive-preview.js";
20
+ import { useState } from "react";
21
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
22
+ //#region lib/components/responsive/responsive.jsx
17
23
  /**
18
- * A component that allows the user to set different values for different breakpoints.
19
- *
20
- * Inner items should be passed as a render function.
21
- * The following props are passed to the render function:
22
- * - `breakpoint: string` - Name of the current breakpoint.
23
- * - `currentValue: any` - Current value.
24
- * - `handleChange: Function<(attributeName: string, value: any) => void>` - A function to change the value for the breakpoint..
25
- * - `options: Object<string, any>` - (Optional) Options list passed to the `ResponsiveLegacy` component. (optional)
26
- * - `isInlineCollapsedView: boolean` - (Optional) `true` if in `inline` mode, and the details are collapsed.
27
- * - `isInlineExpandedView: boolean` - (Optional) `true` if in `inline` mode, and the details are shown.
28
- *
29
- * @component
30
- * @param {Object} props - Component props.
31
- * @param {Object} props.value - The current value of the component.
32
- * @param {Function} props.onChange - Function to run when the value changes. `(newValue: Object) => void`.
33
- * @param {JSX.Element} props.icon - The icon of the component.
34
- * @param {string} props.help - The help text of the component.
35
- * @param {string} props.label - The label of the component.
36
- * @param {string} props.subtitle - The subtitle of the component.
37
- * @param {{label: string, value: string}[]} props.options - Options of the attribute the component is linked to. `{ value: string, label: string }[]`.
38
- * @param {string[]} props.breakpoints - Breakpoints to use.
39
- * @param {string[]} [props.desktopFirstBreakpoints] - Breakpoints to use in desktop-first mode. If not provided, the breakpoints will be used in reverse order.
40
- * @param {Object<string, number>} [props.breakpointData] - Currently used breakpoint data. `{ [breakpoint: string]: number }`.
41
- * @param {Object<string, number>} [props.breakpointUiData] - Allows overriding breakpoint names and icons. `{ [breakpoint: string]: { label: string, icon: JSX.Element|string } }`.
42
- * @param {boolean} [props.noModeSelect] - If `true`, the mode selection (desktop-first/mobile-first) is hidden.
43
- * @param {boolean} [props.inline] - If `true`, the default breakpoint is shown inline with the label. In the expanded state, all breakpoints are shown below the label.
44
- * @param {boolean} [props.hidden] - If `true`, the component is not rendered.
45
- * @param {boolean} [props.useLegacyDesktopFirst] - If `true`, the legacy desktop-first mode is used. This is only for backwards compatibility.
46
- * @param {string} [props.className] - Classes to pass to the control base.
47
- * @param {'start' | 'center' | 'end' | 'stretch'} [props.innerContentAlign='start'] - Determines inner content alignment
48
- *
49
- * @returns {JSX.Element} The Responsive component.
50
- *
51
- * @example
52
- * <Responsive
53
- * value={value}
54
- * onChange={onChange}
55
- * icon={icons.myIcon}
56
- * label={__('Label', 'eightshift-ui-components')}
57
- * options={[
58
- * { value: 'value1', label: 'Value 1' },
59
- * { value: 'value2', label: 'Value 2' },
60
- * { value: 'value3', label: 'Value 3' },
61
- * ]}
62
- * breakpoints={['mobile', 'tablet', 'desktop', 'large']}
63
- * breakpointData={breakpointData}
64
- * >
65
- * {({ breakpoint, currentValue, options, handleChange }) => (
66
- * <Select
67
- * label={breakpoint}
68
- * value={currentValue}
69
- * options={options}
70
- * onChange={handleChange}
71
- * />
72
- * )}
73
- * </Responsive>
74
- *
75
- * @preserve
76
- */
77
- const Responsive = (props) => {
78
- const {
79
- value,
80
- onChange,
81
- icon,
82
- help,
83
- label,
84
- subtitle,
85
- options,
86
- breakpoints: rawBreakpoints,
87
- desktopFirstBreakpoints: rawDesktopFirstBreakpoints,
88
- breakpointData,
89
- breakpointUiData,
90
- noModeSelect,
91
- inline,
92
- children,
93
- hidden,
94
- innerContentAlign = "start",
95
- useLegacyDesktopFirst,
96
- className
97
- } = props;
98
- if (typeof rawBreakpoints === "undefined" || !Array.isArray(rawBreakpoints)) {
99
- console.warn(__("Responsive: Missing or invalid 'breakpoints' prop.", "eightshift-ui-components"));
100
- return null;
101
- }
102
- const breakpoints = rawBreakpoints.slice(1);
103
- let desktopFirstBreakpoints = (rawDesktopFirstBreakpoints ?? rawBreakpoints.slice(1)).map((breakpoint) => breakpoint.startsWith("max-") ? breakpoint : `max-${breakpoint}`);
104
- if (useLegacyDesktopFirst) {
105
- desktopFirstBreakpoints = (rawDesktopFirstBreakpoints ?? rawBreakpoints.slice(0, -1)).map((breakpoint) => breakpoint.startsWith("max-") ? breakpoint : `max-${breakpoint}`);
106
- }
107
- const [detailsVisible, setDetailsVisible] = useState(false);
108
- const isDesktopFirst = value?.["_desktopFirst"] === true;
109
- const firstMobileFirstOverride = breakpoints.find((breakpoint) => typeof value?.[breakpoint] !== "undefined");
110
- const lastDesktopFirstOverride = desktopFirstBreakpoints.toReversed().find((breakpoint) => typeof value?.[breakpoint] !== "undefined");
111
- const breakpointsToMap = isDesktopFirst ? desktopFirstBreakpoints : breakpoints;
112
- if (hidden) {
113
- return null;
114
- }
115
- const DefaultTooltip = () => {
116
- const overrideIcon = breakpointUiData?.[isDesktopFirst ? rawBreakpoints.at(-1) : rawBreakpoints.at(0)]?.icon;
117
- return /* @__PURE__ */ jsx(
118
- DecorativeTooltip,
119
- {
120
- placement: "left",
121
- className: "es:p-4! es:rounded-2xl! es:max-w-96!",
122
- theme: "light",
123
- offset: 7.5,
124
- arrow: true,
125
- text: /* @__PURE__ */ jsxs(Fragment, { children: [
126
- /* @__PURE__ */ jsx("span", { className: 'es:block es:font-variation-["wdth"_95,"wght"_475,"ROND"_100] es:text-14 es:leading-none es:text-surface-600', children: __("Default", "eightshift-ui-components") }),
127
- /* @__PURE__ */ jsxs("span", { className: 'es:block es:text-balance es:tabular-nums es:font-variation-["wdth"_64,"wght"_275,"ROND"_50,"slnt"_-2] es:text-surface-500 es:mt-1', children: [
128
- !firstMobileFirstOverride && !lastDesktopFirstOverride && __("Always applied, regardless of browser width.", "eightshift-ui-components"),
129
- firstMobileFirstOverride && !isDesktopFirst && sprintf(__("Applies when the browser width is %dpx or less.", "eightshift-ui-components"), breakpointData[firstMobileFirstOverride] - 1),
130
- lastDesktopFirstOverride && isDesktopFirst && sprintf(__("Applies when the browser width is %dpx or more.", "eightshift-ui-components"), breakpointData[lastDesktopFirstOverride.replace("max-", "")])
131
- ] }),
132
- (firstMobileFirstOverride && !isDesktopFirst || lastDesktopFirstOverride && isDesktopFirst) && /* @__PURE__ */ jsxs("div", { className: "es:mx-auto es:mt-5", children: [
133
- firstMobileFirstOverride && !isDesktopFirst && /* @__PURE__ */ jsx(
134
- BreakpointPreview,
135
- {
136
- blocks: [
137
- {
138
- breakpoint: __("Default", "eightshift-ui-components"),
139
- widthEnd: breakpointData[firstMobileFirstOverride] - 1,
140
- value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
141
- dotsStart: true,
142
- alignEnd: true,
143
- active: true
144
- },
145
- {
146
- breakpoint: breakpointUiData?.[firstMobileFirstOverride]?.label ?? firstMobileFirstOverride,
147
- value: options?.find((opt) => opt.value === value?.[firstMobileFirstOverride])?.label ?? upperFirst(value?.[firstMobileFirstOverride]),
148
- dotsEnd: true
149
- }
150
- ]
151
- }
152
- ),
153
- lastDesktopFirstOverride && isDesktopFirst && /* @__PURE__ */ jsx(
154
- BreakpointPreview,
155
- {
156
- blocks: [
157
- {
158
- breakpoint: breakpointUiData?.[lastDesktopFirstOverride.replace("max-", "")]?.label ?? lastDesktopFirstOverride.replace("max-", ""),
159
- value: options?.find((opt) => opt.value === value?.[lastDesktopFirstOverride])?.label ?? upperFirst(value?.[lastDesktopFirstOverride]),
160
- dotsStart: true,
161
- alignEnd: true
162
- },
163
- {
164
- breakpoint: __("Default", "eightshift-ui-components"),
165
- value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
166
- width: breakpointData[lastDesktopFirstOverride.replace("max-", "")],
167
- dotsEnd: true,
168
- active: true
169
- }
170
- ]
171
- }
172
- )
173
- ] })
174
- ] }),
175
- children: /* @__PURE__ */ jsx("div", { className: "es:icon:size-6 es:mx-0.5 es:text-accent-700", children: icons?.[overrideIcon] ?? overrideIcon ?? icons[`screen${upperFirst(isDesktopFirst ? rawBreakpoints.at(-1) : rawBreakpoints.at(0))}`] })
176
- }
177
- );
178
- };
179
- return /* @__PURE__ */ jsxs(
180
- BaseControl,
181
- {
182
- icon,
183
- label,
184
- subtitle,
185
- help,
186
- className,
187
- actions: /* @__PURE__ */ jsxs(Fragment, { children: [
188
- inline && /* @__PURE__ */ jsx(
189
- AnimatedVisibility,
190
- {
191
- className: "es:mr-0.5",
192
- visible: !detailsVisible,
193
- transition: "scaleFade",
194
- noInitial: true,
195
- children: children({
196
- breakpoint: "_default",
197
- currentValue: value?.["_default"],
198
- handleChange: (newValue) => onChange({
199
- ...value,
200
- _default: newValue
201
- }),
202
- options,
203
- key: Object.keys(value),
204
- isInlineCollapsedView: true
205
- })
206
- },
207
- "_default-inline"
208
- ),
209
- /* @__PURE__ */ jsxs(ButtonGroup, { children: [
210
- /* @__PURE__ */ jsx(
211
- ToggleButton,
212
- {
213
- icon: icons.responsiveOverridesAlt3Fill,
214
- onChange: () => setDetailsVisible(!detailsVisible),
215
- selected: detailsVisible,
216
- tooltip: detailsVisible ? __("Hide responsive overrides", "eightshift-ui-components") : __("Show responsive overrides", "eightshift-ui-components")
217
- }
218
- ),
219
- /* @__PURE__ */ jsxs(
220
- Menu,
221
- {
222
- "aria-label": __("Responsive options", "eightshift-ui-components"),
223
- tooltip: __("Responsive options", "eightshift-ui-components"),
224
- popoverProps: { placement: "bottom right" },
225
- triggerProps: { className: "es:w-6 es:stroke-[1.25]" },
226
- triggerIcon: icons.dropdownCaretAlt,
227
- children: [
228
- !noModeSelect && /* @__PURE__ */ jsxs(Fragment, { children: [
229
- /* @__PURE__ */ jsx(MenuSectionHeader, { children: __("Mode", "eightshift-ui-components") }),
230
- /* @__PURE__ */ jsx(
231
- OptionSelect,
232
- {
233
- value: isDesktopFirst,
234
- onChange: (newMode) => {
235
- onChange({
236
- _default: value["_default"],
237
- _desktopFirst: newMode
238
- });
239
- },
240
- options: [
241
- { endIcon: icons.responsiveOverridesAltFill, label: __("Mobile-first", "eightshift-ui-components"), value: false },
242
- { endIcon: icons.responsiveOverridesAlt2Fill, label: __("Desktop-first", "eightshift-ui-components"), value: true }
243
- ],
244
- type: "standaloneMenuItems"
245
- }
246
- ),
247
- /* @__PURE__ */ jsx(MenuSeparator, {})
248
- ] }),
249
- Object.keys(value).some((key) => !key?.startsWith("_") && typeof value?.[key] !== "undefined") && /* @__PURE__ */ jsx(
250
- SubMenuItem,
251
- {
252
- manualWidth: true,
253
- popoverProps: { className: "es:max-w-full!" },
254
- trigger: /* @__PURE__ */ jsx(MenuItem, { icon: icons.previewResponsive, children: __("Breakpoint preview", "eightshift-ui-components") }),
255
- children: /* @__PURE__ */ jsx(MenuItem, { disabled: true, children: /* @__PURE__ */ jsx(
256
- ResponsivePreview,
257
- {
258
- value,
259
- isDesktopFirst,
260
- breakpoints,
261
- desktopFirstBreakpoints,
262
- options,
263
- breakpointData,
264
- breakpointUiData
265
- }
266
- ) })
267
- }
268
- ),
269
- Object.keys(value).some((key) => !key?.startsWith("_") && typeof value?.[key] !== "undefined") && /* @__PURE__ */ jsx(MenuSeparator, {}),
270
- /* @__PURE__ */ jsx(
271
- MenuItem,
272
- {
273
- icon: icons.clearAlt,
274
- onClick: () => {
275
- const newValue = { ...value };
276
- [...breakpoints, ...desktopFirstBreakpoints].forEach((breakpoint) => {
277
- delete newValue[breakpoint];
278
- });
279
- onChange(newValue);
280
- },
281
- danger: true,
282
- children: __("Clear overrides", "eightshift-ui-components")
283
- }
284
- )
285
- ]
286
- }
287
- )
288
- ] })
289
- ] }),
290
- children: [
291
- !isDesktopFirst && !inline && /* @__PURE__ */ jsxs(
292
- "div",
293
- {
294
- className: clsx(
295
- "es:grid es:items-center es:gap-x-2 es:transition-[grid-template-columns,margin-block-end] es:duration-200",
296
- detailsVisible && "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25",
297
- innerContentAlign === "start" && "es:justify-items-start",
298
- innerContentAlign === "center" && "es:justify-items-center",
299
- innerContentAlign === "end" && "es:justify-items-end",
300
- innerContentAlign === "stretch" && "es:justify-items-stretch",
301
- detailsVisible ? "es:mb-0.5 es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)]" : "es:grid-cols-[minmax(0,0rem)_minmax(0,1fr)_minmax(0,2.25rem)]"
302
- ),
303
- children: [
304
- detailsVisible && /* @__PURE__ */ jsx(DefaultTooltip, {}),
305
- /* @__PURE__ */ jsx("div", { className: clsx("es:w-full", detailsVisible ? "es:col-start-2 es:col-end-2" : "es:col-span-full"), children: children({
306
- breakpoint: "_default",
307
- currentValue: value?.["_default"],
308
- handleChange: (newValue) => onChange({
309
- ...value,
310
- _default: newValue
311
- }),
312
- options,
313
- key: Object.keys(value)
314
- }) })
315
- ]
316
- },
317
- "_default-mobile-first"
318
- ),
319
- !isDesktopFirst && inline && /* @__PURE__ */ jsxs(
320
- AnimatedVisibility,
321
- {
322
- className: clsx(
323
- "es:mb-0.5 es:grid es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)] es:items-center es:gap-x-2",
324
- "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25",
325
- innerContentAlign === "start" && "es:justify-items-start",
326
- innerContentAlign === "center" && "es:justify-items-center",
327
- innerContentAlign === "end" && "es:justify-items-end",
328
- innerContentAlign === "stretch" && "es:justify-items-stretch"
329
- ),
330
- visible: detailsVisible,
331
- children: [
332
- /* @__PURE__ */ jsx(DefaultTooltip, {}),
333
- /* @__PURE__ */ jsx("div", { className: "es:col-start-2 es:col-end-2 es:w-full", children: children({
334
- breakpoint: "_default",
335
- currentValue: value?.["_default"],
336
- handleChange: (newValue) => onChange({
337
- ...value,
338
- _default: newValue
339
- }),
340
- options,
341
- key: Object.keys(value),
342
- isInlineExpandedView: true
343
- }) })
344
- ]
345
- },
346
- "_default-mobile-first-inline"
347
- ),
348
- /* @__PURE__ */ jsx(
349
- AnimatedVisibility,
350
- {
351
- visible: detailsVisible,
352
- className: "es:space-y-0.5",
353
- children: breakpointsToMap.map((breakpoint, i) => {
354
- const realBreakpointName = breakpoint.replace("max-", "");
355
- const filterBreakpoints = isDesktopFirst ? [...breakpointsToMap, "_default"] : ["_default", ...breakpointsToMap];
356
- const aboveOverride = isDesktopFirst ? filterBreakpoints.slice(i + 1).find((breakpoint2) => typeof value?.[breakpoint2] !== "undefined") : filterBreakpoints.slice(0, i + 1).toReversed().find((breakpoint2) => typeof value?.[breakpoint2] !== "undefined");
357
- const belowOverride = isDesktopFirst ? filterBreakpoints.slice(0, i).toReversed().find((breakpoint2) => typeof value?.[breakpoint2] !== "undefined") : filterBreakpoints.slice(i + 2).find((breakpoint2) => typeof value?.[breakpoint2] !== "undefined");
358
- return /* @__PURE__ */ jsxs(
359
- "div",
360
- {
361
- className: clsx(
362
- "es:grid es:grid-cols-[minmax(0,auto)_minmax(0,1fr)_minmax(0,2.25rem)] es:items-center es:gap-x-2",
363
- "es:bg-white/50 es:p-1.5 es:rounded-sm es:inset-ring es:inset-ring-surface-200/60",
364
- !isDesktopFirst && "es:last:rounded-b-2xl",
365
- isDesktopFirst && "es:first:rounded-t-2xl",
366
- innerContentAlign === "start" && "es:justify-items-start",
367
- innerContentAlign === "center" && "es:justify-items-center",
368
- innerContentAlign === "end" && "es:justify-items-end",
369
- innerContentAlign === "stretch" && "es:justify-items-stretch"
370
- ),
371
- children: [
372
- /* @__PURE__ */ jsx(
373
- DecorativeTooltip,
374
- {
375
- placement: "left",
376
- theme: "light",
377
- className: "es:p-4! es:rounded-2xl! es:max-w-96!",
378
- offset: 7.5,
379
- arrow: true,
380
- text: /* @__PURE__ */ jsxs(Fragment, { children: [
381
- /* @__PURE__ */ jsx("span", { className: 'es:block es:font-variation-["wdth"_95,"wght"_475,"ROND"_100] es:text-14 es:leading-none es:text-surface-600', children: breakpointUiData?.[realBreakpointName]?.label ?? upperFirst(realBreakpointName) }),
382
- /* @__PURE__ */ jsxs("span", { className: 'es:block es:text-balance es:tabular-nums es:font-variation-["wdth"_64,"wght"_275,"ROND"_50,"slnt"_-2] es:text-surface-500 es:mt-1', children: [
383
- !isDesktopFirst && /* @__PURE__ */ jsxs(Fragment, { children: [
384
- !belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(__("Applied when the browser width is %dpx or more.", "eightshift-ui-components"), breakpointData[realBreakpointName]),
385
- belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(
386
- __("Applied when the browser width is between %dpx and %dpx.", "eightshift-ui-components"),
387
- breakpointData[realBreakpointName],
388
- breakpointData[belowOverride] - 1
389
- ),
390
- typeof value[breakpoint] === "undefined" && sprintf(__("From %dpx", "eightshift-ui-components"), breakpointData[realBreakpointName])
391
- ] }),
392
- isDesktopFirst && /* @__PURE__ */ jsxs(Fragment, { children: [
393
- !belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(__("Applied when the browser width is %dpx or less.", "eightshift-ui-components"), breakpointData[realBreakpointName] - 1),
394
- belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(
395
- __("Applied when the browser width is between %dpx and %dpx.", "eightshift-ui-components"),
396
- breakpointData[belowOverride?.replace("max-", "")],
397
- breakpointData[realBreakpointName] - 1
398
- ),
399
- typeof value[breakpoint] === "undefined" && sprintf(__("Up to %dpx", "eightshift-ui-components"), breakpointData[breakpoint?.replace("max-", "")])
400
- ] })
401
- ] }),
402
- typeof value[breakpoint] === "undefined" && /* @__PURE__ */ jsx("span", { className: 'es:mt-2 es:text-sm es:leading-none es:block es:font-variation-["wdth"_75,"wght"_300,"slnt"_-5]', children: __("Not set", "eightshift-ui-components") }),
403
- typeof value[breakpoint] !== "undefined" && /* @__PURE__ */ jsxs("div", { className: "es:mx-auto es:mt-5", children: [
404
- !isDesktopFirst && /* @__PURE__ */ jsx(
405
- BreakpointPreview,
406
- {
407
- dotsStart: belowOverride,
408
- blocks: [
409
- aboveOverride !== "_default" && typeof value?.[aboveOverride] !== "undefined" && {
410
- breakpoint: breakpointUiData?.[aboveOverride]?.label ?? aboveOverride,
411
- value: options?.find((opt) => opt.value === value?.[aboveOverride])?.label ?? upperFirst(value?.[aboveOverride]),
412
- dotsStart: !belowOverride,
413
- alignEnd: !belowOverride
414
- },
415
- aboveOverride === "_default" && typeof value?.["_default"] !== "undefined" && {
416
- breakpoint: __("Default", "eightshift-ui-components"),
417
- value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
418
- dotsStart: !belowOverride,
419
- alignEnd: !belowOverride
420
- },
421
- {
422
- breakpoint: breakpointUiData?.[realBreakpointName]?.label ?? realBreakpointName,
423
- value: options?.find((opt) => opt.value === value?.[breakpoint])?.label ?? upperFirst(value?.[breakpoint]),
424
- width: breakpointData[realBreakpointName],
425
- active: true,
426
- dotsEnd: !belowOverride
427
- },
428
- belowOverride && typeof value?.[belowOverride] !== "undefined" && {
429
- breakpoint: breakpointUiData?.[belowOverride]?.label ?? belowOverride,
430
- value: options?.find((opt) => opt.value === value?.[belowOverride])?.label ?? upperFirst(value?.[belowOverride]),
431
- width: breakpointData[belowOverride],
432
- dotsEnd: true
433
- }
434
- ]
435
- }
436
- ),
437
- isDesktopFirst && /* @__PURE__ */ jsx(
438
- BreakpointPreview,
439
- {
440
- dotsStart: true,
441
- dotsEnd: aboveOverride !== "_default",
442
- blocks: [
443
- belowOverride && {
444
- breakpoint: breakpointUiData?.[belowOverride?.replace("max-", "")]?.label ?? belowOverride?.replace("max-", ""),
445
- value: options?.find((opt) => opt.value === value?.[belowOverride])?.label ?? upperFirst(value?.[belowOverride])
446
- },
447
- {
448
- breakpoint: breakpointUiData?.[realBreakpointName]?.label ?? realBreakpointName,
449
- value: options?.find((opt) => opt.value === value?.[breakpoint])?.label ?? upperFirst(value?.[realBreakpointName]),
450
- width: breakpointData[filterBreakpoints[i - 1]?.replace("max-", "")],
451
- active: true
452
- },
453
- aboveOverride !== "_default" && {
454
- breakpoint: breakpointUiData?.[aboveOverride?.replace("max-", "")]?.label ?? aboveOverride?.replace("max-", ""),
455
- value: options?.find((opt) => opt.value === value?.[aboveOverride])?.label ?? upperFirst(value?.[aboveOverride]),
456
- width: breakpointData[breakpoint?.replace("max-", "")]
457
- },
458
- aboveOverride === "_default" && {
459
- breakpoint: __("Default", "eightshift-ui-components"),
460
- value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
461
- width: breakpointData[breakpoint?.replace("max-", "")],
462
- dotsEnd: true
463
- }
464
- ]
465
- }
466
- )
467
- ] })
468
- ] }),
469
- children: /* @__PURE__ */ jsx("div", { className: clsx("es:transition-colors es:icon:size-6 es:mx-0.5", typeof value[breakpoint] !== "undefined" ? "es:text-surface-600" : "es:text-surface-300"), children: icons?.[breakpointUiData?.[realBreakpointName]?.icon] ?? breakpointUiData?.[realBreakpointName]?.icon ?? icons?.[`screen${upperFirst(realBreakpointName)}`] })
470
- }
471
- ),
472
- children({
473
- breakpoint,
474
- currentValue: value?.[breakpoint],
475
- handleChange: (newValue) => {
476
- onChange({
477
- ...value,
478
- [breakpoint]: newValue
479
- });
480
- },
481
- options,
482
- key: Object.keys(value)
483
- }),
484
- /* @__PURE__ */ jsx(
485
- Button,
486
- {
487
- onPress: () => {
488
- const newValue = { ...value };
489
- delete newValue[breakpoint];
490
- onChange(newValue);
491
- },
492
- icon: icons.clearAlt,
493
- disabled: typeof value?.[breakpoint] === "undefined",
494
- type: "ghost"
495
- }
496
- )
497
- ]
498
- },
499
- realBreakpointName
500
- );
501
- })
502
- }
503
- ),
504
- isDesktopFirst && !inline && /* @__PURE__ */ jsxs(
505
- "div",
506
- {
507
- className: clsx(
508
- "es:grid es:items-center es:gap-x-2 es:transition-[grid-template-columns,margin-block-start] es:duration-150",
509
- detailsVisible && "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25 es:transition-plus",
510
- innerContentAlign === "start" && "es:justify-items-start",
511
- innerContentAlign === "center" && "es:justify-items-center",
512
- innerContentAlign === "end" && "es:justify-items-end",
513
- innerContentAlign === "stretch" && "es:justify-items-stretch",
514
- detailsVisible ? "es:mt-0.5 es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)]" : "es:grid-cols-[minmax(0,0rem)_minmax(0,1fr)_minmax(0,2.25rem)]"
515
- ),
516
- children: [
517
- detailsVisible && /* @__PURE__ */ jsx(DefaultTooltip, {}),
518
- /* @__PURE__ */ jsx("div", { className: clsx("es:w-full", detailsVisible ? "es:col-start-2 es:col-end-2" : "es:col-span-full"), children: children({
519
- breakpoint: "_default",
520
- currentValue: value?.["_default"],
521
- handleChange: (newValue) => onChange({
522
- ...value,
523
- _default: newValue
524
- }),
525
- options,
526
- key: Object.keys(value)
527
- }) })
528
- ]
529
- },
530
- "_default-desktop-first"
531
- ),
532
- isDesktopFirst && inline && /* @__PURE__ */ jsxs(
533
- AnimatedVisibility,
534
- {
535
- className: clsx(
536
- "es:grid es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)] es:items-center es:gap-x-2 es:pt-1",
537
- "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25",
538
- innerContentAlign === "start" && "es:justify-items-start",
539
- innerContentAlign === "center" && "es:justify-items-center",
540
- innerContentAlign === "end" && "es:justify-items-end",
541
- innerContentAlign === "stretch" && "es:justify-items-stretch"
542
- ),
543
- visible: detailsVisible,
544
- children: [
545
- /* @__PURE__ */ jsx(DefaultTooltip, {}),
546
- /* @__PURE__ */ jsx("div", { className: "es:col-start-2 es:col-end-2", children: children({
547
- breakpoint: "_default",
548
- currentValue: value?.["_default"],
549
- handleChange: (newValue) => onChange({
550
- ...value,
551
- _default: newValue
552
- }),
553
- options,
554
- key: Object.keys(value),
555
- isInlineExpandedView: true
556
- }) })
557
- ]
558
- },
559
- "_default-desktop-first-inline"
560
- )
561
- ]
562
- }
563
- );
564
- };
565
- export {
566
- Responsive
24
+ * A component that allows the user to set different values for different breakpoints.
25
+ *
26
+ * Inner items should be passed as a render function.
27
+ * The following props are passed to the render function:
28
+ * - `breakpoint: string` - Name of the current breakpoint.
29
+ * - `currentValue: any` - Current value.
30
+ * - `handleChange: Function<(attributeName: string, value: any) => void>` - A function to change the value for the breakpoint..
31
+ * - `options: Object<string, any>` - (Optional) Options list passed to the `ResponsiveLegacy` component. (optional)
32
+ * - `isInlineCollapsedView: boolean` - (Optional) `true` if in `inline` mode, and the details are collapsed.
33
+ * - `isInlineExpandedView: boolean` - (Optional) `true` if in `inline` mode, and the details are shown.
34
+ *
35
+ * @component
36
+ * @param {Object} props - Component props.
37
+ * @param {Object} props.value - The current value of the component.
38
+ * @param {Function} props.onChange - Function to run when the value changes. `(newValue: Object) => void`.
39
+ * @param {JSX.Element} props.icon - The icon of the component.
40
+ * @param {string} props.help - The help text of the component.
41
+ * @param {string} props.label - The label of the component.
42
+ * @param {string} props.subtitle - The subtitle of the component.
43
+ * @param {{label: string, value: string}[]} props.options - Options of the attribute the component is linked to. `{ value: string, label: string }[]`.
44
+ * @param {string[]} props.breakpoints - Breakpoints to use.
45
+ * @param {string[]} [props.desktopFirstBreakpoints] - Breakpoints to use in desktop-first mode. If not provided, the breakpoints will be used in reverse order.
46
+ * @param {Object<string, number>} [props.breakpointData] - Currently used breakpoint data. `{ [breakpoint: string]: number }`.
47
+ * @param {Object<string, number>} [props.breakpointUiData] - Allows overriding breakpoint names and icons. `{ [breakpoint: string]: { label: string, icon: JSX.Element|string } }`.
48
+ * @param {boolean} [props.noModeSelect] - If `true`, the mode selection (desktop-first/mobile-first) is hidden.
49
+ * @param {boolean} [props.inline] - If `true`, the default breakpoint is shown inline with the label. In the expanded state, all breakpoints are shown below the label.
50
+ * @param {boolean} [props.hidden] - If `true`, the component is not rendered.
51
+ * @param {boolean} [props.useLegacyDesktopFirst] - If `true`, the legacy desktop-first mode is used. This is only for backwards compatibility.
52
+ * @param {string} [props.className] - Classes to pass to the control base.
53
+ * @param {'start' | 'center' | 'end' | 'stretch'} [props.innerContentAlign='start'] - Determines inner content alignment
54
+ *
55
+ * @returns {JSX.Element} The Responsive component.
56
+ *
57
+ * @example
58
+ * <Responsive
59
+ * value={value}
60
+ * onChange={onChange}
61
+ * icon={myIcon}
62
+ * label={__('Label', 'eightshift-ui-components')}
63
+ * options={[
64
+ * { value: 'value1', label: 'Value 1' },
65
+ * { value: 'value2', label: 'Value 2' },
66
+ * { value: 'value3', label: 'Value 3' },
67
+ * ]}
68
+ * breakpoints={['mobile', 'tablet', 'desktop', 'large']}
69
+ * breakpointData={breakpointData}
70
+ * >
71
+ * {({ breakpoint, currentValue, options, handleChange }) => (
72
+ * <Select
73
+ * label={breakpoint}
74
+ * value={currentValue}
75
+ * options={options}
76
+ * onChange={handleChange}
77
+ * />
78
+ * )}
79
+ * </Responsive>
80
+ */
81
+ var Responsive = (props) => {
82
+ const { value, onChange, icon, help, label, subtitle, options, breakpoints: rawBreakpoints, desktopFirstBreakpoints: rawDesktopFirstBreakpoints, breakpointData, breakpointUiData, noModeSelect, inline, children, hidden, innerContentAlign = "start", useLegacyDesktopFirst, className } = props;
83
+ const [detailsVisible, setDetailsVisible] = useState(false);
84
+ if (typeof rawBreakpoints === "undefined" || !Array.isArray(rawBreakpoints)) {
85
+ console.warn(__("Responsive: Missing or invalid 'breakpoints' prop.", "eightshift-ui-components"));
86
+ return null;
87
+ }
88
+ const breakpoints = rawBreakpoints.slice(1);
89
+ let desktopFirstBreakpoints = (rawDesktopFirstBreakpoints ?? rawBreakpoints.slice(1)).map((breakpoint) => breakpoint.startsWith("max-") ? breakpoint : `max-${breakpoint}`);
90
+ if (useLegacyDesktopFirst) desktopFirstBreakpoints = (rawDesktopFirstBreakpoints ?? rawBreakpoints.slice(0, -1)).map((breakpoint) => breakpoint.startsWith("max-") ? breakpoint : `max-${breakpoint}`);
91
+ const isDesktopFirst = value?.["_desktopFirst"] === true;
92
+ const firstMobileFirstOverride = breakpoints.find((breakpoint) => typeof value?.[breakpoint] !== "undefined");
93
+ const lastDesktopFirstOverride = desktopFirstBreakpoints.toReversed().find((breakpoint) => typeof value?.[breakpoint] !== "undefined");
94
+ const breakpointsToMap = isDesktopFirst ? desktopFirstBreakpoints : breakpoints;
95
+ if (hidden) return null;
96
+ const DefaultTooltip = () => {
97
+ const overrideIcon = breakpointUiData?.[isDesktopFirst ? rawBreakpoints.at(-1) : rawBreakpoints.at(0)]?.icon;
98
+ return jsx(DecorativeTooltip, {
99
+ placement: "left",
100
+ className: "es:p-4! es:rounded-2xl! es:max-w-96!",
101
+ theme: "light",
102
+ offset: 7.5,
103
+ arrow: true,
104
+ text: jsxs(Fragment$1, { children: [
105
+ jsx("span", {
106
+ className: "es:block es:font-variation-[\"wdth\"_95,\"wght\"_475,\"ROND\"_100] es:text-14 es:leading-none es:text-surface-600",
107
+ children: __("Default", "eightshift-ui-components")
108
+ }),
109
+ jsxs("span", {
110
+ className: "es:block es:text-balance es:tabular-nums es:font-variation-[\"wdth\"_64,\"wght\"_275,\"ROND\"_50,\"slnt\"_-2] es:text-surface-500 es:mt-1",
111
+ children: [
112
+ !firstMobileFirstOverride && !lastDesktopFirstOverride && __("Always applied, regardless of browser width.", "eightshift-ui-components"),
113
+ firstMobileFirstOverride && !isDesktopFirst && sprintf(__("Applies when the browser width is %dpx or less.", "eightshift-ui-components"), breakpointData[firstMobileFirstOverride] - 1),
114
+ lastDesktopFirstOverride && isDesktopFirst && sprintf(__("Applies when the browser width is %dpx or more.", "eightshift-ui-components"), breakpointData[lastDesktopFirstOverride.replace("max-", "")])
115
+ ]
116
+ }),
117
+ (firstMobileFirstOverride && !isDesktopFirst || lastDesktopFirstOverride && isDesktopFirst) && jsxs("div", {
118
+ className: "es:mx-auto es:mt-5",
119
+ children: [firstMobileFirstOverride && !isDesktopFirst && jsx(BreakpointPreview, { blocks: [{
120
+ breakpoint: __("Default", "eightshift-ui-components"),
121
+ widthEnd: breakpointData[firstMobileFirstOverride] - 1,
122
+ value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
123
+ dotsStart: true,
124
+ alignEnd: true,
125
+ active: true
126
+ }, {
127
+ breakpoint: breakpointUiData?.[firstMobileFirstOverride]?.label ?? firstMobileFirstOverride,
128
+ value: options?.find((opt) => opt.value === value?.[firstMobileFirstOverride])?.label ?? upperFirst(value?.[firstMobileFirstOverride]),
129
+ dotsEnd: true
130
+ }] }), lastDesktopFirstOverride && isDesktopFirst && jsx(BreakpointPreview, { blocks: [{
131
+ breakpoint: breakpointUiData?.[lastDesktopFirstOverride.replace("max-", "")]?.label ?? lastDesktopFirstOverride.replace("max-", ""),
132
+ value: options?.find((opt) => opt.value === value?.[lastDesktopFirstOverride])?.label ?? upperFirst(value?.[lastDesktopFirstOverride]),
133
+ dotsStart: true,
134
+ alignEnd: true
135
+ }, {
136
+ breakpoint: __("Default", "eightshift-ui-components"),
137
+ value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
138
+ width: breakpointData[lastDesktopFirstOverride.replace("max-", "")],
139
+ dotsEnd: true,
140
+ active: true
141
+ }] })]
142
+ })
143
+ ] }),
144
+ children: jsx("div", {
145
+ className: "es:icon:size-6 es:mx-0.5 es:text-accent-700",
146
+ children: jsx(Icon, {
147
+ icon: overrideIcon,
148
+ fallback: jsx(Icon, { icon: `screen${upperFirst(isDesktopFirst ? rawBreakpoints.at(-1) : rawBreakpoints.at(0))}` })
149
+ })
150
+ })
151
+ });
152
+ };
153
+ return jsxs(BaseControl, {
154
+ icon,
155
+ label,
156
+ subtitle,
157
+ help,
158
+ className,
159
+ actions: jsxs(Fragment$1, { children: [inline && jsx(AnimatedVisibility, {
160
+ className: "es:mr-0.5",
161
+ visible: !detailsVisible,
162
+ transition: "scaleFade",
163
+ noInitial: true,
164
+ children: children({
165
+ breakpoint: "_default",
166
+ currentValue: value?.["_default"],
167
+ handleChange: (newValue) => onChange({
168
+ ...value,
169
+ _default: newValue
170
+ }),
171
+ options,
172
+ key: Object.keys(value),
173
+ isInlineCollapsedView: true
174
+ })
175
+ }, "_default-inline"), jsxs(ButtonGroup, { children: [jsx(ToggleButton, {
176
+ icon: responsiveOverridesAlt3Fill,
177
+ onChange: () => setDetailsVisible(!detailsVisible),
178
+ selected: detailsVisible,
179
+ tooltip: detailsVisible ? __("Hide responsive overrides", "eightshift-ui-components") : __("Show responsive overrides", "eightshift-ui-components")
180
+ }), jsxs(Menu, {
181
+ "aria-label": __("Responsive options", "eightshift-ui-components"),
182
+ tooltip: __("Responsive options", "eightshift-ui-components"),
183
+ popoverProps: { placement: "bottom right" },
184
+ triggerProps: { className: "es:w-6 es:stroke-[1.25]" },
185
+ triggerIcon: dropdownCaretAlt,
186
+ children: [
187
+ !noModeSelect && jsxs(Fragment$1, { children: [
188
+ jsx(MenuSectionHeader, { children: __("Mode", "eightshift-ui-components") }),
189
+ jsx(OptionSelect, {
190
+ value: isDesktopFirst,
191
+ onChange: (newMode) => {
192
+ onChange({
193
+ _default: value["_default"],
194
+ _desktopFirst: newMode
195
+ });
196
+ },
197
+ options: [{
198
+ endIcon: responsiveOverridesAltFill,
199
+ label: __("Mobile-first", "eightshift-ui-components"),
200
+ value: false
201
+ }, {
202
+ endIcon: responsiveOverridesAlt2Fill,
203
+ label: __("Desktop-first", "eightshift-ui-components"),
204
+ value: true
205
+ }],
206
+ type: "standaloneMenuItems"
207
+ }),
208
+ jsx(MenuSeparator, {})
209
+ ] }),
210
+ Object.keys(value).some((key) => !key?.startsWith("_") && typeof value?.[key] !== "undefined") && jsx(SubMenuItem, {
211
+ manualWidth: true,
212
+ popoverProps: { className: "es:max-w-full!" },
213
+ trigger: jsx(MenuItem, {
214
+ icon: previewResponsive,
215
+ children: __("Breakpoint preview", "eightshift-ui-components")
216
+ }),
217
+ children: jsx(MenuItem, {
218
+ disabled: true,
219
+ children: jsx(ResponsivePreview, {
220
+ value,
221
+ isDesktopFirst,
222
+ breakpoints,
223
+ desktopFirstBreakpoints,
224
+ options,
225
+ breakpointData,
226
+ breakpointUiData
227
+ })
228
+ })
229
+ }),
230
+ Object.keys(value).some((key) => !key?.startsWith("_") && typeof value?.[key] !== "undefined") && jsx(MenuSeparator, {}),
231
+ jsx(MenuItem, {
232
+ icon: clearAlt,
233
+ onClick: () => {
234
+ const newValue = { ...value };
235
+ [...breakpoints, ...desktopFirstBreakpoints].forEach((breakpoint) => {
236
+ delete newValue[breakpoint];
237
+ });
238
+ onChange(newValue);
239
+ },
240
+ danger: true,
241
+ children: __("Clear overrides", "eightshift-ui-components")
242
+ })
243
+ ]
244
+ })] })] }),
245
+ children: [
246
+ !isDesktopFirst && !inline && jsxs("div", {
247
+ className: clsx("es:grid es:items-center es:gap-x-2 es:transition-[grid-template-columns,margin-block-end] es:duration-200", detailsVisible && "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25", innerContentAlign === "start" && "es:justify-items-start", innerContentAlign === "center" && "es:justify-items-center", innerContentAlign === "end" && "es:justify-items-end", innerContentAlign === "stretch" && "es:justify-items-stretch", detailsVisible ? "es:mb-0.5 es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)]" : "es:grid-cols-[minmax(0,0rem)_minmax(0,1fr)_minmax(0,2.25rem)]"),
248
+ children: [detailsVisible && jsx(DefaultTooltip, {}), jsx("div", {
249
+ className: clsx("es:w-full", detailsVisible ? "es:col-start-2 es:col-end-2" : "es:col-span-full"),
250
+ children: children({
251
+ breakpoint: "_default",
252
+ currentValue: value?.["_default"],
253
+ handleChange: (newValue) => onChange({
254
+ ...value,
255
+ _default: newValue
256
+ }),
257
+ options,
258
+ key: Object.keys(value)
259
+ })
260
+ })]
261
+ }, "_default-mobile-first"),
262
+ !isDesktopFirst && inline && jsxs(AnimatedVisibility, {
263
+ className: clsx("es:mb-0.5 es:grid es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)] es:items-center es:gap-x-2", "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25", innerContentAlign === "start" && "es:justify-items-start", innerContentAlign === "center" && "es:justify-items-center", innerContentAlign === "end" && "es:justify-items-end", innerContentAlign === "stretch" && "es:justify-items-stretch"),
264
+ visible: detailsVisible,
265
+ children: [jsx(DefaultTooltip, {}), jsx("div", {
266
+ className: "es:col-start-2 es:col-end-2 es:w-full",
267
+ children: children({
268
+ breakpoint: "_default",
269
+ currentValue: value?.["_default"],
270
+ handleChange: (newValue) => onChange({
271
+ ...value,
272
+ _default: newValue
273
+ }),
274
+ options,
275
+ key: Object.keys(value),
276
+ isInlineExpandedView: true
277
+ })
278
+ })]
279
+ }, "_default-mobile-first-inline"),
280
+ jsx(AnimatedVisibility, {
281
+ visible: detailsVisible,
282
+ className: "es:space-y-0.5",
283
+ children: breakpointsToMap.map((breakpoint, i) => {
284
+ const realBreakpointName = breakpoint.replace("max-", "");
285
+ const filterBreakpoints = isDesktopFirst ? [...breakpointsToMap, "_default"] : ["_default", ...breakpointsToMap];
286
+ const aboveOverride = isDesktopFirst ? filterBreakpoints.slice(i + 1).find((breakpoint) => typeof value?.[breakpoint] !== "undefined") : filterBreakpoints.slice(0, i + 1).toReversed().find((breakpoint) => typeof value?.[breakpoint] !== "undefined");
287
+ const belowOverride = isDesktopFirst ? filterBreakpoints.slice(0, i).toReversed().find((breakpoint) => typeof value?.[breakpoint] !== "undefined") : filterBreakpoints.slice(i + 2).find((breakpoint) => typeof value?.[breakpoint] !== "undefined");
288
+ return jsxs("div", {
289
+ className: clsx("es:grid es:grid-cols-[minmax(0,auto)_minmax(0,1fr)_minmax(0,2.25rem)] es:items-center es:gap-x-2", "es:bg-white/50 es:p-1.5 es:rounded-sm es:inset-ring es:inset-ring-surface-200/60", !isDesktopFirst && "es:last:rounded-b-2xl", isDesktopFirst && "es:first:rounded-t-2xl", innerContentAlign === "start" && "es:justify-items-start", innerContentAlign === "center" && "es:justify-items-center", innerContentAlign === "end" && "es:justify-items-end", innerContentAlign === "stretch" && "es:justify-items-stretch"),
290
+ children: [
291
+ jsx(DecorativeTooltip, {
292
+ placement: "left",
293
+ theme: "light",
294
+ className: "es:p-4! es:rounded-2xl! es:max-w-96!",
295
+ offset: 7.5,
296
+ arrow: true,
297
+ text: jsxs(Fragment$1, { children: [
298
+ jsx("span", {
299
+ className: "es:block es:font-variation-[\"wdth\"_95,\"wght\"_475,\"ROND\"_100] es:text-14 es:leading-none es:text-surface-600",
300
+ children: breakpointUiData?.[realBreakpointName]?.label ?? upperFirst(realBreakpointName)
301
+ }),
302
+ jsxs("span", {
303
+ className: "es:block es:text-balance es:tabular-nums es:font-variation-[\"wdth\"_64,\"wght\"_275,\"ROND\"_50,\"slnt\"_-2] es:text-surface-500 es:mt-1",
304
+ children: [!isDesktopFirst && jsxs(Fragment$1, { children: [
305
+ !belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(__("Applied when the browser width is %dpx or more.", "eightshift-ui-components"), breakpointData[realBreakpointName]),
306
+ belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(__("Applied when the browser width is between %dpx and %dpx.", "eightshift-ui-components"), breakpointData[realBreakpointName], breakpointData[belowOverride] - 1),
307
+ typeof value[breakpoint] === "undefined" && sprintf(__("From %dpx", "eightshift-ui-components"), breakpointData[realBreakpointName])
308
+ ] }), isDesktopFirst && jsxs(Fragment$1, { children: [
309
+ !belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(__("Applied when the browser width is %dpx or less.", "eightshift-ui-components"), breakpointData[realBreakpointName] - 1),
310
+ belowOverride && typeof value[breakpoint] !== "undefined" && sprintf(__("Applied when the browser width is between %dpx and %dpx.", "eightshift-ui-components"), breakpointData[belowOverride?.replace("max-", "")], breakpointData[realBreakpointName] - 1),
311
+ typeof value[breakpoint] === "undefined" && sprintf(__("Up to %dpx", "eightshift-ui-components"), breakpointData[breakpoint?.replace("max-", "")])
312
+ ] })]
313
+ }),
314
+ typeof value[breakpoint] === "undefined" && jsx("span", {
315
+ className: "es:mt-2 es:text-sm es:leading-none es:block es:font-variation-[\"wdth\"_75,\"wght\"_300,\"slnt\"_-5]",
316
+ children: __("Not set", "eightshift-ui-components")
317
+ }),
318
+ typeof value[breakpoint] !== "undefined" && jsxs("div", {
319
+ className: "es:mx-auto es:mt-5",
320
+ children: [!isDesktopFirst && jsx(BreakpointPreview, {
321
+ dotsStart: belowOverride,
322
+ blocks: [
323
+ aboveOverride !== "_default" && typeof value?.[aboveOverride] !== "undefined" && {
324
+ breakpoint: breakpointUiData?.[aboveOverride]?.label ?? aboveOverride,
325
+ value: options?.find((opt) => opt.value === value?.[aboveOverride])?.label ?? upperFirst(value?.[aboveOverride]),
326
+ dotsStart: !belowOverride,
327
+ alignEnd: !belowOverride
328
+ },
329
+ aboveOverride === "_default" && typeof value?.["_default"] !== "undefined" && {
330
+ breakpoint: __("Default", "eightshift-ui-components"),
331
+ value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
332
+ dotsStart: !belowOverride,
333
+ alignEnd: !belowOverride
334
+ },
335
+ {
336
+ breakpoint: breakpointUiData?.[realBreakpointName]?.label ?? realBreakpointName,
337
+ value: options?.find((opt) => opt.value === value?.[breakpoint])?.label ?? upperFirst(value?.[breakpoint]),
338
+ width: breakpointData[realBreakpointName],
339
+ active: true,
340
+ dotsEnd: !belowOverride
341
+ },
342
+ belowOverride && typeof value?.[belowOverride] !== "undefined" && {
343
+ breakpoint: breakpointUiData?.[belowOverride]?.label ?? belowOverride,
344
+ value: options?.find((opt) => opt.value === value?.[belowOverride])?.label ?? upperFirst(value?.[belowOverride]),
345
+ width: breakpointData[belowOverride],
346
+ dotsEnd: true
347
+ }
348
+ ]
349
+ }), isDesktopFirst && jsx(BreakpointPreview, {
350
+ dotsStart: true,
351
+ dotsEnd: aboveOverride !== "_default",
352
+ blocks: [
353
+ belowOverride && {
354
+ breakpoint: breakpointUiData?.[belowOverride?.replace("max-", "")]?.label ?? belowOverride?.replace("max-", ""),
355
+ value: options?.find((opt) => opt.value === value?.[belowOverride])?.label ?? upperFirst(value?.[belowOverride])
356
+ },
357
+ {
358
+ breakpoint: breakpointUiData?.[realBreakpointName]?.label ?? realBreakpointName,
359
+ value: options?.find((opt) => opt.value === value?.[breakpoint])?.label ?? upperFirst(value?.[realBreakpointName]),
360
+ width: breakpointData[filterBreakpoints[i - 1]?.replace("max-", "")],
361
+ active: true
362
+ },
363
+ aboveOverride !== "_default" && {
364
+ breakpoint: breakpointUiData?.[aboveOverride?.replace("max-", "")]?.label ?? aboveOverride?.replace("max-", ""),
365
+ value: options?.find((opt) => opt.value === value?.[aboveOverride])?.label ?? upperFirst(value?.[aboveOverride]),
366
+ width: breakpointData[breakpoint?.replace("max-", "")]
367
+ },
368
+ aboveOverride === "_default" && {
369
+ breakpoint: __("Default", "eightshift-ui-components"),
370
+ value: options?.find((opt) => opt.value === value?.["_default"])?.label ?? upperFirst(value?.["_default"]),
371
+ width: breakpointData[breakpoint?.replace("max-", "")],
372
+ dotsEnd: true
373
+ }
374
+ ]
375
+ })]
376
+ })
377
+ ] }),
378
+ children: jsx("div", {
379
+ className: clsx("es:transition-colors es:icon:size-6 es:mx-0.5", typeof value[breakpoint] !== "undefined" ? "es:text-surface-600" : "es:text-surface-300"),
380
+ children: jsx(Icon, {
381
+ icon: breakpointUiData?.[realBreakpointName]?.icon,
382
+ fallback: jsx(Icon, { icon: `screen${upperFirst(realBreakpointName)}` })
383
+ })
384
+ })
385
+ }),
386
+ children({
387
+ breakpoint,
388
+ currentValue: value?.[breakpoint],
389
+ handleChange: (newValue) => {
390
+ onChange({
391
+ ...value,
392
+ [breakpoint]: newValue
393
+ });
394
+ },
395
+ options,
396
+ key: Object.keys(value)
397
+ }),
398
+ jsx(Button, {
399
+ onPress: () => {
400
+ const newValue = { ...value };
401
+ delete newValue[breakpoint];
402
+ onChange(newValue);
403
+ },
404
+ icon: clearAlt,
405
+ disabled: typeof value?.[breakpoint] === "undefined",
406
+ type: "ghost"
407
+ })
408
+ ]
409
+ }, realBreakpointName);
410
+ })
411
+ }),
412
+ isDesktopFirst && !inline && jsxs("div", {
413
+ className: clsx("es:grid es:items-center es:gap-x-2 es:transition-[grid-template-columns,margin-block-start] es:duration-150", detailsVisible && "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25 es:transition-plus", innerContentAlign === "start" && "es:justify-items-start", innerContentAlign === "center" && "es:justify-items-center", innerContentAlign === "end" && "es:justify-items-end", innerContentAlign === "stretch" && "es:justify-items-stretch", detailsVisible ? "es:mt-0.5 es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)]" : "es:grid-cols-[minmax(0,0rem)_minmax(0,1fr)_minmax(0,2.25rem)]"),
414
+ children: [detailsVisible && jsx(DefaultTooltip, {}), jsx("div", {
415
+ className: clsx("es:w-full", detailsVisible ? "es:col-start-2 es:col-end-2" : "es:col-span-full"),
416
+ children: children({
417
+ breakpoint: "_default",
418
+ currentValue: value?.["_default"],
419
+ handleChange: (newValue) => onChange({
420
+ ...value,
421
+ _default: newValue
422
+ }),
423
+ options,
424
+ key: Object.keys(value)
425
+ })
426
+ })]
427
+ }, "_default-desktop-first"),
428
+ isDesktopFirst && inline && jsxs(AnimatedVisibility, {
429
+ className: clsx("es:grid es:grid-cols-[minmax(0,1.75rem)_minmax(0,1fr)_minmax(0,2.25rem)] es:items-center es:gap-x-2 es:pt-1", "es:bg-white/50 es:p-1.5 es:rounded-sm es:first:rounded-t-2xl es:last:rounded-b-2xl es:inset-ring es:inset-ring-accent-600/25", innerContentAlign === "start" && "es:justify-items-start", innerContentAlign === "center" && "es:justify-items-center", innerContentAlign === "end" && "es:justify-items-end", innerContentAlign === "stretch" && "es:justify-items-stretch"),
430
+ visible: detailsVisible,
431
+ children: [jsx(DefaultTooltip, {}), jsx("div", {
432
+ className: "es:col-start-2 es:col-end-2",
433
+ children: children({
434
+ breakpoint: "_default",
435
+ currentValue: value?.["_default"],
436
+ handleChange: (newValue) => onChange({
437
+ ...value,
438
+ _default: newValue
439
+ }),
440
+ options,
441
+ key: Object.keys(value),
442
+ isInlineExpandedView: true
443
+ })
444
+ })]
445
+ }, "_default-desktop-first-inline")
446
+ ]
447
+ });
567
448
  };
449
+ //#endregion
450
+ export { Responsive };