@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,72 @@
1
+ import { i as ToolsetCtx } from "../../../chunk-BCoJQE-f.js";
2
+
3
+ //#region .dts-emit/code/core/src/cli/skills/content/skills.d.ts
4
+ /**
5
+ * The Forkbook skills: agent-facing instruction documents served by `forkbook skills <id>`
6
+ * and, on the MCP side, by addon-mcp (server instructions and the story-instructions tool). The
7
+ * ids are public CLI vocabulary — plugin stubs (M7) will reference them — so treat renames as
8
+ * breaking.
9
+ */
10
+ declare const SKILL_IDS: readonly ['stories', 'write-story', 'setup'];
11
+ type SkillId = (typeof SKILL_IDS)[number];
12
+ declare const SKILLS: Record<SkillId, {
13
+ blurb: string;
14
+ }>;
15
+ declare function isSkillId(value: string): value is SkillId;
16
+ //#endregion
17
+ //#region .dts-emit/code/core/src/cli/skills/content/skill-refs.d.ts
18
+ type SkillTransport = ToolsetCtx['transport'];
19
+ /**
20
+ * Renders a cross-reference to a skill in the transport's own vocabulary, mirroring `getToolName` for
21
+ * toolset methods: the MCP tool name where one exists, the `forkbook skills` command otherwise.
22
+ */
23
+ declare function getSkillRef(transport: SkillTransport): (id: SkillId) => string;
24
+ //#endregion
25
+ //#region .dts-emit/code/core/src/cli/skills/content/build-server-instructions.d.ts
26
+ type ServerInstructionsInputs = {
27
+ transport: SkillTransport;
28
+ devEnabled: boolean;
29
+ testSupported: boolean;
30
+ docsEnabled: boolean; /** `stories-find-by-component` is registered, so the workflow can point at it. */
31
+ moduleGraphSupported: boolean;
32
+ };
33
+ /**
34
+ * The full rule for how the agent should present links in its final
35
+ * user-facing response, delivered through the
36
+ * `get-storybook-story-instructions` output. The server instructions only
37
+ * carry a terse pointer to the same rule: MCP clients truncate server
38
+ * instructions (Claude Code cuts them at 2,048 chars), so anything beyond
39
+ * the workflow trigger must live in tool descriptions and tool results.
40
+ *
41
+ * The guidance covers both paths: ending with a review section after
42
+ * publishing, or falling back to preview URLs when no review was published
43
+ * (e.g. non-visual refactors).
44
+ */
45
+ declare function getFinalLinksGuidance(transport: SkillTransport): string;
46
+ declare function buildServerInstructions({
47
+ transport,
48
+ ...options
49
+ }: ServerInstructionsInputs): string;
50
+ //#endregion
51
+ //#region .dts-emit/code/core/src/cli/skills/content/build-story-instructions.d.ts
52
+ type StoryInstructionsInputs = {
53
+ transport: SkillTransport;
54
+ framework: string; /** Renderer package name; defaults to `framework` when unmapped (today's behavior). */
55
+ renderer?: string;
56
+ testSupported: boolean;
57
+ a11yEnabled: boolean;
58
+ docsEnabled: boolean;
59
+ };
60
+ declare function buildStoryInstructions({
61
+ transport,
62
+ framework,
63
+ renderer,
64
+ testSupported,
65
+ a11yEnabled,
66
+ docsEnabled
67
+ }: StoryInstructionsInputs): string;
68
+ //#endregion
69
+ //#region .dts-emit/code/core/src/cli/skills/content/framework-renderer.d.ts
70
+ declare const frameworkToRendererMap: Record<string, string>;
71
+ //#endregion
72
+ export { SKILLS, SKILL_IDS, type ServerInstructionsInputs, type SkillId, type SkillTransport, type StoryInstructionsInputs, buildServerInstructions, buildStoryInstructions, frameworkToRendererMap, getFinalLinksGuidance, getSkillRef, isSkillId };
@@ -0,0 +1,335 @@
1
+ import {
2
+ getToolName
3
+ } from "../../../_browser-chunks/chunk-LEVSOOLQ.js";
4
+ import "../../../_browser-chunks/chunk-IE4ULIOQ.js";
5
+ import "../../../_browser-chunks/chunk-IMSF75WX.js";
6
+
7
+ // src/cli/skills/content/skills.ts
8
+ var SKILL_IDS = ["stories", "write-story", "setup"], SKILLS = {
9
+ stories: {
10
+ blurb: "The workflow for UI changes, with every command it needs: look up components, write stories, test, and publish a review."
11
+ },
12
+ "write-story": {
13
+ blurb: "How to write, update, and test Forkbook stories for this project: imports, patterns, and conventions."
14
+ },
15
+ setup: {
16
+ blurb: "Setup instructions to write stories for the real components in this project."
17
+ }
18
+ };
19
+ function isSkillId(value) {
20
+ return SKILL_IDS.includes(value);
21
+ }
22
+
23
+ // src/cli/skills/content/skill-refs.ts
24
+ var MCP_SKILL_TOOL_NAMES = {
25
+ "write-story": "get-storybook-story-instructions"
26
+ };
27
+ function getSkillRef(transport) {
28
+ return (id) => transport === "mcp" && MCP_SKILL_TOOL_NAMES[id] || `npx forkbook skills ${id}`;
29
+ }
30
+
31
+ // src/cli/skills/content/instructions/dev-instructions.md
32
+ var dev_instructions_default = `## UI Building and Story Writing Workflow
33
+
34
+ - {{STORY_INSTRUCTIONS_STEP}}
35
+ - {{PREVIEW_STORIES_STEP}}
36
+ - {{FINAL_LINKS_STEP}}{{DISPLAY_REVIEW_STEP}}
37
+ - Only use story IDs returned by tools \u2014 never derive them from file names or memory.{{FIND_BY_COMPONENT_STEP}}
38
+ `;
39
+
40
+ // src/cli/skills/content/instructions/docs-instructions.md
41
+ var docs_instructions_default = `## Documentation Workflow
42
+
43
+ **CRITICAL: Never hallucinate component properties!** Undocumented props do not exist \u2014 never assume them from naming or other libraries; verify every prop via these tools, not source or types in node_modules.
44
+
45
+ 1. Call **{{DOCS_LIST}}** once at task start for component and docs IDs.
46
+ 2. Call **{{DOCS_SHOW}}** with an \`id\` from that list for props and usage examples.
47
+
48
+ Only reference IDs returned by these tools \u2014 never guess; scope multi-source requests with \`storybookId\`.
49
+ `;
50
+
51
+ // src/cli/skills/content/instructions/test-instructions.md
52
+ var test_instructions_default = `## Validation Workflow
53
+
54
+ - After editing anything that changes how the UI looks, run **{{RUN_STORY_TESTS}}** \u2014 never a package.json test script.
55
+ - Never report completion while story tests are failing.
56
+ `;
57
+
58
+ // src/cli/skills/content/build-server-instructions.ts
59
+ function getFinalLinksGuidance(transport) {
60
+ let ref = getToolName({ transport });
61
+ return `In your final user-facing response, show one set of links \u2014 never both. If you published a review with **${ref("review.create")}**, finish your reply with a dedicated review section as the very last thing in the output: its own top-level heading on a line by itself (for example \`## \u{1F440} Review your changes\`), then a one-line explanation that the review shows the handful of stories most relevant to this change and that, because it is AI-curated, results may be inaccurate or incomplete, then on the next line the review page as a markdown link prefixed with a \u{1F449} so it is easy to spot, using the returned \`reviewUrl\` (for example \`\u{1F449} [Open the Forkbook review page](<reviewUrl>)\`). Nothing should come after this section. Never also list the individual story or preview URLs. Avoid internal jargon like "collection" or "trigger" in anything the user reads \u2014 those are terms from this tooling, not words that mean anything to them; use plain language unless the user used the term first. A visually observable change is not finished until its review is published \u2014 never substitute preview URLs for the review. If **${ref("review.create")}** keeps failing, end with the **${ref("stories.preview")}** URLs instead and say the review could not be published. Only when there is no review because the change has no visually observable impact, say so plainly; include preview URLs only if the user asked to see specific stories.`;
62
+ }
63
+ function buildServerInstructions({
64
+ transport,
65
+ ...options
66
+ }) {
67
+ let ref = getToolName({ transport }), skillRef = getSkillRef(transport), sections = [
68
+ options.docsEnabled ? "Follow these workflows when working with UI and/or Forkbook. Answer questions about component props, API, or usage with the documentation tools \u2014 never from source or type definitions." : "Follow these workflows when working with UI and/or Forkbook."
69
+ ];
70
+ if (options.devEnabled) {
71
+ let previewStoriesStep = `After editing anything that changes how the UI looks \u2014 components, stories, styles, themes, tokens \u2014 call **${ref("stories.changed")}** to discover the affected stories.`, finalLinksStep = `End your final response with the review section from **${ref("review.create")}**'s result \u2014 never substitute preview URLs. **${ref("stories.preview")}** is only for mid-loop iteration or a requested direct link. If nothing visually changed, say so.`;
72
+ sections.push(
73
+ dev_instructions_default.replace(
74
+ "{{STORY_INSTRUCTIONS_STEP}}",
75
+ `Before creating or editing components or stories, call **${skillRef("write-story")}**; its output is the source of truth for imports, story patterns, and testing conventions.`
76
+ ).replace("{{PREVIEW_STORIES_STEP}}", previewStoriesStep).replace("{{FINAL_LINKS_STEP}}", finalLinksStep).replace(
77
+ "{{DISPLAY_REVIEW_STEP}}",
78
+ `
79
+ - After a visually observable UI change, or when the user asks to see or browse stories/components, call **${ref("review.create")}** (again on each iteration) and follow its description and result. Visual work is not done until the review is published; any newly created story MUST be included.`
80
+ ).replace(
81
+ "{{FIND_BY_COMPONENT_STEP}}",
82
+ options.moduleGraphSupported ? ` **${ref("stories.findByComponent")}** maps any input to stories; its description covers the workflow. No matches means no stories exist yet \u2014 say so.` : ""
83
+ ).trim()
84
+ );
85
+ }
86
+ return options.testSupported && sections.push(test_instructions_default.replaceAll("{{RUN_STORY_TESTS}}", ref("test.run")).trim()), options.docsEnabled && sections.push(
87
+ docs_instructions_default.replaceAll("{{DOCS_LIST}}", ref("docs.list")).replaceAll("{{DOCS_SHOW}}", ref("docs.show")).trim()
88
+ ), sections.length === 1 ? "" : sections.join(`
89
+
90
+ `);
91
+ }
92
+
93
+ // src/cli/skills/content/framework-renderer.ts
94
+ var frameworkToRendererMap = {
95
+ "@aussieljk/forkbook/react-vite": "@aussieljk/forkbook/react",
96
+ "@aussieljk/forkbook/nextjs-vite": "@aussieljk/forkbook/react"
97
+ };
98
+
99
+ // src/cli/skills/content/instructions/a11y-instructions.md
100
+ var a11y_instructions_default = `### Accessibility Violations
101
+
102
+ **Fix automatically** (semantic/structural, no visual change):
103
+
104
+ - ARIA attributes, roles, labels, alt text
105
+ - Heading hierarchy, landmarks, table structure
106
+ - Keyboard access (tabindex, focus, handlers)
107
+ - Document-level: lang attr, frame titles, duplicate IDs
108
+
109
+ **Confirm with user first** (visual/design changes):
110
+
111
+ - Color contrast ratios
112
+ - Font sizes, spacing, layout
113
+ - Focus indicator styling
114
+
115
+ Describe the issue, ask how the user wants to proceed, and provide 2-3 concrete options.
116
+ Do not auto-apply visual changes before user confirmation, and do not claim visual issues are fixed until they approve an option.
117
+ `;
118
+
119
+ // src/cli/skills/content/instructions/story-testing-instructions.md
120
+ var story_testing_instructions_default = `## Story Testing Requirements
121
+
122
+ **Run \`{{RUN_STORY_TESTS_TOOL_NAME}}\` after EVERY component or story change.** This includes creating, modifying, or refactoring components, stories, or their dependencies. It is the only way to run story tests \u2014 never run package.json test scripts (like \`npm run test:stories\`) instead.
123
+
124
+ ### Workflow
125
+
126
+ 1. Make your change
127
+ 2. Run \`{{RUN_STORY_TESTS_TOOL_NAME}}\` with related stories for focused feedback (faster while iterating)
128
+ 3. If tests fail: analyze, fix{{A11Y_FIX_SUFFIX}}, re-run
129
+ 4. Repeat until all tests pass
130
+
131
+ Do not skip tests, ignore failures, or move on with failing tests. If stuck after multiple attempts, report to user.
132
+
133
+ ### Focused vs. full-suite test runs
134
+
135
+ - Prefer focused runs (\`stories\` input) during development to validate the parts you changed quickly.
136
+ - Run all tests (omit \`stories\`) before final handoff, after broad/refactor changes, or when impact is unclear and you need project-wide verification.
137
+ `;
138
+
139
+ // src/cli/skills/content/instructions/storybook-story-instructions.md
140
+ var storybook_story_instructions_default = `# Writing User Interfaces
141
+
142
+ Use the configured framework (\`{{FRAMEWORK}}\`) and renderer (\`{{RENDERER}}\`). Follow the project\u2019s component syntax, story format, imports, and setup conventions. Use examples for this framework when consulting documentation.
143
+
144
+ When writing UI, prefer breaking larger components up into smaller parts.
145
+
146
+ ALWAYS write a Forkbook story for any component written. If editing a component, ensure appropriate changes have been made to stories for that component.
147
+ {{DOCS_WORKFLOW_GUIDANCE}}
148
+
149
+ ## How to write good stories
150
+
151
+ Goal: Cover every distinct piece of business logic and state the component can reach (happy paths, error/edge states, loading, permissions/roles, empty states, variations from props/context). Avoid redundant stories that show the same logic.
152
+
153
+ Interactivity: If the component is interactive, add Interaction tests using play functions that drive the UI with @aussieljk/forkbook/test utilities (e.g., fn, userEvent, expect). Simulate key user flows: clicking buttons/links, typing, focus/blur, keyboard nav, form submit, async responses, toggle/selection changes, pagination/filters, etc. When passing \`fn\` functions as \`args\` for callback functions, make sure to add a play function which interacts with the component and assert whether the callback function was actually called.
154
+
155
+ Data/setup: Provide realistic props, state, and mocked data. Include meaningful labels/text to make behaviors observable. Stub network/services with deterministic fixtures; keep stories reliable.
156
+
157
+ Assertions: In play functions, assert the visible outcome of the interaction (text, aria state, enabled/disabled, class/state changes, emitted events). Prefer role/label-based queries.
158
+
159
+ Variants to consider (pick only those that change behavior): default vs. alternate themes; loading vs. loaded vs. empty vs. error; validated vs. invalid input; permissions/roles/capabilities; feature flags; size/density/layout variants that alter logic.
160
+
161
+ Accessibility: Use semantic roles/labels; ensure focusable/keyboard interactions are test-covered where relevant.
162
+
163
+ Naming/structure: Use clear story names that describe the scenario (\u201CError state after failed submit\u201D). Group related variants logically; don\u2019t duplicate.
164
+
165
+ Imports/format: Import Meta/StoryObj from the framework package; import test helpers from @aussieljk/forkbook/test (not @storybook/test). Keep stories minimal\u2014only what's needed to demonstrate behavior.
166
+
167
+ ## Forkbook 9 Essential Changes for Story Writing
168
+
169
+ ### Package Consolidation
170
+
171
+ #### \`Meta\` and \`StoryObj\` imports
172
+
173
+ Update story imports to use the framework package:
174
+
175
+ \`\`\`diff
176
+ - import { Meta, StoryObj } from '{{RENDERER}}';
177
+ + import { Meta, StoryObj } from '{{FRAMEWORK}}';
178
+ \`\`\`
179
+
180
+ #### Test utility imports
181
+
182
+ Update test imports to use \`@aussieljk/forkbook/test\` instead of \`@storybook/test\`
183
+
184
+ \`\`\`diff
185
+ - import { fn } from '@storybook/test';
186
+ + import { fn } from '@aussieljk/forkbook/test';
187
+ \`\`\`
188
+
189
+ ### Global State Changes
190
+
191
+ The \`globals\` annotation has be renamed to \`initialGlobals\`:
192
+
193
+ \`\`\`diff
194
+ // .forkbook/preview.js
195
+ export default {
196
+ - globals: { theme: 'light' }
197
+ + initialGlobals: { theme: 'light' }
198
+ };
199
+ \`\`\`
200
+
201
+ ### Autodocs Configuration
202
+
203
+ Instead of \`parameters.docs.autodocs\` in main.js, use tags:
204
+
205
+ \`\`\`js
206
+ // .forkbook/preview.js or in individual stories
207
+ export default {
208
+ tags: ['autodocs'], // generates autodocs for all stories
209
+ };
210
+ \`\`\`
211
+
212
+ ### Mocking imports in Forkbook
213
+
214
+ To mock imports in Forkbook, use Forkbook's mocking features. ALWAYS mock external dependencies to ensure stories render consistently.
215
+
216
+ 1. **Register in the mock in Forkbook's preview file**:
217
+ To mock dependendencies, you MUST register a module mock in \`.forkbook/preview.ts\` (or equivalent):
218
+
219
+ \`\`\`js
220
+ import { sb } from '@aussieljk/forkbook/test';
221
+
222
+ // Prefer spy mocks (keeps functions, but allows to override them and spy on them)
223
+ sb.mock(import('some-library'), { spy: true });
224
+ \`\`\`
225
+
226
+ **Important: Use file extensions when referring to relative files!**
227
+
228
+ \`\`\`js
229
+ sb.mock(import('./relative/module.ts'), { spy: true });
230
+ \`\`\`
231
+
232
+ 2. **Specify mock values in stories**:
233
+ You can override the behaviour of the mocks per-story using \`beforeEach\` and the \`mocked()\` type function:
234
+
235
+ \`\`\`js
236
+ import { expect, mocked, fn } from '@aussieljk/forkbook/test';
237
+ import { library } from 'some-library';
238
+
239
+ const meta = {
240
+ component: AuthButton,
241
+ beforeEach: async () => {
242
+ mocked(library).mockResolvedValue({ user: 'data' });
243
+ },
244
+ };
245
+
246
+ export const LoggedIn: Story = {
247
+ play: async ({ canvas }) => {
248
+ await expect(library).toHaveBeenCalled();
249
+ },
250
+ };
251
+ \`\`\`
252
+
253
+ Before doing this ensure you have mocked the import in the preview file.
254
+
255
+ ### Play Function Parameters
256
+
257
+ - The play function has a \`canvas\` parameter that can be used directly with testing-library-like query methods.
258
+ - It also has a \`canvasElement\` which is the actual DOM element.
259
+ - The \`within\`-function imported from \`@aussieljk/forkbook/test\` transforms a DOM element to an object with query methods, similar to \`canvas\`.
260
+
261
+ **DO NOT** use \`within(canvas)\` - it is redundant because \`canvas\` already has the query methods, \`canvas\` is not a DOM element.
262
+
263
+ \`\`\`ts
264
+ // \u2705 Correct: Use canvas directly
265
+ play: async ({ canvas }) => {
266
+ await canvas.getByLabelText('Submit').click();
267
+ };
268
+
269
+ // \u26A0\uFE0F Also acceptable: Use \`canvasElement\` with \`within\`
270
+ import { within } from '@aussieljk/forkbook/test';
271
+
272
+ play: async ({ canvasElement }) => {
273
+ const canvas = within(canvasElement);
274
+ await canvas.getByLabelText('Submit').click();
275
+ };
276
+
277
+ // \u274C Wrong: Do NOT use within(canvas)
278
+ play: async ({ canvas }) => {
279
+ const screen = within(canvas); // Error!
280
+ };
281
+ \`\`\`
282
+
283
+ ### Key Requirements
284
+
285
+ - **Node.js 22.12+**
286
+ - For TypeScript projects, use a version supported by the configured Forkbook framework and application framework.
287
+ {{RENDERER_REQUIREMENTS}}
288
+
289
+ ## Story Linking Agent Behavior
290
+
291
+ - ALWAYS provide story links after any changes to stories files, including changes to existing stories.
292
+ - {{STORY_LINKING_WORKFLOW}}
293
+ - {{FINAL_LINKS_GUIDANCE}}
294
+ - When you will share preview/story links (i.e. when you are not collapsing everything into a single review section), pass only the most relevant story IDs into **{{PREVIEW_STORIES}}** (generally no more than 5) so the returned URL list stays manageable. Include every URL returned by that call in your final response \u2014 do not drop links there.
295
+ - {{CHANGED_STORY_FALLBACK_LINK_GUIDANCE}}
296
+ - After changing any UI components, ALWAYS search for related stories that might cover the changes you've made. If you find any, provide the story links to the user. THIS IS VERY IMPORTANT, as it allows the user to visually inspect the changes you've made. Even later in a session when changing UI components or stories that have already been linked to previously, YOU MUST PROVIDE THE LINKS AGAIN.
297
+ `;
298
+
299
+ // src/cli/skills/content/build-story-instructions.ts
300
+ function buildStoryInstructions({
301
+ transport,
302
+ framework,
303
+ renderer,
304
+ testSupported,
305
+ a11yEnabled,
306
+ docsEnabled
307
+ }) {
308
+ let ref = getToolName({ transport }), resolvedRenderer = renderer ?? frameworkToRendererMap[framework] ?? framework, storyLinkingWorkflow = `After changing any component or story, call \`${ref("stories.changed")}\` to discover the new, modified, and related stories affected by your change. Story IDs must come from that call (or a fallback discovery tool such as ${ref("stories.findByComponent")} for shared-infrastructure changes) \u2014 never construct them from file names, export names, or memory. Feed the discovered IDs into **${ref("review.create")}** when the change is visually observable; use \`${ref("stories.preview")}\` only while iterating on a specific story.`, changedStoryFallbackLinkGuidance = `When sharing preview/story links (not when ending with a review section): if you did not pass every changed story into \`${ref("stories.preview")}\`, include this Forkbook fallback link so the user can view the complete changed list: \`/?statuses=affected;modified;new\`.`, docsWorkflowGuidance = `
309
+
310
+ ## Using library components
311
+
312
+ This Forkbook exposes component documentation tools. Before creating or changing any UI, call **${ref("docs.list")}** once to see what the design system already provides \u2014 build on existing components instead of hand-rolling duplicates \u2014 then call **${ref("docs.show")}** with the \`id\` of each component you build on or get asked about, for its real props and usage examples. When multiple Forkbook sources are configured, pass the \`storybookId\` from **${ref("docs.list")}** on follow-up calls. Do this instead of reading the library's source or type definitions out of \`node_modules\` \u2014 stories show intended usage, raw types don't \u2014 and answer props/usage questions from these tools too. Never assume or invent props.`, uiInstructions = storybook_story_instructions_default.replaceAll("{{FRAMEWORK}}", framework).replaceAll("{{RENDERER}}", resolvedRenderer).replace(
313
+ "{{RENDERER_REQUIREMENTS}}",
314
+ resolvedRenderer === "@storybook/react-native" ? "- React Native uses `.rnstorybook` directory" : ""
315
+ ).replace(`
316
+ {{DOCS_WORKFLOW_GUIDANCE}}`, docsEnabled ? docsWorkflowGuidance : "").replace("{{STORY_LINKING_WORKFLOW}}", storyLinkingWorkflow).replace("{{FINAL_LINKS_GUIDANCE}}", getFinalLinksGuidance(transport)).replace("{{PREVIEW_STORIES}}", ref("stories.preview")).replace("{{CHANGED_STORY_FALLBACK_LINK_GUIDANCE}}", changedStoryFallbackLinkGuidance);
317
+ if (testSupported) {
318
+ let a11yFixSuffix = a11yEnabled ? " (see a11y guidelines below)" : "", storyTestingInstructions = story_testing_instructions_default.replaceAll("{{RUN_STORY_TESTS_TOOL_NAME}}", ref("test.run")).replace("{{A11Y_FIX_SUFFIX}}", a11yFixSuffix);
319
+ uiInstructions += `
320
+
321
+ ${storyTestingInstructions}`, a11yEnabled && (uiInstructions += `
322
+ ${a11y_instructions_default}`);
323
+ }
324
+ return uiInstructions;
325
+ }
326
+ export {
327
+ SKILLS,
328
+ SKILL_IDS,
329
+ buildServerInstructions,
330
+ buildStoryInstructions,
331
+ frameworkToRendererMap,
332
+ getFinalLinksGuidance,
333
+ getSkillRef,
334
+ isSkillId
335
+ };
@@ -0,0 +1,61 @@
1
+ import { d as ToolsStorybookInfo, o as ToolsClientInfo } from "../../../chunk-DEVFdzxR.js";
2
+
3
+ //#region .dts-emit/code/core/src/shared/open-service/service-error-serialization.d.ts
4
+ /**
5
+ * Error (de)serialization for remote command execution.
6
+ *
7
+ * A command invoked from a runtime that has no local handler runs on a peer; when it throws, the
8
+ * thrown value has to cross the channel and be rethrown on the requester. `Error` instances are not
9
+ * structured-cloneable in a way that survives a websocket (JSON) or postMessage transport with their
10
+ * `name`, `stack`, `cause`, and Forkbook-specific fields (`code`, `fromStorybook`, …) intact, so we
11
+ * convert to and from a plain, transport-safe shape here.
12
+ *
13
+ * The conversion is recursive: an error's `cause` (and any nested arrays/objects, e.g. the
14
+ * `cause.aggregated` array used by the `.loaded()` drain) is walked so a multi-cause failure arrives
15
+ * on the requester with its chain reconstructed rather than flattened to a single message.
16
+ */
17
+ /** Marks a serialized object as a reconstructable `Error` rather than a plain payload object. */
18
+ declare const ERROR_MARKER: '__openServiceError__';
19
+ /** Transport-safe representation of a thrown `Error`, including its recursive `cause` chain. */
20
+ interface SerializedError {
21
+ [ERROR_MARKER]: true;
22
+ name: string;
23
+ message: string;
24
+ stack?: string;
25
+ /** The error's `cause`, itself serialized (another error, a plain object, an array, …). */
26
+ cause?: unknown;
27
+ /** Extra own enumerable fields (e.g. Forkbook's `code`, `fromStorybook`), serialized. */
28
+ properties?: Record<string, unknown>;
29
+ }
30
+ //#endregion
31
+ //#region .dts-emit/code/core/src/cli/tools/sdk/child-protocol.d.ts
32
+ type ChildHelloMessage = {
33
+ type: 'hello';
34
+ version: number;
35
+ storybook: ToolsStorybookInfo;
36
+ clientInfo: Required<ToolsClientInfo>;
37
+ };
38
+ type ChildResultMessage = {
39
+ type: 'result';
40
+ id: string;
41
+ value: unknown;
42
+ };
43
+ type ChildErrorMessage = {
44
+ type: 'error';
45
+ id: string;
46
+ error: SerializedError;
47
+ };
48
+ type ChildMessage = ChildHelloMessage | ChildResultMessage | ChildErrorMessage;
49
+ //#endregion
50
+ //#region .dts-emit/code/core/src/cli/tools/sdk/child-host.d.ts
51
+ declare function runChildHost({
52
+ send,
53
+ subscribe,
54
+ cwd
55
+ }?: {
56
+ send?: (message: ChildMessage) => void;
57
+ subscribe?: (handler: (message: unknown) => void) => void;
58
+ cwd?: () => string;
59
+ }): Promise<void>;
60
+ //#endregion
61
+ export { runChildHost };
@@ -0,0 +1,131 @@
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
+ createTools
14
+ } from "../../../_node-chunks/chunk-6KEHV53S.js";
15
+ import "../../../_node-chunks/chunk-LXBD4UL4.js";
16
+ import {
17
+ ToolsRuntimeError
18
+ } from "../../../_node-chunks/chunk-3SDUYDXH.js";
19
+ import "../../../_node-chunks/chunk-BSKFCWQD.js";
20
+ import "../../../_node-chunks/chunk-ICPBH3E7.js";
21
+ import "../../../_node-chunks/chunk-EWOX7HPJ.js";
22
+ import {
23
+ serializeError
24
+ } from "../../../_node-chunks/chunk-3W7F2B7P.js";
25
+ import "../../../_node-chunks/chunk-OUW6R7C3.js";
26
+ import "../../../_node-chunks/chunk-U5W53R2J.js";
27
+ import "../../../_node-chunks/chunk-2BUPBPFB.js";
28
+ import "../../../_node-chunks/chunk-CXRU72ET.js";
29
+
30
+ // src/cli/tools/sdk/child-host.ts
31
+ import { pathToFileURL } from "node:url";
32
+ async function runChildHost({
33
+ send = (message) => {
34
+ process.send?.(message);
35
+ },
36
+ subscribe = (handler) => {
37
+ process.on("message", handler);
38
+ },
39
+ cwd = () => process.cwd()
40
+ } = {}) {
41
+ process.on("disconnect", () => {
42
+ process.exit(0);
43
+ }), process.env.FORKBOOK_TOOLS_CHILD_HOST = "true";
44
+ let tools, controllers = /* @__PURE__ */ new Map(), handle = async (raw) => {
45
+ let message = raw;
46
+ switch (message.type) {
47
+ case "init": {
48
+ tools = await createTools({
49
+ ...message.options,
50
+ cwd: cwd(),
51
+ mode: message.options.mode ?? "attached",
52
+ autoSpawn: !1
53
+ }), send({
54
+ type: "hello",
55
+ version: 1,
56
+ storybook: tools.storybook,
57
+ clientInfo: tools.clientInfo
58
+ });
59
+ return;
60
+ }
61
+ case "describe": {
62
+ await reply(message.id, tools, () => tools.describe(message.options));
63
+ return;
64
+ }
65
+ case "call": {
66
+ let controller = new AbortController();
67
+ controllers.set(message.id, controller);
68
+ try {
69
+ await reply(
70
+ message.id,
71
+ tools,
72
+ () => tools.call(message.ref, message.input, { signal: controller.signal })
73
+ );
74
+ } finally {
75
+ controllers.delete(message.id);
76
+ }
77
+ return;
78
+ }
79
+ case "cancel": {
80
+ controllers.get(message.id)?.abort();
81
+ return;
82
+ }
83
+ case "close": {
84
+ await tools?.close(), process.exit(0);
85
+ return;
86
+ }
87
+ default:
88
+ throw message;
89
+ }
90
+ };
91
+ async function reply(id, host, run) {
92
+ if (!host) {
93
+ send({
94
+ type: "error",
95
+ id,
96
+ error: serializeError(
97
+ new ToolsRuntimeError({
98
+ reason: "command-unhandled",
99
+ message: "The child host has not been initialized."
100
+ })
101
+ )
102
+ });
103
+ return;
104
+ }
105
+ try {
106
+ send({ type: "result", id, value: await run() });
107
+ } catch (error) {
108
+ send({ type: "error", id, error: serializeError(error) });
109
+ }
110
+ }
111
+ subscribe((message) => {
112
+ handle(message).catch((error) => {
113
+ let fallbackId = typeof message == "object" && message !== null && "id" in message && typeof message.id == "string" ? message.id : "init";
114
+ send({ type: "error", id: fallbackId, error: serializeError(error) });
115
+ });
116
+ });
117
+ }
118
+ function isExecutedAsEntry() {
119
+ let entry = process.argv[1];
120
+ if (!entry)
121
+ return !1;
122
+ try {
123
+ return import.meta.url === pathToFileURL(entry).href;
124
+ } catch {
125
+ return !1;
126
+ }
127
+ }
128
+ isExecutedAsEntry() && runChildHost();
129
+ export {
130
+ runChildHost
131
+ };