@aussieljk/forkbook 0.0.0-stage → 0.0.1-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (598) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +77 -2
  3. package/assets/addon-vitest/templates/vitest.config.4.template.ts +36 -0
  4. package/assets/browser/favicon-wrapper.svg +46 -0
  5. package/assets/browser/favicon.svg +1 -0
  6. package/assets/browser/nunito-sans-bold-italic.woff2 +0 -0
  7. package/assets/browser/nunito-sans-bold.woff2 +0 -0
  8. package/assets/browser/nunito-sans-italic.woff2 +0 -0
  9. package/assets/browser/nunito-sans-regular.woff2 +0 -0
  10. package/assets/builder-vite/iframe.html +99 -0
  11. package/assets/create/rendererAssets/.eslintrc.json +16 -0
  12. package/assets/create/rendererAssets/common/Configure.mdx +388 -0
  13. package/assets/create/rendererAssets/common/assets/accessibility.png +0 -0
  14. package/assets/create/rendererAssets/common/assets/accessibility.svg +1 -0
  15. package/assets/create/rendererAssets/common/assets/addon-library.png +0 -0
  16. package/assets/create/rendererAssets/common/assets/assets.png +0 -0
  17. package/assets/create/rendererAssets/common/assets/avif-test-image.avif +0 -0
  18. package/assets/create/rendererAssets/common/assets/context.png +0 -0
  19. package/assets/create/rendererAssets/common/assets/discord.svg +1 -0
  20. package/assets/create/rendererAssets/common/assets/docs.png +0 -0
  21. package/assets/create/rendererAssets/common/assets/figma-plugin.png +0 -0
  22. package/assets/create/rendererAssets/common/assets/github.svg +1 -0
  23. package/assets/create/rendererAssets/common/assets/share.png +0 -0
  24. package/assets/create/rendererAssets/common/assets/styling.png +0 -0
  25. package/assets/create/rendererAssets/common/assets/testing.png +0 -0
  26. package/assets/create/rendererAssets/common/assets/theming.png +0 -0
  27. package/assets/create/rendererAssets/common/assets/tutorials.svg +1 -0
  28. package/assets/create/rendererAssets/common/assets/youtube.svg +1 -0
  29. package/assets/create/rendererAssets/common/button.css +30 -0
  30. package/assets/create/rendererAssets/common/header.css +32 -0
  31. package/assets/create/rendererAssets/common/page.css +68 -0
  32. package/assets/create/templates/react-native/index.expo.js +20 -0
  33. package/assets/create/templates/react-native/index.js +25 -0
  34. package/assets/docs/addon-backgrounds.gif +0 -0
  35. package/assets/docs/addon-controls-args-annotated.png +0 -0
  36. package/assets/docs/addon-controls-args-background-color.png +0 -0
  37. package/assets/docs/addon-controls-args-background-string.png +0 -0
  38. package/assets/docs/addon-controls-args-docs.png +0 -0
  39. package/assets/docs/addon-controls-args-logging.png +0 -0
  40. package/assets/docs/addon-controls-args-no-annotation.png +0 -0
  41. package/assets/docs/addon-controls-args-reflow-slider.png +0 -0
  42. package/assets/docs/addon-controls-args-reflow.png +0 -0
  43. package/assets/docs/addon-controls-args-template.png +0 -0
  44. package/assets/docs/addon-controls-expanded.png +0 -0
  45. package/assets/docs/addon-controls-hero.gif +0 -0
  46. package/assets/docs/addon-controls-install.png +0 -0
  47. package/assets/docs/hero.gif +0 -0
  48. package/assets/docs/highlight.png +0 -0
  49. package/assets/docs/message-reference.png +0 -0
  50. package/assets/docs/viewport.png +0 -0
  51. package/assets/react-native/metro-env.d.ts +69 -0
  52. package/assets/server/addon.tsconfig.json +6 -0
  53. package/assets/server/base-preview-body.html +116 -0
  54. package/assets/server/base-preview-head.html +494 -0
  55. package/assets/server/openBrowser.applescript +94 -0
  56. package/assets/server/template.ejs +87 -0
  57. package/dist/.build-stamp +0 -0
  58. package/dist/_browser-chunks/Color-PCLE2J36.js +1025 -0
  59. package/dist/_browser-chunks/DocsRenderer-JXND3PVQ.js +10 -0
  60. package/dist/_browser-chunks/WithTooltip-XSQFTBMB.js +1619 -0
  61. package/dist/_browser-chunks/chunk-2JDQ35OA.js +247 -0
  62. package/dist/_browser-chunks/chunk-2JT76G3E.js +104 -0
  63. package/dist/_browser-chunks/chunk-2MEPHP35.js +17 -0
  64. package/dist/_browser-chunks/chunk-2SCZVUKW.js +24 -0
  65. package/dist/_browser-chunks/chunk-46Z7NGAS.js +41 -0
  66. package/dist/_browser-chunks/chunk-4ATQOMJB.js +30 -0
  67. package/dist/_browser-chunks/chunk-52CW7FF7.js +49 -0
  68. package/dist/_browser-chunks/chunk-5I7E4GMO.js +62 -0
  69. package/dist/_browser-chunks/chunk-5P4QA6MY.js +20 -0
  70. package/dist/_browser-chunks/chunk-5WMXI5GW.js +816 -0
  71. package/dist/_browser-chunks/chunk-66OCZ54D.js +2604 -0
  72. package/dist/_browser-chunks/chunk-6SXYJQST.js +253 -0
  73. package/dist/_browser-chunks/chunk-AYRF6EJB.js +36 -0
  74. package/dist/_browser-chunks/chunk-B4AUNNU4.js +156 -0
  75. package/dist/_browser-chunks/chunk-BCP2FFXF.js +369 -0
  76. package/dist/_browser-chunks/chunk-C3D4HEFY.js +3396 -0
  77. package/dist/_browser-chunks/chunk-CFAOWGL7.js +43 -0
  78. package/dist/_browser-chunks/chunk-CFWWCCZV.js +223 -0
  79. package/dist/_browser-chunks/chunk-CNED6RYH.js +18 -0
  80. package/dist/_browser-chunks/chunk-DRQKCCAG.js +136 -0
  81. package/dist/_browser-chunks/chunk-ECQ75MKQ.js +0 -0
  82. package/dist/_browser-chunks/chunk-EIYAKDGP.js +302 -0
  83. package/dist/_browser-chunks/chunk-ENKK74N4.js +12 -0
  84. package/dist/_browser-chunks/chunk-FENFYI4X.js +698 -0
  85. package/dist/_browser-chunks/chunk-FJGWSWL5.js +155 -0
  86. package/dist/_browser-chunks/chunk-FVSEPWWX.js +2810 -0
  87. package/dist/_browser-chunks/chunk-GNZY6LOW.js +10116 -0
  88. package/dist/_browser-chunks/chunk-IE4ULIOQ.js +14 -0
  89. package/dist/_browser-chunks/chunk-IMSF75WX.js +42 -0
  90. package/dist/_browser-chunks/chunk-IWQGIXJS.js +14 -0
  91. package/dist/_browser-chunks/chunk-JMC7AIKT.js +108 -0
  92. package/dist/_browser-chunks/chunk-JPUOQJUI.js +8 -0
  93. package/dist/_browser-chunks/chunk-JSBKXXXF.js +218 -0
  94. package/dist/_browser-chunks/chunk-JWSKPMPC.js +73 -0
  95. package/dist/_browser-chunks/chunk-JYVGARBG.js +2943 -0
  96. package/dist/_browser-chunks/chunk-KBK7GKBN.js +35 -0
  97. package/dist/_browser-chunks/chunk-KQ7CRO2B.js +108 -0
  98. package/dist/_browser-chunks/chunk-LAWXTSXK.js +18 -0
  99. package/dist/_browser-chunks/chunk-LE2LTDW3.js +14 -0
  100. package/dist/_browser-chunks/chunk-LEVSOOLQ.js +48 -0
  101. package/dist/_browser-chunks/chunk-LV5PIKV4.js +93 -0
  102. package/dist/_browser-chunks/chunk-MDOL7KML.js +56 -0
  103. package/dist/_browser-chunks/chunk-MFMDGWP6.js +34 -0
  104. package/dist/_browser-chunks/chunk-MLBOOZL4.js +67 -0
  105. package/dist/_browser-chunks/chunk-NQUD4B7H.js +91 -0
  106. package/dist/_browser-chunks/chunk-NULBREPZ.js +43 -0
  107. package/dist/_browser-chunks/chunk-NZMVUW5T.js +7 -0
  108. package/dist/_browser-chunks/chunk-OD6IBQCC.js +117 -0
  109. package/dist/_browser-chunks/chunk-ODVJ3XZJ.js +157 -0
  110. package/dist/_browser-chunks/chunk-OQWFVDIN.js +386 -0
  111. package/dist/_browser-chunks/chunk-OVH3USFB.js +20 -0
  112. package/dist/_browser-chunks/chunk-OZZPSYQR.js +14 -0
  113. package/dist/_browser-chunks/chunk-P6PK47TQ.js +1970 -0
  114. package/dist/_browser-chunks/chunk-PFRNG3UC.js +22 -0
  115. package/dist/_browser-chunks/chunk-PJSMZ27A.js +13 -0
  116. package/dist/_browser-chunks/chunk-QC4HFS6K.js +41 -0
  117. package/dist/_browser-chunks/chunk-QDXFODK4.js +274 -0
  118. package/dist/_browser-chunks/chunk-RBCHTR7C.js +28 -0
  119. package/dist/_browser-chunks/chunk-RMYQ3QN3.js +294 -0
  120. package/dist/_browser-chunks/chunk-RNTIV5CE.js +411 -0
  121. package/dist/_browser-chunks/chunk-RSPAQWVJ.js +80 -0
  122. package/dist/_browser-chunks/chunk-S6TK43XQ.js +836 -0
  123. package/dist/_browser-chunks/chunk-SC67XZST.js +18 -0
  124. package/dist/_browser-chunks/chunk-SFVA4SBT.js +683 -0
  125. package/dist/_browser-chunks/chunk-SZYFOQMT.js +25 -0
  126. package/dist/_browser-chunks/chunk-TBJCJXK4.js +18 -0
  127. package/dist/_browser-chunks/chunk-UMDO3KB7.js +205 -0
  128. package/dist/_browser-chunks/chunk-V2G23FV7.js +11 -0
  129. package/dist/_browser-chunks/chunk-V5M7Q4HT.js +88 -0
  130. package/dist/_browser-chunks/chunk-W5M6NPS3.js +198 -0
  131. package/dist/_browser-chunks/chunk-W7NE2JXW.js +84 -0
  132. package/dist/_browser-chunks/chunk-WGVAAM43.js +1110 -0
  133. package/dist/_browser-chunks/chunk-WHQRNHXD.js +8 -0
  134. package/dist/_browser-chunks/chunk-WOSOWBCA.js +12 -0
  135. package/dist/_browser-chunks/chunk-WZ7KR7SH.js +85 -0
  136. package/dist/_browser-chunks/chunk-YEKO6BHJ.js +20 -0
  137. package/dist/_browser-chunks/chunk-YI2IBIQS.js +7 -0
  138. package/dist/_browser-chunks/chunk-YTIT5NA5.js +1966 -0
  139. package/dist/_browser-chunks/chunk-ZEHRUHTA.js +6 -0
  140. package/dist/_browser-chunks/chunk-ZTQ5MEJ5.js +203 -0
  141. package/dist/_browser-chunks/matchers-YLBYSYAF.js +1263 -0
  142. package/dist/_browser-chunks/react-dom-client-4OHE3QDV.js +9 -0
  143. package/dist/_node-chunks/attached-runtime-I2G4WLJI.js +282 -0
  144. package/dist/_node-chunks/builder-manager-VVHYQXCH.js +1661 -0
  145. package/dist/_node-chunks/chunk-2BUPBPFB.js +82 -0
  146. package/dist/_node-chunks/chunk-2DSIDINN.js +884 -0
  147. package/dist/_node-chunks/chunk-2RU7BKEW.js +23 -0
  148. package/dist/_node-chunks/chunk-34EO2PUT.js +26 -0
  149. package/dist/_node-chunks/chunk-3BKIBF5S.js +3008 -0
  150. package/dist/_node-chunks/chunk-3SDUYDXH.js +98 -0
  151. package/dist/_node-chunks/chunk-3T4ZSNPH.js +662 -0
  152. package/dist/_node-chunks/chunk-3W7F2B7P.js +79 -0
  153. package/dist/_node-chunks/chunk-3Y6AAY5H.js +80 -0
  154. package/dist/_node-chunks/chunk-42UWAGPW.js +1193 -0
  155. package/dist/_node-chunks/chunk-4FEANXWU.js +1986 -0
  156. package/dist/_node-chunks/chunk-5DQFEZEA.js +40 -0
  157. package/dist/_node-chunks/chunk-6KEHV53S.js +1218 -0
  158. package/dist/_node-chunks/chunk-6LMWA44H.js +3837 -0
  159. package/dist/_node-chunks/chunk-6YKBRP72.js +20 -0
  160. package/dist/_node-chunks/chunk-7GUDZVRQ.js +110 -0
  161. package/dist/_node-chunks/chunk-B5J7Q7J4.js +21 -0
  162. package/dist/_node-chunks/chunk-BS2WMZMR.js +90 -0
  163. package/dist/_node-chunks/chunk-BSKFCWQD.js +47 -0
  164. package/dist/_node-chunks/chunk-BXVYT7SB.js +36 -0
  165. package/dist/_node-chunks/chunk-CCOTJ4FC.js +688 -0
  166. package/dist/_node-chunks/chunk-CQKMLL5J.js +33 -0
  167. package/dist/_node-chunks/chunk-CXRU72ET.js +63 -0
  168. package/dist/_node-chunks/chunk-DC7DKR5K.js +20 -0
  169. package/dist/_node-chunks/chunk-DHJFTB4K.js +25 -0
  170. package/dist/_node-chunks/chunk-DUR55DJJ.js +1094 -0
  171. package/dist/_node-chunks/chunk-E6YESGLX.js +7032 -0
  172. package/dist/_node-chunks/chunk-EHUNOMDD.js +52345 -0
  173. package/dist/_node-chunks/chunk-ET7PWEO7.js +298 -0
  174. package/dist/_node-chunks/chunk-EWOX7HPJ.js +20 -0
  175. package/dist/_node-chunks/chunk-F3ZFKBHY.js +844 -0
  176. package/dist/_node-chunks/chunk-FK7KGTV7.js +26 -0
  177. package/dist/_node-chunks/chunk-FPZB5OI7.js +35 -0
  178. package/dist/_node-chunks/chunk-FW2HQUBQ.js +25 -0
  179. package/dist/_node-chunks/chunk-FY6UXW6G.js +11 -0
  180. package/dist/_node-chunks/chunk-GEFQN7K3.js +499 -0
  181. package/dist/_node-chunks/chunk-GRBLDJCR.js +989 -0
  182. package/dist/_node-chunks/chunk-H32DYT6P.js +87 -0
  183. package/dist/_node-chunks/chunk-H4PPVMP5.js +23 -0
  184. package/dist/_node-chunks/chunk-HMP2G23X.js +25 -0
  185. package/dist/_node-chunks/chunk-ICPBH3E7.js +59 -0
  186. package/dist/_node-chunks/chunk-IDEL2J23.js +23 -0
  187. package/dist/_node-chunks/chunk-IK4FGZLR.js +223 -0
  188. package/dist/_node-chunks/chunk-JDXXX6LB.js +68 -0
  189. package/dist/_node-chunks/chunk-JGGFYIG5.js +5468 -0
  190. package/dist/_node-chunks/chunk-JPAZLYJ3.js +29 -0
  191. package/dist/_node-chunks/chunk-JZOO7GGC.js +48 -0
  192. package/dist/_node-chunks/chunk-KISMCCP5.js +4744 -0
  193. package/dist/_node-chunks/chunk-LCK4ZQKG.js +115 -0
  194. package/dist/_node-chunks/chunk-LO56I6E2.js +132 -0
  195. package/dist/_node-chunks/chunk-LXBD4UL4.js +104 -0
  196. package/dist/_node-chunks/chunk-MA24JW6C.js +7162 -0
  197. package/dist/_node-chunks/chunk-MK2KYAI6.js +5414 -0
  198. package/dist/_node-chunks/chunk-NDWKJ4CL.js +2102 -0
  199. package/dist/_node-chunks/chunk-NIBT7XDZ.js +168 -0
  200. package/dist/_node-chunks/chunk-NPO45IMH.js +33 -0
  201. package/dist/_node-chunks/chunk-OISX4AGQ.js +414 -0
  202. package/dist/_node-chunks/chunk-OUW6R7C3.js +26 -0
  203. package/dist/_node-chunks/chunk-OWNFOGTA.js +194 -0
  204. package/dist/_node-chunks/chunk-Q7QNUM5H.js +49 -0
  205. package/dist/_node-chunks/chunk-QEQLR22M.js +1877 -0
  206. package/dist/_node-chunks/chunk-RRN2V55B.js +45 -0
  207. package/dist/_node-chunks/chunk-RWFIFGO5.js +144 -0
  208. package/dist/_node-chunks/chunk-RXNJDRGO.js +209 -0
  209. package/dist/_node-chunks/chunk-RZMQ7S3L.js +92 -0
  210. package/dist/_node-chunks/chunk-SIEXZVCR.js +51 -0
  211. package/dist/_node-chunks/chunk-SLWQNBGO.js +2034 -0
  212. package/dist/_node-chunks/chunk-SVTBJ7Q3.js +35 -0
  213. package/dist/_node-chunks/chunk-SWO5CDYU.js +32 -0
  214. package/dist/_node-chunks/chunk-TD5PLLQG.js +121 -0
  215. package/dist/_node-chunks/chunk-TEQGGSP7.js +33 -0
  216. package/dist/_node-chunks/chunk-TFCEV2XX.js +155 -0
  217. package/dist/_node-chunks/chunk-TFEWM4E3.js +1073 -0
  218. package/dist/_node-chunks/chunk-TINO74G5.js +21 -0
  219. package/dist/_node-chunks/chunk-TNJIXE37.js +40 -0
  220. package/dist/_node-chunks/chunk-TWI4GVH7.js +19 -0
  221. package/dist/_node-chunks/chunk-U5W53R2J.js +1011 -0
  222. package/dist/_node-chunks/chunk-UBOGWBEA.js +148 -0
  223. package/dist/_node-chunks/chunk-UMUBKI6E.js +3787 -0
  224. package/dist/_node-chunks/chunk-UVINFLGY.js +56 -0
  225. package/dist/_node-chunks/chunk-V2DY426G.js +1133 -0
  226. package/dist/_node-chunks/chunk-VLOXOXXE.js +45 -0
  227. package/dist/_node-chunks/chunk-W4OMYLSP.js +1297 -0
  228. package/dist/_node-chunks/chunk-WAXVSN3O.js +18 -0
  229. package/dist/_node-chunks/chunk-WCULS5TP.js +3767 -0
  230. package/dist/_node-chunks/chunk-WNZ2UMFM.js +153 -0
  231. package/dist/_node-chunks/chunk-WZJF2OUH.js +74 -0
  232. package/dist/_node-chunks/chunk-XGIUVY52.js +611 -0
  233. package/dist/_node-chunks/chunk-XHL2LVBM.js +415 -0
  234. package/dist/_node-chunks/chunk-XI6B6P47.js +59 -0
  235. package/dist/_node-chunks/chunk-XLP2ZKXV.js +60 -0
  236. package/dist/_node-chunks/chunk-YCMRA6RX.js +95 -0
  237. package/dist/_node-chunks/chunk-YZFWBA5L.js +2700 -0
  238. package/dist/_node-chunks/chunk-ZMAMXQKP.js +4731 -0
  239. package/dist/_node-chunks/chunk-ZWBCQ4MJ.js +110 -0
  240. package/dist/_node-chunks/dist-VTSTZKUB.js +16 -0
  241. package/dist/_node-chunks/globby-OEMHPBFY.js +2884 -0
  242. package/dist/_node-chunks/jiti-NFX6UU74.js +3848 -0
  243. package/dist/_node-chunks/lib-MDVARD7W.js +366 -0
  244. package/dist/_node-chunks/local-runtime-NTKIN2QT.js +78 -0
  245. package/dist/_node-chunks/mdx-plugin-MWISDWDQ.js +5680 -0
  246. package/dist/_node-chunks/monorepo-LIRFMQXE.js +121 -0
  247. package/dist/_node-chunks/monorepo-optimized-tests-relaxed-limits-no-story-deletion-CPDW4XTW.js +121 -0
  248. package/dist/_node-chunks/optimized-tests-HDOLR3EY.js +22 -0
  249. package/dist/_node-chunks/pattern-copy-play-EKHIUAU2.js +807 -0
  250. package/dist/_node-chunks/postinstallAddon-GYGMWDL6.js +20 -0
  251. package/dist/_node-chunks/rehype-external-links-BUN3HUCO.js +121 -0
  252. package/dist/_node-chunks/rehype-slug-PLADX223.js +52 -0
  253. package/dist/_node-chunks/relaxed-limits-GBHW6KIQ.js +117 -0
  254. package/dist/_node-chunks/run-KDTIZNSY.js +103 -0
  255. package/dist/_node-chunks/run-NL66VTNR.js +4532 -0
  256. package/dist/_node-chunks/session-id-KIIVOQLR.js +23 -0
  257. package/dist/_node-chunks/setup-MGC7BQO6.js +278 -0
  258. package/dist/_node-chunks/vitest.config.4.template-JH2THZFG.js +54 -0
  259. package/dist/actions/decorator.d.ts +7 -0
  260. package/dist/actions/decorator.js +43 -0
  261. package/dist/actions/index.d.ts +67 -0
  262. package/dist/actions/index.js +28 -0
  263. package/dist/addon-a11y/index.d.ts +52 -0
  264. package/dist/addon-a11y/index.js +16 -0
  265. package/dist/addon-a11y/manager.js +1429 -0
  266. package/dist/addon-a11y/preset.js +18 -0
  267. package/dist/addon-a11y/preview.d.ts +17 -0
  268. package/dist/addon-a11y/preview.js +15 -0
  269. package/dist/addon-docs/blocks.d.ts +1061 -0
  270. package/dist/addon-docs/blocks.js +2461 -0
  271. package/dist/addon-docs/index.d.ts +236 -0
  272. package/dist/addon-docs/index.js +16 -0
  273. package/dist/addon-docs/manager.js +90 -0
  274. package/dist/addon-docs/mdx-react-shim.d.ts +1 -0
  275. package/dist/addon-docs/mdx-react-shim.js +2 -0
  276. package/dist/addon-docs/preset.js +378 -0
  277. package/dist/addon-docs/preview.d.ts +4 -0
  278. package/dist/addon-docs/preview.js +7 -0
  279. package/dist/addon-links/index.d.ts +22 -0
  280. package/dist/addon-links/index.js +20 -0
  281. package/dist/addon-links/manager.js +14 -0
  282. package/dist/addon-links/preview.d.ts +6 -0
  283. package/dist/addon-links/preview.js +9 -0
  284. package/dist/addon-links/react/index.d.ts +25 -0
  285. package/dist/addon-links/react/index.js +52 -0
  286. package/dist/addon-mcp/preset.js +1345 -0
  287. package/dist/addon-mcp/preview.js +29 -0
  288. package/dist/addon-mcp/tools/preview-stories/preview-stories-app-script.js +1153 -0
  289. package/dist/addon-ondevice-actions/index.d.ts +4 -0
  290. package/dist/addon-ondevice-actions/index.js +7 -0
  291. package/dist/addon-ondevice-actions/register.js +7 -0
  292. package/dist/addon-ondevice-controls/index.d.ts +6 -0
  293. package/dist/addon-ondevice-controls/index.js +14 -0
  294. package/dist/addon-ondevice-controls/register.js +10 -0
  295. package/dist/addon-pseudo-states/index.d.ts +35 -0
  296. package/dist/addon-pseudo-states/index.js +15 -0
  297. package/dist/addon-pseudo-states/manager.js +53 -0
  298. package/dist/addon-pseudo-states/preview.d.ts +9 -0
  299. package/dist/addon-pseudo-states/preview.js +10 -0
  300. package/dist/addon-themes/index.d.ts +80 -0
  301. package/dist/addon-themes/index.js +104 -0
  302. package/dist/addon-themes/manager.js +97 -0
  303. package/dist/addon-themes/postinstall.js +33 -0
  304. package/dist/addon-themes/preview.d.ts +6 -0
  305. package/dist/addon-themes/preview.js +8 -0
  306. package/dist/addon-vitest/constants.d.ts +132 -0
  307. package/dist/addon-vitest/constants.js +66 -0
  308. package/dist/addon-vitest/index.d.ts +4 -0
  309. package/dist/addon-vitest/index.js +8 -0
  310. package/dist/addon-vitest/manager.js +665 -0
  311. package/dist/addon-vitest/node/coverage-reporter.js +1284 -0
  312. package/dist/addon-vitest/node/vitest.js +674 -0
  313. package/dist/addon-vitest/postinstall.js +24 -0
  314. package/dist/addon-vitest/preset.js +943 -0
  315. package/dist/addon-vitest/vitest-plugin/global-setup.js +162 -0
  316. package/dist/addon-vitest/vitest-plugin/index.d.ts +56 -0
  317. package/dist/addon-vitest/vitest-plugin/index.js +463 -0
  318. package/dist/addon-vitest/vitest-plugin/setup-file-with-project-annotations.js +9 -0
  319. package/dist/addon-vitest/vitest-plugin/setup-file.browser.4.js +20 -0
  320. package/dist/addon-vitest/vitest-plugin/setup-file.js +50 -0
  321. package/dist/addon-vitest/vitest-plugin/test-utils.js +128 -0
  322. package/dist/babel/index.d.ts +2301 -0
  323. package/dist/babel/index.js +61 -0
  324. package/dist/backgrounds/index.d.ts +6 -0
  325. package/dist/backgrounds/index.js +15 -0
  326. package/dist/bin/core.js +1705 -0
  327. package/dist/bin/dispatcher.js +43 -0
  328. package/dist/bin/loader.js +115 -0
  329. package/dist/builder-vite/index.d.ts +50 -0
  330. package/dist/builder-vite/index.js +245 -0
  331. package/dist/builder-vite/preset.js +27 -0
  332. package/dist/channels/index.d.ts +2 -0
  333. package/dist/channels/index.js +352 -0
  334. package/dist/chunk-B2t1tGRh.d.ts +284 -0
  335. package/dist/chunk-BCoJQE-f.d.ts +602 -0
  336. package/dist/chunk-BGkgZp-H.d.ts +214 -0
  337. package/dist/chunk-BTVrWliM.d.ts +115 -0
  338. package/dist/chunk-BXLImeLy.d.ts +197 -0
  339. package/dist/chunk-BfBzpgct.d.ts +916 -0
  340. package/dist/chunk-Bpi2tz-6.d.ts +511 -0
  341. package/dist/chunk-BxWufQms.d.ts +142 -0
  342. package/dist/chunk-C-bavsOH.d.ts +34 -0
  343. package/dist/chunk-C2p5r3Vt.d.ts +13001 -0
  344. package/dist/chunk-C6PAgHLT.d.ts +12 -0
  345. package/dist/chunk-CMeX4WRe.d.ts +179 -0
  346. package/dist/chunk-Ct9xd6IM.d.ts +65 -0
  347. package/dist/chunk-CwQKNaYL.d.ts +15 -0
  348. package/dist/chunk-D7DwV41f.d.ts +3622 -0
  349. package/dist/chunk-DEVFdzxR.d.ts +253 -0
  350. package/dist/chunk-DaVb55-_.d.ts +124 -0
  351. package/dist/chunk-DgRNfmj_.d.ts +40 -0
  352. package/dist/chunk-DoIGKY33.d.ts +666 -0
  353. package/dist/chunk-Dr3R0DXk.d.ts +40 -0
  354. package/dist/chunk-DtHByo32.d.ts +55 -0
  355. package/dist/chunk-Dw1z1Pki.d.ts +933 -0
  356. package/dist/chunk-DzuY9DXg.d.ts +79 -0
  357. package/dist/chunk-FjDVzZTj.d.ts +62 -0
  358. package/dist/chunk-Kt1tW-D1.d.ts +59 -0
  359. package/dist/chunk-XP8oHzpE.d.ts +6 -0
  360. package/dist/chunk-gCX81nOr.d.ts +61 -0
  361. package/dist/chunk-pcFXCimE.d.ts +741 -0
  362. package/dist/cli/index.d.ts +1174 -0
  363. package/dist/cli/index.js +5613 -0
  364. package/dist/cli/skills/content/index.d.ts +72 -0
  365. package/dist/cli/skills/content/index.js +335 -0
  366. package/dist/cli/tools/sdk/child-host.d.ts +61 -0
  367. package/dist/cli/tools/sdk/child-host.js +131 -0
  368. package/dist/cli/tools/sdk/index.d.ts +137 -0
  369. package/dist/cli/tools/sdk/index.js +44 -0
  370. package/dist/cli-commands/bin/index.js +25 -0
  371. package/dist/client-logger/index.d.ts +31 -0
  372. package/dist/client-logger/index.js +63 -0
  373. package/dist/common/index.d.ts +1103 -0
  374. package/dist/common/index.js +364 -0
  375. package/dist/components/index.d.ts +1924 -0
  376. package/dist/components/index.js +13759 -0
  377. package/dist/core-events/index.d.ts +155 -0
  378. package/dist/core-events/index.js +136 -0
  379. package/dist/core-server/index.d.ts +2200 -0
  380. package/dist/core-server/index.js +4165 -0
  381. package/dist/core-server/presets/common-manager.css +170 -0
  382. package/dist/core-server/presets/common-manager.js +4168 -0
  383. package/dist/core-server/presets/common-override-preset.js +81 -0
  384. package/dist/core-server/presets/common-preset.js +2187 -0
  385. package/dist/create/bin/index.js +23 -0
  386. package/dist/create/index.js +25 -0
  387. package/dist/csf/csf-utils.d.ts +2 -0
  388. package/dist/csf/csf-utils.js +19 -0
  389. package/dist/csf/index.d.ts +7 -0
  390. package/dist/csf/index.js +2142 -0
  391. package/dist/csf-tools/index.d.ts +1157 -0
  392. package/dist/csf-tools/index.js +736 -0
  393. package/dist/docs-tools/index.d.ts +197 -0
  394. package/dist/docs-tools/index.js +61 -0
  395. package/dist/highlight/index.d.ts +10 -0
  396. package/dist/highlight/index.js +15 -0
  397. package/dist/instrumenter/index.d.ts +113 -0
  398. package/dist/instrumenter/index.js +2595 -0
  399. package/dist/manager/_manager-chunks/globals-runtime-8HkdnU2F.js +6144 -0
  400. package/dist/manager/_manager-chunks/globals-runtime-BIKBO23x.js +3389 -0
  401. package/dist/manager/_manager-chunks/globals-runtime-BdGkqNEt.js +45 -0
  402. package/dist/manager/_manager-chunks/globals-runtime-BmphMP6z.js +1190 -0
  403. package/dist/manager/_manager-chunks/globals-runtime-BvM-NY2g.js +13307 -0
  404. package/dist/manager/_manager-chunks/globals-runtime-C02fvgcd.js +9243 -0
  405. package/dist/manager/_manager-chunks/globals-runtime-DkAPXCvc.js +9766 -0
  406. package/dist/manager/_manager-chunks/globals-runtime-DpNYC-qi.js +5564 -0
  407. package/dist/manager/_manager-chunks/globals-runtime-DtcOnYHR.js +5357 -0
  408. package/dist/manager/_manager-chunks/globals-runtime-DwFqpqya.js +722 -0
  409. package/dist/manager/_manager-chunks/globals-runtime-FC201B7s.js +6837 -0
  410. package/dist/manager/_manager-chunks/globals-runtime-Rp_zjGnh.js +121 -0
  411. package/dist/manager/_manager-chunks/globals-runtime-ZHrQFa3-.js +10463 -0
  412. package/dist/manager/_manager-chunks/globals-runtime-eLPTIfX-.js +7759 -0
  413. package/dist/manager/_manager-chunks/globals-runtime-qKvCZHFY.js +4468 -0
  414. package/dist/manager/_manager-chunks/globals-runtime-sGpNlIJ1.js +5102 -0
  415. package/dist/manager/_manager-chunks/runtime-B1L9TH89.js +452 -0
  416. package/dist/manager/_manager-chunks/runtime-BK0zF7FN.js +22 -0
  417. package/dist/manager/_manager-chunks/runtime-BhkT2CXl.js +1408 -0
  418. package/dist/manager/_manager-chunks/runtime-Bly6WJLN.js +998 -0
  419. package/dist/manager/_manager-chunks/runtime-D0UOWx0U.js +979 -0
  420. package/dist/manager/_manager-chunks/runtime-D94Vq3oR.js +4014 -0
  421. package/dist/manager/_manager-chunks/runtime-DMig8mT7.js +77 -0
  422. package/dist/manager/_manager-chunks/runtime-EITvVbkG.js +46 -0
  423. package/dist/manager/_manager-chunks/runtime-cp5pazY2.js +8936 -0
  424. package/dist/manager/_manager-chunks/runtime-eDVAYF7N.js +6860 -0
  425. package/dist/manager/_manager-chunks/runtime-i-PDAHLR.js +2493 -0
  426. package/dist/manager/globals-runtime.js +2 -0
  427. package/dist/manager/globals.d.ts +23 -0
  428. package/dist/manager/globals.js +26 -0
  429. package/dist/manager/manager-stores.d.ts +2 -0
  430. package/dist/manager/manager-stores.js +19 -0
  431. package/dist/manager/runtime.js +2 -0
  432. package/dist/manager-api/index.d.ts +2 -0
  433. package/dist/manager-api/index.js +3257 -0
  434. package/dist/manager-errors.d.ts +89 -0
  435. package/dist/manager-errors.js +20 -0
  436. package/dist/mcp/index.d.ts +270 -0
  437. package/dist/mcp/index.js +305 -0
  438. package/dist/mocking-utils/index.d.ts +689 -0
  439. package/dist/mocking-utils/index.js +521 -0
  440. package/dist/mocking-utils/mocker-runtime.js +1254 -0
  441. package/dist/nextjs-vite/config/preview.js +3 -0
  442. package/dist/nextjs-vite/export-mocks/cache/index.d.ts +25 -0
  443. package/dist/nextjs-vite/export-mocks/cache/index.js +29 -0
  444. package/dist/nextjs-vite/export-mocks/headers/index.d.ts +37 -0
  445. package/dist/nextjs-vite/export-mocks/headers/index.js +54 -0
  446. package/dist/nextjs-vite/export-mocks/link/index.d.ts +9 -0
  447. package/dist/nextjs-vite/export-mocks/link/index.js +59 -0
  448. package/dist/nextjs-vite/export-mocks/navigation/index.d.ts +28 -0
  449. package/dist/nextjs-vite/export-mocks/navigation/index.js +58 -0
  450. package/dist/nextjs-vite/export-mocks/router/index.d.ts +34 -0
  451. package/dist/nextjs-vite/export-mocks/router/index.js +63 -0
  452. package/dist/nextjs-vite/index.d.ts +92 -0
  453. package/dist/nextjs-vite/index.js +58 -0
  454. package/dist/nextjs-vite/node/index.d.ts +6 -0
  455. package/dist/nextjs-vite/node/index.js +20 -0
  456. package/dist/nextjs-vite/preset.js +648 -0
  457. package/dist/nextjs-vite/preview.d.ts +20 -0
  458. package/dist/nextjs-vite/preview.js +11 -0
  459. package/dist/nextjs-vite/vite-plugin/index.d.ts +6 -0
  460. package/dist/nextjs-vite/vite-plugin/index.js +19 -0
  461. package/dist/nextjs-vite-plugin/index.d.ts +28 -0
  462. package/dist/nextjs-vite-plugin/index.js +923 -0
  463. package/dist/nextjs-vite-plugin/mocks/storybook.global.js +29 -0
  464. package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-context.js +8 -0
  465. package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-default-loader.js +23 -0
  466. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-image.js +28 -0
  467. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-legacy-image.js +17 -0
  468. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/cache/index.js +29 -0
  469. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/dynamic/index.js +40 -0
  470. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/headers/index.js +55 -0
  471. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/link/index.js +63 -0
  472. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/navigation/index.js +71 -0
  473. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/router/index.js +74 -0
  474. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/rsc/server-only.js +7 -0
  475. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/safe-stable-stringify/index.js +13 -0
  476. package/dist/nextjs-vite-plugin/plugins/next-mocks/compatibility/draft-mode.compat.js +7 -0
  477. package/dist/node-logger/index.d.ts +495 -0
  478. package/dist/node-logger/index.js +42 -0
  479. package/dist/oxc-parser/index.d.ts +99 -0
  480. package/dist/oxc-parser/index.js +275 -0
  481. package/dist/oxc-parser/worker.js +37 -0
  482. package/dist/preview/_chunks/runtime-BIzIdDbb.js +10263 -0
  483. package/dist/preview/_chunks/runtime-BTPtVY1p.js +1102 -0
  484. package/dist/preview/_chunks/runtime-BZSnICCg.js +8484 -0
  485. package/dist/preview/_chunks/runtime-BdGkqNEt.js +45 -0
  486. package/dist/preview/_chunks/runtime-BwSxqk3t.js +63 -0
  487. package/dist/preview/_chunks/runtime-CqHxptiK.js +6143 -0
  488. package/dist/preview/_chunks/runtime-CsV4HZPV.js +5064 -0
  489. package/dist/preview/_chunks/runtime-CxZK_Ln3.js +284 -0
  490. package/dist/preview/_chunks/runtime-DZToXfvO.js +9767 -0
  491. package/dist/preview/_chunks/runtime-DrTjJkPY.js +3872 -0
  492. package/dist/preview/_chunks/runtime-DuHdxMFA.js +387 -0
  493. package/dist/preview/_chunks/runtime-iXdo8CR8.js +3635 -0
  494. package/dist/preview/_chunks/runtime-q3wt0e_N.js +6838 -0
  495. package/dist/preview/globals.d.ts +16 -0
  496. package/dist/preview/globals.js +20 -0
  497. package/dist/preview/runtime.js +6 -0
  498. package/dist/preview-api/index.d.ts +4 -0
  499. package/dist/preview-api/index.js +147 -0
  500. package/dist/preview-errors.d.ts +186 -0
  501. package/dist/preview-errors.js +56 -0
  502. package/dist/react/docgen/docgen-worker.js +38 -0
  503. package/dist/react/entry-preview-argtypes.js +9 -0
  504. package/dist/react/entry-preview-docs.js +12 -0
  505. package/dist/react/entry-preview-rsc.js +11 -0
  506. package/dist/react/entry-preview.js +21 -0
  507. package/dist/react/index.d.ts +119 -0
  508. package/dist/react/index.js +26 -0
  509. package/dist/react/preset.js +301 -0
  510. package/dist/react/preview.d.ts +2 -0
  511. package/dist/react/preview.js +11 -0
  512. package/dist/react-native/bin/get-stories.js +34 -0
  513. package/dist/react-native/index.d.ts +160 -0
  514. package/dist/react-native/index.js +1547 -0
  515. package/dist/react-native/metro/node.d.ts +83 -0
  516. package/dist/react-native/metro/node.js +21 -0
  517. package/dist/react-native/metro/withStorybook.d.ts +2269 -0
  518. package/dist/react-native/metro/withStorybook.js +138 -0
  519. package/dist/react-native/preview.d.ts +6 -0
  520. package/dist/react-native/preview.js +20 -0
  521. package/dist/react-native/scripts/generate.d.ts +22 -0
  522. package/dist/react-native/scripts/generate.js +18 -0
  523. package/dist/react-native/stub.js +20 -0
  524. package/dist/react-native-theming/index.d.ts +175 -0
  525. package/dist/react-native-theming/index.js +2591 -0
  526. package/dist/react-native-ui/index.d.ts +130 -0
  527. package/dist/react-native-ui/index.js +1448 -0
  528. package/dist/react-native-ui-common/index.d.ts +230 -0
  529. package/dist/react-native-ui-common/index.js +514 -0
  530. package/dist/react-vite/index.d.ts +4 -0
  531. package/dist/react-vite/index.js +8 -0
  532. package/dist/react-vite/node/index.d.ts +6 -0
  533. package/dist/react-vite/node/index.js +20 -0
  534. package/dist/react-vite/preset.d.ts +6 -0
  535. package/dist/react-vite/preset.js +21 -0
  536. package/dist/router/index.d.ts +141 -0
  537. package/dist/router/index.js +1217 -0
  538. package/dist/server-errors.d.ts +2 -0
  539. package/dist/server-errors.js +149 -0
  540. package/dist/shared/open-service/index.d.ts +3 -0
  541. package/dist/shared/open-service/index.js +115 -0
  542. package/dist/shared/open-service/services/docgen/worker/docgen-worker.js +75 -0
  543. package/dist/shared/open-service/toolsets/docs/public.d.ts +1296 -0
  544. package/dist/shared/open-service/toolsets/docs/public.js +991 -0
  545. package/dist/telemetry/index.d.ts +314 -0
  546. package/dist/telemetry/index.js +103 -0
  547. package/dist/test/index.d.ts +158 -0
  548. package/dist/test/index.js +19421 -0
  549. package/dist/theming/create.d.ts +15 -0
  550. package/dist/theming/create.js +11 -0
  551. package/dist/theming/index.d.ts +54 -0
  552. package/dist/theming/index.js +511 -0
  553. package/dist/types/index.d.ts +2 -0
  554. package/dist/types/index.js +48 -0
  555. package/dist/viewport/index.d.ts +275 -0
  556. package/dist/viewport/index.js +21 -0
  557. package/package.json +1054 -4
  558. package/template/nextjs-vite/cli/.eslintrc.json +6 -0
  559. package/template/nextjs-vite/cli/js/Button.jsx +42 -0
  560. package/template/nextjs-vite/cli/js/Button.stories.js +49 -0
  561. package/template/nextjs-vite/cli/js/Configure.mdx +470 -0
  562. package/template/nextjs-vite/cli/js/Header.jsx +58 -0
  563. package/template/nextjs-vite/cli/js/Header.stories.js +30 -0
  564. package/template/nextjs-vite/cli/js/Page.jsx +68 -0
  565. package/template/nextjs-vite/cli/js/Page.stories.js +28 -0
  566. package/template/nextjs-vite/cli/ts/Button.stories.ts +54 -0
  567. package/template/nextjs-vite/cli/ts/Button.tsx +39 -0
  568. package/template/nextjs-vite/cli/ts/Configure.mdx +446 -0
  569. package/template/nextjs-vite/cli/ts/Header.stories.ts +34 -0
  570. package/template/nextjs-vite/cli/ts/Header.tsx +54 -0
  571. package/template/nextjs-vite/cli/ts/Page.stories.ts +33 -0
  572. package/template/nextjs-vite/cli/ts/Page.tsx +73 -0
  573. package/template/react/cli/.eslintrc.json +5 -0
  574. package/template/react/cli/js/Button.jsx +39 -0
  575. package/template/react/cli/js/Button.stories.js +49 -0
  576. package/template/react/cli/js/Header.jsx +56 -0
  577. package/template/react/cli/js/Header.stories.js +29 -0
  578. package/template/react/cli/js/Page.jsx +69 -0
  579. package/template/react/cli/js/Page.stories.js +28 -0
  580. package/template/react/cli/ts/Button.stories.ts +54 -0
  581. package/template/react/cli/ts/Button.tsx +37 -0
  582. package/template/react/cli/ts/Header.stories.ts +34 -0
  583. package/template/react/cli/ts/Header.tsx +56 -0
  584. package/template/react/cli/ts/Page.stories.ts +33 -0
  585. package/template/react/cli/ts/Page.tsx +73 -0
  586. package/template/react-vite/cli/.eslintrc.json +5 -0
  587. package/template/react-vite/cli/js/Button.jsx +39 -0
  588. package/template/react-vite/cli/js/Button.stories.js +49 -0
  589. package/template/react-vite/cli/js/Header.jsx +56 -0
  590. package/template/react-vite/cli/js/Header.stories.js +29 -0
  591. package/template/react-vite/cli/js/Page.jsx +69 -0
  592. package/template/react-vite/cli/js/Page.stories.js +28 -0
  593. package/template/react-vite/cli/ts/Button.stories.ts +54 -0
  594. package/template/react-vite/cli/ts/Button.tsx +37 -0
  595. package/template/react-vite/cli/ts/Header.stories.ts +34 -0
  596. package/template/react-vite/cli/ts/Header.tsx +56 -0
  597. package/template/react-vite/cli/ts/Page.stories.ts +33 -0
  598. package/template/react-vite/cli/ts/Page.tsx +73 -0
@@ -0,0 +1,162 @@
1
+ import CJS_COMPAT_NODE_URL_ro17f80mg6k from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_ro17f80mg6k from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_ro17f80mg6k from "node:module";
4
+
5
+ var __filename = CJS_COMPAT_NODE_URL_ro17f80mg6k.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_ro17f80mg6k.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_ro17f80mg6k.createRequire(import.meta.url);
8
+
9
+ // ------------------------------------------------------------
10
+ // end of CJS compatibility banner, injected by Forkbook's esbuild configuration
11
+ // ------------------------------------------------------------
12
+ import {
13
+ __commonJS,
14
+ __require,
15
+ __toESM
16
+ } from "../../_node-chunks/chunk-CXRU72ET.js";
17
+
18
+ // ../../node_modules/tree-kill/index.js
19
+ var require_tree_kill = __commonJS({
20
+ "../../node_modules/tree-kill/index.js"(exports, module) {
21
+ "use strict";
22
+ var childProcess = __require("child_process"), spawn2 = childProcess.spawn, exec = childProcess.exec;
23
+ module.exports = function(pid, signal, callback) {
24
+ if (typeof signal == "function" && callback === void 0 && (callback = signal, signal = void 0), pid = parseInt(pid), Number.isNaN(pid)) {
25
+ if (callback)
26
+ return callback(new Error("pid must be a number"));
27
+ throw new Error("pid must be a number");
28
+ }
29
+ var tree = {}, pidsToProcess = {};
30
+ switch (tree[pid] = [], pidsToProcess[pid] = 1, process.platform) {
31
+ case "win32":
32
+ exec("taskkill /pid " + pid + " /T /F", callback);
33
+ break;
34
+ case "darwin":
35
+ buildProcessTree(pid, tree, pidsToProcess, function(parentPid) {
36
+ return spawn2("pgrep", ["-P", parentPid]);
37
+ }, function() {
38
+ killAll(tree, signal, callback);
39
+ });
40
+ break;
41
+ // case 'sunos':
42
+ // buildProcessTreeSunOS(pid, tree, pidsToProcess, function () {
43
+ // killAll(tree, signal, callback);
44
+ // });
45
+ // break;
46
+ default:
47
+ buildProcessTree(pid, tree, pidsToProcess, function(parentPid) {
48
+ return spawn2("ps", ["-o", "pid", "--no-headers", "--ppid", parentPid]);
49
+ }, function() {
50
+ killAll(tree, signal, callback);
51
+ });
52
+ break;
53
+ }
54
+ };
55
+ function killAll(tree, signal, callback) {
56
+ var killed = {};
57
+ try {
58
+ Object.keys(tree).forEach(function(pid) {
59
+ tree[pid].forEach(function(pidpid) {
60
+ killed[pidpid] || (killPid(pidpid, signal), killed[pidpid] = 1);
61
+ }), killed[pid] || (killPid(pid, signal), killed[pid] = 1);
62
+ });
63
+ } catch (err) {
64
+ if (callback)
65
+ return callback(err);
66
+ throw err;
67
+ }
68
+ if (callback)
69
+ return callback();
70
+ }
71
+ function killPid(pid, signal) {
72
+ try {
73
+ process.kill(parseInt(pid, 10), signal);
74
+ } catch (err) {
75
+ if (err.code !== "ESRCH") throw err;
76
+ }
77
+ }
78
+ function buildProcessTree(parentPid, tree, pidsToProcess, spawnChildProcessesList, cb) {
79
+ var ps = spawnChildProcessesList(parentPid), allData = "";
80
+ ps.stdout.on("data", function(data) {
81
+ var data = data.toString("ascii");
82
+ allData += data;
83
+ });
84
+ var onClose = function(code) {
85
+ if (delete pidsToProcess[parentPid], code != 0) {
86
+ Object.keys(pidsToProcess).length == 0 && cb();
87
+ return;
88
+ }
89
+ allData.match(/\d+/g).forEach(function(pid) {
90
+ pid = parseInt(pid, 10), tree[parentPid].push(pid), tree[pid] = [], pidsToProcess[pid] = 1, buildProcessTree(pid, tree, pidsToProcess, spawnChildProcessesList, cb);
91
+ });
92
+ };
93
+ ps.on("close", onClose);
94
+ }
95
+ }
96
+ });
97
+
98
+ // src/addon-vitest/vitest-plugin/global-setup.ts
99
+ var import_tree_kill = __toESM(require_tree_kill(), 1);
100
+ import { spawn } from "node:child_process";
101
+ import { logger } from "@aussieljk/forkbook/internal/node-logger";
102
+ var storybookProcess = null, getIsVitestStandaloneRun = () => {
103
+ try {
104
+ return (import.meta.env || process?.env).STORYBOOK !== "true";
105
+ } catch {
106
+ return !1;
107
+ }
108
+ }, isVitestStandaloneRun = getIsVitestStandaloneRun(), checkStorybookRunning = async (storybookUrl) => {
109
+ try {
110
+ return (await fetch(`${storybookUrl}/iframe.html`, {
111
+ method: "HEAD",
112
+ signal: AbortSignal.timeout(5e3)
113
+ })).ok;
114
+ } catch (error) {
115
+ return logger.verbose(
116
+ `Failed to get response from ${storybookUrl}: ${error instanceof Error ? error.message : String(error)}`
117
+ ), !1;
118
+ }
119
+ }, startStorybookIfNotRunning = async () => {
120
+ let storybookScript = process.env.__STORYBOOK_SCRIPT__, storybookUrl = process.env.__STORYBOOK_URL__;
121
+ if (await checkStorybookRunning(storybookUrl)) {
122
+ logger.verbose("Forkbook is already running");
123
+ return;
124
+ }
125
+ logger.verbose(`Starting Forkbook with command: ${storybookScript}`);
126
+ try {
127
+ storybookProcess = spawn(storybookScript, {
128
+ shell: !0,
129
+ stdio: process.env.DEBUG === "storybook" ? "pipe" : "ignore",
130
+ cwd: process.cwd()
131
+ }), storybookProcess.on("error", (error) => {
132
+ throw logger.verbose("Failed to start Forkbook:" + error.message), error;
133
+ });
134
+ } catch (error) {
135
+ throw logger.verbose("Failed to start Forkbook:" + error.message), error;
136
+ }
137
+ }, setup = async ({ config }) => {
138
+ config.watch && isVitestStandaloneRun && await startStorybookIfNotRunning();
139
+ }, teardown = async () => {
140
+ storybookProcess && (logger.verbose("Stopping Forkbook process"), await new Promise((resolve, reject) => {
141
+ if (storybookProcess?.pid) {
142
+ let pid = storybookProcess.pid;
143
+ (0, import_tree_kill.default)(pid, "SIGTERM", (error) => {
144
+ if (error) {
145
+ if (process.platform === "win32" && "code" in error && error.code === 128) {
146
+ logger.verbose(
147
+ `Forkbook process (pid ${pid}) already exited; treating teardown as successful (code ${error.code}: ${error.message})`
148
+ ), resolve();
149
+ return;
150
+ }
151
+ logger.error("Failed to stop Forkbook process:"), reject(error);
152
+ return;
153
+ }
154
+ resolve();
155
+ });
156
+ }
157
+ }));
158
+ };
159
+ export {
160
+ setup,
161
+ teardown
162
+ };
@@ -0,0 +1,56 @@
1
+ import { Plugin } from "vitest/config";
2
+
3
+ //#region .dts-emit/code/core/src/addon-vitest/vitest-plugin/types.d.ts
4
+ type UserOptions = {
5
+ /**
6
+ * The directory where the Forkbook configuration is located, relative to the vitest
7
+ * configuration file. If not provided, the plugin will use '.forkbook' in the current working
8
+ * directory.
9
+ *
10
+ * @default '.forkbook'
11
+ */
12
+ configDir?: string;
13
+ /**
14
+ * Optional script to run Forkbook. If provided, Vitest will start Forkbook using this script
15
+ * when ran in watch mode.
16
+ *
17
+ * @default undefined
18
+ */
19
+ storybookScript?: string;
20
+ /**
21
+ * The URL where Forkbook is hosted. This is used to provide a link to the story in the test
22
+ * output on failures.
23
+ *
24
+ * @default 'http://localhost:6006'
25
+ */
26
+ storybookUrl?: string; /** Tags to include, exclude, or skip. These tags are defined as annotations in your story or meta. */
27
+ tags?: {
28
+ include?: string[];
29
+ exclude?: string[];
30
+ skip?: string[];
31
+ };
32
+ /**
33
+ * Whether to disable addon docs features while running tests.
34
+ *
35
+ * Most users don't need addon docs for tests, the only scenario where you might need it is if you
36
+ * need to read and parse MDX files as part of rendering your components.
37
+ *
38
+ * @default true
39
+ */
40
+ disableAddonDocs?: boolean;
41
+ /**
42
+ * Globals applied to every story run by this project, merged under the values Forkbook sets
43
+ * internally. Use it to pin a toolbar global for the whole run — most usefully to test a
44
+ * specific theme: define one Vitest project per theme, each with a different value, e.g.
45
+ * `storybookTest({ initialGlobals: { theme: 'dark' } })`. Equivalent to `initialGlobals` in
46
+ * `.forkbook/preview`, but per project instead of global.
47
+ *
48
+ * @default {}
49
+ */
50
+ initialGlobals?: Record<string, unknown>;
51
+ };
52
+ //#endregion
53
+ //#region .dts-emit/code/core/src/addon-vitest/vitest-plugin/index.d.ts
54
+ declare const storybookTest: (options?: UserOptions) => Promise<Plugin[]>;
55
+ //#endregion
56
+ export { storybookTest as default, storybookTest };
@@ -0,0 +1,463 @@
1
+ import CJS_COMPAT_NODE_URL_ro17f80mg6k from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_ro17f80mg6k from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_ro17f80mg6k from "node:module";
4
+
5
+ var __filename = CJS_COMPAT_NODE_URL_ro17f80mg6k.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_ro17f80mg6k.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_ro17f80mg6k.createRequire(import.meta.url);
8
+
9
+ // ------------------------------------------------------------
10
+ // end of CJS compatibility banner, injected by Forkbook's esbuild configuration
11
+ // ------------------------------------------------------------
12
+ import {
13
+ require_micromatch
14
+ } from "../../_node-chunks/chunk-QEQLR22M.js";
15
+ import {
16
+ FORKBOOK_CORE_GHOST_STORIES_PROVIDE_KEY,
17
+ FORKBOOK_CORE_RENDER_ANALYSIS_PROVIDE_KEY,
18
+ FORKBOOK_TEST_FEATURES_PROVIDE_KEY,
19
+ FORKBOOK_TEST_INITIAL_GLOBALS_PROVIDE_KEY
20
+ } from "../../_node-chunks/chunk-H32DYT6P.js";
21
+ import {
22
+ withoutVitePlugins
23
+ } from "../../_node-chunks/chunk-H4PPVMP5.js";
24
+ import {
25
+ getAiSetupRunId
26
+ } from "../../_node-chunks/chunk-NPO45IMH.js";
27
+ import {
28
+ require_build
29
+ } from "../../_node-chunks/chunk-XGIUVY52.js";
30
+ import {
31
+ require_picocolors
32
+ } from "../../_node-chunks/chunk-2BUPBPFB.js";
33
+ import {
34
+ __toESM
35
+ } from "../../_node-chunks/chunk-CXRU72ET.js";
36
+
37
+ // src/addon-vitest/vitest-plugin/index.ts
38
+ var import_micromatch = __toESM(require_micromatch(), 1), import_picocolors = __toESM(require_picocolors(), 1), import_sirv = __toESM(require_build(), 1);
39
+ import { fileURLToPath } from "node:url";
40
+ import { mergeConfig } from "vitest/config";
41
+ import {
42
+ DEFAULT_FILES_PATTERN,
43
+ HandledError,
44
+ defaultConfigDir,
45
+ getInterpretedFile,
46
+ normalizeStories,
47
+ optionalEnvToBoolean,
48
+ resolvePathInStorybookCache as resolvePathInStorybookCache2,
49
+ validateConfigurationFiles
50
+ } from "@aussieljk/forkbook/internal/common";
51
+ import {
52
+ StoryIndexGenerator,
53
+ Tag,
54
+ experimental_loadStorybook,
55
+ mapStaticDir
56
+ } from "@aussieljk/forkbook/internal/core-server";
57
+ import {
58
+ componentTransform,
59
+ readConfig,
60
+ vitestTransform
61
+ } from "@aussieljk/forkbook/internal/csf-tools";
62
+ import { MainFileMissingError } from "@aussieljk/forkbook/internal/server-errors";
63
+ import {
64
+ detectAgent,
65
+ isTelemetryModuleEnabled,
66
+ isWithinInitialSession,
67
+ oneWayHash,
68
+ telemetry as telemetry2,
69
+ setTelemetryEnabled
70
+ } from "@aussieljk/forkbook/internal/telemetry";
71
+ import { join, normalize, relative, resolve, sep } from "pathe";
72
+ import path from "pathe";
73
+ import { dedent } from "ts-dedent";
74
+
75
+ // src/addon-vitest/vitest-plugin/agent-telemetry-reporter.ts
76
+ import { analyzeTestResults, toStoryTestResult } from "@aussieljk/forkbook/internal/core-server";
77
+ import { isExampleStoryId, telemetry } from "@aussieljk/forkbook/internal/telemetry";
78
+
79
+ // src/addon-vitest/vitest-plugin/agent-story-history-cache.ts
80
+ import {
81
+ createFileSystemCache,
82
+ resolvePathInStorybookCache
83
+ } from "@aussieljk/forkbook/internal/common";
84
+ var CACHE_KEY = "agent-self-healing-story-history", historyCache = createFileSystemCache({
85
+ basePath: resolvePathInStorybookCache("agent-self-healing"),
86
+ ns: "storybook"
87
+ });
88
+ async function readStoryHistory() {
89
+ return await historyCache.get(CACHE_KEY) ?? {};
90
+ }
91
+ async function mergeAndWriteStoryHistory(results) {
92
+ let history = await readStoryHistory(), now = Date.now();
93
+ for (let result of results) {
94
+ let existing = history[result.storyId];
95
+ (!existing || existing.timestamp <= now) && (history[result.storyId] = { ...result, timestamp: now });
96
+ }
97
+ return await historyCache.set(CACHE_KEY, history), Object.values(history).map(({ timestamp, ...rest }) => rest);
98
+ }
99
+
100
+ // src/addon-vitest/vitest-plugin/agent-telemetry-reporter.ts
101
+ var AgentTelemetryReporter = class {
102
+ constructor(options) {
103
+ this.testResults = [];
104
+ this.startTime = Date.now();
105
+ this.configDir = options.configDir, this.agent = options.agent;
106
+ }
107
+ onInit(ctx) {
108
+ this.ctx = ctx;
109
+ }
110
+ onTestRunStart() {
111
+ this.startTime = Date.now();
112
+ }
113
+ onTestCaseResult(testCase) {
114
+ let { storyId, reports } = testCase.meta();
115
+ if (!storyId || isExampleStoryId(storyId))
116
+ return;
117
+ let testResult = testCase.result(), result = toStoryTestResult({
118
+ storyId,
119
+ statusRaw: testResult.state,
120
+ reports,
121
+ errors: testResult.errors
122
+ });
123
+ result && this.testResults.push(result);
124
+ }
125
+ async onTestRunEnd(testModules, unhandledErrors) {
126
+ let cumulativeResults = await mergeAndWriteStoryHistory(this.testResults), analysis = analyzeTestResults(this.testResults, cumulativeResults), duration = Date.now() - this.startTime, testModulesErrors = testModules.flatMap((t) => t.errors()), unhandledErrorCount = unhandledErrors.length + testModulesErrors.length, runId = await getAiSetupRunId(this.configDir);
127
+ telemetry(
128
+ "ai-setup-self-healing-scoring",
129
+ {
130
+ agent: this.agent,
131
+ analysis,
132
+ unhandledErrorCount,
133
+ duration,
134
+ watch: this.ctx.config.watch,
135
+ runId
136
+ },
137
+ { configDir: this.configDir, stripMetadata: !0 }
138
+ ), this.testResults = [];
139
+ }
140
+ };
141
+
142
+ // src/addon-vitest/vitest-plugin/stack-frames.ts
143
+ var INTERNAL_FRAME_PATTERNS = [
144
+ /[\\/]storybook[\\/]dist[\\/]/,
145
+ /[\\/]@storybook[\\/][^\\/]+[\\/]dist[\\/]/,
146
+ /[\\/]deps[\\/]@?storybook[@_]/
147
+ ];
148
+ function isStorybookInternalFrame(file) {
149
+ return !!file && INTERNAL_FRAME_PATTERNS.some((pattern) => pattern.test(file));
150
+ }
151
+
152
+ // src/addon-vitest/vitest-plugin/index.ts
153
+ var WORKING_DIR = process.cwd(), defaultOptions = {
154
+ storybookScript: void 0,
155
+ configDir: resolve(join(WORKING_DIR, defaultConfigDir(WORKING_DIR))),
156
+ storybookUrl: "http://localhost:6006",
157
+ disableAddonDocs: !0,
158
+ initialGlobals: {}
159
+ }, extractTagsFromPreview = async (configDir) => {
160
+ let previewConfigPath = getInterpretedFile(join(resolve(configDir), "preview"));
161
+ if (!previewConfigPath)
162
+ return [];
163
+ let previewConfig = await readConfig(previewConfigPath), tags = previewConfig.getValue(["tags"]) ?? [];
164
+ if (previewConfig.mutationDiagnostics.some(({ code }) => code === "unsupported-value") || !Array.isArray(tags) || !tags.every((tag) => typeof tag == "string"))
165
+ throw new HandledError("Preview tags must be a static array of strings");
166
+ return tags;
167
+ }, getStoryGlobsAndFiles = async (presets, directories) => {
168
+ let stories = await presets.apply("stories", []), normalizedStories = normalizeStories(stories, {
169
+ configDir: directories.configDir,
170
+ workingDir: directories.workingDir
171
+ }), matchingStoryFiles = await StoryIndexGenerator.findMatchingFilesForSpecifiers(
172
+ normalizedStories,
173
+ directories.workingDir
174
+ );
175
+ return {
176
+ storiesGlobs: stories,
177
+ storiesFiles: StoryIndexGenerator.storyFileNames(
178
+ new Map(matchingStoryFiles.map(([specifier, cache]) => [specifier, cache]))
179
+ )
180
+ };
181
+ }, mdxStubPlugin = {
182
+ name: "storybook:stub-mdx-plugin",
183
+ enforce: "pre",
184
+ resolveId(id) {
185
+ return id.endsWith(".mdx") ? id : null;
186
+ },
187
+ load(id) {
188
+ return id.endsWith(".mdx") ? "export default {};" : null;
189
+ }
190
+ }, getComponentTestPaths = () => {
191
+ let envPaths = process.env.FORKBOOK_COMPONENT_PATHS;
192
+ return envPaths ? envPaths.split(";").filter(Boolean) : [];
193
+ }, createComponentTestTransformPlugin = (presets, configDir) => {
194
+ let storybookComponentTestPaths = getComponentTestPaths();
195
+ return {
196
+ name: "storybook:component-test-transform-plugin",
197
+ transform: {
198
+ order: "pre",
199
+ async handler(code, id) {
200
+ if (!optionalEnvToBoolean(process.env.VITEST) || storybookComponentTestPaths.length === 0)
201
+ return code;
202
+ let resolvedId = path.resolve(id);
203
+ return storybookComponentTestPaths.some(
204
+ (testPath) => resolvedId === testPath || resolvedId.startsWith(testPath + path.sep) || resolvedId.endsWith(testPath)
205
+ ) ? (await componentTransform({
206
+ code,
207
+ fileName: id,
208
+ getComponentArgTypes: async ({ componentName, fileName }) => presets.apply("internal_getArgTypesData", null, {
209
+ componentFilePath: fileName,
210
+ componentExportName: componentName,
211
+ configDir
212
+ })
213
+ })).code : code;
214
+ }
215
+ }
216
+ };
217
+ }, toApiPermissions = (api) => api && typeof api == "object" ? api : {}, getUserApiPermissions = (testConfig) => {
218
+ let api = toApiPermissions(testConfig?.api), browserApi = toApiPermissions(testConfig?.browser?.api);
219
+ return {
220
+ allowWrite: api.allowWrite ?? browserApi.allowWrite,
221
+ allowExec: api.allowExec ?? browserApi.allowExec
222
+ };
223
+ }, storybookTest = async (options) => {
224
+ if (!optionalEnvToBoolean(process.env.VITEST))
225
+ return [];
226
+ let finalOptions = {
227
+ ...defaultOptions,
228
+ ...options,
229
+ configDir: options?.configDir ? resolve(WORKING_DIR, options.configDir) : defaultOptions.configDir,
230
+ tags: {
231
+ include: options?.tags?.include ?? [Tag.TEST],
232
+ exclude: options?.tags?.exclude ?? [],
233
+ skip: options?.tags?.skip ?? []
234
+ }
235
+ };
236
+ optionalEnvToBoolean(process.env.DEBUG) && (finalOptions.debug = !0), process.env.__STORYBOOK_URL__ = finalOptions.storybookUrl, process.env.__STORYBOOK_SCRIPT__ = finalOptions.storybookScript;
237
+ let isVitestStorybook = optionalEnvToBoolean(process.env.VITEST_STORYBOOK), directories = {
238
+ configDir: finalOptions.configDir,
239
+ workingDir: WORKING_DIR
240
+ }, { presets } = await experimental_loadStorybook({
241
+ configDir: finalOptions.configDir,
242
+ packageJson: {}
243
+ }), stories = await presets.apply("stories", []), commonConfig = { root: resolve(finalOptions.configDir, "..") }, [
244
+ corePlugins,
245
+ { storiesGlobs },
246
+ framework,
247
+ viteConfigFromStorybook,
248
+ staticDirs,
249
+ previewLevelTags,
250
+ core,
251
+ features
252
+ ] = await Promise.all([
253
+ presets.apply("viteCorePlugins", []),
254
+ getStoryGlobsAndFiles(presets, directories),
255
+ presets.apply("framework", void 0),
256
+ presets.apply("viteFinal", commonConfig),
257
+ presets.apply("staticDirs", []),
258
+ extractTagsFromPreview(finalOptions.configDir),
259
+ presets.apply("core"),
260
+ presets.apply("features", {})
261
+ ]);
262
+ await setTelemetryEnabled(!core?.disableTelemetry);
263
+ let pluginsToIgnore = finalOptions.disableAddonDocs ? ["storybook:package-deduplication", "storybook:mdx-plugin"] : [], plugins = [
264
+ ...corePlugins,
265
+ ...await withoutVitePlugins(viteConfigFromStorybook.plugins ?? [], pluginsToIgnore)
266
+ ];
267
+ finalOptions.disableAddonDocs && plugins.push(mdxStubPlugin);
268
+ let agent, withinAgenticSetupSession = !1, userApiPermissions = {}, storybookTestPlugin = {
269
+ name: "vite-plugin-storybook-test",
270
+ async transformIndexHtml(html) {
271
+ let [frameworkOptions, headHtmlSnippet, bodyHtmlSnippet] = await Promise.all([
272
+ presets.apply("frameworkOptions"),
273
+ presets.apply("previewHead"),
274
+ presets.apply("previewBody")
275
+ ]);
276
+ return html.replace(
277
+ "</head>",
278
+ `<script>window.FRAMEWORK_OPTIONS = ${JSON.stringify(frameworkOptions)};</script>${headHtmlSnippet ?? ""}</head>`
279
+ ).replace("<body>", `<body>${bodyHtmlSnippet ?? ""}`);
280
+ },
281
+ async config(nonMutableInputConfig, { mode }) {
282
+ isTelemetryModuleEnabled() && (agent = detectAgent(), withinAgenticSetupSession = !!agent && await isWithinInitialSession("ai-setup")), mode && (process.env.BUILD_TARGET = mode);
283
+ try {
284
+ await validateConfigurationFiles(finalOptions.configDir);
285
+ } catch {
286
+ throw new MainFileMissingError({
287
+ location: finalOptions.configDir,
288
+ source: "vitest"
289
+ });
290
+ }
291
+ let frameworkName = typeof framework == "string" ? framework : framework.name, testConfig = nonMutableInputConfig.test;
292
+ finalOptions.vitestRoot = testConfig?.dir || testConfig?.root || viteConfigFromStorybook.root || nonMutableInputConfig.root || process.cwd();
293
+ let includeStories = stories.map((story) => {
294
+ let storyPath;
295
+ return typeof story == "string" ? storyPath = story : storyPath = `${story.directory}/${story.files ?? DEFAULT_FILES_PATTERN}`, join(finalOptions.configDir, storyPath);
296
+ }).map((story) => relative(finalOptions.vitestRoot, story));
297
+ finalOptions.includeStories = includeStories;
298
+ let projectId = oneWayHash(finalOptions.configDir);
299
+ userApiPermissions = getUserApiPermissions(testConfig);
300
+ let baseConfig = {
301
+ cacheDir: resolvePathInStorybookCache2("sb-vitest", projectId),
302
+ test: {
303
+ expect: { requireAssertions: !1 },
304
+ onStackTrace: (error, frame) => isStorybookInternalFrame(frame.file) ? !1 : nonMutableInputConfig.test?.onStackTrace?.(error, frame) ?? !0,
305
+ setupFiles: [
306
+ "@aussieljk/forkbook/addon-vitest/internal/setup-file",
307
+ "@aussieljk/forkbook/addon-vitest/internal/setup-file-with-project-annotations",
308
+ // if the existing setupFiles is a string, we have to include it otherwise we're overwriting it
309
+ typeof nonMutableInputConfig.test?.setupFiles == "string" && nonMutableInputConfig.test?.setupFiles
310
+ ].filter(Boolean),
311
+ ...finalOptions.storybookScript ? {
312
+ globalSetup: [
313
+ fileURLToPath(
314
+ import.meta.resolve("@aussieljk/forkbook/addon-vitest/internal/global-setup")
315
+ )
316
+ ]
317
+ } : {},
318
+ env: {
319
+ /**
320
+ * We do this late, because we need vitest's --mode to be available and set to
321
+ * BUILD_MODE. Unfortunately, the dependencies we use to load .env files can only be
322
+ * configured using that environment variable. We need it to be synced up with the mode
323
+ * that vitest is running in, or risk leaking envs from the wrong file.
324
+ *
325
+ * @see https://github.com/storybookjs/storybook/issues/33101
326
+ */
327
+ ...await presets.apply("env", {}),
328
+ // To be accessed by the setup file
329
+ __STORYBOOK_URL__: finalOptions.storybookUrl,
330
+ VITEST_STORYBOOK: isVitestStorybook ? "true" : "false",
331
+ __VITEST_INCLUDE_TAGS__: finalOptions.tags.include.join(","),
332
+ __VITEST_EXCLUDE_TAGS__: finalOptions.tags.exclude.join(","),
333
+ __VITEST_SKIP_TAGS__: finalOptions.tags.skip.join(",")
334
+ },
335
+ provide: {
336
+ [FORKBOOK_TEST_FEATURES_PROVIDE_KEY]: features,
337
+ [FORKBOOK_CORE_GHOST_STORIES_PROVIDE_KEY]: !!process.env.FORKBOOK_COMPONENT_PATHS,
338
+ [FORKBOOK_CORE_RENDER_ANALYSIS_PROVIDE_KEY]: !!process.env.FORKBOOK_COMPONENT_PATHS || withinAgenticSetupSession,
339
+ [FORKBOOK_TEST_INITIAL_GLOBALS_PROVIDE_KEY]: finalOptions.initialGlobals
340
+ },
341
+ include: [...includeStories, ...getComponentTestPaths()],
342
+ exclude: [
343
+ ...nonMutableInputConfig.test?.exclude ?? [],
344
+ join(relative(finalOptions.vitestRoot, process.cwd()), "**/*.mdx").replaceAll(sep, "/")
345
+ ],
346
+ browser: {
347
+ // if there is a test.browser config AND test.browser.screenshotFailures is not explicitly set, we set it to false
348
+ ...nonMutableInputConfig.test?.browser && nonMutableInputConfig.test.browser.screenshotFailures === void 0 ? {
349
+ screenshotFailures: !1
350
+ } : {},
351
+ // Inject the cursor reset command we use to prevent accidental hover states when running
352
+ // Forkbook tests in Chromium on Linux. There is a known race condition / special code path
353
+ // in Chromium causing it to sometimes apply :hover to the element under the mouse cursor even
354
+ // when there was no mouse movement.
355
+ commands: {
356
+ async resetMousePosition(ctx) {
357
+ ctx.provider.name === "playwright" && await (await ctx.frame()).page().mouse.move(-1e3, -1e3);
358
+ }
359
+ }
360
+ }
361
+ },
362
+ optimizeDeps: {
363
+ include: [
364
+ "@aussieljk/forkbook/addon-vitest/internal/setup-file",
365
+ "@aussieljk/forkbook/addon-vitest/internal/setup-file.browser.4",
366
+ "@aussieljk/forkbook/addon-vitest/internal/global-setup",
367
+ "@aussieljk/forkbook/addon-vitest/internal/test-utils",
368
+ "@aussieljk/forkbook/preview-api",
369
+ // imported by the setup files; without pinning, its CJS-only deps (via
370
+ // @testing-library/dom) reach the browser raw on hoisted node_modules layouts
371
+ "@aussieljk/forkbook/test",
372
+ ...frameworkName?.includes("react") || frameworkName?.includes("nextjs") ? ["react-dom/test-utils"] : []
373
+ ]
374
+ },
375
+ define: {
376
+ FEATURES: JSON.stringify(features)
377
+ }
378
+ }, config = mergeConfig(baseConfig, viteConfigFromStorybook);
379
+ return (nonMutableInputConfig.test?.include?.length ?? 0) > 0 && (nonMutableInputConfig.test.include = [], console.log(
380
+ import_picocolors.default.yellow(dedent`
381
+ Warning: Starting in Forkbook 8.5.0-alpha.18, the "test.include" option in Vitest is discouraged in favor of just using the "stories" field in your Forkbook configuration.
382
+
383
+ The values you passed to "test.include" will be ignored, please remove them from your Vitest configuration where the Forkbook plugin is applied.
384
+
385
+ More info: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#addon-test-indexing-behavior-of-storybookaddon-test-is-changed
386
+ `)
387
+ )), config;
388
+ },
389
+ async configureVitest(context) {
390
+ if (context.vitest.config.coverage.exclude.push("storybook-static"), context.project.config.browser?.enabled === !0) {
391
+ let browserSetupFile = fileURLToPath(
392
+ import.meta.resolve("@aussieljk/forkbook/addon-vitest/internal/setup-file.browser.4")
393
+ );
394
+ context.project.config.setupFiles.includes(browserSetupFile) || context.project.config.setupFiles.push(browserSetupFile);
395
+ let { api, browser } = context.project.config;
396
+ for (let target of [api, browser.api])
397
+ target && (target.allowWrite = userApiPermissions.allowWrite ?? !1, target.allowExec = userApiPermissions.allowExec ?? !1);
398
+ }
399
+ telemetry2(
400
+ "test-run",
401
+ {
402
+ runner: "vitest",
403
+ watch: context.vitest.config.watch,
404
+ coverage: !!context.vitest.config.coverage?.enabled
405
+ },
406
+ { configDir: finalOptions.configDir }
407
+ ), isTelemetryModuleEnabled() && agent && withinAgenticSetupSession && !process.env.FORKBOOK_INTERNAL_TEST_RUN && context.vitest.config.reporters.push(
408
+ new AgentTelemetryReporter({
409
+ configDir: finalOptions.configDir,
410
+ agent
411
+ })
412
+ );
413
+ },
414
+ async configureServer(server) {
415
+ if (staticDirs)
416
+ for (let staticDir of staticDirs)
417
+ try {
418
+ let { staticPath, targetEndpoint } = mapStaticDir(staticDir, directories.configDir);
419
+ server.middlewares.use(
420
+ targetEndpoint,
421
+ (0, import_sirv.default)(staticPath, {
422
+ dev: !0,
423
+ etag: !0,
424
+ extensions: []
425
+ })
426
+ );
427
+ } catch (e) {
428
+ console.warn(e);
429
+ }
430
+ },
431
+ async transform(code, id) {
432
+ let relativeId = relative(finalOptions.vitestRoot, id);
433
+ if ((0, import_micromatch.match)([relativeId], finalOptions.includeStories).length > 0)
434
+ return vitestTransform({
435
+ code,
436
+ fileName: id,
437
+ configDir: finalOptions.configDir,
438
+ tagsFilter: finalOptions.tags,
439
+ stories: storiesGlobs,
440
+ previewLevelTags
441
+ });
442
+ }
443
+ };
444
+ if (getComponentTestPaths().length > 0 && plugins.push(createComponentTestTransformPlugin(presets, finalOptions.configDir)), plugins.push(storybookTestPlugin), isVitestStorybook) {
445
+ let projectName = `storybook:${normalize(finalOptions.configDir)}`;
446
+ plugins.push({
447
+ name: "storybook:workspace-name-override",
448
+ config: {
449
+ order: "pre",
450
+ handler: () => ({
451
+ test: {
452
+ name: projectName
453
+ }
454
+ })
455
+ }
456
+ });
457
+ }
458
+ return plugins;
459
+ }, vitest_plugin_default = storybookTest;
460
+ export {
461
+ vitest_plugin_default as default,
462
+ storybookTest
463
+ };