@memberjunction/cli 3.4.0 → 4.0.0

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 (184) hide show
  1. package/bin/dev.cmd +2 -2
  2. package/bin/dev.js +5 -6
  3. package/bin/run.cmd +3 -3
  4. package/bin/run.js +14 -5
  5. package/dist/commands/ai/actions/list.d.ts +1 -0
  6. package/dist/commands/ai/actions/list.d.ts.map +1 -0
  7. package/dist/commands/ai/actions/list.js +14 -19
  8. package/dist/commands/ai/actions/list.js.map +1 -0
  9. package/dist/commands/ai/actions/run.d.ts +2 -1
  10. package/dist/commands/ai/actions/run.d.ts.map +1 -0
  11. package/dist/commands/ai/actions/run.js +24 -29
  12. package/dist/commands/ai/actions/run.js.map +1 -0
  13. package/dist/commands/ai/agents/list.d.ts +1 -0
  14. package/dist/commands/ai/agents/list.d.ts.map +1 -0
  15. package/dist/commands/ai/agents/list.js +14 -19
  16. package/dist/commands/ai/agents/list.js.map +1 -0
  17. package/dist/commands/ai/agents/run.d.ts +2 -1
  18. package/dist/commands/ai/agents/run.d.ts.map +1 -0
  19. package/dist/commands/ai/agents/run.js +20 -25
  20. package/dist/commands/ai/agents/run.js.map +1 -0
  21. package/dist/commands/ai/audit/agent-run.d.ts +7 -6
  22. package/dist/commands/ai/audit/agent-run.d.ts.map +1 -0
  23. package/dist/commands/ai/audit/agent-run.js +35 -63
  24. package/dist/commands/ai/audit/agent-run.js.map +1 -0
  25. package/dist/commands/ai/audit/index.d.ts +1 -0
  26. package/dist/commands/ai/audit/index.d.ts.map +1 -0
  27. package/dist/commands/ai/audit/index.js +5 -7
  28. package/dist/commands/ai/audit/index.js.map +1 -0
  29. package/dist/commands/ai/index.d.ts +1 -0
  30. package/dist/commands/ai/index.d.ts.map +1 -0
  31. package/dist/commands/ai/index.js +5 -7
  32. package/dist/commands/ai/index.js.map +1 -0
  33. package/dist/commands/ai/prompts/list.d.ts +1 -0
  34. package/dist/commands/ai/prompts/list.d.ts.map +1 -0
  35. package/dist/commands/ai/prompts/list.js +18 -23
  36. package/dist/commands/ai/prompts/list.js.map +1 -0
  37. package/dist/commands/ai/prompts/run.d.ts +6 -5
  38. package/dist/commands/ai/prompts/run.d.ts.map +1 -0
  39. package/dist/commands/ai/prompts/run.js +22 -27
  40. package/dist/commands/ai/prompts/run.js.map +1 -0
  41. package/dist/commands/bump/index.d.ts +2 -1
  42. package/dist/commands/bump/index.d.ts.map +1 -0
  43. package/dist/commands/bump/index.js +24 -52
  44. package/dist/commands/bump/index.js.map +1 -0
  45. package/dist/commands/clean/index.d.ts +3 -2
  46. package/dist/commands/clean/index.d.ts.map +1 -0
  47. package/dist/commands/clean/index.js +16 -22
  48. package/dist/commands/clean/index.js.map +1 -0
  49. package/dist/commands/codegen/index.d.ts +3 -2
  50. package/dist/commands/codegen/index.d.ts.map +1 -0
  51. package/dist/commands/codegen/index.js +14 -17
  52. package/dist/commands/codegen/index.js.map +1 -0
  53. package/dist/commands/codegen/manifest.d.ts +5 -2
  54. package/dist/commands/codegen/manifest.d.ts.map +1 -0
  55. package/dist/commands/codegen/manifest.js +35 -24
  56. package/dist/commands/codegen/manifest.js.map +1 -0
  57. package/dist/commands/dbdoc/analyze.d.ts +2 -1
  58. package/dist/commands/dbdoc/analyze.d.ts.map +1 -0
  59. package/dist/commands/dbdoc/analyze.js +11 -36
  60. package/dist/commands/dbdoc/analyze.js.map +1 -0
  61. package/dist/commands/dbdoc/export-sample-queries.d.ts +2 -1
  62. package/dist/commands/dbdoc/export-sample-queries.d.ts.map +1 -0
  63. package/dist/commands/dbdoc/export-sample-queries.js +19 -44
  64. package/dist/commands/dbdoc/export-sample-queries.js.map +1 -0
  65. package/dist/commands/dbdoc/export.d.ts +3 -2
  66. package/dist/commands/dbdoc/export.d.ts.map +1 -0
  67. package/dist/commands/dbdoc/export.js +20 -45
  68. package/dist/commands/dbdoc/export.js.map +1 -0
  69. package/dist/commands/dbdoc/generate-queries.d.ts +4 -3
  70. package/dist/commands/dbdoc/generate-queries.d.ts.map +1 -0
  71. package/dist/commands/dbdoc/generate-queries.js +14 -39
  72. package/dist/commands/dbdoc/generate-queries.js.map +1 -0
  73. package/dist/commands/dbdoc/index.d.ts +1 -0
  74. package/dist/commands/dbdoc/index.d.ts.map +1 -0
  75. package/dist/commands/dbdoc/index.js +5 -7
  76. package/dist/commands/dbdoc/index.js.map +1 -0
  77. package/dist/commands/dbdoc/init.d.ts +1 -0
  78. package/dist/commands/dbdoc/init.d.ts.map +1 -0
  79. package/dist/commands/dbdoc/init.js +7 -32
  80. package/dist/commands/dbdoc/init.js.map +1 -0
  81. package/dist/commands/dbdoc/reset.d.ts +1 -0
  82. package/dist/commands/dbdoc/reset.d.ts.map +1 -0
  83. package/dist/commands/dbdoc/reset.js +10 -35
  84. package/dist/commands/dbdoc/reset.js.map +1 -0
  85. package/dist/commands/dbdoc/review.d.ts +10 -0
  86. package/dist/commands/dbdoc/review.js +81 -0
  87. package/dist/commands/dbdoc/status.d.ts +2 -1
  88. package/dist/commands/dbdoc/status.d.ts.map +1 -0
  89. package/dist/commands/dbdoc/status.js +10 -35
  90. package/dist/commands/dbdoc/status.js.map +1 -0
  91. package/dist/commands/install/index.d.ts +76 -75
  92. package/dist/commands/install/index.d.ts.map +1 -0
  93. package/dist/commands/install/index.js +81 -111
  94. package/dist/commands/install/index.js.map +1 -0
  95. package/dist/commands/migrate/index.d.ts +4 -3
  96. package/dist/commands/migrate/index.d.ts.map +1 -0
  97. package/dist/commands/migrate/index.js +22 -27
  98. package/dist/commands/migrate/index.js.map +1 -0
  99. package/dist/commands/querygen/export.d.ts +1 -0
  100. package/dist/commands/querygen/export.d.ts.map +1 -0
  101. package/dist/commands/querygen/export.js +15 -17
  102. package/dist/commands/querygen/export.js.map +1 -0
  103. package/dist/commands/querygen/generate.d.ts +8 -7
  104. package/dist/commands/querygen/generate.d.ts.map +1 -0
  105. package/dist/commands/querygen/generate.js +28 -30
  106. package/dist/commands/querygen/generate.js.map +1 -0
  107. package/dist/commands/querygen/validate.d.ts +1 -0
  108. package/dist/commands/querygen/validate.d.ts.map +1 -0
  109. package/dist/commands/querygen/validate.js +15 -17
  110. package/dist/commands/querygen/validate.js.map +1 -0
  111. package/dist/commands/sync/file-reset.d.ts +3 -2
  112. package/dist/commands/sync/file-reset.d.ts.map +1 -0
  113. package/dist/commands/sync/file-reset.js +36 -64
  114. package/dist/commands/sync/file-reset.js.map +1 -0
  115. package/dist/commands/sync/init.d.ts +1 -0
  116. package/dist/commands/sync/init.d.ts.map +1 -0
  117. package/dist/commands/sync/init.js +16 -21
  118. package/dist/commands/sync/init.js.map +1 -0
  119. package/dist/commands/sync/pull.d.ts +7 -6
  120. package/dist/commands/sync/pull.d.ts.map +1 -0
  121. package/dist/commands/sync/pull.js +46 -51
  122. package/dist/commands/sync/pull.js.map +1 -0
  123. package/dist/commands/sync/push.d.ts +4 -3
  124. package/dist/commands/sync/push.d.ts.map +1 -0
  125. package/dist/commands/sync/push.js +44 -49
  126. package/dist/commands/sync/push.js.map +1 -0
  127. package/dist/commands/sync/status.d.ts +4 -3
  128. package/dist/commands/sync/status.d.ts.map +1 -0
  129. package/dist/commands/sync/status.js +28 -33
  130. package/dist/commands/sync/status.js.map +1 -0
  131. package/dist/commands/sync/validate.d.ts +3 -2
  132. package/dist/commands/sync/validate.d.ts.map +1 -0
  133. package/dist/commands/sync/validate.js +31 -59
  134. package/dist/commands/sync/validate.js.map +1 -0
  135. package/dist/commands/sync/watch.d.ts +3 -2
  136. package/dist/commands/sync/watch.d.ts.map +1 -0
  137. package/dist/commands/sync/watch.js +34 -63
  138. package/dist/commands/sync/watch.js.map +1 -0
  139. package/dist/commands/test/compare.d.ts +6 -5
  140. package/dist/commands/test/compare.d.ts.map +1 -0
  141. package/dist/commands/test/compare.js +20 -22
  142. package/dist/commands/test/compare.js.map +1 -0
  143. package/dist/commands/test/history.d.ts +6 -5
  144. package/dist/commands/test/history.d.ts.map +1 -0
  145. package/dist/commands/test/history.js +17 -19
  146. package/dist/commands/test/history.js.map +1 -0
  147. package/dist/commands/test/index.d.ts +1 -0
  148. package/dist/commands/test/index.d.ts.map +1 -0
  149. package/dist/commands/test/index.js +6 -8
  150. package/dist/commands/test/index.js.map +1 -0
  151. package/dist/commands/test/list.d.ts +5 -4
  152. package/dist/commands/test/list.d.ts.map +1 -0
  153. package/dist/commands/test/list.js +18 -20
  154. package/dist/commands/test/list.js.map +1 -0
  155. package/dist/commands/test/run.d.ts +5 -4
  156. package/dist/commands/test/run.d.ts.map +1 -0
  157. package/dist/commands/test/run.js +19 -21
  158. package/dist/commands/test/run.js.map +1 -0
  159. package/dist/commands/test/suite.d.ts +4 -3
  160. package/dist/commands/test/suite.d.ts.map +1 -0
  161. package/dist/commands/test/suite.js +17 -19
  162. package/dist/commands/test/suite.js.map +1 -0
  163. package/dist/commands/test/validate.d.ts +4 -3
  164. package/dist/commands/test/validate.d.ts.map +1 -0
  165. package/dist/commands/test/validate.js +19 -21
  166. package/dist/commands/test/validate.js.map +1 -0
  167. package/dist/config.d.ts +53 -85
  168. package/dist/config.d.ts.map +1 -0
  169. package/dist/config.js +54 -61
  170. package/dist/config.js.map +1 -0
  171. package/dist/hooks/init.d.ts +1 -0
  172. package/dist/hooks/init.d.ts.map +1 -0
  173. package/dist/hooks/init.js +5 -29
  174. package/dist/hooks/init.js.map +1 -0
  175. package/dist/hooks/prerun.d.ts +1 -0
  176. package/dist/hooks/prerun.d.ts.map +1 -0
  177. package/dist/hooks/prerun.js +4 -8
  178. package/dist/hooks/prerun.js.map +1 -0
  179. package/dist/index.d.ts +1 -0
  180. package/dist/index.d.ts.map +1 -0
  181. package/dist/index.js +2 -5
  182. package/dist/index.js.map +1 -0
  183. package/package.json +32 -30
  184. package/oclif.manifest.json +0 -2580
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-reset.js","sourceRoot":"","sources":["../../../src/commands/sync/file-reset.ts"],"names":[],"mappings":"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"}
@@ -4,3 +4,4 @@ export default class Init extends Command {
4
4
  static examples: string[];
5
5
  run(): Promise<void>;
6
6
  }
7
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAKtC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAAyD;IAE3E,MAAM,CAAC,QAAQ,WAEb;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAoG3B"}
@@ -1,28 +1,23 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const core_1 = require("@oclif/core");
7
- const prompts_1 = require("@inquirer/prompts");
8
- const ora_classic_1 = __importDefault(require("ora-classic"));
9
- const metadata_sync_1 = require("@memberjunction/metadata-sync");
10
- class Init extends core_1.Command {
11
- static description = 'Initialize a directory for metadata synchronization';
12
- static examples = [
1
+ import { Command } from '@oclif/core';
2
+ import { input, select } from '@inquirer/prompts';
3
+ import ora from 'ora-classic';
4
+ import { InitService } from '@memberjunction/metadata-sync';
5
+ export default class Init extends Command {
6
+ static { this.description = 'Initialize a directory for metadata synchronization'; }
7
+ static { this.examples = [
13
8
  `<%= config.bin %> <%= command.id %>`,
14
- ];
9
+ ]; }
15
10
  async run() {
16
- const spinner = (0, ora_classic_1.default)();
11
+ const spinner = ora();
17
12
  try {
18
13
  // Check if already initialized
19
- const initService = new metadata_sync_1.InitService();
14
+ const initService = new InitService();
20
15
  // Build options from user input
21
16
  const options = {};
22
17
  // Check for existing configuration
23
18
  try {
24
19
  // If .mj-sync.json exists, ask about overwrite
25
- const overwrite = await (0, prompts_1.select)({
20
+ const overwrite = await select({
26
21
  message: 'Directory already initialized. Overwrite configuration?',
27
22
  choices: [
28
23
  { name: 'Yes', value: true },
@@ -39,7 +34,7 @@ class Init extends core_1.Command {
39
34
  // File doesn't exist, proceed normally
40
35
  }
41
36
  // Ask if they want to set up an entity directory
42
- const setupEntity = await (0, prompts_1.select)({
37
+ const setupEntity = await select({
43
38
  message: 'Would you like to set up an entity directory now?',
44
39
  choices: [
45
40
  { name: 'Yes - AI Prompts', value: 'ai-prompts' },
@@ -49,10 +44,10 @@ class Init extends core_1.Command {
49
44
  });
50
45
  options.setupEntity = setupEntity;
51
46
  if (setupEntity === 'other') {
52
- options.entityName = await (0, prompts_1.input)({
47
+ options.entityName = await input({
53
48
  message: 'Enter the entity name (e.g., "Templates", "AI Models"):'
54
49
  });
55
- options.dirName = await (0, prompts_1.input)({
50
+ options.dirName = await input({
56
51
  message: 'Enter the directory name:',
57
52
  default: options.entityName.toLowerCase().replace(/\s+/g, '-')
58
53
  });
@@ -89,7 +84,7 @@ class Init extends core_1.Command {
89
84
  }
90
85
  // Check for error hints
91
86
  if (error instanceof Error) {
92
- const hint = new metadata_sync_1.InitService().getErrorHint(error);
87
+ const hint = new InitService().getErrorHint(error);
93
88
  if (hint) {
94
89
  this.log(`\nHint: ${hint}`);
95
90
  }
@@ -98,4 +93,4 @@ class Init extends core_1.Command {
98
93
  }
99
94
  }
100
95
  }
101
- exports.default = Init;
96
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/sync/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAe,MAAM,+BAA+B,CAAC;AAEzE,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;aAChC,gBAAW,GAAG,qDAAqD,CAAC;aAEpE,aAAQ,GAAG;QAChB,qCAAqC;KACtC,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC;QAEtB,IAAI,CAAC;YACH,+BAA+B;YAC/B,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;YAEtC,gCAAgC;YAChC,MAAM,OAAO,GAAgB,EAAE,CAAC;YAEhC,mCAAmC;YACnC,IAAI,CAAC;gBACH,+CAA+C;gBAC/C,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC;oBAC7B,OAAO,EAAE,yDAAyD;oBAClE,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;wBAC5B,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE;qBAC7B;iBACF,CAAC,CAAC;gBAEH,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;oBACrC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,uCAAuC;YACzC,CAAC;YAED,iDAAiD;YACjD,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC;gBAC/B,OAAO,EAAE,mDAAmD;gBAC5D,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,YAAY,EAAE;oBACjD,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,OAAO,EAAE;oBAC9C,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE;iBACjD;aACF,CAAC,CAAC;YAEH,OAAO,CAAC,WAAW,GAAG,WAA4C,CAAC;YAEnE,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;gBAC5B,OAAO,CAAC,UAAU,GAAG,MAAM,KAAK,CAAC;oBAC/B,OAAO,EAAE,yDAAyD;iBACnE,CAAC,CAAC;gBAEH,OAAO,CAAC,OAAO,GAAG,MAAM,KAAK,CAAC;oBAC5B,OAAO,EAAE,2BAA2B;oBACpC,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;iBAC/D,CAAC,CAAC;YACL,CAAC;YAED,4BAA4B;YAC5B,MAAM,WAAW,CAAC,UAAU,CAAC,OAAO,EAAE;gBACpC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;oBACtB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC;gBACD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;oBACrB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;oBACnB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxB,CAAC;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAEzC,kBAAkB;YAClB,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC;YAC7C,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC1B,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAChC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAEtC,yBAAyB;YACzB,IAAI,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YACnD,IAAI,CAAC,GAAG,CAAC,eAAe,KAAK,EAAE,WAAW,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,GAAG,CAAC,kBAAkB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAErF,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC1C,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;gBAC3B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;YAED,wBAAwB;YACxB,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,IAAI,IAAI,EAAE,CAAC;oBACT,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,KAAc,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC"}
@@ -4,21 +4,22 @@ export default class Pull extends Command {
4
4
  static examples: string[];
5
5
  static flags: {
6
6
  entity: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
7
- filter: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
7
+ filter: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
8
8
  'dry-run': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
- 'multi-file': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ 'multi-file': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
10
10
  verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
11
  'no-validate': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
12
  'update-existing': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
13
13
  'create-new': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
14
  'backup-before-update': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
15
  'merge-strategy': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
16
- 'backup-directory': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
17
- 'preserve-fields': import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
18
- 'exclude-fields': import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
19
- 'target-dir': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
16
+ 'backup-directory': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
17
+ 'preserve-fields': import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
18
+ 'exclude-fields': import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
19
+ 'target-dir': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
20
20
  };
21
21
  run(): Promise<void>;
22
22
  private findEntityDirectories;
23
23
  private findAllEntityDirectoriesRecursive;
24
24
  }
25
+ //# sourceMappingURL=pull.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/pull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAqB7C,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAAgD;IAElE,MAAM,CAAC,QAAQ,WAOb;IAEF,MAAM,CAAC,KAAK;;;;;;;;;;;;;;;MAmBV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAgMZ,qBAAqB;IA2BnC,OAAO,CAAC,iCAAiC;CAwB1C"}
@@ -1,60 +1,57 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const core_1 = require("@oclif/core");
7
- const prompts_1 = require("@inquirer/prompts");
8
- const ora_classic_1 = __importDefault(require("ora-classic"));
9
- const chalk_1 = __importDefault(require("chalk"));
10
- const metadata_sync_1 = require("@memberjunction/metadata-sync");
11
- class Pull extends core_1.Command {
12
- static description = 'Pull metadata from database to local files';
13
- static examples = [
1
+ import { Command, Flags } from '@oclif/core';
2
+ import { select } from '@inquirer/prompts';
3
+ import ora from 'ora-classic';
4
+ import chalk from 'chalk';
5
+ import fs from 'fs';
6
+ import path from 'path';
7
+ import { PullService, ValidationService, FormattingService, loadMJConfig, initializeProvider, getSyncEngine, getSystemUser, resetSyncEngine, configManager, loadEntityConfig, FileBackupManager } from '@memberjunction/metadata-sync';
8
+ export default class Pull extends Command {
9
+ static { this.description = 'Pull metadata from database to local files'; }
10
+ static { this.examples = [
14
11
  `<%= config.bin %> <%= command.id %> --entity="AI Prompts"`,
15
12
  `<%= config.bin %> <%= command.id %> --entity="AI Prompts" --filter="CategoryID='customer-service-id'"`,
16
13
  `<%= config.bin %> <%= command.id %> --entity="AI Agents" --merge-strategy=overwrite`,
17
14
  `<%= config.bin %> <%= command.id %> --entity="Actions" --target-dir=./custom-actions --no-validate`,
18
15
  `<%= config.bin %> <%= command.id %> --entity="Templates" --dry-run --verbose`,
19
16
  `<%= config.bin %> <%= command.id %> --entity="AI Prompts" --exclude-fields=InternalNotes,DebugInfo`,
20
- ];
21
- static flags = {
22
- entity: core_1.Flags.string({ description: 'Entity name to pull', required: true }),
23
- filter: core_1.Flags.string({ description: 'Additional filter for pulling specific records' }),
24
- 'dry-run': core_1.Flags.boolean({ description: 'Show what would be pulled without actually pulling' }),
25
- 'multi-file': core_1.Flags.string({ description: 'Create a single file with multiple records (provide filename)' }),
26
- verbose: core_1.Flags.boolean({ char: 'v', description: 'Show detailed output' }),
27
- 'no-validate': core_1.Flags.boolean({ description: 'Skip validation before pull' }),
28
- 'update-existing': core_1.Flags.boolean({ description: 'Update existing records during pull', default: true }),
29
- 'create-new': core_1.Flags.boolean({ description: 'Create new files for records not found locally', default: true }),
30
- 'backup-before-update': core_1.Flags.boolean({ description: 'Create backups before updating files', default: true }),
31
- 'merge-strategy': core_1.Flags.string({
17
+ ]; }
18
+ static { this.flags = {
19
+ entity: Flags.string({ description: 'Entity name to pull', required: true }),
20
+ filter: Flags.string({ description: 'Additional filter for pulling specific records' }),
21
+ 'dry-run': Flags.boolean({ description: 'Show what would be pulled without actually pulling' }),
22
+ 'multi-file': Flags.string({ description: 'Create a single file with multiple records (provide filename)' }),
23
+ verbose: Flags.boolean({ char: 'v', description: 'Show detailed output' }),
24
+ 'no-validate': Flags.boolean({ description: 'Skip validation before pull' }),
25
+ 'update-existing': Flags.boolean({ description: 'Update existing records during pull', default: true }),
26
+ 'create-new': Flags.boolean({ description: 'Create new files for records not found locally', default: true }),
27
+ 'backup-before-update': Flags.boolean({ description: 'Create backups before updating files', default: true }),
28
+ 'merge-strategy': Flags.string({
32
29
  description: 'Merge strategy for updates',
33
30
  options: ['merge', 'overwrite', 'skip'],
34
31
  default: 'merge'
35
32
  }),
36
- 'backup-directory': core_1.Flags.string({ description: 'Custom backup directory (default: .backups)' }),
37
- 'preserve-fields': core_1.Flags.string({ description: 'Comma-separated list of fields to preserve during updates', multiple: true }),
38
- 'exclude-fields': core_1.Flags.string({ description: 'Comma-separated list of fields to exclude from pull', multiple: true }),
39
- 'target-dir': core_1.Flags.string({ description: 'Specific target directory (overrides auto-discovery)' })
40
- };
33
+ 'backup-directory': Flags.string({ description: 'Custom backup directory (default: .backups)' }),
34
+ 'preserve-fields': Flags.string({ description: 'Comma-separated list of fields to preserve during updates', multiple: true }),
35
+ 'exclude-fields': Flags.string({ description: 'Comma-separated list of fields to exclude from pull', multiple: true }),
36
+ 'target-dir': Flags.string({ description: 'Specific target directory (overrides auto-discovery)' })
37
+ }; }
41
38
  async run() {
42
39
  const { flags } = await this.parse(Pull);
43
- const spinner = (0, ora_classic_1.default)();
40
+ const spinner = ora();
44
41
  let backupManager = null;
45
42
  try {
46
43
  // Load MJ config first
47
44
  spinner.start('Loading configuration');
48
- const mjConfig = (0, metadata_sync_1.loadMJConfig)();
45
+ const mjConfig = loadMJConfig();
49
46
  if (!mjConfig) {
50
47
  this.error('No mj.config.cjs found in current directory or parent directories');
51
48
  }
52
49
  // Stop spinner before provider initialization
53
50
  spinner.stop();
54
51
  // Initialize data provider
55
- await (0, metadata_sync_1.initializeProvider)(mjConfig);
52
+ await initializeProvider(mjConfig);
56
53
  // Get singleton sync engine
57
- const syncEngine = await (0, metadata_sync_1.getSyncEngine)((0, metadata_sync_1.getSystemUser)());
54
+ const syncEngine = await getSyncEngine(getSystemUser());
58
55
  // Show success after initialization
59
56
  if (flags.verbose) {
60
57
  spinner.succeed('Configuration and metadata loaded');
@@ -74,7 +71,7 @@ class Pull extends core_1.Command {
74
71
  targetDir = entityDirectories[0];
75
72
  }
76
73
  else {
77
- targetDir = await (0, prompts_1.select)({
74
+ targetDir = await select({
78
75
  message: `Multiple directories found for entity "${flags.entity}". Which one to use?`,
79
76
  choices: entityDirectories.map(dir => ({ name: dir, value: dir }))
80
77
  });
@@ -83,8 +80,8 @@ class Pull extends core_1.Command {
83
80
  // Run validation on target directory unless disabled
84
81
  if (!flags['no-validate']) {
85
82
  spinner.start('Validating target directory...');
86
- const validator = new metadata_sync_1.ValidationService({ verbose: flags.verbose });
87
- const formatter = new metadata_sync_1.FormattingService();
83
+ const validator = new ValidationService({ verbose: flags.verbose });
84
+ const formatter = new FormattingService();
88
85
  const validationResult = await validator.validateDirectory(targetDir);
89
86
  spinner.stop();
90
87
  if (!validationResult.isValid || validationResult.warnings.length > 0) {
@@ -92,7 +89,7 @@ class Pull extends core_1.Command {
92
89
  this.log('\n' + formatter.formatValidationResult(validationResult, flags.verbose));
93
90
  if (!validationResult.isValid) {
94
91
  // Ask for confirmation
95
- const shouldContinue = await (0, prompts_1.select)({
92
+ const shouldContinue = await select({
96
93
  message: 'Validation failed with errors. Do you want to continue anyway?',
97
94
  choices: [
98
95
  { name: 'No, fix the errors first', value: false },
@@ -106,16 +103,16 @@ class Pull extends core_1.Command {
106
103
  }
107
104
  }
108
105
  else {
109
- this.log(chalk_1.default.green('✓ Validation passed'));
106
+ this.log(chalk.green('✓ Validation passed'));
110
107
  }
111
108
  }
112
109
  // Initialize backup manager if backups are enabled
113
110
  if (flags['backup-before-update']) {
114
- backupManager = new metadata_sync_1.FileBackupManager();
111
+ backupManager = new FileBackupManager();
115
112
  await backupManager.initialize();
116
113
  }
117
114
  // Create pull service and execute
118
- const pullService = new metadata_sync_1.PullService(syncEngine, (0, metadata_sync_1.getSystemUser)());
115
+ const pullService = new PullService(syncEngine, getSystemUser());
119
116
  // Build pull options - only include CLI flags that were explicitly provided
120
117
  const pullOptions = {
121
118
  entity: flags.entity,
@@ -164,7 +161,7 @@ class Pull extends core_1.Command {
164
161
  if (backupManager && !flags['dry-run']) {
165
162
  await backupManager.cleanup();
166
163
  if (flags.verbose) {
167
- this.log(chalk_1.default.green('✓ Temporary backup files cleaned up'));
164
+ this.log(chalk.green('✓ Temporary backup files cleaned up'));
168
165
  }
169
166
  }
170
167
  // Clean up persistent backup files created by PullService
@@ -173,7 +170,7 @@ class Pull extends core_1.Command {
173
170
  const backupCount = pullService.getCreatedBackupFiles().length;
174
171
  await pullService.cleanupBackupFiles();
175
172
  if (flags.verbose && backupCount > 0) {
176
- this.log(chalk_1.default.green(`✓ Cleaned up ${backupCount} persistent backup files`));
173
+ this.log(chalk.green(`✓ Cleaned up ${backupCount} persistent backup files`));
177
174
  }
178
175
  }
179
176
  catch (cleanupError) {
@@ -191,7 +188,7 @@ class Pull extends core_1.Command {
191
188
  try {
192
189
  await backupManager.rollback();
193
190
  if (flags.verbose) {
194
- this.log(chalk_1.default.yellow('↩️ Backup files restored'));
191
+ this.log(chalk.yellow('↩️ Backup files restored'));
195
192
  }
196
193
  }
197
194
  catch (rollbackError) {
@@ -208,26 +205,26 @@ class Pull extends core_1.Command {
208
205
  }
209
206
  // Context information
210
207
  this.log(`\nContext:`);
211
- this.log(`- Working directory: ${metadata_sync_1.configManager.getOriginalCwd()}`);
208
+ this.log(`- Working directory: ${configManager.getOriginalCwd()}`);
212
209
  this.log(`- Entity: ${flags.entity || 'not specified'}`);
213
210
  this.log(`- Filter: ${flags.filter || 'none'}`);
214
211
  this.error(error);
215
212
  }
216
213
  finally {
217
214
  // Reset singletons
218
- (0, metadata_sync_1.resetSyncEngine)();
215
+ resetSyncEngine();
219
216
  }
220
217
  }
221
218
  async findEntityDirectories(entityName) {
222
219
  try {
223
- const workingDir = metadata_sync_1.configManager.getOriginalCwd();
220
+ const workingDir = configManager.getOriginalCwd();
224
221
  // Search recursively for all directories with .mj-sync.json files
225
222
  const allDirs = this.findAllEntityDirectoriesRecursive(workingDir);
226
223
  // Filter directories that match the requested entity
227
224
  const entityDirs = [];
228
225
  for (const dir of allDirs) {
229
226
  try {
230
- const config = await (0, metadata_sync_1.loadEntityConfig)(dir);
227
+ const config = await loadEntityConfig(dir);
231
228
  if (config && config.entity === entityName) {
232
229
  entityDirs.push(dir);
233
230
  }
@@ -243,8 +240,6 @@ class Pull extends core_1.Command {
243
240
  }
244
241
  }
245
242
  findAllEntityDirectoriesRecursive(dir) {
246
- const fs = require('fs');
247
- const path = require('path');
248
243
  const directories = [];
249
244
  try {
250
245
  // Check if current directory has .mj-sync.json
@@ -267,4 +262,4 @@ class Pull extends core_1.Command {
267
262
  return directories;
268
263
  }
269
264
  }
270
- exports.default = Pull;
265
+ //# sourceMappingURL=pull.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../src/commands/sync/pull.ts"],"names":[],"mappings":"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"}
@@ -3,14 +3,15 @@ export default class Push extends Command {
3
3
  static description: string;
4
4
  static examples: string[];
5
5
  static flags: {
6
- dir: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
6
+ dir: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
7
7
  'dry-run': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
8
8
  ci: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
9
  verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
10
10
  'no-validate': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
11
  'parallel-batch-size': import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
12
- include: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
13
- exclude: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
12
+ include: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
13
+ exclude: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
14
14
  };
15
15
  run(): Promise<void>;
16
16
  }
17
+ //# sourceMappingURL=push.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../src/commands/sync/push.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAkB7C,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAA6C;IAE/D,MAAM,CAAC,QAAQ,WAKb;IAEF,MAAM,CAAC,KAAK;;;;;;;;;MAoBV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAmN3B"}
@@ -1,63 +1,58 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const core_1 = require("@oclif/core");
7
- const prompts_1 = require("@inquirer/prompts");
8
- const ora_classic_1 = __importDefault(require("ora-classic"));
9
- const chalk_1 = __importDefault(require("chalk"));
10
- const metadata_sync_1 = require("@memberjunction/metadata-sync");
11
- const path_1 = __importDefault(require("path"));
12
- class Push extends core_1.Command {
13
- static description = 'Push local file changes to the database';
14
- static examples = [
1
+ import { Command, Flags } from '@oclif/core';
2
+ import { confirm } from '@inquirer/prompts';
3
+ import ora from 'ora-classic';
4
+ import chalk from 'chalk';
5
+ import { PushService, ValidationService, FormattingService, loadMJConfig, loadSyncConfig, initializeProvider, getSyncEngine, getSystemUser, resetSyncEngine, configManager, } from '@memberjunction/metadata-sync';
6
+ import path from 'path';
7
+ export default class Push extends Command {
8
+ static { this.description = 'Push local file changes to the database'; }
9
+ static { this.examples = [
15
10
  `<%= config.bin %> <%= command.id %>`,
16
11
  `<%= config.bin %> <%= command.id %> --dry-run`,
17
12
  `<%= config.bin %> <%= command.id %> --dir="ai-prompts"`,
18
13
  `<%= config.bin %> <%= command.id %> --ci`,
19
- ];
20
- static flags = {
21
- dir: core_1.Flags.string({ description: 'Specific entity directory to push' }),
22
- 'dry-run': core_1.Flags.boolean({ description: 'Show what would be pushed without actually pushing' }),
23
- ci: core_1.Flags.boolean({ description: 'CI mode - no prompts, fail on issues' }),
24
- verbose: core_1.Flags.boolean({ char: 'v', description: 'Show detailed field-level output' }),
25
- 'no-validate': core_1.Flags.boolean({ description: 'Skip validation before push' }),
26
- 'parallel-batch-size': core_1.Flags.integer({
14
+ ]; }
15
+ static { this.flags = {
16
+ dir: Flags.string({ description: 'Specific entity directory to push' }),
17
+ 'dry-run': Flags.boolean({ description: 'Show what would be pushed without actually pushing' }),
18
+ ci: Flags.boolean({ description: 'CI mode - no prompts, fail on issues' }),
19
+ verbose: Flags.boolean({ char: 'v', description: 'Show detailed field-level output' }),
20
+ 'no-validate': Flags.boolean({ description: 'Skip validation before push' }),
21
+ 'parallel-batch-size': Flags.integer({
27
22
  description: 'Number of records to process in parallel (default: 10)',
28
23
  default: 10,
29
24
  min: 1,
30
25
  max: 50
31
26
  }),
32
- include: core_1.Flags.string({
27
+ include: Flags.string({
33
28
  description: 'Only process these directories (comma-separated, supports patterns)',
34
29
  multiple: false
35
30
  }),
36
- exclude: core_1.Flags.string({
31
+ exclude: Flags.string({
37
32
  description: 'Skip these directories (comma-separated, supports patterns)',
38
33
  multiple: false
39
34
  }),
40
- };
35
+ }; }
41
36
  async run() {
42
37
  const { flags } = await this.parse(Push);
43
- const spinner = (0, ora_classic_1.default)();
38
+ const spinner = ora();
44
39
  const startTime = Date.now();
45
40
  try {
46
41
  // Load configurations
47
42
  spinner.start('Loading configuration');
48
- const mjConfig = (0, metadata_sync_1.loadMJConfig)();
43
+ const mjConfig = loadMJConfig();
49
44
  if (!mjConfig) {
50
45
  this.error('No mj.config.cjs found in current directory or parent directories');
51
46
  }
52
47
  // Load sync config (currently only used internally by PushService)
53
- const syncConfigDir = flags.dir ? path_1.default.resolve(metadata_sync_1.configManager.getOriginalCwd(), flags.dir) : metadata_sync_1.configManager.getOriginalCwd();
54
- await (0, metadata_sync_1.loadSyncConfig)(syncConfigDir);
48
+ const syncConfigDir = flags.dir ? path.resolve(configManager.getOriginalCwd(), flags.dir) : configManager.getOriginalCwd();
49
+ await loadSyncConfig(syncConfigDir);
55
50
  // Stop spinner before provider initialization
56
51
  spinner.stop();
57
52
  // Initialize data provider
58
- await (0, metadata_sync_1.initializeProvider)(mjConfig);
53
+ await initializeProvider(mjConfig);
59
54
  // Initialize sync engine
60
- const syncEngine = await (0, metadata_sync_1.getSyncEngine)((0, metadata_sync_1.getSystemUser)());
55
+ const syncEngine = await getSyncEngine(getSystemUser());
61
56
  // Show success after initialization
62
57
  if (flags.verbose) {
63
58
  spinner.succeed('Configuration and metadata loaded');
@@ -71,13 +66,13 @@ class Push extends core_1.Command {
71
66
  // Run validation unless disabled
72
67
  if (!flags['no-validate']) {
73
68
  spinner.start('Validating metadata...');
74
- const validator = new metadata_sync_1.ValidationService({
69
+ const validator = new ValidationService({
75
70
  verbose: flags.verbose,
76
71
  include: includeFilter,
77
72
  exclude: excludeFilter
78
73
  });
79
- const formatter = new metadata_sync_1.FormattingService();
80
- const targetDir = flags.dir ? path_1.default.resolve(metadata_sync_1.configManager.getOriginalCwd(), flags.dir) : metadata_sync_1.configManager.getOriginalCwd();
74
+ const formatter = new FormattingService();
75
+ const targetDir = flags.dir ? path.resolve(configManager.getOriginalCwd(), flags.dir) : configManager.getOriginalCwd();
81
76
  const validationResult = await validator.validateDirectory(targetDir);
82
77
  spinner.stop();
83
78
  if (!validationResult.isValid || validationResult.warnings.length > 0) {
@@ -89,23 +84,23 @@ class Push extends core_1.Command {
89
84
  this.error('Validation failed. Cannot proceed with push.');
90
85
  }
91
86
  // Otherwise, ask for confirmation
92
- const shouldContinue = await (0, prompts_1.confirm)({
87
+ const shouldContinue = await confirm({
93
88
  message: 'Validation failed with errors. Do you want to continue anyway?',
94
89
  default: false,
95
90
  });
96
91
  if (!shouldContinue) {
97
- this.log(chalk_1.default.yellow('\n⚠️ Push cancelled due to validation errors.'));
92
+ this.log(chalk.yellow('\n⚠️ Push cancelled due to validation errors.'));
98
93
  // Exit cleanly without throwing an error
99
94
  return;
100
95
  }
101
96
  }
102
97
  }
103
98
  else {
104
- this.log(chalk_1.default.green('✓ Validation passed'));
99
+ this.log(chalk.green('✓ Validation passed'));
105
100
  }
106
101
  }
107
102
  // Create push service and execute
108
- const pushService = new metadata_sync_1.PushService(syncEngine, (0, metadata_sync_1.getSystemUser)());
103
+ const pushService = new PushService(syncEngine, getSystemUser());
109
104
  const result = await pushService.push({
110
105
  dir: flags.dir,
111
106
  dryRun: flags['dry-run'],
@@ -148,7 +143,7 @@ class Push extends core_1.Command {
148
143
  const isUserFriendly = userFriendlyPatterns.some(pattern => message.includes(pattern));
149
144
  if (isUserFriendly) {
150
145
  // Log as a styled warning without stack trace
151
- this.log(chalk_1.default.yellow(message));
146
+ this.log(chalk.yellow(message));
152
147
  }
153
148
  else {
154
149
  // Use standard warn for unexpected warnings that need debugging info
@@ -162,12 +157,12 @@ class Push extends core_1.Command {
162
157
  if (flags.ci) {
163
158
  return true; // Always confirm in CI mode
164
159
  }
165
- return await (0, prompts_1.confirm)({ message });
160
+ return await confirm({ message });
166
161
  },
167
162
  });
168
163
  // Show summary
169
164
  const endTime = Date.now();
170
- const formatter = new metadata_sync_1.FormattingService();
165
+ const formatter = new FormattingService();
171
166
  const summary = formatter.formatSyncSummary('push', {
172
167
  created: result.created,
173
168
  updated: result.updated,
@@ -184,7 +179,7 @@ class Push extends core_1.Command {
184
179
  if (flags.ci) {
185
180
  this.error('Push failed with errors in CI mode');
186
181
  }
187
- const shouldContinue = await (0, prompts_1.confirm)({
182
+ const shouldContinue = await confirm({
188
183
  message: 'Push completed with errors. Do you want to commit the successful changes?',
189
184
  default: false,
190
185
  });
@@ -194,7 +189,7 @@ class Push extends core_1.Command {
194
189
  }
195
190
  // Show warnings summary
196
191
  if (result.warnings.length > 0) {
197
- this.log(chalk_1.default.yellow(`\n⚠️ ${result.warnings.length} warning${result.warnings.length > 1 ? 's' : ''} during push`));
192
+ this.log(chalk.yellow(`\n⚠️ ${result.warnings.length} warning${result.warnings.length > 1 ? 's' : ''} during push`));
198
193
  if (flags.verbose) {
199
194
  result.warnings.forEach((warning) => this.log(` - ${warning}`));
200
195
  }
@@ -202,13 +197,13 @@ class Push extends core_1.Command {
202
197
  // Show final status
203
198
  if (!flags['dry-run']) {
204
199
  if (result.errors === 0) {
205
- this.log(chalk_1.default.green('\n✅ Push completed successfully'));
200
+ this.log(chalk.green('\n✅ Push completed successfully'));
206
201
  }
207
202
  else {
208
- this.log(chalk_1.default.yellow('\n⚠️ Push completed with errors'));
203
+ this.log(chalk.yellow('\n⚠️ Push completed with errors'));
209
204
  }
210
205
  if (result.sqlLogPath) {
211
- this.log(`\n📄 SQL log saved to: ${path_1.default.relative(process.cwd(), result.sqlLogPath)}`);
206
+ this.log(`\n📄 SQL log saved to: ${path.relative(process.cwd(), result.sqlLogPath)}`);
212
207
  }
213
208
  }
214
209
  }
@@ -216,14 +211,14 @@ class Push extends core_1.Command {
216
211
  spinner.fail('Push failed');
217
212
  // Show concise error message without duplicate stack traces
218
213
  const errorMessage = error instanceof Error ? error.message : String(error);
219
- this.log(chalk_1.default.red(`\n❌ Error: ${errorMessage}\n`));
214
+ this.log(chalk.red(`\n❌ Error: ${errorMessage}\n`));
220
215
  // Exit with error code but don't show stack trace again (already logged by handlers)
221
216
  this.exit(1);
222
217
  }
223
218
  finally {
224
219
  // Reset singletons
225
- (0, metadata_sync_1.resetSyncEngine)();
220
+ resetSyncEngine();
226
221
  }
227
222
  }
228
223
  }
229
- exports.default = Push;
224
+ //# sourceMappingURL=push.js.map