@preply/ds-docs 11.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.
- package/.storybook/decorators/withIntlProvider.tsx +1 -1
- package/.storybook/main.ts +1 -0
- package/.storybook/preview.tsx +5 -0
- package/chromatic.config.json +10 -0
- package/dist/addon-visual-tests-assets/visual-test-illustration.mp4 +0 -0
- package/dist/assets/00.LayoutFlex.stories-pFo1xsBe.js +85 -0
- package/dist/assets/00.applications-Cqkdr1wk.js +50 -0
- package/dist/assets/00.favicons.guide-B91Vhoka.js +21 -0
- package/dist/assets/00.token-explorer-B19aUGGg.js +340 -0
- package/dist/assets/00.using-responsive-props-B3Gr_s-n.js +18 -0
- package/dist/assets/01.semantic-tokens-ClbORo2f.js +11 -0
- package/dist/assets/01.using-shorthand-props-CZYYf4mA.js +39 -0
- package/dist/assets/10.Combinations.stories-BktZvBWq.js +128 -0
- package/dist/assets/10.fonts.guide-BGeAIZ8f.js +39 -0
- package/dist/assets/10.ssr--ERdtJ_Z.js +91 -0
- package/dist/assets/11.fonts.explorer-CApH9AGF.js +2 -0
- package/dist/assets/11.ssr.app-router-DusJ4Mbq.js +59 -0
- package/dist/assets/20.libraries-AkYtGwIz.js +22 -0
- package/dist/assets/2025-q4-ds-cleanup-njc6pOZy.js +351 -0
- package/dist/assets/30.icons.explorer-D8JDwXl5.js +72 -0
- package/dist/assets/30.storybook-C2VMIEWx.js +42 -0
- package/dist/assets/40.illustrations.explorer-Dexx0-Yq.js +21 -0
- package/dist/assets/60.components-EsXml7S8.js +22 -0
- package/dist/assets/90.advanced-CGMa0hIb.js +32 -0
- package/dist/assets/Accordion-BGpSQDcU.js +25 -0
- package/dist/assets/Accordion-bbEcwV1l.css +1 -0
- package/dist/assets/{Accordion.stories-CLwah67K.js → Accordion.stories-DZqm_pl0.js} +7 -7
- package/dist/assets/{Accordion.tests.stories-CFH7p1Jq.js → Accordion.tests.stories-CETE9vG5.js} +9 -9
- package/dist/assets/AlertBanner.primitives.stories-C1Rk8KVQ.js +14 -0
- package/dist/assets/AlertBanner.stories-CJnU52Gn.js +112 -0
- package/dist/assets/AlertBannerAction-BSNrnhbi.js +216 -0
- package/dist/assets/AlertBannerAction-UAyHHOqS.css +1 -0
- package/dist/assets/AlertDialog-Cr1_lUp6.css +1 -0
- package/dist/assets/AlertDialog-D1kj7VoM.js +6 -0
- package/dist/assets/{AlertDialog.stories-BKT7nitb.js → AlertDialog.stories-CjXjghMW.js} +11 -7
- package/dist/assets/Avatar-CZrWRM_5.css +1 -0
- package/dist/assets/Avatar-LEDcSb51.js +6 -0
- package/dist/assets/Avatar.stories-B6YvTFd5.js +42 -0
- package/dist/assets/{AvatarWithStatus-azmN9QBq.css → AvatarWithStatus-DNgVIYbt.css} +1 -1
- package/dist/assets/AvatarWithStatus-Dacm-jO_.js +6 -0
- package/dist/assets/AvatarWithStatus.stories-D9tFABve.js +36 -0
- package/dist/assets/Badge-CXba4Jz8.js +10 -0
- package/dist/assets/{Badge-BVnE8GHY.css → Badge-ChvYkJOj.css} +1 -1
- package/dist/assets/Badge.stories-6McX8lAA.js +90 -0
- package/dist/assets/Box-CJ3Eco8o.js +3 -0
- package/dist/assets/Box-CoMoVRxI.css +1 -0
- package/dist/assets/Box.stories-D7RLIL2b.js +44 -0
- package/dist/assets/BubbleCounter-DwJsPISN.js +5 -0
- package/dist/assets/BubbleCounter.stories-CaNBUXy9.js +246 -0
- package/dist/assets/Button-DnVrHohm.js +18 -0
- package/dist/assets/Button-DsoMn9D3.css +1 -0
- package/dist/assets/Button.stories-DB4FO1yP.js +271 -0
- package/dist/assets/ButtonBase-DMbDbkQ4.css +1 -0
- package/dist/assets/ButtonBase-DV0YtoS6.js +8 -0
- package/dist/assets/CalloutBanner-ChlWZtBk.css +1 -0
- package/dist/assets/CalloutBanner.stories-DMr5laA1.js +212 -0
- package/dist/assets/CalloutBannerText-Lb5ksCJz.css +1 -0
- package/dist/assets/CalloutBannerText-pe-2SkHW.js +75 -0
- package/dist/assets/Checkbox-B_qY1TUo.css +1 -0
- package/dist/assets/Checkbox-DEB6VLYS.js +10 -0
- package/dist/assets/{Checkbox.stories-ClI-ZBnj.js → Checkbox.stories-C_Oku35V.js} +6 -6
- package/dist/assets/Checkbox.tests.stories-BPHBBZi3.js +68 -0
- package/dist/assets/Chips-DK10vypy.css +1 -0
- package/dist/assets/Chips.stories-_LC622UQ.js +148 -0
- package/dist/assets/Color-6BZIO3FS-Cli2qKZW.js +1 -0
- package/dist/assets/{ComposingDialogs.stories-DwVqal9K.js → ComposingDialogs.stories-BSCyTSJL.js} +3 -3
- package/dist/assets/ComposingPopovers.stories-cp3PAdHA.js +49 -0
- package/dist/assets/CountryFlag-DMEPQuIc.js +49 -0
- package/dist/assets/{CountryFlag.stories-hf40f81N.js → CountryFlag.stories-CCfcgg_Y.js} +6 -6
- package/dist/assets/CountryFlag.test.stories-BaGoS-6l.js +27 -0
- package/dist/assets/Dialog-DCPUOQU4.js +13 -0
- package/dist/assets/Dialog.primitives-BPvLcj0z.css +1 -0
- package/dist/assets/Dialog.primitives.stories-Vxeh7YZt.js +237 -0
- package/dist/assets/Dialog.stories-87tBh-R6.js +267 -0
- package/dist/assets/Dialog.test.stories-B4pw7sJ3.js +146 -0
- package/dist/assets/DialogActions-BuK-fnKs.js +101 -0
- package/dist/assets/DialogCloseButton-Bh5fJ-N5.css +1 -0
- package/dist/assets/DialogCloseButton-dPdpMifg.js +149 -0
- package/dist/assets/DismissibleChips-Dv66pNAL.js +1 -0
- package/dist/assets/DismissibleChips.stories-nMCs_O4R.js +625 -0
- package/dist/assets/{Divider-DECo0bYW.css → Divider-BVw27QR_.css} +1 -1
- package/dist/assets/Divider-BsdKe9ia.js +1 -0
- package/dist/assets/Divider.stories-DMxdOUMT.js +9 -0
- package/dist/assets/DocsRenderer-LL677BLK-CToDaeBi.js +2 -0
- package/dist/assets/DropdownMenu-BUteP_4e.js +1258 -0
- package/dist/assets/DropdownMenu-Dp5QD_2I.css +1 -0
- package/dist/assets/DropdownMenu.stories-CPFPB_iw.js +1613 -0
- package/dist/assets/FieldButton-B7nd3jTk.css +1 -0
- package/dist/assets/FieldButton-lc__KGvz.js +1 -0
- package/dist/assets/FieldButton.stories-BweftrEg.js +1 -0
- package/dist/assets/FormControl-DX3yRMc2.css +1 -0
- package/dist/assets/FormControl-cSvM3XwI.js +7 -0
- package/dist/assets/FormControl.stories-guYQ8AuE.js +42 -0
- package/dist/assets/Heading-BMcfRMjT.css +1 -0
- package/dist/assets/Heading-CEZfMm-F.js +1 -0
- package/dist/assets/Heading.stories-CzERNny6.js +67 -0
- package/dist/assets/Icon-CfZyHxyH.js +8 -0
- package/dist/assets/{Icon-CyGLQNx7.css → Icon-D-_6_kTJ.css} +1 -1
- package/dist/assets/Icon-RSC-BpFBpboR.js +6 -0
- package/dist/assets/Icon.stories-D27wol8h.js +45 -0
- package/dist/assets/IconButton-CUt4Aks_.js +8 -0
- package/dist/assets/IconButton-D-myVwPD.css +1 -0
- package/dist/assets/IconTile.stories-jvAqK25q.js +88 -0
- package/dist/assets/Input-DXnvG-Wl.js +95 -0
- package/dist/assets/InputContainer-CKX9LGmw.js +2 -0
- package/dist/assets/InputContainer-dj6obgaH.css +1 -0
- package/dist/assets/IntegrationWithReactHookForm.stories-CW7Lqen8.js +467 -0
- package/dist/assets/{IntlFormattedDateTime.stories-BCwbTrw1.js → IntlFormattedAggregatedDateTime-CsA6eNMt.js} +112 -94
- package/dist/assets/{IntlFormattedCurrency.stories-j1D4xFto.js → IntlFormattedCurrency-CAb0INYF.js} +149 -125
- package/dist/assets/IntlFormattedCurrency.stories-CDdFf0Ih.js +1 -0
- package/dist/assets/IntlFormattedDateTime.stories-UGK_UBla.js +2 -0
- package/dist/assets/{constants-DDJ2G0OO.js → IntlFormattedTime-CFUwDROI.js} +853 -761
- package/dist/assets/LayoutFlex-Bc-UxKN0.css +1 -0
- package/dist/assets/LayoutFlex-DdWp4cl3.js +1 -0
- package/dist/assets/LayoutFlexItem-D6I-QYqv.css +1 -0
- package/dist/assets/LayoutFlexItem-DE78Bh3c.js +1 -0
- package/dist/assets/LayoutGrid-CIFhWu8r.css +1 -0
- package/dist/assets/LayoutGrid-qM5_bxVY.js +1 -0
- package/dist/assets/LayoutGrid.stories-DnBXjNoY.js +88 -0
- package/dist/assets/LayoutGridItem-BDeI61oE.css +1 -0
- package/dist/assets/LayoutGridItem-DXWb3V6X.js +1 -0
- package/dist/assets/Link-DZ7eineG.css +1 -0
- package/dist/assets/Link-J-HUcV5T.js +5 -0
- package/dist/assets/{Link.stories-6gHkl5xC.js → Link.stories-Bi7F_Vkw.js} +7 -7
- package/dist/assets/Loader-D4VDQ8pj.css +1 -0
- package/dist/assets/Loader-D9Ihhamv.js +1 -0
- package/dist/assets/Loader.stories-CA2r7ptV.js +37 -0
- package/dist/assets/MultiSelectChips-DLTwAQne.js +2 -0
- package/dist/assets/MultiSelectChips.stories-BXvs5PAK.js +608 -0
- package/dist/assets/NativeSelectField.stories-D0re4a3o.js +295 -0
- package/dist/assets/NumberField-BAofx_Ni.js +6 -0
- package/dist/assets/NumberField.stories-BhuTuTmY.js +254 -0
- package/dist/assets/ObserveIntersection-DPsyMqP-.js +8 -0
- package/dist/assets/ObserveIntersection.stories-C5r2quD1.js +27 -0
- package/dist/assets/OnboardingTooltip-By90tTWJ.css +1 -0
- package/dist/assets/OnboardingTooltip-D8NhfEzc.js +24 -0
- package/dist/assets/OnboardingTooltip.stories-D2Y_je7z.js +107 -0
- package/dist/assets/OnboardingTooltip.tests.stories-Chu-efpG.js +79 -0
- package/dist/assets/OnboardingTour-90hHg-Pp.css +1 -0
- package/dist/assets/OnboardingTour-DGI3bTQy.js +4 -0
- package/dist/assets/OnboardingTour.stories-Cb1WP0Hu.js +50 -0
- package/dist/assets/{OnboardingTour.tests.stories-CHMykq2a.js → OnboardingTour.tests.stories-B05mBGhB.js} +6 -6
- package/dist/assets/PasswordField-ByApWpbK.js +6 -0
- package/dist/assets/PasswordField.stories-DMtrOVsn.js +229 -0
- package/dist/assets/PreplyLogo-D-slBTep.js +3 -0
- package/dist/assets/PreplyLogo.stories-uJXJ3dh_.js +93 -0
- package/dist/assets/ProgressBar-Tb0nv9N6.js +4 -0
- package/dist/assets/ProgressBar-ZiF8cU84.css +1 -0
- package/dist/assets/ProgressBar.stories-Bj5ouQO7.js +43 -0
- package/dist/assets/ProgressSteps-CKNbDWn0.js +4 -0
- package/dist/assets/ProgressSteps-LZubx2ie.css +1 -0
- package/dist/assets/ProgressSteps.stories-Dl5cvdWw.js +31 -0
- package/dist/assets/PromoDialog-Daxo9KGU.js +3 -0
- package/dist/assets/RangeSlider-BshsrfHH.js +4 -0
- package/dist/assets/RangeSlider.stories-BnxUgnUq.js +117 -0
- package/dist/assets/Rating-7Lokv5qX.js +2 -0
- package/dist/assets/Rating.stories-C6vLq72a.js +115 -0
- package/dist/assets/RatingInput-B9JvC6a9.js +30 -0
- package/dist/assets/RatingInput.stories-CZaxR49A.js +421 -0
- package/dist/assets/SelectField-_eSdIkCW.js +19 -0
- package/dist/assets/SelectField-jvir0s5w.css +1 -0
- package/dist/assets/SelectField.stories-CeBOPAQf.js +517 -0
- package/dist/assets/ShowOnIntersection-sdAtBMhN.js +11 -0
- package/dist/assets/ShowOnIntersection.stories-Lmr1KetU.js +17 -0
- package/dist/assets/SingleSelectChips-BuIHP3oW.js +2 -0
- package/dist/assets/{SingleSelectChips.stories-CTAvW0Y9.js → SingleSelectChips.stories-z43WCX3L.js} +22 -22
- package/dist/assets/Slider-BJ8Eqvyw.css +1 -0
- package/dist/assets/Slider-BjEfhJ_o.js +2 -0
- package/dist/assets/Slider.stories-OZrQotEf.js +69 -0
- package/dist/assets/Spinner-9IaQuPm2.js +1 -0
- package/dist/assets/Spinner-CIgevzeA.css +1 -0
- package/dist/assets/Stars-DRmASRCW.css +1 -0
- package/dist/assets/Stars-DuQupRe3.js +1 -0
- package/dist/assets/Steps-BAxCCGnQ.css +1 -0
- package/dist/assets/Steps-Bf2x77zr.js +26 -0
- package/dist/assets/{Steps.stories-DqOo6fKy.js → Steps.stories-DFPBr2Yl.js} +13 -11
- package/dist/assets/Switch-ClfB15Th.css +1 -0
- package/dist/assets/Switch-DPX8X1b7.js +12 -0
- package/dist/assets/Switch.stories-EIYyG0Zt.js +151 -0
- package/dist/assets/Text-BTI4NIf0.css +1 -0
- package/dist/assets/Text-bm2vnOS2.js +1 -0
- package/dist/assets/Text.stories-CmIl_fwM.js +67 -0
- package/dist/assets/TextField-zS8J7vJP.js +6 -0
- package/dist/assets/TextField.stories-BUVrLpus.js +254 -0
- package/dist/assets/{TextHighlighted-CzbRMqIZ.css → TextHighlighted-C53ygX_A.css} +1 -1
- package/dist/assets/TextHighlighted-DF3lEelY.js +1 -0
- package/dist/assets/TextHighlighted.stories-CqDVxX79.js +32 -0
- package/dist/assets/{TextInline-CNIzsRbS.css → TextInline-BDaxjuE1.css} +1 -1
- package/dist/assets/TextInline-CHB850A5.js +1 -0
- package/dist/assets/TextInline.stories-CN5P8M-t.js +50 -0
- package/dist/assets/TextareaField-D-D245Qp.js +6 -0
- package/dist/assets/TextareaField.stories-zf-ovHbR.js +272 -0
- package/dist/assets/Toast-BwHq_wh7.js +3 -0
- package/dist/assets/Toast-CeQJ1lVu.css +1 -0
- package/dist/assets/Toast.stories-ojcdW7OV.js +183 -0
- package/dist/assets/TokyoUIAttach-CJ32NKTG.js +1 -0
- package/dist/assets/TokyoUIAvailability7LateNight-DffduFvP.js +1 -0
- package/dist/assets/TokyoUICheck-UkrDdu35.js +1 -0
- package/dist/assets/TokyoUICheckmark-6GaMBtS8.js +1 -0
- package/dist/assets/TokyoUIChevronDown-CS0lTt7n.js +1 -0
- package/dist/assets/TokyoUIChevronRight-BtUABx06.js +1 -0
- package/dist/assets/TokyoUIClose-cJyNy-kq.js +1 -0
- package/dist/assets/TokyoUIEmojiFrowning-DEhH_o6k.js +1 -0
- package/dist/assets/TokyoUIErrorWarning-CE_6hT_0.js +1 -0
- package/dist/assets/TokyoUIExerciseClosedGapsJumble-CmLQbqx9.js +1 -0
- package/dist/assets/TokyoUIEye--Ky-ic4j.js +1 -0
- package/dist/assets/TokyoUIFav-D3EBPocg.js +1 -0
- package/dist/assets/TokyoUIInfo-B-CriP10.js +1 -0
- package/dist/assets/TokyoUILanguage-B0kNm-zw.js +1 -0
- package/dist/assets/TokyoUILibraryExplore-BZ10fOAZ.js +1 -0
- package/dist/assets/TokyoUILock-Chkf2ogE.js +1 -0
- package/dist/assets/TokyoUIMessages-z4JOaU4E.js +1 -0
- package/dist/assets/TokyoUIMinus-DKK-A5EK.js +1 -0
- package/dist/assets/TokyoUINotebook-DO8t9gWt.js +1 -0
- package/dist/assets/TokyoUINotesWithPad-DM2X7aVA.js +1 -0
- package/dist/assets/TokyoUIPhone-Bw5Vf4vA.js +1 -0
- package/dist/assets/TokyoUISettings-D5pBmcYk.js +1 -0
- package/dist/assets/TokyoUISparkle-C3Cy7wMI.js +1 -0
- package/dist/assets/TokyoUIStarFilled-CYq7gSvg.js +1 -0
- package/dist/assets/TokyoUITag-Cg8pSiwB.js +1 -0
- package/dist/assets/TokyoUIUpload-B1wN3uN1.js +1 -0
- package/dist/assets/TokyoUIUser-BxbKTbW_.js +1 -0
- package/dist/assets/{Tooltip-Cm9bKrYj.css → Tooltip-C5LpnpaC.css} +1 -1
- package/dist/assets/Tooltip-IQdlsINh.js +9 -0
- package/dist/assets/Tooltip.stories-9Tn4uyBh.js +93 -0
- package/dist/assets/Tooltip.tests.stories-Cr4rBDLb.js +65 -0
- package/dist/assets/VisuallyHidden-CN0xhFLZ.js +1 -0
- package/dist/assets/VisuallyHidden-SLhaLKxx.css +1 -0
- package/dist/assets/WithTooltip-65CFNBJE-B-ngulbF.js +9 -0
- package/dist/assets/align-self-B8vQODdk.css +1 -0
- package/dist/assets/align-self-DLZqaACP.js +1 -0
- package/dist/assets/ar-CmAh1fW1.js +1 -0
- package/dist/assets/axe-C7CO230w.js +20 -0
- package/dist/assets/breakpoints-DVI9b-sj.js +31 -0
- package/dist/assets/breakpoints-DhB77ppz.js +32 -0
- package/dist/assets/breakpoints-JehRf-HQ.js +30 -0
- package/dist/assets/{changelog-BoskfpJ8.js → changelog-BlpT3PVh.js} +18 -3
- package/dist/assets/chunk-242VQQM5-BHHKbgg-.js +1 -0
- package/dist/assets/chunk-3LY4VQVK-Di70sXb8.js +6 -0
- package/dist/assets/chunk-BneVvdWh.js +1 -0
- package/dist/assets/chunk-YKABRMAI-tsMt0pG-.js +18 -0
- package/dist/assets/client-o3HipSzo.js +1 -0
- package/dist/assets/components-B2mdrQXl.js +1 -0
- package/dist/assets/components-BJI6UJJQ.js +250 -0
- package/dist/assets/constants-BKSB-IRi.js +37 -0
- package/dist/assets/createRequiredContext-CgxIAZIj.js +241 -0
- package/dist/assets/createRequiredContext-rvejDfGq.css +1 -0
- package/dist/assets/cs-o6LA2LFi.js +1 -0
- package/dist/assets/de-CGU9rRAn.js +1 -0
- package/dist/assets/dist-Cc1j9Pjk.js +1 -0
- package/dist/assets/dist-CrJFSSHJ.css +1 -0
- package/dist/assets/dist-DtfJeYQK.js +32 -0
- package/dist/assets/dist-XW9XCd1i.js +122 -0
- package/dist/assets/emotion-unitless.esm-NifOLKB5.js +1 -0
- package/dist/assets/en-CAnKwElg.js +1 -0
- package/dist/assets/es-MH1DT2kV.js +1 -0
- package/dist/assets/esm-CS074ZRu.js +12 -0
- package/dist/assets/filterAttributesPassedByRadixUIAtRuntime-CGiuUnR2.js +1 -0
- package/dist/assets/fonts-explorer.stories-I8-ZOqnR.js +100 -0
- package/dist/assets/formatter-EIJCOSYU-CrRlJc_C.js +1 -0
- package/dist/assets/fr-CgnvB_BI.js +1 -0
- package/dist/assets/getTokenVar-BdWui4zI.js +11 -0
- package/dist/assets/gradientBorders-CStgfkEm.js +45 -0
- package/dist/assets/hk-CaQALTDd.js +1 -0
- package/dist/assets/hover-BZswJq9X.js +13 -0
- package/dist/assets/hover-DkvE2XjW.js +14 -0
- package/dist/assets/hover-xopBYDG-.js +16 -0
- package/dist/assets/id-Bp-BGWpK.js +1 -0
- package/dist/assets/iframe-CYkk6Y66.css +1 -0
- package/dist/assets/iframe-f34VuKy-.js +1194 -0
- package/dist/assets/intro-OCMNWtPd.js +31 -0
- package/dist/assets/it-BMSKWkCc.js +1 -0
- package/dist/assets/ja-wtIn1pnV.js +1 -0
- package/dist/assets/jsx-runtime-C2wGStra.js +1 -0
- package/dist/assets/ko-DvhW2pVO.js +1 -0
- package/dist/assets/layout-relative-BDjBJtei.js +1 -0
- package/dist/assets/layout-relative-D3aa9xon.css +1 -0
- package/dist/assets/layout-relative.module-BEsoJgyf.js +1 -0
- package/dist/assets/lib-CXCPi5ID.js +26 -0
- package/dist/assets/matchers-5TDFFDYO-CdU16gNa.js +28 -0
- package/dist/assets/mcp-wYzkbrqT.js +32 -0
- package/dist/assets/mdx-react-shim-Bi0BC7jy.js +1 -0
- package/dist/assets/migrating-from-less-DfjDPQaC.js +36 -0
- package/dist/assets/nl-BW9s7SpL.js +1 -0
- package/dist/assets/pl-B0BEw5na.js +1 -0
- package/dist/assets/playground.stories-oI9ZDlnt.js +6 -0
- package/dist/assets/preload-helper-nVtPd9zc.js +1 -0
- package/dist/assets/pt-qEWGT9cy.js +1 -0
- package/dist/assets/react-18-ziWOvQTm.js +1 -0
- package/dist/assets/react-B8jdHdWa.js +1 -0
- package/dist/assets/react-C6B6irz5.js +1 -0
- package/dist/assets/react-C7IZe2D1.js +1 -0
- package/dist/assets/react-dom-CLuuWI32.js +8 -0
- package/dist/assets/render-icon-Dzkg3KVE.js +1 -0
- package/dist/assets/ro-DLH7plv7.js +1 -0
- package/dist/assets/ru-BmiT91mV.js +1 -0
- package/dist/assets/shared-strings-DrlpFtg5.js +1 -0
- package/dist/assets/shim-Do3tPrxV.js +1 -0
- package/dist/assets/storybook-utils-CXrHOWy7.js +1 -0
- package/dist/assets/styled-components.browser.esm-BqKZXl6d.js +2 -0
- package/dist/assets/styled-components.browser.esm-ByE8r-7j.js +2 -0
- package/dist/assets/sv-CW9z0vaU.js +1 -0
- package/dist/assets/syntaxhighlighter-ED5Y7EFY-BYBQ9ptv.js +6 -0
- package/dist/assets/text-accent-CfNKCcRq.js +1 -0
- package/dist/assets/text-centered-DCp9pLpt.css +1 -0
- package/dist/assets/text-centered-ozyo-Yf9.js +1 -0
- package/dist/assets/th-isRlGLm5.js +1 -0
- package/dist/assets/theming-BrHPXhKw.js +1 -0
- package/dist/assets/theming-C7TmxyGw.js +39 -0
- package/dist/assets/tokens-C1gyoh8D.js +16 -0
- package/dist/assets/tokens-C7Hn5QJc.js +15 -0
- package/dist/assets/tokens-CubiKgE5.js +15 -0
- package/dist/assets/tr-CvfBJD7Q.js +1 -0
- package/dist/assets/tw-DpiBe17Q.js +1 -0
- package/dist/assets/ua-CPYW3Hlj.js +1 -0
- package/dist/assets/useBreakpointMatch-B8CIBjwc.js +1 -0
- package/dist/assets/useControllableState-BBsZ9A2n.js +1 -0
- package/dist/assets/useMergeRefs-D0D5dYrn.js +1 -0
- package/dist/assets/usePortalElement-uqsVx9U8.js +19 -0
- package/dist/assets/useStableCallback-DnHVYLVo.js +1 -0
- package/dist/assets/welcome-t0_iHw7X.js +23 -0
- package/dist/assets/zeroheight-DxMICzug.js +75 -0
- package/dist/assets/zh-C43VYh_6.js +1 -0
- package/dist/iframe.html +69 -40
- package/dist/index.html +8 -3
- package/dist/index.json +1 -1
- package/dist/preview-stats.json +21532 -16519
- package/dist/project.json +1 -1
- package/dist/sb-addons/a11y-1/manager-bundle.js +55 -3
- package/dist/sb-addons/chromatic-com-storybook-5/manager-bundle.js +352 -0
- package/dist/sb-addons/chromatic-com-storybook-5/manager-bundle.js.LEGAL.txt +40 -0
- package/dist/sb-addons/docs-4/manager-bundle.js +1 -1
- package/dist/sb-addons/links-2/manager-bundle.js +1 -1
- package/dist/sb-addons/storybook-6/manager-bundle.js +3 -0
- package/dist/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +66 -66
- package/dist/sb-addons/vitest-3/manager-bundle.js +1 -1
- package/dist/sb-manager/globals-runtime.js +9758 -7407
- package/dist/sb-manager/runtime.js +3034 -2325
- package/dist/vite-inject-mocker-entry.js +2 -18
- package/package.json +19 -20
- package/pages/30.guides/70.assets/constants/icon-imports.ts +8 -0
- package/dist/assets/00-BMs4V7pn.css +0 -1
- package/dist/assets/00-CGymiNpA.css +0 -1
- package/dist/assets/00.LayoutFlex.stories-lllooXjc.js +0 -85
- package/dist/assets/00.applications-ApRgtzMF.js +0 -50
- package/dist/assets/00.favicons.guide-4ivqvu_K.js +0 -21
- package/dist/assets/00.token-explorer-DCBSOdHJ.js +0 -340
- package/dist/assets/00.using-responsive-props-BhAkr9Gn.js +0 -18
- package/dist/assets/01-2pw2iC19.css +0 -1
- package/dist/assets/01.semantic-tokens-BBQKcQ5o.js +0 -11
- package/dist/assets/01.using-shorthand-props-SxccG8oR.js +0 -39
- package/dist/assets/10.Combinations.stories-D3XySbv3.js +0 -128
- package/dist/assets/10.fonts.guide-p4vZ2TE8.js +0 -39
- package/dist/assets/10.ssr-BLS5aGYV.js +0 -91
- package/dist/assets/11.fonts.explorer-BMm1rcuE.js +0 -2
- package/dist/assets/11.ssr.app-router-B_LdKMuw.js +0 -59
- package/dist/assets/20.libraries-Uutk1t-k.js +0 -21
- package/dist/assets/2025-q4-ds-cleanup-D2AonoQX.js +0 -341
- package/dist/assets/30.icons.explorer-D63Br7GU.js +0 -72
- package/dist/assets/30.storybook-B_OtmSNE.js +0 -42
- package/dist/assets/40.illustrations.explorer-Pi9iaQwM.js +0 -21
- package/dist/assets/90.advanced-tEkbHxcl.js +0 -32
- package/dist/assets/Accordion-2avWtqXz.js +0 -23
- package/dist/assets/Accordion-DBIXJNVb.css +0 -1
- package/dist/assets/AlertBanner.primitives.stories-DpA-of6O.js +0 -14
- package/dist/assets/AlertBanner.stories-B7xxyCn2.js +0 -124
- package/dist/assets/AlertBannerAction-D14MnnIA.js +0 -128
- package/dist/assets/AlertBannerAction-Dgo9FikS.css +0 -1
- package/dist/assets/AlertDialog-B5rRXSxb.js +0 -4
- package/dist/assets/AlertDialog-DjB9AufV.css +0 -1
- package/dist/assets/Avatar-B6s9WtES.css +0 -1
- package/dist/assets/Avatar-Die_4zu0.js +0 -6
- package/dist/assets/Avatar.stories-DJHK0lEC.js +0 -42
- package/dist/assets/AvatarWithStatus.stories-E9QQr3Dr.js +0 -41
- package/dist/assets/Badge-BSDHZ3bI.js +0 -10
- package/dist/assets/Badge.stories-6FOVA96I.js +0 -90
- package/dist/assets/Box-CfDLuPKr.css +0 -1
- package/dist/assets/Box.stories-DAVs5Qmd.js +0 -44
- package/dist/assets/BubbleCounter.stories-DHv_hrNV.js +0 -242
- package/dist/assets/Button-C0Um_QuO.js +0 -18
- package/dist/assets/Button-U6ON1pQl.css +0 -1
- package/dist/assets/Button.stories-CTSwUwYJ.js +0 -270
- package/dist/assets/ButtonBase-Bv11I0L0.css +0 -1
- package/dist/assets/ButtonBase-DGinnt2u.js +0 -1
- package/dist/assets/ButtonBase-HkSfLFbE.js +0 -8
- package/dist/assets/ButtonBase-vTD2whCv.css +0 -1
- package/dist/assets/CalloutBanner-Cw440Euq.css +0 -1
- package/dist/assets/CalloutBanner.stories-C62ApsKt.js +0 -286
- package/dist/assets/Checkbox-CrI8PiHH.css +0 -1
- package/dist/assets/Checkbox-U8uzIr-e.js +0 -10
- package/dist/assets/Checkbox.tests.stories-CrLxNZ2d.js +0 -64
- package/dist/assets/Chips-BXIX_-Jx.css +0 -1
- package/dist/assets/Chips.stories-BMxD1fH1.js +0 -146
- package/dist/assets/Color-ASIRERSW-BsR8auWQ.js +0 -1
- package/dist/assets/ComposingPopovers.stories-DtmTbsU_.js +0 -49
- package/dist/assets/CountryFlag-D40CtNEa.js +0 -49
- package/dist/assets/CountryFlag.test.stories-Bde0Okud.js +0 -27
- package/dist/assets/Dialog-CJQmu6iz.js +0 -13
- package/dist/assets/Dialog.primitives-DLgD-yog.css +0 -1
- package/dist/assets/Dialog.primitives.stories-BRGfipHO.js +0 -213
- package/dist/assets/Dialog.stories-D4tyIGD0.js +0 -329
- package/dist/assets/Dialog.test.stories-xCqInD69.js +0 -146
- package/dist/assets/DialogActions-GLMqsJfB.js +0 -101
- package/dist/assets/DialogCloseButton-D5YliaRd.js +0 -149
- package/dist/assets/DialogCloseButton-DXcPNZE4.css +0 -1
- package/dist/assets/DismissibleChips-YCE2ttV-.js +0 -1
- package/dist/assets/DismissibleChips.stories-Cx3sJ6UG.js +0 -625
- package/dist/assets/Divider-j3vJV734.js +0 -1
- package/dist/assets/Divider.stories-CK-PipZt.js +0 -9
- package/dist/assets/DocsRenderer-GHJI37HO-WuLZQEsz.js +0 -2
- package/dist/assets/DropdownMenu-B9HIHqSr.css +0 -1
- package/dist/assets/DropdownMenu-CgNvtJ2F.js +0 -1232
- package/dist/assets/DropdownMenu.stories-DpmKDI1Q.js +0 -1603
- package/dist/assets/FieldButton-CDW5AvHN.css +0 -1
- package/dist/assets/FieldButton-DpHF49o_.js +0 -1
- package/dist/assets/FieldButton.stories-C7v9WweE.js +0 -1
- package/dist/assets/FormControl-BBqp99uJ.css +0 -1
- package/dist/assets/FormControl-Zqf1cIwP.js +0 -7
- package/dist/assets/FormControl.stories-D4xKaMaA.js +0 -42
- package/dist/assets/Heading-BTHqyLcz.css +0 -1
- package/dist/assets/Heading-Cj8Si45g.js +0 -1
- package/dist/assets/Heading.stories-BG_kLNJz.js +0 -67
- package/dist/assets/Icon-CC0yjdx9.js +0 -8
- package/dist/assets/Icon-RSC-Cl0H44C3.js +0 -6
- package/dist/assets/Icon.stories-DAIYY4Bp.js +0 -45
- package/dist/assets/IconButton-BpjNyYgD.js +0 -8
- package/dist/assets/IconButton-COydvoLU.css +0 -1
- package/dist/assets/IconTile-CAnlU9ss.js +0 -1
- package/dist/assets/IconTile-DDvHA75S.css +0 -1
- package/dist/assets/IconTile.stories-DnUYn3Id.js +0 -88
- package/dist/assets/Input-DuW1_5SG.js +0 -48
- package/dist/assets/InputContainer-Cmdo_xyq.js +0 -2
- package/dist/assets/InputContainer-DIiUCsnL.css +0 -1
- package/dist/assets/IntegrationWithReactHookForm.stories-9EImL3zR.js +0 -467
- package/dist/assets/LayoutFlex-7DoB3s9X.css +0 -1
- package/dist/assets/LayoutFlex-CTH6ELdm.js +0 -1
- package/dist/assets/LayoutFlex-DXRMJ9FH.js +0 -1
- package/dist/assets/LayoutFlex-vHEU4SLb.css +0 -1
- package/dist/assets/LayoutFlexItem-C4cPPR-1.css +0 -1
- package/dist/assets/LayoutFlexItem-lmgCv4Y9.js +0 -1
- package/dist/assets/LayoutGrid-CSKyUAin.css +0 -1
- package/dist/assets/LayoutGrid-CUGRXgEO.js +0 -1
- package/dist/assets/LayoutGrid-Cm59X3OY.css +0 -1
- package/dist/assets/LayoutGrid-SAztDD7Z.js +0 -1
- package/dist/assets/LayoutGrid.stories-2dbzhVi7.js +0 -88
- package/dist/assets/LayoutGridItem-Bo7Opdaq.css +0 -1
- package/dist/assets/LayoutGridItem-UTn4G6JO.js +0 -1
- package/dist/assets/Link-BAFCJR3T.js +0 -5
- package/dist/assets/Link-BIhxLhqK.css +0 -1
- package/dist/assets/Loader-hjoeRutr.css +0 -1
- package/dist/assets/Loader.stories-CG-Eo8vg.js +0 -37
- package/dist/assets/MultiSelectChips-CBnEtn4N.js +0 -2
- package/dist/assets/MultiSelectChips.stories-Ch4FxGM2.js +0 -608
- package/dist/assets/NativeSelectField.stories-Pj5dm9hL.js +0 -295
- package/dist/assets/NumberField-klmIiQAi.js +0 -6
- package/dist/assets/NumberField.stories-D740jISy.js +0 -254
- package/dist/assets/ObserveIntersection-Dx2gD1CU.js +0 -8
- package/dist/assets/ObserveIntersection.stories-JJPEw5oG.js +0 -27
- package/dist/assets/OnboardingTooltip-DzQhJzWc.js +0 -16
- package/dist/assets/OnboardingTooltip-X4QjsIe6.css +0 -1
- package/dist/assets/OnboardingTooltip.stories-BDgRgbzO.js +0 -107
- package/dist/assets/OnboardingTooltip.tests.stories-DrqovP8T.js +0 -79
- package/dist/assets/OnboardingTour-B5gEod5H.js +0 -4
- package/dist/assets/OnboardingTour-DoEbirUE.css +0 -1
- package/dist/assets/OnboardingTour.stories-BzHBS52z.js +0 -46
- package/dist/assets/PasswordField-BjqiXySY.js +0 -6
- package/dist/assets/PasswordField.stories-YCTP14pU.js +0 -229
- package/dist/assets/PreplyLogo.stories-lPBmn_E2.js +0 -95
- package/dist/assets/ProgressBar-N_jhfqno.css +0 -1
- package/dist/assets/ProgressBar.stories-DqvDJEeF.js +0 -44
- package/dist/assets/ProgressSteps-5GOrC9Qn.css +0 -1
- package/dist/assets/ProgressSteps-Dce_SjLt.js +0 -2
- package/dist/assets/ProgressSteps.stories-BMDqz7-Z.js +0 -31
- package/dist/assets/PromoDialog-DdnXVfH8.js +0 -3
- package/dist/assets/RangeSlider-MZqvjtBp.js +0 -4
- package/dist/assets/RangeSlider.stories-BS4-l1u4.js +0 -117
- package/dist/assets/Rating.stories-wHsrBw3w.js +0 -116
- package/dist/assets/RatingInput.stories-BKAXF4Qv.js +0 -455
- package/dist/assets/SelectField-BvrdbknI.css +0 -1
- package/dist/assets/SelectField-DU60q2LU.js +0 -19
- package/dist/assets/SelectField.stories-BKCyFPQa.js +0 -517
- package/dist/assets/ShowOnIntersection.stories-BdO_3n9P.js +0 -17
- package/dist/assets/SingleSelectChips-CDtny-H7.js +0 -2
- package/dist/assets/Slider-B8ndK7PX.js +0 -2
- package/dist/assets/Slider-B_IRLClB.css +0 -1
- package/dist/assets/Slider.stories-CBV0fePJ.js +0 -69
- package/dist/assets/Spinner-8-RB4YZR.js +0 -1
- package/dist/assets/Spinner-CzIq-Vt3.css +0 -1
- package/dist/assets/Stars-BJkSwBV2.css +0 -1
- package/dist/assets/Stars-BSTkfC0i.js +0 -1
- package/dist/assets/Steps-DUeCVcxV.js +0 -26
- package/dist/assets/Steps-nUB2CDHz.css +0 -1
- package/dist/assets/Switch-DHmH1ale.css +0 -1
- package/dist/assets/Switch-Dyoj_Z1P.js +0 -12
- package/dist/assets/Switch.stories-CDVDjU2B.js +0 -151
- package/dist/assets/Text-D2ADMZ83.css +0 -1
- package/dist/assets/Text-DJTKRzSb.js +0 -1
- package/dist/assets/Text-DvShrljd.js +0 -1
- package/dist/assets/Text-O3SM8a3p.css +0 -1
- package/dist/assets/Text.stories-DRuLuJwb.js +0 -67
- package/dist/assets/TextField-BSJgR_zK.js +0 -6
- package/dist/assets/TextField.stories-rtu-asgN.js +0 -254
- package/dist/assets/TextHighlighted.stories-Bc0bMLCv.js +0 -32
- package/dist/assets/TextInline.stories-DKWvwjg6.js +0 -50
- package/dist/assets/TextareaField-DUqOyVK5.js +0 -53
- package/dist/assets/TextareaField.stories-CiRYJL_j.js +0 -272
- package/dist/assets/Toast-PKFBYWQw.css +0 -1
- package/dist/assets/Toast.stories-S5qFLRPf.js +0 -185
- package/dist/assets/TokyoUIAttach-BsMlsNHQ.js +0 -1
- package/dist/assets/TokyoUIAvailability7LateNight-BUCnoHXS.js +0 -1
- package/dist/assets/TokyoUICheck-DQLX_x10.js +0 -1
- package/dist/assets/TokyoUICheckmark-BHJrELn_.js +0 -1
- package/dist/assets/TokyoUIChevronDown-DiBNbDdz.js +0 -1
- package/dist/assets/TokyoUIChevronRight-DRhJYmWB.js +0 -1
- package/dist/assets/TokyoUIClose-BfMyMrDa.js +0 -1
- package/dist/assets/TokyoUIEmojiFrowning-DkxcBN-M.js +0 -1
- package/dist/assets/TokyoUIErrorWarning-GuwQvo24.js +0 -1
- package/dist/assets/TokyoUIExerciseClosedGapsJumble-BhG23ylY.css +0 -1
- package/dist/assets/TokyoUIExerciseClosedGapsJumble-C8roFqfh.js +0 -1
- package/dist/assets/TokyoUIEye-oyrTN--k.js +0 -1
- package/dist/assets/TokyoUIFav-C-stY9U_.js +0 -1
- package/dist/assets/TokyoUIInfo-BSNbI4Gr.js +0 -1
- package/dist/assets/TokyoUILanguage-BcrymOo9.js +0 -1
- package/dist/assets/TokyoUILibraryExplore-DvvKpWd6.js +0 -1
- package/dist/assets/TokyoUILock-B22xkFQW.js +0 -1
- package/dist/assets/TokyoUIMessages-hZLnK87p.js +0 -1
- package/dist/assets/TokyoUIMinus-C6TctZRw.js +0 -1
- package/dist/assets/TokyoUINotebook-mwleX-o1.js +0 -1
- package/dist/assets/TokyoUINotesWithPad-CG0gLTYm.js +0 -1
- package/dist/assets/TokyoUIPhone-CFykqUer.js +0 -1
- package/dist/assets/TokyoUISettings-BbgnUEy1.js +0 -1
- package/dist/assets/TokyoUISparkle-DPOw7W2T.js +0 -1
- package/dist/assets/TokyoUIStarFilled-CF0iG37X.js +0 -1
- package/dist/assets/TokyoUITag-B1Xueyd7.js +0 -1
- package/dist/assets/TokyoUIUpload-CrasJ02A.js +0 -1
- package/dist/assets/TokyoUIUser-XhPCF9-5.js +0 -1
- package/dist/assets/Tooltip-BiqKWYpo.js +0 -9
- package/dist/assets/Tooltip.stories-DCB24NyS.js +0 -93
- package/dist/assets/Tooltip.tests.stories-B3iLlPPq.js +0 -65
- package/dist/assets/VisuallyHidden-Jfhj9R2Y.css +0 -1
- package/dist/assets/VisuallyHidden-fvo3PSUE.js +0 -1
- package/dist/assets/WithTooltip-IO6J4KBT-BUV9ELqr.js +0 -9
- package/dist/assets/align-self-BYi8giLn.js +0 -1
- package/dist/assets/align-self-C4ATemga.css +0 -1
- package/dist/assets/ar-D1Y8jKvF.js +0 -1
- package/dist/assets/axe-BG-rWtCi.js +0 -30
- package/dist/assets/breakpoints-BfMlrtxE.js +0 -1
- package/dist/assets/breakpoints-CBpJ5xgl.js +0 -31
- package/dist/assets/breakpoints-Cu9uEe0J.js +0 -32
- package/dist/assets/breakpoints-CuJuvIR9.js +0 -30
- package/dist/assets/client-BN2KdiJY.js +0 -1
- package/dist/assets/componentNames-hc9KR2nX.js +0 -1
- package/dist/assets/constants-5om8Ptru.js +0 -1
- package/dist/assets/constants-DYYVurUY.js +0 -1
- package/dist/assets/consts-KAYct7Gj.js +0 -1
- package/dist/assets/createRequiredContext-B3Arn9-D.js +0 -241
- package/dist/assets/createRequiredContext-Cjxy1dPq.css +0 -1
- package/dist/assets/cs-CamDwf-r.js +0 -1
- package/dist/assets/de-CWLDjtzP.js +0 -1
- package/dist/assets/emotion-unitless.esm-BZwEwAnk.js +0 -1
- package/dist/assets/en-DmA3N6t9.js +0 -1
- package/dist/assets/es-C4sqCVWL.js +0 -1
- package/dist/assets/filterAttributesPassedByRadixUIAtRuntime-B7QTVwVw.js +0 -1
- package/dist/assets/filterAttributesPassedByRadixUIAtRuntime-Bye2JkZ0.js +0 -1
- package/dist/assets/fonts-explorer-B5KcfnOG.css +0 -1
- package/dist/assets/fonts-explorer.stories-CeMUwBuQ.js +0 -130
- package/dist/assets/formatter-QJ4M4OGQ-B2Vljo6_.js +0 -1
- package/dist/assets/fr-BxUkVECU.js +0 -1
- package/dist/assets/getTokenVar-CVkrm5Qs.js +0 -1
- package/dist/assets/getTokenVar-DmUJH1GU.js +0 -11
- package/dist/assets/gradientBorders-Q_ip9Ojv.js +0 -45
- package/dist/assets/hk-CamDwf-r.js +0 -1
- package/dist/assets/hover-C8NhPbjk.js +0 -13
- package/dist/assets/hover-C9fsErpn.js +0 -16
- package/dist/assets/hover-D55mJaWK.js +0 -14
- package/dist/assets/id-BUwhaEpp.js +0 -1
- package/dist/assets/iframe-B_74HtSc.js +0 -1891
- package/dist/assets/iframe-DR4kltvM.css +0 -1
- package/dist/assets/index-BJaBvJhB.js +0 -22
- package/dist/assets/index-BW8FBNWq.js +0 -193
- package/dist/assets/index-CC6DAVyL.js +0 -1
- package/dist/assets/index-Cnv20V_M.js +0 -1
- package/dist/assets/index-DIqvfT2b.js +0 -12
- package/dist/assets/index-DWFFXgf1.js +0 -1
- package/dist/assets/index-W3BB_3go.js +0 -41
- package/dist/assets/intro-DOuARa_Y.js +0 -31
- package/dist/assets/it-kJJ1S0qv.js +0 -1
- package/dist/assets/ja-CThSHCIs.js +0 -1
- package/dist/assets/ko-B1qhOecF.js +0 -1
- package/dist/assets/layout-relative-B9CiYPwj.js +0 -1
- package/dist/assets/layout-relative-BWwbkKin.css +0 -1
- package/dist/assets/layout-relative-DOxkgOJk.css +0 -1
- package/dist/assets/layout-relative.module-1z75aSwo-Dcy7i8oK.js +0 -1
- package/dist/assets/layout-relative.module-BIZVul8q.js +0 -1
- package/dist/assets/matchers-DMFSMG2O-CAdg16Fl.js +0 -14
- package/dist/assets/mcp-D2eIYE7x.js +0 -32
- package/dist/assets/message-DJT5rp5J.js +0 -1
- package/dist/assets/migrating-from-less-CxT_5hNC.js +0 -36
- package/dist/assets/mixins-DZk1Zeoo.js +0 -7
- package/dist/assets/nl-CEfRou2e.js +0 -1
- package/dist/assets/options-jUub4JL1.js +0 -1
- package/dist/assets/pl-B4SjM4RJ.js +0 -1
- package/dist/assets/playground.stories-DqwdOX0P.js +0 -6
- package/dist/assets/preload-helper-Dp1pzeXC.js +0 -1
- package/dist/assets/pt-B_cv-Bbz.js +0 -1
- package/dist/assets/react-18-DoE4ZK8O.js +0 -1
- package/dist/assets/render-icon-DSbVIpCz.js +0 -9
- package/dist/assets/render-icon-MT6RlyNs.js +0 -9
- package/dist/assets/ro-Wp2i1-uz.js +0 -1
- package/dist/assets/ru-C9RPHSvh.js +0 -1
- package/dist/assets/shared-strings-ThL9KyH0.js +0 -1
- package/dist/assets/store-B0wM9Zg8.js +0 -9
- package/dist/assets/styled-components.browser.esm-BHxIJD2_.js +0 -2
- package/dist/assets/styled-components.browser.esm-rrOBirU4.js +0 -2
- package/dist/assets/sv-BV70iAZ6.js +0 -1
- package/dist/assets/syntaxhighlighter-IQDEPFLK-BakL6JIW.js +0 -6
- package/dist/assets/text-accent-BQ9POoE5.js +0 -1
- package/dist/assets/text-centered-BEaaxMgl.js +0 -1
- package/dist/assets/text-centered-CT0UilMD.css +0 -1
- package/dist/assets/text-centered-CYnBFi3a.js +0 -1
- package/dist/assets/text-centered-DxXu3Wfr.css +0 -1
- package/dist/assets/th-DQ6Pn590.js +0 -1
- package/dist/assets/tokens-BEyO2LY-.js +0 -15
- package/dist/assets/tokens-Cg01svK-.js +0 -15
- package/dist/assets/tokens-CmSwgWJ8.js +0 -16
- package/dist/assets/tokens-im-qJUCZ.js +0 -1
- package/dist/assets/tr-ByOPzs3p.js +0 -1
- package/dist/assets/tw-CamDwf-r.js +0 -1
- package/dist/assets/ua-rcge5Swp.js +0 -1
- package/dist/assets/useControllableState-BB4EHwEp.js +0 -1
- package/dist/assets/useHostname-CbpnzdHv.js +0 -1
- package/dist/assets/useMergeRefs-CFhXCqbA.js +0 -1
- package/dist/assets/useMergeRefs-Caz9hOck.js +0 -1
- package/dist/assets/useOpenInteractionType-D3sASQWj.js +0 -15
- package/dist/assets/usePortalElement-Cbyb850w.js +0 -19
- package/dist/assets/useStableCallback-D5P5kDx5.js +0 -1
- package/dist/assets/useToken-OSVftwxQ.js +0 -1
- package/dist/assets/welcome-QqBTVkpV.js +0 -23
- package/dist/assets/zeroheight-BXMq4jvo.js +0 -75
- package/dist/assets/zh-B9zAtuTc.js +0 -1
- package/dist/sb-addons/storybook-5/manager-bundle.js +0 -3
- package/vitest.config.mts +0 -30
|
@@ -1,254 +0,0 @@
|
|
|
1
|
-
import{j as g,r as re}from"./iframe-B_74HtSc.js";import{F as te}from"./TokyoUIPhone-CFykqUer.js";import{F as se}from"./TokyoUIAttach-BsMlsNHQ.js";import{I as ne}from"./Icon-CC0yjdx9.js";import{N as ae}from"./NumberField-klmIiQAi.js";import{F as ie}from"./FieldButton-DpHF49o_.js";import"./preload-helper-Dp1pzeXC.js";import"./text-accent-BQ9POoE5.js";import"./filterAttributesPassedByRadixUIAtRuntime-B7QTVwVw.js";import"./render-icon-MT6RlyNs.js";import"./componentNames-hc9KR2nX.js";import"./FormControl-Zqf1cIwP.js";import"./index-DIqvfT2b.js";import"./message-DJT5rp5J.js";import"./Input-DuW1_5SG.js";import"./InputContainer-Cmdo_xyq.js";const{action:ce}=__STORYBOOK_MODULE_ACTIONS__,{expect:n,userEvent:w,within:x,fn:r}=__STORYBOOK_MODULE_TEST__,fe={title:"components/NumberField",component:ae,args:{name:"number",label:"Number",defaultValue:void 0,placeholder:"Enter a number",dataset:{testid:"field",foo:"bar"},inputDataset:{testid:"input",foo:"bar"},onChange:r(),onValueChange:r(),onBlur:r(),onFocus:r(),onClick:r(),onCopy:r(),onKeyDown:r(),onKeyUp:r(),onPaste:r()}},c={play:async({canvasElement:a,step:e,args:t})=>{const o=x(a),i=o.getByTestId("field"),s=o.getByTestId("input");await e("it should render correct label",async()=>{const oe=x(i).getByTestId("label");n(oe).toHaveTextContent("Number • Optional"),n(s).toHaveAccessibleName("Number")}),await e("it should call onFocus when the input is focused",async()=>{s.focus(),n(t.onFocus).toHaveBeenCalled()}),await e("it should call callback when the value changes",async()=>{await w.type(s,"42"),n(t.onValueChange).toHaveBeenCalledWith(42),n(t.onChange).toHaveBeenCalled()}),await e("it should call onBlur when the input is blurred",async()=>{await w.keyboard("{tab}"),n(t.onBlur).toHaveBeenCalled()}),await e("it should render the dataset props",async()=>{n(i).toHaveAttribute("data-testid","field"),n(i).toHaveAttribute("data-foo","bar"),n(s).toHaveAttribute("data-testid","input"),n(s).toHaveAttribute("data-foo","bar")})}},l={render:function(e){const[t,o]=re.useState(e.value);return g.jsx(ae,{...e,value:t,onChange:i=>{var s;o(Number(i.target.value)),(s=e.onChange)==null||s.call(e,i)}})},args:{label:"Controlled NumberField",placeholder:"Enter a number...",value:42},play:async({canvas:a,step:e})=>{await e("it should render the correct initial value",async()=>{const t=a.getByTestId("input");await n(t).toHaveValue(42)}),await e("it should update the value when the user types",async()=>{const t=a.getByTestId("input");await w.clear(t),await w.type(t,"100"),n(t).toHaveValue(100)})}},u={args:{icon:g.jsx(ne,{svg:te,dataset:{testid:"icon"}})},play:async({canvas:a,step:e})=>{await e("it should render the icon",async()=>{const t=a.getByTestId("icon");n(t).toBeInTheDocument()})}},d={args:{description:"Enter a valid number"},play:async({canvas:a,step:e})=>{const t=a.getByTestId("input"),o=a.getByTestId("description");await e("it should render the description",async()=>{n(t).toHaveAccessibleDescription("Enter a valid number"),n(o).toHaveTextContent("Enter a valid number")})}},p={args:{required:!0},play:async({canvas:a,step:e})=>{const t=a.getByTestId("input"),o=a.getByTestId("label");await e("it should render correct label",async()=>{n(t).toHaveAccessibleName("Number"),n(o).toHaveTextContent("Number")}),await e("it should render required attribute",async()=>{n(t).toHaveAttribute("required")})}},m={args:{hideLabel:!0},play:async({canvas:a,step:e})=>{await e("it should render correct a11y label",async()=>{const t=a.getByTestId("input");n(t).toHaveAccessibleName("Number")})}},b={args:{error:"This is an error message"},play:async({canvas:a,step:e})=>{const t=a.getByTestId("input"),o=a.getByTestId("error");await e("it should render the error message",async()=>{n(t).toHaveAccessibleErrorMessage("This is an error message"),n(o).toHaveTextContent("This is an error message")})}},h={args:{disabled:!0},play:async({canvas:a,step:e})=>{const t=a.getByTestId("input");await e("it should render the disabled input",async()=>{n(t).toHaveAttribute("disabled")})}},y={args:{readOnly:!0},play:async({canvas:a,step:e})=>{const t=a.getByTestId("input");await e("it should render the read only input",async()=>{n(t).toHaveAttribute("readonly")})}},v={parameters:{chromatic:{disableSnapshot:!0}},args:{label:"Number of lessons",placeholder:"How about 3?",description:"These lessons will be scheduled automatically"},argTypes:{label:{control:"text"},placeholder:{control:"text"},description:{control:"text"},error:{control:"text"},value:{control:"number"},defaultValue:{control:"number"},inputDataset:{control:"object"},dataset:{control:"object"},id:{control:"text"},required:{control:"boolean"},hideLabel:{control:"boolean"},name:{control:"text"},disabled:{control:"boolean"},readOnly:{control:"boolean"},min:{control:"number"},max:{control:"number"},step:{control:"number"},icon:{options:["None","With Icon"],mapping:{None:void 0,"With Icon":g.jsx(ne,{svg:te})},control:"select"},button:{options:["None","With Button"],mapping:{None:void 0,"With Button":g.jsx(ie,{svg:se,assistiveText:"Do the thing",onClick:ce("field button clicked")})},control:"select"},maxLength:{control:"number"},hasError:{table:{disable:!0}}}};var T,B,H,I,f;c.parameters={...c.parameters,docs:{...(T=c.parameters)==null?void 0:T.docs,source:{originalSource:`{
|
|
2
|
-
play: async ({
|
|
3
|
-
canvasElement,
|
|
4
|
-
step,
|
|
5
|
-
args
|
|
6
|
-
}) => {
|
|
7
|
-
const canvas = within(canvasElement);
|
|
8
|
-
const field = canvas.getByTestId('field');
|
|
9
|
-
const input = canvas.getByTestId('input');
|
|
10
|
-
await step('it should render correct label', async () => {
|
|
11
|
-
const label = within(field).getByTestId('label');
|
|
12
|
-
expect(label).toHaveTextContent('Number • Optional');
|
|
13
|
-
expect(input).toHaveAccessibleName('Number');
|
|
14
|
-
});
|
|
15
|
-
await step('it should call onFocus when the input is focused', async () => {
|
|
16
|
-
input.focus();
|
|
17
|
-
expect(args.onFocus).toHaveBeenCalled();
|
|
18
|
-
});
|
|
19
|
-
await step('it should call callback when the value changes', async () => {
|
|
20
|
-
await userEvent.type(input, '42');
|
|
21
|
-
expect(args.onValueChange).toHaveBeenCalledWith(42);
|
|
22
|
-
expect(args.onChange).toHaveBeenCalled();
|
|
23
|
-
});
|
|
24
|
-
await step('it should call onBlur when the input is blurred', async () => {
|
|
25
|
-
await userEvent.keyboard('{tab}');
|
|
26
|
-
expect(args.onBlur).toHaveBeenCalled();
|
|
27
|
-
});
|
|
28
|
-
await step('it should render the dataset props', async () => {
|
|
29
|
-
expect(field).toHaveAttribute('data-testid', 'field');
|
|
30
|
-
expect(field).toHaveAttribute('data-foo', 'bar');
|
|
31
|
-
expect(input).toHaveAttribute('data-testid', 'input');
|
|
32
|
-
expect(input).toHaveAttribute('data-foo', 'bar');
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
}`,...(H=(B=c.parameters)==null?void 0:B.docs)==null?void 0:H.source},description:{story:"An empty field with a `label` and a `placeholder`.",...(f=(I=c.parameters)==null?void 0:I.docs)==null?void 0:f.description}}};var N,C,A,E,S;l.parameters={...l.parameters,docs:{...(N=l.parameters)==null?void 0:N.docs,source:{originalSource:`{
|
|
36
|
-
render: function ControlledNumberField(args) {
|
|
37
|
-
const [value, setValue] = useState(args.value);
|
|
38
|
-
return <NumberField {...args} value={value} onChange={e => {
|
|
39
|
-
setValue(Number(e.target.value));
|
|
40
|
-
args.onChange?.(e);
|
|
41
|
-
}} />;
|
|
42
|
-
},
|
|
43
|
-
args: {
|
|
44
|
-
label: 'Controlled NumberField',
|
|
45
|
-
placeholder: 'Enter a number...',
|
|
46
|
-
value: 42
|
|
47
|
-
},
|
|
48
|
-
play: async ({
|
|
49
|
-
canvas,
|
|
50
|
-
step
|
|
51
|
-
}) => {
|
|
52
|
-
await step('it should render the correct initial value', async () => {
|
|
53
|
-
const input = canvas.getByTestId('input');
|
|
54
|
-
await expect(input).toHaveValue(42);
|
|
55
|
-
});
|
|
56
|
-
await step('it should update the value when the user types', async () => {
|
|
57
|
-
const input = canvas.getByTestId('input');
|
|
58
|
-
await userEvent.clear(input);
|
|
59
|
-
await userEvent.type(input, '100');
|
|
60
|
-
expect(input).toHaveValue(100);
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
}`,...(A=(C=l.parameters)==null?void 0:C.docs)==null?void 0:A.source},description:{story:"A controlled component where the value is managed by React state.",...(S=(E=l.parameters)==null?void 0:E.docs)==null?void 0:S.description}}};var F,O,D;u.parameters={...u.parameters,docs:{...(F=u.parameters)==null?void 0:F.docs,source:{originalSource:`{
|
|
64
|
-
args: {
|
|
65
|
-
icon: <Icon svg={PhoneSvg} dataset={{
|
|
66
|
-
testid: 'icon'
|
|
67
|
-
}} />
|
|
68
|
-
},
|
|
69
|
-
play: async ({
|
|
70
|
-
canvas,
|
|
71
|
-
step
|
|
72
|
-
}) => {
|
|
73
|
-
await step('it should render the icon', async () => {
|
|
74
|
-
const icon = canvas.getByTestId('icon');
|
|
75
|
-
expect(icon).toBeInTheDocument();
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
}`,...(D=(O=u.parameters)==null?void 0:O.docs)==null?void 0:D.source}}};var W,_,V;d.parameters={...d.parameters,docs:{...(W=d.parameters)==null?void 0:W.docs,source:{originalSource:`{
|
|
79
|
-
args: {
|
|
80
|
-
description: 'Enter a valid number'
|
|
81
|
-
},
|
|
82
|
-
play: async ({
|
|
83
|
-
canvas,
|
|
84
|
-
step
|
|
85
|
-
}) => {
|
|
86
|
-
const input = canvas.getByTestId('input');
|
|
87
|
-
const description = canvas.getByTestId('description');
|
|
88
|
-
await step('it should render the description', async () => {
|
|
89
|
-
expect(input).toHaveAccessibleDescription('Enter a valid number');
|
|
90
|
-
expect(description).toHaveTextContent('Enter a valid number');
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
}`,...(V=(_=d.parameters)==null?void 0:_.docs)==null?void 0:V.source}}};var j,q,L;p.parameters={...p.parameters,docs:{...(j=p.parameters)==null?void 0:j.docs,source:{originalSource:`{
|
|
94
|
-
args: {
|
|
95
|
-
required: true
|
|
96
|
-
},
|
|
97
|
-
play: async ({
|
|
98
|
-
canvas,
|
|
99
|
-
step
|
|
100
|
-
}) => {
|
|
101
|
-
const input = canvas.getByTestId('input');
|
|
102
|
-
const label = canvas.getByTestId('label');
|
|
103
|
-
await step('it should render correct label', async () => {
|
|
104
|
-
expect(input).toHaveAccessibleName('Number');
|
|
105
|
-
expect(label).toHaveTextContent('Number');
|
|
106
|
-
});
|
|
107
|
-
await step('it should render required attribute', async () => {
|
|
108
|
-
expect(input).toHaveAttribute('required');
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
}`,...(L=(q=p.parameters)==null?void 0:q.docs)==null?void 0:L.source}}};var R,k,P;m.parameters={...m.parameters,docs:{...(R=m.parameters)==null?void 0:R.docs,source:{originalSource:`{
|
|
112
|
-
args: {
|
|
113
|
-
hideLabel: true
|
|
114
|
-
},
|
|
115
|
-
play: async ({
|
|
116
|
-
canvas,
|
|
117
|
-
step
|
|
118
|
-
}) => {
|
|
119
|
-
await step('it should render correct a11y label', async () => {
|
|
120
|
-
const input = canvas.getByTestId('input');
|
|
121
|
-
expect(input).toHaveAccessibleName('Number');
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
}`,...(P=(k=m.parameters)==null?void 0:k.docs)==null?void 0:P.source}}};var K,M,U;b.parameters={...b.parameters,docs:{...(K=b.parameters)==null?void 0:K.docs,source:{originalSource:`{
|
|
125
|
-
args: {
|
|
126
|
-
error: 'This is an error message'
|
|
127
|
-
},
|
|
128
|
-
play: async ({
|
|
129
|
-
canvas,
|
|
130
|
-
step
|
|
131
|
-
}) => {
|
|
132
|
-
const input = canvas.getByTestId('input');
|
|
133
|
-
const error = canvas.getByTestId('error');
|
|
134
|
-
await step('it should render the error message', async () => {
|
|
135
|
-
expect(input).toHaveAccessibleErrorMessage('This is an error message');
|
|
136
|
-
expect(error).toHaveTextContent('This is an error message');
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
}`,...(U=(M=b.parameters)==null?void 0:M.docs)==null?void 0:U.source}}};var Y,$,z;h.parameters={...h.parameters,docs:{...(Y=h.parameters)==null?void 0:Y.docs,source:{originalSource:`{
|
|
140
|
-
args: {
|
|
141
|
-
disabled: true
|
|
142
|
-
},
|
|
143
|
-
play: async ({
|
|
144
|
-
canvas,
|
|
145
|
-
step
|
|
146
|
-
}) => {
|
|
147
|
-
const input = canvas.getByTestId('input');
|
|
148
|
-
await step('it should render the disabled input', async () => {
|
|
149
|
-
expect(input).toHaveAttribute('disabled');
|
|
150
|
-
});
|
|
151
|
-
}
|
|
152
|
-
}`,...(z=($=h.parameters)==null?void 0:$.docs)==null?void 0:z.source}}};var G,J,Q;y.parameters={...y.parameters,docs:{...(G=y.parameters)==null?void 0:G.docs,source:{originalSource:`{
|
|
153
|
-
args: {
|
|
154
|
-
readOnly: true
|
|
155
|
-
},
|
|
156
|
-
play: async ({
|
|
157
|
-
canvas,
|
|
158
|
-
step
|
|
159
|
-
}) => {
|
|
160
|
-
const input = canvas.getByTestId('input');
|
|
161
|
-
await step('it should render the read only input', async () => {
|
|
162
|
-
expect(input).toHaveAttribute('readonly');
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
}`,...(Q=(J=y.parameters)==null?void 0:J.docs)==null?void 0:Q.source}}};var X,Z,ee;v.parameters={...v.parameters,docs:{...(X=v.parameters)==null?void 0:X.docs,source:{originalSource:`{
|
|
166
|
-
parameters: {
|
|
167
|
-
chromatic: {
|
|
168
|
-
disableSnapshot: true
|
|
169
|
-
}
|
|
170
|
-
},
|
|
171
|
-
args: {
|
|
172
|
-
label: 'Number of lessons',
|
|
173
|
-
placeholder: 'How about 3?',
|
|
174
|
-
description: 'These lessons will be scheduled automatically'
|
|
175
|
-
},
|
|
176
|
-
argTypes: {
|
|
177
|
-
label: {
|
|
178
|
-
control: 'text'
|
|
179
|
-
},
|
|
180
|
-
placeholder: {
|
|
181
|
-
control: 'text'
|
|
182
|
-
},
|
|
183
|
-
description: {
|
|
184
|
-
control: 'text'
|
|
185
|
-
},
|
|
186
|
-
error: {
|
|
187
|
-
control: 'text'
|
|
188
|
-
},
|
|
189
|
-
value: {
|
|
190
|
-
control: 'number'
|
|
191
|
-
},
|
|
192
|
-
defaultValue: {
|
|
193
|
-
control: 'number'
|
|
194
|
-
},
|
|
195
|
-
inputDataset: {
|
|
196
|
-
control: 'object'
|
|
197
|
-
},
|
|
198
|
-
dataset: {
|
|
199
|
-
control: 'object'
|
|
200
|
-
},
|
|
201
|
-
id: {
|
|
202
|
-
control: 'text'
|
|
203
|
-
},
|
|
204
|
-
required: {
|
|
205
|
-
control: 'boolean'
|
|
206
|
-
},
|
|
207
|
-
hideLabel: {
|
|
208
|
-
control: 'boolean'
|
|
209
|
-
},
|
|
210
|
-
name: {
|
|
211
|
-
control: 'text'
|
|
212
|
-
},
|
|
213
|
-
disabled: {
|
|
214
|
-
control: 'boolean'
|
|
215
|
-
},
|
|
216
|
-
readOnly: {
|
|
217
|
-
control: 'boolean'
|
|
218
|
-
},
|
|
219
|
-
min: {
|
|
220
|
-
control: 'number'
|
|
221
|
-
},
|
|
222
|
-
max: {
|
|
223
|
-
control: 'number'
|
|
224
|
-
},
|
|
225
|
-
step: {
|
|
226
|
-
control: 'number'
|
|
227
|
-
},
|
|
228
|
-
icon: {
|
|
229
|
-
options: ['None', 'With Icon'],
|
|
230
|
-
mapping: {
|
|
231
|
-
None: undefined,
|
|
232
|
-
'With Icon': <Icon svg={PhoneSvg} />
|
|
233
|
-
},
|
|
234
|
-
control: 'select'
|
|
235
|
-
},
|
|
236
|
-
button: {
|
|
237
|
-
options: ['None', 'With Button'],
|
|
238
|
-
mapping: {
|
|
239
|
-
None: undefined,
|
|
240
|
-
'With Button': <FieldButton svg={AttachSvg} assistiveText="Do the thing" onClick={action('field button clicked')} />
|
|
241
|
-
},
|
|
242
|
-
control: 'select'
|
|
243
|
-
},
|
|
244
|
-
maxLength: {
|
|
245
|
-
control: 'number'
|
|
246
|
-
},
|
|
247
|
-
// Disable deprecated props
|
|
248
|
-
hasError: {
|
|
249
|
-
table: {
|
|
250
|
-
disable: true
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
}`,...(ee=(Z=v.parameters)==null?void 0:Z.docs)==null?void 0:ee.source}}};const Ne=["Basic","Controlled","WithIcon","WithDescription","Required","WithHiddenLabel","HasError","Disabled","ReadOnly","Playground"];export{c as Basic,l as Controlled,h as Disabled,b as HasError,v as Playground,y as ReadOnly,p as Required,d as WithDescription,m as WithHiddenLabel,u as WithIcon,Ne as __namedExportsOrder,fe as default};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import{r as s,g as b,j as g,L as h}from"./iframe-B_74HtSc.js";import{w as y}from"./componentNames-hc9KR2nX.js";const l=({onIntersect:a,once:t,threshold:n,tag:o,dataset:u,children:i})=>{const e=s.useRef(null);s.useEffect(()=>{const p=([m],f)=>{m.isIntersecting&&(a(),t&&e.current&&f.unobserve(e.current))},d={threshold:n},r=new IntersectionObserver(p,d);return e.current&&r.observe(e.current),()=>r.disconnect()},[a,t,n]);const c=o??h,v={ref:e,...b(u,{preplyDsComponent:y.ObserverIntersection})};return g.jsx(c,{...v,children:i})};try{l.displayName="ObserveIntersection",l.__docgenInfo={description:`An [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver) wrapper.
|
|
2
|
-
|
|
3
|
-
Triggers a callback when the wrapped component intersects with the viewport.
|
|
4
|
-
|
|
5
|
-
This can be useful in several use cases. Examples:
|
|
6
|
-
|
|
7
|
-
- Track an experiment, once a certain component scrolls into view.
|
|
8
|
-
- Trigger an animation, or a feature (e.g.: onboarding instructions).`,displayName:"ObserveIntersection",props:{onIntersect:{defaultValue:null,description:"",name:"onIntersect",required:!0,type:{name:"() => void"}},once:{defaultValue:null,description:"",name:"once",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},threshold:{defaultValue:null,description:"",name:"threshold",required:!1,type:{name:"enum",value:[{value:"number"}]}},tag:{defaultValue:null,description:"",name:"tag",required:!1,type:{name:"enum",value:[{value:'"p"'},{value:'"div"'},{value:'"span"'},{value:'"main"'},{value:'"header"'},{value:'"footer"'},{value:'"article"'},{value:'"section"'},{value:'"ul"'},{value:'"ol"'},{value:'"li"'},{value:'"fieldset"'},{value:'"table"'},{value:'"th"'},{value:'"tr"'},{value:'"td"'},{value:'"thead"'},{value:'"tfoot"'},{value:'"tbody"'},{value:'"caption"'},{value:'"figure"'},{value:'"figcaption"'}]}},dataset:{defaultValue:null,description:"",name:"dataset",required:!1,type:{name:"enum",value:[{value:"Dataset"}]}}}}}catch{}export{l as O};
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import{r as a,j as t}from"./iframe-B_74HtSc.js";import{O as i}from"./ObserveIntersection-Dx2gD1CU.js";import"./preload-helper-Dp1pzeXC.js";import"./componentNames-hc9KR2nX.js";const x={title:"components/ObserveIntersection",component:i,parameters:{tags:["!test"],chromatic:{disableSnapshot:!0}}},e=()=>{const[o,c]=a.useState(!1);return t.jsxs("div",{tabIndex:0,style:{height:"200px",overflowY:"scroll",position:"relative"},children:[t.jsx("div",{style:{position:"sticky",top:"2px"},children:o?"Intersected":"Scroll down to intersect"}),t.jsx("div",{style:{height:"400px",display:"flex",alignItems:"end"},children:t.jsx(i,{onIntersect:()=>c(!0),children:"Observer"})})]})};e.storyName="ObserveIntersection";var s,n,r;e.parameters={...e.parameters,docs:{...(s=e.parameters)==null?void 0:s.docs,source:{originalSource:`() => {
|
|
2
|
-
const [isIntersecting, setIsIntersecting] = useState(false);
|
|
3
|
-
return (
|
|
4
|
-
// eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex -- This element is interactive; it's scrollable.
|
|
5
|
-
<div tabIndex={0} style={{
|
|
6
|
-
height: '200px',
|
|
7
|
-
overflowY: 'scroll',
|
|
8
|
-
position: 'relative'
|
|
9
|
-
}}>
|
|
10
|
-
<div style={{
|
|
11
|
-
position: 'sticky',
|
|
12
|
-
top: '2px'
|
|
13
|
-
}}>
|
|
14
|
-
{isIntersecting ? 'Intersected' : 'Scroll down to intersect'}
|
|
15
|
-
</div>
|
|
16
|
-
<div style={{
|
|
17
|
-
height: '400px',
|
|
18
|
-
display: 'flex',
|
|
19
|
-
alignItems: 'end'
|
|
20
|
-
}}>
|
|
21
|
-
<ObserveIntersection onIntersect={() => setIsIntersecting(true)}>
|
|
22
|
-
Observer
|
|
23
|
-
</ObserveIntersection>
|
|
24
|
-
</div>
|
|
25
|
-
</div>
|
|
26
|
-
);
|
|
27
|
-
}`,...(r=(n=e.parameters)==null?void 0:n.docs)==null?void 0:r.source}}};const I=["Base"];export{e as Base,I as __namedExportsOrder,x as default};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import{r as s,a7 as E,a8 as Z,j as a,a9 as Q,aa as Y,ab as ee,ac as j,ad as k,ae as te,af as A,ag as y,ah as ae,ai as N,aj as oe,ak as ne,al as le,I as re,K as ue,g as se}from"./iframe-B_74HtSc.js";import{F as ie}from"./TokyoUIClose-BfMyMrDa.js";import{I as ce}from"./Icon-CC0yjdx9.js";import{T as de}from"./Text-DvShrljd.js";import{B as pe}from"./Button-C0Um_QuO.js";import{H as fe}from"./Heading-Cj8Si45g.js";import{u as ve}from"./index-DIqvfT2b.js";import{g as me}from"./shared-strings-ThL9KyH0.js";import{w as he}from"./componentNames-hc9KR2nX.js";import{M as ge}from"./message-DJT5rp5J.js";import{h as be,R as ye,u as Ce,F as Pe}from"./index-W3BB_3go.js";var P="Popover",[V]=Y(P,[E]),C=E(),[Re,f]=V(P),S=e=>{const{__scopePopover:t,children:l,open:i,defaultOpen:o,onOpenChange:n,modal:u=!1}=e,r=C(t),c=s.useRef(null),[d,v]=s.useState(!1),[m,p]=Z({prop:i,defaultProp:o??!1,onChange:n,caller:P});return a.jsx(Q,{...r,children:a.jsx(Re,{scope:t,contentId:ee(),triggerRef:c,open:m,onOpenChange:p,onOpenToggle:s.useCallback(()=>p(h=>!h),[p]),hasCustomAnchor:d,onCustomAnchorAdd:s.useCallback(()=>v(!0),[]),onCustomAnchorRemove:s.useCallback(()=>v(!1),[]),modal:u,children:l})})};S.displayName=P;var T="PopoverAnchor",D=s.forwardRef((e,t)=>{const{__scopePopover:l,...i}=e,o=f(T,l),n=C(l),{onCustomAnchorAdd:u,onCustomAnchorRemove:r}=o;return s.useEffect(()=>(u(),()=>r()),[u,r]),a.jsx(j,{...n,...i,ref:t})});D.displayName=T;var q="PopoverTrigger",xe=s.forwardRef((e,t)=>{const{__scopePopover:l,...i}=e,o=f(q,l),n=C(l),u=N(t,o.triggerRef),r=a.jsx(A.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.contentId,"data-state":J(o.open),...i,ref:u,onClick:y(e.onClick,o.onOpenToggle)});return o.hasCustomAnchor?r:a.jsx(j,{asChild:!0,...n,children:r})});xe.displayName=q;var O="PopoverPortal",[we,Oe]=V(O,{forceMount:void 0}),M=e=>{const{__scopePopover:t,forceMount:l,children:i,container:o}=e,n=f(O,t);return a.jsx(we,{scope:t,forceMount:l,children:a.jsx(k,{present:l||n.open,children:a.jsx(te,{asChild:!0,container:o,children:i})})})};M.displayName=O;var b="PopoverContent",F=s.forwardRef((e,t)=>{const l=Oe(b,e.__scopePopover),{forceMount:i=l.forceMount,...o}=e,n=f(b,e.__scopePopover);return a.jsx(k,{present:i||n.open,children:n.modal?a.jsx(Ie,{...o,ref:t}):a.jsx(Ee,{...o,ref:t})})});F.displayName=b;var _e=oe("PopoverContent.RemoveScroll"),Ie=s.forwardRef((e,t)=>{const l=f(b,e.__scopePopover),i=s.useRef(null),o=N(t,i),n=s.useRef(!1);return s.useEffect(()=>{const u=i.current;if(u)return be(u)},[]),a.jsx(ye,{as:_e,allowPinchZoom:!0,children:a.jsx(L,{...e,ref:o,trapFocus:l.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:y(e.onCloseAutoFocus,u=>{var r;u.preventDefault(),n.current||(r=l.triggerRef.current)==null||r.focus()}),onPointerDownOutside:y(e.onPointerDownOutside,u=>{const r=u.detail.originalEvent,c=r.button===0&&r.ctrlKey===!0,d=r.button===2||c;n.current=d},{checkForDefaultPrevented:!1}),onFocusOutside:y(e.onFocusOutside,u=>u.preventDefault(),{checkForDefaultPrevented:!1})})})}),Ee=s.forwardRef((e,t)=>{const l=f(b,e.__scopePopover),i=s.useRef(!1),o=s.useRef(!1);return a.jsx(L,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:n=>{var u,r;(u=e.onCloseAutoFocus)==null||u.call(e,n),n.defaultPrevented||(i.current||(r=l.triggerRef.current)==null||r.focus(),n.preventDefault()),i.current=!1,o.current=!1},onInteractOutside:n=>{var c,d;(c=e.onInteractOutside)==null||c.call(e,n),n.defaultPrevented||(i.current=!0,n.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const u=n.target;((d=l.triggerRef.current)==null?void 0:d.contains(u))&&n.preventDefault(),n.detail.originalEvent.type==="focusin"&&o.current&&n.preventDefault()}})}),L=s.forwardRef((e,t)=>{const{__scopePopover:l,trapFocus:i,onOpenAutoFocus:o,onCloseAutoFocus:n,disableOutsidePointerEvents:u,onEscapeKeyDown:r,onPointerDownOutside:c,onFocusOutside:d,onInteractOutside:v,...m}=e,p=f(b,l),h=C(l);return Ce(),a.jsx(Pe,{asChild:!0,loop:!0,trapped:i,onMountAutoFocus:o,onUnmountAutoFocus:n,children:a.jsx(ne,{asChild:!0,disableOutsidePointerEvents:u,onInteractOutside:v,onEscapeKeyDown:r,onPointerDownOutside:c,onFocusOutside:d,onDismiss:()=>p.onOpenChange(!1),children:a.jsx(le,{"data-state":J(p.open),role:"dialog",id:p.contentId,...h,...m,ref:t,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),H="PopoverClose",B=s.forwardRef((e,t)=>{const{__scopePopover:l,...i}=e,o=f(H,l);return a.jsx(A.button,{type:"button",...i,ref:t,onClick:y(e.onClick,()=>o.onOpenChange(!1))})});B.displayName=H;var je="PopoverArrow",X=s.forwardRef((e,t)=>{const{__scopePopover:l,...i}=e,o=C(l);return a.jsx(ae,{...o,...i,ref:t})});X.displayName=je;function J(e){return e?"open":"closed"}var ke=S,Ae=D,Ne=M,Ve=F,Se=B,Te=X;const De="content__KHgp9",qe="header__CaLti",Me="close__3s-VD",Fe="footer__X5qXF",Le="arrow__0pg-s",g={content:De,header:qe,close:Me,footer:Fe,arrow:Le},He=e=>{e.scrollIntoViewIfNeeded?e.scrollIntoViewIfNeeded(!1):e.scrollIntoView({behavior:"auto",block:"nearest",inline:"nearest"})},w=s.forwardRef(function({open:t,onOpenChange:l,disabled:i,title:o,text:n,children:u,side:r,dataset:c,actionLabel:d=a.jsx(ge,{id:"preply-ds.onboardingTooltip.actionLabel",defaultMessage:"Got it",description:"Default onboarding tooltip action label. Used to acknowledge and close the tooltip."}),actionOnClick:v,actionHref:m,counter:p,autoScroll:h=!0,...U},G){const{formatMessage:$}=ve(),K=re(),_=s.useId(),z=s.useId(),R=s.useId(),x=s.useRef(null);return s.useEffect(()=>{t&&x.current&&h&&He(x.current)},[h,t]),i?u:a.jsxs(ke,{open:t,onOpenChange:l,children:[a.jsx(ue,{ref:G,...U,children:a.jsx(Ae,{ref:x,id:R,asChild:!0,children:u})}),a.jsx(Ne,{container:K,children:a.jsxs(Ve,{onInteractOutside:W=>{W.preventDefault()},side:r,className:g.content,"aria-labelledby":_,"aria-describedby":`${R} ${z}`,...se(c,{preplyDsComponent:he.OnboardingTooltip}),children:[a.jsxs("div",{className:g.header,children:[a.jsx(Se,{className:g.close,"aria-label":$(me.close),"data-testid":"close",children:a.jsx(ce,{accent:"inverted",svg:ie})}),a.jsx(fe,{tag:"h1",variant:"small",accent:"inverted",id:_,"aria-describedby":R,children:o})]}),a.jsx(de,{variant:"default-regular",accent:"inverted",className:g.text,children:n}),a.jsxs("div",{className:g.footer,children:[p,a.jsx(pe,{variant:"inverted",size:"small",onClick:v,href:m,dataset:{testid:"action"},wrap:!0,children:d})]}),a.jsx(Te,{"aria-hidden":!0,className:g.arrow,width:18,height:11})]})})]})}),I=s.forwardRef(function(t,l){const[i,o]=s.useState(!0),n=r=>{var c;r||(c=t.onClose)==null||c.call(t),o(r)},u=()=>{var r,c;(r=t.actionOnClick)==null||r.call(t),o(!1),(c=t.onClose)==null||c.call(t)};return a.jsx(w,{...t,open:i,onOpenChange:n,actionOnClick:u,ref:l})});try{w.displayName="InternalOnboardingTooltip",w.__docgenInfo={description:"",displayName:"InternalOnboardingTooltip",props:{title:{defaultValue:null,description:"",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"}]}},text:{defaultValue:null,description:"",name:"text",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"}]}},disabled:{defaultValue:null,description:"Disables tooltip completely",name:"disabled",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},onClose:{defaultValue:null,description:"Called when the tooltip is closed",name:"onClose",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},actionLabel:{defaultValue:{value:`(
|
|
2
|
-
<FormattedMessage
|
|
3
|
-
id="preply-ds.onboardingTooltip.actionLabel"
|
|
4
|
-
defaultMessage="Got it"
|
|
5
|
-
description="Default onboarding tooltip action label. Used to acknowledge and close the tooltip."
|
|
6
|
-
/>
|
|
7
|
-
)`},description:"Label of the action button",name:"actionLabel",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"}]}},actionOnClick:{defaultValue:null,description:"By default, the action button closes the tooltip.\n\nProvide `actionOnClick` to also perform other action.",name:"actionOnClick",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},actionHref:{defaultValue:null,description:"By default, the action button closes the tooltip.\n\nProvide `actionHref` to also navigate to other page when the button is clicked.",name:"actionHref",required:!1,type:{name:"enum",value:[{value:"string"}]}},side:{defaultValue:null,description:"Preferred side of the tooltip to appear from. Use if default side might block important content.",name:"side",required:!1,type:{name:"enum",value:[{value:'"top"'},{value:'"right"'},{value:'"bottom"'},{value:'"left"'}]}},autoScroll:{defaultValue:{value:"true"},description:"If true, the tooltip will automatically scroll into view when it is opened.",name:"autoScroll",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},dataset:{defaultValue:null,description:"",name:"dataset",required:!1,type:{name:"enum",value:[{value:"Dataset"}]}},counter:{defaultValue:null,description:"",name:"counter",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"}]}},open:{defaultValue:null,description:"",name:"open",required:!0,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},onOpenChange:{defaultValue:null,description:"",name:"onOpenChange",required:!0,type:{name:"(open: boolean) => void"}},ref:{defaultValue:null,description:"Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}",name:"ref",required:!1,type:{name:"enum",value:[{value:"null"},{value:"string"},{value:"(instance: HTMLButtonElement | null) => void"},{value:"RefObject<HTMLButtonElement>"}]}},key:{defaultValue:null,description:"",name:"key",required:!1,type:{name:"enum",value:[{value:"null"},{value:"string"},{value:"number"},{value:"bigint"}]}}}}}catch{}try{I.displayName="OnboardingTooltip",I.__docgenInfo={description:`Informational pop-up that highlights specific UI element, e.g. to introduce new feature.
|
|
8
|
-
|
|
9
|
-
The direct child of the component should be html element, DS component,
|
|
10
|
-
or a component that forwards ref to the underlying DOM node.`,displayName:"OnboardingTooltip",props:{title:{defaultValue:null,description:"",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"}]}},text:{defaultValue:null,description:"",name:"text",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"}]}},disabled:{defaultValue:null,description:"Disables tooltip completely",name:"disabled",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},onClose:{defaultValue:null,description:"Called when the tooltip is closed",name:"onClose",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},actionLabel:{defaultValue:{value:`(
|
|
11
|
-
<FormattedMessage
|
|
12
|
-
id="preply-ds.onboardingTooltip.actionLabel"
|
|
13
|
-
defaultMessage="Got it"
|
|
14
|
-
description="Default onboarding tooltip action label. Used to acknowledge and close the tooltip."
|
|
15
|
-
/>
|
|
16
|
-
)`},description:"Label of the action button",name:"actionLabel",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"}]}},actionOnClick:{defaultValue:null,description:"By default, the action button closes the tooltip.\n\nProvide `actionOnClick` to also perform other action.",name:"actionOnClick",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},actionHref:{defaultValue:null,description:"By default, the action button closes the tooltip.\n\nProvide `actionHref` to also navigate to other page when the button is clicked.",name:"actionHref",required:!1,type:{name:"enum",value:[{value:"string"}]}},side:{defaultValue:null,description:"Preferred side of the tooltip to appear from. Use if default side might block important content.",name:"side",required:!1,type:{name:"enum",value:[{value:'"top"'},{value:'"right"'},{value:'"bottom"'},{value:'"left"'}]}},autoScroll:{defaultValue:{value:"true"},description:"If true, the tooltip will automatically scroll into view when it is opened.",name:"autoScroll",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},dataset:{defaultValue:null,description:"",name:"dataset",required:!1,type:{name:"enum",value:[{value:"Dataset"}]}},ref:{defaultValue:null,description:"Allows getting a ref to the component instance.\nOnce the component unmounts, React will set `ref.current` to `null`\n(or call the ref with `null` if you passed a callback ref).\n@see {@link https://react.dev/learn/referencing-values-with-refs#refs-and-the-dom React Docs}",name:"ref",required:!1,type:{name:"enum",value:[{value:"null"},{value:"string"},{value:"(instance: HTMLButtonElement | null) => void"},{value:"RefObject<HTMLButtonElement>"}]}},key:{defaultValue:null,description:"",name:"key",required:!1,type:{name:"enum",value:[{value:"null"},{value:"string"},{value:"number"},{value:"bigint"}]}}}}}catch{}export{w as I,I as O};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.content__KHgp9{background-color:var(--79dffb);border-radius:var(--fa4b1a);padding:var(--1e685c);box-shadow:var(--df7dbb);width:304px;display:flex;flex-direction:column;gap:var(--66b80b);z-index:var(--ds-onboarding-tooltip-z-index-override, auto);animation-duration:.15s;animation-timing-function:cubic-bezier(.25,0,.5,1.3);transform-origin:var(--radix-popover-content-transform-origin);will-change:transform,opacity}.content__KHgp9[data-state=open]{animation-name:appear__G8agi}.content__KHgp9[data-state=closed]{animation-name:disappear__OWVSJ}.header__CaLti{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:flex-start}.close__3s-VD{background:none;border:none;border-radius:var(--5e8be4);padding:0;margin-top:calc(var(--813599) * -1);margin-right:calc(var(--813599) * -1);cursor:pointer}.close__3s-VD:focus-visible{outline-style:solid;outline-color:var(--603ec6);outline-width:var(--99d31f);outline-offset:var(--c0b12c)}.footer__X5qXF{margin-top:var(--66b80b);display:flex;justify-content:flex-end;gap:var(--813599);align-items:center}.arrow__0pg-s{fill:var(--79dffb)}@keyframes appear__G8agi{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes disappear__OWVSJ{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
import{j as e,r as F}from"./iframe-B_74HtSc.js";import{O as i}from"./OnboardingTooltip-DzQhJzWc.js";import{I as w}from"./IconButton-BpjNyYgD.js";import{F as C}from"./TokyoUIFav-C-stY9U_.js";import"./preload-helper-Dp1pzeXC.js";import"./TokyoUIClose-BfMyMrDa.js";import"./Icon-CC0yjdx9.js";import"./text-accent-BQ9POoE5.js";import"./filterAttributesPassedByRadixUIAtRuntime-B7QTVwVw.js";import"./render-icon-MT6RlyNs.js";import"./componentNames-hc9KR2nX.js";import"./Text-DvShrljd.js";import"./text-centered-BEaaxMgl.js";import"./Button-C0Um_QuO.js";import"./ButtonBase-HkSfLFbE.js";import"./Spinner-8-RB4YZR.js";import"./useMergeRefs-Caz9hOck.js";import"./useHostname-CbpnzdHv.js";import"./index-CC6DAVyL.js";import"./Heading-Cj8Si45g.js";import"./index-DIqvfT2b.js";import"./shared-strings-ThL9KyH0.js";import"./message-DJT5rp5J.js";import"./index-W3BB_3go.js";const Y={title:"Components/OnboardingTooltip",component:i,parameters:{preventIframeFromScrollingParent:!0,docs:{story:{inline:!1,height:250},description:{component:`Are you looking for a step-by-step tour? Check out [OnboardingTour](/docs/components-onboardingtour--docs).
|
|
2
|
-
|
|
3
|
-
Also see [Composing Popovers](/docs/guides-composing-popovers--docs) for usage with other popovers.`}}},decorators:[t=>e.jsx("div",{style:{margin:"auto",width:"max-content"},children:t()})]},O=t=>[!1,!1],j=t=>a=>{},o=()=>{const[t,a]=O(),s=j();return e.jsx(i,{title:"New Feature Available!",text:"We've added an exciting new feature to enhance your experience.",disabled:a||t,onClose:()=>s(!0),children:e.jsx(w,{variant:"ghost",svg:e.jsx(C,{}),assistiveText:"Favorite"})})};o.storyName="OnboardingTooltip";const r={parameters:{chromatic:{disableSnapshot:!0},docs:{source:{type:"dynamic"}}},render:()=>{const t=F.forwardRef(function(s,T){return e.jsx("button",{...s,ref:T})});return e.jsx(i,{title:"New Feature Available!",text:"We've added an exciting new feature to enhance your experience.",children:e.jsx(t,{children:"Custom child"})})}},n={tags:["!autodocs"],args:{title:"New Feature Available!",text:"We've added an exciting new feature to enhance your experience.",disabled:!1,onClose:()=>{},children:e.jsx(w,{variant:"ghost",svg:e.jsx(C,{}),assistiveText:"Favorite"})},argTypes:{title:{control:"text"},text:{control:"text"},actionLabel:{control:"text"},actionOnClick:{control:!1},actionHref:{control:"text"},disabled:{control:"boolean"},dataset:{control:"object"},onClose:{control:!1},children:{control:!1}},parameters:{docs:{story:{height:450}},chromatic:{disableSnapshot:!0}},decorators:[t=>e.jsx("div",{style:{minHeight:"100vh",display:"flex"},children:e.jsx("div",{style:{margin:"auto",width:"max-content"},children:t()})})]};var c,l,d,p,u;o.parameters={...o.parameters,docs:{...(c=o.parameters)==null?void 0:c.docs,source:{originalSource:`() => {
|
|
4
|
-
const [wasTooltipSeen, loading] = useIsFeatureActive('new-feature');
|
|
5
|
-
const setTooltipSeen = useToggleFeature('new-feature');
|
|
6
|
-
return <OnboardingTooltip title="New Feature Available!" text="We've added an exciting new feature to enhance your experience." disabled={loading || wasTooltipSeen} onClose={() => setTooltipSeen(true)}>
|
|
7
|
-
<IconButton variant="ghost" svg={<TokyoUIFav />} assistiveText="Favorite" />
|
|
8
|
-
</OnboardingTooltip>;
|
|
9
|
-
}`,...(d=(l=o.parameters)==null?void 0:l.docs)==null?void 0:d.source},description:{story:"Basic usage of the onboarding tooltip.\n\nUse `disabled` and `onClose` (or `actionOnClick`) props to control tooltip's visibility (We recommend using FeatureToggles for this)",...(u=(p=o.parameters)==null?void 0:p.docs)==null?void 0:u.description}}};var m,g,h,x,f;r.parameters={...r.parameters,docs:{...(m=r.parameters)==null?void 0:m.docs,source:{originalSource:`{
|
|
10
|
-
parameters: {
|
|
11
|
-
chromatic: {
|
|
12
|
-
disableSnapshot: true
|
|
13
|
-
},
|
|
14
|
-
docs: {
|
|
15
|
-
source: {
|
|
16
|
-
type: 'dynamic'
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
render: () => {
|
|
21
|
-
const CustomButton = forwardRef<HTMLButtonElement, {
|
|
22
|
-
children: ReactNode;
|
|
23
|
-
}>(function CustomButton(props, ref) {
|
|
24
|
-
return <button {...props} ref={ref} />;
|
|
25
|
-
});
|
|
26
|
-
return <OnboardingTooltip title="New Feature Available!" text="We've added an exciting new feature to enhance your experience.">
|
|
27
|
-
<CustomButton>Custom child</CustomButton>
|
|
28
|
-
</OnboardingTooltip>;
|
|
29
|
-
}
|
|
30
|
-
}`,...(h=(g=r.parameters)==null?void 0:g.docs)==null?void 0:h.source},description:{story:`The onboarding tooltip works out of the box with html elements and DS components as children.
|
|
31
|
-
|
|
32
|
-
If you need to wrap a custom component with the onboarding tooltip, component should forward
|
|
33
|
-
the ref and spread props to the underlying DOM node:
|
|
34
|
-
|
|
35
|
-
\`\`\`tsx
|
|
36
|
-
const CustomButton = forwardRef<HTMLButtonElement, { children: ReactNode }>(
|
|
37
|
-
(props, ref) => {
|
|
38
|
-
return <button {...props} ref={ref} />;
|
|
39
|
-
},
|
|
40
|
-
);
|
|
41
|
-
|
|
42
|
-
<OnboardingTooltip
|
|
43
|
-
title="New Feature Available!"
|
|
44
|
-
text="We've added an exciting new feature to enhance your experience."
|
|
45
|
-
>
|
|
46
|
-
<CustomButton>Custom child</CustomButton>
|
|
47
|
-
</OnboardingTooltip>
|
|
48
|
-
\`\`\``,...(f=(x=r.parameters)==null?void 0:x.docs)==null?void 0:f.description}}};var v,b,y;n.parameters={...n.parameters,docs:{...(v=n.parameters)==null?void 0:v.docs,source:{originalSource:`{
|
|
49
|
-
tags: ['!autodocs'],
|
|
50
|
-
args: {
|
|
51
|
-
title: 'New Feature Available!',
|
|
52
|
-
text: "We've added an exciting new feature to enhance your experience.",
|
|
53
|
-
disabled: false,
|
|
54
|
-
onClose: () => {},
|
|
55
|
-
children: <IconButton variant="ghost" svg={<TokyoUIFav />} assistiveText="Favorite" />
|
|
56
|
-
},
|
|
57
|
-
argTypes: {
|
|
58
|
-
title: {
|
|
59
|
-
control: 'text'
|
|
60
|
-
},
|
|
61
|
-
text: {
|
|
62
|
-
control: 'text'
|
|
63
|
-
},
|
|
64
|
-
actionLabel: {
|
|
65
|
-
control: 'text'
|
|
66
|
-
},
|
|
67
|
-
actionOnClick: {
|
|
68
|
-
control: false
|
|
69
|
-
},
|
|
70
|
-
actionHref: {
|
|
71
|
-
control: 'text'
|
|
72
|
-
},
|
|
73
|
-
disabled: {
|
|
74
|
-
control: 'boolean'
|
|
75
|
-
},
|
|
76
|
-
dataset: {
|
|
77
|
-
control: 'object'
|
|
78
|
-
},
|
|
79
|
-
onClose: {
|
|
80
|
-
control: false
|
|
81
|
-
},
|
|
82
|
-
children: {
|
|
83
|
-
control: false
|
|
84
|
-
}
|
|
85
|
-
},
|
|
86
|
-
parameters: {
|
|
87
|
-
docs: {
|
|
88
|
-
story: {
|
|
89
|
-
height: 450
|
|
90
|
-
}
|
|
91
|
-
},
|
|
92
|
-
chromatic: {
|
|
93
|
-
disableSnapshot: true
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
|
-
decorators: [story => <div style={{
|
|
97
|
-
minHeight: '100vh',
|
|
98
|
-
display: 'flex'
|
|
99
|
-
}}>
|
|
100
|
-
<div style={{
|
|
101
|
-
margin: 'auto',
|
|
102
|
-
width: 'max-content'
|
|
103
|
-
}}>
|
|
104
|
-
{story()}
|
|
105
|
-
</div>
|
|
106
|
-
</div>]
|
|
107
|
-
}`,...(y=(b=n.parameters)==null?void 0:b.docs)==null?void 0:y.source}}};const Z=["Default","CustomChildComponent","Playground"];export{r as CustomChildComponent,o as Default,n as Playground,Z as __namedExportsOrder,Y as default};
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import{j as a}from"./iframe-B_74HtSc.js";import{O as x}from"./OnboardingTooltip-DzQhJzWc.js";import{I}from"./IconButton-BpjNyYgD.js";import{F as f}from"./TokyoUIFav-C-stY9U_.js";import{B as k}from"./Button-C0Um_QuO.js";import{L as F}from"./LayoutFlex-DXRMJ9FH.js";import"./preload-helper-Dp1pzeXC.js";import"./TokyoUIClose-BfMyMrDa.js";import"./Icon-CC0yjdx9.js";import"./text-accent-BQ9POoE5.js";import"./filterAttributesPassedByRadixUIAtRuntime-B7QTVwVw.js";import"./render-icon-MT6RlyNs.js";import"./componentNames-hc9KR2nX.js";import"./Text-DvShrljd.js";import"./text-centered-BEaaxMgl.js";import"./Heading-Cj8Si45g.js";import"./index-DIqvfT2b.js";import"./shared-strings-ThL9KyH0.js";import"./message-DJT5rp5J.js";import"./index-W3BB_3go.js";import"./ButtonBase-HkSfLFbE.js";import"./Spinner-8-RB4YZR.js";import"./useMergeRefs-Caz9hOck.js";import"./useHostname-CbpnzdHv.js";import"./index-CC6DAVyL.js";import"./layout-relative.module-BIZVul8q.js";const{within:s,userEvent:d,waitFor:r,expect:n}=__STORYBOOK_MODULE_TEST__,tt={title:"Components/OnboardingTooltip/Tests",component:x,parameters:{layout:"centered",controls:{disable:!0},chromatic:{disableSnapshot:!0}},tags:["!autodocs","!a11y-test","test"],decorators:[e=>a.jsx("div",{style:{margin:"100px 0"},children:e()})],args:{title:"Title",text:"Body text",actionLabel:"Action label",disabled:!1,onClose:()=>{},dataset:{testid:"tooltip"},children:a.jsx(I,{svg:a.jsx(f,{}),assistiveText:"Favorite"})}},c={play:async({canvasElement:e,step:o})=>{const i=s(e);await o("wait for tooltip to be visible",async()=>{await r(()=>{const t=i.getByTestId("tooltip");return n(t).toBeVisible()})}),await o("close the tooltip",()=>{const u=s(i.getByTestId("tooltip")).getByTestId("close");return d.click(u)}),await o("wait for tooltip to be hidden",async()=>{await r(()=>{const t=i.queryByTestId("tooltip");return n(t).toBeNull()})})}},l={play:async({canvasElement:e,step:o})=>{const i=s(e);await o("wait for tooltip to be visible",async()=>{await r(()=>{const t=i.getByTestId("tooltip");return n(t).toBeVisible()})}),await o("close the tooltip",()=>{const u=s(i.getByTestId("tooltip")).getByTestId("action");return d.click(u)}),await o("wait for tooltip to be hidden",async()=>{await r(()=>{const t=i.queryByTestId("tooltip");return n(t).toBeNull()})})}};function E(e){return new Promise(o=>setTimeout(o,e))}const p={render:e=>a.jsxs(F,{gap:"24",direction:"column",children:[a.jsx(k,{children:"Click outside the tooltip"}),a.jsx(x,{...e,children:a.jsx(I,{svg:a.jsx(f,{}),assistiveText:"Favorite"})})]}),play:async({canvasElement:e,step:o})=>{const i=s(e);await o("wait for tooltip to be visible",async()=>{await r(()=>{const t=i.getByTestId("tooltip");return n(t).toBeVisible()})}),await o("click outside the tooltip",()=>{const t=i.getByText("Click outside the tooltip");return d.click(t)}),await o("check the tooltip remain open",async()=>{await E(1e3);const t=i.getByTestId("tooltip");await n(t).toBeVisible()})}};var m,y,w;c.parameters={...c.parameters,docs:{...(m=c.parameters)==null?void 0:m.docs,source:{originalSource:`{
|
|
2
|
-
play: async ({
|
|
3
|
-
canvasElement,
|
|
4
|
-
step
|
|
5
|
-
}) => {
|
|
6
|
-
const canvas = within(canvasElement);
|
|
7
|
-
await step('wait for tooltip to be visible', async () => {
|
|
8
|
-
await waitFor(() => {
|
|
9
|
-
const tooltip = canvas.getByTestId('tooltip');
|
|
10
|
-
return expect(tooltip).toBeVisible();
|
|
11
|
-
});
|
|
12
|
-
});
|
|
13
|
-
await step('close the tooltip', () => {
|
|
14
|
-
const tooltip = within(canvas.getByTestId('tooltip'));
|
|
15
|
-
const closeButton = tooltip.getByTestId('close');
|
|
16
|
-
return userEvent.click(closeButton);
|
|
17
|
-
});
|
|
18
|
-
await step('wait for tooltip to be hidden', async () => {
|
|
19
|
-
await waitFor(() => {
|
|
20
|
-
const tooltip = canvas.queryByTestId('tooltip');
|
|
21
|
-
return expect(tooltip).toBeNull();
|
|
22
|
-
});
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}`,...(w=(y=c.parameters)==null?void 0:y.docs)==null?void 0:w.source}}};var B,v,T;l.parameters={...l.parameters,docs:{...(B=l.parameters)==null?void 0:B.docs,source:{originalSource:`{
|
|
26
|
-
play: async ({
|
|
27
|
-
canvasElement,
|
|
28
|
-
step
|
|
29
|
-
}) => {
|
|
30
|
-
const canvas = within(canvasElement);
|
|
31
|
-
await step('wait for tooltip to be visible', async () => {
|
|
32
|
-
await waitFor(() => {
|
|
33
|
-
const tooltip = canvas.getByTestId('tooltip');
|
|
34
|
-
return expect(tooltip).toBeVisible();
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
await step('close the tooltip', () => {
|
|
38
|
-
const tooltip = within(canvas.getByTestId('tooltip'));
|
|
39
|
-
const actionButton = tooltip.getByTestId('action');
|
|
40
|
-
return userEvent.click(actionButton);
|
|
41
|
-
});
|
|
42
|
-
await step('wait for tooltip to be hidden', async () => {
|
|
43
|
-
await waitFor(() => {
|
|
44
|
-
const tooltip = canvas.queryByTestId('tooltip');
|
|
45
|
-
return expect(tooltip).toBeNull();
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
}`,...(T=(v=l.parameters)==null?void 0:v.docs)==null?void 0:T.source}}};var g,b,h;p.parameters={...p.parameters,docs:{...(g=p.parameters)==null?void 0:g.docs,source:{originalSource:`{
|
|
50
|
-
render: args => {
|
|
51
|
-
return <LayoutFlex gap="24" direction="column">
|
|
52
|
-
<Button>Click outside the tooltip</Button>
|
|
53
|
-
<OnboardingTooltip {...args}>
|
|
54
|
-
<IconButton svg={<TokyoUIFav />} assistiveText="Favorite" />
|
|
55
|
-
</OnboardingTooltip>
|
|
56
|
-
</LayoutFlex>;
|
|
57
|
-
},
|
|
58
|
-
play: async ({
|
|
59
|
-
canvasElement,
|
|
60
|
-
step
|
|
61
|
-
}) => {
|
|
62
|
-
const canvas = within(canvasElement);
|
|
63
|
-
await step('wait for tooltip to be visible', async () => {
|
|
64
|
-
await waitFor(() => {
|
|
65
|
-
const tooltip = canvas.getByTestId('tooltip');
|
|
66
|
-
return expect(tooltip).toBeVisible();
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
await step('click outside the tooltip', () => {
|
|
70
|
-
const outsideButton = canvas.getByText('Click outside the tooltip');
|
|
71
|
-
return userEvent.click(outsideButton);
|
|
72
|
-
});
|
|
73
|
-
await step('check the tooltip remain open', async () => {
|
|
74
|
-
await delay(1000);
|
|
75
|
-
const tooltip = canvas.getByTestId('tooltip');
|
|
76
|
-
await expect(tooltip).toBeVisible();
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
}`,...(h=(b=p.parameters)==null?void 0:b.docs)==null?void 0:h.source}}};const ot=["Default","CloseWithActionButton","DoNotCloseOnInteractionOutside"];export{l as CloseWithActionButton,c as Default,p as DoNotCloseOnInteractionOutside,ot as __namedExportsOrder,tt as default};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import{r as i,j as r}from"./iframe-B_74HtSc.js";import{I as A}from"./OnboardingTooltip-DzQhJzWc.js";import"./index-DIqvfT2b.js";import{M as O}from"./message-DJT5rp5J.js";const j="counter__ArBS-",_={counter:j},v=({totalSteps:c,nextActionLabel:s=r.jsx(O,{id:"preply-ds.onboardingTour.nextActionLabel",defaultMessage:"Next",description:"Onboarding tour next action label"}),completeActionLabel:t=r.jsx(O,{id:"preply-ds.onboardingTour.completeActionLabel",defaultMessage:"Got it",description:"Onboarding tour complete action label"}),onClose:e,onComplete:n,onStepChange:o,disabled:l,children:x,ctx:d})=>{const[b,p]=i.useState(!0),[u,f]=i.useState(0),g={totalSteps:c,nextActionLabel:s,completeActionLabel:t,onClose:()=>{p(!1),e==null||e()},active:!l&&b,currentStep:u,onActionClick:()=>{if(u===c-1)n==null||n(),p(!1);else{const a=u+1;f(a),o==null||o(a)}}};return r.jsx(d.Provider,{value:g,children:x})},w=i.forwardRef(function({ctx:s,...t},e){const n=i.useContext(s);if(!n)throw new Error("OnboardingTourContext not found");const{currentStep:o,totalSteps:l,onActionClick:x,onClose:d,active:b,nextActionLabel:p,completeActionLabel:u}=n,f=t.step===l-1,m=t.step===o,S=f?u:p,g=()=>{var a;(a=t.actionOnClick)==null||a.call(t),x()},h=a=>{a||d==null||d()};return r.jsx(A,{...t,counter:r.jsx("p",{className:_.counter,children:r.jsx(O,{id:"preply-ds.onboardingTour.counter",defaultMessage:"{currentStep} of {totalSteps}",description:"Onboarding tour step counter, e.g. '1 of 3'",values:{currentStep:o+1,totalSteps:l}})}),open:b&&m,onOpenChange:h,actionLabel:S,actionOnClick:g,ref:e})}),T=()=>{const c=i.createContext(null),s=e=>r.jsx(v,{...e,ctx:c}),t=i.forwardRef(function(n,o){return r.jsx(w,{...n,ctx:c,ref:o})});return{Provider:s,Step:t}};try{T.displayName="createOnboardingTour",T.__docgenInfo={description:`Creates a new onboarding tour.
|
|
2
|
-
|
|
3
|
-
This factory pattern allows multiple independent tours to be nested within each other
|
|
4
|
-
without context conflicts, as each tour maintains its own separate context and state.`,displayName:"createOnboardingTour",props:{}}}catch{}export{T as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.counter__ArBS-{flex:1;min-width:max-content;color:var(--c2b191);font-size:var(--f7d879);font-weight:var(--87a7e3);line-height:var(--1cb31f);margin:0}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import{j as e,r as b}from"./iframe-B_74HtSc.js";import{c as x}from"./OnboardingTour-B5gEod5H.js";import{T as n}from"./Text-DvShrljd.js";import{L as y}from"./LayoutFlex-DXRMJ9FH.js";import"./preload-helper-Dp1pzeXC.js";import"./OnboardingTooltip-DzQhJzWc.js";import"./TokyoUIClose-BfMyMrDa.js";import"./Icon-CC0yjdx9.js";import"./text-accent-BQ9POoE5.js";import"./filterAttributesPassedByRadixUIAtRuntime-B7QTVwVw.js";import"./render-icon-MT6RlyNs.js";import"./componentNames-hc9KR2nX.js";import"./Button-C0Um_QuO.js";import"./ButtonBase-HkSfLFbE.js";import"./Spinner-8-RB4YZR.js";import"./useMergeRefs-Caz9hOck.js";import"./useHostname-CbpnzdHv.js";import"./index-CC6DAVyL.js";import"./Heading-Cj8Si45g.js";import"./text-centered-BEaaxMgl.js";import"./index-DIqvfT2b.js";import"./shared-strings-ThL9KyH0.js";import"./message-DJT5rp5J.js";import"./index-W3BB_3go.js";import"./layout-relative.module-BIZVul8q.js";const l=t=>null,s=t=>null;try{l.displayName="OnboardingTourProvider",l.__docgenInfo={description:`For some reason, storybook fails to render arg tables for the components
|
|
2
|
-
when they're created with the \`createOnboardingTour\` function.
|
|
3
|
-
|
|
4
|
-
As a workaround, we're manually defining fake components with the same
|
|
5
|
-
props as originals just for props parsing ¯\\_(ツ)_/¯`,displayName:"OnboardingTourProvider",props:{totalSteps:{defaultValue:null,description:"Total number of steps in the tour",name:"totalSteps",required:!0,type:{name:"number"}},nextActionLabel:{defaultValue:{value:'"Next"'},description:'Label for the "Next" action button',name:"nextActionLabel",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"}]}},completeActionLabel:{defaultValue:{value:'"Got it"'},description:'Label for the "Complete" action button',name:"completeActionLabel",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"}]}},disabled:{defaultValue:null,description:"Whether the tour is disabled",name:"disabled",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},onClose:{defaultValue:null,description:"Called when the tour is closed",name:"onClose",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},onComplete:{defaultValue:null,description:"Called when the tour is completed",name:"onComplete",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},onStepChange:{defaultValue:null,description:"Called when the current step index changes",name:"onStepChange",required:!1,type:{name:"enum",value:[{value:"(step: number) => void"}]}}}}}catch{}try{s.displayName="OnboardingTourStep",s.__docgenInfo={description:"",displayName:"OnboardingTourStep",props:{dataset:{defaultValue:null,description:"",name:"dataset",required:!1,type:{name:"enum",value:[{value:"Dataset"}]}},title:{defaultValue:null,description:"",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"}]}},text:{defaultValue:null,description:"",name:"text",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"}]}},side:{defaultValue:null,description:"Preferred side of the tooltip to appear from. Use if default side might block important content.",name:"side",required:!1,type:{name:"enum",value:[{value:'"top"'},{value:'"right"'},{value:'"bottom"'},{value:'"left"'}]}},actionOnClick:{defaultValue:null,description:"By default, the action button closes the tooltip.\n\nProvide `actionOnClick` to also perform other action.",name:"actionOnClick",required:!1,type:{name:"enum",value:[{value:"() => void"}]}},autoScroll:{defaultValue:{value:"true"},description:"If true, the tooltip will automatically scroll into view when it is opened.",name:"autoScroll",required:!1,type:{name:"enum",value:[{value:"false"},{value:"true"}]}},step:{defaultValue:null,description:"Zero-based step index",name:"step",required:!0,type:{name:"number"}}}}}catch{}const o=x(),K={title:"Components/OnboardingTour",component:l,subcomponents:{OnboardingTourStep:s},parameters:{preventIframeFromScrollingParent:!0,docs:{story:{inline:!1,height:250},description:{component:"Are you looking for a tooltip to highlight single element? Check out [OnboardingTooltip](/docs/components-onboardingtooltip--docs)"}}},decorators:[t=>e.jsx("div",{style:{margin:"auto",width:"max-content"},children:t()})]},C=t=>[!1,!1],j=t=>i=>{},r=()=>{const[t,i]=C(),T=j();return e.jsxs(o.Provider,{totalSteps:3,disabled:i||t,onComplete:()=>T(!0),children:[e.jsx("div",{style:{height:250},children:e.jsx(o.Step,{step:0,title:"Step 1",text:"This is the first step of the onboarding tour.",children:e.jsx(n,{children:"Step 1"})})}),e.jsx("div",{style:{height:250},children:e.jsx(o.Step,{step:1,title:"Step 2",text:"This is the second step of the onboarding tour.",children:e.jsx(n,{children:"Step 2"})})}),e.jsx("div",{style:{height:250},children:e.jsx(o.Step,{step:2,title:"Step 3",text:"This is the final step of the onboarding tour.",children:e.jsx(n,{children:"Step 3"})})})]})};r.storyName="OnboardingTour";const a=()=>{const[t,i]=b.useState(!0);return e.jsx(o.Provider,{totalSteps:3,children:e.jsxs(y,{gap:"12",children:[e.jsx(o.Step,{step:0,title:"First step",text:"This is the first step of the onboarding tour.",children:e.jsx(n,{children:"Step 1"})}),e.jsx(o.Step,{step:1,title:"Second step",text:"This is the second step of the onboarding tour.",actionOnClick:()=>i(!1),children:e.jsx(n,{children:"Step 2"})}),!t&&e.jsx(o.Step,{step:2,title:"Final step",text:"This is the final step of the onboarding tour.",children:e.jsx(n,{children:"Step 3 (I was hidden)"})})]})})};var u,p,d,c,m;r.parameters={...r.parameters,docs:{...(u=r.parameters)==null?void 0:u.docs,source:{originalSource:`() => {
|
|
6
|
-
const [wasTourCompleted, loading] = useIsFeatureActive('my-tour');
|
|
7
|
-
const setTourCompleted = useToggleFeature('my-tour');
|
|
8
|
-
return <Tour.Provider totalSteps={3} disabled={loading || wasTourCompleted} onComplete={() => setTourCompleted(true)}>
|
|
9
|
-
<div style={{
|
|
10
|
-
height: 250
|
|
11
|
-
}}>
|
|
12
|
-
<Tour.Step step={0} title="Step 1" text="This is the first step of the onboarding tour.">
|
|
13
|
-
<Text>Step 1</Text>
|
|
14
|
-
</Tour.Step>
|
|
15
|
-
</div>
|
|
16
|
-
<div style={{
|
|
17
|
-
height: 250
|
|
18
|
-
}}>
|
|
19
|
-
<Tour.Step step={1} title="Step 2" text="This is the second step of the onboarding tour.">
|
|
20
|
-
<Text>Step 2</Text>
|
|
21
|
-
</Tour.Step>
|
|
22
|
-
</div>
|
|
23
|
-
<div style={{
|
|
24
|
-
height: 250
|
|
25
|
-
}}>
|
|
26
|
-
<Tour.Step step={2} title="Step 3" text="This is the final step of the onboarding tour.">
|
|
27
|
-
<Text>Step 3</Text>
|
|
28
|
-
</Tour.Step>
|
|
29
|
-
</div>
|
|
30
|
-
</Tour.Provider>;
|
|
31
|
-
}`,...(d=(p=r.parameters)==null?void 0:p.docs)==null?void 0:d.source},description:{story:"Basic usage of the onboarding tour.\n\n- Use `disabled` and `onComplete` (or `onClose`) props to control tour's visibility (We recommend using FeatureToggles for this)\n- Wrap each step element into `Tour.Step` component",...(m=(c=r.parameters)==null?void 0:c.docs)==null?void 0:m.description}}};var h,f,v,g,S;a.parameters={...a.parameters,docs:{...(h=a.parameters)==null?void 0:h.docs,source:{originalSource:`() => {
|
|
32
|
-
const [isStep3Hidden, setIsStep3Hidden] = useState(true);
|
|
33
|
-
return <Tour.Provider totalSteps={3}>
|
|
34
|
-
<LayoutFlex gap="12">
|
|
35
|
-
<Tour.Step step={0} title="First step" text="This is the first step of the onboarding tour.">
|
|
36
|
-
<Text>Step 1</Text>
|
|
37
|
-
</Tour.Step>
|
|
38
|
-
<Tour.Step step={1} title="Second step" text="This is the second step of the onboarding tour." actionOnClick={() => setIsStep3Hidden(false)}>
|
|
39
|
-
<Text>Step 2</Text>
|
|
40
|
-
</Tour.Step>
|
|
41
|
-
{!isStep3Hidden && <Tour.Step step={2} title="Final step" text="This is the final step of the onboarding tour.">
|
|
42
|
-
<Text>Step 3 (I was hidden)</Text>
|
|
43
|
-
</Tour.Step>}
|
|
44
|
-
</LayoutFlex>
|
|
45
|
-
</Tour.Provider>;
|
|
46
|
-
}`,...(v=(f=a.parameters)==null?void 0:f.docs)==null?void 0:v.source},description:{story:"Sometimes you need to perform an intermediate action before the tour can continue (e.g. show a modal, switch a tab, etc.)\n\nYou can do this by using `actionOnClick` prop on the Tour.Step component.",...(S=(g=a.parameters)==null?void 0:g.docs)==null?void 0:S.description}}};const M=["Default","WithIntermediateAction"];export{r as Default,a as WithIntermediateAction,M as __namedExportsOrder,K as default};
|