@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,665 @@
1
+ import {
2
+ ADDON_ID2,
3
+ DOCUMENTATION_FATAL_ERROR_LINK,
4
+ FORKBOOK_ADDON_TEST_CHANNEL,
5
+ FULL_RUN_TRIGGERS,
6
+ PANEL_ID,
7
+ STATUS_TYPE_ID_A11Y,
8
+ STATUS_TYPE_ID_COMPONENT_TEST,
9
+ TEST_PROVIDER_ID,
10
+ storeOptions
11
+ } from "../_browser-chunks/chunk-MLBOOZL4.js";
12
+ import {
13
+ ADDON_ID,
14
+ PANEL_ID as PANEL_ID2
15
+ } from "../_browser-chunks/chunk-OZZPSYQR.js";
16
+ import {
17
+ clsx
18
+ } from "../_browser-chunks/chunk-CNED6RYH.js";
19
+ import {
20
+ isEqual
21
+ } from "../_browser-chunks/chunk-B4AUNNU4.js";
22
+ import "../_browser-chunks/chunk-NZMVUW5T.js";
23
+ import "../_browser-chunks/chunk-JWSKPMPC.js";
24
+ import "../_browser-chunks/chunk-JPUOQJUI.js";
25
+ import "../_browser-chunks/chunk-IMSF75WX.js";
26
+
27
+ // src/addon-vitest/manager.tsx
28
+ import { useState as useState3 } from "react";
29
+ import { Addon_TypesEnum, SupportedBuilder } from "@aussieljk/forkbook/internal/types";
30
+
31
+ // src/addon-vitest/manager-store.ts
32
+ import {
33
+ internal_UniversalStore,
34
+ experimental_getStatusStore,
35
+ experimental_getTestProviderStore
36
+ } from "@aussieljk/forkbook/manager-api";
37
+ var store = internal_UniversalStore.create({
38
+ ...storeOptions,
39
+ leader: globalThis.CONFIG_TYPE === "PRODUCTION"
40
+ }), componentTestStatusStore = experimental_getStatusStore(STATUS_TYPE_ID_COMPONENT_TEST), a11yStatusStore = experimental_getStatusStore(STATUS_TYPE_ID_A11Y), testProviderStore = experimental_getTestProviderStore(ADDON_ID2);
41
+
42
+ // src/addon-vitest/manager.tsx
43
+ import { Tag, addons as addons2 } from "@aussieljk/forkbook/manager-api";
44
+
45
+ // src/addon-vitest/components/GlobalErrorModal.tsx
46
+ import React, { useContext } from "react";
47
+ import { Button, Modal } from "@aussieljk/forkbook/internal/components";
48
+ import { SyncIcon } from "@storybook/icons";
49
+ import { useStorybookApi } from "@aussieljk/forkbook/manager-api";
50
+
51
+ // storybook-css:/Users/ljk/p/repos/storybook/code/core/src/addon-vitest/components/GlobalErrorModal.module.css
52
+ var id = "core/src/addon-vitest/components/GlobalErrorModal.module.css";
53
+ if (typeof document < "u" && !document.querySelector(`style[data-sb-css="${id}"]`)) {
54
+ let style = document.createElement("style");
55
+ style.setAttribute("data-sb-css", id), style.textContent = ".sb-NOTFvq-bar{justify-content:space-between;align-items:center;padding:6px 6px 6px 20px;display:flex}.sb-NOTFvq-actionBar{justify-content:space-between;align-items:center;display:flex}.sb-NOTFvq-title{font-size:var(--sb-size-s2);font-weight:var(--sb-weight-bold)}.sb-NOTFvq-stackTrace{white-space:pre-wrap;word-wrap:break-word;user-select:text;max-height:60vh;font-family:var(--sb-font-mono);border-top:1px solid var(--sb-app-border-color);border-radius:0;margin:0;padding:20px;font-size:12px;overflow:auto}.sb-NOTFvq-troubleshootLink{color:var(--sb-color-default-text)}", document.head.appendChild(style);
56
+ }
57
+ var GlobalErrorModal_default = { stackTrace: "sb-NOTFvq-stackTrace", title: "sb-NOTFvq-title", bar: "sb-NOTFvq-bar", actionBar: "sb-NOTFvq-actionBar", troubleshootLink: "sb-NOTFvq-troubleshootLink" };
58
+
59
+ // src/addon-vitest/components/GlobalErrorModal.tsx
60
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
61
+ var GlobalErrorContext = React.createContext({
62
+ isModalOpen: !1,
63
+ setModalOpen: void 0
64
+ });
65
+ function ErrorCause({ error }) {
66
+ return error ? jsxs("div", { children: [
67
+ jsxs("h4", { children: [
68
+ "Caused by: ",
69
+ error.name || "Error",
70
+ ": ",
71
+ error.message
72
+ ] }),
73
+ error.stack && jsx("pre", { children: error.stack }),
74
+ error.cause && jsx(ErrorCause, { error: error.cause })
75
+ ] }) : null;
76
+ }
77
+ function GlobalErrorModal({ onRerun, storeState }) {
78
+ let api = useStorybookApi(), { isModalOpen, setModalOpen } = useContext(GlobalErrorContext), troubleshootURL = api.getDocsUrl({
79
+ subpath: DOCUMENTATION_FATAL_ERROR_LINK,
80
+ versioned: !0,
81
+ renderer: !0
82
+ }), {
83
+ fatalError,
84
+ currentRun: { unhandledErrors }
85
+ } = storeState, content = fatalError ? jsxs(Fragment, { children: [
86
+ jsx("p", { children: fatalError.error.name || "Error" }),
87
+ fatalError.message && jsx("p", { children: fatalError.message }),
88
+ fatalError.error.message && jsx("p", { children: fatalError.error.message }),
89
+ fatalError.error.stack && jsx("p", { children: fatalError.error.stack }),
90
+ fatalError.error.cause && jsx(ErrorCause, { error: fatalError.error.cause })
91
+ ] }) : unhandledErrors.length > 0 ? jsx("ol", { children: unhandledErrors.map((error) => jsxs("li", { children: [
92
+ jsxs("p", { children: [
93
+ error.name,
94
+ ": ",
95
+ error.message
96
+ ] }),
97
+ error.VITEST_TEST_PATH && jsxs("p", { children: [
98
+ 'This error originated in "',
99
+ jsx("b", { children: error.VITEST_TEST_PATH }),
100
+ `". It doesn't mean the error was thrown inside the file itself, but while it was running.`
101
+ ] }),
102
+ error.VITEST_TEST_NAME && jsxs(Fragment, { children: [
103
+ jsxs("p", { children: [
104
+ `The latest test that might've caused the error is "`,
105
+ jsx("b", { children: error.VITEST_TEST_NAME }),
106
+ '". It might mean one of the following:'
107
+ ] }),
108
+ jsxs("ul", { children: [
109
+ jsx("li", { children: "The error was thrown, while Vitest was running this test." }),
110
+ jsx("li", { children: "If the error occurred after the test had been completed, this was the last documented test before it was thrown." })
111
+ ] })
112
+ ] }),
113
+ error.stacks && jsxs(Fragment, { children: [
114
+ jsx("p", { children: jsx("b", { children: "Stacks:" }) }),
115
+ jsx("ul", { children: error.stacks.map((stack) => jsxs("li", { children: [
116
+ stack.file,
117
+ ":",
118
+ stack.line,
119
+ ":",
120
+ stack.column,
121
+ " - ",
122
+ stack.method || "unknown method"
123
+ ] }, stack.file + stack.line + stack.column)) })
124
+ ] }),
125
+ error.stack && jsx("p", { children: error.stack }),
126
+ error.cause ? jsx(ErrorCause, { error: error.cause }) : null
127
+ ] }, error.name + error.message)) }) : null;
128
+ return jsxs(Modal, { ariaLabel: "Forkbook Test Error Details", onOpenChange: setModalOpen, open: isModalOpen, children: [
129
+ jsxs("div", { className: GlobalErrorModal_default.bar, children: [
130
+ jsx(Modal.Title, { className: GlobalErrorModal_default.title, children: "Forkbook Test Error Details" }),
131
+ jsxs("div", { className: GlobalErrorModal_default.actionBar, children: [
132
+ jsxs(Button, { onClick: onRerun, variant: "ghost", ariaLabel: !1, children: [
133
+ jsx(SyncIcon, {}),
134
+ "Rerun"
135
+ ] }),
136
+ jsx(Button, { variant: "ghost", ariaLabel: !1, asChild: !0, children: jsx("a", { target: "_blank", href: troubleshootURL, rel: "noreferrer", children: "Troubleshoot" }) }),
137
+ jsx(Modal.Close, {})
138
+ ] })
139
+ ] }),
140
+ jsxs("pre", { className: GlobalErrorModal_default.stackTrace, children: [
141
+ content,
142
+ jsx("br", {}),
143
+ jsx("br", {}),
144
+ "Troubleshoot:",
145
+ " ",
146
+ jsx("a", { className: GlobalErrorModal_default.troubleshootLink, target: "_blank", href: troubleshootURL, children: troubleshootURL })
147
+ ] })
148
+ ] });
149
+ }
150
+
151
+ // src/addon-vitest/use-test-provider-state.ts
152
+ import { useCallback, useEffect, useMemo, useRef, useState } from "react";
153
+ import {
154
+ experimental_useStatusStore,
155
+ experimental_useTestProviderStore,
156
+ internal_useUniversalStore
157
+ } from "@aussieljk/forkbook/manager-api";
158
+ var statusValueToStoryIds = (allStatuses, typeId, storyIds) => {
159
+ let statusValueToStoryIdsMap = {
160
+ "status-value:pending": [],
161
+ "status-value:success": [],
162
+ "status-value:error": [],
163
+ "status-value:warning": [],
164
+ "status-value:unknown": []
165
+ };
166
+ return (storyIds ? storyIds.map((storyId) => allStatuses[storyId]).filter(Boolean) : Object.values(allStatuses)).forEach((statusByTypeId) => {
167
+ let status = statusByTypeId[typeId];
168
+ status && statusValueToStoryIdsMap[status.value].push(status.storyId);
169
+ }), statusValueToStoryIdsMap;
170
+ }, useTestProvider = (api, entryId) => {
171
+ let testProviderState = experimental_useTestProviderStore((s) => s[ADDON_ID2]), [storeState, setStoreState] = internal_useUniversalStore(store), [isSettingsUpdated, setIsSettingsUpdated] = useState(!1), settingsUpdatedTimeoutRef = useRef();
172
+ useEffect(() => {
173
+ let unsubscribe = store.onStateChange((state, previousState) => {
174
+ isEqual(state.config, previousState.config) || (testProviderStore.settingsChanged(), setIsSettingsUpdated(!0), clearTimeout(settingsUpdatedTimeoutRef.current), settingsUpdatedTimeoutRef.current = setTimeout(() => {
175
+ setIsSettingsUpdated(!1);
176
+ }, 1e3));
177
+ });
178
+ return () => {
179
+ unsubscribe(), clearTimeout(settingsUpdatedTimeoutRef.current);
180
+ };
181
+ }, []);
182
+ let storyIds = useMemo(
183
+ () => entryId ? api.findAllLeafStoryIds(entryId) : void 0,
184
+ [entryId, api]
185
+ ), componentTestStatusSelector = useCallback(
186
+ (allStatuses) => statusValueToStoryIds(allStatuses, STATUS_TYPE_ID_COMPONENT_TEST, storyIds),
187
+ [storyIds]
188
+ ), componentTestStatusValueToStoryIds = experimental_useStatusStore(
189
+ componentTestStatusSelector
190
+ ), a11yStatusValueToStoryIdsSelector = useCallback(
191
+ (allStatuses) => statusValueToStoryIds(allStatuses, STATUS_TYPE_ID_A11Y, storyIds),
192
+ [storyIds]
193
+ ), a11yStatusValueToStoryIds = experimental_useStatusStore(a11yStatusValueToStoryIdsSelector);
194
+ return {
195
+ storeState,
196
+ setStoreState,
197
+ testProviderState,
198
+ componentTestStatusValueToStoryIds,
199
+ a11yStatusValueToStoryIds,
200
+ isSettingsUpdated
201
+ };
202
+ };
203
+
204
+ // src/addon-vitest/components/TestProviderRender.tsx
205
+ import { useEffect as useEffect3, useRef as useRef2 } from "react";
206
+ import {
207
+ ActionList,
208
+ Button as Button2,
209
+ Form,
210
+ ProgressSpinner,
211
+ ToggleButton,
212
+ announce
213
+ } from "@aussieljk/forkbook/internal/components";
214
+ import { EyeIcon, InfoIcon, PlayHollowIcon, StopAltIcon } from "@storybook/icons";
215
+ import { addons } from "@aussieljk/forkbook/manager-api";
216
+
217
+ // src/addon-vitest/components/Description.tsx
218
+ import React2 from "react";
219
+ import { Link as LinkComponent } from "@aussieljk/forkbook/internal/components";
220
+
221
+ // src/addon-vitest/components/RelativeTime.tsx
222
+ import { useEffect as useEffect2, useState as useState2 } from "react";
223
+ var RelativeTime = ({ timestamp }) => {
224
+ let [timeAgo, setTimeAgo] = useState2(null);
225
+ if (useEffect2(() => {
226
+ if (timestamp) {
227
+ setTimeAgo(Date.now() - timestamp);
228
+ let interval = setInterval(() => setTimeAgo(Date.now() - timestamp), 1e4);
229
+ return () => clearInterval(interval);
230
+ }
231
+ }, [timestamp]), timeAgo === null)
232
+ return null;
233
+ let seconds = Math.round(timeAgo / 1e3);
234
+ if (seconds < 60)
235
+ return "just now";
236
+ let minutes = Math.floor(seconds / 60);
237
+ if (minutes < 60)
238
+ return minutes === 1 ? "a minute ago" : `${minutes} minutes ago`;
239
+ let hours = Math.floor(minutes / 60);
240
+ if (hours < 24)
241
+ return hours === 1 ? "an hour ago" : `${hours} hours ago`;
242
+ let days = Math.floor(hours / 24);
243
+ return days === 1 ? "yesterday" : `${days} days ago`;
244
+ };
245
+
246
+ // storybook-css:/Users/ljk/p/repos/storybook/code/core/src/addon-vitest/components/Description.module.css
247
+ var id2 = "core/src/addon-vitest/components/Description.module.css";
248
+ if (typeof document < "u" && !document.querySelector(`style[data-sb-css="${id2}"]`)) {
249
+ let style = document.createElement("style");
250
+ style.setAttribute("data-sb-css", id2), style.textContent = ".sb-eMLqba-wrapper{white-space:nowrap;text-overflow:ellipsis;font-size:var(--sb-size-s1);color:var(--sb-text-muted-color);overflow:hidden}.sb-eMLqba-positiveText{color:var(--sb-color-positive-text)}", document.head.appendChild(style);
251
+ }
252
+ var Description_default = { positiveText: "sb-eMLqba-positiveText", wrapper: "sb-eMLqba-wrapper" };
253
+
254
+ // src/addon-vitest/components/Description.tsx
255
+ import { Fragment as Fragment2, jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
256
+ function Description({
257
+ entryId,
258
+ storeState,
259
+ testProviderState,
260
+ isSettingsUpdated,
261
+ className,
262
+ ...props
263
+ }) {
264
+ let { setModalOpen } = React2.useContext(GlobalErrorContext), { componentTestCount, totalTestCount, unhandledErrors, finishedAt } = storeState.currentRun, finishedTestCount = componentTestCount.success + componentTestCount.error, description = "Not run";
265
+ if (!entryId && isSettingsUpdated)
266
+ description = jsx2("span", { className: Description_default.positiveText, children: "Settings updated" });
267
+ else if (testProviderState === "test-provider-state:running")
268
+ description = (finishedTestCount ?? 0) === 0 ? "Starting..." : `Testing... ${finishedTestCount}/${totalTestCount}`;
269
+ else if (!entryId && testProviderState === "test-provider-state:crashed")
270
+ description = setModalOpen ? jsx2(LinkComponent, { onClick: () => setModalOpen(!0), children: "View full error" }) : "Crashed";
271
+ else if (!entryId && unhandledErrors.length > 0) {
272
+ let unhandledErrorDescription = `View ${unhandledErrors.length} unhandled error${unhandledErrors?.length > 1 ? "s" : ""}`;
273
+ description = setModalOpen ? jsx2(LinkComponent, { onClick: () => setModalOpen(!0), children: unhandledErrorDescription }) : unhandledErrorDescription;
274
+ } else entryId && totalTestCount ? description = `Ran ${totalTestCount} ${totalTestCount === 1 ? "test" : "tests"}` : finishedAt ? description = jsxs2(Fragment2, { children: [
275
+ "Ran ",
276
+ totalTestCount,
277
+ " ",
278
+ totalTestCount === 1 ? "test" : "tests",
279
+ " ",
280
+ jsx2(RelativeTime, { timestamp: finishedAt })
281
+ ] }) : storeState.watching && (description = "Watching for file changes");
282
+ return jsx2("div", { className: clsx(Description_default.wrapper, className), ...props, children: description });
283
+ }
284
+
285
+ // storybook-css:/Users/ljk/p/repos/storybook/code/core/src/addon-vitest/components/TestStatusIcon.module.css
286
+ var id3 = "core/src/addon-vitest/components/TestStatusIcon.module.css";
287
+ if (typeof document < "u" && !document.querySelector(`style[data-sb-css="${id3}"]`)) {
288
+ let style = document.createElement("style");
289
+ style.setAttribute("data-sb-css", id3), style.textContent = ".sb-Aohifa-icon{--status-color:var(--sb-text-muted-color);--status-background:rgb(from var(--status-color) r g b / .4);background:var(--status-color);border-radius:50%;width:6px;height:6px;margin:4px;&[data-percentage]{background:conic-gradient(var(--status-color) var(--percentage), var(--status-background) calc(var(--percentage) + 1%));width:12px;height:12px;margin:1px}&[data-running]{animation:1.5s ease-in-out infinite sb-Aohifa-glow}&[data-status=positive]{--status-color:var(--sb-color-positive)}&[data-status=warning]{--status-color:var(--sb-color-gold)}&[data-status=negative]{--status-color:var(--sb-color-negative)}&[data-status=critical]{--status-color:var(--sb-color-default-text)}}@keyframes sb-Aohifa-glow{0%,to{opacity:1}50%{opacity:.4}}", document.head.appendChild(style);
290
+ }
291
+ var TestStatusIcon_default = { icon: "sb-Aohifa-icon", glow: "sb-Aohifa-glow" };
292
+
293
+ // src/addon-vitest/components/TestStatusIcon.tsx
294
+ import { jsx as jsx3 } from "react/jsx-runtime";
295
+ var TestStatusIcon = ({
296
+ isRunning,
297
+ status,
298
+ percentage,
299
+ className,
300
+ style,
301
+ ...props
302
+ }) => jsx3(
303
+ "div",
304
+ {
305
+ className: clsx(TestStatusIcon_default.icon, className),
306
+ "data-status": status,
307
+ "data-running": isRunning || void 0,
308
+ "data-percentage": percentage || void 0,
309
+ style: percentage ? { "--percentage": `${percentage}%`, ...style } : style,
310
+ ...props
311
+ }
312
+ );
313
+
314
+ // storybook-css:/Users/ljk/p/repos/storybook/code/core/src/addon-vitest/components/TestProviderRender.module.css
315
+ var id4 = "core/src/addon-vitest/components/TestProviderRender.module.css";
316
+ if (typeof document < "u" && !document.querySelector(`style[data-sb-css="${id4}"]`)) {
317
+ let style = document.createElement("style");
318
+ style.setAttribute("data-sb-css", id4), style.textContent = ".sb-wwCQYa-container{flex-direction:column;padding-bottom:1px;display:flex;&[data-in-context-menu]{padding-bottom:0}}.sb-wwCQYa-heading{justify-content:space-between;gap:12px;padding:8px 0;display:flex}.sb-wwCQYa-info{flex-direction:column;min-width:0;margin-left:8px;display:flex}.sb-wwCQYa-title{font-size:var(--sb-size-s1);color:var(--sb-color-default-text);font-weight:400;&[data-crashed]{color:var(--sb-color-negative-text);font-weight:700}}.sb-wwCQYa-actions{gap:4px;display:flex}.sb-wwCQYa-actionList{padding:0}.sb-wwCQYa-muted{color:var(--sb-text-muted-color)}.sb-wwCQYa-progress{margin:4px}.sb-wwCQYa-stopIcon{width:10px}", document.head.appendChild(style);
319
+ }
320
+ var TestProviderRender_default = { info: "sb-wwCQYa-info", actions: "sb-wwCQYa-actions", actionList: "sb-wwCQYa-actionList", muted: "sb-wwCQYa-muted", container: "sb-wwCQYa-container", progress: "sb-wwCQYa-progress", heading: "sb-wwCQYa-heading", stopIcon: "sb-wwCQYa-stopIcon", title: "sb-wwCQYa-title" };
321
+
322
+ // src/addon-vitest/components/TestProviderRender.tsx
323
+ import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
324
+ var openPanel = ({ api, panelId, entryId }) => {
325
+ let story = entryId ? api.findAllLeafStoryIds(entryId)[0] : void 0;
326
+ story && api.selectStory(story), api.setSelectedPanel(panelId), api.togglePanel(!0);
327
+ }, TestProviderRender = ({
328
+ api,
329
+ entry,
330
+ testProviderState,
331
+ storeState,
332
+ setStoreState,
333
+ componentTestStatusValueToStoryIds,
334
+ a11yStatusValueToStoryIds,
335
+ isSettingsUpdated,
336
+ ...props
337
+ }) => {
338
+ let { config, watching, cancelling, currentRun, fatalError } = storeState, finishedTestCount = currentRun.componentTestCount.success + currentRun.componentTestCount.error, hasA11yAddon = addons.experimental_getRegisteredAddons().includes(ADDON_ID), isRunning = testProviderState === "test-provider-state:running", isStarting = isRunning && finishedTestCount === 0, [componentTestStatusIcon, componentTestStatusLabel] = fatalError ? ["critical", "Component tests crashed"] : componentTestStatusValueToStoryIds["status-value:error"].length > 0 ? ["negative", "Component tests failed"] : isRunning ? ["unknown", "Testing in progress"] : componentTestStatusValueToStoryIds["status-value:success"].length > 0 ? ["positive", "Component tests passed"] : ["unknown", "Run tests to see results"], [a11yStatusIcon, a11yStatusLabel] = fatalError ? ["critical", "Component tests crashed"] : a11yStatusValueToStoryIds["status-value:error"].length > 0 ? ["negative", "Accessibility tests failed"] : a11yStatusValueToStoryIds["status-value:warning"].length > 0 ? ["warning", "Accessibility tests failed"] : isRunning ? ["unknown", "Testing in progress"] : a11yStatusValueToStoryIds["status-value:success"].length > 0 ? ["positive", "Accessibility tests passed"] : ["unknown", "Run tests to see accessibility results"], prevTestProviderStateRef = useRef2(testProviderState);
339
+ return useEffect3(() => {
340
+ let prevState = prevTestProviderStateRef.current;
341
+ if (prevTestProviderStateRef.current = testProviderState, prevState !== testProviderState) {
342
+ if (testProviderState === "test-provider-state:running")
343
+ announce("Test run started.", "polite");
344
+ else if (testProviderState === "test-provider-state:crashed")
345
+ announce("Test run crashed.", "assertive");
346
+ else if (testProviderState === "test-provider-state:succeeded" && prevState === "test-provider-state:running") {
347
+ let parts = [], errorCount = componentTestStatusValueToStoryIds["status-value:error"].length, warningCount = componentTestStatusValueToStoryIds["status-value:warning"].length, passedCount = componentTestStatusValueToStoryIds["status-value:success"].length;
348
+ errorCount > 0 && parts.push(`${errorCount} ${errorCount === 1 ? "component" : "components"} errored`), warningCount > 0 && parts.push(
349
+ `${warningCount} ${warningCount === 1 ? "component" : "components"} with warnings`
350
+ ), passedCount > 0 && parts.push(`${passedCount} ${passedCount === 1 ? "component" : "components"} passed`);
351
+ let a11yErrorCount = 0;
352
+ if (hasA11yAddon) {
353
+ a11yErrorCount = a11yStatusValueToStoryIds["status-value:error"].length;
354
+ let a11yWarningCount = a11yStatusValueToStoryIds["status-value:warning"].length;
355
+ a11yErrorCount > 0 && parts.push(
356
+ `${a11yErrorCount} accessibility ${a11yErrorCount === 1 ? "error" : "errors"}`
357
+ ), a11yWarningCount > 0 && parts.push(
358
+ `${a11yWarningCount} accessibility ${a11yWarningCount === 1 ? "warning" : "warnings"}`
359
+ );
360
+ }
361
+ let message = parts.length > 0 ? `Test run finished. ${parts.join(", ")}.` : "Test run finished. No results.", hasErrors = errorCount > 0 || hasA11yAddon && a11yErrorCount > 0;
362
+ announce(message, hasErrors ? "assertive" : "polite");
363
+ }
364
+ }
365
+ }, [
366
+ testProviderState,
367
+ componentTestStatusValueToStoryIds,
368
+ a11yStatusValueToStoryIds,
369
+ hasA11yAddon
370
+ ]), jsxs3("div", { className: TestProviderRender_default.container, "data-in-context-menu": !!entry || void 0, ...props, children: [
371
+ jsxs3("div", { className: TestProviderRender_default.heading, children: [
372
+ jsxs3("div", { className: TestProviderRender_default.info, children: [
373
+ entry ? jsx4("div", { className: TestProviderRender_default.title, id: "testing-module-title", children: "Run component tests" }) : jsx4(
374
+ "div",
375
+ {
376
+ className: TestProviderRender_default.title,
377
+ id: "testing-module-title",
378
+ "data-crashed": testProviderState === "test-provider-state:crashed" || fatalError !== void 0 || currentRun.unhandledErrors.length > 0 || void 0,
379
+ children: currentRun.unhandledErrors.length === 1 ? "Component tests completed with an error" : currentRun.unhandledErrors.length > 1 ? "Component tests completed with errors" : fatalError ? "Component tests didn\u2019t complete" : "Run component tests"
380
+ }
381
+ ),
382
+ jsx4(
383
+ Description,
384
+ {
385
+ id: "testing-module-description",
386
+ storeState,
387
+ testProviderState,
388
+ entryId: entry?.id,
389
+ isSettingsUpdated
390
+ }
391
+ )
392
+ ] }),
393
+ jsxs3("div", { className: TestProviderRender_default.actions, children: [
394
+ !entry && jsx4(
395
+ ToggleButton,
396
+ {
397
+ ariaLabel: isRunning ? "Watch mode (cannot toggle while running)" : "Watch mode",
398
+ tooltip: isRunning ? "Watch mode unavailable while running" : `Watch mode is ${watching ? "enabled" : "disabled"}`,
399
+ padding: "small",
400
+ size: "medium",
401
+ variant: "ghost",
402
+ pressed: watching,
403
+ onClick: () => store.send({
404
+ type: "TOGGLE_WATCHING",
405
+ payload: {
406
+ to: !watching
407
+ }
408
+ }),
409
+ disabled: isRunning,
410
+ children: jsx4(EyeIcon, {})
411
+ }
412
+ ),
413
+ isRunning ? jsx4(
414
+ Button2,
415
+ {
416
+ ariaLabel: cancelling ? "Stop test run (already stopping...)" : "Stop test run",
417
+ padding: "none",
418
+ size: "medium",
419
+ variant: "ghost",
420
+ onClick: () => store.send({
421
+ type: "CANCEL_RUN"
422
+ }),
423
+ disabled: cancelling || isStarting,
424
+ children: jsx4(
425
+ ProgressSpinner,
426
+ {
427
+ className: TestProviderRender_default.progress,
428
+ percentage: finishedTestCount && storeState.currentRun.totalTestCount ? finishedTestCount / storeState.currentRun.totalTestCount * 100 : void 0,
429
+ children: jsx4(StopAltIcon, { className: TestProviderRender_default.stopIcon })
430
+ }
431
+ )
432
+ }
433
+ ) : jsx4(
434
+ Button2,
435
+ {
436
+ ariaLabel: "Start test run",
437
+ padding: "small",
438
+ size: "medium",
439
+ variant: "ghost",
440
+ onClick: () => {
441
+ let storyIds;
442
+ entry && (storyIds = entry.type === "story" ? [entry.id] : api.findAllLeafStoryIds(entry.id)), store.send({
443
+ type: "TRIGGER_RUN",
444
+ payload: { storyIds, triggeredBy: entry?.type ?? "global" }
445
+ });
446
+ },
447
+ children: jsx4(PlayHollowIcon, {})
448
+ }
449
+ )
450
+ ] })
451
+ ] }),
452
+ jsxs3(ActionList, { className: TestProviderRender_default.actionList, children: [
453
+ jsxs3(ActionList.Item, { children: [
454
+ entry ? jsx4(ActionList.Text, { children: "Interactions" }) : jsxs3(ActionList.Action, { as: "label", readOnly: !0, children: [
455
+ jsx4(ActionList.Icon, { children: jsx4(Form.Checkbox, { name: "Interactions", checked: !0, disabled: !0 }) }),
456
+ jsx4(ActionList.Text, { children: "Interactions" })
457
+ ] }),
458
+ jsxs3(
459
+ ActionList.Button,
460
+ {
461
+ ariaLabel: `${componentTestStatusLabel}${componentTestStatusValueToStoryIds["status-value:error"].length + componentTestStatusValueToStoryIds["status-value:warning"].length > 0 ? ` (${componentTestStatusValueToStoryIds["status-value:error"].length + componentTestStatusValueToStoryIds["status-value:warning"].length} errors or warnings so far)` : ""}`,
462
+ tooltip: componentTestStatusLabel,
463
+ disabled: componentTestStatusValueToStoryIds["status-value:error"].length === 0 && componentTestStatusValueToStoryIds["status-value:warning"].length === 0 && componentTestStatusValueToStoryIds["status-value:success"].length === 0,
464
+ onClick: () => {
465
+ openPanel({
466
+ api,
467
+ panelId: PANEL_ID,
468
+ entryId: componentTestStatusValueToStoryIds["status-value:error"][0] ?? componentTestStatusValueToStoryIds["status-value:warning"][0] ?? componentTestStatusValueToStoryIds["status-value:success"][0] ?? entry?.id
469
+ });
470
+ },
471
+ children: [
472
+ componentTestStatusValueToStoryIds["status-value:error"].length + componentTestStatusValueToStoryIds["status-value:warning"].length || null,
473
+ jsx4(TestStatusIcon, { status: componentTestStatusIcon, isRunning })
474
+ ]
475
+ }
476
+ )
477
+ ] }),
478
+ !entry && jsxs3(ActionList.Item, { children: [
479
+ jsxs3(ActionList.Action, { as: "label", readOnly: isRunning, ariaLabel: !1, children: [
480
+ jsx4(ActionList.Icon, { children: jsx4(
481
+ Form.Checkbox,
482
+ {
483
+ name: "Coverage",
484
+ checked: config.coverage,
485
+ disabled: isRunning,
486
+ onChange: () => setStoreState((s) => ({
487
+ ...s,
488
+ config: { ...s.config, coverage: !config.coverage }
489
+ }))
490
+ }
491
+ ) }),
492
+ jsx4(ActionList.Text, { children: watching ? jsx4("span", { className: TestProviderRender_default.muted, children: "Coverage (unavailable)" }) : "Coverage" })
493
+ ] }),
494
+ watching || currentRun.triggeredBy && !FULL_RUN_TRIGGERS.includes(currentRun.triggeredBy) ? jsx4(
495
+ ActionList.Button,
496
+ {
497
+ disabled: !0,
498
+ ariaLabel: watching ? "Coverage unavailable in watch mode" : "Coverage only available after running all tests",
499
+ children: jsx4(InfoIcon, {})
500
+ }
501
+ ) : currentRun.coverageSummary ? jsx4(
502
+ ActionList.Button,
503
+ {
504
+ asChild: !0,
505
+ ariaLabel: isRunning ? "Open coverage report (testing still in progress)" : `Open coverage report (${currentRun.coverageSummary.percentage}% coverage)`,
506
+ children: jsxs3("a", { href: "/coverage/index.html", target: "_blank", children: [
507
+ currentRun.coverageSummary.percentage,
508
+ "%",
509
+ jsx4(
510
+ TestStatusIcon,
511
+ {
512
+ isRunning,
513
+ percentage: currentRun.coverageSummary.percentage,
514
+ status: currentRun.coverageSummary.status
515
+ }
516
+ )
517
+ ] })
518
+ }
519
+ ) : jsx4(
520
+ ActionList.Button,
521
+ {
522
+ disabled: !0,
523
+ ariaLabel: isRunning ? "Coverage unavailable, testing still in progress" : fatalError ? "Coverage unavailable, component tests crashed" : "Coverage unavailable, run tests first",
524
+ children: jsx4(
525
+ TestStatusIcon,
526
+ {
527
+ isRunning,
528
+ status: fatalError ? "critical" : "unknown"
529
+ }
530
+ )
531
+ }
532
+ )
533
+ ] }),
534
+ hasA11yAddon && jsxs3(ActionList.Item, { children: [
535
+ entry ? jsx4(ActionList.Text, { children: "Accessibility" }) : jsxs3(ActionList.Action, { as: "label", readOnly: isRunning, ariaLabel: !1, children: [
536
+ jsx4(ActionList.Icon, { children: jsx4(
537
+ Form.Checkbox,
538
+ {
539
+ name: "Accessibility",
540
+ checked: config.a11y,
541
+ disabled: isRunning,
542
+ onChange: () => setStoreState((s) => ({
543
+ ...s,
544
+ config: { ...s.config, a11y: !config.a11y }
545
+ }))
546
+ }
547
+ ) }),
548
+ jsx4(ActionList.Text, { children: "Accessibility" })
549
+ ] }),
550
+ jsxs3(
551
+ ActionList.Button,
552
+ {
553
+ ariaLabel: a11yStatusLabel,
554
+ disabled: a11yStatusValueToStoryIds["status-value:error"].length === 0 && a11yStatusValueToStoryIds["status-value:warning"].length === 0 && a11yStatusValueToStoryIds["status-value:success"].length === 0,
555
+ onClick: () => {
556
+ openPanel({
557
+ api,
558
+ entryId: a11yStatusValueToStoryIds["status-value:error"][0] ?? a11yStatusValueToStoryIds["status-value:warning"][0] ?? a11yStatusValueToStoryIds["status-value:success"][0] ?? entry?.id,
559
+ panelId: PANEL_ID2
560
+ });
561
+ },
562
+ children: [
563
+ a11yStatusValueToStoryIds["status-value:error"].length + a11yStatusValueToStoryIds["status-value:warning"].length || null,
564
+ jsx4(TestStatusIcon, { status: a11yStatusIcon, isRunning })
565
+ ]
566
+ }
567
+ )
568
+ ] })
569
+ ] })
570
+ ] });
571
+ };
572
+
573
+ // src/addon-vitest/components/SidebarContextMenu.tsx
574
+ import { jsx as jsx5 } from "react/jsx-runtime";
575
+ var SidebarContextMenu = ({ context, api }) => {
576
+ let {
577
+ testProviderState,
578
+ componentTestStatusValueToStoryIds,
579
+ a11yStatusValueToStoryIds,
580
+ storeState,
581
+ setStoreState
582
+ } = useTestProvider(api, context.id);
583
+ return jsx5(
584
+ TestProviderRender,
585
+ {
586
+ api,
587
+ entry: context,
588
+ style: { minWidth: 240 },
589
+ testProviderState,
590
+ componentTestStatusValueToStoryIds,
591
+ a11yStatusValueToStoryIds,
592
+ storeState,
593
+ setStoreState,
594
+ isSettingsUpdated: !1
595
+ }
596
+ );
597
+ };
598
+
599
+ // src/addon-vitest/manager.tsx
600
+ import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
601
+ addons2.register(ADDON_ID2, (api) => {
602
+ if (globalThis.FORKBOOK_BUILDER === SupportedBuilder.VITE) {
603
+ let openPanel2 = (panelId) => {
604
+ api.setSelectedPanel(panelId), api.togglePanel(!0);
605
+ };
606
+ componentTestStatusStore.onSelect(() => {
607
+ openPanel2(PANEL_ID);
608
+ }), a11yStatusStore.onSelect(() => {
609
+ openPanel2(PANEL_ID2);
610
+ }), testProviderStore.onRunAll(() => {
611
+ store.send({
612
+ type: "TRIGGER_RUN",
613
+ payload: {
614
+ triggeredBy: "run-all"
615
+ }
616
+ });
617
+ }), store.subscribe("TEST_RUN_COMPLETED", ({ payload }) => {
618
+ api.emit(FORKBOOK_ADDON_TEST_CHANNEL, { type: "test-run-completed", payload });
619
+ }), addons2.add(TEST_PROVIDER_ID, {
620
+ type: Addon_TypesEnum.experimental_TEST_PROVIDER,
621
+ clear: () => {
622
+ componentTestStatusStore.unset(), a11yStatusStore.unset();
623
+ },
624
+ render: () => {
625
+ let [isModalOpen, setModalOpen] = useState3(!1), {
626
+ storeState,
627
+ setStoreState,
628
+ testProviderState,
629
+ componentTestStatusValueToStoryIds,
630
+ a11yStatusValueToStoryIds,
631
+ isSettingsUpdated
632
+ } = useTestProvider(api);
633
+ return jsxs4(GlobalErrorContext.Provider, { value: { isModalOpen, setModalOpen }, children: [
634
+ jsx6(
635
+ TestProviderRender,
636
+ {
637
+ api,
638
+ storeState,
639
+ setStoreState,
640
+ isSettingsUpdated,
641
+ testProviderState,
642
+ componentTestStatusValueToStoryIds,
643
+ a11yStatusValueToStoryIds
644
+ }
645
+ ),
646
+ jsx6(
647
+ GlobalErrorModal,
648
+ {
649
+ storeState,
650
+ onRerun: () => {
651
+ setModalOpen(!1), store.send({
652
+ type: "TRIGGER_RUN",
653
+ payload: {
654
+ triggeredBy: "global"
655
+ }
656
+ });
657
+ }
658
+ }
659
+ )
660
+ ] });
661
+ },
662
+ sidebarContextMenu: ({ context }) => context.type === "docs" || context.type === "story" && !context.tags.includes(Tag.TEST) ? null : jsx6(SidebarContextMenu, { context, api })
663
+ });
664
+ }
665
+ });