@growth-labs/cms 0.3.1 → 0.5.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 (84) hide show
  1. package/README.md +80 -6
  2. package/dist/engine/content-metadata.d.ts +13 -0
  3. package/dist/engine/content-metadata.d.ts.map +1 -0
  4. package/dist/engine/content-metadata.js +80 -0
  5. package/dist/engine/content-metadata.js.map +1 -0
  6. package/dist/engine/foundry-dispatch.d.ts +5 -1
  7. package/dist/engine/foundry-dispatch.d.ts.map +1 -1
  8. package/dist/engine/foundry-dispatch.js +19 -3
  9. package/dist/engine/foundry-dispatch.js.map +1 -1
  10. package/dist/engine/index.d.ts +4 -2
  11. package/dist/engine/index.d.ts.map +1 -1
  12. package/dist/engine/index.js +6 -2
  13. package/dist/engine/index.js.map +1 -1
  14. package/dist/engine/publication.d.ts +29 -1
  15. package/dist/engine/publication.d.ts.map +1 -1
  16. package/dist/engine/publication.js +197 -15
  17. package/dist/engine/publication.js.map +1 -1
  18. package/dist/engine/published-content.d.ts +40 -0
  19. package/dist/engine/published-content.d.ts.map +1 -0
  20. package/dist/engine/published-content.js +388 -0
  21. package/dist/engine/published-content.js.map +1 -0
  22. package/dist/engine/publisher.d.ts +20 -1
  23. package/dist/engine/publisher.d.ts.map +1 -1
  24. package/dist/engine/publisher.js +264 -65
  25. package/dist/engine/publisher.js.map +1 -1
  26. package/dist/engine/revisions.d.ts.map +1 -1
  27. package/dist/engine/revisions.js +2 -0
  28. package/dist/engine/revisions.js.map +1 -1
  29. package/dist/providers/types.d.ts +1 -0
  30. package/dist/providers/types.d.ts.map +1 -1
  31. package/dist/routes/content.d.ts.map +1 -1
  32. package/dist/routes/content.js +76 -16
  33. package/dist/routes/content.js.map +1 -1
  34. package/dist/routes/context.d.ts +1 -0
  35. package/dist/routes/context.d.ts.map +1 -1
  36. package/dist/routes/context.js.map +1 -1
  37. package/dist/routes/media.d.ts.map +1 -1
  38. package/dist/routes/media.js +53 -31
  39. package/dist/routes/media.js.map +1 -1
  40. package/dist/schema/migrations.d.ts.map +1 -1
  41. package/dist/schema/migrations.js +24 -0
  42. package/dist/schema/migrations.js.map +1 -1
  43. package/dist/schema/types.d.ts +6 -0
  44. package/dist/schema/types.d.ts.map +1 -1
  45. package/dist/schema/types.js.map +1 -1
  46. package/dist/ui/editor/ContentForm.d.ts.map +1 -1
  47. package/dist/ui/editor/ContentForm.js +65 -10
  48. package/dist/ui/editor/ContentForm.js.map +1 -1
  49. package/dist/ui/editor/content-payload.d.ts +2 -0
  50. package/dist/ui/editor/content-payload.d.ts.map +1 -1
  51. package/dist/ui/editor/content-payload.js +15 -4
  52. package/dist/ui/editor/content-payload.js.map +1 -1
  53. package/dist/ui/editor/editor-media-duration.d.ts +24 -0
  54. package/dist/ui/editor/editor-media-duration.d.ts.map +1 -0
  55. package/dist/ui/editor/editor-media-duration.js +51 -0
  56. package/dist/ui/editor/editor-media-duration.js.map +1 -0
  57. package/dist/ui/screens/MediaScreen.d.ts.map +1 -1
  58. package/dist/ui/screens/MediaScreen.js +8 -1
  59. package/dist/ui/screens/MediaScreen.js.map +1 -1
  60. package/dist/ui/screens/media-upload.d.ts +9 -2
  61. package/dist/ui/screens/media-upload.d.ts.map +1 -1
  62. package/dist/ui/screens/media-upload.js +24 -0
  63. package/dist/ui/screens/media-upload.js.map +1 -1
  64. package/migrations/0020_content_metadata_read_model.sql +19 -0
  65. package/migrations/0021_published_revision_slug_index.sql +5 -0
  66. package/package.json +1 -1
  67. package/src/engine/content-metadata.ts +122 -0
  68. package/src/engine/foundry-dispatch.ts +32 -4
  69. package/src/engine/index.ts +27 -0
  70. package/src/engine/publication.ts +329 -18
  71. package/src/engine/published-content.ts +581 -0
  72. package/src/engine/publisher.ts +403 -107
  73. package/src/engine/revisions.ts +4 -0
  74. package/src/providers/types.ts +1 -0
  75. package/src/routes/content.ts +91 -16
  76. package/src/routes/context.ts +1 -0
  77. package/src/routes/media.ts +63 -41
  78. package/src/schema/migrations.ts +24 -0
  79. package/src/schema/types.ts +6 -0
  80. package/src/ui/editor/ContentForm.tsx +121 -4
  81. package/src/ui/editor/content-payload.ts +20 -2
  82. package/src/ui/editor/editor-media-duration.ts +75 -0
  83. package/src/ui/screens/MediaScreen.tsx +13 -2
  84. package/src/ui/screens/media-upload.ts +41 -2
@@ -18,13 +18,14 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
18
18
  // on the first save and switches to update mode.
19
19
  //
20
20
  // Compile-gated: all Tiptap/React usage verified by `pnpm run build` (tsc).
21
- import { useCallback, useEffect, useRef, useState } from 'react';
21
+ import { useCallback, useEffect, useId, useRef, useState } from 'react';
22
22
  import { countWords, estimateReadTime } from '../../engine/publisher.js';
23
23
  import { Icon } from '../icons.js';
24
24
  import { uploadMediaAsset } from '../screens/media-upload.js';
25
25
  import { AiAssistPanel } from './AiAssistPanel.js';
26
26
  import { AUTOSAVE_DEBOUNCE_MS, shouldSnapshot } from './autosave.js';
27
- import { buildContentCreatePayload, buildContentUpdatePayload, canCreateContentDraft, foundryDispatchSourceForDraft, slugifyTitle, } from './content-payload.js';
27
+ import { buildContentCreatePayload, buildContentUpdatePayload, canCreateContentDraft, foundryDispatchSourceForDraft, normalizeMediaDurationSeconds, slugifyTitle, } from './content-payload.js';
28
+ import { measureEditorMediaDurationSeconds } from './editor-media-duration.js';
28
29
  import { uploadEditorImage } from './editor-media-upload.js';
29
30
  import { Rte } from './Rte.js';
30
31
  import { docToMarkdown } from './serialize.js';
@@ -54,6 +55,7 @@ function createEmptyFormState(docId) {
54
55
  thumbnailUploadStatus: 'idle',
55
56
  thumbnailUploadError: null,
56
57
  audioUrl: '',
58
+ durationSeconds: null,
57
59
  audioUploadStatus: 'idle',
58
60
  audioUploadError: null,
59
61
  videoUploadStatus: 'idle',
@@ -125,7 +127,16 @@ export function ContentForm({ docId, contentType, onDocCreated, onTitleChange, o
125
127
  const source = foundryDispatchSourceForDraft(contentType, draft);
126
128
  if (!source)
127
129
  return;
128
- const queueKey = `${contentType}:${id}:${source}`;
130
+ const durationSeconds = normalizeMediaDurationSeconds(draft.durationSeconds);
131
+ if (durationSeconds === null) {
132
+ setForm((prev) => ({
133
+ ...prev,
134
+ videoPipelineStatus: 'idle',
135
+ videoPipelineError: 'Enter the authoritative media duration in whole seconds before queueing.',
136
+ }));
137
+ return;
138
+ }
139
+ const queueKey = `${contentType}:${id}:${source}:${durationSeconds}`;
129
140
  if (queuedVideoSources.current.has(queueKey))
130
141
  return;
131
142
  setForm((prev) => ({
@@ -161,9 +172,13 @@ export function ContentForm({ docId, contentType, onDocCreated, onTitleChange, o
161
172
  const draft = currentForm;
162
173
  if (id === null) {
163
174
  if (!canCreateContentDraft(contentType, draft)) {
175
+ const mediaSource = foundryDispatchSourceForDraft(contentType, draft);
176
+ const missingMediaDuration = mediaSource && normalizeMediaDurationSeconds(draft.durationSeconds) === null;
164
177
  setForm((prev) => ({
165
178
  ...prev,
166
- saveError: 'Add the required title and content before saving.',
179
+ saveError: missingMediaDuration
180
+ ? 'Enter the authoritative media duration in whole seconds before saving.'
181
+ : 'Add the required title and content before saving.',
167
182
  }));
168
183
  return;
169
184
  }
@@ -310,6 +325,7 @@ export function ContentForm({ docId, contentType, onDocCreated, onTitleChange, o
310
325
  const next = {
311
326
  ...latestForm.current,
312
327
  videoUrl: value,
328
+ durationSeconds: null,
313
329
  videoSourceKind: null,
314
330
  videoId: null,
315
331
  videoPipelineStatus: 'idle',
@@ -320,7 +336,26 @@ export function ContentForm({ docId, contentType, onDocCreated, onTitleChange, o
320
336
  scheduleAutosave(next);
321
337
  }
322
338
  function handleAudioUrlChange(value) {
323
- const next = { ...latestForm.current, audioUrl: value };
339
+ const next = {
340
+ ...latestForm.current,
341
+ audioUrl: value,
342
+ durationSeconds: null,
343
+ videoPipelineStatus: 'idle',
344
+ videoPipelineError: null,
345
+ };
346
+ setForm(next);
347
+ publishDraft(next);
348
+ scheduleAutosave(next);
349
+ }
350
+ function handleDurationSecondsChange(value) {
351
+ const parsed = value.trim() === '' ? null : Number(value);
352
+ const durationSeconds = typeof parsed === 'number' && Number.isInteger(parsed) && parsed > 0 ? parsed : null;
353
+ const next = {
354
+ ...latestForm.current,
355
+ durationSeconds,
356
+ videoPipelineStatus: 'idle',
357
+ videoPipelineError: null,
358
+ };
324
359
  setForm(next);
325
360
  publishDraft(next);
326
361
  scheduleAutosave(next);
@@ -357,18 +392,25 @@ export function ContentForm({ docId, contentType, onDocCreated, onTitleChange, o
357
392
  videoPipelineError: null,
358
393
  }));
359
394
  try {
395
+ const measuredDurationSeconds = await measureEditorMediaDurationSeconds(file, 'video');
360
396
  const uploaded = await uploadMediaAsset({
361
397
  kind: 'video',
362
398
  file,
363
399
  slug: baseSlug || undefined,
400
+ durationSeconds: measuredDurationSeconds,
364
401
  });
365
402
  if (!uploaded.url)
366
403
  throw new Error('Video upload did not return a source URL');
404
+ const durationSeconds = normalizeMediaDurationSeconds(uploaded.durationSeconds);
405
+ if (durationSeconds === null) {
406
+ throw new Error('Video upload did not return its verified duration');
407
+ }
367
408
  const next = {
368
409
  ...latestForm.current,
369
410
  videoUrl: uploaded.url,
370
411
  videoSourceKind: uploaded.sourceKind ?? 'http_url',
371
412
  videoId: uploaded.videoId ?? baseSlug,
413
+ durationSeconds,
372
414
  videoUploadStatus: 'staged',
373
415
  videoUploadError: null,
374
416
  videoPipelineStatus: 'idle',
@@ -459,14 +501,21 @@ export function ContentForm({ docId, contentType, onDocCreated, onTitleChange, o
459
501
  audioUploadError: null,
460
502
  }));
461
503
  try {
504
+ const measuredDurationSeconds = await measureEditorMediaDurationSeconds(file, 'audio');
462
505
  const uploaded = await uploadMediaAsset({
463
506
  kind: 'podcast',
464
507
  file,
465
508
  slug: baseSlug || undefined,
509
+ durationSeconds: measuredDurationSeconds,
466
510
  });
511
+ const durationSeconds = normalizeMediaDurationSeconds(uploaded.durationSeconds);
512
+ if (durationSeconds === null) {
513
+ throw new Error('Podcast upload did not return its verified duration');
514
+ }
467
515
  const next = {
468
516
  ...latestForm.current,
469
517
  audioUrl: uploaded.id,
518
+ durationSeconds,
470
519
  audioUploadStatus: 'staged',
471
520
  audioUploadError: null,
472
521
  };
@@ -507,7 +556,7 @@ export function ContentForm({ docId, contentType, onDocCreated, onTitleChange, o
507
556
  borderColor: form.aiOpen ? 'var(--accent)' : 'var(--field-border)',
508
557
  color: form.aiOpen ? 'var(--accent)' : 'var(--ink)',
509
558
  opacity: form.savedId === null ? 0.45 : 1,
510
- }, "aria-pressed": form.aiOpen, "aria-label": "AI assist", children: [_jsx(Icon, { name: "sparkle", size: 15 }), "AI assist"] })] }), form.aiOpen && form.savedId !== null && _jsx(AiAssistPanel, { docId: form.savedId }), _jsx("div", { style: fieldGroup, children: _jsx("input", { type: "text", placeholder: "Title", value: form.title, onChange: (e) => handleTitleChange(e.currentTarget.value), style: titleInput, "aria-label": "Content title" }) }), _jsx("div", { style: fieldGroup, children: _jsx("textarea", { placeholder: "Add a short summary or subheadline (optional)\u2026", value: form.dek, onChange: (e) => handleDekChange(e.currentTarget.value), rows: 2, style: dekInput, "aria-label": "Short summary or subheadline" }) }), _jsx("hr", { className: "masthead-rule", style: { margin: '6px 0 20px' } }), _jsx("div", { style: fieldGroup, children: contentType === 'video' ? (_jsxs("div", { style: mediaBlockStack, children: [_jsx(VideoBlock, { videoUrl: form.videoUrl, onVideoUrlChange: handleVideoUrlChange, onVideoFileUpload: handleVideoFileUpload, uploadStatus: form.videoUploadStatus, uploadError: form.videoUploadError, pipelineStatus: form.videoPipelineStatus, pipelineError: form.videoPipelineError }), _jsx(ImageAssetBlock, { title: "Video Poster Image", description: "Shown on the video page, video index, social previews, and locked-player preview.", uploadLabel: "Upload Poster Image", idLabel: "Poster Image ID", idHelp: "Use this only when the poster image already exists in R2.", emptyText: "No poster image attached", successText: "Poster image uploaded.", imageId: form.thumbnailImageId, previewUrl: form.thumbnailImageUrl, uploadStatus: form.thumbnailUploadStatus, uploadError: form.thumbnailUploadError, onImageIdChange: handleThumbnailImageIdChange, onFileUpload: handleThumbnailImageUpload })] })) : contentType === 'podcast' ? (_jsxs("div", { style: mediaBlockStack, children: [_jsx(AudioBlock, { audioUrl: form.audioUrl, onAudioUrlChange: handleAudioUrlChange, onAudioFileUpload: handleAudioFileUpload, uploadStatus: form.audioUploadStatus, uploadError: form.audioUploadError, pipelineStatus: form.videoPipelineStatus, pipelineError: form.videoPipelineError }), _jsx(ImageAssetBlock, { title: "Podcast Hero Image", description: "Upload the episode artwork or hero image here. This fills the Hero Image ID automatically.", uploadLabel: "Upload Podcast Image", idLabel: "Hero Image ID", idHelp: "Use this only when the podcast image already exists in R2.", emptyText: "No podcast image attached", successText: "Podcast image uploaded.", imageId: form.heroImageId, previewUrl: form.heroImageUrl, uploadStatus: form.heroUploadStatus, uploadError: form.heroUploadError, onImageIdChange: handleHeroImageIdChange, onFileUpload: handleHeroImageUpload })] })) : (
559
+ }, "aria-pressed": form.aiOpen, "aria-label": "AI assist", children: [_jsx(Icon, { name: "sparkle", size: 15 }), "AI assist"] })] }), form.aiOpen && form.savedId !== null && _jsx(AiAssistPanel, { docId: form.savedId }), _jsx("div", { style: fieldGroup, children: _jsx("input", { type: "text", placeholder: "Title", value: form.title, onChange: (e) => handleTitleChange(e.currentTarget.value), style: titleInput, "aria-label": "Content title" }) }), _jsx("div", { style: fieldGroup, children: _jsx("textarea", { placeholder: "Add a short summary or subheadline (optional)\u2026", value: form.dek, onChange: (e) => handleDekChange(e.currentTarget.value), rows: 2, style: dekInput, "aria-label": "Short summary or subheadline" }) }), _jsx("hr", { className: "masthead-rule", style: { margin: '6px 0 20px' } }), _jsx("div", { style: fieldGroup, children: contentType === 'video' ? (_jsxs("div", { style: mediaBlockStack, children: [_jsx(VideoBlock, { videoUrl: form.videoUrl, durationSeconds: form.durationSeconds, onVideoUrlChange: handleVideoUrlChange, onDurationSecondsChange: handleDurationSecondsChange, onVideoFileUpload: handleVideoFileUpload, uploadStatus: form.videoUploadStatus, uploadError: form.videoUploadError, pipelineStatus: form.videoPipelineStatus, pipelineError: form.videoPipelineError }), _jsx(ImageAssetBlock, { title: "Video Poster Image", description: "Shown on the video page, video index, social previews, and locked-player preview.", uploadLabel: "Upload Poster Image", idLabel: "Poster Image ID", idHelp: "Use this only when the poster image already exists in R2.", emptyText: "No poster image attached", successText: "Poster image uploaded.", imageId: form.thumbnailImageId, previewUrl: form.thumbnailImageUrl, uploadStatus: form.thumbnailUploadStatus, uploadError: form.thumbnailUploadError, onImageIdChange: handleThumbnailImageIdChange, onFileUpload: handleThumbnailImageUpload })] })) : contentType === 'podcast' ? (_jsxs("div", { style: mediaBlockStack, children: [_jsx(AudioBlock, { audioUrl: form.audioUrl, durationSeconds: form.durationSeconds, onAudioUrlChange: handleAudioUrlChange, onDurationSecondsChange: handleDurationSecondsChange, onAudioFileUpload: handleAudioFileUpload, uploadStatus: form.audioUploadStatus, uploadError: form.audioUploadError, pipelineStatus: form.videoPipelineStatus, pipelineError: form.videoPipelineError }), _jsx(ImageAssetBlock, { title: "Podcast Hero Image", description: "Upload the episode artwork or hero image here. This fills the Hero Image ID automatically.", uploadLabel: "Upload Podcast Image", idLabel: "Hero Image ID", idHelp: "Use this only when the podcast image already exists in R2.", emptyText: "No podcast image attached", successText: "Podcast image uploaded.", imageId: form.heroImageId, previewUrl: form.heroImageUrl, uploadStatus: form.heroUploadStatus, uploadError: form.heroUploadError, onImageIdChange: handleHeroImageIdChange, onFileUpload: handleHeroImageUpload })] })) : (
511
560
  /* article | newsletter | page */
512
561
  _jsxs(_Fragment, { children: [contentType === 'article' && (_jsx("div", { style: { marginBottom: 14 }, children: _jsx(ImageAssetBlock, { title: "Article Hero Image", description: "Upload the downloaded hero image here. This fills the Hero Image ID automatically.", uploadLabel: "Upload Hero Image", idLabel: "Hero Image ID", idHelp: "Use this only when the hero image already exists in R2.", emptyText: "No hero image attached", successText: "Hero image uploaded.", imageId: form.heroImageId, previewUrl: form.heroImageUrl, uploadStatus: form.heroUploadStatus, uploadError: form.heroUploadError, onImageIdChange: handleHeroImageIdChange, onFileUpload: handleHeroImageUpload }) })), _jsx(Rte, { value: form.body, onChange: handleBodyChange, onImageUpload: handleEditorImageUpload })] })) }), (contentType === 'article' || contentType === 'newsletter' || contentType === 'page') && (_jsxs("div", { style: footer, children: [_jsx(Icon, { name: "edit", size: 12, style: { color: 'var(--ink-faint)' } }), _jsxs("span", { children: [wordCount.toLocaleString(), " ", wordCount === 1 ? 'word' : 'words'] }), _jsx("span", { style: { color: 'var(--ink-faint)' }, children: "\u00B7" }), _jsxs("span", { children: [readTime, " min read"] })] }))] }));
513
562
  }
@@ -528,7 +577,7 @@ function ImageAssetBlock({ title, description, uploadLabel, idLabel, idHelp, emp
528
577
  void onFileUpload(file);
529
578
  }, style: hiddenFileInput, "aria-label": uploadLabel })] }) }), _jsx("label", { htmlFor: inputId, style: assetLabel, children: idLabel }), _jsx("input", { id: inputId, type: "text", placeholder: "images/articles/example.jpg", value: imageId, onChange: (e) => onImageIdChange(e.currentTarget.value), style: urlInput, "aria-label": idLabel }), _jsx("div", { style: assetHelp, children: idHelp }), statusText && _jsx("div", { style: videoStatusText, children: statusText }), uploadError && _jsx("div", { style: videoErrorText, children: uploadError })] }));
530
579
  }
531
- function VideoBlock({ videoUrl, onVideoUrlChange, onVideoFileUpload, uploadStatus, uploadError, pipelineStatus, pipelineError, }) {
580
+ function VideoBlock({ videoUrl, durationSeconds, onVideoUrlChange, onDurationSecondsChange, onVideoFileUpload, uploadStatus, uploadError, pipelineStatus, pipelineError, }) {
532
581
  const statusText = pipelineStatus === 'queued'
533
582
  ? 'Queued. Most videos finish in 20-45 minutes; long files can take up to 90.'
534
583
  : pipelineStatus === 'queueing'
@@ -546,14 +595,14 @@ function VideoBlock({ videoUrl, onVideoUrlChange, onVideoFileUpload, uploadStatu
546
595
  alignItems: 'center',
547
596
  justifyContent: 'center',
548
597
  marginBottom: 12,
549
- }, children: videoUrl ? (_jsx("span", { style: { fontSize: 11, color: 'var(--ink-muted)', wordBreak: 'break-all' }, children: videoUrl })) : (_jsx("span", { style: { fontSize: 12, color: 'var(--ink-faint)', fontStyle: 'italic' }, children: "No video attached" })) }), _jsx("input", { type: "url", placeholder: "Video source URL or R2 key\u2026", value: videoUrl, onChange: (e) => onVideoUrlChange(e.currentTarget.value), style: urlInput, "aria-label": "Video source URL" }), _jsx("div", { style: videoActions, children: _jsxs("label", { className: "btn sm", style: uploadButton, children: [_jsx(Icon, { name: "upload", size: 14 }), uploadStatus === 'uploading' ? 'Uploading…' : 'Upload source', _jsx("input", { type: "file", accept: "video/*,.mp4,.mov,.m4v,.webm", disabled: uploadStatus === 'uploading', onChange: (event) => {
598
+ }, children: videoUrl ? (_jsx("span", { style: { fontSize: 11, color: 'var(--ink-muted)', wordBreak: 'break-all' }, children: videoUrl })) : (_jsx("span", { style: { fontSize: 12, color: 'var(--ink-faint)', fontStyle: 'italic' }, children: "No video attached" })) }), _jsx("input", { type: "url", placeholder: "Video source URL or R2 key\u2026", value: videoUrl, onChange: (e) => onVideoUrlChange(e.currentTarget.value), style: urlInput, "aria-label": "Video source URL" }), _jsx(MediaDurationField, { durationSeconds: durationSeconds, onChange: onDurationSecondsChange, hasSource: videoUrl.trim().length > 0 }), _jsx("div", { style: videoActions, children: _jsxs("label", { className: "btn sm", style: uploadButton, children: [_jsx(Icon, { name: "upload", size: 14 }), uploadStatus === 'uploading' ? 'Uploading…' : 'Upload source', _jsx("input", { type: "file", accept: "video/*,.mp4,.mov,.m4v,.webm", disabled: uploadStatus === 'uploading', onChange: (event) => {
550
599
  const file = event.currentTarget.files?.[0];
551
600
  event.currentTarget.value = '';
552
601
  if (file)
553
602
  void onVideoFileUpload(file);
554
603
  }, style: hiddenFileInput, "aria-label": "Upload video source" })] }) }), statusText && _jsx("div", { style: videoStatusText, children: statusText }), (uploadError || pipelineError) && (_jsx("div", { style: videoErrorText, children: uploadError || pipelineError })), _jsx("div", { style: { marginTop: 6, fontSize: 11, color: 'var(--ink-faint)' }, children: "Upload a source file or paste a public source URL; saving queues the Foundry pipeline." })] }));
555
604
  }
556
- function AudioBlock({ audioUrl, onAudioUrlChange, onAudioFileUpload, uploadStatus, uploadError, pipelineStatus, pipelineError, }) {
605
+ function AudioBlock({ audioUrl, durationSeconds, onAudioUrlChange, onDurationSecondsChange, onAudioFileUpload, uploadStatus, uploadError, pipelineStatus, pipelineError, }) {
557
606
  const statusText = pipelineStatus === 'queued'
558
607
  ? 'Queued for transcription. Most episodes finish in 10-30 minutes; long files can take up to 60.'
559
608
  : pipelineStatus === 'queueing'
@@ -576,7 +625,11 @@ function AudioBlock({ audioUrl, onAudioUrlChange, onAudioFileUpload, uploadStatu
576
625
  event.currentTarget.value = '';
577
626
  if (file)
578
627
  void onAudioFileUpload(file);
579
- }, style: hiddenFileInput, "aria-label": "Upload podcast audio file" })] }) }), _jsx("label", { htmlFor: "podcast-audio-r2-key", style: assetLabel, children: "Audio R2 Key (filled after upload)" }), _jsx("input", { id: "podcast-audio-r2-key", type: "text", placeholder: "audio/example-episode.mp3", value: audioUrl, onChange: (e) => onAudioUrlChange(e.currentTarget.value), style: urlInput, "aria-label": "Audio R2 Key" }), _jsx("div", { style: assetHelp, children: "Only paste a key manually if the audio already exists in R2." }), statusText && _jsx("div", { style: videoStatusText, children: statusText }), (uploadError || pipelineError) && (_jsx("div", { style: videoErrorText, children: uploadError || pipelineError }))] }));
628
+ }, style: hiddenFileInput, "aria-label": "Upload podcast audio file" })] }) }), _jsx("label", { htmlFor: "podcast-audio-r2-key", style: assetLabel, children: "Audio R2 Key (filled after upload)" }), _jsx("input", { id: "podcast-audio-r2-key", type: "text", placeholder: "audio/example-episode.mp3", value: audioUrl, onChange: (e) => onAudioUrlChange(e.currentTarget.value), style: urlInput, "aria-label": "Audio R2 Key" }), _jsx(MediaDurationField, { durationSeconds: durationSeconds, onChange: onDurationSecondsChange, hasSource: audioUrl.trim().length > 0 }), _jsx("div", { style: assetHelp, children: "Only paste a key manually if the audio already exists in R2." }), statusText && _jsx("div", { style: videoStatusText, children: statusText }), (uploadError || pipelineError) && (_jsx("div", { style: videoErrorText, children: uploadError || pipelineError }))] }));
629
+ }
630
+ function MediaDurationField({ durationSeconds, onChange, hasSource, }) {
631
+ const inputId = useId();
632
+ return (_jsxs(_Fragment, { children: [_jsx("label", { htmlFor: inputId, style: assetLabel, children: "Media duration (seconds)" }), _jsx("input", { id: inputId, type: "number", min: 1, step: 1, value: durationSeconds ?? '', onChange: (event) => onChange(event.currentTarget.value), style: urlInput, "aria-label": "Media duration in seconds" }), _jsx("div", { style: assetHelp, children: "Uploads are measured automatically and rounded up. For a pasted source URL or R2 key, enter its authoritative whole-second duration." }), hasSource && durationSeconds === null && (_jsx("div", { style: videoErrorText, children: "Duration is required before this source can be queued." }))] }));
580
633
  }
581
634
  const PODCAST_UPLOAD_HELP = 'Large audio files can take a few minutes to upload; keep this tab open until the Audio R2 Key appears.';
582
635
  const PODCAST_PIPELINE_HELP = 'After upload, save or publish sends the episode through the pipeline for transcription and episode prep.';
@@ -610,6 +663,7 @@ function contentResponseToFormState(data, contentType, docId) {
610
663
  next.videoUrl = toStringValue(content.processing_source_url);
611
664
  next.videoSourceKind = toNullableString(content.processing_source_kind);
612
665
  next.videoId = toNullableString(content.video_id);
666
+ next.durationSeconds = normalizeMediaDurationSeconds(content.duration_seconds);
613
667
  next.thumbnailImageId = thumbnailImageId;
614
668
  next.thumbnailImageUrl =
615
669
  thumbnailImageUrl || (thumbnailImageId ? mediaUrlFromId(thumbnailImageId) : null);
@@ -617,6 +671,7 @@ function contentResponseToFormState(data, contentType, docId) {
617
671
  if (contentType === 'podcast') {
618
672
  next.body = toStringValue(content.transcript);
619
673
  next.audioUrl = toStringValue(content.audio_r2_key);
674
+ next.durationSeconds = normalizeMediaDurationSeconds(content.duration_seconds);
620
675
  }
621
676
  return next;
622
677
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ContentForm.js","sourceRoot":"","sources":["../../../src/ui/editor/ContentForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentForm.js","sourceRoot":"","sources":["../../../src/ui/editor/ContentForm.tsx"],"names":[],"mappings":";AAAA,gEAAgE;AAChE,EAAE;AACF,2DAA2D;AAC3D,yDAAyD;AACzD,4EAA4E;AAC5E,4EAA4E;AAC5E,iDAAiD;AACjD,wDAAwD;AACxD,EAAE;AACF,gFAAgF;AAChF,EAAE;AACF,YAAY;AACZ,yDAAyD;AACzD,iEAAiE;AACjE,EAAE;AACF,+EAA+E;AAC/E,iDAAiD;AACjD,EAAE;AACF,4EAA4E;AAE5E,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAExE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EACN,yBAAyB,EACzB,yBAAyB,EAEzB,qBAAqB,EACrB,6BAA6B,EAC7B,6BAA6B,EAC7B,YAAY,GACZ,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAoI9C,SAAS,oBAAoB,CAAC,KAAoB;IACjD,OAAO;QACN,MAAM,EAAE,OAAO;QACf,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE;QACP,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,IAAI;QAClB,gBAAgB,EAAE,MAAM;QACxB,eAAe,EAAE,IAAI;QACrB,QAAQ,EAAE,EAAE;QACZ,eAAe,EAAE,IAAI;QACrB,OAAO,EAAE,IAAI;QACb,gBAAgB,EAAE,EAAE;QACpB,iBAAiB,EAAE,IAAI;QACvB,qBAAqB,EAAE,MAAM;QAC7B,oBAAoB,EAAE,IAAI;QAC1B,QAAQ,EAAE,EAAE;QACZ,eAAe,EAAE,IAAI;QACrB,iBAAiB,EAAE,MAAM;QACzB,gBAAgB,EAAE,IAAI;QACtB,iBAAiB,EAAE,MAAM;QACzB,gBAAgB,EAAE,IAAI;QACtB,mBAAmB,EAAE,MAAM;QAC3B,kBAAkB,EAAE,IAAI;QACxB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,IAAI;QACjB,MAAM,EAAE,KAAK;KACb,CAAA;AACF,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,MAAM,UAAU,WAAW,CAAC,EAC3B,KAAK,EACL,WAAW,EACX,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,GAAG,CAAC,EACf,cAAc,EACd,iBAAiB,GACC;IAClB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAY,GAAG,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAA;IAE9E,uEAAuE;IACvE,MAAM,aAAa,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAA;IACxE,MAAM,kBAAkB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IACpC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IACzC,MAAM,kBAAkB,GAAG,MAAM,CAAc,IAAI,GAAG,EAAE,CAAC,CAAA;IACzD,MAAM,sBAAsB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;IAClD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAC/B,UAAU,CAAC,OAAO,GAAG,IAAI,CAAA;IAEzB,MAAM,YAAY,GAAG,WAAW,CAC/B,CAAC,IAAe,EAAE,EAAE;QACnB,aAAa,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC3B,aAAa,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAA;IACvD,CAAC,EACD,CAAC,WAAW,EAAE,aAAa,EAAE,aAAa,CAAC,CAC3C,CAAA;IAED,MAAM,mBAAmB,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAClD,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAA;YACb,YAAY,CAAC,IAAI,CAAC,CAAA;YAClB,OAAM;QACP,CAAC;QACD,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAA;YACtD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAErE,CAAA;gBACD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAA;YACvD,CAAC;YACD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAA;YAC1D,MAAM,IAAI,GAAG,0BAA0B,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,CAAA;YACjE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,MAAM,EAAE,IAAI,CAAC,MAAM;aACnB,CAAC,CAAC,CAAA;YACH,cAAc,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC7B,YAAY,CAAC,IAAI,CAAC,CAAA;QACnB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACxE,CAAC,CAAC,CAAA;QACJ,CAAC;IACF,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC,CAAA;IAEtD,2EAA2E;IAC3E,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAA;IAE5C,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,mBAAmB,EAAE,CAAA;IAC3B,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAA;IAEzB,4EAA4E;IAE5E,MAAM,sBAAsB,GAAG,WAAW,CACzC,KAAK,EAAE,EAAU,EAAE,KAAyB,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,6BAA6B,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;QAChE,IAAI,CAAC,MAAM;YAAE,OAAM;QACnB,MAAM,eAAe,GAAG,6BAA6B,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QAC5E,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;YAC9B,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,mBAAmB,EAAE,MAAM;gBAC3B,kBAAkB,EACjB,0EAA0E;aAC3E,CAAC,CAAC,CAAA;YACH,OAAM;QACP,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,WAAW,IAAI,EAAE,IAAI,MAAM,IAAI,eAAe,EAAE,CAAA;QACpE,IAAI,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAM;QAEpD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClB,GAAG,IAAI;YACP,mBAAmB,EAAE,UAAU;YAC/B,kBAAkB,EAAE,IAAI;SACxB,CAAC,CAAC,CAAA;QACH,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,sBAAsB,EAAE,6BAA6B,EAAE;gBAC9E,MAAM,EAAE,MAAM;aACd,CAAC,CAAA;YACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAErE,CAAA;gBACD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,yBAAyB,CAAC,CAAA;YACxD,CAAC;YACD,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACxC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,mBAAmB,EAAE,QAAQ;gBAC7B,kBAAkB,EAAE,IAAI;aACxB,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,mBAAmB,EAAE,MAAM;gBAC3B,kBAAkB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACpE,CAAC,CAAC,CAAA;QACJ,CAAC;IACF,CAAC,EACD,CAAC,WAAW,CAAC,CACb,CAAA;IAED,MAAM,OAAO,GAAG,WAAW,CAC1B,KAAK,EAAE,WAAsB,EAAE,EAAE;QAChC,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAA;QAC9B,MAAM,KAAK,GAAuB,WAAW,CAAA;QAE7C,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;gBAChD,MAAM,WAAW,GAAG,6BAA6B,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;gBACrE,MAAM,oBAAoB,GACzB,WAAW,IAAI,6BAA6B,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,IAAI,CAAA;gBAC7E,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAClB,GAAG,IAAI;oBACP,SAAS,EAAE,oBAAoB;wBAC9B,CAAC,CAAC,wEAAwE;wBAC1E,CAAC,CAAC,mDAAmD;iBACtD,CAAC,CAAC,CAAA;gBACH,OAAM;YACP,CAAC;YACD,uCAAuC;YACvC,IAAI,CAAC;gBACJ,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;gBAC/D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,oBAAoB,EAAE;oBAC7C,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;iBACnE,CAAC,CAAA;gBACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACb,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAErE,CAAA;oBACD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAClB,GAAG,IAAI;wBACP,MAAM,EAAE,KAAK;wBACb,SAAS,EAAE,GAAG,CAAC,KAAK,IAAI,aAAa;qBACrC,CAAC,CAAC,CAAA;oBACH,OAAM;gBACP,CAAC;gBACD,MAAM,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAmB,CAAA;gBACpD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAClB,GAAG,IAAI;oBACP,MAAM,EAAE,KAAK;oBACb,OAAO,EAAE,OAAO,CAAC,EAAE;oBACnB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;oBACvB,SAAS,EAAE,IAAI;iBACf,CAAC,CAAC,CAAA;gBACH,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;gBAC1B,KAAK,sBAAsB,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YAC/C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAClB,GAAG,IAAI;oBACP,MAAM,EAAE,KAAK;oBACb,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC;iBACtB,CAAC,CAAC,CAAA;YACJ,CAAC;QACF,CAAC;aAAM,CAAC;YACP,wCAAwC;YACxC,IAAI,CAAC;gBACJ,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;gBAC/D,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,sBAAsB,EAAE,EAAE,EAAE;oBACnD,MAAM,EAAE,OAAO;oBACf,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;iBACnE,CAAC,CAAA;gBACF,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACb,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAErE,CAAA;oBACD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAClB,GAAG,IAAI;wBACP,MAAM,EAAE,KAAK;wBACb,SAAS,EAAE,GAAG,CAAC,KAAK,IAAI,aAAa;qBACrC,CAAC,CAAC,CAAA;oBACH,OAAM;gBACP,CAAC;gBAED,yBAAyB;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACtB,kBAAkB,CAAC,OAAO,IAAI,CAAC,CAAA;gBAC/B,MAAM,IAAI,GAAG,cAAc,CAAC;oBAC3B,kBAAkB,EAAE,kBAAkB,CAAC,OAAO;oBAC9C,cAAc,EAAE,cAAc,CAAC,OAAO;oBACtC,GAAG;iBACH,CAAC,CAAA;gBACF,IAAI,IAAI,EAAE,CAAC;oBACV,kBAAkB,CAAC,OAAO,GAAG,CAAC,CAAA;oBAC9B,cAAc,CAAC,OAAO,GAAG,GAAG,CAAA;oBAC5B,4DAA4D;oBAC5D,KAAK,KAAK,CAAC,sBAAsB,EAAE,kBAAkB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;gBAC3E,CAAC;gBAED,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAClB,GAAG,IAAI;oBACP,MAAM,EAAE,KAAK;oBACb,WAAW,EAAE,GAAG;oBAChB,SAAS,EAAE,IAAI;iBACf,CAAC,CAAC,CAAA;gBACH,KAAK,sBAAsB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAClB,GAAG,IAAI;oBACP,MAAM,EAAE,KAAK;oBACb,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC;iBACtB,CAAC,CAAC,CAAA;YACJ,CAAC;QACF,CAAC;IACF,CAAC,EACD,CAAC,WAAW,EAAE,YAAY,EAAE,sBAAsB,CAAC,CACnD,CAAA;IAED,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,WAAW,KAAK,sBAAsB,CAAC,OAAO;YAAE,OAAM;QAC1D,sBAAsB,CAAC,OAAO,GAAG,WAAW,CAAA;QAC5C,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC3B,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACnC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAA;QAC7B,CAAC;QACD,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;IAE1B,SAAS,CAAC,GAAG,EAAE;QACd,iBAAiB,EAAE,CAAC;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;SACrB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAA;IAEpF,kEAAkE;IAClE,gMAAgM;IAChM,MAAM,gBAAgB,GAAG,WAAW,CACnC,CAAC,QAAmB,EAAE,EAAE;QACvB,IAAI,aAAa,CAAC,OAAO;YAAE,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC9D,aAAa,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;QACvB,CAAC,EAAE,oBAAoB,CAAC,CAAA;IACzB,CAAC,EACD,CAAC,OAAO,EAAE,YAAY,CAAC,CACvB,CAAA;IAED,4BAA4B;IAC5B,SAAS,CAAC,GAAG,EAAE;QACd,OAAO,GAAG,EAAE;YACX,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC3B,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACpC,CAAC;QACF,CAAC,CAAA;IACF,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,2EAA2E;IAE3E,SAAS,iBAAiB,CAAC,KAAa;QACvC,MAAM,IAAI,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;QACpD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,eAAe,CAAC,KAAa;QACrC,MAAM,IAAI,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;QAClD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,gBAAgB,CAAC,EAAU;QACnC,MAAM,IAAI,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAA;QAChD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,oBAAoB,CAAC,KAAa;QAC1C,MAAM,IAAI,GAAG;YACZ,GAAG,UAAU,CAAC,OAAO;YACrB,QAAQ,EAAE,KAAK;YACf,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,IAAI;YACrB,OAAO,EAAE,IAAI;YACb,mBAAmB,EAAE,MAAe;YACpC,kBAAkB,EAAE,IAAI;SACxB,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,oBAAoB,CAAC,KAAa;QAC1C,MAAM,IAAI,GAAG;YACZ,GAAG,UAAU,CAAC,OAAO;YACrB,QAAQ,EAAE,KAAK;YACf,eAAe,EAAE,IAAI;YACrB,mBAAmB,EAAE,MAAe;YACpC,kBAAkB,EAAE,IAAI;SACxB,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,2BAA2B,CAAC,KAAa;QACjD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACzD,MAAM,eAAe,GACpB,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;QACrF,MAAM,IAAI,GAAG;YACZ,GAAG,UAAU,CAAC,OAAO;YACrB,eAAe;YACf,mBAAmB,EAAE,MAAe;YACpC,kBAAkB,EAAE,IAAI;SACxB,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,uBAAuB,CAAC,KAAa;QAC7C,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QACvB,MAAM,IAAI,GAAG;YACZ,GAAG,UAAU,CAAC,OAAO;YACrB,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;SAC5C,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,SAAS,4BAA4B,CAAC,KAAa;QAClD,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;QACvB,MAAM,IAAI,GAAG;YACZ,GAAG,UAAU,CAAC,OAAO;YACrB,gBAAgB,EAAE,KAAK;YACvB,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;SACjD,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,CAAA;QACb,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,MAAM,uBAAuB,GAAG,WAAW,CAC1C,CAAC,IAAU,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI,cAAc,CAAC,EACnF,EAAE,CACF,CAAA;IAED,MAAM,qBAAqB,GAAG,WAAW,CACxC,KAAK,EAAE,IAAU,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,CAAA;QAC/E,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClB,GAAG,IAAI;YACP,iBAAiB,EAAE,WAAW;YAC9B,gBAAgB,EAAE,IAAI;YACtB,kBAAkB,EAAE,IAAI;SACxB,CAAC,CAAC,CAAA;QACH,IAAI,CAAC;YACJ,MAAM,uBAAuB,GAAG,MAAM,iCAAiC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YACtF,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;gBACvC,IAAI,EAAE,OAAO;gBACb,IAAI;gBACJ,IAAI,EAAE,QAAQ,IAAI,SAAS;gBAC3B,eAAe,EAAE,uBAAuB;aACxC,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;YAC9E,MAAM,eAAe,GAAG,6BAA6B,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;YAC/E,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;YACrE,CAAC;YACD,MAAM,IAAI,GAAG;gBACZ,GAAG,UAAU,CAAC,OAAO;gBACrB,QAAQ,EAAE,QAAQ,CAAC,GAAG;gBACtB,eAAe,EAAE,QAAQ,CAAC,UAAU,IAAI,UAAU;gBAClD,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,QAAQ;gBACrC,eAAe;gBACf,iBAAiB,EAAE,QAAiB;gBACpC,gBAAgB,EAAE,IAAI;gBACtB,mBAAmB,EAAE,MAAe;gBACpC,kBAAkB,EAAE,IAAI;aACxB,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAA;YACb,YAAY,CAAC,IAAI,CAAC,CAAA;YAClB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,iBAAiB,EAAE,MAAM;gBACzB,gBAAgB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aAClE,CAAC,CAAC,CAAA;QACJ,CAAC;IACF,CAAC,EACD,CAAC,OAAO,EAAE,YAAY,CAAC,CACvB,CAAA;IAED,MAAM,qBAAqB,GAAG,WAAW,CACxC,KAAK,EAAE,IAAU,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC,CAAA;QACpF,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClB,GAAG,IAAI;YACP,gBAAgB,EAAE,WAAW;YAC7B,eAAe,EAAE,IAAI;SACrB,CAAC,CAAC,CAAA;QACH,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;gBACvC,IAAI,EAAE,OAAO;gBACb,IAAI;gBACJ,IAAI,EAAE,QAAQ,IAAI,SAAS;aAC3B,CAAC,CAAA;YACF,MAAM,IAAI,GAAG;gBACZ,GAAG,UAAU,CAAC,OAAO;gBACrB,WAAW,EAAE,QAAQ,CAAC,EAAE;gBACxB,YAAY,EAAE,QAAQ,CAAC,GAAG;gBAC1B,gBAAgB,EAAE,QAAiB;gBACnC,eAAe,EAAE,IAAI;aACrB,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAA;YACb,YAAY,CAAC,IAAI,CAAC,CAAA;YAClB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,gBAAgB,EAAE,MAAM;gBACxB,eAAe,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACjE,CAAC,CAAC,CAAA;QACJ,CAAC;IACF,CAAC,EACD,CAAC,OAAO,EAAE,YAAY,CAAC,CACvB,CAAA;IAED,MAAM,0BAA0B,GAAG,WAAW,CAC7C,KAAK,EAAE,IAAU,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,cAAc,CAAC,CAAA;QACtF,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClB,GAAG,IAAI;YACP,qBAAqB,EAAE,WAAW;YAClC,oBAAoB,EAAE,IAAI;SAC1B,CAAC,CAAC,CAAA;QACH,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;gBACvC,IAAI,EAAE,OAAO;gBACb,IAAI;gBACJ,IAAI,EAAE,QAAQ,IAAI,SAAS;aAC3B,CAAC,CAAA;YACF,MAAM,IAAI,GAAG;gBACZ,GAAG,UAAU,CAAC,OAAO;gBACrB,gBAAgB,EAAE,QAAQ,CAAC,EAAE;gBAC7B,iBAAiB,EAAE,QAAQ,CAAC,GAAG;gBAC/B,qBAAqB,EAAE,QAAiB;gBACxC,oBAAoB,EAAE,IAAI;aAC1B,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAA;YACb,YAAY,CAAC,IAAI,CAAC,CAAA;YAClB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,qBAAqB,EAAE,MAAM;gBAC7B,oBAAoB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACtE,CAAC,CAAC,CAAA;QACJ,CAAC;IACF,CAAC,EACD,CAAC,OAAO,EAAE,YAAY,CAAC,CACvB,CAAA;IAED,sLAAsL;IACtL,MAAM,qBAAqB,GAAG,WAAW,CACxC,KAAK,EAAE,IAAU,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;QACjF,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClB,GAAG,IAAI;YACP,iBAAiB,EAAE,WAAW;YAC9B,gBAAgB,EAAE,IAAI;SACtB,CAAC,CAAC,CAAA;QACH,IAAI,CAAC;YACJ,MAAM,uBAAuB,GAAG,MAAM,iCAAiC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YACtF,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;gBACvC,IAAI,EAAE,SAAS;gBACf,IAAI;gBACJ,IAAI,EAAE,QAAQ,IAAI,SAAS;gBAC3B,eAAe,EAAE,uBAAuB;aACxC,CAAC,CAAA;YACF,MAAM,eAAe,GAAG,6BAA6B,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;YAC/E,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;YACvE,CAAC;YACD,MAAM,IAAI,GAAG;gBACZ,GAAG,UAAU,CAAC,OAAO;gBACrB,QAAQ,EAAE,QAAQ,CAAC,EAAE;gBACrB,eAAe;gBACf,iBAAiB,EAAE,QAAiB;gBACpC,gBAAgB,EAAE,IAAI;aACtB,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,CAAA;YACb,YAAY,CAAC,IAAI,CAAC,CAAA;YAClB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClB,GAAG,IAAI;gBACP,iBAAiB,EAAE,MAAM;gBACzB,gBAAgB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aAClE,CAAC,CAAC,CAAA;QACJ,CAAC;IACF,CAAC,EACD,CAAC,OAAO,CAAC,CACT,CAAA;IAED,4EAA4E;IAE5E,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM;QAChC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC,SAAS;YACf,CAAC,CAAC,UAAU,IAAI,CAAC,SAAS,EAAE;YAC5B,CAAC,CAAC,IAAI,CAAC,WAAW;gBACjB,CAAC,CAAC,SAAS,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBACxC,CAAC,CAAC,SAAS,CAAA;IAEd,4EAA4E;IAC5E,SAAS;IACT,4EAA4E;IAE5E,SAAS,cAAc;QACtB,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,OAAO,CACN,eAAK,KAAK,EAAE,QAAQ,aAEnB,eAAK,KAAK,EAAE,aAAa,aACxB,eACC,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE;4BACN,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB;4BACzD,QAAQ,EAAE,IAAI;yBACd,YAEA,aAAa,GACR,EAEP,kBACC,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,QAAQ,EAClB,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,EAC/B,KAAK,EACJ,IAAI,CAAC,OAAO,KAAK,IAAI;4BACpB,CAAC,CAAC,6CAA6C;4BAC/C,CAAC,CAAC,IAAI,CAAC,MAAM;gCACZ,CAAC,CAAC,iBAAiB;gCACnB,CAAC,CAAC,gBAAgB,EAErB,KAAK,EAAE;4BACN,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,qBAAqB;4BAClE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY;4BACnD,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACzC,kBACa,IAAI,CAAC,MAAM,gBACd,WAAW,aAEtB,KAAC,IAAI,IAAC,IAAI,EAAC,SAAS,EAAC,IAAI,EAAE,EAAE,GAAI,iBAEzB,IACJ,EAGL,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,KAAC,aAAa,IAAC,KAAK,EAAE,IAAI,CAAC,OAAO,GAAI,EAG/E,cAAK,KAAK,EAAE,UAAU,YACrB,gBACC,IAAI,EAAC,MAAM,EACX,WAAW,EAAC,OAAO,EACnB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EACzD,KAAK,EAAE,UAAU,gBACN,eAAe,GACzB,GACG,EAGN,cAAK,KAAK,EAAE,UAAU,YACrB,mBACC,WAAW,EAAC,qDAAgD,EAC5D,KAAK,EAAE,IAAI,CAAC,GAAG,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EACvD,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,QAAQ,gBACJ,8BAA8B,GACxC,GACG,EAGN,aAAI,SAAS,EAAC,eAAe,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,GAAI,EAGjE,cAAK,KAAK,EAAE,UAAU,YACpB,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,CAC1B,eAAK,KAAK,EAAE,eAAe,aAC1B,KAAC,UAAU,IACV,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,gBAAgB,EAAE,oBAAoB,EACtC,uBAAuB,EAAE,2BAA2B,EACpD,iBAAiB,EAAE,qBAAqB,EACxC,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,cAAc,EAAE,IAAI,CAAC,mBAAmB,EACxC,aAAa,EAAE,IAAI,CAAC,kBAAkB,GACrC,EACF,KAAC,eAAe,IACf,KAAK,EAAC,oBAAoB,EAC1B,WAAW,EAAC,mFAAmF,EAC/F,WAAW,EAAC,qBAAqB,EACjC,OAAO,EAAC,iBAAiB,EACzB,MAAM,EAAC,2DAA2D,EAClE,SAAS,EAAC,0BAA0B,EACpC,WAAW,EAAC,wBAAwB,EACpC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAC9B,UAAU,EAAE,IAAI,CAAC,iBAAiB,EAClC,YAAY,EAAE,IAAI,CAAC,qBAAqB,EACxC,WAAW,EAAE,IAAI,CAAC,oBAAoB,EACtC,eAAe,EAAE,4BAA4B,EAC7C,YAAY,EAAE,0BAA0B,GACvC,IACG,CACN,CAAC,CAAC,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,CAC/B,eAAK,KAAK,EAAE,eAAe,aAC1B,KAAC,UAAU,IACV,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,gBAAgB,EAAE,oBAAoB,EACtC,uBAAuB,EAAE,2BAA2B,EACpD,iBAAiB,EAAE,qBAAqB,EACxC,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,cAAc,EAAE,IAAI,CAAC,mBAAmB,EACxC,aAAa,EAAE,IAAI,CAAC,kBAAkB,GACrC,EACF,KAAC,eAAe,IACf,KAAK,EAAC,oBAAoB,EAC1B,WAAW,EAAC,4FAA4F,EACxG,WAAW,EAAC,sBAAsB,EAClC,OAAO,EAAC,eAAe,EACvB,MAAM,EAAC,4DAA4D,EACnE,SAAS,EAAC,2BAA2B,EACrC,WAAW,EAAC,yBAAyB,EACrC,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,UAAU,EAAE,IAAI,CAAC,YAAY,EAC7B,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,WAAW,EAAE,IAAI,CAAC,eAAe,EACjC,eAAe,EAAE,uBAAuB,EACxC,YAAY,EAAE,qBAAqB,GAClC,IACG,CACN,CAAC,CAAC,CAAC;gBACH,iCAAiC;gBACjC,8BACE,WAAW,KAAK,SAAS,IAAI,CAC7B,cAAK,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,YAC/B,KAAC,eAAe,IACf,KAAK,EAAC,oBAAoB,EAC1B,WAAW,EAAC,oFAAoF,EAChG,WAAW,EAAC,mBAAmB,EAC/B,OAAO,EAAC,eAAe,EACvB,MAAM,EAAC,yDAAyD,EAChE,SAAS,EAAC,wBAAwB,EAClC,WAAW,EAAC,sBAAsB,EAClC,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,UAAU,EAAE,IAAI,CAAC,YAAY,EAC7B,YAAY,EAAE,IAAI,CAAC,gBAAgB,EACnC,WAAW,EAAE,IAAI,CAAC,eAAe,EACjC,eAAe,EAAE,uBAAuB,EACxC,YAAY,EAAE,qBAAqB,GAClC,GACG,CACN,EACD,KAAC,GAAG,IACH,KAAK,EAAE,IAAI,CAAC,IAAI,EAChB,QAAQ,EAAE,gBAAgB,EAC1B,aAAa,EAAE,uBAAuB,GACrC,IACA,CACH,GACI,EAGL,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,YAAY,IAAI,WAAW,KAAK,MAAM,CAAC,IAAI,CACzF,eAAK,KAAK,EAAE,MAAM,aACjB,KAAC,IAAI,IAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAI,EACpE,2BACE,SAAS,CAAC,cAAc,EAAE,OAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAC1D,EACP,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,uBAAU,EACpD,2BAAO,QAAQ,iBAAiB,IAC3B,CACN,IACI,CACN,CAAA;AACF,CAAC;AAED,8EAA8E;AAC9E,gCAAgC;AAChC,8EAA8E;AAE9E,SAAS,eAAe,CAAC,EACxB,KAAK,EACL,WAAW,EACX,WAAW,EACX,OAAO,EACP,MAAM,EACN,SAAS,EACT,WAAW,EACX,OAAO,EACP,UAAU,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,YAAY,GAeZ;IACA,MAAM,OAAO,GAAG,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,KAAK,CAAA;IACvE,MAAM,UAAU,GACf,YAAY,KAAK,WAAW;QAC3B,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,YAAY,KAAK,QAAQ;YAC1B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,IAAI,CAAA;IAET,OAAO,CACN,eAAK,KAAK,EAAE,UAAU,aACrB,eAAK,KAAK,EAAE,gBAAgB,aAC3B,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAI,EACrE,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAG,KAAK,GAAQ,IACnF,EAEN,YAAG,KAAK,EAAE,SAAS,YAAG,WAAW,GAAK,EAEtC,cAAK,KAAK,EAAE,YAAY,YACtB,UAAU,CAAC,CAAC,CAAC,CACb,cAAK,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,KAAK,UAAU,EAAE,KAAK,EAAE,iBAAiB,GAAI,CAC3E,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACb,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,YAC9E,OAAO,GACF,CACP,CAAC,CAAC,CAAC,CACH,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,QAAQ,EAAE,YAC3E,SAAS,GACJ,CACP,GACI,EAEN,cAAK,KAAK,EAAE,YAAY,YACvB,iBAAO,SAAS,EAAC,QAAQ,EAAC,KAAK,EAAE,YAAY,aAC5C,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,EAAE,GAAI,EAC/B,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAC1D,gBACC,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,+BAA+B,EACtC,QAAQ,EAAE,YAAY,KAAK,WAAW,EACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gCACnB,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;gCAC3C,KAAK,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAA;gCAC9B,IAAI,IAAI;oCAAE,KAAK,YAAY,CAAC,IAAI,CAAC,CAAA;4BAClC,CAAC,EACD,KAAK,EAAE,eAAe,gBACV,WAAW,GACtB,IACK,GACH,EAEN,gBAAO,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,YACxC,OAAO,GACD,EACR,gBACC,EAAE,EAAE,OAAO,EACX,IAAI,EAAC,MAAM,EACX,WAAW,EAAC,6BAA6B,EACzC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EACvD,KAAK,EAAE,QAAQ,gBACH,OAAO,GAClB,EACF,cAAK,KAAK,EAAE,SAAS,YAAG,MAAM,GAAO,EAEpC,UAAU,IAAI,cAAK,KAAK,EAAE,eAAe,YAAG,UAAU,GAAO,EAC7D,WAAW,IAAI,cAAK,KAAK,EAAE,cAAc,YAAG,WAAW,GAAO,IAC1D,CACN,CAAA;AACF,CAAC;AAED,SAAS,UAAU,CAAC,EACnB,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,GAWb;IACA,MAAM,UAAU,GACf,cAAc,KAAK,QAAQ;QAC1B,CAAC,CAAC,4EAA4E;QAC9E,CAAC,CAAC,cAAc,KAAK,UAAU;YAC9B,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,YAAY,KAAK,WAAW;gBAC7B,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,YAAY,KAAK,QAAQ;oBAC1B,CAAC,CAAC,4CAA4C;oBAC9C,CAAC,CAAC,IAAI,CAAA;IAEX,OAAO,CACN,eAAK,KAAK,EAAE,UAAU,aACrB,eAAK,KAAK,EAAE,gBAAgB,aAC3B,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAI,EACrE,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,sBAAc,IACjF,EAEN,cACC,KAAK,EAAE;oBACN,WAAW,EAAE,MAAM;oBACnB,UAAU,EAAE,cAAc;oBAC1B,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,MAAM;oBACf,UAAU,EAAE,QAAQ;oBACpB,cAAc,EAAE,QAAQ;oBACxB,YAAY,EAAE,EAAE;iBAChB,YAEA,QAAQ,CAAC,CAAC,CAAC,CACX,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,YAC9E,QAAQ,GACH,CACP,CAAC,CAAC,CAAC,CACH,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,QAAQ,EAAE,kCAEtE,CACP,GACI,EAEN,gBACC,IAAI,EAAC,KAAK,EACV,WAAW,EAAC,kCAA6B,EACzC,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EACxD,KAAK,EAAE,QAAQ,gBACJ,kBAAkB,GAC5B,EACF,KAAC,kBAAkB,IAClB,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,uBAAuB,EACjC,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,GACpC,EAEF,cAAK,KAAK,EAAE,YAAY,YACvB,iBAAO,SAAS,EAAC,QAAQ,EAAC,KAAK,EAAE,YAAY,aAC5C,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,EAAE,GAAI,EAC/B,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,EAC9D,gBACC,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,8BAA8B,EACrC,QAAQ,EAAE,YAAY,KAAK,WAAW,EACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gCACnB,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;gCAC3C,KAAK,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAA;gCAC9B,IAAI,IAAI;oCAAE,KAAK,iBAAiB,CAAC,IAAI,CAAC,CAAA;4BACvC,CAAC,EACD,KAAK,EAAE,eAAe,gBACX,qBAAqB,GAC/B,IACK,GACH,EAEL,UAAU,IAAI,cAAK,KAAK,EAAE,eAAe,YAAG,UAAU,GAAO,EAC7D,CAAC,WAAW,IAAI,aAAa,CAAC,IAAI,CAClC,cAAK,KAAK,EAAE,cAAc,YAAG,WAAW,IAAI,aAAa,GAAO,CAChE,EAED,cAAK,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,uGAE/D,IACD,CACN,CAAA;AACF,CAAC;AAED,SAAS,UAAU,CAAC,EACnB,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,cAAc,EACd,aAAa,GAWb;IACA,MAAM,UAAU,GACf,cAAc,KAAK,QAAQ;QAC1B,CAAC,CAAC,gGAAgG;QAClG,CAAC,CAAC,cAAc,KAAK,UAAU;YAC9B,CAAC,CAAC,2BAA2B;YAC7B,CAAC,CAAC,YAAY,KAAK,WAAW;gBAC7B,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,YAAY,KAAK,QAAQ;oBAC1B,CAAC,CAAC,0EAA0E;oBAC5E,CAAC,CAAC,IAAI,CAAA;IAEX,OAAO,CACN,eAAK,KAAK,EAAE,UAAU,aACrB,eAAK,KAAK,EAAE,gBAAgB,aAC3B,KAAC,IAAI,IAAC,IAAI,EAAC,KAAK,EAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAI,EACnE,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,mCAEjE,IACF,EAEN,YAAG,KAAK,EAAE,SAAS,gHAGf,EACJ,YAAG,KAAK,EAAE,SAAS,YAAG,mBAAmB,GAAK,EAC9C,aAAG,KAAK,EAAE,SAAS,aACjB,qBAAqB,OAAG,yBAAyB,IAC/C,EAEJ,cACC,KAAK,EAAE;oBACN,MAAM,EAAE,EAAE;oBACV,UAAU,EAAE,cAAc;oBAC1B,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,MAAM;oBACf,UAAU,EAAE,QAAQ;oBACpB,cAAc,EAAE,QAAQ;oBACxB,YAAY,EAAE,EAAE;iBAChB,YAEA,QAAQ,CAAC,CAAC,CAAC,CACX,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,YAC9E,QAAQ,GACH,CACP,CAAC,CAAC,CAAC,CACH,eAAM,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,QAAQ,EAAE,kCAEtE,CACP,GACI,EAEN,cAAK,KAAK,EAAE,YAAY,YACvB,iBAAO,SAAS,EAAC,QAAQ,EAAC,KAAK,EAAE,YAAY,aAC5C,KAAC,IAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAE,EAAE,GAAI,EAC/B,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,2BAA2B,EAC1E,gBACC,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,wDAAwD,EAC/D,QAAQ,EAAE,YAAY,KAAK,WAAW,EACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gCACnB,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAA;gCAC3C,KAAK,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAA;gCAC9B,IAAI,IAAI;oCAAE,KAAK,iBAAiB,CAAC,IAAI,CAAC,CAAA;4BACvC,CAAC,EACD,KAAK,EAAE,eAAe,gBACX,2BAA2B,GACrC,IACK,GACH,EAEN,gBAAO,OAAO,EAAC,sBAAsB,EAAC,KAAK,EAAE,UAAU,mDAE/C,EACR,gBACC,EAAE,EAAC,sBAAsB,EACzB,IAAI,EAAC,MAAM,EACX,WAAW,EAAC,2BAA2B,EACvC,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,EACxD,KAAK,EAAE,QAAQ,gBACJ,cAAc,GACxB,EACF,KAAC,kBAAkB,IAClB,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,uBAAuB,EACjC,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,GACpC,EAEF,cAAK,KAAK,EAAE,SAAS,6EAAoE,EAExF,UAAU,IAAI,cAAK,KAAK,EAAE,eAAe,YAAG,UAAU,GAAO,EAC7D,CAAC,WAAW,IAAI,aAAa,CAAC,IAAI,CAClC,cAAK,KAAK,EAAE,cAAc,YAAG,WAAW,IAAI,aAAa,GAAO,CAChE,IACI,CACN,CAAA;AACF,CAAC;AAED,SAAS,kBAAkB,CAAC,EAC3B,eAAe,EACf,QAAQ,EACR,SAAS,GAKT;IACA,MAAM,OAAO,GAAG,KAAK,EAAE,CAAA;IAEvB,OAAO,CACN,8BACC,gBAAO,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,yCAElC,EACR,gBACC,EAAE,EAAE,OAAO,EACX,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,eAAe,IAAI,EAAE,EAC5B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,EACxD,KAAK,EAAE,QAAQ,gBACJ,2BAA2B,GACrC,EACF,cAAK,KAAK,EAAE,SAAS,qJAGf,EACL,SAAS,IAAI,eAAe,KAAK,IAAI,IAAI,CACzC,cAAK,KAAK,EAAE,cAAc,uEAA8D,CACxF,IACC,CACH,CAAA;AACF,CAAC;AAED,MAAM,mBAAmB,GACxB,wGAAwG,CAAA;AAEzG,MAAM,qBAAqB,GAC1B,0GAA0G,CAAA;AAE3G,MAAM,yBAAyB,GAC9B,sEAAsE,CAAA;AAEvE,SAAS,0BAA0B,CAClC,IAA6B,EAC7B,WAAwB,EACxB,KAAa;IAEb,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;IAClC,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IACrD,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAClE,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IACvD,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACpE,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAExC,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC1C,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACzE,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpC,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC3C,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAChD,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACpD,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACpD,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACtD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,KAAK,SAAS,CAAA;IAC5C,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAC9B,IAAI,CAAC,YAAY,GAAG,YAAY,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAEtF,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,YAAY,IAAI,WAAW,KAAK,MAAM,EAAE,CAAC;QACzF,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACrF,CAAC;IAED,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;QAC5D,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;QACvE,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACjD,IAAI,CAAC,eAAe,GAAG,6BAA6B,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;QAC9E,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,iBAAiB;YACrB,iBAAiB,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACnF,CAAC;IAED,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC7C,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QACnD,IAAI,CAAC,eAAe,GAAG,6BAA6B,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC/E,CAAC;IAED,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAe,EAAE,WAAwB;IACpE,OAAO;QACN,EAAE,EAAE,IAAI,CAAC,OAAO,IAAI,OAAO;QAC3B,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI;QACzB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;QACvB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,OAAO,EAAE,IAAI,CAAC,OAAO;KACrB,CAAA;AACF,CAAC;AAED,SAAS,cAAc,CAAC,EAAU;IACjC,OAAO,oBAAoB,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAA;AACpD,CAAC;AAED,SAAS,aAAa,CAAC,KAAgC;IACtD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;AAC9C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgC;IACzD,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;IAC9C,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;AACtC,CAAC;AAED,SAAS,eAAe,CAAC,KAAgC;IACxD,MAAM,OAAO,GAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;IAC1F,OAAO,OAAO,CAAC,QAAQ,CAAC,KAAsB,CAAC,CAAC,CAAC,CAAE,KAAuB,CAAC,CAAC,CAAC,OAAO,CAAA;AACrF,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAgC;IACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACrE,OAAO,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;AAC5C,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,SAAS,SAAS,CAAC,EAAU;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAA;IAC5B,IAAI,IAAI,GAAG,MAAM;QAAE,OAAO,UAAU,CAAA;IACpC,IAAI,IAAI,GAAG,MAAM;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAA;IAC3D,IAAI,IAAI,GAAG,SAAS;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAA;IAChE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAA;AAC9C,CAAC;AAED,8EAA8E;AAC9E,SAAS;AACT,8EAA8E;AAE9E,MAAM,QAAQ,GAAwB;IACrC,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,GAAG,EAAE,CAAC;IACN,OAAO,EAAE,WAAW;IACpB,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,MAAM;CACjB,CAAA;AAED,MAAM,aAAa,GAAwB;IAC1C,OAAO,EAAE,MAAM;IACf,cAAc,EAAE,UAAU;IAC1B,UAAU,EAAE,QAAQ;IACpB,GAAG,EAAE,CAAC;IACN,YAAY,EAAE,CAAC;IACf,SAAS,EAAE,EAAE;CACb,CAAA;AAED,MAAM,UAAU,GAAwB;IACvC,YAAY,EAAE,EAAE;CAChB,CAAA;AAED,MAAM,UAAU,GAAwB;IACvC,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,cAAc;IAC1B,UAAU,EAAE,GAAG;IACf,QAAQ,EAAE,EAAE;IACZ,aAAa,EAAE,UAAU;IACzB,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,YAAY;IACnB,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,MAAM;CACf,CAAA;AAED,MAAM,QAAQ,GAAwB;IACrC,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,cAAc;IAC1B,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,KAAK,EAAE,iBAAiB;IACxB,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,MAAM;IACf,MAAM,EAAE,MAAM;CACd,CAAA;AAED,MAAM,MAAM,GAAwB;IACnC,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,QAAQ;IACpB,GAAG,EAAE,EAAE;IACP,UAAU,EAAE,EAAE;IACd,UAAU,EAAE,aAAa;IACzB,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE,kBAAkB;IACzB,SAAS,EAAE,8BAA8B;CACzC,CAAA;AAED,MAAM,eAAe,GAAwB;IAC5C,OAAO,EAAE,MAAM;IACf,aAAa,EAAE,QAAQ;IACvB,GAAG,EAAE,EAAE;CACP,CAAA;AAED,MAAM,UAAU,GAAwB;IACvC,MAAM,EAAE,+BAA+B;IACvC,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,EAAE;IACX,UAAU,EAAE,cAAc;CAC1B,CAAA;AAED,MAAM,gBAAgB,GAAwB;IAC7C,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,QAAQ;IACpB,GAAG,EAAE,CAAC;IACN,YAAY,EAAE,EAAE;CAChB,CAAA;AAED,MAAM,YAAY,GAAwB;IACzC,MAAM,EAAE,GAAG;IACX,UAAU,EAAE,cAAc;IAC1B,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,QAAQ;IACpB,cAAc,EAAE,QAAQ;IACxB,YAAY,EAAE,EAAE;IAChB,QAAQ,EAAE,QAAQ;CAClB,CAAA;AAED,MAAM,iBAAiB,GAAwB;IAC9C,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,SAAS,EAAE,OAAO;IAClB,OAAO,EAAE,OAAO;CAChB,CAAA;AAED,MAAM,UAAU,GAAwB;IACvC,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,EAAE;IACb,YAAY,EAAE,CAAC;IACf,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,KAAK,EAAE,iBAAiB;CACxB,CAAA;AAED,MAAM,SAAS,GAAwB;IACtC,MAAM,EAAE,YAAY;IACpB,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,kBAAkB;CACzB,CAAA;AAED,MAAM,QAAQ,GAAwB;IACrC,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,+BAA+B;IACvC,YAAY,EAAE,CAAC;IACf,UAAU,EAAE,WAAW;IACvB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,MAAM;CACf,CAAA;AAED,MAAM,YAAY,GAAwB;IACzC,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,QAAQ;IACpB,GAAG,EAAE,CAAC;IACN,SAAS,EAAE,EAAE;CACb,CAAA;AAED,MAAM,YAAY,GAAwB;IACzC,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,SAAS;CACjB,CAAA;AAED,MAAM,eAAe,GAAwB;IAC5C,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,CAAC;IACR,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,SAAS;CACjB,CAAA;AAED,MAAM,eAAe,GAAwB;IAC5C,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,KAAK,EAAE,kBAAkB;CACzB,CAAA;AAED,MAAM,cAAc,GAAwB;IAC3C,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,KAAK,EAAE,YAAY;CACnB,CAAA;AAED,wEAAwE;AACxE,0DAA0D;AAC1D,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -9,7 +9,9 @@ export interface ContentDraftFields {
9
9
  heroImageId?: string | null;
10
10
  thumbnailImageId?: string | null;
11
11
  audioUrl: string;
12
+ durationSeconds: number | null;
12
13
  }
14
+ export declare function normalizeMediaDurationSeconds(value: unknown): number | null;
13
15
  export declare function slugifyTitle(title: string): string;
14
16
  export declare function canCreateContentDraft(contentType: ContentType, draft: ContentDraftFields): boolean;
15
17
  export declare function foundryDispatchSourceForDraft(contentType: ContentType, draft: ContentDraftFields): string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"content-payload.d.ts","sourceRoot":"","sources":["../../../src/ui/editor/content-payload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAExD,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED,wBAAgB,qBAAqB,CACpC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,OAAO,CAQT;AAED,wBAAgB,6BAA6B,CAC5C,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,MAAM,GAAG,IAAI,CAUf;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAe9E;AAED,wBAAgB,yBAAyB,CACxC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAwCzB;AAED,wBAAgB,yBAAyB,CACxC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMzB"}
1
+ {"version":3,"file":"content-payload.d.ts","sourceRoot":"","sources":["../../../src/ui/editor/content-payload.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAExD,MAAM,WAAW,kBAAkB;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAG3E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED,wBAAgB,qBAAqB,CACpC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,OAAO,CAkBT;AAED,wBAAgB,6BAA6B,CAC5C,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,MAAM,GAAG,IAAI,CAUf;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,CAe9E;AAED,wBAAgB,yBAAyB,CACxC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0CzB;AAED,wBAAgB,yBAAyB,CACxC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,kBAAkB,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMzB"}
@@ -1,4 +1,9 @@
1
1
  import { countWords, estimateReadTime } from '../../engine/publisher.js';
2
+ export function normalizeMediaDurationSeconds(value) {
3
+ if (typeof value !== 'number' || !Number.isFinite(value) || value <= 0)
4
+ return null;
5
+ return Math.ceil(value);
6
+ }
2
7
  export function slugifyTitle(title) {
3
8
  return title
4
9
  .toLowerCase()
@@ -14,10 +19,14 @@ export function canCreateContentDraft(contentType, draft) {
14
19
  if (contentType === 'article' || contentType === 'newsletter' || contentType === 'page') {
15
20
  return draft.body.trim().length > 0;
16
21
  }
17
- if (contentType === 'video')
18
- return draft.videoUrl.trim().length > 0;
19
- if (contentType === 'podcast')
20
- return draft.audioUrl.trim().length > 0;
22
+ if (contentType === 'video') {
23
+ return (draft.videoUrl.trim().length > 0 &&
24
+ normalizeMediaDurationSeconds(draft.durationSeconds) !== null);
25
+ }
26
+ if (contentType === 'podcast') {
27
+ return (draft.audioUrl.trim().length > 0 &&
28
+ normalizeMediaDurationSeconds(draft.durationSeconds) !== null);
29
+ }
21
30
  return false;
22
31
  }
23
32
  export function foundryDispatchSourceForDraft(contentType, draft) {
@@ -70,6 +79,7 @@ export function buildContentUpdatePayload(contentType, draft) {
70
79
  payload.content = {
71
80
  script: '',
72
81
  videoId,
82
+ durationSeconds: normalizeMediaDurationSeconds(draft.durationSeconds),
73
83
  ...(thumbnailImageId ? { thumbnailImageId } : {}),
74
84
  ...(sourceUrl
75
85
  ? {
@@ -83,6 +93,7 @@ export function buildContentUpdatePayload(contentType, draft) {
83
93
  payload.content = {
84
94
  transcript: '',
85
95
  audioR2Key: draft.audioUrl,
96
+ durationSeconds: normalizeMediaDurationSeconds(draft.durationSeconds),
86
97
  };
87
98
  }
88
99
  return payload;
@@ -1 +1 @@
1
- {"version":3,"file":"content-payload.js","sourceRoot":"","sources":["../../../src/ui/editor/content-payload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"content-payload.js","sourceRoot":"","sources":["../../../src/ui/editor/content-payload.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ export type EditorMediaKind = 'video' | 'audio';
2
+ export interface MediaMetadataElement {
3
+ preload: string;
4
+ src: string;
5
+ readonly duration: number;
6
+ addEventListener(type: 'loadedmetadata' | 'error', listener: () => void): void;
7
+ removeEventListener(type: 'loadedmetadata' | 'error', listener: () => void): void;
8
+ load(): void;
9
+ removeAttribute(name: 'src'): void;
10
+ }
11
+ interface MediaDurationDependencies {
12
+ createMediaElement?: (kind: EditorMediaKind) => MediaMetadataElement;
13
+ createObjectURL?: (file: File) => string;
14
+ revokeObjectURL?: (url: string) => void;
15
+ timeoutMs?: number;
16
+ }
17
+ /**
18
+ * Measure a selected local media file before upload. Fractional container
19
+ * durations are rounded up so the integer dispatch contract never understates
20
+ * the source runtime. No fallback estimate is permitted.
21
+ */
22
+ export declare function measureEditorMediaDurationSeconds(file: File, kind: EditorMediaKind, dependencies?: MediaDurationDependencies): Promise<number>;
23
+ export {};
24
+ //# sourceMappingURL=editor-media-duration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-media-duration.d.ts","sourceRoot":"","sources":["../../../src/ui/editor/editor-media-duration.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,OAAO,CAAA;AAE/C,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAA;IAC9E,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAA;IACjF,IAAI,IAAI,IAAI,CAAA;IACZ,eAAe,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAA;CAClC;AAED,UAAU,yBAAyB;IAClC,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,oBAAoB,CAAA;IACpE,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAA;IACxC,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;CAClB;AAID;;;;GAIG;AACH,wBAAsB,iCAAiC,CACtD,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,eAAe,EACrB,YAAY,GAAE,yBAA8B,GAC1C,OAAO,CAAC,MAAM,CAAC,CA4CjB"}
@@ -0,0 +1,51 @@
1
+ const DEFAULT_METADATA_TIMEOUT_MS = 15_000;
2
+ /**
3
+ * Measure a selected local media file before upload. Fractional container
4
+ * durations are rounded up so the integer dispatch contract never understates
5
+ * the source runtime. No fallback estimate is permitted.
6
+ */
7
+ export async function measureEditorMediaDurationSeconds(file, kind, dependencies = {}) {
8
+ const createMediaElement = dependencies.createMediaElement ??
9
+ ((mediaKind) => document.createElement(mediaKind));
10
+ const createObjectURL = dependencies.createObjectURL ?? ((value) => URL.createObjectURL(value));
11
+ const revokeObjectURL = dependencies.revokeObjectURL ?? ((url) => URL.revokeObjectURL(url));
12
+ const timeoutMs = dependencies.timeoutMs ?? DEFAULT_METADATA_TIMEOUT_MS;
13
+ const media = createMediaElement(kind);
14
+ const objectUrl = createObjectURL(file);
15
+ let timeout = null;
16
+ let onLoadedMetadata = null;
17
+ let onError = null;
18
+ try {
19
+ return await new Promise((resolve, reject) => {
20
+ onLoadedMetadata = () => {
21
+ const duration = media.duration;
22
+ if (!Number.isFinite(duration) || duration <= 0) {
23
+ reject(new Error('Selected media must expose a positive finite duration'));
24
+ return;
25
+ }
26
+ resolve(Math.ceil(duration));
27
+ };
28
+ onError = () => reject(new Error('Could not read duration metadata from selected media'));
29
+ media.addEventListener('loadedmetadata', onLoadedMetadata);
30
+ media.addEventListener('error', onError);
31
+ timeout = setTimeout(() => {
32
+ reject(new Error('Timed out reading duration metadata from selected media'));
33
+ }, timeoutMs);
34
+ media.preload = 'metadata';
35
+ media.src = objectUrl;
36
+ media.load();
37
+ });
38
+ }
39
+ finally {
40
+ if (timeout)
41
+ clearTimeout(timeout);
42
+ if (onLoadedMetadata)
43
+ media.removeEventListener('loadedmetadata', onLoadedMetadata);
44
+ if (onError)
45
+ media.removeEventListener('error', onError);
46
+ media.removeAttribute('src');
47
+ media.load();
48
+ revokeObjectURL(objectUrl);
49
+ }
50
+ }
51
+ //# sourceMappingURL=editor-media-duration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-media-duration.js","sourceRoot":"","sources":["../../../src/ui/editor/editor-media-duration.ts"],"names":[],"mappings":"AAmBA,MAAM,2BAA2B,GAAG,MAAM,CAAA;AAE1C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACtD,IAAU,EACV,IAAqB,EACrB,eAA0C,EAAE;IAE5C,MAAM,kBAAkB,GACvB,YAAY,CAAC,kBAAkB;QAC/B,CAAC,CAAC,SAA0B,EAAE,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAyB,CAAC,CAAA;IAC5F,MAAM,eAAe,GACpB,YAAY,CAAC,eAAe,IAAI,CAAC,CAAC,KAAW,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAA;IAC9E,MAAM,eAAe,GACpB,YAAY,CAAC,eAAe,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5E,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,IAAI,2BAA2B,CAAA;IACvE,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACtC,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;IACvC,IAAI,OAAO,GAAyC,IAAI,CAAA;IACxD,IAAI,gBAAgB,GAAwB,IAAI,CAAA;IAChD,IAAI,OAAO,GAAwB,IAAI,CAAA;IAEvC,IAAI,CAAC;QACJ,OAAO,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACpD,gBAAgB,GAAG,GAAG,EAAE;gBACvB,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;gBAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;oBACjD,MAAM,CAAC,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC,CAAA;oBAC1E,OAAM;gBACP,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC7B,CAAC,CAAA;YACD,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC,CAAA;YAEzF,KAAK,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAA;YAC1D,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACxC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBACzB,MAAM,CAAC,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC,CAAA;YAC7E,CAAC,EAAE,SAAS,CAAC,CAAA;YACb,KAAK,CAAC,OAAO,GAAG,UAAU,CAAA;YAC1B,KAAK,CAAC,GAAG,GAAG,SAAS,CAAA;YACrB,KAAK,CAAC,IAAI,EAAE,CAAA;QACb,CAAC,CAAC,CAAA;IACH,CAAC;YAAS,CAAC;QACV,IAAI,OAAO;YAAE,YAAY,CAAC,OAAO,CAAC,CAAA;QAClC,IAAI,gBAAgB;YAAE,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAA;QACnF,IAAI,OAAO;YAAE,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACxD,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;QAC5B,KAAK,CAAC,IAAI,EAAE,CAAA;QACZ,eAAe,CAAC,SAAS,CAAC,CAAA;IAC3B,CAAC;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MediaScreen.d.ts","sourceRoot":"","sources":["../../../src/ui/screens/MediaScreen.tsx"],"names":[],"mappings":"AA+GA,wBAAgB,WAAW,gCA0H1B"}
1
+ {"version":3,"file":"MediaScreen.d.ts","sourceRoot":"","sources":["../../../src/ui/screens/MediaScreen.tsx"],"names":[],"mappings":"AAgHA,wBAAgB,WAAW,gCAoI1B"}
@@ -25,6 +25,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
25
25
  // the asset kind as a .type-tag. Only existing broadsheet.css classes are used;
26
26
  // the auto-fill tile grid uses inline `display: grid` exactly as the prototype.
27
27
  import { useCallback, useEffect, useReducer, useRef, useState } from 'react';
28
+ import { measureEditorMediaDurationSeconds } from '../editor/editor-media-duration.js';
28
29
  import { Icon } from '../icons.js';
29
30
  import { uploadMediaAsset } from './media-upload.js';
30
31
  const KIND_FILTERS = [
@@ -95,7 +96,13 @@ export function MediaScreen() {
95
96
  setUploadError(null);
96
97
  setLastUpload(null);
97
98
  try {
98
- const result = await uploadMediaAsset({ kind: kind, file });
99
+ const result = kind === 'image'
100
+ ? await uploadMediaAsset({ kind, file })
101
+ : await uploadMediaAsset({
102
+ kind,
103
+ file,
104
+ durationSeconds: await measureEditorMediaDurationSeconds(file, kind === 'video' ? 'video' : 'audio'),
105
+ });
99
106
  setLastUpload(result);
100
107
  await fetchLibrary(kind);
101
108
  }