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,115 @@
1
+ export function buildWorkspaceDefaults({ flags }) {
2
+ const defaults = {
3
+ aspectRatio: parseNullableAspectRatio({
4
+ value: getStringFlag({ flags, name: "aspect-ratio" }),
5
+ }),
6
+ orientation: parseOrientation({
7
+ value: getStringFlag({ flags, name: "orientation" }),
8
+ }),
9
+ resolution: parseResolution({
10
+ value: getStringFlag({ flags, name: "resolution" }),
11
+ }),
12
+ frameRate: parseFrameRate({
13
+ value: getStringFlag({ flags, name: "frame-rate" }),
14
+ }),
15
+ autoManageBroll: getOptionalBooleanFlag({
16
+ flags,
17
+ name: "auto-manage-broll",
18
+ }),
19
+ captionThemeId: parseNullableStringFlag({
20
+ flags,
21
+ name: "caption-theme-id",
22
+ }),
23
+ };
24
+ if (defaults.aspectRatio === undefined &&
25
+ defaults.orientation === undefined &&
26
+ defaults.resolution === undefined &&
27
+ defaults.frameRate === undefined &&
28
+ defaults.autoManageBroll === undefined &&
29
+ defaults.captionThemeId === undefined) {
30
+ return undefined;
31
+ }
32
+ return defaults;
33
+ }
34
+ function getStringFlag({ flags, name, }) {
35
+ const value = flags[name];
36
+ if (value === undefined || value === true) {
37
+ return undefined;
38
+ }
39
+ return String(value);
40
+ }
41
+ function getOptionalBooleanFlag({ flags, name, }) {
42
+ if (!(name in flags)) {
43
+ return undefined;
44
+ }
45
+ return flags[name] === true || flags[name] === "true";
46
+ }
47
+ function parseNullableStringFlag({ flags, name, }) {
48
+ const value = getStringFlag({ flags, name });
49
+ if (value === undefined) {
50
+ return undefined;
51
+ }
52
+ if (value === "null") {
53
+ return null;
54
+ }
55
+ return value;
56
+ }
57
+ function parseNullableAspectRatio({ value, }) {
58
+ if (value === "null") {
59
+ return null;
60
+ }
61
+ if (value === undefined ||
62
+ value === "9:16" ||
63
+ value === "16:9" ||
64
+ value === "1:1" ||
65
+ value === "4:5") {
66
+ return value;
67
+ }
68
+ throw new Error("--aspect-ratio must be 9:16, 16:9, 1:1, or 4:5.");
69
+ }
70
+ function parseOrientation({ value, }) {
71
+ if (value === undefined) {
72
+ return undefined;
73
+ }
74
+ if (value === "null") {
75
+ return null;
76
+ }
77
+ if (value === "landscape" || value === "portrait" || value === "square") {
78
+ return value;
79
+ }
80
+ throw new Error("--orientation must be landscape, portrait, square, or null.");
81
+ }
82
+ function parseResolution({ value, }) {
83
+ if (value === undefined) {
84
+ return undefined;
85
+ }
86
+ if (value === "null") {
87
+ return null;
88
+ }
89
+ if (value === "0.25" ||
90
+ value === "0.5" ||
91
+ value === "0.75" ||
92
+ value === "1" ||
93
+ value === "1.5" ||
94
+ value === "2") {
95
+ return value;
96
+ }
97
+ throw new Error("--resolution must be 0.25, 0.5, 0.75, 1, 1.5, 2, or null.");
98
+ }
99
+ function parseFrameRate({ value, }) {
100
+ if (value === undefined) {
101
+ return undefined;
102
+ }
103
+ if (value === "null") {
104
+ return null;
105
+ }
106
+ if (value === "24" ||
107
+ value === "25" ||
108
+ value === "30" ||
109
+ value === "50" ||
110
+ value === "60") {
111
+ return value;
112
+ }
113
+ throw new Error("--frame-rate must be 24, 25, 30, 50, 60, or null.");
114
+ }
115
+ //# sourceMappingURL=workspace-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace-defaults.js","sourceRoot":"","sources":["../../src/commands/workspace-defaults.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
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 WorkspaceDefaults = {
6
+ aspectRatio: "9:16" | "16:9" | "1:1" | "4:5" | null | undefined;
7
+ orientation: "landscape" | "portrait" | "square" | null | undefined;
8
+ resolution: "0.25" | "0.5" | "0.75" | "1" | "1.5" | "2" | null | undefined;
9
+ frameRate: "24" | "25" | "30" | "50" | "60" | null | undefined;
10
+ autoManageBroll: boolean | undefined;
11
+ captionThemeId: string | null | undefined;
12
+ } | undefined;
13
+ export declare const WORKSPACE_COMMAND_SPECS: CommandSpec[];
14
+ export type WorkspaceCommandHelpers = {
15
+ buildWorkspaceDefaults: (params: {
16
+ flags: Flags;
17
+ }) => WorkspaceDefaults;
18
+ dryRunRequest: (params: {
19
+ spec: CommandSpec;
20
+ method: string;
21
+ path: string;
22
+ query?: Record<string, unknown>;
23
+ body: unknown;
24
+ followUpRequests?: DryRunPreview["follow_up_requests"];
25
+ notes?: string[];
26
+ }) => DryRunPreview;
27
+ getStringFlag: (params: {
28
+ flags: Flags;
29
+ name: string;
30
+ }) => string | undefined;
31
+ parseCsvFlag: (params: {
32
+ flags: Flags;
33
+ name: string;
34
+ }) => string[] | undefined;
35
+ parseNullableStringFlag: (params: {
36
+ flags: Flags;
37
+ name: string;
38
+ }) => string | null | undefined;
39
+ printResult: (params: {
40
+ json: boolean;
41
+ value: unknown;
42
+ human: string[];
43
+ fields?: string[];
44
+ }) => void;
45
+ };
46
+ export declare function createWorkspaceCommandOperation({ helpers, }: {
47
+ helpers: WorkspaceCommandHelpers;
48
+ }): CommandOperation;
49
+ export {};
50
+ //# sourceMappingURL=workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../src/commands/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,WAAW,EAAe,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,KAAK,iBAAiB,GAClB;IACE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;IAChE,WAAW,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAC;IACpE,UAAU,EACN,MAAM,GACN,KAAK,GACL,MAAM,GACN,GAAG,GACH,KAAK,GACL,GAAG,GACH,IAAI,GACJ,SAAS,CAAC;IACd,SAAS,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/D,eAAe,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GACD,SAAS,CAAC;AAEd,eAAO,MAAM,uBAAuB,EAAE,WAAW,EAsBhD,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,sBAAsB,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,iBAAiB,CAAC;IACxE,aAAa,EAAE,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,WAAW,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,EAAE,OAAO,CAAC;QACd,gBAAgB,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;QACvD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;KAClB,KAAK,aAAa,CAAC;IACpB,aAAa,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,GAAG,SAAS,CAAC;IAC9E,YAAY,EAAE,CAAC,MAAM,EAAE;QACrB,KAAK,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,MAAM,EAAE,GAAG,SAAS,CAAC;IAC3B,uBAAuB,EAAE,CAAC,MAAM,EAAE;QAChC,KAAK,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAChC,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,wBAAgB,+BAA+B,CAAC,EAC9C,OAAO,GACR,EAAE;IACD,OAAO,EAAE,uBAAuB,CAAC;CAClC,GAAG,gBAAgB,CAiFnB"}
@@ -0,0 +1,116 @@
1
+ import { commandSpec } from "../command-metadata.js";
2
+ export const WORKSPACE_COMMAND_SPECS = [
3
+ commandSpec({
4
+ command: ["workspace", "settings", "get"],
5
+ usage: "blitzreels workspace settings get [--json]",
6
+ }),
7
+ commandSpec({
8
+ command: ["workspace", "settings", "update"],
9
+ usage: "blitzreels workspace settings update [--name NAME] [--description TEXT|null] [--protected-words foo,bar] [--icon-storage-key KEY|null] [--aspect-ratio 9:16] [--orientation portrait] [--resolution 1080p] [--frame-rate 30] [--auto-manage-broll true] [--caption-theme-id ID|null]",
10
+ flags: [
11
+ "name",
12
+ "description",
13
+ "protected-words",
14
+ "icon-storage-key",
15
+ "aspect-ratio",
16
+ "orientation",
17
+ "resolution",
18
+ "frame-rate",
19
+ "auto-manage-broll",
20
+ "caption-theme-id",
21
+ ],
22
+ }),
23
+ ];
24
+ export function createWorkspaceCommandOperation({ helpers, }) {
25
+ return {
26
+ name: "workspace",
27
+ matches: ({ command }) => command[0] === "workspace",
28
+ handle: async ({ context }) => {
29
+ const [, action, subaction] = context.args.command;
30
+ const flags = context.args.flags;
31
+ if (action === "settings" && subaction === "get") {
32
+ const result = await context.client.workspace.getSettings();
33
+ helpers.printResult({
34
+ json: context.json,
35
+ value: result,
36
+ human: [
37
+ `Workspace: ${result.settings.name}`,
38
+ `Description: ${result.settings.description ?? ""}`,
39
+ `Protected words: ${result.settings.protected_words.join(", ") || "-"}`,
40
+ `Defaults: ${JSON.stringify(result.settings.defaults)}`,
41
+ ],
42
+ });
43
+ return true;
44
+ }
45
+ if (action === "settings" && subaction === "update") {
46
+ const result = await context.client.workspace.updateSettings({
47
+ name: helpers.getStringFlag({ flags, name: "name" }),
48
+ description: helpers.parseNullableStringFlag({
49
+ flags,
50
+ name: "description",
51
+ }),
52
+ protectedWords: helpers.parseCsvFlag({
53
+ flags,
54
+ name: "protected-words",
55
+ }),
56
+ iconStorageKey: helpers.parseNullableStringFlag({
57
+ flags,
58
+ name: "icon-storage-key",
59
+ }),
60
+ defaults: helpers.buildWorkspaceDefaults({ flags }),
61
+ });
62
+ helpers.printResult({
63
+ json: context.json,
64
+ value: result,
65
+ human: [`Workspace settings updated: ${result.settings.name}`],
66
+ });
67
+ return true;
68
+ }
69
+ return false;
70
+ },
71
+ buildDryRun: ({ context, spec }) => {
72
+ const [, action, subaction] = context.args.command;
73
+ if (action !== "settings" || subaction !== "update") {
74
+ return undefined;
75
+ }
76
+ const flags = context.args.flags;
77
+ return helpers.dryRunRequest({
78
+ spec,
79
+ method: "PATCH",
80
+ path: "/workspace/settings",
81
+ body: {
82
+ name: helpers.getStringFlag({ flags, name: "name" }),
83
+ description: helpers.parseNullableStringFlag({
84
+ flags,
85
+ name: "description",
86
+ }),
87
+ protected_words: helpers.parseCsvFlag({
88
+ flags,
89
+ name: "protected-words",
90
+ }),
91
+ icon_storage_key: helpers.parseNullableStringFlag({
92
+ flags,
93
+ name: "icon-storage-key",
94
+ }),
95
+ defaults: toApiWorkspaceDefaults({
96
+ defaults: helpers.buildWorkspaceDefaults({ flags }),
97
+ }),
98
+ },
99
+ });
100
+ },
101
+ };
102
+ }
103
+ function toApiWorkspaceDefaults({ defaults, }) {
104
+ if (defaults === undefined) {
105
+ return undefined;
106
+ }
107
+ return {
108
+ aspect_ratio: defaults.aspectRatio,
109
+ orientation: defaults.orientation,
110
+ resolution: defaults.resolution,
111
+ frame_rate: defaults.frameRate,
112
+ auto_manage_broll: defaults.autoManageBroll,
113
+ caption_theme_id: defaults.captionThemeId,
114
+ };
115
+ }
116
+ //# sourceMappingURL=workspace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../src/commands/workspace.ts"],"names":[],"mappings":"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"}