@preply/ds-docs 4.0.0 → 5.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 (198) hide show
  1. package/dist/assets/{00.LayoutFlex.stories-I1L9KcKN.js → 00.LayoutFlex.stories-D-VczObO.js} +1 -1
  2. package/dist/assets/{00.applications-DVA0eR_5.js → 00.applications-CzYSGmEf.js} +1 -1
  3. package/dist/assets/{00.favicons.guide-BA4TBs8A.js → 00.favicons.guide-B-CARcAk.js} +1 -1
  4. package/dist/assets/00.token-explorer-hV-uX2Ww.js +345 -0
  5. package/dist/assets/{00.using-responsive-props-DvWa2hX7.js → 00.using-responsive-props-q9jDxHWy.js} +1 -1
  6. package/dist/assets/{01.semantic-tokens-CMnyPCuB.js → 01.semantic-tokens-phY-TgD0.js} +1 -1
  7. package/dist/assets/{01.using-shorthand-props-DfgZvMPF.js → 01.using-shorthand-props-CUZbQwLg.js} +1 -1
  8. package/dist/assets/{10.Combinations.stories-Zk1vUvHN.js → 10.Combinations.stories-BDDl05Hz.js} +1 -1
  9. package/dist/assets/{10.fonts.guide-4nDXerbt.js → 10.fonts.guide-hytCpjSP.js} +1 -1
  10. package/dist/assets/{10.ssr-BBOII78K.js → 10.ssr-CXQLuZOI.js} +1 -1
  11. package/dist/assets/{11.languageFont.explorer.stories-B4Vdpt9q.js → 11.languageFont.explorer.stories-Dkv9M5eT.js} +1 -1
  12. package/dist/assets/{11.ssr.app-router-v52x2FyK.js → 11.ssr.app-router-bEmxNK6u.js} +1 -1
  13. package/dist/assets/{20.libraries-BIoBeRPw.js → 20.libraries-Dz7mgu2C.js} +1 -1
  14. package/dist/assets/30.icons.explorer-oiyfLcQp.js +73 -0
  15. package/dist/assets/{30.storybook-DhzFfbyl.js → 30.storybook-BGbx9nQ-.js} +1 -1
  16. package/dist/assets/{40.illustrations.explorer-7gHbzv6D.js → 40.illustrations.explorer-BuiSr8c3.js} +1 -1
  17. package/dist/assets/{90.advanced-C_nJm0ZM.js → 90.advanced-BoZM3QR8.js} +1 -1
  18. package/dist/assets/{Accordion-Bi0GzCYO.js → Accordion-CxiCI4Rz.js} +3 -3
  19. package/dist/assets/{Accordion.stories-AuiZJ4NQ.js → Accordion.stories-D7Cw24sj.js} +1 -1
  20. package/dist/assets/{Accordion.tests.stories-CFXQ7lMz.js → Accordion.tests.stories-DtE9udvN.js} +1 -1
  21. package/dist/assets/{AlertDialog.stories-BqN0gz7W.js → AlertDialog.stories-Crl9ra0W.js} +1 -1
  22. package/dist/assets/Badge-BMWjsGzx.css +1 -0
  23. package/dist/assets/Badge.stories-CkGzqxM7.js +66 -0
  24. package/dist/assets/{Box.stories-CpizOdtP.js → Box.stories-Tx-88Owx.js} +1 -1
  25. package/dist/assets/{BubbleCounter.stories-CPQE-nOi.js → BubbleCounter.stories-DCyCDG7S.js} +1 -1
  26. package/dist/assets/{Button-DhteO3C6.js → Button-B80XIKcv.js} +1 -1
  27. package/dist/assets/{Button-DqlzCI4z.css → Button-Cd0upysu.css} +1 -1
  28. package/dist/assets/{Button.stories-DmzVQ1VL.js → Button.stories-BWsh38ts.js} +1 -1
  29. package/dist/assets/{ButtonBase-B_gwKVAa.js → ButtonBase-BS1Kc_U5.js} +1 -1
  30. package/dist/assets/{ButtonBase-HxlpSDVr.css → ButtonBase-Cv8JsBJE.css} +1 -1
  31. package/dist/assets/{Checkbox-BNGbflsm.js → Checkbox-0Rr3azkZ.js} +2 -2
  32. package/dist/assets/{Checkbox.stories-C_K-2uYm.js → Checkbox.stories-CklDbW2-.js} +1 -1
  33. package/dist/assets/{Checkbox.tests.stories-CsxFaHsD.js → Checkbox.tests.stories-dtDQPZYm.js} +1 -1
  34. package/dist/assets/{Chips.stories-BwZ71-HV.js → Chips.stories-CLRPrNOW.js} +1 -1
  35. package/dist/assets/Color-YHDXOIA2-CPoUziDM.js +1 -0
  36. package/dist/assets/CountryFlag-2OfagIL-.js +49 -0
  37. package/dist/assets/{CountryFlag.stories-UhDU5aPp.js → CountryFlag.stories-B9rUoQXw.js} +1 -1
  38. package/dist/assets/{CountryFlag.test.stories-kJ9jqJTG.js → CountryFlag.test.stories-C3Hz7_Cq.js} +1 -1
  39. package/dist/assets/Dialog-5t3Rt4HF.css +1 -0
  40. package/dist/assets/Dialog.stories-zkSlU40W.js +405 -0
  41. package/dist/assets/{DismissibleChips-jYvlTjTA.js → DismissibleChips-DbEsCC0J.js} +1 -1
  42. package/dist/assets/{DismissibleChips.stories-CpdIBN_g.js → DismissibleChips.stories-Bv47ROIC.js} +1 -1
  43. package/dist/assets/{Divider.stories-Dt8b4I0I.js → Divider.stories-BlFQRFSK.js} +1 -1
  44. package/dist/assets/{DocsRenderer-CFRXHY34-DHd29E9v.js → DocsRenderer-CFRXHY34-CVrIvO9U.js} +1 -1
  45. package/dist/assets/{FormControl-D9rxeKMc.js → FormControl-CPKPJ97_.js} +1 -1
  46. package/dist/assets/{FormControl.stories-Drzur_Xo.js → FormControl.stories-C6dT1HUz.js} +1 -1
  47. package/dist/assets/{Heading-BLxyLk9f.js → Heading-BKJX3nsJ.js} +2 -2
  48. package/dist/assets/{Heading.stories-DcyjKmJn.js → Heading.stories-D2N4ywNt.js} +1 -1
  49. package/dist/assets/{Icon-BkmQyVqb.js → Icon-CkCFpqfD.js} +1 -1
  50. package/dist/assets/{Icon-RSC-Cwt4AD8I.js → Icon-RSC-DeEnUUcz.js} +1 -1
  51. package/dist/assets/{Icon.stories-Dh3KvtM-.js → Icon.stories-CexhJHbi.js} +1 -1
  52. package/dist/assets/{IconButton-CqTm2jIV.js → IconButton-B-3o70a9.js} +1 -1
  53. package/dist/assets/{Input-UdhYxppR.js → Input-DeHbbC7g.js} +3 -3
  54. package/dist/assets/{IntegrationWithReactHookForm.stories-C02oiA5w.js → IntegrationWithReactHookForm.stories-DxrZ050E.js} +1 -1
  55. package/dist/assets/{IntlFormattedCurrency.stories-D09rXQbZ.js → IntlFormattedCurrency.stories-BLxRgJWU.js} +1 -1
  56. package/dist/assets/{IntlFormattedDateTime.stories-BuOwAp8C.js → IntlFormattedDateTime.stories-hYtatyHE.js} +1 -1
  57. package/dist/assets/{LayoutFlex-JDgK8BCr.js → LayoutFlex-DvBktCUC.js} +1 -1
  58. package/dist/assets/{LayoutFlexItem-bGRFvGp6.js → LayoutFlexItem-Cm3OI9f2.js} +1 -1
  59. package/dist/assets/{LayoutGrid-CGatrPKO.js → LayoutGrid-Dm6EcI-G.js} +1 -1
  60. package/dist/assets/{LayoutGrid.stories-DyBN7RV8.js → LayoutGrid.stories-CKn4Vg30.js} +1 -1
  61. package/dist/assets/{LayoutGridItem-BdIUwiuA.js → LayoutGridItem-DWhZMKvq.js} +1 -1
  62. package/dist/assets/{Link-DdFAEBXD.js → Link-D3ljGEp4.js} +1 -1
  63. package/dist/assets/{Link.stories-WQCe-o4N.js → Link.stories-DOzq9sNs.js} +1 -1
  64. package/dist/assets/{Loader.stories-Ceu9fTo6.js → Loader.stories-C53ODmdL.js} +1 -1
  65. package/dist/assets/{MultiSelectChips-Crsz1TpK.js → MultiSelectChips-RUBRF3C_.js} +2 -2
  66. package/dist/assets/{MultiSelectChips.stories-D94TLaMf.js → MultiSelectChips.stories-DbfKSXnF.js} +1 -1
  67. package/dist/assets/{NumberField-BClPzJbf.js → NumberField-B95TvbPY.js} +5 -5
  68. package/dist/assets/{NumberField.stories-Cl5bAyRn.js → NumberField.stories-CEV8efH2.js} +1 -1
  69. package/dist/assets/{ObserveIntersection-B2ZY3pJT.js → ObserveIntersection-Ds88YwOI.js} +1 -1
  70. package/dist/assets/{ObserveIntersection.stories-C8C2l5zu.js → ObserveIntersection.stories-DAfiJTnQ.js} +1 -1
  71. package/dist/assets/{OnboardingTooltip-Bc-Jj706.js → OnboardingTooltip-C5HCJ0E7.js} +1 -1
  72. package/dist/assets/{OnboardingTooltip.stories-1_99oJ2j.js → OnboardingTooltip.stories-Cn1uymI0.js} +1 -1
  73. package/dist/assets/{OnboardingTooltip.tests.stories-CIUh12pG.js → OnboardingTooltip.tests.stories-DLvBh09g.js} +1 -1
  74. package/dist/assets/{OnboardingTour-BnYumvD2.js → OnboardingTour-Cye6iUC2.js} +1 -1
  75. package/dist/assets/{OnboardingTour.stories-CaCYuehO.js → OnboardingTour.stories-D_A2LFco.js} +1 -1
  76. package/dist/assets/{OnboardingTour.tests.stories-C9M7Z4vy.js → OnboardingTour.tests.stories-D0hNfgv6.js} +1 -1
  77. package/dist/assets/{PasswordField-CFjBYGMS.js → PasswordField-DHlrM2-7.js} +5 -5
  78. package/dist/assets/{PasswordField.stories-CWrYRKg3.js → PasswordField.stories-BJWCj1u3.js} +1 -1
  79. package/dist/assets/{PreplyLogo.stories-DbHXRqIe.js → PreplyLogo.stories-dfSPndrY.js} +1 -1
  80. package/dist/assets/{ProgressBar.stories-Bj7JgZUL.js → ProgressBar.stories-BV6Y9Nyi.js} +1 -1
  81. package/dist/assets/{ProgressSteps-CwDoZPp7.js → ProgressSteps-DQE6Rlvo.js} +1 -1
  82. package/dist/assets/{ProgressSteps.stories-Eo_YRUQQ.js → ProgressSteps.stories-BKC2XSoe.js} +1 -1
  83. package/dist/assets/PromoDialog-BrI3UbB4.js +3 -0
  84. package/dist/assets/{RangeSlider-CNeCUMy9.js → RangeSlider-BXIcGg3R.js} +1 -1
  85. package/dist/assets/{RangeSlider.stories-DjAvKpFH.js → RangeSlider.stories-BNeMiH_1.js} +1 -1
  86. package/dist/assets/RootProvider-D0tv2ED1.js +1 -0
  87. package/dist/assets/{SelectField-B0-aTIgP.js → SelectField-DOoh2Y5k.js} +8 -8
  88. package/dist/assets/{SelectField.stories-YbuvDmfl.js → SelectField.stories-BiuvF5Yg.js} +1 -1
  89. package/dist/assets/{ShowOnIntersection.stories-q8aTxrQs.js → ShowOnIntersection.stories-C4LXhIWf.js} +1 -1
  90. package/dist/assets/{SingleSelectChips-CAjBrNcu.js → SingleSelectChips-BRlD7T8V.js} +2 -2
  91. package/dist/assets/{SingleSelectChips.stories-BL3YG_kg.js → SingleSelectChips.stories-dgLjjU24.js} +1 -1
  92. package/dist/assets/{Slider-CUGM3UNz.js → Slider-eGOchL2V.js} +1 -1
  93. package/dist/assets/{Slider.stories-B_pnnXYh.js → Slider.stories-C5BY4PbW.js} +1 -1
  94. package/dist/assets/Steps-hgwULI7z.js +26 -0
  95. package/dist/assets/Steps-nUB2CDHz.css +1 -0
  96. package/dist/assets/{Steps.stories-BZsILE5g.js → Steps.stories-DX7zuse4.js} +7 -5
  97. package/dist/assets/{StorybookGlobalStyle-CQSpwvw3.js → StorybookGlobalStyle-BBqRFe5S.js} +1 -1
  98. package/dist/assets/{Switch.stories-CAuFyq9X.js → Switch.stories-DU5uZxfg.js} +1 -1
  99. package/dist/assets/{Text-CjpUlaH0.js → Text-D3i9pJx6.js} +1 -1
  100. package/dist/assets/{Text.stories-C6McCecj.js → Text.stories-4sHiU0p1.js} +1 -1
  101. package/dist/assets/{TextField-DqiXpdlZ.js → TextField-BxOrYHxj.js} +5 -5
  102. package/dist/assets/{TextField-CdxeFYRX.js → TextField-DHg6sqdw.js} +1 -1
  103. package/dist/assets/{TextField.stories-gNIPEGLY.js → TextField.stories-BsanVpHj.js} +1 -1
  104. package/dist/assets/{TextHighlighted.stories-CprNxXTt.js → TextHighlighted.stories-DzvaApjE.js} +1 -1
  105. package/dist/assets/{TextInline.stories-DBDcLVOT.js → TextInline.stories-CcrREeIa.js} +1 -1
  106. package/dist/assets/{TextareaField-Bi-A9wP4.js → TextareaField-Di3uMtNN.js} +8 -8
  107. package/dist/assets/{TextareaField.stories-IC9YRmct.js → TextareaField.stories-DFrVVMtN.js} +1 -1
  108. package/dist/assets/{Toast.stories-Ce2zHmWW.js → Toast.stories-D4rvr5mq.js} +1 -1
  109. package/dist/assets/TokyoUILock-CUE2UpP8.js +1 -0
  110. package/dist/assets/{Tooltip-BbMZ4t9q.js → Tooltip--j8DCmLJ.js} +1 -1
  111. package/dist/assets/{Tooltip.stories-BH7-gDwn.js → Tooltip.stories-mWHRlqv8.js} +1 -1
  112. package/dist/assets/{Tooltip.tests.stories-YLVx7b98.js → Tooltip.tests.stories-xaUpyGEE.js} +1 -1
  113. package/dist/assets/axe-KozDj-05.js +30 -0
  114. package/dist/assets/{breakpoints-BfkEfMbw.js → breakpoints-C1DZdkak.js} +1 -1
  115. package/dist/assets/{breakpoints-CSOwlhiU.js → breakpoints-CKMjlF3s.js} +1 -1
  116. package/dist/assets/{breakpoints-2fMSmAVi.js → breakpoints-DXv9ifNm.js} +1 -1
  117. package/dist/assets/{changelog-D4Z9gpAU.js → changelog-DXlzZtLa.js} +164 -131
  118. package/dist/assets/{client-C1fTPCwG.js → client-CYxxc9KC.js} +1 -1
  119. package/dist/assets/{constants-2_-agSe-.js → constants-DVNhGTwE.js} +2 -2
  120. package/dist/assets/createRequiredContext-DqKkrhDd.js +241 -0
  121. package/dist/assets/entry-preview-Bj3Y8agB.js +10 -0
  122. package/dist/assets/{entry-preview-docs-BANZ_DRs.js → entry-preview-docs-BPlzFJFG.js} +2 -2
  123. package/dist/assets/{floating-ui.react-dom-CHDTbv7n.js → floating-ui.react-dom-B6FmGF3s.js} +1 -1
  124. package/dist/assets/{getTokenVar-BZgwkSp8.js → getTokenVar-BRt2X5rO.js} +1 -1
  125. package/dist/assets/{hover-hzsLb0mP.js → hover-COs8KLUI.js} +1 -1
  126. package/dist/assets/{hover-DNwEbkOR.js → hover-CfJVruTK.js} +1 -1
  127. package/dist/assets/{hover-CsTVkgV1.js → hover-Cy7Eox3Y.js} +1 -1
  128. package/dist/assets/{iframe-CWj9OKjo.js → iframe-CQTVRvvH.js} +18 -18
  129. package/dist/assets/index-BPCsOyHr.js +24 -0
  130. package/dist/assets/{index-DPGIb77J.js → index-Bch4g0SK.js} +1 -1
  131. package/dist/assets/index-C5uDgNEj.js +12 -0
  132. package/dist/assets/index-C6EASpUg.js +1 -0
  133. package/dist/assets/index-C9ZJlqdI.js +1 -0
  134. package/dist/assets/index-CA5R8PN9.js +8 -0
  135. package/dist/assets/{index-Ctq3gFTp.js → index-CY08ZUhp.js} +7 -7
  136. package/dist/assets/{index-DUXnyn-Y.js → index-CebKVvqm.js} +16 -16
  137. package/dist/assets/{index-Cxag6636.js → index-D21-dwfw.js} +1 -1
  138. package/dist/assets/index-DWSmmBvQ.js +12 -0
  139. package/dist/assets/{index-BPrLDK9Y.js → index-De-a_lfy.js} +1 -1
  140. package/dist/assets/{index-Y0mVPtHg.js → index-Djnd5IhU.js} +1 -1
  141. package/dist/assets/index-DrcC8Jul.js +7 -0
  142. package/dist/assets/{index-fALSPXxe.js → index-ZUOsecCC.js} +1 -1
  143. package/dist/assets/{intro-DgdQQN2S.js → intro-Cd9_GCdy.js} +1 -1
  144. package/dist/assets/{message-CToTEy-z.js → message-CSdaKtIj.js} +1 -1
  145. package/dist/assets/{migrating-from-less-CypRwYq3.js → migrating-from-less-B5ahFv2d.js} +1 -1
  146. package/dist/assets/playground-WZK9WFDf.css +1 -0
  147. package/dist/assets/playground.stories-LsAgjZgU.js +857 -0
  148. package/dist/assets/{preview-BTjEYo28.js → preview-D4qLoCiE.js} +1 -1
  149. package/dist/assets/preview-DA7QUfdZ.js +2 -0
  150. package/dist/assets/{preview-B3PTUHS7.js → preview-DPj7IDPD.js} +1 -1
  151. package/dist/assets/{preview-4uuOvD3n.js → preview-Rh2RpxtQ.js} +2 -2
  152. package/dist/assets/{preview-DnWcdrEZ.js → preview-qRpPiuhm.js} +2 -2
  153. package/dist/assets/{react-18-DfUnyR7e.js → react-18-vqCHxTgY.js} +1 -1
  154. package/dist/assets/{shared-strings-Bg7tW4tm.js → shared-strings-DFzxd8lM.js} +1 -1
  155. package/dist/assets/styled-components.browser.esm-BJAH3Qnc.js +2 -0
  156. package/dist/assets/{tokens-D0M6e07K.js → tokens-1GbBeOTN.js} +1 -1
  157. package/dist/assets/tokens-BoC65r7p.js +1 -0
  158. package/dist/assets/{tokens-D7bwo39d.js → tokens-CSYR8_6W.js} +1 -1
  159. package/dist/assets/{tokens-DbuzM4u9.js → tokens-DboIZ2E4.js} +1 -1
  160. package/dist/assets/{useIntlFormattedAggregatedDateTime-Zx_bxtfa.js → useIntlFormattedAggregatedDateTime-CTOxZyaF.js} +1 -1
  161. package/dist/assets/{useIntlFormattedCurrency-DbgTU34E.js → useIntlFormattedCurrency-CKTbRfXd.js} +1 -1
  162. package/dist/assets/{useIntlFormattedTime-ulNPTGyu.js → useIntlFormattedTime-D6quNZKT.js} +1 -1
  163. package/dist/assets/{usePortalElement-D8WArtaz.js → usePortalElement-BK-0FBHw.js} +1 -1
  164. package/dist/assets/{welcome-Cf7_knMk.js → welcome-B7wFifhG.js} +1 -1
  165. package/dist/assets/{zeroheight-BvaCHUX_.js → zeroheight-C2QkqLMf.js} +1 -1
  166. package/dist/iframe.html +1 -1
  167. package/dist/index.json +1 -1
  168. package/dist/preview-stats.json +3343 -3073
  169. package/dist/project.json +1 -1
  170. package/package.json +4 -4
  171. package/dist/assets/00.token-explorer-KIhVhPp7.js +0 -344
  172. package/dist/assets/30.icons.explorer-C3PdGI__.js +0 -73
  173. package/dist/assets/Badge-DXnHyVME.css +0 -1
  174. package/dist/assets/Badge.stories-Bk1jXWtz.js +0 -65
  175. package/dist/assets/Color-YHDXOIA2-BhKKyrEM.js +0 -1
  176. package/dist/assets/CountryFlag-BYnc9DA7.js +0 -49
  177. package/dist/assets/Dialog-B2G1UrP1.css +0 -1
  178. package/dist/assets/Dialog.stories-CI7zov84.js +0 -515
  179. package/dist/assets/RootProvider-CWDV9QnL.js +0 -1
  180. package/dist/assets/Steps-B_rpKUTa.css +0 -1
  181. package/dist/assets/Steps-IgJnFF2g.js +0 -26
  182. package/dist/assets/TokyoUILock-CENLMUf4.js +0 -1
  183. package/dist/assets/axe-mzYAM-sz.js +0 -30
  184. package/dist/assets/createRequiredContext-9__lNQrK.js +0 -241
  185. package/dist/assets/entry-preview-DFXqIYZm.js +0 -10
  186. package/dist/assets/index-BSV-0FpC.js +0 -1
  187. package/dist/assets/index-BnjE-6lp.js +0 -12
  188. package/dist/assets/index-C7hTFOIV.js +0 -24
  189. package/dist/assets/index-CXQShRbs.js +0 -8
  190. package/dist/assets/index-Cu4lwwaE.js +0 -1
  191. package/dist/assets/index-DhCCT3uz.js +0 -12
  192. package/dist/assets/index-p7qngmDT.js +0 -7
  193. package/dist/assets/playground-Dg8A_Ftj.css +0 -1
  194. package/dist/assets/playground.stories-C9cW4jxN.js +0 -857
  195. package/dist/assets/preview-BLkg3UNz.js +0 -2
  196. package/dist/assets/styled-components.browser.esm-BgpGX317.js +0 -2
  197. package/dist/assets/tokens-Xet-VKqC.js +0 -1
  198. /package/dist/assets/{Button-DwGJHj7Y.js → Button-CpB2zJ_2.js} +0 -0
@@ -1,515 +0,0 @@
1
- import{j as e}from"./jsx-runtime-BTJTZTIL.js";import{r as a}from"./index-Cb9e4tly.js";import{a as F}from"./chunk-D5ZWXAHU-BhFjjRSl.js";import{f as Le,u as f,a as v,e as g}from"./index-Ctq3gFTp.js";import{R as We,P as Ne,O as Ve,C as Me,T as qe,D as Ue,a as Je}from"./index-Cxag6636.js";import{B as d}from"./Button-DhteO3C6.js";import{I as Ze}from"./IconButton-CqTm2jIV.js";import{H as Ke}from"./Heading-BLxyLk9f.js";import{g as Ye}from"./shared-strings-Bg7tW4tm.js";import{u as Ge}from"./index-DhCCT3uz.js";import{u as Xe}from"./PortalElementProvider-CxdFl3yP.js";import{g as Qe}from"./index-DdzHuZ-Y.js";import{w as R}from"./componentNames-NXEPEzbR.js";import{m as $e,s as et,b as tt}from"./classNames-BUL1Zq7e.js";import{S as m}from"./Steps-IgJnFF2g.js";import{I as ot}from"./Icon-BkmQyVqb.js";import{A as st}from"./Avatar-B08JWd24.js";import{F as nt}from"./TokyoUIInfo-DbkQBubr.js";import{L as at}from"./LayoutFlex-JDgK8BCr.js";import{N as it}from"./NumberField-BClPzJbf.js";import"./index-ChsGqxH_.js";import"./_commonjsHelpers-Cpj98o6Y.js";import"./v4-CtRu48qb.js";import"./index-BPrLDK9Y.js";import"./index-C7hTFOIV.js";import"./index-BlMeVLsf.js";import"./Combination-IIMvWCmY.js";import"./tslib.es6-C7pnyCjR.js";import"./render-icon-BT0Aq7PA.js";import"./ButtonBase-B_gwKVAa.js";import"./filterAttributesPassedByRadixUIAtRuntime-B7QTVwVw.js";import"./Spinner-BcQ2TyFf.js";import"./defaults-hwJNw1bK.js";import"./useMergeRefs-SFH7Mw4x.js";import"./useHostname-Y3PlXofY.js";import"./index-CC6DAVyL.js";import"./text-accent-DZDDtpIt.js";import"./text-centered-CznToR0o.js";import"./hoist-non-react-statics.cjs-C-Qo8PK8.js";import"./ProgressSteps-CwDoZPp7.js";import"./message-CToTEy-z.js";import"./constants--ewUoBsO.js";import"./layout-relative.module-f40KabMD.js";import"./FormControl-D9rxeKMc.js";import"./Input-UdhYxppR.js";import"./InputContainer-B1hqJyx0.js";const rt=({title:s,titleId:o,...t},n)=>a.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",ref:n,"aria-labelledby":o,...t},s?a.createElement("title",{id:o},s):null,a.createElement("path",{fillRule:"evenodd",d:"M7.207 5.793a1 1 0 0 0-1.414 1.414L10.586 12l-4.793 4.793a1 1 0 1 0 1.414 1.414L12 13.414l4.793 4.793a1 1 0 0 0 1.414-1.414L13.414 12l4.793-4.793a1 1 0 0 0-1.414-1.414L12 10.586 7.207 5.793Z",clipRule:"evenodd"})),lt=a.forwardRef(rt),dt="overlay__NM-kk",ct="overlayShow__SQuh9",pt="overlayHide__UA0Uh",ut="Dialog__GqDxV",gt="mobileContentShow__1akQp",mt="mobileContentHide__GXooF",yt="contentShow__RpFHp",ht="contentHide__Y-gr5",ft="header__2EPvy",vt="description__0f9xh",Ct="actions__hIL-J",y={overlay:dt,overlayShow:ct,overlayHide:pt,Dialog:ut,"Dialog--fullheight":"Dialog--fullheight__2W7sp","no-border-radius":"no-border-radius__G2Oo3",mobileContentShow:gt,mobileContentHide:mt,"Dialog--size-xs":"Dialog--size-xs__W0yGm","Dialog--size-sm":"Dialog--size-sm__rE3Y-","Dialog--size-md":"Dialog--size-md__HWxI4","Dialog--size-lg":"Dialog--size-lg__Lis4-",contentShow:yt,contentHide:ht,"Dialog--narrow-l--size-xs":"Dialog--narrow-l--size-xs__ljCvr","Dialog--medium-s--size-xs":"Dialog--medium-s--size-xs__t-4Ow","Dialog--medium-l--size-xs":"Dialog--medium-l--size-xs__yc1ae","Dialog--wide-s--size-xs":"Dialog--wide-s--size-xs__Id0f5","Dialog--wide-l--size-xs":"Dialog--wide-l--size-xs__Pnlyp","Dialog--narrow-l--size-sm":"Dialog--narrow-l--size-sm__M8-BH","Dialog--medium-s--size-sm":"Dialog--medium-s--size-sm__UPlli","Dialog--medium-l--size-sm":"Dialog--medium-l--size-sm__nAW8A","Dialog--wide-s--size-sm":"Dialog--wide-s--size-sm__i0pbj","Dialog--wide-l--size-sm":"Dialog--wide-l--size-sm__PghJ-","Dialog--narrow-l--size-md":"Dialog--narrow-l--size-md__8jZY3","Dialog--medium-s--size-md":"Dialog--medium-s--size-md__dQ1TZ","Dialog--medium-l--size-md":"Dialog--medium-l--size-md__kcNF8","Dialog--wide-s--size-md":"Dialog--wide-s--size-md__KDVax","Dialog--wide-l--size-md":"Dialog--wide-l--size-md__mV57k","Dialog--narrow-l--size-lg":"Dialog--narrow-l--size-lg__h5Tdx","Dialog--medium-s--size-lg":"Dialog--medium-s--size-lg__qci5k","Dialog--medium-l--size-lg":"Dialog--medium-l--size-lg__JCkaM","Dialog--wide-s--size-lg":"Dialog--wide-s--size-lg__eJlxf","Dialog--wide-l--size-lg":"Dialog--wide-l--size-lg__mo796",header:ft,description:vt,actions:Ct},xt=({open:s,title:o,description:t,children:n,size:i="md",hideHeader:u,onClose:p,mobileFullHeight:h,dataset:E})=>{const{formatMessage:Ie}=Ge(),Pe=Xe(),He=St(s),Fe=Qe(E,{preplyDsComponent:R.Dialog}),Ee=$e(y,R.Dialog,[et("size",i),tt("fullheight",void 0,h)]).join(" "),Re=a.useCallback(Ae=>{Ae||p==null||p()},[p]);return e.jsx(We,{open:s,onOpenChange:Re,children:e.jsxs(Ne,{container:Pe,children:[e.jsx(Ve,{className:y.overlay,"data-testid":"dialog-overlay"}),e.jsxs(Me,{...Fe,ref:He,className:Ee,children:[e.jsxs("header",{className:y.header,children:[e.jsxs("hgroup",{hidden:u,children:[e.jsx(qe,{asChild:!0,children:e.jsx(Ke,{tag:"h3",variant:"medium",children:o})}),t&&e.jsx(Ue,{asChild:!0,children:e.jsx("p",{className:y.description,children:t})})]}),e.jsx(Je,{asChild:!0,children:e.jsx(Ze,{variant:"ghost",dataset:{testid:"dialog-close"},assistiveText:Ie(Ye.close),svg:lt})})]}),n]})]})})},Dt=({primaryLabel:s,secondaryLabel:o,onPrimaryClick:t,onSecondaryClick:n})=>e.jsxs("div",{className:y.actions,children:[e.jsx(d,{variant:"secondary",onClick:n,children:o}),e.jsx(d,{variant:"primary",onClick:t,children:s})]}),r=Object.assign(xt,{Actions:Dt});function St(s){const[o,t]=a.useState(null),n=a.useCallback(i=>t(i),[]);return a.useEffect(()=>{if(!s||!o)return;const i=async()=>{const p=o.getAnimations().map(E=>E.finished);await Promise.allSettled(p);const{y:h}=o.getBoundingClientRect();o.classList.toggle(y["no-border-radius"],h===0)};i(),window.addEventListener("resize",i);const u=new ResizeObserver(i);return u.observe(o),()=>{window.removeEventListener("resize",i),u.disconnect()}},[s,o]),n}try{r.displayName="Dialog",r.__docgenInfo={description:`A modal dialog component that can be used to show content in an overlay.
2
-
3
- Composed of:
4
- - Dialog: The main component
5
- - Dialog.Actions: Footer actions with primary and secondary buttons`,displayName:"Dialog",props:{open:{defaultValue:null,description:"Controls the visibility of the dialog",name:"open",required:!0,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},title:{defaultValue:null,description:"Title displayed in the dialog header",name:"title",required:!0,type:{name:"enum",value:[{value:"undefined"},{value:"null"},{value:"string"},{value:"number"},{value:"false"},{value:"true"},{value:"ReactElement<any, string | JSXElementConstructor<any>>"},{value:"Iterable<ReactNode>"},{value:"ReactPortal"}]}},description:{defaultValue:null,description:"Optional description displayed below the title",name:"description",required:!1,type:{name:"enum",value:[{value:"null"},{value:"string"},{value:"number"},{value:"false"},{value:"true"},{value:"ReactElement<any, string | JSXElementConstructor<any>>"},{value:"Iterable<ReactNode>"},{value:"ReactPortal"}]}},children:{defaultValue:null,description:"Content to be rendered inside the dialog",name:"children",required:!0,type:{name:"enum",value:[{value:"undefined"},{value:"null"},{value:"string"},{value:"number"},{value:"false"},{value:"true"},{value:"ReactElement<any, string | JSXElementConstructor<any>>"},{value:"Iterable<ReactNode>"},{value:"ReactPortal"}]}},size:{defaultValue:{value:"md"},description:"Controls the width of the dialog on desktop and height on mobile",name:"size",required:!1,type:{name:"enum",value:[{value:'"xs"'},{value:'"md"'},{value:'"sm"'},{value:'"lg"'},{value:'ResponsiveProp<"xs" | "md" | "sm" | "lg">'}]}},hideHeader:{defaultValue:{value:"false"},description:`When true, visually hides the header (title and description) while
6
- keeping it accessible to screen readers`,name:"hideHeader",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},onClose:{defaultValue:null,description:`Callback fired when the user tries to close the dialog (via escape
7
- key, overlay click, or close button).`,name:"onClose",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},mobileFullHeight:{defaultValue:null,description:"Makes the Dialog take up the full screen height on mobile screens, i.e.\nscreens under the `medium-l` breakpoint.",name:"mobileFullHeight",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},dataset:{defaultValue:null,description:"",name:"dataset",required:!1,type:{name:"enum",value:[{value:"Dataset"}]}}}}}catch{}const ho={title:"Components/Dialog",component:r,parameters:{docs:{story:{inline:!1,height:600}}},args:{onClose:Le()}},l=e.jsx("div",{style:{width:"100%",height:"200px",background:"linear-gradient(to bottom, color-mix(in srgb, #e0e0e0, transparent), #e0e0e0)"}}),c=async({canvas:s,step:o})=>{let t;return await o("Open dialog",async()=>{const n=s.getByTestId("trigger");return await f.click(n),v(()=>(t=s.getByTestId("dialog"),g(t).toBeVisible()))}),t},C={render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"xs",title:"Extra Small Dialog",dataset:{testid:"dialog"},children:l})]})},play:c},x={render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"sm",title:"Small Dialog",dataset:{testid:"dialog"},children:l})]})},play:c},D={render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"md",title:"Medium Dialog",dataset:{testid:"dialog"},children:l})]})},play:c},S={render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"lg",title:"Large Dialog",dataset:{testid:"dialog"},children:l})]})},play:c},w={parameters:{docs:{description:{story:`
8
- The Dialog component adapts to different screen sizes through responsive size props.
9
- Use an object with breakpoints as keys to specify different sizes at different viewport widths:
10
-
11
- \`\`\`tsx
12
- <Dialog
13
- size={{
14
- _: 'xs',
15
- 'medium-l': 'lg'
16
- }}
17
- />
18
- \`\`\`
19
- `}}},render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:{_:"xs","medium-l":"lg"},title:"Width Responsivness",description:"Change the window width to see the Dialog width respond to it",dataset:{testid:"dialog"},children:l})]})},play:c},b={render:function(o){const[t,n]=a.useState(!1),[i,u]=a.useState(1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>n(!0),children:"Open"}),e.jsxs(r,{open:t,onClose:()=>{var p;n(!1),(p=o.onClose)==null||p.call(o)},size:"md",title:"Height Responsiveness",description:"Change the number of children to see the Dialog style respond to the height change",dataset:{testid:"dialog"},children:[e.jsx(it,{label:"Child count",value:i,onChange:p=>u(parseInt(p.target.value)),required:!0}),e.jsx("br",{}),Array.from({length:i},(p,h)=>e.jsx(a.Fragment,{children:l},h)),e.jsx(r.Actions,{primaryLabel:"Primary",secondaryLabel:"Secondary",onPrimaryClick:F("Primary button clicked"),onSecondaryClick:F("Secondary button clicked")})]})]})},play:c},z={parameters:{chromatic:{modes:{"narrow-l":{viewport:"narrow-l"},"medium-s":{viewport:"medium-s"},"medium-l":{viewport:"medium-l"}}}},render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"md",title:"Mobile Full Height",dataset:{testid:"dialog"},mobileFullHeight:!0,children:l})]})},play:c},O={render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"md",title:"Visually Hidden Title",description:"This header is hidden visually but still accessible to screen readers",hideHeader:!0,dataset:{testid:"dialog"},children:l})]})},play:c},j={render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsxs(r,{open:o,onClose:()=>t(!1),size:"md",title:"Dialog Title",description:"This is the dialog description.",dataset:{testid:"dialog"},children:[l,e.jsx(r.Actions,{primaryLabel:"Primary",secondaryLabel:"Secondary",onPrimaryClick:F("Primary button clicked"),onSecondaryClick:F("Secondary button clicked")})]})]})},play:c},k={parameters:{docs:{description:{story:`
20
- The Dialog component can be used with the Steps component to create multi-step flows.
21
- You can hide the Dialog's header using \`hideHeader\` and add your own headers to each step,
22
- like in this story.
23
- `}}},render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"md",title:"Hidden Dialog Title",hideHeader:!0,dataset:{testid:"dialog"},children:e.jsxs(m,{"aria-label":"Onboarding Steps",children:[e.jsx(m.Step,{title:"Profile",description:"Tell us more about yourself",children:l}),e.jsx(m.Step,{title:"Subject",description:"What do you want to learn?",children:l}),e.jsx(m.Step,{title:"Availability",description:"When are you available?",children:l}),e.jsx("br",{}),e.jsxs(at,{justifyContent:"space-between",children:[e.jsx(m.Previous,{}),e.jsx(m.Next,{})]})]})})]})},play:c},_={parameters:{docs:{description:{story:"A dialog with an Icon component in the title. This demonstrates how to use React elements in the title."}}},render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"md",title:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[e.jsx(ot,{svg:nt}),e.jsx("span",{children:"Information Dialog"})]}),description:"This dialog title includes an icon component",dataset:{testid:"dialog"},children:l})]})},play:c},B={parameters:{docs:{description:{story:"A dialog with an Avatar component in the title. This demonstrates how to use compound components in the title."}}},render:function(){const[o,t]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,onClose:()=>t(!1),size:"md",title:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[e.jsx(st,{size:"s",alt:"User"}),e.jsx("span",{children:"User Profile"})]}),description:"This dialog shows a user profile with an avatar in the title",dataset:{testid:"dialog"},children:l})]})},play:c},T={parameters:{docs:{description:{story:`
24
- The Dialog component provides CSS property escape hatches for controlling the z-index of both the overlay and content:
25
-
26
- - \`--ds-dialog-overlay-z-index-override\`: Controls the overlay's z-index
27
- - \`--ds-dialog-content-z-index-override\`: Controls the content's z-index
28
-
29
- These should only be used when necessary, as proper stacking context isolation is preferred.
30
-
31
- In the following example, the stacking order of the dialog trigger, overlay, and content are
32
- reveresed using the above CSS properties.
33
-
34
- Note: This is done using a \`useEffect\` just for the sake of the story. In a real-world scenario, this should ideally be done in a global stylesheet or a theme provider.
35
- `}}},render:function(){const[o,t]=a.useState(!1);return a.useEffect(()=>(document.body.style.setProperty("--ds-dialog-overlay-z-index-override","88"),document.body.style.setProperty("--ds-dialog-content-z-index-override","77"),()=>{document.body.style.removeProperty("--ds-dialog-overlay-z-index-override"),document.body.style.removeProperty("--ds-dialog-content-z-index-override")}),[]),e.jsxs("div",{style:{position:"relative",zIndex:99},children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>t(!0),children:"Open"}),e.jsx(r,{open:o,title:"ZIndex Override",size:"md",onClose:()=>t(!1),dataset:{testid:"dialog"},children:l})]})},play:async({canvas:s,step:o})=>{await o("Open alert",async()=>(await f.click(s.getByTestId("trigger")),v(()=>{const t=s.getByTestId("dialog");g(t).toBeVisible()}))),await o("Check content's computed z-index",async()=>{const t=s.getByTestId("dialog"),n=getComputedStyle(t);g(n.zIndex).toBe("77")}),await o("Check overlay's computed z-index",async()=>{const t=s.getByTestId("dialog").previousElementSibling;if(!t)throw new Error("The overlay happened to be the previous sibling of the dialog content, but it isn't anymore. Please update the test.");const n=getComputedStyle(t);g(n.zIndex).toBe("88")})}},I={tags:["!autodocs"],render:function(o){const[t,n]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>n(!0),children:"Open"}),e.jsx(r,{open:t,onClose:()=>{var i;n(!1),(i=o.onClose)==null||i.call(o)},size:"md",title:"Test Close Button",dataset:{testid:"dialog"},children:l})]})},play:async s=>{const o=await c(s),{canvas:t,step:n,args:i}=s;await n("Close dialog using close button",async()=>{const u=t.getByTestId("dialog-close");return await f.click(u),v(async()=>(await g(o).not.toBeVisible(),g(i.onClose).toHaveBeenCalledOnce()))})}},P={tags:["!autodocs"],render:function(o){const[t,n]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>n(!0),children:"Open"}),e.jsx(r,{open:t,onClose:()=>{var i;n(!1),(i=o.onClose)==null||i.call(o)},size:"md",title:"Test Close Overlay",dataset:{testid:"dialog"},children:l})]})},play:async s=>{const o=await c(s),{canvas:t,step:n,args:i}=s;await n("Close dialog by clicking overlay",async()=>{const u=t.getByTestId("dialog-overlay");return await f.click(u),v(async()=>(await g(o).not.toBeVisible(),g(i.onClose).toHaveBeenCalledOnce()))})}},H={tags:["!autodocs"],render:function(o){const[t,n]=a.useState(!1);return e.jsxs(e.Fragment,{children:[e.jsx(d,{dataset:{testid:"trigger"},onClick:()=>n(!0),children:"Open"}),e.jsx(r,{open:t,onClose:()=>{var i;n(!1),(i=o.onClose)==null||i.call(o)},size:"md",title:"Test Close Keyboard",dataset:{testid:"dialog"},children:l})]})},play:async s=>{const o=await c(s),{step:t,args:n}=s;await t("Close dialog using escape key",async()=>(await f.keyboard("{Escape}"),v(async()=>(await g(o).not.toBeVisible(),g(n.onClose).toHaveBeenCalledOnce()))))}};var A,L,W;C.parameters={...C.parameters,docs:{...(A=C.parameters)==null?void 0:A.docs,source:{originalSource:`{
36
- render: function Story() {
37
- const [open, setOpen] = useState(false);
38
- return <>
39
- <Button dataset={{
40
- testid: 'trigger'
41
- }} onClick={() => setOpen(true)}>
42
- Open
43
- </Button>
44
- <Dialog open={open} onClose={() => setOpen(false)} size="xs" title="Extra Small Dialog" dataset={{
45
- testid: 'dialog'
46
- }}>
47
- {DummyContent}
48
- </Dialog>
49
- </>;
50
- },
51
- play: openDialogPlay
52
- }`,...(W=(L=C.parameters)==null?void 0:L.docs)==null?void 0:W.source}}};var N,V,M;x.parameters={...x.parameters,docs:{...(N=x.parameters)==null?void 0:N.docs,source:{originalSource:`{
53
- render: function Story() {
54
- const [open, setOpen] = useState(false);
55
- return <>
56
- <Button dataset={{
57
- testid: 'trigger'
58
- }} onClick={() => setOpen(true)}>
59
- Open
60
- </Button>
61
- <Dialog open={open} onClose={() => setOpen(false)} size="sm" title="Small Dialog" dataset={{
62
- testid: 'dialog'
63
- }}>
64
- {DummyContent}
65
- </Dialog>
66
- </>;
67
- },
68
- play: openDialogPlay
69
- }`,...(M=(V=x.parameters)==null?void 0:V.docs)==null?void 0:M.source}}};var q,U,J;D.parameters={...D.parameters,docs:{...(q=D.parameters)==null?void 0:q.docs,source:{originalSource:`{
70
- render: function Story() {
71
- const [open, setOpen] = useState(false);
72
- return <>
73
- <Button dataset={{
74
- testid: 'trigger'
75
- }} onClick={() => setOpen(true)}>
76
- Open
77
- </Button>
78
- <Dialog open={open} onClose={() => setOpen(false)} size="md" title="Medium Dialog" dataset={{
79
- testid: 'dialog'
80
- }}>
81
- {DummyContent}
82
- </Dialog>
83
- </>;
84
- },
85
- play: openDialogPlay
86
- }`,...(J=(U=D.parameters)==null?void 0:U.docs)==null?void 0:J.source}}};var Z,K,Y;S.parameters={...S.parameters,docs:{...(Z=S.parameters)==null?void 0:Z.docs,source:{originalSource:`{
87
- render: function Story() {
88
- const [open, setOpen] = useState(false);
89
- return <>
90
- <Button dataset={{
91
- testid: 'trigger'
92
- }} onClick={() => setOpen(true)}>
93
- Open
94
- </Button>
95
- <Dialog open={open} onClose={() => setOpen(false)} size="lg" title="Large Dialog" dataset={{
96
- testid: 'dialog'
97
- }}>
98
- {DummyContent}
99
- </Dialog>
100
- </>;
101
- },
102
- play: openDialogPlay
103
- }`,...(Y=(K=S.parameters)==null?void 0:K.docs)==null?void 0:Y.source}}};var G,X,Q;w.parameters={...w.parameters,docs:{...(G=w.parameters)==null?void 0:G.docs,source:{originalSource:`{
104
- parameters: {
105
- docs: {
106
- description: {
107
- story: \`
108
- The Dialog component adapts to different screen sizes through responsive size props.
109
- Use an object with breakpoints as keys to specify different sizes at different viewport widths:
110
-
111
- \\\`\\\`\\\`tsx
112
- <Dialog
113
- size={{
114
- _: 'xs',
115
- 'medium-l': 'lg'
116
- }}
117
- />
118
- \\\`\\\`\\\`
119
- \`
120
- }
121
- }
122
- },
123
- render: function Story() {
124
- const [open, setOpen] = useState(false);
125
- return <>
126
- <Button dataset={{
127
- testid: 'trigger'
128
- }} onClick={() => setOpen(true)}>
129
- Open
130
- </Button>
131
- <Dialog open={open} onClose={() => setOpen(false)} size={{
132
- _: 'xs',
133
- 'medium-l': 'lg'
134
- }} title="Width Responsivness" description="Change the window width to see the Dialog width respond to it" dataset={{
135
- testid: 'dialog'
136
- }}>
137
- {DummyContent}
138
- </Dialog>
139
- </>;
140
- },
141
- play: openDialogPlay
142
- }`,...(Q=(X=w.parameters)==null?void 0:X.docs)==null?void 0:Q.source}}};var $,ee,te;b.parameters={...b.parameters,docs:{...($=b.parameters)==null?void 0:$.docs,source:{originalSource:`{
143
- render: function Story(args) {
144
- const [open, setOpen] = useState(false);
145
- const [count, setCount] = useState(1);
146
- return <>
147
- <Button dataset={{
148
- testid: 'trigger'
149
- }} onClick={() => setOpen(true)}>
150
- Open
151
- </Button>
152
- <Dialog open={open} onClose={() => {
153
- setOpen(false);
154
- args.onClose?.();
155
- }} size="md" title="Height Responsiveness" description="Change the number of children to see the Dialog style respond to the height change" dataset={{
156
- testid: 'dialog'
157
- }}>
158
- <NumberField label="Child count" value={count} onChange={e => setCount(parseInt(e.target.value))} required />
159
- <br />
160
- {Array.from({
161
- length: count
162
- }, (_v, i) => <Fragment key={i}>{DummyContent}</Fragment>)}
163
- <Dialog.Actions primaryLabel="Primary" secondaryLabel="Secondary" onPrimaryClick={action('Primary button clicked')} onSecondaryClick={action('Secondary button clicked')} />
164
- </Dialog>
165
- </>;
166
- },
167
- play: openDialogPlay
168
- }`,...(te=(ee=b.parameters)==null?void 0:ee.docs)==null?void 0:te.source}}};var oe,se,ne;z.parameters={...z.parameters,docs:{...(oe=z.parameters)==null?void 0:oe.docs,source:{originalSource:`{
169
- parameters: {
170
- chromatic: {
171
- modes: {
172
- 'narrow-l': {
173
- viewport: 'narrow-l'
174
- },
175
- 'medium-s': {
176
- viewport: 'medium-s'
177
- },
178
- 'medium-l': {
179
- viewport: 'medium-l'
180
- }
181
- }
182
- }
183
- },
184
- render: function Story() {
185
- const [open, setOpen] = useState(false);
186
- return <>
187
- <Button dataset={{
188
- testid: 'trigger'
189
- }} onClick={() => setOpen(true)}>
190
- Open
191
- </Button>
192
- <Dialog open={open} onClose={() => setOpen(false)} size="md" title="Mobile Full Height" dataset={{
193
- testid: 'dialog'
194
- }} mobileFullHeight>
195
- {DummyContent}
196
- </Dialog>
197
- </>;
198
- },
199
- play: openDialogPlay
200
- }`,...(ne=(se=z.parameters)==null?void 0:se.docs)==null?void 0:ne.source}}};var ae,ie,re;O.parameters={...O.parameters,docs:{...(ae=O.parameters)==null?void 0:ae.docs,source:{originalSource:`{
201
- render: function Story() {
202
- const [open, setOpen] = useState(false);
203
- return <>
204
- <Button dataset={{
205
- testid: 'trigger'
206
- }} onClick={() => setOpen(true)}>
207
- Open
208
- </Button>
209
- <Dialog open={open} onClose={() => setOpen(false)} size="md" title="Visually Hidden Title" description="This header is hidden visually but still accessible to screen readers" hideHeader dataset={{
210
- testid: 'dialog'
211
- }}>
212
- {DummyContent}
213
- </Dialog>
214
- </>;
215
- },
216
- play: openDialogPlay
217
- }`,...(re=(ie=O.parameters)==null?void 0:ie.docs)==null?void 0:re.source}}};var le,de,ce;j.parameters={...j.parameters,docs:{...(le=j.parameters)==null?void 0:le.docs,source:{originalSource:`{
218
- render: function Story() {
219
- const [open, setOpen] = useState(false);
220
- return <>
221
- <Button dataset={{
222
- testid: 'trigger'
223
- }} onClick={() => setOpen(true)}>
224
- Open
225
- </Button>
226
- <Dialog open={open} onClose={() => setOpen(false)} size="md" title="Dialog Title" description="This is the dialog description." dataset={{
227
- testid: 'dialog'
228
- }}>
229
- {DummyContent}
230
- <Dialog.Actions primaryLabel="Primary" secondaryLabel="Secondary" onPrimaryClick={action('Primary button clicked')} onSecondaryClick={action('Secondary button clicked')} />
231
- </Dialog>
232
- </>;
233
- },
234
- play: openDialogPlay
235
- }`,...(ce=(de=j.parameters)==null?void 0:de.docs)==null?void 0:ce.source}}};var pe,ue,ge;k.parameters={...k.parameters,docs:{...(pe=k.parameters)==null?void 0:pe.docs,source:{originalSource:`{
236
- parameters: {
237
- docs: {
238
- description: {
239
- story: \`
240
- The Dialog component can be used with the Steps component to create multi-step flows.
241
- You can hide the Dialog's header using \\\`hideHeader\\\` and add your own headers to each step,
242
- like in this story.
243
- \`
244
- }
245
- }
246
- },
247
- render: function Story() {
248
- const [open, setOpen] = useState(false);
249
- return <>
250
- <Button dataset={{
251
- testid: 'trigger'
252
- }} onClick={() => setOpen(true)}>
253
- Open
254
- </Button>
255
- <Dialog open={open} onClose={() => setOpen(false)} size="md" title="Hidden Dialog Title" hideHeader dataset={{
256
- testid: 'dialog'
257
- }}>
258
- <Steps aria-label="Onboarding Steps">
259
- <Steps.Step title="Profile" description="Tell us more about yourself">
260
- {DummyContent}
261
- </Steps.Step>
262
- <Steps.Step title="Subject" description="What do you want to learn?">
263
- {DummyContent}
264
- </Steps.Step>
265
- <Steps.Step title="Availability" description="When are you available?">
266
- {DummyContent}
267
- </Steps.Step>
268
- <br />
269
- <LayoutFlex justifyContent="space-between">
270
- <Steps.Previous />
271
- <Steps.Next />
272
- </LayoutFlex>
273
- </Steps>
274
- </Dialog>
275
- </>;
276
- },
277
- play: openDialogPlay
278
- }`,...(ge=(ue=k.parameters)==null?void 0:ue.docs)==null?void 0:ge.source}}};var me,ye,he;_.parameters={..._.parameters,docs:{...(me=_.parameters)==null?void 0:me.docs,source:{originalSource:`{
279
- parameters: {
280
- docs: {
281
- description: {
282
- story: 'A dialog with an Icon component in the title. This demonstrates how to use React elements in the title.'
283
- }
284
- }
285
- },
286
- render: function Story() {
287
- const [open, setOpen] = useState(false);
288
- return <>
289
- <Button dataset={{
290
- testid: 'trigger'
291
- }} onClick={() => setOpen(true)}>
292
- Open
293
- </Button>
294
- <Dialog open={open} onClose={() => setOpen(false)} size="md" title={<div style={{
295
- display: 'flex',
296
- alignItems: 'center',
297
- gap: '8px'
298
- }}>
299
- <Icon svg={InfoIcon} />
300
- <span>Information Dialog</span>
301
- </div>} description="This dialog title includes an icon component" dataset={{
302
- testid: 'dialog'
303
- }}>
304
- {DummyContent}
305
- </Dialog>
306
- </>;
307
- },
308
- play: openDialogPlay
309
- }`,...(he=(ye=_.parameters)==null?void 0:ye.docs)==null?void 0:he.source}}};var fe,ve,Ce;B.parameters={...B.parameters,docs:{...(fe=B.parameters)==null?void 0:fe.docs,source:{originalSource:`{
310
- parameters: {
311
- docs: {
312
- description: {
313
- story: 'A dialog with an Avatar component in the title. This demonstrates how to use compound components in the title.'
314
- }
315
- }
316
- },
317
- render: function Story() {
318
- const [open, setOpen] = useState(false);
319
- return <>
320
- <Button dataset={{
321
- testid: 'trigger'
322
- }} onClick={() => setOpen(true)}>
323
- Open
324
- </Button>
325
- <Dialog open={open} onClose={() => setOpen(false)} size="md" title={<div style={{
326
- display: 'flex',
327
- alignItems: 'center',
328
- gap: '12px'
329
- }}>
330
- <Avatar size="s" alt="User" />
331
- <span>User Profile</span>
332
- </div>} description="This dialog shows a user profile with an avatar in the title" dataset={{
333
- testid: 'dialog'
334
- }}>
335
- {DummyContent}
336
- </Dialog>
337
- </>;
338
- },
339
- play: openDialogPlay
340
- }`,...(Ce=(ve=B.parameters)==null?void 0:ve.docs)==null?void 0:Ce.source}}};var xe,De,Se;T.parameters={...T.parameters,docs:{...(xe=T.parameters)==null?void 0:xe.docs,source:{originalSource:`{
341
- parameters: {
342
- docs: {
343
- description: {
344
- story: \`
345
- The Dialog component provides CSS property escape hatches for controlling the z-index of both the overlay and content:
346
-
347
- - \\\`--ds-dialog-overlay-z-index-override\\\`: Controls the overlay's z-index
348
- - \\\`--ds-dialog-content-z-index-override\\\`: Controls the content's z-index
349
-
350
- These should only be used when necessary, as proper stacking context isolation is preferred.
351
-
352
- In the following example, the stacking order of the dialog trigger, overlay, and content are
353
- reveresed using the above CSS properties.
354
-
355
- Note: This is done using a \\\`useEffect\\\` just for the sake of the story. In a real-world scenario, this should ideally be done in a global stylesheet or a theme provider.
356
- \`
357
- }
358
- }
359
- },
360
- render: function Story() {
361
- const [open, setOpen] = useState(false);
362
- useEffect(() => {
363
- document.body.style.setProperty('--ds-dialog-overlay-z-index-override', '88');
364
- document.body.style.setProperty('--ds-dialog-content-z-index-override', '77');
365
- return () => {
366
- document.body.style.removeProperty('--ds-dialog-overlay-z-index-override');
367
- document.body.style.removeProperty('--ds-dialog-content-z-index-override');
368
- };
369
- }, []);
370
- return <div style={{
371
- position: 'relative',
372
- zIndex: 99
373
- }}>
374
- <Button dataset={{
375
- testid: 'trigger'
376
- }} onClick={() => setOpen(true)}>
377
- Open
378
- </Button>
379
- <Dialog open={open} title="ZIndex Override" size="md" onClose={() => setOpen(false)} dataset={{
380
- testid: 'dialog'
381
- }}>
382
- {DummyContent}
383
- </Dialog>
384
- </div>;
385
- },
386
- play: async ({
387
- canvas,
388
- step
389
- }) => {
390
- await step('Open alert', async () => {
391
- await userEvent.click(canvas.getByTestId('trigger'));
392
- return waitFor(() => {
393
- const alert = canvas.getByTestId('dialog');
394
- expect(alert).toBeVisible();
395
- });
396
- });
397
- await step(\`Check content's computed z-index\`, async () => {
398
- const alert = canvas.getByTestId('dialog');
399
- const styles = getComputedStyle(alert);
400
- expect(styles.zIndex).toBe('77');
401
- });
402
- await step(\`Check overlay's computed z-index\`, async () => {
403
- const overlay = canvas.getByTestId('dialog').previousElementSibling;
404
- if (!overlay) throw new Error(\`The overlay happened to be the previous sibling of the dialog content, but it isn't anymore. Please update the test.\`);
405
- const styles = getComputedStyle(overlay);
406
- expect(styles.zIndex).toBe('88');
407
- });
408
- }
409
- }`,...(Se=(De=T.parameters)==null?void 0:De.docs)==null?void 0:Se.source}}};var we,be,ze;I.parameters={...I.parameters,docs:{...(we=I.parameters)==null?void 0:we.docs,source:{originalSource:`{
410
- tags: ['!autodocs'],
411
- render: function Story(args) {
412
- const [open, setOpen] = useState(false);
413
- return <>
414
- <Button dataset={{
415
- testid: 'trigger'
416
- }} onClick={() => setOpen(true)}>
417
- Open
418
- </Button>
419
- <Dialog open={open} onClose={() => {
420
- setOpen(false);
421
- args.onClose?.();
422
- }} size="md" title="Test Close Button" dataset={{
423
- testid: 'dialog'
424
- }}>
425
- {DummyContent}
426
- </Dialog>
427
- </>;
428
- },
429
- play: async ctx => {
430
- const dialogContent = await openDialogPlay(ctx);
431
- const {
432
- canvas,
433
- step,
434
- args
435
- } = ctx;
436
- await step('Close dialog using close button', async () => {
437
- const closeButton = canvas.getByTestId('dialog-close');
438
- await userEvent.click(closeButton);
439
- return waitFor(async () => {
440
- await expect(dialogContent).not.toBeVisible();
441
- return expect(args.onClose).toHaveBeenCalledOnce();
442
- });
443
- });
444
- }
445
- }`,...(ze=(be=I.parameters)==null?void 0:be.docs)==null?void 0:ze.source}}};var Oe,je,ke;P.parameters={...P.parameters,docs:{...(Oe=P.parameters)==null?void 0:Oe.docs,source:{originalSource:`{
446
- tags: ['!autodocs'],
447
- render: function Story(args) {
448
- const [open, setOpen] = useState(false);
449
- return <>
450
- <Button dataset={{
451
- testid: 'trigger'
452
- }} onClick={() => setOpen(true)}>
453
- Open
454
- </Button>
455
- <Dialog open={open} onClose={() => {
456
- setOpen(false);
457
- args.onClose?.();
458
- }} size="md" title="Test Close Overlay" dataset={{
459
- testid: 'dialog'
460
- }}>
461
- {DummyContent}
462
- </Dialog>
463
- </>;
464
- },
465
- play: async ctx => {
466
- const dialogContent = await openDialogPlay(ctx);
467
- const {
468
- canvas,
469
- step,
470
- args
471
- } = ctx;
472
- await step('Close dialog by clicking overlay', async () => {
473
- const overlay = canvas.getByTestId('dialog-overlay');
474
- await userEvent.click(overlay);
475
- return waitFor(async () => {
476
- await expect(dialogContent).not.toBeVisible();
477
- return expect(args.onClose).toHaveBeenCalledOnce();
478
- });
479
- });
480
- }
481
- }`,...(ke=(je=P.parameters)==null?void 0:je.docs)==null?void 0:ke.source}}};var _e,Be,Te;H.parameters={...H.parameters,docs:{...(_e=H.parameters)==null?void 0:_e.docs,source:{originalSource:`{
482
- tags: ['!autodocs'],
483
- render: function Story(args) {
484
- const [open, setOpen] = useState(false);
485
- return <>
486
- <Button dataset={{
487
- testid: 'trigger'
488
- }} onClick={() => setOpen(true)}>
489
- Open
490
- </Button>
491
- <Dialog open={open} onClose={() => {
492
- setOpen(false);
493
- args.onClose?.();
494
- }} size="md" title="Test Close Keyboard" dataset={{
495
- testid: 'dialog'
496
- }}>
497
- {DummyContent}
498
- </Dialog>
499
- </>;
500
- },
501
- play: async ctx => {
502
- const dialogContent = await openDialogPlay(ctx);
503
- const {
504
- step,
505
- args
506
- } = ctx;
507
- await step('Close dialog using escape key', async () => {
508
- await userEvent.keyboard('{Escape}');
509
- return waitFor(async () => {
510
- await expect(dialogContent).not.toBeVisible();
511
- return expect(args.onClose).toHaveBeenCalledOnce();
512
- });
513
- });
514
- }
515
- }`,...(Te=(Be=H.parameters)==null?void 0:Be.docs)==null?void 0:Te.source}}};const fo=["ExtraSmall","Small","Medium","Large","WidthResponsiveness","HeightResponsiveness","MobileFullHeight","WithHiddenHeader","WithActions","WithSteps","WithIconInTitle","WithAvatarInTitle","WithZIndexOverride","TestCloseButton","TestCloseOverlay","TestCloseKeyboard"];export{C as ExtraSmall,b as HeightResponsiveness,S as Large,D as Medium,z as MobileFullHeight,x as Small,I as TestCloseButton,H as TestCloseKeyboard,P as TestCloseOverlay,w as WidthResponsiveness,j as WithActions,B as WithAvatarInTitle,O as WithHiddenHeader,_ as WithIconInTitle,k as WithSteps,T as WithZIndexOverride,fo as __namedExportsOrder,ho as default};