@nodaro/sdk 2.46.0 → 2.49.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 (64) hide show
  1. package/dist/{chunk-WFAFFAGV.js → chunk-2JAKOBD3.js} +8 -8
  2. package/dist/{chunk-WFAFFAGV.js.map → chunk-2JAKOBD3.js.map} +1 -1
  3. package/dist/{chunk-KBHDUHKM.js → chunk-2SQ7V6EX.js} +2 -2
  4. package/dist/chunk-2SQ7V6EX.js.map +1 -0
  5. package/dist/{chunk-5Q4SUZPL.js → chunk-5MZYOJCJ.js} +3 -3
  6. package/dist/{chunk-5Q4SUZPL.js.map → chunk-5MZYOJCJ.js.map} +1 -1
  7. package/dist/{chunk-JTAW54UM.js → chunk-AEUPH7EE.js} +2 -2
  8. package/dist/{chunk-34PU2DAT.cjs.map → chunk-AEUPH7EE.js.map} +1 -1
  9. package/dist/{chunk-DIF7A5OH.cjs → chunk-E5MJK3W5.cjs} +2 -2
  10. package/dist/chunk-E5MJK3W5.cjs.map +1 -0
  11. package/dist/{chunk-XKDVEQVD.cjs → chunk-LTZKNAXM.cjs} +2 -2
  12. package/dist/chunk-LTZKNAXM.cjs.map +1 -0
  13. package/dist/{chunk-ZJCHIJND.cjs → chunk-NOBQQTAG.cjs} +3 -3
  14. package/dist/{chunk-ZJCHIJND.cjs.map → chunk-NOBQQTAG.cjs.map} +1 -1
  15. package/dist/{chunk-C3C7IL25.js → chunk-OCRUDBPG.js} +10 -6
  16. package/dist/chunk-OCRUDBPG.js.map +1 -0
  17. package/dist/{chunk-7LTVS75S.cjs → chunk-P6AM42UB.cjs} +2 -2
  18. package/dist/chunk-P6AM42UB.cjs.map +1 -0
  19. package/dist/{chunk-POKNFGGD.cjs → chunk-PPP6VZ3I.cjs} +14 -14
  20. package/dist/{chunk-POKNFGGD.cjs.map → chunk-PPP6VZ3I.cjs.map} +1 -1
  21. package/dist/{chunk-34PU2DAT.cjs → chunk-Q45PC4YD.cjs} +2 -2
  22. package/dist/chunk-Q45PC4YD.cjs.map +1 -0
  23. package/dist/{chunk-PQHZUWSL.js → chunk-THLTFB6I.js} +2 -2
  24. package/dist/chunk-THLTFB6I.js.map +1 -0
  25. package/dist/{chunk-66M54BUO.cjs → chunk-TY2S25W5.cjs} +10 -6
  26. package/dist/chunk-TY2S25W5.cjs.map +1 -0
  27. package/dist/{chunk-XILR6TFO.js → chunk-YXVMQEJX.js} +2 -2
  28. package/dist/chunk-YXVMQEJX.js.map +1 -0
  29. package/dist/entries/cast-swap.cjs +2 -2
  30. package/dist/entries/cast-swap.d.cts +48 -39
  31. package/dist/entries/cast-swap.d.ts +48 -39
  32. package/dist/entries/cast-swap.js +1 -1
  33. package/dist/entries/client.cjs +12 -12
  34. package/dist/entries/client.js +7 -7
  35. package/dist/entries/core.cjs +5 -5
  36. package/dist/entries/core.js +1 -1
  37. package/dist/entries/jobs.cjs +2 -2
  38. package/dist/entries/jobs.d.cts +18 -7
  39. package/dist/entries/jobs.d.ts +18 -7
  40. package/dist/entries/jobs.js +1 -1
  41. package/dist/entries/node-presets.cjs +2 -2
  42. package/dist/entries/node-presets.d.cts +6 -0
  43. package/dist/entries/node-presets.d.ts +6 -0
  44. package/dist/entries/node-presets.js +1 -1
  45. package/dist/entries/trash.cjs +2 -2
  46. package/dist/entries/trash.d.cts +4 -1
  47. package/dist/entries/trash.d.ts +4 -1
  48. package/dist/entries/trash.js +1 -1
  49. package/dist/entries/trends.cjs +2 -2
  50. package/dist/entries/trends.d.cts +22 -13
  51. package/dist/entries/trends.d.ts +22 -13
  52. package/dist/entries/trends.js +1 -1
  53. package/dist/index.cjs +18 -18
  54. package/dist/index.js +7 -7
  55. package/package.json +3 -3
  56. package/dist/chunk-66M54BUO.cjs.map +0 -1
  57. package/dist/chunk-7LTVS75S.cjs.map +0 -1
  58. package/dist/chunk-C3C7IL25.js.map +0 -1
  59. package/dist/chunk-DIF7A5OH.cjs.map +0 -1
  60. package/dist/chunk-JTAW54UM.js.map +0 -1
  61. package/dist/chunk-KBHDUHKM.js.map +0 -1
  62. package/dist/chunk-PQHZUWSL.js.map +0 -1
  63. package/dist/chunk-XILR6TFO.js.map +0 -1
  64. package/dist/chunk-XKDVEQVD.cjs.map +0 -1
@@ -15,8 +15,8 @@ import '@nodaro/shared/organizations';
15
15
  * photos if it fails, and is turned off with `prepareReferences: false`.
16
16
  * Locations are not prepared.
17
17
  *
18
- * Engines: a run is made on Nodaro Motion Pro (`engine` left out, or
19
- * `"motion-pro"`) or Nodaro Motion Lite (`"motion-lite"`). Lite renders 720p
18
+ * Engines: a run is made on Nodaro Motion Prism (`engine` left out, or
19
+ * `"motion-prism"`) or Nodaro Motion Pulse (`"motion-pulse"`). Pulse renders 720p
20
20
  * (its default) or 1080p and has no draft; it makes a new take guided by the
21
21
  * clip and pictures, so its Full Quality is a new take at 1080p rather than
22
22
  * the same take re-rendered (`CastSwapFullQualityEstimate.kind`).
@@ -40,7 +40,7 @@ import '@nodaro/shared/organizations';
40
40
  * anything is charged: 400 `validation_error` (the body: no role with images,
41
41
  * no reference and no `prePrompt` or `postPrompt`, more roles of a kind
42
42
  * than allowed, more than 30 images in all, `draft: true` above 480p, a
43
- * `prePrompt` or `postPrompt` over 4,000 characters); on Nodaro Motion Lite,
43
+ * `prePrompt` or `postPrompt` over 4,000 characters); on Nodaro Motion Pulse,
44
44
  * `draft_unsupported` (`draft: true`), `resolution_unsupported` (480p),
45
45
  * `output_format_unsupported` (a MOV edit output) and `too_many_images` (more
46
46
  * than 10 images in the run, across every role and fixed reference);
@@ -51,32 +51,34 @@ import '@nodaro/shared/organizations';
51
51
  * `inPreview: false`, always refused even with a prompt, or with no role kept
52
52
  * in it that has images and no `prePrompt` or `postPrompt`), `prompt_too_long`
53
53
  * (the prompt would build too long: a `{role:N}` reads as the role's name when
54
- * it sends no images; Nodaro Motion Lite's cap is 8,000 characters); 401; 402 `insufficient_credits` (`run()` only); 404
54
+ * it sends no images; Nodaro Motion Pulse's cap is 8,000 characters); 401; 402 `insufficient_credits` (`run()` only); 404
55
55
  * (a `sessionId` you may not use, `run()` only); 422 `job_blocked` (`run()`
56
56
  * only); 503 `host_too_old` (both); 503 `estimate_unavailable` (`estimate()`
57
57
  * only).
58
58
  */
59
59
  /**
60
60
  * The engine a Nodaro Motion run is made on, by its public id. Left out =
61
- * `"motion-pro"`.
61
+ * `"motion-prism"`.
62
62
  *
63
- * - `"motion-pro"` (Nodaro Motion Pro): 480p (the default, a draft unless
63
+ * - `"motion-prism"` (Nodaro Motion Prism): 480p (the default, a draft unless
64
64
  * `draft: false`), 720p or 1080p; Full Quality re-renders a draft's own take
65
65
  * at 1080p.
66
- * - `"motion-lite"` (Nodaro Motion Lite): 720p (the default) or 1080p, never a
66
+ * - `"motion-pulse"` (Nodaro Motion Pulse): 720p (the default) or 1080p, never a
67
67
  * draft (`draft: true` answers 400 `draft_unsupported`); Full Quality makes a
68
68
  * new take at 1080p from a completed 720p run's inputs. A preview is still
69
69
  * 4 s from `previewStart`.
70
70
  */
71
- type CastSwapEngine = "motion-pro" | "motion-lite";
71
+ type CastSwapEngine = "motion-prism" | "motion-pulse";
72
72
  /**
73
- * The engine ids an older client sent (`"seedance-2-5"` = `"motion-pro"`,
74
- * `"kling-4"` = `"motion-lite"`). Still accepted in a request; never returned.
73
+ * The engine ids an older client sent: the earlier public ids (`"motion-pro"`
74
+ * = `"motion-prism"`, `"motion-lite"` = `"motion-pulse"`) and the internal
75
+ * ones (`"seedance-2-5"`, `"kling-4"`). Still accepted in a request; never
76
+ * returned.
75
77
  * @deprecated use {@link CastSwapEngine}.
76
78
  */
77
- type CastSwapEngineLegacyId = "seedance-2-5" | "kling-4";
79
+ type CastSwapEngineLegacyId = "motion-pro" | "motion-lite" | "seedance-2-5" | "kling-4";
78
80
  /**
79
- * Where a Nodaro Motion Lite run cuts the clip to whole seconds (Lite renders
81
+ * Where a Nodaro Motion Pulse run cuts the clip to whole seconds (Pulse renders
80
82
  * whole seconds; asked for more than the clip, it would stretch the motion):
81
83
  * - `"cut-end"` (the default): drop the fraction of a second at its end;
82
84
  * - `"cut-start"`: drop it at its start.
@@ -228,29 +230,29 @@ interface CastSwapParams {
228
230
  /** Where the preview starts, in seconds. Default 0. */
229
231
  previewStart?: number;
230
232
  /**
231
- * The engine (see {@link CastSwapEngine}). Default `"motion-pro"`. The job
233
+ * The engine (see {@link CastSwapEngine}). Default `"motion-prism"`. The job
232
234
  * records it in `input_data.engine`, and a completed job's output in its
233
235
  * `engine`. The ids an older client sent ({@link CastSwapEngineLegacyId})
234
236
  * are still accepted.
235
237
  */
236
238
  engine?: CastSwapEngine | CastSwapEngineLegacyId;
237
239
  /**
238
- * Nodaro Motion Lite only (Pro ignores it): which end of the clip is cut to
240
+ * Nodaro Motion Pulse only (Prism ignores it): which end of the clip is cut to
239
241
  * whole seconds (see {@link CastSwapMotionLength}). Default `"cut-end"`.
240
242
  */
241
243
  motionLength?: CastSwapMotionLength;
242
244
  /** @deprecated use {@link motionLength} (still accepted). */
243
245
  klingLength?: CastSwapKlingLength;
244
246
  /**
245
- * The output resolution. Nodaro Motion Pro: `"480p"` (default), `"720p"` or
246
- * `"1080p"`. Nodaro Motion Lite: `"720p"` (default) or `"1080p"`; `"480p"`
247
+ * The output resolution. Nodaro Motion Prism: `"480p"` (default), `"720p"` or
248
+ * `"1080p"`. Nodaro Motion Pulse: `"720p"` (default) or `"1080p"`; `"480p"`
247
249
  * answers 400.
248
250
  */
249
251
  resolution?: "480p" | "720p" | "1080p";
250
252
  /**
251
- * Render as a draft (Nodaro Motion Pro only). Defaults to `true` at 480p and
253
+ * Render as a draft (Nodaro Motion Prism only). Defaults to `true` at 480p and
252
254
  * `false` above it; `true` with `"720p"` or `"1080p"` answers 400 (draft is
253
- * 480p only). Nodaro Motion Lite has no draft: `true` answers 400
255
+ * 480p only). Nodaro Motion Pulse has no draft: `true` answers 400
254
256
  * `draft_unsupported`.
255
257
  */
256
258
  draft?: boolean;
@@ -281,7 +283,8 @@ interface CastSwapParams {
281
283
  interface CastSwapEstimate {
282
284
  /**
283
285
  * The engine the run would use, by its public id (absent from an older
284
- * server = `"motion-pro"`).
286
+ * server = `"motion-prism"`). An id an older server answers is read as the
287
+ * public id it names.
285
288
  */
286
289
  engine?: CastSwapEngine;
287
290
  /**
@@ -291,19 +294,20 @@ interface CastSwapEstimate {
291
294
  totalCredits: number;
292
295
  /**
293
296
  * The charge the run is expected to come to. Never above `totalCredits`
294
- * (on Nodaro Motion Lite it equals it: Lite renders exactly the length
297
+ * (on Nodaro Motion Pulse it equals it: Pulse renders exactly the length
295
298
  * asked for, so the hold is what it settles at). Absent from an older
296
299
  * server: read `totalCredits` then.
297
300
  */
298
301
  expectedCredits?: number;
299
302
  /**
300
303
  * The parts of the quote, by name, for display only:
301
- * - `castSwap`: the run itself;
304
+ * - `base`: the run itself (its base fee). A server before Cast Swap 0.396.0
305
+ * names it `castSwap` instead: read `base`, else `castSwap`;
302
306
  * - `references`: preparing the reference pictures (0 when
303
307
  * `prepareReferences` is off or there is nothing to prepare);
304
- * - `motion`: what the video holds (on Nodaro Motion Lite, what it costs);
308
+ * - `motion`: what the video holds (on Nodaro Motion Pulse, what it costs);
305
309
  * - `motionExpected`: what the video is expected to be charged, never above
306
- * `motion` (Nodaro Motion Pro);
310
+ * `motion` (Nodaro Motion Prism);
307
311
  * - `privacy`: preparing the clip, when the engine's setting does. In both
308
312
  * totals when it always runs; outside both when it is the retry
309
313
  * (`privacyCredits`).
@@ -313,7 +317,9 @@ interface CastSwapEstimate {
313
317
  * sum. Other parts may appear.
314
318
  */
315
319
  breakdown: {
316
- castSwap: number;
320
+ base?: number;
321
+ /** @deprecated read {@link base} (an older server answered this name for the same part). */
322
+ castSwap?: number;
317
323
  references: number;
318
324
  motion?: number;
319
325
  motionExpected?: number;
@@ -329,9 +335,9 @@ interface CastSwapEstimate {
329
335
  /** @deprecated read {@link privacyCredits} (an older server answered this name). */
330
336
  maskingCredits?: number;
331
337
  /**
332
- * `true` when the video is made at Auto length (every Nodaro Motion Pro
338
+ * `true` when the video is made at Auto length (every Nodaro Motion Prism
333
339
  * run): the final charge is expected to come out lower than `totalCredits`,
334
- * at about `expectedCredits`. `false` on Nodaro Motion Lite.
340
+ * at about `expectedCredits`. `false` on Nodaro Motion Pulse.
335
341
  */
336
342
  settlesLower: boolean;
337
343
  }
@@ -349,15 +355,15 @@ interface CastSwapRunOptions {
349
355
  }
350
356
  /**
351
357
  * What a Full Quality version would be: `"same-take"` re-renders a Nodaro
352
- * Motion Pro draft's own take at 1080p; `"new-take"` makes a new Nodaro Motion Lite take at
358
+ * Motion Prism draft's own take at 1080p; `"new-take"` makes a new Nodaro Motion Pulse take at
353
359
  * 1080p from a 720p run's inputs (it will not match the 720p run frame for
354
360
  * frame). The 720p run or draft stays either way.
355
361
  */
356
362
  type CastSwapFullQualityKind = "same-take" | "new-take";
357
363
  /**
358
364
  * What a Full Quality version of a run would cost
359
- * (`POST /v1/cast-swap/:jobId/full-quality/estimate`): a Nodaro Motion Pro
360
- * draft, or a completed Nodaro Motion Lite run at 720p.
365
+ * (`POST /v1/cast-swap/:jobId/full-quality/estimate`): a Nodaro Motion Prism
366
+ * draft, or a completed Nodaro Motion Pulse run at 720p.
361
367
  */
362
368
  interface CastSwapFullQualityEstimate {
363
369
  /**
@@ -365,16 +371,19 @@ interface CastSwapFullQualityEstimate {
365
371
  * be worded right. Absent from an older server: `"same-take"`.
366
372
  */
367
373
  kind?: CastSwapFullQualityKind;
368
- /** The quote in credits: `breakdown.castSwap` plus the 1080p render (same take) or the new take. */
374
+ /** The quote in credits: `breakdown.base` plus the 1080p render (same take) or the new take. */
369
375
  totalCredits: number;
370
376
  /**
371
- * The parts of the quote, by name, for display only: `castSwap` (the Full
372
- * Quality job's own steps), and `motionHd` (a same take: the 1080p render,
373
- * 0 when an earlier try of this draft already finished that render, which
374
- * is then reused) or `motion` (a new take).
377
+ * The parts of the quote, by name, for display only: `base` (the Full
378
+ * Quality job's own steps; a server before Cast Swap 0.396.0 names it
379
+ * `castSwap` instead: read `base`, else `castSwap`), and `motionHd` (a same
380
+ * take: the 1080p render, 0 when an earlier try of this draft already
381
+ * finished that render, which is then reused) or `motion` (a new take).
375
382
  */
376
383
  breakdown: {
377
- castSwap: number;
384
+ base?: number;
385
+ /** @deprecated read {@link base} (an older server answered this name for the same part). */
386
+ castSwap?: number;
378
387
  motionHd?: number;
379
388
  motion?: number;
380
389
  } & Record<string, number>;
@@ -399,8 +408,8 @@ interface CastSwapFullQualityResult {
399
408
  * - `not_found` (404): not your job, or not a Nodaro Motion run; also a
400
409
  * `sessionId` you may not use;
401
410
  * - `not_completed` (409): the run has not finished;
402
- * - `not_a_draft` (409): the run is neither a Nodaro Motion Pro draft nor a
403
- * Nodaro Motion Lite run at 720p (a Lite run at 1080p is already Full Quality);
411
+ * - `not_a_draft` (409): the run is neither a Nodaro Motion Prism draft nor a
412
+ * Nodaro Motion Pulse run at 720p (a Pulse run at 1080p is already Full Quality);
404
413
  * - `draft_expired` (410): more than 7 days after the draft completed, or
405
414
  * the draft can no longer be finished at Full Quality;
406
415
  * - `full_quality_pending` (409, `details.retryable: true`): not final — an
@@ -439,7 +448,7 @@ declare class CastSwapResource {
439
448
  /**
440
449
  * Quote finishing a run at Full Quality (`POST
441
450
  * /v1/cast-swap/:jobId/full-quality/estimate`); spends nothing. `jobId` is a
442
- * finished Nodaro Motion Pro DRAFT run, or a finished Nodaro Motion Lite
451
+ * finished Nodaro Motion Prism DRAFT run, or a finished Nodaro Motion Pulse
443
452
  * run at 720p (a Nodaro Motion or trend run); the quote's `kind` says whether it is the same take
444
453
  * re-rendered or a new take. The quote
445
454
  * does not look for a Full Quality already running: when one is,
@@ -450,7 +459,7 @@ declare class CastSwapResource {
450
459
  /**
451
460
  * Finish a run at Full Quality (`POST /v1/cast-swap/:jobId/full-quality`):
452
461
  * at 1080p, with the clip's audio, as a new job linked to the run — a
453
- * Nodaro Motion Pro draft's own take re-rendered, or a new Nodaro Motion Lite take from a
462
+ * Nodaro Motion Prism draft's own take re-rendered, or a new Nodaro Motion Pulse take from a
454
463
  * 720p run's inputs (the quote's `kind`). SPENDS CREDITS: quote it first with
455
464
  * {@link fullQualityEstimate}. Answers 202 `{ jobId }`, or 200
456
465
  * `{ jobId, existing: true }` when this run's Full Quality is already
@@ -1,4 +1,4 @@
1
1
  import '../chunk-KARJ7P7Y.js';
2
- export { CastSwapResource } from '../chunk-C3C7IL25.js';
2
+ export { CastSwapResource } from '../chunk-OCRUDBPG.js';
3
3
  //# sourceMappingURL=cast-swap.js.map
4
4
  //# sourceMappingURL=cast-swap.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkPOKNFGGD_cjs = require('../chunk-POKNFGGD.cjs');
3
+ var chunkPPP6VZ3I_cjs = require('../chunk-PPP6VZ3I.cjs');
4
4
  require('../chunk-JTOEHQQJ.cjs');
5
5
  require('../chunk-W5VHATSR.cjs');
6
6
  require('../chunk-R63TTR35.cjs');
@@ -12,8 +12,8 @@ require('../chunk-WMT7HEBZ.cjs');
12
12
  require('../chunk-MBFUMWI5.cjs');
13
13
  require('../chunk-NKH2UFSD.cjs');
14
14
  require('../chunk-UIBYZNDR.cjs');
15
- require('../chunk-XKDVEQVD.cjs');
16
- require('../chunk-DIF7A5OH.cjs');
15
+ require('../chunk-LTZKNAXM.cjs');
16
+ require('../chunk-E5MJK3W5.cjs');
17
17
  require('../chunk-KMNSPC72.cjs');
18
18
  require('../chunk-NBVARNVA.cjs');
19
19
  require('../chunk-7YHIFCJ4.cjs');
@@ -26,7 +26,7 @@ require('../chunk-SYVNY3AH.cjs');
26
26
  require('../chunk-22P4X3N5.cjs');
27
27
  require('../chunk-7QOCWJKD.cjs');
28
28
  require('../chunk-ZCWKX4V6.cjs');
29
- require('../chunk-34PU2DAT.cjs');
29
+ require('../chunk-Q45PC4YD.cjs');
30
30
  require('../chunk-TK2CEVSK.cjs');
31
31
  require('../chunk-GVIFLUYZ.cjs');
32
32
  require('../chunk-CR5E2SF3.cjs');
@@ -34,7 +34,7 @@ require('../chunk-J5LGGCAS.cjs');
34
34
  require('../chunk-SF2CMKWA.cjs');
35
35
  require('../chunk-SBV5MWEL.cjs');
36
36
  require('../chunk-WUKIJJG2.cjs');
37
- require('../chunk-7LTVS75S.cjs');
37
+ require('../chunk-P6AM42UB.cjs');
38
38
  require('../chunk-2DZWWIJ4.cjs');
39
39
  require('../chunk-SS3B6PHT.cjs');
40
40
  require('../chunk-MQ74AKA2.cjs');
@@ -43,7 +43,7 @@ require('../chunk-43FVH6LJ.cjs');
43
43
  require('../chunk-YFS2LMG4.cjs');
44
44
  require('../chunk-OSMKIRKI.cjs');
45
45
  require('../chunk-FRQJNGJS.cjs');
46
- var chunkZJCHIJND_cjs = require('../chunk-ZJCHIJND.cjs');
46
+ var chunkNOBQQTAG_cjs = require('../chunk-NOBQQTAG.cjs');
47
47
  require('../chunk-FM2KM5TY.cjs');
48
48
  require('../chunk-HGCVWOGK.cjs');
49
49
  require('../chunk-FIMBPKIH.cjs');
@@ -51,7 +51,7 @@ require('../chunk-A3S55XGF.cjs');
51
51
  require('../chunk-JOXZ4ZIF.cjs');
52
52
  require('../chunk-GA4LZZKQ.cjs');
53
53
  require('../chunk-NGKODS3J.cjs');
54
- require('../chunk-66M54BUO.cjs');
54
+ require('../chunk-TY2S25W5.cjs');
55
55
  require('../chunk-BPWUWUZ3.cjs');
56
56
  require('../chunk-HAKYPZLB.cjs');
57
57
 
@@ -59,23 +59,23 @@ require('../chunk-HAKYPZLB.cjs');
59
59
 
60
60
  Object.defineProperty(exports, "NodaroClient", {
61
61
  enumerable: true,
62
- get: function () { return chunkPOKNFGGD_cjs.NodaroClient; }
62
+ get: function () { return chunkPPP6VZ3I_cjs.NodaroClient; }
63
63
  });
64
64
  Object.defineProperty(exports, "createClient", {
65
65
  enumerable: true,
66
- get: function () { return chunkPOKNFGGD_cjs.createClient; }
66
+ get: function () { return chunkPPP6VZ3I_cjs.createClient; }
67
67
  });
68
68
  Object.defineProperty(exports, "CallbackAuth", {
69
69
  enumerable: true,
70
- get: function () { return chunkZJCHIJND_cjs.CallbackAuth; }
70
+ get: function () { return chunkNOBQQTAG_cjs.CallbackAuth; }
71
71
  });
72
72
  Object.defineProperty(exports, "StaticTokenAuth", {
73
73
  enumerable: true,
74
- get: function () { return chunkZJCHIJND_cjs.StaticTokenAuth; }
74
+ get: function () { return chunkNOBQQTAG_cjs.StaticTokenAuth; }
75
75
  });
76
76
  Object.defineProperty(exports, "supabaseAuth", {
77
77
  enumerable: true,
78
- get: function () { return chunkZJCHIJND_cjs.supabaseAuth; }
78
+ get: function () { return chunkNOBQQTAG_cjs.supabaseAuth; }
79
79
  });
80
80
  //# sourceMappingURL=client.cjs.map
81
81
  //# sourceMappingURL=client.cjs.map
@@ -1,4 +1,4 @@
1
- export { NodaroClient, createClient } from '../chunk-WFAFFAGV.js';
1
+ export { NodaroClient, createClient } from '../chunk-2JAKOBD3.js';
2
2
  import '../chunk-WY4QRJZW.js';
3
3
  import '../chunk-ERLXU47J.js';
4
4
  import '../chunk-T7N7DFQJ.js';
@@ -10,8 +10,8 @@ import '../chunk-WS4ZQ4AA.js';
10
10
  import '../chunk-WVFAQBS7.js';
11
11
  import '../chunk-AUKHMT53.js';
12
12
  import '../chunk-M7VSFZMV.js';
13
- import '../chunk-KBHDUHKM.js';
14
- import '../chunk-XILR6TFO.js';
13
+ import '../chunk-2SQ7V6EX.js';
14
+ import '../chunk-YXVMQEJX.js';
15
15
  import '../chunk-HPXE3NZW.js';
16
16
  import '../chunk-WEQWU2IC.js';
17
17
  import '../chunk-KFZOJBI5.js';
@@ -24,7 +24,7 @@ import '../chunk-NCCBS6GU.js';
24
24
  import '../chunk-BQAW4RX2.js';
25
25
  import '../chunk-Y6V6CBY5.js';
26
26
  import '../chunk-YVU2M7MI.js';
27
- import '../chunk-JTAW54UM.js';
27
+ import '../chunk-AEUPH7EE.js';
28
28
  import '../chunk-GW76IRQD.js';
29
29
  import '../chunk-Z7LGWNI7.js';
30
30
  import '../chunk-7LSFG2AF.js';
@@ -32,7 +32,7 @@ import '../chunk-ALSLZG3U.js';
32
32
  import '../chunk-RBX3QTKB.js';
33
33
  import '../chunk-Z3ZKFI2M.js';
34
34
  import '../chunk-JDEZHITT.js';
35
- import '../chunk-PQHZUWSL.js';
35
+ import '../chunk-THLTFB6I.js';
36
36
  import '../chunk-P6E4QDJN.js';
37
37
  import '../chunk-E37CVHWW.js';
38
38
  import '../chunk-TVENC6PH.js';
@@ -41,7 +41,7 @@ import '../chunk-SFB4YLCS.js';
41
41
  import '../chunk-BU5A6K4C.js';
42
42
  import '../chunk-D2ILCSOQ.js';
43
43
  import '../chunk-7CUWAVWB.js';
44
- export { CallbackAuth, StaticTokenAuth, supabaseAuth } from '../chunk-5Q4SUZPL.js';
44
+ export { CallbackAuth, StaticTokenAuth, supabaseAuth } from '../chunk-5MZYOJCJ.js';
45
45
  import '../chunk-L6T44A3G.js';
46
46
  import '../chunk-CK3AMMSC.js';
47
47
  import '../chunk-5MOJSYHI.js';
@@ -49,7 +49,7 @@ import '../chunk-65E3JBFZ.js';
49
49
  import '../chunk-7LODCIQK.js';
50
50
  import '../chunk-3QFTP5P5.js';
51
51
  import '../chunk-J4WFSKY6.js';
52
- import '../chunk-C3C7IL25.js';
52
+ import '../chunk-OCRUDBPG.js';
53
53
  import '../chunk-KG4R454Z.js';
54
54
  import '../chunk-EJSGJDZY.js';
55
55
  //# sourceMappingURL=client.js.map
@@ -1,26 +1,26 @@
1
1
  'use strict';
2
2
 
3
3
  require('../chunk-X7XP5WBP.cjs');
4
- var chunkZJCHIJND_cjs = require('../chunk-ZJCHIJND.cjs');
4
+ var chunkNOBQQTAG_cjs = require('../chunk-NOBQQTAG.cjs');
5
5
  require('../chunk-FM2KM5TY.cjs');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "CallbackAuth", {
10
10
  enumerable: true,
11
- get: function () { return chunkZJCHIJND_cjs.CallbackAuth; }
11
+ get: function () { return chunkNOBQQTAG_cjs.CallbackAuth; }
12
12
  });
13
13
  Object.defineProperty(exports, "NodaroClientCore", {
14
14
  enumerable: true,
15
- get: function () { return chunkZJCHIJND_cjs.NodaroClientCore; }
15
+ get: function () { return chunkNOBQQTAG_cjs.NodaroClientCore; }
16
16
  });
17
17
  Object.defineProperty(exports, "StaticTokenAuth", {
18
18
  enumerable: true,
19
- get: function () { return chunkZJCHIJND_cjs.StaticTokenAuth; }
19
+ get: function () { return chunkNOBQQTAG_cjs.StaticTokenAuth; }
20
20
  });
21
21
  Object.defineProperty(exports, "supabaseAuth", {
22
22
  enumerable: true,
23
- get: function () { return chunkZJCHIJND_cjs.supabaseAuth; }
23
+ get: function () { return chunkNOBQQTAG_cjs.supabaseAuth; }
24
24
  });
25
25
  //# sourceMappingURL=core.cjs.map
26
26
  //# sourceMappingURL=core.cjs.map
@@ -1,5 +1,5 @@
1
1
  import '../chunk-AUDHV3OE.js';
2
- export { CallbackAuth, NodaroClientCore, StaticTokenAuth, supabaseAuth } from '../chunk-5Q4SUZPL.js';
2
+ export { CallbackAuth, NodaroClientCore, StaticTokenAuth, supabaseAuth } from '../chunk-5MZYOJCJ.js';
3
3
  import '../chunk-L6T44A3G.js';
4
4
  //# sourceMappingURL=core.js.map
5
5
  //# sourceMappingURL=core.js.map
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  require('../chunk-EHRWTYGR.cjs');
4
- var chunk7LTVS75S_cjs = require('../chunk-7LTVS75S.cjs');
4
+ var chunkP6AM42UB_cjs = require('../chunk-P6AM42UB.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "JobsResource", {
9
9
  enumerable: true,
10
- get: function () { return chunk7LTVS75S_cjs.JobsResource; }
10
+ get: function () { return chunkP6AM42UB_cjs.JobsResource; }
11
11
  });
12
12
  //# sourceMappingURL=jobs.cjs.map
13
13
  //# sourceMappingURL=jobs.cjs.map
@@ -133,17 +133,28 @@ interface Job {
133
133
  * `usage_logs.status`. `null` when there is no usage log to report. Never
134
134
  * changes the meaning of `credits` (the reserved amount) below. */
135
135
  credit_status?: CreditStatus | null;
136
- /** The credits HELD when the job was accepted. Never changes — a job can
137
- * settle below it; read {@link Job.credits_charged} for what it cost. */
136
+ /** The credits the job itself HELD when it was accepted. Never changes — a
137
+ * job can settle below it; read {@link Job.credits_charged} for what it cost. */
138
138
  credits: number | null;
139
139
  /**
140
- * What the job actually cost once its hold settled. Can be lower than
141
- * `credits` (the unused part goes back to the balance), `0` when the hold was
142
- * refunded, `null` while the job is still running or when it reserved
143
- * nothing of its own. Sum this — not `credits` — to total spend. Returned by
144
- * `get()` and `list()`.
140
+ * What the job actually cost once its hold settled, INCLUDING the steps it
141
+ * ran: a job that runs other jobs for you (a Nodaro Motion run's reference
142
+ * preparation, mask and video) is charged for each, and they are not listed
143
+ * on their own. A step adds its charge once it settles. Can be lower than
144
+ * {@link Job.credits_held} (the unused part goes back to the balance). `0`
145
+ * when the run's own hold was refunded, plus any settled steps (a refunded
146
+ * Nodaro Motion run whose reference and mask steps committed reads
147
+ * `credit_status: "refunded"` with `credits_charged: 165`). `null` while the
148
+ * job's own hold is still open (even when some steps have settled), when
149
+ * nothing in the run was reserved, or when its steps could not be read for a
150
+ * moment (unknown — never a lower figure). Sum this — not `credits` — to
151
+ * total spend. Returned by `get()` and `list()`.
145
152
  */
146
153
  credits_charged?: number | null;
154
+ /** The run's hold: the job's own `credits` plus its steps' holds (equals `credits` for a job with no steps). */
155
+ credits_held?: number | null;
156
+ /** What went back from `credits_held` once every hold in the run settled; `null` until then. */
157
+ credits_released?: number | null;
147
158
  job_type: string | null;
148
159
  created_at: string;
149
160
  started_at: string | null;
@@ -133,17 +133,28 @@ interface Job {
133
133
  * `usage_logs.status`. `null` when there is no usage log to report. Never
134
134
  * changes the meaning of `credits` (the reserved amount) below. */
135
135
  credit_status?: CreditStatus | null;
136
- /** The credits HELD when the job was accepted. Never changes — a job can
137
- * settle below it; read {@link Job.credits_charged} for what it cost. */
136
+ /** The credits the job itself HELD when it was accepted. Never changes — a
137
+ * job can settle below it; read {@link Job.credits_charged} for what it cost. */
138
138
  credits: number | null;
139
139
  /**
140
- * What the job actually cost once its hold settled. Can be lower than
141
- * `credits` (the unused part goes back to the balance), `0` when the hold was
142
- * refunded, `null` while the job is still running or when it reserved
143
- * nothing of its own. Sum this — not `credits` — to total spend. Returned by
144
- * `get()` and `list()`.
140
+ * What the job actually cost once its hold settled, INCLUDING the steps it
141
+ * ran: a job that runs other jobs for you (a Nodaro Motion run's reference
142
+ * preparation, mask and video) is charged for each, and they are not listed
143
+ * on their own. A step adds its charge once it settles. Can be lower than
144
+ * {@link Job.credits_held} (the unused part goes back to the balance). `0`
145
+ * when the run's own hold was refunded, plus any settled steps (a refunded
146
+ * Nodaro Motion run whose reference and mask steps committed reads
147
+ * `credit_status: "refunded"` with `credits_charged: 165`). `null` while the
148
+ * job's own hold is still open (even when some steps have settled), when
149
+ * nothing in the run was reserved, or when its steps could not be read for a
150
+ * moment (unknown — never a lower figure). Sum this — not `credits` — to
151
+ * total spend. Returned by `get()` and `list()`.
145
152
  */
146
153
  credits_charged?: number | null;
154
+ /** The run's hold: the job's own `credits` plus its steps' holds (equals `credits` for a job with no steps). */
155
+ credits_held?: number | null;
156
+ /** What went back from `credits_held` once every hold in the run settled; `null` until then. */
157
+ credits_released?: number | null;
147
158
  job_type: string | null;
148
159
  created_at: string;
149
160
  started_at: string | null;
@@ -1,4 +1,4 @@
1
1
  import '../chunk-I3TYBAOX.js';
2
- export { JobsResource } from '../chunk-PQHZUWSL.js';
2
+ export { JobsResource } from '../chunk-THLTFB6I.js';
3
3
  //# sourceMappingURL=jobs.js.map
4
4
  //# sourceMappingURL=jobs.js.map
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  require('../chunk-RA42NMWV.cjs');
4
- var chunk34PU2DAT_cjs = require('../chunk-34PU2DAT.cjs');
4
+ var chunkQ45PC4YD_cjs = require('../chunk-Q45PC4YD.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "PresetsResource", {
9
9
  enumerable: true,
10
- get: function () { return chunk34PU2DAT_cjs.PresetsResource; }
10
+ get: function () { return chunkQ45PC4YD_cjs.PresetsResource; }
11
11
  });
12
12
  //# sourceMappingURL=node-presets.cjs.map
13
13
  //# sourceMappingURL=node-presets.cjs.map
@@ -58,6 +58,12 @@ interface FactoryPresetEntry extends FactoryPreset {
58
58
  * server you asked — or null while the preset has none.
59
59
  */
60
60
  previewUrl?: string | null;
61
+ /**
62
+ * The same picture at its two sizes for an `<img srcset>` — the tile picture
63
+ * at 512w and the full-screen one at up to 1024w. Present only when the
64
+ * preset has both; absent from servers that predate it.
65
+ */
66
+ previewSrcSet?: string;
61
67
  }
62
68
  /**
63
69
  * Result of `GET /v1/node-presets/factory` — the built-in (factory) catalog for
@@ -58,6 +58,12 @@ interface FactoryPresetEntry extends FactoryPreset {
58
58
  * server you asked — or null while the preset has none.
59
59
  */
60
60
  previewUrl?: string | null;
61
+ /**
62
+ * The same picture at its two sizes for an `<img srcset>` — the tile picture
63
+ * at 512w and the full-screen one at up to 1024w. Present only when the
64
+ * preset has both; absent from servers that predate it.
65
+ */
66
+ previewSrcSet?: string;
61
67
  }
62
68
  /**
63
69
  * Result of `GET /v1/node-presets/factory` — the built-in (factory) catalog for
@@ -1,4 +1,4 @@
1
1
  import '../chunk-NX67YIF3.js';
2
- export { PresetsResource } from '../chunk-JTAW54UM.js';
2
+ export { PresetsResource } from '../chunk-AEUPH7EE.js';
3
3
  //# sourceMappingURL=node-presets.js.map
4
4
  //# sourceMappingURL=node-presets.js.map
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  require('../chunk-UANHMQ3A.cjs');
4
- var chunkXKDVEQVD_cjs = require('../chunk-XKDVEQVD.cjs');
4
+ var chunkLTZKNAXM_cjs = require('../chunk-LTZKNAXM.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "TrashResource", {
9
9
  enumerable: true,
10
- get: function () { return chunkXKDVEQVD_cjs.TrashResource; }
10
+ get: function () { return chunkLTZKNAXM_cjs.TrashResource; }
11
11
  });
12
12
  //# sourceMappingURL=trash.cjs.map
13
13
  //# sourceMappingURL=trash.cjs.map
@@ -3,10 +3,13 @@ import { Job } from './jobs.cjs';
3
3
  import '@nodaro/shared/apps';
4
4
  import '@nodaro/shared/organizations';
5
5
 
6
- /** The session a removed item was removed from. */
6
+ /** The session a removed item was removed from — restore it there with
7
+ * `client.sessions.restoreItem(session.id, job.id)`. */
7
8
  interface TrashSession {
8
9
  id: string;
10
+ /** `null` = untitled; a UI may fall back to the first prompt. */
9
11
  title: string | null;
12
+ /** The session's project, or `null` when it has none. */
10
13
  projectId: string | null;
11
14
  }
12
15
  /**
@@ -3,10 +3,13 @@ import { Job } from './jobs.js';
3
3
  import '@nodaro/shared/apps';
4
4
  import '@nodaro/shared/organizations';
5
5
 
6
- /** The session a removed item was removed from. */
6
+ /** The session a removed item was removed from — restore it there with
7
+ * `client.sessions.restoreItem(session.id, job.id)`. */
7
8
  interface TrashSession {
8
9
  id: string;
10
+ /** `null` = untitled; a UI may fall back to the first prompt. */
9
11
  title: string | null;
12
+ /** The session's project, or `null` when it has none. */
10
13
  projectId: string | null;
11
14
  }
12
15
  /**
@@ -1,4 +1,4 @@
1
1
  import '../chunk-6NTKEXT5.js';
2
- export { TrashResource } from '../chunk-KBHDUHKM.js';
2
+ export { TrashResource } from '../chunk-2SQ7V6EX.js';
3
3
  //# sourceMappingURL=trash.js.map
4
4
  //# sourceMappingURL=trash.js.map
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  require('../chunk-PG2GBS3K.cjs');
4
- var chunkDIF7A5OH_cjs = require('../chunk-DIF7A5OH.cjs');
4
+ var chunkE5MJK3W5_cjs = require('../chunk-E5MJK3W5.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "TrendsResource", {
9
9
  enumerable: true,
10
- get: function () { return chunkDIF7A5OH_cjs.TrendsResource; }
10
+ get: function () { return chunkE5MJK3W5_cjs.TrendsResource; }
11
11
  });
12
12
  //# sourceMappingURL=trends.cjs.map
13
13
  //# sourceMappingURL=trends.cjs.map