lucy-cli 2.0.0-alpha.12 → 2.0.0-alpha.13

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 (250) hide show
  1. package/.turbo/daemon/ee24a4f4ab6aa3c0-turbo.log.2025-08-02 +0 -0
  2. package/dist/args.js +44 -7
  3. package/dist/args.js.map +1 -1
  4. package/dist/commands/checks.d.ts +1 -1
  5. package/dist/commands/checks.js +2 -2
  6. package/dist/commands/checks.js.map +1 -1
  7. package/dist/commands/copy.d.ts +2 -1
  8. package/dist/commands/copy.js +9 -1
  9. package/dist/commands/copy.js.map +1 -1
  10. package/dist/commands/edit.d.ts +1 -1
  11. package/dist/commands/edit.js +3 -3
  12. package/dist/commands/edit.js.map +1 -1
  13. package/dist/commands/exec.d.ts +1 -1
  14. package/dist/commands/files.d.ts +7 -0
  15. package/dist/commands/files.js +28 -0
  16. package/dist/commands/files.js.map +1 -0
  17. package/dist/commands/read.d.ts +3 -2
  18. package/dist/commands/read.js +14 -7
  19. package/dist/commands/read.js.map +1 -1
  20. package/dist/commands/write.d.ts +4 -2
  21. package/dist/commands/write.js +15 -3
  22. package/dist/commands/write.js.map +1 -1
  23. package/dist/config.d.ts +20 -2
  24. package/dist/config.js +84 -57
  25. package/dist/config.js.map +1 -1
  26. package/dist/helpers.d.ts +9 -0
  27. package/dist/helpers.js +86 -0
  28. package/dist/helpers.js.map +1 -1
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.js +42 -4
  31. package/dist/index.js.map +1 -1
  32. package/dist/init/blocks.d.ts +1 -1
  33. package/dist/init/blocks.js +2 -2
  34. package/dist/init/blocks.js.map +1 -1
  35. package/dist/init/cargo.d.ts +1 -1
  36. package/dist/init/expo.d.ts +1 -1
  37. package/dist/init/gitModules.d.ts +1 -1
  38. package/dist/init/index.d.ts +1 -1
  39. package/dist/init/index.js +45 -47
  40. package/dist/init/index.js.map +1 -1
  41. package/dist/init/monorepo.d.ts +1 -1
  42. package/dist/init/prepareVelo.d.ts +1 -1
  43. package/dist/init/tauri.d.ts +1 -1
  44. package/dist/init/templates.d.ts +1 -1
  45. package/dist/init/templates.js +11 -12
  46. package/dist/init/templates.js.map +1 -1
  47. package/dist/init/velo.d.ts +1 -1
  48. package/dist/runtime.d.ts +1 -1
  49. package/dist/schemas/gulp.d.ts +25 -15
  50. package/dist/schemas/gulp.js +4 -0
  51. package/dist/schemas/gulp.js.map +1 -1
  52. package/dist/schemas/index.d.ts +10 -0
  53. package/dist/schemas/index.js +8 -0
  54. package/dist/schemas/index.js.map +1 -1
  55. package/dist/schemas/lucy.d.ts +5 -5
  56. package/dist/schemas/lucy.js +8 -8
  57. package/dist/schemas/lucy.js.map +1 -1
  58. package/dist/schemas/types.d.ts +23 -7
  59. package/dist/schemas/types.js +4 -2
  60. package/dist/schemas/types.js.map +1 -1
  61. package/dist/sync/sync.d.ts +3 -0
  62. package/dist/sync/sync.js +91 -87
  63. package/dist/sync/sync.js.map +1 -1
  64. package/dist/tasks/Gulpfile.d.ts +4 -35
  65. package/dist/tasks/Gulpfile.js +81 -104
  66. package/dist/tasks/Gulpfile.js.map +1 -1
  67. package/dist/tasks/gitModules.d.ts +2 -0
  68. package/dist/tasks/gitModules.js +13 -0
  69. package/dist/tasks/gitModules.js.map +1 -0
  70. package/dist/tasks/gulp/backend.d.ts +1 -1
  71. package/dist/tasks/gulp/backend.js +10 -10
  72. package/dist/tasks/gulp/backend.js.map +1 -1
  73. package/dist/tasks/gulp/checks.d.ts +1 -1
  74. package/dist/tasks/gulp/checks.js +3 -2
  75. package/dist/tasks/gulp/checks.js.map +1 -1
  76. package/dist/tasks/gulp/clean.d.ts +1 -1
  77. package/dist/tasks/gulp/clean.js +1 -1
  78. package/dist/tasks/gulp/clean.js.map +1 -1
  79. package/dist/tasks/gulp/copy.d.ts +1 -1
  80. package/dist/tasks/gulp/copy.js +3 -4
  81. package/dist/tasks/gulp/copy.js.map +1 -1
  82. package/dist/tasks/gulp/helpers.d.ts +3 -2
  83. package/dist/tasks/gulp/helpers.js +6 -8
  84. package/dist/tasks/gulp/helpers.js.map +1 -1
  85. package/dist/tasks/gulp/pages.d.ts +1 -1
  86. package/dist/tasks/gulp/pages.js.map +1 -1
  87. package/dist/tasks/gulp/pipeline.js +3 -3
  88. package/dist/tasks/gulp/pipeline.js.map +1 -1
  89. package/dist/tasks/gulp/public.d.ts +1 -1
  90. package/dist/tasks/gulp/public.js +5 -5
  91. package/dist/tasks/gulp/public.js.map +1 -1
  92. package/dist/tasks/gulp/styles.d.ts +1 -1
  93. package/dist/tasks/gulp/styles.js +10 -10
  94. package/dist/tasks/gulp/styles.js.map +1 -1
  95. package/dist/tasks/gulp/templates.d.ts +1 -1
  96. package/dist/tasks/gulp/templates.js +3 -3
  97. package/dist/tasks/gulp/templates.js.map +1 -1
  98. package/dist/tasks/gulp/types.d.ts +1 -1
  99. package/dist/tasks/gulp/types.js +61 -68
  100. package/dist/tasks/gulp/types.js.map +1 -1
  101. package/dist/tasks/gulp/watchers.d.ts +1 -8
  102. package/dist/tasks/gulp/watchers.js +48 -46
  103. package/dist/tasks/gulp/watchers.js.map +1 -1
  104. package/dist/tasks/index.d.ts +1 -1
  105. package/dist/tasks/index.js +19 -21
  106. package/dist/tasks/index.js.map +1 -1
  107. package/dist/tasks/syncPkg.d.ts +3 -0
  108. package/dist/tasks/syncPkg.js +13 -0
  109. package/dist/tasks/syncPkg.js.map +1 -0
  110. package/dist/tasks/syncSettings.d.ts +3 -0
  111. package/dist/tasks/syncSettings.js +18 -0
  112. package/dist/tasks/syncSettings.js.map +1 -0
  113. package/dist/wix-sdk/check.d.ts +4 -0
  114. package/dist/wix-sdk/check.js +23 -0
  115. package/dist/wix-sdk/check.js.map +1 -0
  116. package/dist/wix-sdk/client.d.ts +10 -0
  117. package/dist/wix-sdk/client.js +18 -0
  118. package/dist/wix-sdk/client.js.map +1 -0
  119. package/dist/wix-sdk/import.d.ts +1 -0
  120. package/{src/sync/sync.ts → dist/wix-sdk/import.js} +12 -20
  121. package/dist/wix-sdk/import.js.map +1 -0
  122. package/dist/wix-sdk/index.d.ts +4 -0
  123. package/dist/wix-sdk/index.js +15 -0
  124. package/dist/wix-sdk/index.js.map +1 -0
  125. package/dist/wix-sdk/init copy.d.ts +4 -0
  126. package/dist/wix-sdk/init copy.js +51 -0
  127. package/dist/wix-sdk/init copy.js.map +1 -0
  128. package/dist/wix-sdk/init.d.ts +4 -0
  129. package/dist/wix-sdk/init.js +51 -0
  130. package/dist/wix-sdk/init.js.map +1 -0
  131. package/dist/wix-sdk/is-allive.d.ts +4 -0
  132. package/dist/wix-sdk/is-allive.js +37 -0
  133. package/dist/wix-sdk/is-allive.js.map +1 -0
  134. package/dist/wix-sdk/run.d.ts +4 -0
  135. package/dist/wix-sdk/run.js +53 -0
  136. package/dist/wix-sdk/run.js.map +1 -0
  137. package/dist/wix-sdk/sync copy.d.ts +1 -0
  138. package/dist/wix-sdk/sync copy.js +88 -0
  139. package/dist/wix-sdk/sync copy.js.map +1 -0
  140. package/dist/wix-sdk/sync.d.ts +1 -0
  141. package/dist/wix-sdk/sync.js +88 -0
  142. package/dist/wix-sdk/sync.js.map +1 -0
  143. package/dist/wix-sdk/wix_sdk_check.d.ts +4 -0
  144. package/dist/wix-sdk/wix_sdk_check.js +37 -0
  145. package/dist/wix-sdk/wix_sdk_check.js.map +1 -0
  146. package/dist/wix-sync/client.d.ts +3 -0
  147. package/dist/wix-sync/client.js +5 -0
  148. package/dist/wix-sync/client.js.map +1 -0
  149. package/dist/wix-sync/export copy.d.ts +4 -0
  150. package/dist/wix-sync/export copy.js +21 -0
  151. package/dist/wix-sync/export copy.js.map +1 -0
  152. package/dist/wix-sync/export.d.ts +4 -0
  153. package/dist/wix-sync/export.js +15 -0
  154. package/dist/wix-sync/export.js.map +1 -0
  155. package/dist/wix-sync/import copy.d.ts +4 -0
  156. package/dist/wix-sync/import copy.js +21 -0
  157. package/dist/wix-sync/import copy.js.map +1 -0
  158. package/dist/wix-sync/import.d.ts +4 -0
  159. package/dist/wix-sync/import.js +26 -0
  160. package/dist/wix-sync/import.js.map +1 -0
  161. package/dist/wix-sync/index.d.ts +4 -0
  162. package/dist/wix-sync/index.js +35 -0
  163. package/dist/wix-sync/index.js.map +1 -0
  164. package/dist/wix-sync/init copy.d.ts +4 -0
  165. package/dist/wix-sync/init copy.js +54 -0
  166. package/dist/wix-sync/init copy.js.map +1 -0
  167. package/dist/wix-sync/init.d.ts +4 -0
  168. package/dist/wix-sync/init.js +74 -0
  169. package/dist/wix-sync/init.js.map +1 -0
  170. package/dist/wix-sync/is-alive.d.ts +4 -0
  171. package/dist/wix-sync/is-alive.js +23 -0
  172. package/dist/wix-sync/is-alive.js.map +1 -0
  173. package/dist/wix-sync/is-allive copy.d.ts +4 -0
  174. package/dist/wix-sync/is-allive copy.js +23 -0
  175. package/dist/wix-sync/is-allive copy.js.map +1 -0
  176. package/dist/wix-sync/is-allive.d.ts +4 -0
  177. package/dist/wix-sync/is-allive.js +23 -0
  178. package/dist/wix-sync/is-allive.js.map +1 -0
  179. package/dist/wix-sync/migrate.d.ts +4 -0
  180. package/dist/wix-sync/migrate.js +21 -0
  181. package/dist/wix-sync/migrate.js.map +1 -0
  182. package/dist/wix-sync/sync-od.d.ts +0 -0
  183. package/dist/wix-sync/sync-od.js +100 -0
  184. package/dist/wix-sync/sync-od.js.map +1 -0
  185. package/dist/wix-sync/sync.d.ts +4 -0
  186. package/dist/wix-sync/sync.js +26 -0
  187. package/dist/wix-sync/sync.js.map +1 -0
  188. package/dist/wix-sync/sync2.d.ts +4 -0
  189. package/dist/wix-sync/sync2.js +25 -0
  190. package/dist/wix-sync/sync2.js.map +1 -0
  191. package/dist/wix-sync copy/index.d.ts +4 -0
  192. package/dist/wix-sync copy/index.js +17 -0
  193. package/dist/wix-sync copy/index.js.map +1 -0
  194. package/dist/wix-sync copy/init.d.ts +4 -0
  195. package/dist/wix-sync copy/init.js +58 -0
  196. package/dist/wix-sync copy/init.js.map +1 -0
  197. package/dist/wix-sync copy/is-allive.d.ts +4 -0
  198. package/dist/wix-sync copy/is-allive.js +36 -0
  199. package/dist/wix-sync copy/is-allive.js.map +1 -0
  200. package/dist/wix-sync copy/sync.d.ts +1 -0
  201. package/dist/wix-sync copy/sync.js +88 -0
  202. package/dist/wix-sync copy/sync.js.map +1 -0
  203. package/files/sync-data/data/test.csv +17 -0
  204. package/files/sync-data/schema/test.json +11 -0
  205. package/package.json +5 -2
  206. package/src/args.ts +44 -7
  207. package/src/commands/checks.ts +2 -2
  208. package/src/commands/copy.ts +13 -1
  209. package/src/commands/edit.ts +3 -3
  210. package/src/commands/read.ts +17 -8
  211. package/src/commands/write.ts +25 -4
  212. package/src/config.ts +106 -65
  213. package/src/helpers.ts +90 -0
  214. package/src/index.ts +49 -9
  215. package/src/init/blocks.ts +2 -2
  216. package/src/init/index.ts +45 -51
  217. package/src/init/templates.ts +11 -12
  218. package/src/schemas/gulp.ts +24 -15
  219. package/src/schemas/index.ts +12 -1
  220. package/src/schemas/lucy.ts +9 -8
  221. package/src/schemas/types.ts +25 -7
  222. package/src/tasks/Gulpfile.ts +175 -219
  223. package/src/tasks/gulp/backend.ts +11 -11
  224. package/src/tasks/gulp/checks.ts +4 -3
  225. package/src/tasks/gulp/clean.ts +2 -2
  226. package/src/tasks/gulp/copy.ts +4 -10
  227. package/src/tasks/gulp/helpers.ts +6 -13
  228. package/src/tasks/gulp/pages.ts +1 -1
  229. package/src/tasks/gulp/pipeline.ts +4 -5
  230. package/src/tasks/gulp/public.ts +6 -6
  231. package/src/tasks/gulp/styles.ts +11 -11
  232. package/src/tasks/gulp/templates.ts +4 -4
  233. package/src/tasks/gulp/types.ts +62 -69
  234. package/src/tasks/gulp/watchers.ts +77 -81
  235. package/src/tasks/index.ts +21 -27
  236. package/src/tasks/syncSettings.ts +21 -0
  237. package/src/wix-sdk/check.ts +24 -0
  238. package/src/wix-sdk/client.ts +18 -0
  239. package/src/wix-sdk/index.ts +17 -0
  240. package/src/wix-sdk/init.ts +54 -0
  241. package/src/wix-sdk/run.ts +56 -0
  242. package/src/wix-sync/client.ts +6 -0
  243. package/src/wix-sync/export.ts +19 -0
  244. package/src/wix-sync/import.ts +27 -0
  245. package/src/wix-sync/index.ts +36 -0
  246. package/src/wix-sync/init.ts +77 -0
  247. package/src/wix-sync/is-alive.ts +25 -0
  248. package/src/wix-sync/migrate.ts +23 -0
  249. package/src/wix-sync/sync.ts +27 -0
  250. /package/{src/sync/index.ts → .turbo/daemon/ee24a4f4ab6aa3c0-turbo.log.2025-08-01} +0 -0
@@ -0,0 +1,21 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ import { logger } from "../utils/logger.js";
5
+ import veloAPI from 'velo-sync/dist/velo/velo-api.js';
6
+ export const wix_export = Effect.gen(function* (_) {
7
+ const config = yield* Config;
8
+ const veloSyncSettings = config.config.veloSyncSettings;
9
+ if (!veloSyncSettings)
10
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
11
+ logger.action(`Checking if the API for site ${veloSyncSettings.siteUrl} is alive...`);
12
+ const res = yield* Effect.tryPromise({
13
+ try: () => veloAPI.isAlive(veloSyncSettings),
14
+ catch: (e) => {
15
+ return new AppError({ cause: e, message: 'Error checking if the API is alive' });
16
+ }
17
+ });
18
+ logger.success(`API for site ${veloSyncSettings.siteUrl} is alive and working!`);
19
+ return;
20
+ });
21
+ //# sourceMappingURL=export%20copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export copy.js","sourceRoot":"","sources":["../../src/wix-sync/export copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,OAAO,MAAM,iCAAiC,CAAC;AAEtD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,gCAAgC,gBAAgB,CAAC,OAAO,cAAc,CAAC,CAAC;IAEtF,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC5C,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oCAAoC,EAAE,CAAC,CAAC;QACrF,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,gBAAgB,gBAAgB,CAAC,OAAO,wBAAwB,CAAC,CAAC;IACjF,OAAM;AACV,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const exportData: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,15 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ import { logger } from "../utils/logger.js";
5
+ export const exportData = Effect.gen(function* (_) {
6
+ const config = yield* Config;
7
+ const veloSyncSettings = config.config.veloSyncSettings;
8
+ if (!veloSyncSettings)
9
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
10
+ logger.action(`Exporting data for site ${veloSyncSettings.siteUrl}...`);
11
+ logger.warning('Not implemented yet, please use the Velo Sync CLI for now.');
12
+ // logger.success(`Data for site ${veloSyncSettings.siteUrl} exported successfully!`);
13
+ return;
14
+ });
15
+ //# sourceMappingURL=export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/wix-sync/export.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,2BAA2B,gBAAgB,CAAC,OAAO,KAAK,CAAC,CAAC;IAExE,MAAM,CAAC,OAAO,CAAC,4DAA4D,CAAC,CAAC;IAE7E,sFAAsF;IACtF,OAAM;AACV,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const wix_import: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,21 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ import { logger } from "../utils/logger.js";
5
+ import veloAPI from 'velo-sync/dist/velo/velo-api.js';
6
+ export const wix_import = Effect.gen(function* (_) {
7
+ const config = yield* Config;
8
+ const veloSyncSettings = config.config.veloSyncSettings;
9
+ if (!veloSyncSettings)
10
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
11
+ logger.action(`Checking if the API for site ${veloSyncSettings.siteUrl} is alive...`);
12
+ const res = yield* Effect.tryPromise({
13
+ try: () => veloAPI.isAlive(veloSyncSettings),
14
+ catch: (e) => {
15
+ return new AppError({ cause: e, message: 'Error checking if the API is alive' });
16
+ }
17
+ });
18
+ logger.success(`API for site ${veloSyncSettings.siteUrl} is alive and working!`);
19
+ return;
20
+ });
21
+ //# sourceMappingURL=import%20copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import copy.js","sourceRoot":"","sources":["../../src/wix-sync/import copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,OAAO,MAAM,iCAAiC,CAAC;AAEtD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,gCAAgC,gBAAgB,CAAC,OAAO,cAAc,CAAC,CAAC;IAEtF,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC5C,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oCAAoC,EAAE,CAAC,CAAC;QACrF,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,gBAAgB,gBAAgB,CAAC,OAAO,wBAAwB,CAAC,CAAC;IACjF,OAAM;AACV,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const importData: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,26 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ import { logger } from "../utils/logger.js";
5
+ import { runSyncTask } from "./client.js";
6
+ export const importData = Effect.gen(function* (_) {
7
+ const config = yield* Config;
8
+ const veloSyncSettings = config.config.veloSyncSettings;
9
+ if (!veloSyncSettings)
10
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
11
+ logger.action(`Importing data for site ${veloSyncSettings.siteUrl}...`);
12
+ let filename = config.config.veloSyncArguments?.data || '';
13
+ let collection = config.config.veloSyncArguments?.collection || '';
14
+ let schema = config.config.veloSyncArguments?.schema || '';
15
+ let dryrun = config.config.veloSyncArguments?.dry || false;
16
+ let importOnly = true;
17
+ const res = yield* Effect.tryPromise({
18
+ try: () => runSyncTask(filename, collection, schema, importOnly, dryrun),
19
+ catch: (e) => {
20
+ return new AppError({ cause: e, message: 'Error syncing data' });
21
+ }
22
+ });
23
+ logger.success(`Data for site ${veloSyncSettings.siteUrl} imported successfully!`);
24
+ return;
25
+ });
26
+ //# sourceMappingURL=import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/wix-sync/import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,2BAA2B,gBAAgB,CAAC,OAAO,KAAK,CAAC,CAAC;IACxE,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,IAAI,EAAE,CAAC;IAC3D,IAAI,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,UAAU,IAAI,EAAE,CAAC;IACnE,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,IAAI,EAAE,CAAC;IAC3D,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,IAAI,KAAK,CAAC;IAC3D,IAAI,UAAU,GAAG,IAAI,CAAA;IACrB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC;QACxE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACrE,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,iBAAiB,gBAAgB,CAAC,OAAO,yBAAyB,CAAC,CAAC;IACnF,OAAM;AACV,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const wix_sync: Effect.Effect<void, AppError | import("effect/ParseResult").ParseError | import("@effect/platform/Error").PlatformError, Config | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path>;
@@ -0,0 +1,35 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ import { init } from "./init.js";
5
+ import { sync } from "./sync.js";
6
+ import { migrate } from "./migrate.js";
7
+ import { importData } from "./import.js";
8
+ import { exportData } from "./export.js";
9
+ import { is_alive } from "./is-alive.js";
10
+ export const wix_sync = Effect.gen(function* (_) {
11
+ const config = yield* Config;
12
+ if (config.config.action.syncAction === undefined) {
13
+ return yield* Effect.fail(new AppError({ message: "No sync action provided", cause: new Error("No sync action provided") }));
14
+ }
15
+ if (config.config.action.syncAction === 'init') {
16
+ return yield* init;
17
+ }
18
+ if (config.config.action.syncAction === 'sync') {
19
+ return yield* sync;
20
+ }
21
+ if (config.config.action.syncAction === 'migrate') {
22
+ return yield* migrate;
23
+ }
24
+ if (config.config.action.syncAction === 'import') {
25
+ return yield* importData;
26
+ }
27
+ if (config.config.action.syncAction === 'export') {
28
+ return yield* exportData;
29
+ }
30
+ if (config.config.action.syncAction === 'is-alive') {
31
+ return yield* is_alive;
32
+ }
33
+ yield* Effect.fail(new AppError({ message: `Unsupported sync action type: ${config.config.action.syncAction}`, cause: new Error(`Unsupported sync action type: ${config.config.action.syncAction}`) }));
34
+ });
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/wix-sync/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,IAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC;IACjI,CAAC;IACD,IAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC;IACvB,CAAC;IACD,IAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC;IACvB,CAAC;IACD,IAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAC/C,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC;IAC1B,CAAC;IACD,IAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC,CAAC,UAAU,CAAC;IAC7B,CAAC;IACD,IAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC,CAAC,UAAU,CAAC;IAC7B,CAAC;IACD,IAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC;IAC3B,CAAC;IACD,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,iCAAiC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5M,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const wix_sync_init: Effect.Effect<void, AppError | import("effect/ParseResult").ParseError | import("@effect/platform/Error").PlatformError, Config | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path>;
@@ -0,0 +1,54 @@
1
+ import { Effect, Schema } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import Enquirer from "enquirer";
4
+ import { AppError } from "../error.js";
5
+ import { writeVeloSyncSettings } from "../commands/write.js";
6
+ import { veloSyncSettings } from "../schemas/index.js";
7
+ import { logger } from "../utils/logger.js";
8
+ export const wix_sync_init = Effect.gen(function* (_) {
9
+ const config = yield* Config;
10
+ const prompter = new Enquirer();
11
+ const choice = yield* Effect.tryPromise({
12
+ try: () => prompter.prompt([
13
+ {
14
+ type: 'input',
15
+ name: 'siteUrl',
16
+ message: 'Enter a project URL',
17
+ initial: 'https://example.com',
18
+ validate: (value) => {
19
+ const urlPattern = /^https:\/\/[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(\/[^\s]*)?$/;
20
+ if (!value.trim())
21
+ return 'Project URL cannot be empty';
22
+ if (!urlPattern.test(value.trim()))
23
+ return 'URL must be in the format https://domain.com';
24
+ return true;
25
+ }
26
+ },
27
+ {
28
+ type: 'input',
29
+ name: 'secret',
30
+ message: 'Enter the velo-sync secret',
31
+ validate: (value) => value.trim() !== '' ? true : 'Secret cannot be empty'
32
+ }
33
+ ]),
34
+ catch: (e) => {
35
+ return new AppError({ cause: e, message: 'Error initializing velo-sync settings' });
36
+ }
37
+ });
38
+ config.config.veloSyncSettings = yield* Schema.decodeUnknown(veloSyncSettings)(choice);
39
+ yield* writeVeloSyncSettings;
40
+ const question = new Enquirer();
41
+ const verify = yield* Effect.tryPromise({
42
+ try: () => question.prompt({
43
+ type: 'confirm',
44
+ name: 'verify',
45
+ message: 'Do you want to verify the velo-sync settings?',
46
+ }),
47
+ catch: (e) => {
48
+ return new AppError({ cause: e, message: 'Error selecting template' });
49
+ }
50
+ });
51
+ const verifySync = yield* Schema.decodeUnknown(Schema.Struct({ verify: Schema.Boolean }))(verify);
52
+ logger.success(`Velo-sync settings initialized successfully!`);
53
+ });
54
+ //# sourceMappingURL=init%20copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init copy.js","sourceRoot":"","sources":["../../src/wix-sync/init copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAEhC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACpC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;YACvB;gBACI,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,qBAAqB;gBAC9B,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;oBACxB,MAAM,UAAU,GAAG,qDAAqD,CAAC;oBACzE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;wBAAE,OAAO,6BAA6B,CAAC;oBACxD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;wBAAE,OAAO,8CAA8C,CAAC;oBAC1F,OAAO,IAAI,CAAC;gBAChB,CAAC;aACJ;YACD;gBACI,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,4BAA4B;gBACrC,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,wBAAwB;aACrF;SACJ,CAAC;QACF,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC,CAAC;QACxF,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,CAAC,MAAM,CAAC,gBAAgB,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;IACtF,KAAK,CAAC,CAAC,qBAAqB,CAAA;IAE5B,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACpC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,+CAA+C;SAC3D,CAAC;QACF,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,CAAC;QAC3E,CAAC;KACJ,CAAC,CAAA;IACF,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAEjG,MAAM,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;AACnE,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const init: Effect.Effect<void, AppError | import("effect/ParseResult").ParseError | import("@effect/platform/Error").PlatformError, Config | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path>;
@@ -0,0 +1,74 @@
1
+ import { Effect, Schema } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import Enquirer from "enquirer";
4
+ import { AppError } from "../error.js";
5
+ import { writeVeloSyncSettings } from "../commands/write.js";
6
+ import { veloSyncSettings } from "../schemas/index.js";
7
+ import { logger } from "../utils/logger.js";
8
+ import { is_alive } from "./is-alive.js";
9
+ import { copySyncFiles } from "../commands/copy.js";
10
+ export const init = Effect.gen(function* (_) {
11
+ const config = yield* Config;
12
+ const prompter = new Enquirer();
13
+ const choice = yield* Effect.tryPromise({
14
+ try: () => prompter.prompt([
15
+ {
16
+ type: 'input',
17
+ name: 'siteUrl',
18
+ message: 'Enter a project URL',
19
+ initial: config.config.veloSyncSettings?.siteUrl || 'https://example.com',
20
+ validate: (value) => {
21
+ const urlPattern = /^https:\/\/[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
22
+ if (!value.trim())
23
+ return 'Project URL cannot be empty';
24
+ if (!urlPattern.test(value.trim()))
25
+ return 'URL must be in the format https://domain.com';
26
+ return true;
27
+ }
28
+ },
29
+ {
30
+ type: 'input',
31
+ name: 'secret',
32
+ message: 'Enter the velo-sync secret',
33
+ initial: config.config.veloSyncSettings?.secret || 'secret',
34
+ validate: (value) => value.trim() !== '' ? true : 'Secret cannot be empty'
35
+ }
36
+ ]),
37
+ catch: (e) => {
38
+ return new AppError({ cause: e, message: 'Error initializing velo-sync settings' });
39
+ }
40
+ });
41
+ config.config.veloSyncSettings = yield* Schema.decodeUnknown(veloSyncSettings)(choice);
42
+ yield* writeVeloSyncSettings;
43
+ const copyFilesQuestion = new Enquirer();
44
+ const copyFiles = yield* Effect.tryPromise({
45
+ try: () => copyFilesQuestion.prompt({
46
+ type: 'confirm',
47
+ name: 'copyFiles',
48
+ message: 'Do you want to copy the velo-sync files to your project?',
49
+ }),
50
+ catch: (e) => {
51
+ return new AppError({ cause: e, message: 'Error copying velo-sync files' });
52
+ }
53
+ });
54
+ const copy = yield* Schema.decodeUnknown(Schema.Struct({ copyFiles: Schema.Boolean }))(copyFiles);
55
+ if (copy.copyFiles) {
56
+ yield* copySyncFiles;
57
+ }
58
+ const question = new Enquirer();
59
+ const verify = yield* Effect.tryPromise({
60
+ try: () => question.prompt({
61
+ type: 'confirm',
62
+ name: 'verify',
63
+ message: 'Do you want to verify the velo-sync settings?',
64
+ }),
65
+ catch: (e) => {
66
+ return new AppError({ cause: e, message: 'Error setting up velo-sync settings' });
67
+ }
68
+ });
69
+ const verifySync = yield* Schema.decodeUnknown(Schema.Struct({ verify: Schema.Boolean }))(verify);
70
+ if (verifySync.verify)
71
+ yield* is_alive;
72
+ logger.success(`Velo-sync settings initialized successfully!`);
73
+ });
74
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/wix-sync/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const is_alive: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,23 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import Enquirer from "enquirer";
4
+ import { AppError } from "../error.js";
5
+ import { logger } from "../utils/logger.js";
6
+ import veloAPI from 'velo-sync/dist/velo/velo-api.js';
7
+ export const is_alive = Effect.gen(function* (_) {
8
+ const config = yield* Config;
9
+ const prompter = new Enquirer();
10
+ const veloSyncSettings = config.config.veloSyncSettings;
11
+ if (!veloSyncSettings)
12
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
13
+ logger.action(`Checking if the API for site ${veloSyncSettings.siteUrl} is alive...`);
14
+ const res = yield* Effect.tryPromise({
15
+ try: () => veloAPI.isAlive(veloSyncSettings),
16
+ catch: (e) => {
17
+ return new AppError({ cause: e, message: 'Error checking if the API is alive' });
18
+ }
19
+ });
20
+ logger.success(`API for site ${veloSyncSettings.siteUrl} is alive and working!`);
21
+ return;
22
+ });
23
+ //# sourceMappingURL=is-alive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-alive.js","sourceRoot":"","sources":["../../src/wix-sync/is-alive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,OAAO,MAAM,iCAAiC,CAAC;AAEtD,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,gCAAgC,gBAAgB,CAAC,OAAO,cAAc,CAAC,CAAC;IAEtF,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC5C,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oCAAoC,EAAE,CAAC,CAAC;QACrF,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,gBAAgB,gBAAgB,CAAC,OAAO,wBAAwB,CAAC,CAAC;IACjF,OAAM;AACV,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const wix_sync_alive: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,23 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import Enquirer from "enquirer";
4
+ import { AppError } from "../error.js";
5
+ import { logger } from "../utils/logger.js";
6
+ import veloAPI from 'velo-sync/dist/velo/velo-api.js';
7
+ export const wix_sync_alive = Effect.gen(function* (_) {
8
+ const config = yield* Config;
9
+ const prompter = new Enquirer();
10
+ const veloSyncSettings = config.config.veloSyncSettings;
11
+ if (!veloSyncSettings)
12
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
13
+ logger.action(`Checking if the API for site ${veloSyncSettings.siteUrl} is alive...`);
14
+ const res = yield* Effect.tryPromise({
15
+ try: () => veloAPI.isAlive(veloSyncSettings),
16
+ catch: (e) => {
17
+ return new AppError({ cause: e, message: 'Error checking if the API is alive' });
18
+ }
19
+ });
20
+ logger.success(`API for site ${veloSyncSettings.siteUrl} is alive and working!`);
21
+ return;
22
+ });
23
+ //# sourceMappingURL=is-allive%20copy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-allive copy.js","sourceRoot":"","sources":["../../src/wix-sync/is-allive copy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,OAAO,MAAM,iCAAiC,CAAC;AAEtD,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,gCAAgC,gBAAgB,CAAC,OAAO,cAAc,CAAC,CAAC;IAEtF,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC5C,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oCAAoC,EAAE,CAAC,CAAC;QACrF,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,gBAAgB,gBAAgB,CAAC,OAAO,wBAAwB,CAAC,CAAC;IACjF,OAAM;AACV,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const is_alive: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,23 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import Enquirer from "enquirer";
4
+ import { AppError } from "../error.js";
5
+ import { logger } from "../utils/logger.js";
6
+ import veloAPI from 'velo-sync/dist/velo/velo-api.js';
7
+ export const is_alive = Effect.gen(function* (_) {
8
+ const config = yield* Config;
9
+ const prompter = new Enquirer();
10
+ const veloSyncSettings = config.config.veloSyncSettings;
11
+ if (!veloSyncSettings)
12
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
13
+ logger.action(`Checking if the API for site ${veloSyncSettings.siteUrl} is alive...`);
14
+ const res = yield* Effect.tryPromise({
15
+ try: () => veloAPI.isAlive(veloSyncSettings),
16
+ catch: (e) => {
17
+ return new AppError({ cause: e, message: 'Error checking if the API is alive' });
18
+ }
19
+ });
20
+ logger.success(`API for site ${veloSyncSettings.siteUrl} is alive and working!`);
21
+ return;
22
+ });
23
+ //# sourceMappingURL=is-allive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-allive.js","sourceRoot":"","sources":["../../src/wix-sync/is-allive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,OAAO,MAAM,iCAAiC,CAAC;AAEtD,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,gCAAgC,gBAAgB,CAAC,OAAO,cAAc,CAAC,CAAC;IAEtF,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC5C,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oCAAoC,EAAE,CAAC,CAAC;QACrF,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,gBAAgB,gBAAgB,CAAC,OAAO,wBAAwB,CAAC,CAAC;IACjF,OAAM;AACV,CAAC,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const migrate: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,21 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ import { logger } from "../utils/logger.js";
5
+ import { migrateFileCacheTask } from "./client.js";
6
+ export const migrate = Effect.gen(function* (_) {
7
+ const config = yield* Config;
8
+ const veloSyncSettings = config.config.veloSyncSettings;
9
+ if (!veloSyncSettings)
10
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
11
+ logger.action(`Migrating file cache for site ${veloSyncSettings.siteUrl}...`);
12
+ const res = yield* Effect.tryPromise({
13
+ try: () => migrateFileCacheTask(),
14
+ catch: (e) => {
15
+ return new AppError({ cause: e, message: 'Error migrating file cache' });
16
+ }
17
+ });
18
+ logger.success(`File cache for site ${veloSyncSettings.siteUrl} migrated successfully!`);
19
+ return;
20
+ });
21
+ //# sourceMappingURL=migrate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/wix-sync/migrate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,iCAAiC,gBAAgB,CAAC,OAAO,KAAK,CAAC,CAAC;IAE9E,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,oBAAoB,EAAE;QACjC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC,CAAC;QAC7E,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,uBAAuB,gBAAgB,CAAC,OAAO,yBAAyB,CAAC,CAAC;IACzF,OAAM;AACV,CAAC,CAAC,CAAA"}
File without changes
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ // import chalk, { modifierNames } from "chalk";
3
+ // import readline from 'node:readline';
4
+ // import {createDataSync, LoggingStatistics, LoggerRejectsReporter} from 'velo-sync';
5
+ // import veloAPI from 'velo-sync/dist/velo/velo-api.js';
6
+ // import syncTask from 'velo-sync/dist/tasks/sync-task.js';
7
+ // // import { readConfig, saveConfig, VeloSyncConfig } from "./helpers.js";
8
+ // import optimist from 'optimist';
9
+ // import migrateFileCache from 'velo-sync/dist/tasks/migrate-files-cache-task.js';
10
+ // import { Effect, Schema } from "effect/index";
11
+ // import { Config } from "../config.js";
12
+ // import Enquirer from "enquirer";
13
+ // import { AppError } from "../error.js";
14
+ // function printUsage() {
15
+ // console.log('Usage: ');
16
+ // console.log('');
17
+ // console.log('Commands:');
18
+ // console.log(' init generates a config file for the import / export / sync process');
19
+ // console.log(' is-alive tests the config and the connection to the site');
20
+ // console.log(' sync runs the sync process');
21
+ // console.log(' import runs an import process');
22
+ // console.log(' migrate migrate existing nedb cache to sqlite cache (.upload-cache.db => .upload-cache.sqlite.db)');
23
+ // }
24
+ // function syncOrImportTask(importOnly: boolean) {
25
+ // let argv = optimist
26
+ // .usage(`Usage: $0 ${importOnly ? 'import' : 'sync'} -f <scv filename> -c <collection>`)
27
+ // .demand('f')
28
+ // .alias('f', 'filename')
29
+ // .describe('f', 'csv filename to import')
30
+ // .demand('c')
31
+ // .describe('c', 'the name of the collection to import into')
32
+ // .alias('c', 'collection')
33
+ // .demand('s')
34
+ // .describe('s', 'schema file describing the fields of the collection')
35
+ // .alias('s', 'schema')
36
+ // .describe('dry', 'dry-run that does not upload any data or files, and does not remove or update anything on the site')
37
+ // .alias('dry', 'dryrun')
38
+ // .parse(process.argv.slice(3));
39
+ // let filename = argv.filename;
40
+ // let collection = argv.collection;
41
+ // let schema = argv.schema;
42
+ // let dryrun = argv.dryrun;
43
+ // //@ts-ignore
44
+ // syncTask.default(filename, collection, schema, importOnly, dryrun);
45
+ // }
46
+ // // syncTask.default(filename, collection, schema, importOnly, dryrun);
47
+ // let siteUrl = await askQuestion(orange('what is the url of the site homepage? '));
48
+ // let secret = await askQuestion(orange('what is the velo-sync secret? '));
49
+ // rl.close();
50
+ // let config: VeloSyncConfig = { siteUrl, secret };
51
+ // await saveConfig(config, moduleSettings.veloConfigName);
52
+ // return console.log(chalk.green("🐕" + ' => config saved!'));
53
+ // })
54
+ // }
55
+ // if(moduleSettings.args.includes('-h') || moduleSettings.args.includes('help')) return printUsage();
56
+ // if(moduleSettings.args.includes('init')) {
57
+ // const rl = readline.createInterface({
58
+ // input: process.stdin,
59
+ // output: process.stdout,
60
+ // terminal: true
61
+ // });
62
+ // async function askQuestion(query: string):Promise<string> {
63
+ // return new Promise((resolve) => rl.question(query, (answer) => resolve(answer)));
64
+ // }
65
+ // console.log(chalk.yellow('hello to velo-sync init'));
66
+ // let siteUrl = await askQuestion(orange('what is the url of the site homepage? '));
67
+ // let secret = await askQuestion(orange('what is the velo-sync secret? '));
68
+ // rl.close();
69
+ // let config: VeloSyncConfig = { siteUrl, secret };
70
+ // await saveConfig(config, moduleSettings.veloConfigName);
71
+ // return console.log(chalk.green("🐕" + ' => config saved!'));
72
+ // }
73
+ // if(moduleSettings.args.includes('is-alive')) {
74
+ // try {
75
+ // let config = await readConfig(moduleSettings.veloConfigName);
76
+ // console.log("🐕" + green(` => checking if the API for site ${chalk.greenBright(config.siteUrl)} is alive...`));
77
+ // await veloAPI.isAlive(config);
78
+ // return console.log(chalk.green("🐕" + ` => API of site ${chalk.greenBright(config.siteUrl)} is working and alive!!!`));
79
+ // }
80
+ // catch (e) {
81
+ // if(e instanceof Error) {
82
+ // return console.log((`💩 ${red.underline.bold("=> Failed to check endpoint")} ${orange(e.message)}`));
83
+ // }
84
+ // }
85
+ // }
86
+ // if(moduleSettings.args.includes('sync')) {
87
+ // return syncOrImportTask(false);
88
+ // }
89
+ // if(moduleSettings.args.includes('import')) {
90
+ // return syncOrImportTask(true);
91
+ // }
92
+ // if(moduleSettings.args.includes('export')) {
93
+ // return console.log((`💩 ${red.underline.bold("=> Not implemented")}`));
94
+ // }
95
+ // if(moduleSettings.args.includes('migrate')) {
96
+ // //@ts-ignore
97
+ // migrateFileCache.default();
98
+ // }
99
+ // }
100
+ //# sourceMappingURL=sync-od.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-od.js","sourceRoot":"","sources":["../../src/wix-sync/sync-od.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,wCAAwC;AACxC,sFAAsF;AACtF,yDAAyD;AACzD,4DAA4D;AAC5D,4EAA4E;AAC5E,mCAAmC;AACnC,mFAAmF;AACnF,iDAAiD;AACjD,yCAAyC;AACzC,mCAAmC;AACnC,0CAA0C;AAC1C,0BAA0B;AAC1B,+BAA+B;AAC/B,uBAAuB;AACvB,gCAAgC;AAChC,qGAAqG;AACrG,sFAAsF;AACtF,4DAA4D;AAC5D,6DAA6D;AAC7D,gIAAgI;AAChI,IAAI;AAEJ,mDAAmD;AACnD,0BAA0B;AAC1B,kGAAkG;AAClG,uBAAuB;AACvB,kCAAkC;AAClC,mDAAmD;AACnD,uBAAuB;AACvB,sEAAsE;AACtE,oCAAoC;AACpC,uBAAuB;AACvB,gFAAgF;AAChF,gCAAgC;AAChC,iIAAiI;AACjI,kCAAkC;AAClC,yCAAyC;AACzC,oCAAoC;AACpC,wCAAwC;AACxC,gCAAgC;AAChC,gCAAgC;AAChC,mBAAmB;AACnB,0EAA0E;AAC1E,IAAI;AACJ,yEAAyE;AAEzE,qGAAqG;AACrG,oFAAoF;AACpF,sBAAsB;AACtB,4DAA4D;AAC5D,mEAAmE;AACnE,uEAAuE;AAEvE,WAAW;AACX,IAAI;AACJ,0GAA0G;AAC1G,iDAAiD;AACjD,gDAAgD;AAChD,oCAAoC;AACpC,sCAAsC;AACtC,6BAA6B;AAC7B,cAAc;AAEd,sEAAsE;AACtE,gGAAgG;AAChG,YAAY;AAEZ,gEAAgE;AAChE,6FAA6F;AAC7F,oFAAoF;AACpF,sBAAsB;AACtB,4DAA4D;AAC5D,mEAAmE;AACnE,uEAAuE;AACvE,KAAK;AAEL,qDAAqD;AACrD,gBAAgB;AAChB,4EAA4E;AAC5E,8HAA8H;AAC9H,6CAA6C;AAC7C,sIAAsI;AACtI,YAAY;AACZ,sBAAsB;AACtB,wCAAwC;AACxC,wHAAwH;AACxH,gBAAgB;AAChB,YAAY;AACZ,QAAQ;AACR,iDAAiD;AACjD,0CAA0C;AAC1C,QAAQ;AAER,mDAAmD;AACnD,yCAAyC;AACzC,QAAQ;AAER,mDAAmD;AACnD,kFAAkF;AAClF,QAAQ;AAER,oDAAoD;AACpD,uBAAuB;AACvB,sCAAsC;AACtC,QAAQ;AAER,IAAI"}
@@ -0,0 +1,4 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ export declare const sync: Effect.Effect<undefined, AppError, Config>;
@@ -0,0 +1,26 @@
1
+ import { Effect } from "effect/index";
2
+ import { Config } from "../config.js";
3
+ import { AppError } from "../error.js";
4
+ import { logger } from "../utils/logger.js";
5
+ import { runSyncTask } from "./client.js";
6
+ export const sync = Effect.gen(function* (_) {
7
+ const config = yield* Config;
8
+ const veloSyncSettings = config.config.veloSyncSettings;
9
+ if (!veloSyncSettings)
10
+ return yield* Effect.fail(new AppError({ message: 'Velo-sync settings not found', cause: new Error('Velo-sync settings not found') }));
11
+ logger.action(`Syncing data for site ${veloSyncSettings.siteUrl}...`);
12
+ let filename = config.config.veloSyncArguments?.data || '';
13
+ let collection = config.config.veloSyncArguments?.collection || '';
14
+ let schema = config.config.veloSyncArguments?.schema || '';
15
+ let dryrun = config.config.veloSyncArguments?.dry || false;
16
+ let importOnly = false;
17
+ const res = yield* Effect.tryPromise({
18
+ try: () => runSyncTask(filename, collection, schema, importOnly, dryrun),
19
+ catch: (e) => {
20
+ return new AppError({ cause: e, message: 'Error syncing data' });
21
+ }
22
+ });
23
+ logger.success(`Data for site ${veloSyncSettings.siteUrl} synced successfully!`);
24
+ return;
25
+ });
26
+ //# sourceMappingURL=sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/wix-sync/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC;IAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;IACxD,IAAI,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,EAAE,OAAO,EAAE,8BAA8B,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9J,MAAM,CAAC,MAAM,CAAC,yBAAyB,gBAAgB,CAAC,OAAO,KAAK,CAAC,CAAC;IACtE,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,IAAI,EAAE,CAAC;IAC3D,IAAI,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,UAAU,IAAI,EAAE,CAAC;IACnE,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,IAAI,EAAE,CAAC;IAC3D,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,GAAG,IAAI,KAAK,CAAC;IAC3D,IAAI,UAAU,GAAG,KAAK,CAAA;IACtB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QACjC,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC;QACxE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,OAAO,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;QACrE,CAAC;KACJ,CAAC,CAAA;IAEF,MAAM,CAAC,OAAO,CAAC,iBAAiB,gBAAgB,CAAC,OAAO,uBAAuB,CAAC,CAAC;IACjF,OAAM;AACV,CAAC,CAAC,CAAA"}