@aussieljk/forkbook 0.0.0-stage → 0.0.1-1
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/LICENSE +22 -0
- package/README.md +77 -2
- package/assets/addon-vitest/templates/vitest.config.4.template.ts +36 -0
- package/assets/browser/favicon-wrapper.svg +46 -0
- package/assets/browser/favicon.svg +1 -0
- package/assets/browser/nunito-sans-bold-italic.woff2 +0 -0
- package/assets/browser/nunito-sans-bold.woff2 +0 -0
- package/assets/browser/nunito-sans-italic.woff2 +0 -0
- package/assets/browser/nunito-sans-regular.woff2 +0 -0
- package/assets/builder-vite/iframe.html +99 -0
- package/assets/create/rendererAssets/.eslintrc.json +16 -0
- package/assets/create/rendererAssets/common/Configure.mdx +388 -0
- package/assets/create/rendererAssets/common/assets/accessibility.png +0 -0
- package/assets/create/rendererAssets/common/assets/accessibility.svg +1 -0
- package/assets/create/rendererAssets/common/assets/addon-library.png +0 -0
- package/assets/create/rendererAssets/common/assets/assets.png +0 -0
- package/assets/create/rendererAssets/common/assets/avif-test-image.avif +0 -0
- package/assets/create/rendererAssets/common/assets/context.png +0 -0
- package/assets/create/rendererAssets/common/assets/discord.svg +1 -0
- package/assets/create/rendererAssets/common/assets/docs.png +0 -0
- package/assets/create/rendererAssets/common/assets/figma-plugin.png +0 -0
- package/assets/create/rendererAssets/common/assets/github.svg +1 -0
- package/assets/create/rendererAssets/common/assets/share.png +0 -0
- package/assets/create/rendererAssets/common/assets/styling.png +0 -0
- package/assets/create/rendererAssets/common/assets/testing.png +0 -0
- package/assets/create/rendererAssets/common/assets/theming.png +0 -0
- package/assets/create/rendererAssets/common/assets/tutorials.svg +1 -0
- package/assets/create/rendererAssets/common/assets/youtube.svg +1 -0
- package/assets/create/rendererAssets/common/button.css +30 -0
- package/assets/create/rendererAssets/common/header.css +32 -0
- package/assets/create/rendererAssets/common/page.css +68 -0
- package/assets/create/templates/react-native/index.expo.js +20 -0
- package/assets/create/templates/react-native/index.js +25 -0
- package/assets/docs/addon-backgrounds.gif +0 -0
- package/assets/docs/addon-controls-args-annotated.png +0 -0
- package/assets/docs/addon-controls-args-background-color.png +0 -0
- package/assets/docs/addon-controls-args-background-string.png +0 -0
- package/assets/docs/addon-controls-args-docs.png +0 -0
- package/assets/docs/addon-controls-args-logging.png +0 -0
- package/assets/docs/addon-controls-args-no-annotation.png +0 -0
- package/assets/docs/addon-controls-args-reflow-slider.png +0 -0
- package/assets/docs/addon-controls-args-reflow.png +0 -0
- package/assets/docs/addon-controls-args-template.png +0 -0
- package/assets/docs/addon-controls-expanded.png +0 -0
- package/assets/docs/addon-controls-hero.gif +0 -0
- package/assets/docs/addon-controls-install.png +0 -0
- package/assets/docs/hero.gif +0 -0
- package/assets/docs/highlight.png +0 -0
- package/assets/docs/message-reference.png +0 -0
- package/assets/docs/viewport.png +0 -0
- package/assets/react-native/metro-env.d.ts +69 -0
- package/assets/server/addon.tsconfig.json +6 -0
- package/assets/server/base-preview-body.html +116 -0
- package/assets/server/base-preview-head.html +494 -0
- package/assets/server/openBrowser.applescript +94 -0
- package/assets/server/template.ejs +87 -0
- package/dist/.build-stamp +0 -0
- package/dist/_browser-chunks/Color-OEKZ7XSW.js +1025 -0
- package/dist/_browser-chunks/DocsRenderer-JXND3PVQ.js +10 -0
- package/dist/_browser-chunks/WithTooltip-GZSSFOG3.js +1619 -0
- package/dist/_browser-chunks/chunk-2JDQ35OA.js +247 -0
- package/dist/_browser-chunks/chunk-2JT76G3E.js +104 -0
- package/dist/_browser-chunks/chunk-2MEPHP35.js +17 -0
- package/dist/_browser-chunks/chunk-2SCZVUKW.js +24 -0
- package/dist/_browser-chunks/chunk-46Z7NGAS.js +41 -0
- package/dist/_browser-chunks/chunk-4ATQOMJB.js +30 -0
- package/dist/_browser-chunks/chunk-52CW7FF7.js +49 -0
- package/dist/_browser-chunks/chunk-5I7E4GMO.js +62 -0
- package/dist/_browser-chunks/chunk-5P4QA6MY.js +20 -0
- package/dist/_browser-chunks/chunk-5WMXI5GW.js +816 -0
- package/dist/_browser-chunks/chunk-66OCZ54D.js +2604 -0
- package/dist/_browser-chunks/chunk-6SXYJQST.js +253 -0
- package/dist/_browser-chunks/chunk-73OX2G56.js +2943 -0
- package/dist/_browser-chunks/chunk-AYRF6EJB.js +36 -0
- package/dist/_browser-chunks/chunk-B4AUNNU4.js +156 -0
- package/dist/_browser-chunks/chunk-BCP2FFXF.js +369 -0
- package/dist/_browser-chunks/chunk-C3D4HEFY.js +3396 -0
- package/dist/_browser-chunks/chunk-CFAOWGL7.js +43 -0
- package/dist/_browser-chunks/chunk-CFWWCCZV.js +223 -0
- package/dist/_browser-chunks/chunk-CNED6RYH.js +18 -0
- package/dist/_browser-chunks/chunk-DRQKCCAG.js +136 -0
- package/dist/_browser-chunks/chunk-ECQ75MKQ.js +0 -0
- package/dist/_browser-chunks/chunk-EIYAKDGP.js +302 -0
- package/dist/_browser-chunks/chunk-ENKK74N4.js +12 -0
- package/dist/_browser-chunks/chunk-FENFYI4X.js +698 -0
- package/dist/_browser-chunks/chunk-FJGWSWL5.js +155 -0
- package/dist/_browser-chunks/chunk-FVSEPWWX.js +2810 -0
- package/dist/_browser-chunks/chunk-GNZY6LOW.js +10116 -0
- package/dist/_browser-chunks/chunk-IE4ULIOQ.js +14 -0
- package/dist/_browser-chunks/chunk-IMSF75WX.js +42 -0
- package/dist/_browser-chunks/chunk-IWQGIXJS.js +14 -0
- package/dist/_browser-chunks/chunk-JMC7AIKT.js +108 -0
- package/dist/_browser-chunks/chunk-JPUOQJUI.js +8 -0
- package/dist/_browser-chunks/chunk-JSBKXXXF.js +218 -0
- package/dist/_browser-chunks/chunk-JWSKPMPC.js +73 -0
- package/dist/_browser-chunks/chunk-KBK7GKBN.js +35 -0
- package/dist/_browser-chunks/chunk-LAWXTSXK.js +18 -0
- package/dist/_browser-chunks/chunk-LE2LTDW3.js +14 -0
- package/dist/_browser-chunks/chunk-LEVSOOLQ.js +48 -0
- package/dist/_browser-chunks/chunk-LV5PIKV4.js +93 -0
- package/dist/_browser-chunks/chunk-MDOL7KML.js +56 -0
- package/dist/_browser-chunks/chunk-MFMDGWP6.js +34 -0
- package/dist/_browser-chunks/chunk-MLBOOZL4.js +67 -0
- package/dist/_browser-chunks/chunk-NQUD4B7H.js +91 -0
- package/dist/_browser-chunks/chunk-NULBREPZ.js +43 -0
- package/dist/_browser-chunks/chunk-NZMVUW5T.js +7 -0
- package/dist/_browser-chunks/chunk-OD6IBQCC.js +117 -0
- package/dist/_browser-chunks/chunk-ODVJ3XZJ.js +157 -0
- package/dist/_browser-chunks/chunk-OQWFVDIN.js +386 -0
- package/dist/_browser-chunks/chunk-OVH3USFB.js +20 -0
- package/dist/_browser-chunks/chunk-OZZPSYQR.js +14 -0
- package/dist/_browser-chunks/chunk-PFRNG3UC.js +22 -0
- package/dist/_browser-chunks/chunk-PJSMZ27A.js +13 -0
- package/dist/_browser-chunks/chunk-PP4R7USA.js +2167 -0
- package/dist/_browser-chunks/chunk-QC4HFS6K.js +41 -0
- package/dist/_browser-chunks/chunk-QDXFODK4.js +274 -0
- package/dist/_browser-chunks/chunk-RBCHTR7C.js +28 -0
- package/dist/_browser-chunks/chunk-RMYQ3QN3.js +294 -0
- package/dist/_browser-chunks/chunk-RNTIV5CE.js +411 -0
- package/dist/_browser-chunks/chunk-RSPAQWVJ.js +80 -0
- package/dist/_browser-chunks/chunk-S6TK43XQ.js +836 -0
- package/dist/_browser-chunks/chunk-SC67XZST.js +18 -0
- package/dist/_browser-chunks/chunk-SFVA4SBT.js +683 -0
- package/dist/_browser-chunks/chunk-SZYFOQMT.js +25 -0
- package/dist/_browser-chunks/chunk-TBJCJXK4.js +18 -0
- package/dist/_browser-chunks/chunk-UMDO3KB7.js +205 -0
- package/dist/_browser-chunks/chunk-V2G23FV7.js +11 -0
- package/dist/_browser-chunks/chunk-V5M7Q4HT.js +88 -0
- package/dist/_browser-chunks/chunk-VVWPND3J.js +108 -0
- package/dist/_browser-chunks/chunk-W5M6NPS3.js +198 -0
- package/dist/_browser-chunks/chunk-W7NE2JXW.js +84 -0
- package/dist/_browser-chunks/chunk-WGVAAM43.js +1110 -0
- package/dist/_browser-chunks/chunk-WHQRNHXD.js +8 -0
- package/dist/_browser-chunks/chunk-WOSOWBCA.js +12 -0
- package/dist/_browser-chunks/chunk-WZ7KR7SH.js +85 -0
- package/dist/_browser-chunks/chunk-YEKO6BHJ.js +20 -0
- package/dist/_browser-chunks/chunk-YI2IBIQS.js +7 -0
- package/dist/_browser-chunks/chunk-YTIT5NA5.js +1966 -0
- package/dist/_browser-chunks/chunk-ZEHRUHTA.js +6 -0
- package/dist/_browser-chunks/chunk-ZTQ5MEJ5.js +203 -0
- package/dist/_browser-chunks/matchers-YLBYSYAF.js +1263 -0
- package/dist/_browser-chunks/react-dom-client-4OHE3QDV.js +9 -0
- package/dist/_node-chunks/attached-runtime-O4YTVUKE.js +282 -0
- package/dist/_node-chunks/builder-manager-FPV2L36T.js +1661 -0
- package/dist/_node-chunks/chunk-2BJIHWOK.js +25 -0
- package/dist/_node-chunks/chunk-2JSABFAM.js +148 -0
- package/dist/_node-chunks/chunk-2QTI45JU.js +1094 -0
- package/dist/_node-chunks/chunk-2UG3IYCC.js +26 -0
- package/dist/_node-chunks/chunk-2XDUXZGI.js +153 -0
- package/dist/_node-chunks/chunk-356LV3NX.js +36 -0
- package/dist/_node-chunks/chunk-3CLITGI2.js +121 -0
- package/dist/_node-chunks/chunk-4PK3LUHM.js +82 -0
- package/dist/_node-chunks/chunk-4TV3Z3S3.js +20 -0
- package/dist/_node-chunks/chunk-5BTU7UZ5.js +1877 -0
- package/dist/_node-chunks/chunk-5GN5N22E.js +989 -0
- package/dist/_node-chunks/chunk-5J3BMBMY.js +51 -0
- package/dist/_node-chunks/chunk-5J3O7EDY.js +21 -0
- package/dist/_node-chunks/chunk-5RNOGGO6.js +35 -0
- package/dist/_node-chunks/chunk-5WHA37KG.js +1297 -0
- package/dist/_node-chunks/chunk-6APBQVEX.js +611 -0
- package/dist/_node-chunks/chunk-6EJ5NPEM.js +98 -0
- package/dist/_node-chunks/chunk-7BVUZZIY.js +56 -0
- package/dist/_node-chunks/chunk-7DCDBICW.js +415 -0
- package/dist/_node-chunks/chunk-7LLQDMVS.js +223 -0
- package/dist/_node-chunks/chunk-7TSL7D5D.js +26 -0
- package/dist/_node-chunks/chunk-A724RK5H.js +168 -0
- package/dist/_node-chunks/chunk-AANHLH5M.js +87 -0
- package/dist/_node-chunks/chunk-ASJFOW6O.js +1133 -0
- package/dist/_node-chunks/chunk-AWJOXJAZ.js +144 -0
- package/dist/_node-chunks/chunk-AWXGCPW6.js +92 -0
- package/dist/_node-chunks/chunk-B6SKX4JF.js +414 -0
- package/dist/_node-chunks/chunk-BCRWDMAU.js +11 -0
- package/dist/_node-chunks/chunk-BE6ULVPN.js +662 -0
- package/dist/_node-chunks/chunk-BENYUF74.js +2107 -0
- package/dist/_node-chunks/chunk-CDRLLNRQ.js +209 -0
- package/dist/_node-chunks/chunk-CSXS6LVI.js +29 -0
- package/dist/_node-chunks/chunk-CWD5A6NI.js +45 -0
- package/dist/_node-chunks/chunk-CXLL2F6O.js +7162 -0
- package/dist/_node-chunks/chunk-CYPPELO4.js +1011 -0
- package/dist/_node-chunks/chunk-DUOXRUVQ.js +18 -0
- package/dist/_node-chunks/chunk-DWE36J35.js +3767 -0
- package/dist/_node-chunks/chunk-EWXASIWR.js +60 -0
- package/dist/_node-chunks/chunk-FUYZNTIS.js +23 -0
- package/dist/_node-chunks/chunk-G5OYQQDY.js +21 -0
- package/dist/_node-chunks/chunk-G6PUNHCI.js +33 -0
- package/dist/_node-chunks/chunk-GP5YLBNS.js +499 -0
- package/dist/_node-chunks/chunk-GSWBRZLU.js +110 -0
- package/dist/_node-chunks/chunk-GT5EHMNM.js +90 -0
- package/dist/_node-chunks/chunk-GVSFRNWZ.js +110 -0
- package/dist/_node-chunks/chunk-HKQEE62W.js +1193 -0
- package/dist/_node-chunks/chunk-HKUNJELN.js +132 -0
- package/dist/_node-chunks/chunk-I2ANCID7.js +3787 -0
- package/dist/_node-chunks/chunk-ICADUNQM.js +155 -0
- package/dist/_node-chunks/chunk-IJL5JOLL.js +95 -0
- package/dist/_node-chunks/chunk-ILVD64RB.js +844 -0
- package/dist/_node-chunks/chunk-ILWHW4HU.js +1218 -0
- package/dist/_node-chunks/chunk-IZISFDKM.js +7032 -0
- package/dist/_node-chunks/chunk-JBCKN6P4.js +59 -0
- package/dist/_node-chunks/chunk-JE6JEGXA.js +115 -0
- package/dist/_node-chunks/chunk-JEC2OK5B.js +5468 -0
- package/dist/_node-chunks/chunk-JVQYQTTM.js +1094 -0
- package/dist/_node-chunks/chunk-KGOAOPKR.js +35 -0
- package/dist/_node-chunks/chunk-M2BRIUUP.js +25 -0
- package/dist/_node-chunks/chunk-MDKFZRYG.js +80 -0
- package/dist/_node-chunks/chunk-MJ2UD7FU.js +26 -0
- package/dist/_node-chunks/chunk-NIHZECYO.js +48 -0
- package/dist/_node-chunks/chunk-NKAUZU4C.js +63 -0
- package/dist/_node-chunks/chunk-NZ3GOT7V.js +68 -0
- package/dist/_node-chunks/chunk-PBMWZVLD.js +49 -0
- package/dist/_node-chunks/chunk-PEIAGMSR.js +23 -0
- package/dist/_node-chunks/chunk-QMU5ODXZ.js +47 -0
- package/dist/_node-chunks/chunk-QVMUIU7S.js +40 -0
- package/dist/_node-chunks/chunk-R5FYRP6X.js +74 -0
- package/dist/_node-chunks/chunk-R7CY5LX6.js +33 -0
- package/dist/_node-chunks/chunk-RHG33T7C.js +688 -0
- package/dist/_node-chunks/chunk-RJUHZH32.js +20 -0
- package/dist/_node-chunks/chunk-RJXEPYEN.js +2700 -0
- package/dist/_node-chunks/chunk-RQVK2TOI.js +298 -0
- package/dist/_node-chunks/chunk-SRXCCL2O.js +194 -0
- package/dist/_node-chunks/chunk-SVZ6Q3CS.js +40 -0
- package/dist/_node-chunks/chunk-TB6Y6NSL.js +3837 -0
- package/dist/_node-chunks/chunk-U4GKV7GZ.js +4744 -0
- package/dist/_node-chunks/chunk-ULW4SLMN.js +2034 -0
- package/dist/_node-chunks/chunk-URRTQ2QM.js +104 -0
- package/dist/_node-chunks/chunk-US7L4S72.js +45 -0
- package/dist/_node-chunks/chunk-VQEQ7ZLS.js +4731 -0
- package/dist/_node-chunks/chunk-VXDWOVWD.js +52345 -0
- package/dist/_node-chunks/chunk-WQ7PSP6H.js +19 -0
- package/dist/_node-chunks/chunk-WVCU34IS.js +23 -0
- package/dist/_node-chunks/chunk-X6OWHTYE.js +20 -0
- package/dist/_node-chunks/chunk-XCGMRAV5.js +33 -0
- package/dist/_node-chunks/chunk-XJSYJTBD.js +59 -0
- package/dist/_node-chunks/chunk-XTTAS346.js +25 -0
- package/dist/_node-chunks/chunk-XURIZ7IC.js +32 -0
- package/dist/_node-chunks/chunk-Y2DEKWVE.js +3008 -0
- package/dist/_node-chunks/chunk-Y2GH4XO7.js +884 -0
- package/dist/_node-chunks/chunk-YWMICX2T.js +1986 -0
- package/dist/_node-chunks/chunk-ZBAIFZNB.js +5414 -0
- package/dist/_node-chunks/chunk-ZMEGPR47.js +79 -0
- package/dist/_node-chunks/dist-ZGSN23B7.js +16 -0
- package/dist/_node-chunks/globby-HWZL7XSQ.js +2884 -0
- package/dist/_node-chunks/jiti-GNDCTFYU.js +3848 -0
- package/dist/_node-chunks/lib-DI662U2R.js +366 -0
- package/dist/_node-chunks/local-runtime-4UNT5EZJ.js +78 -0
- package/dist/_node-chunks/mdx-plugin-ZY6XLLA4.js +5680 -0
- package/dist/_node-chunks/monorepo-B65J4UFS.js +121 -0
- package/dist/_node-chunks/monorepo-optimized-tests-relaxed-limits-no-story-deletion-45ZTNWJS.js +121 -0
- package/dist/_node-chunks/optimized-tests-ZMNICF4R.js +22 -0
- package/dist/_node-chunks/pattern-copy-play-LOHSM7ID.js +807 -0
- package/dist/_node-chunks/postinstallAddon-NT5XE7IT.js +20 -0
- package/dist/_node-chunks/rehype-external-links-22ZBI6K4.js +121 -0
- package/dist/_node-chunks/rehype-slug-ROZVEEFZ.js +52 -0
- package/dist/_node-chunks/relaxed-limits-EDE2B34G.js +117 -0
- package/dist/_node-chunks/run-372BSBV5.js +4532 -0
- package/dist/_node-chunks/run-IR3BRDJV.js +103 -0
- package/dist/_node-chunks/session-id-OO2WQF5N.js +23 -0
- package/dist/_node-chunks/setup-6TMCKUTA.js +278 -0
- package/dist/_node-chunks/vitest.config.4.template-QJBEVCKG.js +54 -0
- package/dist/actions/decorator.d.ts +7 -0
- package/dist/actions/decorator.js +43 -0
- package/dist/actions/index.d.ts +67 -0
- package/dist/actions/index.js +28 -0
- package/dist/addon-a11y/index.d.ts +52 -0
- package/dist/addon-a11y/index.js +16 -0
- package/dist/addon-a11y/manager.js +1429 -0
- package/dist/addon-a11y/preset.js +18 -0
- package/dist/addon-a11y/preview.d.ts +17 -0
- package/dist/addon-a11y/preview.js +15 -0
- package/dist/addon-docs/blocks.d.ts +1061 -0
- package/dist/addon-docs/blocks.js +2461 -0
- package/dist/addon-docs/index.d.ts +236 -0
- package/dist/addon-docs/index.js +16 -0
- package/dist/addon-docs/manager.js +90 -0
- package/dist/addon-docs/mdx-react-shim.d.ts +1 -0
- package/dist/addon-docs/mdx-react-shim.js +2 -0
- package/dist/addon-docs/preset.js +378 -0
- package/dist/addon-docs/preview.d.ts +4 -0
- package/dist/addon-docs/preview.js +7 -0
- package/dist/addon-links/index.d.ts +22 -0
- package/dist/addon-links/index.js +20 -0
- package/dist/addon-links/manager.js +14 -0
- package/dist/addon-links/preview.d.ts +6 -0
- package/dist/addon-links/preview.js +9 -0
- package/dist/addon-links/react/index.d.ts +25 -0
- package/dist/addon-links/react/index.js +52 -0
- package/dist/addon-mcp/preset.js +1345 -0
- package/dist/addon-mcp/preview.js +29 -0
- package/dist/addon-mcp/tools/preview-stories/preview-stories-app-script.js +1174 -0
- package/dist/addon-ondevice-actions/index.d.ts +4 -0
- package/dist/addon-ondevice-actions/index.js +7 -0
- package/dist/addon-ondevice-actions/register.js +7 -0
- package/dist/addon-ondevice-controls/index.d.ts +6 -0
- package/dist/addon-ondevice-controls/index.js +14 -0
- package/dist/addon-ondevice-controls/register.js +10 -0
- package/dist/addon-pseudo-states/index.d.ts +35 -0
- package/dist/addon-pseudo-states/index.js +15 -0
- package/dist/addon-pseudo-states/manager.js +53 -0
- package/dist/addon-pseudo-states/preview.d.ts +9 -0
- package/dist/addon-pseudo-states/preview.js +10 -0
- package/dist/addon-themes/index.d.ts +80 -0
- package/dist/addon-themes/index.js +104 -0
- package/dist/addon-themes/manager.js +97 -0
- package/dist/addon-themes/postinstall.js +33 -0
- package/dist/addon-themes/preview.d.ts +6 -0
- package/dist/addon-themes/preview.js +8 -0
- package/dist/addon-vitest/constants.d.ts +132 -0
- package/dist/addon-vitest/constants.js +66 -0
- package/dist/addon-vitest/index.d.ts +4 -0
- package/dist/addon-vitest/index.js +8 -0
- package/dist/addon-vitest/manager.js +665 -0
- package/dist/addon-vitest/node/coverage-reporter.js +1284 -0
- package/dist/addon-vitest/node/vitest.js +674 -0
- package/dist/addon-vitest/postinstall.js +24 -0
- package/dist/addon-vitest/preset.js +943 -0
- package/dist/addon-vitest/vitest-plugin/global-setup.js +162 -0
- package/dist/addon-vitest/vitest-plugin/index.d.ts +56 -0
- package/dist/addon-vitest/vitest-plugin/index.js +463 -0
- package/dist/addon-vitest/vitest-plugin/setup-file-with-project-annotations.js +9 -0
- package/dist/addon-vitest/vitest-plugin/setup-file.browser.4.js +20 -0
- package/dist/addon-vitest/vitest-plugin/setup-file.js +50 -0
- package/dist/addon-vitest/vitest-plugin/test-utils.js +128 -0
- package/dist/babel/index.d.ts +2301 -0
- package/dist/babel/index.js +61 -0
- package/dist/backgrounds/index.d.ts +6 -0
- package/dist/backgrounds/index.js +15 -0
- package/dist/bin/core.js +1705 -0
- package/dist/bin/dispatcher.js +43 -0
- package/dist/bin/loader.js +115 -0
- package/dist/builder-vite/index.d.ts +50 -0
- package/dist/builder-vite/index.js +245 -0
- package/dist/builder-vite/preset.js +27 -0
- package/dist/channels/index.d.ts +2 -0
- package/dist/channels/index.js +352 -0
- package/dist/chunk-B2t1tGRh.d.ts +284 -0
- package/dist/chunk-BCoJQE-f.d.ts +602 -0
- package/dist/chunk-BGkgZp-H.d.ts +214 -0
- package/dist/chunk-BTVrWliM.d.ts +115 -0
- package/dist/chunk-BXLImeLy.d.ts +197 -0
- package/dist/chunk-BfBzpgct.d.ts +916 -0
- package/dist/chunk-Bpi2tz-6.d.ts +511 -0
- package/dist/chunk-BxWufQms.d.ts +142 -0
- package/dist/chunk-C-bavsOH.d.ts +34 -0
- package/dist/chunk-C2p5r3Vt.d.ts +13001 -0
- package/dist/chunk-C6PAgHLT.d.ts +12 -0
- package/dist/chunk-CMeX4WRe.d.ts +179 -0
- package/dist/chunk-Ct9xd6IM.d.ts +65 -0
- package/dist/chunk-CwQKNaYL.d.ts +15 -0
- package/dist/chunk-D7DwV41f.d.ts +3622 -0
- package/dist/chunk-DEVFdzxR.d.ts +253 -0
- package/dist/chunk-DaVb55-_.d.ts +124 -0
- package/dist/chunk-DgRNfmj_.d.ts +40 -0
- package/dist/chunk-DoIGKY33.d.ts +666 -0
- package/dist/chunk-Dr3R0DXk.d.ts +40 -0
- package/dist/chunk-DtHByo32.d.ts +55 -0
- package/dist/chunk-Dw1z1Pki.d.ts +933 -0
- package/dist/chunk-DzuY9DXg.d.ts +79 -0
- package/dist/chunk-FjDVzZTj.d.ts +62 -0
- package/dist/chunk-Kt1tW-D1.d.ts +59 -0
- package/dist/chunk-XP8oHzpE.d.ts +6 -0
- package/dist/chunk-gCX81nOr.d.ts +61 -0
- package/dist/chunk-pcFXCimE.d.ts +741 -0
- package/dist/cli/index.d.ts +1174 -0
- package/dist/cli/index.js +5613 -0
- package/dist/cli/skills/content/index.d.ts +72 -0
- package/dist/cli/skills/content/index.js +335 -0
- package/dist/cli/tools/sdk/child-host.d.ts +61 -0
- package/dist/cli/tools/sdk/child-host.js +131 -0
- package/dist/cli/tools/sdk/index.d.ts +137 -0
- package/dist/cli/tools/sdk/index.js +44 -0
- package/dist/cli-commands/bin/index.js +25 -0
- package/dist/client-logger/index.d.ts +31 -0
- package/dist/client-logger/index.js +63 -0
- package/dist/common/index.d.ts +1103 -0
- package/dist/common/index.js +364 -0
- package/dist/components/index.d.ts +1924 -0
- package/dist/components/index.js +13759 -0
- package/dist/core-events/index.d.ts +155 -0
- package/dist/core-events/index.js +136 -0
- package/dist/core-server/index.d.ts +2200 -0
- package/dist/core-server/index.js +4165 -0
- package/dist/core-server/presets/common-manager.css +170 -0
- package/dist/core-server/presets/common-manager.js +4168 -0
- package/dist/core-server/presets/common-override-preset.js +81 -0
- package/dist/core-server/presets/common-preset.js +2187 -0
- package/dist/create/bin/index.js +23 -0
- package/dist/create/index.js +25 -0
- package/dist/csf/csf-utils.d.ts +2 -0
- package/dist/csf/csf-utils.js +19 -0
- package/dist/csf/index.d.ts +7 -0
- package/dist/csf/index.js +2142 -0
- package/dist/csf-tools/index.d.ts +1157 -0
- package/dist/csf-tools/index.js +736 -0
- package/dist/docs-tools/index.d.ts +197 -0
- package/dist/docs-tools/index.js +61 -0
- package/dist/highlight/index.d.ts +10 -0
- package/dist/highlight/index.js +15 -0
- package/dist/instrumenter/index.d.ts +113 -0
- package/dist/instrumenter/index.js +2595 -0
- package/dist/manager/_manager-chunks/globals-runtime-8HkdnU2F.js +6144 -0
- package/dist/manager/_manager-chunks/globals-runtime-B0I9dSVs.js +5564 -0
- package/dist/manager/_manager-chunks/globals-runtime-BIKBO23x.js +3389 -0
- package/dist/manager/_manager-chunks/globals-runtime-BQCkfH1B.js +121 -0
- package/dist/manager/_manager-chunks/globals-runtime-BdGkqNEt.js +45 -0
- package/dist/manager/_manager-chunks/globals-runtime-BmphMP6z.js +1190 -0
- package/dist/manager/_manager-chunks/globals-runtime-BvM-NY2g.js +13307 -0
- package/dist/manager/_manager-chunks/globals-runtime-C02fvgcd.js +9243 -0
- package/dist/manager/_manager-chunks/globals-runtime-CXoVXiJA.js +4468 -0
- package/dist/manager/_manager-chunks/globals-runtime-DkAPXCvc.js +9766 -0
- package/dist/manager/_manager-chunks/globals-runtime-DtcOnYHR.js +5357 -0
- package/dist/manager/_manager-chunks/globals-runtime-DwFqpqya.js +722 -0
- package/dist/manager/_manager-chunks/globals-runtime-FC201B7s.js +6837 -0
- package/dist/manager/_manager-chunks/globals-runtime-ZHrQFa3-.js +10463 -0
- package/dist/manager/_manager-chunks/globals-runtime-eLPTIfX-.js +7759 -0
- package/dist/manager/_manager-chunks/globals-runtime-f5oIrim0.js +5102 -0
- package/dist/manager/_manager-chunks/runtime-B1L9TH89.js +452 -0
- package/dist/manager/_manager-chunks/runtime-Bly6WJLN.js +998 -0
- package/dist/manager/_manager-chunks/runtime-Bry1Biu7.js +8936 -0
- package/dist/manager/_manager-chunks/runtime-D94Vq3oR.js +4014 -0
- package/dist/manager/_manager-chunks/runtime-DMig8mT7.js +77 -0
- package/dist/manager/_manager-chunks/runtime-DcJBhKG9.js +1408 -0
- package/dist/manager/_manager-chunks/runtime-DpgBAFGf.js +22 -0
- package/dist/manager/_manager-chunks/runtime-DtyerpFe.js +979 -0
- package/dist/manager/_manager-chunks/runtime-EITvVbkG.js +46 -0
- package/dist/manager/_manager-chunks/runtime-eDVAYF7N.js +6860 -0
- package/dist/manager/_manager-chunks/runtime-i-PDAHLR.js +2493 -0
- package/dist/manager/globals-runtime.js +2 -0
- package/dist/manager/globals.d.ts +23 -0
- package/dist/manager/globals.js +26 -0
- package/dist/manager/manager-stores.d.ts +2 -0
- package/dist/manager/manager-stores.js +19 -0
- package/dist/manager/runtime.js +2 -0
- package/dist/manager-api/index.d.ts +2 -0
- package/dist/manager-api/index.js +3257 -0
- package/dist/manager-errors.d.ts +89 -0
- package/dist/manager-errors.js +20 -0
- package/dist/mcp/index.d.ts +270 -0
- package/dist/mcp/index.js +305 -0
- package/dist/mocking-utils/index.d.ts +689 -0
- package/dist/mocking-utils/index.js +521 -0
- package/dist/mocking-utils/mocker-runtime.js +1254 -0
- package/dist/nextjs-vite/config/preview.js +3 -0
- package/dist/nextjs-vite/export-mocks/cache/index.d.ts +25 -0
- package/dist/nextjs-vite/export-mocks/cache/index.js +29 -0
- package/dist/nextjs-vite/export-mocks/headers/index.d.ts +37 -0
- package/dist/nextjs-vite/export-mocks/headers/index.js +54 -0
- package/dist/nextjs-vite/export-mocks/link/index.d.ts +9 -0
- package/dist/nextjs-vite/export-mocks/link/index.js +59 -0
- package/dist/nextjs-vite/export-mocks/navigation/index.d.ts +28 -0
- package/dist/nextjs-vite/export-mocks/navigation/index.js +58 -0
- package/dist/nextjs-vite/export-mocks/router/index.d.ts +34 -0
- package/dist/nextjs-vite/export-mocks/router/index.js +63 -0
- package/dist/nextjs-vite/index.d.ts +92 -0
- package/dist/nextjs-vite/index.js +58 -0
- package/dist/nextjs-vite/node/index.d.ts +6 -0
- package/dist/nextjs-vite/node/index.js +20 -0
- package/dist/nextjs-vite/preset.js +648 -0
- package/dist/nextjs-vite/preview.d.ts +20 -0
- package/dist/nextjs-vite/preview.js +11 -0
- package/dist/nextjs-vite/vite-plugin/index.d.ts +6 -0
- package/dist/nextjs-vite/vite-plugin/index.js +19 -0
- package/dist/nextjs-vite-plugin/index.d.ts +28 -0
- package/dist/nextjs-vite-plugin/index.js +923 -0
- package/dist/nextjs-vite-plugin/mocks/storybook.global.js +29 -0
- package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-context.js +8 -0
- package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-default-loader.js +23 -0
- package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-image.js +28 -0
- package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-legacy-image.js +17 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/cache/index.js +29 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/dynamic/index.js +40 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/headers/index.js +55 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/link/index.js +63 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/navigation/index.js +71 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/router/index.js +74 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/rsc/server-only.js +7 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/safe-stable-stringify/index.js +13 -0
- package/dist/nextjs-vite-plugin/plugins/next-mocks/compatibility/draft-mode.compat.js +7 -0
- package/dist/node-logger/index.d.ts +495 -0
- package/dist/node-logger/index.js +42 -0
- package/dist/oxc-parser/index.d.ts +99 -0
- package/dist/oxc-parser/index.js +275 -0
- package/dist/oxc-parser/worker.js +37 -0
- package/dist/preview/_chunks/runtime-BIzIdDbb.js +10263 -0
- package/dist/preview/_chunks/runtime-BTPtVY1p.js +1102 -0
- package/dist/preview/_chunks/runtime-BZSnICCg.js +8484 -0
- package/dist/preview/_chunks/runtime-BdGkqNEt.js +45 -0
- package/dist/preview/_chunks/runtime-BwSxqk3t.js +63 -0
- package/dist/preview/_chunks/runtime-CqHxptiK.js +6143 -0
- package/dist/preview/_chunks/runtime-CsV4HZPV.js +5064 -0
- package/dist/preview/_chunks/runtime-CxZK_Ln3.js +284 -0
- package/dist/preview/_chunks/runtime-DZToXfvO.js +9767 -0
- package/dist/preview/_chunks/runtime-DrTjJkPY.js +3872 -0
- package/dist/preview/_chunks/runtime-DuHdxMFA.js +387 -0
- package/dist/preview/_chunks/runtime-iXdo8CR8.js +3635 -0
- package/dist/preview/_chunks/runtime-q3wt0e_N.js +6838 -0
- package/dist/preview/globals.d.ts +16 -0
- package/dist/preview/globals.js +20 -0
- package/dist/preview/runtime.js +6 -0
- package/dist/preview-api/index.d.ts +4 -0
- package/dist/preview-api/index.js +147 -0
- package/dist/preview-errors.d.ts +186 -0
- package/dist/preview-errors.js +56 -0
- package/dist/react/docgen/docgen-worker.js +38 -0
- package/dist/react/entry-preview-argtypes.js +9 -0
- package/dist/react/entry-preview-docs.js +12 -0
- package/dist/react/entry-preview-rsc.js +11 -0
- package/dist/react/entry-preview.js +21 -0
- package/dist/react/index.d.ts +119 -0
- package/dist/react/index.js +26 -0
- package/dist/react/preset.js +301 -0
- package/dist/react/preview.d.ts +2 -0
- package/dist/react/preview.js +11 -0
- package/dist/react-native/bin/get-stories.js +34 -0
- package/dist/react-native/index.d.ts +160 -0
- package/dist/react-native/index.js +1547 -0
- package/dist/react-native/metro/node.d.ts +83 -0
- package/dist/react-native/metro/node.js +21 -0
- package/dist/react-native/metro/withStorybook.d.ts +2269 -0
- package/dist/react-native/metro/withStorybook.js +138 -0
- package/dist/react-native/preview.d.ts +6 -0
- package/dist/react-native/preview.js +20 -0
- package/dist/react-native/scripts/generate.d.ts +22 -0
- package/dist/react-native/scripts/generate.js +18 -0
- package/dist/react-native/stub.js +20 -0
- package/dist/react-native-theming/index.d.ts +175 -0
- package/dist/react-native-theming/index.js +2591 -0
- package/dist/react-native-ui/index.d.ts +130 -0
- package/dist/react-native-ui/index.js +1865 -0
- package/dist/react-native-ui-common/index.d.ts +230 -0
- package/dist/react-native-ui-common/index.js +514 -0
- package/dist/react-vite/index.d.ts +4 -0
- package/dist/react-vite/index.js +8 -0
- package/dist/react-vite/node/index.d.ts +6 -0
- package/dist/react-vite/node/index.js +20 -0
- package/dist/react-vite/preset.d.ts +6 -0
- package/dist/react-vite/preset.js +21 -0
- package/dist/router/index.d.ts +141 -0
- package/dist/router/index.js +1217 -0
- package/dist/server-errors.d.ts +2 -0
- package/dist/server-errors.js +149 -0
- package/dist/shared/open-service/index.d.ts +3 -0
- package/dist/shared/open-service/index.js +115 -0
- package/dist/shared/open-service/services/docgen/worker/docgen-worker.js +75 -0
- package/dist/shared/open-service/toolsets/docs/public.d.ts +1296 -0
- package/dist/shared/open-service/toolsets/docs/public.js +991 -0
- package/dist/telemetry/index.d.ts +314 -0
- package/dist/telemetry/index.js +103 -0
- package/dist/test/index.d.ts +158 -0
- package/dist/test/index.js +19421 -0
- package/dist/theming/create.d.ts +15 -0
- package/dist/theming/create.js +11 -0
- package/dist/theming/index.d.ts +54 -0
- package/dist/theming/index.js +511 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +48 -0
- package/dist/viewport/index.d.ts +275 -0
- package/dist/viewport/index.js +21 -0
- package/package.json +1075 -4
- package/template/nextjs-vite/cli/.eslintrc.json +6 -0
- package/template/nextjs-vite/cli/js/Button.jsx +42 -0
- package/template/nextjs-vite/cli/js/Button.stories.js +49 -0
- package/template/nextjs-vite/cli/js/Configure.mdx +470 -0
- package/template/nextjs-vite/cli/js/Header.jsx +58 -0
- package/template/nextjs-vite/cli/js/Header.stories.js +30 -0
- package/template/nextjs-vite/cli/js/Page.jsx +68 -0
- package/template/nextjs-vite/cli/js/Page.stories.js +28 -0
- package/template/nextjs-vite/cli/ts/Button.stories.ts +54 -0
- package/template/nextjs-vite/cli/ts/Button.tsx +39 -0
- package/template/nextjs-vite/cli/ts/Configure.mdx +446 -0
- package/template/nextjs-vite/cli/ts/Header.stories.ts +34 -0
- package/template/nextjs-vite/cli/ts/Header.tsx +54 -0
- package/template/nextjs-vite/cli/ts/Page.stories.ts +33 -0
- package/template/nextjs-vite/cli/ts/Page.tsx +73 -0
- package/template/react/cli/.eslintrc.json +5 -0
- package/template/react/cli/js/Button.jsx +39 -0
- package/template/react/cli/js/Button.stories.js +49 -0
- package/template/react/cli/js/Header.jsx +56 -0
- package/template/react/cli/js/Header.stories.js +29 -0
- package/template/react/cli/js/Page.jsx +69 -0
- package/template/react/cli/js/Page.stories.js +28 -0
- package/template/react/cli/ts/Button.stories.ts +54 -0
- package/template/react/cli/ts/Button.tsx +37 -0
- package/template/react/cli/ts/Header.stories.ts +34 -0
- package/template/react/cli/ts/Header.tsx +56 -0
- package/template/react/cli/ts/Page.stories.ts +33 -0
- package/template/react/cli/ts/Page.tsx +73 -0
- package/template/react-vite/cli/.eslintrc.json +5 -0
- package/template/react-vite/cli/js/Button.jsx +39 -0
- package/template/react-vite/cli/js/Button.stories.js +49 -0
- package/template/react-vite/cli/js/Header.jsx +56 -0
- package/template/react-vite/cli/js/Header.stories.js +29 -0
- package/template/react-vite/cli/js/Page.jsx +69 -0
- package/template/react-vite/cli/js/Page.stories.js +28 -0
- package/template/react-vite/cli/ts/Button.stories.ts +54 -0
- package/template/react-vite/cli/ts/Button.tsx +37 -0
- package/template/react-vite/cli/ts/Header.stories.ts +34 -0
- package/template/react-vite/cli/ts/Header.tsx +56 -0
- package/template/react-vite/cli/ts/Page.stories.ts +33 -0
- package/template/react-vite/cli/ts/Page.tsx +73 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import CJS_COMPAT_NODE_URL_5ewvyy4zw6m from 'node:url';
|
|
2
|
+
import CJS_COMPAT_NODE_PATH_5ewvyy4zw6m from 'node:path';
|
|
3
|
+
import CJS_COMPAT_NODE_MODULE_5ewvyy4zw6m from "node:module";
|
|
4
|
+
|
|
5
|
+
var __filename = CJS_COMPAT_NODE_URL_5ewvyy4zw6m.fileURLToPath(import.meta.url);
|
|
6
|
+
var __dirname = CJS_COMPAT_NODE_PATH_5ewvyy4zw6m.dirname(__filename);
|
|
7
|
+
var require = CJS_COMPAT_NODE_MODULE_5ewvyy4zw6m.createRequire(import.meta.url);
|
|
8
|
+
|
|
9
|
+
// ------------------------------------------------------------
|
|
10
|
+
// end of CJS compatibility banner, injected by Forkbook's esbuild configuration
|
|
11
|
+
// ------------------------------------------------------------
|
|
12
|
+
import {
|
|
13
|
+
StorybookError
|
|
14
|
+
} from "./chunk-CYPPELO4.js";
|
|
15
|
+
|
|
16
|
+
// src/cli/tools/instances/project-path.ts
|
|
17
|
+
import * as path from "node:path";
|
|
18
|
+
function canonicalizeProjectPath(value) {
|
|
19
|
+
let resolved = path.resolve(value);
|
|
20
|
+
return path.sep === "\\" ? resolved.toLowerCase() : resolved;
|
|
21
|
+
}
|
|
22
|
+
function projectPathsEqual(a, b) {
|
|
23
|
+
return canonicalizeProjectPath(a) === canonicalizeProjectPath(b);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// src/cli/tools/sdk/errors.ts
|
|
27
|
+
var AttachUnavailableError = class extends StorybookError {
|
|
28
|
+
constructor(data) {
|
|
29
|
+
super({
|
|
30
|
+
name: "AttachUnavailableError",
|
|
31
|
+
category: "CLI" /* CLI */,
|
|
32
|
+
code: 4,
|
|
33
|
+
message: data.remediation,
|
|
34
|
+
agentFacing: !0
|
|
35
|
+
}), this.data = {
|
|
36
|
+
reason: data.reason,
|
|
37
|
+
instances: data.instances.map((instance) => {
|
|
38
|
+
let rest = { ...instance };
|
|
39
|
+
return delete rest.token, rest;
|
|
40
|
+
}),
|
|
41
|
+
remediation: data.remediation
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
}, EnvironmentMismatchError = class extends StorybookError {
|
|
45
|
+
constructor(data) {
|
|
46
|
+
super({
|
|
47
|
+
name: "EnvironmentMismatchError",
|
|
48
|
+
category: "CLI" /* CLI */,
|
|
49
|
+
code: 5,
|
|
50
|
+
message: data.reason,
|
|
51
|
+
agentFacing: !0
|
|
52
|
+
});
|
|
53
|
+
this.data = data;
|
|
54
|
+
}
|
|
55
|
+
}, SpawnFailedError = class extends StorybookError {
|
|
56
|
+
constructor(data) {
|
|
57
|
+
super({
|
|
58
|
+
name: "SpawnFailedError",
|
|
59
|
+
category: "CLI" /* CLI */,
|
|
60
|
+
code: 6,
|
|
61
|
+
cause: data.cause,
|
|
62
|
+
message: data.reason
|
|
63
|
+
});
|
|
64
|
+
this.data = data;
|
|
65
|
+
}
|
|
66
|
+
}, ToolsRuntimeError = class extends StorybookError {
|
|
67
|
+
constructor(data) {
|
|
68
|
+
super({
|
|
69
|
+
name: "ToolsRuntimeError",
|
|
70
|
+
category: "CLI" /* CLI */,
|
|
71
|
+
code: 7,
|
|
72
|
+
cause: data.cause,
|
|
73
|
+
message: data.message
|
|
74
|
+
});
|
|
75
|
+
this.data = data;
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
function isAttachGateError(error) {
|
|
79
|
+
return error instanceof AttachUnavailableError || error instanceof EnvironmentMismatchError || error instanceof SpawnFailedError;
|
|
80
|
+
}
|
|
81
|
+
function attachGateReasonFromError(error) {
|
|
82
|
+
if (error instanceof AttachUnavailableError)
|
|
83
|
+
return error.data.reason;
|
|
84
|
+
if (error instanceof EnvironmentMismatchError)
|
|
85
|
+
return "environment-mismatch";
|
|
86
|
+
if (error instanceof SpawnFailedError)
|
|
87
|
+
return "spawn-failed";
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
export {
|
|
91
|
+
projectPathsEqual,
|
|
92
|
+
AttachUnavailableError,
|
|
93
|
+
EnvironmentMismatchError,
|
|
94
|
+
SpawnFailedError,
|
|
95
|
+
ToolsRuntimeError,
|
|
96
|
+
isAttachGateError,
|
|
97
|
+
attachGateReasonFromError
|
|
98
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import CJS_COMPAT_NODE_URL_5ewvyy4zw6m from 'node:url';
|
|
2
|
+
import CJS_COMPAT_NODE_PATH_5ewvyy4zw6m from 'node:path';
|
|
3
|
+
import CJS_COMPAT_NODE_MODULE_5ewvyy4zw6m from "node:module";
|
|
4
|
+
|
|
5
|
+
var __filename = CJS_COMPAT_NODE_URL_5ewvyy4zw6m.fileURLToPath(import.meta.url);
|
|
6
|
+
var __dirname = CJS_COMPAT_NODE_PATH_5ewvyy4zw6m.dirname(__filename);
|
|
7
|
+
var require = CJS_COMPAT_NODE_MODULE_5ewvyy4zw6m.createRequire(import.meta.url);
|
|
8
|
+
|
|
9
|
+
// ------------------------------------------------------------
|
|
10
|
+
// end of CJS compatibility banner, injected by Forkbook's esbuild configuration
|
|
11
|
+
// ------------------------------------------------------------
|
|
12
|
+
import {
|
|
13
|
+
up2 as up
|
|
14
|
+
} from "./chunk-NZ3GOT7V.js";
|
|
15
|
+
|
|
16
|
+
// ../../node_modules/empathic/package.mjs
|
|
17
|
+
import { env } from "node:process";
|
|
18
|
+
import { dirname, join } from "node:path";
|
|
19
|
+
import { existsSync, mkdirSync } from "node:fs";
|
|
20
|
+
|
|
21
|
+
// ../../node_modules/empathic/access.mjs
|
|
22
|
+
import { accessSync, constants } from "node:fs";
|
|
23
|
+
function ok(path, mode) {
|
|
24
|
+
try {
|
|
25
|
+
return accessSync(path, mode), !0;
|
|
26
|
+
} catch {
|
|
27
|
+
return !1;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
function writable(path) {
|
|
31
|
+
return ok(path, constants.W_OK);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// ../../node_modules/empathic/package.mjs
|
|
35
|
+
function up2(options) {
|
|
36
|
+
return up("package.json", options);
|
|
37
|
+
}
|
|
38
|
+
function cache(name, options) {
|
|
39
|
+
options = options || {};
|
|
40
|
+
let dir = env.CACHE_DIR;
|
|
41
|
+
if (!dir || /^(1|0|true|false)$/.test(dir)) {
|
|
42
|
+
let pkg = up2(options);
|
|
43
|
+
if (dir = pkg && dirname(pkg)) {
|
|
44
|
+
let mods = join(dir, "node_modules"), exists = existsSync(mods);
|
|
45
|
+
if (!writable(exists ? mods : dir)) return;
|
|
46
|
+
dir = join(mods, ".cache");
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
if (dir)
|
|
50
|
+
return dir = join(dir, name), options.create && !existsSync(dir) && mkdirSync(dir, { recursive: !0 }), dir;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export {
|
|
54
|
+
up2 as up,
|
|
55
|
+
cache
|
|
56
|
+
};
|
|
@@ -0,0 +1,415 @@
|
|
|
1
|
+
import CJS_COMPAT_NODE_URL_5ewvyy4zw6m from 'node:url';
|
|
2
|
+
import CJS_COMPAT_NODE_PATH_5ewvyy4zw6m from 'node:path';
|
|
3
|
+
import CJS_COMPAT_NODE_MODULE_5ewvyy4zw6m from "node:module";
|
|
4
|
+
|
|
5
|
+
var __filename = CJS_COMPAT_NODE_URL_5ewvyy4zw6m.fileURLToPath(import.meta.url);
|
|
6
|
+
var __dirname = CJS_COMPAT_NODE_PATH_5ewvyy4zw6m.dirname(__filename);
|
|
7
|
+
var require = CJS_COMPAT_NODE_MODULE_5ewvyy4zw6m.createRequire(import.meta.url);
|
|
8
|
+
|
|
9
|
+
// ------------------------------------------------------------
|
|
10
|
+
// end of CJS compatibility banner, injected by Forkbook's esbuild configuration
|
|
11
|
+
// ------------------------------------------------------------
|
|
12
|
+
import {
|
|
13
|
+
DOCUMENTATION_LINK
|
|
14
|
+
} from "./chunk-AANHLH5M.js";
|
|
15
|
+
import {
|
|
16
|
+
any
|
|
17
|
+
} from "./chunk-NZ3GOT7V.js";
|
|
18
|
+
|
|
19
|
+
// src/addon-vitest/postinstall.ts
|
|
20
|
+
import * as fs from "node:fs/promises";
|
|
21
|
+
import { writeFile } from "node:fs/promises";
|
|
22
|
+
import os from "node:os";
|
|
23
|
+
import { babelParse, generate, traverse } from "@aussieljk/forkbook/internal/babel";
|
|
24
|
+
import { AddonVitestService } from "@aussieljk/forkbook/internal/cli";
|
|
25
|
+
import {
|
|
26
|
+
JsPackageManagerFactory,
|
|
27
|
+
formatFileContent,
|
|
28
|
+
getProjectRoot,
|
|
29
|
+
getStorybookInfo
|
|
30
|
+
} from "@aussieljk/forkbook/internal/common";
|
|
31
|
+
import { CLI_COLORS } from "@aussieljk/forkbook/internal/node-logger";
|
|
32
|
+
import {
|
|
33
|
+
AddonVitestPostinstallConfigUpdateError,
|
|
34
|
+
AddonVitestPostinstallError,
|
|
35
|
+
AddonVitestPostinstallPrerequisiteCheckError
|
|
36
|
+
} from "@aussieljk/forkbook/internal/server-errors";
|
|
37
|
+
import { dirname, relative, resolve } from "pathe";
|
|
38
|
+
import { dedent } from "ts-dedent";
|
|
39
|
+
|
|
40
|
+
// src/addon-vitest/updateVitestFile.ts
|
|
41
|
+
import {
|
|
42
|
+
getConfigObjectFromMergeArg,
|
|
43
|
+
getEffectiveMergeConfigCall,
|
|
44
|
+
getTargetConfigObject,
|
|
45
|
+
isDefineConfigLike,
|
|
46
|
+
resolveExpression
|
|
47
|
+
} from "@aussieljk/forkbook/internal/babel";
|
|
48
|
+
import { normalize } from "pathe";
|
|
49
|
+
async function getTemplatePath() {
|
|
50
|
+
return import("./vitest.config.4.template-QJBEVCKG.js");
|
|
51
|
+
}
|
|
52
|
+
var loadTemplate = async (name, replacements) => {
|
|
53
|
+
let template = (await getTemplatePath()).default;
|
|
54
|
+
return Object.entries(replacements).forEach(
|
|
55
|
+
([key, value]) => template = template.replace(key, normalize(value))
|
|
56
|
+
), template;
|
|
57
|
+
}, mergeProperties = (source, target) => {
|
|
58
|
+
for (let sourceProp of source)
|
|
59
|
+
if (sourceProp.type === "ObjectProperty") {
|
|
60
|
+
let targetProp = target.find(
|
|
61
|
+
(p) => sourceProp.key.type === "Identifier" && p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === sourceProp.key.name
|
|
62
|
+
);
|
|
63
|
+
targetProp && targetProp.type === "ObjectProperty" ? sourceProp.value.type === "ObjectExpression" && targetProp.value.type === "ObjectExpression" ? mergeProperties(sourceProp.value.properties, targetProp.value.properties) : sourceProp.value.type === "ArrayExpression" && targetProp.value.type === "ArrayExpression" ? targetProp.value.elements.push(...sourceProp.value.elements) : targetProp.value = sourceProp.value : target.push(sourceProp);
|
|
64
|
+
}
|
|
65
|
+
}, resolveTestPropValue = (testProp, ast) => {
|
|
66
|
+
if (testProp.value.type === "ObjectExpression")
|
|
67
|
+
return testProp.value;
|
|
68
|
+
let resolved = resolveExpression(testProp.value, ast);
|
|
69
|
+
return resolved?.type === "ObjectExpression" ? resolved : null;
|
|
70
|
+
}, findNamedProp = (properties, name) => properties.find(
|
|
71
|
+
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === name
|
|
72
|
+
), isProjectsArrayProp = (p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === "projects" && p.value.type === "ArrayExpression", appendToExistingProjectRefs = (existingProjectRefsProp, resolvedTestValue, templateTestProp, properties, targetConfigObject) => {
|
|
73
|
+
if (templateTestProp && templateTestProp.value.type === "ObjectExpression") {
|
|
74
|
+
let templateProjectRefsProp = templateTestProp.value.properties.find(
|
|
75
|
+
(p) => isProjectsArrayProp(p)
|
|
76
|
+
);
|
|
77
|
+
templateProjectRefsProp && templateProjectRefsProp.value.type === "ArrayExpression" && existingProjectRefsProp.value.elements.push(
|
|
78
|
+
...templateProjectRefsProp.value.elements
|
|
79
|
+
);
|
|
80
|
+
let existingTestPropNames = new Set(
|
|
81
|
+
resolvedTestValue.properties.filter(
|
|
82
|
+
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier"
|
|
83
|
+
).map((p) => p.key.name)
|
|
84
|
+
);
|
|
85
|
+
for (let templateProp of templateTestProp.value.properties)
|
|
86
|
+
templateProp.type === "ObjectProperty" && templateProp.key.type === "Identifier" && templateProp.key.name !== "projects" && !existingTestPropNames.has(templateProp.key.name) && resolvedTestValue.properties.push(templateProp);
|
|
87
|
+
}
|
|
88
|
+
let otherTemplateProps = properties.filter(
|
|
89
|
+
(p) => !(p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === "test")
|
|
90
|
+
);
|
|
91
|
+
otherTemplateProps.length > 0 && mergeProperties(otherTemplateProps, targetConfigObject.properties);
|
|
92
|
+
}, wrapTestConfigAsProject = (resolvedTestValue, existingTestProp, templateTestProp, properties, targetConfigObject) => {
|
|
93
|
+
let projectsProp = templateTestProp.value.type === "ObjectExpression" ? templateTestProp.value.properties.find((p) => isProjectsArrayProp(p)) : void 0;
|
|
94
|
+
if (!projectsProp || projectsProp.value.type !== "ArrayExpression") {
|
|
95
|
+
mergeProperties(properties, targetConfigObject.properties);
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
let topLevelProps = [
|
|
99
|
+
"shard",
|
|
100
|
+
"watch",
|
|
101
|
+
"run",
|
|
102
|
+
"cache",
|
|
103
|
+
"update",
|
|
104
|
+
"reporters",
|
|
105
|
+
"outputFile",
|
|
106
|
+
"teardownTimeout",
|
|
107
|
+
"silent",
|
|
108
|
+
"forceRerunTriggers",
|
|
109
|
+
"testNamePattern",
|
|
110
|
+
"ui",
|
|
111
|
+
"open",
|
|
112
|
+
"uiBase",
|
|
113
|
+
"snapshotFormat",
|
|
114
|
+
"resolveSnapshotPath",
|
|
115
|
+
"passWithNoTests",
|
|
116
|
+
"onConsoleLog",
|
|
117
|
+
"onStackTrace",
|
|
118
|
+
"dangerouslyIgnoreUnhandledErrors",
|
|
119
|
+
"slowTestThreshold",
|
|
120
|
+
"inspect",
|
|
121
|
+
"inspectBrk",
|
|
122
|
+
"coverage",
|
|
123
|
+
"watchTriggerPatterns"
|
|
124
|
+
].map(
|
|
125
|
+
(name) => findNamedProp(resolvedTestValue.properties, name)
|
|
126
|
+
).filter(Boolean), topLevelPropSet = new Set(topLevelProps), projectTestProps = resolvedTestValue.properties.filter(
|
|
127
|
+
(p) => !topLevelPropSet.has(p)
|
|
128
|
+
), existingTestProject = {
|
|
129
|
+
type: "ObjectExpression",
|
|
130
|
+
properties: [
|
|
131
|
+
{
|
|
132
|
+
type: "ObjectProperty",
|
|
133
|
+
key: { type: "Identifier", name: "extends" },
|
|
134
|
+
value: { type: "BooleanLiteral", value: !0 },
|
|
135
|
+
computed: !1,
|
|
136
|
+
shorthand: !1
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: "ObjectProperty",
|
|
140
|
+
key: { type: "Identifier", name: "test" },
|
|
141
|
+
value: {
|
|
142
|
+
type: "ObjectExpression",
|
|
143
|
+
properties: projectTestProps
|
|
144
|
+
},
|
|
145
|
+
computed: !1,
|
|
146
|
+
shorthand: !1
|
|
147
|
+
}
|
|
148
|
+
]
|
|
149
|
+
};
|
|
150
|
+
projectsProp.value.elements.unshift(existingTestProject), targetConfigObject.properties = targetConfigObject.properties.filter(
|
|
151
|
+
(p) => p !== existingTestProp
|
|
152
|
+
), topLevelProps.length > 0 && templateTestProp.value.type === "ObjectExpression" && templateTestProp.value.properties.unshift(...topLevelProps), mergeProperties(properties, targetConfigObject.properties);
|
|
153
|
+
}, mergeTemplateIntoConfigObject = (targetConfigObject, properties, target) => {
|
|
154
|
+
let existingTestProp = findNamedProp(targetConfigObject.properties, "test"), resolvedTestValue = existingTestProp ? resolveTestPropValue(existingTestProp, target) : null, templateTestProp = findNamedProp(properties, "test");
|
|
155
|
+
if (existingTestProp && resolvedTestValue !== null) {
|
|
156
|
+
let existingProjectRefsProp = resolvedTestValue.properties.find(isProjectsArrayProp);
|
|
157
|
+
if (existingProjectRefsProp) {
|
|
158
|
+
appendToExistingProjectRefs(
|
|
159
|
+
existingProjectRefsProp,
|
|
160
|
+
resolvedTestValue,
|
|
161
|
+
templateTestProp,
|
|
162
|
+
properties,
|
|
163
|
+
targetConfigObject
|
|
164
|
+
);
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
if (templateTestProp && templateTestProp.value.type === "ObjectExpression") {
|
|
168
|
+
wrapTestConfigAsProject(
|
|
169
|
+
resolvedTestValue,
|
|
170
|
+
existingTestProp,
|
|
171
|
+
templateTestProp,
|
|
172
|
+
properties,
|
|
173
|
+
targetConfigObject
|
|
174
|
+
);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
mergeProperties(properties, targetConfigObject.properties);
|
|
179
|
+
}, getWritableTargetConfigObject = (target, exportDefault) => {
|
|
180
|
+
let directConfigObject = getTargetConfigObject(target, exportDefault);
|
|
181
|
+
if (directConfigObject)
|
|
182
|
+
return directConfigObject;
|
|
183
|
+
let resolvedDecl = resolveExpression(exportDefault.declaration, target);
|
|
184
|
+
if (resolvedDecl?.type !== "CallExpression" || !isDefineConfigLike(resolvedDecl, target))
|
|
185
|
+
return null;
|
|
186
|
+
let callbackArg = resolvedDecl.arguments[0];
|
|
187
|
+
if (!callbackArg || callbackArg.type !== "ArrowFunctionExpression" && callbackArg.type !== "FunctionExpression")
|
|
188
|
+
return null;
|
|
189
|
+
if (callbackArg.body.type === "ObjectExpression")
|
|
190
|
+
return callbackArg.body;
|
|
191
|
+
if (callbackArg.body.type === "BlockStatement" && callbackArg.body.body.length === 1 && callbackArg.body.body[0]?.type === "ReturnStatement") {
|
|
192
|
+
let returnedExpr = resolveExpression(callbackArg.body.body[0].argument, target);
|
|
193
|
+
if (returnedExpr?.type === "ObjectExpression")
|
|
194
|
+
return returnedExpr;
|
|
195
|
+
}
|
|
196
|
+
return null;
|
|
197
|
+
}, updateConfigFile = (source, target) => {
|
|
198
|
+
let updated = !1, sourceExportDefault = source.program.body.find(
|
|
199
|
+
(n) => n.type === "ExportDefaultDeclaration"
|
|
200
|
+
);
|
|
201
|
+
if (!sourceExportDefault || sourceExportDefault.declaration.type !== "CallExpression")
|
|
202
|
+
return !1;
|
|
203
|
+
let targetExportDefault = target.program.body.find(
|
|
204
|
+
(n) => n.type === "ExportDefaultDeclaration"
|
|
205
|
+
);
|
|
206
|
+
if (!targetExportDefault)
|
|
207
|
+
return !1;
|
|
208
|
+
let canHandleConfig = !1;
|
|
209
|
+
if ((getWritableTargetConfigObject(target, targetExportDefault) !== null || getEffectiveMergeConfigCall(targetExportDefault.declaration, target) !== null) && (canHandleConfig = !0), !canHandleConfig)
|
|
210
|
+
return !1;
|
|
211
|
+
for (let sourceNode of source.program.body)
|
|
212
|
+
if (sourceNode.type === "ImportDeclaration") {
|
|
213
|
+
if (!target.program.body.some(
|
|
214
|
+
(targetNode) => targetNode.type === sourceNode.type && targetNode.specifiers.some((s) => s.local.name === sourceNode.specifiers[0].local.name)
|
|
215
|
+
)) {
|
|
216
|
+
let lastImport = target.program.body.findLastIndex((n) => n.type === "ImportDeclaration");
|
|
217
|
+
target.program.body.splice(lastImport + 1, 0, sourceNode);
|
|
218
|
+
}
|
|
219
|
+
} else if (sourceNode.type === "VariableDeclaration") {
|
|
220
|
+
if (!target.program.body.some(
|
|
221
|
+
(targetNode) => targetNode.type === sourceNode.type && targetNode.declarations.some(
|
|
222
|
+
(d) => "name" in d.id && "name" in sourceNode.declarations[0].id && d.id.name === sourceNode.declarations[0].id.name
|
|
223
|
+
)
|
|
224
|
+
)) {
|
|
225
|
+
let lastImport = target.program.body.findLastIndex((n) => n.type === "ImportDeclaration");
|
|
226
|
+
target.program.body.splice(lastImport + 1, 0, sourceNode);
|
|
227
|
+
}
|
|
228
|
+
} else if (sourceNode.type === "ExportDefaultDeclaration") {
|
|
229
|
+
let exportDefault = target.program.body.find((n) => n.type === "ExportDefaultDeclaration");
|
|
230
|
+
if (exportDefault && sourceNode.declaration.type === "CallExpression" && sourceNode.declaration.arguments.length > 0 && sourceNode.declaration.arguments[0].type === "ObjectExpression") {
|
|
231
|
+
let { properties } = sourceNode.declaration.arguments[0], targetConfigObject = getWritableTargetConfigObject(target, exportDefault);
|
|
232
|
+
if (targetConfigObject !== null)
|
|
233
|
+
mergeTemplateIntoConfigObject(targetConfigObject, properties, target), updated = !0;
|
|
234
|
+
else {
|
|
235
|
+
let mergeConfigCall = getEffectiveMergeConfigCall(exportDefault.declaration, target);
|
|
236
|
+
if (mergeConfigCall && mergeConfigCall.arguments.length >= 2) {
|
|
237
|
+
let configObjectNodes = [];
|
|
238
|
+
for (let arg of mergeConfigCall.arguments) {
|
|
239
|
+
let configObject = getConfigObjectFromMergeArg(arg, target);
|
|
240
|
+
configObject && configObjectNodes.push(configObject);
|
|
241
|
+
}
|
|
242
|
+
let targetConfigObject2 = configObjectNodes.find(
|
|
243
|
+
(obj) => obj.properties.some(
|
|
244
|
+
(p) => p.type === "ObjectProperty" && p.key.type === "Identifier" && p.key.name === "test"
|
|
245
|
+
)
|
|
246
|
+
) || configObjectNodes[0];
|
|
247
|
+
if (!targetConfigObject2)
|
|
248
|
+
return !1;
|
|
249
|
+
mergeTemplateIntoConfigObject(targetConfigObject2, properties, target), updated = !0;
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
return updated;
|
|
255
|
+
};
|
|
256
|
+
|
|
257
|
+
// src/addon-vitest/postinstall.ts
|
|
258
|
+
var ADDON_NAME = "@aussieljk/forkbook/addon-vitest", EXTENSIONS = [".ts", ".tsx", ".js", ".jsx", ".cts", ".mts", ".cjs", ".mjs"], FORKBOOK_TEST_PLUGIN_SOURCE = `${ADDON_NAME}/vitest-plugin`, getTemplateConfigDir = (configFilePath, configDir) => relative(dirname(configFilePath), configDir);
|
|
259
|
+
async function postInstall(options) {
|
|
260
|
+
let errors = [], { logger, prompt } = options, packageManager = JsPackageManagerFactory.getPackageManager({
|
|
261
|
+
force: options.packageManager
|
|
262
|
+
}), findFile = (basename, extensions = EXTENSIONS) => any(
|
|
263
|
+
extensions.map((ext) => basename + ext),
|
|
264
|
+
{ last: getProjectRoot(), cwd: options.configDir }
|
|
265
|
+
), allDeps = packageManager.getAllDependencies(), addonVitestService = new AddonVitestService(packageManager), info = await getStorybookInfo(options.configDir, void 0, { skipCache: !0 }), compatibilityResult = await addonVitestService.validateCompatibility({
|
|
266
|
+
framework: info.framework,
|
|
267
|
+
builder: info.builder
|
|
268
|
+
}), result = null;
|
|
269
|
+
if (!compatibilityResult.compatible && compatibilityResult.reasons) {
|
|
270
|
+
let reasons = compatibilityResult.reasons.map((r) => `\u2022 ${CLI_COLORS.error(r)}`);
|
|
271
|
+
reasons.unshift(dedent`
|
|
272
|
+
Automated setup failed
|
|
273
|
+
The following packages have incompatibilities that prevent automated setup:
|
|
274
|
+
`), reasons.push(
|
|
275
|
+
dedent`
|
|
276
|
+
You can fix these issues and rerun the command to reinstall. If you wish to roll back the installation, remove ${ADDON_NAME} from the "addons" array
|
|
277
|
+
in your main Forkbook config file and remove the dependency from your package.json file.
|
|
278
|
+
|
|
279
|
+
Please check the documentation for more information about its requirements and installation:
|
|
280
|
+
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}
|
|
281
|
+
`
|
|
282
|
+
), result = reasons.map((r) => r.trim()).join(`
|
|
283
|
+
|
|
284
|
+
`);
|
|
285
|
+
}
|
|
286
|
+
if (result)
|
|
287
|
+
throw logger.error(result), new AddonVitestPostinstallPrerequisiteCheckError({
|
|
288
|
+
reasons: compatibilityResult.reasons
|
|
289
|
+
});
|
|
290
|
+
if (!options.skipDependencyManagement) {
|
|
291
|
+
let versionedDependencies = await addonVitestService.collectDependencies(), v8Version = await packageManager.getInstalledVersion("@vitest/coverage-v8"), istanbulVersion = await packageManager.getInstalledVersion("@vitest/coverage-istanbul");
|
|
292
|
+
!v8Version && !istanbulVersion && logger.step(
|
|
293
|
+
dedent`
|
|
294
|
+
You don't seem to have a coverage reporter installed. Vitest needs either V8 or Istanbul to generate coverage reports.
|
|
295
|
+
|
|
296
|
+
Adding "@vitest/coverage-v8" to enable coverage reporting.
|
|
297
|
+
Read more about Vitest coverage providers at https://vitest.dev/guide/coverage.html#coverage-providers
|
|
298
|
+
`
|
|
299
|
+
), versionedDependencies.length > 0 && (logger.step("Adding dependencies to your package.json"), logger.log(" " + versionedDependencies.join(", ")), await packageManager.addDependencies(
|
|
300
|
+
{ type: "devDependencies", skipInstall: !0 },
|
|
301
|
+
versionedDependencies
|
|
302
|
+
)), options.skipInstall || await packageManager.installDependencies();
|
|
303
|
+
}
|
|
304
|
+
if (!options.skipDependencyManagement)
|
|
305
|
+
if (!options.skipInstall)
|
|
306
|
+
await addonVitestService.installPlaywright({
|
|
307
|
+
yes: options.yes,
|
|
308
|
+
useRemotePkg: !!options.skipInstall
|
|
309
|
+
});
|
|
310
|
+
else {
|
|
311
|
+
let platform = os.platform(), useWithDeps = platform === "darwin" || platform === "win32", manualCommand = useWithDeps ? "npx playwright install chromium --with-deps" : "npx playwright install chromium", linuxNote = useWithDeps ? "" : `
|
|
312
|
+
Note: add --with-deps to the command above if you are on Debian or Ubuntu.`;
|
|
313
|
+
logger.warn(dedent`
|
|
314
|
+
Playwright browser binaries installation skipped. Please run the following command manually later:
|
|
315
|
+
${CLI_COLORS.cta(manualCommand)}${linuxNote}
|
|
316
|
+
`);
|
|
317
|
+
}
|
|
318
|
+
let fileExtension = allDeps.typescript || findFile("tsconfig", [...EXTENSIONS, ".json"]) ? "ts" : "js", viteConfigFile = findFile("vite.config"), vitestConfigFile = findFile("vitest.config"), vitestShimFile = findFile("vitest.shims.d"), rootConfig = vitestConfigFile || viteConfigFile;
|
|
319
|
+
if (fileExtension === "ts" && !vitestShimFile && await writeFile("vitest.shims.d.ts", '/// <reference types="@vitest/browser-playwright" />'), rootConfig) {
|
|
320
|
+
let target, updated, configFile = await fs.readFile(rootConfig, "utf8"), configFileHasTypeReference = configFile.match(
|
|
321
|
+
/\/\/\/\s*<reference\s+types=["']vitest\/config["']\s*\/>/
|
|
322
|
+
), alreadyConfigured = isConfigAlreadySetup(rootConfig, configFile);
|
|
323
|
+
if (!alreadyConfigured) {
|
|
324
|
+
let configTemplate = await loadTemplate("vitest.config.4.template", {
|
|
325
|
+
CONFIG_DIR: getTemplateConfigDir(rootConfig, options.configDir)
|
|
326
|
+
}), source = babelParse(configTemplate);
|
|
327
|
+
target = babelParse(configFile), updated = updateConfigFile(source, target);
|
|
328
|
+
}
|
|
329
|
+
if (alreadyConfigured)
|
|
330
|
+
logger.step(
|
|
331
|
+
CLI_COLORS.success("Vitest for Forkbook is already properly configured. Skipping setup.")
|
|
332
|
+
);
|
|
333
|
+
else if (target && updated) {
|
|
334
|
+
logger.step(`Updating your ${vitestConfigFile ? "Vitest" : "Vite"} config file:`), logger.log(` ${rootConfig}`);
|
|
335
|
+
let formattedContent = await formatFileContent(rootConfig, generate(target).code);
|
|
336
|
+
await writeFile(
|
|
337
|
+
rootConfig,
|
|
338
|
+
!configFileHasTypeReference && !vitestConfigFile ? `/// <reference types="vitest/config" />
|
|
339
|
+
` + formattedContent : formattedContent
|
|
340
|
+
);
|
|
341
|
+
} else
|
|
342
|
+
logger.error(dedent`
|
|
343
|
+
We were unable to update your existing ${vitestConfigFile ? "Vitest" : "Vite"} config file.
|
|
344
|
+
|
|
345
|
+
Please refer to the documentation to complete the setup manually:
|
|
346
|
+
https://storybook.js.org/docs/writing-tests/integrations/vitest-addon#manual-setup-advanced
|
|
347
|
+
`), errors.push(new AddonVitestPostinstallConfigUpdateError({ filePath: rootConfig }));
|
|
348
|
+
} else {
|
|
349
|
+
let parentDir = dirname(options.configDir), newConfigFile = resolve(parentDir, `vitest.config.${fileExtension}`), configTemplate = await loadTemplate("vitest.config.4.template", {
|
|
350
|
+
CONFIG_DIR: getTemplateConfigDir(newConfigFile, options.configDir)
|
|
351
|
+
});
|
|
352
|
+
logger.step("Creating a Vitest config file:"), logger.log(`${newConfigFile}`);
|
|
353
|
+
let formattedContent = await formatFileContent(newConfigFile, configTemplate);
|
|
354
|
+
await writeFile(newConfigFile, formattedContent);
|
|
355
|
+
}
|
|
356
|
+
let runCommand = rootConfig ? "npx vitest --project=storybook" : "npx vitest";
|
|
357
|
+
if (errors.length === 0)
|
|
358
|
+
logger.step(
|
|
359
|
+
CLI_COLORS.success("@aussieljk/forkbook/addon-vitest setup completed successfully")
|
|
360
|
+
), logger.log(dedent`
|
|
361
|
+
@aussieljk/forkbook/addon-vitest is now configured and you're ready to run your tests!
|
|
362
|
+
Here are a couple of tips to get you started:
|
|
363
|
+
|
|
364
|
+
• You can run tests with "${CLI_COLORS.cta(runCommand)}"
|
|
365
|
+
• Vitest IDE extension shows all stories as tests in your editor!
|
|
366
|
+
|
|
367
|
+
Check the documentation for more information about its features and options at:
|
|
368
|
+
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}
|
|
369
|
+
`);
|
|
370
|
+
else
|
|
371
|
+
throw logger.warn(
|
|
372
|
+
dedent`
|
|
373
|
+
Done, but with errors!
|
|
374
|
+
@aussieljk/forkbook/addon-vitest was installed successfully, but there were some errors during the setup process. Please refer to the documentation to complete the setup manually and check the errors above:
|
|
375
|
+
https://storybook.js.org/docs/next/${DOCUMENTATION_LINK}#manual-setup-advanced
|
|
376
|
+
`
|
|
377
|
+
), new AddonVitestPostinstallError({ errors });
|
|
378
|
+
}
|
|
379
|
+
function isStorybookTestPluginSource(value) {
|
|
380
|
+
return value === FORKBOOK_TEST_PLUGIN_SOURCE;
|
|
381
|
+
}
|
|
382
|
+
function isConfigAlreadySetup(_configPath, configContent) {
|
|
383
|
+
let ast;
|
|
384
|
+
try {
|
|
385
|
+
ast = babelParse(configContent);
|
|
386
|
+
} catch {
|
|
387
|
+
return !1;
|
|
388
|
+
}
|
|
389
|
+
let pluginIdentifiers = /* @__PURE__ */ new Set();
|
|
390
|
+
traverse(ast, {
|
|
391
|
+
ImportDeclaration(path) {
|
|
392
|
+
let source = path.node.source.value;
|
|
393
|
+
typeof source == "string" && isStorybookTestPluginSource(source) && path.node.specifiers.forEach((specifier) => {
|
|
394
|
+
"local" in specifier && specifier.local?.name && pluginIdentifiers.add(specifier.local.name);
|
|
395
|
+
});
|
|
396
|
+
}
|
|
397
|
+
});
|
|
398
|
+
let pluginReferenced = !1;
|
|
399
|
+
return traverse(ast, {
|
|
400
|
+
CallExpression(path) {
|
|
401
|
+
if (pluginReferenced) {
|
|
402
|
+
path.stop();
|
|
403
|
+
return;
|
|
404
|
+
}
|
|
405
|
+
let callee = path.node.callee;
|
|
406
|
+
callee.type === "Identifier" && (pluginIdentifiers.has(callee.name) || callee.name === "storybookTest") && (pluginReferenced = !0, path.stop());
|
|
407
|
+
}
|
|
408
|
+
}), pluginReferenced;
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
export {
|
|
412
|
+
getTemplateConfigDir,
|
|
413
|
+
postInstall,
|
|
414
|
+
isConfigAlreadySetup
|
|
415
|
+
};
|