@sembix/cli 1.3.0 → 1.4.1

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 (204) hide show
  1. package/COMMANDS.md +1522 -0
  2. package/QUICKSTART.md +829 -0
  3. package/README.md +1949 -285
  4. package/USAGE-EXAMPLES.md +872 -0
  5. package/dist/commands/configure.d.ts.map +1 -1
  6. package/dist/commands/configure.js +172 -2
  7. package/dist/commands/configure.js.map +1 -1
  8. package/dist/commands/index.d.ts +10 -0
  9. package/dist/commands/index.d.ts.map +1 -0
  10. package/dist/commands/index.js +11 -0
  11. package/dist/commands/index.js.map +1 -0
  12. package/dist/commands/login.d.ts +19 -0
  13. package/dist/commands/login.d.ts.map +1 -0
  14. package/dist/commands/login.js +118 -0
  15. package/dist/commands/login.js.map +1 -0
  16. package/dist/commands/logout.d.ts +21 -0
  17. package/dist/commands/logout.d.ts.map +1 -0
  18. package/dist/commands/logout.js +66 -0
  19. package/dist/commands/logout.js.map +1 -0
  20. package/dist/commands/profile-project.d.ts +14 -0
  21. package/dist/commands/profile-project.d.ts.map +1 -0
  22. package/dist/commands/profile-project.js +123 -0
  23. package/dist/commands/profile-project.js.map +1 -0
  24. package/dist/commands/profile.d.ts +26 -0
  25. package/dist/commands/profile.d.ts.map +1 -0
  26. package/dist/commands/profile.js +177 -0
  27. package/dist/commands/profile.js.map +1 -0
  28. package/dist/commands/project.d.ts +16 -0
  29. package/dist/commands/project.d.ts.map +1 -0
  30. package/dist/commands/project.js +153 -0
  31. package/dist/commands/project.js.map +1 -0
  32. package/dist/commands/setup.js +1 -1
  33. package/dist/commands/setup.js.map +1 -1
  34. package/dist/commands/update.js +2 -2
  35. package/dist/commands/update.js.map +1 -1
  36. package/dist/commands/workflow.d.ts +91 -0
  37. package/dist/commands/workflow.d.ts.map +1 -0
  38. package/dist/commands/workflow.js +1201 -0
  39. package/dist/commands/workflow.js.map +1 -0
  40. package/dist/config-schema.d.ts +23 -0
  41. package/dist/config-schema.d.ts.map +1 -1
  42. package/dist/config-schema.js +21 -1
  43. package/dist/config-schema.js.map +1 -1
  44. package/dist/config.d.ts +4 -0
  45. package/dist/config.d.ts.map +1 -1
  46. package/dist/config.js +23 -2
  47. package/dist/config.js.map +1 -1
  48. package/dist/index.js +318 -1
  49. package/dist/index.js.map +1 -1
  50. package/dist/prompts/project-selection.d.ts +8 -0
  51. package/dist/prompts/project-selection.d.ts.map +1 -0
  52. package/dist/prompts/project-selection.js +132 -0
  53. package/dist/prompts/project-selection.js.map +1 -0
  54. package/dist/prompts/workflow-inputs.d.ts +10 -0
  55. package/dist/prompts/workflow-inputs.d.ts.map +1 -0
  56. package/dist/prompts/workflow-inputs.js +71 -0
  57. package/dist/prompts/workflow-inputs.js.map +1 -0
  58. package/dist/prompts/workflow-selection.d.ts +8 -0
  59. package/dist/prompts/workflow-selection.d.ts.map +1 -0
  60. package/dist/prompts/workflow-selection.js +147 -0
  61. package/dist/prompts/workflow-selection.js.map +1 -0
  62. package/dist/sembix-cli-1.4.1.tgz +0 -0
  63. package/dist/services/cognito-auth.d.ts +92 -0
  64. package/dist/services/cognito-auth.d.ts.map +1 -0
  65. package/dist/services/cognito-auth.js +319 -0
  66. package/dist/services/cognito-auth.js.map +1 -0
  67. package/dist/services/studio-api-client.d.ts +127 -0
  68. package/dist/services/studio-api-client.d.ts.map +1 -0
  69. package/dist/services/studio-api-client.js +291 -0
  70. package/dist/services/studio-api-client.js.map +1 -0
  71. package/dist/types/studio.d.ts +82 -0
  72. package/dist/types/studio.d.ts.map +1 -0
  73. package/dist/types/studio.js +7 -0
  74. package/dist/types/studio.js.map +1 -0
  75. package/dist/types.d.ts +283 -0
  76. package/dist/types.d.ts.map +1 -1
  77. package/dist/types.js +5 -0
  78. package/dist/types.js.map +1 -1
  79. package/dist/utils/browser-auth.d.ts +45 -0
  80. package/dist/utils/browser-auth.d.ts.map +1 -0
  81. package/dist/utils/browser-auth.js +168 -0
  82. package/dist/utils/browser-auth.js.map +1 -0
  83. package/dist/utils/cognito-auth.d.ts +3 -0
  84. package/dist/utils/cognito-auth.d.ts.map +1 -0
  85. package/dist/utils/cognito-auth.js +3 -0
  86. package/dist/utils/cognito-auth.js.map +1 -0
  87. package/dist/utils/config-file.d.ts +40 -0
  88. package/dist/utils/config-file.d.ts.map +1 -1
  89. package/dist/utils/config-file.js +158 -4
  90. package/dist/utils/config-file.js.map +1 -1
  91. package/dist/utils/environment.d.ts +22 -0
  92. package/dist/utils/environment.d.ts.map +1 -0
  93. package/dist/utils/environment.js +39 -0
  94. package/dist/utils/environment.js.map +1 -0
  95. package/dist/utils/error-handler.d.ts +53 -0
  96. package/dist/utils/error-handler.d.ts.map +1 -0
  97. package/dist/utils/error-handler.js +174 -0
  98. package/dist/utils/error-handler.js.map +1 -0
  99. package/dist/utils/fuzzy-match.d.ts +31 -0
  100. package/dist/utils/fuzzy-match.d.ts.map +1 -0
  101. package/dist/utils/fuzzy-match.js +138 -0
  102. package/dist/utils/fuzzy-match.js.map +1 -0
  103. package/dist/utils/github.d.ts +2 -2
  104. package/dist/utils/github.d.ts.map +1 -1
  105. package/dist/utils/github.js +30 -10
  106. package/dist/utils/github.js.map +1 -1
  107. package/dist/utils/input-parser.d.ts +14 -0
  108. package/dist/utils/input-parser.d.ts.map +1 -0
  109. package/dist/utils/input-parser.js +34 -0
  110. package/dist/utils/input-parser.js.map +1 -0
  111. package/dist/utils/output.d.ts +55 -0
  112. package/dist/utils/output.d.ts.map +1 -0
  113. package/dist/utils/output.js +80 -0
  114. package/dist/utils/output.js.map +1 -0
  115. package/dist/utils/recent-workflows.d.ts +37 -0
  116. package/dist/utils/recent-workflows.d.ts.map +1 -0
  117. package/dist/utils/recent-workflows.js +172 -0
  118. package/dist/utils/recent-workflows.js.map +1 -0
  119. package/dist/utils/studio-api-client.d.ts +3 -0
  120. package/dist/utils/studio-api-client.d.ts.map +1 -0
  121. package/dist/utils/studio-api-client.js +3 -0
  122. package/dist/utils/studio-api-client.js.map +1 -0
  123. package/dist/utils/studio-api.d.ts +53 -0
  124. package/dist/utils/studio-api.d.ts.map +1 -0
  125. package/dist/utils/studio-api.js +102 -0
  126. package/dist/utils/studio-api.js.map +1 -0
  127. package/dist/utils/studio-config.d.ts +74 -0
  128. package/dist/utils/studio-config.d.ts.map +1 -0
  129. package/dist/utils/studio-config.js +213 -0
  130. package/dist/utils/studio-config.js.map +1 -0
  131. package/dist/utils/token-manager.d.ts +4 -0
  132. package/dist/utils/token-manager.d.ts.map +1 -0
  133. package/dist/utils/token-manager.js +3 -0
  134. package/dist/utils/token-manager.js.map +1 -0
  135. package/dist/utils/ui.d.ts +55 -1
  136. package/dist/utils/ui.d.ts.map +1 -1
  137. package/dist/utils/ui.js +151 -2
  138. package/dist/utils/ui.js.map +1 -1
  139. package/package.json +4 -1
  140. package/dist/__tests__/config-schema.test.d.ts +0 -2
  141. package/dist/__tests__/config-schema.test.d.ts.map +0 -1
  142. package/dist/__tests__/config-schema.test.js +0 -471
  143. package/dist/__tests__/config-schema.test.js.map +0 -1
  144. package/dist/__tests__/config.test.d.ts +0 -2
  145. package/dist/__tests__/config.test.d.ts.map +0 -1
  146. package/dist/__tests__/config.test.js +0 -75
  147. package/dist/__tests__/config.test.js.map +0 -1
  148. package/dist/__tests__/integration/configure.test.d.ts +0 -2
  149. package/dist/__tests__/integration/configure.test.d.ts.map +0 -1
  150. package/dist/__tests__/integration/configure.test.js +0 -247
  151. package/dist/__tests__/integration/configure.test.js.map +0 -1
  152. package/dist/__tests__/integration/fixtures/configs.d.ts +0 -477
  153. package/dist/__tests__/integration/fixtures/configs.d.ts.map +0 -1
  154. package/dist/__tests__/integration/fixtures/configs.js +0 -175
  155. package/dist/__tests__/integration/fixtures/configs.js.map +0 -1
  156. package/dist/__tests__/integration/helpers/cli-runner.d.ts +0 -63
  157. package/dist/__tests__/integration/helpers/cli-runner.d.ts.map +0 -1
  158. package/dist/__tests__/integration/helpers/cli-runner.js +0 -152
  159. package/dist/__tests__/integration/helpers/cli-runner.js.map +0 -1
  160. package/dist/__tests__/integration/helpers/command-runner.d.ts +0 -53
  161. package/dist/__tests__/integration/helpers/command-runner.d.ts.map +0 -1
  162. package/dist/__tests__/integration/helpers/command-runner.js +0 -117
  163. package/dist/__tests__/integration/helpers/command-runner.js.map +0 -1
  164. package/dist/__tests__/integration/studio-create.test.d.ts +0 -2
  165. package/dist/__tests__/integration/studio-create.test.d.ts.map +0 -1
  166. package/dist/__tests__/integration/studio-create.test.js +0 -209
  167. package/dist/__tests__/integration/studio-create.test.js.map +0 -1
  168. package/dist/__tests__/integration/studio-update.test.d.ts +0 -2
  169. package/dist/__tests__/integration/studio-update.test.d.ts.map +0 -1
  170. package/dist/__tests__/integration/studio-update.test.js +0 -166
  171. package/dist/__tests__/integration/studio-update.test.js.map +0 -1
  172. package/dist/commands/__tests__/configure.test.d.ts +0 -2
  173. package/dist/commands/__tests__/configure.test.d.ts.map +0 -1
  174. package/dist/commands/__tests__/configure.test.js +0 -229
  175. package/dist/commands/__tests__/configure.test.js.map +0 -1
  176. package/dist/prompts/__tests__/environment-setup.test.d.ts +0 -2
  177. package/dist/prompts/__tests__/environment-setup.test.d.ts.map +0 -1
  178. package/dist/prompts/__tests__/environment-setup.test.js +0 -206
  179. package/dist/prompts/__tests__/environment-setup.test.js.map +0 -1
  180. package/dist/prompts/__tests__/hub-integration.test.d.ts +0 -2
  181. package/dist/prompts/__tests__/hub-integration.test.d.ts.map +0 -1
  182. package/dist/prompts/__tests__/hub-integration.test.js +0 -126
  183. package/dist/prompts/__tests__/hub-integration.test.js.map +0 -1
  184. package/dist/prompts/__tests__/prompt-helpers.test.d.ts +0 -2
  185. package/dist/prompts/__tests__/prompt-helpers.test.d.ts.map +0 -1
  186. package/dist/prompts/__tests__/prompt-helpers.test.js +0 -235
  187. package/dist/prompts/__tests__/prompt-helpers.test.js.map +0 -1
  188. package/dist/sembix-cli-1.3.0.tgz +0 -0
  189. package/dist/utils/__tests__/config-file.test.d.ts +0 -2
  190. package/dist/utils/__tests__/config-file.test.d.ts.map +0 -1
  191. package/dist/utils/__tests__/config-file.test.js +0 -218
  192. package/dist/utils/__tests__/config-file.test.js.map +0 -1
  193. package/dist/utils/__tests__/config-loader.test.d.ts +0 -2
  194. package/dist/utils/__tests__/config-loader.test.d.ts.map +0 -1
  195. package/dist/utils/__tests__/config-loader.test.js +0 -325
  196. package/dist/utils/__tests__/config-loader.test.js.map +0 -1
  197. package/dist/utils/__tests__/github.test.d.ts +0 -2
  198. package/dist/utils/__tests__/github.test.d.ts.map +0 -1
  199. package/dist/utils/__tests__/github.test.js +0 -282
  200. package/dist/utils/__tests__/github.test.js.map +0 -1
  201. package/dist/utils/__tests__/ui.test.d.ts +0 -2
  202. package/dist/utils/__tests__/ui.test.d.ts.map +0 -1
  203. package/dist/utils/__tests__/ui.test.js +0 -256
  204. package/dist/utils/__tests__/ui.test.js.map +0 -1
@@ -0,0 +1,138 @@
1
+ /**
2
+ * Fuzzy matching utility for searching workflows and projects
3
+ */
4
+ /**
5
+ * Performs fuzzy matching on a list of items
6
+ * @param query Search query
7
+ * @param items List of items to search
8
+ * @param getText Function to extract searchable text from an item
9
+ * @param minScore Minimum score threshold (default: 100)
10
+ * @returns Sorted array of matches (highest score first)
11
+ */
12
+ export function fuzzyMatch(query, items, getText, minScore = 100) {
13
+ const normalizedQuery = query.toLowerCase().trim();
14
+ if (!normalizedQuery)
15
+ return [];
16
+ const results = [];
17
+ for (const item of items) {
18
+ const text = getText(item);
19
+ const normalizedText = text.toLowerCase();
20
+ const score = calculateScore(normalizedQuery, normalizedText);
21
+ if (score >= minScore) {
22
+ results.push({
23
+ item,
24
+ score,
25
+ matches: findMatches(normalizedQuery, normalizedText)
26
+ });
27
+ }
28
+ }
29
+ // Sort by score descending
30
+ results.sort((a, b) => b.score - a.score);
31
+ return results;
32
+ }
33
+ /**
34
+ * Calculates a fuzzy match score
35
+ * Higher score = better match
36
+ */
37
+ function calculateScore(query, text) {
38
+ // Exact match (case-insensitive)
39
+ if (text === query)
40
+ return 1000;
41
+ // Starts with query
42
+ if (text.startsWith(query)) {
43
+ return 500 + (100 - text.indexOf(query));
44
+ }
45
+ // Word boundary match (after space, dash, or underscore)
46
+ const words = text.split(/[\s\-_]+/);
47
+ for (let i = 0; i < words.length; i++) {
48
+ if (words[i].startsWith(query)) {
49
+ // Earlier words get higher scores
50
+ return 300 + (100 - i * 10);
51
+ }
52
+ }
53
+ // Substring match
54
+ const index = text.indexOf(query);
55
+ if (index >= 0) {
56
+ // Earlier matches get higher scores
57
+ return 200 + (100 - index);
58
+ }
59
+ // Character sequence match (all characters appear in order)
60
+ let score = 0;
61
+ let queryIndex = 0;
62
+ let consecutive = 0;
63
+ let lastMatchIndex = -1;
64
+ for (let i = 0; i < text.length && queryIndex < query.length; i++) {
65
+ if (text[i] === query[queryIndex]) {
66
+ queryIndex++;
67
+ // Bonus for consecutive matches
68
+ if (lastMatchIndex === i - 1) {
69
+ consecutive++;
70
+ score += consecutive * 10;
71
+ }
72
+ else {
73
+ consecutive = 1;
74
+ score += 5;
75
+ }
76
+ // Bonus for matches at word boundaries
77
+ if (i === 0 || /[\s\-_]/.test(text[i - 1])) {
78
+ score += 15;
79
+ }
80
+ lastMatchIndex = i;
81
+ }
82
+ else {
83
+ consecutive = 0;
84
+ }
85
+ }
86
+ // All characters matched?
87
+ if (queryIndex === query.length) {
88
+ return score;
89
+ }
90
+ return 0;
91
+ }
92
+ /**
93
+ * Finds the indices of matched characters
94
+ */
95
+ function findMatches(query, text) {
96
+ const matches = [];
97
+ let queryIndex = 0;
98
+ for (let i = 0; i < text.length && queryIndex < query.length; i++) {
99
+ if (text[i] === query[queryIndex]) {
100
+ matches.push(i);
101
+ queryIndex++;
102
+ }
103
+ }
104
+ return matches;
105
+ }
106
+ /**
107
+ * Highlights matched characters in terminal output
108
+ * @param text Original text
109
+ * @param matches Array of character indices to highlight
110
+ * @returns Text with ANSI color codes for highlighting
111
+ */
112
+ export function highlightMatches(text, matches) {
113
+ if (matches.length === 0)
114
+ return text;
115
+ let result = '';
116
+ const matchSet = new Set(matches);
117
+ for (let i = 0; i < text.length; i++) {
118
+ if (matchSet.has(i)) {
119
+ // Bold yellow for matched characters
120
+ result += `\x1b[1m\x1b[33m${text[i]}\x1b[0m`;
121
+ }
122
+ else {
123
+ result += text[i];
124
+ }
125
+ }
126
+ return result;
127
+ }
128
+ /**
129
+ * Converts a score to a percentage (0-100)
130
+ * @param score Fuzzy match score
131
+ * @returns Percentage (0-100)
132
+ */
133
+ export function scoreToPercentage(score) {
134
+ // Map score to percentage
135
+ // 1000 = 100%, 0 = 0%
136
+ return Math.min(100, Math.round((score / 1000) * 100));
137
+ }
138
+ //# sourceMappingURL=fuzzy-match.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fuzzy-match.js","sourceRoot":"","sources":["../../src/utils/fuzzy-match.ts"],"names":[],"mappings":"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"}
@@ -23,9 +23,9 @@ export declare class GitHubClient {
23
23
  */
24
24
  environmentExists(owner: string, repo: string, environmentName: string): Promise<boolean>;
25
25
  /**
26
- * Create or update environment variables
26
+ * Create or update environment variables (upsert operation)
27
27
  */
28
- createEnvironmentVariables(owner: string, repo: string, environmentName: string, variables: Record<string, string>): Promise<void>;
28
+ createOrUpdateEnvironmentVariables(owner: string, repo: string, environmentName: string, variables: Record<string, string>): Promise<void>;
29
29
  /**
30
30
  * Create or update environment secrets
31
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEvE,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAU;gBAEb,KAAK,CAAC,EAAE,MAAM;IAM1B;;OAEG;IACG,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IA4BjE;;OAEG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAiB3E;;OAEG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAiBjF;;OAEG;IACG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5F;;OAEG;IACG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB/F;;OAEG;IACG,0BAA0B,CAC9B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC;IAkBhB;;OAEG;IACG,wBAAwB,CAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC;IA6BhB;;OAEG;YACW,aAAa;CA0B5B"}
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEvE,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAU;gBAEb,KAAK,CAAC,EAAE,MAAM;IAM1B;;OAEG;IACG,gBAAgB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IA4BjE;;OAEG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAiB3E;;OAEG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAiBjF;;OAEG;IACG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5F;;OAEG;IACG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB/F;;OAEG;IACG,kCAAkC,CACtC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC;IAoChB;;OAEG;IACG,wBAAwB,CAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC;IA6BhB;;OAEG;YACW,aAAa;CA0B5B"}
@@ -110,24 +110,44 @@ export class GitHubClient {
110
110
  }
111
111
  }
112
112
  /**
113
- * Create or update environment variables
113
+ * Create or update environment variables (upsert operation)
114
114
  */
115
- async createEnvironmentVariables(owner, repo, environmentName, variables) {
115
+ async createOrUpdateEnvironmentVariables(owner, repo, environmentName, variables) {
116
116
  try {
117
117
  for (const [name, value] of Object.entries(variables)) {
118
118
  if (!value)
119
119
  continue; // Skip empty values
120
- await this.octokit.actions.createEnvironmentVariable({
121
- owner,
122
- repo,
123
- environment_name: environmentName,
124
- name,
125
- value,
126
- });
120
+ try {
121
+ // Try to update first (common case for this method)
122
+ await this.octokit.actions.updateEnvironmentVariable({
123
+ owner,
124
+ repo,
125
+ environment_name: environmentName,
126
+ name,
127
+ value,
128
+ });
129
+ }
130
+ catch (updateError) {
131
+ // If variable doesn't exist (404), create it
132
+ if (updateError.status === 404) {
133
+ await this.octokit.actions.createEnvironmentVariable({
134
+ owner,
135
+ repo,
136
+ environment_name: environmentName,
137
+ name,
138
+ value,
139
+ });
140
+ }
141
+ else {
142
+ // Re-throw other errors (permissions, network, etc.)
143
+ throw updateError;
144
+ }
145
+ }
127
146
  }
128
147
  }
129
148
  catch (error) {
130
- throw new Error(`Failed to create environment variables: ${error.message}`);
149
+ const message = error.message || 'Unknown error';
150
+ throw new Error(`Failed to create or update environment variables: ${message}`);
131
151
  }
132
152
  }
133
153
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { StartWorkflowConfiguration } from '../types.js';
2
+ /**
3
+ * Parse workflow inputs from JSON string and detect format.
4
+ * Supports two formats:
5
+ * 1. Simple key-value object: {"key": "value"} -> maps to inputVariables (deprecated)
6
+ * 2. InitialInstructions array: [{"id": "x", "instruction": "value"}] -> maps to initialInstructions
7
+ * 3. Complete StartWorkflowConfiguration object with initialInstructions or workspaceMetadata
8
+ *
9
+ * @param inputsJson - JSON string containing workflow inputs
10
+ * @returns StartWorkflowConfiguration object ready to send to API
11
+ * @throws Error if JSON is invalid or format is unrecognized
12
+ */
13
+ export declare function parseWorkflowInputs(inputsJson: string): StartWorkflowConfiguration;
14
+ //# sourceMappingURL=input-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-parser.d.ts","sourceRoot":"","sources":["../../src/utils/input-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAE9D;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,0BAA0B,CAuBlF"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Parse workflow inputs from JSON string and detect format.
3
+ * Supports two formats:
4
+ * 1. Simple key-value object: {"key": "value"} -> maps to inputVariables (deprecated)
5
+ * 2. InitialInstructions array: [{"id": "x", "instruction": "value"}] -> maps to initialInstructions
6
+ * 3. Complete StartWorkflowConfiguration object with initialInstructions or workspaceMetadata
7
+ *
8
+ * @param inputsJson - JSON string containing workflow inputs
9
+ * @returns StartWorkflowConfiguration object ready to send to API
10
+ * @throws Error if JSON is invalid or format is unrecognized
11
+ */
12
+ export function parseWorkflowInputs(inputsJson) {
13
+ const parsed = JSON.parse(inputsJson);
14
+ // Detect format by structure
15
+ if (Array.isArray(parsed)) {
16
+ // Array format → InitialInstructions
17
+ return {
18
+ initialInstructions: parsed
19
+ };
20
+ }
21
+ else if (typeof parsed === 'object' && parsed !== null) {
22
+ // Check if it's already a complete StartWorkflowConfiguration
23
+ if ('initialInstructions' in parsed || 'workspaceMetadata' in parsed || 'inputVariables' in parsed) {
24
+ // Already in correct format
25
+ return parsed;
26
+ }
27
+ // Simple key-value object → Legacy inputVariables
28
+ return {
29
+ inputVariables: parsed
30
+ };
31
+ }
32
+ throw new Error('Invalid input format. Expected object or array.');
33
+ }
34
+ //# sourceMappingURL=input-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-parser.js","sourceRoot":"","sources":["../../src/utils/input-parser.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEtC,6BAA6B;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,qCAAqC;QACrC,OAAO;YACL,mBAAmB,EAAE,MAAM;SAC5B,CAAC;IACJ,CAAC;SAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACzD,8DAA8D;QAC9D,IAAI,qBAAqB,IAAI,MAAM,IAAI,mBAAmB,IAAI,MAAM,IAAI,gBAAgB,IAAI,MAAM,EAAE,CAAC;YACnG,4BAA4B;YAC5B,OAAO,MAAoC,CAAC;QAC9C,CAAC;QAED,kDAAkD;QAClD,OAAO;YACL,cAAc,EAAE,MAAM;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;AACrE,CAAC"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Output formatting utilities for CLI commands.
3
+ * Supports JSON (compact), PRETTY (pretty-printed JSON), and TEXT (human-readable) formats.
4
+ * Follows AWS CLI patterns for output and error handling.
5
+ */
6
+ export declare enum OutputFormat {
7
+ JSON = "json",// Default: compact JSON
8
+ PRETTY = "pretty",// Pretty-printed JSON
9
+ TEXT = "text"
10
+ }
11
+ export interface OutputOptions {
12
+ format: OutputFormat;
13
+ command?: string;
14
+ }
15
+ /**
16
+ * Output successful command results.
17
+ * For JSON/PRETTY modes, outputs to stdout and exits with code 0.
18
+ * For TEXT mode, returns control to the command for custom formatting.
19
+ *
20
+ * @param data - Data to output
21
+ * @param options - Output options including format
22
+ */
23
+ export declare function outputSuccess<T>(data: T, options: OutputOptions): void;
24
+ /**
25
+ * Output error to stderr in JSON format and exit with specified code.
26
+ * Follows AWS CLI error formatting pattern.
27
+ *
28
+ * @param error - Error object or message
29
+ * @param exitCode - Exit code (default: 1)
30
+ */
31
+ export declare function outputError(error: Error | string, exitCode?: number): void;
32
+ /**
33
+ * Command options interface for output format selection
34
+ */
35
+ export interface CommandOptionsWithOutput {
36
+ output?: string;
37
+ pretty?: boolean;
38
+ }
39
+ /**
40
+ * Determine output format from command options.
41
+ * Priority: --pretty flag > --output flag > default (json)
42
+ *
43
+ * @param options - Command options
44
+ * @returns Output format
45
+ */
46
+ export declare function getOutputFormat(options: CommandOptionsWithOutput): OutputFormat;
47
+ /**
48
+ * Check if the command is running in quiet mode (JSON/PRETTY output).
49
+ * In quiet mode, UI elements like banners and spinners should be suppressed.
50
+ *
51
+ * @param format - Output format
52
+ * @returns true if quiet mode (JSON/PRETTY), false if TEXT mode
53
+ */
54
+ export declare function isQuietMode(format: OutputFormat): boolean;
55
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,oBAAY,YAAY;IACtB,IAAI,SAAS,CAAO,wBAAwB;IAC5C,MAAM,WAAW,CAAG,sBAAsB;IAC1C,IAAI,SAAS;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAYtE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,IAAI,CAY7E;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,wBAAwB,GAAG,YAAY,CAe/E;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAEzD"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Output formatting utilities for CLI commands.
3
+ * Supports JSON (compact), PRETTY (pretty-printed JSON), and TEXT (human-readable) formats.
4
+ * Follows AWS CLI patterns for output and error handling.
5
+ */
6
+ export var OutputFormat;
7
+ (function (OutputFormat) {
8
+ OutputFormat["JSON"] = "json";
9
+ OutputFormat["PRETTY"] = "pretty";
10
+ OutputFormat["TEXT"] = "text"; // Human-readable (legacy mode)
11
+ })(OutputFormat || (OutputFormat = {}));
12
+ /**
13
+ * Output successful command results.
14
+ * For JSON/PRETTY modes, outputs to stdout and exits with code 0.
15
+ * For TEXT mode, returns control to the command for custom formatting.
16
+ *
17
+ * @param data - Data to output
18
+ * @param options - Output options including format
19
+ */
20
+ export function outputSuccess(data, options) {
21
+ if (options.format === OutputFormat.TEXT) {
22
+ // Return control to command for human-readable output
23
+ return;
24
+ }
25
+ const output = options.format === OutputFormat.PRETTY
26
+ ? JSON.stringify(data, null, 2)
27
+ : JSON.stringify(data);
28
+ console.log(output);
29
+ process.exit(0);
30
+ }
31
+ /**
32
+ * Output error to stderr in JSON format and exit with specified code.
33
+ * Follows AWS CLI error formatting pattern.
34
+ *
35
+ * @param error - Error object or message
36
+ * @param exitCode - Exit code (default: 1)
37
+ */
38
+ export function outputError(error, exitCode = 1) {
39
+ const errorObj = typeof error === 'string' ? new Error(error) : error;
40
+ const errorData = {
41
+ error: {
42
+ message: errorObj.message,
43
+ code: 'code' in errorObj && typeof errorObj.code === 'string' ? errorObj.code : 'CLI_ERROR',
44
+ type: errorObj.name || 'Error'
45
+ }
46
+ };
47
+ console.error(JSON.stringify(errorData));
48
+ process.exit(exitCode);
49
+ }
50
+ /**
51
+ * Determine output format from command options.
52
+ * Priority: --pretty flag > --output flag > default (json)
53
+ *
54
+ * @param options - Command options
55
+ * @returns Output format
56
+ */
57
+ export function getOutputFormat(options) {
58
+ if (options.pretty) {
59
+ return OutputFormat.PRETTY;
60
+ }
61
+ if (options.output === 'text') {
62
+ return OutputFormat.TEXT;
63
+ }
64
+ if (options.output === 'pretty') {
65
+ return OutputFormat.PRETTY;
66
+ }
67
+ // Default to JSON
68
+ return OutputFormat.JSON;
69
+ }
70
+ /**
71
+ * Check if the command is running in quiet mode (JSON/PRETTY output).
72
+ * In quiet mode, UI elements like banners and spinners should be suppressed.
73
+ *
74
+ * @param format - Output format
75
+ * @returns true if quiet mode (JSON/PRETTY), false if TEXT mode
76
+ */
77
+ export function isQuietMode(format) {
78
+ return format !== OutputFormat.TEXT;
79
+ }
80
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAN,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,6BAAa,CAAA,CAAO,+BAA+B;AACrD,CAAC,EAJW,YAAY,KAAZ,YAAY,QAIvB;AAOD;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAI,IAAO,EAAE,OAAsB;IAC9D,IAAI,OAAO,CAAC,MAAM,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;QACzC,sDAAsD;QACtD,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM;QACnD,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAEzB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,KAAqB,EAAE,WAAmB,CAAC;IACrE,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACtE,MAAM,SAAS,GAAG;QAChB,KAAK,EAAE;YACL,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,MAAM,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;YAC3F,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,OAAO;SAC/B;KACF,CAAC;IAEF,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAUD;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,OAAiC;IAC/D,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,YAAY,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,YAAY,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,YAAY,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,kBAAkB;IAClB,OAAO,YAAY,CAAC,IAAI,CAAC;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,MAAoB;IAC9C,OAAO,MAAM,KAAK,YAAY,CAAC,IAAI,CAAC;AACtC,CAAC"}
@@ -0,0 +1,37 @@
1
+ export interface RecentWorkflowEntry {
2
+ profileName: string;
3
+ projectId: string;
4
+ projectName: string;
5
+ workflowId: string;
6
+ workflowName: string;
7
+ lastUsed: string;
8
+ useCount: number;
9
+ }
10
+ /**
11
+ * Adds or updates a recent workflow entry
12
+ * Increments use count if entry already exists
13
+ */
14
+ export declare function addRecentWorkflow(profileName: string, projectId: string, projectName: string, workflowId: string, workflowName: string): Promise<void>;
15
+ /**
16
+ * Gets recent workflows for a profile, optionally filtered by project
17
+ * Sorted by use count (desc) then last used (desc)
18
+ */
19
+ export declare function getRecentWorkflows(profileName: string, projectId?: string, limit?: number): Promise<RecentWorkflowEntry[]>;
20
+ /**
21
+ * Gets recent projects for a profile
22
+ * Returns unique projects sorted by most recently used workflow
23
+ */
24
+ export declare function getRecentProjects(profileName: string, limit?: number): Promise<Array<{
25
+ projectId: string;
26
+ projectName: string;
27
+ lastUsed: string;
28
+ }>>;
29
+ /**
30
+ * Clears all cached workflows for a specific profile
31
+ */
32
+ export declare function clearCacheForProfile(profileName: string): Promise<void>;
33
+ /**
34
+ * Clears the entire cache
35
+ */
36
+ export declare function clearCache(): Promise<void>;
37
+ //# sourceMappingURL=recent-workflows.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recent-workflows.d.ts","sourceRoot":"","sources":["../../src/utils/recent-workflows.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAOD;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,EAClB,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAkBhC;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,MAAU,GAChB,OAAO,CAAC,KAAK,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAwB9E;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI7E;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAIhD"}