@cellarnode/ui 0.212.0 → 0.213.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.
@@ -11,7 +11,7 @@ export const PORTFOLIO_COVER_ASPECT = 16 / 10;
11
11
  * frame and the `size-28` (112px) square thumbnail shown in the edit dialog.
12
12
  */
13
13
  export const PORTFOLIO_COVER_PLACEMENTS = [
14
- { id: "folderCard", label: "Folder card", width: 176, height: 110 },
14
+ { id: "folderCard", label: "Collection card", width: 176, height: 110 },
15
15
  { id: "dialogThumb", label: "Thumbnail", width: 112, height: 112 },
16
16
  ];
17
17
  /** Shared ProductCard media aspect (4 / 5 = 0.8). */
@@ -1 +1 @@
1
- {"version":3,"file":"portfolio-config.js","sourceRoot":"","sources":["../../src/image-upload/portfolio-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"portfolio-config.js","sourceRoot":"","sources":["../../src/image-upload/portfolio-config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"edit-portfolio-dialog.d.ts","sourceRoot":"","sources":["../../src/portfolio/edit-portfolio-dialog.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE7D,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,UAAU,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7E,aAAa,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,CAAC,CAAC,EAAE,WAAW,CAAC;CACjB;AASD,wBAAgB,mBAAmB,CAAC,EAClC,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,YAAoB,EACpB,cAAsB,EACtB,KAAY,EACZ,CAAY,GACb,EAAE,wBAAwB,2CA0R1B"}
1
+ {"version":3,"file":"edit-portfolio-dialog.d.ts","sourceRoot":"","sources":["../../src/portfolio/edit-portfolio-dialog.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE7D,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,UAAU,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7E,aAAa,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,CAAC,CAAC,EAAE,WAAW,CAAC;CACjB;AAUD,wBAAgB,mBAAmB,CAAC,EAClC,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,YAAoB,EACpB,cAAsB,EACtB,KAAY,EACZ,CAAY,GACb,EAAE,wBAAwB,2CAkT1B"}
@@ -6,14 +6,16 @@ import { Dialog, DialogActions, DialogBody, DialogDescription, DialogTitle, } fr
6
6
  import { Button } from "../components/button.js";
7
7
  import { Input } from "../components/input.js";
8
8
  import { Textarea } from "../components/textarea.js";
9
- import { ErrorMessage, Field, Label } from "../components/fieldset.js";
9
+ import { Description, ErrorMessage, Field, Label } from "../components/fieldset.js";
10
10
  import { CROP_OUTPUT, PORTFOLIO_COVER_ASPECT, PORTFOLIO_COVER_PLACEMENTS, croppedBlobToFile, } from "../image-upload/portfolio-config.js";
11
11
  const MAX_NAME_LENGTH = 255;
12
12
  const MAX_DESCRIPTION_LENGTH = 2000;
13
+ const MAX_COVER_ALT_LENGTH = 500;
13
14
  const defaultT = (key, fallback) => fallback || key;
14
15
  export function EditPortfolioDialog({ open, onClose, portfolio, onSubmit, onSetCover, onRemoveCover, isSubmitting = false, isCoverPending = false, error = null, t = defaultT, }) {
15
16
  const [name, setName] = useState("");
16
17
  const [description, setDescription] = useState("");
18
+ const [coverAltText, setCoverAltText] = useState("");
17
19
  const [fieldErrors, setFieldErrors] = useState({});
18
20
  const [localFormError, setLocalFormError] = useState(null);
19
21
  const [coverLoadFailed, setCoverLoadFailed] = useState(false);
@@ -27,6 +29,7 @@ export function EditPortfolioDialog({ open, onClose, portfolio, onSubmit, onSetC
27
29
  if (portfolio && seedKey) {
28
30
  setName(portfolio.name);
29
31
  setDescription(portfolio.description ?? "");
32
+ setCoverAltText("");
30
33
  setCoverLoadFailed(false);
31
34
  setFieldErrors({});
32
35
  setLocalFormError(null);
@@ -79,7 +82,9 @@ export function EditPortfolioDialog({ open, onClose, portfolio, onSubmit, onSetC
79
82
  };
80
83
  const handleCropConfirm = ({ blob }) => {
81
84
  const file = croppedBlobToFile(blob, cropFile?.name);
82
- void onSetCover({ file });
85
+ const altText = coverAltText.trim();
86
+ void onSetCover({ file, ...(altText ? { altText } : {}) });
87
+ setCoverLoadFailed(false);
83
88
  setCropFile(null);
84
89
  };
85
90
  const handleRemoveCover = () => {
@@ -89,7 +94,7 @@ export function EditPortfolioDialog({ open, onClose, portfolio, onSubmit, onSetC
89
94
  };
90
95
  const isBusy = isSubmitting || isCoverPending;
91
96
  const displayError = localFormError || error;
92
- return (_jsxs(Dialog, { open: open, onClose: onClose, size: "lg", children: [_jsx(DialogTitle, { children: t("portfolio.folders.edit.title", "Edit Portfolio") }), _jsx(DialogDescription, { children: t("portfolio.folders.edit.description", "Update the portfolio name, description, or cover image.") }), _jsx(DialogBody, { children: _jsxs("div", { className: "flex flex-col gap-5", children: [displayError ? (_jsx("p", { role: "alert", className: "rounded-lg bg-[var(--tone-danger-soft)] px-3 py-2 text-sm text-[var(--tone-danger-fg)]", children: displayError })) : null, _jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("p", { className: "text-sm font-medium text-foreground", children: t("portfolio.folders.edit.coverLabel", "Cover image") }), _jsxs("div", { className: "flex items-start gap-4", children: [_jsxs("div", { className: "relative size-28 shrink-0 overflow-hidden rounded-xl border border-border/60 bg-muted", children: [coverImage && !coverLoadFailed ? (_jsx("img", { src: coverImage.url, alt: coverImage.altText ?? "", className: "size-full object-cover", onError: () => setCoverLoadFailed(true) })) : (_jsx("div", { className: "flex size-full items-center justify-center bg-muted text-xs text-muted-foreground", children: t("portfolio.folders.edit.coverNone", "No cover") })), isCoverPending && (_jsx("div", { className: "absolute inset-0 flex items-center justify-center bg-background/60 backdrop-blur-sm", children: _jsx("div", { className: "size-6 animate-spin rounded-full border-2 border-primary border-t-transparent motion-reduce:animate-none" }) }))] }), _jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", className: "hidden", onChange: handleFileSelect, disabled: isBusy }), _jsxs(Button, { outline: true, type: "button", onClick: () => fileInputRef.current?.click(), disabled: isBusy, children: [_jsx(Upload, { className: "size-4 mr-2" }), coverImage
97
+ return (_jsxs(Dialog, { open: open, onClose: onClose, size: "lg", children: [_jsx(DialogTitle, { children: t("portfolio.folders.edit.title", "Edit Collection") }), _jsx(DialogDescription, { children: t("portfolio.folders.edit.description", "Update the collection name, description, or cover image.") }), _jsx(DialogBody, { children: _jsxs("div", { className: "flex flex-col gap-5", children: [displayError ? (_jsx("p", { role: "alert", className: "rounded-lg bg-[var(--tone-danger-soft)] px-3 py-2 text-sm text-[var(--tone-danger-fg)]", children: displayError })) : null, _jsxs("div", { className: "flex flex-col gap-2", children: [_jsxs(Field, { className: "flex flex-col gap-2", children: [_jsx(Label, { htmlFor: "edit-portfolio-cover-alt-text", children: t("portfolio.folders.edit.nextCoverAltTextLabel", "Next cover image description") }), _jsx(Input, { id: "edit-portfolio-cover-alt-text", value: coverAltText, maxLength: MAX_COVER_ALT_LENGTH, "aria-describedby": "edit-portfolio-cover-alt-text-hint", onChange: (event) => setCoverAltText(event.target.value), disabled: isBusy }), _jsx(Description, { id: "edit-portfolio-cover-alt-text-hint", children: t("portfolio.folders.edit.nextCoverAltTextHint", "Enter this before choosing or replacing the cover. Save cover in the crop step to include it. Save changes updates only the collection name and description; it does not save this text. Leave empty if decorative.") })] }), _jsx("p", { className: "text-sm font-medium text-foreground", children: t("portfolio.folders.edit.coverLabel", "Cover image") }), _jsxs("div", { className: "flex items-start gap-4", children: [_jsxs("div", { className: "relative size-28 shrink-0 overflow-hidden rounded-xl border border-border/60 bg-muted", children: [coverImage && !coverLoadFailed ? (_jsx("img", { src: coverImage.url, alt: coverImage.altText ?? "", className: "size-full object-cover", onError: () => setCoverLoadFailed(true) })) : (_jsx("div", { className: "flex size-full items-center justify-center bg-muted text-xs text-muted-foreground", children: t("portfolio.folders.edit.coverNone", "No cover") })), isCoverPending && (_jsx("div", { className: "absolute inset-0 flex items-center justify-center bg-background/60 backdrop-blur-sm", children: _jsx("div", { className: "size-6 animate-spin rounded-full border-2 border-primary border-t-transparent motion-reduce:animate-none" }) }))] }), _jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("input", { ref: fileInputRef, type: "file", accept: "image/*", className: "hidden", onChange: handleFileSelect, disabled: isBusy }), _jsxs(Button, { outline: true, type: "button", onClick: () => fileInputRef.current?.click(), disabled: isBusy, children: [_jsx(Upload, { className: "size-4 mr-2" }), coverImage
93
98
  ? t("portfolio.folders.edit.coverReplace", "Replace cover")
94
99
  : t("portfolio.folders.edit.coverUpload", "Upload cover")] }), coverImage && (_jsxs(Button, { plain: true, type: "button", onClick: handleRemoveCover, disabled: isBusy, className: "text-destructive", children: [_jsx(Trash, { className: "size-4 mr-2" }), t("portfolio.folders.edit.coverRemove", "Remove cover")] }))] })] })] }), _jsxs(Field, { className: "flex flex-col gap-2", children: [_jsx(Label, { htmlFor: "edit-portfolio-name", children: t("portfolio.folders.edit.nameLabel", "Name") }), _jsx(Input, { id: "edit-portfolio-name", ref: nameInputRef, value: name, invalid: Boolean(fieldErrors.name), "aria-invalid": fieldErrors.name ? true : undefined, "aria-required": "true", "aria-describedby": fieldErrors.name ? "edit-portfolio-name-error" : undefined, onChange: (event) => {
95
100
  setName(event.target.value);
@@ -99,11 +104,11 @@ export function EditPortfolioDialog({ open, onClose, portfolio, onSubmit, onSetC
99
104
  setDescription(event.target.value);
100
105
  setFieldErrors((current) => ({ ...current, description: undefined }));
101
106
  setLocalFormError(null);
102
- }, placeholder: t("portfolio.folders.edit.descriptionPlaceholder", "Brief description of this portfolio"), rows: 3, disabled: isBusy }), fieldErrors.description ? (_jsx(ErrorMessage, { id: "edit-portfolio-description-error", children: fieldErrors.description })) : null] })] }) }), _jsxs(DialogActions, { children: [_jsx(Button, { plain: true, onClick: onClose, disabled: isBusy, children: t("portfolio.folders.edit.cancel", "Cancel") }), _jsx(Button, { color: "emerald", onClick: () => void handleSave(), disabled: isBusy, children: isSubmitting
107
+ }, placeholder: t("portfolio.folders.edit.descriptionPlaceholder", "Brief description of this collection"), rows: 3, disabled: isBusy }), fieldErrors.description ? (_jsx(ErrorMessage, { id: "edit-portfolio-description-error", children: fieldErrors.description })) : null] })] }) }), _jsxs(DialogActions, { children: [_jsx(Button, { plain: true, onClick: onClose, disabled: isBusy, children: t("portfolio.folders.edit.cancel", "Cancel") }), _jsx(Button, { color: "emerald", onClick: () => void handleSave(), disabled: isBusy, children: isSubmitting
103
108
  ? t("portfolio.folders.edit.saving", "Saving...")
104
109
  : t("portfolio.folders.edit.save", "Save changes") })] }), cropFile && (_jsx(ImageCropDialog, { open: true, file: cropFile, aspect: PORTFOLIO_COVER_ASPECT, placements: PORTFOLIO_COVER_PLACEMENTS, output: CROP_OUTPUT, labels: {
105
110
  title: t("portfolio.folders.edit.coverCropTitle", "Crop cover image"),
106
- description: t("portfolio.folders.edit.coverCropDescription", "Drag to reposition and zoom. You will see exactly how the cover appears on the folder card and thumbnail."),
111
+ description: t("portfolio.folders.edit.coverCropDescription", "Drag to reposition and zoom. You will see how the cover appears on the collection card and thumbnail."),
107
112
  zoom: t("portfolio.folders.edit.coverCropZoom", "Zoom"),
108
113
  previewHeading: t("portfolio.folders.edit.coverCropPreviewHeading", "Preview"),
109
114
  cancel: t("portfolio.folders.edit.cancel", "Cancel"),
@@ -1 +1 @@
1
- {"version":3,"file":"edit-portfolio-dialog.js","sourceRoot":"","sources":["../../src/portfolio/edit-portfolio-dialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit-portfolio-dialog.js","sourceRoot":"","sources":["../../src/portfolio/edit-portfolio-dialog.tsx"],"names":[],"mappings":"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"}
@@ -30,12 +30,10 @@ export interface PortfolioFolderCardProps {
30
30
  className?: string;
31
31
  }
32
32
  /**
33
- * Individual folder card on the portfolio landing page (lifted from the
34
- * producer dashboard — the gold standard per CEL-1348). Uses `coverUrl` when
35
- * set; otherwise falls back to the deterministic gradient placeholder (or the
36
- * `placeholderSlot` override). Hover physics match the producer glass cards:
37
- * lift, cover scale, fade-in kebab menu (the `portfolio-folder-card` hover
38
- * shadow lives in the ui theme tokens).
33
+ * Individual collection card on the portfolio landing page. Uses `coverUrl`
34
+ * when set; otherwise falls back to the deterministic placeholder (or the
35
+ * `placeholderSlot` override). Cover art leads the composition, while the
36
+ * name and item count remain readable as separate content below it.
39
37
  *
40
38
  * The primary action is a stretched link/button behind the card body — the
41
39
  * kebab sits above it on its own z-layer, so no interactive element is ever
@@ -1 +1 @@
1
- {"version":3,"file":"portfolio-folder-card.d.ts","sourceRoot":"","sources":["../../src/portfolio/portfolio-folder-card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAY/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEpF,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,gBAAgB,CAAC;IAC5B;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACnD,oDAAoD;IACpD,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,qEAAqE;IACrE,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC;IACnD,CAAC,CAAC,EAAE,WAAW,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAcD;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,EACT,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,SAAS,EACT,eAAe,EACf,eAAe,EACf,CAAC,EACD,SAAS,GACV,EAAE,wBAAwB,2CAgJ1B"}
1
+ {"version":3,"file":"portfolio-folder-card.d.ts","sourceRoot":"","sources":["../../src/portfolio/portfolio-folder-card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAY/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEpF,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,gBAAgB,CAAC;IAC5B;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACnD,oDAAoD;IACpD,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,qEAAqE;IACrE,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC;IACnD,CAAC,CAAC,EAAE,WAAW,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAcD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,EACT,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,SAAS,EACT,eAAe,EACf,eAAe,EACf,CAAC,EACD,SAAS,GACV,EAAE,wBAAwB,2CA+I1B"}
@@ -18,12 +18,10 @@ function defaultFormatUpdatedAt(value) {
18
18
  return formatDistanceToNow(date, { addSuffix: true });
19
19
  }
20
20
  /**
21
- * Individual folder card on the portfolio landing page (lifted from the
22
- * producer dashboard — the gold standard per CEL-1348). Uses `coverUrl` when
23
- * set; otherwise falls back to the deterministic gradient placeholder (or the
24
- * `placeholderSlot` override). Hover physics match the producer glass cards:
25
- * lift, cover scale, fade-in kebab menu (the `portfolio-folder-card` hover
26
- * shadow lives in the ui theme tokens).
21
+ * Individual collection card on the portfolio landing page. Uses `coverUrl`
22
+ * when set; otherwise falls back to the deterministic placeholder (or the
23
+ * `placeholderSlot` override). Cover art leads the composition, while the
24
+ * name and item count remain readable as separate content below it.
27
25
  *
28
26
  * The primary action is a stretched link/button behind the card body — the
29
27
  * kebab sits above it on its own z-layer, so no interactive element is ever
@@ -62,12 +60,12 @@ export function PortfolioFolderCard({ portfolio, href, onOpen, onAction, kebabSl
62
60
  const isLink = typeof href === "string" && href.length > 0;
63
61
  // Stretched primary action: covers the whole card via after:inset-0 at z-10;
64
62
  // the kebab layer sits at z-20 above it.
65
- const primaryActionClassName = "text-left outline-hidden after:absolute after:inset-0 after:z-10 after:rounded-[28px] focus-visible:after:outline-2 focus-visible:after:outline-offset-2 focus-visible:after:outline-ring";
63
+ const primaryActionClassName = "block line-clamp-2 text-left break-words outline-hidden after:absolute after:inset-0 after:z-10 after:rounded-xl focus-visible:after:outline-2 focus-visible:after:outline-offset-2 focus-visible:after:outline-ring";
66
64
  const title = isLink ? (_jsx("a", { href: href, className: primaryActionClassName, children: portfolio.name })) : typeof onOpen === "function" ? (_jsx("button", { type: "button", onClick: onOpen, className: primaryActionClassName, children: portfolio.name })) : (portfolio.name);
67
65
  const kebab = kebabSlot ??
68
- (onAction ? (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(CardActionsTrigger, { size: 32, className: "border border-white/20 bg-white/95 shadow-md backdrop-blur-md hover:bg-white", "aria-label": tt("folderCard.actionsLabel", "Portfolio actions") }) }), _jsxs(DropdownMenuContent, { align: "end", children: [_jsx(DropdownMenuItem, { onSelect: () => onAction("edit"), children: tt("folderCard.edit", "Edit details") }), _jsx(DropdownMenuItem, { onSelect: () => onAction(portfolio.isDefault ? "remove-default" : "set-default"), children: portfolio.isDefault
66
+ (onAction ? (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(CardActionsTrigger, { size: 32, className: "border border-border bg-card/95 text-card-foreground shadow-sm hover:bg-card", "aria-label": tt("folderCard.actionsLabel", "Collection actions") }) }), _jsxs(DropdownMenuContent, { align: "end", children: [_jsx(DropdownMenuItem, { onSelect: () => onAction("edit"), children: tt("folderCard.edit", "Edit details") }), _jsx(DropdownMenuItem, { onSelect: () => onAction(portfolio.isDefault ? "remove-default" : "set-default"), children: portfolio.isDefault
69
67
  ? tt("folderCard.removeDefault", "Remove default")
70
- : tt("folderCard.setDefault", "Set as default") }), _jsx(DropdownMenuSeparator, {}), _jsx(DropdownMenuItem, { variant: "destructive", onSelect: () => onAction("delete"), children: tt("folderCard.delete", "Delete portfolio") })] })] })) : null);
71
- return (_jsxs("div", { className: cn("portfolio-folder-card group relative flex h-full flex-col overflow-hidden rounded-[28px] border border-border/60 bg-card shadow-sm transition-[transform,box-shadow,border-color] duration-300 ease-[var(--ease-emphasized)] hover:-translate-y-1 hover:border-primary/30 hover:shadow-xl", className), children: [_jsxs("div", { className: "relative m-2 overflow-hidden rounded-[22px]", children: [_jsx("div", { className: "relative aspect-[16/10] bg-muted", children: showCover && coverUrl ? (_jsx("img", { src: coverUrl, alt: portfolio.coverAltText ?? "", width: portfolio.coverWidth != null ? Number(portfolio.coverWidth) : undefined, height: portfolio.coverHeight != null ? Number(portfolio.coverHeight) : undefined, className: "size-full object-cover transition-transform duration-500 ease-[var(--ease-emphasized)] group-hover:scale-[1.06]", loading: "lazy", onError: () => setCoverLoadFailed(true) })) : (_jsx("div", { className: "size-full transition-transform duration-500 ease-[var(--ease-emphasized)] group-hover:scale-[1.04]", children: placeholderSlot ?? (_jsx(PortfolioCoverPlaceholder, { entityId: portfolio.id, name: portfolio.name })) })) }), countLabel && (_jsx("div", { className: "absolute bottom-3.5 left-3.5 rounded-full border border-white/20 bg-white/90 px-3.5 py-2 text-xs font-semibold text-foreground shadow-md backdrop-blur-md", children: countLabel })), portfolio.isDefault && (_jsx("div", { className: "absolute left-3 top-3 rounded-full border border-white/25 bg-white/85 px-2.5 py-1 text-xs font-semibold uppercase tracking-[0.1em] text-primary shadow-sm backdrop-blur-md", children: tt("folderCard.defaultLabel", "Default") })), kebab && (_jsx("div", { className: "absolute right-3 top-3 z-20 translate-x-1 scale-90 opacity-0 transition-[transform,opacity] duration-200 ease-[var(--ease-emphasized)] focus-within:translate-x-0 focus-within:scale-100 focus-within:opacity-100 group-hover:translate-x-0 group-hover:scale-100 group-hover:opacity-100", children: kebab }))] }), _jsxs("div", { className: "flex flex-1 flex-col px-5 pb-5 pt-1", children: [_jsx("h3", { className: "font-display text-lg/6 font-bold tracking-tight text-foreground", children: title }), portfolio.description && (_jsx("p", { className: "mt-1 line-clamp-2 text-sm text-muted-foreground", children: portfolio.description })), updatedLabel && (_jsxs("div", { className: "mt-auto pt-3", children: [_jsx("div", { className: "mb-2 h-px bg-linear-to-r from-transparent via-primary/15 to-transparent" }), _jsx("div", { className: "text-xs text-muted-foreground", children: interpolate(tt("folderCard.updatedAt", "Updated {{when}}"), { when: updatedLabel }) })] }))] })] }));
68
+ : tt("folderCard.setDefault", "Set as default") }), _jsx(DropdownMenuSeparator, {}), _jsx(DropdownMenuItem, { variant: "destructive", onSelect: () => onAction("delete"), children: tt("folderCard.delete", "Delete collection") })] })] })) : null);
69
+ return (_jsxs("div", { className: cn("group relative flex h-full flex-col overflow-hidden rounded-xl border border-border bg-card transition-transform duration-[var(--duration-standard)] ease-[var(--ease-emphasized)] hover:-translate-y-0.5 hover:border-primary/35 hover:shadow-soft", className), children: [_jsxs("div", { className: "relative overflow-hidden rounded-t-xl", children: [_jsx("div", { className: "relative aspect-[16/10] bg-muted", children: showCover && coverUrl ? (_jsx("img", { src: coverUrl, alt: portfolio.coverAltText ?? "", width: portfolio.coverWidth != null ? Number(portfolio.coverWidth) : undefined, height: portfolio.coverHeight != null ? Number(portfolio.coverHeight) : undefined, className: "size-full object-cover transition-transform duration-[var(--duration-standard)] ease-[var(--ease-emphasized)] group-hover:scale-[1.03]", loading: "lazy", onError: () => setCoverLoadFailed(true) })) : (_jsx("div", { className: "size-full transition-transform duration-[var(--duration-standard)] ease-[var(--ease-emphasized)] group-hover:scale-[1.02]", children: placeholderSlot ?? (_jsx(PortfolioCoverPlaceholder, { entityId: portfolio.id, name: portfolio.name })) })) }), countLabel && (_jsx("div", { className: "absolute bottom-3 left-3 rounded-full border border-border bg-card/95 px-3 py-1.5 text-xs font-semibold text-card-foreground shadow-sm", children: countLabel })), portfolio.isDefault && (_jsx("div", { className: "absolute left-3 top-3 rounded-full border border-border bg-card/95 px-2.5 py-1 text-xs font-semibold uppercase tracking-[0.1em] text-primary shadow-sm", children: tt("folderCard.defaultLabel", "Default") })), kebab && (_jsx("div", { className: "absolute right-3 top-3 z-20 translate-x-1 scale-90 opacity-0 transition-[transform,opacity] duration-[var(--duration-micro)] ease-[var(--ease-emphasized)] focus-within:translate-x-0 focus-within:scale-100 focus-within:opacity-100 group-hover:translate-x-0 group-hover:scale-100 group-hover:opacity-100 [@media(hover:none)]:translate-x-0 [@media(hover:none)]:scale-100 [@media(hover:none)]:opacity-100", children: kebab }))] }), _jsxs("div", { className: "flex flex-1 flex-col px-4 pb-4 pt-3", children: [_jsx("h3", { className: "font-display text-lg/6 font-semibold tracking-tight text-foreground", children: title }), portfolio.description && (_jsx("p", { className: "mt-1 line-clamp-2 text-sm/5 text-muted-foreground", children: portfolio.description })), updatedLabel && (_jsx("div", { className: "mt-auto pt-3 text-xs/4 text-muted-foreground", children: interpolate(tt("folderCard.updatedAt", "Updated {{when}}"), { when: updatedLabel }) }))] })] }));
72
70
  }
73
71
  //# sourceMappingURL=portfolio-folder-card.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"portfolio-folder-card.js","sourceRoot":"","sources":["../../src/portfolio/portfolio-folder-card.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"portfolio-folder-card.js","sourceRoot":"","sources":["../../src/portfolio/portfolio-folder-card.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"product-editor-hero.d.ts","sourceRoot":"","sources":["../../src/product-editor/product-editor-hero.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIpD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;QACxB,QAAQ,CAAC,EAAE,WAAW,CAAC;YACrB,EAAE,CAAC,EAAE,MAAM,CAAC;YACZ,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;YACrB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;SACtB,CAAC,CAAC;KACJ,CAAC;IACF,SAAS,CAAC,EAAE;QACV,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CAChD;AAED,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAc,EACd,YAAY,EACZ,SAAS,GACV,EAAE,sBAAsB,2CA+ExB"}
1
+ {"version":3,"file":"product-editor-hero.d.ts","sourceRoot":"","sources":["../../src/product-editor/product-editor-hero.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIpD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;QACxB,QAAQ,CAAC,EAAE,WAAW,CAAC;YACrB,EAAE,CAAC,EAAE,MAAM,CAAC;YACZ,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;YACrB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;SACtB,CAAC,CAAC;KACJ,CAAC;IACF,SAAS,CAAC,EAAE;QACV,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CAChD;AAED,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAc,EACd,YAAY,EACZ,SAAS,GACV,EAAE,sBAAsB,2CA8ExB"}
@@ -6,8 +6,8 @@ export function ProductEditorHero({ backLink, thumbnail, eyebrow, title, metaIte
6
6
  const [coverLoadFailed, setCoverLoadFailed] = React.useState(false);
7
7
  const backLinkContent = (_jsxs(_Fragment, { children: [_jsx(ArrowLeftIcon, { className: "size-3.5", "aria-hidden": "true" }), backLink.label] }));
8
8
  const backLinkClassName = "inline-flex items-center gap-1.5 self-start text-xs font-medium text-muted-foreground transition-colors hover:text-foreground";
9
- return (_jsxs("div", { className: "relative flex flex-col gap-6", children: [aboveSlot && _jsx("div", { children: aboveSlot }), backLink.renderAs ? (_jsx(backLink.renderAs, { to: backLink.href, href: backLink.href, onClick: backLink.onNavigate, className: backLinkClassName, children: backLinkContent })) : backLink.href ? (_jsx("a", { href: backLink.href, onClick: backLink.onNavigate, className: backLinkClassName, children: backLinkContent })) : (_jsx("button", { type: "button", onClick: backLink.onNavigate, className: backLinkClassName, children: backLinkContent })), _jsx("div", { className: "elevated-panel animate-in fade-in slide-in-from-bottom-2 fill-mode-both rounded-2xl p-6 duration-300", children: _jsxs("div", { className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between", children: [_jsxs("div", { className: "flex items-center gap-4", children: [_jsx("div", { className: "flex size-18 shrink-0 items-center justify-center overflow-hidden rounded-2xl border border-border/50 bg-muted/60 p-2 shadow-inner", children: thumbnail?.url && !coverLoadFailed ? (_jsx("img", { src: thumbnail.url, alt: thumbnail.altText ?? title, className: "size-full object-contain", onError: () => setCoverLoadFailed(true) })) : (_jsx(PortfolioCoverPlaceholder, { entityId: thumbnail?.fallbackEntityId ?? "new", name: thumbnail?.fallbackName ?? title })) }), _jsxs("div", { className: "min-w-0", children: [eyebrow && (_jsx("p", { className: "mb-1 text-xs font-semibold uppercase tracking-[0.16em] text-primary/70", children: eyebrow })), _jsx("h1", { className: "font-display text-2xl font-bold tracking-tight sm:text-3xl text-foreground", children: title }), metaItems.length > 0 && (_jsx("div", { className: "mt-1.5 flex flex-wrap items-center gap-2", children: metaItems.map((item, i) => (
10
- // eslint-disable-next-line @eslint-react/no-array-index-key
11
- _jsx(React.Fragment, { children: item }, i))) }))] })] }), trailingSlot && _jsx("div", { className: "flex shrink-0", children: trailingSlot })] }) })] }));
9
+ return (_jsxs("div", { "data-slot": "product-editor-hero", className: "relative flex flex-col gap-3 sm:gap-4 [@media(max-height:520px)]:gap-2", children: [aboveSlot && _jsx("div", { children: aboveSlot }), backLink.renderAs ? (_jsx(backLink.renderAs, { to: backLink.href, href: backLink.href, onClick: backLink.onNavigate, className: backLinkClassName, children: backLinkContent })) : backLink.href ? (_jsx("a", { href: backLink.href, onClick: backLink.onNavigate, className: backLinkClassName, children: backLinkContent })) : (_jsx("button", { type: "button", onClick: backLink.onNavigate, className: backLinkClassName, children: backLinkContent })), _jsx("div", { className: "rounded-2xl border border-border/70 bg-card p-3 shadow-soft sm:p-5 [@media(max-height:520px)]:p-2", children: _jsxs("div", { className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-3 sm:gap-4", children: [_jsx("div", { className: "flex size-16 shrink-0 items-center justify-center overflow-hidden rounded-xl border border-border/70 bg-primary-soft/40 p-1.5 shadow-soft sm:size-18 [@media(max-height:520px)]:size-12", children: thumbnail?.url && !coverLoadFailed ? (_jsx("img", { src: thumbnail.url, alt: thumbnail.altText ?? title, className: "size-full object-contain", onError: () => setCoverLoadFailed(true) })) : (_jsx(PortfolioCoverPlaceholder, { entityId: thumbnail?.fallbackEntityId ?? "new", name: thumbnail?.fallbackName ?? title })) }), _jsxs("div", { className: "min-w-0", children: [_jsx("h1", { className: "font-display text-xl font-bold tracking-tight text-foreground sm:text-2xl", children: title }), (eyebrow || metaItems.length > 0) && (_jsxs("div", { className: "mt-1.5 flex flex-wrap items-center gap-2", children: [eyebrow && _jsx("span", { className: "text-sm text-muted-foreground", children: eyebrow }), metaItems.map((item, i) => (
10
+ // eslint-disable-next-line @eslint-react/no-array-index-key
11
+ _jsx(React.Fragment, { children: item }, i)))] }))] })] }), trailingSlot && _jsx("div", { className: "flex shrink-0", children: trailingSlot })] }) })] }));
12
12
  }
13
13
  //# sourceMappingURL=product-editor-hero.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"product-editor-hero.js","sourceRoot":"","sources":["../../src/product-editor/product-editor-hero.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AA6BtF,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAS,GAAG,EAAE,EACd,YAAY,EACZ,SAAS,GACc;IACvB,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpE,MAAM,eAAe,GAAG,CACtB,8BACE,KAAC,aAAa,IAAC,SAAS,EAAC,UAAU,iBAAa,MAAM,GAAG,EACxD,QAAQ,CAAC,KAAK,IACd,CACJ,CAAC;IAEF,MAAM,iBAAiB,GACrB,+HAA+H,CAAC;IAElI,OAAO,CACL,eAAK,SAAS,EAAC,8BAA8B,aAC1C,SAAS,IAAI,wBAAM,SAAS,GAAO,EAEnC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CACnB,KAAC,QAAQ,CAAC,QAAQ,IAChB,EAAE,EAAE,QAAQ,CAAC,IAAI,EACjB,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,OAAO,EAAE,QAAQ,CAAC,UAAU,EAC5B,SAAS,EAAE,iBAAiB,YAE3B,eAAe,GACE,CACrB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAClB,YAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,iBAAiB,YAC/E,eAAe,GACd,CACL,CAAC,CAAC,CAAC,CACF,iBAAQ,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,iBAAiB,YAC7E,eAAe,GACT,CACV,EAED,cAAK,SAAS,EAAC,sGAAsG,YACnH,eAAK,SAAS,EAAC,oEAAoE,aACjF,eAAK,SAAS,EAAC,yBAAyB,aACtC,cAAK,SAAS,EAAC,oIAAoI,YAChJ,SAAS,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CACpC,cACE,GAAG,EAAE,SAAS,CAAC,GAAG,EAClB,GAAG,EAAE,SAAS,CAAC,OAAO,IAAI,KAAK,EAC/B,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,GACvC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,yBAAyB,IACxB,QAAQ,EAAE,SAAS,EAAE,gBAAgB,IAAI,KAAK,EAC9C,IAAI,EAAE,SAAS,EAAE,YAAY,IAAI,KAAK,GACtC,CACH,GACG,EAEN,eAAK,SAAS,EAAC,SAAS,aACrB,OAAO,IAAI,CACV,YAAG,SAAS,EAAC,wEAAwE,YAClF,OAAO,GACN,CACL,EACD,aAAI,SAAS,EAAC,4EAA4E,YACvF,KAAK,GACH,EACJ,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACvB,cAAK,SAAS,EAAC,0CAA0C,YACtD,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;4CAC1B,4DAA4D;4CAC5D,KAAC,KAAK,CAAC,QAAQ,cAAU,IAAI,IAAR,CAAC,CAAyB,CAChD,CAAC,GACE,CACP,IACG,IACF,EACL,YAAY,IAAI,cAAK,SAAS,EAAC,eAAe,YAAE,YAAY,GAAO,IAChE,GACF,IACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"product-editor-hero.js","sourceRoot":"","sources":["../../src/product-editor/product-editor-hero.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AA6BtF,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAS,GAAG,EAAE,EACd,YAAY,EACZ,SAAS,GACc;IACvB,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpE,MAAM,eAAe,GAAG,CACtB,8BACE,KAAC,aAAa,IAAC,SAAS,EAAC,UAAU,iBAAa,MAAM,GAAG,EACxD,QAAQ,CAAC,KAAK,IACd,CACJ,CAAC;IAEF,MAAM,iBAAiB,GACrB,+HAA+H,CAAC;IAElI,OAAO,CACL,4BACY,qBAAqB,EAC/B,SAAS,EAAC,wEAAwE,aAEjF,SAAS,IAAI,wBAAM,SAAS,GAAO,EAEnC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CACnB,KAAC,QAAQ,CAAC,QAAQ,IAChB,EAAE,EAAE,QAAQ,CAAC,IAAI,EACjB,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,OAAO,EAAE,QAAQ,CAAC,UAAU,EAC5B,SAAS,EAAE,iBAAiB,YAE3B,eAAe,GACE,CACrB,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAClB,YAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,iBAAiB,YAC/E,eAAe,GACd,CACL,CAAC,CAAC,CAAC,CACF,iBAAQ,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,iBAAiB,YAC7E,eAAe,GACT,CACV,EAED,cAAK,SAAS,EAAC,mGAAmG,YAChH,eAAK,SAAS,EAAC,oEAAoE,aACjF,eAAK,SAAS,EAAC,0CAA0C,aACvD,cAAK,SAAS,EAAC,yLAAyL,YACrM,SAAS,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CACpC,cACE,GAAG,EAAE,SAAS,CAAC,GAAG,EAClB,GAAG,EAAE,SAAS,CAAC,OAAO,IAAI,KAAK,EAC/B,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,GACvC,CACH,CAAC,CAAC,CAAC,CACF,KAAC,yBAAyB,IACxB,QAAQ,EAAE,SAAS,EAAE,gBAAgB,IAAI,KAAK,EAC9C,IAAI,EAAE,SAAS,EAAE,YAAY,IAAI,KAAK,GACtC,CACH,GACG,EAEN,eAAK,SAAS,EAAC,SAAS,aACtB,aAAI,SAAS,EAAC,2EAA2E,YACtF,KAAK,GACH,EACJ,CAAC,OAAO,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CACpC,eAAK,SAAS,EAAC,0CAA0C,aACtD,OAAO,IAAI,eAAM,SAAS,EAAC,+BAA+B,YAAE,OAAO,GAAQ,EAC3E,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gDAC1B,4DAA4D;gDAC5D,KAAC,KAAK,CAAC,QAAQ,cAAU,IAAI,IAAR,CAAC,CAAyB,CAChD,CAAC,IACE,CACP,IACG,IACF,EACL,YAAY,IAAI,cAAK,SAAS,EAAC,eAAe,YAAE,YAAY,GAAO,IAChE,GACF,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -77,9 +77,9 @@ export function ProductEditorSaveBar({ isDirty, isSaving, validationError, valid
77
77
  errorOccurrences.set(message, occurrence + 1);
78
78
  return { key: `${message}:${occurrence}`, message };
79
79
  });
80
- return (_jsxs(_Fragment, { children: [_jsx("span", { "aria-live": "polite", "data-slot": "product-editor-save-bar-status", className: "sr-only", children: statusMessage }), isRendered && (_jsx("div", { ref: barRef, "data-slot": "product-editor-save-bar", inert: !isVisible || undefined, className: cn("static bottom-0 z-50 rounded-t-2xl border border-b-0 border-border/70 bg-background px-4 py-3 shadow-sm min-[20rem]:sticky sm:px-6 sm:py-4", "transition-[transform,opacity] duration-300 ease-in-out motion-reduce:transition-none", isVisible
80
+ return (_jsxs(_Fragment, { children: [_jsx("span", { "aria-live": "polite", "data-slot": "product-editor-save-bar-status", className: "sr-only", children: statusMessage }), isRendered && (_jsx("div", { ref: barRef, "data-slot": "product-editor-save-bar", inert: !isVisible || undefined, className: cn("static bottom-0 z-50 rounded-t-2xl border border-b-0 border-border/70 bg-background px-4 py-3 shadow-sm min-[20rem]:sticky sm:px-6 sm:py-4 [@media(max-height:520px)]:py-2", "transition-[transform,opacity] duration-300 ease-in-out motion-reduce:transition-none", isVisible
81
81
  ? "translate-y-0 opacity-100"
82
- : "translate-y-full opacity-0 pointer-events-none", className), children: _jsxs("div", { className: "flex flex-col sm:flex-row sm:items-end justify-between gap-4", children: [_jsxs("div", { className: "min-w-0 flex-1 flex flex-col gap-2", children: [validationError && (_jsxs("div", { role: "alert", className: "flex items-start gap-2.5 rounded-lg border px-3 py-2 text-sm/6", style: {
82
+ : "translate-y-full opacity-0 pointer-events-none", className), children: _jsxs("div", { className: "flex flex-col justify-between gap-4 sm:flex-row sm:items-end [@media(max-height:520px)]:gap-2", children: [_jsxs("div", { className: "min-w-0 flex-1 flex flex-col gap-2", children: [validationError && (_jsxs("div", { role: "alert", className: "flex items-start gap-2.5 rounded-lg border px-3 py-2 text-sm/6", style: {
83
83
  backgroundColor: "var(--tone-warning-soft)",
84
84
  borderColor: "var(--tone-warning-border)",
85
85
  color: "var(--tone-warning-fg)",
@@ -87,14 +87,14 @@ export function ProductEditorSaveBar({ isDirty, isSaving, validationError, valid
87
87
  backgroundColor: "var(--tone-danger-soft)",
88
88
  borderColor: "var(--tone-danger-border)",
89
89
  color: "var(--tone-danger-fg)",
90
- }, children: [_jsx(CircleAlertIcon, { className: "mt-1 size-4 shrink-0", "aria-hidden": "true" }), _jsx("div", { className: "min-w-0 flex-1", children: serverErrors.length === 1 ? (_jsx("p", { children: serverErrors[0] })) : (_jsx("ul", { className: "flex flex-col gap-1", children: keyedServerErrors.map(({ key, message }) => (_jsx("li", { children: message }, key))) })) })] })), !validationError && serverErrors.length === 0 && (_jsxs("div", { className: "flex items-center gap-2 text-sm/6 font-medium text-foreground py-1", children: [_jsx("span", { className: "size-2 rounded-full bg-primary", "aria-hidden": "true" }), tr("productEditor.saveBar.unsavedChanges", "Unsaved changes")] }))] }), _jsxs("div", { className: "flex shrink-0 flex-col items-stretch justify-end gap-2 min-[20rem]:flex-row sm:items-center sm:gap-3 py-1", children: [_jsx(Button, { plain: true, type: "button", "aria-disabled": isSaving || undefined, onClick: () => {
90
+ }, children: [_jsx(CircleAlertIcon, { className: "mt-1 size-4 shrink-0", "aria-hidden": "true" }), _jsx("div", { className: "min-w-0 flex-1", children: serverErrors.length === 1 ? (_jsx("p", { children: serverErrors[0] })) : (_jsx("ul", { className: "flex flex-col gap-1", children: keyedServerErrors.map(({ key, message }) => (_jsx("li", { children: message }, key))) })) })] })), !validationError && serverErrors.length === 0 && (_jsxs("div", { className: "flex items-center gap-2 text-sm/6 font-medium text-foreground py-1", children: [_jsx("span", { className: "size-2 rounded-full bg-primary", "aria-hidden": "true" }), tr("productEditor.saveBar.unsavedChanges", "Unsaved changes")] }))] }), _jsxs("div", { className: "flex w-full shrink-0 flex-col items-stretch justify-end gap-2 py-1 sm:w-auto sm:flex-row sm:items-center sm:gap-3 [@media(max-height:520px)]:gap-1", children: [_jsx(Button, { plain: true, type: "button", "aria-disabled": isSaving || undefined, onClick: () => {
91
91
  if (isSaving)
92
92
  return;
93
93
  onDiscard();
94
- }, className: "w-full text-center whitespace-normal min-[20rem]:min-w-0 min-[20rem]:flex-1 sm:w-auto sm:flex-none sm:whitespace-nowrap", children: tr("productEditor.saveBar.discard", "Discard changes") }), _jsx(Button, { color: "dark/zinc", type: "button", "data-slot": "product-editor-save", "aria-disabled": (!isDirty && serverErrors.length === 0) || isSaving || undefined, onClick: () => {
94
+ }, className: "h-auto min-h-10 w-full whitespace-normal py-2 text-center sm:h-10 sm:w-auto sm:flex-none sm:whitespace-nowrap sm:py-0", children: tr("productEditor.saveBar.discard", "Discard changes") }), _jsx(Button, { color: "dark/zinc", type: "button", "data-slot": "product-editor-save", "aria-disabled": (!isDirty && serverErrors.length === 0) || isSaving || undefined, onClick: () => {
95
95
  if ((!isDirty && serverErrors.length === 0) || isSaving)
96
96
  return;
97
97
  onSave();
98
- }, className: "w-full text-center whitespace-normal min-[20rem]:min-w-0 min-[20rem]:flex-1 sm:w-auto sm:flex-none sm:whitespace-nowrap", children: isSaving ? (_jsxs(_Fragment, { children: [_jsxs("svg", { "aria-hidden": "true", className: "size-4 animate-spin", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: [_jsx("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), _jsx("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" })] }), tr("productEditor.saveBar.saving", "Saving…")] })) : (tr("productEditor.saveBar.save", "Save product changes")) })] })] }) }))] }));
98
+ }, className: "h-auto min-h-10 w-full whitespace-normal py-2 text-center sm:h-10 sm:w-auto sm:flex-none sm:whitespace-nowrap sm:py-0", children: isSaving ? (_jsxs(_Fragment, { children: [_jsxs("svg", { "aria-hidden": "true", className: "size-4 animate-spin", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", children: [_jsx("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), _jsx("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" })] }), tr("productEditor.saveBar.saving", "Saving…")] })) : (tr("productEditor.saveBar.save", "Save product changes")) })] })] }) }))] }));
99
99
  }
100
100
  //# sourceMappingURL=product-editor-save-bar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"product-editor-save-bar.js","sourceRoot":"","sources":["../../src/product-editor/product-editor-save-bar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product-editor-save-bar.js","sourceRoot":"","sources":["../../src/product-editor/product-editor-save-bar.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"product-editor-surface.d.ts","sourceRoot":"","sources":["../../src/product-editor/product-editor-surface.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,IAAI,eAAe,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAMrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAOlD,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,wBAAwB,EAAE,SAAS,gBAAgB,EAO/D,CAAC;AAoBF,UAAU,yBAAyB;IACjC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAClD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC/D,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACzD,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACvD,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IAChE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtE,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,WAAW,EACX,IAAI,EACJ,WAAW,EACX,WAAW,EACX,aAAa,EACb,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,qBAAqB,EACrB,mBAAmB,EACnB,MAAM,EACN,SAAS,GACV,EAAE,yBAAyB,2CAsL3B"}
1
+ {"version":3,"file":"product-editor-surface.d.ts","sourceRoot":"","sources":["../../src/product-editor/product-editor-surface.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,IAAI,eAAe,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAMrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAOlD,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,wBAAwB,EAAE,SAAS,gBAAgB,EAO/D,CAAC;AAoBF,UAAU,yBAAyB;IACjC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAChD,QAAQ,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAClD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC/D,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACzD,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACvD,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;IAChE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtE,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,WAAW,EACX,IAAI,EACJ,WAAW,EACX,WAAW,EACX,aAAa,EACb,OAAO,EACP,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,qBAAqB,EACrB,mBAAmB,EACnB,MAAM,EACN,SAAS,GACV,EAAE,yBAAyB,2CA4N3B"}
@@ -60,9 +60,10 @@ const TAB_I18N_KEYS = {
60
60
  export function ProductEditorSurface({ editorProps, form, orderedTabs, renderedTab, fieldIdPrefix, isDirty, isEditorBusy, saveFailureErrors, saveFailureAlertRef, editorRootRef, tabsListRef, elabelTabRef, onFocusCapture, onTabChange, onNavigateToChemistry, onFocusInvalidField, onSave, onDiscard, }) {
61
61
  const { mode, locale, variantId, beverageId, showBeverageFields, requireVintage = false, autoFocusVintage = false, referenceData, classifications, showComposition = false, showProductionVolume = false, imageController, attachments, certificates, awards, certificateRecords, chemistrySection, labelData, onLabelSaveStateChange, qrSection, sensorySchema, sensorySchemaLoading, status, serverError, features, t, className, } = editorProps;
62
62
  const tr = t ?? ((_key, fallback) => fallback ?? _key);
63
- return (_jsxs("div", { ref: editorRootRef, tabIndex: -1, onFocusCapture: onFocusCapture, className: cn("flex min-w-0 flex-col gap-6 outline-hidden", className), children: [_jsx(ProductEditorValidationSummary, { form: form, sensorySchema: sensorySchema, fieldIdPrefix: fieldIdPrefix, onFocusInvalidField: onFocusInvalidField, t: t }), _jsx("fieldset", { disabled: isEditorBusy, className: "contents", children: _jsx("div", { className: "min-w-0", children: _jsxs(Tabs, { value: renderedTab, onValueChange: onTabChange, children: [_jsx(TabsList, { ref: tabsListRef, className: "max-w-full snap-x justify-start overflow-x-auto overscroll-x-contain", children: orderedTabs.map((tab) => (_jsx(TabsTrigger, { value: tab, className: "snap-start", children: tr(TAB_I18N_KEYS[tab], TAB_LABELS[tab]) }, tab))) }), orderedTabs.length > 3 && (_jsxs("p", { className: "mt-2 flex items-center gap-1.5 text-xs text-muted-foreground sm:hidden", children: [_jsx(MoveHorizontal, { "aria-hidden": "true", className: "size-4 shrink-0" }), tr("productEditor.tabs.scrollHint", "Swipe to view more sections")] })), orderedTabs.includes("essentials") && (_jsxs(TabsContent, { value: "essentials", className: "mt-6", children: [_jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.essentials, TAB_LABELS.essentials) }), _jsx(ProductEssentialsTab, { form: form, locale: locale, beverageId: beverageId, showBeverageFields: showBeverageFields, requireVintage: requireVintage, autoFocusVintage: autoFocusVintage && renderedTab === "essentials", referenceData: referenceData, classifications: classifications, compositionSchema: showComposition ? sensorySchema?.sections?.composition : undefined, showProductionVolume: showProductionVolume, fieldIdPrefix: fieldIdPrefix, t: t })] })), orderedTabs.includes("gallery") && (_jsxs(TabsContent, { value: "gallery", className: "mt-6", children: [_jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.gallery, TAB_LABELS.gallery) }), _jsx(ProductGalleryTab, { variantId: variantId, mode: mode, imageController: imageController, t: t })] })), orderedTabs.includes("sensory") && (_jsxs(TabsContent, { value: "sensory", className: "mt-6", children: [_jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.sensory, TAB_LABELS.sensory) }), _jsx(ProductSensoryTab, { form: form, sensorySchema: sensorySchema, sensorySchemaLoading: sensorySchemaLoading, fieldIdPrefix: fieldIdPrefix, t: t })] })), orderedTabs.includes("resources") && (_jsxs(TabsContent, { value: "resources", className: "mt-6", children: [_jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.resources, TAB_LABELS.resources) }), _jsx(ProductResourcesTab, { form: form, variantId: variantId, mode: mode, attachments: attachments, certificates: certificates, awards: awards, certificateRecords: certificateRecords, chemistrySection: chemistrySection, features: features, t: t })] })), orderedTabs.includes("e-label") && (_jsxs(TabsContent, { value: "e-label", forceMount: true, className: "mt-6 data-[state=inactive]:hidden", children: [_jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS["e-label"], TAB_LABELS["e-label"]) }), _jsx(ProductElabelTab, { ref: elabelTabRef, variantId: variantId, mode: mode, labelData: labelData, onSaveStateChange: onLabelSaveStateChange, qrSection: qrSection, onNavigateToChemistry: orderedTabs.includes("resources") && chemistrySection !== undefined
64
- ? onNavigateToChemistry
65
- : undefined, t: t })] })), orderedTabs.includes("status") && (_jsxs(TabsContent, { value: "status", className: "mt-6", children: [_jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.status, TAB_LABELS.status) }), _jsx(ProductStatusTab, { status: status, features: features, isDirty: isDirty, t: t })] }))] }) }) }), _jsx(ProductEditorSaveBar, { isDirty: isDirty, isSaving: isEditorBusy, serverError: serverError && !saveFailureErrors.includes(serverError)
63
+ const activeValidationSummary = (_jsx(ProductEditorValidationSummary, { form: form, sensorySchema: sensorySchema, fieldIdPrefix: fieldIdPrefix, onFocusInvalidField: onFocusInvalidField, t: t }));
64
+ return (_jsxs("div", { ref: editorRootRef, tabIndex: -1, onFocusCapture: onFocusCapture, "data-slot": "product-editor-surface", className: cn("flex min-h-0 min-w-0 flex-col gap-3 outline-hidden sm:gap-4 [@media(max-height:520px)]:gap-2", className), children: [_jsx("fieldset", { disabled: isEditorBusy, className: "contents", children: _jsx("div", { className: "flex min-h-0 min-w-0 flex-1 flex-col", children: _jsx("div", { className: "flex min-h-0 min-w-0 flex-1 flex-col overflow-clip rounded-2xl border border-border bg-card shadow-soft", children: _jsxs(Tabs, { value: renderedTab, onValueChange: onTabChange, className: "min-h-0 flex-1 gap-0", children: [_jsxs("div", { "data-slot": "product-editor-tab-rail", className: "flex shrink-0 flex-col gap-2 border-b border-border/70 bg-muted/30 px-3 py-2 sm:px-4 sm:py-3 [@media(max-height:520px)]:gap-1 [@media(max-height:520px)]:py-2", children: [_jsx(TabsList, { ref: tabsListRef, className: "w-full max-w-full snap-x justify-start overflow-x-auto overscroll-x-contain bg-muted/60 shadow-none", children: orderedTabs.map((tab) => (_jsx(TabsTrigger, { value: tab, className: "snap-start text-foreground", children: tr(TAB_I18N_KEYS[tab], TAB_LABELS[tab]) }, tab))) }), orderedTabs.length > 3 && (_jsxs("p", { className: "flex items-center gap-1.5 text-xs text-muted-foreground sm:hidden [@media(max-height:520px)]:hidden", children: [_jsx(MoveHorizontal, { "aria-hidden": "true", className: "size-4 shrink-0" }), tr("productEditor.tabs.scrollHint", "Swipe to view more sections")] }))] }), orderedTabs.includes("essentials") && (_jsxs(TabsContent, { value: "essentials", className: "mt-0 min-h-0 overflow-y-auto overscroll-contain px-4 py-5 sm:px-6 sm:py-6", children: [renderedTab === "essentials" && activeValidationSummary, _jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.essentials, TAB_LABELS.essentials) }), _jsx(ProductEssentialsTab, { form: form, locale: locale, beverageId: beverageId, showBeverageFields: showBeverageFields, requireVintage: requireVintage, autoFocusVintage: autoFocusVintage && renderedTab === "essentials", referenceData: referenceData, classifications: classifications, compositionSchema: showComposition ? sensorySchema?.sections?.composition : undefined, showProductionVolume: showProductionVolume, fieldIdPrefix: fieldIdPrefix, t: t })] })), orderedTabs.includes("gallery") && (_jsxs(TabsContent, { value: "gallery", className: "mt-0 min-h-0 overflow-y-auto overscroll-contain px-4 py-5 sm:px-6 sm:py-6", children: [renderedTab === "gallery" && activeValidationSummary, _jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.gallery, TAB_LABELS.gallery) }), _jsx(ProductGalleryTab, { variantId: variantId, mode: mode, imageController: imageController, t: t })] })), orderedTabs.includes("sensory") && (_jsxs(TabsContent, { value: "sensory", className: "mt-0 min-h-0 overflow-y-auto overscroll-contain px-4 py-5 sm:px-6 sm:py-6", children: [renderedTab === "sensory" && activeValidationSummary, _jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.sensory, TAB_LABELS.sensory) }), _jsx(ProductSensoryTab, { form: form, sensorySchema: sensorySchema, sensorySchemaLoading: sensorySchemaLoading, fieldIdPrefix: fieldIdPrefix, t: t })] })), orderedTabs.includes("resources") && (_jsxs(TabsContent, { value: "resources", className: "mt-0 min-h-0 overflow-y-auto overscroll-contain px-4 py-5 sm:px-6 sm:py-6", children: [renderedTab === "resources" && activeValidationSummary, _jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.resources, TAB_LABELS.resources) }), _jsx(ProductResourcesTab, { form: form, variantId: variantId, mode: mode, attachments: attachments, certificates: certificates, awards: awards, certificateRecords: certificateRecords, chemistrySection: chemistrySection, features: features, t: t })] })), orderedTabs.includes("e-label") && (_jsxs(TabsContent, { value: "e-label", forceMount: true, className: "mt-0 min-h-0 overflow-y-auto overscroll-contain px-4 py-5 data-[state=inactive]:hidden sm:px-6 sm:py-6", children: [renderedTab === "e-label" && activeValidationSummary, _jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS["e-label"], TAB_LABELS["e-label"]) }), _jsx(ProductElabelTab, { ref: elabelTabRef, variantId: variantId, mode: mode, labelData: labelData, onSaveStateChange: onLabelSaveStateChange, qrSection: qrSection, onNavigateToChemistry: orderedTabs.includes("resources") && chemistrySection !== undefined
65
+ ? onNavigateToChemistry
66
+ : undefined, t: t })] })), orderedTabs.includes("status") && (_jsxs(TabsContent, { value: "status", className: "mt-0 min-h-0 overflow-y-auto overscroll-contain px-4 py-5 sm:px-6 sm:py-6", children: [renderedTab === "status" && activeValidationSummary, _jsx("h2", { className: "sr-only", children: tr(TAB_I18N_KEYS.status, TAB_LABELS.status) }), _jsx(ProductStatusTab, { status: status, features: features, isDirty: isDirty, t: t })] }))] }) }) }) }), _jsx(ProductEditorSaveBar, { isDirty: isDirty, isSaving: isEditorBusy, serverError: serverError && !saveFailureErrors.includes(serverError)
66
67
  ? [serverError, ...saveFailureErrors]
67
68
  : saveFailureErrors, serverErrorRef: saveFailureAlertRef, dismissFocusRef: editorRootRef, onSave: onSave, onDiscard: onDiscard, t: t })] }));
68
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"product-editor-surface.js","sourceRoot":"","sources":["../../src/product-editor/product-editor-surface.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product-editor-surface.js","sourceRoot":"","sources":["../../src/product-editor/product-editor-surface.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "@cellarnode/ui",
3
- "version": "0.212.0",
3
+ "version": "0.213.0",
4
4
  "type": "module",
5
5
  "private": false,
6
+ "packageManager": "pnpm@10.28.2+sha512.41872f037ad22f7348e3b1debbaf7e867cfd448f2726d9cf74c08f19507c31d2c8e7a11525b983febc2df640b5438dee6023ebb1f84ed43cc2d654d2bc326264",
6
7
  "description": "Shared UI components, theme tokens, and chat/offer primitives for CellarNode dashboards.",
7
8
  "license": "UNLICENSED",
8
9
  "repository": {
@@ -247,6 +248,21 @@
247
248
  "src/theme/tokens.css",
248
249
  "src/theme/fonts/**"
249
250
  ],
251
+ "scripts": {
252
+ "build": "tsc && tsc-alias && node scripts/copy-runtime-css.mjs && node scripts/verify-dist.mjs",
253
+ "dev": "tsc --watch",
254
+ "clean": "rm -rf dist",
255
+ "lint": "oxlint && eslint src/",
256
+ "format": "oxfmt --write .",
257
+ "format:check": "oxfmt --check .",
258
+ "prepublishOnly": "npm run build",
259
+ "storybook": "storybook dev -p 6006",
260
+ "build-storybook": "storybook build",
261
+ "test": "vitest run",
262
+ "test:a11y": "vitest run --project storybook",
263
+ "check-export-overlap": "node scripts/check-export-overlap.mjs",
264
+ "test:offer-print-runtime": "node scripts/offer-print-runtime.test.mjs"
265
+ },
250
266
  "peerDependencies": {
251
267
  "@ably/chat": "^1.3.1",
252
268
  "@ably/spaces": "^0.5.0",
@@ -449,18 +465,9 @@
449
465
  "vitest": "^4.1.2",
450
466
  "vitest-axe": "^0.1.0"
451
467
  },
452
- "scripts": {
453
- "build": "tsc && tsc-alias && node scripts/copy-runtime-css.mjs && node scripts/verify-dist.mjs",
454
- "dev": "tsc --watch",
455
- "clean": "rm -rf dist",
456
- "lint": "oxlint && eslint src/",
457
- "format": "oxfmt --write .",
458
- "format:check": "oxfmt --check .",
459
- "storybook": "storybook dev -p 6006",
460
- "build-storybook": "storybook build",
461
- "test": "vitest run",
462
- "test:a11y": "vitest run --project storybook",
463
- "check-export-overlap": "node scripts/check-export-overlap.mjs",
464
- "test:offer-print-runtime": "node scripts/offer-print-runtime.test.mjs"
468
+ "pnpm": {
469
+ "overrides": {
470
+ "axe-core": "4.14.0"
471
+ }
465
472
  }
466
- }
473
+ }