@aussieljk/forkbook 0.0.0-stage → 0.0.1-10

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 (604) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +59 -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/inter-LICENSE.txt +92 -0
  7. package/assets/browser/inter-variable-italic.woff2 +0 -0
  8. package/assets/browser/inter-variable.woff2 +0 -0
  9. package/assets/browser/mirror-ball.png +0 -0
  10. package/assets/builder-vite/iframe.html +83 -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 +85 -0
  57. package/dist/.build-stamp +0 -0
  58. package/dist/_browser-chunks/Color-X63I7FHI.js +1025 -0
  59. package/dist/_browser-chunks/DocsRenderer-JXND3PVQ.js +10 -0
  60. package/dist/_browser-chunks/WithTooltip-5S6F2P7L.js +198 -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-3HM3VWJS.js +2604 -0
  64. package/dist/_browser-chunks/chunk-3M5T7BW4.js +43 -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-4KIQBRD2.js +17 -0
  68. package/dist/_browser-chunks/chunk-5H4KFI44.js +386 -0
  69. package/dist/_browser-chunks/chunk-5I7E4GMO.js +62 -0
  70. package/dist/_browser-chunks/chunk-5WMXI5GW.js +816 -0
  71. package/dist/_browser-chunks/chunk-5Z65SURM.js +108 -0
  72. package/dist/_browser-chunks/chunk-6AKCRYVX.js +6 -0
  73. package/dist/_browser-chunks/chunk-6ELMKWKX.js +22 -0
  74. package/dist/_browser-chunks/chunk-76222HQR.js +253 -0
  75. package/dist/_browser-chunks/chunk-7DQREF4S.js +218 -0
  76. package/dist/_browser-chunks/chunk-AYRF6EJB.js +36 -0
  77. package/dist/_browser-chunks/chunk-B4AUNNU4.js +156 -0
  78. package/dist/_browser-chunks/chunk-BCP2FFXF.js +369 -0
  79. package/dist/_browser-chunks/chunk-BNP234B4.js +80 -0
  80. package/dist/_browser-chunks/chunk-C5TKXHTM.js +82 -0
  81. package/dist/_browser-chunks/chunk-CNED6RYH.js +18 -0
  82. package/dist/_browser-chunks/chunk-DNJ3OSLB.js +6021 -0
  83. package/dist/_browser-chunks/chunk-DRQKCCAG.js +136 -0
  84. package/dist/_browser-chunks/chunk-DS2WQZGO.js +1956 -0
  85. package/dist/_browser-chunks/chunk-DYNTDJ3O.js +155 -0
  86. package/dist/_browser-chunks/chunk-ECQ75MKQ.js +0 -0
  87. package/dist/_browser-chunks/chunk-ENKK74N4.js +12 -0
  88. package/dist/_browser-chunks/chunk-EQKMUQF3.js +224 -0
  89. package/dist/_browser-chunks/chunk-FENFYI4X.js +698 -0
  90. package/dist/_browser-chunks/chunk-FRAOQJDI.js +95 -0
  91. package/dist/_browser-chunks/chunk-GNZY6LOW.js +10116 -0
  92. package/dist/_browser-chunks/chunk-GRO2ZYEJ.js +157 -0
  93. package/dist/_browser-chunks/chunk-I4ATZPNZ.js +34 -0
  94. package/dist/_browser-chunks/chunk-IE4ULIOQ.js +14 -0
  95. package/dist/_browser-chunks/chunk-IFADVEQE.js +669 -0
  96. package/dist/_browser-chunks/chunk-IMSF75WX.js +42 -0
  97. package/dist/_browser-chunks/chunk-IWQGIXJS.js +14 -0
  98. package/dist/_browser-chunks/chunk-JPUOQJUI.js +8 -0
  99. package/dist/_browser-chunks/chunk-JWSKPMPC.js +73 -0
  100. package/dist/_browser-chunks/chunk-KBK7GKBN.js +35 -0
  101. package/dist/_browser-chunks/chunk-KYSD26D6.js +1966 -0
  102. package/dist/_browser-chunks/chunk-LAWXTSXK.js +18 -0
  103. package/dist/_browser-chunks/chunk-LE2LTDW3.js +14 -0
  104. package/dist/_browser-chunks/chunk-LEVSOOLQ.js +48 -0
  105. package/dist/_browser-chunks/chunk-LTCXWKZO.js +2935 -0
  106. package/dist/_browser-chunks/chunk-LYYXDWR2.js +411 -0
  107. package/dist/_browser-chunks/chunk-MJIDTL3X.js +78 -0
  108. package/dist/_browser-chunks/chunk-MLBOOZL4.js +67 -0
  109. package/dist/_browser-chunks/chunk-N3NRW5XX.js +117 -0
  110. package/dist/_browser-chunks/chunk-N5WQGLI7.js +11 -0
  111. package/dist/_browser-chunks/chunk-NA4ITZTK.js +324 -0
  112. package/dist/_browser-chunks/chunk-NGMQJMCY.js +53 -0
  113. package/dist/_browser-chunks/chunk-NPNIBOPF.js +18 -0
  114. package/dist/_browser-chunks/chunk-NQUD4B7H.js +91 -0
  115. package/dist/_browser-chunks/chunk-NTUHL5NS.js +54 -0
  116. package/dist/_browser-chunks/chunk-NULBREPZ.js +43 -0
  117. package/dist/_browser-chunks/chunk-NZMVUW5T.js +7 -0
  118. package/dist/_browser-chunks/chunk-O24AZJZ7.js +56 -0
  119. package/dist/_browser-chunks/chunk-ONTSNQON.js +20 -0
  120. package/dist/_browser-chunks/chunk-OOETBSA7.js +502 -0
  121. package/dist/_browser-chunks/chunk-OVH3USFB.js +20 -0
  122. package/dist/_browser-chunks/chunk-OZZPSYQR.js +14 -0
  123. package/dist/_browser-chunks/chunk-PJSMZ27A.js +13 -0
  124. package/dist/_browser-chunks/chunk-PZQRXPVR.js +21 -0
  125. package/dist/_browser-chunks/chunk-QC4HFS6K.js +41 -0
  126. package/dist/_browser-chunks/chunk-QDXFODK4.js +274 -0
  127. package/dist/_browser-chunks/chunk-RBCHTR7C.js +28 -0
  128. package/dist/_browser-chunks/chunk-RMYQ3QN3.js +294 -0
  129. package/dist/_browser-chunks/chunk-S6TK43XQ.js +836 -0
  130. package/dist/_browser-chunks/chunk-SC67XZST.js +18 -0
  131. package/dist/_browser-chunks/chunk-SFVA4SBT.js +683 -0
  132. package/dist/_browser-chunks/chunk-SZYFOQMT.js +25 -0
  133. package/dist/_browser-chunks/chunk-TBJCJXK4.js +18 -0
  134. package/dist/_browser-chunks/chunk-TTBPZQ24.js +3551 -0
  135. package/dist/_browser-chunks/chunk-UMDO3KB7.js +205 -0
  136. package/dist/_browser-chunks/chunk-UMGDO2ZM.js +169 -0
  137. package/dist/_browser-chunks/chunk-V5U45XXZ.js +24 -0
  138. package/dist/_browser-chunks/chunk-W7NE2JXW.js +84 -0
  139. package/dist/_browser-chunks/chunk-WGVAAM43.js +1110 -0
  140. package/dist/_browser-chunks/chunk-WHQRNHXD.js +8 -0
  141. package/dist/_browser-chunks/chunk-WOSOWBCA.js +12 -0
  142. package/dist/_browser-chunks/chunk-WZ7KR7SH.js +85 -0
  143. package/dist/_browser-chunks/chunk-XKTORVEQ.js +255 -0
  144. package/dist/_browser-chunks/chunk-XTQCLWVH.js +1500 -0
  145. package/dist/_browser-chunks/chunk-YI2IBIQS.js +7 -0
  146. package/dist/_browser-chunks/chunk-ZEHRUHTA.js +6 -0
  147. package/dist/_browser-chunks/chunk-ZHKZKFY4.js +199 -0
  148. package/dist/_browser-chunks/matchers-YLBYSYAF.js +1263 -0
  149. package/dist/_browser-chunks/react-dom-client-4OHE3QDV.js +9 -0
  150. package/dist/_node-chunks/attached-runtime-PDBJ2EGV.js +282 -0
  151. package/dist/_node-chunks/builder-manager-VLL26RPG.js +1139 -0
  152. package/dist/_node-chunks/chunk-3CSGIJKG.js +499 -0
  153. package/dist/_node-chunks/chunk-3W4KR5GX.js +2609 -0
  154. package/dist/_node-chunks/chunk-5NRWU7S2.js +194 -0
  155. package/dist/_node-chunks/chunk-5SMIGUYF.js +102 -0
  156. package/dist/_node-chunks/chunk-63LPGIV4.js +1049 -0
  157. package/dist/_node-chunks/chunk-6DHTL5G2.js +35 -0
  158. package/dist/_node-chunks/chunk-6DRVJCYP.js +299 -0
  159. package/dist/_node-chunks/chunk-7CV4VEA2.js +620 -0
  160. package/dist/_node-chunks/chunk-7KD5DKGZ.js +79 -0
  161. package/dist/_node-chunks/chunk-7O2UIVID.js +82 -0
  162. package/dist/_node-chunks/chunk-7OY4VMAT.js +90 -0
  163. package/dist/_node-chunks/chunk-AAL6X7YG.js +1986 -0
  164. package/dist/_node-chunks/chunk-ACSO4HQP.js +32 -0
  165. package/dist/_node-chunks/chunk-BDU3ZUMK.js +98 -0
  166. package/dist/_node-chunks/chunk-BMJPOQ2S.js +11 -0
  167. package/dist/_node-chunks/chunk-BNEC3EBC.js +28 -0
  168. package/dist/_node-chunks/chunk-BPL3ERBH.js +347 -0
  169. package/dist/_node-chunks/chunk-BXDMSX3D.js +30600 -0
  170. package/dist/_node-chunks/chunk-C3PLG47Q.js +25 -0
  171. package/dist/_node-chunks/chunk-CEDR5CNM.js +74 -0
  172. package/dist/_node-chunks/chunk-CKE4R4NL.js +26 -0
  173. package/dist/_node-chunks/chunk-CSFNS7HA.js +21 -0
  174. package/dist/_node-chunks/chunk-CZ3V3HHK.js +223 -0
  175. package/dist/_node-chunks/chunk-DNV3LPV3.js +33 -0
  176. package/dist/_node-chunks/chunk-DPILYJH4.js +33 -0
  177. package/dist/_node-chunks/chunk-DQ44ZAEM.js +25 -0
  178. package/dist/_node-chunks/chunk-DR7NW2MI.js +104 -0
  179. package/dist/_node-chunks/chunk-DRCP3DQF.js +209 -0
  180. package/dist/_node-chunks/chunk-EBWZKN2I.js +1297 -0
  181. package/dist/_node-chunks/chunk-ECOW63CV.js +92 -0
  182. package/dist/_node-chunks/chunk-ENBDAHOV.js +18 -0
  183. package/dist/_node-chunks/chunk-FAEOR2AW.js +40 -0
  184. package/dist/_node-chunks/chunk-FERXOKZY.js +80 -0
  185. package/dist/_node-chunks/chunk-FJFB7TWU.js +495 -0
  186. package/dist/_node-chunks/chunk-FQGQ5KHN.js +63 -0
  187. package/dist/_node-chunks/chunk-FR2ZDWKJ.js +45 -0
  188. package/dist/_node-chunks/chunk-FRBE7ES4.js +59 -0
  189. package/dist/_node-chunks/chunk-FWAF5NBL.js +20 -0
  190. package/dist/_node-chunks/chunk-FXBZWUW3.js +7044 -0
  191. package/dist/_node-chunks/chunk-FZ453CHY.js +25 -0
  192. package/dist/_node-chunks/chunk-G2ZUFOHU.js +68 -0
  193. package/dist/_node-chunks/chunk-GBVWRZHP.js +23 -0
  194. package/dist/_node-chunks/chunk-GGE7TBVX.js +121 -0
  195. package/dist/_node-chunks/chunk-GJSYGBI5.js +47 -0
  196. package/dist/_node-chunks/chunk-GKHLTHYM.js +4744 -0
  197. package/dist/_node-chunks/chunk-GQYATLH6.js +3708 -0
  198. package/dist/_node-chunks/chunk-HCP5DG52.js +2743 -0
  199. package/dist/_node-chunks/chunk-HVOSLI2K.js +20 -0
  200. package/dist/_node-chunks/chunk-ID3WA6WR.js +171 -0
  201. package/dist/_node-chunks/chunk-IGOX6TUG.js +95 -0
  202. package/dist/_node-chunks/chunk-IL7YA7QJ.js +148 -0
  203. package/dist/_node-chunks/chunk-IUPE4SU2.js +688 -0
  204. package/dist/_node-chunks/chunk-JVWXCB3L.js +7179 -0
  205. package/dist/_node-chunks/chunk-K4O2ZAMU.js +57 -0
  206. package/dist/_node-chunks/chunk-KRWR44KT.js +25 -0
  207. package/dist/_node-chunks/chunk-KWNBN3DV.js +132 -0
  208. package/dist/_node-chunks/chunk-LG3NMXCM.js +20 -0
  209. package/dist/_node-chunks/chunk-LH5QBX2U.js +1001 -0
  210. package/dist/_node-chunks/chunk-LX2XSPPL.js +59 -0
  211. package/dist/_node-chunks/chunk-M4QNXI37.js +21 -0
  212. package/dist/_node-chunks/chunk-MBPHOLXB.js +1218 -0
  213. package/dist/_node-chunks/chunk-MIWBXEUH.js +26 -0
  214. package/dist/_node-chunks/chunk-MKUA4ZCG.js +1193 -0
  215. package/dist/_node-chunks/chunk-MQC7ZY6L.js +5468 -0
  216. package/dist/_node-chunks/chunk-MRCPS4S3.js +48 -0
  217. package/dist/_node-chunks/chunk-MY7UVHPL.js +153 -0
  218. package/dist/_node-chunks/chunk-ND323XCC.js +33 -0
  219. package/dist/_node-chunks/chunk-NGFFEW2B.js +972 -0
  220. package/dist/_node-chunks/chunk-OPG46TLN.js +1119 -0
  221. package/dist/_node-chunks/chunk-PEL4YXU6.js +19 -0
  222. package/dist/_node-chunks/chunk-QFXAGOIO.js +115 -0
  223. package/dist/_node-chunks/chunk-QGC3UWR5.js +110 -0
  224. package/dist/_node-chunks/chunk-QGVU7IFS.js +414 -0
  225. package/dist/_node-chunks/chunk-QOFBJXPH.js +1525 -0
  226. package/dist/_node-chunks/chunk-QVLHVO4X.js +532 -0
  227. package/dist/_node-chunks/chunk-R2ZCFA7I.js +60 -0
  228. package/dist/_node-chunks/chunk-RC4HPD5Q.js +26 -0
  229. package/dist/_node-chunks/chunk-RJXAXHDJ.js +415 -0
  230. package/dist/_node-chunks/chunk-SGEPJMTU.js +1094 -0
  231. package/dist/_node-chunks/chunk-SYUOBOB5.js +35 -0
  232. package/dist/_node-chunks/chunk-T5VZYRL2.js +40 -0
  233. package/dist/_node-chunks/chunk-T6IU66AM.js +69 -0
  234. package/dist/_node-chunks/chunk-THDTJJMO.js +611 -0
  235. package/dist/_node-chunks/chunk-TNFH4Y4G.js +1133 -0
  236. package/dist/_node-chunks/chunk-TY2ZY7AO.js +155 -0
  237. package/dist/_node-chunks/chunk-TZIT6SZP.js +49 -0
  238. package/dist/_node-chunks/chunk-VG2KFIOW.js +45 -0
  239. package/dist/_node-chunks/chunk-VSHYJR23.js +56 -0
  240. package/dist/_node-chunks/chunk-VUMGWJ6Y.js +844 -0
  241. package/dist/_node-chunks/chunk-WVRM6DQU.js +3767 -0
  242. package/dist/_node-chunks/chunk-YU5TVYPS.js +87 -0
  243. package/dist/_node-chunks/chunk-ZBWAA2EY.js +2106 -0
  244. package/dist/_node-chunks/chunk-ZD5TUA6I.js +20 -0
  245. package/dist/_node-chunks/chunk-ZFLK7MY5.js +144 -0
  246. package/dist/_node-chunks/dist-7OJKTBKL.js +27 -0
  247. package/dist/_node-chunks/dist-MWP6WLW4.js +16 -0
  248. package/dist/_node-chunks/local-runtime-V5YTRN24.js +78 -0
  249. package/dist/_node-chunks/mdx-plugin-CBOD52VP.js +7813 -0
  250. package/dist/_node-chunks/monorepo-GF6H53U4.js +121 -0
  251. package/dist/_node-chunks/monorepo-optimized-tests-relaxed-limits-no-story-deletion-K4TTV2DQ.js +121 -0
  252. package/dist/_node-chunks/optimized-tests-KOTSVWTN.js +22 -0
  253. package/dist/_node-chunks/pattern-copy-play-M2QNC4IZ.js +807 -0
  254. package/dist/_node-chunks/postinstallAddon-WXKJL6DP.js +20 -0
  255. package/dist/_node-chunks/rehype-external-links-3IDE4CYH.js +121 -0
  256. package/dist/_node-chunks/rehype-slug-GKB3WS3U.js +52 -0
  257. package/dist/_node-chunks/relaxed-limits-C6QU365N.js +117 -0
  258. package/dist/_node-chunks/run-TMVS3KKA.js +4792 -0
  259. package/dist/_node-chunks/run-XWBUPXLN.js +103 -0
  260. package/dist/_node-chunks/session-id-VMH57SKN.js +23 -0
  261. package/dist/_node-chunks/setup-KEEJK4WI.js +278 -0
  262. package/dist/_node-chunks/vitest.config.4.template-74HEE4WJ.js +54 -0
  263. package/dist/actions/decorator.d.ts +7 -0
  264. package/dist/actions/decorator.js +44 -0
  265. package/dist/actions/index.d.ts +67 -0
  266. package/dist/actions/index.js +29 -0
  267. package/dist/addon-a11y/index.d.ts +52 -0
  268. package/dist/addon-a11y/index.js +17 -0
  269. package/dist/addon-a11y/manager.js +1432 -0
  270. package/dist/addon-a11y/preset.js +18 -0
  271. package/dist/addon-a11y/preview.d.ts +17 -0
  272. package/dist/addon-a11y/preview.js +16 -0
  273. package/dist/addon-docs/blocks.d.ts +1080 -0
  274. package/dist/addon-docs/blocks.js +2537 -0
  275. package/dist/addon-docs/index.d.ts +236 -0
  276. package/dist/addon-docs/index.js +16 -0
  277. package/dist/addon-docs/manager.js +90 -0
  278. package/dist/addon-docs/mdx-react-shim.d.ts +1 -0
  279. package/dist/addon-docs/mdx-react-shim.js +2 -0
  280. package/dist/addon-docs/preset.js +378 -0
  281. package/dist/addon-docs/preview.d.ts +4 -0
  282. package/dist/addon-docs/preview.js +7 -0
  283. package/dist/addon-links/index.d.ts +22 -0
  284. package/dist/addon-links/index.js +23 -0
  285. package/dist/addon-links/manager.js +14 -0
  286. package/dist/addon-links/preview.d.ts +6 -0
  287. package/dist/addon-links/preview.js +12 -0
  288. package/dist/addon-links/react/index.d.ts +25 -0
  289. package/dist/addon-links/react/index.js +55 -0
  290. package/dist/addon-mcp/preset.js +1353 -0
  291. package/dist/addon-mcp/preview.js +29 -0
  292. package/dist/addon-mcp/tools/preview-stories/preview-stories-app-script.js +1129 -0
  293. package/dist/addon-ondevice-actions/index.d.ts +4 -0
  294. package/dist/addon-ondevice-actions/index.js +11 -0
  295. package/dist/addon-ondevice-actions/register.js +11 -0
  296. package/dist/addon-ondevice-controls/index.d.ts +6 -0
  297. package/dist/addon-ondevice-controls/index.js +14 -0
  298. package/dist/addon-ondevice-controls/register.js +10 -0
  299. package/dist/addon-pseudo-states/index.d.ts +35 -0
  300. package/dist/addon-pseudo-states/index.js +15 -0
  301. package/dist/addon-pseudo-states/manager.js +53 -0
  302. package/dist/addon-pseudo-states/preview.d.ts +9 -0
  303. package/dist/addon-pseudo-states/preview.js +10 -0
  304. package/dist/addon-themes/index.d.ts +80 -0
  305. package/dist/addon-themes/index.js +104 -0
  306. package/dist/addon-themes/manager.js +97 -0
  307. package/dist/addon-themes/postinstall.js +33 -0
  308. package/dist/addon-themes/preview.d.ts +6 -0
  309. package/dist/addon-themes/preview.js +8 -0
  310. package/dist/addon-vitest/constants.d.ts +132 -0
  311. package/dist/addon-vitest/constants.js +66 -0
  312. package/dist/addon-vitest/index.d.ts +4 -0
  313. package/dist/addon-vitest/index.js +8 -0
  314. package/dist/addon-vitest/manager.js +665 -0
  315. package/dist/addon-vitest/node/coverage-reporter.js +1284 -0
  316. package/dist/addon-vitest/node/vitest.js +674 -0
  317. package/dist/addon-vitest/postinstall.js +24 -0
  318. package/dist/addon-vitest/preset.js +942 -0
  319. package/dist/addon-vitest/vitest-plugin/global-setup.js +162 -0
  320. package/dist/addon-vitest/vitest-plugin/index.d.ts +56 -0
  321. package/dist/addon-vitest/vitest-plugin/index.js +463 -0
  322. package/dist/addon-vitest/vitest-plugin/setup-file-with-project-annotations.js +9 -0
  323. package/dist/addon-vitest/vitest-plugin/setup-file.browser.4.js +20 -0
  324. package/dist/addon-vitest/vitest-plugin/setup-file.js +50 -0
  325. package/dist/addon-vitest/vitest-plugin/test-utils.js +128 -0
  326. package/dist/babel/index.d.ts +1550 -0
  327. package/dist/babel/index.js +55 -0
  328. package/dist/backgrounds/index.d.ts +6 -0
  329. package/dist/backgrounds/index.js +15 -0
  330. package/dist/bin/core.js +1706 -0
  331. package/dist/bin/dispatcher.js +45 -0
  332. package/dist/bin/loader.js +116 -0
  333. package/dist/builder-vite/index.d.ts +50 -0
  334. package/dist/builder-vite/index.js +245 -0
  335. package/dist/builder-vite/preset.js +27 -0
  336. package/dist/channels/index.d.ts +2 -0
  337. package/dist/channels/index.js +352 -0
  338. package/dist/chunk-BCoJQE-f.d.ts +602 -0
  339. package/dist/chunk-BGhyFTJO.d.ts +115 -0
  340. package/dist/chunk-BGkgZp-H.d.ts +214 -0
  341. package/dist/chunk-BXLImeLy.d.ts +197 -0
  342. package/dist/chunk-Bpi2tz-6.d.ts +511 -0
  343. package/dist/chunk-C6PAgHLT.d.ts +12 -0
  344. package/dist/chunk-CFk6djyM.d.ts +55 -0
  345. package/dist/chunk-CNqjcOmK.d.ts +15 -0
  346. package/dist/chunk-CT2iXaHz.d.ts +179 -0
  347. package/dist/chunk-CV4-Z2pn.d.ts +30 -0
  348. package/dist/chunk-CYuvV2sR.d.ts +282 -0
  349. package/dist/chunk-Ct9xd6IM.d.ts +65 -0
  350. package/dist/chunk-D0NUmzXp.d.ts +253 -0
  351. package/dist/chunk-D7DwV41f.d.ts +3622 -0
  352. package/dist/chunk-DDd8BhTY.d.ts +79 -0
  353. package/dist/chunk-DROZ9oel.d.ts +669 -0
  354. package/dist/chunk-DaVb55-_.d.ts +124 -0
  355. package/dist/chunk-DgRNfmj_.d.ts +40 -0
  356. package/dist/chunk-DgzPaTw9.d.ts +61 -0
  357. package/dist/chunk-Dm-iHJ-s.d.ts +59 -0
  358. package/dist/chunk-DoIGKY33.d.ts +666 -0
  359. package/dist/chunk-Dr3R0DXk.d.ts +40 -0
  360. package/dist/chunk-Dw_4ad2Y.d.ts +34 -0
  361. package/dist/chunk-Fg1Fm__9.d.ts +13091 -0
  362. package/dist/chunk-FjDVzZTj.d.ts +62 -0
  363. package/dist/chunk-Susgfkap.d.ts +20 -0
  364. package/dist/chunk-XP8oHzpE.d.ts +6 -0
  365. package/dist/chunk-pcFXCimE.d.ts +741 -0
  366. package/dist/cli/index.d.ts +321 -0
  367. package/dist/cli/index.js +703 -0
  368. package/dist/cli/skills/content/index.d.ts +72 -0
  369. package/dist/cli/skills/content/index.js +335 -0
  370. package/dist/cli/tools/sdk/child-host.d.ts +61 -0
  371. package/dist/cli/tools/sdk/child-host.js +131 -0
  372. package/dist/cli/tools/sdk/index.d.ts +137 -0
  373. package/dist/cli/tools/sdk/index.js +44 -0
  374. package/dist/cli-commands/bin/index.js +25 -0
  375. package/dist/client-logger/index.d.ts +31 -0
  376. package/dist/client-logger/index.js +65 -0
  377. package/dist/common/index.d.ts +1091 -0
  378. package/dist/common/index.js +358 -0
  379. package/dist/components/index.d.ts +1727 -0
  380. package/dist/components/index.js +7982 -0
  381. package/dist/core-events/index.d.ts +156 -0
  382. package/dist/core-events/index.js +138 -0
  383. package/dist/core-server/index.d.ts +2200 -0
  384. package/dist/core-server/index.js +4577 -0
  385. package/dist/core-server/presets/common-manager.js +3744 -0
  386. package/dist/core-server/presets/common-override-preset.js +83 -0
  387. package/dist/core-server/presets/common-preset.js +2194 -0
  388. package/dist/create/bin/index.js +23 -0
  389. package/dist/create/index.js +25 -0
  390. package/dist/csf/csf-utils.d.ts +2 -0
  391. package/dist/csf/csf-utils.js +19 -0
  392. package/dist/csf/index.d.ts +7 -0
  393. package/dist/csf/index.js +2077 -0
  394. package/dist/csf-tools/index.d.ts +1161 -0
  395. package/dist/csf-tools/index.js +738 -0
  396. package/dist/docs-tools/index.d.ts +197 -0
  397. package/dist/docs-tools/index.js +61 -0
  398. package/dist/highlight/index.d.ts +10 -0
  399. package/dist/highlight/index.js +15 -0
  400. package/dist/instrumenter/index.d.ts +113 -0
  401. package/dist/instrumenter/index.js +2597 -0
  402. package/dist/manager/_manager-chunks/globals-runtime-BKQscPdC.js +5661 -0
  403. package/dist/manager/_manager-chunks/globals-runtime-BY3epqww.js +1807 -0
  404. package/dist/manager/_manager-chunks/globals-runtime-BdGkqNEt.js +45 -0
  405. package/dist/manager/_manager-chunks/globals-runtime-Bj5KDUJi.js +8935 -0
  406. package/dist/manager/_manager-chunks/globals-runtime-Bs75QQ_I.js +9987 -0
  407. package/dist/manager/_manager-chunks/globals-runtime-BweHuXkK.js +6838 -0
  408. package/dist/manager/_manager-chunks/globals-runtime-CA8AuIRT.js +7617 -0
  409. package/dist/manager/_manager-chunks/globals-runtime-CBviMKtt.js +446 -0
  410. package/dist/manager/_manager-chunks/globals-runtime-CJL1dQtn.js +4674 -0
  411. package/dist/manager/_manager-chunks/globals-runtime-CfurFwS_.js +121 -0
  412. package/dist/manager/_manager-chunks/globals-runtime-CvIgTRVu.js +1190 -0
  413. package/dist/manager/_manager-chunks/globals-runtime-DBba3I9c.js +5307 -0
  414. package/dist/manager/_manager-chunks/globals-runtime-DvV_TF3-.js +12214 -0
  415. package/dist/manager/_manager-chunks/globals-runtime-DwFqpqya.js +722 -0
  416. package/dist/manager/_manager-chunks/globals-runtime-NwJK8t0T.js +9274 -0
  417. package/dist/manager/_manager-chunks/globals-runtime-WZKaeKm9.js +4091 -0
  418. package/dist/manager/_manager-chunks/globals-runtime-wjkxyMn0.js +5283 -0
  419. package/dist/manager/_manager-chunks/runtime-5B2mWjEm.js +294 -0
  420. package/dist/manager/_manager-chunks/runtime-5o_11Jae.js +78 -0
  421. package/dist/manager/_manager-chunks/runtime-B_nqedQW.js +197 -0
  422. package/dist/manager/_manager-chunks/runtime-BdGkqNEt.js +45 -0
  423. package/dist/manager/_manager-chunks/runtime-Bs3bEhuy.js +1232 -0
  424. package/dist/manager/_manager-chunks/runtime-CBQsKmch.js +2351 -0
  425. package/dist/manager/_manager-chunks/runtime-DG61zYUm.js +1158 -0
  426. package/dist/manager/_manager-chunks/runtime-DtCVCy4G.js +6841 -0
  427. package/dist/manager/_manager-chunks/runtime-P663lpsR.js +528 -0
  428. package/dist/manager/_manager-chunks/runtime-eBAgOym6.js +9010 -0
  429. package/dist/manager/_manager-chunks/runtime-j9yqh0tr.js +1023 -0
  430. package/dist/manager/_manager-chunks/runtime-jj8qYc2n.js +3488 -0
  431. package/dist/manager/globals-runtime.js +2 -0
  432. package/dist/manager/globals.d.ts +23 -0
  433. package/dist/manager/globals.js +26 -0
  434. package/dist/manager/manager-stores.d.ts +2 -0
  435. package/dist/manager/manager-stores.js +19 -0
  436. package/dist/manager/runtime.js +2 -0
  437. package/dist/manager-api/index.d.ts +2 -0
  438. package/dist/manager-api/index.js +3247 -0
  439. package/dist/manager-errors.d.ts +89 -0
  440. package/dist/manager-errors.js +20 -0
  441. package/dist/mcp/index.d.ts +270 -0
  442. package/dist/mcp/index.js +305 -0
  443. package/dist/mocking-utils/index.d.ts +689 -0
  444. package/dist/mocking-utils/index.js +526 -0
  445. package/dist/mocking-utils/mocker-runtime.js +1254 -0
  446. package/dist/nextjs-vite/config/preview.js +3 -0
  447. package/dist/nextjs-vite/export-mocks/cache/index.d.ts +25 -0
  448. package/dist/nextjs-vite/export-mocks/cache/index.js +29 -0
  449. package/dist/nextjs-vite/export-mocks/headers/index.d.ts +37 -0
  450. package/dist/nextjs-vite/export-mocks/headers/index.js +54 -0
  451. package/dist/nextjs-vite/export-mocks/link/index.d.ts +9 -0
  452. package/dist/nextjs-vite/export-mocks/link/index.js +59 -0
  453. package/dist/nextjs-vite/export-mocks/navigation/index.d.ts +28 -0
  454. package/dist/nextjs-vite/export-mocks/navigation/index.js +58 -0
  455. package/dist/nextjs-vite/export-mocks/router/index.d.ts +34 -0
  456. package/dist/nextjs-vite/export-mocks/router/index.js +63 -0
  457. package/dist/nextjs-vite/index.d.ts +92 -0
  458. package/dist/nextjs-vite/index.js +59 -0
  459. package/dist/nextjs-vite/node/index.d.ts +6 -0
  460. package/dist/nextjs-vite/node/index.js +20 -0
  461. package/dist/nextjs-vite/node-stand-ins/index.d.ts +68 -0
  462. package/dist/nextjs-vite/node-stand-ins/index.js +145 -0
  463. package/dist/nextjs-vite/preset.js +727 -0
  464. package/dist/nextjs-vite/preview.d.ts +20 -0
  465. package/dist/nextjs-vite/preview.js +11 -0
  466. package/dist/nextjs-vite/vite-plugin/index.d.ts +6 -0
  467. package/dist/nextjs-vite/vite-plugin/index.js +19 -0
  468. package/dist/nextjs-vite-plugin/index.d.ts +27 -0
  469. package/dist/nextjs-vite-plugin/index.js +908 -0
  470. package/dist/nextjs-vite-plugin/mocks/storybook.global.js +29 -0
  471. package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-context.js +8 -0
  472. package/dist/nextjs-vite-plugin/plugins/next-image/alias/image-default-loader.js +23 -0
  473. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-image.js +28 -0
  474. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-legacy-image.js +17 -0
  475. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/cache/index.js +29 -0
  476. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/dynamic/index.js +40 -0
  477. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/headers/index.js +55 -0
  478. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/link/index.js +63 -0
  479. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/navigation/index.js +71 -0
  480. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/router/index.js +74 -0
  481. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/rsc/server-only.js +7 -0
  482. package/dist/nextjs-vite-plugin/plugins/next-mocks/alias/safe-stable-stringify/index.js +13 -0
  483. package/dist/nextjs-vite-plugin/plugins/next-mocks/compatibility/draft-mode.compat.js +7 -0
  484. package/dist/node-logger/index.d.ts +488 -0
  485. package/dist/node-logger/index.js +41 -0
  486. package/dist/oxc-parser/index.d.ts +99 -0
  487. package/dist/oxc-parser/index.js +273 -0
  488. package/dist/oxc-parser/worker.js +37 -0
  489. package/dist/preview/_chunks/runtime-BJwGQok8.js +3873 -0
  490. package/dist/preview/_chunks/runtime-BPwAnlRx.js +10411 -0
  491. package/dist/preview/_chunks/runtime-BUnOhg9h.js +6838 -0
  492. package/dist/preview/_chunks/runtime-BZ4pNS3g.js +284 -0
  493. package/dist/preview/_chunks/runtime-Bcv1hJky.js +6305 -0
  494. package/dist/preview/_chunks/runtime-BdGkqNEt.js +45 -0
  495. package/dist/preview/_chunks/runtime-BgPhfM5P.js +3681 -0
  496. package/dist/preview/_chunks/runtime-BhSZ1Mwt.js +5262 -0
  497. package/dist/preview/_chunks/runtime-BsMjBzuq.js +53 -0
  498. package/dist/preview/_chunks/runtime-C1jgT6tJ.js +4091 -0
  499. package/dist/preview/_chunks/runtime-CkOhMcXf.js +387 -0
  500. package/dist/preview/_chunks/runtime-WapFVPAh.js +8484 -0
  501. package/dist/preview/globals.d.ts +16 -0
  502. package/dist/preview/globals.js +20 -0
  503. package/dist/preview/runtime.js +6 -0
  504. package/dist/preview-api/index.d.ts +4 -0
  505. package/dist/preview-api/index.js +149 -0
  506. package/dist/preview-errors.d.ts +186 -0
  507. package/dist/preview-errors.js +56 -0
  508. package/dist/react/docgen/docgen-worker.js +37 -0
  509. package/dist/react/entry-preview-argtypes.js +9 -0
  510. package/dist/react/entry-preview-docs.js +12 -0
  511. package/dist/react/entry-preview-rsc.js +11 -0
  512. package/dist/react/entry-preview.js +22 -0
  513. package/dist/react/index.d.ts +119 -0
  514. package/dist/react/index.js +28 -0
  515. package/dist/react/preset.js +300 -0
  516. package/dist/react/preview.d.ts +2 -0
  517. package/dist/react/preview.js +12 -0
  518. package/dist/react-native/bin/get-stories.js +34 -0
  519. package/dist/react-native/index.d.ts +160 -0
  520. package/dist/react-native/index.js +1362 -0
  521. package/dist/react-native/metro/node.d.ts +83 -0
  522. package/dist/react-native/metro/node.js +22 -0
  523. package/dist/react-native/metro/withForkbook.d.ts +2269 -0
  524. package/dist/react-native/metro/withForkbook.js +139 -0
  525. package/dist/react-native/preview.d.ts +6 -0
  526. package/dist/react-native/preview.js +20 -0
  527. package/dist/react-native/scripts/generate.d.ts +22 -0
  528. package/dist/react-native/scripts/generate.js +18 -0
  529. package/dist/react-native/stub.js +20 -0
  530. package/dist/react-native-theming/index.d.ts +119 -0
  531. package/dist/react-native-theming/index.js +316 -0
  532. package/dist/react-native-ui/index.d.ts +129 -0
  533. package/dist/react-native-ui/index.js +1448 -0
  534. package/dist/react-native-ui-common/index.d.ts +229 -0
  535. package/dist/react-native-ui-common/index.js +514 -0
  536. package/dist/react-vite/index.d.ts +4 -0
  537. package/dist/react-vite/index.js +8 -0
  538. package/dist/react-vite/node/index.d.ts +6 -0
  539. package/dist/react-vite/node/index.js +20 -0
  540. package/dist/react-vite/preset.d.ts +6 -0
  541. package/dist/react-vite/preset.js +21 -0
  542. package/dist/router/index.d.ts +209 -0
  543. package/dist/router/index.js +1259 -0
  544. package/dist/server-errors.d.ts +2 -0
  545. package/dist/server-errors.js +149 -0
  546. package/dist/shared/open-service/index.d.ts +3 -0
  547. package/dist/shared/open-service/index.js +115 -0
  548. package/dist/shared/open-service/services/docgen/worker/docgen-worker.js +75 -0
  549. package/dist/shared/open-service/toolsets/docs/public.d.ts +1296 -0
  550. package/dist/shared/open-service/toolsets/docs/public.js +991 -0
  551. package/dist/telemetry/index.d.ts +314 -0
  552. package/dist/telemetry/index.js +101 -0
  553. package/dist/test/index.d.ts +158 -0
  554. package/dist/test/index.js +19656 -0
  555. package/dist/theming/create.d.ts +15 -0
  556. package/dist/theming/create.js +12 -0
  557. package/dist/theming/index.d.ts +54 -0
  558. package/dist/theming/index.js +536 -0
  559. package/dist/types/index.d.ts +2 -0
  560. package/dist/types/index.js +48 -0
  561. package/dist/viewport/index.d.ts +275 -0
  562. package/dist/viewport/index.js +21 -0
  563. package/package.json +1030 -4
  564. package/template/nextjs-vite/cli/.eslintrc.json +6 -0
  565. package/template/nextjs-vite/cli/js/Button.jsx +42 -0
  566. package/template/nextjs-vite/cli/js/Button.stories.js +49 -0
  567. package/template/nextjs-vite/cli/js/Configure.mdx +470 -0
  568. package/template/nextjs-vite/cli/js/Header.jsx +58 -0
  569. package/template/nextjs-vite/cli/js/Header.stories.js +30 -0
  570. package/template/nextjs-vite/cli/js/Page.jsx +68 -0
  571. package/template/nextjs-vite/cli/js/Page.stories.js +28 -0
  572. package/template/nextjs-vite/cli/ts/Button.stories.ts +54 -0
  573. package/template/nextjs-vite/cli/ts/Button.tsx +39 -0
  574. package/template/nextjs-vite/cli/ts/Configure.mdx +446 -0
  575. package/template/nextjs-vite/cli/ts/Header.stories.ts +34 -0
  576. package/template/nextjs-vite/cli/ts/Header.tsx +54 -0
  577. package/template/nextjs-vite/cli/ts/Page.stories.ts +33 -0
  578. package/template/nextjs-vite/cli/ts/Page.tsx +73 -0
  579. package/template/react/cli/.eslintrc.json +5 -0
  580. package/template/react/cli/js/Button.jsx +39 -0
  581. package/template/react/cli/js/Button.stories.js +49 -0
  582. package/template/react/cli/js/Header.jsx +56 -0
  583. package/template/react/cli/js/Header.stories.js +29 -0
  584. package/template/react/cli/js/Page.jsx +69 -0
  585. package/template/react/cli/js/Page.stories.js +28 -0
  586. package/template/react/cli/ts/Button.stories.ts +54 -0
  587. package/template/react/cli/ts/Button.tsx +37 -0
  588. package/template/react/cli/ts/Header.stories.ts +34 -0
  589. package/template/react/cli/ts/Header.tsx +56 -0
  590. package/template/react/cli/ts/Page.stories.ts +33 -0
  591. package/template/react/cli/ts/Page.tsx +73 -0
  592. package/template/react-vite/cli/.eslintrc.json +5 -0
  593. package/template/react-vite/cli/js/Button.jsx +39 -0
  594. package/template/react-vite/cli/js/Button.stories.js +49 -0
  595. package/template/react-vite/cli/js/Header.jsx +56 -0
  596. package/template/react-vite/cli/js/Header.stories.js +29 -0
  597. package/template/react-vite/cli/js/Page.jsx +69 -0
  598. package/template/react-vite/cli/js/Page.stories.js +28 -0
  599. package/template/react-vite/cli/ts/Button.stories.ts +54 -0
  600. package/template/react-vite/cli/ts/Button.tsx +37 -0
  601. package/template/react-vite/cli/ts/Header.stories.ts +34 -0
  602. package/template/react-vite/cli/ts/Header.tsx +56 -0
  603. package/template/react-vite/cli/ts/Page.stories.ts +33 -0
  604. package/template/react-vite/cli/ts/Page.tsx +73 -0
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2026 Lucas Knight
4
+ Copyright (c) 2024 Storybook
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in
14
+ all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
+ THE SOFTWARE.
package/README.md CHANGED
@@ -1,3 +1,60 @@
1
- # Temporary Holding Version
1
+ # 🪩 Forkbook
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ [![npm](https://img.shields.io/npm/v/@aussieljk/forkbook?style=flat-square&color=555&labelColor=333&label=npm)](https://www.npmjs.com/package/@aussieljk/forkbook)
4
+ [![licence](https://img.shields.io/npm/l/@aussieljk/forkbook?style=flat-square&color=555&labelColor=333&label=licence)](https://www.npmjs.com/package/@aussieljk/forkbook)
5
+
6
+ Forkbook is a small, fast workshop for UI components. Use it to develop, document and test components in isolation. It reads Storybook stories (CSF) and MDX docs.
7
+
8
+ It supports React with Vite, Next.js with Vite, and React Native (iOS, Expo).
9
+
10
+ ## Install
11
+
12
+ ```sh
13
+ bun add -d @aussieljk/forkbook
14
+ bunx forkbook init
15
+ bunx forkbook dev
16
+ ```
17
+
18
+ ```ts
19
+ import type { Meta, StoryObj } from '@aussieljk/forkbook/react-vite';
20
+ ```
21
+
22
+ ## Quick start
23
+
24
+ - React with Vite: [forkbook.ljk.dev/docs/get-started/frameworks/react-vite](https://forkbook.ljk.dev/docs/get-started/frameworks/react-vite)
25
+ - Next.js with Vite: [forkbook.ljk.dev/docs/get-started/frameworks/nextjs-vite](https://forkbook.ljk.dev/docs/get-started/frameworks/nextjs-vite)
26
+ - React Native (iOS): [forkbook.ljk.dev/docs/get-started/frameworks/react-native](https://forkbook.ljk.dev/docs/get-started/frameworks/react-native)
27
+
28
+ ## Forkbook and Storybook
29
+
30
+ | | Forkbook | Storybook 10.6 |
31
+ |---|---|---|
32
+ | Packages | One: `@aussieljk/forkbook` | One for the core, plus one for each framework, renderer and addon |
33
+ | Frameworks | React (Vite), Next.js (Vite), React Native (iOS) | React, Vue, Angular, Svelte, Preact, Web Components and more |
34
+ | Bundler | Vite 8 only | Vite and webpack |
35
+ | UI styles | CSS variables and CSS modules | Emotion |
36
+ | Syntax highlight | sugar-high | react-syntax-highlighter (Prism) |
37
+ | Component docs | tsgo (TypeScript native) | react-docgen |
38
+ | Source formatter | oxfmt | Prettier |
39
+ | File watcher | @parcel/watcher | watchpack |
40
+ | React Native UI | Expo UI (SwiftUI sheets, slider, date picker) and SF Symbols | @gorhom/bottom-sheet, react-native-svg, community slider and date picker |
41
+ | Unpacked size (web and React Native packages) | 25.8 MB | 28.9 MB (`storybook`, `@storybook/react-vite`, `react`, `builder-vite`, `react-dom-shim`, `addon-docs`, `addon-a11y`, `addon-vitest`, `nextjs-vite` and the six React Native packages) |
42
+ | Telemetry | Off | On (you can turn it off) |
43
+
44
+ ## Moving from Storybook
45
+
46
+ Replace the packages with `@aussieljk/forkbook` and change the imports. See [forkbook.ljk.dev/docs/migrate/from-storybook](https://forkbook.ljk.dev/docs/migrate/from-storybook).
47
+
48
+ ## Notes
49
+
50
+ - Telemetry: Forkbook sends nothing. To send traces and logs to your own OpenTelemetry server, set `OTEL_EXPORTER_OTLP_ENDPOINT` ([telemetry](https://forkbook.ljk.dev/docs/configure/telemetry)).
51
+
52
+ ## Links
53
+
54
+ - Docs: [forkbook.ljk.dev](https://forkbook.ljk.dev)
55
+ - Docs for agents: [forkbook.ljk.dev/llms.txt](https://forkbook.ljk.dev/llms.txt) (add `.md` to any docs page URL for markdown)
56
+ - Source: [github.com/aussieljk/forkbook](https://github.com/aussieljk/forkbook). To work on it, see [CLAUDE.md](https://github.com/aussieljk/forkbook/blob/master/CLAUDE.md). `bun run verify` builds, type-checks and tests the repo.
57
+
58
+ ## Licence
59
+
60
+ MIT.
@@ -0,0 +1,36 @@
1
+ import path from 'node:path';
2
+ import { fileURLToPath } from 'node:url';
3
+
4
+ import { defineConfig } from 'vitest/config';
5
+
6
+ import { storybookTest } from '@aussieljk/forkbook/addon-vitest/vitest-plugin';
7
+
8
+ import { playwright } from '@vitest/browser-playwright';
9
+
10
+ const dirname =
11
+ typeof __dirname !== 'undefined' ? __dirname : path.dirname(fileURLToPath(import.meta.url));
12
+
13
+ // More info at: https://forkbook.ljk.dev/docs/writing-tests/integrations/vitest-addon
14
+ export default defineConfig({
15
+ test: {
16
+ projects: [
17
+ {
18
+ extends: true,
19
+ plugins: [
20
+ // The plugin will run tests for the stories defined in your Forkbook config
21
+ // See options at: https://forkbook.ljk.dev/docs/writing-tests/integrations/vitest-addon#storybooktest
22
+ storybookTest({ configDir: path.join(dirname, 'CONFIG_DIR') }),
23
+ ],
24
+ test: {
25
+ name: 'storybook',
26
+ browser: {
27
+ enabled: true,
28
+ headless: true,
29
+ provider: playwright({}),
30
+ instances: [{ browser: 'chromium' }],
31
+ },
32
+ },
33
+ },
34
+ ],
35
+ },
36
+ });
@@ -0,0 +1,46 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
2
+ <defs>
3
+ <mask id="active-mask">
4
+ <rect x="0" y="0" width="32" height="32" fill="#FFF" />
5
+ <path fill="#000" fill-rule="nonzero"
6
+ d="M25,15.3 C26.8630998,15.3 28.7261995,16.2284418 29.795607,18.0853254 L29.795607,18.0853254 L34.7484772,26.6853254 C35.2679728,27.5873604 35.5068948,28.5446245 35.509009,29.4780654 C35.5112408,30.4762222 35.243212,31.4466974 34.7610935,32.2926531 C34.2789749,33.1386087 33.5826171,33.8603071 32.7267084,34.3600412 C31.9262928,34.8273748 30.9864445,35.1 29.9528702,35.1 L29.9528702,35.1 L20.0471298,35.1 C19.0135555,35.1 18.0737072,34.8273748 17.2732916,34.3600412 C16.4173829,33.8603071 15.7210251,33.1386087 15.2389065,32.2926531 C14.756788,31.4466974 14.4887592,30.4762222 14.490991,29.4780654 C14.4931052,28.5446245 14.7320272,27.5873604 15.2515228,26.6853254 L15.2515228,26.6853254 L20.204393,18.0853254 C21.2738005,16.2284418 23.1369002,15.3 25,15.3 Z"
7
+ transform="rotate(90 25 25.2)" />
8
+ </mask>
9
+ <mask id="critical-mask">
10
+ <rect x="0" y="0" width="32" height="32" fill="#FFF" />
11
+ <path fill="#000" fill-rule="nonzero"
12
+ d="M23.9,14.6 C26.7442665,14.6 29.3192665,15.7528668 31.1831998,17.6168002 C33.0471332,19.4807335 34.2,22.0557335 34.2,24.9 C34.2,27.7442665 33.0471332,30.3192665 31.1831998,32.1831998 C29.3192665,34.0471332 26.7442665,35.2 23.9,35.2 C21.0557335,35.2 18.4807335,34.0471332 16.6168002,32.1831998 C14.7528668,30.3192665 13.6,27.7442665 13.6,24.9 C13.6,22.0557335 14.7528668,19.4807335 16.6168002,17.6168002 C18.4807335,15.7528668 21.0557335,14.6 23.9,14.6 Z" />
13
+ </mask>
14
+ <mask id="negative-mask">
15
+ <rect x="0" y="0" width="32" height="32" fill="#FFF" />
16
+ <path fill="#000" fill-rule="nonzero"
17
+ d="M28.2,14.8 C29.633165,14.8 31.06633,15.346734 32.159798,16.440202 C33.2414078,17.5218119 33.7880833,18.9357904 33.8,20.353376 C33.811544,21.7725108 33.2872104,23.1952877 32.2266806,24.2917914 L32.2266806,24.2917914 L31.7206,24.8006729 L32.159798,25.240202 C33.253266,26.33367 33.8,27.766835 33.8,29.2 C33.8,30.633165 33.253266,32.06633 32.159798,33.159798 C31.0781881,34.2414078 29.6642096,34.7880833 28.246624,34.8 C26.8274892,34.811544 25.4047123,34.2872104 24.3082086,33.2266806 L24.3082086,33.2266806 L23.7993271,32.7206 L23.359798,33.159798 C22.26633,34.253266 20.833165,34.8 19.4,34.8 C17.966835,34.8 16.53367,34.253266 15.440202,33.159798 C14.3585922,32.0781881 13.8119167,30.6642096 13.8,29.246624 C13.788456,27.8274892 14.3127896,26.4047123 15.3733194,25.3082086 L15.3733194,25.3082086 L15.8794,24.7993271 L15.440202,24.359798 C14.346734,23.26633 13.8,21.833165 13.8,20.4 C13.8,18.966835 14.346734,17.53367 15.440202,16.440202 C16.5218119,15.3585922 17.9357904,14.8119167 19.353376,14.8 C20.7725108,14.788456 22.1952877,15.3127896 23.2917914,16.3733194 L23.2917914,16.3733194 L23.8006729,16.8794 L24.240202,16.440202 C25.33367,15.346734 26.766835,14.8 28.2,14.8 Z" />
18
+ </mask>
19
+ <mask id="positive-mask">
20
+ <rect x="0" y="0" width="32" height="32" fill="#FFF" />
21
+ <path fill="#000" fill-rule="nonzero"
22
+ d="M29.7294207,16.9922805 C31.1625744,16.9866282 32.5979013,17.5276612 33.6957071,18.6167741 C34.7816077,19.6940761 35.3338993,21.1058704 35.351258,22.5233982 C35.3686336,23.9423122 34.8500808,25.3669976 33.7941627,26.4676563 L33.7941627,26.4676563 L27.1794488,33.1363075 C26.0960963,34.2283069 24.675298,34.7802389 23.2508341,34.7920857 C21.8249459,34.8039445 20.3953569,34.27469 19.296927,33.2041927 L19.296927,33.2041927 L15.7761737,29.656491 C14.6870608,28.5586851 14.1460279,27.1233582 14.1516801,25.6902046 C14.1574213,24.2570509 14.7098478,22.8260705 15.8076536,21.7369576 C16.7544861,20.7976225 17.9523748,20.2659173 19.1834383,20.1411672 C20.4372495,20.0141119 21.7255226,20.3088158 22.8178242,21.0249737 L22.8178242,21.0249737 L23.1781395,21.2667759 L25.7761737,18.648254 C26.8652867,17.5504481 28.2962671,16.9980217 29.7294207,16.9922805 Z" />
23
+ </mask>
24
+ <mask id="warning-mask">
25
+ <rect x="0" y="0" width="32" height="32" fill="#FFF" />
26
+ <path fill="#000" fill-rule="nonzero"
27
+ d="M23.8,14.8 C25.6808284,14.8 27.5616567,15.7284418 28.6412402,17.5853254 L28.6412402,17.5853254 L33.6412402,26.1853254 C34.1656792,27.0873604 34.4068747,28.0446245 34.409009,28.9780654 C34.4112621,29.9762222 34.1406828,30.9466974 33.6539766,31.7926531 C33.1672704,32.6386087 32.4642862,33.3603071 31.600233,33.8600412 C30.7922009,34.3273748 29.8434094,34.6 28.8,34.6 L28.8,34.6 L18.8,34.6 C17.7565906,34.6 16.8077991,34.3273748 15.999767,33.8600412 C15.1357138,33.3603071 14.4327296,32.6386087 13.9460234,31.7926531 C13.4593172,30.9466974 13.1887379,29.9762222 13.190991,28.9780654 C13.1931253,28.0446245 13.4343208,27.0873604 13.9587598,26.1853254 L13.9587598,26.1853254 L18.9587598,17.5853254 C20.0383433,15.7284418 21.9191716,14.8 23.8,14.8 Z" />
28
+ </mask>
29
+
30
+ <polygon id="active" fill="none" stroke="#007AFF" stroke-linejoin="round" stroke-width="2.8"
31
+ points="25 21 30 29.6 20 29.6" transform="rotate(90 25 25.3)" />
32
+ <circle id="critical" fill="none" cx="23.9" cy="24.9" r="4.7" stroke="#000" stroke-linejoin="round"
33
+ stroke-width="2.8" />
34
+ <path id="negative" fill="none" stroke="#FF3B30" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.8"
35
+ d="M19.4,20.4 L28.2,29.2 M28.2,20.4 L19.4,29.2" />
36
+ <polyline id="positive" fill="none" stroke="#34C759" stroke-linecap="round" stroke-linejoin="round"
37
+ stroke-width="2.8" points="19.752 25.712 23.204 29.192 29.752 22.592" />
38
+ <polygon id="warning" fill="none" stroke="#FF9500" stroke-linejoin="round" stroke-width="2.8"
39
+ points="23.8 20.4 28.8 29 18.8 29" />
40
+ </defs>
41
+
42
+ <g id="mask">
43
+ <use id="icon" />
44
+ </g>
45
+ <use id="status" />
46
+ </svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="0 0 64 64"><image width="64" height="64" href="data:image/png;base64,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" xlink:href="data:image/png;base64,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"/></svg>
@@ -0,0 +1,92 @@
1
+ Copyright (c) 2016-2018 The Inter Project Authors (me@rsms.me)
2
+
3
+ This Font Software is licensed under the SIL Open Font License, Version 1.1.
4
+ This license is copied below, and is also available with a FAQ at:
5
+ http://scripts.sil.org/OFL
6
+
7
+ -----------------------------------------------------------
8
+ SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
9
+ -----------------------------------------------------------
10
+
11
+ PREAMBLE
12
+ The goals of the Open Font License (OFL) are to stimulate worldwide
13
+ development of collaborative font projects, to support the font creation
14
+ efforts of academic and linguistic communities, and to provide a free and
15
+ open framework in which fonts may be shared and improved in partnership
16
+ with others.
17
+
18
+ The OFL allows the licensed fonts to be used, studied, modified and
19
+ redistributed freely as long as they are not sold by themselves. The
20
+ fonts, including any derivative works, can be bundled, embedded,
21
+ redistributed and/or sold with any software provided that any reserved
22
+ names are not used by derivative works. The fonts and derivatives,
23
+ however, cannot be released under any other type of license. The
24
+ requirement for fonts to remain under this license does not apply
25
+ to any document created using the fonts or their derivatives.
26
+
27
+ DEFINITIONS
28
+ "Font Software" refers to the set of files released by the Copyright
29
+ Holder(s) under this license and clearly marked as such. This may
30
+ include source files, build scripts and documentation.
31
+
32
+ "Reserved Font Name" refers to any names specified as such after the
33
+ copyright statement(s).
34
+
35
+ "Original Version" refers to the collection of Font Software components as
36
+ distributed by the Copyright Holder(s).
37
+
38
+ "Modified Version" refers to any derivative made by adding to, deleting,
39
+ or substituting -- in part or in whole -- any of the components of the
40
+ Original Version, by changing formats or by porting the Font Software to a
41
+ new environment.
42
+
43
+ "Author" refers to any designer, engineer, programmer, technical
44
+ writer or other person who contributed to the Font Software.
45
+
46
+ PERMISSION AND CONDITIONS
47
+ Permission is hereby granted, free of charge, to any person obtaining
48
+ a copy of the Font Software, to use, study, copy, merge, embed, modify,
49
+ redistribute, and sell modified and unmodified copies of the Font
50
+ Software, subject to the following conditions:
51
+
52
+ 1) Neither the Font Software nor any of its individual components,
53
+ in Original or Modified Versions, may be sold by itself.
54
+
55
+ 2) Original or Modified Versions of the Font Software may be bundled,
56
+ redistributed and/or sold with any software, provided that each copy
57
+ contains the above copyright notice and this license. These can be
58
+ included either as stand-alone text files, human-readable headers or
59
+ in the appropriate machine-readable metadata fields within text or
60
+ binary files as long as those fields can be easily viewed by the user.
61
+
62
+ 3) No Modified Version of the Font Software may use the Reserved Font
63
+ Name(s) unless explicit written permission is granted by the corresponding
64
+ Copyright Holder. This restriction only applies to the primary font name as
65
+ presented to the users.
66
+
67
+ 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
68
+ Software shall not be used to promote, endorse or advertise any
69
+ Modified Version, except to acknowledge the contribution(s) of the
70
+ Copyright Holder(s) and the Author(s) or with their explicit written
71
+ permission.
72
+
73
+ 5) The Font Software, modified or unmodified, in part or in whole,
74
+ must be distributed entirely under this license, and must not be
75
+ distributed under any other license. The requirement for fonts to
76
+ remain under this license does not apply to any document created
77
+ using the Font Software.
78
+
79
+ TERMINATION
80
+ This license becomes null and void if any of the above conditions are
81
+ not met.
82
+
83
+ DISCLAIMER
84
+ THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
85
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
86
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
87
+ OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
88
+ COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
89
+ INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
90
+ DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
91
+ FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
92
+ OTHER DEALINGS IN THE FONT SOFTWARE.
Binary file
@@ -0,0 +1,83 @@
1
+ <!doctype html>
2
+ <!--suppress HtmlUnknownTarget -->
3
+ <html lang="en">
4
+ <head>
5
+ <meta charset="utf-8" />
6
+ <title>Forkbook</title>
7
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
8
+
9
+ <style>
10
+ @font-face {
11
+ font-family: 'Inter Variable';
12
+ font-style: normal;
13
+ font-weight: 100 900;
14
+ font-display: swap;
15
+ src: url('./fb-common-assets/inter-variable.woff2') format('woff2');
16
+ }
17
+
18
+ @font-face {
19
+ font-family: 'Inter Variable';
20
+ font-style: italic;
21
+ font-weight: 100 900;
22
+ font-display: swap;
23
+ src: url('./fb-common-assets/inter-variable-italic.woff2') format('woff2');
24
+ }
25
+ </style>
26
+
27
+ <script>
28
+ window.CONFIG_TYPE = '[CONFIG_TYPE HERE]';
29
+ window.LOGLEVEL = '[LOGLEVEL HERE]';
30
+ window.FRAMEWORK_OPTIONS = '[FRAMEWORK_OPTIONS HERE]';
31
+ window.CHANNEL_OPTIONS = '[CHANNEL_OPTIONS HERE]';
32
+ window.FEATURES = '[FEATURES HERE]';
33
+ window.STORIES = '[STORIES HERE]';
34
+ window.DOCS_OPTIONS = '[DOCS_OPTIONS HERE]';
35
+ window.TAGS_OPTIONS = '[TAGS_OPTIONS HERE]';
36
+
37
+ ('OTHER_GLOBALS HERE');
38
+
39
+ // We do this so that "module && module.hot" etc. in Forkbook source code
40
+ // doesn't fail (it will simply be disabled)
41
+ window.module = undefined;
42
+ window.global = window;
43
+ </script>
44
+ <!-- [HEAD HTML SNIPPET HERE] -->
45
+ </head>
46
+
47
+ <body>
48
+ <!-- [BODY HTML SNIPPET HERE] -->
49
+ <div id="storybook-root"></div>
50
+ <div id="storybook-docs"></div>
51
+ <script>
52
+ function __onViteAppLoadingError(event) {
53
+ const hostname = globalThis.location.hostname;
54
+ if (hostname !== 'localhost' && globalThis.CONFIG_TYPE === 'DEVELOPMENT') {
55
+ const message = `Failed to load the Forkbook preview file 'vite-app.js':
56
+
57
+ It looks like you're visiting the Forkbook development server on another hostname than localhost: '${hostname}', but you haven't configured the necessary security features to support this.
58
+ Please re-run your Forkbook development server with the '--host ${hostname}' flag, or manually configure your Vite allowedHosts configuration with viteFinal.
59
+
60
+ See:`;
61
+ const docs = [
62
+ 'https://forkbook.ljk.dev/docs/api/cli-options#dev',
63
+ 'https://forkbook.ljk.dev/docs/api/main-config/main-config-vite-final',
64
+ 'https://vite.dev/config/server-options.html#server-allowedhosts',
65
+ ];
66
+ console.error(`${message}\n${docs.map((doc) => `- ${doc}`).join('\n')}`);
67
+
68
+ document.getElementById('storybook-root').innerHTML =
69
+ `<p style="color: red; max-width: 70ch">${message.replaceAll(
70
+ '\n',
71
+ '<br/>'
72
+ )}<ul>${docs.map((doc) => `<li><a href='${doc}' target='_blank'>${doc}</a></li>`).join('')}</ul></p>`;
73
+ return;
74
+ }
75
+ }
76
+ </script>
77
+ <script
78
+ type="module"
79
+ src="virtual:/@storybook/builder-vite/vite-app.js"
80
+ onerror="__onViteAppLoadingError(event)"
81
+ ></script>
82
+ </body>
83
+ </html>
@@ -0,0 +1,16 @@
1
+ {
2
+ "rules": {
3
+ "no-undef": "off",
4
+ "react/prop-types": "off",
5
+ "react/react-in-jsx-scope": "off",
6
+ "import/extensions": "off"
7
+ },
8
+ "overrides": [
9
+ {
10
+ "files": ["nextjs/**/*.@(jsx|tsx)"],
11
+ "rules": {
12
+ "react/no-unknown-property": "off"
13
+ }
14
+ }
15
+ ]
16
+ }