blitzreels 0.1.4 → 0.1.6

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 (214) hide show
  1. package/README.md +55 -25
  2. package/dist/agent-context.d.ts +68 -0
  3. package/dist/agent-context.d.ts.map +1 -0
  4. package/dist/agent-context.js +214 -0
  5. package/dist/agent-context.js.map +1 -0
  6. package/dist/cli-command-routing.d.ts +27 -0
  7. package/dist/cli-command-routing.d.ts.map +1 -0
  8. package/dist/cli-command-routing.js +236 -0
  9. package/dist/cli-command-routing.js.map +1 -0
  10. package/dist/cli-errors.d.ts +31 -0
  11. package/dist/cli-errors.d.ts.map +1 -0
  12. package/dist/cli-errors.js +27 -0
  13. package/dist/cli-errors.js.map +1 -0
  14. package/dist/cli-flag-reader.d.ts +61 -0
  15. package/dist/cli-flag-reader.d.ts.map +1 -0
  16. package/dist/cli-flag-reader.js +207 -0
  17. package/dist/cli-flag-reader.js.map +1 -0
  18. package/dist/cli-http.d.ts +6 -0
  19. package/dist/cli-http.d.ts.map +1 -0
  20. package/dist/cli-http.js +42 -0
  21. package/dist/cli-http.js.map +1 -0
  22. package/dist/cli-presenter.d.ts +24 -0
  23. package/dist/cli-presenter.d.ts.map +1 -0
  24. package/dist/cli-presenter.js +161 -0
  25. package/dist/cli-presenter.js.map +1 -0
  26. package/dist/cli-runtime.d.ts +1 -2
  27. package/dist/cli-runtime.d.ts.map +1 -1
  28. package/dist/cli-runtime.js +2 -2
  29. package/dist/cli-runtime.js.map +1 -1
  30. package/dist/cli-timing.d.ts +4 -0
  31. package/dist/cli-timing.d.ts.map +1 -0
  32. package/dist/cli-timing.js +6 -0
  33. package/dist/cli-timing.js.map +1 -0
  34. package/dist/cli-types.d.ts +52 -0
  35. package/dist/cli-types.d.ts.map +1 -1
  36. package/dist/cli-value-parsers.d.ts +76 -0
  37. package/dist/cli-value-parsers.d.ts.map +1 -0
  38. package/dist/cli-value-parsers.js +271 -0
  39. package/dist/cli-value-parsers.js.map +1 -0
  40. package/dist/command-metadata.d.ts +11 -5
  41. package/dist/command-metadata.d.ts.map +1 -1
  42. package/dist/command-metadata.js +64 -9
  43. package/dist/command-metadata.js.map +1 -1
  44. package/dist/command-registry.d.ts +1 -1
  45. package/dist/command-registry.d.ts.map +1 -1
  46. package/dist/command-registry.js +44 -853
  47. package/dist/command-registry.js.map +1 -1
  48. package/dist/commands/ai-edit.d.ts +45 -0
  49. package/dist/commands/ai-edit.d.ts.map +1 -0
  50. package/dist/commands/ai-edit.js +370 -0
  51. package/dist/commands/ai-edit.js.map +1 -0
  52. package/dist/commands/api.d.ts +20 -0
  53. package/dist/commands/api.d.ts.map +1 -0
  54. package/dist/commands/api.js +56 -0
  55. package/dist/commands/api.js.map +1 -0
  56. package/dist/commands/audio.d.ts +65 -0
  57. package/dist/commands/audio.d.ts.map +1 -0
  58. package/dist/commands/audio.js +264 -0
  59. package/dist/commands/audio.js.map +1 -0
  60. package/dist/commands/auth-runtime.d.ts +24 -0
  61. package/dist/commands/auth-runtime.d.ts.map +1 -0
  62. package/dist/commands/auth-runtime.js +169 -0
  63. package/dist/commands/auth-runtime.js.map +1 -0
  64. package/dist/commands/auth.d.ts +26 -0
  65. package/dist/commands/auth.d.ts.map +1 -0
  66. package/dist/commands/auth.js +59 -0
  67. package/dist/commands/auth.js.map +1 -0
  68. package/dist/commands/caption-command-types.d.ts +66 -0
  69. package/dist/commands/caption-command-types.d.ts.map +1 -0
  70. package/dist/commands/caption-command-types.js +2 -0
  71. package/dist/commands/caption-command-types.js.map +1 -0
  72. package/dist/commands/caption-dry-run.d.ts +66 -0
  73. package/dist/commands/caption-dry-run.d.ts.map +1 -0
  74. package/dist/commands/caption-dry-run.js +225 -0
  75. package/dist/commands/caption-dry-run.js.map +1 -0
  76. package/dist/commands/caption-overrides.d.ts +43 -0
  77. package/dist/commands/caption-overrides.d.ts.map +1 -0
  78. package/dist/commands/caption-overrides.js +245 -0
  79. package/dist/commands/caption-overrides.js.map +1 -0
  80. package/dist/commands/caption-selection.d.ts +72 -0
  81. package/dist/commands/caption-selection.d.ts.map +1 -0
  82. package/dist/commands/caption-selection.js +89 -0
  83. package/dist/commands/caption-selection.js.map +1 -0
  84. package/dist/commands/caption-style-commands.d.ts +3 -0
  85. package/dist/commands/caption-style-commands.d.ts.map +1 -0
  86. package/dist/commands/caption-style-commands.js +240 -0
  87. package/dist/commands/caption-style-commands.js.map +1 -0
  88. package/dist/commands/caption-style-flags.d.ts +30 -0
  89. package/dist/commands/caption-style-flags.d.ts.map +1 -0
  90. package/dist/commands/caption-style-flags.js +257 -0
  91. package/dist/commands/caption-style-flags.js.map +1 -0
  92. package/dist/commands/caption-text-updates.d.ts +21 -0
  93. package/dist/commands/caption-text-updates.d.ts.map +1 -0
  94. package/dist/commands/caption-text-updates.js +23 -0
  95. package/dist/commands/caption-text-updates.js.map +1 -0
  96. package/dist/commands/captions-specs.d.ts +3 -0
  97. package/dist/commands/captions-specs.d.ts.map +1 -0
  98. package/dist/commands/captions-specs.js +241 -0
  99. package/dist/commands/captions-specs.js.map +1 -0
  100. package/dist/commands/captions.d.ts +7 -0
  101. package/dist/commands/captions.d.ts.map +1 -0
  102. package/dist/commands/captions.js +203 -0
  103. package/dist/commands/captions.js.map +1 -0
  104. package/dist/commands/clip-runtime.d.ts +67 -0
  105. package/dist/commands/clip-runtime.d.ts.map +1 -0
  106. package/dist/commands/clip-runtime.js +194 -0
  107. package/dist/commands/clip-runtime.js.map +1 -0
  108. package/dist/commands/clips.d.ts +66 -0
  109. package/dist/commands/clips.d.ts.map +1 -0
  110. package/dist/commands/clips.js +625 -0
  111. package/dist/commands/clips.js.map +1 -0
  112. package/dist/commands/command-operation.d.ts +26 -0
  113. package/dist/commands/command-operation.d.ts.map +1 -0
  114. package/dist/commands/command-operation.js +18 -0
  115. package/dist/commands/command-operation.js.map +1 -0
  116. package/dist/commands/editing-workflow-runtime.d.ts +42 -0
  117. package/dist/commands/editing-workflow-runtime.d.ts.map +1 -0
  118. package/dist/commands/editing-workflow-runtime.js +128 -0
  119. package/dist/commands/editing-workflow-runtime.js.map +1 -0
  120. package/dist/commands/editing-workflows.d.ts +70 -0
  121. package/dist/commands/editing-workflows.d.ts.map +1 -0
  122. package/dist/commands/editing-workflows.js +252 -0
  123. package/dist/commands/editing-workflows.js.map +1 -0
  124. package/dist/commands/effects-runtime.d.ts +64 -0
  125. package/dist/commands/effects-runtime.d.ts.map +1 -0
  126. package/dist/commands/effects-runtime.js +100 -0
  127. package/dist/commands/effects-runtime.js.map +1 -0
  128. package/dist/commands/effects.d.ts +69 -0
  129. package/dist/commands/effects.d.ts.map +1 -0
  130. package/dist/commands/effects.js +281 -0
  131. package/dist/commands/effects.js.map +1 -0
  132. package/dist/commands/exports.d.ts +16 -5
  133. package/dist/commands/exports.d.ts.map +1 -1
  134. package/dist/commands/exports.js +119 -2
  135. package/dist/commands/exports.js.map +1 -1
  136. package/dist/commands/faceless.d.ts +44 -0
  137. package/dist/commands/faceless.d.ts.map +1 -0
  138. package/dist/commands/faceless.js +587 -0
  139. package/dist/commands/faceless.js.map +1 -0
  140. package/dist/commands/formats.d.ts +41 -0
  141. package/dist/commands/formats.d.ts.map +1 -0
  142. package/dist/commands/formats.js +140 -0
  143. package/dist/commands/formats.js.map +1 -0
  144. package/dist/commands/jobs.d.ts +20 -0
  145. package/dist/commands/jobs.d.ts.map +1 -0
  146. package/dist/commands/jobs.js +40 -0
  147. package/dist/commands/jobs.js.map +1 -0
  148. package/dist/commands/media-assets.d.ts +100 -0
  149. package/dist/commands/media-assets.d.ts.map +1 -0
  150. package/dist/commands/media-assets.js +644 -0
  151. package/dist/commands/media-assets.js.map +1 -0
  152. package/dist/commands/media-overlays.d.ts +52 -0
  153. package/dist/commands/media-overlays.d.ts.map +1 -0
  154. package/dist/commands/media-overlays.js +314 -0
  155. package/dist/commands/media-overlays.js.map +1 -0
  156. package/dist/commands/media-runtime.d.ts +61 -0
  157. package/dist/commands/media-runtime.d.ts.map +1 -0
  158. package/dist/commands/media-runtime.js +239 -0
  159. package/dist/commands/media-runtime.js.map +1 -0
  160. package/dist/commands/onboarding.d.ts +51 -0
  161. package/dist/commands/onboarding.d.ts.map +1 -0
  162. package/dist/commands/onboarding.js +452 -0
  163. package/dist/commands/onboarding.js.map +1 -0
  164. package/dist/commands/project-read.d.ts +40 -0
  165. package/dist/commands/project-read.d.ts.map +1 -0
  166. package/dist/commands/project-read.js +184 -0
  167. package/dist/commands/project-read.js.map +1 -0
  168. package/dist/commands/projects.d.ts +16 -5
  169. package/dist/commands/projects.d.ts.map +1 -1
  170. package/dist/commands/projects.js +139 -2
  171. package/dist/commands/projects.js.map +1 -1
  172. package/dist/commands/stock-library.d.ts +72 -0
  173. package/dist/commands/stock-library.d.ts.map +1 -0
  174. package/dist/commands/stock-library.js +175 -0
  175. package/dist/commands/stock-library.js.map +1 -0
  176. package/dist/commands/system.d.ts +16 -0
  177. package/dist/commands/system.d.ts.map +1 -0
  178. package/dist/commands/system.js +147 -0
  179. package/dist/commands/system.js.map +1 -0
  180. package/dist/commands/text-overlay-spec.d.ts +24 -0
  181. package/dist/commands/text-overlay-spec.d.ts.map +1 -0
  182. package/dist/commands/text-overlay-spec.js +228 -0
  183. package/dist/commands/text-overlay-spec.js.map +1 -0
  184. package/dist/commands/text-overlays.d.ts +67 -0
  185. package/dist/commands/text-overlays.d.ts.map +1 -0
  186. package/dist/commands/text-overlays.js +272 -0
  187. package/dist/commands/text-overlays.js.map +1 -0
  188. package/dist/commands/timeline-runtime.d.ts +105 -0
  189. package/dist/commands/timeline-runtime.d.ts.map +1 -0
  190. package/dist/commands/timeline-runtime.js +508 -0
  191. package/dist/commands/timeline-runtime.js.map +1 -0
  192. package/dist/commands/timeline.d.ts +120 -0
  193. package/dist/commands/timeline.d.ts.map +1 -0
  194. package/dist/commands/timeline.js +621 -0
  195. package/dist/commands/timeline.js.map +1 -0
  196. package/dist/commands/workspace-defaults.d.ts +12 -0
  197. package/dist/commands/workspace-defaults.d.ts.map +1 -0
  198. package/dist/commands/workspace-defaults.js +115 -0
  199. package/dist/commands/workspace-defaults.js.map +1 -0
  200. package/dist/commands/workspace.d.ts +50 -0
  201. package/dist/commands/workspace.d.ts.map +1 -0
  202. package/dist/commands/workspace.js +116 -0
  203. package/dist/commands/workspace.js.map +1 -0
  204. package/dist/index.js +485 -5035
  205. package/dist/index.js.map +1 -1
  206. package/dist/preview-first-edit.d.ts +9 -1
  207. package/dist/preview-first-edit.d.ts.map +1 -1
  208. package/dist/preview-first-edit.js +16 -4
  209. package/dist/preview-first-edit.js.map +1 -1
  210. package/dist/update-notifier.d.ts +43 -0
  211. package/dist/update-notifier.d.ts.map +1 -0
  212. package/dist/update-notifier.js +265 -0
  213. package/dist/update-notifier.js.map +1 -0
  214. package/package.json +2 -2
@@ -0,0 +1,184 @@
1
+ import { commandSpec } from "../command-metadata.js";
2
+ export const PROJECT_READ_COMMAND_SPECS = [
3
+ commandSpec({
4
+ command: ["project", "inspect"],
5
+ usage: "blitzreels project inspect --project-id ID [--mode full] [--timeline-limit 200] [--timeline-offset 0] [--asset-limit 20] [--asset-offset 0] [--transcript-limit 100] [--transcript-offset 0] [--caption-word-limit 500] [--caption-word-offset 0] [--json]",
6
+ flags: [
7
+ "project-id",
8
+ "mode",
9
+ "timeline-limit",
10
+ "timeline-offset",
11
+ "asset-limit",
12
+ "asset-offset",
13
+ "transcript-limit",
14
+ "transcript-offset",
15
+ "caption-word-limit",
16
+ "caption-word-offset",
17
+ ],
18
+ }),
19
+ commandSpec({
20
+ command: ["project", "timeline"],
21
+ usage: "blitzreels project timeline --project-id ID [--limit 200] [--offset 0] [--json]",
22
+ flags: ["project-id", "limit", "offset"],
23
+ description: "Print timeline state. Layer model: lower layer_index renders above higher; captions 0, text/effects 1, B-roll 2, main video 3.",
24
+ }),
25
+ commandSpec({
26
+ command: ["project", "snapshot"],
27
+ usage: "blitzreels project snapshot --project-id ID --at 00:03 [--target-width 608] [--image-format jpeg|png] [--json]",
28
+ flags: ["project-id", "at", "target-width", "image-format"],
29
+ }),
30
+ commandSpec({
31
+ command: ["project", "snapshots"],
32
+ usage: "blitzreels project snapshots --project-id ID --at 00:01,00:03 [--target-width 608] [--image-format jpeg|png] [--json]",
33
+ flags: ["project-id", "at", "target-width", "image-format"],
34
+ }),
35
+ commandSpec({
36
+ command: ["project", "visual-debug"],
37
+ usage: "blitzreels project visual-debug --project-id ID --at 00:03 [--json]",
38
+ flags: ["project-id", "at"],
39
+ }),
40
+ ];
41
+ export function createProjectReadCommandOperation({ helpers, }) {
42
+ return {
43
+ name: "project-read",
44
+ matches: ({ command }) => matchesProjectReadCommand({ command }),
45
+ handle: ({ context }) => handleProjectReadCommand({ context, helpers }),
46
+ buildDryRun: () => undefined,
47
+ };
48
+ }
49
+ async function handleProjectReadCommand({ context, helpers, }) {
50
+ const [group, action] = context.args.command;
51
+ const flags = context.args.flags;
52
+ if (group !== "project") {
53
+ return false;
54
+ }
55
+ if (action === "inspect") {
56
+ const result = await context.client.projects.inspect({
57
+ projectId: helpers.requireStringFlag({ flags, name: "project-id" }),
58
+ mode: helpers.parseContextMode({
59
+ value: helpers.getStringFlag({ flags, name: "mode" }) ?? "full",
60
+ }),
61
+ assetLimit: helpers.getNumberFlag({ flags, name: "asset-limit" }),
62
+ assetOffset: helpers.getNumberFlag({ flags, name: "asset-offset" }),
63
+ timelineLimit: helpers.getNumberFlag({ flags, name: "timeline-limit" }),
64
+ timelineOffset: helpers.getNumberFlag({ flags, name: "timeline-offset" }),
65
+ transcriptLimit: helpers.getNumberFlag({
66
+ flags,
67
+ name: "transcript-limit",
68
+ }),
69
+ transcriptOffset: helpers.getNumberFlag({
70
+ flags,
71
+ name: "transcript-offset",
72
+ }),
73
+ captionWordLimit: helpers.getNumberFlag({
74
+ flags,
75
+ name: "caption-word-limit",
76
+ }),
77
+ captionWordOffset: helpers.getNumberFlag({
78
+ flags,
79
+ name: "caption-word-offset",
80
+ }),
81
+ });
82
+ helpers.printResult({
83
+ json: context.json,
84
+ value: result,
85
+ human: [
86
+ `Project context loaded (${result.mode}).`,
87
+ JSON.stringify(result.data, null, 2),
88
+ ],
89
+ });
90
+ return true;
91
+ }
92
+ if (action === "timeline") {
93
+ const result = await context.client.projects.timeline({
94
+ projectId: helpers.requireStringFlag({ flags, name: "project-id" }),
95
+ limit: helpers.getNumberFlag({ flags, name: "limit" }),
96
+ offset: helpers.getNumberFlag({ flags, name: "offset" }),
97
+ });
98
+ helpers.printResult({
99
+ json: context.json,
100
+ value: result,
101
+ human: [
102
+ ...timelineLayerModelHelp(),
103
+ JSON.stringify(result.data, null, 2),
104
+ ],
105
+ });
106
+ return true;
107
+ }
108
+ if (action === "snapshot") {
109
+ const result = await context.client.projects.renderSnapshot({
110
+ projectId: helpers.requireStringFlag({ flags, name: "project-id" }),
111
+ atSeconds: helpers.parseTimecode({
112
+ value: helpers.requireStringFlag({ flags, name: "at" }),
113
+ }),
114
+ targetWidth: helpers.getNumberFlag({ flags, name: "target-width" }),
115
+ imageFormat: helpers.parseImageFormat({
116
+ value: helpers.getStringFlag({ flags, name: "image-format" }),
117
+ }),
118
+ });
119
+ helpers.printResult({
120
+ json: context.json,
121
+ value: result,
122
+ human: [
123
+ `Snapshot: ${result.preview_url}`,
124
+ `Captured: ${result.captured_at ?? "unknown"}${result.cached ? " (cached)" : ""}`,
125
+ ],
126
+ });
127
+ return true;
128
+ }
129
+ if (action === "snapshots") {
130
+ const at = helpers.requireStringFlag({ flags, name: "at" });
131
+ const result = await context.client.projects.renderSnapshots({
132
+ projectId: helpers.requireStringFlag({ flags, name: "project-id" }),
133
+ atSeconds: at.split(",").map((value) => helpers.parseTimecode({ value })),
134
+ targetWidth: helpers.getNumberFlag({ flags, name: "target-width" }),
135
+ imageFormat: helpers.parseImageFormat({
136
+ value: helpers.getStringFlag({ flags, name: "image-format" }),
137
+ }),
138
+ });
139
+ helpers.printResult({
140
+ json: context.json,
141
+ value: result,
142
+ human: result.previews.map((preview) => `${preview.time_seconds}s ${preview.preview_url} captured=${preview.captured_at ?? "unknown"}${preview.cached ? " cached=true" : ""}`),
143
+ });
144
+ return true;
145
+ }
146
+ if (action === "visual-debug") {
147
+ const result = await context.client.projects.visualDebug({
148
+ projectId: helpers.requireStringFlag({ flags, name: "project-id" }),
149
+ timeSeconds: helpers.parseTimecode({
150
+ value: helpers.requireStringFlag({ flags, name: "at" }),
151
+ }),
152
+ });
153
+ helpers.printResult({
154
+ json: context.json,
155
+ value: result,
156
+ human: [
157
+ `Captured: ${result.captured_at ?? "unknown"}${result.cached ? " (cached)" : ""}`,
158
+ `Layout: ${result.layout_key ?? "unknown"}`,
159
+ `Media rects: ${result.visible_media_rects.length}`,
160
+ `Caption rects: ${result.caption_rects.length}`,
161
+ `Source crops: ${result.source_crops.length}`,
162
+ ],
163
+ });
164
+ return true;
165
+ }
166
+ return false;
167
+ }
168
+ function matchesProjectReadCommand({ command, }) {
169
+ const [group, action] = command;
170
+ return (group === "project" &&
171
+ (action === "inspect" ||
172
+ action === "timeline" ||
173
+ action === "snapshot" ||
174
+ action === "snapshots" ||
175
+ action === "visual-debug"));
176
+ }
177
+ function timelineLayerModelHelp() {
178
+ return [
179
+ "Timeline layer rule: lower layer_index renders above higher layer_index.",
180
+ "Default visual order: captions 0, text/effects 1, image B-roll 2, main video 3, audio 4, background/fill 5.",
181
+ "Use layer_index 2 for normal visible image/video B-roll above the main clip; use 1 only when it must sit above other overlays, and avoid 0 unless replacing captions.",
182
+ ];
183
+ }
184
+ //# sourceMappingURL=project-read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-read.js","sourceRoot":"","sources":["../../src/commands/project-read.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,18 @@
1
- import type { CliContext, Flags } from "../cli-types.js";
1
+ import type { Flags } from "../cli-types.js";
2
+ import { type CommandSpec } from "../command-metadata.js";
3
+ import { type DryRunPreview } from "../preview-first-edit.js";
4
+ import type { CommandOperation } from "./command-operation.js";
5
+ export declare const PROJECTS_COMMAND_SPECS: CommandSpec[];
2
6
  export type ProjectsCommandHelpers = {
7
+ dryRunRequest: (params: {
8
+ spec: CommandSpec;
9
+ method: string;
10
+ path: string;
11
+ query?: Record<string, unknown>;
12
+ body: unknown;
13
+ followUpRequests?: DryRunPreview["follow_up_requests"];
14
+ notes?: string[];
15
+ }) => DryRunPreview;
3
16
  getBooleanFlag: (params: {
4
17
  flags: Flags;
5
18
  name: string;
@@ -44,9 +57,7 @@ export type ProjectsCommandHelpers = {
44
57
  fields?: string[];
45
58
  }) => void;
46
59
  };
47
- export declare function handleProjectsCommand({ context, action, helpers, }: {
48
- context: CliContext;
49
- action: string | undefined;
60
+ export declare function createProjectsCommandOperation({ helpers, }: {
50
61
  helpers: ProjectsCommandHelpers;
51
- }): Promise<boolean>;
62
+ }): CommandOperation;
52
63
  //# sourceMappingURL=projects.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGzD,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;IACpE,aAAa,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,GAAG,SAAS,CAAC;IAC9E,aAAa,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,GAAG,SAAS,CAAC;IAC9E,iBAAiB,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;IACtE,uBAAuB,EAAE,CAAC,MAAM,EAAE;QAChC,KAAK,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAChC,kBAAkB,EAAE,CAAC,MAAM,EAAE;QAC3B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;KAC3B,KAAK,QAAQ,GAAG,UAAU,GAAG,KAAK,GAAG,SAAS,CAAC;IAChD,gBAAgB,EAAE,CAAC,MAAM,EAAE;QACzB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;KAC3B,KAAK,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;IAClD,gBAAgB,EAAE,CAAC,MAAM,EAAE;QACzB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;KAC3B,KAAK,OAAO,GAAG,UAAU,GAAG,SAAS,CAAC;IACvC,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAC5B,KAAK,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC1C,wBAAwB,EAAE,CAAC,MAAM,EAAE;QACjC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;QAC5B,SAAS,EAAE,MAAM,CAAC;KACnB,KAAK,MAAM,CAAC;IACb,WAAW,EAAE,CAAC,MAAM,EAAE;QACpB,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,OAAO,CAAC;QACf,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;KACnB,KAAK,IAAI,CAAC;CACZ,CAAC;AAEF,wBAAsB,qBAAqB,CAAC,EAC1C,OAAO,EACP,MAAM,EACN,OAAO,GACR,EAAE;IACD,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,sBAAsB,CAAC;CACjC,GAAG,OAAO,CAAC,OAAO,CAAC,CAmKnB"}
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,131 @@
1
- import { requireDeleteConfirmation } from "../preview-first-edit.js";
2
- export async function handleProjectsCommand({ context, action, helpers, }) {
1
+ import { commandSpec } from "../command-metadata.js";
2
+ import { requireDeleteConfirmation, } from "../preview-first-edit.js";
3
+ export const PROJECTS_COMMAND_SPECS = [
4
+ commandSpec({
5
+ command: ["projects", "list"],
6
+ usage: "blitzreels projects list [--search QUERY] [--status active|archived|all] [--limit 50] [--offset 0] [--cursor CURSOR] [--json]",
7
+ flags: ["search", "status", "limit", "offset", "cursor"],
8
+ }),
9
+ commandSpec({
10
+ command: ["project", "list"],
11
+ usage: "blitzreels project list [--search QUERY] [--status active|archived|all] [--limit 50] [--offset 0] [--cursor CURSOR] [--json]",
12
+ flags: ["search", "status", "limit", "offset", "cursor"],
13
+ description: "Alias for projects list.",
14
+ }),
15
+ commandSpec({
16
+ command: ["projects", "create"],
17
+ usage: "blitzreels projects create --name NAME [--description TEXT] [--aspect-ratio 9:16] [--idempotency-key KEY]",
18
+ flags: [
19
+ "name",
20
+ "description",
21
+ "aspect-ratio",
22
+ "project-type",
23
+ "carousel-settings-json",
24
+ {
25
+ name: "idempotency-key",
26
+ description: "Stable retry key; reuse only with identical inputs.",
27
+ },
28
+ ],
29
+ }),
30
+ commandSpec({
31
+ command: ["projects", "get"],
32
+ usage: "blitzreels projects get --project-id ID [--json]",
33
+ flags: ["project-id"],
34
+ }),
35
+ commandSpec({
36
+ command: ["projects", "rename"],
37
+ usage: "blitzreels projects rename --project-id ID --name NAME",
38
+ flags: ["project-id", "name"],
39
+ }),
40
+ commandSpec({
41
+ command: ["projects", "update"],
42
+ usage: "blitzreels projects update --project-id ID [--name NAME] [--description TEXT|null] [--aspect-ratio 9:16|16:9|1:1|4:5]",
43
+ flags: ["project-id", "name", "description", "aspect-ratio"],
44
+ }),
45
+ commandSpec({
46
+ command: ["projects", "delete"],
47
+ usage: "blitzreels projects delete --project-id ID --confirm-delete",
48
+ flags: ["project-id", "confirm-delete"],
49
+ }),
50
+ ];
51
+ export function createProjectsCommandOperation({ helpers, }) {
52
+ return {
53
+ name: "projects",
54
+ matches: ({ command }) => command[0] === "projects" ||
55
+ (command[0] === "project" && command[1] === "list"),
56
+ handle: async ({ context }) => handleProjectsCommand({
57
+ context,
58
+ action: context.args.command[0] === "project" &&
59
+ context.args.command[1] === "list"
60
+ ? "list"
61
+ : context.args.command[1],
62
+ helpers,
63
+ }),
64
+ buildDryRun: ({ context, spec }) => buildProjectsDryRun({ context, spec, helpers }),
65
+ };
66
+ }
67
+ function buildProjectsDryRun({ context, spec, helpers, }) {
68
+ const action = context.args.command[0] === "project" && context.args.command[1] === "list"
69
+ ? "list"
70
+ : context.args.command[1];
71
+ const flags = context.args.flags;
72
+ if (action === "create") {
73
+ return helpers.dryRunRequest({
74
+ spec,
75
+ method: "POST",
76
+ path: "/projects",
77
+ body: {
78
+ name: helpers.requireStringFlag({ flags, name: "name" }),
79
+ description: helpers.getStringFlag({ flags, name: "description" }),
80
+ aspect_ratio: helpers.parseAspectRatio({
81
+ value: helpers.getStringFlag({ flags, name: "aspect-ratio" }),
82
+ }),
83
+ project_type: helpers.parseProjectType({
84
+ value: helpers.getStringFlag({ flags, name: "project-type" }),
85
+ }),
86
+ carousel_settings: helpers.parseJsonObjectFlag({
87
+ flags,
88
+ name: "carousel-settings-json",
89
+ }),
90
+ },
91
+ });
92
+ }
93
+ if (action === "rename" || action === "update") {
94
+ const projectId = helpers.requireStringFlag({ flags, name: "project-id" });
95
+ return helpers.dryRunRequest({
96
+ spec,
97
+ method: "PATCH",
98
+ path: `/projects/${encodeURIComponent(projectId)}`,
99
+ body: {
100
+ name: action === "rename"
101
+ ? helpers.requireStringFlag({ flags, name: "name" })
102
+ : helpers.getStringFlag({ flags, name: "name" }),
103
+ description: action === "rename"
104
+ ? undefined
105
+ : helpers.parseNullableStringFlag({ flags, name: "description" }),
106
+ aspect_ratio: action === "rename"
107
+ ? undefined
108
+ : helpers.parseAspectRatio({
109
+ value: helpers.getStringFlag({ flags, name: "aspect-ratio" }),
110
+ }),
111
+ },
112
+ });
113
+ }
114
+ if (action === "delete") {
115
+ requireDeleteConfirmation({
116
+ confirmed: helpers.getBooleanFlag({ flags, name: "confirm-delete" }),
117
+ });
118
+ const projectId = helpers.requireStringFlag({ flags, name: "project-id" });
119
+ return helpers.dryRunRequest({
120
+ spec,
121
+ method: "DELETE",
122
+ path: `/projects/${encodeURIComponent(projectId)}`,
123
+ body: undefined,
124
+ });
125
+ }
126
+ return undefined;
127
+ }
128
+ async function handleProjectsCommand({ context, action, helpers, }) {
3
129
  if (action === "list") {
4
130
  const result = await context.client.projects.list({
5
131
  limit: helpers.getNumberFlag({
@@ -58,6 +184,10 @@ export async function handleProjectsCommand({ context, action, helpers, }) {
58
184
  flags: context.args.flags,
59
185
  name: "carousel-settings-json",
60
186
  }),
187
+ idempotencyKey: helpers.getStringFlag({
188
+ flags: context.args.flags,
189
+ name: "idempotency-key",
190
+ }),
61
191
  });
62
192
  const dashboardUrl = helpers.buildProjectDashboardUrl({
63
193
  baseUrl: context.config.baseUrl,
@@ -105,6 +235,7 @@ export async function handleProjectsCommand({ context, action, helpers, }) {
105
235
  name: "name",
106
236
  }),
107
237
  description: undefined,
238
+ aspectRatio: undefined,
108
239
  });
109
240
  helpers.printResult({
110
241
  json: context.json,
@@ -124,6 +255,12 @@ export async function handleProjectsCommand({ context, action, helpers, }) {
124
255
  flags: context.args.flags,
125
256
  name: "description",
126
257
  }),
258
+ aspectRatio: helpers.parseAspectRatio({
259
+ value: helpers.getStringFlag({
260
+ flags: context.args.flags,
261
+ name: "aspect-ratio",
262
+ }),
263
+ }),
127
264
  });
128
265
  helpers.printResult({
129
266
  json: context.json,
@@ -1 +1 @@
1
- {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/commands/projects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import type { Flags } from "../cli-types.js";
2
+ import { type CommandSpec } from "../command-metadata.js";
3
+ import type { DryRunPreview } from "../preview-first-edit.js";
4
+ import type { CommandOperation } from "./command-operation.js";
5
+ type StockAssetType = "image" | "video" | "audio";
6
+ type StockProvider = "pexels" | "freesound";
7
+ type StockAudioType = "sound_effect" | "ambient" | "background_music" | "other";
8
+ type GlobalBrollAudioType = "music" | "sound_effect" | "ambient" | "background_music" | "other";
9
+ export declare const STOCK_LIBRARY_COMMAND_SPECS: CommandSpec[];
10
+ export type StockLibraryCommandHelpers = {
11
+ dryRunRequest: (params: {
12
+ spec: CommandSpec;
13
+ method: string;
14
+ path: string;
15
+ query?: Record<string, unknown>;
16
+ body: unknown;
17
+ followUpRequests?: DryRunPreview["follow_up_requests"];
18
+ notes?: string[];
19
+ }) => DryRunPreview;
20
+ getNumberFlag: (params: {
21
+ flags: Flags;
22
+ name: string;
23
+ }) => number | undefined;
24
+ getStringFlag: (params: {
25
+ flags: Flags;
26
+ name: string;
27
+ }) => string | undefined;
28
+ parseFolderIdFlag: (params: {
29
+ flags: Flags;
30
+ name: string;
31
+ }) => string | null | undefined;
32
+ parseGlobalBrollAudioType: (params: {
33
+ value: string | undefined;
34
+ }) => GlobalBrollAudioType | null;
35
+ parseNullableStockAssetType: (params: {
36
+ value: string | undefined;
37
+ }) => StockAssetType | null;
38
+ parseRequiredStockProvider: (params: {
39
+ value: string;
40
+ }) => StockProvider;
41
+ parseStockAssetType: (params: {
42
+ value: string;
43
+ }) => StockAssetType;
44
+ parseStockAudioType: (params: {
45
+ value: string | undefined;
46
+ }) => StockAudioType | undefined;
47
+ parseStockOrientation: (params: {
48
+ value: string | undefined;
49
+ }) => "landscape" | "portrait" | "square" | null;
50
+ parseStockProvider: (params: {
51
+ value: string | undefined;
52
+ }) => StockProvider | null;
53
+ parseNullableStringFlag: (params: {
54
+ flags: Flags;
55
+ name: string;
56
+ }) => string | null | undefined;
57
+ printResult: (params: {
58
+ json: boolean;
59
+ value: unknown;
60
+ human: string[];
61
+ fields?: string[];
62
+ }) => void;
63
+ requireStringFlag: (params: {
64
+ flags: Flags;
65
+ name: string;
66
+ }) => string;
67
+ };
68
+ export declare function createStockLibraryCommandOperation({ helpers, }: {
69
+ helpers: StockLibraryCommandHelpers;
70
+ }): CommandOperation;
71
+ export {};
72
+ //# sourceMappingURL=stock-library.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stock-library.d.ts","sourceRoot":"","sources":["../../src/commands/stock-library.ts"],"names":[],"mappings":"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"}