@superblocksteam/vite-plugin-file-sync 2.0.3-next.99 → 2.0.3

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 (404) hide show
  1. package/dist/ai-service/app-interface/linter.d.ts +3 -0
  2. package/dist/ai-service/app-interface/linter.d.ts.map +1 -0
  3. package/dist/ai-service/app-interface/linter.js +64 -0
  4. package/dist/ai-service/app-interface/linter.js.map +1 -0
  5. package/dist/ai-service/app-interface/shell.d.ts +17 -0
  6. package/dist/ai-service/app-interface/shell.d.ts.map +1 -0
  7. package/dist/ai-service/app-interface/shell.js +97 -0
  8. package/dist/ai-service/app-interface/shell.js.map +1 -0
  9. package/dist/ai-service/app-interface/source-tracker.d.ts +17 -0
  10. package/dist/ai-service/app-interface/source-tracker.d.ts.map +1 -0
  11. package/dist/ai-service/app-interface/source-tracker.js +41 -0
  12. package/dist/ai-service/app-interface/source-tracker.js.map +1 -0
  13. package/dist/ai-service/artifacts/bolt.js +1 -1
  14. package/dist/ai-service/artifacts/bolt.js.map +1 -1
  15. package/dist/ai-service/const.d.ts +8 -1
  16. package/dist/ai-service/const.d.ts.map +1 -1
  17. package/dist/ai-service/const.js +8 -1
  18. package/dist/ai-service/const.js.map +1 -1
  19. package/dist/ai-service/eval/template-renderer.d.ts.map +1 -1
  20. package/dist/ai-service/eval/template-renderer.js +3 -2
  21. package/dist/ai-service/eval/template-renderer.js.map +1 -1
  22. package/dist/ai-service/index.d.ts +10 -5
  23. package/dist/ai-service/index.d.ts.map +1 -1
  24. package/dist/ai-service/index.js +62 -22
  25. package/dist/ai-service/index.js.map +1 -1
  26. package/dist/ai-service/integrations/const.d.ts +3 -1
  27. package/dist/ai-service/integrations/const.d.ts.map +1 -1
  28. package/dist/ai-service/integrations/const.js +3 -1
  29. package/dist/ai-service/integrations/const.js.map +1 -1
  30. package/dist/ai-service/integrations/to-sdk-prompt.d.ts.map +1 -1
  31. package/dist/ai-service/integrations/to-sdk-prompt.js +3703 -20
  32. package/dist/ai-service/integrations/to-sdk-prompt.js.map +1 -1
  33. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts +1 -1
  34. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts.map +1 -1
  35. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js +2 -2
  36. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js.map +1 -1
  37. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts +1 -1
  38. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts.map +1 -1
  39. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js +2 -2
  40. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js.map +1 -1
  41. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts +1 -1
  42. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts.map +1 -1
  43. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js +2 -2
  44. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js.map +1 -1
  45. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts +1 -1
  46. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts.map +1 -1
  47. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js +2 -2
  48. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js.map +1 -1
  49. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts +1 -1
  50. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts.map +1 -1
  51. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js +2 -2
  52. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js.map +1 -1
  53. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts +1 -1
  54. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts.map +1 -1
  55. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js +2 -2
  56. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js.map +1 -1
  57. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts +1 -1
  58. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts.map +1 -1
  59. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js +2 -2
  60. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js.map +1 -1
  61. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts +1 -1
  62. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts.map +1 -1
  63. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js +2 -2
  64. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js.map +1 -1
  65. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts +1 -1
  66. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts.map +1 -1
  67. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js +2 -2
  68. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js.map +1 -1
  69. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts +1 -1
  70. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts.map +1 -1
  71. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js +2 -2
  72. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js.map +1 -1
  73. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts +1 -1
  74. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts.map +1 -1
  75. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js +2 -2
  76. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js.map +1 -1
  77. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts +1 -1
  78. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts.map +1 -1
  79. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js +2 -2
  80. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js.map +1 -1
  81. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts +1 -1
  82. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts.map +1 -1
  83. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js +2 -2
  84. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js.map +1 -1
  85. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts +1 -1
  86. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts.map +1 -1
  87. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js +2 -2
  88. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js.map +1 -1
  89. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts +1 -1
  90. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts.map +1 -1
  91. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js +2 -2
  92. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js.map +1 -1
  93. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts +1 -1
  94. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts.map +1 -1
  95. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js +2 -2
  96. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js.map +1 -1
  97. package/dist/ai-service/prompts/generated/library-components/index.d.ts +0 -1
  98. package/dist/ai-service/prompts/generated/library-components/index.d.ts.map +1 -1
  99. package/dist/ai-service/prompts/generated/library-components/index.js +0 -1
  100. package/dist/ai-service/prompts/generated/library-components/index.js.map +1 -1
  101. package/dist/ai-service/prompts/generated/library-typedefs/Dim.js +1 -1
  102. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts +1 -1
  103. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts.map +1 -1
  104. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js +2 -2
  105. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js.map +1 -1
  106. package/dist/ai-service/prompts/generated/subprompts/full-examples.d.ts +2 -0
  107. package/dist/ai-service/prompts/generated/subprompts/full-examples.d.ts.map +1 -0
  108. package/dist/ai-service/prompts/generated/subprompts/full-examples.js +6 -0
  109. package/dist/ai-service/prompts/generated/subprompts/full-examples.js.map +1 -0
  110. package/dist/ai-service/prompts/generated/subprompts/index.d.ts +4 -0
  111. package/dist/ai-service/prompts/generated/subprompts/index.d.ts.map +1 -1
  112. package/dist/ai-service/prompts/generated/subprompts/index.js +4 -0
  113. package/dist/ai-service/prompts/generated/subprompts/index.js.map +1 -1
  114. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts +1 -1
  115. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts.map +1 -1
  116. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js +2 -2
  117. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js.map +1 -1
  118. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts +1 -1
  119. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts.map +1 -1
  120. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js +2 -2
  121. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js.map +1 -1
  122. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts +1 -1
  123. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts.map +1 -1
  124. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js +2 -2
  125. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js.map +1 -1
  126. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.d.ts +2 -0
  127. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.d.ts.map +1 -0
  128. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.js +6 -0
  129. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.js.map +1 -0
  130. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts +1 -1
  131. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts.map +1 -1
  132. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js +2 -2
  133. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js.map +1 -1
  134. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.d.ts +2 -0
  135. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.d.ts.map +1 -0
  136. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.js +6 -0
  137. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.js.map +1 -0
  138. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts +1 -1
  139. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts.map +1 -1
  140. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js +2 -2
  141. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js.map +1 -1
  142. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts +1 -1
  143. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts.map +1 -1
  144. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js +2 -2
  145. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js.map +1 -1
  146. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.d.ts +2 -0
  147. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.d.ts.map +1 -0
  148. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.js +6 -0
  149. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.js.map +1 -0
  150. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts +1 -1
  151. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts.map +1 -1
  152. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js +2 -2
  153. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js.map +1 -1
  154. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts +1 -1
  155. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts.map +1 -1
  156. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js +2 -2
  157. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js.map +1 -1
  158. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts +1 -1
  159. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts.map +1 -1
  160. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js +2 -2
  161. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js.map +1 -1
  162. package/dist/ai-service/prompts/generated/subprompts/system.d.ts +1 -1
  163. package/dist/ai-service/prompts/generated/subprompts/system.d.ts.map +1 -1
  164. package/dist/ai-service/prompts/generated/subprompts/system.js +2 -2
  165. package/dist/ai-service/prompts/generated/subprompts/system.js.map +1 -1
  166. package/dist/ai-service/prompts/markdown-loader.d.ts.map +1 -1
  167. package/dist/ai-service/prompts/markdown-loader.js +11 -5
  168. package/dist/ai-service/prompts/markdown-loader.js.map +1 -1
  169. package/dist/ai-service/prompts/system.d.ts.map +1 -1
  170. package/dist/ai-service/prompts/system.js +16 -0
  171. package/dist/ai-service/prompts/system.js.map +1 -1
  172. package/dist/ai-service/result-buffer/bolt.d.ts +3 -0
  173. package/dist/ai-service/result-buffer/bolt.d.ts.map +1 -1
  174. package/dist/ai-service/result-buffer/bolt.js +28 -1
  175. package/dist/ai-service/result-buffer/bolt.js.map +1 -1
  176. package/dist/ai-service/result-buffer/shared.d.ts +6 -2
  177. package/dist/ai-service/result-buffer/shared.d.ts.map +1 -1
  178. package/dist/ai-service/result-buffer/shared.js.map +1 -1
  179. package/dist/ai-service/state-machine/clark-fsm.d.ts +40 -6
  180. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  181. package/dist/ai-service/state-machine/clark-fsm.js +10 -1
  182. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  183. package/dist/ai-service/state-machine/fsm.d.ts.map +1 -1
  184. package/dist/ai-service/state-machine/fsm.js +15 -6
  185. package/dist/ai-service/state-machine/fsm.js.map +1 -1
  186. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  187. package/dist/ai-service/state-machine/handlers/agent-planning.js +189 -56
  188. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  189. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts +2 -2
  190. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -1
  191. package/dist/ai-service/state-machine/handlers/awaiting-user.js +31 -4
  192. package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -1
  193. package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -1
  194. package/dist/ai-service/state-machine/handlers/idle.js +6 -4
  195. package/dist/ai-service/state-machine/handlers/idle.js.map +1 -1
  196. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts +1 -1
  197. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  198. package/dist/ai-service/state-machine/handlers/llm-generating.js +125 -19
  199. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  200. package/dist/ai-service/state-machine/handlers/post-processing.d.ts +6 -1
  201. package/dist/ai-service/state-machine/handlers/post-processing.d.ts.map +1 -1
  202. package/dist/ai-service/state-machine/handlers/post-processing.js +215 -22
  203. package/dist/ai-service/state-machine/handlers/post-processing.js.map +1 -1
  204. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts +2 -1
  205. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts.map +1 -1
  206. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js +72 -11
  207. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js.map +1 -1
  208. package/dist/ai-service/state-machine/helpers/change-info.d.ts +8 -0
  209. package/dist/ai-service/state-machine/helpers/change-info.d.ts.map +1 -0
  210. package/dist/ai-service/state-machine/helpers/change-info.js +109 -0
  211. package/dist/ai-service/state-machine/helpers/change-info.js.map +1 -0
  212. package/dist/ai-service/state-machine/helpers/peer.d.ts +3 -2
  213. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  214. package/dist/ai-service/state-machine/helpers/peer.js +35 -4
  215. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  216. package/dist/ai-service/state-machine/helpers/transition.d.ts +1 -2
  217. package/dist/ai-service/state-machine/helpers/transition.d.ts.map +1 -1
  218. package/dist/ai-service/state-machine/helpers/transition.js +6 -0
  219. package/dist/ai-service/state-machine/helpers/transition.js.map +1 -1
  220. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
  221. package/dist/ai-service/state-machine/mocks.js +19 -0
  222. package/dist/ai-service/state-machine/mocks.js.map +1 -1
  223. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.d.ts.map +1 -1
  224. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js +5 -4
  225. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js.map +1 -1
  226. package/dist/ai-service/transform/api-builder/shared.d.ts.map +1 -1
  227. package/dist/ai-service/transform/api-builder/shared.js +4 -2
  228. package/dist/ai-service/transform/api-builder/shared.js.map +1 -1
  229. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts.map +1 -1
  230. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +2 -1
  231. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -1
  232. package/dist/ai-service/transform/shared.d.ts +5 -0
  233. package/dist/ai-service/transform/shared.d.ts.map +1 -1
  234. package/dist/ai-service/transform/shared.js +29 -3
  235. package/dist/ai-service/transform/shared.js.map +1 -1
  236. package/dist/ai-service/types.d.ts +15 -0
  237. package/dist/ai-service/types.d.ts.map +1 -1
  238. package/dist/ai-service/types.js +7 -1
  239. package/dist/ai-service/types.js.map +1 -1
  240. package/dist/binding-extraction/extract-embedded-identifiers.d.ts +2 -11
  241. package/dist/binding-extraction/extract-embedded-identifiers.d.ts.map +1 -1
  242. package/dist/binding-extraction/extract-embedded-identifiers.js +9 -91
  243. package/dist/binding-extraction/extract-embedded-identifiers.js.map +1 -1
  244. package/dist/binding-extraction/template-strings.d.ts +1 -2
  245. package/dist/binding-extraction/template-strings.d.ts.map +1 -1
  246. package/dist/codegen.d.ts +5 -5
  247. package/dist/codegen.d.ts.map +1 -1
  248. package/dist/codegen.js +63 -26
  249. package/dist/codegen.js.map +1 -1
  250. package/dist/components-manager.d.ts +4 -2
  251. package/dist/components-manager.d.ts.map +1 -1
  252. package/dist/components-manager.js +9 -5
  253. package/dist/components-manager.js.map +1 -1
  254. package/dist/draft-interface.d.ts +1 -0
  255. package/dist/draft-interface.d.ts.map +1 -1
  256. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  257. package/dist/file-sync-vite-plugin.js +92 -20
  258. package/dist/file-sync-vite-plugin.js.map +1 -1
  259. package/dist/file-system-manager.d.ts +10 -7
  260. package/dist/file-system-manager.d.ts.map +1 -1
  261. package/dist/file-system-manager.js +95 -31
  262. package/dist/file-system-manager.js.map +1 -1
  263. package/dist/index.d.ts +3 -0
  264. package/dist/index.d.ts.map +1 -1
  265. package/dist/index.js +2 -0
  266. package/dist/index.js.map +1 -1
  267. package/dist/inject-index-vite-plugin.d.ts +8 -0
  268. package/dist/inject-index-vite-plugin.d.ts.map +1 -0
  269. package/dist/inject-index-vite-plugin.js +41 -0
  270. package/dist/inject-index-vite-plugin.js.map +1 -0
  271. package/dist/lock-service/index.d.ts +31 -5
  272. package/dist/lock-service/index.d.ts.map +1 -1
  273. package/dist/lock-service/index.js +111 -31
  274. package/dist/lock-service/index.js.map +1 -1
  275. package/dist/parsing/computed/index.d.ts +4 -0
  276. package/dist/parsing/computed/index.d.ts.map +1 -0
  277. package/dist/parsing/computed/index.js +7 -0
  278. package/dist/parsing/computed/index.js.map +1 -0
  279. package/dist/parsing/computed/to-code-computed.d.ts +2 -1
  280. package/dist/parsing/computed/to-code-computed.d.ts.map +1 -1
  281. package/dist/parsing/computed/to-code-computed.js +22 -11
  282. package/dist/parsing/computed/to-code-computed.js.map +1 -1
  283. package/dist/parsing/dim/index.d.ts +5 -0
  284. package/dist/parsing/dim/index.d.ts.map +1 -0
  285. package/dist/parsing/dim/index.js +7 -0
  286. package/dist/parsing/dim/index.js.map +1 -0
  287. package/dist/parsing/entity/index.d.ts +2 -3
  288. package/dist/parsing/entity/index.d.ts.map +1 -1
  289. package/dist/parsing/entity/index.js +2 -3
  290. package/dist/parsing/entity/index.js.map +1 -1
  291. package/dist/parsing/events/index.d.ts +5 -0
  292. package/dist/parsing/events/index.d.ts.map +1 -0
  293. package/dist/parsing/events/index.js +7 -0
  294. package/dist/parsing/events/index.js.map +1 -0
  295. package/dist/parsing/events/to-code-events.d.ts.map +1 -1
  296. package/dist/parsing/events/to-code-events.js +53 -20
  297. package/dist/parsing/events/to-code-events.js.map +1 -1
  298. package/dist/parsing/events/to-value-events.d.ts +5 -0
  299. package/dist/parsing/events/to-value-events.d.ts.map +1 -1
  300. package/dist/parsing/events/to-value-events.js +96 -11
  301. package/dist/parsing/events/to-value-events.js.map +1 -1
  302. package/dist/parsing/ids.d.ts.map +1 -1
  303. package/dist/parsing/ids.js +48 -27
  304. package/dist/parsing/ids.js.map +1 -1
  305. package/dist/parsing/imports.d.ts +15 -0
  306. package/dist/parsing/imports.d.ts.map +1 -1
  307. package/dist/parsing/imports.js +46 -0
  308. package/dist/parsing/imports.js.map +1 -1
  309. package/dist/parsing/jsx-utils.d.ts +1 -1
  310. package/dist/parsing/jsx-utils.d.ts.map +1 -1
  311. package/dist/parsing/jsx-utils.js +10 -4
  312. package/dist/parsing/jsx-utils.js.map +1 -1
  313. package/dist/parsing/jsx.d.ts.map +1 -1
  314. package/dist/parsing/jsx.js +5 -13
  315. package/dist/parsing/jsx.js.map +1 -1
  316. package/dist/parsing/properties.d.ts.map +1 -1
  317. package/dist/parsing/properties.js +12 -2
  318. package/dist/parsing/properties.js.map +1 -1
  319. package/dist/parsing/scope.d.ts +10 -2
  320. package/dist/parsing/scope.d.ts.map +1 -1
  321. package/dist/parsing/scope.js +127 -37
  322. package/dist/parsing/scope.js.map +1 -1
  323. package/dist/parsing/template/index.d.ts +5 -0
  324. package/dist/parsing/template/index.d.ts.map +1 -0
  325. package/dist/parsing/template/index.js +7 -0
  326. package/dist/parsing/template/index.js.map +1 -0
  327. package/dist/parsing/template/to-value-template.d.ts.map +1 -1
  328. package/dist/parsing/template/to-value-template.js +15 -4
  329. package/dist/parsing/template/to-value-template.js.map +1 -1
  330. package/dist/parsing/theme.js +2 -2
  331. package/dist/parsing/theme.js.map +1 -1
  332. package/dist/parsing/type-parsing-registry.d.ts +5 -15
  333. package/dist/parsing/type-parsing-registry.d.ts.map +1 -1
  334. package/dist/parsing/type-parsing-registry.js +4 -24
  335. package/dist/parsing/type-parsing-registry.js.map +1 -1
  336. package/dist/parsing/types.d.ts +10 -0
  337. package/dist/parsing/types.d.ts.map +1 -0
  338. package/dist/parsing/types.js +2 -0
  339. package/dist/parsing/types.js.map +1 -0
  340. package/dist/parsing/util.d.ts +6 -1
  341. package/dist/parsing/util.d.ts.map +1 -1
  342. package/dist/parsing/util.js +59 -7
  343. package/dist/parsing/util.js.map +1 -1
  344. package/dist/plugin-options.d.ts +2 -2
  345. package/dist/plugin-options.d.ts.map +1 -1
  346. package/dist/refactor/javascript.d.ts +4 -0
  347. package/dist/refactor/javascript.d.ts.map +1 -1
  348. package/dist/refactor/javascript.js +15 -0
  349. package/dist/refactor/javascript.js.map +1 -1
  350. package/dist/rename-manager.d.ts +5 -0
  351. package/dist/rename-manager.d.ts.map +1 -1
  352. package/dist/rename-manager.js +46 -5
  353. package/dist/rename-manager.js.map +1 -1
  354. package/dist/routing.d.ts +2 -2
  355. package/dist/routing.d.ts.map +1 -1
  356. package/dist/routing.js +1 -2
  357. package/dist/routing.js.map +1 -1
  358. package/dist/sb-scope-manager.d.ts +7 -4
  359. package/dist/sb-scope-manager.d.ts.map +1 -1
  360. package/dist/sb-scope-manager.js +44 -17
  361. package/dist/sb-scope-manager.js.map +1 -1
  362. package/dist/socket-manager.d.ts +6 -7
  363. package/dist/socket-manager.d.ts.map +1 -1
  364. package/dist/socket-manager.js +31 -18
  365. package/dist/socket-manager.js.map +1 -1
  366. package/dist/source-tracker.d.ts +8 -15
  367. package/dist/source-tracker.d.ts.map +1 -1
  368. package/dist/source-tracker.js +84 -66
  369. package/dist/source-tracker.js.map +1 -1
  370. package/dist/sync-service/draft-helpers.d.ts +9 -0
  371. package/dist/sync-service/draft-helpers.d.ts.map +1 -1
  372. package/dist/sync-service/draft-helpers.js +65 -0
  373. package/dist/sync-service/draft-helpers.js.map +1 -1
  374. package/dist/sync-service/index.d.ts +15 -2
  375. package/dist/sync-service/index.d.ts.map +1 -1
  376. package/dist/sync-service/index.js +86 -16
  377. package/dist/sync-service/index.js.map +1 -1
  378. package/dist/sync-service/server-rpc/client.d.ts +5 -1
  379. package/dist/sync-service/server-rpc/client.d.ts.map +1 -1
  380. package/dist/sync-service/server-rpc/client.js +12 -25
  381. package/dist/sync-service/server-rpc/client.js.map +1 -1
  382. package/dist/sync-service/server-rpc/handlers.d.ts +2 -2
  383. package/dist/sync-service/server-rpc/handlers.d.ts.map +1 -1
  384. package/dist/sync-service/server-rpc/handlers.js.map +1 -1
  385. package/dist/sync-service/snapshot/take-snapshot.d.ts +0 -3
  386. package/dist/sync-service/snapshot/take-snapshot.d.ts.map +1 -1
  387. package/dist/sync-service/snapshot/take-snapshot.js +0 -5
  388. package/dist/sync-service/snapshot/take-snapshot.js.map +1 -1
  389. package/dist/util/logger.d.ts.map +1 -1
  390. package/dist/util/logger.js +9 -8
  391. package/dist/util/logger.js.map +1 -1
  392. package/dist/util/tracing.d.ts +1 -1
  393. package/dist/util/tracing.d.ts.map +1 -1
  394. package/dist/util/tracing.js +38 -1
  395. package/dist/util/tracing.js.map +1 -1
  396. package/dist/util.d.ts +2 -0
  397. package/dist/util.d.ts.map +1 -1
  398. package/dist/util.js +41 -0
  399. package/dist/util.js.map +1 -1
  400. package/package.json +16 -10
  401. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts +0 -2
  402. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts.map +0 -1
  403. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js +0 -6
  404. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js.map +0 -1
@@ -10,22 +10,26 @@ import { SCOPE_FILE } from "./file-system-helpers.js";
10
10
  import { generate } from "./generate.js";
11
11
  import { generatePredictableId } from "./ids.js";
12
12
  import { generateElementId, getSbElementId, supplementElementIds, } from "./parsing/ids.js";
13
- import { REQUIRED_IMPORTS_BY_PROPERTY_TYPE } from "./parsing/imports.js";
14
- import { getDescriptiveName, getJSXAttributeName, getJSXAttributeType, getVariableReferences, isNamedComponent, } from "./parsing/jsx.js";
13
+ import { getRequiredImportsForProperty } from "./parsing/imports.js";
14
+ import { getDescriptiveName, getJSXAttributeName, getVariableReferences, isNamedComponent, } from "./parsing/jsx.js";
15
15
  import { updateThemeAst } from "./parsing/theme.js";
16
16
  import { getTagName, addImport, extractImportsFromAst, getImportPath, } from "./parsing/util.js";
17
17
  import { RenameManager } from "./rename-manager.js";
18
18
  import { SbScopeManager } from "./sb-scope-manager.js";
19
19
  import { getErrorMeta, getLogger } from "./util/logger.js";
20
- const GLOBAL_FUNCTION_NAMES = new Set([
20
+ const GLOBAL_LIBRARY_NAMES = new Set([
21
21
  "copyToClipboard",
22
22
  "navigateTo",
23
23
  "setQueryParams",
24
24
  "download",
25
25
  "showAlert",
26
26
  "logoutIntegrations",
27
+ "Global",
28
+ "Theme",
29
+ "Env",
30
+ "Embed",
27
31
  ]);
28
- const ATTRIBUTE_TYPES_WITH_STATE_ACCESS = ["COMPUTED", "TEMPLATE"];
32
+ const ATTRIBUTE_TYPES_WITH_STATE_ACCESS = ["COMPUTED", "TEMPLATE", "EVENT"];
29
33
  // File Explanation:
30
34
  // This file is responsible for tracking the source code of the application.
31
35
  // It parses the source code of the application and stores the ASTs of the files.
@@ -41,8 +45,8 @@ export class SourceTracker {
41
45
  newlyAddedCount = 0;
42
46
  fileToMeta = {};
43
47
  changedFiles = new Set();
44
- constructor() {
45
- this.sbScopeManager = new SbScopeManager(this);
48
+ constructor(tracer) {
49
+ this.sbScopeManager = new SbScopeManager(this, tracer);
46
50
  }
47
51
  getCurrentFiles() {
48
52
  return this.fileToMeta;
@@ -335,9 +339,23 @@ export class SourceTracker {
335
339
  }
336
340
  const entityId = scopeDefinition.scopeNameToEntityId[apiName];
337
341
  if (!entityId) {
338
- throw new Error("Entity ID not found for API " + apiName);
342
+ getLogger().warn("Entity ID not found for API " + apiName);
343
+ return;
339
344
  }
340
345
  const { changedFiles } = this.sbScopeManager.deleteScopeEntity(entityId);
346
+ const scopeFolder = path.dirname(scopeFilePath);
347
+ for (const filePath of Object.keys(this.fileToMeta)) {
348
+ if (filePath.startsWith(scopeFolder) && filePath.endsWith(".tsx")) {
349
+ const currentFile = this.fileToMeta[filePath];
350
+ if (!currentFile || !currentFile.ast) {
351
+ throw new Error(`File not found for element ${filePath}`);
352
+ }
353
+ this.renameManager.deleteApisInAST({
354
+ name: apiName,
355
+ ast: currentFile.ast,
356
+ });
357
+ }
358
+ }
341
359
  changedFiles.forEach((file) => {
342
360
  this.changedFiles.add(file);
343
361
  });
@@ -658,18 +676,38 @@ export class SourceTracker {
658
676
  * And you want to update the `accessor` property, you can use this function to do so, passing a property path like
659
677
  * `columns.name.accessor`, rather than the entire columns object.
660
678
  */
661
- setNestedAttribute = ({ openingTag, property, value, type, }) => {
679
+ setNestedAttribute = ({ openingTag, property, info, }) => {
662
680
  const [parent, ...paths] = splitJSPathAdvanced(property, []);
663
681
  let parentAttr = openingTag
664
682
  .get("attributes")
665
683
  .find((attr) => attr.isJSXAttribute() && attr.node.name.name === parent);
684
+ // If value is undefined, we want to delete the nested property
685
+ if (info.value === undefined) {
686
+ if (!parentAttr) {
687
+ // Property doesn't exist anyway, nothing to delete
688
+ return;
689
+ }
690
+ const expressionContainer = parentAttr?.get("value");
691
+ if (!expressionContainer ||
692
+ !expressionContainer.isJSXExpressionContainer()) {
693
+ // Can't delete from non-object, just return
694
+ return;
695
+ }
696
+ const currentNode = expressionContainer.get("expression");
697
+ writeNestedProperty({
698
+ node: currentNode,
699
+ paths,
700
+ info,
701
+ isDelete: true,
702
+ });
703
+ return;
704
+ }
666
705
  if (!parentAttr && parent) {
667
706
  const newAttr = openingTag.pushContainer("attributes", [
668
707
  t.jsxAttribute(t.jsxIdentifier(parent), t.jSXExpressionContainer(t.objectExpression([]))),
669
708
  ]);
670
709
  parentAttr = newAttr[0];
671
710
  }
672
- // why does this return an array of node paths, its super annoying
673
711
  const expressionContainer = parentAttr?.get("value");
674
712
  if (!expressionContainer ||
675
713
  !expressionContainer.isJSXExpressionContainer()) {
@@ -679,16 +717,15 @@ export class SourceTracker {
679
717
  writeNestedProperty({
680
718
  node: currentNode,
681
719
  paths,
682
- value,
683
- type,
720
+ info,
684
721
  });
722
+ return currentNode.node;
685
723
  };
686
- setAttribute = (openingTag, property, value, type) => {
724
+ setAttribute = (openingTag, property, info) => {
687
725
  const paths = splitJSPath(property);
688
726
  if (Array.isArray(paths) && paths.length > 1) {
689
727
  // Sometimes we want to set a nested attribute, like `columns.name.accessor`
690
- this.setNestedAttribute({ openingTag, property, value, type });
691
- return;
728
+ return this.setNestedAttribute({ openingTag, property, info });
692
729
  }
693
730
  let attr = openingTag
694
731
  .get("attributes")
@@ -698,22 +735,7 @@ export class SourceTracker {
698
735
  t.jsxAttribute(t.jsxIdentifier(property), t.stringLiteral("")),
699
736
  ])[0];
700
737
  }
701
- // TODO: move to proper prop typing for custom components, but for now we just try to coerce
702
- // values 🤷
703
- if (getTagName(openingTag.node.name) === "SbCustom") {
704
- const expressionType = getJSXAttributeType(attr.node);
705
- switch (expressionType) {
706
- case "string":
707
- value = value.toString();
708
- break;
709
- case "number":
710
- value = Number(value);
711
- break;
712
- case "boolean":
713
- value = Boolean(value);
714
- break;
715
- }
716
- }
738
+ const value = info.value;
717
739
  // We currently delete attributes that are undefined or set to an empty string
718
740
  if (value === undefined || (typeof value === "string" && value === "")) {
719
741
  attr.remove();
@@ -724,7 +746,7 @@ export class SourceTracker {
724
746
  throw new Error("Attribute name not found");
725
747
  }
726
748
  const attrValue = attr.get("value");
727
- const jsxAttribute = generateJSXAttribute(property, Property.Any(value, type));
749
+ const jsxAttribute = generateJSXAttribute(property, info);
728
750
  if (jsxAttribute.value) {
729
751
  attrValue.replaceWith(jsxAttribute.value);
730
752
  }
@@ -743,10 +765,10 @@ export class SourceTracker {
743
765
  element.node.closingElement = t.jsxClosingElement(t.jsxIdentifier(getTagName(openingElement.node.name) ?? ""));
744
766
  }
745
767
  };
746
- setProperty = async ({ source, property, value, type, }) => {
768
+ setProperty = async ({ source, property, info, }) => {
747
769
  await this.setProperties({
748
770
  source,
749
- changes: { [property]: { value, type } },
771
+ changes: { [property]: info },
750
772
  });
751
773
  };
752
774
  setProperties = async ({ source, changes, }) => {
@@ -771,44 +793,25 @@ export class SourceTracker {
771
793
  throw new Error(`Element ${source.id} is not a JSXOpeningElement`);
772
794
  }
773
795
  // Iterate over the changes and set each attribute using the helper
774
- for (const [key, { value, type }] of Object.entries(changes)) {
775
- // TODO(code-mode): should we use property definitions to ensure writes are valid?
776
- // For now we will just add the attribute to the element and write the update
777
- const processedValue = value;
778
- const jsxAttribute = this.setAttribute(openingTag, key, processedValue, type);
779
- if (type in REQUIRED_IMPORTS_BY_PROPERTY_TYPE) {
780
- const requiredImports = REQUIRED_IMPORTS_BY_PROPERTY_TYPE[type];
781
- if (requiredImports) {
782
- for (const { importName, importPath } of requiredImports) {
783
- if (!this.fileToMeta[fileName].imports[importName]) {
784
- addImport({
785
- importPath,
786
- importName,
787
- path: openingTag,
788
- onAdd: () => {
789
- this.fileToMeta[fileName].imports[importName] = true;
790
- },
791
- });
792
- }
793
- }
794
- }
795
- }
796
- if (type === "EVENT" && jsxAttribute) {
797
- const referencedGlobalFunctions = getVariableReferences(jsxAttribute, GLOBAL_FUNCTION_NAMES);
798
- referencedGlobalFunctions.forEach((funcName) => {
799
- if (!this.fileToMeta[fileName].imports[funcName]) {
796
+ for (const [key, info] of Object.entries(changes)) {
797
+ const jsxAttribute = this.setAttribute(openingTag, key, info);
798
+ const imports = getRequiredImportsForProperty(info);
799
+ if (imports.length > 0) {
800
+ for (const { importName, importPath } of imports) {
801
+ if (!this.fileToMeta[fileName].imports[importName]) {
800
802
  addImport({
801
- importPath: "@superblocksteam/library",
802
- importName: funcName,
803
+ importPath,
804
+ importName,
803
805
  path: openingTag,
804
806
  onAdd: () => {
805
- this.fileToMeta[fileName].imports[funcName] = true;
807
+ this.fileToMeta[fileName].imports[importName] = true;
806
808
  },
807
809
  });
808
810
  }
809
- });
811
+ }
810
812
  }
811
- if (ATTRIBUTE_TYPES_WITH_STATE_ACCESS.includes(type) && jsxAttribute) {
813
+ if (ATTRIBUTE_TYPES_WITH_STATE_ACCESS.includes(info.type) &&
814
+ jsxAttribute) {
812
815
  const elementLocation = this.getElementToLocation(source.id);
813
816
  const scopeImports = this.sbScopeManager.getAndUpdateScopeImportsForCodeSnippet({
814
817
  jsxAttribute,
@@ -816,7 +819,13 @@ export class SourceTracker {
816
819
  elementLocation,
817
820
  existingImports: this.fileToMeta[fileName].imports,
818
821
  });
819
- scopeImports.forEach(({ importPath, importName }) => {
822
+ const referencedGlobalFunctions = getVariableReferences(jsxAttribute, GLOBAL_LIBRARY_NAMES).map((funcName) => {
823
+ return {
824
+ importPath: "@superblocksteam/library",
825
+ importName: funcName,
826
+ };
827
+ });
828
+ [...referencedGlobalFunctions, ...scopeImports].forEach(({ importPath, importName }) => {
820
829
  addImport({
821
830
  importPath,
822
831
  importName,
@@ -877,10 +886,19 @@ export class SourceTracker {
877
886
  }
878
887
  const hasNameAttribute = isNamedComponent(widgetNode.node);
879
888
  if (scopeName) {
889
+ if (!hasNameAttribute) {
890
+ // if this is the first component getting named, we might need to add a scope destructuring for it
891
+ this.sbScopeManager.addScopeDestructuringForComponent({
892
+ elementLocation: widgetNode,
893
+ scopeName,
894
+ componentFilePath: filePath,
895
+ });
896
+ }
880
897
  const changedFiles = this.sbScopeManager.renameScopeComponent({
881
898
  oldName: hasNameAttribute ? oldName : undefined,
882
899
  newName,
883
900
  scopeName,
901
+ componentFilePath: filePath,
884
902
  });
885
903
  changedFiles.forEach((file) => {
886
904
  this.changedFiles.add(file);
@@ -921,7 +939,7 @@ export class SourceTracker {
921
939
  if (!pageElement) {
922
940
  throw new Error(`Page element not found for ${widgetSourceId}`);
923
941
  }
924
- const attributes = pageElement.get("attributes");
942
+ const attributes = pageElement.get("openingElement").get("attributes");
925
943
  const attribute = attributes?.find((attr) => attr.isJSXAttribute() && attr.node.name.name === "name");
926
944
  attribute?.replaceWith(t.jsxAttribute(t.jsxIdentifier("name"), t.stringLiteral(newName)));
927
945
  this.changedFiles.add(filePath);
@@ -1 +1 @@
1
- {"version":3,"file":"source-tracker.js","sourceRoot":"","sources":["../src/source-tracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-tracker.js","sourceRoot":"","sources":["../src/source-tracker.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ export declare function hasSwapFiles(appRootDirPath: string): Promise<boolean>;
47
47
  * @returns A promise that resolves when all drafts have been discarded.
48
48
  */
49
49
  export declare function discardAllDrafts(appRootDirPath: string): Promise<void>;
50
+ export declare function cleanUpDraftsDirectory(appRootDirPath: string): Promise<void>;
50
51
  /**
51
52
  * Commits all draft changes by removing .sbswap.edit and .sbswap.add markers.
52
53
  * This leaves the current filesystem state as the committed state.
@@ -65,4 +66,12 @@ export declare function getDraftInfo(appRootDirPath: string): Promise<{
65
66
  edits: string[];
66
67
  additions: string[];
67
68
  }>;
69
+ /**
70
+ * Generates a git-like diff showing all draft changes.
71
+ *
72
+ * @param appRootDirPath - The absolute path to the app root directory.
73
+ * @param specificPaths - An optional array of relative paths to limit the diff to.
74
+ * @returns A promise that resolves to a git-like diff string.
75
+ */
76
+ export declare function generateDraftDiff(appRootDirPath: string, specificPaths?: string[]): Promise<string>;
68
77
  //# sourceMappingURL=draft-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"draft-helpers.d.ts","sourceRoot":"","sources":["../../src/sync-service/draft-helpers.ts"],"names":[],"mappings":"AAqCA;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,MAAM,EAC7B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAgDzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,MAAM,EAC7B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,CA+Cf;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAW3E;AAqCD;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB5E;AAwED;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB3E;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;IAClE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC,CAiDD"}
1
+ {"version":3,"file":"draft-helpers.d.ts","sourceRoot":"","sources":["../../src/sync-service/draft-helpers.ts"],"names":[],"mappings":"AAsCA;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,MAAM,EAC7B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAgDzB;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GAAG,MAAM,EAC7B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,CA+Cf;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAW3E;AAqCD;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAc5E;AAED,wBAAsB,sBAAsB,CAC1C,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf;AAwED;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB3E;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;IAClE,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC,CAiDD;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,cAAc,EAAE,MAAM,EACtB,aAAa,GAAE,MAAM,EAAO,GAC3B,OAAO,CAAC,MAAM,CAAC,CAwEjB"}
@@ -1,5 +1,6 @@
1
1
  import * as fsp from "node:fs/promises";
2
2
  import * as path from "node:path";
3
+ import { createPatch } from "diff";
3
4
  const EDIT_EXT = ".sbswap.edit";
4
5
  const ADD_EXT = ".sbswap.add";
5
6
  /**
@@ -232,6 +233,10 @@ export async function discardAllDrafts(appRootDirPath) {
232
233
  }
233
234
  await discardDraftsInDirectory(draftsDir, appRootDirPath);
234
235
  // Clean up the entire drafts directory
236
+ await cleanUpDraftsDirectory(appRootDirPath);
237
+ }
238
+ export async function cleanUpDraftsDirectory(appRootDirPath) {
239
+ const draftsDir = getDraftsDirectoryPath(appRootDirPath);
235
240
  try {
236
241
  await fsp.rm(draftsDir, { recursive: true });
237
242
  }
@@ -359,4 +364,64 @@ export async function getDraftInfo(appRootDirPath) {
359
364
  await scanDirectory(draftsDir);
360
365
  return { edits, additions };
361
366
  }
367
+ /**
368
+ * Generates a git-like diff showing all draft changes.
369
+ *
370
+ * @param appRootDirPath - The absolute path to the app root directory.
371
+ * @param specificPaths - An optional array of relative paths to limit the diff to.
372
+ * @returns A promise that resolves to a git-like diff string.
373
+ */
374
+ export async function generateDraftDiff(appRootDirPath, specificPaths = []) {
375
+ const draftsDir = getDraftsDirectoryPath(appRootDirPath);
376
+ try {
377
+ await fsp.access(draftsDir);
378
+ }
379
+ catch {
380
+ return "No draft changes found.";
381
+ }
382
+ const diffLines = [];
383
+ let { edits, additions } = await getDraftInfo(appRootDirPath);
384
+ edits = edits.filter((edit) => specificPaths.length === 0 ||
385
+ specificPaths.some((path) => edit.startsWith(path)));
386
+ additions = additions.filter((add) => specificPaths.length === 0 ||
387
+ specificPaths.some((path) => add.startsWith(path)));
388
+ if (edits.length === 0 && additions.length === 0) {
389
+ return "No draft changes found.";
390
+ }
391
+ // Process draft edits
392
+ for (const editPath of edits) {
393
+ const originalPath = path.join(appRootDirPath, editPath);
394
+ const markerPath = getMarkerFilePath(originalPath, appRootDirPath, EDIT_EXT);
395
+ try {
396
+ const currentContent = await fsp.readFile(originalPath, "utf8");
397
+ const originalContent = await fsp.readFile(markerPath, "utf8");
398
+ const patch = createPatch(editPath, originalContent, currentContent);
399
+ diffLines.push(patch);
400
+ diffLines.push(""); // Empty line between files
401
+ }
402
+ catch (_error) {
403
+ // Skip files that can't be read
404
+ continue;
405
+ }
406
+ }
407
+ // Process draft additions
408
+ for (const addPath of additions) {
409
+ const filePath = path.join(appRootDirPath, addPath);
410
+ try {
411
+ const content = await fsp.readFile(filePath, "utf8");
412
+ const patch = createPatch(addPath, "", content);
413
+ diffLines.push(patch);
414
+ diffLines.push(""); // Empty line between files
415
+ }
416
+ catch (_error) {
417
+ // Skip files that can't be read
418
+ continue;
419
+ }
420
+ }
421
+ // Remove trailing empty line
422
+ if (diffLines[diffLines.length - 1] === "") {
423
+ diffLines.pop();
424
+ }
425
+ return diffLines.join("\n");
426
+ }
362
427
  //# sourceMappingURL=draft-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"draft-helpers.js","sourceRoot":"","sources":["../../src/sync-service/draft-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"draft-helpers.js","sourceRoot":"","sources":["../../src/sync-service/draft-helpers.ts"],"names":[],"mappings":"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"}