@preply/ds-web-lib 10.0.0 → 11.1.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 (303) hide show
  1. package/dist/Accordion-B0hR-tcI.js +96 -0
  2. package/dist/AlertBannerProvider-Cf7w9AOq.js +76 -0
  3. package/dist/AlertDialog-BG-diKBi.js +475 -0
  4. package/dist/Avatar-B-JdqVyg.js +66 -0
  5. package/dist/AvatarWithStatus-CD9jEqEB.js +36 -0
  6. package/dist/Badge-Dd-CLBoW.js +50 -0
  7. package/dist/Box-BJBE9KNm.js +91 -0
  8. package/dist/BubbleCounter.module-BU2S0euA.js +16 -0
  9. package/dist/Button-C35BZJZT.js +91 -0
  10. package/dist/ButtonBase-8eUyTWxX.js +215 -0
  11. package/dist/Checkbox-CtolNbxI.js +108 -0
  12. package/dist/Chips-BRGw7Uup.js +99 -0
  13. package/dist/ChipsPrimitive-Bezq7ptE.js +1179 -0
  14. package/dist/CountryFlag-DVDKHmQH.js +43 -0
  15. package/dist/Dialog.module-Db2BJAn4.js +21 -0
  16. package/dist/DialogCloseButton-DjDd9Mid.js +98 -0
  17. package/dist/DialogDescription-8zw9t6pm.js +44 -0
  18. package/dist/DialogRoot-B67oJduC.js +335 -0
  19. package/dist/DialogRootContext-Bz8RW-Mq.js +12 -0
  20. package/dist/DialogTitle-C2Nn2ys-.js +43 -0
  21. package/dist/Divider-DvwDWB9_.js +17 -0
  22. package/dist/DropdownMenu.primitives-BrsTBvMk.js +4007 -0
  23. package/dist/FieldButton-B2slox8P.js +32 -0
  24. package/dist/FormControl-qnbQL1iF.js +128 -0
  25. package/dist/Heading-DA9gHfsx.js +71 -0
  26. package/dist/Icon-CixAeOSd.js +48 -0
  27. package/dist/IconButton-BPKpgfep.js +31 -0
  28. package/dist/InputContainer-CzzuOe_p.js +38 -0
  29. package/dist/LayoutFlex-e9auDvWD.js +86 -0
  30. package/dist/LayoutFlexItem-D9ziMmHe.js +48 -0
  31. package/dist/LayoutGridItem-Q8Lnvrri.js +34 -0
  32. package/dist/Link-CdoJVeER.js +66 -0
  33. package/dist/Loader-BMOxdJce.js +26 -0
  34. package/dist/OnboardingTooltip-B47_Yrsj.js +165 -0
  35. package/dist/OnboardingTour-DUUoI5WE.js +131 -0
  36. package/dist/PasswordField-Bx5YG62t.js +93 -0
  37. package/dist/PreplyLogo-abgOre30.js +112 -0
  38. package/dist/ProgressBar-CEU4GyHn.js +31 -0
  39. package/dist/ProgressSteps-BSqopxqv.js +45 -0
  40. package/dist/Select-Bo7PX_8V.js +124 -0
  41. package/dist/Slider-Crg4DEn_.js +64 -0
  42. package/dist/Spinner-Ck8KQA22.js +86 -0
  43. package/dist/Stars-D5QspUBE.js +72 -0
  44. package/dist/Steps-DbN5vFrP.js +173 -0
  45. package/dist/Switch-Ck_xB0ID.js +49 -0
  46. package/dist/Text-CaOF75Z-.js +121 -0
  47. package/dist/TextHighlighted-Dwq9Clgn.js +34 -0
  48. package/dist/TextInline-BcA4H2Tk.js +34 -0
  49. package/dist/Toast-wJAjSLfo.js +1019 -0
  50. package/dist/TokyoUIChevronDown-DGcVqR1z.js +14 -0
  51. package/dist/Tooltip-grvKQxTN.js +84 -0
  52. package/dist/VisuallyHidden-CtcHcZCK.js +29 -0
  53. package/dist/align-self-VrZUceie.js +42 -0
  54. package/dist/assets/Accordion.css +2 -2
  55. package/dist/assets/AlertBannerProvider.css +2 -2
  56. package/dist/assets/AlertDialog.css +2 -2
  57. package/dist/assets/Avatar.css +3 -3
  58. package/dist/assets/AvatarWithStatus.css +2 -2
  59. package/dist/assets/Badge.css +1 -1
  60. package/dist/assets/Box.css +3 -3
  61. package/dist/assets/BubbleCounter.css +1 -1
  62. package/dist/assets/Button.css +4 -4
  63. package/dist/assets/ButtonBase.css +40 -46
  64. package/dist/assets/Checkbox.css +1 -1
  65. package/dist/assets/Chips.css +2 -2
  66. package/dist/assets/ChipsPrimitive.css +2 -2
  67. package/dist/assets/CountryFlag.css +1 -1
  68. package/dist/assets/Dialog.css +13 -4
  69. package/dist/assets/Divider.css +1 -1
  70. package/dist/assets/DropdownMenu.css +2 -2
  71. package/dist/assets/FieldButton.css +3 -3
  72. package/dist/assets/FormControl.css +1 -1
  73. package/dist/assets/Heading.css +3 -3
  74. package/dist/assets/Icon.css +3 -3
  75. package/dist/assets/InputContainer.css +2 -2
  76. package/dist/assets/LayoutFlex.css +1 -1
  77. package/dist/assets/LayoutFlexItem.css +1 -1
  78. package/dist/assets/Link.css +3 -3
  79. package/dist/assets/Loader.css +1 -1
  80. package/dist/assets/OnboardingTooltip.css +6 -4
  81. package/dist/assets/OnboardingTour.css +3 -2
  82. package/dist/assets/PreplyLogo.css +1 -1
  83. package/dist/assets/ProgressBar.css +1 -1
  84. package/dist/assets/ProgressSteps.css +1 -1
  85. package/dist/assets/Select.css +2 -2
  86. package/dist/assets/Slider.css +1 -1
  87. package/dist/assets/Spinner.css +3 -3
  88. package/dist/assets/Stars.css +3 -3
  89. package/dist/assets/Steps.css +2 -2
  90. package/dist/assets/Switch.css +1 -1
  91. package/dist/assets/Text.css +3 -3
  92. package/dist/assets/TextHighlighted.css +3 -3
  93. package/dist/assets/TextInline.css +3 -3
  94. package/dist/assets/Toast.css +2 -2
  95. package/dist/assets/Tooltip.css +1 -1
  96. package/dist/assets/align-self.css +1 -1
  97. package/dist/assets/{IconTile.css → components.css} +9 -1
  98. package/dist/assets/exp-color.css +2 -2
  99. package/dist/assets/index.css +1 -1
  100. package/dist/assets/layout-gap.css +3 -3
  101. package/dist/assets/layout-grid.css +3 -3
  102. package/dist/assets/layout-hide.css +1 -1
  103. package/dist/assets/layout-padding.css +3 -3
  104. package/dist/assets/layout-relative.css +1 -1
  105. package/dist/assets/text-accent.css +2 -2
  106. package/dist/assets/text-centered.css +1 -1
  107. package/dist/assets/text-weight.css +2 -2
  108. package/dist/chunk-BVTlhY3a.js +24 -0
  109. package/dist/components/Accordion/Accordion.js +4 -60
  110. package/dist/components/Accordion/hooks/useOnOpenChange.js +19 -28
  111. package/dist/components/AlertBanner/AlertBanner.js +11 -26
  112. package/dist/components/AlertBanner/AlertBannerProvider.js +3 -8
  113. package/dist/components/AlertBanner/primitives/AlertBannerAction.js +11 -69
  114. package/dist/components/AlertBanner/primitives/AlertBannerIcon.js +77 -39
  115. package/dist/components/AlertBanner/primitives/AlertBannerRoot.js +26 -22
  116. package/dist/components/AlertBanner/primitives/AlertBannerText.js +11 -70
  117. package/dist/components/AlertDialog/AlertDialog.d.ts +3 -3
  118. package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -1
  119. package/dist/components/AlertDialog/AlertDialog.js +5 -94
  120. package/dist/components/Avatar/Avatar.js +3 -71
  121. package/dist/components/AvatarWithStatus/AvatarWithStatus.js +3 -43
  122. package/dist/components/Badge/Badge.js +4 -62
  123. package/dist/components/Box/Box.js +3 -95
  124. package/dist/components/BubbleCounter/BubbleCounter.js +23 -28
  125. package/dist/components/Button/Button.js +4 -80
  126. package/dist/components/CalloutBanner/CalloutBanner.js +61 -12
  127. package/dist/components/CalloutBanner/primitives/CalloutBannerDismissButton.js +50 -22
  128. package/dist/components/CalloutBanner/primitives/CalloutBannerIcon.js +86 -45
  129. package/dist/components/CalloutBanner/primitives/CalloutBannerRoot.js +50 -24
  130. package/dist/components/CalloutBanner/primitives/CalloutBannerText.js +41 -11
  131. package/dist/components/Checkbox/Checkbox.js +4 -78
  132. package/dist/components/Checkbox/hooks/useIndeterminate.js +24 -30
  133. package/dist/components/Chips/Chips.types.js +0 -1
  134. package/dist/components/Chips/DismissibleChips.js +117 -86
  135. package/dist/components/Chips/MultiSelectChips.js +98 -64
  136. package/dist/components/Chips/SingleSelectChips.js +94 -57
  137. package/dist/components/Chips/private/ChipsPrimitive.js +4 -17
  138. package/dist/components/CountryFlag/CountryFlag.js +3 -44
  139. package/dist/components/Dialog/Dialog.js +56 -31
  140. package/dist/components/Dialog/DialogSteps.js +40 -29
  141. package/dist/components/Dialog/primitives/DialogActions.js +26 -19
  142. package/dist/components/Dialog/primitives/DialogButtonStack.d.ts.map +1 -1
  143. package/dist/components/Dialog/primitives/DialogButtonStack.js +22 -15
  144. package/dist/components/Dialog/primitives/DialogCloseButton.d.ts +1 -1
  145. package/dist/components/Dialog/primitives/DialogCloseButton.d.ts.map +1 -1
  146. package/dist/components/Dialog/primitives/DialogCloseButton.js +4 -93
  147. package/dist/components/Dialog/primitives/DialogDescription.js +3 -43
  148. package/dist/components/Dialog/primitives/DialogFooter.js +37 -34
  149. package/dist/components/Dialog/primitives/DialogRoot.js +4 -1459
  150. package/dist/components/Dialog/primitives/DialogTitle.js +3 -42
  151. package/dist/components/Divider/Divider.js +3 -14
  152. package/dist/components/DropdownMenu/DropdownMenu.js +253 -188
  153. package/dist/components/DropdownMenu/primitives/DropdownMenu.primitives.js +5 -34
  154. package/dist/components/DropdownMenu/primitives/DropdownMenuSelectItem.primitives.js +121 -71
  155. package/dist/components/FieldButton/FieldButton.js +3 -37
  156. package/dist/components/FormControl/FormControl.js +3 -105
  157. package/dist/components/Heading/Heading.js +3 -78
  158. package/dist/components/Icon/Icon.js +4 -49
  159. package/dist/components/IconButton/IconButton.d.ts +5 -1
  160. package/dist/components/IconButton/IconButton.d.ts.map +1 -1
  161. package/dist/components/IconButton/IconButton.js +4 -28
  162. package/dist/components/IconTile/IconTile.js +11 -69
  163. package/dist/components/IntlFormatted/IntlFormattedAggregatedDateTime.js +16 -32
  164. package/dist/components/IntlFormatted/IntlFormattedCurrency.js +20 -42
  165. package/dist/components/IntlFormatted/IntlFormattedDate.js +73 -195
  166. package/dist/components/IntlFormatted/IntlFormattedTime.js +14 -24
  167. package/dist/components/IntlFormatted/Wrapper.js +14 -8
  168. package/dist/components/LayoutFlex/LayoutFlex.js +3 -100
  169. package/dist/components/LayoutFlex/style/getStyleAttrs.js +71 -143
  170. package/dist/components/LayoutFlex/tests/AlignItems.js +67 -97
  171. package/dist/components/LayoutFlex/tests/ColumnReverse.js +63 -100
  172. package/dist/components/LayoutFlex/tests/DataOverride.js +1498 -1093
  173. package/dist/components/LayoutFlex/tests/Default.js +19 -20
  174. package/dist/components/LayoutFlex/tests/Direction.js +65 -88
  175. package/dist/components/LayoutFlex/tests/Gap.js +115 -197
  176. package/dist/components/LayoutFlex/tests/HideInline.js +95 -136
  177. package/dist/components/LayoutFlex/tests/JustifyContent.js +75 -108
  178. package/dist/components/LayoutFlex/tests/Nowrap.js +35 -42
  179. package/dist/components/LayoutFlex/tests/Padding.js +207 -263
  180. package/dist/components/LayoutFlex/tests/Relative.js +49 -64
  181. package/dist/components/LayoutFlexItem/LayoutFlexItem.js +3 -54
  182. package/dist/components/LayoutGrid/LayoutGrid.js +26 -34
  183. package/dist/components/LayoutGridItem/LayoutGridItem.js +3 -41
  184. package/dist/components/Link/Link.js +3 -72
  185. package/dist/components/Loader/Loader.js +3 -32
  186. package/dist/components/NumberField/NumberField.js +33 -35
  187. package/dist/components/ObserveIntersection/ObserveIntersection.js +41 -42
  188. package/dist/components/OnboardingTooltip/OnboardingTooltip.js +4 -115
  189. package/dist/components/OnboardingTour/OnboardingTour.js +4 -114
  190. package/dist/components/PasswordField/PasswordField.js +3 -78
  191. package/dist/components/PreplyLogo/PreplyLogo.js +3 -81
  192. package/dist/components/ProgressBar/ProgressBar.js +3 -27
  193. package/dist/components/ProgressSteps/ProgressSteps.js +3 -48
  194. package/dist/components/Rating/Rating.js +29 -20
  195. package/dist/components/Rating/RatingInput.js +57 -59
  196. package/dist/components/Rating/Stars.js +4 -8
  197. package/dist/components/Rating/hooks/useHasError.js +11 -15
  198. package/dist/components/Rating/hooks/useHoverPercentage.js +37 -45
  199. package/dist/components/Rating/hooks/useInputState.js +18 -24
  200. package/dist/components/Rating/hooks/useLocalizations.js +12 -24
  201. package/dist/components/Rating/utils/roundToHalfDecimal.js +4 -4
  202. package/dist/components/SelectField/Select.js +5 -112
  203. package/dist/components/SelectField/SelectField.js +29 -24
  204. package/dist/components/SelectField/hooks/useBreakpointMatch.js +18 -19
  205. package/dist/components/ShowOnIntersection/ShowOnIntersection.js +32 -21
  206. package/dist/components/Slider/RangeSlider.js +62 -52
  207. package/dist/components/Slider/Slider.js +3 -10
  208. package/dist/components/Steps/Steps.js +4 -210
  209. package/dist/components/Switch/Switch.js +3 -51
  210. package/dist/components/Text/Text.js +3 -128
  211. package/dist/components/TextField/TextField.js +27 -29
  212. package/dist/components/TextHighlighted/TextHighlighted.js +3 -41
  213. package/dist/components/TextInline/TextInline.js +3 -40
  214. package/dist/components/TextareaField/TextareaField.js +26 -28
  215. package/dist/components/Toast/Toast.js +4 -1168
  216. package/dist/components/Tooltip/Tooltip.js +3 -66
  217. package/dist/components/deprecated/Chips/Chips.js +4 -76
  218. package/dist/components/deprecated/NativeSelectField/NativeSelect.js +40 -32
  219. package/dist/components/deprecated/NativeSelectField/NativeSelectField.js +34 -33
  220. package/dist/components/deprecated/index.js +5 -6
  221. package/dist/components/index.js +50 -150
  222. package/dist/components/private/ButtonBase/ButtonBase.d.ts +7 -11
  223. package/dist/components/private/ButtonBase/ButtonBase.d.ts.map +1 -1
  224. package/dist/components/private/ButtonBase/ButtonBase.js +3 -247
  225. package/dist/components/private/Input/Input.js +27 -19
  226. package/dist/components/private/Input/InputContainer.js +3 -5
  227. package/dist/components/private/Input/Textarea.js +24 -20
  228. package/dist/components/private/Input/index.js +2 -4
  229. package/dist/components/private/Spinner/Spinner.js +3 -52
  230. package/dist/components/private/VisuallyHidden/VisuallyHidden.js +3 -15
  231. package/dist/components-BIYP8wHJ.js +200 -0
  232. package/dist/exp-color-C5mKAN91.js +74 -0
  233. package/dist/floating-ui.utils.dom-CoeTbDZx.js +215 -0
  234. package/dist/index.js +50 -150
  235. package/dist/index.module-1c7ENvxc.js +7 -0
  236. package/dist/jsx-runtime-i4KUlhDu.js +743 -0
  237. package/dist/layout-gap.module-DLD8bcR4.js +95 -0
  238. package/dist/layout-grid.module-CZfhrKrB.js +101 -0
  239. package/dist/layout-hide.module-B1P0N4i3.js +53 -0
  240. package/dist/layout-padding-ugY-yd2q.js +389 -0
  241. package/dist/layout-relative.module-B5xrFD9j.js +6 -0
  242. package/dist/render-icon-Ch3b2dE0.js +290 -0
  243. package/dist/shared-styles/align-self/align-self.js +2 -36
  244. package/dist/shared-styles/exp-color/exp-color.js +2 -68
  245. package/dist/shared-styles/layout-gap/layout-gap.js +13 -7
  246. package/dist/shared-styles/layout-grid/layout-grid.js +28 -28
  247. package/dist/shared-styles/layout-grid-responsive-columns/layout-grid-responsive-columns.js +29 -43
  248. package/dist/shared-styles/layout-hide/layout-hide.js +8 -8
  249. package/dist/shared-styles/layout-padding/layout-padding.js +2 -5
  250. package/dist/shared-styles/layout-relative/layout-relative.js +14 -8
  251. package/dist/shared-styles/text-accent/text-accent.js +2 -25
  252. package/dist/shared-styles/text-centered/text-centered.js +2 -24
  253. package/dist/shared-styles/text-weight/text-weight.js +2 -15
  254. package/dist/store-sN_eYeZT.js +1064 -0
  255. package/dist/storybook-utils/consts.js +6 -8
  256. package/dist/storybook-utils/index.js +1 -5
  257. package/dist/text-accent-CfUFx-1K.js +30 -0
  258. package/dist/text-centered-Dwp2_-Yp.js +30 -0
  259. package/dist/text-weight-CwoqmM4o.js +21 -0
  260. package/dist/useBaseUiId-CWAD_PSs.js +13 -0
  261. package/dist/useBreakpointMatch-D9a3CTNK.js +338 -0
  262. package/dist/useButton-DHTh3Hm7.js +148 -0
  263. package/dist/useDialogClose-BzFIyWco.js +22 -0
  264. package/dist/useId-CJsH-2wV.js +34 -0
  265. package/dist/useOpenInteractionType-D8vA_ZKI.js +4104 -0
  266. package/dist/useRenderElement-ZBds6eRN.js +341 -0
  267. package/dist/utils/Orientation/OrientationProvider.js +54 -23
  268. package/dist/utils/Orientation/index.js +2 -4
  269. package/dist/utils/RovingTabIndex/RovingTabIndexProvider.js +70 -44
  270. package/dist/utils/RovingTabIndex/index.js +2 -4
  271. package/dist/utils/createRequiredContext.js +23 -13
  272. package/dist/utils/filterAttributesPassedByRadixUIAtRuntime.js +28 -25
  273. package/dist/utils/render-icon.js +3 -320
  274. package/dist/utils/shared-strings.js +24 -32
  275. package/dist/utils/useBreakpointMatch.d.ts.map +1 -1
  276. package/dist/utils/useBreakpointMatch.js +2 -183
  277. package/dist/utils/useControllableState/useControllableState.js +31 -25
  278. package/dist/utils/useMergeRefs.js +29 -14
  279. package/dist/utils/useStableCallback/useStableCallback.js +28 -13
  280. package/package.json +17 -22
  281. package/dist/AlertBannerProvider-DTx2Xp3V.js +0 -50
  282. package/dist/BubbleCounter.module-QMwXWFIS.js +0 -16
  283. package/dist/ChipsPrimitive-DzsaOWgY.js +0 -1244
  284. package/dist/Dialog.module-Ba1X7b3N.js +0 -29
  285. package/dist/DialogRootContext-BCXmmJAw.js +0 -15
  286. package/dist/DropdownMenu.primitives-CqJE9k4D.js +0 -5871
  287. package/dist/IconTile-D1G7MljH.js +0 -172
  288. package/dist/InputContainer-oHJlLWIi.js +0 -30
  289. package/dist/Slider-DB4Maswa.js +0 -55
  290. package/dist/Stars-C_mHop2H.js +0 -67
  291. package/dist/TokyoUIChevronDown-D_tD1yU8.js +0 -11
  292. package/dist/floating-ui.utils.dom-BvMNldxo.js +0 -234
  293. package/dist/index.module-Q9TzIR6B.js +0 -11
  294. package/dist/layout-gap.module-MKn_un_k.js +0 -97
  295. package/dist/layout-grid.module-P4B4WVUy.js +0 -103
  296. package/dist/layout-hide.module-Bpl3Pl-a.js +0 -55
  297. package/dist/layout-padding-D5I6rRlL.js +0 -373
  298. package/dist/layout-relative.module-1z75aSwo.js +0 -8
  299. package/dist/useBaseUiId-DavsGYu9.js +0 -8
  300. package/dist/useButton-fjQ0ak8m.js +0 -193
  301. package/dist/useId-BhIOp2JG.js +0 -28
  302. package/dist/useOpenInteractionType-DNYFqf-a.js +0 -2880
  303. package/dist/useRenderElement-BSthtPOr.js +0 -350
@@ -1,70 +1,104 @@
1
1
  "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { forwardRef } from "react";
2
+ import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
3
+ import "../../render-icon-Ch3b2dE0.js";
4
+ import { t as require_jsx_runtime } from "../../jsx-runtime-i4KUlhDu.js";
4
5
  import { useControllableState } from "../../utils/useControllableState/useControllableState.js";
5
- import { C as ChipsRoot, D as DEFAULT_ORIENTATION, a as ChipsList, b as ChipListItem, c as ChipButton, d as ChipLabel } from "../../ChipsPrimitive-DzsaOWgY.js";
6
+ import { a as ChipsList, i as ChipListItem, o as ChipsRoot, r as ChipLabel, s as DEFAULT_ORIENTATION, t as ChipButton } from "../../ChipsPrimitive-Bezq7ptE.js";
7
+ import { createRequiredContext } from "../../utils/createRequiredContext.js";
8
+ import { forwardRef } from "react";
6
9
  import { getDatasetProps } from "@preply/ds-web-core";
7
10
  import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
8
- import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
9
- import { createRequiredContext } from "../../utils/createRequiredContext.js";
10
- const [Provider, useMultiSelectChipsContext] = createRequiredContext("MultiSelectChips");
11
- const MultiSelectChips = forwardRef(function MultiSelectChips2({
12
- items,
13
- children,
14
- orientation = DEFAULT_ORIENTATION,
15
- "aria-label": ariaLabel,
16
- "aria-controls": ariaControls,
17
- value: valueProp,
18
- onValueChange: onValueChangeProp,
19
- defaultValue,
20
- dataset,
21
- ...restPropsPassedByRadixUI
22
- }, ref) {
23
- const [values, onValueChange] = useControllableState({
24
- value: valueProp,
25
- onValueChange: onValueChangeProp,
26
- defaultValue: defaultValue != null ? defaultValue : []
27
- });
28
- const onToggle = (value, isSelected) => {
29
- if (isSelected) {
30
- onValueChange(values.filter((v) => v !== value));
31
- } else {
32
- onValueChange([...values, value]);
33
- }
34
- };
35
- const content = items ? items.map(({
36
- label,
37
- value,
38
- ...props
39
- }) => /* @__PURE__ */ jsx(MultiSelectChipsItem, { value, ...props, children: label }, value)) : children;
40
- return /* @__PURE__ */ jsx(Provider, { value: {
41
- values,
42
- onToggle
43
- }, children: /* @__PURE__ */ jsx(ChipsRoot, { orientation, children: /* @__PURE__ */ jsx(ChipsList, { ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI), ref, orientation, "aria-orientation": orientation, "aria-label": ariaLabel, "aria-controls": ariaControls, role: "listbox", "aria-multiselectable": "true", ...getDatasetProps(dataset, {
44
- preplyDsComponent: webComponentNames.MultiSelectChips
45
- }), children: content }) }) });
11
+ //#region src/components/Chips/MultiSelectChips.tsx
12
+ var import_jsx_runtime = require_jsx_runtime();
13
+ var [Provider, useMultiSelectChipsContext] = createRequiredContext("MultiSelectChips");
14
+ /**
15
+ * A chips component that allows selection of multiple options from a group.
16
+ * Users can select multiple chips, and clicking a selected chip will deselect it.
17
+ *
18
+ * @remarks
19
+ * **Keyboard interactions:**
20
+ * - **Tab** to enter/exit the component (uses [roving tabindex pattern](https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/#kbd_roving_tabindex))
21
+ * - **Arrow keys** to navigate between chips within the group
22
+ * - **Space/Enter** to toggle selection of the focused chip
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * <MultiSelectChips aria-label="Select skills" defaultValue={['vocabulary', 'speaking']}>
27
+ * <MultiSelectChipsItem value="vocabulary">Vocabulary</MultiSelectChipsItem>
28
+ * <MultiSelectChipsItem value="speaking">Speaking</MultiSelectChipsItem>
29
+ * <MultiSelectChipsItem value="listening">Listening</MultiSelectChipsItem>
30
+ * </MultiSelectChips>
31
+ * ```
32
+ */
33
+ var MultiSelectChips = forwardRef(function MultiSelectChips({ items, children, orientation = DEFAULT_ORIENTATION, "aria-label": ariaLabel, "aria-controls": ariaControls, value: valueProp, onValueChange: onValueChangeProp, defaultValue, dataset, ...restPropsPassedByRadixUI }, ref) {
34
+ const [values, onValueChange] = useControllableState({
35
+ value: valueProp,
36
+ onValueChange: onValueChangeProp,
37
+ defaultValue: defaultValue !== null && defaultValue !== void 0 ? defaultValue : []
38
+ });
39
+ const onToggle = (value, isSelected) => {
40
+ if (isSelected) onValueChange(values.filter((v) => v !== value));
41
+ else onValueChange([...values, value]);
42
+ };
43
+ const content = items ? items.map(({ label, value, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(MultiSelectChipsItem, {
44
+ value,
45
+ ...props,
46
+ children: label
47
+ }, value)) : children;
48
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Provider, {
49
+ value: {
50
+ values,
51
+ onToggle
52
+ },
53
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipsRoot, {
54
+ orientation,
55
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipsList, {
56
+ ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
57
+ ref,
58
+ orientation,
59
+ "aria-orientation": orientation,
60
+ "aria-label": ariaLabel,
61
+ "aria-controls": ariaControls,
62
+ role: "listbox",
63
+ "aria-multiselectable": "true",
64
+ ...getDatasetProps(dataset, { preplyDsComponent: webComponentNames.MultiSelectChips }),
65
+ children: content
66
+ })
67
+ })
68
+ });
46
69
  });
47
- const MultiSelectChipsItem = forwardRef(function MultiSelectChipsItem2({
48
- value,
49
- children,
50
- icon,
51
- countryFlagCode,
52
- disabled,
53
- counter,
54
- dataset,
55
- dsInternalSimulation,
56
- ...restPropsPassedByRadixUI
57
- }, ref) {
58
- const {
59
- values,
60
- onToggle
61
- } = useMultiSelectChipsContext();
62
- const isSelected = values.includes(value);
63
- return /* @__PURE__ */ jsx(ChipListItem, { role: "presentation", children: /* @__PURE__ */ jsx(ChipButton, { ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI), ref, role: "option", "aria-selected": isSelected, onClick: () => onToggle(value, isSelected), icon, countryFlagCode, disabled, dsInternalSimulation, ...getDatasetProps(dataset, {
64
- preplyDsComponent: webComponentNames.MultiSelectChipsItem
65
- }), children: /* @__PURE__ */ jsx(ChipLabel, { counter, children }) }) });
70
+ /**
71
+ * Individual chip item for use within MultiSelectChips.
72
+ *
73
+ * @example
74
+ * ```tsx
75
+ * <MultiSelectChipsItem value="english">
76
+ * English
77
+ * </MultiSelectChipsItem>
78
+ * ```
79
+ */
80
+ var MultiSelectChipsItem = forwardRef(function MultiSelectChipsItem({ value, children, icon, countryFlagCode, disabled, counter, dataset, dsInternalSimulation, ...restPropsPassedByRadixUI }, ref) {
81
+ const { values, onToggle } = useMultiSelectChipsContext();
82
+ const isSelected = values.includes(value);
83
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipListItem, {
84
+ role: "presentation",
85
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipButton, {
86
+ ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
87
+ ref,
88
+ role: "option",
89
+ "aria-selected": isSelected,
90
+ onClick: () => onToggle(value, isSelected),
91
+ icon,
92
+ countryFlagCode,
93
+ disabled,
94
+ dsInternalSimulation,
95
+ ...getDatasetProps(dataset, { preplyDsComponent: webComponentNames.MultiSelectChipsItem }),
96
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipLabel, {
97
+ counter,
98
+ children
99
+ })
100
+ })
101
+ });
66
102
  });
67
- export {
68
- MultiSelectChips,
69
- MultiSelectChipsItem
70
- };
103
+ //#endregion
104
+ export { MultiSelectChips, MultiSelectChipsItem };
@@ -1,63 +1,100 @@
1
1
  "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { forwardRef } from "react";
2
+ import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
3
+ import "../../render-icon-Ch3b2dE0.js";
4
+ import { t as require_jsx_runtime } from "../../jsx-runtime-i4KUlhDu.js";
4
5
  import { useControllableState } from "../../utils/useControllableState/useControllableState.js";
5
- import { C as ChipsRoot, D as DEFAULT_ORIENTATION, a as ChipsList, b as ChipListItem, c as ChipButton, d as ChipLabel } from "../../ChipsPrimitive-DzsaOWgY.js";
6
+ import { a as ChipsList, i as ChipListItem, o as ChipsRoot, r as ChipLabel, s as DEFAULT_ORIENTATION, t as ChipButton } from "../../ChipsPrimitive-Bezq7ptE.js";
7
+ import { createRequiredContext } from "../../utils/createRequiredContext.js";
8
+ import { forwardRef } from "react";
6
9
  import { getDatasetProps } from "@preply/ds-web-core";
7
10
  import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
8
- import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
9
- import { createRequiredContext } from "../../utils/createRequiredContext.js";
10
- const [Provider, useSingleSelectChipsContext] = createRequiredContext("SingleSelectChips");
11
- const SingleSelectChips = forwardRef(function SingleSelectChips2({
12
- items,
13
- children,
14
- orientation = DEFAULT_ORIENTATION,
15
- "aria-label": ariaLabel,
16
- "aria-controls": ariaControls,
17
- value: valueProp,
18
- onValueChange: onValueChangeProp,
19
- defaultValue,
20
- dataset,
21
- ...restPropsPassedByRadixUI
22
- }, ref) {
23
- const [value, onValueChange] = useControllableState({
24
- value: valueProp,
25
- onValueChange: onValueChangeProp,
26
- defaultValue: defaultValue != null ? defaultValue : null
27
- });
28
- const content = items ? items.map(({
29
- label,
30
- value: value2,
31
- ...props
32
- }) => /* @__PURE__ */ jsx(SingleSelectChipsItem, { value: value2, ...props, children: label }, value2)) : children;
33
- return /* @__PURE__ */ jsx(Provider, { value: {
34
- value,
35
- onValueChange
36
- }, children: /* @__PURE__ */ jsx(ChipsRoot, { orientation, children: /* @__PURE__ */ jsx(ChipsList, { ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI), ref, orientation, "aria-orientation": orientation, "aria-label": ariaLabel, "aria-controls": ariaControls, role: "listbox", "aria-multiselectable": "false", ...getDatasetProps(dataset, {
37
- preplyDsComponent: webComponentNames.SingleSelectChips
38
- }), children: content }) }) });
11
+ //#region src/components/Chips/SingleSelectChips.tsx
12
+ var import_jsx_runtime = require_jsx_runtime();
13
+ var [Provider, useSingleSelectChipsContext] = createRequiredContext("SingleSelectChips");
14
+ /**
15
+ * A chips component that allows selection of a single option from a group.
16
+ * Users can select one chip at a time, and clicking a selected chip will deselect it.
17
+ *
18
+ * @remarks
19
+ * **Keyboard interactions:**
20
+ * - **Tab** to enter/exit the component (uses [roving tabindex pattern](https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/#kbd_roving_tabindex))
21
+ * - **Arrow keys** to navigate between chips within the group
22
+ * - **Space/Enter** to select/deselect the focused chip
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * <SingleSelectChips aria-label="Choose a skill" defaultValue="vocabulary">
27
+ * <SingleSelectChipsItem value="vocabulary">Vocabulary</SingleSelectChipsItem>
28
+ * <SingleSelectChipsItem value="speaking">Speaking</SingleSelectChipsItem>
29
+ * <SingleSelectChipsItem value="listening">Listening</SingleSelectChipsItem>
30
+ * </SingleSelectChips>
31
+ * ```
32
+ */
33
+ var SingleSelectChips = forwardRef(function SingleSelectChips({ items, children, orientation = DEFAULT_ORIENTATION, "aria-label": ariaLabel, "aria-controls": ariaControls, value: valueProp, onValueChange: onValueChangeProp, defaultValue, dataset, ...restPropsPassedByRadixUI }, ref) {
34
+ const [value, onValueChange] = useControllableState({
35
+ value: valueProp,
36
+ onValueChange: onValueChangeProp,
37
+ defaultValue: defaultValue !== null && defaultValue !== void 0 ? defaultValue : null
38
+ });
39
+ const content = items ? items.map(({ label, value, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SingleSelectChipsItem, {
40
+ value,
41
+ ...props,
42
+ children: label
43
+ }, value)) : children;
44
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Provider, {
45
+ value: {
46
+ value,
47
+ onValueChange
48
+ },
49
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipsRoot, {
50
+ orientation,
51
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipsList, {
52
+ ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
53
+ ref,
54
+ orientation,
55
+ "aria-orientation": orientation,
56
+ "aria-label": ariaLabel,
57
+ "aria-controls": ariaControls,
58
+ role: "listbox",
59
+ "aria-multiselectable": "false",
60
+ ...getDatasetProps(dataset, { preplyDsComponent: webComponentNames.SingleSelectChips }),
61
+ children: content
62
+ })
63
+ })
64
+ });
39
65
  });
40
- const SingleSelectChipsItem = forwardRef(function SingleSelectChipsItem2({
41
- value,
42
- children,
43
- icon,
44
- countryFlagCode,
45
- disabled,
46
- counter,
47
- dataset,
48
- dsInternalSimulation,
49
- ...restPropsPassedByRadixUI
50
- }, ref) {
51
- const {
52
- value: selectedValue,
53
- onValueChange
54
- } = useSingleSelectChipsContext();
55
- const isSelected = selectedValue === value;
56
- return /* @__PURE__ */ jsx(ChipListItem, { role: "presentation", children: /* @__PURE__ */ jsx(ChipButton, { ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI), ref, role: "option", "aria-selected": isSelected, onClick: () => onValueChange(isSelected ? null : value), icon, countryFlagCode, disabled, dsInternalSimulation, ...getDatasetProps(dataset, {
57
- preplyDsComponent: webComponentNames.SingleSelectChipsItem
58
- }), children: /* @__PURE__ */ jsx(ChipLabel, { counter, children }) }) });
66
+ /**
67
+ * Individual chip item for use within SingleSelectChips.
68
+ *
69
+ * @example
70
+ * ```tsx
71
+ * <SingleSelectChipsItem value="english">
72
+ * English
73
+ * </SingleSelectChipsItem>
74
+ * ```
75
+ */
76
+ var SingleSelectChipsItem = forwardRef(function SingleSelectChipsItem({ value, children, icon, countryFlagCode, disabled, counter, dataset, dsInternalSimulation, ...restPropsPassedByRadixUI }, ref) {
77
+ const { value: selectedValue, onValueChange } = useSingleSelectChipsContext();
78
+ const isSelected = selectedValue === value;
79
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipListItem, {
80
+ role: "presentation",
81
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipButton, {
82
+ ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
83
+ ref,
84
+ role: "option",
85
+ "aria-selected": isSelected,
86
+ onClick: () => onValueChange(isSelected ? null : value),
87
+ icon,
88
+ countryFlagCode,
89
+ disabled,
90
+ dsInternalSimulation,
91
+ ...getDatasetProps(dataset, { preplyDsComponent: webComponentNames.SingleSelectChipsItem }),
92
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ChipLabel, {
93
+ counter,
94
+ children
95
+ })
96
+ })
97
+ });
59
98
  });
60
- export {
61
- SingleSelectChips,
62
- SingleSelectChipsItem
63
- };
99
+ //#endregion
100
+ export { SingleSelectChips, SingleSelectChipsItem };
@@ -1,17 +1,4 @@
1
- import "react/jsx-runtime";
2
- import { c, e, d, b, a, C, D } from "../../../ChipsPrimitive-DzsaOWgY.js";
3
- import "react";
4
- import "../../../utils/RovingTabIndex/RovingTabIndexProvider.js";
5
- import "../../Icon/Icon.js";
6
- import "../../../utils/Orientation/OrientationProvider.js";
7
- import "../../CountryFlag/CountryFlag.js";
8
- import "@preply/ds-core";
9
- export {
10
- c as ChipButton,
11
- e as ChipCounter,
12
- d as ChipLabel,
13
- b as ChipListItem,
14
- a as ChipsList,
15
- C as ChipsRoot,
16
- D as DEFAULT_ORIENTATION
17
- };
1
+ import "../../../render-icon-Ch3b2dE0.js";
2
+ import "../../../jsx-runtime-i4KUlhDu.js";
3
+ import { a as ChipsList, i as ChipListItem, n as ChipCounter, o as ChipsRoot, r as ChipLabel, s as DEFAULT_ORIENTATION, t as ChipButton } from "../../../ChipsPrimitive-Bezq7ptE.js";
4
+ export { ChipButton, ChipCounter, ChipLabel, ChipListItem, ChipsList, ChipsRoot, DEFAULT_ORIENTATION };
@@ -1,44 +1,3 @@
1
- "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { forwardRef } from "react";
4
- import { countryNames, getCountryFlagUrl } from "@preply/ds-core";
5
- import { getDatasetProps } from "@preply/ds-web-core";
6
- import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
7
- import '../../assets/CountryFlag.css';const flag = "flag__wPkCc";
8
- const styles = {
9
- flag
10
- };
11
- const placeholderSvg = "data:image/svg+xml;base64,PHN2ZyBkYXRhLXByZXBseS1kcy1jb21wb25lbnQ9IlN2Z0NvdW50cnlGbGFnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NDAgNDgwIi8+";
12
- const CountryFlag = forwardRef(function CountryFlag2({
13
- alt,
14
- dataset,
15
- size = "small",
16
- simplified = true,
17
- code: countryCode,
18
- ...rest
19
- }, ref) {
20
- const width = size === "large" ? 32 : size === "medium" ? 24 : 16;
21
- const height = width * 3 / 4;
22
- const countryCodeIsInvalid = typeof countryCode !== "string" || !countryNames[countryCode];
23
- const src = countryCodeIsInvalid ? placeholderSvg : getCountryFlagUrl({
24
- countryCode,
25
- simplified,
26
- requester: "WebCountryFlag"
27
- });
28
- const imgProps = {
29
- alt,
30
- src,
31
- width,
32
- height,
33
- className: styles.flag
34
- };
35
- return (
36
- // eslint-disable-next-line jsx-a11y/alt-text -- `alt` is set in the object above
37
- /* @__PURE__ */ jsx("img", { ...rest, ref, ...imgProps, ...getDatasetProps(dataset, {
38
- preplyDsComponent: webComponentNames.CountryFlag
39
- }) })
40
- );
41
- });
42
- export {
43
- CountryFlag
44
- };
1
+ import "../../jsx-runtime-i4KUlhDu.js";
2
+ import { t as CountryFlag } from "../../CountryFlag-DVDKHmQH.js";
3
+ export { CountryFlag };
@@ -1,33 +1,58 @@
1
1
  "use client";
2
- import { jsxs, jsx } from "react/jsx-runtime";
3
- import { DialogRoot } from "./primitives/DialogRoot.js";
4
- import { DialogTitle } from "./primitives/DialogTitle.js";
5
- import { DialogDescription } from "./primitives/DialogDescription.js";
6
- import { DialogCloseButton } from "./primitives/DialogCloseButton.js";
7
- import { s as styles } from "../../Dialog.module-Ba1X7b3N.js";
2
+ import "../../render-icon-Ch3b2dE0.js";
3
+ import { t as require_jsx_runtime } from "../../jsx-runtime-i4KUlhDu.js";
4
+ import "../../store-sN_eYeZT.js";
5
+ import { t as DialogRoot } from "../../DialogRoot-B67oJduC.js";
6
+ import { t as DialogCloseButton } from "../../DialogCloseButton-DjDd9Mid.js";
7
+ import { t as DialogDescription } from "../../DialogDescription-8zw9t6pm.js";
8
+ import { t as DialogTitle } from "../../DialogTitle-C2Nn2ys-.js";
9
+ import { t as Dialog_module_default } from "../../Dialog.module-Db2BJAn4.js";
10
+ import "react";
8
11
  import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
9
- const Dialog = ({
10
- open,
11
- title,
12
- description,
13
- leadingElement,
14
- children,
15
- size = "md",
16
- hideHeader,
17
- onClose,
18
- mobileFullHeight,
19
- dataset
20
- }) => /* @__PURE__ */ jsxs(DialogRoot, { open, onClose, size, mobileFullHeight, dataset, "data-preply-ds-component": webComponentNames.Dialog, children: [
21
- /* @__PURE__ */ jsx(DialogCloseButton, {}),
22
- /* @__PURE__ */ jsxs("header", { className: styles.header, "data-preply-ds-component": webComponentNames.DialogHeader, children: [
23
- leadingElement,
24
- !hideHeader && /* @__PURE__ */ jsxs("hgroup", { children: [
25
- /* @__PURE__ */ jsx(DialogTitle, { children: title }),
26
- /* @__PURE__ */ jsx(DialogDescription, { children: description })
27
- ] })
28
- ] }),
29
- children
30
- ] });
31
- export {
32
- Dialog
33
- };
12
+ //#region src/components/Dialog/Dialog.tsx
13
+ var import_jsx_runtime = require_jsx_runtime();
14
+ /**
15
+ * A modal dialog component that can be used to show content in an overlay.
16
+ *
17
+ * Composed of:
18
+ * - Dialog: The main component
19
+ * - DialogActions: Footer actions with primary and secondary buttons
20
+ * - DialogSteps: Steps component for multi-step flows
21
+ * - DialogStep: Step component for each step
22
+ * - DialogStepsActions: Actions component for the steps
23
+ *
24
+ * @example
25
+ * <Dialog
26
+ * open={isOpen}
27
+ * onClose={handleClose}
28
+ * title="Save Changes"
29
+ * description="Optional description"
30
+ * >
31
+ * Content
32
+ * <DialogFooter>
33
+ * <DialogButtonStack>
34
+ * <Button onClick={handleCancel}>Cancel</Button>
35
+ * <Button onClick={handleSave}>Save</Button>
36
+ * </DialogButtonStack>
37
+ * </DialogFooter>
38
+ * </Dialog>
39
+ */
40
+ var Dialog = ({ open, title, description, leadingElement, children, size = "md", hideHeader, onClose, mobileFullHeight, dataset }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(DialogRoot, {
41
+ open,
42
+ onClose,
43
+ size,
44
+ mobileFullHeight,
45
+ dataset,
46
+ "data-preply-ds-component": webComponentNames.Dialog,
47
+ children: [
48
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DialogCloseButton, {}),
49
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("header", {
50
+ className: Dialog_module_default.header,
51
+ "data-preply-ds-component": webComponentNames.DialogHeader,
52
+ children: [leadingElement, !hideHeader && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("hgroup", { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(DialogTitle, { children: title }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DialogDescription, { children: description })] })]
53
+ }),
54
+ children
55
+ ]
56
+ });
57
+ //#endregion
58
+ export { Dialog };
@@ -1,33 +1,44 @@
1
1
  "use client";
2
- import { jsx, jsxs } from "react/jsx-runtime";
3
- import { Steps, useStepsContext } from "../Steps/Steps.js";
4
- import { s as styles } from "../../Dialog.module-Ba1X7b3N.js";
2
+ import "../../render-icon-Ch3b2dE0.js";
3
+ import { t as require_jsx_runtime } from "../../jsx-runtime-i4KUlhDu.js";
4
+ import { t as Dialog_module_default } from "../../Dialog.module-Db2BJAn4.js";
5
5
  import { DialogFooter } from "./primitives/DialogFooter.js";
6
+ import { r as useStepsContext, t as Steps } from "../../Steps-DbN5vFrP.js";
7
+ import "react";
6
8
  import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
7
- const DialogSteps = Steps;
8
- const DialogStep = Steps.Step;
9
- const DialogStepsNext = Steps.Next;
10
- const DialogStepsPrevious = Steps.Previous;
11
- function DialogStepsActions({
12
- primaryButton,
13
- nextButton = /* @__PURE__ */ jsx(DialogStepsNext, {}),
14
- previousButton = /* @__PURE__ */ jsx(DialogStepsPrevious, {})
15
- }) {
16
- const {
17
- currentStep,
18
- totalSteps
19
- } = useStepsContext();
20
- const isFirstStep = currentStep === 1;
21
- const isLastStep = currentStep === totalSteps;
22
- return /* @__PURE__ */ jsx(DialogFooter, { children: /* @__PURE__ */ jsxs("div", { className: styles.stepControls, "data-preply-ds-component": webComponentNames.DialogSteps, children: [
23
- !isFirstStep && /* @__PURE__ */ jsx("div", { className: styles.previous, "data-preply-ds-component": webComponentNames.DialogStepsPreviousContainer, children: previousButton }),
24
- /* @__PURE__ */ jsx("div", { className: styles.next, "data-preply-ds-component": webComponentNames.DialogStepsNextContainer, children: isLastStep ? primaryButton : nextButton })
25
- ] }) });
9
+ //#region src/components/Dialog/DialogSteps.tsx
10
+ var import_jsx_runtime = require_jsx_runtime();
11
+ var DialogSteps = Steps;
12
+ var DialogStep = Steps.Step;
13
+ var DialogStepsNext = Steps.Next;
14
+ var DialogStepsPrevious = Steps.Previous;
15
+ /**
16
+ * Wrapper around the Steps actions for usage in Dialog.
17
+ *
18
+ * @example
19
+ * <DialogSteps>
20
+ * <DialogStepsActions
21
+ * primaryButton={<Button size="medium" variant="primary" onClick={handleSave}>Save</Button>}
22
+ * />
23
+ * </DialogSteps>
24
+ */
25
+ function DialogStepsActions({ primaryButton, nextButton = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DialogStepsNext, {}), previousButton = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DialogStepsPrevious, {}) }) {
26
+ const { currentStep, totalSteps } = useStepsContext();
27
+ const isFirstStep = currentStep === 1;
28
+ const isLastStep = currentStep === totalSteps;
29
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DialogFooter, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", {
30
+ className: Dialog_module_default.stepControls,
31
+ "data-preply-ds-component": webComponentNames.DialogSteps,
32
+ children: [!isFirstStep && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
33
+ className: Dialog_module_default.previous,
34
+ "data-preply-ds-component": webComponentNames.DialogStepsPreviousContainer,
35
+ children: previousButton
36
+ }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
37
+ className: Dialog_module_default.next,
38
+ "data-preply-ds-component": webComponentNames.DialogStepsNextContainer,
39
+ children: isLastStep ? primaryButton : nextButton
40
+ })]
41
+ }) });
26
42
  }
27
- export {
28
- DialogStep,
29
- DialogSteps,
30
- DialogStepsActions,
31
- DialogStepsNext,
32
- DialogStepsPrevious
33
- };
43
+ //#endregion
44
+ export { DialogStep, DialogSteps, DialogStepsActions, DialogStepsNext, DialogStepsPrevious };
@@ -1,23 +1,30 @@
1
1
  "use client";
2
- import { jsx, jsxs } from "react/jsx-runtime";
3
- import { useCallback } from "react";
2
+ import { t as require_jsx_runtime } from "../../../jsx-runtime-i4KUlhDu.js";
4
3
  import { DialogFooter } from "./DialogFooter.js";
4
+ import "../../../useBreakpointMatch-D9a3CTNK.js";
5
5
  import { DialogButtonStack } from "./DialogButtonStack.js";
6
- const DialogActions = ({
7
- primaryButton,
8
- secondaryButton
9
- }) => {
10
- const onPrimaryButtonClick = useCallback((e) => {
11
- var _a;
12
- (_a = e.currentTarget.closest("[role=dialog]")) == null ? void 0 : _a.toggleAttribute("data-slides-up", true);
13
- }, []);
14
- return /* @__PURE__ */ jsx(DialogFooter, { children: /* @__PURE__ */ jsxs(DialogButtonStack, { children: [
15
- secondaryButton,
16
- /* @__PURE__ */ jsx("div", { style: {
17
- display: "contents"
18
- }, onClick: onPrimaryButtonClick, children: primaryButton })
19
- ] }) });
20
- };
21
- export {
22
- DialogActions
6
+ import { useCallback } from "react";
7
+ //#region src/components/Dialog/primitives/DialogActions.tsx
8
+ var import_jsx_runtime = require_jsx_runtime();
9
+ /**
10
+ * @deprecated use `DialogFooter` and `DialogButtonStack` instead
11
+ * @example
12
+ * <DialogFooter>
13
+ * <DialogButtonStack>
14
+ * <Button variant="secondary">Cancel</Button>
15
+ * <Button variant="primary">Save</Button>
16
+ * </DialogButtonStack>
17
+ * </DialogFooter>
18
+ */
19
+ var DialogActions = ({ primaryButton, secondaryButton }) => {
20
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DialogFooter, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(DialogButtonStack, { children: [secondaryButton, /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
21
+ style: { display: "contents" },
22
+ onClick: useCallback((e) => {
23
+ var _e$currentTarget$clos;
24
+ (_e$currentTarget$clos = e.currentTarget.closest("[role=dialog]")) === null || _e$currentTarget$clos === void 0 || _e$currentTarget$clos.toggleAttribute("data-slides-up", true);
25
+ }, []),
26
+ children: primaryButton
27
+ })] }) });
23
28
  };
29
+ //#endregion
30
+ export { DialogActions };
@@ -1 +1 @@
1
- {"version":3,"file":"DialogButtonStack.d.ts","sourceRoot":"","sources":["../../../../src/components/Dialog/primitives/DialogButtonStack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,cAAc,EAAE,MAAM,OAAO,CAAC;AAG1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAClE;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,iBAAiB;IAR1B;;;;OAIG;;wCAoBN,CAAC"}
1
+ {"version":3,"file":"DialogButtonStack.d.ts","sourceRoot":"","sources":["../../../../src/components/Dialog/primitives/DialogButtonStack.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAc,cAAc,EAAE,MAAM,OAAO,CAAC;AAG1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAI/C,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAClE;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,iBAAiB;IAR1B;;;;OAIG;;wCAsBN,CAAC"}