@clipwright/core 0.39.0 → 0.41.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 (267) hide show
  1. package/dist/account-actors.d.ts +94 -2
  2. package/dist/account-actors.js +151 -34
  3. package/dist/account-actors.js.map +1 -1
  4. package/dist/actor-bounds.d.ts +3 -3
  5. package/dist/actor-bounds.js +3 -3
  6. package/dist/actor-bounds.js.map +1 -1
  7. package/dist/actors.d.ts +24 -2
  8. package/dist/actors.js +30 -9
  9. package/dist/actors.js.map +1 -1
  10. package/dist/ad-pause-trim.d.ts +21 -0
  11. package/dist/ad-pause-trim.js +16 -0
  12. package/dist/ad-pause-trim.js.map +1 -0
  13. package/dist/aspect.d.ts +5 -0
  14. package/dist/aspect.js +7 -0
  15. package/dist/aspect.js.map +1 -1
  16. package/dist/assets.d.ts +2 -1
  17. package/dist/assets.js +10 -11
  18. package/dist/assets.js.map +1 -1
  19. package/dist/billing-terms.d.ts +8 -0
  20. package/dist/broll-policy.js +2 -3
  21. package/dist/broll-policy.js.map +1 -1
  22. package/dist/caption-geometry.js +10 -8
  23. package/dist/caption-geometry.js.map +1 -1
  24. package/dist/contract-dispositions.d.ts +1575 -100
  25. package/dist/contract-dispositions.js +100 -14
  26. package/dist/contract-dispositions.js.map +1 -1
  27. package/dist/contracts/v1/workflow-brief.d.ts +10764 -2790
  28. package/dist/contracts/v1/workflow-brief.js +19 -1
  29. package/dist/contracts/v1/workflow-brief.js.map +1 -1
  30. package/dist/contracts/v1/workflow-catalog.d.ts +11612 -3536
  31. package/dist/contracts/v1/workflow-client.d.ts +5429 -1187
  32. package/dist/contracts/v1/workflow-client.js +9 -5
  33. package/dist/contracts/v1/workflow-client.js.map +1 -1
  34. package/dist/contracts/v1/workflow-execution.d.ts +242 -0
  35. package/dist/contracts/v1/workflow-execution.js +2 -2
  36. package/dist/contracts/v1/workflow-execution.js.map +1 -1
  37. package/dist/contracts/v1/workflow-next.d.ts +225 -0
  38. package/dist/contracts/v1/workflow-next.js +21 -0
  39. package/dist/contracts/v1/workflow-next.js.map +1 -0
  40. package/dist/contracts/v1/workflow-plan.d.ts +18556 -6429
  41. package/dist/contracts/v1/workflow-plan.js +2 -1
  42. package/dist/contracts/v1/workflow-plan.js.map +1 -1
  43. package/dist/contracts/v1/workflow-primitives.d.ts +20 -1
  44. package/dist/contracts/v1/workflow-primitives.js +8 -2
  45. package/dist/contracts/v1/workflow-primitives.js.map +1 -1
  46. package/dist/contracts/v1/workflow-run-read.d.ts +50 -0
  47. package/dist/creator-profile.d.ts +1 -0
  48. package/dist/creator-profile.js +13 -7
  49. package/dist/creator-profile.js.map +1 -1
  50. package/dist/design.d.ts +921 -0
  51. package/dist/design.js +183 -0
  52. package/dist/design.js.map +1 -0
  53. package/dist/edit-candidate.d.ts +2 -0
  54. package/dist/edit-candidate.js +3 -0
  55. package/dist/edit-candidate.js.map +1 -1
  56. package/dist/edit-faceless.js +2 -1
  57. package/dist/edit-faceless.js.map +1 -1
  58. package/dist/endpoint-notes.js +19 -0
  59. package/dist/endpoint-notes.js.map +1 -1
  60. package/dist/endpoints.js +21 -4
  61. package/dist/endpoints.js.map +1 -1
  62. package/dist/errors.d.ts +1 -1
  63. package/dist/errors.js +7 -0
  64. package/dist/errors.js.map +1 -1
  65. package/dist/face-billing.d.ts +39 -0
  66. package/dist/face-billing.js +11 -1
  67. package/dist/face-billing.js.map +1 -1
  68. package/dist/faceless-action-shots.d.ts +31 -0
  69. package/dist/faceless-action-shots.js +51 -0
  70. package/dist/faceless-action-shots.js.map +1 -0
  71. package/dist/faceless-media-record.d.ts +56 -0
  72. package/dist/faceless-media-record.js +6 -2
  73. package/dist/faceless-media-record.js.map +1 -1
  74. package/dist/faceless-price.d.ts +22 -0
  75. package/dist/faceless-price.js +27 -3
  76. package/dist/faceless-price.js.map +1 -1
  77. package/dist/faceless-public-plan.d.ts +10 -1
  78. package/dist/faceless-public-plan.js +4 -0
  79. package/dist/faceless-public-plan.js.map +1 -1
  80. package/dist/faceless-public.d.ts +5583 -184
  81. package/dist/faceless-public.js +114 -16
  82. package/dist/faceless-public.js.map +1 -1
  83. package/dist/feedback.js +1 -1
  84. package/dist/feedback.js.map +1 -1
  85. package/dist/generations-output.js +1 -1
  86. package/dist/generations-output.js.map +1 -1
  87. package/dist/generations.d.ts +1 -1
  88. package/dist/generations.js +2 -2
  89. package/dist/index.d.ts +10 -0
  90. package/dist/index.js +11 -0
  91. package/dist/index.js.map +1 -1
  92. package/dist/live-shot-kinds.d.ts +22 -0
  93. package/dist/live-shot-kinds.js +17 -0
  94. package/dist/live-shot-kinds.js.map +1 -0
  95. package/dist/long-form-profile.d.ts +1 -1
  96. package/dist/long-form-profile.js +1 -1
  97. package/dist/mcp-ugc-descriptions.d.ts +32 -0
  98. package/dist/mcp-ugc-descriptions.js +112 -0
  99. package/dist/mcp-ugc-descriptions.js.map +1 -0
  100. package/dist/motion-styles.d.ts +54 -0
  101. package/dist/motion-styles.js +67 -0
  102. package/dist/motion-styles.js.map +1 -0
  103. package/dist/moves.d.ts +222 -0
  104. package/dist/moves.js +81 -0
  105. package/dist/moves.js.map +1 -0
  106. package/dist/music.d.ts +18 -0
  107. package/dist/music.js +29 -0
  108. package/dist/music.js.map +1 -0
  109. package/dist/openapi.d.ts +3 -1
  110. package/dist/openapi.js +32 -5
  111. package/dist/openapi.js.map +1 -1
  112. package/dist/parts-pricing.d.ts +14 -3
  113. package/dist/parts-pricing.js +23 -5
  114. package/dist/parts-pricing.js.map +1 -1
  115. package/dist/prices.d.ts +6 -1
  116. package/dist/prices.js +56 -17
  117. package/dist/prices.js.map +1 -1
  118. package/dist/reference-analysis.d.ts +134 -0
  119. package/dist/reference-analysis.js +45 -33
  120. package/dist/reference-analysis.js.map +1 -1
  121. package/dist/reference-display.js +3 -0
  122. package/dist/reference-display.js.map +1 -1
  123. package/dist/reference-kinds.d.ts +3 -2
  124. package/dist/reference-kinds.js +2 -1
  125. package/dist/reference-kinds.js.map +1 -1
  126. package/dist/reference-profile.d.ts +437 -0
  127. package/dist/reference-profile.js +46 -5
  128. package/dist/reference-profile.js.map +1 -1
  129. package/dist/reference-staging.d.ts +54 -2
  130. package/dist/reference-staging.js +28 -5
  131. package/dist/reference-staging.js.map +1 -1
  132. package/dist/reference-text-spans.d.ts +26 -0
  133. package/dist/reference-text-spans.js +76 -0
  134. package/dist/reference-text-spans.js.map +1 -0
  135. package/dist/resolved-timeline.d.ts +173 -0
  136. package/dist/resolved-timeline.js +16 -5
  137. package/dist/resolved-timeline.js.map +1 -1
  138. package/dist/run-media.d.ts +5 -0
  139. package/dist/run-media.js +17 -0
  140. package/dist/run-media.js.map +1 -0
  141. package/dist/run-static-warnings.js +12 -3
  142. package/dist/run-static-warnings.js.map +1 -1
  143. package/dist/runs.d.ts +49 -0
  144. package/dist/runs.js +5 -0
  145. package/dist/runs.js.map +1 -1
  146. package/dist/scene-graph.d.ts +547 -0
  147. package/dist/scene-graph.js +296 -0
  148. package/dist/scene-graph.js.map +1 -0
  149. package/dist/scene-place.d.ts +2 -0
  150. package/dist/scene-place.js +6 -0
  151. package/dist/scene-place.js.map +1 -1
  152. package/dist/semantic-inserts.d.ts +2 -1
  153. package/dist/semantic-inserts.js +4 -4
  154. package/dist/semantic-inserts.js.map +1 -1
  155. package/dist/skills.d.ts +11743 -5428
  156. package/dist/skills.js +248 -59
  157. package/dist/skills.js.map +1 -1
  158. package/dist/templates/chart.d.ts +35 -0
  159. package/dist/templates/chart.js +38 -0
  160. package/dist/templates/chart.js.map +1 -0
  161. package/dist/templates/chat-window.d.ts +58 -0
  162. package/dist/templates/chat-window.js +57 -0
  163. package/dist/templates/chat-window.js.map +1 -0
  164. package/dist/templates/compare.d.ts +10 -2
  165. package/dist/templates/compare.js +13 -9
  166. package/dist/templates/compare.js.map +1 -1
  167. package/dist/templates/hand-title.d.ts +32 -0
  168. package/dist/templates/hand-title.js +47 -0
  169. package/dist/templates/hand-title.js.map +1 -0
  170. package/dist/templates/index.d.ts +33 -7
  171. package/dist/templates/index.js +95 -51
  172. package/dist/templates/index.js.map +1 -1
  173. package/dist/templates/lower-third.d.ts +11 -0
  174. package/dist/templates/lower-third.js +8 -3
  175. package/dist/templates/lower-third.js.map +1 -1
  176. package/dist/templates/notification.d.ts +24 -2
  177. package/dist/templates/notification.js +21 -12
  178. package/dist/templates/notification.js.map +1 -1
  179. package/dist/templates/phone-screen.d.ts +37 -0
  180. package/dist/templates/phone-screen.js +41 -0
  181. package/dist/templates/phone-screen.js.map +1 -0
  182. package/dist/templates/pointer-chips.d.ts +40 -0
  183. package/dist/templates/pointer-chips.js +53 -0
  184. package/dist/templates/pointer-chips.js.map +1 -0
  185. package/dist/templates/quote.d.ts +2 -2
  186. package/dist/templates/quote.js +5 -5
  187. package/dist/templates/quote.js.map +1 -1
  188. package/dist/templates/race.d.ts +32 -0
  189. package/dist/templates/race.js +43 -0
  190. package/dist/templates/race.js.map +1 -0
  191. package/dist/templates/size.d.ts +20 -0
  192. package/dist/templates/size.js +14 -0
  193. package/dist/templates/size.js.map +1 -1
  194. package/dist/templates/slot.js +1 -1
  195. package/dist/templates/slot.js.map +1 -1
  196. package/dist/templates/sounds.d.ts +221 -4
  197. package/dist/templates/sounds.js +40 -10
  198. package/dist/templates/sounds.js.map +1 -1
  199. package/dist/templates/terminal.d.ts +46 -0
  200. package/dist/templates/terminal.js +46 -0
  201. package/dist/templates/terminal.js.map +1 -0
  202. package/dist/templates/video-grid.d.ts +52 -0
  203. package/dist/templates/video-grid.js +50 -0
  204. package/dist/templates/video-grid.js.map +1 -0
  205. package/dist/templates/word-fill.d.ts +22 -0
  206. package/dist/templates/word-fill.js +29 -0
  207. package/dist/templates/word-fill.js.map +1 -0
  208. package/dist/templates/word-title.d.ts +24 -0
  209. package/dist/templates/word-title.js +33 -0
  210. package/dist/templates/word-title.js.map +1 -0
  211. package/dist/trend-search.d.ts +336 -0
  212. package/dist/trend-search.js +307 -0
  213. package/dist/trend-search.js.map +1 -0
  214. package/dist/ugc-call.d.ts +4 -4
  215. package/dist/ugc-call.js +4 -4
  216. package/dist/ugc-call.js.map +1 -1
  217. package/dist/ugc-framing.d.ts +3 -2
  218. package/dist/ugc-framing.js +4 -3
  219. package/dist/ugc-framing.js.map +1 -1
  220. package/dist/ugc-interview.d.ts +3 -3
  221. package/dist/ugc-interview.js +3 -3
  222. package/dist/ugc-interview.js.map +1 -1
  223. package/dist/ugc-layers.d.ts +43 -7
  224. package/dist/ugc-layers.js +43 -11
  225. package/dist/ugc-layers.js.map +1 -1
  226. package/dist/ugc-scenes.d.ts +40 -0
  227. package/dist/ugc-scenes.js +35 -0
  228. package/dist/ugc-scenes.js.map +1 -0
  229. package/dist/uploads.d.ts +1 -1
  230. package/dist/uploads.js +9 -9
  231. package/dist/uploads.js.map +1 -1
  232. package/dist/voice-admission.d.ts +4767 -836
  233. package/dist/voice-catalog-data.d.ts +1 -0
  234. package/dist/voice-catalog.d.ts +2 -0
  235. package/dist/voice-catalog.generated.json +286 -0
  236. package/dist/voice-catalog.js +1 -0
  237. package/dist/voice-catalog.js.map +1 -1
  238. package/dist/voice-pace.generated.json +65 -0
  239. package/dist/voices.d.ts +1 -0
  240. package/dist/voices.js +2 -1
  241. package/dist/voices.js.map +1 -1
  242. package/dist/workflows/index.d.ts +2 -0
  243. package/dist/workflows/index.js +1 -0
  244. package/dist/workflows/index.js.map +1 -1
  245. package/dist/workflows/methods/faceless-explainer.d.ts +2275 -188
  246. package/dist/workflows/methods/kinetic-launch.d.ts +2275 -188
  247. package/dist/workflows/methods/product-image-story.d.ts +2275 -188
  248. package/dist/workflows/methods/reference-remake.d.ts +2275 -188
  249. package/dist/workflows/methods/shared.d.ts +2275 -188
  250. package/dist/workflows/methods/ugc-faq-answer.d.ts +2275 -188
  251. package/dist/workflows/methods/ugc-product-intro.d.ts +2275 -188
  252. package/dist/workflows/methods/website-proof-demo.d.ts +2275 -188
  253. package/dist/workflows/motion-director.d.ts +59 -0
  254. package/dist/workflows/motion-director.js +118 -0
  255. package/dist/workflows/motion-director.js.map +1 -0
  256. package/dist/workflows/reference-remake.d.ts +1172 -2
  257. package/dist/workflows/reference-remake.js +940 -115
  258. package/dist/workflows/reference-remake.js.map +1 -1
  259. package/dist/workflows/remake-chooser.d.ts +16 -0
  260. package/dist/workflows/remake-chooser.js +10 -0
  261. package/dist/workflows/remake-chooser.js.map +1 -0
  262. package/dist/workflows/remake-motion.d.ts +100 -0
  263. package/dist/workflows/remake-motion.js +237 -0
  264. package/dist/workflows/remake-motion.js.map +1 -0
  265. package/dist/workflows/validate.js +1 -1
  266. package/dist/workflows/validate.js.map +1 -1
  267. package/package.json +5 -1
@@ -12,11 +12,45 @@ export type LayerExit = (typeof LAYER_EXITS)[number];
12
12
  export declare const MAX_ENTER_OFFSET_S = 0.5;
13
13
  export declare const LAYOUT_WINDOW_KINDS: readonly ["split", "card"];
14
14
  export type LayoutWindowKind = (typeof LAYOUT_WINDOW_KINDS)[number];
15
- export declare const INSERT_TRANSITIONS: readonly ["cut", "wipe", "flash", "zoom"];
15
+ export declare const FULL_FRAME_TRANSITIONS: readonly ["cut", "wipe", "flash", "zoom"];
16
+ /** `glitch` breaks the cut with a colour split and an inverted frame (#1175 S5 C8); `power` closes the screen to a line and a dot and opens it the
17
+ * same way (C9). */
18
+ export declare const INSERT_TRANSITIONS: readonly ["cut", "wipe", "flash", "zoom", "light_leak", "glitch", "power"];
16
19
  export type InsertTransition = (typeof INSERT_TRANSITIONS)[number];
17
- export declare const MAX_OVERLAYS = 10;
18
- export declare const MAX_LAYOUT_WINDOWS = 5;
19
- export declare const MAX_OVERLAYS_AT_ONCE = 2;
20
+ /** A video insert's key moment slowed down and back (`ramp`) or caught in a short repeating loop (`stutter`) (#1175 S5 C6). */
21
+ export declare const INSERT_RETIMES: readonly ["ramp", "stutter"];
22
+ export type InsertRetimeMode = (typeof INSERT_RETIMES)[number];
23
+ export declare const INSERT_FITS: readonly ["cover", "contain", "auto"];
24
+ export type InsertFit = (typeof INSERT_FITS)[number];
25
+ /** `auto` holds a picture still while filling cuts at most this share of it, and past it scrolls or pans it end to end (#1051 S2). */
26
+ export declare const INSERT_STILL_CUT = 0.08;
27
+ /** `auto` moves a picture only while this share of it shows at once: a 16:10 screenshot (35% in 9:16) pans; past it, it shows whole over blur. */
28
+ export declare const INSERT_MIN_SHOWN = 0.25;
29
+ /** A picture's scroll runs down or up a tall picture, its pan left or right across a wide one (#1051 S2). */
30
+ export declare const INSERT_MOTIONS: {
31
+ readonly scroll: readonly ["down", "up"];
32
+ readonly pan: readonly ["left", "right"];
33
+ };
34
+ export type InsertMotion = {
35
+ kind: "scroll";
36
+ direction: "down" | "up";
37
+ } | {
38
+ kind: "pan";
39
+ direction: "left" | "right";
40
+ };
41
+ export declare const SPLIT_MEDIA_SIDES: readonly ["top", "bottom"];
42
+ export declare const SPLIT_MEDIA_SHARE: {
43
+ readonly min: 0.3;
44
+ readonly max: 0.7;
45
+ readonly default: 0.5;
46
+ };
47
+ export declare const MAX_OVERLAYS = 30;
48
+ export declare const MAX_LAYOUT_WINDOWS = 15;
49
+ export declare const MAX_OVERLAYS_AT_ONCE = 3;
50
+ /** The first MAX_OVERLAYS_AT_ONCE of `others` on screen together at a word of `range`, or undefined when fewer ever are. */
51
+ export declare function overlayCrowd<T extends {
52
+ range: WordRange;
53
+ }>(others: readonly T[], range: WordRange): T[] | undefined;
20
54
  /** A footprint on the frame, in shares of its width and height (#778 S3 D5). */
21
55
  export interface LayerRect {
22
56
  left: number;
@@ -36,8 +70,9 @@ export declare function overlayRect(position: OverlayPosition, canvas: {
36
70
  }): LayerRect;
37
71
  /** Two footprints collide when they share an area; touching edges do not. */
38
72
  export declare function rectsOverlap(a: LayerRect, b: LayerRect): boolean;
39
- /** How the presenter is framed: close as every portrait was, or wide, lower with room above, a 9:16 view only (#884 S5d). */
40
- export declare const PRESENTER_FRAMINGS: readonly ["close", "wide"];
73
+ /** How the presenter is framed: close as every portrait was, wide, lower with room above (#884 S5d), or full, head to feet (#1175 S7). */
74
+ /** wide and full are 9:16 views only. */
75
+ export declare const PRESENTER_FRAMINGS: readonly ["close", "wide", "full"];
41
76
  export type PresenterFraming = (typeof PRESENTER_FRAMINGS)[number];
42
77
  /** Where the presenter's face sits: 12–48% of the height and the middle 60% of a 9:16 clip, which other formats fit whole and centre (#778 S3). */
43
78
  /** A wide 9:16 view puts it at 33–58% and the middle half, as measured on a HeyGen render (#884 S5d). */
@@ -97,7 +132,8 @@ export interface AdmissionScene {
97
132
  export declare function admissionScene(input: Pick<LayerCheckInput, "captions" | "caption_style" | "caption_position" | "caption_place" | "presenter_place">, aspectRatio: string, framing: PresenterFraming): AdmissionScene;
98
133
  /** The sides a place may take next to the captions: a page grows sideways with its words. */
99
134
  export declare const CAPTION_SIDES: readonly string[];
100
- /** The framings an admitted run may render: a wide request may render close when the actor has no wide view; wide needs an actor and 9:16. */
135
+ /** The framings an admitted run may render: a wider request renders narrower when the actor has no such view (full falls to wide, then close); */
136
+ /** wide and full need an actor and 9:16. */
101
137
  export declare function admissionFramings(input: {
102
138
  aspect_ratio?: string | undefined;
103
139
  presenter_framing?: unknown;
@@ -9,10 +9,35 @@ export const LAYER_EXITS = ["cut", "fade", "pop_out", "slide"];
9
9
  /** The most an overlay's appearance moves off its first word, in seconds. */
10
10
  export const MAX_ENTER_OFFSET_S = 0.5;
11
11
  export const LAYOUT_WINDOW_KINDS = ["split", "card"];
12
- export const INSERT_TRANSITIONS = ["cut", "wipe", "flash", "zoom"];
13
- export const MAX_OVERLAYS = 10;
14
- export const MAX_LAYOUT_WINDOWS = 5;
15
- export const MAX_OVERLAYS_AT_ONCE = 2;
12
+ export const FULL_FRAME_TRANSITIONS = ["cut", "wipe", "flash", "zoom"];
13
+ /** `glitch` breaks the cut with a colour split and an inverted frame (#1175 S5 C8); `power` closes the screen to a line and a dot and opens it the
14
+ * same way (C9). */
15
+ export const INSERT_TRANSITIONS = [...FULL_FRAME_TRANSITIONS, "light_leak", "glitch", "power"];
16
+ /** A video insert's key moment slowed down and back (`ramp`) or caught in a short repeating loop (`stutter`) (#1175 S5 C6). */
17
+ export const INSERT_RETIMES = ["ramp", "stutter"];
18
+ export const INSERT_FITS = ["cover", "contain", "auto"];
19
+ /** `auto` holds a picture still while filling cuts at most this share of it, and past it scrolls or pans it end to end (#1051 S2). */
20
+ export const INSERT_STILL_CUT = 0.08;
21
+ /** `auto` moves a picture only while this share of it shows at once: a 16:10 screenshot (35% in 9:16) pans; past it, it shows whole over blur. */
22
+ export const INSERT_MIN_SHOWN = 0.25;
23
+ /** A picture's scroll runs down or up a tall picture, its pan left or right across a wide one (#1051 S2). */
24
+ export const INSERT_MOTIONS = { scroll: ["down", "up"], pan: ["left", "right"] };
25
+ export const SPLIT_MEDIA_SIDES = ["top", "bottom"];
26
+ export const SPLIT_MEDIA_SHARE = { min: 0.3, max: 0.7, default: 0.5 };
27
+ export const MAX_OVERLAYS = 30;
28
+ export const MAX_LAYOUT_WINDOWS = 15;
29
+ export const MAX_OVERLAYS_AT_ONCE = 3;
30
+ /** The first MAX_OVERLAYS_AT_ONCE of `others` on screen together at a word of `range`, or undefined when fewer ever are. */
31
+ export function overlayCrowd(others, range) {
32
+ for (const word of [range.startWord, ...others.map(other => other.range.startWord)]) {
33
+ if (word < range.startWord || word >= range.coverWord)
34
+ continue;
35
+ const on = others.filter(other => other.range.startWord <= word && word < other.range.coverWord);
36
+ if (on.length >= MAX_OVERLAYS_AT_ONCE)
37
+ return on.slice(0, MAX_OVERLAYS_AT_ONCE);
38
+ }
39
+ return undefined;
40
+ }
16
41
  /** The frame of a `W:H` format in pixels, as the composition's `canvasForRatio` derives it: the short side 1080, both sides even. */
17
42
  export function frameCanvasOf(aspectRatio) {
18
43
  const [w, h] = aspectRatio.split(":").map(Number);
@@ -32,13 +57,17 @@ export function overlayRect(position, canvas) {
32
57
  export function rectsOverlap(a, b) {
33
58
  return a.left < b.left + b.width && b.left < a.left + a.width && a.top < b.top + b.height && b.top < a.top + a.height;
34
59
  }
35
- /** How the presenter is framed: close as every portrait was, or wide, lower with room above, a 9:16 view only (#884 S5d). */
36
- export const PRESENTER_FRAMINGS = ["close", "wide"];
60
+ /** How the presenter is framed: close as every portrait was, wide, lower with room above (#884 S5d), or full, head to feet (#1175 S7). */
61
+ /** wide and full are 9:16 views only. */
62
+ export const PRESENTER_FRAMINGS = ["close", "wide", "full"];
37
63
  /** Where the presenter's face sits: 12–48% of the height and the middle 60% of a 9:16 clip, which other formats fit whole and centre (#778 S3). */
38
64
  /** A wide 9:16 view puts it at 33–58% and the middle half, as measured on a HeyGen render (#884 S5d). */
39
65
  export function faceZone(aspectRatio, framing = "close") {
40
66
  if (framing === "wide" && aspectRatio === "9:16")
41
67
  return { left: 0.25, top: 0.33, width: 0.5, height: 0.25 };
68
+ // A full-height face is 0.087–0.092 of the height (#1171 live takes), the head at the top: the zone holds the head and the shoulders.
69
+ if (framing === "full" && aspectRatio === "9:16")
70
+ return { left: 0.3, top: 0.03, width: 0.4, height: 0.2 };
42
71
  const { width, height } = frameCanvasOf(aspectRatio);
43
72
  const share = 0.6 * Math.min(1, (9 / 16) / (width / height));
44
73
  return { left: (1 - share) / 2, top: 0.12, width: share, height: 0.36 };
@@ -82,9 +111,12 @@ export function admissionScene(input, aspectRatio, framing) {
82
111
  }
83
112
  /** The sides a place may take next to the captions: a page grows sideways with its words. */
84
113
  export const CAPTION_SIDES = ["below", "above"];
85
- /** The framings an admitted run may render: a wide request may render close when the actor has no wide view; wide needs an actor and 9:16. */
114
+ /** The framings an admitted run may render: a wider request renders narrower when the actor has no such view (full falls to wide, then close); */
115
+ /** wide and full need an actor and 9:16. */
86
116
  export function admissionFramings(input) {
87
- return input.presenter_framing === "wide" && input.actor_id !== undefined && (input.aspect_ratio ?? "9:16") === "9:16" ? ["close", "wide"] : ["close"];
117
+ if (input.actor_id === undefined || (input.aspect_ratio ?? "9:16") !== "9:16")
118
+ return ["close"];
119
+ return input.presenter_framing === "full" ? ["close", "wide", "full"] : input.presenter_framing === "wide" ? ["close", "wide"] : ["close"];
88
120
  }
89
121
  /** How many layers a place leans on through `{ layer }`, Infinity in a loop or past a missing or preset anchor; a template is an anchor as drawn. */
90
122
  export function placeDepth(overlays, id, seen = new Set()) {
@@ -280,10 +312,10 @@ export function layerRefusals(input, extras) {
280
312
  message: `overlay "${overlay.item.id}" and overlay "${clash.item.id}" share the screen on overlapping boxes at the same time` });
281
313
  continue;
282
314
  }
283
- const crowd = together.flatMap((a, i) => together.slice(i + 1).filter(b => Math.max(a.range.startWord, b.range.startWord, overlay.range.startWord) <
284
- Math.min(a.range.coverWord, b.range.coverWord, overlay.range.coverWord)).map(b => [a, b]))[0];
315
+ const crowd = overlayCrowd(together, overlay.range);
285
316
  if (crowd) {
286
- refusals.push({ path: ["overlays", overlay.index], message: `overlay "${overlay.item.id}" would be on screen together with "${crowd[0].item.id}" and "${crowd[1].item.id}": at most ${MAX_OVERLAYS_AT_ONCE} overlays show at once` });
317
+ refusals.push({ path: ["overlays", overlay.index], message: `overlay "${overlay.item.id}" would be on screen together with ` +
318
+ `${crowd.map(other => `"${other.item.id}"`).join(", ")}: at most ${MAX_OVERLAYS_AT_ONCE} overlays show at once` });
287
319
  }
288
320
  }
289
321
  return refusals;
@@ -1 +1 @@
1
- {"version":3,"file":"ugc-layers.js","sourceRoot":"","sources":["../src/ugc-layers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ugc-layers.js","sourceRoot":"","sources":["../src/ugc-layers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EACrF,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGxE,8HAA8H;AAE9H,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAU,CAAC;AAEpH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,CAAU,CAAC;AAE5F,oFAAoF;AACpF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAExE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,MAAM,CAAU,CAAC;AAE9D,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAU,CAAC;AAChF;qBACqB;AACrB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,sBAAsB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAExG,+HAA+H;AAC/H,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,SAAS,CAAU,CAAC;AAE3D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AAEjE,sIAAsI;AACtI,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,kJAAkJ;AAClJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,6GAA6G;AAC7G,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAW,CAAC;AAE1F,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAU,CAAC;AAC5D,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAW,CAAC;AAE/E,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAC/B,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAEtC,4HAA4H;AAC5H,MAAM,UAAU,YAAY,CAAiC,MAAoB,EAAE,KAAgB;IACjG,KAAK,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACpF,IAAI,IAAI,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,SAAS;YAAE,SAAS;QAChE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjG,IAAI,EAAE,CAAC,MAAM,IAAI,oBAAoB;YAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAKD,qIAAqI;AACrI,MAAM,UAAU,aAAa,CAAC,WAAmB;IAC/C,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAqB,CAAC;IACtE,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE,GAAG,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;AAChH,CAAC;AAED,qIAAqI;AACrI,MAAM,UAAU,WAAW,CAAC,QAAyB,EAAE,MAAyC;IAC9F,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,QAAQ,CAAC;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3H,MAAM,IAAI,GAAG,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;IACxF,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAClF,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;AAC9H,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,YAAY,CAAC,CAAY,EAAE,CAAY;IACrD,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;AACxH,CAAC;AAED,0IAA0I;AAC1I,yCAAyC;AACzC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAGrE,mJAAmJ;AACnJ,yGAAyG;AACzG,MAAM,UAAU,QAAQ,CAAC,WAAmB,EAAE,OAAO,GAAqB,OAAO;IAC/E,IAAI,OAAO,KAAK,MAAM,IAAI,WAAW,KAAK,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC7G,sIAAsI;IACtI,IAAI,OAAO,KAAK,MAAM,IAAI,WAAW,KAAK,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAC3G,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC;IAC7D,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC1E,CAAC;AAMD,gIAAgI;AAChI,MAAM,UAAU,cAAc,CAAC,MAAyB,EAAE,IAAkB;IAC1E,IAAI,KAA6C,CAAC;IAClD,IAAI,WAAW,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAC/B,KAAK,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC3E,IAAI,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM;YAAE,OAAO,uBAAuB,KAAK,CAAC,OAAO,uBAAuB,MAAM,CAAC,MAAM,QAAQ,CAAC;IAC7H,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,iBAAiB,IAAI,CAAC,MAAM,CAAC,KAAK,4BAA4B,CAAC;QAChG,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/D,OAAO,iBAAiB,IAAI,CAAC,MAAM,CAAC,KAAK,YAAY,OAAO,CAAC,MAAM,mCAAmC,CAAC;QACzG,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM;YAAE,OAAO,iBAAiB,IAAI,CAAC,MAAM,CAAC,KAAK,uBAAuB,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACtG,KAAK,GAAG,MAAM,CAAC;IACjB,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;IACtG,IAAI,SAAS,GAAG,KAAK,CAAC,OAAO;QAAE,OAAO,eAAe,IAAI,CAAC,WAAW,sBAAsB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,yBAAyB,CAAC;IACpJ,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM;QAAE,OAAO,sCAAsC,MAAM,CAAC,MAAM,QAAQ,CAAC;IAClG,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,QAAQ,GAAG,CAAC,CAAY,EAAE,CAAY,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;AACxG,MAAM,SAAS,GAAG,CAAC,KAAgB,EAAE,KAA2B,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,EAC3H,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AA2BjI,MAAM,UAAU,cAAc,CAAC,KAAqH,EAClJ,WAAmB,EAAE,OAAyB;IAC9C,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,CAAC,EAAE,IAAI,GAAG,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IACnH,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC7C,MAAM,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE;QACxH,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACzG,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,KAAK,CAAC,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;AAC1F,CAAC;AACD,6FAA6F;AAC7F,MAAM,CAAC,MAAM,aAAa,GAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAEnE,kJAAkJ;AAClJ,4CAA4C;AAC5C,MAAM,UAAU,iBAAiB,CAAC,KAA6F;IAC7H,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,MAAM,CAAC,KAAK,MAAM;QAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAChG,OAAO,KAAK,CAAC,iBAAiB,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AAC7I,CAAC;AAED,qJAAqJ;AACrJ,MAAM,UAAU,UAAU,CAAC,QAAqC,EAAE,EAAU,EAAE,IAAI,GAAwB,IAAI,GAAG,EAAE;IACjH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,IAAI,CAAC,IAAI,EAAE,KAAK;QAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC7C,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AACnI,CAAC;AAED,yEAAyE;AACzE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAc,EAAE,MAAyC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAElK;0DAC0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,QAAqC,EAAE,WAAmB,EAAE,OAAyB,EACrH,KAAsB;IACtB,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC/I,MAAM,OAAO,GAAG,CAAC,IAAsB,EAAyB,EAAE;QAChE,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAAC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;YAAC,IAAI,GAAG;gBAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YAAC,OAAO,GAAG,CAAC;QAAC,CAAC;QACjJ,IAAI,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QACxD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;QAC/F,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QAC7G,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QACpH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACzJ,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACpE,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,KAAK,GAAc,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AAClE,mHAAmH;AACnH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,4EAA4E;AAC5E,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AACrC,qFAAqF;AACrF,MAAM,CAAC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAE7C,uIAAuI;AACvI,MAAM,UAAU,aAAa,CAAC,KAAsG,EAClI,MAAoB;IACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAA8B,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3F,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAClH,KAAK,MAAM,OAAO,IAAI,iBAAiB,CAAC,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAC5E,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,SAAS;QAC9C,MAAM,KAAK,GAAG,cAAc,CAAC,KAAwB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACrJ,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC;YAC3F,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG;gBAAE,SAAS;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAClG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,gBAAgB,EAAE,CAAC;gBAC/E,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,8EAA8E,CAAC,CAAC;YACtG,CAAC;YACD,IAAI,KAAK,GAAG,yBAAyB;gBAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,WAAW,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,8CAA8C;oBACzI,uFAAuF,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;AACvB,CAAC;AAED,2IAA2I;AAC3I,MAAM,UAAU,cAAc,CAAC,IAA4B,EAAE,IAAyC,EAAE,KAAgB,EACtH,EAA8C,EAAE,KACgF;IAChI,MAAM,QAAQ,GAAmB,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,KAAK,GAAG,GAAG,IAAI,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC;IAC/F,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IAC/H,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,oDAAoD;YAClF,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,qEAAqE;gBAC9G,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,kEAAkE;oBAC5G,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,wGAAwG,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9J,MAAM,IAAI,GAAG,MAAM,IAAI,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5D,IAAI,GAAG;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,GAAG,KAAK,sBAAsB,GAAG,EAAE,EAAE,CAAC,CAAC;aAC7F,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5G,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,MAAM,iCAAiC,IAAI,KAAK,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9H,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA+B,CAAC;IACxD,KAAK,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAC/C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,IAAI,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,qBAAqB,KAAK,sBAAsB,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACvK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9H,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,kEAAkE,EAAE,EAAE,EAAE,CAAC,CAAC;QACjG,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,IAAI,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,gBAAgB,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1G,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,wFAAwF,EAAE,EAAE,EAAE,CAAC,CAAC;QACvH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,QAAQ;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACzE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,iJAAiJ;AACjJ,MAAM,UAAU,aAAa,CAAC,KAAsB,EAAE,MAAoB;IACxE,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,YAAY,IAAI,MAAM,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,gBAAgB,CAAU,EAAE,CAAC;QACvE,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/C,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,CAAC,EAAE,wBAAwB,KAAK,8DAA8D,EAAE,CAAC,CAAC;YACpK,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,CAAyB,KAAoC,EAAE,KAA+B,EAAE,EAAE,CAC/G,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACpC,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,KAAK,IAAI,CAAC,EAAE,MAAM,KAAK,EAAE,EAAE,CAAC,CAAC;YAC3I,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACL,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClK,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QAC7C,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;YACxG,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,kBAAkB,MAAM,CAAC,IAAI,CAAC,EAAE,oDAAoD,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACzL,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACxF,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,kBAAkB,MAAM,CAAC,IAAI,CAAC,EAAE,6BAA6B,OAAO,CAAC,IAAI,CAAC,EAAE,yCAAyC,EAAE,CAAC,CAAC;QAC5L,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1E,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,kBAAkB,MAAM,CAAC,IAAI,CAAC,EAAE,sBAAsB,MAAM,CAAC,IAAI,CAAC,EAAE,qFAAqF,EAAE,CAAC,CAAC;QAChO,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,IAAI,MAAM,EAAE,GAAG,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;IACxE,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QACxD,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACnG,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;IACxH,CAAC,CAAC,CAAC;IACH,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,EAAE,GAAG,CAAC,GAAG,IAAc,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;QACnG,4HAA4H;QAC5H,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;YACjG,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/B,OAAO,GAAG,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACpF,CAAC,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,EAAE,iCAAiC;oBAC7I,iHAAiH,EAAE,CAAC,CAAC;QACvH,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,SAAS;QAC1B,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;gBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,EAAE,uDAAuD,EAAE,CAAC,CAAC;iBACxJ,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,EAAE,gBAAgB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG;wBACjJ,iGAAiG,EAAE,CAAC,CAAC;QACzG,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9J,CAAC;IACD,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5E,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC9E,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,YAAY,OAAO,CAAC,IAAI,CAAC,EAAE,+BAA+B,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,EAAE,yFAAyF,EAAE,CAAC,CAAC;QACtO,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7F,MAAM,MAAM,GAAG,CAAC,IAAsB,EAA4D,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC;QAC7J,6EAA6E;QAC7E,MAAM,IAAI,GAAG,CAAC,CAAmB,EAAE,CAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACpK,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAC7E,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACpG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;gBACpG,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnE,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC,CAAC;QACN,IAAI,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,YAAY,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,qCAAqC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,0EAA0E,EAAE,CAAC,CAAC;YACvR,SAAS;QACX,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;gBAC1F,OAAO,EAAE,YAAY,OAAO,CAAC,IAAI,CAAC,EAAE,kBAAkB,KAAK,CAAC,IAAI,CAAC,EAAE,0DAA0D,EAAE,CAAC,CAAC;YACnI,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,KAAK,EAAE,CAAC;YACV,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,YAAY,OAAO,CAAC,IAAI,CAAC,EAAE,qCAAqC;oBAC1H,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,oBAAoB,wBAAwB,EAAE,CAAC,CAAC;QACvH,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAID,uJAAuJ;AACvJ,gHAAgH;AAChH,MAAM,UAAU,mBAAmB,CAAC,MAA8B,EAAE,QAAwE,EAC1I,GAAW,EAAE,QAAkB;IAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACrG,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACnH,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/F,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;QAC9D,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;YAAE,SAAS;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAE,GAAG,MAAM,GAAG,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACnH,IAAI,EAAE,KAAK,KAAK;YAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAE,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B;gBACxI,GAAG,MAAM,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,QAAQ,CAAC,CAAC;QAC5E,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;QACtB,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;YACxB,IAAI,KAAK,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAE,IAAI,KAAK,CAAC,QAAQ,IAAI,EAAE;gBAAE,SAAS;YACnH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,IAAI,CAAC,EAAE,0BAA0B,CAAC,CAAC;YAChJ,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wIAAwI;AACxI,MAAM,UAAU,kBAAkB,CAAC,KACgB;IACjD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACjI,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAE,CAAC,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1G,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAE,CAAC,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QACpI,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,QAAQ,IAAI,UAAU,IAAI,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAChG,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,EAAE,iCAAiC,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { type AnchoredItem } from "./ugc-layers.js";
2
+ export declare const MAX_SCENES = 12;
3
+ export declare const SCENE_BRIEF_MAX_CHARS = 2000;
4
+ export declare const SCENE_TEXT_MAX_CHARS = 200;
5
+ export declare const SCENES_DESCRIPTION: string;
6
+ export declare const SCENES_DISABLED_MESSAGE = "scenes are not available right now; omit scenes";
7
+ interface SceneLike extends AnchoredItem {
8
+ id: string;
9
+ colors?: readonly string[] | undefined;
10
+ }
11
+ interface ScenesInput {
12
+ script?: string | undefined;
13
+ segments?: unknown;
14
+ scenes?: readonly SceneLike[] | undefined;
15
+ inserts?: readonly {
16
+ id: string;
17
+ }[] | undefined;
18
+ overlays?: readonly {
19
+ id: string;
20
+ }[] | undefined;
21
+ layout_windows?: readonly {
22
+ id: string;
23
+ }[] | undefined;
24
+ templates?: readonly {
25
+ id: string;
26
+ }[] | undefined;
27
+ framing?: readonly {
28
+ id: string;
29
+ }[] | undefined;
30
+ }
31
+ /** Scenes sit on the script's words and share the id space of the other layers. */
32
+ export declare function sceneRefusals(input: ScenesInput): {
33
+ path: (string | number)[];
34
+ message: string;
35
+ }[];
36
+ /** Purple stays only where the customer named one in the scene's own colours. */
37
+ export declare const sceneAllowsPurple: (scene: {
38
+ colors?: readonly string[] | undefined;
39
+ }) => boolean;
40
+ export {};
@@ -0,0 +1,35 @@
1
+ import { SCENE_CREDITS } from "./parts-pricing.js";
2
+ import { isScenePurple } from "./scene-graph.js";
3
+ import { lexicalTokens } from "./semantic-inserts.js";
4
+ import { layerWordRange } from "./ugc-layers.js";
5
+ // Scenes (#1107): graphics no library kind draws, authored for the run from words, checked, and drawn on their words beside templates.
6
+ export const MAX_SCENES = 12;
7
+ export const SCENE_BRIEF_MAX_CHARS = 2000;
8
+ export const SCENE_TEXT_MAX_CHARS = 200;
9
+ export const SCENES_DESCRIPTION = "Graphics made for this video from your words, for what no template draws: each is drawn over the presenter " +
10
+ "(over) or on the full frame (full) while its words are spoken. One that does not pass our check is left out and named in warnings[]. " +
11
+ `${SCENE_CREDITS} credits per scene, its own quote line, charged only for scenes drawn in the delivered video. ` +
12
+ "Needs script and long-form qualification on the server.";
13
+ export const SCENES_DISABLED_MESSAGE = "scenes are not available right now; omit scenes";
14
+ /** Scenes sit on the script's words and share the id space of the other layers. */
15
+ export function sceneRefusals(input) {
16
+ if (!input.scenes?.length)
17
+ return [];
18
+ if (input.script === undefined || input.segments !== undefined)
19
+ return [{ path: ["scenes"], message: "scenes require script and cannot be combined with segments" }];
20
+ const tokens = lexicalTokens(input.script), refusals = [];
21
+ const taken = new Set([input.inserts, input.overlays, input.layout_windows, input.templates, input.framing].flatMap(items => (items ?? []).map(item => item.id)));
22
+ const seen = new Set();
23
+ for (const [index, scene] of input.scenes.entries()) {
24
+ if (seen.has(scene.id) || taken.has(scene.id))
25
+ refusals.push({ path: ["scenes", index, "id"], message: `id "${scene.id}" is used by another layer or scene` });
26
+ seen.add(scene.id);
27
+ const range = layerWordRange(tokens, scene);
28
+ if (typeof range === "string")
29
+ refusals.push({ path: ["scenes", index, "anchor"], message: range });
30
+ }
31
+ return refusals;
32
+ }
33
+ /** Purple stays only where the customer named one in the scene's own colours. */
34
+ export const sceneAllowsPurple = (scene) => (scene.colors ?? []).some(isScenePurple);
35
+ //# sourceMappingURL=ugc-scenes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ugc-scenes.js","sourceRoot":"","sources":["../src/ugc-scenes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAqB,MAAM,iBAAiB,CAAC;AAEpE,uIAAuI;AAEvI,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC;AAC7B,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAC1C,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAExC,MAAM,CAAC,MAAM,kBAAkB,GAAG,6GAA6G;IAC7I,uIAAuI;IACvI,GAAG,aAAa,gGAAgG;IAChH,yDAAyD,CAAC;AAC5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,iDAAiD,CAAC;AAUzF,mFAAmF;AACnF,MAAM,UAAU,aAAa,CAAC,KAAkB;IAC9C,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,4DAA4D,EAAE,CAAC,CAAC;IACrK,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAqD,EAAE,CAAC;IAC5G,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClK,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QACpD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,KAAK,CAAC,EAAE,qCAAqC,EAAE,CAAC,CAAC;QAC/J,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACnB,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,iFAAiF;AACjF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAiD,EAAW,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC"}
package/dist/uploads.d.ts CHANGED
@@ -6,7 +6,7 @@ export declare const UPLOAD_DAILY_CAP = 20;
6
6
  export declare const UPLOAD_WINDOW_SECONDS = 86400;
7
7
  export declare const UPLOAD_URL_TTL_SECONDS = 86400;
8
8
  /** As long as a run's media (`RENDER_RETENTION_DAYS`): a draft may name an upload on the run's first day. */
9
- export declare const UPLOAD_OBJECT_RETENTION_DAYS = 30;
9
+ export declare const UPLOAD_OBJECT_RETENTION_DAYS = 365;
10
10
  /** No WebP on purpose: the probe cannot read its dimensions, and without them the format cannot be checked. */
11
11
  export declare const UPLOAD_MEDIA_TYPES: readonly ["image/png", "image/jpeg"];
12
12
  export type UploadMediaType = (typeof UPLOAD_MEDIA_TYPES)[number];
package/dist/uploads.js CHANGED
@@ -6,7 +6,7 @@ export const UPLOAD_DAILY_CAP = 20;
6
6
  export const UPLOAD_WINDOW_SECONDS = 86_400;
7
7
  export const UPLOAD_URL_TTL_SECONDS = 86_400;
8
8
  /** As long as a run's media (`RENDER_RETENTION_DAYS`): a draft may name an upload on the run's first day. */
9
- export const UPLOAD_OBJECT_RETENTION_DAYS = 30;
9
+ export const UPLOAD_OBJECT_RETENTION_DAYS = 365;
10
10
  /** No WebP on purpose: the probe cannot read its dimensions, and without them the format cannot be checked. */
11
11
  export const UPLOAD_MEDIA_TYPES = ["image/png", "image/jpeg"];
12
12
  export const UPLOADS_PATH = "/v1/uploads";
@@ -97,19 +97,19 @@ export function uploadExtension(mediaType) {
97
97
  return mediaType === "image/png" ? "png" : "jpg";
98
98
  }
99
99
  export const UPLOAD_IMAGE_DESCRIPTION = "Get an upload_id and a signed https url for a PNG or JPEG up to 10 MB: from a LOCAL file (`path`, only when this " +
100
- "server runs on your machine) or from a public https `url` that the server downloads (up to 20 seconds; redirects " +
101
- "are followed up to 3 times). Pass the url as `image` to quote_ugc / make_ugc, and the upload_id as " +
102
- "{upload_id, rights_confirmed: true} in references, first_frame or last_frame of quote_image, generate_image, " +
103
- "quote_video and generate_video. The url is signed for 24 hours; the upload_id stays usable for 30 days. For " +
104
- "workflow assets, use the upload_id as asset_id and content_digest directly: it is the SHA-256 of the original " +
100
+ "server runs on your machine) or a public https `url` the server downloads (up to 20 seconds and 3 redirects). " +
101
+ "Pass the url as `image` to quote_ugc / make_ugc, and the upload_id as a generation reference or frame (quote_image " +
102
+ "says how). The url is signed for 24 hours; the upload_id is usable for " +
103
+ `${UPLOAD_OBJECT_RETENTION_DAYS} days. For ` +
104
+ "workflow assets the upload_id is both asset_id and content_digest: the SHA-256 of the original " +
105
105
  "bytes. Set `aspect_ratio` EXPLICITLY to match the picture. For a file on your disk while this server is remote, " +
106
- "use create_upload. Free: spends no credits; 20 uploads per day per account, and at most 30 url downloads per hour.";
106
+ "use create_upload. Free; 20 uploads per day per account, at most 30 url downloads per hour.";
107
107
  export const CREATE_UPLOAD_DESCRIPTION = "Upload a LOCAL PNG or JPEG (up to 10 MB) through a one-time presigned PUT; use it when this server is remote and " +
108
108
  "you have a shell. Pass media_type, the exact size in bytes and the file's sha256 (`sha256sum <file>` or " +
109
109
  "`shasum -a 256 <file>`). Within 15 minutes run: `curl -X PUT -H 'content-type: <media_type>' --data-binary " +
110
110
  "@<file> '<put_url>'` (curl sends the content-length itself; both headers must match what you declared). Once the " +
111
- "PUT finished, the upload_id works as {upload_id, rights_confirmed: true} in quote_image, generate_image, " +
112
- "quote_video and generate_video; before that they answer upload_not_finished. Call get_upload to confirm and to " +
111
+ "PUT finished, the upload_id works as a generation reference (quote_image says how); before that it answers " +
112
+ "upload_not_finished. Call get_upload to confirm and to " +
113
113
  "read content_digest, width and height; other tools that take an upload_id need that call first. Use the " +
114
114
  "upload_id within 24 hours. Free; counts toward 20 uploads per day.";
115
115
  export const GET_UPLOAD_DESCRIPTION = "Read one upload by upload_id: a freshly signed https url, content_digest, media_type, bytes, width, height and " +
@@ -1 +1 @@
1
- {"version":3,"file":"uploads.js","sourceRoot":"","sources":["../src/uploads.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uploads.js","sourceRoot":"","sources":["../src/uploads.ts"],"names":[],"mappings":"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"}