@rovela-ai/sdk 0.1.26 → 0.1.27

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 (72) hide show
  1. package/dist/admin/components/CategoryForm.d.ts.map +1 -1
  2. package/dist/admin/components/CategoryForm.js +2 -2
  3. package/dist/admin/components/CategoryForm.js.map +1 -1
  4. package/dist/admin/components/ProductForm.d.ts.map +1 -1
  5. package/dist/admin/components/ProductForm.js +3 -35
  6. package/dist/admin/components/ProductForm.js.map +1 -1
  7. package/dist/core/db/queries.d.ts +7 -7
  8. package/dist/media/api/delete.d.ts +44 -0
  9. package/dist/media/api/delete.d.ts.map +1 -0
  10. package/dist/media/api/delete.js +134 -0
  11. package/dist/media/api/delete.js.map +1 -0
  12. package/dist/media/api/index.d.ts +17 -0
  13. package/dist/media/api/index.d.ts.map +1 -0
  14. package/dist/media/api/index.js +17 -0
  15. package/dist/media/api/index.js.map +1 -0
  16. package/dist/media/api/presign.d.ts +39 -0
  17. package/dist/media/api/presign.d.ts.map +1 -0
  18. package/dist/media/api/presign.js +138 -0
  19. package/dist/media/api/presign.js.map +1 -0
  20. package/dist/media/components/DropZone.d.ts +18 -0
  21. package/dist/media/components/DropZone.d.ts.map +1 -0
  22. package/dist/media/components/DropZone.js +112 -0
  23. package/dist/media/components/DropZone.js.map +1 -0
  24. package/dist/media/components/ImageGalleryUpload.d.ts +18 -0
  25. package/dist/media/components/ImageGalleryUpload.d.ts.map +1 -0
  26. package/dist/media/components/ImageGalleryUpload.js +156 -0
  27. package/dist/media/components/ImageGalleryUpload.js.map +1 -0
  28. package/dist/media/components/ImageUpload.d.ts +17 -0
  29. package/dist/media/components/ImageUpload.d.ts.map +1 -0
  30. package/dist/media/components/ImageUpload.js +95 -0
  31. package/dist/media/components/ImageUpload.js.map +1 -0
  32. package/dist/media/components/index.d.ts +10 -0
  33. package/dist/media/components/index.d.ts.map +1 -0
  34. package/dist/media/components/index.js +9 -0
  35. package/dist/media/components/index.js.map +1 -0
  36. package/dist/media/config.d.ts +57 -0
  37. package/dist/media/config.d.ts.map +1 -0
  38. package/dist/media/config.js +142 -0
  39. package/dist/media/config.js.map +1 -0
  40. package/dist/media/hooks/index.d.ts +8 -0
  41. package/dist/media/hooks/index.d.ts.map +1 -0
  42. package/dist/media/hooks/index.js +7 -0
  43. package/dist/media/hooks/index.js.map +1 -0
  44. package/dist/media/hooks/useUpload.d.ts +32 -0
  45. package/dist/media/hooks/useUpload.d.ts.map +1 -0
  46. package/dist/media/hooks/useUpload.js +258 -0
  47. package/dist/media/hooks/useUpload.js.map +1 -0
  48. package/dist/media/index.d.ts +57 -0
  49. package/dist/media/index.d.ts.map +1 -0
  50. package/dist/media/index.js +68 -0
  51. package/dist/media/index.js.map +1 -0
  52. package/dist/media/server/delete.d.ts +59 -0
  53. package/dist/media/server/delete.d.ts.map +1 -0
  54. package/dist/media/server/delete.js +176 -0
  55. package/dist/media/server/delete.js.map +1 -0
  56. package/dist/media/server/index.d.ts +10 -0
  57. package/dist/media/server/index.d.ts.map +1 -0
  58. package/dist/media/server/index.js +13 -0
  59. package/dist/media/server/index.js.map +1 -0
  60. package/dist/media/server/presign.d.ts +57 -0
  61. package/dist/media/server/presign.d.ts.map +1 -0
  62. package/dist/media/server/presign.js +112 -0
  63. package/dist/media/server/presign.js.map +1 -0
  64. package/dist/media/server/r2-client.d.ts +30 -0
  65. package/dist/media/server/r2-client.d.ts.map +1 -0
  66. package/dist/media/server/r2-client.js +76 -0
  67. package/dist/media/server/r2-client.js.map +1 -0
  68. package/dist/media/types.d.ts +271 -0
  69. package/dist/media/types.d.ts.map +1 -0
  70. package/dist/media/types.js +52 -0
  71. package/dist/media/types.js.map +1 -0
  72. package/package.json +15 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CategoryForm.d.ts","sourceRoot":"","sources":["../../../src/admin/components/CategoryForm.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAyB,MAAM,UAAU,CAAA;AAMvE,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACvC,kCAAkC;IAClC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAc,GACf,EAAE,iBAAiB,2CAyUnB"}
1
+ {"version":3,"file":"CategoryForm.d.ts","sourceRoot":"","sources":["../../../src/admin/components/CategoryForm.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,gBAAgB,EAAyB,MAAM,UAAU,CAAA;AAOvE,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACvC,kCAAkC;IAClC,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EACV,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAc,GACf,EAAE,iBAAiB,2CAqSnB"}
@@ -6,7 +6,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  * Category create/edit form component.
7
7
  */
8
8
  import { useState, useCallback, useEffect, useMemo } from 'react';
9
- import { ImagePlus, Trash2 } from 'lucide-react';
9
+ import { ImageUpload } from '../../media';
10
10
  // =============================================================================
11
11
  // Component
12
12
  // =============================================================================
@@ -148,6 +148,6 @@ export function CategoryForm({ categoryId, initialData, onSuccess, onCancel, cla
148
148
  if (isFetching) {
149
149
  return (_jsx("div", { className: "flex items-center justify-center py-12", children: _jsx("div", { className: "h-8 w-8 animate-spin rounded-full border-2 border-primary border-t-transparent" }) }));
150
150
  }
151
- return (_jsxs("form", { onSubmit: handleSubmit, className: `space-y-6 ${className}`, children: [error && (_jsx("div", { className: "rounded-md bg-destructive/10 px-4 py-3 text-sm text-destructive", children: error })), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Basic Information" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { children: [_jsxs("label", { htmlFor: "name", className: "block text-sm font-medium text-foreground", children: ["Category Name ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsx("input", { id: "name", name: "name", type: "text", value: formData.name, onChange: handleChange, required: true, placeholder: "e.g., Electronics, Clothing", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "slug", className: "block text-sm font-medium text-foreground", children: "URL Handle" }), _jsxs("div", { className: "mt-1 flex rounded-md border border-input focus-within:border-primary focus-within:ring-1 focus-within:ring-primary", children: [_jsx("span", { className: "inline-flex items-center rounded-l-md border-r border-input bg-muted px-3 text-sm text-muted-foreground", children: "/categories/" }), _jsx("input", { id: "slug", name: "slug", type: "text", value: formData.slug, onChange: handleChange, placeholder: autoSlug || 'auto-generated', className: "flex-1 rounded-r-md border-0 bg-background px-3 py-2 text-sm focus:outline-none" })] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Leave blank to auto-generate from category name" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "description", className: "block text-sm font-medium text-foreground", children: "Description" }), _jsx("textarea", { id: "description", name: "description", value: formData.description, onChange: handleChange, rows: 3, placeholder: "Brief description of this category...", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] })] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Image" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "image", className: "block text-sm font-medium text-foreground", children: "Image URL" }), _jsx("input", { id: "image", name: "image", type: "url", value: formData.image, onChange: handleChange, placeholder: "https://example.com/category-image.jpg", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), formData.image && (_jsxs("div", { className: "relative inline-block", children: [_jsx("img", { src: formData.image, alt: "Category preview", className: "h-32 w-32 rounded-lg object-cover border border-border" }), _jsx("button", { type: "button", onClick: () => setFormData((prev) => ({ ...prev, image: '' })), className: "absolute -right-2 -top-2 rounded-full bg-destructive p-1 text-destructive-foreground hover:bg-destructive/90", children: _jsx(Trash2, { className: "h-4 w-4" }) })] })), !formData.image && (_jsxs("div", { className: "rounded-lg border-2 border-dashed border-border p-8 text-center", children: [_jsx(ImagePlus, { className: "mx-auto h-10 w-10 text-muted-foreground" }), _jsx("p", { className: "mt-2 text-sm text-muted-foreground", children: "Add an image URL above" })] }))] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Organization" }), _jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "parentId", className: "block text-sm font-medium text-foreground", children: "Parent Category" }), _jsxs("select", { id: "parentId", name: "parentId", value: formData.parentId, onChange: handleChange, className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary", children: [_jsx("option", { value: "", children: "None (Top Level)" }), parentOptions.map((cat) => (_jsx("option", { value: cat.id, children: cat.name }, cat.id)))] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Make this a subcategory of another category" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "order", className: "block text-sm font-medium text-foreground", children: "Display Order" }), _jsx("input", { id: "order", name: "order", type: "number", min: "0", value: formData.order, onChange: handleChange, className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Lower numbers appear first" })] })] })] }), _jsxs("div", { className: "flex justify-end gap-4", children: [onCancel && (_jsx("button", { type: "button", onClick: onCancel, className: "rounded-md border border-border px-4 py-2 text-sm font-medium text-foreground hover:bg-accent", children: "Cancel" })), _jsx("button", { type: "submit", disabled: isLoading, className: "rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50", children: isLoading ? 'Saving...' : isEditMode ? 'Save Changes' : 'Create Category' })] })] }));
151
+ return (_jsxs("form", { onSubmit: handleSubmit, className: `space-y-6 ${className}`, children: [error && (_jsx("div", { className: "rounded-md bg-destructive/10 px-4 py-3 text-sm text-destructive", children: error })), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Basic Information" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { children: [_jsxs("label", { htmlFor: "name", className: "block text-sm font-medium text-foreground", children: ["Category Name ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsx("input", { id: "name", name: "name", type: "text", value: formData.name, onChange: handleChange, required: true, placeholder: "e.g., Electronics, Clothing", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "slug", className: "block text-sm font-medium text-foreground", children: "URL Handle" }), _jsxs("div", { className: "mt-1 flex rounded-md border border-input focus-within:border-primary focus-within:ring-1 focus-within:ring-primary", children: [_jsx("span", { className: "inline-flex items-center rounded-l-md border-r border-input bg-muted px-3 text-sm text-muted-foreground", children: "/categories/" }), _jsx("input", { id: "slug", name: "slug", type: "text", value: formData.slug, onChange: handleChange, placeholder: autoSlug || 'auto-generated', className: "flex-1 rounded-r-md border-0 bg-background px-3 py-2 text-sm focus:outline-none" })] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Leave blank to auto-generate from category name" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "description", className: "block text-sm font-medium text-foreground", children: "Description" }), _jsx("textarea", { id: "description", name: "description", value: formData.description, onChange: handleChange, rows: 3, placeholder: "Brief description of this category...", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] })] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Image" }), _jsx(ImageUpload, { value: formData.image || null, onChange: (url) => setFormData((prev) => ({ ...prev, image: url || '' })), folder: "categories", entityId: categoryId, placeholder: "Upload category image" })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Organization" }), _jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "parentId", className: "block text-sm font-medium text-foreground", children: "Parent Category" }), _jsxs("select", { id: "parentId", name: "parentId", value: formData.parentId, onChange: handleChange, className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary", children: [_jsx("option", { value: "", children: "None (Top Level)" }), parentOptions.map((cat) => (_jsx("option", { value: cat.id, children: cat.name }, cat.id)))] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Make this a subcategory of another category" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "order", className: "block text-sm font-medium text-foreground", children: "Display Order" }), _jsx("input", { id: "order", name: "order", type: "number", min: "0", value: formData.order, onChange: handleChange, className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Lower numbers appear first" })] })] })] }), _jsxs("div", { className: "flex justify-end gap-4", children: [onCancel && (_jsx("button", { type: "button", onClick: onCancel, className: "rounded-md border border-border px-4 py-2 text-sm font-medium text-foreground hover:bg-accent", children: "Cancel" })), _jsx("button", { type: "submit", disabled: isLoading, className: "rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50", children: isLoading ? 'Saving...' : isEditMode ? 'Save Changes' : 'Create Category' })] })] }));
152
152
  }
153
153
  //# sourceMappingURL=CategoryForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CategoryForm.js","sourceRoot":"","sources":["../../../src/admin/components/CategoryForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CategoryForm.js","sourceRoot":"","sources":["../../../src/admin/components/CategoryForm.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProductForm.d.ts","sourceRoot":"","sources":["../../../src/admin/components/ProductForm.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAoC,MAAM,UAAU,CAAA;AAUlF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAc,GACf,EAAE,gBAAgB,2CAk3BlB"}
1
+ {"version":3,"file":"ProductForm.d.ts","sourceRoot":"","sources":["../../../src/admin/components/ProductForm.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAoC,MAAM,UAAU,CAAA;AAWlF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAc,GACf,EAAE,gBAAgB,2CA0wBlB"}
@@ -12,7 +12,8 @@ import { CategorySelect } from './CategorySelect';
12
12
  import { SEOPreview } from './SEOPreview';
13
13
  import { TagInput } from './TagInput';
14
14
  import { VariantManager } from './VariantManager';
15
- import { ImagePlus, Trash2, GripVertical, Info, ChevronDown, ChevronUp, Package } from 'lucide-react';
15
+ import { Info, ChevronDown, ChevronUp, Package } from 'lucide-react';
16
+ import { ImageGalleryUpload } from '../../media';
16
17
  import { useStoreSettingsOptional } from '../../core/StoreSettingsProvider';
17
18
  import { getCurrencySymbol, formatPrice } from '../../core/utils';
18
19
  // =============================================================================
@@ -70,8 +71,6 @@ export function ProductForm({ productId, initialData, onSuccess, onCancel, class
70
71
  const [variantOptions, setVariantOptions] = useState([]);
71
72
  const [variants, setVariants] = useState([]);
72
73
  const [existingVariants, setExistingVariants] = useState([]);
73
- // Image URL input
74
- const [imageUrl, setImageUrl] = useState('');
75
74
  // UI state
76
75
  const [isLoading, setIsLoading] = useState(false);
77
76
  const [isFetching, setIsFetching] = useState(false);
@@ -173,32 +172,6 @@ export function ProductForm({ productId, initialData, onSuccess, onCancel, class
173
172
  : value,
174
173
  }));
175
174
  }, []);
176
- // Handle image add
177
- const handleAddImage = useCallback(() => {
178
- if (imageUrl.trim()) {
179
- setFormData((prev) => ({
180
- ...prev,
181
- images: [...prev.images, imageUrl.trim()],
182
- }));
183
- setImageUrl('');
184
- }
185
- }, [imageUrl]);
186
- // Handle image remove
187
- const handleRemoveImage = useCallback((index) => {
188
- setFormData((prev) => ({
189
- ...prev,
190
- images: prev.images.filter((_, i) => i !== index),
191
- }));
192
- }, []);
193
- // Handle image reorder
194
- const handleMoveImage = useCallback((fromIndex, toIndex) => {
195
- setFormData((prev) => {
196
- const newImages = [...prev.images];
197
- const [removed] = newImages.splice(fromIndex, 1);
198
- newImages.splice(toIndex, 0, removed);
199
- return { ...prev, images: newImages };
200
- });
201
- }, []);
202
175
  // Handle submit
203
176
  const handleSubmit = useCallback(async (e) => {
204
177
  e.preventDefault();
@@ -266,12 +239,7 @@ export function ProductForm({ productId, initialData, onSuccess, onCancel, class
266
239
  if (isFetching) {
267
240
  return (_jsx("div", { className: "flex items-center justify-center py-12", children: _jsx("div", { className: "h-8 w-8 animate-spin rounded-full border-2 border-primary border-t-transparent" }) }));
268
241
  }
269
- return (_jsxs("form", { onSubmit: handleSubmit, className: `${className}`, children: [error && (_jsx("div", { className: "mb-6 rounded-md bg-destructive/10 px-4 py-3 text-sm text-destructive", children: error })), _jsxs("div", { className: "grid gap-6 lg:grid-cols-3", children: [_jsxs("div", { className: "space-y-6 lg:col-span-2", children: [_jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Basic Information" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { children: [_jsxs("label", { htmlFor: "name", className: "block text-sm font-medium text-foreground", children: ["Product Name ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsx("input", { id: "name", name: "name", type: "text", value: formData.name, onChange: handleChange, required: true, placeholder: "e.g., Premium Cotton T-Shirt", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "slug", className: "block text-sm font-medium text-foreground", children: "URL Handle" }), _jsxs("div", { className: "mt-1 flex rounded-md border border-input focus-within:border-primary focus-within:ring-1 focus-within:ring-primary", children: [_jsx("span", { className: "inline-flex items-center rounded-l-md border-r border-input bg-muted px-3 text-sm text-muted-foreground", children: "/products/" }), _jsx("input", { id: "slug", name: "slug", type: "text", value: formData.slug, onChange: handleChange, placeholder: autoSlug || 'auto-generated', className: "flex-1 rounded-r-md border-0 bg-background px-3 py-2 text-sm focus:outline-none" })] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Leave blank to auto-generate from product name" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "description", className: "block text-sm font-medium text-foreground", children: "Description" }), _jsx("textarea", { id: "description", name: "description", value: formData.description, onChange: handleChange, rows: 5, placeholder: "Describe your product in detail...", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsxs("p", { className: "mt-1 text-xs text-muted-foreground", children: [formData.description.length, " characters"] })] })] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Media" }), _jsxs("div", { className: "space-y-4", children: [formData.images.length > 0 && (_jsx("div", { className: "grid grid-cols-2 gap-4 sm:grid-cols-3 md:grid-cols-4", children: formData.images.map((url, index) => (_jsxs("div", { className: "group relative aspect-square overflow-hidden rounded-lg border border-border bg-muted", children: [_jsx("img", { src: url, alt: `Product ${index + 1}`, className: "h-full w-full object-cover" }), index === 0 && (_jsx("span", { className: "absolute left-2 top-2 rounded bg-primary px-2 py-0.5 text-xs font-medium text-primary-foreground", children: "Primary" })), _jsxs("div", { className: "absolute inset-0 flex items-center justify-center gap-2 bg-black/50 opacity-0 transition-opacity group-hover:opacity-100", children: [index > 0 && (_jsx("button", { type: "button", onClick: () => handleMoveImage(index, 0), className: "rounded-full bg-white p-2 text-foreground hover:bg-gray-100", title: "Make primary", children: _jsx(GripVertical, { className: "h-4 w-4" }) })), _jsx("button", { type: "button", onClick: () => handleRemoveImage(index), className: "rounded-full bg-destructive p-2 text-destructive-foreground hover:bg-destructive/90", title: "Remove", children: _jsx(Trash2, { className: "h-4 w-4" }) })] })] }, index))) })), _jsxs("div", { className: "flex gap-2", children: [_jsx("input", { type: "url", value: imageUrl, onChange: (e) => setImageUrl(e.target.value), onKeyDown: (e) => {
270
- if (e.key === 'Enter') {
271
- e.preventDefault();
272
- handleAddImage();
273
- }
274
- }, placeholder: "Paste image URL...", className: "flex-1 rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsxs("button", { type: "button", onClick: handleAddImage, disabled: !imageUrl.trim(), className: "inline-flex items-center gap-2 rounded-md bg-secondary px-4 py-2 text-sm font-medium text-secondary-foreground hover:bg-secondary/80 disabled:opacity-50", children: [_jsx(ImagePlus, { className: "h-4 w-4" }), "Add"] })] }), formData.images.length === 0 && (_jsxs("div", { className: "rounded-lg border-2 border-dashed border-border p-8 text-center", children: [_jsx(ImagePlus, { className: "mx-auto h-10 w-10 text-muted-foreground" }), _jsx("p", { className: "mt-2 text-sm text-muted-foreground", children: "Add images by pasting URLs above" })] }))] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Pricing" }), _jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsxs("label", { htmlFor: "price", className: "block text-sm font-medium text-foreground", children: ["Price ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsxs("div", { className: "mt-1 relative", children: [_jsx("span", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: currencySymbol }), _jsx("input", { id: "price", name: "price", type: "number", step: "0.01", min: "0", value: formData.price, onChange: handleChange, required: true, className: "block w-full rounded-md border border-input bg-background pl-7 pr-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "comparePrice", className: "block text-sm font-medium text-foreground", children: "Compare at Price" }), _jsxs("div", { className: "mt-1 relative", children: [_jsx("span", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: currencySymbol }), _jsx("input", { id: "comparePrice", name: "comparePrice", type: "number", step: "0.01", min: "0", value: formData.comparePrice || '', onChange: handleChange, placeholder: "Original price", className: "block w-full rounded-md border border-input bg-background pl-7 pr-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Shows as strikethrough price for sales" })] })] }), formData.comparePrice && Number(formData.comparePrice) > Number(formData.price) && (_jsxs("div", { className: "mt-4 flex items-center gap-2 rounded-md bg-green-50 dark:bg-green-950/20 px-3 py-2 text-sm text-green-700 dark:text-green-400", children: [_jsx(Info, { className: "h-4 w-4" }), Math.round(((Number(formData.comparePrice) - Number(formData.price)) / Number(formData.comparePrice)) * 100), "% discount from compare price"] }))] }), !formData.hasVariants && (_jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Inventory" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "sku", className: "block text-sm font-medium text-foreground", children: "SKU (Stock Keeping Unit)" }), _jsx("input", { id: "sku", name: "sku", type: "text", value: formData.sku || '', onChange: handleChange, placeholder: "e.g., SHIRT-001", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "inventory", className: "block text-sm font-medium text-foreground", children: "Quantity" }), _jsx("input", { id: "inventory", name: "inventory", type: "number", min: "0", value: formData.inventory, onChange: handleChange, className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] })] }), _jsxs("div", { className: "space-y-3 pt-2 border-t border-border", children: [_jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "checkbox", name: "trackInventory", checked: formData.trackInventory ?? true, onChange: handleChange, className: "h-4 w-4 rounded border-gray-300 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Track quantity" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Enable inventory tracking for this product" })] })] }), _jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "checkbox", name: "continueSellingWhenOutOfStock", checked: formData.continueSellingWhenOutOfStock ?? false, onChange: handleChange, className: "h-4 w-4 rounded border-gray-300 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Continue selling when out of stock" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Allow customers to purchase even when inventory is 0" })] })] })] })] })] })), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsxs("div", { className: "flex items-center justify-between mb-4", children: [_jsxs("div", { children: [_jsx("h3", { className: "text-lg font-medium text-foreground", children: "Variants" }), _jsx("p", { className: "text-sm text-muted-foreground", children: "Add options like size or color to create product variants" })] }), _jsxs("label", { className: "relative inline-flex cursor-pointer items-center", children: [_jsx("input", { type: "checkbox", name: "hasVariants", checked: formData.hasVariants, onChange: handleChange, className: "peer sr-only" }), _jsx("div", { className: "peer h-6 w-11 rounded-full bg-muted after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:bg-white after:transition-all after:content-[''] peer-checked:bg-primary peer-checked:after:translate-x-full peer-focus:outline-none peer-focus:ring-2 peer-focus:ring-primary/20" })] })] }), formData.hasVariants && (_jsx(VariantManager, { options: variantOptions, variants: variants, onOptionsChange: setVariantOptions, onVariantsChange: setVariants, basePrice: formData.price }))] }), _jsxs("div", { className: "rounded-lg border border-border bg-card", children: [_jsxs("button", { type: "button", onClick: () => setSeoExpanded(!seoExpanded), className: "flex w-full items-center justify-between p-6 text-left", children: [_jsxs("div", { children: [_jsx("h3", { className: "text-lg font-medium text-foreground", children: "Search Engine Listing" }), _jsx("p", { className: "text-sm text-muted-foreground", children: "Customize how this product appears in search results" })] }), seoExpanded ? (_jsx(ChevronUp, { className: "h-5 w-5 text-muted-foreground" })) : (_jsx(ChevronDown, { className: "h-5 w-5 text-muted-foreground" }))] }), seoExpanded && (_jsxs("div", { className: "border-t border-border p-6 space-y-4", children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "metaTitle", className: "block text-sm font-medium text-foreground", children: "Meta Title" }), _jsx("input", { id: "metaTitle", name: "metaTitle", type: "text", value: formData.metaTitle || '', onChange: handleChange, maxLength: 70, placeholder: formData.name || 'Product title', className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsxs("p", { className: "mt-1 text-xs text-muted-foreground", children: [(formData.metaTitle || '').length, "/70 characters"] })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "metaDescription", className: "block text-sm font-medium text-foreground", children: "Meta Description" }), _jsx("textarea", { id: "metaDescription", name: "metaDescription", value: formData.metaDescription || '', onChange: handleChange, maxLength: 160, rows: 3, placeholder: "Brief description for search engines...", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsxs("p", { className: "mt-1 text-xs text-muted-foreground", children: [(formData.metaDescription || '').length, "/160 characters"] })] }), _jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: "Meta Keywords" }), _jsx(TagInput, { value: formData.metaKeywords || [], onChange: (tags) => setFormData((prev) => ({ ...prev, metaKeywords: tags })), placeholder: "Add keywords...", maxTags: 10 })] }), _jsx(SEOPreview, { title: formData.metaTitle || formData.name, description: formData.metaDescription || formData.description.slice(0, 160), slug: formData.slug || autoSlug, className: "mt-4" })] }))] })] }), _jsxs("div", { className: "space-y-6", children: [isEditMode && (_jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Status" }), _jsxs("div", { className: "space-y-3", children: [_jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "radio", name: "status", value: "draft", checked: formData.status === 'draft', onChange: handleChange, className: "h-4 w-4 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Draft" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Not visible to customers" })] })] }), _jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "radio", name: "status", value: "active", checked: formData.status === 'active', onChange: handleChange, className: "h-4 w-4 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Active" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Visible to customers" })] })] }), _jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "radio", name: "status", value: "archived", checked: formData.status === 'archived', onChange: handleChange, className: "h-4 w-4 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Archived" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Hidden and not for sale" })] })] })] })] })), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Organization" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: "Category" }), _jsx(CategorySelect, { value: formData.categoryId || null, onChange: (id) => setFormData((prev) => ({ ...prev, categoryId: id || undefined })), placeholder: "Select category", showAddNew: true, onAddNew: () => {
242
+ return (_jsxs("form", { onSubmit: handleSubmit, className: `${className}`, children: [error && (_jsx("div", { className: "mb-6 rounded-md bg-destructive/10 px-4 py-3 text-sm text-destructive", children: error })), _jsxs("div", { className: "grid gap-6 lg:grid-cols-3", children: [_jsxs("div", { className: "space-y-6 lg:col-span-2", children: [_jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Basic Information" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { children: [_jsxs("label", { htmlFor: "name", className: "block text-sm font-medium text-foreground", children: ["Product Name ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsx("input", { id: "name", name: "name", type: "text", value: formData.name, onChange: handleChange, required: true, placeholder: "e.g., Premium Cotton T-Shirt", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "slug", className: "block text-sm font-medium text-foreground", children: "URL Handle" }), _jsxs("div", { className: "mt-1 flex rounded-md border border-input focus-within:border-primary focus-within:ring-1 focus-within:ring-primary", children: [_jsx("span", { className: "inline-flex items-center rounded-l-md border-r border-input bg-muted px-3 text-sm text-muted-foreground", children: "/products/" }), _jsx("input", { id: "slug", name: "slug", type: "text", value: formData.slug, onChange: handleChange, placeholder: autoSlug || 'auto-generated', className: "flex-1 rounded-r-md border-0 bg-background px-3 py-2 text-sm focus:outline-none" })] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Leave blank to auto-generate from product name" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "description", className: "block text-sm font-medium text-foreground", children: "Description" }), _jsx("textarea", { id: "description", name: "description", value: formData.description, onChange: handleChange, rows: 5, placeholder: "Describe your product in detail...", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsxs("p", { className: "mt-1 text-xs text-muted-foreground", children: [formData.description.length, " characters"] })] })] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Media" }), _jsx(ImageGalleryUpload, { value: formData.images, onChange: (urls) => setFormData((prev) => ({ ...prev, images: urls })), folder: "products", entityId: productId, maxImages: 10 })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Pricing" }), _jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsxs("label", { htmlFor: "price", className: "block text-sm font-medium text-foreground", children: ["Price ", _jsx("span", { className: "text-destructive", children: "*" })] }), _jsxs("div", { className: "mt-1 relative", children: [_jsx("span", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: currencySymbol }), _jsx("input", { id: "price", name: "price", type: "number", step: "0.01", min: "0", value: formData.price, onChange: handleChange, required: true, className: "block w-full rounded-md border border-input bg-background pl-7 pr-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "comparePrice", className: "block text-sm font-medium text-foreground", children: "Compare at Price" }), _jsxs("div", { className: "mt-1 relative", children: [_jsx("span", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: currencySymbol }), _jsx("input", { id: "comparePrice", name: "comparePrice", type: "number", step: "0.01", min: "0", value: formData.comparePrice || '', onChange: handleChange, placeholder: "Original price", className: "block w-full rounded-md border border-input bg-background pl-7 pr-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Shows as strikethrough price for sales" })] })] }), formData.comparePrice && Number(formData.comparePrice) > Number(formData.price) && (_jsxs("div", { className: "mt-4 flex items-center gap-2 rounded-md bg-green-50 dark:bg-green-950/20 px-3 py-2 text-sm text-green-700 dark:text-green-400", children: [_jsx(Info, { className: "h-4 w-4" }), Math.round(((Number(formData.comparePrice) - Number(formData.price)) / Number(formData.comparePrice)) * 100), "% discount from compare price"] }))] }), !formData.hasVariants && (_jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Inventory" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "grid gap-4 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "sku", className: "block text-sm font-medium text-foreground", children: "SKU (Stock Keeping Unit)" }), _jsx("input", { id: "sku", name: "sku", type: "text", value: formData.sku || '', onChange: handleChange, placeholder: "e.g., SHIRT-001", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "inventory", className: "block text-sm font-medium text-foreground", children: "Quantity" }), _jsx("input", { id: "inventory", name: "inventory", type: "number", min: "0", value: formData.inventory, onChange: handleChange, className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] })] }), _jsxs("div", { className: "space-y-3 pt-2 border-t border-border", children: [_jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "checkbox", name: "trackInventory", checked: formData.trackInventory ?? true, onChange: handleChange, className: "h-4 w-4 rounded border-gray-300 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Track quantity" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Enable inventory tracking for this product" })] })] }), _jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "checkbox", name: "continueSellingWhenOutOfStock", checked: formData.continueSellingWhenOutOfStock ?? false, onChange: handleChange, className: "h-4 w-4 rounded border-gray-300 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Continue selling when out of stock" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Allow customers to purchase even when inventory is 0" })] })] })] })] })] })), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsxs("div", { className: "flex items-center justify-between mb-4", children: [_jsxs("div", { children: [_jsx("h3", { className: "text-lg font-medium text-foreground", children: "Variants" }), _jsx("p", { className: "text-sm text-muted-foreground", children: "Add options like size or color to create product variants" })] }), _jsxs("label", { className: "relative inline-flex cursor-pointer items-center", children: [_jsx("input", { type: "checkbox", name: "hasVariants", checked: formData.hasVariants, onChange: handleChange, className: "peer sr-only" }), _jsx("div", { className: "peer h-6 w-11 rounded-full bg-muted after:absolute after:left-[2px] after:top-[2px] after:h-5 after:w-5 after:rounded-full after:bg-white after:transition-all after:content-[''] peer-checked:bg-primary peer-checked:after:translate-x-full peer-focus:outline-none peer-focus:ring-2 peer-focus:ring-primary/20" })] })] }), formData.hasVariants && (_jsx(VariantManager, { options: variantOptions, variants: variants, onOptionsChange: setVariantOptions, onVariantsChange: setVariants, basePrice: formData.price }))] }), _jsxs("div", { className: "rounded-lg border border-border bg-card", children: [_jsxs("button", { type: "button", onClick: () => setSeoExpanded(!seoExpanded), className: "flex w-full items-center justify-between p-6 text-left", children: [_jsxs("div", { children: [_jsx("h3", { className: "text-lg font-medium text-foreground", children: "Search Engine Listing" }), _jsx("p", { className: "text-sm text-muted-foreground", children: "Customize how this product appears in search results" })] }), seoExpanded ? (_jsx(ChevronUp, { className: "h-5 w-5 text-muted-foreground" })) : (_jsx(ChevronDown, { className: "h-5 w-5 text-muted-foreground" }))] }), seoExpanded && (_jsxs("div", { className: "border-t border-border p-6 space-y-4", children: [_jsxs("div", { children: [_jsx("label", { htmlFor: "metaTitle", className: "block text-sm font-medium text-foreground", children: "Meta Title" }), _jsx("input", { id: "metaTitle", name: "metaTitle", type: "text", value: formData.metaTitle || '', onChange: handleChange, maxLength: 70, placeholder: formData.name || 'Product title', className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsxs("p", { className: "mt-1 text-xs text-muted-foreground", children: [(formData.metaTitle || '').length, "/70 characters"] })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "metaDescription", className: "block text-sm font-medium text-foreground", children: "Meta Description" }), _jsx("textarea", { id: "metaDescription", name: "metaDescription", value: formData.metaDescription || '', onChange: handleChange, maxLength: 160, rows: 3, placeholder: "Brief description for search engines...", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" }), _jsxs("p", { className: "mt-1 text-xs text-muted-foreground", children: [(formData.metaDescription || '').length, "/160 characters"] })] }), _jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: "Meta Keywords" }), _jsx(TagInput, { value: formData.metaKeywords || [], onChange: (tags) => setFormData((prev) => ({ ...prev, metaKeywords: tags })), placeholder: "Add keywords...", maxTags: 10 })] }), _jsx(SEOPreview, { title: formData.metaTitle || formData.name, description: formData.metaDescription || formData.description.slice(0, 160), slug: formData.slug || autoSlug, className: "mt-4" })] }))] })] }), _jsxs("div", { className: "space-y-6", children: [isEditMode && (_jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Status" }), _jsxs("div", { className: "space-y-3", children: [_jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "radio", name: "status", value: "draft", checked: formData.status === 'draft', onChange: handleChange, className: "h-4 w-4 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Draft" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Not visible to customers" })] })] }), _jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "radio", name: "status", value: "active", checked: formData.status === 'active', onChange: handleChange, className: "h-4 w-4 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Active" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Visible to customers" })] })] }), _jsxs("label", { className: "flex items-center gap-3 cursor-pointer", children: [_jsx("input", { type: "radio", name: "status", value: "archived", checked: formData.status === 'archived', onChange: handleChange, className: "h-4 w-4 text-primary focus:ring-primary" }), _jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Archived" }), _jsx("p", { className: "text-xs text-muted-foreground", children: "Hidden and not for sale" })] })] })] })] })), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsx("h3", { className: "mb-4 text-lg font-medium text-foreground", children: "Organization" }), _jsxs("div", { className: "space-y-4", children: [_jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: "Category" }), _jsx(CategorySelect, { value: formData.categoryId || null, onChange: (id) => setFormData((prev) => ({ ...prev, categoryId: id || undefined })), placeholder: "Select category", showAddNew: true, onAddNew: () => {
275
243
  // Open category management in new tab
276
244
  window.open('/admin/categories', '_blank');
277
245
  } })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "productType", className: "block text-sm font-medium text-foreground", children: "Product Type" }), _jsx("input", { id: "productType", name: "productType", type: "text", value: formData.productType || '', onChange: handleChange, placeholder: "e.g., T-Shirts, Electronics", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: "vendor", className: "block text-sm font-medium text-foreground", children: "Vendor" }), _jsx("input", { id: "vendor", name: "vendor", type: "text", value: formData.vendor || '', onChange: handleChange, placeholder: "e.g., Nike, Apple", className: "mt-1 block w-full rounded-md border border-input bg-background px-3 py-2 text-sm focus:border-primary focus:outline-none focus:ring-1 focus:ring-primary" })] }), _jsxs("div", { children: [_jsx("label", { className: "block text-sm font-medium text-foreground mb-1", children: "Tags" }), _jsx(TagInput, { value: formData.tags || [], onChange: (tags) => setFormData((prev) => ({ ...prev, tags })), placeholder: "Add tags...", maxTags: 20 }), _jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: "Tags help organize products and improve search" })] })] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6", children: [_jsxs("h3", { className: "mb-4 text-lg font-medium text-foreground flex items-center gap-2", children: [_jsx(Package, { className: "h-5 w-5" }), "Summary"] }), _jsxs("dl", { className: "space-y-2 text-sm", children: [_jsxs("div", { className: "flex justify-between", children: [_jsx("dt", { className: "text-muted-foreground", children: "Price" }), _jsx("dd", { className: "font-medium", children: formatPrice(Number(formData.price) || 0, { currency, locale }) })] }), formData.hasVariants && variants.length > 0 && (_jsxs("div", { className: "flex justify-between", children: [_jsx("dt", { className: "text-muted-foreground", children: "Variants" }), _jsx("dd", { className: "font-medium", children: variants.length })] })), _jsxs("div", { className: "flex justify-between", children: [_jsx("dt", { className: "text-muted-foreground", children: "Images" }), _jsx("dd", { className: "font-medium", children: formData.images.length })] }), formData.hasVariants && variants.length > 0 && (_jsxs("div", { className: "flex justify-between", children: [_jsx("dt", { className: "text-muted-foreground", children: "Total Inventory" }), _jsx("dd", { className: "font-medium", children: variants.reduce((sum, v) => sum + (typeof v.inventory === 'number' ? v.inventory : 0), 0) })] }))] })] }), _jsxs("div", { className: "rounded-lg border border-border bg-card p-6 lg:sticky lg:top-6", children: [_jsxs("div", { className: "space-y-3", children: [_jsx("button", { type: "submit", disabled: isLoading, className: "w-full rounded-md bg-primary px-4 py-2.5 text-sm font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-50", children: isLoading ? 'Saving...' : isEditMode ? 'Save Changes' : 'Create Product' }), onCancel && (_jsx("button", { type: "button", onClick: onCancel, className: "w-full rounded-md border border-border px-4 py-2.5 text-sm font-medium text-foreground hover:bg-accent", children: "Cancel" }))] }), !isEditMode && (_jsx("p", { className: "mt-3 text-xs text-center text-muted-foreground", children: "Product will be published immediately" }))] })] })] })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"ProductForm.js","sourceRoot":"","sources":["../../../src/admin/components/ProductForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProductForm.js","sourceRoot":"","sources":["../../../src/admin/components/ProductForm.tsx"],"names":[],"mappings":"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"}
@@ -387,16 +387,16 @@ export declare function getRecentOrders(limit?: number): Promise<{
387
387
  * Create a new order
388
388
  */
389
389
  export declare function createOrder(data: schema.NewOrder): Promise<{
390
- id: string;
391
390
  status: "pending" | "paid" | "shipped" | "delivered" | "cancelled" | "refunded";
391
+ total: string;
392
+ email: string;
393
+ id: string;
392
394
  createdAt: Date;
393
395
  updatedAt: Date;
394
396
  customerId: string | null;
395
- email: string;
396
397
  subtotal: string;
397
398
  tax: string;
398
399
  shipping: string;
399
- total: string;
400
400
  shippingAddress: {
401
401
  firstName: string;
402
402
  lastName: string;
@@ -426,14 +426,14 @@ export declare function createOrder(data: schema.NewOrder): Promise<{
426
426
  */
427
427
  export declare function createOrderItems(items: schema.NewOrderItem[]): Promise<{
428
428
  id: string;
429
- name: string;
430
- price: string;
431
- createdAt: Date;
432
429
  productId: string;
430
+ price: string;
431
+ name: string;
433
432
  attributes: Record<string, string> | null;
433
+ quantity: number;
434
+ createdAt: Date;
434
435
  orderId: string;
435
436
  variantId: string | null;
436
- quantity: number;
437
437
  }[]>;
438
438
  /**
439
439
  * Update order status
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @rovela-ai/sdk/media/api/delete
3
+ *
4
+ * API route handler for deleting files from R2 storage.
5
+ *
6
+ * Usage:
7
+ * ```typescript
8
+ * // app/api/media/route.ts
9
+ * export { DELETE } from '@rovela-ai/sdk/media/api/delete'
10
+ * ```
11
+ */
12
+ import { NextRequest, NextResponse } from 'next/server';
13
+ import type { DeleteApiResponse, MediaApiError } from '../types';
14
+ /**
15
+ * DELETE /api/media
16
+ *
17
+ * Delete one or more files from R2 storage.
18
+ *
19
+ * Request Body (single file):
20
+ * {
21
+ * url: string // Public URL of the file to delete
22
+ * }
23
+ *
24
+ * Request Body (multiple files):
25
+ * {
26
+ * urls: string[] // Array of public URLs to delete
27
+ * }
28
+ *
29
+ * Response (single):
30
+ * {
31
+ * success: boolean,
32
+ * error?: string
33
+ * }
34
+ *
35
+ * Response (multiple):
36
+ * {
37
+ * success: boolean,
38
+ * succeeded?: string[],
39
+ * failed?: string[],
40
+ * error?: string
41
+ * }
42
+ */
43
+ export declare function DELETE(request: NextRequest): Promise<NextResponse<DeleteApiResponse | MediaApiError>>;
44
+ //# sourceMappingURL=delete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/media/api/delete.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAKvD,OAAO,KAAK,EAAoB,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAuDlF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,MAAM,CAC1B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,iBAAiB,GAAG,aAAa,CAAC,CAAC,CAqE1D"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * @rovela-ai/sdk/media/api/delete
3
+ *
4
+ * API route handler for deleting files from R2 storage.
5
+ *
6
+ * Usage:
7
+ * ```typescript
8
+ * // app/api/media/route.ts
9
+ * export { DELETE } from '@rovela-ai/sdk/media/api/delete'
10
+ * ```
11
+ */
12
+ import { NextResponse } from 'next/server';
13
+ import { getServerSession } from 'next-auth';
14
+ import { createAuthOptions } from '../../auth/config';
15
+ import { deleteFile, deleteFiles } from '../server/delete';
16
+ import { isMediaConfigured } from '../config';
17
+ // =============================================================================
18
+ // Auth Helper
19
+ // =============================================================================
20
+ async function requireAdmin() {
21
+ const session = await getServerSession(createAuthOptions());
22
+ const user = session?.user;
23
+ if (!user?.role || !['owner', 'admin'].includes(user.role)) {
24
+ return NextResponse.json({ success: false, error: 'Unauthorized', code: 'UNAUTHORIZED' }, { status: 401 });
25
+ }
26
+ return null;
27
+ }
28
+ // =============================================================================
29
+ // Validation
30
+ // =============================================================================
31
+ function validateRequest(body) {
32
+ if (!body || typeof body !== 'object') {
33
+ return { valid: false, error: 'Request body is required' };
34
+ }
35
+ const req = body;
36
+ // Check for single URL
37
+ if (req.url && typeof req.url === 'string') {
38
+ return { valid: true, url: req.url };
39
+ }
40
+ // Check for multiple URLs
41
+ if (req.urls && Array.isArray(req.urls)) {
42
+ const urls = req.urls.filter((u) => typeof u === 'string');
43
+ if (urls.length === 0) {
44
+ return { valid: false, error: 'urls array must contain at least one valid URL' };
45
+ }
46
+ return { valid: true, urls };
47
+ }
48
+ return { valid: false, error: 'url (string) or urls (string[]) is required' };
49
+ }
50
+ // =============================================================================
51
+ // DELETE Handler
52
+ // =============================================================================
53
+ /**
54
+ * DELETE /api/media
55
+ *
56
+ * Delete one or more files from R2 storage.
57
+ *
58
+ * Request Body (single file):
59
+ * {
60
+ * url: string // Public URL of the file to delete
61
+ * }
62
+ *
63
+ * Request Body (multiple files):
64
+ * {
65
+ * urls: string[] // Array of public URLs to delete
66
+ * }
67
+ *
68
+ * Response (single):
69
+ * {
70
+ * success: boolean,
71
+ * error?: string
72
+ * }
73
+ *
74
+ * Response (multiple):
75
+ * {
76
+ * success: boolean,
77
+ * succeeded?: string[],
78
+ * failed?: string[],
79
+ * error?: string
80
+ * }
81
+ */
82
+ export async function DELETE(request) {
83
+ // Check admin auth
84
+ const authError = await requireAdmin();
85
+ if (authError)
86
+ return authError;
87
+ // Check if media is configured
88
+ if (!isMediaConfigured()) {
89
+ return NextResponse.json({
90
+ success: false,
91
+ error: 'Media storage not configured',
92
+ code: 'NOT_CONFIGURED',
93
+ }, { status: 503 });
94
+ }
95
+ try {
96
+ // Parse request body
97
+ const body = await request.json();
98
+ // Validate request
99
+ const validation = validateRequest(body);
100
+ if (!validation.valid) {
101
+ return NextResponse.json({ success: false, error: validation.error || 'Invalid request' }, { status: 400 });
102
+ }
103
+ // Handle single file deletion
104
+ if (validation.url) {
105
+ try {
106
+ await deleteFile(validation.url);
107
+ return NextResponse.json({ success: true });
108
+ }
109
+ catch (error) {
110
+ const message = error instanceof Error ? error.message : 'Failed to delete file';
111
+ return NextResponse.json({ success: false, error: message }, { status: 400 });
112
+ }
113
+ }
114
+ // Handle multiple file deletion
115
+ if (validation.urls) {
116
+ const result = await deleteFiles(validation.urls);
117
+ return NextResponse.json({
118
+ success: result.failed.length === 0,
119
+ succeeded: result.succeeded,
120
+ failed: result.failed,
121
+ });
122
+ }
123
+ return NextResponse.json({ success: false, error: 'No files specified' }, { status: 400 });
124
+ }
125
+ catch (error) {
126
+ console.error('[Media API] Delete error:', error);
127
+ return NextResponse.json({
128
+ success: false,
129
+ error: 'Failed to delete file(s)',
130
+ code: 'DELETE_FAILED',
131
+ }, { status: 500 });
132
+ }
133
+ }
134
+ //# sourceMappingURL=delete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/media/api/delete.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @rovela-ai/sdk/media/api
3
+ *
4
+ * API route handlers for media operations.
5
+ *
6
+ * Usage:
7
+ * ```typescript
8
+ * // app/api/media/presign/route.ts
9
+ * export { POST } from '@rovela-ai/sdk/media/api'
10
+ *
11
+ * // app/api/media/route.ts
12
+ * export { DELETE } from '@rovela-ai/sdk/media/api'
13
+ * ```
14
+ */
15
+ export { POST } from './presign';
16
+ export { DELETE } from './delete';
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/media/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @rovela-ai/sdk/media/api
3
+ *
4
+ * API route handlers for media operations.
5
+ *
6
+ * Usage:
7
+ * ```typescript
8
+ * // app/api/media/presign/route.ts
9
+ * export { POST } from '@rovela-ai/sdk/media/api'
10
+ *
11
+ * // app/api/media/route.ts
12
+ * export { DELETE } from '@rovela-ai/sdk/media/api'
13
+ * ```
14
+ */
15
+ export { POST } from './presign';
16
+ export { DELETE } from './delete';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/media/api/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA"}