@crystaldesign/diva-backoffice 26.10.0-beta.6 → 26.10.0-beta.7

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 (29) hide show
  1. package/build/esm/index.js +1540 -908
  2. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/ApprovalWorkspace/index.d.ts +9 -2
  3. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/ApprovalWorkspace/index.d.ts.map +1 -1
  4. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/ImagePanel/index.d.ts +1 -2
  5. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/ImagePanel/index.d.ts.map +1 -1
  6. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/MetadataPanel/index.d.ts +1 -1
  7. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/MetadataPanel/index.d.ts.map +1 -1
  8. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/ShortcutLegend/index.d.ts +3 -2
  9. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/ShortcutLegend/index.d.ts.map +1 -1
  10. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/SideBySideViewer/index.d.ts +16 -2
  11. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/SideBySideViewer/index.d.ts.map +1 -1
  12. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/VariantCompareView/index.d.ts +18 -0
  13. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/VariantCompareView/index.d.ts.map +1 -0
  14. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/VariantPanel/index.d.ts +21 -0
  15. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/VariantPanel/index.d.ts.map +1 -0
  16. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/VariantSlider/index.d.ts +32 -0
  17. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/components/VariantSlider/index.d.ts.map +1 -0
  18. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/hooks/useRenderJobData.d.ts.map +1 -1
  19. package/build/types/backoffice/src/ui/TableRenderJobs/components/RenderApprove/index.d.ts.map +1 -1
  20. package/build/types/backoffice/src/ui/TableRenderJobs/constants.d.ts +9 -0
  21. package/build/types/backoffice/src/ui/TableRenderJobs/constants.d.ts.map +1 -1
  22. package/build/types/backoffice/src/ui/TableRenderJobs/hooks/useAddRenderJobImageVariant.d.ts +9 -0
  23. package/build/types/backoffice/src/ui/TableRenderJobs/hooks/useAddRenderJobImageVariant.d.ts.map +1 -0
  24. package/build/types/backoffice/src/ui/TableRenderJobs/hooks/useSelectRenderJobVariant.d.ts +10 -0
  25. package/build/types/backoffice/src/ui/TableRenderJobs/hooks/useSelectRenderJobVariant.d.ts.map +1 -0
  26. package/build/types/backoffice/src/ui/TableRenderJobs/hooks/useUploadRenderJobImage.d.ts.map +1 -1
  27. package/build/types/backoffice/src/ui/TableRenderJobs/types.d.ts +38 -0
  28. package/build/types/backoffice/src/ui/TableRenderJobs/types.d.ts.map +1 -1
  29. package/package.json +9 -9
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import type { Swiper as SwiperClass } from 'swiper';
3
3
  import { ShortcutItem } from '../ShortcutLegend';
4
4
  import { SessionAction } from '../../hooks/useRenderApproveSession';
5
- import { RenderApproveImages } from '../../../../types';
5
+ import { RenderApproveImages, RenderApproveMedia } from '../../../../types';
6
6
  interface Props {
7
7
  images: RenderApproveImages;
8
8
  loading?: boolean;
@@ -21,11 +21,18 @@ interface Props {
21
21
  onNext: () => void;
22
22
  onUpload?: () => void;
23
23
  onSetReadyForProduction?: () => void;
24
+ compareOpen?: boolean;
25
+ /** Only set for multi-variant AI jobs; toggles the variant comparison grid. */
26
+ onToggleCompare?: () => void;
27
+ variantSelecting?: boolean;
28
+ onSelectVariant?: (mediaItemId: string) => void;
29
+ onOpenVariantFullscreen?: (media: RenderApproveMedia) => void;
30
+ onVariantSwiperInit?: (swiper: SwiperClass) => void;
24
31
  }
25
32
  /**
26
33
  * Abnahme (approval) use case: side-by-side comparison of preview and result
27
34
  * plus the full decision action bar (approve / reject / upload).
28
35
  */
29
- export default function ApprovalWorkspace({ images, loading, readonlyDecision, onOpenFullscreenLeft, onOpenFullscreenRight, onLeftSwiperInit, actionDisabled, busy, readOnly, isFirst, shortcutItems, onApprove, onReject, onPrev, onNext, onUpload, onSetReadyForProduction, }: Props): React.JSX.Element;
36
+ export default function ApprovalWorkspace({ images, loading, readonlyDecision, onOpenFullscreenLeft, onOpenFullscreenRight, onLeftSwiperInit, actionDisabled, busy, readOnly, isFirst, shortcutItems, onApprove, onReject, onPrev, onNext, onUpload, onSetReadyForProduction, compareOpen, onToggleCompare, variantSelecting, onSelectVariant, onOpenVariantFullscreen, onVariantSwiperInit, }: Props): React.JSX.Element;
30
37
  export {};
31
38
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/ApprovalWorkspace/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,UAAU,KAAK;IACb,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAChD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;CACtC;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,MAAM,EACN,OAAO,EACP,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,aAAa,EACb,SAAS,EACT,QAAQ,EACR,MAAM,EACN,MAAM,EACN,QAAQ,EACR,uBAAuB,GACxB,EAAE,KAAK,qBA2BP"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/ApprovalWorkspace/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5E,UAAU,KAAK;IACb,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,gBAAgB,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAChD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9D,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CACrD;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,MAAM,EACN,OAAO,EACP,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,aAAa,EACb,SAAS,EACT,QAAQ,EACR,MAAM,EACN,MAAM,EACN,QAAQ,EACR,uBAAuB,EACvB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,GACpB,EAAE,KAAK,qBAmCP"}
@@ -13,8 +13,7 @@ interface Props {
13
13
  loading?: boolean;
14
14
  alt?: string;
15
15
  onOpenFullscreen?: () => void;
16
- headerActions?: React.ReactNode;
17
16
  }
18
- export default function ImagePanel({ title, media, loading, alt, onOpenFullscreen, headerActions }: Props): React.JSX.Element;
17
+ export default function ImagePanel({ title, media, loading, alt, onOpenFullscreen }: Props): React.JSX.Element;
19
18
  export {};
20
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/ImagePanel/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,cAAc,EAAE,GAAG,CAAC;SACrB;KACF;CACF;AAED,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACjC;AAQD,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,aAAa,EAAE,EAAE,KAAK,qBA0FxG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/ImagePanel/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,cAAc,EAAE,GAAG,CAAC;SACrB;KACF;CACF;AAED,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B;AAQD,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,KAAK,qBAyFzF"}
@@ -10,7 +10,7 @@ interface Props {
10
10
  onPromptOpenChange?: (open: boolean) => void;
11
11
  promptActionDisabled?: boolean;
12
12
  promptActionBusy?: boolean;
13
- onPromptRestart?: (nextPrompt: string) => Promise<void>;
13
+ onPromptRestart?: (nextPrompt: string, nextNrOfVariants: number) => Promise<void>;
14
14
  /** Whether saving the prompt restarts the render production (shows a warning). */
15
15
  promptWarningMessage?: string;
16
16
  /** Hides the prompt view/button entirely (e.g. during the image-selection phase). */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/MetadataPanel/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAM5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAsC9C,UAAU,KAAK;IACb,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,kFAAkF;IAClF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qFAAqF;IACrF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAmHD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,GAAG,EACH,QAAQ,EACR,SAAS,EACT,WAAW,EACX,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,UAAU,EACV,QAAQ,GACT,EAAE,KAAK,qBA4VP"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/MetadataPanel/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAM5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAwC9C,UAAU,KAAK;IACb,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClF,kFAAkF;IAClF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qFAAqF;IACrF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AA4HD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,GAAG,EACH,QAAQ,EACR,SAAS,EACT,WAAW,EACX,mBAAmB,EACnB,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,UAAU,EACV,QAAQ,GACT,EAAE,KAAK,qBA2SP"}
@@ -8,9 +8,10 @@ export type RenderApproveMode = 'select' | 'approve';
8
8
  /**
9
9
  * Builds the shortcut list for a given mode. The image-selector mode only
10
10
  * exposes navigation/details/prompt/close; the approval mode exposes the full
11
- * decision set. `showPrompt` adds the prompt-panel shortcut for AI jobs.
11
+ * decision set. `showPrompt` adds the prompt-panel shortcut for AI jobs,
12
+ * `showVariants` the variant swiper and comparison ones for multi-variant jobs.
12
13
  */
13
- export declare function buildShortcutItems(mode: RenderApproveMode, showPrompt: boolean): ShortcutItem[];
14
+ export declare function buildShortcutItems(mode: RenderApproveMode, showPrompt: boolean, showVariants?: boolean): ShortcutItem[];
14
15
  interface Props {
15
16
  items: ShortcutItem[];
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/ShortcutLegend/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAerD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,GAAG,YAAY,EAAE,CAQ/F;AAED,UAAU,KAAK;IACb,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,qBAqBtD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/ShortcutLegend/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,SAAS,CAAC;AAiBrD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,UAAQ,GAAG,YAAY,EAAE,CASrH;AAED,UAAU,KAAK;IACb,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,qBAqBtD"}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import type { Swiper as SwiperClass } from 'swiper';
3
3
  import { SessionAction } from '../../hooks/useRenderApproveSession';
4
- import { RenderApproveImages } from '../../../../types';
4
+ import { RenderApproveImages, RenderApproveMedia } from '../../../../types';
5
5
  interface Props {
6
6
  images: RenderApproveImages;
7
7
  loading?: boolean;
@@ -13,7 +13,21 @@ interface Props {
13
13
  onUpload?: () => void;
14
14
  onSetReadyForProduction?: () => void;
15
15
  actionsDisabled?: boolean;
16
+ /** Replaces both panels with the variant comparison grid while true. */
17
+ compareOpen?: boolean;
18
+ /** Only set for multi-variant AI jobs; toggles the variant comparison grid. */
19
+ onToggleCompare?: () => void;
20
+ /** Blocks the compare toggle. Unlike the other actions it stays usable on read-only jobs. */
21
+ compareDisabled?: boolean;
22
+ /** Blocks the take-over action (read-only job, session busy, ...). */
23
+ variantSelectDisabled?: boolean;
24
+ /** A take-over request is currently in flight. */
25
+ variantSelecting?: boolean;
26
+ onSelectVariant?: (mediaItemId: string) => void;
27
+ onOpenVariantFullscreen?: (media: RenderApproveMedia) => void;
28
+ /** Forwarded to VariantSlider so Q/E can drive the variant swiper. */
29
+ onVariantSwiperInit?: (swiper: SwiperClass) => void;
16
30
  }
17
- export default function SideBySideViewer({ images, loading, readonlyDecision, onOpenFullscreenLeft, onOpenFullscreenRight, onLeftSwiperInit, onUpload, onSetReadyForProduction, actionsDisabled, }: Props): React.JSX.Element;
31
+ export default function SideBySideViewer({ images, loading, readonlyDecision, onOpenFullscreenLeft, onOpenFullscreenRight, onLeftSwiperInit, onUpload, onSetReadyForProduction, actionsDisabled, compareOpen, onToggleCompare, compareDisabled, variantSelectDisabled, variantSelecting, onSelectVariant, onOpenVariantFullscreen, onVariantSwiperInit, }: Props): React.JSX.Element;
18
32
  export {};
19
33
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/SideBySideViewer/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAMpD,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAcxD,UAAU,KAAK;IACb,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IACjD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,QAAQ,EACR,uBAAuB,EACvB,eAAe,GAChB,EAAE,KAAK,qBAoFP"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/SideBySideViewer/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AASpD,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAe5E,UAAU,KAAK;IACb,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IACjD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,uBAAuB,CAAC,EAAE,MAAM,IAAI,CAAC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,wEAAwE;IACxE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,6FAA6F;IAC7F,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,sEAAsE;IACtE,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9D,sEAAsE;IACtE,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,MAAM,EACN,OAAO,EACP,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,QAAQ,EACR,uBAAuB,EACvB,eAAe,EACf,WAAW,EACX,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,mBAAmB,GACpB,EAAE,KAAK,qBAwIP"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import { RenderApproveMedia, RenderApproveVariant } from '../../../../types';
3
+ interface Props {
4
+ variants: RenderApproveVariant[];
5
+ loading?: boolean;
6
+ disabled?: boolean;
7
+ busy?: boolean;
8
+ onSelect?: (mediaItemId: string) => void;
9
+ onOpenFullscreen?: (media: RenderApproveMedia) => void;
10
+ }
11
+ /**
12
+ * Side-by-side comparison of all generated variants, each with its take-over
13
+ * action. Renders whatever is there - with partial generation failures a job can
14
+ * carry fewer variants than `nrOfVariants` asked for.
15
+ */
16
+ export default function VariantCompareView({ variants, loading, disabled, busy, onSelect, onOpenFullscreen }: Props): React.JSX.Element;
17
+ export {};
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/VariantCompareView/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG7E,UAAU,KAAK;IACb,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACxD;AAED;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,KAAK,qBAmBlH"}
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import { RenderApproveMedia, RenderApproveVariant } from '../../../../types';
3
+ interface Props {
4
+ variant: RenderApproveVariant;
5
+ /** Number of variants in the batch, for the "Variante 2/3" label. */
6
+ total: number;
7
+ loading?: boolean;
8
+ /** Blocks the take-over action (read-only job, session busy, ...). */
9
+ disabled?: boolean;
10
+ /** A take-over request is currently in flight. */
11
+ busy?: boolean;
12
+ onSelect?: (mediaItemId: string) => void;
13
+ onOpenFullscreen?: (media: RenderApproveMedia) => void;
14
+ }
15
+ /**
16
+ * One image variant with its take-over action. Shared by the variant slider and
17
+ * the comparison view so both offer the exact same interaction.
18
+ */
19
+ export default function VariantPanel({ variant, total, loading, disabled, busy, onSelect, onOpenFullscreen }: Props): React.JSX.Element;
20
+ export {};
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/VariantPanel/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG7E,UAAU,KAAK;IACb,OAAO,EAAE,oBAAoB,CAAC;IAC9B,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kDAAkD;IAClD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;CACxD;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,KAAK,qBA4BlH"}
@@ -0,0 +1,32 @@
1
+ import React from 'react';
2
+ import type { Swiper as SwiperClass } from 'swiper';
3
+ import { RenderApproveMedia, RenderApproveVariant } from '../../../../types';
4
+ import 'swiper/css';
5
+ import 'swiper/css/navigation';
6
+ import 'swiper/css/pagination';
7
+ interface Props {
8
+ variants: RenderApproveVariant[];
9
+ loading?: boolean;
10
+ disabled?: boolean;
11
+ busy?: boolean;
12
+ onSelect?: (mediaItemId: string) => void;
13
+ onOpenFullscreen?: (media: RenderApproveMedia) => void;
14
+ /** Receives the Swiper instance so the parent can drive prev/next from keyboard shortcuts. */
15
+ onSwiperInit?: (swiper: SwiperClass) => void;
16
+ }
17
+ /**
18
+ * Horizontal swiper over the generated image variants on the result side of the
19
+ * approval viewer.
20
+ *
21
+ * Opens on the variant currently taken over as the product image; the generated
22
+ * order stays untouched so the "Variante 2/3" labels keep matching the slide
23
+ * positions.
24
+ *
25
+ * Not looped on purpose: with two or three slides the "Variante 2/3" label is
26
+ * the main orientation aid and wrapping around would make it misleading.
27
+ * Swiper's keyboard module stays disabled because Arrow Left/Right navigate
28
+ * between render jobs; Q/E drive this swiper via `useKeyboardShortcuts`.
29
+ */
30
+ export default function VariantSlider({ variants, loading, disabled, busy, onSelect, onOpenFullscreen, onSwiperInit }: Props): React.JSX.Element;
31
+ export {};
32
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/components/VariantSlider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAIpD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG7E,OAAO,YAAY,CAAC;AACpB,OAAO,uBAAuB,CAAC;AAC/B,OAAO,uBAAuB,CAAC;AAE/B,UAAU,KAAK;IACb,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACvD,8FAA8F;IAC9F,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CAC9C;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,KAAK,qBAiC3H"}
@@ -1 +1 @@
1
- {"version":3,"file":"useRenderJobData.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/hooks/useRenderJobData.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAIjG,UAAU,sBAAsB;IAC9B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8JAA8J;IAC9J,iBAAiB,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;CAC1D;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAM7E;AAuHD,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,WAAW,CAAC,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAapC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,sBAAsB,CA6IjG"}
1
+ {"version":3,"file":"useRenderJobData.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/hooks/useRenderJobData.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAwB,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAIvH,UAAU,sBAAsB;IAC9B,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8JAA8J;IAC9J,iBAAiB,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;CAC1D;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAM7E;AAuHD,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,WAAW,CAAC,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAapC;AAyCD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,sBAAsB,CAqJjG"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAqD3D,MAAM,CAAC,OAAO,UAAU,aAAa,sBA4mBpC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/TableRenderJobs/components/RenderApprove/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAsD3D,MAAM,CAAC,OAAO,UAAU,aAAa,sBA8rBpC"}
@@ -72,6 +72,15 @@ export declare const KEY_MAP: {
72
72
  readonly swiperNext: {
73
73
  readonly code: "KeyD";
74
74
  };
75
+ readonly variantPrev: {
76
+ readonly code: "KeyQ";
77
+ };
78
+ readonly variantNext: {
79
+ readonly code: "KeyE";
80
+ };
81
+ readonly compare: {
82
+ readonly code: "KeyC";
83
+ };
75
84
  readonly details: {
76
85
  readonly code: "KeyD";
77
86
  readonly mod: true;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/TableRenderJobs/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;CAQnB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAQpB,CAAC;AAEX,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYmC,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,OAAO,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/TableRenderJobs/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;CAQnB,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAQpB,CAAC;AAEX,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBmC,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,OAAO,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,eAAe,OAAO,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Adds a manually uploaded image to an AI job's image variants and takes it over as
3
+ * the result image via `POST ${mediaService}/renderjobs/:id/variants`.
4
+ *
5
+ * The endpoint also seeds the list from the previous result and moves the file name
6
+ * and job reference onto the upload, so a plain JSON patch cannot replace it.
7
+ */
8
+ export default function useAddRenderJobImageVariant(): (id: string, mediaItemId: string, mediaItemRefId: string) => Promise<any>;
9
+ //# sourceMappingURL=useAddRenderJobImageVariant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAddRenderJobImageVariant.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/TableRenderJobs/hooks/useAddRenderJobImageVariant.ts"],"names":[],"mappings":"AAMA;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,2BAA2B,SAMpC,MAAM,eAAe,MAAM,kBAAkB,MAAM,kBA+BjE"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Takes one generated image variant over as the render job's result image via
3
+ * `POST ${mediaService}/renderjobs/:id/variants/select`.
4
+ *
5
+ * The endpoint moves the canonical file name and the job reference from the
6
+ * previously selected variant to the new one, so this must not be replaced by a
7
+ * plain JSON patch on `fileUrl` / `mediaItemRef`.
8
+ */
9
+ export default function useSelectRenderJobVariant(): (id: string, mediaItemId: string) => Promise<any>;
10
+ //# sourceMappingURL=useSelectRenderJobVariant.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSelectRenderJobVariant.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/TableRenderJobs/hooks/useSelectRenderJobVariant.ts"],"names":[],"mappings":"AAMA;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,yBAAyB,SAMlC,MAAM,eAAe,MAAM,kBA+BzC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useUploadRenderJobImage.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/TableRenderJobs/hooks/useUploadRenderJobImage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAMpC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAkBrC;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAiCnG;AAED,MAAM,CAAC,OAAO,UAAU,uBAAuB;mBAY9B,IAAI,OAAO,SAAS,KAAG,OAAO,CAAC,IAAI,CAAC;;;EA2EpD"}
1
+ {"version":3,"file":"useUploadRenderJobImage.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/TableRenderJobs/hooks/useUploadRenderJobImage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAOpC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAkBrC;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAiCnG;AAED,MAAM,CAAC,OAAO,UAAU,uBAAuB;mBAa9B,IAAI,OAAO,SAAS,KAAG,OAAO,CAAC,IAAI,CAAC;;;EAmFpD"}
@@ -10,6 +10,21 @@ export interface RenderImage {
10
10
  mediaItemRefId?: string;
11
11
  url: string;
12
12
  }
13
+ /**
14
+ * One generated AI output image of a multi-variant render job.
15
+ *
16
+ * Not to be confused with {@link RenderImage}, which holds the *input* images
17
+ * sent to the AI. The variant currently taken over as the product image is the
18
+ * one referenced by the job's `mediaItems[0]` - it is not flagged separately.
19
+ */
20
+ export interface RenderImageVariant {
21
+ url: string;
22
+ mediaItemId?: string;
23
+ mediaItemRefId?: string;
24
+ /** Zero-based position in the generated batch. */
25
+ index: number;
26
+ created?: number;
27
+ }
13
28
  /**
14
29
  * Subset of the render job payload returned by `GET /renderjobs/:id`
15
30
  * that the RenderApprove session actually uses. Extra fields from the API
@@ -43,6 +58,10 @@ export interface RenderJob {
43
58
  }[];
44
59
  /** Ordered list of input images sent to the AI, each with its CDN url and (when known) its MediaItemRef id. */
45
60
  renderImages?: RenderImage[];
61
+ /** How many image variants the AI engine was asked to generate (1-3). Undefined behaves like 1. */
62
+ nrOfVariants?: number;
63
+ /** The generated output images. Only present on jobs that requested more than one variant. */
64
+ imageVariants?: RenderImageVariant[];
46
65
  created?: number;
47
66
  [key: string]: any;
48
67
  }
@@ -72,6 +91,19 @@ export interface RenderApproveMedia {
72
91
  /** True for the realtime render preview slide (independent of its position). */
73
92
  isPreview?: boolean;
74
93
  }
94
+ /**
95
+ * One resolved image variant on the result side of the viewer. Carries the
96
+ * `mediaItemId` explicitly because that - not the ambiguous
97
+ * {@link RenderApproveMedia.id} - is the key the select endpoint expects.
98
+ */
99
+ export interface RenderApproveVariant extends RenderApproveMedia {
100
+ /** MediaItem of this variant; the payload of `POST /renderjobs/:id/variants/select`. */
101
+ mediaItemId: string;
102
+ /** Zero-based position in the generated batch, used for the "Variante 2/3" label. */
103
+ index: number;
104
+ /** True for the variant currently taken over as the product image. */
105
+ selected: boolean;
106
+ }
75
107
  export interface RenderApproveImages {
76
108
  /** First slide / fullscreen source (always the realtime render preview). */
77
109
  left?: RenderApproveMedia;
@@ -84,5 +116,11 @@ export interface RenderApproveImages {
84
116
  */
85
117
  leftSlides?: RenderApproveMedia[];
86
118
  right?: RenderApproveMedia;
119
+ /**
120
+ * All generated variants of an AI job, ordered by `index`. Empty for jobs that
121
+ * produced a single image - `right` alone is shown in that case, exactly as
122
+ * before variants existed.
123
+ */
124
+ rightSlides?: RenderApproveVariant[];
87
125
  }
88
126
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/TableRenderJobs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,MAAM,WAAW,4BAA6B,SAAQ,sBAAsB;IAC1E,IAAI,EAAE,iBAAiB,CAAC;CACzB;AACD,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,wFAAwF;AACxF,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACjE,+GAA+G;IAC/G,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qHAAqH;IACrH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,gHAAgH;IAChH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,gFAAgF;IAChF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,4EAA4E;IAC5E,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC5B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/TableRenderJobs/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,MAAM,WAAW,4BAA6B,SAAQ,sBAAsB;IAC1E,IAAI,EAAE,iBAAiB,CAAC;CACzB;AACD,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,wFAAwF;AACxF,MAAM,WAAW,WAAW;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACjE,+GAA+G;IAC/G,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,mGAAmG;IACnG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8FAA8F;IAC9F,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qHAAqH;IACrH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,gHAAgH;IAChH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,gFAAgF;IAChF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB;IAC9D,wFAAwF;IACxF,WAAW,EAAE,MAAM,CAAC;IACpB,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,4EAA4E;IAC5E,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAClC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;CACtC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crystaldesign/diva-backoffice",
3
- "version": "26.10.0-beta.6",
3
+ "version": "26.10.0-beta.7",
4
4
  "license": "COMMERCIAL",
5
5
  "devDependencies": {
6
6
  "@testing-library/jest-dom": "^6.5.0",
@@ -15,13 +15,13 @@
15
15
  "dependencies": {
16
16
  "@ant-design/icons": "6.1.0",
17
17
  "@babel/runtime": "7.24.7",
18
- "@crystaldesign/content-box": "26.10.0-beta.6",
19
- "@crystaldesign/content-item": "26.10.0-beta.6",
20
- "@crystaldesign/diva-core": "26.10.0-beta.6",
21
- "@crystaldesign/diva-utils": "26.10.0-beta.6",
22
- "@crystaldesign/media-upload": "26.10.0-beta.6",
23
- "@crystaldesign/rtf-editor": "26.10.0-beta.6",
24
- "@crystaldesign/spreadsheet": "26.10.0-beta.6",
18
+ "@crystaldesign/content-box": "26.10.0-beta.7",
19
+ "@crystaldesign/content-item": "26.10.0-beta.7",
20
+ "@crystaldesign/diva-core": "26.10.0-beta.7",
21
+ "@crystaldesign/diva-utils": "26.10.0-beta.7",
22
+ "@crystaldesign/media-upload": "26.10.0-beta.7",
23
+ "@crystaldesign/rtf-editor": "26.10.0-beta.7",
24
+ "@crystaldesign/spreadsheet": "26.10.0-beta.7",
25
25
  "@dnd-kit/core": "^6.1.0",
26
26
  "@dnd-kit/sortable": "^8.0.0",
27
27
  "@dnd-kit/utilities": "^3.2.2",
@@ -56,5 +56,5 @@
56
56
  },
57
57
  "module": "build/esm/index.js",
58
58
  "types": "./build/types/backoffice/src/index.d.ts",
59
- "gitHead": "e05d5b8cd51067888edd5a637f8062d29c88d984"
59
+ "gitHead": "4d8b859e5ad0c1ccae103af3dbdbd7503593c2ce"
60
60
  }