@geekapps/silo-elements-nextjs 0.0.2 → 0.0.3
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.
- package/dist/FileUploader.d.ts +7 -0
- package/dist/FileUploader.js +284 -0
- package/dist/FileUploader.js.map +1 -0
- package/dist/ImageUploader.d.ts +7 -0
- package/dist/ImageUploader.js +334 -0
- package/dist/ImageUploader.js.map +1 -0
- package/dist/MediaUploader.d.ts +7 -0
- package/dist/MediaUploader.js +658 -0
- package/dist/MediaUploader.js.map +1 -0
- package/dist/VideoPlayer.d.ts +58 -0
- package/dist/VideoPlayer.js +1043 -0
- package/dist/VideoPlayer.js.map +1 -0
- package/dist/VideoUploader.d.ts +7 -0
- package/dist/VideoUploader.js +300 -0
- package/dist/VideoUploader.js.map +1 -0
- package/dist/components/DropZone.d.ts +20 -0
- package/dist/components/DropZone.js +137 -0
- package/dist/components/DropZone.js.map +1 -0
- package/dist/components/ProgressBar.d.ts +11 -0
- package/dist/components/ProgressBar.js +38 -0
- package/dist/components/ProgressBar.js.map +1 -0
- package/dist/index.d.ts +11 -219
- package/dist/types.d.ts +131 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/format.d.ts +4 -0
- package/dist/utils/format.js +22 -0
- package/dist/utils/format.js.map +1 -0
- package/dist/utils/theme.d.ts +8 -0
- package/dist/utils/theme.js +38 -0
- package/dist/utils/theme.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/theme.ts","../src/components/DropZone.tsx","../src/components/ProgressBar.tsx","../src/utils/format.ts","../src/ImageUploader.tsx","../src/VideoUploader.tsx","../src/FileUploader.tsx","../src/MediaUploader.tsx"],"names":["jsx","useState","useCallback","jsxs","useUpload","Fragment"],"mappings":"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","file":"MediaUploader.js","sourcesContent":["import type { SiloTheme } from \"../types.js\";\n\nexport const defaultTheme: Required<SiloTheme> = {\n borderColor: \"#e2e8f0\",\n borderColorActive: \"#6366f1\",\n backgroundColor: \"#f8fafc\",\n backgroundColorHover: \"#f1f5f9\",\n textColor: \"#0f172a\",\n textColorMuted: \"#64748b\",\n accentColor: \"#6366f1\",\n accentColorHover: \"#4f46e5\",\n errorColor: \"#ef4444\",\n successColor: \"#22c55e\",\n borderRadius: \"12px\",\n fontFamily: \"inherit\",\n};\n\nexport function resolveTheme(theme?: SiloTheme): Required<SiloTheme> {\n return { ...defaultTheme, ...theme };\n}\n\nexport function themeToVars(theme: Required<SiloTheme>): Record<string, string> {\n return {\n \"--silo-border\": theme.borderColor,\n \"--silo-border-active\": theme.borderColorActive,\n \"--silo-bg\": theme.backgroundColor,\n \"--silo-bg-hover\": theme.backgroundColorHover,\n \"--silo-text\": theme.textColor,\n \"--silo-text-muted\": theme.textColorMuted,\n \"--silo-accent\": theme.accentColor,\n \"--silo-accent-hover\": theme.accentColorHover,\n \"--silo-error\": theme.errorColor,\n \"--silo-success\": theme.successColor,\n \"--silo-radius\": theme.borderRadius,\n \"--silo-font\": theme.fontFamily,\n };\n}\n","\"use client\";\n\nimport {\n useState,\n useRef,\n useCallback,\n type DragEvent,\n type ChangeEvent,\n type ReactNode,\n type CSSProperties,\n} from \"react\";\nimport type { SiloTheme } from \"../types.js\";\nimport { resolveTheme, themeToVars } from \"../utils/theme.js\";\n\ninterface DropZoneProps {\n accept?: string;\n multiple?: boolean;\n disabled?: boolean;\n maxSize?: number;\n onFiles: (files: File[]) => void;\n onError?: (error: Error) => void;\n className?: string;\n style?: CSSProperties;\n theme?: SiloTheme;\n children: ReactNode;\n}\n\nexport function DropZone({\n accept,\n multiple = false,\n disabled = false,\n maxSize,\n onFiles,\n onError,\n className = \"\",\n style,\n theme,\n children,\n}: DropZoneProps) {\n const [dragging, setDragging] = useState(false);\n const inputRef = useRef<HTMLInputElement>(null);\n const t = resolveTheme(theme);\n const vars = themeToVars(t);\n\n const validate = useCallback(\n (files: File[]): File[] => {\n return files.filter((f) => {\n if (maxSize && f.size > maxSize) {\n onError?.(new Error(`File \"${f.name}\" exceeds max size of ${maxSize} bytes`));\n return false;\n }\n return true;\n });\n },\n [maxSize, onError]\n );\n\n const handleDrop = useCallback(\n (e: DragEvent<HTMLDivElement>) => {\n e.preventDefault();\n setDragging(false);\n if (disabled) return;\n const files = Array.from(e.dataTransfer.files);\n const valid = validate(files);\n if (valid.length) onFiles(valid);\n },\n [disabled, validate, onFiles]\n );\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const files = Array.from(e.target.files ?? []);\n const valid = validate(files);\n if (valid.length) onFiles(valid);\n e.target.value = \"\";\n },\n [validate, onFiles]\n );\n\n const rootStyle: CSSProperties = {\n ...vars as CSSProperties,\n fontFamily: \"var(--silo-font)\",\n border: `2px dashed ${dragging ? \"var(--silo-border-active)\" : \"var(--silo-border)\"}`,\n borderRadius: \"var(--silo-radius)\",\n backgroundColor: dragging ? \"var(--silo-bg-hover)\" : \"var(--silo-bg)\",\n color: \"var(--silo-text)\",\n cursor: disabled ? \"not-allowed\" : \"pointer\",\n transition: \"border-color 0.15s, background-color 0.15s\",\n opacity: disabled ? 0.5 : 1,\n ...style,\n };\n\n return (\n <div\n className={`silo-dropzone${className ? ` ${className}` : \"\"}`}\n style={rootStyle}\n onDragOver={(e) => { e.preventDefault(); if (!disabled) setDragging(true); }}\n onDragLeave={() => setDragging(false)}\n onDrop={handleDrop}\n onClick={() => !disabled && inputRef.current?.click()}\n role=\"button\"\n tabIndex={disabled ? -1 : 0}\n onKeyDown={(e) => { if (e.key === \"Enter\" || e.key === \" \") inputRef.current?.click(); }}\n aria-label=\"Upload area\"\n >\n <input\n ref={inputRef}\n type=\"file\"\n accept={accept}\n multiple={multiple}\n style={{ display: \"none\" }}\n onChange={handleChange}\n disabled={disabled}\n />\n {children}\n </div>\n );\n}\n","\"use client\";\n\nimport type { CSSProperties } from \"react\";\n\ninterface ProgressBarProps {\n progress: number;\n className?: string;\n style?: CSSProperties;\n}\n\nexport function ProgressBar({ progress, className = \"\", style }: ProgressBarProps) {\n return (\n <div\n className={`silo-progress-track${className ? ` ${className}` : \"\"}`}\n style={{\n height: \"6px\",\n borderRadius: \"3px\",\n backgroundColor: \"rgba(99,102,241,0.15)\",\n overflow: \"hidden\",\n ...style,\n }}\n role=\"progressbar\"\n aria-valuenow={progress}\n aria-valuemin={0}\n aria-valuemax={100}\n >\n <div\n className=\"silo-progress-fill\"\n style={{\n height: \"100%\",\n width: `${progress}%`,\n backgroundColor: \"var(--silo-accent, #6366f1)\",\n borderRadius: \"3px\",\n transition: \"width 0.2s ease\",\n }}\n />\n </div>\n );\n}\n","export function formatBytes(bytes: number): string {\n if (bytes < 1024) return `${bytes} B`;\n if (bytes < 1024 ** 2) return `${(bytes / 1024).toFixed(1)} KB`;\n if (bytes < 1024 ** 3) return `${(bytes / 1024 ** 2).toFixed(1)} MB`;\n return `${(bytes / 1024 ** 3).toFixed(2)} GB`;\n}\n\nexport function getFileIcon(mimeType: string): string {\n if (mimeType.startsWith(\"image/\")) return \"🖼️\";\n if (mimeType.startsWith(\"video/\")) return \"🎬\";\n if (mimeType.startsWith(\"audio/\")) return \"🎵\";\n if (mimeType === \"application/pdf\") return \"📄\";\n if (mimeType.includes(\"spreadsheet\") || mimeType.includes(\"excel\")) return \"📊\";\n if (mimeType.includes(\"presentation\") || mimeType.includes(\"powerpoint\")) return \"📑\";\n if (mimeType.includes(\"word\") || mimeType.includes(\"document\")) return \"📝\";\n if (mimeType.includes(\"zip\") || mimeType.includes(\"tar\") || mimeType.includes(\"gzip\")) return \"📦\";\n return \"📎\";\n}\n","\"use client\";\n\nimport { useState, useCallback, type CSSProperties } from \"react\";\nimport { useUpload } from \"@geekapps/silo-nextjs\";\nimport type { ImageUploaderProps } from \"./types.js\";\nimport { DropZone } from \"./components/DropZone.js\";\nimport { ProgressBar } from \"./components/ProgressBar.js\";\nimport { formatBytes } from \"./utils/format.js\";\nimport { resolveTheme, themeToVars } from \"./utils/theme.js\";\n\nexport function ImageUploader({\n bucket,\n expiresIn,\n private: isPrivate = true,\n onUpload,\n onError,\n className = \"\",\n style,\n disabled = false,\n maxSize,\n accept = \"image/*\",\n showPreview = true,\n theme,\n renderIcon,\n renderProgress,\n renderSuccess,\n renderError,\n children,\n}: ImageUploaderProps) {\n const uploadOpts = { private: isPrivate, ...(bucket !== undefined && { bucket }), ...(expiresIn !== undefined && { expiresIn }) };\n const { state, upload, reset } = useUpload(uploadOpts);\n const [preview, setPreview] = useState<string | null>(null);\n const t = resolveTheme(theme);\n const vars = themeToVars(t);\n\n const handleFiles = useCallback(\n async (files: File[]) => {\n const file = files[0];\n if (!file) return;\n\n if (showPreview) {\n const url = URL.createObjectURL(file);\n setPreview(url);\n }\n\n try {\n const result = await upload(file);\n onUpload?.(result);\n } catch (err) {\n onError?.(err instanceof Error ? err : new Error(String(err)));\n }\n },\n [upload, onUpload, onError, showPreview]\n );\n\n const containerStyle: CSSProperties = {\n ...vars as CSSProperties,\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"12px\",\n width: \"100%\",\n fontFamily: \"var(--silo-font)\",\n ...style,\n };\n\n if (state.status === \"error\" && renderError) {\n return <div style={containerStyle}>{renderError(state.error, reset)}</div>;\n }\n\n if (state.status === \"done\" && renderSuccess) {\n return <div style={containerStyle}>{renderSuccess(state.result)}</div>;\n }\n\n return (\n <div className={`silo-image-uploader${className ? ` ${className}` : \"\"}`} style={containerStyle}>\n <DropZone\n {...(accept !== undefined && { accept })}\n {...(maxSize !== undefined && { maxSize })}\n {...(onError !== undefined && { onError })}\n {...(theme !== undefined && { theme })}\n disabled={disabled || state.status === \"uploading\"}\n onFiles={handleFiles}\n style={{ padding: \"32px 24px\", textAlign: \"center\" }}\n >\n {preview && state.status !== \"uploading\" ? (\n <div style={{ display: \"flex\", flexDirection: \"column\", alignItems: \"center\", gap: \"8px\" }}>\n <img\n src={preview}\n alt=\"Preview\"\n style={{\n maxWidth: \"100%\",\n maxHeight: \"200px\",\n borderRadius: \"8px\",\n objectFit: \"contain\",\n }}\n />\n <span style={{ fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>\n Click or drag to replace\n </span>\n </div>\n ) : (\n <div style={{ display: \"flex\", flexDirection: \"column\", alignItems: \"center\", gap: \"8px\" }}>\n {renderIcon ? renderIcon() : (\n <svg width=\"40\" height=\"40\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" style={{ color: \"var(--silo-text-muted)\", opacity: 0.6 }}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={1.5} d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n </svg>\n )}\n {children ?? (\n <>\n <span style={{ fontWeight: 600, color: \"var(--silo-text)\" }}>\n Drop image here\n </span>\n <span style={{ fontSize: \"13px\", color: \"var(--silo-text-muted)\" }}>\n or click to browse\n </span>\n {maxSize && (\n <span style={{ fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>\n Max {formatBytes(maxSize)}\n </span>\n )}\n </>\n )}\n </div>\n )}\n </DropZone>\n\n {state.status === \"uploading\" && (\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: \"6px\" }}>\n {renderProgress ? (\n renderProgress(state.progress)\n ) : (\n <>\n <div style={{ display: \"flex\", justifyContent: \"space-between\", fontSize: \"13px\", color: \"var(--silo-text-muted)\" }}>\n <span>Uploading…</span>\n <span>{state.progress}%</span>\n </div>\n <ProgressBar progress={state.progress} />\n </>\n )}\n </div>\n )}\n\n {state.status === \"done\" && !renderSuccess && (\n <div style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: \"8px\",\n padding: \"10px 14px\",\n borderRadius: \"8px\",\n backgroundColor: \"rgba(34,197,94,0.1)\",\n color: \"var(--silo-success, #22c55e)\",\n fontSize: \"14px\",\n }}>\n <svg width=\"18\" height=\"18\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M5 13l4 4L19 7\" />\n </svg>\n <span>Upload complete</span>\n <button\n onClick={(e) => { e.stopPropagation(); reset(); setPreview(null); }}\n style={{ marginLeft: \"auto\", background: \"none\", border: \"none\", cursor: \"pointer\", fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}\n >\n Upload another\n </button>\n </div>\n )}\n\n {state.status === \"error\" && !renderError && (\n <div style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: \"8px\",\n padding: \"10px 14px\",\n borderRadius: \"8px\",\n backgroundColor: \"rgba(239,68,68,0.1)\",\n color: \"var(--silo-error, #ef4444)\",\n fontSize: \"14px\",\n }}>\n <svg width=\"18\" height=\"18\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z\" />\n </svg>\n <span>{state.error.message}</span>\n <button\n onClick={(e) => { e.stopPropagation(); reset(); }}\n style={{ marginLeft: \"auto\", background: \"none\", border: \"none\", cursor: \"pointer\", fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}\n >\n Retry\n </button>\n </div>\n )}\n </div>\n );\n}\n","\"use client\";\n\nimport { useState, useCallback, type CSSProperties } from \"react\";\nimport { useUpload } from \"@geekapps/silo-nextjs\";\nimport type { VideoUploaderProps } from \"./types.js\";\nimport { DropZone } from \"./components/DropZone.js\";\nimport { ProgressBar } from \"./components/ProgressBar.js\";\nimport { formatBytes } from \"./utils/format.js\";\nimport { resolveTheme, themeToVars } from \"./utils/theme.js\";\n\nexport function VideoUploader({\n bucket,\n expiresIn,\n private: isPrivate = true,\n onUpload,\n onError,\n className = \"\",\n style,\n disabled = false,\n maxSize,\n accept = \"video/*\",\n showPreview = true,\n theme,\n renderIcon,\n renderProgress,\n renderSuccess,\n renderError,\n children,\n}: VideoUploaderProps) {\n const uploadOpts = { private: isPrivate, ...(bucket !== undefined && { bucket }), ...(expiresIn !== undefined && { expiresIn }) };\n const { state, upload, reset } = useUpload(uploadOpts);\n const [preview, setPreview] = useState<string | null>(null);\n const t = resolveTheme(theme);\n const vars = themeToVars(t);\n\n const handleFiles = useCallback(\n async (files: File[]) => {\n const file = files[0];\n if (!file) return;\n\n if (showPreview) {\n const url = URL.createObjectURL(file);\n setPreview(url);\n }\n\n try {\n const result = await upload(file);\n onUpload?.(result);\n } catch (err) {\n onError?.(err instanceof Error ? err : new Error(String(err)));\n }\n },\n [upload, onUpload, onError, showPreview]\n );\n\n const containerStyle: CSSProperties = {\n ...vars as CSSProperties,\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"12px\",\n width: \"100%\",\n fontFamily: \"var(--silo-font)\",\n ...style,\n };\n\n if (state.status === \"error\" && renderError) {\n return <div style={containerStyle}>{renderError(state.error, reset)}</div>;\n }\n if (state.status === \"done\" && renderSuccess) {\n return <div style={containerStyle}>{renderSuccess(state.result)}</div>;\n }\n\n return (\n <div className={`silo-video-uploader${className ? ` ${className}` : \"\"}`} style={containerStyle}>\n <DropZone\n {...(accept !== undefined && { accept })}\n {...(maxSize !== undefined && { maxSize })}\n {...(onError !== undefined && { onError })}\n {...(theme !== undefined && { theme })}\n disabled={disabled || state.status === \"uploading\"}\n onFiles={handleFiles}\n style={{ padding: \"32px 24px\", textAlign: \"center\" }}\n >\n {preview && state.status !== \"uploading\" ? (\n <div style={{ display: \"flex\", flexDirection: \"column\", alignItems: \"center\", gap: \"8px\" }}>\n <video\n src={preview}\n style={{ maxWidth: \"100%\", maxHeight: \"180px\", borderRadius: \"8px\" }}\n controls={false}\n muted\n playsInline\n />\n <span style={{ fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>\n Click or drag to replace\n </span>\n </div>\n ) : (\n <div style={{ display: \"flex\", flexDirection: \"column\", alignItems: \"center\", gap: \"8px\" }}>\n {renderIcon ? renderIcon() : (\n <svg width=\"40\" height=\"40\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" style={{ color: \"var(--silo-text-muted)\", opacity: 0.6 }}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={1.5} d=\"M15 10l4.553-2.069A1 1 0 0121 8.878v6.244a1 1 0 01-1.447.894L15 14M3 8a2 2 0 012-2h8a2 2 0 012 2v8a2 2 0 01-2 2H5a2 2 0 01-2-2V8z\" />\n </svg>\n )}\n {children ?? (\n <>\n <span style={{ fontWeight: 600, color: \"var(--silo-text)\" }}>Drop video here</span>\n <span style={{ fontSize: \"13px\", color: \"var(--silo-text-muted)\" }}>or click to browse</span>\n <span style={{ fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>\n MP4, MOV, MKV, WebM{maxSize ? ` · Max ${formatBytes(maxSize)}` : \"\"}\n </span>\n </>\n )}\n </div>\n )}\n </DropZone>\n\n {state.status === \"uploading\" && (\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: \"6px\" }}>\n {renderProgress ? renderProgress(state.progress) : (\n <>\n <div style={{ display: \"flex\", justifyContent: \"space-between\", fontSize: \"13px\", color: \"var(--silo-text-muted)\" }}>\n <span>Uploading video…</span>\n <span>{state.progress}%</span>\n </div>\n <ProgressBar progress={state.progress} />\n <span style={{ fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>\n Processing will start after upload completes\n </span>\n </>\n )}\n </div>\n )}\n\n {state.status === \"done\" && !renderSuccess && (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\", padding: \"10px 14px\", borderRadius: \"8px\", backgroundColor: \"rgba(34,197,94,0.1)\", color: \"var(--silo-success, #22c55e)\", fontSize: \"14px\" }}>\n <svg width=\"18\" height=\"18\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M5 13l4 4L19 7\" />\n </svg>\n <span>Video uploaded — processing in background</span>\n <button onClick={(e) => { e.stopPropagation(); reset(); setPreview(null); }} style={{ marginLeft: \"auto\", background: \"none\", border: \"none\", cursor: \"pointer\", fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>\n Upload another\n </button>\n </div>\n )}\n\n {state.status === \"error\" && !renderError && (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\", padding: \"10px 14px\", borderRadius: \"8px\", backgroundColor: \"rgba(239,68,68,0.1)\", color: \"var(--silo-error, #ef4444)\", fontSize: \"14px\" }}>\n <svg width=\"18\" height=\"18\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z\" />\n </svg>\n <span>{state.error.message}</span>\n <button onClick={(e) => { e.stopPropagation(); reset(); }} style={{ marginLeft: \"auto\", background: \"none\", border: \"none\", cursor: \"pointer\", fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>\n Retry\n </button>\n </div>\n )}\n </div>\n );\n}\n","\"use client\";\n\nimport { useCallback, type CSSProperties } from \"react\";\nimport { useUpload } from \"@geekapps/silo-nextjs\";\nimport type { FileUploaderProps } from \"./types.js\";\nimport { DropZone } from \"./components/DropZone.js\";\nimport { ProgressBar } from \"./components/ProgressBar.js\";\nimport { formatBytes, getFileIcon } from \"./utils/format.js\";\nimport { resolveTheme, themeToVars } from \"./utils/theme.js\";\n\nexport function FileUploader({\n bucket,\n expiresIn,\n private: isPrivate = true,\n onUpload,\n onError,\n className = \"\",\n style,\n disabled = false,\n maxSize,\n accept,\n multiple = false,\n theme,\n renderIcon,\n renderProgress,\n renderSuccess,\n renderError,\n children,\n}: FileUploaderProps) {\n const uploadOpts = { private: isPrivate, ...(bucket !== undefined && { bucket }), ...(expiresIn !== undefined && { expiresIn }) };\n const { state, upload, reset } = useUpload(uploadOpts);\n const t = resolveTheme(theme);\n const vars = themeToVars(t);\n\n const handleFiles = useCallback(\n async (files: File[]) => {\n const file = files[0];\n if (!file) return;\n try {\n const result = await upload(file);\n onUpload?.(result);\n } catch (err) {\n onError?.(err instanceof Error ? err : new Error(String(err)));\n }\n },\n [upload, onUpload, onError]\n );\n\n const containerStyle: CSSProperties = {\n ...vars as CSSProperties,\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"12px\",\n width: \"100%\",\n fontFamily: \"var(--silo-font)\",\n ...style,\n };\n\n if (state.status === \"error\" && renderError) {\n return <div style={containerStyle}>{renderError(state.error, reset)}</div>;\n }\n if (state.status === \"done\" && renderSuccess) {\n return <div style={containerStyle}>{renderSuccess(state.result)}</div>;\n }\n\n return (\n <div className={`silo-file-uploader${className ? ` ${className}` : \"\"}`} style={containerStyle}>\n <DropZone\n {...(accept !== undefined && { accept })}\n {...(maxSize !== undefined && { maxSize })}\n {...(onError !== undefined && { onError })}\n {...(theme !== undefined && { theme })}\n multiple={multiple}\n disabled={disabled || state.status === \"uploading\"}\n onFiles={handleFiles}\n style={{ padding: \"28px 24px\", textAlign: \"center\" }}\n >\n <div style={{ display: \"flex\", flexDirection: \"column\", alignItems: \"center\", gap: \"8px\" }}>\n {renderIcon ? renderIcon() : (\n <svg width=\"40\" height=\"40\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" style={{ color: \"var(--silo-text-muted)\", opacity: 0.6 }}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={1.5} d=\"M9 13h6m-3-3v6m5 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n </svg>\n )}\n {children ?? (\n <>\n <span style={{ fontWeight: 600, color: \"var(--silo-text)\" }}>\n {multiple ? \"Drop files here\" : \"Drop a file here\"}\n </span>\n <span style={{ fontSize: \"13px\", color: \"var(--silo-text-muted)\" }}>or click to browse</span>\n {maxSize && <span style={{ fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>Max {formatBytes(maxSize)}</span>}\n </>\n )}\n </div>\n </DropZone>\n\n {state.status === \"uploading\" && (\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: \"6px\" }}>\n {renderProgress ? renderProgress(state.progress) : (\n <>\n <div style={{ display: \"flex\", justifyContent: \"space-between\", fontSize: \"13px\", color: \"var(--silo-text-muted)\" }}>\n <span>Uploading…</span>\n <span>{state.progress}%</span>\n </div>\n <ProgressBar progress={state.progress} />\n </>\n )}\n </div>\n )}\n\n {state.status === \"done\" && !renderSuccess && (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"10px\", padding: \"10px 14px\", borderRadius: \"8px\", backgroundColor: \"rgba(34,197,94,0.08)\", border: \"1px solid rgba(34,197,94,0.2)\", fontSize: \"14px\" }}>\n <svg width=\"18\" height=\"18\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" style={{ color: \"#22c55e\", flexShrink: 0 }}>\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M5 13l4 4L19 7\" />\n </svg>\n <div style={{ flex: 1, minWidth: 0 }}>\n <div style={{ fontWeight: 500, color: \"var(--silo-text)\", overflow: \"hidden\", textOverflow: \"ellipsis\", whiteSpace: \"nowrap\" }}>{state.result.key}</div>\n <div style={{ fontSize: \"12px\", color: \"var(--silo-text-muted)\" }}>{formatBytes(state.result.size)}</div>\n </div>\n <button onClick={(e) => { e.stopPropagation(); reset(); }} style={{ background: \"none\", border: \"none\", cursor: \"pointer\", fontSize: \"12px\", color: \"var(--silo-text-muted)\", flexShrink: 0 }}>\n Replace\n </button>\n </div>\n )}\n\n {state.status === \"error\" && !renderError && (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: \"8px\", padding: \"10px 14px\", borderRadius: \"8px\", backgroundColor: \"rgba(239,68,68,0.1)\", color: \"var(--silo-error, #ef4444)\", fontSize: \"14px\" }}>\n <span>{state.error.message}</span>\n <button onClick={(e) => { e.stopPropagation(); reset(); }} style={{ marginLeft: \"auto\", background: \"none\", border: \"none\", cursor: \"pointer\", fontSize: \"12px\" }}>Retry</button>\n </div>\n )}\n </div>\n );\n}\n","\"use client\";\n\nimport { useState, type CSSProperties } from \"react\";\nimport type { MediaUploaderProps } from \"./types.js\";\nimport { ImageUploader } from \"./ImageUploader.js\";\nimport { VideoUploader } from \"./VideoUploader.js\";\nimport { FileUploader } from \"./FileUploader.js\";\nimport { resolveTheme, themeToVars } from \"./utils/theme.js\";\n\ntype Tab = \"image\" | \"video\" | \"file\";\n\nconst TAB_LABELS: Record<Tab, { label: string; icon: string }> = {\n image: { label: \"Image\", icon: \"🖼️\" },\n video: { label: \"Video\", icon: \"🎬\" },\n file: { label: \"File\", icon: \"📎\" },\n};\n\nexport function MediaUploader({\n tabs = [\"image\", \"video\", \"file\"],\n defaultTab,\n imageProps,\n videoProps,\n fileProps,\n className = \"\",\n style,\n theme,\n onUpload,\n onError,\n ...shared\n}: MediaUploaderProps) {\n const [activeTab, setActiveTab] = useState<Tab>(defaultTab ?? tabs[0] ?? \"image\");\n const t = resolveTheme(theme);\n const vars = themeToVars(t);\n\n const containerStyle: CSSProperties = {\n ...vars as CSSProperties,\n display: \"flex\",\n flexDirection: \"column\",\n gap: \"0\",\n width: \"100%\",\n fontFamily: \"var(--silo-font)\",\n border: \"1px solid var(--silo-border)\",\n borderRadius: \"var(--silo-radius)\",\n overflow: \"hidden\",\n backgroundColor: \"var(--silo-bg)\",\n ...style,\n };\n\n return (\n <div className={`silo-media-uploader${className ? ` ${className}` : \"\"}`} style={containerStyle}>\n {/* Tab bar */}\n <div style={{ display: \"flex\", borderBottom: \"1px solid var(--silo-border)\" }}>\n {tabs.map((tab) => (\n <button\n key={tab}\n onClick={() => setActiveTab(tab)}\n style={{\n flex: 1,\n padding: \"10px 8px\",\n background: \"none\",\n border: \"none\",\n borderBottom: `2px solid ${activeTab === tab ? \"var(--silo-accent)\" : \"transparent\"}`,\n cursor: \"pointer\",\n fontSize: \"13px\",\n fontWeight: activeTab === tab ? 600 : 400,\n color: activeTab === tab ? \"var(--silo-accent)\" : \"var(--silo-text-muted)\",\n transition: \"color 0.15s, border-color 0.15s\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: \"6px\",\n }}\n >\n <span>{TAB_LABELS[tab].icon}</span>\n <span>{TAB_LABELS[tab].label}</span>\n </button>\n ))}\n </div>\n\n {/* Tab content */}\n <div style={{ padding: \"16px\" }}>\n {activeTab === \"image\" && (\n <ImageUploader\n {...shared}\n {...imageProps}\n {...(theme !== undefined && { theme })}\n {...(onUpload !== undefined && { onUpload })}\n {...(onError !== undefined && { onError })}\n />\n )}\n {activeTab === \"video\" && (\n <VideoUploader\n {...shared}\n {...videoProps}\n {...(theme !== undefined && { theme })}\n {...(onUpload !== undefined && { onUpload })}\n {...(onError !== undefined && { onError })}\n />\n )}\n {activeTab === \"file\" && (\n <FileUploader\n {...shared}\n {...fileProps}\n {...(theme !== undefined && { theme })}\n {...(onUpload !== undefined && { onUpload })}\n {...(onError !== undefined && { onError })}\n />\n )}\n </div>\n </div>\n );\n}\n"]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
type VideoSourceType = "dash" | "hls" | "file";
|
|
5
|
+
type SourceProps = {
|
|
6
|
+
id?: string;
|
|
7
|
+
src: string;
|
|
8
|
+
label?: string;
|
|
9
|
+
type?: VideoSourceType;
|
|
10
|
+
default?: boolean;
|
|
11
|
+
};
|
|
12
|
+
type SourcesProps = {
|
|
13
|
+
children: ReactNode;
|
|
14
|
+
};
|
|
15
|
+
type SubtitleProps = {
|
|
16
|
+
src: string;
|
|
17
|
+
srclang: string;
|
|
18
|
+
label: string;
|
|
19
|
+
default?: boolean;
|
|
20
|
+
};
|
|
21
|
+
type SubtitlesProps = {
|
|
22
|
+
children: ReactNode;
|
|
23
|
+
};
|
|
24
|
+
type StoryboardFrameProps = {
|
|
25
|
+
start: number;
|
|
26
|
+
end: number;
|
|
27
|
+
image: string;
|
|
28
|
+
x?: number;
|
|
29
|
+
y?: number;
|
|
30
|
+
w?: number;
|
|
31
|
+
h?: number;
|
|
32
|
+
};
|
|
33
|
+
type StoryboardProps = {
|
|
34
|
+
src?: string;
|
|
35
|
+
fallbackImage?: string;
|
|
36
|
+
width?: number;
|
|
37
|
+
height?: number;
|
|
38
|
+
children?: ReactNode;
|
|
39
|
+
};
|
|
40
|
+
type VideoProps = {
|
|
41
|
+
title?: string;
|
|
42
|
+
description?: string;
|
|
43
|
+
poster?: string;
|
|
44
|
+
children: ReactNode;
|
|
45
|
+
className?: string;
|
|
46
|
+
autoHideControls?: boolean;
|
|
47
|
+
defaultVolume?: number;
|
|
48
|
+
};
|
|
49
|
+
declare function Sources(_props: SourcesProps): null;
|
|
50
|
+
declare function Source(_props: SourceProps): null;
|
|
51
|
+
declare function Subtitles(_props: SubtitlesProps): null;
|
|
52
|
+
declare function Subtitle(_props: SubtitleProps): null;
|
|
53
|
+
declare function Storyboard(_props: StoryboardProps): null;
|
|
54
|
+
declare function StoryboardFrame(_props: StoryboardFrameProps): null;
|
|
55
|
+
declare function Video({ title, description, poster, children, className, autoHideControls, defaultVolume, }: VideoProps): react_jsx_runtime.JSX.Element;
|
|
56
|
+
declare const VideoPlayer: typeof Video;
|
|
57
|
+
|
|
58
|
+
export { Source, type SourceProps, Sources, type SourcesProps, Storyboard, StoryboardFrame, type StoryboardFrameProps, type StoryboardProps, Subtitle, type SubtitleProps, Subtitles, type SubtitlesProps, Video, VideoPlayer, type VideoSourceType };
|