@uploadcare/react-uploader 1.10.2 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -3
- package/dist/AdapterUploadCtxProvider--oZg9dbA.js +123 -0
- package/dist/AdapterUploadCtxProvider-BEclhH9w.cjs +1 -0
- package/dist/FileUploaderInline-C3NVuNGn.js +42 -0
- package/dist/FileUploaderInline-FRHcOxrG.cjs +1 -0
- package/dist/FileUploaderMinimal-C-0LhFvR.cjs +1 -0
- package/dist/FileUploaderMinimal-DFAyd4FM.js +42 -0
- package/dist/FileUploaderRegular-CBuqQcit.cjs +1 -0
- package/dist/FileUploaderRegular-spR27Bft.js +43 -0
- package/dist/nextjs.cjs +1 -1
- package/dist/nextjs.d.ts +6 -6
- package/dist/nextjs.js +6 -6
- package/dist/react-uploader.cjs +1 -1
- package/dist/react-uploader.css +25 -1
- package/dist/react-uploader.d.ts +9 -9
- package/dist/react-uploader.js +9 -9
- package/package.json +12 -5
- package/dist/FileUploaderInline-CZAiSm9W.cjs +0 -1
- package/dist/FileUploaderInline-vnUbJRWK.js +0 -32
- package/dist/FileUploaderMinimal-Br6g5xIZ.js +0 -32
- package/dist/FileUploaderMinimal-PCu1vQTw.cjs +0 -1
- package/dist/FileUploaderRegular-7siZ0stp.cjs +0 -1
- package/dist/FileUploaderRegular-DOI7Lze6.js +0 -32
- package/dist/useIsBrowser-BfTbCFcA.cjs +0 -1
- package/dist/useIsBrowser-wdFeUbZ-.js +0 -123
package/README.md
CHANGED
|
@@ -54,7 +54,6 @@ We provide a full set of props that are used in File Uploader. For review we sug
|
|
|
54
54
|
|
|
55
55
|
For convenience, we provide the ability to access the File Uploader API using `apiRef`.
|
|
56
56
|
You can see what methods are available in `apiRef` in the [documentation][uc-docs-file-uploader-api].
|
|
57
|
-
It is important to note that we now pass all InstanceType from UploadCtxProvider.
|
|
58
57
|
|
|
59
58
|
```jsx
|
|
60
59
|
import React, {useRef, useEffect} from "react";
|
|
@@ -65,7 +64,7 @@ import {
|
|
|
65
64
|
import "@uploadcare/react-uploader/core.css";
|
|
66
65
|
|
|
67
66
|
const Example = () => {
|
|
68
|
-
const uploaderRef = useRef<
|
|
67
|
+
const uploaderRef = useRef<UploadCtxProvider | null>(null);
|
|
69
68
|
|
|
70
69
|
<FileUploaderRegular apiRef={uploaderRef} pubkey="YOUR_PUBLIC_KEY"/>;
|
|
71
70
|
}
|
|
@@ -155,4 +154,4 @@ request at [hello@uploadcare.com][uc-email-hello].
|
|
|
155
154
|
|
|
156
155
|
[uc-docs-events]: https://uploadcare.com/docs/file-uploader/events/
|
|
157
156
|
[uc-docs-file-uploader-api]: https://uploadcare.com/docs/file-uploader/api
|
|
158
|
-
[uc-docs-file-uploader-options]: https://uploadcare.com/docs/file-uploader/options/
|
|
157
|
+
[uc-docs-file-uploader-options]: https://uploadcare.com/docs/file-uploader/options/
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import P, { useState as w, useEffect as y } from "react";
|
|
2
|
+
import * as v from "@uploadcare/file-uploader";
|
|
3
|
+
const b = /* @__PURE__ */ new Set([
|
|
4
|
+
"children",
|
|
5
|
+
"ref",
|
|
6
|
+
"style",
|
|
7
|
+
"className"
|
|
8
|
+
]), A = (e = {}) => Object == null ? void 0 : Object.keys(e).reduce((n, o) => {
|
|
9
|
+
var s, t;
|
|
10
|
+
const r = e == null ? void 0 : e[o], a = `on${(t = (s = r == null ? void 0 : r.split("-")) == null ? void 0 : s.map((c) => c.charAt(0).toUpperCase() + c.slice(1))) == null ? void 0 : t.join("")}`;
|
|
11
|
+
return n[a] = r, n;
|
|
12
|
+
}, {}), m = /* @__PURE__ */ new WeakMap(), M = (e) => {
|
|
13
|
+
let n = m.get(e);
|
|
14
|
+
return n === void 0 && (n = /* @__PURE__ */ new Map(), m.set(e, n)), n;
|
|
15
|
+
}, E = ({
|
|
16
|
+
node: e,
|
|
17
|
+
nameProp: n,
|
|
18
|
+
valueProp: o,
|
|
19
|
+
prevValueProp: s,
|
|
20
|
+
event: t
|
|
21
|
+
}) => {
|
|
22
|
+
if (t !== void 0) {
|
|
23
|
+
if (o !== s) {
|
|
24
|
+
const r = M(e), a = r.has(t);
|
|
25
|
+
let c = r.get(t);
|
|
26
|
+
o !== void 0 ? a ? c.handleEvent = o : (c = { handleEvent: o }, r.set(t, c), e.addEventListener(
|
|
27
|
+
t,
|
|
28
|
+
(u) => c.handleEvent(u.detail)
|
|
29
|
+
)) : a && (r.delete(t), e.removeEventListener(t, c));
|
|
30
|
+
}
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
e[n] = o, o == null && n in HTMLElement.prototype && e.removeAttribute(n);
|
|
34
|
+
}, O = (e, n, o) => {
|
|
35
|
+
const s = {}, t = {};
|
|
36
|
+
return Object.entries(e).forEach(([r, a]) => {
|
|
37
|
+
b.has(r) ? s[r === "className" ? "class" : r] = a : n.has(r) || r in o.prototype ? t[r] = a : s[r] = a;
|
|
38
|
+
}), { reactProps: s, customElProps: t };
|
|
39
|
+
}, g = ({
|
|
40
|
+
react: e,
|
|
41
|
+
// https://react.dev/warnings/invalid-hook-call-warning
|
|
42
|
+
tag: n,
|
|
43
|
+
elClass: o,
|
|
44
|
+
schemaEvents: s
|
|
45
|
+
}) => {
|
|
46
|
+
const t = A(s), r = new Set(Object.keys(t ?? {})), a = e.forwardRef(
|
|
47
|
+
(c, u) => {
|
|
48
|
+
const i = e.useRef(/* @__PURE__ */ new Map()), d = e.useRef(null), { reactProps: h, customElProps: f } = O(c, r, o);
|
|
49
|
+
return e.useLayoutEffect(() => {
|
|
50
|
+
if (d.current === null)
|
|
51
|
+
return;
|
|
52
|
+
const p = /* @__PURE__ */ new Map();
|
|
53
|
+
for (const l in f)
|
|
54
|
+
E({
|
|
55
|
+
node: d.current,
|
|
56
|
+
nameProp: l,
|
|
57
|
+
valueProp: f[l],
|
|
58
|
+
prevValueProp: i.current.get(l),
|
|
59
|
+
event: t[l]
|
|
60
|
+
}), i.current.delete(l), p.set(l, c[l]);
|
|
61
|
+
for (const [l, C] of i.current)
|
|
62
|
+
E({
|
|
63
|
+
node: d.current,
|
|
64
|
+
nameProp: l,
|
|
65
|
+
valueProp: void 0,
|
|
66
|
+
prevValueProp: C,
|
|
67
|
+
event: t[l]
|
|
68
|
+
});
|
|
69
|
+
i.current = p;
|
|
70
|
+
}), e.createElement(n ?? o.__tag, {
|
|
71
|
+
...h,
|
|
72
|
+
ref: e.useCallback(
|
|
73
|
+
(p) => {
|
|
74
|
+
d.current = p, typeof u == "function" ? u(p) : u !== null && (u.current = p);
|
|
75
|
+
},
|
|
76
|
+
[u]
|
|
77
|
+
)
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
);
|
|
81
|
+
return a.displayName = o.name, a;
|
|
82
|
+
}, x = ({ children: e }) => e, R = () => {
|
|
83
|
+
const [e, n] = w(!1);
|
|
84
|
+
return y(() => {
|
|
85
|
+
typeof window < "u" && n(!0);
|
|
86
|
+
}, []), e;
|
|
87
|
+
}, k = (e) => {
|
|
88
|
+
const n = {}, o = {}, s = {};
|
|
89
|
+
for (const [t, r] of Object.entries(e)) {
|
|
90
|
+
if (t.startsWith("on")) {
|
|
91
|
+
n[t] = r;
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
if (t === "headless") {
|
|
95
|
+
s[t] = r;
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
98
|
+
o[t] = r;
|
|
99
|
+
}
|
|
100
|
+
return {
|
|
101
|
+
eventHandlers: n,
|
|
102
|
+
uploader: s,
|
|
103
|
+
config: o
|
|
104
|
+
};
|
|
105
|
+
}, U = "1.11.0-alpha.0", j = "React-Uploader", I = () => `${j}/${U}`, L = g({
|
|
106
|
+
react: P,
|
|
107
|
+
tag: "uc-config",
|
|
108
|
+
elClass: v.Config
|
|
109
|
+
}), S = g({
|
|
110
|
+
react: P,
|
|
111
|
+
tag: "uc-upload-ctx-provider",
|
|
112
|
+
elClass: v.UploadCtxProvider,
|
|
113
|
+
schemaEvents: v.UploadCtxProvider.EventType
|
|
114
|
+
});
|
|
115
|
+
export {
|
|
116
|
+
L as A,
|
|
117
|
+
x as C,
|
|
118
|
+
I as a,
|
|
119
|
+
S as b,
|
|
120
|
+
g as c,
|
|
121
|
+
k as g,
|
|
122
|
+
R as u
|
|
123
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const f=require("react"),h=require("@uploadcare/file-uploader");function w(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const v=w(h),y=new Set(["children","ref","style","className"]),O=(e={})=>Object==null?void 0:Object.keys(e).reduce((t,n)=>{var s,r;const o=e==null?void 0:e[n],a=`on${(r=(s=o==null?void 0:o.split("-"))==null?void 0:s.map(c=>c.charAt(0).toUpperCase()+c.slice(1)))==null?void 0:r.join("")}`;return t[a]=o,t},{}),m=new WeakMap,j=e=>{let t=m.get(e);return t===void 0&&(t=new Map,m.set(e,t)),t},E=({node:e,nameProp:t,valueProp:n,prevValueProp:s,event:r})=>{if(r!==void 0){if(n!==s){const o=j(e),a=o.has(r);let c=o.get(r);n!==void 0?a?c.handleEvent=n:(c={handleEvent:n},o.set(r,c),e.addEventListener(r,u=>c.handleEvent(u.detail))):a&&(o.delete(r),e.removeEventListener(r,c))}return}e[t]=n,n==null&&t in HTMLElement.prototype&&e.removeAttribute(t)},U=(e,t,n)=>{const s={},r={};return Object.entries(e).forEach(([o,a])=>{y.has(o)?s[o==="className"?"class":o]=a:t.has(o)||o in n.prototype?r[o]=a:s[o]=a}),{reactProps:s,customElProps:r}},g=({react:e,tag:t,elClass:n,schemaEvents:s})=>{const r=O(s),o=new Set(Object.keys(r??{})),a=e.forwardRef((c,u)=>{const p=e.useRef(new Map),d=e.useRef(null),{reactProps:C,customElProps:P}=U(c,o,n);return e.useLayoutEffect(()=>{if(d.current===null)return;const i=new Map;for(const l in P)E({node:d.current,nameProp:l,valueProp:P[l],prevValueProp:p.current.get(l),event:r[l]}),p.current.delete(l),i.set(l,c[l]);for(const[l,b]of p.current)E({node:d.current,nameProp:l,valueProp:void 0,prevValueProp:b,event:r[l]});p.current=i}),e.createElement(t??n.__tag,{...C,ref:e.useCallback(i=>{d.current=i,typeof u=="function"?u(i):u!==null&&(u.current=i)},[u])})});return a.displayName=n.name,a},A=({children:e})=>e,M=()=>{const[e,t]=f.useState(!1);return f.useEffect(()=>{typeof window<"u"&&t(!0)},[]),e},N=e=>{const t={},n={},s={};for(const[r,o]of Object.entries(e)){if(r.startsWith("on")){t[r]=o;continue}if(r==="headless"){s[r]=o;continue}n[r]=o}return{eventHandlers:t,uploader:s,config:n}},S="1.11.0-alpha.0",I="React-Uploader",_=()=>`${I}/${S}`,k=g({react:f,tag:"uc-config",elClass:v.Config}),x=g({react:f,tag:"uc-upload-ctx-provider",elClass:v.UploadCtxProvider,schemaEvents:v.UploadCtxProvider.EventType});exports.AdapterConfig=k;exports.AdapterUploadCtxProvider=x;exports.ConditionalSuspense=A;exports.b=g;exports.getCalcPropertyOfProps=N;exports.getUserAgentIntegration=_;exports.useIsBrowser=M;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import * as t from "@uploadcare/file-uploader";
|
|
2
|
+
import e, { useMemo as d } from "react";
|
|
3
|
+
import { g, u as f, C, A as u, a as A, b as U, c as E } from "./AdapterUploadCtxProvider--oZg9dbA.js";
|
|
4
|
+
t.defineComponents(t);
|
|
5
|
+
const I = E({
|
|
6
|
+
react: e,
|
|
7
|
+
tag: "uc-file-uploader-inline",
|
|
8
|
+
elClass: t.FileUploaderMinimal
|
|
9
|
+
}), F = ({
|
|
10
|
+
ctxName: r,
|
|
11
|
+
className: a,
|
|
12
|
+
classNameUploader: o,
|
|
13
|
+
apiRef: s,
|
|
14
|
+
fallback: i,
|
|
15
|
+
...l
|
|
16
|
+
}) => {
|
|
17
|
+
const n = d(() => r ?? t.UID.generate(), [r]), { eventHandlers: c, config: m } = g(l), p = f();
|
|
18
|
+
return /* @__PURE__ */ e.createElement(C, { condition: p, fallback: i }, /* @__PURE__ */ e.createElement("div", { className: a }, /* @__PURE__ */ e.createElement(
|
|
19
|
+
u,
|
|
20
|
+
{
|
|
21
|
+
userAgentIntegration: A(),
|
|
22
|
+
"ctx-name": n,
|
|
23
|
+
...m
|
|
24
|
+
}
|
|
25
|
+
), /* @__PURE__ */ e.createElement(
|
|
26
|
+
U,
|
|
27
|
+
{
|
|
28
|
+
ref: s,
|
|
29
|
+
"ctx-name": n,
|
|
30
|
+
...c
|
|
31
|
+
}
|
|
32
|
+
), /* @__PURE__ */ e.createElement(
|
|
33
|
+
I,
|
|
34
|
+
{
|
|
35
|
+
class: o,
|
|
36
|
+
"ctx-name": n
|
|
37
|
+
}
|
|
38
|
+
)));
|
|
39
|
+
};
|
|
40
|
+
export {
|
|
41
|
+
F as FileUploaderInline
|
|
42
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("@uploadcare/file-uploader"),t=require("react"),n=require("./AdapterUploadCtxProvider-BEclhH9w.cjs");function f(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const l=f(g);l.defineComponents(l);const m=n.b({react:t,tag:"uc-file-uploader-inline",elClass:l.FileUploaderMinimal}),C=({ctxName:e,className:o,classNameUploader:r,apiRef:a,fallback:c,...s})=>{const i=t.useMemo(()=>e??l.UID.generate(),[e]),{eventHandlers:d,config:u}=n.getCalcPropertyOfProps(s),p=n.useIsBrowser();return t.createElement(n.ConditionalSuspense,{condition:p,fallback:c},t.createElement("div",{className:o},t.createElement(n.AdapterConfig,{userAgentIntegration:n.getUserAgentIntegration(),"ctx-name":i,...u}),t.createElement(n.AdapterUploadCtxProvider,{ref:a,"ctx-name":i,...d}),t.createElement(m,{class:r,"ctx-name":i})))};exports.FileUploaderInline=C;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@uploadcare/file-uploader"),t=require("react"),r=require("./AdapterUploadCtxProvider-BEclhH9w.cjs");function g(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,a.get?a:{enumerable:!0,get:()=>e[n]})}}return o.default=e,Object.freeze(o)}const i=g(m);i.defineComponents(i);const f=r.b({react:t,tag:"uc-file-uploader-minimal",elClass:i.FileUploaderMinimal}),C=({ctxName:e,className:o,classNameUploader:n,apiRef:a,fallback:c,...s})=>{const l=t.useMemo(()=>e??i.UID.generate(),[e]),{eventHandlers:d,config:u}=r.getCalcPropertyOfProps(s),p=r.useIsBrowser();return t.createElement(r.ConditionalSuspense,{condition:p,fallback:c},t.createElement("div",{className:o},t.createElement(r.AdapterConfig,{userAgentIntegration:r.getUserAgentIntegration(),"ctx-name":l,...u}),t.createElement(r.AdapterUploadCtxProvider,{ref:a,"ctx-name":l,...d}),t.createElement(f,{class:n,"ctx-name":l})))};exports.FileUploaderMinimal=C;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import * as t from "@uploadcare/file-uploader";
|
|
2
|
+
import e, { useMemo as d } from "react";
|
|
3
|
+
import { g, u as f, C, A as u, a as A, b as U, c as E } from "./AdapterUploadCtxProvider--oZg9dbA.js";
|
|
4
|
+
t.defineComponents(t);
|
|
5
|
+
const M = E({
|
|
6
|
+
react: e,
|
|
7
|
+
tag: "uc-file-uploader-minimal",
|
|
8
|
+
elClass: t.FileUploaderMinimal
|
|
9
|
+
}), v = ({
|
|
10
|
+
ctxName: r,
|
|
11
|
+
className: n,
|
|
12
|
+
classNameUploader: o,
|
|
13
|
+
apiRef: s,
|
|
14
|
+
fallback: i,
|
|
15
|
+
...l
|
|
16
|
+
}) => {
|
|
17
|
+
const a = d(() => r ?? t.UID.generate(), [r]), { eventHandlers: c, config: m } = g(l), p = f();
|
|
18
|
+
return /* @__PURE__ */ e.createElement(C, { condition: p, fallback: i }, /* @__PURE__ */ e.createElement("div", { className: n }, /* @__PURE__ */ e.createElement(
|
|
19
|
+
u,
|
|
20
|
+
{
|
|
21
|
+
userAgentIntegration: A(),
|
|
22
|
+
"ctx-name": a,
|
|
23
|
+
...m
|
|
24
|
+
}
|
|
25
|
+
), /* @__PURE__ */ e.createElement(
|
|
26
|
+
U,
|
|
27
|
+
{
|
|
28
|
+
ref: s,
|
|
29
|
+
"ctx-name": a,
|
|
30
|
+
...c
|
|
31
|
+
}
|
|
32
|
+
), /* @__PURE__ */ e.createElement(
|
|
33
|
+
M,
|
|
34
|
+
{
|
|
35
|
+
class: o,
|
|
36
|
+
"ctx-name": a
|
|
37
|
+
}
|
|
38
|
+
)));
|
|
39
|
+
};
|
|
40
|
+
export {
|
|
41
|
+
v as FileUploaderMinimal
|
|
42
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("@uploadcare/file-uploader"),t=require("react"),r=require("./AdapterUploadCtxProvider-BEclhH9w.cjs");function m(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,a.get?a:{enumerable:!0,get:()=>e[n]})}}return o.default=e,Object.freeze(o)}const l=m(f);l.defineComponents(l);const C=r.b({react:t,tag:"uc-file-uploader-regular",elClass:l.FileUploaderRegular}),U=({ctxName:e,className:o,classNameUploader:n,apiRef:a,fallback:s,...i})=>{const c=t.useMemo(()=>e??l.UID.generate(),[e]),{eventHandlers:u,config:d,uploader:p}=r.getCalcPropertyOfProps(i),g=r.useIsBrowser();return t.createElement(r.ConditionalSuspense,{condition:g,fallback:s},t.createElement("div",{className:o},t.createElement(r.AdapterConfig,{userAgentIntegration:r.getUserAgentIntegration(),"ctx-name":c,...d}),t.createElement(r.AdapterUploadCtxProvider,{ref:a,"ctx-name":c,...u}),t.createElement(C,{class:n,"ctx-name":c,...p})))};exports.FileUploaderRegular=U;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import * as r from "@uploadcare/file-uploader";
|
|
2
|
+
import e, { useMemo as m } from "react";
|
|
3
|
+
import { g as u, u as f, C, A, a as U, b as E, c as x } from "./AdapterUploadCtxProvider--oZg9dbA.js";
|
|
4
|
+
r.defineComponents(r);
|
|
5
|
+
const I = x({
|
|
6
|
+
react: e,
|
|
7
|
+
tag: "uc-file-uploader-regular",
|
|
8
|
+
elClass: r.FileUploaderRegular
|
|
9
|
+
}), F = ({
|
|
10
|
+
ctxName: a,
|
|
11
|
+
className: o,
|
|
12
|
+
classNameUploader: n,
|
|
13
|
+
apiRef: s,
|
|
14
|
+
fallback: l,
|
|
15
|
+
...c
|
|
16
|
+
}) => {
|
|
17
|
+
const t = m(() => a ?? r.UID.generate(), [a]), { eventHandlers: i, config: p, uploader: d } = u(c), g = f();
|
|
18
|
+
return /* @__PURE__ */ e.createElement(C, { condition: g, fallback: l }, /* @__PURE__ */ e.createElement("div", { className: o }, /* @__PURE__ */ e.createElement(
|
|
19
|
+
A,
|
|
20
|
+
{
|
|
21
|
+
userAgentIntegration: U(),
|
|
22
|
+
"ctx-name": t,
|
|
23
|
+
...p
|
|
24
|
+
}
|
|
25
|
+
), /* @__PURE__ */ e.createElement(
|
|
26
|
+
E,
|
|
27
|
+
{
|
|
28
|
+
ref: s,
|
|
29
|
+
"ctx-name": t,
|
|
30
|
+
...i
|
|
31
|
+
}
|
|
32
|
+
), /* @__PURE__ */ e.createElement(
|
|
33
|
+
I,
|
|
34
|
+
{
|
|
35
|
+
class: n,
|
|
36
|
+
"ctx-name": t,
|
|
37
|
+
...d
|
|
38
|
+
}
|
|
39
|
+
)));
|
|
40
|
+
};
|
|
41
|
+
export {
|
|
42
|
+
F as FileUploaderRegular
|
|
43
|
+
};
|
package/dist/nextjs.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("next/dynamic"),r=l(()=>Promise.resolve().then(()=>require("./
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("next/dynamic"),r=l(()=>Promise.resolve().then(()=>require("./FileUploaderInline-FRHcOxrG.cjs")).then(e=>e.FileUploaderInline),{ssr:!1}),i=l(()=>Promise.resolve().then(()=>require("./FileUploaderMinimal-C-0LhFvR.cjs")).then(e=>e.FileUploaderMinimal),{ssr:!1}),o=l(()=>Promise.resolve().then(()=>require("./FileUploaderRegular-CBuqQcit.cjs")).then(e=>e.FileUploaderRegular),{ssr:!1});exports.FileUploaderInline=r;exports.FileUploaderMinimal=i;exports.FileUploaderRegular=o;
|
package/dist/nextjs.d.ts
CHANGED
|
@@ -28,13 +28,13 @@ declare type EventProps = Partial<TEventsSchema>;
|
|
|
28
28
|
|
|
29
29
|
export declare const FileUploaderInline: ComponentType<TProps<"Inline">>;
|
|
30
30
|
|
|
31
|
-
declare type FileUploaderInlineProps =
|
|
31
|
+
declare type FileUploaderInlineProps = Record<string, unknown>;
|
|
32
32
|
|
|
33
33
|
export declare const FileUploaderMinimal: ComponentType<TProps<"Minimal">>;
|
|
34
34
|
|
|
35
|
-
declare type FileUploaderMinimalProps =
|
|
35
|
+
declare type FileUploaderMinimalProps = Record<string, unknown>;
|
|
36
36
|
|
|
37
|
-
declare type FileUploaderModes =
|
|
37
|
+
declare type FileUploaderModes = "Regular" | "Minimal" | "Inline";
|
|
38
38
|
|
|
39
39
|
export declare const FileUploaderRegular: ComponentType<TProps<"Regular">>;
|
|
40
40
|
|
|
@@ -53,7 +53,7 @@ declare type TExtraPrefixOn<S extends string> = `on${Capitalize<S>}`;
|
|
|
53
53
|
|
|
54
54
|
declare type TPrefixOnAndCamelCase<S extends string> = TExtraPrefixOn<TToCamelCase<S>>;
|
|
55
55
|
|
|
56
|
-
declare type TProps<T extends FileUploaderModes> = CommonProps & ConfigProps & EventProps &
|
|
56
|
+
declare type TProps<T extends FileUploaderModes> = CommonProps & ConfigProps & EventProps & UploadCtxProviderProps & Pick<TProps_2, "fallback"> & (T extends "Regular" ? FileUploaderRegularProps : T extends "Minimal" ? FileUploaderMinimalProps : T extends "Inline" ? FileUploaderInlineProps : never);
|
|
57
57
|
|
|
58
58
|
declare type TProps_2 = {
|
|
59
59
|
fallback?: default_2.ReactNode | default_2.ReactPortal | null;
|
|
@@ -63,8 +63,8 @@ declare type TProps_2 = {
|
|
|
63
63
|
|
|
64
64
|
declare type TToCamelCase<S extends string> = S extends `${infer Head}-${infer Tail}` ? `${Lowercase<Head>}${Capitalize<TToCamelCase<Tail>>}` : Lowercase<S>;
|
|
65
65
|
|
|
66
|
-
declare type
|
|
67
|
-
apiRef?: Ref<
|
|
66
|
+
declare type UploadCtxProviderProps = {
|
|
67
|
+
apiRef?: Ref<UploadCtxProvider>;
|
|
68
68
|
};
|
|
69
69
|
|
|
70
70
|
export { }
|
package/dist/nextjs.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import l from "next/dynamic";
|
|
2
2
|
const r = l(
|
|
3
|
-
() => import("./
|
|
3
|
+
() => import("./FileUploaderInline-C3NVuNGn.js").then((e) => e.FileUploaderInline),
|
|
4
4
|
{ ssr: !1 }
|
|
5
5
|
), o = l(
|
|
6
|
-
() => import("./
|
|
6
|
+
() => import("./FileUploaderMinimal-DFAyd4FM.js").then((e) => e.FileUploaderMinimal),
|
|
7
7
|
{ ssr: !1 }
|
|
8
8
|
), a = l(
|
|
9
|
-
() => import("./
|
|
9
|
+
() => import("./FileUploaderRegular-spR27Bft.js").then((e) => e.FileUploaderRegular),
|
|
10
10
|
{ ssr: !1 }
|
|
11
11
|
);
|
|
12
12
|
export {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
r as FileUploaderInline,
|
|
14
|
+
o as FileUploaderMinimal,
|
|
15
|
+
a as FileUploaderRegular
|
|
16
16
|
};
|
package/dist/react-uploader.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@uploadcare/file-uploader"),l=require("./FileUploaderInline-FRHcOxrG.cjs"),r=require("./FileUploaderMinimal-C-0LhFvR.cjs"),i=require("./FileUploaderRegular-CBuqQcit.cjs");Object.defineProperty(exports,"UploadCtxProvider",{enumerable:!0,get:()=>e.UploadCtxProvider});Object.defineProperty(exports,"defineLocale",{enumerable:!0,get:()=>e.defineLocale});exports.FileUploaderInline=l.FileUploaderInline;exports.FileUploaderMinimal=r.FileUploaderMinimal;exports.FileUploaderRegular=i.FileUploaderRegular;
|
package/dist/react-uploader.css
CHANGED
|
@@ -1 +1,25 @@
|
|
|
1
|
-
[uc-cloud-image-editor]{--color-primary-accent: var(--uc-primary);--color-text-base: var(--uc-foreground);--color-text-accent-contrast: var(--uc-background);--color-fill-contrast: var(--uc-background);--color-modal-backdrop: oklch(0 0 0 / .1);--color-image-background: var(--uc-muted);--color-focus-ring: var(--color-primary-accent);--color-crop-guides: var(--uc-foreground);--font-size-ui: var(--uc-font-size);--size-touch-area: var(--uc-button-size);--size-panel-heading: calc(var(--uc-button-size) + var(--uc-padding) * 2);--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--size-icon: calc(var(--uc-button-size) / 2);--border-radius-editor: var(--uc-radius);--border-radius-thumb: var(--uc-radius);--border-radius-ui: var(--uc-radius);--border-radius-base: var(--uc-radius);--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}[uc-cloud-image-editor]{--color-primary-accent: var(--uc-primary);--color-text-base: var(--uc-foreground);--color-text-accent-contrast: var(--uc-background);--color-fill-contrast: var(--uc-background);--color-modal-backdrop: oklch(0 0 0 / .1);--color-image-background: var(--uc-muted);--color-focus-ring: var(--color-primary-accent);--color-crop-guides: var(--uc-foreground);--font-size-ui: var(--uc-font-size);--size-touch-area: var(--uc-button-size);--size-panel-heading: calc(var(--uc-button-size) + var(--uc-padding) * 2);--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--size-icon: calc(var(--uc-button-size) / 2);--border-radius-editor: var(--uc-radius);--border-radius-thumb: var(--uc-radius);--border-radius-ui: var(--uc-radius);--border-radius-base: var(--uc-radius);--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}:where([uc-file-uploader-minimal]){--cfg-init-activity: "start-from";--cfg-done-activity: "upload-list";position:relative;display:block}[uc-file-uploader-minimal]>uc-start-from .uc-content{display:flex;flex-direction:column;gap:4px;padding:0;overflow:hidden;align-items:center;background-color:transparent}:where([uc-file-uploader-minimal]>uc-start-from uc-drop-area){display:flex;position:relative;align-items:center;justify-content:center;width:100%;min-height:calc(var(--uc-preview-size) + var(--uc-padding) * 2 + 8px);padding:0;text-align:center;background-color:var(--uc-muted);border-radius:calc(var(--uc-radius) * 1.75)}:where(.uc-contrast) :where([uc-file-uploader-minimal]>uc-start-from uc-drop-area){background-color:transparent}:where([uc-file-uploader-minimal]>uc-start-from uc-drop-area):before{content:"";z-index:-1;width:100%;height:100%;position:absolute;background-color:var(--uc-background)}:where([uc-file-uploader-minimal]:has([single])>uc-start-from uc-drop-area){aspect-ratio:var(--uc-grid-aspect-ratio)}[uc-file-uploader-minimal] uc-upload-list uc-activity-header{display:none}[uc-file-uploader-minimal] uc-upload-list>.uc-toolbar{background-color:transparent}[uc-file-uploader-minimal] uc-upload-list{width:100%;height:unset;padding:4px;background-color:var(--uc-background);border:1px dashed var(--uc-border);border-radius:calc(var(--uc-radius) * 1.75)}[uc-file-uploader-minimal] uc-upload-list .uc-files{padding:0}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar{display:block;padding:0}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-cancel-btn,[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-upload-btn,[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-done-btn{display:none}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn{width:100%;height:calc(var(--uc-preview-size) + var(--uc-padding) * 2);margin-top:4px}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn[disabled]{display:none}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn>span{display:none}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn>uc-icon{display:flex}[uc-file-uploader-minimal] uc-file-item uc-progress-bar{top:0!important;height:100%!important}[uc-file-uploader-minimal] uc-file-item uc-progress-bar .uc-progress{background-color:var(--uc-primary-transparent);border-radius:var(--uc-radius)}[uc-file-uploader-minimal] uc-file-item uc-progress-bar .uc-fake-progress{background-color:var(--uc-primary-transparent);border-radius:var(--uc-radius)}[uc-file-uploader-minimal] uc-upload-list uc-drop-area{width:100%;height:100%;margin:0;border-radius:calc(var(--uc-radius) * 1.75)}[uc-file-uploader-minimal] uc-upload-list .uc-common-error{margin:4px 0 0}[uc-file-uploader-minimal] uc-copyright .uc-credits{position:static}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-toolbar .uc-add-more-btn{display:none}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-files .uc-add-more-btn{display:flex}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-files .uc-add-more-btn>span{display:none}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-files .uc-add-more-btn>uc-icon{display:flex}:where([uc-wgt-common]){--cfg-init-activity: "start-from";--cfg-done-activity: ""}:where([uc-wgt-common]){--uc-font-family: system-ui;--uc-font-size: 14px;--uc-line-height: normal;--uc-simple-btn-font-family: system-ui;--uc-simple-btn-font-size: 14px;--uc-button-size: 32px;--uc-preview-size: 32px;--uc-padding: 10px;--uc-radius: 8px;--uc-transition: .2s ease;--uc-dialog-width: 430px;--uc-dialog-max-width: 920px;--uc-dialog-max-height: 675px;--uc-simple-btn-padding: 7px 14px;--uc-grid-col: 3;--uc-grid-preview-image-height: auto;--uc-grid-gap: calc(var(--uc-padding) / 2);--uc-grid-aspect-ratio: 1 / 1;--uc-background: var(--uc-background-light);--uc-foreground: var(--uc-foreground-light);--uc-primary: var(--uc-primary-light);--uc-primary-hover: var(--uc-primary-hover-light);--uc-primary-transparent: var(--uc-primary-transparent-light);--uc-primary-foreground: var(--uc-primary-foreground-light);--uc-secondary: var(--uc-secondary-light);--uc-secondary-hover: var(--uc-secondary-hover-light);--uc-secondary-foreground: var(--uc-secondary-foreground-light);--uc-muted: var(--uc-muted-light);--uc-muted-foreground: var(--uc-muted-foreground-light);--uc-destructive: var(--uc-destructive-light);--uc-destructive-foreground: var(--uc-destructive-foreground-light);--uc-border: var(--uc-border-light);--uc-dialog-shadow: var(--uc-dialog-shadow-light);--uc-simple-btn: var(--uc-simple-btn-light);--uc-simple-btn-hover: var(--uc-simple-btn-hover-light);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-light)}@supports not (color: oklch(0% 0 0)){:where([uc-wgt-common]){--uc-primary-rgb-light: 23 75 215;--uc-primary-light: rgb(var(--uc-primary-rgb-light));--uc-primary-hover-light: rgb(var(--uc-primary-rgb-light) / 90%);--uc-primary-transparent-light: rgb(var(--uc-primary-rgb-light) / 10%);--uc-background-light: rgb(255 255 255);--uc-foreground-light: rgb(24 24 24);--uc-primary-foreground-light: #fff;--uc-secondary-light: rgb(24 24 24 / 5%);--uc-secondary-hover-light: rgb(24 24 24 / 8%);--uc-secondary-foreground-light: rgb(24 24 24);--uc-muted-light: rgb(245 245 245);--uc-muted-foreground-light: rgb(113 113 113);--uc-destructive-light: rgb(232 19 20 / 5%);--uc-destructive-foreground-light: rgb(232 19 20);--uc-border-light: rgb(228 228 232);--uc-dialog-shadow-light: 0px 6px 20px rgb(0 0 0 / 10%);--uc-simple-btn-light: rgb(235 235 235);--uc-simple-btn-hover-light: rgb(228 228 228);--uc-simple-btn-foreground-light: rgb(24 24 24);--uc-primary-rgb-dark: 87 154 255;--uc-primary-dark: rgb(var(--uc-primary-rgb-dark));--uc-primary-hover-dark: rgb(var(--uc-primary-rgb-dark) / 90%);--uc-primary-transparent-dark: rgb(var(--uc-primary-rgb-dark) / 7%);--uc-background-dark: rgb(27 27 27);--uc-foreground-dark: rgb(225 225 225);--uc-primary-foreground-dark: rgb(0 0 0);--uc-secondary-dark: rgb(225 225 225 / 7%);--uc-secondary-hover-dark: rgb(225 225 225 / 10%);--uc-secondary-foreground-dark: rgb(225 225 225);--uc-muted-dark: rgb(36 36 36);--uc-muted-foreground-dark: rgb(152 152 152);--uc-destructive-dark: rgb(244 90 79 / 10%);--uc-destructive-foreground-dark: rgb(244 90 79);--uc-border-dark: rgb(61 61 61);--uc-dialog-shadow-dark: 0px 6px 20px rgb(0 0 0 / 25%);--uc-simple-btn-dark: rgb(36 36 36);--uc-simple-btn-hover-dark: rgb(43 43 43);--uc-simple-btn-foreground-dark: rgb(255 255 255)}}@supports (color: oklch(0% 0 0)){:where([uc-wgt-common]){--uc-primary-oklch-light: 47% .22 264;--uc-primary-light: oklch(var(--uc-primary-oklch-light));--uc-primary-hover-light: oklch(var(--uc-primary-oklch-light) / 90%);--uc-primary-transparent-light: oklch(var(--uc-primary-oklch-light) / 7%);--uc-background-light: oklch(100% 0 0);--uc-foreground-light: oklch(21% 0 0);--uc-primary-foreground-light: oklch(100% 0 0);--uc-secondary-light: oklch(21% 0 0 / .05);--uc-secondary-hover-light: oklch(21% 0 0 / .08);--uc-secondary-foreground-light: oklch(21% 0 0);--uc-muted-light: oklch(97% 0 0);--uc-muted-foreground-light: oklch(40% 0 0);--uc-destructive-light: oklch(59% .235 28.5 / .05);--uc-destructive-foreground-light: oklch(59% .235 28.5);--uc-border-light: oklch(92% 0 0);--uc-dialog-shadow-light: 0px 6px 20px oklch(0% 0 0 / .1);--uc-simple-btn-light: oklch(94% 0 0);--uc-simple-btn-hover-light: oklch(92% 0 0);--uc-simple-btn-foreground-light: oklch(20% 0 0);--uc-primary-oklch-dark: 69% .1768 258.4;--uc-primary-dark: oklch(var(--uc-primary-oklch-dark));--uc-primary-hover-dark: oklch(var(--uc-primary-oklch-dark) / 90%);--uc-primary-transparent-dark: oklch(var(--uc-primary-oklch-dark) / 7%);--uc-background-dark: oklch(22% 0 0);--uc-foreground-dark: oklch(91% 0 0);--uc-primary-foreground-dark: oklch(0% 0 0);--uc-secondary-dark: oklch(91% 0 0 / .07);--uc-secondary-hover-dark: oklch(91% 0 0 / .1);--uc-secondary-foreground-dark: oklch(91% 0 0);--uc-muted-dark: oklch(26% 0 0);--uc-muted-foreground-dark: oklch(68% 0 0);--uc-destructive-dark: oklch(67% .191 27.5 / .1);--uc-destructive-foreground-dark: oklch(67% .191 27.5);--uc-border-dark: oklch(36% 0 0);--uc-dialog-shadow-dark: 0px 6px 20px oklch(0% 0 0 / .25);--uc-simple-btn-dark: oklch(26% 0 0);--uc-simple-btn-hover-dark: oklch(29% 0 0);--uc-simple-btn-foreground-dark: oklch(100% 0 0)}}@media only screen and (max-height: 600px){:where([uc-wgt-common]){--uc-dialog-max-height: 100%}}@media only screen and (max-width: 680px){:where([uc-wgt-common]){--uc-grid-col: 2}}@media only screen and (max-width: 430px){:where([uc-wgt-common]){--uc-dialog-max-width: 100vw;--uc-dialog-max-height: var(--uploadcare-blocks-window-height);--uc-grid-col: 1}}@media (prefers-color-scheme: light){:where([uc-wgt-common]){--uc-background: var(--uc-background-light);--uc-foreground: var(--uc-foreground-light);--uc-primary: var(--uc-primary-light);--uc-primary-hover: var(--uc-primary-hover-light);--uc-primary-transparent: var(--uc-primary-transparent-light);--uc-primary-foreground: var(--uc-primary-foreground-light);--uc-secondary: var(--uc-secondary-light);--uc-secondary-hover: var(--uc-secondary-hover-light);--uc-secondary-foreground: var(--uc-secondary-foreground-light);--uc-muted: var(--uc-muted-light);--uc-muted-foreground: var(--uc-muted-foreground-light);--uc-destructive: var(--uc-destructive-light);--uc-destructive-foreground: var(--uc-destructive-foreground-light);--uc-border: var(--uc-border-light);--uc-dialog-shadow: var(--uc-dialog-shadow-light);--uc-simple-btn: var(--uc-simple-btn-light);--uc-simple-btn-hover: var(--uc-simple-btn-hover-light);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-light)}}@media (prefers-color-scheme: dark){:where([uc-wgt-common]){--uc-background: var(--uc-background-dark);--uc-foreground: var(--uc-foreground-dark);--uc-primary: var(--uc-primary-dark);--uc-primary-hover: var(--uc-primary-hover-dark);--uc-primary-transparent: var(--uc-primary-transparent-dark);--uc-primary-foreground: var(--uc-primary-foreground-dark);--uc-secondary: var(--uc-secondary-dark);--uc-secondary-hover: var(--uc-secondary-hover-dark);--uc-secondary-foreground: var(--uc-secondary-foreground-dark);--uc-muted: var(--uc-muted-dark);--uc-muted-foreground: var(--uc-muted-foreground-dark);--uc-destructive: var(--uc-destructive-dark);--uc-destructive-foreground: var(--uc-destructive-foreground-dark);--uc-border: var(--uc-border-dark);--uc-dialog-shadow: var(--uc-dialog-shadow-dark);--uc-simple-btn: var(--uc-simple-btn-dark);--uc-simple-btn-hover: var(--uc-simple-btn-hover-dark);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-dark)}}:where(.uc-light){--uc-background: var(--uc-background-light);--uc-foreground: var(--uc-foreground-light);--uc-primary: var(--uc-primary-light);--uc-primary-hover: var(--uc-primary-hover-light);--uc-primary-transparent: var(--uc-primary-transparent-light);--uc-primary-foreground: var(--uc-primary-foreground-light);--uc-secondary: var(--uc-secondary-light);--uc-secondary-hover: var(--uc-secondary-hover-light);--uc-secondary-foreground: var(--uc-secondary-foreground-light);--uc-muted: var(--uc-muted-light);--uc-muted-foreground: var(--uc-muted-foreground-light);--uc-destructive: var(--uc-destructive-light);--uc-destructive-foreground: var(--uc-destructive-foreground-light);--uc-border: var(--uc-border-light);--uc-dialog-shadow: var(--uc-dialog-shadow-light);--uc-simple-btn: var(--uc-simple-btn-light);--uc-simple-btn-hover: var(--uc-simple-btn-hover-light);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-light)}:where(.uc-dark){--uc-background: var(--uc-background-dark);--uc-foreground: var(--uc-foreground-dark);--uc-primary: var(--uc-primary-dark);--uc-primary-hover: var(--uc-primary-hover-dark);--uc-primary-transparent: var(--uc-primary-transparent-dark);--uc-primary-foreground: var(--uc-primary-foreground-dark);--uc-secondary: var(--uc-secondary-dark);--uc-secondary-hover: var(--uc-secondary-hover-dark);--uc-secondary-foreground: var(--uc-secondary-foreground-dark);--uc-muted: var(--uc-muted-dark);--uc-muted-foreground: var(--uc-muted-foreground-dark);--uc-destructive: var(--uc-destructive-dark);--uc-destructive-foreground: var(--uc-destructive-foreground-dark);--uc-border: var(--uc-border-dark);--uc-dialog-shadow: var(--uc-dialog-shadow-dark);--uc-simple-btn: var(--uc-simple-btn-dark);--uc-simple-btn-hover: var(--uc-simple-btn-hover-dark);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-dark)}:where(.uc-purple){--uc-primary-oklch-light: 47% .22 300;--uc-primary-oklch-dark: 69% .1768 300}:where(.uc-red){--uc-primary-oklch-light: 47% .21 21;--uc-primary-oklch-dark: 71% .1768 21}:where(.uc-orange){--uc-primary-oklch-light: 47% .1376 51.88;--uc-primary-oklch-dark: 69% .1768 51.88}:where(.uc-green){--uc-primary-oklch-light: 45% .14 130;--uc-primary-oklch-dark: 69% .1768 130}:where(.uc-turquoise){--uc-primary-oklch-light: 45% .0854 174;--uc-primary-oklch-dark: 69% .1768 174}:where(.uc-gray){--uc-primary-oklch-light: 10% 0 0;--uc-primary-oklch-dark: 97% 0 0}:where(.uc-contrast){--uc-border-light: oklch(50% 0 0);--uc-border-dark: oklch(50% 0 0);--uc-muted-light: oklch(98% 0 0);--uc-muted-dark: oklch(16% 0 0);--uc-muted-foreground-light: oklch(20% 0 0);--uc-muted-foreground-dark: oklch(80% 0 0);--uc-background-light: oklch(100% 0 0);--uc-foreground-light: oklch(0% 0 0);--uc-background-dark: oklch(10% 0 0);--uc-foreground-dark: oklch(100% 0 0)}:where([uc-wgt-common]){color:var(--uc-foreground);font-size:var(--uc-font-size);line-height:var(--uc-line-height);font-family:var(--uc-font-family)}:where([uc-wgt-common]) *{box-sizing:border-box}:where([uc-wgt-common]) [hidden]{display:none!important}:where([uc-wgt-common]) [activity]:not([active],.active){display:none}:where([uc-wgt-common]) dialog:not([open]) [activity]{display:none}:where([uc-wgt-common]) button{display:flex;align-items:center;justify-content:center;height:var(--uc-button-size);padding-right:14px;padding-left:14px;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--uc-radius);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--uc-transition)}:where([uc-wgt-common]) button:focus-visible{outline-offset:2px}:where([uc-wgt-common]) button.uc-primary-btn{color:var(--uc-primary-foreground);background-color:var(--uc-primary)}:where([uc-wgt-common]) button.uc-primary-btn:hover{background-color:var(--uc-primary-hover)}:where([uc-wgt-common]) button.uc-secondary-btn{color:var(--uc-secondary-foreground);background-color:var(--uc-secondary)}:where([uc-wgt-common]) button.uc-secondary-btn:hover{background-color:var(--uc-secondary-hover)}:where([uc-wgt-common].uc-contrast) button.uc-secondary-btn{border:1px solid var(--uc-border)}:where([uc-wgt-common]) button.uc-mini-btn{height:var(--uc-button-size);padding:0;background-color:transparent;color:var(--uc-secondary-foreground)}:where([uc-wgt-common]) button.uc-mini-btn:hover{background-color:var(--uc-secondary)}:where([uc-wgt-common]) :is(button[disabled],button.uc-primary-btn[disabled],button.uc-secondary-btn[disabled]){opacity:.5;pointer-events:none}:where([uc-wgt-common]) a{color:var(--uc-primary);text-decoration:none}:where([uc-wgt-common]) a[disabled]{pointer-events:none}:where([uc-wgt-common]) input[type=text]{display:flex;width:100%;height:var(--uc-button-size);padding-right:10px;padding-left:10px;color:var(--uc-foreground);font-size:1em;font-family:inherit;background-color:var(--uc-background);border:1px solid var(--uc-border);outline:1px solid transparent;border-radius:var(--uc-radius);transition:border-color var(--uc-transition),outline-color var(--uc-transition)}:where([uc-wgt-common]) input[type=text]::placeholder{color:var(--uc-muted-foreground)}:where([uc-wgt-common]) input[type=text]:focus{outline-color:var(--uc-primary-hover);border-color:var(--uc-primary-hover)}:where([uc-wgt-common]) input[disabled]{opacity:.6;pointer-events:none}:where([uc-wgt-common]) uc-select[disabled],:where([uc-wgt-common]) select[disabled]{opacity:.6;pointer-events:none}uc-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--uc-button-size);height:var(--uc-button-size)}uc-icon svg{width:calc(var(--uc-button-size) / 2);height:calc(var(--uc-button-size) / 2)}uc-range{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--uc-button-size)}uc-range datalist{display:none}uc-range input{width:100%;height:100%;opacity:0}uc-range .uc-track-wrapper{position:absolute;right:10px;left:10px;display:flex;align-items:center;justify-content:center;height:2px;-webkit-user-select:none;user-select:none;pointer-events:none}uc-range .uc-track{position:absolute;right:0;left:0;display:flex;align-items:center;justify-content:center;height:2px;background-color:currentColor;border-radius:2px;opacity:.5}uc-range .uc-slider{position:absolute;width:16px;height:16px;background-color:currentColor;border-radius:100%;transform:translate(-50%)}uc-range .uc-bar{position:absolute;left:0;height:100%;background-color:currentColor;border-radius:2px}uc-range .uc-caption{position:absolute;display:inline-flex;justify-content:center}uc-config{display:none}:where([uc-simple-btn]){position:relative;display:inline-flex}:where([uc-simple-btn]) button{height:auto;gap:.5em;padding:var(--uc-simple-btn-padding);background-color:var(--uc-simple-btn);color:var(--uc-simple-btn-foreground);font-size:var(--uc-simple-btn-font-size);font-family:var(--uc-simple-btn-font-family)}:where([uc-simple-btn]) button uc-icon{width:auto;height:auto}:where([uc-simple-btn]) button uc-icon svg{width:.9em;height:.9em}:where([uc-simple-btn]) button:hover{background-color:var(--uc-simple-btn-hover)}:where([uc-simple-btn])>uc-drop-area{display:contents}:where([uc-simple-btn]) .uc-visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--uc-simple-btn-padding);background-color:transparent;color:transparent;font-size:var(--uc-simple-btn-font-size);border:1px dashed var(--uc-simple-btn-foreground);border-radius:inherit;opacity:0;transition:opacity var(--uc-transition)}:where([uc-simple-btn])>uc-drop-area[drag-state=active] .uc-visual-drop-area{opacity:1}:where([uc-simple-btn])>uc-drop-area[drag-state=inactive] .uc-visual-drop-area{opacity:0}:where([uc-simple-btn])>uc-drop-area[drag-state=near] .uc-visual-drop-area{opacity:1}:where([uc-simple-btn])>uc-drop-area[drag-state=over] .uc-visual-drop-area{opacity:1}uc-source-btn>button{display:flex;align-items:center;margin-bottom:2px;padding:2px var(--uc-padding);color:var(--uc-foreground);border-radius:var(--uc-radius);cursor:pointer;transition:background-color var(--uc-transition),color var(--uc-transition);-webkit-user-select:none;user-select:none;width:100%;background-color:unset;height:unset}uc-source-btn:last-child>button{margin-bottom:0}uc-source-btn>button:hover{background-color:var(--uc-primary-transparent)}:where(.uc-contrast) uc-source-btn>button:hover{background-color:var(--uc-secondary);color:var(--uc-foreground)}uc-source-btn uc-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--uc-button-size);margin-right:var(--uc-padding);opacity:.8}:where(.uc-contrast) uc-source-btn uc-icon{opacity:1}uc-source-btn .uc-txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--uc-button-size);padding:0;white-space:nowrap;border:none}:where([uc-drop-area]){padding:2px;overflow:hidden;border:1px dashed var(--uc-border);border-radius:calc(var(--uc-radius) * 1.75);transition:border var(--uc-transition),border-radius var(--uc-transition)}:where([uc-drop-area]),:where([uc-drop-area]) .uc-content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:where([uc-drop-area]) .uc-text{position:relative;margin:var(--uc-padding);color:var(--uc-muted-foreground);transition:color var(--uc-transition)}:where([uc-drop-area])[ghost][drag-state=inactive]{display:none}:where([uc-drop-area])[ghost]:not([fullscreen]):is([drag-state=active],[drag-state=near],[drag-state=over]){background:var(--uc-background)}:where([uc-drop-area]):is([drag-state=active],[drag-state=near],[drag-state=over],:hover){background:var(--uc-primary-transparent);border-color:var(--uc-primary-transparent)}:where(.uc-contrast) :where([uc-drop-area]):is([drag-state=active],[drag-state=near],[drag-state=over],:hover){color:var(--uc-foreground);background:transparent;border-color:var(--uc-foreground);border-width:2px;border-style:solid}:where([uc-drop-area]):is([drag-state=active],[drag-state=near]){opacity:1}:where([uc-drop-area])[drag-state=over]{border-color:var(--uc-primary);opacity:1}:where([uc-drop-area])[with-icon]{min-height:180px}:where([uc-drop-area])[with-icon] .uc-content-wrapper{display:flex;flex-direction:column}:where([uc-drop-area])[with-icon] .uc-text{color:var(--uc-foreground);font-weight:500;font-size:1.1em}:where([uc-drop-area])[with-icon] .uc-icon-container{position:relative;width:64px;height:64px;margin:var(--uc-padding);overflow:hidden;color:var(--uc-foreground);background-color:var(--uc-muted);border-radius:50%;transition:color var(--uc-transition),background-color var(--uc-transition)}:where([uc-drop-area])[with-icon] uc-icon{position:absolute;width:32px;height:32px;top:calc(50% - 16px);left:calc(50% - 16px);transition:transform var(--uc-transition)}:where([uc-drop-area])[with-icon] uc-icon:last-child{transform:translateY(48px)}:where(.uc-contrast) :where([uc-drop-area])[with-icon]:hover .uc-icon-container,:where(.uc-contrast) :where([uc-drop-area])[with-icon]:hover .uc-text{color:var(--uc-foreground)}:where([uc-drop-area])[with-icon]:hover .uc-icon-container{background-color:var(--uc-primary-transparent)}:where(.uc-contrast) :where([uc-drop-area])[with-icon]:hover .uc-icon-container{background-color:var(--uc-muted)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) .uc-icon-container{color:var(--uc-primary-foreground);background-color:var(--uc-primary)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) .uc-text{color:var(--uc-foreground)}:where(.uc-contrast) :where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) .uc-text{color:var(--uc-foreground)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) uc-icon:first-child{transform:translateY(-48px)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) uc-icon:last-child{transform:translateY(0)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper[drag-state=near] uc-icon:last-child{transform:scale(1.3)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper[drag-state=over] uc-icon:last-child{transform:scale(1.5)}:where([uc-drop-area])[fullscreen]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--uc-padding) * 2);height:calc(100vh - var(--uc-padding) * 2);margin:var(--uc-padding)}:where([uc-drop-area])[fullscreen] .uc-content-wrapper{width:100%;max-width:calc(var(--uc-dialog-width) * .8);height:180px;color:var(--uc-foreground);background-color:var(--uc-background);border-radius:calc(var(--uc-radius) * 1.75);box-shadow:var(--uc-dialog-shadow);transition:color var(--uc-transition),background-color var(--uc-transition),box-shadow var(--uc-transition),border-radius var(--uc-transition),transform var(--uc-transition)}:where([uc-drop-area])[with-icon][fullscreen][drag-state=active]>.uc-content-wrapper,:where([uc-drop-area])[with-icon][fullscreen][drag-state=near]>.uc-content-wrapper{transform:translateY(10px);opacity:0}:where([uc-drop-area])[with-icon][fullscreen][drag-state=over]>.uc-content-wrapper{transform:translateY(0);opacity:1}:is(:where([uc-drop-area])[with-icon][fullscreen])>.uc-content-wrapper uc-icon:first-child{transform:translateY(-48px)}:where([uc-drop-area])[clickable]{cursor:pointer}@supports selector(dialog::backdrop){:where([uc-modal])>dialog::backdrop{background-color:#0000001a}:where([uc-modal])[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}:where([uc-modal])>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}:where([uc-modal])>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}:where([uc-modal])>dialog{display:flex;flex-direction:column;width:min(var(--uc-dialog-width),100%);max-width:min(calc(100% - var(--uc-padding) * 2),var(--uc-dialog-max-width));min-height:var(--uc-button-size);max-height:min(calc(100% - var(--uc-padding) * 2),var(--uc-dialog-max-height));margin:auto;padding:0;overflow:hidden;background-color:var(--uc-background);border:0;border-radius:calc(var(--uc-radius) * 1.75);box-shadow:var(--uc-dialog-shadow);transition:transform .4s ease,opacity .4s ease}:where(.uc-contrast) :where([uc-modal])>dialog{outline:1px solid var(--uc-border)}uc-url-source{display:block;background-color:var(--uc-background)}uc-url-source>.uc-content{display:grid;grid-gap:4px;grid-template-columns:1fr min-content;padding:var(--uc-padding);padding-top:0}uc-url-source .uc-url-input{display:flex}uc-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--uc-background);border-radius:var(--uc-radius)}[uc-modal]>dialog:has(uc-camera-source[active]){width:100%;height:100%}uc-camera-source:not(.uc-initialized) .uc-controls{display:none}uc-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--uc-muted);border-radius:var(--uc-radius)}uc-camera-source .uc-toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--uc-padding);background-color:var(--uc-background)}uc-camera-source .uc-content{display:flex;flex:1;justify-content:center;width:100%;height:100%;padding:var(--uc-padding);padding-top:0;overflow:hidden}uc-camera-source .uc-message-box{display:flex;flex-direction:column;grid-gap:40px;align-items:center;justify-content:center;padding:40px 40px 0;color:var(--uc-foreground)}uc-camera-source .uc-message-box button{color:var(--uc-primary-foreground);background-color:var(--uc-primary)}uc-camera-source .uc-shot-btn{width:58px;height:58px;color:var(--uc-background);background-color:var(--uc-primary-light);border-radius:50%;opacity:.85;transition:bottom var(--uc-transition),opacity var(--uc-transition),transform var(--uc-transition)}uc-camera-source .uc-shot-btn:hover{transform:scale(1.05);opacity:1}uc-camera-source .uc-shot-btn:active{transform:scale(1);opacity:1}uc-camera-source .uc-shot-btn[disabled]{bottom:-80px}uc-camera-source .uc-shot-btn uc-icon svg{width:20px;height:20px}uc-camera-source .uc-controls{position:relative;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;padding:0 var(--uc-padding) var(--uc-padding);min-height:74px}uc-camera-source .uc-switcher{display:flex;gap:calc(var(--uc-padding) / 2)}uc-camera-source .uc-switch.uc-active{background-color:var(--uc-secondary)}uc-camera-source .uc-camera-actions{display:flex;justify-content:center;align-items:center;gap:5px}uc-camera-source .uc-stop-record{background-color:var(--uc-destructive-foreground-light);opacity:1}:where(uc-camera-source:is(.uc-recording)) .uc-recording-timer uc-icon{display:none}:where(uc-camera-source:is(.uc-recording)) .uc-recording-timer{pointer-events:none}uc-camera-source .uc-recording-timer{z-index:1;position:relative;overflow:hidden}:where(uc-camera-source) .uc-recording-timer uc-icon{width:10px;height:10px;margin-right:10px}uc-camera-source .uc-recording-timer .uc-line{position:absolute;content:"";bottom:0;left:0;right:0;height:2px;background-color:var(--uc-foreground-light);transform:scaleX(0);transform-origin:left;transition:transform var(--uc-transition)}uc-camera-source .uc-btn-microphone{z-index:1}uc-camera-source .uc-select{display:flex}uc-camera-source .uc-audio-select{width:98px}uc-camera-source .uc-audio-select select{width:100%}uc-camera-source .uc-camera-action{position:absolute;inset:0 var(--uc-padding) var(--uc-padding);margin:0 auto}uc-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--uc-background);overflow:hidden;position:relative}[uc-modal]>dialog:has(uc-external-source[active]){width:100%;height:100%}uc-external-source>.uc-content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}uc-external-source iframe{display:block;width:100%;height:100%;border:none}uc-external-source .uc-iframe-wrapper{overflow:hidden}uc-external-source .uc-toolbar{display:flex;width:100%;grid-gap:var(--uc-padding);align-items:center;justify-content:space-between;padding:var(--uc-padding);border-top:1px solid var(--uc-border)}uc-external-source .uc-back-btn{padding-left:0}uc-external-source .uc-selection-status-box{color:var(--uc-foreground);display:flex;flex-direction:column;align-items:center;justify-content:center}uc-external-source .uc-selection-status-box button{color:var(--uc-primary);height:auto;padding:0;background:none}uc-external-source .uc-selection-status-box button:hover{text-decoration:underline}uc-external-source uc-activity-header{position:absolute;width:100%;justify-content:flex-end;z-index:1;left:0;top:0;right:0;pointer-events:none}uc-external-source uc-activity-header .uc-close-btn{pointer-events:auto}uc-external-source .uc-done-btn>span.uc-hidden{visibility:hidden;pointer-events:none}uc-external-source .uc-done-btn>uc-spinner{position:absolute;width:100%;height:100%;display:flex;align-items:center;justify-content:center}uc-upload-list{position:relative;display:flex;flex-direction:column;width:100%;height:max-content;overflow:hidden;background-color:var(--uc-background);transition:opacity var(--uc-transition)}uc-upload-list .uc-no-files{height:32px;padding:20px}uc-upload-list .uc-files{display:block;flex:1;min-height:32px;padding:0 var(--uc-padding);overflow:auto}uc-upload-list .uc-files-wrapper{display:contents}uc-upload-list .uc-toolbar{display:flex;gap:4px;justify-content:space-between;padding:var(--uc-padding);background-color:var(--uc-background)}uc-upload-list .uc-toolbar-spacer{flex:1}uc-upload-list uc-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--uc-padding) * 2);height:calc(100% - var(--uc-padding) * 2);margin:var(--uc-padding);border-radius:var(--uc-radius)}uc-upload-list uc-activity-header>.uc-header-text{padding:0 var(--uc-padding)}uc-upload-list .uc-common-error{border-radius:var(--uc-radius);color:var(--uc-destructive-foreground);background-color:var(--uc-destructive);display:flex;align-items:center;justify-content:center;padding:var(--uc-padding);margin:4px var(--uc-padding) 0 var(--uc-padding);font-size:.925em}uc-upload-list .uc-add-more-btn uc-icon{display:none}uc-upload-list[mode=grid] .uc-files{display:flex;flex-wrap:wrap;gap:var(--uc-grid-gap)}uc-upload-list .uc-files .uc-add-more-btn,uc-upload-list[mode=grid] uc-file-item{flex:0 0 calc((100% - (var(--uc-grid-gap) * (var(--uc-grid-col) - 1))) / var(--uc-grid-col));max-width:calc((100% - (var(--uc-grid-gap) * (var(--uc-grid-col) - 1))) / var(--uc-grid-col));height:var(--uc-grid-preview-image-height);aspect-ratio:var(--uc-grid-aspect-ratio)}uc-upload-list .uc-files .uc-add-more-btn{display:none}uc-start-from{display:block;overflow-y:auto}uc-start-from .uc-content{display:grid;grid-auto-flow:row;gap:calc(var(--uc-padding) * 2);width:100%;height:100%;padding:calc(var(--uc-padding) * 2);background-color:var(--uc-background)}[uc-modal]>dialog:has(uc-start-from[active]){width:var(--uc-dialog-width)}[uc-modal] uc-start-from uc-drop-area{border-radius:var(--uc-radius)}@media only screen and (max-width: 430px){[uc-modal] uc-start-from uc-drop-area{display:none}}uc-file-item{--uc-file-item-gap: 4px;--uc-file-item-height: calc(var(--uc-preview-size) + var(--uc-padding) * 2 + var(--uc-file-item-gap));display:block;overflow:hidden;min-height:var(--uc-file-item-height)}uc-file-item:last-of-type{--uc-file-item-gap: 0}uc-file-item>.uc-inner{position:relative;display:grid;grid-template-columns:var(--uc-preview-size) 1fr max-content;gap:2px;align-items:center;margin-bottom:var(--uc-file-item-gap);padding:var(--uc-padding);overflow:hidden;font-size:.925em;background-color:var(--uc-muted);border-radius:var(--uc-radius);transition:background-color var(--uc-transition)}uc-file-item>.uc-inner[focused]{background-color:transparent}uc-file-item>.uc-inner[uploading] .uc-edit-btn{display:none}uc-file-item>:where(.uc-inner[failed],.uc-inner[limit-overflow]){background-color:var(--uc-destructive)}uc-file-item .uc-thumb{position:relative;display:inline-flex;width:var(--uc-preview-size);height:var(--uc-preview-size);background-color:var(--uc-secondary);background-position:center center;background-repeat:no-repeat;background-size:cover;border-radius:var(--uc-radius)}uc-file-item .uc-file-name-wrapper{text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--uc-padding);padding-left:var(--uc-padding);overflow:hidden;color:var(--uc-muted-foreground)}uc-file-item .uc-file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}uc-file-item .uc-file-error{display:none;color:var(--uc-destructive-foreground);font-size:.85em;z-index:2}uc-file-item button.uc-remove-btn,uc-file-item button.uc-edit-btn{color:var(--uc-muted-foreground)}uc-file-item button svg{pointer-events:none}uc-file-item button.uc-upload-btn{display:none}uc-file-item .uc-badge{position:absolute;bottom:2px;right:2px;width:14px;height:14px;color:var(--uc-background);background-color:var(--uc-foreground);border-radius:50%;transform:scale(.3);opacity:0;transition:opacity var(--uc-transition),transform var(--uc-transition);display:flex;justify-content:center;align-items:center}uc-file-item>.uc-inner:where([failed],[limit-overflow],[finished]) .uc-badge{transform:scale(1);opacity:1}uc-file-item>.uc-inner:where([failed],[limit-overflow]) .uc-badge{background-color:var(--uc-destructive-foreground)}uc-file-item>.uc-inner:where([failed],[limit-overflow]) .uc-file-error{display:block}uc-file-item .uc-badge uc-icon,uc-file-item .uc-badge uc-icon svg{width:100%;height:100%}uc-file-item .uc-progress-bar{opacity:.7;top:calc(100% - 2px);height:2px}:where(.uc-contrast) uc-file-item .uc-progress-bar{opacity:1}uc-file-item .uc-file-actions{display:flex;gap:2px;align-items:center;justify-content:center}uc-file-item[mode=grid]{overflow:visible;min-height:initial}uc-file-item[mode=grid] .uc-inner{height:100%;grid-template-columns:1fr;grid-template-rows:1fr max-content;padding:0;background-color:transparent;margin-bottom:0;border-radius:0}uc-file-item[mode=grid] .uc-inner[failed] .uc-badge{display:none}uc-file-item[mode=grid] .uc-thumb{width:100%;height:100%}uc-file-item[mode=grid] .uc-badge{right:var(--uc-padding);bottom:var(--uc-padding)}uc-file-item[mode=grid] .uc-file-name-wrapper{padding:0}uc-file-item[mode=grid] .uc-file-name:not([hidden])+.uc-file-error{bottom:calc(var(--uc-padding) + var(--uc-font-size))}uc-file-item[mode=grid] .uc-file-error{position:absolute;background-color:var(--uc-destructive-foreground);border-radius:var(--uc-radius);color:var(--uc-background);bottom:var(--uc-padding);left:var(--uc-padding);right:var(--uc-padding);padding:calc(var(--uc-padding) / 2) var(--uc-padding)}uc-file-item[mode=grid] .uc-file-hint{position:absolute;background-color:var(--uc-background);border-radius:var(--uc-radius);color:var(--uc-foreground);bottom:calc(var(--uc-padding) * 2);left:var(--uc-padding);right:var(--uc-padding);padding:calc(var(--uc-padding) / 2) var(--uc-padding)}uc-file-item[mode=grid] .uc-file-actions{position:absolute;top:var(--uc-padding);right:var(--uc-padding)}uc-file-item[mode=grid] button{background-color:var(--uc-background)}uc-file-item[mode=grid] button:hover{background-color:var(--uc-muted)}uc-file-item[mode=grid] .uc-progress-bar{width:initial;height:4px!important;top:initial!important;bottom:var(--uc-padding);left:var(--uc-padding);right:var(--uc-padding);border-radius:var(--uc-radius);z-index:1;transition:background-color .3s,opacity .3s;background-color:var(--uc-background)}uc-file-item[mode=grid] .uc-progress-bar :is(.uc-fake-progress,.uc-progress){background-color:var(--uc-primary)}uc-file-item[mode=grid] .uc-progress-bar[hasfilename]{bottom:calc(var(--uc-padding) + var(--uc-font-size))}uc-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:10px;background-color:var(--uc-background);transition:opacity .3s}uc-progress-bar-common:not([active]){opacity:0;pointer-events:none}uc-progress-bar{--l-progress-value: 0;position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none;transition:opacity .3s;opacity:1}uc-progress-bar.uc-progress-bar--hidden{opacity:0}uc-progress-bar .uc-progress{position:absolute;width:calc(var(--l-progress-value) * 1%);height:100%;background-color:var(--uc-primary);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}uc-progress-bar .uc-progress--hidden{opacity:0}uc-progress-bar .uc-fake-progress{--l-fake-progress-width: 30;position:absolute;width:calc(var(--l-fake-progress-width) * 1%);height:100%;background-color:var(--uc-primary);animation:fake-progress-animation 1s ease-in-out infinite;opacity:1;transition:opacity .3s;z-index:1}uc-progress-bar .uc-fake-progress--hidden{opacity:0;animation:none}@keyframes fake-progress-animation{0%{transform:translate(-100%)}to{transform:translate(calc(100 / var(--l-fake-progress-width) * 100 * 1%))}}uc-activity-header{display:flex;justify-content:space-between;gap:var(--uc-padding);padding:var(--uc-padding);color:var(--uc-foreground);font-weight:500;font-size:1em}uc-activity-header>*{display:flex;align-items:center}uc-copyright{display:flex;width:100%;justify-content:center}uc-copyright .uc-credits{all:unset;position:absolute;bottom:12px;background-color:var(--uc-background);padding:2px 5px;border-radius:6px;color:var(--uc-muted-foreground);font-weight:400;font-size:12px;opacity:.9;cursor:pointer;transition:opacity var(--uc-transition),background-color var(--uc-transition)}uc-copyright .uc-credits:focus-visible{outline:1px auto Highlight;outline:1px auto -webkit-focus-ring-color}uc-copyright .uc-credits:hover{opacity:1;background-color:var(--uc-muted)}[uc-cloud-image-editor]{--color-primary-accent: var(--uc-primary);--color-text-base: var(--uc-foreground);--color-text-accent-contrast: var(--uc-background);--color-fill-contrast: var(--uc-background);--color-modal-backdrop: oklch(0 0 0 / .1);--color-image-background: var(--uc-muted);--color-focus-ring: var(--color-primary-accent);--color-crop-guides: var(--uc-foreground);--font-size-ui: var(--uc-font-size);--size-touch-area: var(--uc-button-size);--size-panel-heading: calc(var(--uc-button-size) + var(--uc-padding) * 2);--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--size-icon: calc(var(--uc-button-size) / 2);--border-radius-editor: var(--uc-radius);--border-radius-thumb: var(--uc-radius);--border-radius-ui: var(--uc-radius);--border-radius-base: var(--uc-radius);--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}[uc-cloud-image-editor] :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}[uc-cloud-image-editor] :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important;--background-effect: var(--hover-background) !important}[uc-cloud-image-editor] :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important;--background-effect: var(--down-background) !important}[uc-cloud-image-editor] :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important;--background-effect: var(--active-background) !important}[uc-cloud-image-editor] [hidden-scrollbar]::-webkit-scrollbar{display:none}[uc-cloud-image-editor] [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}[uc-cloud-image-editor].uc-editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}[uc-cloud-image-editor].uc-editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}[uc-cloud-image-editor]>.uc-wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto}@media only screen and (max-width: 800px){[uc-cloud-image-editor]>.uc-wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);-webkit-user-select:none;user-select:none;pointer-events:auto}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image.uc-image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image.uc-image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image.uc-image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar{position:relative;transition:.3s}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar>.uc-toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar>.uc-toolbar_content.uc-toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar>.uc-toolbar_content.uc-toolbar_content__editor{display:flex}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-info_pan{position:absolute;-webkit-user-select:none;user-select:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);-webkit-user-select:none;user-select:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-file_type_outer>.uc-file_type{padding:4px .8em}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_content>.uc-network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--uc-foreground);background-color:var(--uc-muted);border-radius:50%}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_content>.uc-network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui);color:var(--uc-foreground)}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}uc-crop-frame>.uc-svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}uc-crop-frame>.uc-thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}uc-crop-frame>.uc-thumb--visible{opacity:1;pointer-events:auto}uc-crop-frame>.uc-thumb--hidden{opacity:0;pointer-events:none}uc-crop-frame>.uc-guides{transition:var(--transition-duration-3)}uc-crop-frame>.uc-guides--hidden{opacity:0}uc-crop-frame>.uc-guides--semi-hidden{opacity:.2}uc-crop-frame>.uc-guides--visible{opacity:1}uc-editor-button-control,uc-editor-crop-button-control,uc-editor-filter-control,uc-editor-operation-control{--l-base-min-width: var(--uc-button-size);--l-base-height: var(--uc-button-size);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--background-effect: var(--idle-background);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--uc-secondary-foreground);--idle-opacity: 1;--idle-filter: 1;--idle-background: var(--uc-secondary);--hover-color-rgb: var(--uc-secondary-foreground);--hover-opacity: 1;--hover-filter: .8;--hover-background: var(--uc-secondary-hover);--down-color-rgb: var(--hover-color-rgb);--down-opacity: 1;--down-filter: .6;--down-background: var(--uc-secondary);border-radius:var(--uc-radius)}uc-editor-button-control>button,uc-editor-crop-button-control>button,uc-editor-filter-control>button,uc-editor-operation-control>button{all:unset;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;grid-template-rows:100%;align-items:center;height:var(--l-base-height);color:var(--color-effect);opacity:var(--opacity-effect);cursor:pointer;transition:var(--l-width-transition)}:where(uc-editor-button-control,uc-editor-crop-button-control,uc-editor-filter-control,uc-editor-operation-control)>uc-icon>svg{width:var(--size-icon);height:var(--size-icon)}uc-editor-filter-control>uc-icon.uc-original-icon>svg{width:100%;height:100%}uc-editor-button-control.uc-active,uc-editor-operation-control.uc-active,uc-editor-crop-button-control.uc-active,uc-editor-filter-control.uc-active{--idle-color-rgb: var(--uc-primary-foreground);--idle-background: var(--uc-primary);--idle-opacity: 1;--hover-color-rgb: var(--uc-primary-foreground);--hover-background: var(--uc-primary);--hover-opacity: 1}uc-editor-filter-control.uc-not_active .uc-preview[loaded]{opacity:1}uc-editor-filter-control.uc-active .uc-preview{opacity:0}uc-editor-button-control.uc-not_active,uc-editor-operation-control.uc-not_active,uc-editor-crop-button-control.uc-not_active,uc-editor-filter-control.uc-not_active{--idle-color-rgb: var(--uc-secondary-foreground)}:where(.uc-contrast) uc-editor-button-control.uc-not_active,:where(.uc-contrast) uc-editor-operation-control.uc-not_active,:where(.uc-contrast) uc-editor-crop-button-control.uc-not_active,:where(.uc-contrast) uc-editor-filter-control.uc-not_active{--idle-background: transparent;--hover-background: var(--uc-secondary);outline:1px solid var(--uc-border);outline-offset:-1px}uc-editor-button-control>button:before,uc-editor-operation-control>button:before,uc-editor-crop-button-control>button:before,uc-editor-filter-control>button:before{position:absolute;content:"";right:0;left:0;z-index:-1;width:100%;height:100%;background-color:var(--background-effect);border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}uc-editor-button-control>button .uc-title,uc-editor-operation-control>button .uc-title,uc-editor-crop-button-control>button .uc-title,uc-editor-filter-control>button .uc-title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}uc-editor-button-control>button uc-icon,uc-editor-operation-control>button uc-icon,uc-editor-crop-button-control>button uc-icon,uc-editor-filter-control>button uc-icon{pointer-events:none}uc-editor-filter-control>button .uc-preview{position:absolute;right:0;left:0;z-index:-1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}uc-editor-filter-control>.uc-original-icon{color:var(--color-effect);opacity:.3}uc-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none;color:var(--color-crop-guides)}uc-editor-image-cropper.uc-active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}uc-editor-image-cropper.uc-active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}uc-editor-image-cropper.uc-inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}uc-editor-image-cropper>.uc-canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}uc-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}uc-editor-image-fader.uc-active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}uc-editor-image-fader.uc-active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}uc-editor-image-fader.uc-inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}uc-editor-image-fader .uc-fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);-webkit-user-select:none;user-select:none;content-visibility:auto}uc-editor-image-fader .uc-fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}uc-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}uc-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:var(--size-panel-heading)}uc-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width: 600px){uc-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--uc-padding);--l-controls-padding: var(--uc-padding)}}@media only screen and (min-width: 601px){uc-editor-toolbar{--l-tab-gap: var(--cldtr-gap-max);--l-slider-padding: var(--uc-padding);--l-controls-padding: var(--uc-padding)}}uc-editor-toolbar>.uc-toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar.uc-sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar.uc-sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar.uc-sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--uc-secondary-foreground);transform:translate(0);transition:transform var(--transition-duration-3)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row{position:relative}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content.uc-tab-content--visible{opacity:1;pointer-events:auto}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content.uc-tab-content--hidden{opacity:0;pointer-events:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle.uc-tab-toggle--visible{display:contents}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle.uc-tab-toggle--hidden{display:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles.uc-tab-toggles--hidden{display:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle>uc-btn-ui{width:var(--uc-button-size)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle>uc-btn-ui>uc-icon>svg{width:var(--size-icon);height:var(--size-icon)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content .uc-controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--uc-padding)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content .uc-controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;gap:6px}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content .uc-controls-list_inner:last-child{padding-right:var(--uc-padding)}uc-editor-toolbar .uc-controls-list_last-item{margin-right:var(--cldtr-gap-max)}uc-editor-toolbar .uc-info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}uc-editor-toolbar .uc-info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}uc-editor-toolbar .uc-info-tooltip{z-index:3;padding:3px 6px;color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}uc-editor-toolbar .uc-info-tooltip_visible{transform:translateY(0);opacity:1}uc-editor-toolbar .uc-slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}uc-btn-ui>button{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--background-effect: var(--idle-background);--l-transition-effect: var( --css-transition, color var(--transition-duration-2), background-color var(--transition-duration-2), filter var(--transition-duration-2) );all:unset;display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--uc-button-size));padding-right:var(--css-padding-right, 14px);padding-left:var(--css-padding-left, 14px);font-size:1em;color:var(--color-effect);background-color:var(--background-effect);border-radius:var(--uc-radius);opacity:var(--opacity-effect);cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);-webkit-user-select:none;user-select:none}uc-btn-ui>button>uc-icon{pointer-events:none}uc-btn-ui .uc-text{white-space:nowrap}uc-btn-ui .uc-icon{display:flex;align-items:center;justify-content:center;color:var(--color-effect);filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}uc-btn-ui .uc-icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}uc-btn-ui .uc-icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}uc-btn-ui .uc-icon_single{margin-right:0;margin-left:0}uc-btn-ui .uc-icon_hidden{display:none;margin:0}uc-btn-ui.uc-primary>button{--idle-color-rgb: var(--uc-primary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: var(--uc-primary);--hover-color-rgb: var(--uc-primary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-primary-hover);--down-color-rgb: var(--uc-primary-foreground);--down-brightness: .75;--down-opacity: 1;--down-background: var(--uc-primary);--active-color-rgb: var(--uc-primary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: var(--uc-primary)}uc-btn-ui.uc-primary-icon>button{--idle-color-rgb: var(--uc-primary);--idle-brightness: 1;--idle-opacity: 1;--idle-background: transparent;--hover-color-rgb: var(--uc-primary);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-primary-transparent);--down-color-rgb: var(--uc-primary);--down-brightness: .75;--down-opacity: 1;--down-background: var(--uc-primary-transparent);--active-color-rgb: var(--uc-primary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: var(--uc-primary);padding:0;width:var(--uc-button-size)}uc-btn-ui.uc-secondary>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: var(--uc-secondary);--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary-hover);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: 1;--down-opacity: 1;--down-background: var(--uc-secondary-hover);--active-color-rgb: var(--uc-secondary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: transparent}:where(.uc-contrast) uc-btn-ui.uc-secondary>button{border:1px solid var(--uc-border)}uc-btn-ui.uc-secondary-icon>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: transparent;--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: 1;--down-opacity: 1;--down-background: var(--uc-secondary);--active-color-rgb: var(--uc-secondary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: transparent;padding:0;width:var(--uc-button-size)}uc-btn-ui.uc-tab>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: transparent;--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: 1;--down-opacity: 1;--down-background: var(--uc-secondary);--active-color-rgb: var(--uc-secondary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: transparent;padding:0;width:var(--uc-button-size)}uc-btn-ui.uc-default>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: var(--uc-secondary);--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary-hover);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: .75;--down-opacity: 1;--down-background: var(--uc-secondary);--active-color-rgb: var(--uc-primary);--active-brightness: 1;--active-opacity: 1;--active-background: var(--uc-primary-transparent)}:where(.uc-contrast) uc-btn-ui.uc-default>button{--idle-background: transparent;--hover-background: var(--uc-secondary);--active-background: var(--uc-foreground);--active-color-rgb: var(--uc-background)}uc-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}uc-line-loader-ui .uc-inner{width:25%;max-width:200px;height:100%}uc-line-loader-ui .uc-line{width:100%;height:100%;background-color:var(--uc-primary);transform:translate(-101%);transition:transform 1s}uc-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--uc-foreground);--hover-color-rgb: var(--uc-primary);--down-color-rgb: var(--uc-primary);--color-effect: var(--idle-color-rgb);--l-color: var(--color-effect);position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}uc-slider-ui .uc-thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2),background-color var(--transition-duration-2)}uc-slider-ui .uc-steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}uc-slider-ui .uc-border-step{width:0px;height:10px;border-right:1px solid var(--uc-foreground);opacity:1;transition:border-color var(--transition-duration-2)}uc-slider-ui .uc-minor-step{width:0px;height:4px;border-right:1px solid var(--uc-foreground);opacity:.6;transition:border-color var(--transition-duration-2)}uc-slider-ui .uc-zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}uc-slider-ui .uc-input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}uc-presence-toggle.uc-transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}uc-presence-toggle.uc-visible{opacity:1;pointer-events:inherit}uc-presence-toggle.uc-hidden{opacity:0;pointer-events:none}uc-presence-toggle.uc-initial{display:none!important;transition:none!important}[uc-cloud-image-editor] [role=button]:focus-visible,[uc-cloud-image-editor] button:focus-visible{outline:1px auto Highlight;outline:1px auto -webkit-focus-ring-color}[uc-cloud-image-editor] .uc-cloud-mask{pointer-events:none}:where([uc-cloud-image-editor]) uc-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:where([uc-cloud-image-editor]) uc-icon svg{width:calc(var(--uc-button-size) / 2);height:calc(var(--uc-button-size) / 2)}uc-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--uc-background)}[uc-modal]>dialog:has(uc-cloud-image-editor-activity[active]){width:100%;height:100%}uc-select{display:inline-flex}uc-select select{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--uc-button-size);padding:0 14px;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--uc-radius);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--uc-transition);color:var(--uc-secondary-foreground);background-color:var(--uc-secondary)}@keyframes uc-spinner-keyframes{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.uc-spinner{width:1em;height:1em;border:solid 2px transparent;border-top-color:currentColor;border-left-color:currentColor;border-radius:50%;animation:uc-spinner-keyframes .4s linear infinite}uc-thumb{width:100%;height:100%}:where([uc-wgt-common]) uc-source-btn[type]{all:unset}[uc-file-uploader-inline] uc-start-from{height:100%;container-type:inline-size}[uc-file-uploader-inline]{--cfg-done-activity: "start-from";--cfg-init-activity: "start-from";flex:1}[uc-file-uploader-inline] uc-activity-header:after{width:var(--uc-button-size);height:var(--uc-button-size);content:""}[uc-file-uploader-inline] uc-activity-header .uc-close-btn{display:none}[uc-file-uploader-inline] uc-copyright .uc-credits{position:static}@container (min-width: 500px){[uc-file-uploader-inline] uc-start-from .uc-content{grid-template-columns:1fr max-content;height:100%}[uc-file-uploader-inline] uc-start-from uc-copyright{grid-column:2}[uc-file-uploader-inline] uc-start-from uc-drop-area{grid-row:span 3}[uc-file-uploader-inline] uc-start-from:has(uc-copyright[hidden]) uc-drop-area{grid-row:span 2}[uc-file-uploader-inline] uc-start-from:has(.uc-cancel-btn[hidden]) uc-drop-area{grid-row:span 2}[uc-file-uploader-inline] uc-start-from:has(uc-copyright[hidden]):has(.uc-cancel-btn[hidden]) uc-drop-area{grid-row:span 1}}
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* MIT License
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2025 Uploadcare (hello@uploadcare.com). All rights reserved.
|
|
6
|
+
*
|
|
7
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
8
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
9
|
+
* in the Software without restriction, including without limitation the rights
|
|
10
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
11
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
12
|
+
* furnished to do so, subject to the following conditions:
|
|
13
|
+
*
|
|
14
|
+
* The above copyright notice and this permission notice shall be included in all
|
|
15
|
+
* copies or substantial portions of the Software.
|
|
16
|
+
*
|
|
17
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
18
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
19
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
20
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
21
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
22
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
23
|
+
* SOFTWARE.
|
|
24
|
+
*
|
|
25
|
+
*/@layer uc,uc.base,uc.components,uc.rules,uc.solutions,uc.post-reset,uc.base,uc.rules,uc.post-reset;@layer uc.components{uc-activity-header{display:flex;justify-content:space-between;gap:var(--uc-padding);padding:var(--uc-padding);color:var(--uc-foreground);font-weight:500;font-size:1em}uc-activity-header>*{display:flex;align-items:center}}@layer uc.components{uc-camera-source{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-height:100%;overflow:hidden;background-color:var(--uc-background);border-radius:var(--uc-radius)}[uc-modal]>dialog:has(uc-camera-source[active]){width:100%;height:100%}uc-camera-source:not(.uc-initialized) .uc-controls{display:none}uc-camera-source video{display:block;width:100%;max-height:100%;object-fit:contain;object-position:center center;background-color:var(--uc-muted);border-radius:var(--uc-radius)}uc-camera-source .uc-toolbar{position:absolute;bottom:0;display:flex;justify-content:space-between;width:100%;padding:var(--uc-padding);background-color:var(--uc-background)}uc-camera-source .uc-content{display:flex;flex:1;justify-content:center;width:100%;height:100%;padding:var(--uc-padding);padding-top:0;overflow:hidden}uc-camera-source .uc-message-box{display:flex;flex-direction:column;grid-gap:40px;align-items:center;justify-content:center;padding:40px 40px 0;color:var(--uc-foreground)}uc-camera-source .uc-message-box button{color:var(--uc-primary-foreground);background-color:var(--uc-primary)}uc-camera-source .uc-shot-btn{width:58px;height:58px;color:var(--uc-background);background-color:var(--uc-primary-light);border-radius:50%;opacity:.85;transition:bottom var(--uc-transition),opacity var(--uc-transition),transform var(--uc-transition)}uc-camera-source .uc-shot-btn:hover{transform:scale(1.05);opacity:1}uc-camera-source .uc-shot-btn:active{transform:scale(1);opacity:1}uc-camera-source .uc-shot-btn[disabled]{bottom:-80px}uc-camera-source .uc-shot-btn uc-icon svg{width:20px;height:20px}uc-camera-source .uc-controls{position:relative;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;padding:0 var(--uc-padding) var(--uc-padding);min-height:74px}uc-camera-source .uc-switcher{display:flex;gap:calc(var(--uc-padding) / 2)}uc-camera-source .uc-switch.uc-active{background-color:var(--uc-secondary)}uc-camera-source .uc-camera-actions{display:flex;justify-content:center;align-items:center;gap:5px}uc-camera-source .uc-stop-record{background-color:var(--uc-destructive-foreground-light);opacity:1}:where(uc-camera-source:is(.uc-recording)) .uc-recording-timer uc-icon{display:none}:where(uc-camera-source:is(.uc-recording)) .uc-recording-timer{pointer-events:none}uc-camera-source .uc-recording-timer{z-index:1;position:relative;overflow:hidden}:where(uc-camera-source) .uc-recording-timer uc-icon{width:10px;height:10px;margin-right:10px}uc-camera-source .uc-recording-timer .uc-line{position:absolute;content:"";bottom:0;left:0;right:0;height:2px;background-color:var(--uc-foreground-light);transform:scaleX(0);transform-origin:left;transition:transform var(--uc-transition)}uc-camera-source .uc-btn-microphone{z-index:1}uc-camera-source .uc-select{display:flex}uc-camera-source .uc-audio-select{width:98px}uc-camera-source .uc-audio-select select{width:100%}uc-camera-source .uc-camera-action{position:absolute;inset:0 var(--uc-padding) var(--uc-padding);margin:0 auto}}@layer uc.solutions{[uc-cloud-image-editor]{--color-primary-accent: var(--uc-primary);--color-text-base: var(--uc-foreground);--color-text-accent-contrast: var(--uc-background);--color-fill-contrast: var(--uc-background);--color-modal-backdrop: oklch(0 0 0 / .1);--color-image-background: var(--uc-muted);--color-focus-ring: var(--color-primary-accent);--color-crop-guides: var(--uc-foreground);--font-size-ui: var(--uc-font-size);--size-touch-area: var(--uc-button-size);--size-panel-heading: calc(var(--uc-button-size) + var(--uc-padding) * 2);--size-ui-min-width: 130px;--size-line-width: 1px;--size-modal-width: 650px;--size-icon: calc(var(--uc-button-size) / 2);--border-radius-editor: var(--uc-radius);--border-radius-thumb: var(--uc-radius);--border-radius-ui: var(--uc-radius);--border-radius-base: var(--uc-radius);--cldtr-gap-min: 5px;--cldtr-gap-mid-1: 10px;--cldtr-gap-mid-2: 15px;--cldtr-gap-max: 20px;--transition-duration-2: var(--transition-duration-all, .2s);--transition-duration-3: var(--transition-duration-all, .3s);--transition-duration-4: var(--transition-duration-all, .4s);--transition-duration-5: var(--transition-duration-all, .5s);--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading);--transparent-pixel: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=);display:block;width:100%;height:100%;max-height:100%}[uc-cloud-image-editor] :is([can-handle-paste]:hover,[can-handle-paste]:focus){--can-handle-paste: "true"}[uc-cloud-image-editor] :is([tabindex][focus-visible],[tabindex]:hover,[with-effects][focus-visible],[with-effects]:hover){--filter-effect: var(--hover-filter) !important;--opacity-effect: var(--hover-opacity) !important;--color-effect: var(--hover-color-rgb) !important;--background-effect: var(--hover-background) !important}[uc-cloud-image-editor] :is([tabindex]:active,[with-effects]:active){--filter-effect: var(--down-filter) !important;--opacity-effect: var(--down-opacity) !important;--color-effect: var(--down-color-rgb) !important;--background-effect: var(--down-background) !important}[uc-cloud-image-editor] :is([tabindex][active],[with-effects][active]){--filter-effect: var(--active-filter) !important;--opacity-effect: var(--active-opacity) !important;--color-effect: var(--active-color-rgb) !important;--background-effect: var(--active-background) !important}[uc-cloud-image-editor] [hidden-scrollbar]::-webkit-scrollbar{display:none}[uc-cloud-image-editor] [hidden-scrollbar]{-ms-overflow-style:none;scrollbar-width:none}[uc-cloud-image-editor].uc-editor_ON{--modal-header-opacity: 0;--modal-header-height: 0px;--modal-toolbar-height: calc(var(--size-panel-heading) * 2)}[uc-cloud-image-editor].uc-editor_OFF{--modal-header-opacity: 1;--modal-header-height: var(--size-panel-heading);--modal-toolbar-height: var(--size-panel-heading)}[uc-cloud-image-editor]>.uc-wrapper{--l-min-img-height: var(--modal-toolbar-height);--l-max-img-height: 100%;--l-edit-button-width: 120px;--l-toolbar-horizontal-padding: var(--cldtr-gap-mid-1);position:relative;display:grid;grid-template-rows:minmax(var(--l-min-img-height),var(--l-max-img-height)) minmax(var(--modal-toolbar-height),auto);height:100%;overflow:hidden;overflow-y:auto}@media only screen and (max-width:800px){[uc-cloud-image-editor]>.uc-wrapper{--l-edit-button-width: 70px;--l-toolbar-horizontal-padding: var(--cldtr-gap-min)}}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport{display:flex;align-items:center;justify-content:center;overflow:hidden}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image{--viewer-image-opacity: 1;position:absolute;top:0;left:0;z-index:10;display:block;box-sizing:border-box;width:100%;height:100%;object-fit:scale-down;background-color:var(--color-image-background);transform:scale(1);opacity:var(--viewer-image-opacity);-webkit-user-select:none;user-select:none;pointer-events:auto}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image.uc-image_visible_viewer{transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-4)}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image.uc-image_hidden_to_cropper{--viewer-image-opacity: 0;background-image:var(--transparent-pixel);transform:scale(1);transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container>.uc-image.uc-image_hidden_effects{--viewer-image-opacity: 0;transform:scale(1);transition:opacity var(--transition-duration-3) cubic-bezier(.5,0,1,1),transform var(--transition-duration-4);pointer-events:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-image_container{position:relative;display:block;width:100%;height:100%;background-color:var(--color-image-background);transition:var(--transition-duration-3)}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar{position:relative;transition:.3s}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar>.uc-toolbar_content{position:absolute;bottom:0;left:0;box-sizing:border-box;width:100%;height:var(--modal-toolbar-height);min-height:var(--size-panel-heading);background-color:var(--color-fill-contrast)}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar>.uc-toolbar_content.uc-toolbar_content__viewer{display:flex;align-items:center;justify-content:space-between;height:var(--size-panel-heading);padding-right:var(--l-toolbar-horizontal-padding);padding-left:var(--l-toolbar-horizontal-padding)}[uc-cloud-image-editor]>.uc-wrapper>.uc-toolbar>.uc-toolbar_content.uc-toolbar_content__editor{display:flex}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-info_pan{position:absolute;-webkit-user-select:none;user-select:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-file_type_outer{position:absolute;z-index:2;display:flex;max-width:120px;transform:translate(-40px);-webkit-user-select:none;user-select:none}[uc-cloud-image-editor]>.uc-wrapper>.uc-viewport>.uc-file_type_outer>.uc-file_type{padding:4px .8em}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash{position:absolute;z-index:4;display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--color-fill-contrast)}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_content{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_content>.uc-network_problems_icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--uc-foreground);background-color:var(--uc-muted);border-radius:50%}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_content>.uc-network_problems_text{margin-top:var(--cldtr-gap-max);font-size:var(--font-size-ui);color:var(--uc-foreground)}[uc-cloud-image-editor]>.uc-wrapper>.uc-network_problems_splash>.uc-network_problems_footer{display:flex;align-items:center;justify-content:center;height:var(--size-panel-heading)}uc-crop-frame>.uc-svg{position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);opacity:inherit;transition:var(--transition-duration-3)}uc-crop-frame>.uc-thumb{--idle-color-rgb: var(--color-text-base);--hover-color-rgb: var(--color-primary-accent);--focus-color-rgb: var(--color-primary-accent);--down-color-rgb: var(--color-primary-accent);--color-effect: var(--idle-color-rgb);color:var(--color-effect);transition:color var(--transition-duration-3),opacity var(--transition-duration-3)}uc-crop-frame .uc-thumb--visible{opacity:1;pointer-events:auto}uc-crop-frame .uc-thumb--hidden{opacity:0;pointer-events:none}uc-crop-frame .uc-guides{transition:var(--transition-duration-3)}uc-crop-frame .uc-guides--hidden{opacity:0}uc-crop-frame .uc-guides--semi-hidden{opacity:.2}uc-crop-frame .uc-guides--visible{opacity:1}uc-editor-button-control,uc-editor-crop-button-control,uc-editor-aspect-ratio-button-control,uc-editor-freeform-button-control,uc-editor-filter-control,uc-editor-operation-control{--l-base-min-width: var(--uc-button-size);--l-base-height: var(--uc-button-size);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--background-effect: var(--idle-background);--filter-effect: var(--idle-filter);--idle-color-rgb: var(--uc-secondary-foreground);--idle-opacity: 1;--idle-filter: 1;--idle-background: var(--uc-secondary);--hover-color-rgb: var(--uc-secondary-foreground);--hover-opacity: 1;--hover-filter: .8;--hover-background: var(--uc-secondary-hover);--down-color-rgb: var(--hover-color-rgb);--down-opacity: 1;--down-filter: .6;--down-background: var(--uc-secondary);border-radius:var(--uc-radius)}uc-editor-button-control>button,uc-editor-crop-button-control>button,uc-editor-aspect-ratio-button-control>button,uc-editor-freeform-button-control>button,uc-editor-filter-control>button,uc-editor-operation-control>button{all:unset;position:relative;display:grid;grid-template-columns:var(--l-base-min-width) auto;grid-template-rows:100%;align-items:center;height:var(--l-base-height);color:var(--color-effect);opacity:var(--opacity-effect);cursor:pointer;transition:var(--l-width-transition)}uc-editor-freeform-button-control>button{grid-template-columns:auto var(--l-base-min-width)}uc-editor-freeform-button-control>button>uc-icon{margin-left:var(--cldtr-gap-mid-1);width:10px}:where(uc-editor-button-control,uc-editor-crop-button-control,uc-editor-aspect-ratio-button-control,uc-editor-freeform-button-control,uc-editor-filter-control,uc-editor-operation-control)>uc-icon>svg{width:var(--size-icon);height:var(--size-icon)}uc-editor-filter-control>uc-icon.uc-original-icon>svg{width:100%;height:100%}uc-editor-button-control.uc-active,uc-editor-operation-control.uc-active,uc-editor-crop-button-control.uc-active,uc-editor-aspect-ratio-button-control.uc-active,uc-editor-freeform-button-control.uc-active,uc-editor-filter-control.uc-active{--idle-color-rgb: var(--uc-primary-foreground);--idle-background: var(--uc-primary);--idle-opacity: 1;--hover-color-rgb: var(--uc-primary-foreground);--hover-background: var(--uc-primary);--hover-opacity: 1}uc-editor-filter-control.uc-not_active .uc-preview[loaded]{opacity:1}uc-editor-filter-control.uc-active .uc-preview{opacity:0}uc-editor-button-control.uc-not_active,uc-editor-operation-control.uc-not_active,uc-editor-crop-button-control.uc-not_active,uc-editor-aspect-ratio-button-control.uc-not_active,uc-editor-freeform-button-control.uc-not_active,uc-editor-filter-control.uc-not_active{--idle-color-rgb: var(--uc-secondary-foreground)}:where(.uc-contrast) uc-editor-button-control.uc-not_active,:where(.uc-contrast) uc-editor-operation-control.uc-not_active,:where(.uc-contrast) uc-editor-crop-button-control.uc-not_active,:where(.uc-contrast) uc-editor-freeform-button-control.uc-not_active,:where(.uc-contrast) uc-editor-aspect-ratio-button-control.uc-not_active,:where(.uc-contrast) uc-editor-filter-control.uc-not_active{--idle-background: transparent;--hover-background: var(--uc-secondary);outline:1px solid var(--uc-border);outline-offset:-1px}uc-editor-button-control>button:before,uc-editor-operation-control>button:before,uc-editor-crop-button-control>button:before,uc-editor-freeform-button-control>button:before,uc-editor-aspect-ratio-button-control>button:before,uc-editor-filter-control>button:before{position:absolute;content:"";right:0;left:0;z-index:-1;width:100%;height:100%;background-color:var(--background-effect);border-radius:var(--border-radius-editor);transition:var(--transition-duration-3)}uc-editor-button-control>button .uc-title,uc-editor-operation-control>button .uc-title,uc-editor-crop-button-control>button .uc-title,uc-editor-aspect-ratio-button-control>button .uc-title,uc-editor-freeform-button-control>button .uc-title,uc-editor-filter-control>button .uc-title{padding-right:var(--cldtr-gap-mid-1);font-size:.7em;letter-spacing:1.004px;text-transform:uppercase}uc-editor-freeform-button-control>button .uc-title{padding-left:var(--cldtr-gap-mid-1);padding-right:0}uc-editor-button-control>button uc-icon,uc-editor-operation-control>button uc-icon,uc-editor-crop-button-control>button uc-icon,uc-editor-aspect-ratio-button-control>button uc-icon,uc-editor-freeform-button-control>button uc-icon,uc-editor-filter-control>button uc-icon{pointer-events:none}uc-editor-filter-control>button .uc-preview{position:absolute;right:0;left:0;z-index:-1;width:100%;height:var(--l-base-height);background-repeat:no-repeat;background-size:contain;border-radius:var(--border-radius-editor);opacity:0;filter:brightness(var(--filter-effect));transition:var(--transition-duration-3)}uc-editor-filter-control>.uc-original-icon{color:var(--color-effect);opacity:.3}uc-editor-image-cropper{position:absolute;top:0;left:0;z-index:10;display:block;width:100%;height:100%;opacity:0;pointer-events:none;touch-action:none;color:var(--color-crop-guides)}uc-editor-image-cropper.uc-active_from_editor{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}uc-editor-image-cropper.uc-active_from_viewer{transform:scale(1) translate(0);opacity:1;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1) .4s,opacity var(--transition-duration-3);pointer-events:auto}uc-editor-image-cropper.uc-inactive_to_editor{opacity:0;transition:transform var(--transition-duration-4) cubic-bezier(.37,0,.63,1),opacity var(--transition-duration-3) calc(var(--transition-duration-3) + .05s);pointer-events:none}uc-editor-image-cropper>.uc-canvas{position:absolute;top:0;left:0;z-index:1;display:block;width:100%;height:100%}uc-editor-image-fader{position:absolute;top:0;left:0;display:block;width:100%;height:100%}uc-editor-image-fader.uc-active_from_viewer{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-start);pointer-events:auto}uc-editor-image-fader.uc-active_from_cropper{z-index:3;transform:scale(1);opacity:1;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:auto}uc-editor-image-fader.uc-inactive_to_cropper{z-index:3;transform:scale(1);opacity:0;transition:transform var(--transition-duration-4),opacity var(--transition-duration-3) steps(1,jump-end);pointer-events:none}uc-editor-image-fader .uc-fader-image{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:scale-down;transform:scale(1);-webkit-user-select:none;user-select:none;content-visibility:auto}uc-editor-image-fader .uc-fader-image--preview{background-color:var(--color-image-background);border-top-left-radius:var(--border-radius-base);border-top-right-radius:var(--border-radius-base);transform:scale(1);opacity:0;transition:var(--transition-duration-3)}uc-editor-scroller{display:flex;align-items:center;width:100%;height:100%;overflow-x:scroll}uc-editor-slider{display:flex;align-items:center;justify-content:center;width:100%;height:var(--size-panel-heading)}uc-editor-toolbar{position:relative;width:100%;height:100%}@media only screen and (max-width:600px){uc-editor-toolbar{--l-tab-gap: var(--cldtr-gap-mid-1);--l-slider-padding: var(--uc-padding);--l-controls-padding: var(--uc-padding)}}@media only screen and (min-width:601px){uc-editor-toolbar{--l-tab-gap: var(--cldtr-gap-max);--l-slider-padding: var(--uc-padding);--l-controls-padding: var(--uc-padding)}}uc-editor-toolbar>.uc-toolbar-container{position:relative;width:100%;height:100%;overflow:hidden}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar{position:absolute;display:grid;grid-template-rows:1fr 1fr;width:100%;height:100%;background-color:var(--color-fill-contrast);transition:opacity var(--transition-duration-3) ease-in-out,transform var(--transition-duration-3) ease-in-out,visibility var(--transition-duration-3) ease-in-out}.uc-sub-toolbar>.uc-list-aspect-ratio-container>.uc-list-aspect-ratio{display:grid;grid-auto-flow:column;justify-content:center;align-items:center;gap:6px;height:var(--size-panel-heading)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar.uc-sub-toolbar--visible{transform:translateY(0);opacity:1;pointer-events:auto}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar.uc-sub-toolbar--top-hidden{transform:translateY(100%);opacity:0;pointer-events:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar.uc-sub-toolbar--bottom-hidden{transform:translateY(-100%);opacity:0;pointer-events:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row{display:flex;align-items:center;justify-content:space-between;padding-right:var(--l-controls-padding);padding-left:var(--l-controls-padding)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles{position:relative;display:grid;grid-auto-flow:column;grid-gap:0px var(--l-tab-gap);align-items:center;height:100%}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggles_indicator{position:absolute;bottom:0;left:0;width:var(--size-touch-area);height:2px;background-color:var(--uc-secondary-foreground);transform:translate(0);transition:transform var(--transition-duration-3)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row{position:relative}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;overflow:hidden;opacity:0;content-visibility:auto}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content.uc-tab-content--visible{opacity:1;pointer-events:auto}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content.uc-tab-content--hidden{opacity:0;pointer-events:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle.uc-tab-toggle--visible{display:contents}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle.uc-tab-toggle--hidden{display:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles.uc-tab-toggles--hidden{display:none}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle>uc-btn-ui{width:var(--uc-button-size)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-controls-row>.uc-tab-toggles>.uc-tab-toggle>uc-btn-ui>uc-icon>svg{width:var(--size-icon);height:var(--size-icon)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content .uc-controls-list_align{display:grid;grid-template-areas:". inner .";grid-template-columns:1fr auto 1fr;box-sizing:border-box;min-width:100%;padding-left:var(--uc-padding)}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content .uc-controls-list_inner{display:grid;grid-area:inner;grid-auto-flow:column;gap:6px}uc-editor-toolbar>.uc-toolbar-container>.uc-sub-toolbar>.uc-tab-content-row>.uc-tab-content .uc-controls-list_inner:last-child{padding-right:var(--uc-padding)}uc-editor-toolbar .uc-controls-list_last-item{margin-right:var(--cldtr-gap-max)}uc-editor-toolbar .uc-info-tooltip_container{position:absolute;display:flex;align-items:flex-start;justify-content:center;width:100%;height:100%}uc-editor-toolbar .uc-info-tooltip_wrapper{position:absolute;top:calc(-100% - var(--cldtr-gap-mid-2));display:flex;flex-direction:column;justify-content:flex-end;height:100%;pointer-events:none}uc-editor-toolbar .uc-info-tooltip{z-index:3;padding:3px 6px;color:var(--color-text-base);font-size:.7em;letter-spacing:1px;text-transform:uppercase;background-color:var(--color-text-accent-contrast);border-radius:var(--border-radius-editor);transform:translateY(100%);opacity:0;transition:var(--transition-duration-3)}uc-editor-toolbar .uc-info-tooltip_visible{transform:translateY(0);opacity:1}uc-editor-toolbar .uc-slider{padding-right:var(--l-slider-padding);padding-left:var(--l-slider-padding)}uc-btn-ui>button{--filter-effect: var(--idle-brightness);--opacity-effect: var(--idle-opacity);--color-effect: var(--idle-color-rgb);--background-effect: var(--idle-background);--l-transition-effect: var( --css-transition, color var(--transition-duration-2), background-color var(--transition-duration-2), filter var(--transition-duration-2) );all:unset;display:inline-flex;align-items:center;box-sizing:var(--css-box-sizing, border-box);height:var(--css-height, var(--uc-button-size));padding-right:var(--css-padding-right, 14px);padding-left:var(--css-padding-left, 14px);font-size:1em;color:var(--color-effect);background-color:var(--background-effect);border-radius:var(--uc-radius);opacity:var(--opacity-effect);cursor:pointer;filter:brightness(var(--filter-effect));transition:var(--l-transition-effect);-webkit-user-select:none;user-select:none}uc-btn-ui>button>uc-icon{pointer-events:none}uc-btn-ui .uc-text{white-space:nowrap}uc-btn-ui .uc-icon{display:flex;align-items:center;justify-content:center;color:var(--color-effect);filter:brightness(var(--filter-effect));transition:var(--l-transition-effect)}uc-btn-ui .uc-icon_left{margin-right:var(--cldtr-gap-mid-1);margin-left:0}uc-btn-ui .uc-icon_right{margin-right:0;margin-left:var(--cldtr-gap-mid-1)}uc-btn-ui .uc-icon_single{margin-right:0;margin-left:0}uc-btn-ui .uc-icon_hidden{display:none;margin:0}uc-btn-ui.uc-primary>button{--idle-color-rgb: var(--uc-primary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: var(--uc-primary);--hover-color-rgb: var(--uc-primary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-primary-hover);--down-color-rgb: var(--uc-primary-foreground);--down-brightness: .75;--down-opacity: 1;--down-background: var(--uc-primary);--active-color-rgb: var(--uc-primary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: var(--uc-primary)}uc-btn-ui.uc-primary-icon>button{--idle-color-rgb: var(--uc-primary);--idle-brightness: 1;--idle-opacity: 1;--idle-background: transparent;--hover-color-rgb: var(--uc-primary);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-primary-transparent);--down-color-rgb: var(--uc-primary);--down-brightness: .75;--down-opacity: 1;--down-background: var(--uc-primary-transparent);--active-color-rgb: var(--uc-primary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: var(--uc-primary);padding:0;width:var(--uc-button-size)}uc-btn-ui.uc-secondary>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: var(--uc-secondary);--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary-hover);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: 1;--down-opacity: 1;--down-background: var(--uc-secondary-hover);--active-color-rgb: var(--uc-secondary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: transparent}:where(.uc-contrast) uc-btn-ui.uc-secondary>button{border:1px solid var(--uc-border)}uc-btn-ui.uc-secondary-icon>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: transparent;--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: 1;--down-opacity: 1;--down-background: var(--uc-secondary);--active-color-rgb: var(--uc-secondary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: transparent;padding:0;width:var(--uc-button-size)}uc-btn-ui.uc-tab>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: transparent;--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: 1;--down-opacity: 1;--down-background: var(--uc-secondary);--active-color-rgb: var(--uc-secondary-foreground);--active-brightness: 1;--active-opacity: 1;--active-background: transparent;padding:0;width:var(--uc-button-size)}uc-btn-ui.uc-default>button{--idle-color-rgb: var(--uc-secondary-foreground);--idle-brightness: 1;--idle-opacity: 1;--idle-background: var(--uc-secondary);--hover-color-rgb: var(--uc-secondary-foreground);--hover-brightness: 1;--hover-opacity: 1;--hover-background: var(--uc-secondary-hover);--down-color-rgb: var(--uc-secondary-foreground);--down-brightness: .75;--down-opacity: 1;--down-background: var(--uc-secondary);--active-color-rgb: var(--uc-primary);--active-brightness: 1;--active-opacity: 1;--active-background: var(--uc-primary-transparent)}:where(.uc-contrast) uc-btn-ui.uc-default>button{--idle-background: transparent;--hover-background: var(--uc-secondary);--active-background: var(--uc-foreground);--active-color-rgb: var(--uc-background)}uc-line-loader-ui{position:absolute;top:0;left:0;z-index:9999;width:100%;height:2px;opacity:.5}uc-line-loader-ui .uc-inner{width:25%;max-width:200px;height:100%}uc-line-loader-ui .uc-line{width:100%;height:100%;background-color:var(--uc-primary);transform:translate(-101%);transition:transform 1s}uc-slider-ui{--l-thumb-size: 24px;--l-zero-dot-size: 5px;--l-zero-dot-offset: 2px;--idle-color-rgb: var(--uc-foreground);--hover-color-rgb: var(--uc-primary);--down-color-rgb: var(--uc-primary);--color-effect: var(--idle-color-rgb);--l-color: var(--color-effect);position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:calc(var(--l-thumb-size) + (var(--l-zero-dot-size) + var(--l-zero-dot-offset)) * 2)}uc-slider-ui .uc-thumb{position:absolute;left:0;width:var(--l-thumb-size);height:var(--l-thumb-size);background-color:var(--l-color);border-radius:50%;transform:translate(0);opacity:1;transition:opacity var(--transition-duration-2),background-color var(--transition-duration-2)}uc-slider-ui .uc-steps{position:absolute;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:100%;padding-right:calc(var(--l-thumb-size) / 2);padding-left:calc(var(--l-thumb-size) / 2)}uc-slider-ui .uc-border-step{width:0px;height:10px;border-right:1px solid var(--uc-foreground);opacity:1;transition:border-color var(--transition-duration-2)}uc-slider-ui .uc-minor-step{width:0px;height:4px;border-right:1px solid var(--uc-foreground);opacity:.6;transition:border-color var(--transition-duration-2)}uc-slider-ui .uc-zero-dot{position:absolute;top:calc(100% - var(--l-zero-dot-offset) * 2);left:calc(var(--l-thumb-size) / 2 - var(--l-zero-dot-size) / 2);width:var(--l-zero-dot-size);height:var(--l-zero-dot-size);background-color:var(--color-primary-accent);border-radius:50%;opacity:0;transition:var(--transition-duration-3)}uc-slider-ui .uc-input{position:absolute;width:calc(100% - 10px);height:100%;margin:0;cursor:pointer;opacity:0}uc-presence-toggle.uc-transition{transition:opacity var(--transition-duration-3),visibility var(--transition-duration-3)}uc-presence-toggle.uc-visible{opacity:1;pointer-events:inherit}uc-presence-toggle.uc-hidden{opacity:0;pointer-events:none}uc-presence-toggle.uc-initial{display:none!important;transition:none!important}[uc-cloud-image-editor] [role=button]:focus-visible,[uc-cloud-image-editor] button:focus-visible{outline:1px auto Highlight;outline:1px auto -webkit-focus-ring-color}[uc-cloud-image-editor] .uc-cloud-mask{pointer-events:none}[uc-aspect-ratio-freeform] button{display:flex}[uc-aspect-ratio-freeform] uc-icon{display:none}[uc-aspect-ratio-freeform] .uc-title{padding-left:var(--cldtr-gap-mid-1)}:where(uc-editor-freeform-button-control,uc-editor-aspect-ratio-button-control:last-of-type){margin-right:calc(3 * var(--cldtr-gap-mid-1))}}@layer uc.solutions{:where([uc-cloud-image-editor]) uc-icon{display:flex;justify-content:center;width:100%;height:100%}:where([uc-cloud-image-editor]) uc-icon svg{width:calc(var(--uc-button-size) / 2);height:calc(var(--uc-button-size) / 2)}}@layer uc.components{uc-cloud-image-editor-activity{position:relative;display:flex;width:100%;height:100%;overflow:hidden;background-color:var(--uc-background)}[uc-modal]>dialog:has(uc-cloud-image-editor-activity[active]){width:100%;height:100%}}@layer uc.components{uc-config{display:none}}@layer uc.components{uc-copyright{display:flex;width:100%;justify-content:center}uc-copyright .uc-credits{all:unset;position:absolute;bottom:12px;background-color:var(--uc-background);padding:2px 5px;border-radius:6px;color:var(--uc-muted-foreground);font-weight:400;font-size:12px;opacity:.9;cursor:pointer;transition:opacity var(--uc-transition),background-color var(--uc-transition)}uc-copyright .uc-credits:focus-visible{outline:1px auto Highlight;outline:1px auto -webkit-focus-ring-color}uc-copyright .uc-credits:hover{opacity:1;background-color:var(--uc-muted)}}@layer uc.components{:where([uc-drop-area]){padding:2px;overflow:hidden;border:1px dashed var(--uc-border);border-radius:calc(var(--uc-radius) * 1.75);transition:border var(--uc-transition),border-radius var(--uc-transition)}:where([uc-drop-area]),:where([uc-drop-area]) .uc-content-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:where([uc-drop-area]) .uc-text{position:relative;margin:var(--uc-padding);color:var(--uc-muted-foreground);transition:color var(--uc-transition)}:where([uc-drop-area])[ghost][drag-state=inactive]{display:none}:where([uc-drop-area])[ghost]:not([fullscreen]):is([drag-state=active],[drag-state=near],[drag-state=over]){background:var(--uc-background)}:where([uc-drop-area]):is([drag-state=active],[drag-state=near],[drag-state=over],:hover){background:var(--uc-primary-transparent);border-color:var(--uc-primary-transparent)}:where(.uc-contrast) :where([uc-drop-area]):is([drag-state=active],[drag-state=near],[drag-state=over],:hover){color:var(--uc-foreground);background:transparent;border-color:var(--uc-foreground);border-width:2px;border-style:solid}:where([uc-drop-area]):is([drag-state=active],[drag-state=near]){opacity:1}:where([uc-drop-area])[drag-state=over]{border-color:var(--uc-primary);opacity:1}:where([uc-drop-area])[with-icon]{min-height:180px}:where([uc-drop-area])[with-icon] .uc-content-wrapper{display:flex;flex-direction:column}:where([uc-drop-area])[with-icon] .uc-text{color:var(--uc-foreground);font-weight:500;font-size:1.1em}:where([uc-drop-area])[with-icon] .uc-icon-container{position:relative;width:64px;height:64px;margin:var(--uc-padding);overflow:hidden;color:var(--uc-foreground);background-color:var(--uc-muted);border-radius:50%;transition:color var(--uc-transition),background-color var(--uc-transition)}:where([uc-drop-area])[with-icon] uc-icon{position:absolute;width:32px;height:32px;top:calc(50% - 16px);left:calc(50% - 16px);transition:transform var(--uc-transition)}:where([uc-drop-area])[with-icon] uc-icon:last-child{transform:translateY(48px)}:where(.uc-contrast) :where([uc-drop-area])[with-icon]:hover .uc-icon-container,:where(.uc-contrast) :where([uc-drop-area])[with-icon]:hover .uc-text{color:var(--uc-foreground)}:where([uc-drop-area])[with-icon]:hover .uc-icon-container{background-color:var(--uc-primary-transparent)}:where(.uc-contrast) :where([uc-drop-area])[with-icon]:hover .uc-icon-container{background-color:var(--uc-muted)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) .uc-icon-container{color:var(--uc-primary-foreground);background-color:var(--uc-primary)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) .uc-text{color:var(--uc-foreground)}:where(.uc-contrast) :where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) .uc-text{color:var(--uc-foreground)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) uc-icon:first-child{transform:translateY(-48px)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper:is([drag-state=active],[drag-state=near],[drag-state=over]) uc-icon:last-child{transform:translateY(0)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper[drag-state=near] uc-icon:last-child{transform:scale(1.3)}:where([uc-drop-area])[with-icon]>.uc-content-wrapper[drag-state=over] uc-icon:last-child{transform:scale(1.5)}:where([uc-drop-area])[fullscreen]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;width:calc(100vw - var(--uc-padding) * 2);height:calc(100vh - var(--uc-padding) * 2);margin:var(--uc-padding)}:where([uc-drop-area])[fullscreen] .uc-content-wrapper{width:100%;max-width:calc(var(--uc-dialog-width) * .8);height:180px;color:var(--uc-foreground);background-color:var(--uc-background);border-radius:calc(var(--uc-radius) * 1.75);box-shadow:var(--uc-dialog-shadow);transition:color var(--uc-transition),background-color var(--uc-transition),box-shadow var(--uc-transition),border-radius var(--uc-transition),transform var(--uc-transition)}:where([uc-drop-area])[with-icon][fullscreen][drag-state=active]>.uc-content-wrapper,:where([uc-drop-area])[with-icon][fullscreen][drag-state=near]>.uc-content-wrapper{transform:translateY(10px);opacity:0}:where([uc-drop-area])[with-icon][fullscreen][drag-state=over]>.uc-content-wrapper{transform:translateY(0);opacity:1}:is(:where([uc-drop-area])[with-icon][fullscreen])>.uc-content-wrapper uc-icon:first-child{transform:translateY(-48px)}:where([uc-drop-area])[clickable]{cursor:pointer}}@layer uc.components{uc-external-source{display:flex;flex-direction:column;width:100%;height:100%;background-color:var(--uc-background);overflow:hidden;position:relative}[uc-modal]>dialog:has(uc-external-source[active]){width:100%;height:100%}uc-external-source>.uc-content{position:relative;display:grid;flex:1;grid-template-rows:1fr min-content}uc-external-source iframe{display:block;width:100%;height:100%;border:none}uc-external-source .uc-iframe-wrapper{overflow:hidden}uc-external-source .uc-toolbar{display:flex;width:100%;grid-gap:var(--uc-padding);align-items:center;justify-content:space-between;padding:var(--uc-padding);border-top:1px solid var(--uc-border)}uc-external-source .uc-back-btn{padding-left:0}uc-external-source .uc-selection-status-box{color:var(--uc-foreground);display:flex;flex-direction:column;align-items:center;justify-content:center}uc-external-source .uc-selection-status-box button{color:var(--uc-primary);height:auto;padding:0;background:none}uc-external-source .uc-selection-status-box button:hover{text-decoration:underline}uc-external-source uc-activity-header{position:absolute;width:100%;justify-content:flex-end;z-index:1;left:0;top:0;right:0;pointer-events:none}uc-external-source uc-activity-header .uc-close-btn{pointer-events:auto}uc-external-source .uc-done-btn>span.uc-hidden{visibility:hidden;pointer-events:none}uc-external-source .uc-done-btn>uc-spinner{position:absolute;width:100%;height:100%;display:flex;align-items:center;justify-content:center}}@layer uc.components{uc-file-item{--uc-file-item-gap: 4px;--uc-file-item-height: calc(var(--uc-preview-size) + var(--uc-padding) * 2 + var(--uc-file-item-gap));display:block;overflow:hidden;min-height:var(--uc-file-item-height)}uc-file-item:last-of-type{--uc-file-item-gap: 0}uc-file-item>.uc-inner{position:relative;display:grid;grid-template-columns:var(--uc-preview-size) 1fr max-content;gap:2px;align-items:center;margin-bottom:var(--uc-file-item-gap);padding:var(--uc-padding);overflow:hidden;font-size:.925em;background-color:var(--uc-muted);border-radius:var(--uc-radius);transition:background-color var(--uc-transition)}uc-file-item>.uc-inner[focused]{background-color:transparent}uc-file-item>.uc-inner[uploading] .uc-edit-btn{display:none}uc-file-item>:where(.uc-inner[failed],.uc-inner[limit-overflow]){background-color:var(--uc-destructive)}uc-file-item .uc-thumb{position:relative;display:inline-flex;width:var(--uc-preview-size);height:var(--uc-preview-size);background-color:var(--uc-secondary);background-position:center center;background-repeat:no-repeat;background-size:cover;border-radius:var(--uc-radius)}uc-file-item .uc-file-name-wrapper{text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;padding-right:var(--uc-padding);padding-left:var(--uc-padding);overflow:hidden;color:var(--uc-muted-foreground)}uc-file-item .uc-file-name{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}uc-file-item .uc-file-error{display:none;color:var(--uc-destructive-foreground);font-size:.85em;z-index:2}uc-file-item button.uc-remove-btn,uc-file-item button.uc-edit-btn{color:var(--uc-muted-foreground)}uc-file-item button svg{pointer-events:none}uc-file-item button.uc-upload-btn{display:none}uc-file-item .uc-badge{position:absolute;bottom:2px;right:2px;width:14px;height:14px;color:var(--uc-background);background-color:var(--uc-foreground);border-radius:50%;transform:scale(.3);opacity:0;transition:opacity var(--uc-transition),transform var(--uc-transition);display:flex;justify-content:center;align-items:center}uc-file-item>.uc-inner:where([failed],[limit-overflow],[finished]) .uc-badge{transform:scale(1);opacity:1}uc-file-item>.uc-inner:where([failed],[limit-overflow]) .uc-badge{background-color:var(--uc-destructive-foreground)}uc-file-item>.uc-inner:where([failed],[limit-overflow]) .uc-file-error{display:block}uc-file-item .uc-badge uc-icon,uc-file-item .uc-badge uc-icon svg{width:100%;height:100%}uc-file-item .uc-progress-bar{opacity:.7;top:calc(100% - 2px);height:2px}:where(.uc-contrast) uc-file-item .uc-progress-bar{opacity:1}uc-file-item .uc-file-actions{display:flex;gap:2px;align-items:center;justify-content:center}uc-file-item[mode=grid]{overflow:visible;min-height:initial}uc-file-item[mode=grid] .uc-inner{height:100%;grid-template-columns:1fr;grid-template-rows:1fr max-content;padding:0;background-color:transparent;margin-bottom:0;border-radius:0}uc-file-item[mode=grid] .uc-inner[failed] .uc-badge{display:none}uc-file-item[mode=grid] .uc-thumb{width:100%;height:100%}uc-file-item[mode=grid] .uc-badge{right:var(--uc-padding);bottom:var(--uc-padding)}uc-file-item[mode=grid] .uc-file-name-wrapper{padding:0}uc-file-item[mode=grid] .uc-file-name:not([hidden])+.uc-file-error{bottom:calc(var(--uc-padding) + var(--uc-font-size))}uc-file-item[mode=grid] .uc-file-error{position:absolute;background-color:var(--uc-destructive-foreground);border-radius:var(--uc-radius);color:var(--uc-background);bottom:var(--uc-padding);left:var(--uc-padding);right:var(--uc-padding);padding:calc(var(--uc-padding) / 2) var(--uc-padding)}uc-file-item[mode=grid] .uc-file-hint{position:absolute;background-color:var(--uc-background);border-radius:var(--uc-radius);color:var(--uc-foreground);bottom:calc(var(--uc-padding) * 2);left:var(--uc-padding);right:var(--uc-padding);padding:calc(var(--uc-padding) / 2) var(--uc-padding)}uc-file-item[mode=grid] .uc-file-actions{position:absolute;top:var(--uc-padding);right:var(--uc-padding)}uc-file-item[mode=grid] button{background-color:var(--uc-background)}uc-file-item[mode=grid] button:hover{background-color:var(--uc-muted)}uc-file-item[mode=grid] .uc-progress-bar{width:initial;height:4px!important;top:initial!important;bottom:var(--uc-padding);left:var(--uc-padding);right:var(--uc-padding);border-radius:var(--uc-radius);z-index:1;transition:background-color .3s,opacity .3s;background-color:var(--uc-background)}uc-file-item[mode=grid] .uc-progress-bar :is(.uc-fake-progress,.uc-progress){background-color:var(--uc-primary)}uc-file-item[mode=grid] .uc-progress-bar[hasfilename]{bottom:calc(var(--uc-padding) + var(--uc-font-size))}}@layer uc.components{uc-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--uc-button-size);height:var(--uc-button-size)}uc-icon svg{width:calc(var(--uc-button-size) / 2);height:calc(var(--uc-button-size) / 2);overflow:visible}}@layer uc.components{@supports selector(dialog::backdrop){:where([uc-modal])>dialog::backdrop{background-color:#0000001a}:where([uc-modal])[strokes]>dialog::backdrop{background-image:var(--modal-backdrop-background-image)}}:where([uc-modal])>dialog[open]{transform:translateY(0);visibility:visible;opacity:1}:where([uc-modal])>dialog:not([open]){transform:translateY(20px);visibility:hidden;opacity:0}:where([uc-modal])>dialog{display:flex;flex-direction:column;width:min(var(--uc-dialog-width),100%);max-width:min(calc(100% - var(--uc-padding) * 2),var(--uc-dialog-max-width));min-height:var(--uc-button-size);max-height:min(calc(100% - var(--uc-padding) * 2),var(--uc-dialog-max-height));margin:auto;padding:0;overflow:hidden;background-color:var(--uc-background);border:0;border-radius:calc(var(--uc-radius) * 1.75);box-shadow:var(--uc-dialog-shadow);transition:transform .4s ease,opacity .4s ease}:where(.uc-contrast) :where([uc-modal])>dialog{outline:1px solid var(--uc-border)}}@layer uc.components{uc-progress-bar{--l-progress-value: 0;position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none;transition:opacity .3s;opacity:1}uc-progress-bar.uc-progress-bar--hidden{opacity:0}uc-progress-bar .uc-progress{position:absolute;width:calc(var(--l-progress-value) * 1%);height:100%;background-color:var(--uc-primary);transform:translate(0);opacity:1;transition:width .6s,opacity .3s}uc-progress-bar .uc-progress--hidden{opacity:0}uc-progress-bar .uc-fake-progress{--l-fake-progress-width: 30;position:absolute;width:calc(var(--l-fake-progress-width) * 1%);height:100%;background-color:var(--uc-primary);animation:fake-progress-animation 1s ease-in-out infinite;opacity:1;transition:opacity .3s;z-index:1}uc-progress-bar .uc-fake-progress--hidden{opacity:0;animation:none}@keyframes fake-progress-animation{0%{transform:translate(-100%)}to{transform:translate(calc(100 / var(--l-fake-progress-width) * 100 * 1%))}}}@layer uc.components{uc-progress-bar-common{position:fixed;right:0;bottom:0;left:0;z-index:10000;display:block;height:10px;background-color:var(--uc-background);transition:opacity .3s}uc-progress-bar-common:not([active]){opacity:0;pointer-events:none}}@layer uc.components{uc-select{display:inline-flex}uc-select select{position:relative;display:inline-flex;align-items:center;justify-content:center;height:var(--uc-button-size);padding:0 14px;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--uc-radius);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--uc-transition);color:var(--uc-secondary-foreground);background-color:var(--uc-secondary)}}@layer uc.components{:where([uc-simple-btn]){position:relative;display:inline-flex}:where([uc-simple-btn]) button{height:auto;gap:.5em;padding:var(--uc-simple-btn-padding);background-color:var(--uc-simple-btn);color:var(--uc-simple-btn-foreground);font-size:var(--uc-simple-btn-font-size);font-family:var(--uc-simple-btn-font-family)}:where([uc-simple-btn]) button uc-icon{width:auto;height:auto}:where([uc-simple-btn]) button uc-icon svg{width:.9em;height:.9em}:where([uc-simple-btn]) button:hover{background-color:var(--uc-simple-btn-hover)}:where([uc-simple-btn])>uc-drop-area{display:contents}:where([uc-simple-btn]) .uc-visual-drop-area{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:var(--uc-simple-btn-padding);background-color:transparent;color:transparent;font-size:var(--uc-simple-btn-font-size);border:1px dashed var(--uc-simple-btn-foreground);border-radius:inherit;opacity:0;transition:opacity var(--uc-transition)}:where([uc-simple-btn])>uc-drop-area[drag-state=active] .uc-visual-drop-area{opacity:1}:where([uc-simple-btn])>uc-drop-area[drag-state=inactive] .uc-visual-drop-area{opacity:0}:where([uc-simple-btn])>uc-drop-area[drag-state=near] .uc-visual-drop-area{opacity:1}:where([uc-simple-btn])>uc-drop-area[drag-state=over] .uc-visual-drop-area{opacity:1}}@layer uc.components{uc-source-btn>button{display:flex;align-items:center;margin-bottom:2px;padding:2px var(--uc-padding);color:var(--uc-foreground);border-radius:var(--uc-radius);cursor:pointer;transition:background-color var(--uc-transition),color var(--uc-transition);-webkit-user-select:none;user-select:none;width:100%;background-color:unset;height:unset}uc-source-btn:last-child>button{margin-bottom:0}uc-source-btn>button:hover{background-color:var(--uc-primary-transparent)}:where(.uc-contrast) uc-source-btn>button:hover{background-color:var(--uc-secondary);color:var(--uc-foreground)}uc-source-btn uc-icon{display:inline-flex;flex-grow:1;justify-content:center;min-width:var(--uc-button-size);margin-right:var(--uc-padding);opacity:.8}:where(.uc-contrast) uc-source-btn uc-icon{opacity:1}uc-source-btn .uc-txt{display:flex;align-items:center;box-sizing:border-box;width:100%;height:var(--uc-button-size);padding:0;white-space:nowrap;border:none}}@layer uc.components{@keyframes uc-spinner-keyframes{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.uc-spinner{width:1em;height:1em;border:solid 2px transparent;border-top-color:currentColor;border-left-color:currentColor;border-radius:50%;animation:uc-spinner-keyframes .4s linear infinite}}@layer uc.components{uc-start-from{display:block;overflow-y:auto}uc-start-from .uc-content{display:grid;grid-auto-flow:row;gap:calc(var(--uc-padding) * 2);width:100%;height:100%;padding:calc(var(--uc-padding) * 2);background-color:var(--uc-background)}[uc-modal]>dialog:has(uc-start-from[active]){width:var(--uc-dialog-width)}[uc-modal] uc-start-from uc-drop-area{border-radius:var(--uc-radius)}@media only screen and (max-width:430px){[uc-modal] uc-start-from uc-drop-area{display:none}}}@layer uc.components{uc-thumb{width:100%;height:100%}}@layer uc.components{uc-upload-list{position:relative;display:flex;flex-direction:column;width:100%;height:max-content;overflow:hidden;background-color:var(--uc-background);transition:opacity var(--uc-transition)}uc-upload-list .uc-no-files{height:32px;padding:20px}uc-upload-list .uc-files{display:block;flex:1;min-height:32px;padding:0 var(--uc-padding);overflow:auto}uc-upload-list .uc-files-wrapper{display:contents}uc-upload-list .uc-toolbar{display:flex;gap:4px;justify-content:space-between;padding:var(--uc-padding);background-color:var(--uc-background)}uc-upload-list .uc-toolbar-spacer{flex:1}uc-upload-list uc-drop-area{position:absolute;top:0;left:0;width:calc(100% - var(--uc-padding) * 2);height:calc(100% - var(--uc-padding) * 2);margin:var(--uc-padding);border-radius:var(--uc-radius)}uc-upload-list uc-activity-header>.uc-header-text{padding:0 var(--uc-padding)}uc-upload-list .uc-common-error{border-radius:var(--uc-radius);color:var(--uc-destructive-foreground);background-color:var(--uc-destructive);display:flex;align-items:center;justify-content:center;padding:var(--uc-padding);margin:4px var(--uc-padding) 0 var(--uc-padding);font-size:.925em}uc-upload-list .uc-add-more-btn uc-icon{display:none}uc-upload-list[mode=grid] .uc-files{display:flex;flex-wrap:wrap;gap:var(--uc-grid-gap)}uc-upload-list .uc-files .uc-add-more-btn,uc-upload-list[mode=grid] uc-file-item{flex:0 0 calc((100% - (var(--uc-grid-gap) * (var(--uc-grid-col) - 1))) / var(--uc-grid-col));max-width:calc((100% - (var(--uc-grid-gap) * (var(--uc-grid-col) - 1))) / var(--uc-grid-col));height:var(--uc-grid-preview-image-height);aspect-ratio:var(--uc-grid-aspect-ratio)}uc-upload-list .uc-files .uc-add-more-btn{display:none}}@layer uc.components{uc-url-source{display:block;background-color:var(--uc-background)}uc-url-source>.uc-content{display:grid;grid-gap:4px;grid-template-columns:1fr min-content;padding:var(--uc-padding);padding-top:0}uc-url-source .uc-url-input{display:flex}}@layer uc.solutions{[uc-file-uploader-inline] uc-start-from{height:100%;container-type:inline-size}[uc-file-uploader-inline]{--cfg-done-activity: "start-from";--cfg-init-activity: "start-from";flex:1}[uc-file-uploader-inline] uc-activity-header:after{width:var(--uc-button-size);height:var(--uc-button-size);content:""}[uc-file-uploader-inline] uc-activity-header .uc-close-btn{display:none}[uc-file-uploader-inline] uc-copyright .uc-credits{position:static}@container (min-width: 500px){[uc-file-uploader-inline] uc-start-from .uc-content{grid-template-columns:1fr max-content;height:100%}[uc-file-uploader-inline] uc-start-from uc-copyright{grid-column:2}[uc-file-uploader-inline] uc-start-from uc-drop-area{grid-row:span 3}[uc-file-uploader-inline] uc-start-from:has(uc-copyright[hidden]) uc-drop-area{grid-row:span 2}[uc-file-uploader-inline] uc-start-from:has(.uc-cancel-btn[hidden]) uc-drop-area{grid-row:span 2}[uc-file-uploader-inline] uc-start-from:has(uc-copyright[hidden]):has(.uc-cancel-btn[hidden]) uc-drop-area{grid-row:span 1}}}@layer uc.solutions{:where([uc-file-uploader-minimal]){--cfg-init-activity: "start-from";--cfg-done-activity: "upload-list";position:relative;display:block}[uc-file-uploader-minimal]>uc-start-from .uc-content{display:flex;flex-direction:column;gap:4px;padding:0;overflow:hidden;align-items:center;background-color:transparent}:where([uc-file-uploader-minimal]>uc-start-from uc-drop-area){display:flex;position:relative;align-items:center;justify-content:center;width:100%;min-height:calc(var(--uc-preview-size) + var(--uc-padding) * 2 + 8px);padding:0;text-align:center;background-color:var(--uc-muted);border-radius:calc(var(--uc-radius) * 1.75)}:where(.uc-contrast) :where([uc-file-uploader-minimal]>uc-start-from uc-drop-area){background-color:transparent}:where([uc-file-uploader-minimal]>uc-start-from uc-drop-area):before{content:"";z-index:-1;width:100%;height:100%;position:absolute;background-color:var(--uc-background)}:where([uc-file-uploader-minimal]:has([single])>uc-start-from uc-drop-area){aspect-ratio:var(--uc-grid-aspect-ratio)}[uc-file-uploader-minimal] uc-upload-list uc-activity-header{display:none}[uc-file-uploader-minimal] uc-upload-list>.uc-toolbar{background-color:transparent}[uc-file-uploader-minimal] uc-upload-list{width:100%;height:unset;padding:4px;background-color:var(--uc-background);border:1px dashed var(--uc-border);border-radius:calc(var(--uc-radius) * 1.75)}[uc-file-uploader-minimal] uc-upload-list .uc-files{padding:0}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar{display:block;padding:0}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-cancel-btn,[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-upload-btn,[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-done-btn{display:none}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn{width:100%;height:calc(var(--uc-preview-size) + var(--uc-padding) * 2);margin-top:4px}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn[disabled]{display:none}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn>span{display:none}[uc-file-uploader-minimal] uc-upload-list .uc-toolbar .uc-add-more-btn>uc-icon{display:flex}[uc-file-uploader-minimal] uc-file-item uc-progress-bar{top:0!important;height:100%!important}[uc-file-uploader-minimal] uc-file-item uc-progress-bar .uc-progress{background-color:var(--uc-primary-transparent);border-radius:var(--uc-radius)}[uc-file-uploader-minimal] uc-file-item uc-progress-bar .uc-fake-progress{background-color:var(--uc-primary-transparent);border-radius:var(--uc-radius)}[uc-file-uploader-minimal] uc-upload-list uc-drop-area{width:100%;height:100%;margin:0;border-radius:calc(var(--uc-radius) * 1.75)}[uc-file-uploader-minimal] uc-upload-list .uc-common-error{margin:4px 0 0}[uc-file-uploader-minimal] uc-copyright .uc-credits{position:static}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-toolbar .uc-add-more-btn{display:none}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-files .uc-add-more-btn{display:flex}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-files .uc-add-more-btn>span{display:none}[uc-file-uploader-minimal][mode=grid] uc-upload-list .uc-files .uc-add-more-btn>uc-icon{display:flex}}@layer uc,uc.base,uc.components,uc.rules,uc.solutions,uc.post-reset;@layer uc.base{:where([uc-wgt-common]){--cfg-init-activity: "start-from";--cfg-done-activity: ""}}@layer uc.base{:where([uc-wgt-common]){--uc-font-family: system-ui;--uc-font-size: 14px;--uc-line-height: normal;--uc-simple-btn-font-family: system-ui;--uc-simple-btn-font-size: 14px;--uc-button-size: 32px;--uc-preview-size: 32px;--uc-padding: 10px;--uc-radius: 8px;--uc-transition: .2s ease;--uc-dialog-width: 430px;--uc-dialog-max-width: 920px;--uc-dialog-max-height: 675px;--uc-simple-btn-padding: 7px 14px;--uc-grid-col: 3;--uc-grid-preview-image-height: auto;--uc-grid-gap: calc(var(--uc-padding) / 2);--uc-grid-aspect-ratio: 1 / 1;--uc-background: var(--uc-background-light);--uc-foreground: var(--uc-foreground-light);--uc-primary: var(--uc-primary-light);--uc-primary-hover: var(--uc-primary-hover-light);--uc-primary-transparent: var(--uc-primary-transparent-light);--uc-primary-foreground: var(--uc-primary-foreground-light);--uc-secondary: var(--uc-secondary-light);--uc-secondary-hover: var(--uc-secondary-hover-light);--uc-secondary-foreground: var(--uc-secondary-foreground-light);--uc-muted: var(--uc-muted-light);--uc-muted-foreground: var(--uc-muted-foreground-light);--uc-destructive: var(--uc-destructive-light);--uc-destructive-foreground: var(--uc-destructive-foreground-light);--uc-border: var(--uc-border-light);--uc-dialog-shadow: var(--uc-dialog-shadow-light);--uc-simple-btn: var(--uc-simple-btn-light);--uc-simple-btn-hover: var(--uc-simple-btn-hover-light);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-light)}@supports not (color: oklch(0% 0 0)){:where([uc-wgt-common]){--uc-primary-rgb-light: 23 75 215;--uc-primary-light: rgb(var(--uc-primary-rgb-light));--uc-primary-hover-light: rgb(var(--uc-primary-rgb-light) / 90%);--uc-primary-transparent-light: rgb(var(--uc-primary-rgb-light) / 10%);--uc-background-light: rgb(255 255 255);--uc-foreground-light: rgb(24 24 24);--uc-primary-foreground-light: #fff;--uc-secondary-light: rgb(24 24 24 / 5%);--uc-secondary-hover-light: rgb(24 24 24 / 8%);--uc-secondary-foreground-light: rgb(24 24 24);--uc-muted-light: rgb(245 245 245);--uc-muted-foreground-light: rgb(113 113 113);--uc-destructive-light: rgb(232 19 20 / 5%);--uc-destructive-foreground-light: rgb(232 19 20);--uc-border-light: rgb(228 228 232);--uc-dialog-shadow-light: 0px 6px 20px rgb(0 0 0 / 10%);--uc-simple-btn-light: rgb(235 235 235);--uc-simple-btn-hover-light: rgb(228 228 228);--uc-simple-btn-foreground-light: rgb(24 24 24);--uc-primary-rgb-dark: 87 154 255;--uc-primary-dark: rgb(var(--uc-primary-rgb-dark));--uc-primary-hover-dark: rgb(var(--uc-primary-rgb-dark) / 90%);--uc-primary-transparent-dark: rgb(var(--uc-primary-rgb-dark) / 7%);--uc-background-dark: rgb(27 27 27);--uc-foreground-dark: rgb(225 225 225);--uc-primary-foreground-dark: rgb(0 0 0);--uc-secondary-dark: rgb(225 225 225 / 7%);--uc-secondary-hover-dark: rgb(225 225 225 / 10%);--uc-secondary-foreground-dark: rgb(225 225 225);--uc-muted-dark: rgb(36 36 36);--uc-muted-foreground-dark: rgb(152 152 152);--uc-destructive-dark: rgb(244 90 79 / 10%);--uc-destructive-foreground-dark: rgb(244 90 79);--uc-border-dark: rgb(61 61 61);--uc-dialog-shadow-dark: 0px 6px 20px rgb(0 0 0 / 25%);--uc-simple-btn-dark: rgb(36 36 36);--uc-simple-btn-hover-dark: rgb(43 43 43);--uc-simple-btn-foreground-dark: rgb(255 255 255)}}@supports (color: oklch(0% 0 0)){:where([uc-wgt-common]){--uc-primary-oklch-light: 47% .22 264;--uc-primary-light: oklch(var(--uc-primary-oklch-light));--uc-primary-hover-light: oklch(var(--uc-primary-oklch-light) / 90%);--uc-primary-transparent-light: oklch(var(--uc-primary-oklch-light) / 7%);--uc-background-light: oklch(100% 0 0);--uc-foreground-light: oklch(21% 0 0);--uc-primary-foreground-light: oklch(100% 0 0);--uc-secondary-light: oklch(21% 0 0 / .05);--uc-secondary-hover-light: oklch(21% 0 0 / .08);--uc-secondary-foreground-light: oklch(21% 0 0);--uc-muted-light: oklch(97% 0 0);--uc-muted-foreground-light: oklch(40% 0 0);--uc-destructive-light: oklch(59% .235 28.5 / .05);--uc-destructive-foreground-light: oklch(59% .235 28.5);--uc-border-light: oklch(92% 0 0);--uc-dialog-shadow-light: 0px 6px 20px oklch(0% 0 0 / .1);--uc-simple-btn-light: oklch(94% 0 0);--uc-simple-btn-hover-light: oklch(92% 0 0);--uc-simple-btn-foreground-light: oklch(20% 0 0);--uc-primary-oklch-dark: 69% .1768 258.4;--uc-primary-dark: oklch(var(--uc-primary-oklch-dark));--uc-primary-hover-dark: oklch(var(--uc-primary-oklch-dark) / 90%);--uc-primary-transparent-dark: oklch(var(--uc-primary-oklch-dark) / 7%);--uc-background-dark: oklch(22% 0 0);--uc-foreground-dark: oklch(91% 0 0);--uc-primary-foreground-dark: oklch(0% 0 0);--uc-secondary-dark: oklch(91% 0 0 / .07);--uc-secondary-hover-dark: oklch(91% 0 0 / .1);--uc-secondary-foreground-dark: oklch(91% 0 0);--uc-muted-dark: oklch(26% 0 0);--uc-muted-foreground-dark: oklch(68% 0 0);--uc-destructive-dark: oklch(67% .191 27.5 / .1);--uc-destructive-foreground-dark: oklch(67% .191 27.5);--uc-border-dark: oklch(36% 0 0);--uc-dialog-shadow-dark: 0px 6px 20px oklch(0% 0 0 / .25);--uc-simple-btn-dark: oklch(26% 0 0);--uc-simple-btn-hover-dark: oklch(29% 0 0);--uc-simple-btn-foreground-dark: oklch(100% 0 0)}}@media only screen and (max-height:600px){:where([uc-wgt-common]){--uc-dialog-max-height: 100%}}@media only screen and (max-width:680px){:where([uc-wgt-common]){--uc-grid-col: 2}}@media only screen and (max-width:430px){:where([uc-wgt-common]){--uc-dialog-max-width: 100vw;--uc-dialog-max-height: var(--uploadcare-blocks-window-height);--uc-grid-col: 1}}@media(prefers-color-scheme:light){:where([uc-wgt-common]){--uc-background: var(--uc-background-light);--uc-foreground: var(--uc-foreground-light);--uc-primary: var(--uc-primary-light);--uc-primary-hover: var(--uc-primary-hover-light);--uc-primary-transparent: var(--uc-primary-transparent-light);--uc-primary-foreground: var(--uc-primary-foreground-light);--uc-secondary: var(--uc-secondary-light);--uc-secondary-hover: var(--uc-secondary-hover-light);--uc-secondary-foreground: var(--uc-secondary-foreground-light);--uc-muted: var(--uc-muted-light);--uc-muted-foreground: var(--uc-muted-foreground-light);--uc-destructive: var(--uc-destructive-light);--uc-destructive-foreground: var(--uc-destructive-foreground-light);--uc-border: var(--uc-border-light);--uc-dialog-shadow: var(--uc-dialog-shadow-light);--uc-simple-btn: var(--uc-simple-btn-light);--uc-simple-btn-hover: var(--uc-simple-btn-hover-light);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-light)}}@media(prefers-color-scheme:dark){:where([uc-wgt-common]){--uc-background: var(--uc-background-dark);--uc-foreground: var(--uc-foreground-dark);--uc-primary: var(--uc-primary-dark);--uc-primary-hover: var(--uc-primary-hover-dark);--uc-primary-transparent: var(--uc-primary-transparent-dark);--uc-primary-foreground: var(--uc-primary-foreground-dark);--uc-secondary: var(--uc-secondary-dark);--uc-secondary-hover: var(--uc-secondary-hover-dark);--uc-secondary-foreground: var(--uc-secondary-foreground-dark);--uc-muted: var(--uc-muted-dark);--uc-muted-foreground: var(--uc-muted-foreground-dark);--uc-destructive: var(--uc-destructive-dark);--uc-destructive-foreground: var(--uc-destructive-foreground-dark);--uc-border: var(--uc-border-dark);--uc-dialog-shadow: var(--uc-dialog-shadow-dark);--uc-simple-btn: var(--uc-simple-btn-dark);--uc-simple-btn-hover: var(--uc-simple-btn-hover-dark);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-dark)}}:where(.uc-light){--uc-background: var(--uc-background-light);--uc-foreground: var(--uc-foreground-light);--uc-primary: var(--uc-primary-light);--uc-primary-hover: var(--uc-primary-hover-light);--uc-primary-transparent: var(--uc-primary-transparent-light);--uc-primary-foreground: var(--uc-primary-foreground-light);--uc-secondary: var(--uc-secondary-light);--uc-secondary-hover: var(--uc-secondary-hover-light);--uc-secondary-foreground: var(--uc-secondary-foreground-light);--uc-muted: var(--uc-muted-light);--uc-muted-foreground: var(--uc-muted-foreground-light);--uc-destructive: var(--uc-destructive-light);--uc-destructive-foreground: var(--uc-destructive-foreground-light);--uc-border: var(--uc-border-light);--uc-dialog-shadow: var(--uc-dialog-shadow-light);--uc-simple-btn: var(--uc-simple-btn-light);--uc-simple-btn-hover: var(--uc-simple-btn-hover-light);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-light)}:where(.uc-dark){--uc-background: var(--uc-background-dark);--uc-foreground: var(--uc-foreground-dark);--uc-primary: var(--uc-primary-dark);--uc-primary-hover: var(--uc-primary-hover-dark);--uc-primary-transparent: var(--uc-primary-transparent-dark);--uc-primary-foreground: var(--uc-primary-foreground-dark);--uc-secondary: var(--uc-secondary-dark);--uc-secondary-hover: var(--uc-secondary-hover-dark);--uc-secondary-foreground: var(--uc-secondary-foreground-dark);--uc-muted: var(--uc-muted-dark);--uc-muted-foreground: var(--uc-muted-foreground-dark);--uc-destructive: var(--uc-destructive-dark);--uc-destructive-foreground: var(--uc-destructive-foreground-dark);--uc-border: var(--uc-border-dark);--uc-dialog-shadow: var(--uc-dialog-shadow-dark);--uc-simple-btn: var(--uc-simple-btn-dark);--uc-simple-btn-hover: var(--uc-simple-btn-hover-dark);--uc-simple-btn-foreground: var(--uc-simple-btn-foreground-dark)}:where(.uc-purple){--uc-primary-oklch-light: 47% .22 300;--uc-primary-oklch-dark: 69% .1768 300}:where(.uc-red){--uc-primary-oklch-light: 47% .21 21;--uc-primary-oklch-dark: 71% .1768 21}:where(.uc-orange){--uc-primary-oklch-light: 47% .1376 51.88;--uc-primary-oklch-dark: 69% .1768 51.88}:where(.uc-green){--uc-primary-oklch-light: 45% .14 130;--uc-primary-oklch-dark: 69% .1768 130}:where(.uc-turquoise){--uc-primary-oklch-light: 45% .0854 174;--uc-primary-oklch-dark: 69% .1768 174}:where(.uc-gray){--uc-primary-oklch-light: 10% 0 0;--uc-primary-oklch-dark: 97% 0 0}:where(.uc-contrast){--uc-border-light: oklch(50% 0 0);--uc-border-dark: oklch(50% 0 0);--uc-muted-light: oklch(98% 0 0);--uc-muted-dark: oklch(16% 0 0);--uc-muted-foreground-light: oklch(20% 0 0);--uc-muted-foreground-dark: oklch(80% 0 0);--uc-background-light: oklch(100% 0 0);--uc-foreground-light: oklch(0% 0 0);--uc-background-dark: oklch(10% 0 0);--uc-foreground-dark: oklch(100% 0 0)}}@layer uc.base{:where([uc-wgt-common]){color:var(--uc-foreground);font-size:var(--uc-font-size);line-height:var(--uc-line-height);font-family:var(--uc-font-family)}:where([uc-wgt-common]) *{box-sizing:border-box}:where([uc-wgt-common]) button{display:flex;align-items:center;justify-content:center;height:var(--uc-button-size);padding-right:14px;padding-left:14px;font-size:1em;font-family:inherit;white-space:nowrap;border:none;border-radius:var(--uc-radius);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--uc-transition)}:where([uc-wgt-common]) button:focus-visible{outline-offset:2px}:where([uc-wgt-common]) button.uc-primary-btn{color:var(--uc-primary-foreground);background-color:var(--uc-primary)}:where([uc-wgt-common]) button.uc-primary-btn:hover{background-color:var(--uc-primary-hover)}:where([uc-wgt-common]) button.uc-secondary-btn{color:var(--uc-secondary-foreground);background-color:var(--uc-secondary)}:where([uc-wgt-common]) button.uc-secondary-btn:hover{background-color:var(--uc-secondary-hover)}:where([uc-wgt-common].uc-contrast) button.uc-secondary-btn{border:1px solid var(--uc-border)}:where([uc-wgt-common]) button.uc-mini-btn{height:var(--uc-button-size);padding:0;background-color:transparent;color:var(--uc-secondary-foreground)}:where([uc-wgt-common]) button.uc-mini-btn:hover{background-color:var(--uc-secondary)}:where([uc-wgt-common]) :is(button[disabled],button.uc-primary-btn[disabled],button.uc-secondary-btn[disabled]){opacity:.5;pointer-events:none}:where([uc-wgt-common]) a{color:var(--uc-primary);text-decoration:none}:where([uc-wgt-common]) a[disabled]{pointer-events:none}:where([uc-wgt-common]) input[type=text]{display:flex;width:100%;height:var(--uc-button-size);padding-right:10px;padding-left:10px;color:var(--uc-foreground);font-size:1em;font-family:inherit;background-color:var(--uc-background);border:1px solid var(--uc-border);outline:1px solid transparent;border-radius:var(--uc-radius);transition:border-color var(--uc-transition),outline-color var(--uc-transition)}:where([uc-wgt-common]) input[type=text]::placeholder{color:var(--uc-muted-foreground)}:where([uc-wgt-common]) input[type=text]:focus{outline-color:var(--uc-primary-hover);border-color:var(--uc-primary-hover)}:where([uc-wgt-common]) input[disabled]{opacity:.6;pointer-events:none}:where([uc-wgt-common]) uc-select[disabled],:where([uc-wgt-common]) select[disabled]{opacity:.6;pointer-events:none}}@layer uc.rules{:where([uc-wgt-common]) [hidden]{display:none}:where([uc-wgt-common]) [activity]:not([active],.active){display:none}:where([uc-wgt-common]) dialog:not([open]) [activity]{display:none}}@layer uc.post-reset{:where([uc-wgt-common]) uc-source-btn[type]{all:unset}}@layer uc.solutions;
|
package/dist/react-uploader.d.ts
CHANGED
|
@@ -31,13 +31,13 @@ declare type EventProps = Partial<TEventsSchema>;
|
|
|
31
31
|
|
|
32
32
|
export declare const FileUploaderInline: FC<TProps<"Inline">>;
|
|
33
33
|
|
|
34
|
-
declare type FileUploaderInlineProps =
|
|
34
|
+
declare type FileUploaderInlineProps = Record<string, unknown>;
|
|
35
35
|
|
|
36
36
|
export declare const FileUploaderMinimal: FC<TProps<"Minimal">>;
|
|
37
37
|
|
|
38
|
-
declare type FileUploaderMinimalProps =
|
|
38
|
+
declare type FileUploaderMinimalProps = Record<string, unknown>;
|
|
39
39
|
|
|
40
|
-
declare type FileUploaderModes =
|
|
40
|
+
declare type FileUploaderModes = "Regular" | "Minimal" | "Inline";
|
|
41
41
|
|
|
42
42
|
export declare const FileUploaderRegular: FC<TProps<"Regular">>;
|
|
43
43
|
|
|
@@ -56,7 +56,7 @@ declare type TExtraPrefixOn<S extends string> = `on${Capitalize<S>}`;
|
|
|
56
56
|
|
|
57
57
|
declare type TPrefixOnAndCamelCase<S extends string> = TExtraPrefixOn<TToCamelCase<S>>;
|
|
58
58
|
|
|
59
|
-
export declare type TProps<T extends FileUploaderModes> = CommonProps & ConfigProps & EventProps &
|
|
59
|
+
export declare type TProps<T extends FileUploaderModes> = CommonProps & ConfigProps & EventProps & UploadCtxProviderProps & Pick<TProps_2, "fallback"> & (T extends "Regular" ? FileUploaderRegularProps : T extends "Minimal" ? FileUploaderMinimalProps : T extends "Inline" ? FileUploaderInlineProps : never);
|
|
60
60
|
|
|
61
61
|
declare type TProps_2 = {
|
|
62
62
|
fallback?: default_2.ReactNode | default_2.ReactPortal | null;
|
|
@@ -66,13 +66,13 @@ declare type TProps_2 = {
|
|
|
66
66
|
|
|
67
67
|
declare type TToCamelCase<S extends string> = S extends `${infer Head}-${infer Tail}` ? `${Lowercase<Head>}${Capitalize<TToCamelCase<Tail>>}` : Lowercase<S>;
|
|
68
68
|
|
|
69
|
-
declare type UploadCtxPropviderProps = {
|
|
70
|
-
apiRef?: Ref<InstanceType<UploadCtxProvider>>;
|
|
71
|
-
};
|
|
72
|
-
|
|
73
69
|
export { UploadCtxProvider }
|
|
74
70
|
|
|
71
|
+
declare type UploadCtxProviderProps = {
|
|
72
|
+
apiRef?: Ref<UploadCtxProvider>;
|
|
73
|
+
};
|
|
74
|
+
|
|
75
75
|
|
|
76
|
-
export * from "@uploadcare/file-uploader
|
|
76
|
+
export * from "@uploadcare/file-uploader";
|
|
77
77
|
|
|
78
78
|
export { }
|
package/dist/react-uploader.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { UploadCtxProvider as r, defineLocale as l } from "@uploadcare/file-uploader";
|
|
2
|
+
import { FileUploaderInline as p } from "./FileUploaderInline-C3NVuNGn.js";
|
|
3
|
+
import { FileUploaderMinimal as d } from "./FileUploaderMinimal-DFAyd4FM.js";
|
|
4
|
+
import { FileUploaderRegular as m } from "./FileUploaderRegular-spR27Bft.js";
|
|
5
5
|
export {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
p as FileUploaderInline,
|
|
7
|
+
d as FileUploaderMinimal,
|
|
8
|
+
m as FileUploaderRegular,
|
|
9
|
+
r as UploadCtxProvider,
|
|
10
|
+
l as defineLocale
|
|
11
11
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uploadcare/react-uploader",
|
|
3
3
|
"description": "React component for file uploads using Uploadcare",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.11.0",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
7
7
|
"files": [
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"./core.css": "./dist/react-uploader.css"
|
|
23
23
|
},
|
|
24
24
|
"scripts": {
|
|
25
|
+
"start": "vite",
|
|
25
26
|
"dev": "tsc && vite build --watch",
|
|
26
27
|
"build": "tsc && vite build",
|
|
27
28
|
"preview": "vite preview",
|
|
@@ -31,11 +32,11 @@
|
|
|
31
32
|
"@types/react": ">= 17.0.0"
|
|
32
33
|
},
|
|
33
34
|
"optionalDependencies": {
|
|
34
|
-
"next": "
|
|
35
|
+
"next": "^16.0.0"
|
|
35
36
|
},
|
|
36
37
|
"dependencies": {
|
|
37
|
-
"@uploadcare/file-uploader": "1.
|
|
38
|
-
"@uploadcare/react-adapter": "^0.
|
|
38
|
+
"@uploadcare/file-uploader": "1.24.1",
|
|
39
|
+
"@uploadcare/react-adapter": "^0.4.0"
|
|
39
40
|
},
|
|
40
41
|
"repository": {
|
|
41
42
|
"type": "git",
|
|
@@ -88,5 +89,11 @@
|
|
|
88
89
|
"react hook file upload",
|
|
89
90
|
"front-end"
|
|
90
91
|
],
|
|
91
|
-
"
|
|
92
|
+
"devDependencies": {
|
|
93
|
+
"@types/react": "^19",
|
|
94
|
+
"@types/react-dom": "^19",
|
|
95
|
+
"react": "^19",
|
|
96
|
+
"react-dom": "^19"
|
|
97
|
+
},
|
|
98
|
+
"gitHead": "b68555254728e1825bc1aaf62701eee524b84702"
|
|
92
99
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),g=require("@uploadcare/file-uploader"),n=require("./useIsBrowser-BfTbCFcA.cjs");function f(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const l=f(g);l.defineComponents(l);const m=n.j({react:t,tag:"uc-file-uploader-inline",elClass:l.FileUploaderMinimal}),C=({ctxName:e,className:o,classNameUploader:r,apiRef:a,fallback:s,...c})=>{const i=t.useMemo(()=>e??l.UID.generate(),[e]),{eventHandlers:u,config:d}=t.useMemo(()=>n.getCalcPropertyOfProps(c),[c]),p=n.useIsBrowser();return t.createElement(n.ConditionalSuspense,{condition:p,fallback:s},t.createElement("div",{className:o},t.createElement(n.AdapterConfig,{userAgentIntegration:n.getUserAgentIntegration(),"ctx-name":i,...d}),t.createElement(n.AdapterUploadCtxProvider,{ref:a,"ctx-name":i,...u}),t.createElement(m,{class:r,"ctx-name":i})))};exports.FileUploaderInline=C;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import e, { useMemo as o } from "react";
|
|
2
|
-
import * as t from "@uploadcare/file-uploader";
|
|
3
|
-
import { g, u as f, C, A as u, a as A, b as U, j as E } from "./useIsBrowser-wdFeUbZ-.js";
|
|
4
|
-
t.defineComponents(t);
|
|
5
|
-
const I = E({
|
|
6
|
-
react: e,
|
|
7
|
-
tag: "uc-file-uploader-inline",
|
|
8
|
-
elClass: t.FileUploaderMinimal
|
|
9
|
-
}), F = ({
|
|
10
|
-
ctxName: r,
|
|
11
|
-
className: s,
|
|
12
|
-
classNameUploader: i,
|
|
13
|
-
apiRef: l,
|
|
14
|
-
fallback: c,
|
|
15
|
-
...a
|
|
16
|
-
}) => {
|
|
17
|
-
const n = o(() => r ?? t.UID.generate(), [r]), { eventHandlers: m, config: d } = o(
|
|
18
|
-
() => g(a),
|
|
19
|
-
[a]
|
|
20
|
-
), p = f();
|
|
21
|
-
return /* @__PURE__ */ e.createElement(C, { condition: p, fallback: c }, /* @__PURE__ */ e.createElement("div", { className: s }, /* @__PURE__ */ e.createElement(u, { userAgentIntegration: A(), "ctx-name": n, ...d }), /* @__PURE__ */ e.createElement(
|
|
22
|
-
U,
|
|
23
|
-
{
|
|
24
|
-
ref: l,
|
|
25
|
-
"ctx-name": n,
|
|
26
|
-
...m
|
|
27
|
-
}
|
|
28
|
-
), /* @__PURE__ */ e.createElement(I, { class: i, "ctx-name": n })));
|
|
29
|
-
};
|
|
30
|
-
export {
|
|
31
|
-
F as FileUploaderInline
|
|
32
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import e, { useMemo as o } from "react";
|
|
2
|
-
import * as t from "@uploadcare/file-uploader";
|
|
3
|
-
import { g, u as f, C, A as u, a as A, b as U, j as E } from "./useIsBrowser-wdFeUbZ-.js";
|
|
4
|
-
t.defineComponents(t);
|
|
5
|
-
const M = E({
|
|
6
|
-
react: e,
|
|
7
|
-
tag: "uc-file-uploader-minimal",
|
|
8
|
-
elClass: t.FileUploaderMinimal
|
|
9
|
-
}), v = ({
|
|
10
|
-
ctxName: n,
|
|
11
|
-
className: s,
|
|
12
|
-
classNameUploader: i,
|
|
13
|
-
apiRef: l,
|
|
14
|
-
fallback: m,
|
|
15
|
-
...r
|
|
16
|
-
}) => {
|
|
17
|
-
const a = o(() => n ?? t.UID.generate(), [n]), { eventHandlers: c, config: d } = o(
|
|
18
|
-
() => g(r),
|
|
19
|
-
[r]
|
|
20
|
-
), p = f();
|
|
21
|
-
return /* @__PURE__ */ e.createElement(C, { condition: p, fallback: m }, /* @__PURE__ */ e.createElement("div", { className: s }, /* @__PURE__ */ e.createElement(u, { userAgentIntegration: A(), "ctx-name": a, ...d }), /* @__PURE__ */ e.createElement(
|
|
22
|
-
U,
|
|
23
|
-
{
|
|
24
|
-
ref: l,
|
|
25
|
-
"ctx-name": a,
|
|
26
|
-
...c
|
|
27
|
-
}
|
|
28
|
-
), /* @__PURE__ */ e.createElement(M, { class: i, "ctx-name": a })));
|
|
29
|
-
};
|
|
30
|
-
export {
|
|
31
|
-
v as FileUploaderMinimal
|
|
32
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),p=require("@uploadcare/file-uploader"),n=require("./useIsBrowser-BfTbCFcA.cjs");function g(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(o,r,a.get?a:{enumerable:!0,get:()=>e[r]})}}return o.default=e,Object.freeze(o)}const i=g(p);i.defineComponents(i);const f=n.j({react:t,tag:"uc-file-uploader-minimal",elClass:i.FileUploaderMinimal}),C=({ctxName:e,className:o,classNameUploader:r,apiRef:a,fallback:s,...c})=>{const l=t.useMemo(()=>e??i.UID.generate(),[e]),{eventHandlers:u,config:d}=t.useMemo(()=>n.getCalcPropertyOfProps(c),[c]),m=n.useIsBrowser();return t.createElement(n.ConditionalSuspense,{condition:m,fallback:s},t.createElement("div",{className:o},t.createElement(n.AdapterConfig,{userAgentIntegration:n.getUserAgentIntegration(),"ctx-name":l,...d}),t.createElement(n.AdapterUploadCtxProvider,{ref:a,"ctx-name":l,...u}),t.createElement(f,{class:r,"ctx-name":l})))};exports.FileUploaderMinimal=C;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),f=require("@uploadcare/file-uploader"),r=require("./useIsBrowser-BfTbCFcA.cjs");function m(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,a.get?a:{enumerable:!0,get:()=>e[n]})}}return o.default=e,Object.freeze(o)}const l=m(f);l.defineComponents(l);const C=r.j({react:t,tag:"uc-file-uploader-regular",elClass:l.FileUploaderRegular}),U=({ctxName:e,className:o,classNameUploader:n,apiRef:a,fallback:i,...s})=>{const c=t.useMemo(()=>e??l.UID.generate(),[e]),{eventHandlers:u,config:d,uploader:g}=t.useMemo(()=>r.getCalcPropertyOfProps(s),[s]),p=r.useIsBrowser();return t.createElement(r.ConditionalSuspense,{condition:p,fallback:i},t.createElement("div",{className:o},t.createElement(r.AdapterConfig,{userAgentIntegration:r.getUserAgentIntegration(),"ctx-name":c,...d}),t.createElement(r.AdapterUploadCtxProvider,{ref:a,"ctx-name":c,...u}),t.createElement(C,{class:n,"ctx-name":c,...g})))};exports.FileUploaderRegular=U;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import e, { useMemo as o } from "react";
|
|
2
|
-
import * as r from "@uploadcare/file-uploader";
|
|
3
|
-
import { g as u, u as f, C, A, a as U, b as E, j as x } from "./useIsBrowser-wdFeUbZ-.js";
|
|
4
|
-
r.defineComponents(r);
|
|
5
|
-
const I = x({
|
|
6
|
-
react: e,
|
|
7
|
-
tag: "uc-file-uploader-regular",
|
|
8
|
-
elClass: r.FileUploaderRegular
|
|
9
|
-
}), F = ({
|
|
10
|
-
ctxName: a,
|
|
11
|
-
className: s,
|
|
12
|
-
classNameUploader: l,
|
|
13
|
-
apiRef: c,
|
|
14
|
-
fallback: i,
|
|
15
|
-
...n
|
|
16
|
-
}) => {
|
|
17
|
-
const t = o(() => a ?? r.UID.generate(), [a]), { eventHandlers: d, config: g, uploader: m } = o(
|
|
18
|
-
() => u(n),
|
|
19
|
-
[n]
|
|
20
|
-
), p = f();
|
|
21
|
-
return /* @__PURE__ */ e.createElement(C, { condition: p, fallback: i }, /* @__PURE__ */ e.createElement("div", { className: s }, /* @__PURE__ */ e.createElement(A, { userAgentIntegration: U(), "ctx-name": t, ...g }), /* @__PURE__ */ e.createElement(
|
|
22
|
-
E,
|
|
23
|
-
{
|
|
24
|
-
ref: c,
|
|
25
|
-
"ctx-name": t,
|
|
26
|
-
...d
|
|
27
|
-
}
|
|
28
|
-
), /* @__PURE__ */ e.createElement(I, { class: l, "ctx-name": t, ...m })));
|
|
29
|
-
};
|
|
30
|
-
export {
|
|
31
|
-
F as FileUploaderRegular
|
|
32
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const f=require("react"),y=require("@uploadcare/file-uploader");function b(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const s=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,s.get?s:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const v=b(y),h=new Set(["children","ref","style","className"]),O=(e={})=>Object==null?void 0:Object.keys(e).reduce((t,r)=>{var s,n;const o=e==null?void 0:e[r],a=`on${(n=(s=o==null?void 0:o.split("-"))==null?void 0:s.map(c=>c.charAt(0).toUpperCase()+c.slice(1)))==null?void 0:n.join("")}`;return t[a]=o,t},{}),m=new WeakMap,j=e=>{let t=m.get(e);return t===void 0&&(t=new Map,m.set(e,t)),t},E=({node:e,nameProp:t,valueProp:r,prevValueProp:s,event:n})=>{if(n!==void 0){if(r!==s){const o=j(e),a=o.has(n);let c=o.get(n);r!==void 0?a?c.handleEvent=r:(c={handleEvent:r},o.set(n,c),e.addEventListener(n,l=>c.handleEvent(l.detail))):a&&(o.delete(n),e.removeEventListener(n,c))}return}e[t]=r,r==null&&t in HTMLElement.prototype&&e.removeAttribute(t)},U=(e,t,r)=>{const s={},n={};return Object.entries(e).forEach(([o,a])=>{h.has(o)?s[o==="className"?"class":o]=a:t.has(o)||o in r.prototype?n[o]=a:s[o]=a}),{reactProps:s,customElProps:n}},g=({react:e,tag:t,elClass:r,schemaEvents:s})=>{const n=O(s),o=new Set(Object.keys(n??{})),a=e.forwardRef((c,l)=>{const d=e.useRef(new Map),p=e.useRef(null),{reactProps:C,customElProps:P}=U(c,o,r);return e.useLayoutEffect(()=>{if(p.current===null)return;const i=new Map;for(const u in P)E({node:p.current,nameProp:u,valueProp:P[u],prevValueProp:d.current.get(u),event:n[u]}),d.current.delete(u),i.set(u,c[u]);for(const[u,w]of d.current)E({node:p.current,nameProp:u,valueProp:void 0,prevValueProp:w,event:n[u]});d.current=i}),e.createElement(t??r.__tag,{...C,ref:e.useCallback(i=>{p.current=i,typeof l=="function"?l(i):l!==null&&(l.current=i)},[l])})});return a.displayName=r.name,a},A=g({react:f,tag:"uc-config",elClass:v.Config}),M=g({react:f,tag:"uc-upload-ctx-provider",elClass:v.UploadCtxProvider,schemaEvents:v.UploadCtxProvider.EventType}),N=e=>{const t={},r={},s={};for(const[n,o]of Object.entries(e)){if(n.startsWith("on")){t[n]=o;continue}if(n==="headless"){s[n]=o;continue}r[n]=o}return{eventHandlers:t,uploader:s,config:r}},S="1.10.1",I="React-Uploader",_=()=>`${I}/${S}`,k=({children:e})=>e,x=()=>{const[e,t]=f.useState(!1);return f.useEffect(()=>{typeof window<"u"&&t(!0)},[]),e};exports.AdapterConfig=A;exports.AdapterUploadCtxProvider=M;exports.ConditionalSuspense=k;exports.getCalcPropertyOfProps=N;exports.getUserAgentIntegration=_;exports.j=g;exports.useIsBrowser=x;
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import P, { useState as w, useEffect as y } from "react";
|
|
2
|
-
import * as f from "@uploadcare/file-uploader";
|
|
3
|
-
const b = /* @__PURE__ */ new Set([
|
|
4
|
-
"children",
|
|
5
|
-
"ref",
|
|
6
|
-
"style",
|
|
7
|
-
"className"
|
|
8
|
-
]), j = (e = {}) => Object == null ? void 0 : Object.keys(e).reduce((r, o) => {
|
|
9
|
-
var s, t;
|
|
10
|
-
const n = e == null ? void 0 : e[o], a = `on${(t = (s = n == null ? void 0 : n.split("-")) == null ? void 0 : s.map((c) => c.charAt(0).toUpperCase() + c.slice(1))) == null ? void 0 : t.join("")}`;
|
|
11
|
-
return r[a] = n, r;
|
|
12
|
-
}, {}), m = /* @__PURE__ */ new WeakMap(), A = (e) => {
|
|
13
|
-
let r = m.get(e);
|
|
14
|
-
return r === void 0 && (r = /* @__PURE__ */ new Map(), m.set(e, r)), r;
|
|
15
|
-
}, E = ({
|
|
16
|
-
node: e,
|
|
17
|
-
nameProp: r,
|
|
18
|
-
valueProp: o,
|
|
19
|
-
prevValueProp: s,
|
|
20
|
-
event: t
|
|
21
|
-
}) => {
|
|
22
|
-
if (t !== void 0) {
|
|
23
|
-
if (o !== s) {
|
|
24
|
-
const n = A(e), a = n.has(t);
|
|
25
|
-
let c = n.get(t);
|
|
26
|
-
o !== void 0 ? a ? c.handleEvent = o : (c = { handleEvent: o }, n.set(t, c), e.addEventListener(
|
|
27
|
-
t,
|
|
28
|
-
(l) => c.handleEvent(l.detail)
|
|
29
|
-
)) : a && (n.delete(t), e.removeEventListener(t, c));
|
|
30
|
-
}
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
e[r] = o, o == null && r in HTMLElement.prototype && e.removeAttribute(r);
|
|
34
|
-
}, M = (e, r, o) => {
|
|
35
|
-
const s = {}, t = {};
|
|
36
|
-
return Object.entries(e).forEach(([n, a]) => {
|
|
37
|
-
b.has(n) ? s[n === "className" ? "class" : n] = a : r.has(n) || n in o.prototype ? t[n] = a : s[n] = a;
|
|
38
|
-
}), { reactProps: s, customElProps: t };
|
|
39
|
-
}, g = ({
|
|
40
|
-
react: e,
|
|
41
|
-
// https://react.dev/warnings/invalid-hook-call-warning
|
|
42
|
-
tag: r,
|
|
43
|
-
elClass: o,
|
|
44
|
-
schemaEvents: s
|
|
45
|
-
}) => {
|
|
46
|
-
const t = j(s), n = new Set(Object.keys(t ?? {})), a = e.forwardRef(
|
|
47
|
-
(c, l) => {
|
|
48
|
-
const i = e.useRef(/* @__PURE__ */ new Map()), p = e.useRef(null), { reactProps: h, customElProps: v } = M(c, n, o);
|
|
49
|
-
return e.useLayoutEffect(() => {
|
|
50
|
-
if (p.current === null)
|
|
51
|
-
return;
|
|
52
|
-
const d = /* @__PURE__ */ new Map();
|
|
53
|
-
for (const u in v)
|
|
54
|
-
E({
|
|
55
|
-
node: p.current,
|
|
56
|
-
nameProp: u,
|
|
57
|
-
valueProp: v[u],
|
|
58
|
-
prevValueProp: i.current.get(u),
|
|
59
|
-
event: t[u]
|
|
60
|
-
}), i.current.delete(u), d.set(u, c[u]);
|
|
61
|
-
for (const [u, C] of i.current)
|
|
62
|
-
E({
|
|
63
|
-
node: p.current,
|
|
64
|
-
nameProp: u,
|
|
65
|
-
valueProp: void 0,
|
|
66
|
-
prevValueProp: C,
|
|
67
|
-
event: t[u]
|
|
68
|
-
});
|
|
69
|
-
i.current = d;
|
|
70
|
-
}), e.createElement(r ?? o.__tag, {
|
|
71
|
-
...h,
|
|
72
|
-
ref: e.useCallback(
|
|
73
|
-
(d) => {
|
|
74
|
-
p.current = d, typeof l == "function" ? l(d) : l !== null && (l.current = d);
|
|
75
|
-
},
|
|
76
|
-
[l]
|
|
77
|
-
)
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
);
|
|
81
|
-
return a.displayName = o.name, a;
|
|
82
|
-
}, x = g({
|
|
83
|
-
react: P,
|
|
84
|
-
tag: "uc-config",
|
|
85
|
-
elClass: f.Config
|
|
86
|
-
}), R = g({
|
|
87
|
-
react: P,
|
|
88
|
-
tag: "uc-upload-ctx-provider",
|
|
89
|
-
elClass: f.UploadCtxProvider,
|
|
90
|
-
schemaEvents: f.UploadCtxProvider.EventType
|
|
91
|
-
}), k = (e) => {
|
|
92
|
-
const r = {}, o = {}, s = {};
|
|
93
|
-
for (const [t, n] of Object.entries(e)) {
|
|
94
|
-
if (t.startsWith("on")) {
|
|
95
|
-
r[t] = n;
|
|
96
|
-
continue;
|
|
97
|
-
}
|
|
98
|
-
if (t === "headless") {
|
|
99
|
-
s[t] = n;
|
|
100
|
-
continue;
|
|
101
|
-
}
|
|
102
|
-
o[t] = n;
|
|
103
|
-
}
|
|
104
|
-
return {
|
|
105
|
-
eventHandlers: r,
|
|
106
|
-
uploader: s,
|
|
107
|
-
config: o
|
|
108
|
-
};
|
|
109
|
-
}, O = "1.10.1", U = "React-Uploader", I = () => `${U}/${O}`, L = ({ children: e }) => e, S = () => {
|
|
110
|
-
const [e, r] = w(!1);
|
|
111
|
-
return y(() => {
|
|
112
|
-
typeof window < "u" && r(!0);
|
|
113
|
-
}, []), e;
|
|
114
|
-
};
|
|
115
|
-
export {
|
|
116
|
-
x as A,
|
|
117
|
-
L as C,
|
|
118
|
-
I as a,
|
|
119
|
-
R as b,
|
|
120
|
-
k as g,
|
|
121
|
-
g as j,
|
|
122
|
-
S as u
|
|
123
|
-
};
|