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

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 (562) hide show
  1. package/LICENSE.txt +87 -0
  2. package/dist/ai-service/artifacts/bolt.d.ts +8 -0
  3. package/dist/ai-service/artifacts/bolt.d.ts.map +1 -0
  4. package/dist/ai-service/artifacts/bolt.js +34 -0
  5. package/dist/ai-service/artifacts/bolt.js.map +1 -0
  6. package/dist/ai-service/const.d.ts +8 -0
  7. package/dist/ai-service/const.d.ts.map +1 -0
  8. package/dist/ai-service/const.js +9 -0
  9. package/dist/ai-service/const.js.map +1 -0
  10. package/dist/ai-service/eval/template-renderer.d.ts +13 -0
  11. package/dist/ai-service/eval/template-renderer.d.ts.map +1 -0
  12. package/dist/ai-service/eval/template-renderer.js +66 -0
  13. package/dist/ai-service/eval/template-renderer.js.map +1 -0
  14. package/dist/ai-service/index.d.ts +18 -0
  15. package/dist/ai-service/index.d.ts.map +1 -0
  16. package/dist/ai-service/index.js +140 -0
  17. package/dist/ai-service/index.js.map +1 -0
  18. package/dist/ai-service/integrations/const.d.ts +41 -0
  19. package/dist/ai-service/integrations/const.d.ts.map +1 -0
  20. package/dist/ai-service/integrations/const.js +76 -0
  21. package/dist/ai-service/integrations/const.js.map +1 -0
  22. package/dist/ai-service/integrations/from-prompt-context.d.ts +4 -0
  23. package/dist/ai-service/integrations/from-prompt-context.d.ts.map +1 -0
  24. package/dist/ai-service/integrations/from-prompt-context.js +56 -0
  25. package/dist/ai-service/integrations/from-prompt-context.js.map +1 -0
  26. package/dist/ai-service/integrations/to-sdk-prompt.d.ts +3 -0
  27. package/dist/ai-service/integrations/to-sdk-prompt.d.ts.map +1 -0
  28. package/dist/ai-service/integrations/to-sdk-prompt.js +47 -0
  29. package/dist/ai-service/integrations/to-sdk-prompt.js.map +1 -0
  30. package/dist/ai-service/integrations/types.d.ts +31 -0
  31. package/dist/ai-service/integrations/types.d.ts.map +1 -0
  32. package/dist/ai-service/integrations/types.js +2 -0
  33. package/dist/ai-service/integrations/types.js.map +1 -0
  34. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.d.ts +2 -0
  35. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.d.ts.map +1 -0
  36. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.js +386 -0
  37. package/dist/ai-service/prompts/draft-subprompts/superblocks-api-draft.js.map +1 -0
  38. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.d.ts +2 -0
  39. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.d.ts.map +1 -0
  40. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.js +219 -0
  41. package/dist/ai-service/prompts/draft-subprompts/superblocks-layouts-with-grid-examples.js.map +1 -0
  42. package/dist/ai-service/prompts/generated/index.d.ts +4 -0
  43. package/dist/ai-service/prompts/generated/index.d.ts.map +1 -0
  44. package/dist/ai-service/prompts/generated/index.js +6 -0
  45. package/dist/ai-service/prompts/generated/index.js.map +1 -0
  46. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts +2 -0
  47. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.d.ts.map +1 -0
  48. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js +6 -0
  49. package/dist/ai-service/prompts/generated/library-components/SbButtonPropsDocs.js.map +1 -0
  50. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts +2 -0
  51. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.d.ts.map +1 -0
  52. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js +6 -0
  53. package/dist/ai-service/prompts/generated/library-components/SbCheckboxPropsDocs.js.map +1 -0
  54. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts +2 -0
  55. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.d.ts.map +1 -0
  56. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js +6 -0
  57. package/dist/ai-service/prompts/generated/library-components/SbColumnPropsDocs.js.map +1 -0
  58. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts +2 -0
  59. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.d.ts.map +1 -0
  60. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js +6 -0
  61. package/dist/ai-service/prompts/generated/library-components/SbContainerPropsDocs.js.map +1 -0
  62. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts +2 -0
  63. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.d.ts.map +1 -0
  64. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js +6 -0
  65. package/dist/ai-service/prompts/generated/library-components/SbDatePickerPropsDocs.js.map +1 -0
  66. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts +2 -0
  67. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.d.ts.map +1 -0
  68. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js +6 -0
  69. package/dist/ai-service/prompts/generated/library-components/SbDropdownPropsDocs.js.map +1 -0
  70. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts +2 -0
  71. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.d.ts.map +1 -0
  72. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js +6 -0
  73. package/dist/ai-service/prompts/generated/library-components/SbIconPropsDocs.js.map +1 -0
  74. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts +2 -0
  75. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.d.ts.map +1 -0
  76. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js +6 -0
  77. package/dist/ai-service/prompts/generated/library-components/SbImagePropsDocs.js.map +1 -0
  78. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts +2 -0
  79. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.d.ts.map +1 -0
  80. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js +6 -0
  81. package/dist/ai-service/prompts/generated/library-components/SbInputPropsDocs.js.map +1 -0
  82. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts +2 -0
  83. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.d.ts.map +1 -0
  84. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js +6 -0
  85. package/dist/ai-service/prompts/generated/library-components/SbKeyValuePropsDocs.js.map +1 -0
  86. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts +2 -0
  87. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.d.ts.map +1 -0
  88. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js +6 -0
  89. package/dist/ai-service/prompts/generated/library-components/SbModalPropsDocs.js.map +1 -0
  90. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts +2 -0
  91. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.d.ts.map +1 -0
  92. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js +6 -0
  93. package/dist/ai-service/prompts/generated/library-components/SbPagePropsDocs.js.map +1 -0
  94. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts +2 -0
  95. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.d.ts.map +1 -0
  96. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js +6 -0
  97. package/dist/ai-service/prompts/generated/library-components/SbSectionPropsDocs.js.map +1 -0
  98. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts +2 -0
  99. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.d.ts.map +1 -0
  100. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js +6 -0
  101. package/dist/ai-service/prompts/generated/library-components/SbSlideoutPropsDocs.js.map +1 -0
  102. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts +2 -0
  103. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.d.ts.map +1 -0
  104. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js +6 -0
  105. package/dist/ai-service/prompts/generated/library-components/SbSwitchPropsDocs.js.map +1 -0
  106. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts +2 -0
  107. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.d.ts.map +1 -0
  108. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js +6 -0
  109. package/dist/ai-service/prompts/generated/library-components/SbTablePropsDocs.js.map +1 -0
  110. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts +2 -0
  111. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.d.ts.map +1 -0
  112. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js +6 -0
  113. package/dist/ai-service/prompts/generated/library-components/SbTextPropsDocs.js.map +1 -0
  114. package/dist/ai-service/prompts/generated/library-components/index.d.ts +18 -0
  115. package/dist/ai-service/prompts/generated/library-components/index.d.ts.map +1 -0
  116. package/dist/ai-service/prompts/generated/library-components/index.js +20 -0
  117. package/dist/ai-service/prompts/generated/library-components/index.js.map +1 -0
  118. package/dist/ai-service/prompts/generated/library-typedefs/Dim.d.ts +2 -0
  119. package/dist/ai-service/prompts/generated/library-typedefs/Dim.d.ts.map +1 -0
  120. package/dist/ai-service/prompts/generated/library-typedefs/Dim.js +6 -0
  121. package/dist/ai-service/prompts/generated/library-typedefs/Dim.js.map +1 -0
  122. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts +2 -0
  123. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.d.ts.map +1 -0
  124. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js +6 -0
  125. package/dist/ai-service/prompts/generated/library-typedefs/SbEventFlow.js.map +1 -0
  126. package/dist/ai-service/prompts/generated/library-typedefs/index.d.ts +3 -0
  127. package/dist/ai-service/prompts/generated/library-typedefs/index.d.ts.map +1 -0
  128. package/dist/ai-service/prompts/generated/library-typedefs/index.js +5 -0
  129. package/dist/ai-service/prompts/generated/library-typedefs/index.js.map +1 -0
  130. package/dist/ai-service/prompts/generated/subprompts/index.d.ts +12 -0
  131. package/dist/ai-service/prompts/generated/subprompts/index.d.ts.map +1 -0
  132. package/dist/ai-service/prompts/generated/subprompts/index.js +14 -0
  133. package/dist/ai-service/prompts/generated/subprompts/index.js.map +1 -0
  134. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts +2 -0
  135. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.d.ts.map +1 -0
  136. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js +6 -0
  137. package/dist/ai-service/prompts/generated/subprompts/superblocks-api.js.map +1 -0
  138. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts +2 -0
  139. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.d.ts.map +1 -0
  140. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js +6 -0
  141. package/dist/ai-service/prompts/generated/subprompts/superblocks-components-rules.js.map +1 -0
  142. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts +2 -0
  143. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.d.ts.map +1 -0
  144. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js +6 -0
  145. package/dist/ai-service/prompts/generated/subprompts/superblocks-custom-components.js.map +1 -0
  146. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts +2 -0
  147. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.d.ts.map +1 -0
  148. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js +6 -0
  149. package/dist/ai-service/prompts/generated/subprompts/superblocks-event-flow.js.map +1 -0
  150. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts +2 -0
  151. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.d.ts.map +1 -0
  152. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js +6 -0
  153. package/dist/ai-service/prompts/generated/subprompts/superblocks-layouts.js.map +1 -0
  154. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts +2 -0
  155. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.d.ts.map +1 -0
  156. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js +6 -0
  157. package/dist/ai-service/prompts/generated/subprompts/superblocks-page.js.map +1 -0
  158. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts +2 -0
  159. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.d.ts.map +1 -0
  160. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js +6 -0
  161. package/dist/ai-service/prompts/generated/subprompts/superblocks-routes.js.map +1 -0
  162. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts +2 -0
  163. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.d.ts.map +1 -0
  164. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js +6 -0
  165. package/dist/ai-service/prompts/generated/subprompts/superblocks-state.js.map +1 -0
  166. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts +2 -0
  167. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.d.ts.map +1 -0
  168. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js +6 -0
  169. package/dist/ai-service/prompts/generated/subprompts/superblocks-theming.js.map +1 -0
  170. package/dist/ai-service/prompts/generated/subprompts/superblocks-timers.d.ts +2 -0
  171. package/dist/ai-service/prompts/generated/subprompts/superblocks-timers.d.ts.map +1 -0
  172. package/dist/ai-service/prompts/generated/subprompts/superblocks-timers.js +6 -0
  173. package/dist/ai-service/prompts/generated/subprompts/superblocks-timers.js.map +1 -0
  174. package/dist/ai-service/prompts/generated/subprompts/system.d.ts +2 -0
  175. package/dist/ai-service/prompts/generated/subprompts/system.d.ts.map +1 -0
  176. package/dist/ai-service/prompts/generated/subprompts/system.js +6 -0
  177. package/dist/ai-service/prompts/generated/subprompts/system.js.map +1 -0
  178. package/dist/ai-service/prompts/markdown-loader.d.ts +9 -0
  179. package/dist/ai-service/prompts/markdown-loader.d.ts.map +1 -0
  180. package/dist/ai-service/prompts/markdown-loader.js +55 -0
  181. package/dist/ai-service/prompts/markdown-loader.js.map +1 -0
  182. package/dist/ai-service/prompts/system.d.ts +2 -0
  183. package/dist/ai-service/prompts/system.d.ts.map +1 -0
  184. package/dist/ai-service/prompts/system.js +145 -0
  185. package/dist/ai-service/prompts/system.js.map +1 -0
  186. package/dist/ai-service/result-buffer/bolt.d.ts +15 -0
  187. package/dist/ai-service/result-buffer/bolt.d.ts.map +1 -0
  188. package/dist/ai-service/result-buffer/bolt.js +73 -0
  189. package/dist/ai-service/result-buffer/bolt.js.map +1 -0
  190. package/dist/ai-service/result-buffer/shared.d.ts +13 -0
  191. package/dist/ai-service/result-buffer/shared.d.ts.map +1 -0
  192. package/dist/ai-service/result-buffer/shared.js +7 -0
  193. package/dist/ai-service/result-buffer/shared.js.map +1 -0
  194. package/dist/ai-service/state-machine/clark-fsm.d.ts +158 -0
  195. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -0
  196. package/dist/ai-service/state-machine/clark-fsm.js +62 -0
  197. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -0
  198. package/dist/ai-service/state-machine/fsm.d.ts +42 -0
  199. package/dist/ai-service/state-machine/fsm.d.ts.map +1 -0
  200. package/dist/ai-service/state-machine/fsm.js +55 -0
  201. package/dist/ai-service/state-machine/fsm.js.map +1 -0
  202. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts +3 -0
  203. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -0
  204. package/dist/ai-service/state-machine/handlers/agent-planning.js +209 -0
  205. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -0
  206. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts +3 -0
  207. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -0
  208. package/dist/ai-service/state-machine/handlers/awaiting-user.js +21 -0
  209. package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -0
  210. package/dist/ai-service/state-machine/handlers/idle.d.ts +3 -0
  211. package/dist/ai-service/state-machine/handlers/idle.d.ts.map +1 -0
  212. package/dist/ai-service/state-machine/handlers/idle.js +22 -0
  213. package/dist/ai-service/state-machine/handlers/idle.js.map +1 -0
  214. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts +3 -0
  215. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -0
  216. package/dist/ai-service/state-machine/handlers/llm-generating.js +123 -0
  217. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -0
  218. package/dist/ai-service/state-machine/handlers/play-dead.d.ts +3 -0
  219. package/dist/ai-service/state-machine/handlers/play-dead.d.ts.map +1 -0
  220. package/dist/ai-service/state-machine/handlers/play-dead.js +11 -0
  221. package/dist/ai-service/state-machine/handlers/play-dead.js.map +1 -0
  222. package/dist/ai-service/state-machine/handlers/post-processing.d.ts +3 -0
  223. package/dist/ai-service/state-machine/handlers/post-processing.d.ts.map +1 -0
  224. package/dist/ai-service/state-machine/handlers/post-processing.js +50 -0
  225. package/dist/ai-service/state-machine/handlers/post-processing.js.map +1 -0
  226. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts +3 -0
  227. package/dist/ai-service/state-machine/handlers/runtime-reviewing.d.ts.map +1 -0
  228. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js +37 -0
  229. package/dist/ai-service/state-machine/handlers/runtime-reviewing.js.map +1 -0
  230. package/dist/ai-service/state-machine/helpers/metadata.d.ts +6 -0
  231. package/dist/ai-service/state-machine/helpers/metadata.d.ts.map +1 -0
  232. package/dist/ai-service/state-machine/helpers/metadata.js +11 -0
  233. package/dist/ai-service/state-machine/helpers/metadata.js.map +1 -0
  234. package/dist/ai-service/state-machine/helpers/peer.d.ts +5 -0
  235. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -0
  236. package/dist/ai-service/state-machine/helpers/peer.js +7 -0
  237. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -0
  238. package/dist/ai-service/state-machine/helpers/transition.d.ts +13 -0
  239. package/dist/ai-service/state-machine/helpers/transition.d.ts.map +1 -0
  240. package/dist/ai-service/state-machine/helpers/transition.js +6 -0
  241. package/dist/ai-service/state-machine/helpers/transition.js.map +1 -0
  242. package/dist/ai-service/state-machine/mocks.d.ts +7 -0
  243. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -0
  244. package/dist/ai-service/state-machine/mocks.js +63 -0
  245. package/dist/ai-service/state-machine/mocks.js.map +1 -0
  246. package/dist/ai-service/state-machine/test-util.d.ts +5 -0
  247. package/dist/ai-service/state-machine/test-util.d.ts.map +1 -0
  248. package/dist/ai-service/state-machine/test-util.js +29 -0
  249. package/dist/ai-service/state-machine/test-util.js.map +1 -0
  250. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.d.ts +21 -0
  251. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.d.ts.map +1 -0
  252. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js +47 -0
  253. package/dist/ai-service/transform/add-metadata-to-api-yaml/transformer.js.map +1 -0
  254. package/dist/ai-service/transform/api-builder/shared.d.ts +11 -0
  255. package/dist/ai-service/transform/api-builder/shared.d.ts.map +1 -0
  256. package/dist/ai-service/transform/api-builder/shared.js +53 -0
  257. package/dist/ai-service/transform/api-builder/shared.js.map +1 -0
  258. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts +27 -0
  259. package/dist/ai-service/transform/api-builder/to-sdk-transformer.d.ts.map +1 -0
  260. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +66 -0
  261. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -0
  262. package/dist/ai-service/transform/api-builder/to-yaml-transformer.d.ts +23 -0
  263. package/dist/ai-service/transform/api-builder/to-yaml-transformer.d.ts.map +1 -0
  264. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js +59 -0
  265. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js.map +1 -0
  266. package/dist/ai-service/transform/remove-api-builder-imports/transformer.d.ts +19 -0
  267. package/dist/ai-service/transform/remove-api-builder-imports/transformer.d.ts.map +1 -0
  268. package/dist/ai-service/transform/remove-api-builder-imports/transformer.js +45 -0
  269. package/dist/ai-service/transform/remove-api-builder-imports/transformer.js.map +1 -0
  270. package/dist/ai-service/transform/shared.d.ts +20 -0
  271. package/dist/ai-service/transform/shared.d.ts.map +1 -0
  272. package/dist/ai-service/transform/shared.js +132 -0
  273. package/dist/ai-service/transform/shared.js.map +1 -0
  274. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.d.ts +17 -0
  275. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.d.ts.map +1 -0
  276. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.js +33 -0
  277. package/dist/ai-service/transform/workaround-missing-sbapi/transformer.js.map +1 -0
  278. package/dist/ai-service/types.d.ts +65 -0
  279. package/dist/ai-service/types.d.ts.map +1 -0
  280. package/dist/ai-service/types.js +2 -0
  281. package/dist/ai-service/types.js.map +1 -0
  282. package/dist/binding-extraction/extract-control-block-identifiers.d.ts +4 -0
  283. package/dist/binding-extraction/extract-control-block-identifiers.d.ts.map +1 -0
  284. package/dist/binding-extraction/extract-control-block-identifiers.js +86 -0
  285. package/dist/binding-extraction/extract-control-block-identifiers.js.map +1 -0
  286. package/dist/binding-extraction/extract-embedded-identifiers.d.ts +16 -0
  287. package/dist/binding-extraction/extract-embedded-identifiers.d.ts.map +1 -0
  288. package/dist/binding-extraction/extract-embedded-identifiers.js +100 -0
  289. package/dist/binding-extraction/extract-embedded-identifiers.js.map +1 -0
  290. package/dist/binding-extraction/extract-identifiers.d.ts +8 -0
  291. package/dist/binding-extraction/extract-identifiers.d.ts.map +1 -0
  292. package/dist/binding-extraction/extract-identifiers.js +150 -0
  293. package/dist/binding-extraction/extract-identifiers.js.map +1 -0
  294. package/dist/binding-extraction/extract-js-identifiers.d.ts +19 -0
  295. package/dist/binding-extraction/extract-js-identifiers.d.ts.map +1 -0
  296. package/dist/binding-extraction/extract-js-identifiers.js +161 -0
  297. package/dist/binding-extraction/extract-js-identifiers.js.map +1 -0
  298. package/dist/binding-extraction/extract-py-identifiers.d.ts +4 -0
  299. package/dist/binding-extraction/extract-py-identifiers.d.ts.map +1 -0
  300. package/dist/binding-extraction/extract-py-identifiers.js +161 -0
  301. package/dist/binding-extraction/extract-py-identifiers.js.map +1 -0
  302. package/dist/binding-extraction/shared.d.ts +225 -0
  303. package/dist/binding-extraction/shared.d.ts.map +1 -0
  304. package/dist/binding-extraction/shared.js +43 -0
  305. package/dist/binding-extraction/shared.js.map +1 -0
  306. package/dist/binding-extraction/template-strings.d.ts +9 -0
  307. package/dist/binding-extraction/template-strings.d.ts.map +1 -0
  308. package/dist/binding-extraction/template-strings.js +45 -0
  309. package/dist/binding-extraction/template-strings.js.map +1 -0
  310. package/dist/codegen.d.ts +26 -0
  311. package/dist/codegen.d.ts.map +1 -0
  312. package/dist/codegen.js +217 -0
  313. package/dist/codegen.js.map +1 -0
  314. package/dist/components-manager.d.ts +38 -0
  315. package/dist/components-manager.d.ts.map +1 -0
  316. package/dist/components-manager.js +177 -0
  317. package/dist/components-manager.js.map +1 -0
  318. package/dist/custom-components.d.ts +6 -0
  319. package/dist/custom-components.d.ts.map +1 -0
  320. package/dist/custom-components.js +51 -0
  321. package/dist/custom-components.js.map +1 -0
  322. package/dist/draft-interface.d.ts +11 -0
  323. package/dist/draft-interface.d.ts.map +1 -0
  324. package/dist/draft-interface.js +2 -0
  325. package/dist/draft-interface.js.map +1 -0
  326. package/dist/errors/error-handler.d.ts +35 -0
  327. package/dist/errors/error-handler.d.ts.map +1 -0
  328. package/dist/errors/error-handler.js +65 -0
  329. package/dist/errors/error-handler.js.map +1 -0
  330. package/dist/errors/make-server-error.d.ts +5 -0
  331. package/dist/errors/make-server-error.d.ts.map +1 -0
  332. package/dist/errors/make-server-error.js +21 -0
  333. package/dist/errors/make-server-error.js.map +1 -0
  334. package/dist/file-sync-vite-plugin.d.ts +4 -0
  335. package/dist/file-sync-vite-plugin.d.ts.map +1 -0
  336. package/dist/file-sync-vite-plugin.js +573 -0
  337. package/dist/file-sync-vite-plugin.js.map +1 -0
  338. package/dist/file-system-helpers.d.ts +7 -0
  339. package/dist/file-system-helpers.d.ts.map +1 -0
  340. package/dist/file-system-helpers.js +12 -0
  341. package/dist/file-system-helpers.js.map +1 -0
  342. package/dist/file-system-manager.d.ts +131 -0
  343. package/dist/file-system-manager.d.ts.map +1 -0
  344. package/dist/file-system-manager.js +1159 -0
  345. package/dist/file-system-manager.js.map +1 -0
  346. package/dist/generate.d.ts +8 -0
  347. package/dist/generate.d.ts.map +1 -0
  348. package/dist/generate.js +7 -0
  349. package/dist/generate.js.map +1 -0
  350. package/dist/ids.d.ts +2 -0
  351. package/dist/ids.d.ts.map +1 -0
  352. package/dist/ids.js +21 -0
  353. package/dist/ids.js.map +1 -0
  354. package/dist/index.d.ts +6 -0
  355. package/dist/index.d.ts.map +1 -0
  356. package/dist/index.js +6 -0
  357. package/dist/index.js.map +1 -0
  358. package/dist/injected-index.d.ts +12 -0
  359. package/dist/injected-index.d.ts.map +1 -0
  360. package/dist/injected-index.js +38 -0
  361. package/dist/injected-index.js.map +1 -0
  362. package/dist/lock-service/index.d.ts +93 -0
  363. package/dist/lock-service/index.d.ts.map +1 -0
  364. package/dist/lock-service/index.js +267 -0
  365. package/dist/lock-service/index.js.map +1 -0
  366. package/dist/parsing/bindings.d.ts +4 -0
  367. package/dist/parsing/bindings.d.ts.map +1 -0
  368. package/dist/parsing/bindings.js +17 -0
  369. package/dist/parsing/bindings.js.map +1 -0
  370. package/dist/parsing/computed/to-code-computed.d.ts +2 -0
  371. package/dist/parsing/computed/to-code-computed.d.ts.map +1 -0
  372. package/dist/parsing/computed/to-code-computed.js +39 -0
  373. package/dist/parsing/computed/to-code-computed.js.map +1 -0
  374. package/dist/parsing/computed/to-value-computed.d.ts +4 -0
  375. package/dist/parsing/computed/to-value-computed.d.ts.map +1 -0
  376. package/dist/parsing/computed/to-value-computed.js +13 -0
  377. package/dist/parsing/computed/to-value-computed.js.map +1 -0
  378. package/dist/parsing/dim/to-code-dimensions.d.ts +3 -0
  379. package/dist/parsing/dim/to-code-dimensions.d.ts.map +1 -0
  380. package/dist/parsing/dim/to-code-dimensions.js +22 -0
  381. package/dist/parsing/dim/to-code-dimensions.js.map +1 -0
  382. package/dist/parsing/dim/to-value-dimensions.d.ts +4 -0
  383. package/dist/parsing/dim/to-value-dimensions.d.ts.map +1 -0
  384. package/dist/parsing/dim/to-value-dimensions.js +39 -0
  385. package/dist/parsing/dim/to-value-dimensions.js.map +1 -0
  386. package/dist/parsing/entity/index.d.ts +8 -0
  387. package/dist/parsing/entity/index.d.ts.map +1 -0
  388. package/dist/parsing/entity/index.js +8 -0
  389. package/dist/parsing/entity/index.js.map +1 -0
  390. package/dist/parsing/entity/to-code-entity.d.ts +3 -0
  391. package/dist/parsing/entity/to-code-entity.d.ts.map +1 -0
  392. package/dist/parsing/entity/to-code-entity.js +38 -0
  393. package/dist/parsing/entity/to-code-entity.js.map +1 -0
  394. package/dist/parsing/entity/to-value-entity.d.ts +8 -0
  395. package/dist/parsing/entity/to-value-entity.d.ts.map +1 -0
  396. package/dist/parsing/entity/to-value-entity.js +98 -0
  397. package/dist/parsing/entity/to-value-entity.js.map +1 -0
  398. package/dist/parsing/events/to-code-events.d.ts +3 -0
  399. package/dist/parsing/events/to-code-events.d.ts.map +1 -0
  400. package/dist/parsing/events/to-code-events.js +86 -0
  401. package/dist/parsing/events/to-code-events.js.map +1 -0
  402. package/dist/parsing/events/to-value-events.d.ts +5 -0
  403. package/dist/parsing/events/to-value-events.d.ts.map +1 -0
  404. package/dist/parsing/events/to-value-events.js +155 -0
  405. package/dist/parsing/events/to-value-events.js.map +1 -0
  406. package/dist/parsing/ids.d.ts +17 -0
  407. package/dist/parsing/ids.d.ts.map +1 -0
  408. package/dist/parsing/ids.js +121 -0
  409. package/dist/parsing/ids.js.map +1 -0
  410. package/dist/parsing/imports.d.ts +6 -0
  411. package/dist/parsing/imports.d.ts.map +1 -0
  412. package/dist/parsing/imports.js +27 -0
  413. package/dist/parsing/imports.js.map +1 -0
  414. package/dist/parsing/jsx-utils.d.ts +9 -0
  415. package/dist/parsing/jsx-utils.d.ts.map +1 -0
  416. package/dist/parsing/jsx-utils.js +42 -0
  417. package/dist/parsing/jsx-utils.js.map +1 -0
  418. package/dist/parsing/jsx.d.ts +23 -0
  419. package/dist/parsing/jsx.d.ts.map +1 -0
  420. package/dist/parsing/jsx.js +327 -0
  421. package/dist/parsing/jsx.js.map +1 -0
  422. package/dist/parsing/page.d.ts +9 -0
  423. package/dist/parsing/page.d.ts.map +1 -0
  424. package/dist/parsing/page.js +156 -0
  425. package/dist/parsing/page.js.map +1 -0
  426. package/dist/parsing/properties.d.ts +5 -0
  427. package/dist/parsing/properties.d.ts.map +1 -0
  428. package/dist/parsing/properties.js +89 -0
  429. package/dist/parsing/properties.js.map +1 -0
  430. package/dist/parsing/scope.d.ts +80 -0
  431. package/dist/parsing/scope.d.ts.map +1 -0
  432. package/dist/parsing/scope.js +549 -0
  433. package/dist/parsing/scope.js.map +1 -0
  434. package/dist/parsing/template/to-code-template.d.ts +2 -0
  435. package/dist/parsing/template/to-code-template.d.ts.map +1 -0
  436. package/dist/parsing/template/to-code-template.js +5 -0
  437. package/dist/parsing/template/to-code-template.js.map +1 -0
  438. package/dist/parsing/template/to-value-template.d.ts +4 -0
  439. package/dist/parsing/template/to-value-template.d.ts.map +1 -0
  440. package/dist/parsing/template/to-value-template.js +19 -0
  441. package/dist/parsing/template/to-value-template.js.map +1 -0
  442. package/dist/parsing/theme.d.ts +3 -0
  443. package/dist/parsing/theme.d.ts.map +1 -0
  444. package/dist/parsing/theme.js +87 -0
  445. package/dist/parsing/theme.js.map +1 -0
  446. package/dist/parsing/type-parsing-registry.d.ts +18 -0
  447. package/dist/parsing/type-parsing-registry.d.ts.map +1 -0
  448. package/dist/parsing/type-parsing-registry.js +31 -0
  449. package/dist/parsing/type-parsing-registry.js.map +1 -0
  450. package/dist/parsing/util.d.ts +30 -0
  451. package/dist/parsing/util.d.ts.map +1 -0
  452. package/dist/parsing/util.js +310 -0
  453. package/dist/parsing/util.js.map +1 -0
  454. package/dist/plugin-options.d.ts +25 -0
  455. package/dist/plugin-options.d.ts.map +1 -0
  456. package/dist/plugin-options.js +14 -0
  457. package/dist/plugin-options.js.map +1 -0
  458. package/dist/refactor/blocks.d.ts +10 -0
  459. package/dist/refactor/blocks.d.ts.map +1 -0
  460. package/dist/refactor/blocks.js +214 -0
  461. package/dist/refactor/blocks.js.map +1 -0
  462. package/dist/refactor/javascript.d.ts +15 -0
  463. package/dist/refactor/javascript.d.ts.map +1 -0
  464. package/dist/refactor/javascript.js +171 -0
  465. package/dist/refactor/javascript.js.map +1 -0
  466. package/dist/refactor-jsx.d.ts +28 -0
  467. package/dist/refactor-jsx.d.ts.map +1 -0
  468. package/dist/refactor-jsx.js +77 -0
  469. package/dist/refactor-jsx.js.map +1 -0
  470. package/dist/rename-manager.d.ts +27 -0
  471. package/dist/rename-manager.d.ts.map +1 -0
  472. package/dist/rename-manager.js +148 -0
  473. package/dist/rename-manager.js.map +1 -0
  474. package/dist/routing.d.ts +6 -0
  475. package/dist/routing.d.ts.map +1 -0
  476. package/dist/routing.js +76 -0
  477. package/dist/routing.js.map +1 -0
  478. package/dist/sb-scope-manager.d.ts +96 -0
  479. package/dist/sb-scope-manager.d.ts.map +1 -0
  480. package/dist/sb-scope-manager.js +438 -0
  481. package/dist/sb-scope-manager.js.map +1 -0
  482. package/dist/socket-manager.d.ts +40 -0
  483. package/dist/socket-manager.d.ts.map +1 -0
  484. package/dist/socket-manager.js +174 -0
  485. package/dist/socket-manager.js.map +1 -0
  486. package/dist/source-tracker.d.ts +190 -0
  487. package/dist/source-tracker.d.ts.map +1 -0
  488. package/dist/source-tracker.js +955 -0
  489. package/dist/source-tracker.js.map +1 -0
  490. package/dist/sync-service/download.d.ts +15 -0
  491. package/dist/sync-service/download.d.ts.map +1 -0
  492. package/dist/sync-service/download.js +116 -0
  493. package/dist/sync-service/download.js.map +1 -0
  494. package/dist/sync-service/draft-helpers.d.ts +68 -0
  495. package/dist/sync-service/draft-helpers.d.ts.map +1 -0
  496. package/dist/sync-service/draft-helpers.js +362 -0
  497. package/dist/sync-service/draft-helpers.js.map +1 -0
  498. package/dist/sync-service/hash-cache.d.ts +15 -0
  499. package/dist/sync-service/hash-cache.d.ts.map +1 -0
  500. package/dist/sync-service/hash-cache.js +58 -0
  501. package/dist/sync-service/hash-cache.js.map +1 -0
  502. package/dist/sync-service/hash-dir-tree.d.ts +10 -0
  503. package/dist/sync-service/hash-dir-tree.d.ts.map +1 -0
  504. package/dist/sync-service/hash-dir-tree.js +53 -0
  505. package/dist/sync-service/hash-dir-tree.js.map +1 -0
  506. package/dist/sync-service/index.d.ts +134 -0
  507. package/dist/sync-service/index.d.ts.map +1 -0
  508. package/dist/sync-service/index.js +323 -0
  509. package/dist/sync-service/index.js.map +1 -0
  510. package/dist/sync-service/list-dir.d.ts +29 -0
  511. package/dist/sync-service/list-dir.d.ts.map +1 -0
  512. package/dist/sync-service/list-dir.js +66 -0
  513. package/dist/sync-service/list-dir.js.map +1 -0
  514. package/dist/sync-service/server-rpc/client.d.ts +13 -0
  515. package/dist/sync-service/server-rpc/client.d.ts.map +1 -0
  516. package/dist/sync-service/server-rpc/client.js +62 -0
  517. package/dist/sync-service/server-rpc/client.js.map +1 -0
  518. package/dist/sync-service/server-rpc/handlers.d.ts +3 -0
  519. package/dist/sync-service/server-rpc/handlers.d.ts.map +1 -0
  520. package/dist/sync-service/server-rpc/handlers.js +18 -0
  521. package/dist/sync-service/server-rpc/handlers.js.map +1 -0
  522. package/dist/sync-service/snapshot/take-snapshot.d.ts +38 -0
  523. package/dist/sync-service/snapshot/take-snapshot.d.ts.map +1 -0
  524. package/dist/sync-service/snapshot/take-snapshot.js +232 -0
  525. package/dist/sync-service/snapshot/take-snapshot.js.map +1 -0
  526. package/dist/sync-service/snapshot/types.d.ts +24 -0
  527. package/dist/sync-service/snapshot/types.d.ts.map +1 -0
  528. package/dist/sync-service/snapshot/types.js +3 -0
  529. package/dist/sync-service/snapshot/types.js.map +1 -0
  530. package/dist/sync-service/snapshot/upload-snapshot.d.ts +5 -0
  531. package/dist/sync-service/snapshot/upload-snapshot.d.ts.map +1 -0
  532. package/dist/sync-service/snapshot/upload-snapshot.js +50 -0
  533. package/dist/sync-service/snapshot/upload-snapshot.js.map +1 -0
  534. package/dist/traverse.d.ts +6 -0
  535. package/dist/traverse.d.ts.map +1 -0
  536. package/dist/traverse.js +7 -0
  537. package/dist/traverse.js.map +1 -0
  538. package/dist/util/generation-number-sequence.d.ts +7 -0
  539. package/dist/util/generation-number-sequence.d.ts.map +1 -0
  540. package/dist/util/generation-number-sequence.js +13 -0
  541. package/dist/util/generation-number-sequence.js.map +1 -0
  542. package/dist/util/logger.d.ts +22 -0
  543. package/dist/util/logger.d.ts.map +1 -0
  544. package/dist/util/logger.js +64 -0
  545. package/dist/util/logger.js.map +1 -0
  546. package/dist/util/operation-queue.d.ts +17 -0
  547. package/dist/util/operation-queue.d.ts.map +1 -0
  548. package/dist/util/operation-queue.js +27 -0
  549. package/dist/util/operation-queue.js.map +1 -0
  550. package/dist/util/tracing.d.ts +4 -0
  551. package/dist/util/tracing.d.ts.map +1 -0
  552. package/dist/util/tracing.js +19 -0
  553. package/dist/util/tracing.js.map +1 -0
  554. package/dist/util/with-resolvers.d.ts +10 -0
  555. package/dist/util/with-resolvers.d.ts.map +1 -0
  556. package/dist/util/with-resolvers.js +14 -0
  557. package/dist/util/with-resolvers.js.map +1 -0
  558. package/dist/util.d.ts +26 -0
  559. package/dist/util.d.ts.map +1 -0
  560. package/dist/util.js +82 -0
  561. package/dist/util.js.map +1 -0
  562. package/package.json +123 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-system-manager.js","sourceRoot":"","sources":["../src/file-system-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { GeneratorOptions, GeneratorResult } from "@babel/generator";
2
+ import type { Node } from "@babel/types";
3
+ type Generate = (ast: Node, opts?: GeneratorOptions, code?: string | {
4
+ [filename: string]: string;
5
+ }) => GeneratorResult;
6
+ export declare const generate: Generate;
7
+ export {};
8
+ //# sourceMappingURL=generate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEzC,KAAK,QAAQ,GAAG,CACd,GAAG,EAAE,IAAI,EACT,IAAI,CAAC,EAAE,gBAAgB,EACvB,IAAI,CAAC,EAAE,MAAM,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,KAC3C,eAAe,CAAC;AAMrB,eAAO,MAAM,QAAQ,EAAE,QAAiD,CAAC"}
@@ -0,0 +1,7 @@
1
+ import babelGenerate from "@babel/generator";
2
+ /*
3
+ Some bundlers do not handle the way that Babel defines exports correctly (because Babel's way of defining exports is wrong).
4
+ This makes sure that, whether the default export is at the top level or not, the generate function is always available.
5
+ */
6
+ export const generate = babelGenerate.default ?? babelGenerate;
7
+ //# sourceMappingURL=generate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAU7C;;;EAGE;AACF,MAAM,CAAC,MAAM,QAAQ,GAAa,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC"}
package/dist/ids.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare const generatePredictableId: (name: string) => string;
2
+ //# sourceMappingURL=ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,KAAG,MAEpD,CAAC"}
package/dist/ids.js ADDED
@@ -0,0 +1,21 @@
1
+ // Hash the style string to create a predictable namespace
2
+ // See https://stackoverflow.com/a/52171480/610632
3
+ // Also: shared/src/utils/appDSL.ts, copied here because we cannot npm install if we have a workspace dep in
4
+ // the library, for now.
5
+ const cyrb53 = (str, seed = 0) => {
6
+ let h1 = 0xdeadbeef ^ seed, h2 = 0x41c6ce57 ^ seed;
7
+ for (let i = 0, ch; i < str.length; i++) {
8
+ ch = str.charCodeAt(i);
9
+ h1 = Math.imul(h1 ^ ch, 2654435761);
10
+ h2 = Math.imul(h2 ^ ch, 1597334677);
11
+ }
12
+ h1 = Math.imul(h1 ^ (h1 >>> 16), 2246822507);
13
+ h1 ^= Math.imul(h2 ^ (h2 >>> 13), 3266489909);
14
+ h2 = Math.imul(h2 ^ (h2 >>> 16), 2246822507);
15
+ h2 ^= Math.imul(h1 ^ (h1 >>> 13), 3266489909);
16
+ return 4294967296 * (2097151 & h2) + (h1 >>> 0);
17
+ };
18
+ export const generatePredictableId = (name) => {
19
+ return cyrb53(name).toString(36); // Convert to alphanumeric
20
+ };
21
+ //# sourceMappingURL=ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.js","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,kDAAkD;AAClD,4GAA4G;AAC5G,wBAAwB;AACxB,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,IAAI,GAAG,CAAC,EAAE,EAAE;IACvC,IAAI,EAAE,GAAG,UAAU,GAAG,IAAI,EACxB,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACvB,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;QACpC,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC;IACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAC7C,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAC9C,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAC7C,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAE9C,OAAO,UAAU,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAAU,EAAE;IAC5D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,0BAA0B;AAC9D,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { AiService } from "./ai-service/index.js";
2
+ export { SyncService } from "./sync-service/index.js";
3
+ export { LockService } from "./lock-service/index.js";
4
+ export { OperationQueue } from "./util/operation-queue.js";
5
+ export { fileSyncVitePlugin } from "./file-sync-vite-plugin.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,6 @@
1
+ export { AiService } from "./ai-service/index.js";
2
+ export { SyncService } from "./sync-service/index.js";
3
+ export { LockService } from "./lock-service/index.js";
4
+ export { OperationQueue } from "./util/operation-queue.js";
5
+ export { fileSyncVitePlugin } from "./file-sync-vite-plugin.js";
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { FileSyncManager } from "./file-system-manager.js";
2
+ import type http from "node:http";
3
+ import type { Connect } from "vite";
4
+ import type { ViteDevServer } from "vite";
5
+ /**
6
+ * This middleware is used so we can serve a custom index.html without
7
+ * having the user specify their own file inside of their code-mode apps.
8
+ * This gives us some extra control over the index.html file, especially
9
+ * when it comes to building bundles for production/deployment.
10
+ */
11
+ export declare function indexHtmlMiddleware(server: ViteDevServer, fileSyncManager: FileSyncManager): (req: Connect.IncomingMessage, res: http.ServerResponse, next: Connect.NextFunction) => Promise<void>;
12
+ //# sourceMappingURL=injected-index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injected-index.d.ts","sourceRoot":"","sources":["../src/injected-index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAE1C;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,eAAe,EAAE,eAAe,IAG9B,KAAK,OAAO,CAAC,eAAe,EAC5B,KAAK,IAAI,CAAC,cAAc,EACxB,MAAM,OAAO,CAAC,YAAY,mBAsB7B"}
@@ -0,0 +1,38 @@
1
+ import { match } from "path-to-regexp";
2
+ /**
3
+ * This middleware is used so we can serve a custom index.html without
4
+ * having the user specify their own file inside of their code-mode apps.
5
+ * This gives us some extra control over the index.html file, especially
6
+ * when it comes to building bundles for production/deployment.
7
+ */
8
+ export function indexHtmlMiddleware(server, fileSyncManager) {
9
+ return async (req, res, next) => {
10
+ const routes = fileSyncManager.getRoutes();
11
+ const matchers = routes.map((route) => match(route.path));
12
+ const url = new URL(req.url ?? "", "http://localhost");
13
+ if (url.pathname === "/" ||
14
+ matchers.some((matcher) => matcher(url.pathname))) {
15
+ const transformedHtml = await server.transformIndexHtml(url.toString(), indexHtml);
16
+ res.setHeader("Content-Type", "text/html");
17
+ res.write(transformedHtml);
18
+ res.end();
19
+ return;
20
+ }
21
+ next();
22
+ };
23
+ }
24
+ const indexHtml = /*html*/ `
25
+ <!doctype html>
26
+ <html lang="en">
27
+ <head>
28
+ <meta charset="utf-8" />
29
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
30
+ <title>Code Mode</title>
31
+ <script src="/root.tsx" type="module"></script>
32
+ </head>
33
+ <body>
34
+ <div id="root"></div>
35
+ </body>
36
+ </html>
37
+ `;
38
+ //# sourceMappingURL=injected-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injected-index.js","sourceRoot":"","sources":["../src/injected-index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAMvC;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAqB,EACrB,eAAgC;IAEhC,OAAO,KAAK,EACV,GAA4B,EAC5B,GAAwB,EACxB,IAA0B,EAC1B,EAAE;QACF,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAEvD,IACE,GAAG,CAAC,QAAQ,KAAK,GAAG;YACpB,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EACjD,CAAC;YACD,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,kBAAkB,CACrD,GAAG,CAAC,QAAQ,EAAE,EACd,SAAS,CACV,CAAC;YACF,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;YAC3C,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YAC3B,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,SAAS,GAAG,QAAQ,CAAC;;;;;;;;;;;;;CAa1B,CAAC"}
@@ -0,0 +1,93 @@
1
+ import EventEmitter from "node:events";
2
+ import { type ErrorEventMap } from "../errors/error-handler.js";
3
+ export declare enum LockServiceStatus {
4
+ /** The lock service is not currently active */
5
+ IDLE = "IDLE",
6
+ /** The lock service is acquiring a lock */
7
+ ACQUIRING = "ACQUIRING",
8
+ /** The lock service has acquired a lock */
9
+ LOCKED = "LOCKED",
10
+ /** The lock service is releasing a lock */
11
+ RELEASING = "RELEASING",
12
+ /** The lock service is waiting for a lock to be released */
13
+ FAILED_TO_ACQUIRE_LOCK = "FAILED_TO_ACQUIRE_LOCK",
14
+ /** The lock is invalid */
15
+ LOCK_INVALID = "LOCK_INVALID",
16
+ /** The lock is released */
17
+ LOCK_RELEASED = "LOCK_RELEASED"
18
+ }
19
+ export declare enum LockType {
20
+ LOCAL = "local",
21
+ CSB = "csb"
22
+ }
23
+ /** Configuration for the LockService passed to the constructor */
24
+ export interface LockServiceConfig {
25
+ authToken: string;
26
+ superblocksBaseUrl: string;
27
+ applicationId: string;
28
+ branchName: string;
29
+ lockType: LockType;
30
+ lockTimeoutMs?: number;
31
+ heartbeatIntervalMs?: number;
32
+ }
33
+ interface EventMap extends ErrorEventMap {
34
+ /** Emitted when the lock service status changes */
35
+ statusChange: [status: LockServiceStatus];
36
+ /** Emitted when the lock is acquired */
37
+ lockAcquired: [lockId: string];
38
+ /** Emitted when the lock is released */
39
+ lockReleased: [];
40
+ /** Emitted when the lock heartbeat is received */
41
+ lockHeartbeat: [lockId: string];
42
+ }
43
+ export declare class LockService extends EventEmitter<EventMap> {
44
+ private readonly authToken;
45
+ private readonly superblocksBaseUrl;
46
+ private readonly applicationId;
47
+ private readonly branchName;
48
+ private readonly lockType;
49
+ private readonly heartbeatIntervalMs;
50
+ private rpcClient;
51
+ private _status;
52
+ private _lockId;
53
+ private _heartbeatTimeout;
54
+ private _connectedUserPeerIdsMap;
55
+ constructor(config: LockServiceConfig);
56
+ get status(): LockServiceStatus;
57
+ private set status(value);
58
+ get isLocked(): boolean;
59
+ get lockId(): string | undefined;
60
+ get connectedUsers(): string[];
61
+ /**
62
+ * Acquire a lock on the specified application and branch
63
+ */
64
+ acquireLock(): Promise<void>;
65
+ /**
66
+ * Release the currently held lock
67
+ */
68
+ releaseLock(): Promise<boolean>;
69
+ checkAndUpdateLockIfPossible(): Promise<boolean>;
70
+ /**
71
+ * Cleanup method to be called when the class is destroyed
72
+ * This ensures the lock is released
73
+ */
74
+ shutdown(): Promise<void>;
75
+ /**
76
+ * Add a connected user to the lock service.
77
+ */
78
+ addConnectedPeerIdToUser(userId: string, peerId: string): void;
79
+ /**
80
+ * Remove a connected user from the lock service.
81
+ */
82
+ removeConnectedPeerIdFromUser(userId: string, peerId: string): void;
83
+ private scheduleNextHeartbeat;
84
+ private sendHeartbeat;
85
+ /**
86
+ * Stop the heartbeat
87
+ */
88
+ private stopHeartbeat;
89
+ private closeRpcClient;
90
+ private getRpcClient;
91
+ }
92
+ export {};
93
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,267 @@
1
+ import EventEmitter from "node:events";
2
+ // TODO(David): Move the socket grpc library to a shared dir
3
+ import { ConflictError } from "@superblocksteam/shared";
4
+ import { applyErrorHandling, } from "../errors/error-handler.js";
5
+ import { connectToISocketRPCServer, unwrapResponseDto, } from "../sync-service/server-rpc/client.js";
6
+ import { getErrorMeta, getLogger } from "../util/logger.js";
7
+ const LOCK_HEARTBEAT_INTERVAL_MS = 30 * 1000; // 30 seconds
8
+ export var LockServiceStatus;
9
+ (function (LockServiceStatus) {
10
+ /** The lock service is not currently active */
11
+ LockServiceStatus["IDLE"] = "IDLE";
12
+ /** The lock service is acquiring a lock */
13
+ LockServiceStatus["ACQUIRING"] = "ACQUIRING";
14
+ /** The lock service has acquired a lock */
15
+ LockServiceStatus["LOCKED"] = "LOCKED";
16
+ /** The lock service is releasing a lock */
17
+ LockServiceStatus["RELEASING"] = "RELEASING";
18
+ /** The lock service is waiting for a lock to be released */
19
+ LockServiceStatus["FAILED_TO_ACQUIRE_LOCK"] = "FAILED_TO_ACQUIRE_LOCK";
20
+ /** The lock is invalid */
21
+ LockServiceStatus["LOCK_INVALID"] = "LOCK_INVALID";
22
+ /** The lock is released */
23
+ LockServiceStatus["LOCK_RELEASED"] = "LOCK_RELEASED";
24
+ })(LockServiceStatus || (LockServiceStatus = {}));
25
+ export var LockType;
26
+ (function (LockType) {
27
+ LockType["LOCAL"] = "local";
28
+ LockType["CSB"] = "csb";
29
+ })(LockType || (LockType = {}));
30
+ export class LockService extends EventEmitter {
31
+ authToken;
32
+ superblocksBaseUrl;
33
+ applicationId;
34
+ branchName;
35
+ lockType;
36
+ heartbeatIntervalMs;
37
+ rpcClient;
38
+ _status = LockServiceStatus.IDLE;
39
+ _lockId;
40
+ _heartbeatTimeout;
41
+ _connectedUserPeerIdsMap = new Map();
42
+ constructor(config) {
43
+ super();
44
+ this.authToken = config.authToken;
45
+ this.superblocksBaseUrl = config.superblocksBaseUrl;
46
+ this.applicationId = config.applicationId;
47
+ this.branchName = config.branchName;
48
+ this.lockType = config.lockType;
49
+ this.heartbeatIntervalMs =
50
+ config.heartbeatIntervalMs || LOCK_HEARTBEAT_INTERVAL_MS;
51
+ this.rpcClient = null;
52
+ applyErrorHandling(this, {
53
+ acquireLock: { operation: "acquiring lock" },
54
+ releaseLock: { operation: "releasing lock" },
55
+ });
56
+ }
57
+ get status() {
58
+ return this._status;
59
+ }
60
+ set status(status) {
61
+ if (this._status !== status) {
62
+ this._status = status;
63
+ this.emit("statusChange", status);
64
+ }
65
+ }
66
+ get isLocked() {
67
+ return this._status === LockServiceStatus.LOCKED;
68
+ }
69
+ get lockId() {
70
+ return this._lockId;
71
+ }
72
+ get connectedUsers() {
73
+ return Array.from(this._connectedUserPeerIdsMap.keys());
74
+ }
75
+ /**
76
+ * Acquire a lock on the specified application and branch
77
+ */
78
+ async acquireLock() {
79
+ this.status = LockServiceStatus.ACQUIRING;
80
+ const logger = getLogger();
81
+ try {
82
+ const rpcClient = await this.getRpcClient();
83
+ const lockResponse = await unwrapResponseDto(rpcClient.call.v3.lock.acquire({
84
+ applicationId: this.applicationId,
85
+ branchName: this.branchName,
86
+ sessionType: this.lockType,
87
+ }));
88
+ if (lockResponse.appBranchLock[0]) {
89
+ const lock = lockResponse.appBranchLock[0];
90
+ this._lockId = lock.lockId;
91
+ this.status = LockServiceStatus.LOCKED;
92
+ this.emit("lockAcquired", this._lockId);
93
+ this.scheduleNextHeartbeat();
94
+ return;
95
+ }
96
+ }
97
+ catch (error) {
98
+ if (error instanceof ConflictError) {
99
+ logger.error(`[lock-service] Lock is already acquired by another user. Please try again later.`, getErrorMeta(error));
100
+ this.emit("statusChange", LockServiceStatus.FAILED_TO_ACQUIRE_LOCK);
101
+ this.status = LockServiceStatus.FAILED_TO_ACQUIRE_LOCK;
102
+ await this.shutdown();
103
+ throw new Error(`Lock is already acquired: ${error}`);
104
+ }
105
+ else {
106
+ throw new Error(`Error acquiring lock: ${error}`);
107
+ }
108
+ }
109
+ }
110
+ /**
111
+ * Release the currently held lock
112
+ */
113
+ async releaseLock() {
114
+ const logger = getLogger();
115
+ if (this._status !== LockServiceStatus.LOCKED) {
116
+ return false;
117
+ }
118
+ this.status = LockServiceStatus.RELEASING;
119
+ this.emit("statusChange", LockServiceStatus.RELEASING);
120
+ try {
121
+ // Try to release the lock when this class is destructed
122
+ const rpcClient = await this.getRpcClient();
123
+ await unwrapResponseDto(rpcClient.call.v3.lock.release({
124
+ applicationId: this.applicationId,
125
+ branchName: this.branchName,
126
+ lockId: this._lockId,
127
+ }));
128
+ this._lockId = undefined;
129
+ this.status = LockServiceStatus.LOCK_RELEASED;
130
+ this.emit("statusChange", LockServiceStatus.LOCK_RELEASED);
131
+ logger.info("[lock-service] lock released");
132
+ return true;
133
+ }
134
+ catch (error) {
135
+ this.status = LockServiceStatus.IDLE;
136
+ logger.error("[lock-service] error releasing lock", getErrorMeta(error));
137
+ throw error;
138
+ }
139
+ finally {
140
+ this.stopHeartbeat();
141
+ }
142
+ }
143
+ async checkAndUpdateLockIfPossible() {
144
+ const logger = getLogger();
145
+ if (this._lockId) {
146
+ try {
147
+ const rpcClient = await this.getRpcClient();
148
+ const response = await unwrapResponseDto(rpcClient.call.v3.lock.grab({
149
+ applicationId: this.applicationId,
150
+ branchName: this.branchName,
151
+ lockId: this._lockId,
152
+ }));
153
+ if (response?.appBranchLock?.[0]) {
154
+ // If the csb lock is overridden by dev, the lock will be released
155
+ // TODO(David): Implement the status update to the user where CSB users needs to save their work
156
+ logger.info(`[lock-service] lock is still valid with expiration timestamp: ${response.appBranchLock[0].expirationTimestamp}`);
157
+ return true;
158
+ }
159
+ }
160
+ catch (error) {
161
+ if (error instanceof ConflictError) {
162
+ logger.error("[lock-service] Lock has been overridden by another user", getErrorMeta(error));
163
+ this.emit("statusChange", LockServiceStatus.LOCK_INVALID);
164
+ this.status = LockServiceStatus.LOCK_INVALID;
165
+ await this.shutdown();
166
+ }
167
+ logger.error("[lock-service] error checking and updating lock", getErrorMeta(error));
168
+ throw error;
169
+ }
170
+ }
171
+ this.status = LockServiceStatus.IDLE;
172
+ this.stopHeartbeat();
173
+ return false;
174
+ }
175
+ /**
176
+ * Cleanup method to be called when the class is destroyed
177
+ * This ensures the lock is released
178
+ */
179
+ async shutdown() {
180
+ this.stopHeartbeat();
181
+ if (this.isLocked) {
182
+ await this.releaseLock();
183
+ }
184
+ await this.closeRpcClient();
185
+ }
186
+ /**
187
+ * Add a connected user to the lock service.
188
+ */
189
+ addConnectedPeerIdToUser(userId, peerId) {
190
+ if (!this._connectedUserPeerIdsMap.has(userId)) {
191
+ this._connectedUserPeerIdsMap.set(userId, new Set([peerId]));
192
+ }
193
+ else {
194
+ this._connectedUserPeerIdsMap.get(userId)?.add(peerId);
195
+ }
196
+ const logger = getLogger();
197
+ logger.debug(`[lock-service] added peerId ${peerId} to user ${userId}`);
198
+ }
199
+ /**
200
+ * Remove a connected user from the lock service.
201
+ */
202
+ removeConnectedPeerIdFromUser(userId, peerId) {
203
+ const logger = getLogger();
204
+ if (this._connectedUserPeerIdsMap.has(userId)) {
205
+ this._connectedUserPeerIdsMap.get(userId)?.delete(peerId);
206
+ logger.debug(`[lock-service] removed peerId ${peerId} from user ${userId}`);
207
+ }
208
+ if (this._connectedUserPeerIdsMap.get(userId)?.size === 0) {
209
+ this._connectedUserPeerIdsMap.delete(userId);
210
+ logger.debug(`[lock-service] removed connected user ${userId}`);
211
+ }
212
+ }
213
+ async scheduleNextHeartbeat() {
214
+ const logger = getLogger();
215
+ try {
216
+ if (this._status === LockServiceStatus.LOCKED) {
217
+ await this.sendHeartbeat();
218
+ this._heartbeatTimeout = setTimeout(() => this.scheduleNextHeartbeat(), this.heartbeatIntervalMs);
219
+ }
220
+ }
221
+ 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;
225
+ clearTimeout(this._heartbeatTimeout);
226
+ this._heartbeatTimeout = undefined;
227
+ await this.shutdown();
228
+ }
229
+ }
230
+ async sendHeartbeat() {
231
+ if (this._lockId) {
232
+ await this.checkAndUpdateLockIfPossible();
233
+ }
234
+ else {
235
+ // We shouldn't be here, since we should always have a lockId if we are trying to send a heartbeat
236
+ throw new Error("Lock ID is undefined");
237
+ }
238
+ }
239
+ /**
240
+ * Stop the heartbeat
241
+ */
242
+ stopHeartbeat() {
243
+ const logger = getLogger();
244
+ if (this._heartbeatTimeout) {
245
+ clearTimeout(this._heartbeatTimeout);
246
+ this._heartbeatTimeout = undefined;
247
+ logger.info("[lock-service] heartbeat stopped");
248
+ }
249
+ }
250
+ async closeRpcClient() {
251
+ if (this.rpcClient) {
252
+ await this.rpcClient.close();
253
+ this.rpcClient = null;
254
+ }
255
+ }
256
+ async getRpcClient() {
257
+ // 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
+ });
263
+ }
264
+ return this.rpcClient;
265
+ }
266
+ }
267
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
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 { NodePath } from "@babel/traverse";
2
+ import type t from "@babel/types";
3
+ export declare function doesElementHaveBinding(path: NodePath<t.JSXOpeningElement>): boolean;
4
+ //# sourceMappingURL=bindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bindings.d.ts","sourceRoot":"","sources":["../../src/parsing/bindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAIlC,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAClC,OAAO,CAiBT"}