@superblocksteam/vite-plugin-file-sync 2.0.3-next.100

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 (558) hide show
  1. package/LICENSE.txt +87 -0
  2. package/dist/ai-service/artifacts/bolt.d.ts +8 -0
  3. package/dist/ai-service/artifacts/bolt.d.ts.map +1 -0
  4. package/dist/ai-service/artifacts/bolt.js +34 -0
  5. package/dist/ai-service/artifacts/bolt.js.map +1 -0
  6. package/dist/ai-service/const.d.ts +8 -0
  7. package/dist/ai-service/const.d.ts.map +1 -0
  8. package/dist/ai-service/const.js +9 -0
  9. package/dist/ai-service/const.js.map +1 -0
  10. package/dist/ai-service/eval/template-renderer.d.ts +13 -0
  11. package/dist/ai-service/eval/template-renderer.d.ts.map +1 -0
  12. package/dist/ai-service/eval/template-renderer.js +66 -0
  13. package/dist/ai-service/eval/template-renderer.js.map +1 -0
  14. package/dist/ai-service/index.d.ts +18 -0
  15. package/dist/ai-service/index.d.ts.map +1 -0
  16. package/dist/ai-service/index.js +140 -0
  17. package/dist/ai-service/index.js.map +1 -0
  18. package/dist/ai-service/integrations/const.d.ts +41 -0
  19. package/dist/ai-service/integrations/const.d.ts.map +1 -0
  20. package/dist/ai-service/integrations/const.js +76 -0
  21. package/dist/ai-service/integrations/const.js.map +1 -0
  22. package/dist/ai-service/integrations/from-prompt-context.d.ts +4 -0
  23. package/dist/ai-service/integrations/from-prompt-context.d.ts.map +1 -0
  24. package/dist/ai-service/integrations/from-prompt-context.js +56 -0
  25. package/dist/ai-service/integrations/from-prompt-context.js.map +1 -0
  26. package/dist/ai-service/integrations/to-sdk-prompt.d.ts +3 -0
  27. package/dist/ai-service/integrations/to-sdk-prompt.d.ts.map +1 -0
  28. package/dist/ai-service/integrations/to-sdk-prompt.js +47 -0
  29. package/dist/ai-service/integrations/to-sdk-prompt.js.map +1 -0
  30. package/dist/ai-service/integrations/types.d.ts +31 -0
  31. package/dist/ai-service/integrations/types.d.ts.map +1 -0
  32. package/dist/ai-service/integrations/types.js +2 -0
  33. package/dist/ai-service/integrations/types.js.map +1 -0
  34. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.d.ts +2 -0
  35. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.d.ts.map +1 -0
  36. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.js +386 -0
  37. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.js.map +1 -0
  38. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.d.ts +2 -0
  39. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.d.ts.map +1 -0
  40. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.js +219 -0
  41. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.js.map +1 -0
  42. package/dist/ai-service/prompts/generated/index.d.ts +4 -0
  43. package/dist/ai-service/prompts/generated/index.d.ts.map +1 -0
  44. package/dist/ai-service/prompts/generated/index.js +6 -0
  45. package/dist/ai-service/prompts/generated/index.js.map +1 -0
  46. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts +2 -0
  47. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts.map +1 -0
  48. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js +6 -0
  49. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js.map +1 -0
  50. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts +2 -0
  51. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts.map +1 -0
  52. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js +6 -0
  53. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js.map +1 -0
  54. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts +2 -0
  55. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts.map +1 -0
  56. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js +6 -0
  57. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js.map +1 -0
  58. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts +2 -0
  59. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts.map +1 -0
  60. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js +6 -0
  61. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js.map +1 -0
  62. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts +2 -0
  63. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts.map +1 -0
  64. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js +6 -0
  65. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js.map +1 -0
  66. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts +2 -0
  67. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts.map +1 -0
  68. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js +6 -0
  69. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js.map +1 -0
  70. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts +2 -0
  71. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts.map +1 -0
  72. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js +6 -0
  73. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js.map +1 -0
  74. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts +2 -0
  75. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts.map +1 -0
  76. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js +6 -0
  77. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js.map +1 -0
  78. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts +2 -0
  79. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts.map +1 -0
  80. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js +6 -0
  81. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js.map +1 -0
  82. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts +2 -0
  83. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts.map +1 -0
  84. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js +6 -0
  85. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js.map +1 -0
  86. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts +2 -0
  87. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts.map +1 -0
  88. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js +6 -0
  89. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js.map +1 -0
  90. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts +2 -0
  91. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts.map +1 -0
  92. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js +6 -0
  93. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js.map +1 -0
  94. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts +2 -0
  95. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts.map +1 -0
  96. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js +6 -0
  97. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js.map +1 -0
  98. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts +2 -0
  99. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts.map +1 -0
  100. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js +6 -0
  101. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js.map +1 -0
  102. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts +2 -0
  103. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts.map +1 -0
  104. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js +6 -0
  105. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js.map +1 -0
  106. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts +2 -0
  107. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts.map +1 -0
  108. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js +6 -0
  109. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js.map +1 -0
  110. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts +2 -0
  111. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts.map +1 -0
  112. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js +6 -0
  113. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js.map +1 -0
  114. package/dist/ai-service/prompts/generated/library-components/index.d.ts +18 -0
  115. package/dist/ai-service/prompts/generated/library-components/index.d.ts.map +1 -0
  116. package/dist/ai-service/prompts/generated/library-components/index.js +20 -0
  117. package/dist/ai-service/prompts/generated/library-components/index.js.map +1 -0
  118. package/dist/ai-service/prompts/generated/library-typedefs/Dim.d.ts +2 -0
  119. package/dist/ai-service/prompts/generated/library-typedefs/Dim.d.ts.map +1 -0
  120. package/dist/ai-service/prompts/generated/library-typedefs/Dim.js +6 -0
  121. package/dist/ai-service/prompts/generated/library-typedefs/Dim.js.map +1 -0
  122. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts +2 -0
  123. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts.map +1 -0
  124. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js +6 -0
  125. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js.map +1 -0
  126. package/dist/ai-service/prompts/generated/library-typedefs/index.d.ts +3 -0
  127. package/dist/ai-service/prompts/generated/library-typedefs/index.d.ts.map +1 -0
  128. package/dist/ai-service/prompts/generated/library-typedefs/index.js +5 -0
  129. package/dist/ai-service/prompts/generated/library-typedefs/index.js.map +1 -0
  130. package/dist/ai-service/prompts/generated/subprompts/index.d.ts +11 -0
  131. package/dist/ai-service/prompts/generated/subprompts/index.d.ts.map +1 -0
  132. package/dist/ai-service/prompts/generated/subprompts/index.js +13 -0
  133. package/dist/ai-service/prompts/generated/subprompts/index.js.map +1 -0
  134. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts +2 -0
  135. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts.map +1 -0
  136. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js +6 -0
  137. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js.map +1 -0
  138. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts +2 -0
  139. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts.map +1 -0
  140. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js +6 -0
  141. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js.map +1 -0
  142. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts +2 -0
  143. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts.map +1 -0
  144. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js +6 -0
  145. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js.map +1 -0
  146. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts +2 -0
  147. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts.map +1 -0
  148. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js +6 -0
  149. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js.map +1 -0
  150. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts +2 -0
  151. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts.map +1 -0
  152. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js +6 -0
  153. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js.map +1 -0
  154. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts +2 -0
  155. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts.map +1 -0
  156. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js +6 -0
  157. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js.map +1 -0
  158. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts +2 -0
  159. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts.map +1 -0
  160. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js +6 -0
  161. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js.map +1 -0
  162. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts +2 -0
  163. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts.map +1 -0
  164. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js +6 -0
  165. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js.map +1 -0
  166. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts +2 -0
  167. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts.map +1 -0
  168. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js +6 -0
  169. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js.map +1 -0
  170. package/dist/ai-service/prompts/generated/subprompts/system.d.ts +2 -0
  171. package/dist/ai-service/prompts/generated/subprompts/system.d.ts.map +1 -0
  172. package/dist/ai-service/prompts/generated/subprompts/system.js +6 -0
  173. package/dist/ai-service/prompts/generated/subprompts/system.js.map +1 -0
  174. package/dist/ai-service/prompts/markdown-loader.d.ts +10 -0
  175. package/dist/ai-service/prompts/markdown-loader.d.ts.map +1 -0
  176. package/dist/ai-service/prompts/markdown-loader.js +65 -0
  177. package/dist/ai-service/prompts/markdown-loader.js.map +1 -0
  178. package/dist/ai-service/prompts/system.d.ts +2 -0
  179. package/dist/ai-service/prompts/system.d.ts.map +1 -0
  180. package/dist/ai-service/prompts/system.js +152 -0
  181. package/dist/ai-service/prompts/system.js.map +1 -0
  182. package/dist/ai-service/result-buffer/bolt.d.ts +15 -0
  183. package/dist/ai-service/result-buffer/bolt.d.ts.map +1 -0
  184. package/dist/ai-service/result-buffer/bolt.js +73 -0
  185. package/dist/ai-service/result-buffer/bolt.js.map +1 -0
  186. package/dist/ai-service/result-buffer/shared.d.ts +13 -0
  187. package/dist/ai-service/result-buffer/shared.d.ts.map +1 -0
  188. package/dist/ai-service/result-buffer/shared.js +7 -0
  189. package/dist/ai-service/result-buffer/shared.js.map +1 -0
  190. package/dist/ai-service/state-machine/clark-fsm.d.ts +158 -0
  191. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -0
  192. package/dist/ai-service/state-machine/clark-fsm.js +62 -0
  193. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -0
  194. package/dist/ai-service/state-machine/fsm.d.ts +42 -0
  195. package/dist/ai-service/state-machine/fsm.d.ts.map +1 -0
  196. package/dist/ai-service/state-machine/fsm.js +55 -0
  197. package/dist/ai-service/state-machine/fsm.js.map +1 -0
  198. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts +3 -0
  199. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -0
  200. package/dist/ai-service/state-machine/handlers/agent-planning.js +209 -0
  201. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -0
  202. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts +3 -0
  203. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -0
  204. package/dist/ai-service/state-machine/handlers/awaiting-user.js +21 -0
  205. package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -0
  206. package/dist/ai-service/state-machine/handlers/idle.d.ts +3 -0
  207. package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -0
  208. package/dist/ai-service/state-machine/handlers/idle.js +22 -0
  209. package/dist/ai-service/state-machine/handlers/idle.js.map +1 -0
  210. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts +3 -0
  211. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -0
  212. package/dist/ai-service/state-machine/handlers/llm-generating.js +123 -0
  213. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -0
  214. package/dist/ai-service/state-machine/handlers/play-dead.d.ts +3 -0
  215. package/dist/ai-service/state-machine/handlers/play-dead.d.ts.map +1 -0
  216. package/dist/ai-service/state-machine/handlers/play-dead.js +11 -0
  217. package/dist/ai-service/state-machine/handlers/play-dead.js.map +1 -0
  218. package/dist/ai-service/state-machine/handlers/post-processing.d.ts +3 -0
  219. package/dist/ai-service/state-machine/handlers/post-processing.d.ts.map +1 -0
  220. package/dist/ai-service/state-machine/handlers/post-processing.js +50 -0
  221. package/dist/ai-service/state-machine/handlers/post-processing.js.map +1 -0
  222. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts +3 -0
  223. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts.map +1 -0
  224. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js +37 -0
  225. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js.map +1 -0
  226. package/dist/ai-service/state-machine/helpers/metadata.d.ts +6 -0
  227. package/dist/ai-service/state-machine/helpers/metadata.d.ts.map +1 -0
  228. package/dist/ai-service/state-machine/helpers/metadata.js +11 -0
  229. package/dist/ai-service/state-machine/helpers/metadata.js.map +1 -0
  230. package/dist/ai-service/state-machine/helpers/peer.d.ts +5 -0
  231. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -0
  232. package/dist/ai-service/state-machine/helpers/peer.js +7 -0
  233. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -0
  234. package/dist/ai-service/state-machine/helpers/transition.d.ts +13 -0
  235. package/dist/ai-service/state-machine/helpers/transition.d.ts.map +1 -0
  236. package/dist/ai-service/state-machine/helpers/transition.js +6 -0
  237. package/dist/ai-service/state-machine/helpers/transition.js.map +1 -0
  238. package/dist/ai-service/state-machine/mocks.d.ts +7 -0
  239. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -0
  240. package/dist/ai-service/state-machine/mocks.js +63 -0
  241. package/dist/ai-service/state-machine/mocks.js.map +1 -0
  242. package/dist/ai-service/state-machine/test-util.d.ts +5 -0
  243. package/dist/ai-service/state-machine/test-util.d.ts.map +1 -0
  244. package/dist/ai-service/state-machine/test-util.js +29 -0
  245. package/dist/ai-service/state-machine/test-util.js.map +1 -0
  246. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.d.ts +21 -0
  247. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.d.ts.map +1 -0
  248. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js +47 -0
  249. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js.map +1 -0
  250. package/dist/ai-service/transform/api-builder/shared.d.ts +11 -0
  251. package/dist/ai-service/transform/api-builder/shared.d.ts.map +1 -0
  252. package/dist/ai-service/transform/api-builder/shared.js +53 -0
  253. package/dist/ai-service/transform/api-builder/shared.js.map +1 -0
  254. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts +27 -0
  255. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts.map +1 -0
  256. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +66 -0
  257. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -0
  258. package/dist/ai-service/transform/api-builder/to-yaml-transformer.d.ts +23 -0
  259. package/dist/ai-service/transform/api-builder/to-yaml-transformer.d.ts.map +1 -0
  260. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js +59 -0
  261. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js.map +1 -0
  262. package/dist/ai-service/transform/remove-api-builder-imports/transformer.d.ts +19 -0
  263. package/dist/ai-service/transform/remove-api-builder-imports/transformer.d.ts.map +1 -0
  264. package/dist/ai-service/transform/remove-api-builder-imports/transformer.js +45 -0
  265. package/dist/ai-service/transform/remove-api-builder-imports/transformer.js.map +1 -0
  266. package/dist/ai-service/transform/shared.d.ts +20 -0
  267. package/dist/ai-service/transform/shared.d.ts.map +1 -0
  268. package/dist/ai-service/transform/shared.js +132 -0
  269. package/dist/ai-service/transform/shared.js.map +1 -0
  270. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.d.ts +17 -0
  271. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.d.ts.map +1 -0
  272. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.js +33 -0
  273. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.js.map +1 -0
  274. package/dist/ai-service/types.d.ts +65 -0
  275. package/dist/ai-service/types.d.ts.map +1 -0
  276. package/dist/ai-service/types.js +2 -0
  277. package/dist/ai-service/types.js.map +1 -0
  278. package/dist/binding-extraction/extract-control-block-identifiers.d.ts +4 -0
  279. package/dist/binding-extraction/extract-control-block-identifiers.d.ts.map +1 -0
  280. package/dist/binding-extraction/extract-control-block-identifiers.js +86 -0
  281. package/dist/binding-extraction/extract-control-block-identifiers.js.map +1 -0
  282. package/dist/binding-extraction/extract-embedded-identifiers.d.ts +16 -0
  283. package/dist/binding-extraction/extract-embedded-identifiers.d.ts.map +1 -0
  284. package/dist/binding-extraction/extract-embedded-identifiers.js +100 -0
  285. package/dist/binding-extraction/extract-embedded-identifiers.js.map +1 -0
  286. package/dist/binding-extraction/extract-identifiers.d.ts +8 -0
  287. package/dist/binding-extraction/extract-identifiers.d.ts.map +1 -0
  288. package/dist/binding-extraction/extract-identifiers.js +150 -0
  289. package/dist/binding-extraction/extract-identifiers.js.map +1 -0
  290. package/dist/binding-extraction/extract-js-identifiers.d.ts +19 -0
  291. package/dist/binding-extraction/extract-js-identifiers.d.ts.map +1 -0
  292. package/dist/binding-extraction/extract-js-identifiers.js +161 -0
  293. package/dist/binding-extraction/extract-js-identifiers.js.map +1 -0
  294. package/dist/binding-extraction/extract-py-identifiers.d.ts +4 -0
  295. package/dist/binding-extraction/extract-py-identifiers.d.ts.map +1 -0
  296. package/dist/binding-extraction/extract-py-identifiers.js +161 -0
  297. package/dist/binding-extraction/extract-py-identifiers.js.map +1 -0
  298. package/dist/binding-extraction/shared.d.ts +225 -0
  299. package/dist/binding-extraction/shared.d.ts.map +1 -0
  300. package/dist/binding-extraction/shared.js +43 -0
  301. package/dist/binding-extraction/shared.js.map +1 -0
  302. package/dist/binding-extraction/template-strings.d.ts +9 -0
  303. package/dist/binding-extraction/template-strings.d.ts.map +1 -0
  304. package/dist/binding-extraction/template-strings.js +45 -0
  305. package/dist/binding-extraction/template-strings.js.map +1 -0
  306. package/dist/codegen.d.ts +26 -0
  307. package/dist/codegen.d.ts.map +1 -0
  308. package/dist/codegen.js +222 -0
  309. package/dist/codegen.js.map +1 -0
  310. package/dist/components-manager.d.ts +38 -0
  311. package/dist/components-manager.d.ts.map +1 -0
  312. package/dist/components-manager.js +177 -0
  313. package/dist/components-manager.js.map +1 -0
  314. package/dist/custom-components.d.ts +6 -0
  315. package/dist/custom-components.d.ts.map +1 -0
  316. package/dist/custom-components.js +51 -0
  317. package/dist/custom-components.js.map +1 -0
  318. package/dist/draft-interface.d.ts +11 -0
  319. package/dist/draft-interface.d.ts.map +1 -0
  320. package/dist/draft-interface.js +2 -0
  321. package/dist/draft-interface.js.map +1 -0
  322. package/dist/errors/error-handler.d.ts +35 -0
  323. package/dist/errors/error-handler.d.ts.map +1 -0
  324. package/dist/errors/error-handler.js +65 -0
  325. package/dist/errors/error-handler.js.map +1 -0
  326. package/dist/errors/make-server-error.d.ts +5 -0
  327. package/dist/errors/make-server-error.d.ts.map +1 -0
  328. package/dist/errors/make-server-error.js +21 -0
  329. package/dist/errors/make-server-error.js.map +1 -0
  330. package/dist/file-sync-vite-plugin.d.ts +4 -0
  331. package/dist/file-sync-vite-plugin.d.ts.map +1 -0
  332. package/dist/file-sync-vite-plugin.js +624 -0
  333. package/dist/file-sync-vite-plugin.js.map +1 -0
  334. package/dist/file-system-helpers.d.ts +7 -0
  335. package/dist/file-system-helpers.d.ts.map +1 -0
  336. package/dist/file-system-helpers.js +12 -0
  337. package/dist/file-system-helpers.js.map +1 -0
  338. package/dist/file-system-manager.d.ts +132 -0
  339. package/dist/file-system-manager.d.ts.map +1 -0
  340. package/dist/file-system-manager.js +1176 -0
  341. package/dist/file-system-manager.js.map +1 -0
  342. package/dist/generate.d.ts +8 -0
  343. package/dist/generate.d.ts.map +1 -0
  344. package/dist/generate.js +7 -0
  345. package/dist/generate.js.map +1 -0
  346. package/dist/ids.d.ts +2 -0
  347. package/dist/ids.d.ts.map +1 -0
  348. package/dist/ids.js +21 -0
  349. package/dist/ids.js.map +1 -0
  350. package/dist/index.d.ts +6 -0
  351. package/dist/index.d.ts.map +1 -0
  352. package/dist/index.js +6 -0
  353. package/dist/index.js.map +1 -0
  354. package/dist/injected-index.d.ts +12 -0
  355. package/dist/injected-index.d.ts.map +1 -0
  356. package/dist/injected-index.js +38 -0
  357. package/dist/injected-index.js.map +1 -0
  358. package/dist/lock-service/index.d.ts +93 -0
  359. package/dist/lock-service/index.d.ts.map +1 -0
  360. package/dist/lock-service/index.js +267 -0
  361. package/dist/lock-service/index.js.map +1 -0
  362. package/dist/parsing/bindings.d.ts +4 -0
  363. package/dist/parsing/bindings.d.ts.map +1 -0
  364. package/dist/parsing/bindings.js +17 -0
  365. package/dist/parsing/bindings.js.map +1 -0
  366. package/dist/parsing/computed/to-code-computed.d.ts +2 -0
  367. package/dist/parsing/computed/to-code-computed.d.ts.map +1 -0
  368. package/dist/parsing/computed/to-code-computed.js +39 -0
  369. package/dist/parsing/computed/to-code-computed.js.map +1 -0
  370. package/dist/parsing/computed/to-value-computed.d.ts +4 -0
  371. package/dist/parsing/computed/to-value-computed.d.ts.map +1 -0
  372. package/dist/parsing/computed/to-value-computed.js +13 -0
  373. package/dist/parsing/computed/to-value-computed.js.map +1 -0
  374. package/dist/parsing/dim/to-code-dimensions.d.ts +3 -0
  375. package/dist/parsing/dim/to-code-dimensions.d.ts.map +1 -0
  376. package/dist/parsing/dim/to-code-dimensions.js +22 -0
  377. package/dist/parsing/dim/to-code-dimensions.js.map +1 -0
  378. package/dist/parsing/dim/to-value-dimensions.d.ts +4 -0
  379. package/dist/parsing/dim/to-value-dimensions.d.ts.map +1 -0
  380. package/dist/parsing/dim/to-value-dimensions.js +39 -0
  381. package/dist/parsing/dim/to-value-dimensions.js.map +1 -0
  382. package/dist/parsing/entity/index.d.ts +8 -0
  383. package/dist/parsing/entity/index.d.ts.map +1 -0
  384. package/dist/parsing/entity/index.js +8 -0
  385. package/dist/parsing/entity/index.js.map +1 -0
  386. package/dist/parsing/entity/to-code-entity.d.ts +3 -0
  387. package/dist/parsing/entity/to-code-entity.d.ts.map +1 -0
  388. package/dist/parsing/entity/to-code-entity.js +41 -0
  389. package/dist/parsing/entity/to-code-entity.js.map +1 -0
  390. package/dist/parsing/entity/to-value-entity.d.ts +8 -0
  391. package/dist/parsing/entity/to-value-entity.d.ts.map +1 -0
  392. package/dist/parsing/entity/to-value-entity.js +120 -0
  393. package/dist/parsing/entity/to-value-entity.js.map +1 -0
  394. package/dist/parsing/events/to-code-events.d.ts +3 -0
  395. package/dist/parsing/events/to-code-events.d.ts.map +1 -0
  396. package/dist/parsing/events/to-code-events.js +86 -0
  397. package/dist/parsing/events/to-code-events.js.map +1 -0
  398. package/dist/parsing/events/to-value-events.d.ts +5 -0
  399. package/dist/parsing/events/to-value-events.d.ts.map +1 -0
  400. package/dist/parsing/events/to-value-events.js +157 -0
  401. package/dist/parsing/events/to-value-events.js.map +1 -0
  402. package/dist/parsing/ids.d.ts +17 -0
  403. package/dist/parsing/ids.d.ts.map +1 -0
  404. package/dist/parsing/ids.js +121 -0
  405. package/dist/parsing/ids.js.map +1 -0
  406. package/dist/parsing/imports.d.ts +6 -0
  407. package/dist/parsing/imports.d.ts.map +1 -0
  408. package/dist/parsing/imports.js +27 -0
  409. package/dist/parsing/imports.js.map +1 -0
  410. package/dist/parsing/jsx-utils.d.ts +9 -0
  411. package/dist/parsing/jsx-utils.d.ts.map +1 -0
  412. package/dist/parsing/jsx-utils.js +42 -0
  413. package/dist/parsing/jsx-utils.js.map +1 -0
  414. package/dist/parsing/jsx.d.ts +23 -0
  415. package/dist/parsing/jsx.d.ts.map +1 -0
  416. package/dist/parsing/jsx.js +329 -0
  417. package/dist/parsing/jsx.js.map +1 -0
  418. package/dist/parsing/page.d.ts +9 -0
  419. package/dist/parsing/page.d.ts.map +1 -0
  420. package/dist/parsing/page.js +156 -0
  421. package/dist/parsing/page.js.map +1 -0
  422. package/dist/parsing/properties.d.ts +5 -0
  423. package/dist/parsing/properties.d.ts.map +1 -0
  424. package/dist/parsing/properties.js +89 -0
  425. package/dist/parsing/properties.js.map +1 -0
  426. package/dist/parsing/scope.d.ts +81 -0
  427. package/dist/parsing/scope.d.ts.map +1 -0
  428. package/dist/parsing/scope.js +575 -0
  429. package/dist/parsing/scope.js.map +1 -0
  430. package/dist/parsing/template/to-code-template.d.ts +2 -0
  431. package/dist/parsing/template/to-code-template.d.ts.map +1 -0
  432. package/dist/parsing/template/to-code-template.js +5 -0
  433. package/dist/parsing/template/to-code-template.js.map +1 -0
  434. package/dist/parsing/template/to-value-template.d.ts +4 -0
  435. package/dist/parsing/template/to-value-template.d.ts.map +1 -0
  436. package/dist/parsing/template/to-value-template.js +19 -0
  437. package/dist/parsing/template/to-value-template.js.map +1 -0
  438. package/dist/parsing/theme.d.ts +3 -0
  439. package/dist/parsing/theme.d.ts.map +1 -0
  440. package/dist/parsing/theme.js +87 -0
  441. package/dist/parsing/theme.js.map +1 -0
  442. package/dist/parsing/type-parsing-registry.d.ts +18 -0
  443. package/dist/parsing/type-parsing-registry.d.ts.map +1 -0
  444. package/dist/parsing/type-parsing-registry.js +31 -0
  445. package/dist/parsing/type-parsing-registry.js.map +1 -0
  446. package/dist/parsing/util.d.ts +31 -0
  447. package/dist/parsing/util.d.ts.map +1 -0
  448. package/dist/parsing/util.js +322 -0
  449. package/dist/parsing/util.js.map +1 -0
  450. package/dist/plugin-options.d.ts +25 -0
  451. package/dist/plugin-options.d.ts.map +1 -0
  452. package/dist/plugin-options.js +14 -0
  453. package/dist/plugin-options.js.map +1 -0
  454. package/dist/refactor/blocks.d.ts +10 -0
  455. package/dist/refactor/blocks.d.ts.map +1 -0
  456. package/dist/refactor/blocks.js +214 -0
  457. package/dist/refactor/blocks.js.map +1 -0
  458. package/dist/refactor/javascript.d.ts +15 -0
  459. package/dist/refactor/javascript.d.ts.map +1 -0
  460. package/dist/refactor/javascript.js +182 -0
  461. package/dist/refactor/javascript.js.map +1 -0
  462. package/dist/refactor-jsx.d.ts +28 -0
  463. package/dist/refactor-jsx.d.ts.map +1 -0
  464. package/dist/refactor-jsx.js +77 -0
  465. package/dist/refactor-jsx.js.map +1 -0
  466. package/dist/rename-manager.d.ts +27 -0
  467. package/dist/rename-manager.d.ts.map +1 -0
  468. package/dist/rename-manager.js +140 -0
  469. package/dist/rename-manager.js.map +1 -0
  470. package/dist/routing.d.ts +6 -0
  471. package/dist/routing.d.ts.map +1 -0
  472. package/dist/routing.js +76 -0
  473. package/dist/routing.js.map +1 -0
  474. package/dist/sb-scope-manager.d.ts +102 -0
  475. package/dist/sb-scope-manager.d.ts.map +1 -0
  476. package/dist/sb-scope-manager.js +501 -0
  477. package/dist/sb-scope-manager.js.map +1 -0
  478. package/dist/socket-manager.d.ts +40 -0
  479. package/dist/socket-manager.d.ts.map +1 -0
  480. package/dist/socket-manager.js +174 -0
  481. package/dist/socket-manager.js.map +1 -0
  482. package/dist/source-tracker.d.ts +190 -0
  483. package/dist/source-tracker.d.ts.map +1 -0
  484. package/dist/source-tracker.js +967 -0
  485. package/dist/source-tracker.js.map +1 -0
  486. package/dist/sync-service/download.d.ts +15 -0
  487. package/dist/sync-service/download.d.ts.map +1 -0
  488. package/dist/sync-service/download.js +116 -0
  489. package/dist/sync-service/download.js.map +1 -0
  490. package/dist/sync-service/draft-helpers.d.ts +68 -0
  491. package/dist/sync-service/draft-helpers.d.ts.map +1 -0
  492. package/dist/sync-service/draft-helpers.js +362 -0
  493. package/dist/sync-service/draft-helpers.js.map +1 -0
  494. package/dist/sync-service/hash-cache.d.ts +15 -0
  495. package/dist/sync-service/hash-cache.d.ts.map +1 -0
  496. package/dist/sync-service/hash-cache.js +58 -0
  497. package/dist/sync-service/hash-cache.js.map +1 -0
  498. package/dist/sync-service/hash-dir-tree.d.ts +10 -0
  499. package/dist/sync-service/hash-dir-tree.d.ts.map +1 -0
  500. package/dist/sync-service/hash-dir-tree.js +53 -0
  501. package/dist/sync-service/hash-dir-tree.js.map +1 -0
  502. package/dist/sync-service/index.d.ts +134 -0
  503. package/dist/sync-service/index.d.ts.map +1 -0
  504. package/dist/sync-service/index.js +323 -0
  505. package/dist/sync-service/index.js.map +1 -0
  506. package/dist/sync-service/list-dir.d.ts +29 -0
  507. package/dist/sync-service/list-dir.d.ts.map +1 -0
  508. package/dist/sync-service/list-dir.js +66 -0
  509. package/dist/sync-service/list-dir.js.map +1 -0
  510. package/dist/sync-service/server-rpc/client.d.ts +13 -0
  511. package/dist/sync-service/server-rpc/client.d.ts.map +1 -0
  512. package/dist/sync-service/server-rpc/client.js +62 -0
  513. package/dist/sync-service/server-rpc/client.js.map +1 -0
  514. package/dist/sync-service/server-rpc/handlers.d.ts +3 -0
  515. package/dist/sync-service/server-rpc/handlers.d.ts.map +1 -0
  516. package/dist/sync-service/server-rpc/handlers.js +18 -0
  517. package/dist/sync-service/server-rpc/handlers.js.map +1 -0
  518. package/dist/sync-service/snapshot/take-snapshot.d.ts +38 -0
  519. package/dist/sync-service/snapshot/take-snapshot.d.ts.map +1 -0
  520. package/dist/sync-service/snapshot/take-snapshot.js +232 -0
  521. package/dist/sync-service/snapshot/take-snapshot.js.map +1 -0
  522. package/dist/sync-service/snapshot/types.d.ts +24 -0
  523. package/dist/sync-service/snapshot/types.d.ts.map +1 -0
  524. package/dist/sync-service/snapshot/types.js +3 -0
  525. package/dist/sync-service/snapshot/types.js.map +1 -0
  526. package/dist/sync-service/snapshot/upload-snapshot.d.ts +5 -0
  527. package/dist/sync-service/snapshot/upload-snapshot.d.ts.map +1 -0
  528. package/dist/sync-service/snapshot/upload-snapshot.js +63 -0
  529. package/dist/sync-service/snapshot/upload-snapshot.js.map +1 -0
  530. package/dist/traverse.d.ts +6 -0
  531. package/dist/traverse.d.ts.map +1 -0
  532. package/dist/traverse.js +7 -0
  533. package/dist/traverse.js.map +1 -0
  534. package/dist/util/generation-number-sequence.d.ts +7 -0
  535. package/dist/util/generation-number-sequence.d.ts.map +1 -0
  536. package/dist/util/generation-number-sequence.js +13 -0
  537. package/dist/util/generation-number-sequence.js.map +1 -0
  538. package/dist/util/logger.d.ts +22 -0
  539. package/dist/util/logger.d.ts.map +1 -0
  540. package/dist/util/logger.js +64 -0
  541. package/dist/util/logger.js.map +1 -0
  542. package/dist/util/operation-queue.d.ts +17 -0
  543. package/dist/util/operation-queue.d.ts.map +1 -0
  544. package/dist/util/operation-queue.js +27 -0
  545. package/dist/util/operation-queue.js.map +1 -0
  546. package/dist/util/tracing.d.ts +4 -0
  547. package/dist/util/tracing.d.ts.map +1 -0
  548. package/dist/util/tracing.js +19 -0
  549. package/dist/util/tracing.js.map +1 -0
  550. package/dist/util/with-resolvers.d.ts +10 -0
  551. package/dist/util/with-resolvers.d.ts.map +1 -0
  552. package/dist/util/with-resolvers.js +14 -0
  553. package/dist/util/with-resolvers.js.map +1 -0
  554. package/dist/util.d.ts +26 -0
  555. package/dist/util.d.ts.map +1 -0
  556. package/dist/util.js +82 -0
  557. package/dist/util.js.map +1 -0
  558. package/package.json +126 -0
@@ -0,0 +1,624 @@
1
+ import path from "node:path";
2
+ import { ApiTriggerType } from "@superblocksteam/shared";
3
+ import bodyParser from "body-parser";
4
+ import { stripIndent } from "common-tags";
5
+ import { normalizePath } from "vite";
6
+ import { extractApiDependencies, extractIdentifierPathsFromApi, } from "./binding-extraction/extract-identifiers.js";
7
+ import { ComponentsManager } from "./components-manager.js";
8
+ import { makeServerError } from "./errors/make-server-error.js";
9
+ import { getPageFilePath, SCOPE_FILE } from "./file-system-helpers.js";
10
+ import { FileSyncManager } from "./file-system-manager.js";
11
+ import { indexHtmlMiddleware } from "./injected-index.js";
12
+ import { LockServiceStatus } from "./lock-service/index.js";
13
+ import { getLegacyComponentsFolder, isCustomBuildEnabled, setOptions, } from "./plugin-options.js";
14
+ import { generateRootSource } from "./routing.js";
15
+ import { SocketManager } from "./socket-manager.js";
16
+ import { GenerationNumberSequence } from "./util/generation-number-sequence.js";
17
+ import { getErrorMeta, setLogger } from "./util/logger.js";
18
+ import { getAllApiDefinitions, getAllPages } from "./util.js";
19
+ let hasStarted = false;
20
+ let isInitialized = false;
21
+ let config;
22
+ const virtualLegacyId = "virtual:legacy-wrapper";
23
+ const resolvedVirtualLegacyId = `\0${virtualLegacyId}`;
24
+ const virtualRegisteredComponentsId = "virtual:registered-components";
25
+ const resolvedVirtualRegisteredComponentsId = `\0${virtualRegisteredComponentsId}`;
26
+ export const fileSyncVitePlugin = (pluginParams, options) => {
27
+ const logger = setLogger(pluginParams.logger);
28
+ setOptions(options ?? {
29
+ legacyComponentsFolder: "legacy",
30
+ });
31
+ const generationNumberSequence = new GenerationNumberSequence();
32
+ const syncService = pluginParams.syncService;
33
+ const lockService = pluginParams.lockService;
34
+ const aiService = pluginParams.aiService;
35
+ const fsOperationQueue = pluginParams.fsOperationQueue;
36
+ const httpServer = pluginParams.httpServer;
37
+ const fileSyncManager = new FileSyncManager(fsOperationQueue, generationNumberSequence);
38
+ if (syncService) {
39
+ syncService.generationNumberSequence = generationNumberSequence;
40
+ }
41
+ return {
42
+ name: "sb-file-sync",
43
+ apply: "serve",
44
+ enforce: "pre",
45
+ async configureServer(server) {
46
+ config = server.config;
47
+ const componentsManager = ComponentsManager.getInstance();
48
+ await Promise.all([
49
+ componentsManager.initialize(process.cwd(), server.watcher),
50
+ server.waitForRequestsIdle("sb-file-sync").then(async () => {
51
+ if (hasStarted) {
52
+ // We only want to initialize the file sync once, but vite seems to fire this multiple times
53
+ return;
54
+ }
55
+ hasStarted = true;
56
+ const root = server.config.root;
57
+ try {
58
+ await fileSyncManager.watch(server.watcher, root).then(() => {
59
+ isInitialized = true;
60
+ });
61
+ }
62
+ catch (e) {
63
+ logger.error("Error watching files", getErrorMeta(e));
64
+ }
65
+ }),
66
+ ]);
67
+ server.middlewares.use(indexHtmlMiddleware(server, fileSyncManager));
68
+ server.middlewares.use("/sb-init", bodyParser.json({ strict: true }));
69
+ server.middlewares.use("/sb-init", async (req, res, next) => {
70
+ if (!isInitialized) {
71
+ return next();
72
+ }
73
+ if (req.method !== "GET" && req.method !== "OPTIONS") {
74
+ res.statusCode = 405;
75
+ res.end("Method not allowed");
76
+ return res.end();
77
+ }
78
+ res.setHeader("Access-Control-Allow-Origin", "*");
79
+ res.setHeader("Access-Control-Allow-Methods", "GET, OPTIONS");
80
+ res.setHeader("Access-Control-Allow-Headers", "Content-Type");
81
+ if (req.method === "OPTIONS") {
82
+ res.statusCode = 204;
83
+ res.end();
84
+ return;
85
+ }
86
+ const fullUrl = new URL(req.url ?? "/", "http://localhost:5173");
87
+ if (!fullUrl.searchParams.get("route")) {
88
+ res.statusCode = 400;
89
+ res.end("Missing route, use ?route=/route");
90
+ return res.end();
91
+ }
92
+ const actualUrl = new URL(fullUrl.searchParams.get("route") ?? "/", fullUrl);
93
+ const files = await getAllApiDefinitions({
94
+ rootDir: config.root,
95
+ currentUrl: actualUrl.toString(),
96
+ });
97
+ res.setHeader("Content-Type", "application/json");
98
+ return res.end(JSON.stringify(files));
99
+ });
100
+ server.middlewares.use("/sb-scopes", bodyParser.json({ strict: true }));
101
+ server.middlewares.use("/sb-scopes", async (req, res, next) => {
102
+ if (!isInitialized) {
103
+ return next();
104
+ }
105
+ if (req.method !== "GET" && req.method !== "OPTIONS") {
106
+ res.statusCode = 405;
107
+ res.end("Method not allowed");
108
+ return res.end();
109
+ }
110
+ res.setHeader("Access-Control-Allow-Origin", "*");
111
+ res.setHeader("Access-Control-Allow-Methods", "GET, OPTIONS");
112
+ res.setHeader("Access-Control-Allow-Headers", "Content-Type");
113
+ if (req.method === "OPTIONS") {
114
+ res.statusCode = 204;
115
+ res.end();
116
+ return;
117
+ }
118
+ const appScope = await getAppScope(fileSyncManager);
119
+ res.setHeader("Content-Type", "application/json");
120
+ return res.end(JSON.stringify(appScope));
121
+ });
122
+ const socketManager = new SocketManager();
123
+ socketManager.startSocketServer({
124
+ server: httpServer,
125
+ fileSyncManager,
126
+ lockService,
127
+ syncService,
128
+ aiService,
129
+ tracer: pluginParams.tracer,
130
+ path: "/sb-updates",
131
+ });
132
+ socketManager.removeAllListeners();
133
+ const sendError = (errorEvent) => {
134
+ socketManager.callEditorClients((socket) => socket.call.error(errorEvent));
135
+ };
136
+ // Add some process error handling to ensure to notify the user of
137
+ // any uncaught exceptions or rejections
138
+ process.on("uncaughtException", (error) => {
139
+ sendError(makeServerError(error));
140
+ process.exit(1);
141
+ });
142
+ process.on("unhandledRejection", (reason) => {
143
+ logger.error("Unhandled rejection", reason);
144
+ const error = reason instanceof Error
145
+ ? reason
146
+ : typeof reason === "object"
147
+ ? new Error(JSON.stringify(reason))
148
+ : new Error(String(reason));
149
+ sendError(makeServerError(error));
150
+ process.exit(1);
151
+ });
152
+ syncService?.removeListener?.("error", sendError);
153
+ syncService?.on?.("error", sendError);
154
+ lockService?.removeListener?.("error", sendError);
155
+ lockService?.on?.("error", sendError);
156
+ const extractApiParamsAndDependencies = (socket) => {
157
+ const allApis = fileSyncManager.getApiFiles();
158
+ const allApiNames = Object.values(allApis).map(({ api }) => api.apiPb.metadata.name);
159
+ const apiDependencyMap = {};
160
+ Promise.all([
161
+ ...Object.values(allApis).map(async ({ api }) => {
162
+ const bindings = await extractIdentifierPathsFromApi(api);
163
+ const allIdentifiers = bindings.flatMap((binding) => binding.bindings);
164
+ const apiDependencies = extractApiDependencies(allApiNames, bindings);
165
+ apiDependencyMap[api.apiPb.metadata.name] = apiDependencies;
166
+ return socket.call.updateApiParams({
167
+ apiName: api.apiPb.metadata.name,
168
+ params: allIdentifiers,
169
+ apiDependencies,
170
+ });
171
+ }),
172
+ ]).then(() => {
173
+ socketManager.callEditorClients((editorClientSocket) => {
174
+ return editorClientSocket.call.setApiDependencies({
175
+ apiDependencies: apiDependencyMap,
176
+ });
177
+ });
178
+ });
179
+ };
180
+ socketManager.on("connect:library", async (socket) => {
181
+ const allApis = fileSyncManager.getApiFiles();
182
+ socket.call
183
+ .setApiDefinitions(allApis)
184
+ .then(() => extractApiParamsAndDependencies(socket));
185
+ const tsFilePaths = fileSyncManager.getTsFilePaths();
186
+ return socket.call.updateLocalBindingEntities({
187
+ entities: Array.from(new Set(tsFilePaths.flatMap((file) => fileSyncManager.getLocalBindingEntities(file)))),
188
+ });
189
+ });
190
+ const sendRootUpdate = async (path, sync = false) => {
191
+ const roots = fileSyncManager.getPageRoots(path);
192
+ const scope = fileSyncManager.getScope(path);
193
+ if (!roots || !scope) {
194
+ logger?.error(`sendRootUpdate: no roots or scope ${path}`);
195
+ return;
196
+ }
197
+ const { scopeId } = scope;
198
+ socketManager.callEditorClients((socket) => {
199
+ return socket.call.updateScope({
200
+ scopeId,
201
+ updates: { roots },
202
+ });
203
+ });
204
+ if (sync && syncService) {
205
+ await syncService.uploadDirectory();
206
+ }
207
+ };
208
+ const sendRootReset = async (sync = false) => {
209
+ const appScope = await getAppScope(fileSyncManager);
210
+ socketManager.callEditorClients((socket) => {
211
+ return socket.call.resetScope({
212
+ appScope,
213
+ });
214
+ });
215
+ if (sync && syncService) {
216
+ await syncService.uploadDirectory();
217
+ }
218
+ };
219
+ // TODO: @damian - Check if we need both sendFileUpdate and sendEntityUpdate
220
+ const sendFileUpdate = (path) => {
221
+ const scope = fileSyncManager.getScope(path);
222
+ const entities = scope?.entities ?? {};
223
+ const scopeId = scope?.scopeId ?? "";
224
+ const roots = fileSyncManager.getPageRoots(path);
225
+ socketManager.callEditorClients((socket) => socket.call.updateScope({
226
+ scopeId,
227
+ updates: { entities, roots: roots ?? undefined },
228
+ }));
229
+ };
230
+ const sendDeleteComponentsUpdate = async (path, sourceIds) => {
231
+ const scope = fileSyncManager.getScope(path);
232
+ if (!scope) {
233
+ console.error("No scope found for", path);
234
+ return;
235
+ }
236
+ await sendRootUpdate(path);
237
+ socketManager.callLibraryClients((socket) => {
238
+ return socket.call.deleteEntities(sourceIds.map((sourceId) => ({
239
+ scopeId: scope.scopeId,
240
+ sourceId,
241
+ })));
242
+ });
243
+ };
244
+ const sendDeleteEntityUpdate = async (path, entityName) => {
245
+ const scope = fileSyncManager.getScope(path);
246
+ if (!scope) {
247
+ console.error("No scope found for", path);
248
+ return;
249
+ }
250
+ const { scopeId } = scope;
251
+ await sendEntityUpdate(path);
252
+ socketManager.callLibraryClients((socket) => {
253
+ return socket.call.deleteEntities([
254
+ {
255
+ scopeId,
256
+ entityName,
257
+ },
258
+ ]);
259
+ });
260
+ };
261
+ const sendEntityUpdate = (path) => {
262
+ const scope = fileSyncManager.getScope(path);
263
+ if (!scope) {
264
+ console.error("No scope found for", path);
265
+ return;
266
+ }
267
+ const { entities, scopeId } = scope;
268
+ socketManager.callEditorClients((socket) => socket.call.updateScope({
269
+ scopeId,
270
+ updates: {
271
+ entities,
272
+ },
273
+ }));
274
+ };
275
+ // configured twice otherwise, always remove all listeners
276
+ fileSyncManager.removeAllListeners();
277
+ fileSyncManager.on("error", sendError);
278
+ fileSyncManager.on("reparent", sendRootUpdate);
279
+ fileSyncManager.on("createComponent", sendRootUpdate);
280
+ fileSyncManager.on("deleteComponents", sendDeleteComponentsUpdate);
281
+ fileSyncManager.on("addEntity", sendEntityUpdate);
282
+ fileSyncManager.on("updateEntity", sendEntityUpdate);
283
+ fileSyncManager.on("deleteEntity", sendDeleteEntityUpdate);
284
+ fileSyncManager.on("renameComponent", sendFileUpdate);
285
+ fileSyncManager.on("renameEntity", sendFileUpdate);
286
+ fileSyncManager.on("addPage", sendRootUpdate);
287
+ fileSyncManager.on("renamePage", () => sendRootReset(true));
288
+ fileSyncManager.on("fileChanged", async (path, _content, isNonVisualEdit) => {
289
+ socketManager.callLibraryClients((socket) => {
290
+ return socket.call.updateLocalBindingEntities({
291
+ entities: fileSyncManager.getLocalBindingEntities(path),
292
+ });
293
+ });
294
+ if (isNonVisualEdit) {
295
+ sendFileUpdate(path);
296
+ socketManager.callLibraryClients((socket) => {
297
+ return socket.call.nonVisualEdit();
298
+ });
299
+ }
300
+ if (syncService) {
301
+ await syncService.uploadDirectory();
302
+ }
303
+ });
304
+ fileSyncManager.on("apiUpdate", async (payload) => {
305
+ socketManager.callLibraryClients(async (socket) => {
306
+ Promise.all([
307
+ socket.call.updateApi(payload),
308
+ extractApiParamsAndDependencies(socket),
309
+ ]);
310
+ });
311
+ if (payload.api.pageName) {
312
+ const pagePath = getPageFilePath(config.root, payload.api.pageName);
313
+ sendEntityUpdate(pagePath);
314
+ }
315
+ if (syncService) {
316
+ await syncService.uploadDirectory();
317
+ }
318
+ });
319
+ fileSyncManager.on("apiManualUpdate", async (payload, rename = false) => {
320
+ socketManager.callLibraryClients(async (socket) => {
321
+ Promise.all([
322
+ socket.call.updateApi(payload),
323
+ extractApiParamsAndDependencies(socket),
324
+ ]);
325
+ });
326
+ if (rename) {
327
+ sendFileUpdate(getPageFilePath(config.root, payload.api.pageName));
328
+ }
329
+ if (syncService) {
330
+ await syncService.uploadDirectory();
331
+ }
332
+ socketManager.callEditorClients((socket) => {
333
+ return socket.call.manualUpdateApi({
334
+ api: payload.api,
335
+ });
336
+ });
337
+ });
338
+ if (syncService) {
339
+ syncService.on("synchronizationStatusChange", async (status, generationNumber) => {
340
+ socketManager.callEditorClients(async (socket) => {
341
+ try {
342
+ await socket.call.syncStatus({ status, generationNumber });
343
+ }
344
+ catch (err) {
345
+ logger.error("Failed to send syncStatus", getErrorMeta(err));
346
+ }
347
+ });
348
+ });
349
+ }
350
+ if (lockService) {
351
+ lockService.on("statusChange", (status) => {
352
+ if (status === LockServiceStatus.FAILED_TO_ACQUIRE_LOCK) {
353
+ sendError(makeServerError(new Error("Lock is already acquired by another user. Please try again later.")));
354
+ }
355
+ else if (status === LockServiceStatus.LOCK_INVALID) {
356
+ sendError(makeServerError(new Error("Lock is invalid. Please try again.")));
357
+ }
358
+ else if (status === LockServiceStatus.LOCK_RELEASED) {
359
+ sendError(makeServerError(new Error("Lock is released. Please refresh the page or move to local mode.")));
360
+ }
361
+ else if (status === LockServiceStatus.RELEASING) {
362
+ socketManager.callEditorClients(async (socket) => {
363
+ try {
364
+ await socket.call.releasingLock();
365
+ }
366
+ catch (err) {
367
+ logger.error("Failed to send releasingLock", getErrorMeta(err));
368
+ }
369
+ });
370
+ }
371
+ });
372
+ }
373
+ fileSyncManager.on("routesChanged", () => {
374
+ const rootId = normalizePath(path.join(config.root, "root.tsx"));
375
+ const module = server.moduleGraph.getModuleById(rootId);
376
+ if (module) {
377
+ server.reloadModule(module);
378
+ }
379
+ });
380
+ fileSyncManager.on("apiDelete", async (payload) => {
381
+ socketManager.callLibraryClients(async (socket) => {
382
+ Promise.all([
383
+ socket.call.deleteApis(payload.apis.map((api) => ({
384
+ apiName: api.apiName,
385
+ scopeId: api.scopeId,
386
+ }))),
387
+ extractApiParamsAndDependencies(socket),
388
+ ]);
389
+ // All APIs should belong to the same page but to be consistant we iterate over all APIs
390
+ const pageNames = new Set(payload.apis.map((api) => api.pageName));
391
+ if (pageNames.size > 0) {
392
+ pageNames.forEach((pageName) => {
393
+ const pagePath = getPageFilePath(config.root, pageName);
394
+ sendEntityUpdate(pagePath);
395
+ });
396
+ }
397
+ if (syncService) {
398
+ await syncService.uploadDirectory();
399
+ }
400
+ });
401
+ });
402
+ fileSyncManager.on("apiManualDelete", async (payload) => {
403
+ socketManager.callLibraryClients(async (socket) => {
404
+ Promise.all([
405
+ socket.call.deleteApis([
406
+ {
407
+ apiName: payload.api.apiName,
408
+ scopeId: payload.api.scopeId,
409
+ },
410
+ ]),
411
+ extractApiParamsAndDependencies(socket),
412
+ ]);
413
+ const pagePath = getPageFilePath(config.root, payload.api.pageName);
414
+ sendEntityUpdate(pagePath);
415
+ });
416
+ socketManager.callEditorClients((socket) => {
417
+ return socket.call.manualDeleteApi({
418
+ id: payload.api.id,
419
+ });
420
+ });
421
+ if (syncService) {
422
+ await syncService.uploadDirectory();
423
+ }
424
+ });
425
+ if (syncService && aiService) {
426
+ socketManager.on("connect:editor", async (socket) => {
427
+ const hasDraft = await syncService.hasLocalDraftChanges();
428
+ return socket.call.aiSetDraftState({ hasDraft });
429
+ });
430
+ syncService.on("draftStateChanged", (hasDraft) => {
431
+ socketManager.callEditorClients((socket) => {
432
+ return socket.call.aiSetDraftState({ hasDraft });
433
+ });
434
+ });
435
+ }
436
+ const triggerRegisteredComponentUpdate = () => {
437
+ const module = server.moduleGraph.getModuleById(resolvedVirtualRegisteredComponentsId);
438
+ if (module) {
439
+ server.reloadModule(module);
440
+ }
441
+ };
442
+ componentsManager.on("error", sendError);
443
+ componentsManager.on("registeredComponentAdded", triggerRegisteredComponentUpdate);
444
+ componentsManager.on("registeredComponentRemoved", (name) => {
445
+ triggerRegisteredComponentUpdate();
446
+ socketManager.callLibraryClients((socket) => {
447
+ return socket.call.removeRegisteredComponent({
448
+ name,
449
+ });
450
+ });
451
+ });
452
+ componentsManager.on("registeredComponentChanged", (name, oldName) => {
453
+ triggerRegisteredComponentUpdate();
454
+ if (oldName) {
455
+ socketManager.callLibraryClients(async (socket) => {
456
+ await socket.call.renameRegisteredComponent({
457
+ name,
458
+ oldName,
459
+ });
460
+ });
461
+ }
462
+ });
463
+ },
464
+ async transform(code, id) {
465
+ const relativePath = path.relative(config.root, id);
466
+ if (!this.meta.watchMode)
467
+ return;
468
+ if (relativePath === "root.tsx") {
469
+ const source = generateRootSource(code, fileSyncManager);
470
+ return {
471
+ code: /*js*/ stripIndent `
472
+ import "${virtualRegisteredComponentsId}";
473
+
474
+ ${source}
475
+ `,
476
+ map: null,
477
+ };
478
+ }
479
+ else if (id.endsWith(".tsx") &&
480
+ !id.includes(`${getLegacyComponentsFolder()}/`)) {
481
+ try {
482
+ if (!fileSyncManager.readFile(id)) {
483
+ return { code, map: null };
484
+ }
485
+ const fileContents = await fileSyncManager.getFileWithIds(id);
486
+ if (!fileContents) {
487
+ throw new Error("File not found in file sync manager " + id);
488
+ }
489
+ return {
490
+ code: fileContents,
491
+ map: null,
492
+ };
493
+ }
494
+ catch (e) {
495
+ logger.error("Error transforming file", getErrorMeta(e));
496
+ }
497
+ }
498
+ else if (id.endsWith(SCOPE_FILE)) {
499
+ const fileContents = await fileSyncManager.getFileWithIds(id);
500
+ if (!fileContents) {
501
+ throw new Error("File not found in file sync manager " + id);
502
+ }
503
+ return {
504
+ code: fileContents,
505
+ map: null,
506
+ };
507
+ }
508
+ return {
509
+ code,
510
+ map: null,
511
+ };
512
+ },
513
+ resolveId(id) {
514
+ if (id === virtualLegacyId && isCustomBuildEnabled()) {
515
+ return resolvedVirtualLegacyId;
516
+ }
517
+ if (id === virtualRegisteredComponentsId) {
518
+ return resolvedVirtualRegisteredComponentsId;
519
+ }
520
+ },
521
+ async load(id) {
522
+ // This is a virtual file that we use to wrap any components that are using a
523
+ // version of React that is not our current library version. Those components need to be
524
+ // mounted with the version of React that is being used inside the "legacy" folder.
525
+ if (id === resolvedVirtualLegacyId) {
526
+ const customFolder = getLegacyComponentsFolder();
527
+ return /*js*/ `
528
+ import React from "react";
529
+ import ReactDOMLegacy from "/${customFolder}/dist/react-dom";
530
+ import ReactLegacy from "/${customFolder}/dist/react";
531
+
532
+ export function wrapCustomComponent(CustomComponent) {
533
+ return React.forwardRef((props, ref) => {
534
+ const containerRef = React.useRef(null);
535
+
536
+ React.useEffect(() => {
537
+ if (!containerRef.current) return;
538
+
539
+ const container = containerRef.current;
540
+
541
+ ReactDOMLegacy.render(
542
+ ReactLegacy.createElement(CustomComponent, props),
543
+ container,
544
+ );
545
+
546
+ return () => {
547
+ if (container) {
548
+ ReactDOMLegacy.unmountComponentAtNode(container);
549
+ }
550
+ };
551
+ }, [props]);
552
+
553
+ return React.createElement("div", { ref: mergeRefs(containerRef, ref) });
554
+ });
555
+ }
556
+
557
+ function mergeRefs(...refs) {
558
+ return (value) => {
559
+ refs.forEach((ref) => {
560
+ if (typeof ref === "function") {
561
+ ref(value);
562
+ } else if (ref != null) {
563
+ ref.current = value;
564
+ }
565
+ });
566
+ };
567
+ }
568
+ `;
569
+ }
570
+ if (id === resolvedVirtualRegisteredComponentsId) {
571
+ const componentsManager = ComponentsManager.getInstance();
572
+ const paths = componentsManager.componentFilePaths;
573
+ return /*js*/ `
574
+ ${Array.from(paths)
575
+ .map((filePath) => `
576
+ import "/${path.relative(config.root, filePath)}";
577
+ `)
578
+ .join("\n")}
579
+ `;
580
+ }
581
+ },
582
+ };
583
+ };
584
+ async function getAppScope(fileSyncManager) {
585
+ const pageContents = await getAllPages({
586
+ rootDir: config.root,
587
+ });
588
+ const pages = pageContents.reduce((acc, { name, route, fileName }) => {
589
+ const roots = fileSyncManager.getPageRoots(fileName);
590
+ const pageScopeDef = fileSyncManager.getScope(fileName);
591
+ if (roots && pageScopeDef) {
592
+ acc[name] = {
593
+ name,
594
+ ...pageScopeDef,
595
+ route,
596
+ roots,
597
+ };
598
+ }
599
+ return acc;
600
+ }, {});
601
+ const appScopeDef = fileSyncManager.getScope(fileSyncManager.appFilePath);
602
+ const apiFiles = fileSyncManager.getApiFiles();
603
+ const apis = Object.values(apiFiles)
604
+ .filter(({ api: { apiPb } }) => !!apiPb.metadata && !!apiPb.trigger?.application)
605
+ .map(({ api: { apiPb } }) => ({
606
+ id: apiPb.metadata.id,
607
+ name: apiPb.metadata.name,
608
+ applicationId: apiPb.trigger.application?.id,
609
+ pageId: apiPb.trigger.application?.pageId,
610
+ organizationId: apiPb.metadata.organization,
611
+ updated: apiPb.metadata?.timestamps?.updated
612
+ ? new Date(apiPb.metadata?.timestamps?.updated)
613
+ : undefined,
614
+ triggerType: ApiTriggerType.UI,
615
+ apiPb: apiPb,
616
+ }));
617
+ const appScope = {
618
+ ...appScopeDef,
619
+ pages,
620
+ apis,
621
+ };
622
+ return appScope;
623
+ }
624
+ //# sourceMappingURL=file-sync-vite-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-sync-vite-plugin.js","sourceRoot":"","sources":["../src/file-sync-vite-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare const PAGES_DIRECTORY = "pages";
2
+ export declare const CUSTOM_COMPONENTS_DIRECTORY = "components";
3
+ export declare const ROUTES_FILE = "routes.json";
4
+ export declare const SCOPE_FILE = "scope.ts";
5
+ export declare function getPageFolder(rootPath: string, pageName: string): string;
6
+ export declare function getPageFilePath(rootPath: string, pageName: string): string;
7
+ //# sourceMappingURL=file-system-helpers.d.ts.map