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

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 (392) hide show
  1. package/dist/ai-service/app-interface/shell.d.ts +15 -0
  2. package/dist/ai-service/app-interface/shell.d.ts.map +1 -0
  3. package/dist/ai-service/app-interface/shell.js +81 -0
  4. package/dist/ai-service/app-interface/shell.js.map +1 -0
  5. package/dist/ai-service/app-interface/source-tracker.d.ts +17 -0
  6. package/dist/ai-service/app-interface/source-tracker.d.ts.map +1 -0
  7. package/dist/ai-service/app-interface/source-tracker.js +41 -0
  8. package/dist/ai-service/app-interface/source-tracker.js.map +1 -0
  9. package/dist/ai-service/artifacts/bolt.js +1 -1
  10. package/dist/ai-service/artifacts/bolt.js.map +1 -1
  11. package/dist/ai-service/const.d.ts +8 -1
  12. package/dist/ai-service/const.d.ts.map +1 -1
  13. package/dist/ai-service/const.js +8 -1
  14. package/dist/ai-service/const.js.map +1 -1
  15. package/dist/ai-service/eval/template-renderer.d.ts.map +1 -1
  16. package/dist/ai-service/eval/template-renderer.js +3 -2
  17. package/dist/ai-service/eval/template-renderer.js.map +1 -1
  18. package/dist/ai-service/index.d.ts +11 -4
  19. package/dist/ai-service/index.d.ts.map +1 -1
  20. package/dist/ai-service/index.js +50 -19
  21. package/dist/ai-service/index.js.map +1 -1
  22. package/dist/ai-service/integrations/const.d.ts +1 -1
  23. package/dist/ai-service/integrations/const.js +1 -1
  24. package/dist/ai-service/integrations/const.js.map +1 -1
  25. package/dist/ai-service/integrations/to-sdk-prompt.js +211 -18
  26. package/dist/ai-service/integrations/to-sdk-prompt.js.map +1 -1
  27. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts +1 -1
  28. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts.map +1 -1
  29. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js +2 -2
  30. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js.map +1 -1
  31. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts +1 -1
  32. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts.map +1 -1
  33. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js +2 -2
  34. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js.map +1 -1
  35. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts +1 -1
  36. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts.map +1 -1
  37. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js +2 -2
  38. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js.map +1 -1
  39. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts +1 -1
  40. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts.map +1 -1
  41. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js +2 -2
  42. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js.map +1 -1
  43. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts +1 -1
  44. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts.map +1 -1
  45. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js +2 -2
  46. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js.map +1 -1
  47. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts +1 -1
  48. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts.map +1 -1
  49. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js +2 -2
  50. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js.map +1 -1
  51. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts +1 -1
  52. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts.map +1 -1
  53. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js +2 -2
  54. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js.map +1 -1
  55. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts +1 -1
  56. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts.map +1 -1
  57. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js +2 -2
  58. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js.map +1 -1
  59. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts +1 -1
  60. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts.map +1 -1
  61. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js +2 -2
  62. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js.map +1 -1
  63. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts +1 -1
  64. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts.map +1 -1
  65. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js +2 -2
  66. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js.map +1 -1
  67. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts +1 -1
  68. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts.map +1 -1
  69. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js +2 -2
  70. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js.map +1 -1
  71. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts +1 -1
  72. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts.map +1 -1
  73. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js +2 -2
  74. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js.map +1 -1
  75. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts +1 -1
  76. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts.map +1 -1
  77. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js +2 -2
  78. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js.map +1 -1
  79. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts +1 -1
  80. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts.map +1 -1
  81. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js +2 -2
  82. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js.map +1 -1
  83. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts +1 -1
  84. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts.map +1 -1
  85. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js +2 -2
  86. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js.map +1 -1
  87. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts +1 -1
  88. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts.map +1 -1
  89. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js +2 -2
  90. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js.map +1 -1
  91. package/dist/ai-service/prompts/generated/library-components/index.d.ts +0 -1
  92. package/dist/ai-service/prompts/generated/library-components/index.d.ts.map +1 -1
  93. package/dist/ai-service/prompts/generated/library-components/index.js +0 -1
  94. package/dist/ai-service/prompts/generated/library-components/index.js.map +1 -1
  95. package/dist/ai-service/prompts/generated/library-typedefs/Dim.js +1 -1
  96. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts +1 -1
  97. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts.map +1 -1
  98. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js +2 -2
  99. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js.map +1 -1
  100. package/dist/ai-service/prompts/generated/subprompts/index.d.ts +3 -0
  101. package/dist/ai-service/prompts/generated/subprompts/index.d.ts.map +1 -1
  102. package/dist/ai-service/prompts/generated/subprompts/index.js +3 -0
  103. package/dist/ai-service/prompts/generated/subprompts/index.js.map +1 -1
  104. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts +1 -1
  105. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts.map +1 -1
  106. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js +2 -2
  107. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js.map +1 -1
  108. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts +1 -1
  109. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts.map +1 -1
  110. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js +2 -2
  111. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js.map +1 -1
  112. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts +1 -1
  113. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts.map +1 -1
  114. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js +2 -2
  115. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js.map +1 -1
  116. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.d.ts +2 -0
  117. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.d.ts.map +1 -0
  118. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.js +6 -0
  119. package/dist/ai-service/prompts/generated/subprompts/superblocks-data-filtering.js.map +1 -0
  120. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts +1 -1
  121. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts.map +1 -1
  122. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js +2 -2
  123. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js.map +1 -1
  124. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.d.ts +2 -0
  125. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.d.ts.map +1 -0
  126. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.js +6 -0
  127. package/dist/ai-service/prompts/generated/subprompts/superblocks-forms.js.map +1 -0
  128. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts +1 -1
  129. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts.map +1 -1
  130. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js +2 -2
  131. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js.map +1 -1
  132. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts +1 -1
  133. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts.map +1 -1
  134. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js +2 -2
  135. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js.map +1 -1
  136. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.d.ts +2 -0
  137. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.d.ts.map +1 -0
  138. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.js +6 -0
  139. package/dist/ai-service/prompts/generated/subprompts/superblocks-rbac.js.map +1 -0
  140. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts +1 -1
  141. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts.map +1 -1
  142. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js +2 -2
  143. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js.map +1 -1
  144. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts +1 -1
  145. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts.map +1 -1
  146. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js +2 -2
  147. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js.map +1 -1
  148. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts +1 -1
  149. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts.map +1 -1
  150. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js +2 -2
  151. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js.map +1 -1
  152. package/dist/ai-service/prompts/generated/subprompts/system.d.ts +1 -1
  153. package/dist/ai-service/prompts/generated/subprompts/system.d.ts.map +1 -1
  154. package/dist/ai-service/prompts/generated/subprompts/system.js +2 -2
  155. package/dist/ai-service/prompts/generated/subprompts/system.js.map +1 -1
  156. package/dist/ai-service/prompts/markdown-loader.d.ts.map +1 -1
  157. package/dist/ai-service/prompts/markdown-loader.js +11 -5
  158. package/dist/ai-service/prompts/markdown-loader.js.map +1 -1
  159. package/dist/ai-service/prompts/system.d.ts.map +1 -1
  160. package/dist/ai-service/prompts/system.js +12 -0
  161. package/dist/ai-service/prompts/system.js.map +1 -1
  162. package/dist/ai-service/result-buffer/bolt.d.ts +3 -0
  163. package/dist/ai-service/result-buffer/bolt.d.ts.map +1 -1
  164. package/dist/ai-service/result-buffer/bolt.js +28 -1
  165. package/dist/ai-service/result-buffer/bolt.js.map +1 -1
  166. package/dist/ai-service/result-buffer/shared.d.ts +6 -2
  167. package/dist/ai-service/result-buffer/shared.d.ts.map +1 -1
  168. package/dist/ai-service/result-buffer/shared.js.map +1 -1
  169. package/dist/ai-service/state-machine/clark-fsm.d.ts +39 -5
  170. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  171. package/dist/ai-service/state-machine/clark-fsm.js +10 -1
  172. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  173. package/dist/ai-service/state-machine/fsm.d.ts.map +1 -1
  174. package/dist/ai-service/state-machine/fsm.js +15 -6
  175. package/dist/ai-service/state-machine/fsm.js.map +1 -1
  176. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  177. package/dist/ai-service/state-machine/handlers/agent-planning.js +175 -56
  178. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  179. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts +2 -2
  180. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -1
  181. package/dist/ai-service/state-machine/handlers/awaiting-user.js +31 -4
  182. package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -1
  183. package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -1
  184. package/dist/ai-service/state-machine/handlers/idle.js +6 -4
  185. package/dist/ai-service/state-machine/handlers/idle.js.map +1 -1
  186. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts +1 -1
  187. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  188. package/dist/ai-service/state-machine/handlers/llm-generating.js +125 -19
  189. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  190. package/dist/ai-service/state-machine/handlers/post-processing.d.ts +6 -1
  191. package/dist/ai-service/state-machine/handlers/post-processing.d.ts.map +1 -1
  192. package/dist/ai-service/state-machine/handlers/post-processing.js +216 -22
  193. package/dist/ai-service/state-machine/handlers/post-processing.js.map +1 -1
  194. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts +2 -1
  195. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts.map +1 -1
  196. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js +62 -11
  197. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js.map +1 -1
  198. package/dist/ai-service/state-machine/helpers/change-info.d.ts +8 -0
  199. package/dist/ai-service/state-machine/helpers/change-info.d.ts.map +1 -0
  200. package/dist/ai-service/state-machine/helpers/change-info.js +109 -0
  201. package/dist/ai-service/state-machine/helpers/change-info.js.map +1 -0
  202. package/dist/ai-service/state-machine/helpers/peer.d.ts +3 -2
  203. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  204. package/dist/ai-service/state-machine/helpers/peer.js +35 -4
  205. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  206. package/dist/ai-service/state-machine/helpers/transition.d.ts +1 -2
  207. package/dist/ai-service/state-machine/helpers/transition.d.ts.map +1 -1
  208. package/dist/ai-service/state-machine/helpers/transition.js +6 -0
  209. package/dist/ai-service/state-machine/helpers/transition.js.map +1 -1
  210. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
  211. package/dist/ai-service/state-machine/mocks.js +17 -0
  212. package/dist/ai-service/state-machine/mocks.js.map +1 -1
  213. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.d.ts.map +1 -1
  214. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js +5 -4
  215. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js.map +1 -1
  216. package/dist/ai-service/transform/api-builder/shared.d.ts.map +1 -1
  217. package/dist/ai-service/transform/api-builder/shared.js +4 -2
  218. package/dist/ai-service/transform/api-builder/shared.js.map +1 -1
  219. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts.map +1 -1
  220. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +2 -1
  221. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -1
  222. package/dist/ai-service/transform/shared.d.ts +5 -0
  223. package/dist/ai-service/transform/shared.d.ts.map +1 -1
  224. package/dist/ai-service/transform/shared.js +29 -3
  225. package/dist/ai-service/transform/shared.js.map +1 -1
  226. package/dist/ai-service/types.d.ts +15 -0
  227. package/dist/ai-service/types.d.ts.map +1 -1
  228. package/dist/ai-service/types.js +7 -1
  229. package/dist/ai-service/types.js.map +1 -1
  230. package/dist/binding-extraction/extract-embedded-identifiers.d.ts +2 -11
  231. package/dist/binding-extraction/extract-embedded-identifiers.d.ts.map +1 -1
  232. package/dist/binding-extraction/extract-embedded-identifiers.js +9 -91
  233. package/dist/binding-extraction/extract-embedded-identifiers.js.map +1 -1
  234. package/dist/binding-extraction/template-strings.d.ts +1 -2
  235. package/dist/binding-extraction/template-strings.d.ts.map +1 -1
  236. package/dist/codegen.d.ts +5 -5
  237. package/dist/codegen.d.ts.map +1 -1
  238. package/dist/codegen.js +63 -26
  239. package/dist/codegen.js.map +1 -1
  240. package/dist/draft-interface.d.ts +1 -0
  241. package/dist/draft-interface.d.ts.map +1 -1
  242. package/dist/errors/make-server-error.d.ts +1 -0
  243. package/dist/errors/make-server-error.d.ts.map +1 -1
  244. package/dist/errors/make-server-error.js +9 -0
  245. package/dist/errors/make-server-error.js.map +1 -1
  246. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  247. package/dist/file-sync-vite-plugin.js +83 -15
  248. package/dist/file-sync-vite-plugin.js.map +1 -1
  249. package/dist/file-system-manager.d.ts +7 -5
  250. package/dist/file-system-manager.d.ts.map +1 -1
  251. package/dist/file-system-manager.js +94 -27
  252. package/dist/file-system-manager.js.map +1 -1
  253. package/dist/index.d.ts +3 -0
  254. package/dist/index.d.ts.map +1 -1
  255. package/dist/index.js +2 -0
  256. package/dist/index.js.map +1 -1
  257. package/dist/inject-index-vite-plugin.d.ts +8 -0
  258. package/dist/inject-index-vite-plugin.d.ts.map +1 -0
  259. package/dist/inject-index-vite-plugin.js +41 -0
  260. package/dist/inject-index-vite-plugin.js.map +1 -0
  261. package/dist/lock-service/index.d.ts +29 -3
  262. package/dist/lock-service/index.d.ts.map +1 -1
  263. package/dist/lock-service/index.js +108 -28
  264. package/dist/lock-service/index.js.map +1 -1
  265. package/dist/parsing/computed/index.d.ts +4 -0
  266. package/dist/parsing/computed/index.d.ts.map +1 -0
  267. package/dist/parsing/computed/index.js +7 -0
  268. package/dist/parsing/computed/index.js.map +1 -0
  269. package/dist/parsing/computed/to-code-computed.d.ts +2 -1
  270. package/dist/parsing/computed/to-code-computed.d.ts.map +1 -1
  271. package/dist/parsing/computed/to-code-computed.js +22 -11
  272. package/dist/parsing/computed/to-code-computed.js.map +1 -1
  273. package/dist/parsing/dim/index.d.ts +5 -0
  274. package/dist/parsing/dim/index.d.ts.map +1 -0
  275. package/dist/parsing/dim/index.js +7 -0
  276. package/dist/parsing/dim/index.js.map +1 -0
  277. package/dist/parsing/entity/index.d.ts +2 -3
  278. package/dist/parsing/entity/index.d.ts.map +1 -1
  279. package/dist/parsing/entity/index.js +2 -3
  280. package/dist/parsing/entity/index.js.map +1 -1
  281. package/dist/parsing/events/index.d.ts +5 -0
  282. package/dist/parsing/events/index.d.ts.map +1 -0
  283. package/dist/parsing/events/index.js +7 -0
  284. package/dist/parsing/events/index.js.map +1 -0
  285. package/dist/parsing/events/to-code-events.d.ts.map +1 -1
  286. package/dist/parsing/events/to-code-events.js +52 -19
  287. package/dist/parsing/events/to-code-events.js.map +1 -1
  288. package/dist/parsing/events/to-value-events.d.ts +5 -0
  289. package/dist/parsing/events/to-value-events.d.ts.map +1 -1
  290. package/dist/parsing/events/to-value-events.js +96 -11
  291. package/dist/parsing/events/to-value-events.js.map +1 -1
  292. package/dist/parsing/ids.d.ts.map +1 -1
  293. package/dist/parsing/ids.js +48 -27
  294. package/dist/parsing/ids.js.map +1 -1
  295. package/dist/parsing/imports.d.ts +15 -0
  296. package/dist/parsing/imports.d.ts.map +1 -1
  297. package/dist/parsing/imports.js +46 -0
  298. package/dist/parsing/imports.js.map +1 -1
  299. package/dist/parsing/jsx-utils.d.ts +1 -1
  300. package/dist/parsing/jsx-utils.d.ts.map +1 -1
  301. package/dist/parsing/jsx-utils.js +10 -4
  302. package/dist/parsing/jsx-utils.js.map +1 -1
  303. package/dist/parsing/jsx.d.ts.map +1 -1
  304. package/dist/parsing/jsx.js +5 -13
  305. package/dist/parsing/jsx.js.map +1 -1
  306. package/dist/parsing/properties.d.ts.map +1 -1
  307. package/dist/parsing/properties.js +12 -2
  308. package/dist/parsing/properties.js.map +1 -1
  309. package/dist/parsing/scope.d.ts +10 -2
  310. package/dist/parsing/scope.d.ts.map +1 -1
  311. package/dist/parsing/scope.js +127 -37
  312. package/dist/parsing/scope.js.map +1 -1
  313. package/dist/parsing/template/index.d.ts +5 -0
  314. package/dist/parsing/template/index.d.ts.map +1 -0
  315. package/dist/parsing/template/index.js +7 -0
  316. package/dist/parsing/template/index.js.map +1 -0
  317. package/dist/parsing/template/to-value-template.d.ts.map +1 -1
  318. package/dist/parsing/template/to-value-template.js +15 -4
  319. package/dist/parsing/template/to-value-template.js.map +1 -1
  320. package/dist/parsing/theme.js +2 -2
  321. package/dist/parsing/theme.js.map +1 -1
  322. package/dist/parsing/type-parsing-registry.d.ts +5 -15
  323. package/dist/parsing/type-parsing-registry.d.ts.map +1 -1
  324. package/dist/parsing/type-parsing-registry.js +4 -24
  325. package/dist/parsing/type-parsing-registry.js.map +1 -1
  326. package/dist/parsing/types.d.ts +10 -0
  327. package/dist/parsing/types.d.ts.map +1 -0
  328. package/dist/parsing/types.js +2 -0
  329. package/dist/parsing/types.js.map +1 -0
  330. package/dist/parsing/util.d.ts +6 -1
  331. package/dist/parsing/util.d.ts.map +1 -1
  332. package/dist/parsing/util.js +59 -7
  333. package/dist/parsing/util.js.map +1 -1
  334. package/dist/plugin-options.d.ts +2 -2
  335. package/dist/plugin-options.d.ts.map +1 -1
  336. package/dist/refactor/javascript.d.ts.map +1 -1
  337. package/dist/refactor/javascript.js +7 -0
  338. package/dist/refactor/javascript.js.map +1 -1
  339. package/dist/rename-manager.d.ts.map +1 -1
  340. package/dist/rename-manager.js +19 -4
  341. package/dist/rename-manager.js.map +1 -1
  342. package/dist/routing.d.ts +2 -2
  343. package/dist/routing.d.ts.map +1 -1
  344. package/dist/routing.js +1 -2
  345. package/dist/routing.js.map +1 -1
  346. package/dist/sb-scope-manager.d.ts +3 -1
  347. package/dist/sb-scope-manager.d.ts.map +1 -1
  348. package/dist/sb-scope-manager.js +40 -13
  349. package/dist/sb-scope-manager.js.map +1 -1
  350. package/dist/socket-manager.d.ts +6 -5
  351. package/dist/socket-manager.d.ts.map +1 -1
  352. package/dist/socket-manager.js +38 -15
  353. package/dist/socket-manager.js.map +1 -1
  354. package/dist/source-tracker.d.ts +6 -14
  355. package/dist/source-tracker.d.ts.map +1 -1
  356. package/dist/source-tracker.js +69 -64
  357. package/dist/source-tracker.js.map +1 -1
  358. package/dist/sync-service/draft-helpers.d.ts +9 -0
  359. package/dist/sync-service/draft-helpers.d.ts.map +1 -1
  360. package/dist/sync-service/draft-helpers.js +65 -0
  361. package/dist/sync-service/draft-helpers.js.map +1 -1
  362. package/dist/sync-service/index.d.ts +11 -0
  363. package/dist/sync-service/index.d.ts.map +1 -1
  364. package/dist/sync-service/index.js +85 -14
  365. package/dist/sync-service/index.js.map +1 -1
  366. package/dist/sync-service/server-rpc/client.d.ts +5 -1
  367. package/dist/sync-service/server-rpc/client.d.ts.map +1 -1
  368. package/dist/sync-service/server-rpc/client.js +12 -25
  369. package/dist/sync-service/server-rpc/client.js.map +1 -1
  370. package/dist/sync-service/server-rpc/handlers.d.ts +2 -2
  371. package/dist/sync-service/server-rpc/handlers.d.ts.map +1 -1
  372. package/dist/sync-service/server-rpc/handlers.js.map +1 -1
  373. package/dist/sync-service/snapshot/take-snapshot.d.ts +0 -3
  374. package/dist/sync-service/snapshot/take-snapshot.d.ts.map +1 -1
  375. package/dist/sync-service/snapshot/take-snapshot.js +0 -5
  376. package/dist/sync-service/snapshot/take-snapshot.js.map +1 -1
  377. package/dist/util/logger.d.ts.map +1 -1
  378. package/dist/util/logger.js +9 -8
  379. package/dist/util/logger.js.map +1 -1
  380. package/dist/util/tracing.d.ts +1 -1
  381. package/dist/util/tracing.d.ts.map +1 -1
  382. package/dist/util/tracing.js +38 -1
  383. package/dist/util/tracing.js.map +1 -1
  384. package/dist/util.d.ts +2 -0
  385. package/dist/util.d.ts.map +1 -1
  386. package/dist/util.js +41 -0
  387. package/dist/util.js.map +1 -1
  388. package/package.json +16 -10
  389. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts +0 -2
  390. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts.map +0 -1
  391. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js +0 -6
  392. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  import EventEmitter from "node:events";
2
2
  import { type ErrorEventMap } from "../errors/error-handler.js";
3
+ import type { Tracer } from "@opentelemetry/api";
3
4
  export declare enum LockServiceStatus {
4
5
  /** The lock service is not currently active */
5
6
  IDLE = "IDLE",
@@ -29,16 +30,24 @@ export interface LockServiceConfig {
29
30
  lockType: LockType;
30
31
  lockTimeoutMs?: number;
31
32
  heartbeatIntervalMs?: number;
33
+ tracer: Tracer;
32
34
  }
33
35
  interface EventMap extends ErrorEventMap {
34
36
  /** Emitted when the lock service status changes */
35
- statusChange: [status: LockServiceStatus];
37
+ statusChange: [status: LockServiceStatus, lockInfo?: LockInfo];
36
38
  /** Emitted when the lock is acquired */
37
39
  lockAcquired: [lockId: string];
38
40
  /** Emitted when the lock is released */
39
41
  lockReleased: [];
40
42
  /** Emitted when the lock heartbeat is received */
41
43
  lockHeartbeat: [lockId: string];
44
+ /** Emitted when the lock is released by the server */
45
+ closedByServer: [
46
+ {
47
+ initiatedByEmail?: string;
48
+ switchingTo?: "local" | "cloud" | "none";
49
+ }
50
+ ];
42
51
  }
43
52
  export declare class LockService extends EventEmitter<EventMap> {
44
53
  private readonly authToken;
@@ -47,12 +56,16 @@ export declare class LockService extends EventEmitter<EventMap> {
47
56
  private readonly branchName;
48
57
  private readonly lockType;
49
58
  private readonly heartbeatIntervalMs;
50
- private rpcClient;
59
+ private syncCallback;
51
60
  private _status;
52
61
  private _lockId;
53
62
  private _heartbeatTimeout;
63
+ private _shutdownTimeout;
54
64
  private _connectedUserPeerIdsMap;
65
+ private _tracer;
66
+ private _rpcClient;
55
67
  constructor(config: LockServiceConfig);
68
+ setSyncCallback(callback: () => Promise<void>): void;
56
69
  get status(): LockServiceStatus;
57
70
  private set status(value);
58
71
  get isLocked(): boolean;
@@ -71,7 +84,15 @@ export declare class LockService extends EventEmitter<EventMap> {
71
84
  * Cleanup method to be called when the class is destroyed
72
85
  * This ensures the lock is released
73
86
  */
74
- shutdown(): Promise<void>;
87
+ shutdown({ serverInitiated, switchingTo, initiatedByEmail, }: {
88
+ serverInitiated?: boolean;
89
+ switchingTo?: "local" | "cloud" | "none";
90
+ initiatedByEmail?: string;
91
+ }): Promise<void>;
92
+ /**
93
+ * Shutdown the lock service and exit the dev server
94
+ */
95
+ shutdownAndExit(): Promise<void>;
75
96
  /**
76
97
  * Add a connected user to the lock service.
77
98
  */
@@ -86,6 +107,11 @@ export declare class LockService extends EventEmitter<EventMap> {
86
107
  * Stop the heartbeat
87
108
  */
88
109
  private stopHeartbeat;
110
+ /**
111
+ * Start the shutdown timer when no socket connection is detected
112
+ */
113
+ startShutdownTimer(): Promise<void>;
114
+ stopShutdownTimerIfNeeded(): Promise<void>;
89
115
  private closeRpcClient;
90
116
  private getRpcClient;
91
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lock-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,aAAa,CAAC;AAGvC,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,4BAA4B,CAAC;AAWpC,oBAAY,iBAAiB;IAC3B,+CAA+C;IAC/C,IAAI,SAAS;IACb,2CAA2C;IAC3C,SAAS,cAAc;IACvB,2CAA2C;IAC3C,MAAM,WAAW;IACjB,2CAA2C;IAC3C,SAAS,cAAc;IACvB,4DAA4D;IAC5D,sBAAsB,2BAA2B;IACjD,0BAA0B;IAC1B,YAAY,iBAAiB;IAC7B,2BAA2B;IAC3B,aAAa,kBAAkB;CAChC;AAED,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,kEAAkE;AAClE,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,UAAU,QAAS,SAAQ,aAAa;IACtC,mDAAmD;IACnD,YAAY,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAC1C,wCAAwC;IACxC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,wCAAwC;IACxC,YAAY,EAAE,EAAE,CAAC;IACjB,kDAAkD;IAClD,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,qBAAa,WAAY,SAAQ,YAAY,CAAC,QAAQ,CAAC;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,SAAS,CAA6B;IAE9C,OAAO,CAAC,OAAO,CAA6C;IAC5D,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,wBAAwB,CAAuC;gBAE3D,MAAM,EAAE,iBAAiB;IAiBrC,IAAI,MAAM,IAAI,iBAAiB,CAE9B;IAED,OAAO,KAAK,MAAM,QAKjB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IAED,IAAI,cAAc,IAAI,MAAM,EAAE,CAE7B;IAED;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAsClC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAiC/B,4BAA4B;IA6ClC;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ/B;;OAEG;IACH,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAU9D;;OAEG;IACH,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;YAcrD,qBAAqB;YAuBrB,aAAa;IAS3B;;OAEG;IACH,OAAO,CAAC,aAAa;YASP,cAAc;YAOd,YAAY;CAU3B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lock-service/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import EventEmitter from "node:events";
2
2
  // TODO(David): Move the socket grpc library to a shared dir
3
- import { ConflictError } from "@superblocksteam/shared";
3
+ import { addTracingToMethods, ConflictError, NotFoundError, } from "@superblocksteam/shared";
4
4
  import { applyErrorHandling, } from "../errors/error-handler.js";
5
- import { connectToISocketRPCServer, unwrapResponseDto, } from "../sync-service/server-rpc/client.js";
5
+ import { unwrapResponseDto, connectToISocketRPCServer, } from "../sync-service/server-rpc/client.js";
6
6
  import { getErrorMeta, getLogger } from "../util/logger.js";
7
7
  const LOCK_HEARTBEAT_INTERVAL_MS = 30 * 1000; // 30 seconds
8
+ const SHUTDOWN_TIMEOUT_MS = 5 * 60 * 1000; // 5 minutes
8
9
  export var LockServiceStatus;
9
10
  (function (LockServiceStatus) {
10
11
  /** The lock service is not currently active */
@@ -34,11 +35,14 @@ export class LockService extends EventEmitter {
34
35
  branchName;
35
36
  lockType;
36
37
  heartbeatIntervalMs;
37
- rpcClient;
38
+ syncCallback;
38
39
  _status = LockServiceStatus.IDLE;
39
40
  _lockId;
40
41
  _heartbeatTimeout;
42
+ _shutdownTimeout;
41
43
  _connectedUserPeerIdsMap = new Map();
44
+ _tracer;
45
+ _rpcClient;
42
46
  constructor(config) {
43
47
  super();
44
48
  this.authToken = config.authToken;
@@ -48,11 +52,23 @@ export class LockService extends EventEmitter {
48
52
  this.lockType = config.lockType;
49
53
  this.heartbeatIntervalMs =
50
54
  config.heartbeatIntervalMs || LOCK_HEARTBEAT_INTERVAL_MS;
51
- this.rpcClient = null;
55
+ this._rpcClient = null;
56
+ this._tracer = config.tracer;
52
57
  applyErrorHandling(this, {
53
58
  acquireLock: { operation: "acquiring lock" },
54
59
  releaseLock: { operation: "releasing lock" },
55
60
  });
61
+ const methods = [
62
+ "acquireLock",
63
+ "releaseLock",
64
+ "checkAndUpdateLockIfPossible",
65
+ "shutdown",
66
+ "shutdownAndExit",
67
+ ];
68
+ addTracingToMethods(this, methods, this._tracer);
69
+ }
70
+ setSyncCallback(callback) {
71
+ this.syncCallback = callback;
56
72
  }
57
73
  get status() {
58
74
  return this._status;
@@ -96,14 +112,14 @@ export class LockService extends EventEmitter {
96
112
  }
97
113
  catch (error) {
98
114
  if (error instanceof ConflictError) {
99
- logger.error(`[lock-service] Lock is already acquired by another user. Please try again later.`, getErrorMeta(error));
115
+ logger.error(`[lock-service] ${error.message}`);
100
116
  this.emit("statusChange", LockServiceStatus.FAILED_TO_ACQUIRE_LOCK);
101
117
  this.status = LockServiceStatus.FAILED_TO_ACQUIRE_LOCK;
102
- await this.shutdown();
103
- throw new Error(`Lock is already acquired: ${error}`);
118
+ await this.shutdown({ serverInitiated: false });
119
+ throw new Error(`${error}`);
104
120
  }
105
121
  else {
106
- throw new Error(`Error acquiring lock: ${error}`);
122
+ throw new Error(`${error}. Please try again later.`);
107
123
  }
108
124
  }
109
125
  }
@@ -158,14 +174,16 @@ export class LockService extends EventEmitter {
158
174
  }
159
175
  }
160
176
  catch (error) {
161
- if (error instanceof ConflictError) {
162
- logger.error("[lock-service] Lock has been overridden by another user", getErrorMeta(error));
177
+ if (error instanceof NotFoundError) {
178
+ logger.info(`[lock-service] Lock was removed, shutting down: ${error.message}`);
163
179
  this.emit("statusChange", LockServiceStatus.LOCK_INVALID);
164
180
  this.status = LockServiceStatus.LOCK_INVALID;
165
- await this.shutdown();
181
+ await this.shutdownAndExit();
182
+ }
183
+ else {
184
+ logger.error("[lock-service] error checking and updating lock", getErrorMeta(error));
185
+ throw error;
166
186
  }
167
- logger.error("[lock-service] error checking and updating lock", getErrorMeta(error));
168
- throw error;
169
187
  }
170
188
  }
171
189
  this.status = LockServiceStatus.IDLE;
@@ -176,12 +194,33 @@ export class LockService extends EventEmitter {
176
194
  * Cleanup method to be called when the class is destroyed
177
195
  * This ensures the lock is released
178
196
  */
179
- async shutdown() {
197
+ async shutdown({ serverInitiated, switchingTo, initiatedByEmail, }) {
198
+ const logger = getLogger();
199
+ if (serverInitiated) {
200
+ this.emit("closedByServer", { initiatedByEmail, switchingTo });
201
+ }
202
+ // Perform one last sync using the sync callback if it is set
203
+ if (this.syncCallback && this.isLocked) {
204
+ // If the lock is still valid, then we can perform one last sync
205
+ await this.syncCallback();
206
+ }
207
+ else {
208
+ logger.info("[lock-service] no sync callback because lock is not valid anymore");
209
+ }
180
210
  this.stopHeartbeat();
181
- if (this.isLocked) {
211
+ if (this.isLocked && !serverInitiated) {
212
+ // Server initiated shutdown means lock is already getting released
182
213
  await this.releaseLock();
183
214
  }
184
215
  await this.closeRpcClient();
216
+ logger.info("[lock-service] shutting down and exiting dev server");
217
+ }
218
+ /**
219
+ * Shutdown the lock service and exit the dev server
220
+ */
221
+ async shutdownAndExit() {
222
+ await this.shutdown({ serverInitiated: false });
223
+ process.exit(1);
185
224
  }
186
225
  /**
187
226
  * Add a connected user to the lock service.
@@ -219,12 +258,12 @@ export class LockService extends EventEmitter {
219
258
  }
220
259
  }
221
260
  catch (error) {
222
- logger.error("[lock-service] error sending heartbeat", getErrorMeta(error));
223
- this.emit("statusChange", LockServiceStatus.FAILED_TO_ACQUIRE_LOCK);
224
- this.status = LockServiceStatus.FAILED_TO_ACQUIRE_LOCK;
261
+ logger.error("[lock-service] Error sending heartbeat, shutting down", getErrorMeta(error));
262
+ this.emit("statusChange", LockServiceStatus.LOCK_INVALID);
263
+ this.status = LockServiceStatus.LOCK_INVALID;
225
264
  clearTimeout(this._heartbeatTimeout);
226
265
  this._heartbeatTimeout = undefined;
227
- await this.shutdown();
266
+ await this.shutdownAndExit();
228
267
  }
229
268
  }
230
269
  async sendHeartbeat() {
@@ -247,21 +286,62 @@ export class LockService extends EventEmitter {
247
286
  logger.info("[lock-service] heartbeat stopped");
248
287
  }
249
288
  }
289
+ /**
290
+ * Start the shutdown timer when no socket connection is detected
291
+ */
292
+ async startShutdownTimer() {
293
+ this._shutdownTimeout = setTimeout(() => {
294
+ this.shutdownAndExit();
295
+ }, SHUTDOWN_TIMEOUT_MS);
296
+ }
297
+ async stopShutdownTimerIfNeeded() {
298
+ const logger = getLogger();
299
+ if (this._shutdownTimeout) {
300
+ clearTimeout(this._shutdownTimeout);
301
+ this._shutdownTimeout = undefined;
302
+ logger.info("[lock-service] activity detected, shutdown timer stopped");
303
+ }
304
+ }
250
305
  async closeRpcClient() {
251
- if (this.rpcClient) {
252
- await this.rpcClient.close();
253
- this.rpcClient = null;
306
+ if (this._rpcClient) {
307
+ await this._rpcClient.close();
308
+ this._rpcClient = null;
254
309
  }
255
310
  }
256
311
  async getRpcClient() {
257
312
  // TODO(David): Move this to a shared socket with the sync service
258
- if (!this.rpcClient) {
259
- this.rpcClient = await connectToISocketRPCServer({
260
- superblocksBaseUrl: this.superblocksBaseUrl,
261
- token: this.authToken,
262
- });
313
+ if (!this._rpcClient) {
314
+ let connectionAttempts = 0;
315
+ while (connectionAttempts < 3) {
316
+ try {
317
+ // This can fail if the initial WS connection fails due to a network issue, so we retry up to 3 times
318
+ this._rpcClient = await connectToISocketRPCServer({
319
+ superblocksBaseUrl: this.superblocksBaseUrl,
320
+ token: this.authToken,
321
+ tracer: this._tracer,
322
+ onClose: () => {
323
+ const logger = getLogger();
324
+ logger.info("[lock-service] socket closed");
325
+ // Allows re-connection next time we need to get a new rpc client
326
+ this._rpcClient = null;
327
+ },
328
+ });
329
+ }
330
+ catch (error) {
331
+ connectionAttempts++;
332
+ console.error(`Failed on attempt ${connectionAttempts} to get connection to lock:`, error.message);
333
+ }
334
+ if (this._rpcClient) {
335
+ break;
336
+ }
337
+ // Wait 5 seconds before retrying
338
+ await new Promise((resolve) => setTimeout(resolve, 5000));
339
+ }
340
+ }
341
+ if (!this._rpcClient) {
342
+ throw new Error("Failed to connect to lock socket after 3 attempts");
263
343
  }
264
- return this.rpcClient;
344
+ return this._rpcClient;
265
345
  }
266
346
  }
267
347
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lock-service/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lock-service/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Parser } from "../types.js";
2
+ import type { CallExpression } from "@babel/types";
3
+ export declare const parser: Parser<string, CallExpression>;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsing/computed/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAGjD,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { toCodeComputed } from "./to-code-computed.js";
2
+ import { toValueComputed } from "./to-value-computed.js";
3
+ export const parser = {
4
+ toCode: (value, info) => toCodeComputed(value, info),
5
+ toValue: (code) => toValueComputed(code),
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsing/computed/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,MAAM,CAAC,MAAM,MAAM,GAAmC;IACpD,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC;IACpD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;CACzC,CAAC"}
@@ -1,2 +1,3 @@
1
- export declare function toCodeComputed(value: string): string;
1
+ import type { PropertyInfo } from "@superblocksteam/library-shared/types";
2
+ export declare function toCodeComputed(value: string, info?: PropertyInfo): string;
2
3
  //# sourceMappingURL=to-code-computed.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"to-code-computed.d.ts","sourceRoot":"","sources":["../../../src/parsing/computed/to-code-computed.ts"],"names":[],"mappings":"AA6BA,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAkBpD"}
1
+ {"version":3,"file":"to-code-computed.d.ts","sourceRoot":"","sources":["../../../src/parsing/computed/to-code-computed.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAqC1E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,MAAM,CA8BzE"}
@@ -1,4 +1,5 @@
1
- import { functionBodyContainsThisReference, parseExpression } from "../util.js";
1
+ import { isComputedPropertyInfo } from "@superblocksteam/library-shared";
2
+ import { getFunctionBodyThisExpressionData, parseExpression } from "../util.js";
2
3
  function isValidJSXExpression(value) {
3
4
  try {
4
5
  return parseExpression(`<div test={${value}} />`) !== null;
@@ -8,11 +9,13 @@ function isValidJSXExpression(value) {
8
9
  }
9
10
  }
10
11
  const transformers = {
11
- oneLineArrow: (value) => value.startsWith("{") ? `() => (${value})` : `() => ${value}`,
12
- multiLineArrow: (value) => `() => {
12
+ oneLineArrow: (value, argsString) => value.startsWith("{")
13
+ ? `(${argsString}) => (${value})`
14
+ : `(${argsString}) => ${value}`,
15
+ multiLineArrow: (value, argsString) => `(${argsString}) => {
13
16
  ${value}
14
17
  }`,
15
- traditional: (value) => `function (this: any) {
18
+ traditional: (value, argsString) => `function (this: any${argsString ? `, ${argsString}` : ""}) {
16
19
  ${value}
17
20
  }`,
18
21
  computed: (value) => `sbComputed(${value})`,
@@ -20,20 +23,28 @@ const transformers = {
20
23
  function findFirstValidExpression(testCases) {
21
24
  return testCases.find(isValidJSXExpression);
22
25
  }
23
- export function toCodeComputed(value) {
26
+ export function toCodeComputed(value, info) {
27
+ let argsString = "";
28
+ if (isComputedPropertyInfo(info)) {
29
+ argsString = info.args ? `{ ${info.args.join(", ")} }` : "";
30
+ }
24
31
  // We should short circuit behavior if we contain a `this` reference in the function body
25
- if (functionBodyContainsThisReference(value)) {
26
- return transformers.computed(transformers.traditional(value));
32
+ const { hasThisReference, hasReturnStatement } = getFunctionBodyThisExpressionData(value);
33
+ if (hasThisReference) {
34
+ if (!hasReturnStatement) {
35
+ return transformers.computed(transformers.traditional(`return ${value}`, argsString));
36
+ }
37
+ return transformers.computed(transformers.traditional(value, argsString));
27
38
  }
28
39
  const computedTestCases = [
29
- transformers.oneLineArrow(value),
30
- transformers.multiLineArrow(value),
31
- transformers.traditional(value),
40
+ transformers.oneLineArrow(value, argsString),
41
+ transformers.multiLineArrow(value, argsString),
42
+ transformers.traditional(value, argsString),
32
43
  ];
33
44
  const validComputedExpression = findFirstValidExpression(computedTestCases);
34
45
  if (validComputedExpression) {
35
46
  return transformers.computed(validComputedExpression);
36
47
  }
37
- return transformers.computed(transformers.multiLineArrow(value));
48
+ return transformers.computed(transformers.multiLineArrow(value, argsString));
38
49
  }
39
50
  //# sourceMappingURL=to-code-computed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"to-code-computed.js","sourceRoot":"","sources":["../../../src/parsing/computed/to-code-computed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhF,SAAS,oBAAoB,CAAC,KAAa;IACzC,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,cAAc,KAAK,MAAM,CAAC,KAAK,IAAI,CAAC;IAC7D,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAG;IACnB,YAAY,EAAE,CAAC,KAAa,EAAU,EAAE,CACtC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE;IAE/D,cAAc,EAAE,CAAC,KAAa,EAAU,EAAE,CAAC;MACvC,KAAK;IACP;IAEF,WAAW,EAAE,CAAC,KAAa,EAAU,EAAE,CAAC;MACpC,KAAK;IACP;IAEF,QAAQ,EAAE,CAAC,KAAa,EAAU,EAAE,CAAC,cAAc,KAAK,GAAG;CACnD,CAAC;AAEX,SAAS,wBAAwB,CAAC,SAAmB;IACnD,OAAO,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,yFAAyF;IACzF,IAAI,iCAAiC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7C,OAAO,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,iBAAiB,GAAG;QACxB,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC;QAChC,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC;QAClC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC;KAChC,CAAC;IAEF,MAAM,uBAAuB,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;IAC5E,IAAI,uBAAuB,EAAE,CAAC;QAC5B,OAAO,YAAY,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"to-code-computed.js","sourceRoot":"","sources":["../../../src/parsing/computed/to-code-computed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,iCAAiC,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGhF,SAAS,oBAAoB,CAAC,KAAa;IACzC,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,cAAc,KAAK,MAAM,CAAC,KAAK,IAAI,CAAC;IAC7D,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,YAAY,GAAG;IACnB,YAAY,EAAE,CAAC,KAAa,EAAE,UAAkB,EAAU,EAAE,CAC1D,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;QACnB,CAAC,CAAC,IAAI,UAAU,SAAS,KAAK,GAAG;QACjC,CAAC,CAAC,IAAI,UAAU,QAAQ,KAAK,EAAE;IAEnC,cAAc,EAAE,CACd,KAAa,EACb,UAAkB,EACV,EAAE,CAAC,IAAI,UAAU;MACvB,KAAK;IACP;IAEF,WAAW,EAAE,CACX,KAAa,EACb,UAAkB,EACV,EAAE,CAAC,sBAAsB,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;MAClE,KAAK;IACP;IAEF,QAAQ,EAAE,CAAC,KAAa,EAAU,EAAE,CAAC,cAAc,KAAK,GAAG;CACnD,CAAC;AAEX,SAAS,wBAAwB,CAAC,SAAmB;IACnD,OAAO,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,IAAmB;IAC/D,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,CAAC;IAED,yFAAyF;IACzF,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,GAC5C,iCAAiC,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,gBAAgB,EAAE,CAAC;QACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,OAAO,YAAY,CAAC,QAAQ,CAC1B,YAAY,CAAC,WAAW,CAAC,UAAU,KAAK,EAAE,EAAE,UAAU,CAAC,CACxD,CAAC;QACJ,CAAC;QACD,OAAO,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,iBAAiB,GAAG;QACxB,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC;QAC5C,YAAY,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC;QAC9C,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC;KAC5C,CAAC;IAEF,MAAM,uBAAuB,GAAG,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;IAC5E,IAAI,uBAAuB,EAAE,CAAC;QAC5B,OAAO,YAAY,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Parser } from "../types.js";
2
+ import type { CallExpression } from "@babel/types";
3
+ import type { Dim } from "@superblocksteam/library-shared";
4
+ export declare const parser: Parser<Dim, CallExpression>;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsing/dim/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AAE3D,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,cAAc,CAG9C,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { toCodeDimension } from "./to-code-dimensions.js";
2
+ import { toValueDimension } from "./to-value-dimensions.js";
3
+ export const parser = {
4
+ toCode: (value) => toCodeDimension(value),
5
+ toValue: (source) => toValueDimension(source.node),
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsing/dim/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAK5D,MAAM,CAAC,MAAM,MAAM,GAAgC;IACjD,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;IACzC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC;CACnD,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { toCodeEntity as toCode } from "./to-code-entity.js";
2
2
  import { toValueEntity as toValue } from "./to-value-entity.js";
3
- declare const entityParser: {
4
- toValue: typeof toValue;
3
+ export declare const parser: {
5
4
  toCode: typeof toCode;
5
+ toValue: typeof toValue;
6
6
  };
7
- export { entityParser };
8
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsing/entity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEhE,QAAA,MAAM,YAAY;;;CAGjB,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsing/entity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEhE,eAAO,MAAM,MAAM;;;CAGlB,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { toCodeEntity as toCode } from "./to-code-entity.js";
2
2
  import { toValueEntity as toValue } from "./to-value-entity.js";
3
- const entityParser = {
4
- toValue,
3
+ export const parser = {
5
4
  toCode,
5
+ toValue,
6
6
  };
7
- export { entityParser };
8
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsing/entity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEhE,MAAM,YAAY,GAAG;IACnB,OAAO;IACP,MAAM;CACP,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsing/entity/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEhE,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM;IACN,OAAO;CACR,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Parser } from "../types.js";
2
+ import type { CallExpression } from "@babel/types";
3
+ import type { ValidStepDef } from "@superblocksteam/shared/dist/types/index.js";
4
+ export declare const parser: Parser<ValidStepDef[], CallExpression>;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsing/events/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6CAA6C,CAAC;AAEhF,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,EAAE,cAAc,CAGzD,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { toCodeEventFlow } from "./to-code-events.js";
2
+ import { toValueEventFlow } from "./to-value-events.js";
3
+ export const parser = {
4
+ toCode: (value) => toCodeEventFlow(value),
5
+ toValue: (source) => toValueEventFlow(source),
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsing/events/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAKxD,MAAM,CAAC,MAAM,MAAM,GAA2C;IAC5D,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;IACzC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC;CAC9C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"to-code-events.d.ts","sourceRoot":"","sources":["../../../src/parsing/events/to-code-events.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAEvD,wBAAgB,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,CAiF5D"}
1
+ {"version":3,"file":"to-code-events.d.ts","sourceRoot":"","sources":["../../../src/parsing/events/to-code-events.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAwBvD,wBAAgB,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,CAoG5D"}