@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,76 +1,61 @@
1
- import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
- import { LayoutFlex } from "../LayoutFlex.js";
1
+ import { t as require_jsx_runtime } from "../../../jsx-runtime-i4KUlhDu.js";
2
+ import { t as LayoutFlex } from "../../../LayoutFlex-e9auDvWD.js";
3
+ import "react";
4
+ //#region src/components/LayoutFlex/tests/Relative.tsx
5
+ var import_jsx_runtime = require_jsx_runtime();
3
6
  function Div1(props) {
4
- return /* @__PURE__ */ jsx("div", { style: {
5
- background: "yellow"
6
- }, children: props.children });
7
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
8
+ style: { background: "yellow" },
9
+ children: props.children
10
+ });
7
11
  }
8
12
  function Div2(props) {
9
- return /* @__PURE__ */ jsx("div", { style: {
10
- background: "orange"
11
- }, children: props.children });
13
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
14
+ style: { background: "orange" },
15
+ children: props.children
16
+ });
12
17
  }
13
18
  function RelativeTrue() {
14
- return /* @__PURE__ */ jsxs(Fragment, { children: [
15
- /* @__PURE__ */ jsx("span", { children: "RelativeTrue" }),
16
- /* @__PURE__ */ jsxs(LayoutFlex, { dataset: {
17
- testid: "RelativeTrue"
18
- }, relative: true, children: [
19
- /* @__PURE__ */ jsx(Div1, { children: "a" }),
20
- /* @__PURE__ */ jsx(Div2, { children: "b" })
21
- ] })
22
- ] });
19
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "RelativeTrue" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(LayoutFlex, {
20
+ dataset: { testid: "RelativeTrue" },
21
+ relative: true,
22
+ children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div1, { children: "a" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div2, { children: "b" })]
23
+ })] });
23
24
  }
24
25
  function RelativeFalse() {
25
- return /* @__PURE__ */ jsxs(Fragment, { children: [
26
- /* @__PURE__ */ jsx("span", { children: "RelativeFalse" }),
27
- /* @__PURE__ */ jsxs(LayoutFlex, { dataset: {
28
- testid: "RelativeFalse"
29
- }, relative: false, children: [
30
- /* @__PURE__ */ jsx(Div1, { children: "a" }),
31
- /* @__PURE__ */ jsx(Div2, { children: "b" })
32
- ] })
33
- ] });
26
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "RelativeFalse" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(LayoutFlex, {
27
+ dataset: { testid: "RelativeFalse" },
28
+ relative: false,
29
+ children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div1, { children: "a" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div2, { children: "b" })]
30
+ })] });
34
31
  }
35
32
  function RelativeResponsive() {
36
- return /* @__PURE__ */ jsxs(Fragment, { children: [
37
- /* @__PURE__ */ jsx("span", { children: "RelativeResponsive" }),
38
- /* @__PURE__ */ jsxs(LayoutFlex, { dataset: {
39
- testid: "RelativeResponsive"
40
- }, relative: {
41
- _: true,
42
- "narrow-l": false,
43
- "medium-s": true,
44
- "medium-l": false,
45
- "wide-s": true,
46
- "wide-l": false
47
- }, children: [
48
- /* @__PURE__ */ jsx(Div1, { children: "a" }),
49
- /* @__PURE__ */ jsx(Div2, { children: "b" })
50
- ] })
51
- ] });
33
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "RelativeResponsive" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(LayoutFlex, {
34
+ dataset: { testid: "RelativeResponsive" },
35
+ relative: {
36
+ _: true,
37
+ "narrow-l": false,
38
+ "medium-s": true,
39
+ "medium-l": false,
40
+ "wide-s": true,
41
+ "wide-l": false
42
+ },
43
+ children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div1, { children: "a" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div2, { children: "b" })]
44
+ })] });
52
45
  }
53
46
  function RelativeResponsiveInvertedOrder() {
54
- return /* @__PURE__ */ jsxs(Fragment, { children: [
55
- /* @__PURE__ */ jsx("span", { children: "RelativeResponsiveInvertedOrder" }),
56
- /* @__PURE__ */ jsxs(LayoutFlex, { dataset: {
57
- testid: "RelativeResponsiveInvertedOrder"
58
- }, relative: {
59
- "wide-l": false,
60
- "wide-s": true,
61
- "medium-l": false,
62
- "medium-s": true,
63
- "narrow-l": false,
64
- _: true
65
- }, children: [
66
- /* @__PURE__ */ jsx(Div1, { children: "a" }),
67
- /* @__PURE__ */ jsx(Div2, { children: "b" })
68
- ] })
69
- ] });
47
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { children: "RelativeResponsiveInvertedOrder" }), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(LayoutFlex, {
48
+ dataset: { testid: "RelativeResponsiveInvertedOrder" },
49
+ relative: {
50
+ "wide-l": false,
51
+ "wide-s": true,
52
+ "medium-l": false,
53
+ "medium-s": true,
54
+ "narrow-l": false,
55
+ _: true
56
+ },
57
+ children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div1, { children: "a" }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Div2, { children: "b" })]
58
+ })] });
70
59
  }
71
- export {
72
- RelativeFalse,
73
- RelativeResponsive,
74
- RelativeResponsiveInvertedOrder,
75
- RelativeTrue
76
- };
60
+ //#endregion
61
+ export { RelativeFalse, RelativeResponsive, RelativeResponsiveInvertedOrder, RelativeTrue };
@@ -1,54 +1,3 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { LAYOUT_TAG_DEFAULT } from "@preply/ds-core";
3
- import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
4
- import { moduleClassNames, booleanClassNames, getDatasetProps } from "@preply/ds-web-core";
5
- import { forwardRef } from "react";
6
- import { getAlignSelfClassNames } from "../../shared-styles/align-self/align-self.js";
7
- import { getLayoutHideClassnames } from "../../shared-styles/layout-hide/layout-hide.js";
8
- import { getLayoutRelativeClassnames } from "../../shared-styles/layout-relative/layout-relative.js";
9
- import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
10
- import '../../assets/LayoutFlexItem.css';const LayoutFlexItem$1 = "LayoutFlexItem__0eYcj";
11
- const styles = {
12
- LayoutFlexItem: LayoutFlexItem$1,
13
- "LayoutFlexItem--stretch": "LayoutFlexItem--stretch__Jqv5O",
14
- "LayoutFlexItem--no-stretch": "LayoutFlexItem--no-stretch__PvzwT",
15
- "LayoutFlexItem--narrow-l--stretch": "LayoutFlexItem--narrow-l--stretch__qHYyW",
16
- "LayoutFlexItem--narrow-l--no-stretch": "LayoutFlexItem--narrow-l--no-stretch__gerLX",
17
- "LayoutFlexItem--medium-s--stretch": "LayoutFlexItem--medium-s--stretch__BzvqZ",
18
- "LayoutFlexItem--medium-s--no-stretch": "LayoutFlexItem--medium-s--no-stretch__-yKBs",
19
- "LayoutFlexItem--medium-l--stretch": "LayoutFlexItem--medium-l--stretch__Ta-hC",
20
- "LayoutFlexItem--medium-l--no-stretch": "LayoutFlexItem--medium-l--no-stretch__aO4iE",
21
- "LayoutFlexItem--wide-s--stretch": "LayoutFlexItem--wide-s--stretch__-5pQz",
22
- "LayoutFlexItem--wide-s--no-stretch": "LayoutFlexItem--wide-s--no-stretch__cge-J",
23
- "LayoutFlexItem--wide-l--stretch": "LayoutFlexItem--wide-l--stretch__7GhYM",
24
- "LayoutFlexItem--wide-l--no-stretch": "LayoutFlexItem--wide-l--no-stretch__9tE4Z"
25
- };
26
- const LayoutFlexItem = forwardRef(function LayoutFlexItemComponent({
27
- children,
28
- alignSelf,
29
- stretch = false,
30
- tag,
31
- hide,
32
- relative,
33
- dataset,
34
- ...restPropsPassedByRadixUI
35
- }, ref) {
36
- const classNames = moduleClassNames(styles, webComponentNames.LayoutFlexItem, booleanClassNames("stretch", "no-stretch", stretch));
37
- const alignSelfClassNames = getAlignSelfClassNames(alignSelf);
38
- const hideClassNames = getLayoutHideClassnames(hide);
39
- const relativeClassNames = getLayoutRelativeClassnames(relative);
40
- const allClassNames = [...classNames, ...alignSelfClassNames, ...hideClassNames, ...relativeClassNames];
41
- const Tag = tag != null ? tag : LAYOUT_TAG_DEFAULT;
42
- const props = {
43
- ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
44
- ref,
45
- className: allClassNames.join(" "),
46
- ...getDatasetProps(dataset, {
47
- preplyDsComponent: webComponentNames.LayoutFlexItem
48
- })
49
- };
50
- return /* @__PURE__ */ jsx(Tag, { ...props, children });
51
- });
52
- export {
53
- LayoutFlexItem
54
- };
1
+ import "../../jsx-runtime-i4KUlhDu.js";
2
+ import { t as LayoutFlexItem } from "../../LayoutFlexItem-D9ziMmHe.js";
3
+ export { LayoutFlexItem };
@@ -1,37 +1,29 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { LAYOUT_TAG_DEFAULT } from "@preply/ds-core";
3
- import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
4
- import { getDatasetProps } from "@preply/ds-web-core";
5
- import { forwardRef } from "react";
1
+ import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
2
+ import { t as require_jsx_runtime } from "../../jsx-runtime-i4KUlhDu.js";
6
3
  import { getLayoutGridResponsiveColumnsStyles } from "../../shared-styles/layout-grid-responsive-columns/layout-grid-responsive-columns.js";
7
4
  import { getLayoutGridClassNames } from "../../shared-styles/layout-grid/layout-grid.js";
8
- import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
9
- const LayoutGrid = forwardRef(function LayoutGridComponent({
10
- dataset,
11
- children,
12
- ...layoutGridBasePropsAndPropsPassedByRadixUI
13
- }, ref) {
14
- const {
15
- tag: Tag = LAYOUT_TAG_DEFAULT,
16
- columns
17
- } = layoutGridBasePropsAndPropsPassedByRadixUI;
18
- const classNames = getLayoutGridClassNames("grid", layoutGridBasePropsAndPropsPassedByRadixUI);
19
- const {
20
- style,
21
- classNames: columnClassNames
22
- } = getLayoutGridResponsiveColumnsStyles(columns);
23
- const allClassNames = [...classNames, ...columnClassNames];
24
- const props = {
25
- ...filterAttributesPassedByRadixUIAtRuntime(layoutGridBasePropsAndPropsPassedByRadixUI),
26
- ref,
27
- className: allClassNames.join(" "),
28
- style,
29
- ...getDatasetProps(dataset, {
30
- preplyDsComponent: webComponentNames.LayoutGrid
31
- })
32
- };
33
- return /* @__PURE__ */ jsx(Tag, { ...props, children });
5
+ import { forwardRef } from "react";
6
+ import { getDatasetProps } from "@preply/ds-web-core";
7
+ import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
8
+ import { LAYOUT_TAG_DEFAULT } from "@preply/ds-core";
9
+ //#region src/components/LayoutGrid/LayoutGrid.tsx
10
+ var import_jsx_runtime = require_jsx_runtime();
11
+ /**
12
+ * A CSS `grid` wrapper.
13
+ */
14
+ var LayoutGrid = forwardRef(function LayoutGridComponent({ dataset, children, ...layoutGridBasePropsAndPropsPassedByRadixUI }, ref) {
15
+ const { tag: Tag = LAYOUT_TAG_DEFAULT, columns } = layoutGridBasePropsAndPropsPassedByRadixUI;
16
+ const classNames = getLayoutGridClassNames("grid", layoutGridBasePropsAndPropsPassedByRadixUI);
17
+ const { style, classNames: columnClassNames } = getLayoutGridResponsiveColumnsStyles(columns);
18
+ const allClassNames = [...classNames, ...columnClassNames];
19
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Tag, {
20
+ ...filterAttributesPassedByRadixUIAtRuntime(layoutGridBasePropsAndPropsPassedByRadixUI),
21
+ ref,
22
+ className: allClassNames.join(" "),
23
+ style,
24
+ ...getDatasetProps(dataset, { preplyDsComponent: webComponentNames.LayoutGrid }),
25
+ children
26
+ });
34
27
  });
35
- export {
36
- LayoutGrid
37
- };
28
+ //#endregion
29
+ export { LayoutGrid };
@@ -1,41 +1,3 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { LAYOUT_TAG_DEFAULT } from "@preply/ds-core";
3
- import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
4
- import { moduleClassNames, getDatasetProps } from "@preply/ds-web-core";
5
- import { forwardRef } from "react";
6
- import { getAlignSelfClassNames } from "../../shared-styles/align-self/align-self.js";
7
- import { getLayoutHideClassnames } from "../../shared-styles/layout-hide/layout-hide.js";
8
- import { getLayoutRelativeClassnames } from "../../shared-styles/layout-relative/layout-relative.js";
9
- import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
10
- import '../../assets/LayoutGridItem.css';const LayoutGridItem$1 = "LayoutGridItem__HXV4b";
11
- const styles = {
12
- LayoutGridItem: LayoutGridItem$1
13
- };
14
- const LayoutGridItem = forwardRef(function LayoutGridItemComponent({
15
- children,
16
- alignSelf,
17
- tag,
18
- hide,
19
- relative,
20
- dataset,
21
- ...restPropsPassedByRadixUI
22
- }, ref) {
23
- const classNames = moduleClassNames(styles, webComponentNames.LayoutGridItem, []);
24
- const alignSelfClassNames = getAlignSelfClassNames(alignSelf);
25
- const hideClassNames = getLayoutHideClassnames(hide);
26
- const relativeClassNames = getLayoutRelativeClassnames(relative);
27
- const allClassNames = [...classNames, ...alignSelfClassNames, ...hideClassNames, ...relativeClassNames];
28
- const Tag = tag != null ? tag : LAYOUT_TAG_DEFAULT;
29
- const props = {
30
- ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
31
- ref,
32
- className: allClassNames.join(" "),
33
- ...getDatasetProps(dataset, {
34
- preplyDsComponent: webComponentNames.LayoutGridItem
35
- })
36
- };
37
- return /* @__PURE__ */ jsx(Tag, { ...props, children });
38
- });
39
- export {
40
- LayoutGridItem
41
- };
1
+ import "../../jsx-runtime-i4KUlhDu.js";
2
+ import { t as LayoutGridItem } from "../../LayoutGridItem-Q8Lnvrri.js";
3
+ export { LayoutGridItem };
@@ -1,72 +1,3 @@
1
- "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { LINK_VARIANT_DEFAULT } from "@preply/ds-core";
4
- import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
5
- import { useHostname, moduleClassNames, stringClassNames, booleanClassNames, getExternalUrlProps, getDatasetProps } from "@preply/ds-web-core";
6
- import { forwardRef, cloneElement } from "react";
7
- import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
8
- import '../../assets/Link.css';const Link$1 = "Link__0oP-l";
9
- const styles = {
10
- Link: Link$1,
11
- "Link--inline": "Link--inline__VOKvL",
12
- "Link--noUnderline": "Link--noUnderline__CpiR9",
13
- "Link--variant-accentDark": "Link--variant-accentDark__ECRfH",
14
- "Link--variant-accentDark--dsInternalSimulation-hover": "Link--variant-accentDark--dsInternalSimulation-hover__JTAlS",
15
- "Link--variant-accentDark--dsInternalSimulation-active": "Link--variant-accentDark--dsInternalSimulation-active__ew7GY",
16
- "Link--variant-accentDarkInverted": "Link--variant-accentDarkInverted__csBv5",
17
- "Link--variant-accentDarkInverted--dsInternalSimulation-hover": "Link--variant-accentDarkInverted--dsInternalSimulation-hover__eAUvo",
18
- "Link--variant-accentDarkInverted--dsInternalSimulation-active": "Link--variant-accentDarkInverted--dsInternalSimulation-active__Xb-2-",
19
- "Link--variant-neutral": "Link--variant-neutral__krm1o",
20
- "Link--variant-neutral--dsInternalSimulation-hover": "Link--variant-neutral--dsInternalSimulation-hover__avwXp",
21
- "Link--variant-neutral--dsInternalSimulation-active": "Link--variant-neutral--dsInternalSimulation-active__I8XiT",
22
- "Link--variant-neutralInverted": "Link--variant-neutralInverted__gzzYq",
23
- "Link--variant-neutralInverted--dsInternalSimulation-hover": "Link--variant-neutralInverted--dsInternalSimulation-hover__s6i9I",
24
- "Link--variant-neutralInverted--dsInternalSimulation-active": "Link--variant-neutralInverted--dsInternalSimulation-active__y3WF5",
25
- "Link--variant-unsetColors": "Link--variant-unsetColors__S5q1C",
26
- "Link--variant-unsetColors--dsInternalSimulation-hover": "Link--variant-unsetColors--dsInternalSimulation-hover__ovNJh",
27
- "Link--variant-unsetColors--dsInternalSimulation-active": "Link--variant-unsetColors--dsInternalSimulation-active__9v0om"
28
- };
29
- const Link = forwardRef(function LinkComponent(props, ref) {
30
- const {
31
- variant = LINK_VARIANT_DEFAULT,
32
- href,
33
- download,
34
- opensInNewTab,
35
- nofollow,
36
- assistiveText,
37
- onClick,
38
- as,
39
- url,
40
- dataset,
41
- children,
42
- inline,
43
- dsInternalSimulation,
44
- noUnderline,
45
- ...restPropsPassedByRadixUI
46
- } = props;
47
- const hostname = useHostname();
48
- const classNames = moduleClassNames(styles, webComponentNames.Link, [stringClassNames(`variant-${variant}--dsInternalSimulation`, dsInternalSimulation), stringClassNames("variant", variant), booleanClassNames("inline", void 0, inline), booleanClassNames("noUnderline", void 0, noUnderline)]);
49
- const actualHref = href || url;
50
- const externalUrlProps = actualHref ? getExternalUrlProps(hostname, actualHref, opensInNewTab, nofollow) : {};
51
- const tagProps = {
52
- ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
53
- ref,
54
- href: actualHref,
55
- download,
56
- "aria-label": assistiveText,
57
- onClick,
58
- className: classNames.join(" "),
59
- ...getDatasetProps(dataset, {
60
- preplyDsComponent: webComponentNames.Link
61
- })
62
- };
63
- if (as) {
64
- return cloneElement(as, {
65
- ...tagProps
66
- }, children);
67
- }
68
- return /* @__PURE__ */ jsx("a", { ...tagProps, ...externalUrlProps, children });
69
- });
70
- export {
71
- Link
72
- };
1
+ import "../../jsx-runtime-i4KUlhDu.js";
2
+ import { t as Link } from "../../Link-CdoJVeER.js";
3
+ export { Link };
@@ -1,32 +1,3 @@
1
- import { jsx } from "react/jsx-runtime";
2
- import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
3
- import { moduleClassNames, booleanClassNames, getDatasetProps } from "@preply/ds-web-core";
4
- import { forwardRef } from "react";
5
- import { filterAttributesPassedByRadixUIAtRuntime } from "../../utils/filterAttributesPassedByRadixUIAtRuntime.js";
6
- import { Spinner } from "../private/Spinner/Spinner.js";
7
- import '../../assets/Loader.css';const Loader$1 = "Loader__sOe0E";
8
- const styles = {
9
- Loader: Loader$1,
10
- "Loader--normal": "Loader--normal__pJxRq",
11
- "Loader--inverted": "Loader--inverted__PauMY"
12
- };
13
- const Loader = forwardRef(function LoaderComponent({
14
- size,
15
- inverted = false,
16
- dataset,
17
- ...restPropsPassedByRadixUI
18
- }, ref) {
19
- const classNames = moduleClassNames(styles, webComponentNames.Loader, [booleanClassNames("inverted", "normal", inverted)]);
20
- const props = {
21
- ...filterAttributesPassedByRadixUIAtRuntime(restPropsPassedByRadixUI),
22
- ref,
23
- className: classNames.join(" "),
24
- ...getDatasetProps(dataset, {
25
- preplyDsComponent: webComponentNames.Loader
26
- })
27
- };
28
- return /* @__PURE__ */ jsx("span", { ...props, children: /* @__PURE__ */ jsx(Spinner, { size }) });
29
- });
30
- export {
31
- Loader
32
- };
1
+ import "../../jsx-runtime-i4KUlhDu.js";
2
+ import { t as Loader } from "../../Loader-BMOxdJce.js";
3
+ export { Loader };
@@ -1,39 +1,37 @@
1
1
  "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { forwardRef } from "react";
4
- import { FormControl } from "../FormControl/FormControl.js";
2
+ import { t as require_jsx_runtime } from "../../jsx-runtime-i4KUlhDu.js";
3
+ import { t as FormControl } from "../../FormControl-qnbQL1iF.js";
5
4
  import { Input } from "../private/Input/Input.js";
6
- import "../private/Input/Textarea.js";
5
+ import { forwardRef } from "react";
7
6
  import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
8
- const NumberField = forwardRef(function NumberField2({
9
- id,
10
- label,
11
- description,
12
- error,
13
- required,
14
- inputDataset,
15
- dataset,
16
- hideLabel,
17
- onClick,
18
- onValueChange,
19
- onChange,
20
- hasError,
21
- useLegacyRequiredLabel,
22
- // @ts-expect-error: removing className from `props`
23
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
24
- className,
25
- // @ts-expect-error: removing style from `props`
26
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
27
- style,
28
- ...props
29
- }, ref) {
30
- const handleChange = (e) => {
31
- onChange == null ? void 0 : onChange(e);
32
- const value = e.target.value;
33
- onValueChange == null ? void 0 : onValueChange(value ? Number(value) : void 0);
34
- };
35
- return /* @__PURE__ */ jsx(FormControl, { id, label, description, error, hasError, required, dataset, hideLabel, onClick, useLegacyRequiredLabel, preplyDsComponent: webComponentNames.NumberField, children: /* @__PURE__ */ jsx(Input, { ...props, type: "number", ref, dataset: inputDataset, onChange: handleChange }) });
7
+ //#region src/components/NumberField/NumberField.tsx
8
+ var import_jsx_runtime = require_jsx_runtime();
9
+ var NumberField = forwardRef(function NumberField({ id, label, description, error, required, inputDataset, dataset, hideLabel, onClick, onValueChange, onChange, hasError, useLegacyRequiredLabel, className, style, ...props }, ref) {
10
+ const handleChange = (e) => {
11
+ onChange === null || onChange === void 0 || onChange(e);
12
+ const value = e.target.value;
13
+ onValueChange === null || onValueChange === void 0 || onValueChange(value ? Number(value) : void 0);
14
+ };
15
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(FormControl, {
16
+ id,
17
+ label,
18
+ description,
19
+ error,
20
+ hasError,
21
+ required,
22
+ dataset,
23
+ hideLabel,
24
+ onClick,
25
+ useLegacyRequiredLabel,
26
+ preplyDsComponent: webComponentNames.NumberField,
27
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Input, {
28
+ ...props,
29
+ type: "number",
30
+ ref,
31
+ dataset: inputDataset,
32
+ onChange: handleChange
33
+ })
34
+ });
36
35
  });
37
- export {
38
- NumberField
39
- };
36
+ //#endregion
37
+ export { NumberField };
@@ -1,45 +1,44 @@
1
1
  "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { LAYOUT_TAG_DEFAULT } from "@preply/ds-core";
4
- import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
2
+ import { t as require_jsx_runtime } from "../../jsx-runtime-i4KUlhDu.js";
3
+ import { useEffect, useRef } from "react";
5
4
  import { getDatasetProps } from "@preply/ds-web-core";
6
- import { useRef, useEffect } from "react";
7
- const ObserveIntersection = ({
8
- onIntersect,
9
- once,
10
- threshold,
11
- tag,
12
- dataset,
13
- children
14
- }) => {
15
- const ref = useRef(null);
16
- useEffect(() => {
17
- const callback = ([entry], obs) => {
18
- if (entry.isIntersecting) {
19
- onIntersect();
20
- if (once && ref.current) {
21
- obs.unobserve(ref.current);
22
- }
23
- }
24
- };
25
- const options = {
26
- threshold
27
- };
28
- const observer = new IntersectionObserver(callback, options);
29
- if (ref.current) {
30
- observer.observe(ref.current);
31
- }
32
- return () => observer.disconnect();
33
- }, [onIntersect, once, threshold]);
34
- const Tag = tag != null ? tag : LAYOUT_TAG_DEFAULT;
35
- const props = {
36
- ref,
37
- ...getDatasetProps(dataset, {
38
- preplyDsComponent: webComponentNames.ObserverIntersection
39
- })
40
- };
41
- return /* @__PURE__ */ jsx(Tag, { ...props, children });
42
- };
43
- export {
44
- ObserveIntersection
5
+ import { webComponentNames } from "@preply/ds-visual-coverage-preply-component-names";
6
+ import { LAYOUT_TAG_DEFAULT } from "@preply/ds-core";
7
+ //#region src/components/ObserveIntersection/ObserveIntersection.tsx
8
+ var import_jsx_runtime = require_jsx_runtime();
9
+ /**
10
+ * An [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver) wrapper.
11
+ *
12
+ * Triggers a callback when the wrapped component intersects with the viewport.
13
+ *
14
+ * This can be useful in several use cases. Examples:
15
+ *
16
+ * - Track an experiment, once a certain component scrolls into view.
17
+ * - Trigger an animation, or a feature (e.g.: onboarding instructions).
18
+ */
19
+ var ObserveIntersection = ({ onIntersect, once, threshold, tag, dataset, children }) => {
20
+ const ref = useRef(null);
21
+ useEffect(() => {
22
+ const callback = ([entry], obs) => {
23
+ if (entry.isIntersecting) {
24
+ onIntersect();
25
+ if (once && ref.current) obs.unobserve(ref.current);
26
+ }
27
+ };
28
+ const options = { threshold };
29
+ const observer = new IntersectionObserver(callback, options);
30
+ if (ref.current) observer.observe(ref.current);
31
+ return () => observer.disconnect();
32
+ }, [
33
+ onIntersect,
34
+ once,
35
+ threshold
36
+ ]);
37
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(tag !== null && tag !== void 0 ? tag : LAYOUT_TAG_DEFAULT, {
38
+ ref,
39
+ ...getDatasetProps(dataset, { preplyDsComponent: webComponentNames.ObserverIntersection }),
40
+ children
41
+ });
45
42
  };
43
+ //#endregion
44
+ export { ObserveIntersection };