@uploadcare/react-uploader 1.1.0-alpha.1 → 1.1.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -2
- package/dist/{FileUploaderInline-C4TpB4Bw.js → FileUploaderInline-CI7B4LBJ.js} +1 -1
- package/dist/{FileUploaderInline-BTFr12-h.cjs → FileUploaderInline-CT-2Aq5S.cjs} +1 -1
- package/dist/{FileUploaderMinimal-DI8dbjhK.js → FileUploaderMinimal-30IrJ4h5.js} +1 -1
- package/dist/{FileUploaderMinimal-CvAynwBy.cjs → FileUploaderMinimal-ukmS0gJz.cjs} +1 -1
- package/dist/{FileUploaderRegular-xem2ZyzM.js → FileUploaderRegular-Bs7Cms0D.js} +1 -1
- package/dist/{FileUploaderRegular-DlMsJxnL.cjs → FileUploaderRegular-ESwxxsOO.cjs} +1 -1
- package/dist/nextjs.cjs +1 -1
- package/dist/nextjs.js +3 -3
- package/dist/react-uploader.cjs +1 -1
- package/dist/react-uploader.js +3 -3
- package/dist/{useIsBrowser-DIjIGyII.js → useIsBrowser-CsKI4jK2.js} +1 -1
- package/dist/{useIsBrowser-b_15WO2W.cjs → useIsBrowser-DgKi0qL0.cjs} +1 -1
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -27,6 +27,7 @@ React principles.
|
|
|
27
27
|
* [Styles](#styles)
|
|
28
28
|
* [File Uploader API](#file-uploader-api)
|
|
29
29
|
* [Events](#events)
|
|
30
|
+
* [Next.js](#nextjs)
|
|
30
31
|
* [Security issues](#security-issues)
|
|
31
32
|
* [Feedback](#feedback)
|
|
32
33
|
|
|
@@ -120,8 +121,7 @@ import {
|
|
|
120
121
|
import "@uploadcare/react-uploader/core.css";
|
|
121
122
|
|
|
122
123
|
const Example = () => {
|
|
123
|
-
const uploaderRef = useRef <
|
|
124
|
-
|
|
124
|
+
const uploaderRef = useRef <InstanceType<UploadCtxProvider> | null>(null);
|
|
125
125
|
|
|
126
126
|
<FileUploaderRegular apiRef={uploaderRef} pubkey="YOUR_PUBLIC_KEY"/>;
|
|
127
127
|
}
|
|
@@ -172,6 +172,21 @@ import "@uploadcare/react-uploader/core.css";
|
|
|
172
172
|
| change | onChange |
|
|
173
173
|
| group-created | onGroupCreated |
|
|
174
174
|
|
|
175
|
+
## Next.js
|
|
176
|
+
File Uploader does not support Server-side Rendering (SSR), we have a special import for nextjs that already has SSR disabled.
|
|
177
|
+
You will need to import with import `@uploadcare/react-uploader/next`
|
|
178
|
+
|
|
179
|
+
```jsx
|
|
180
|
+
'use client'
|
|
181
|
+
import { FileUploaderRegular } from "@uploadcare/react-uploader/next";
|
|
182
|
+
import "@uploadcare/react-uploader/core.css";
|
|
183
|
+
|
|
184
|
+
function App() {
|
|
185
|
+
return <FileUploaderRegular pubkey="FileUploaderRegular" />
|
|
186
|
+
};
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
|
|
175
190
|
## Security issues
|
|
176
191
|
|
|
177
192
|
If you think you ran into something in Uploadcare libraries that might have
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import e, { useMemo as o } from "react";
|
|
2
2
|
import * as t from "@uploadcare/file-uploader";
|
|
3
|
-
import { b as g, g as f, u as C, C as u, A, a as U, c as E } from "./useIsBrowser-
|
|
3
|
+
import { b as g, g as f, u as C, C as u, A, a as U, c as E } from "./useIsBrowser-CsKI4jK2.js";
|
|
4
4
|
t.defineComponents(t);
|
|
5
5
|
const I = g({
|
|
6
6
|
react: e,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),g=require("@uploadcare/file-uploader"),n=require("./useIsBrowser-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),g=require("@uploadcare/file-uploader"),n=require("./useIsBrowser-DgKi0qL0.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}),b=({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=b;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import e, { useMemo as o } from "react";
|
|
2
2
|
import * as t from "@uploadcare/file-uploader";
|
|
3
|
-
import { b as g, g as f, u as C, C as u, A, a as U, c as E } from "./useIsBrowser-
|
|
3
|
+
import { b as g, g as f, u as C, C as u, A, a as U, c as E } from "./useIsBrowser-CsKI4jK2.js";
|
|
4
4
|
t.defineComponents(t);
|
|
5
5
|
const M = g({
|
|
6
6
|
react: e,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),p=require("@uploadcare/file-uploader"),n=require("./useIsBrowser-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),p=require("@uploadcare/file-uploader"),n=require("./useIsBrowser-DgKi0qL0.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.b({react:t,tag:"uc-file-uploader-minimal",elClass:i.FileUploaderMinimal}),b=({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=b;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import e, { useMemo as o } from "react";
|
|
2
2
|
import * as t from "@uploadcare/file-uploader";
|
|
3
|
-
import { b as p, g as u, u as f, C, A, a as U, c as E } from "./useIsBrowser-
|
|
3
|
+
import { b as p, g as u, u as f, C, A, a as U, c as E } from "./useIsBrowser-CsKI4jK2.js";
|
|
4
4
|
t.defineComponents(t);
|
|
5
5
|
const x = p({
|
|
6
6
|
react: e,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),p=require("@uploadcare/file-uploader"),r=require("./useIsBrowser-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react"),p=require("@uploadcare/file-uploader"),r=require("./useIsBrowser-DgKi0qL0.cjs");function f(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=f(p);l.defineComponents(l);const m=r.b({react:t,tag:"uc-file-uploader-regular",elClass:l.FileUploaderRegular}),b=({ctxName:e,className:o,classNameUploader:n,apiRef:a,fallback:i,...s})=>{const c=t.useMemo(()=>e??l.UID.generate(),[e]),{eventHandlers:u,config:d}=t.useMemo(()=>r.getCalcPropertyOfProps(s),[s]),g=r.useIsBrowser();return t.createElement(r.ConditionalSuspense,{condition:g,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(m,{class:n,"ctx-name":c})))};exports.FileUploaderRegular=b;
|
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("./FileUploaderMinimal-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("next/dynamic"),r=l(()=>Promise.resolve().then(()=>require("./FileUploaderMinimal-ukmS0gJz.cjs")).then(e=>e.FileUploaderMinimal),{ssr:!1}),i=l(()=>Promise.resolve().then(()=>require("./FileUploaderRegular-ESwxxsOO.cjs")).then(e=>e.FileUploaderRegular),{ssr:!1}),o=l(()=>Promise.resolve().then(()=>require("./FileUploaderInline-CT-2Aq5S.cjs")).then(e=>e.FileUploaderInline),{ssr:!1});exports.FileUploaderInline=o;exports.FileUploaderMinimal=r;exports.FileUploaderRegular=i;
|
package/dist/nextjs.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import l from "next/dynamic";
|
|
2
2
|
const r = l(
|
|
3
|
-
() => import("./FileUploaderMinimal-
|
|
3
|
+
() => import("./FileUploaderMinimal-30IrJ4h5.js").then((e) => e.FileUploaderMinimal),
|
|
4
4
|
{ ssr: !1 }
|
|
5
5
|
), o = l(
|
|
6
|
-
() => import("./FileUploaderRegular-
|
|
6
|
+
() => import("./FileUploaderRegular-Bs7Cms0D.js").then((e) => e.FileUploaderRegular),
|
|
7
7
|
{ ssr: !1 }
|
|
8
8
|
), a = l(
|
|
9
|
-
() => import("./FileUploaderInline-
|
|
9
|
+
() => import("./FileUploaderInline-CI7B4LBJ.js").then((e) => e.FileUploaderInline),
|
|
10
10
|
{ ssr: !1 }
|
|
11
11
|
);
|
|
12
12
|
export {
|
package/dist/react-uploader.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("./FileUploaderRegular-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("./FileUploaderRegular-ESwxxsOO.cjs"),r=require("./FileUploaderMinimal-ukmS0gJz.cjs"),i=require("./FileUploaderInline-CT-2Aq5S.cjs"),e=require("@uploadcare/file-uploader");exports.FileUploaderRegular=l.FileUploaderRegular;exports.FileUploaderMinimal=r.FileUploaderMinimal;exports.FileUploaderInline=i.FileUploaderInline;Object.defineProperty(exports,"UploadCtxProvider",{enumerable:!0,get:()=>e.UploadCtxProvider});Object.defineProperty(exports,"defineLocale",{enumerable:!0,get:()=>e.defineLocale});
|
package/dist/react-uploader.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FileUploaderRegular as r } from "./FileUploaderRegular-
|
|
2
|
-
import { FileUploaderMinimal as i } from "./FileUploaderMinimal-
|
|
3
|
-
import { FileUploaderInline as a } from "./FileUploaderInline-
|
|
1
|
+
import { FileUploaderRegular as r } from "./FileUploaderRegular-Bs7Cms0D.js";
|
|
2
|
+
import { FileUploaderMinimal as i } from "./FileUploaderMinimal-30IrJ4h5.js";
|
|
3
|
+
import { FileUploaderInline as a } from "./FileUploaderInline-CI7B4LBJ.js";
|
|
4
4
|
import { UploadCtxProvider as f, defineLocale as m } from "@uploadcare/file-uploader";
|
|
5
5
|
export {
|
|
6
6
|
a as FileUploaderInline,
|
|
@@ -96,7 +96,7 @@ const b = /* @__PURE__ */ new Set([
|
|
|
96
96
|
eventHandlers: t,
|
|
97
97
|
config: o
|
|
98
98
|
};
|
|
99
|
-
}, U = "1.1.0-alpha.
|
|
99
|
+
}, U = "1.1.0-alpha.3", j = "React-Uploader", L = () => `${j}/${U}`, S = ({ children: e }) => e, T = () => {
|
|
100
100
|
const [e, t] = w(!1);
|
|
101
101
|
return y(() => {
|
|
102
102
|
typeof window < "u" && t(!0);
|
|
@@ -1 +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 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=w(h),y=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,u=>c.handleEvent(u.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])=>{y.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,u)=>{const p=e.useRef(new Map),d=e.useRef(null),{reactProps:C,customElProps:P}=U(c,o,r);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:n[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:n[l]});p.current=i}),e.createElement(t??r.__tag,{...C,ref:e.useCallback(i=>{d.current=i,typeof u=="function"?u(i):u!==null&&(u.current=i)},[u])})});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={};return Object.entries(e).forEach(([s,n])=>{s.startsWith("on")?t[s]=n:r[s]=n}),{eventHandlers:t,config:r}},S="1.1.0-alpha.
|
|
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 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=w(h),y=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,u=>c.handleEvent(u.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])=>{y.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,u)=>{const p=e.useRef(new Map),d=e.useRef(null),{reactProps:C,customElProps:P}=U(c,o,r);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:n[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:n[l]});p.current=i}),e.createElement(t??r.__tag,{...C,ref:e.useCallback(i=>{d.current=i,typeof u=="function"?u(i):u!==null&&(u.current=i)},[u])})});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={};return Object.entries(e).forEach(([s,n])=>{s.startsWith("on")?t[s]=n:r[s]=n}),{eventHandlers:t,config:r}},S="1.1.0-alpha.3",I="React-Uploader",_=()=>`${I}/${S}`,x=({children:e})=>e,R=()=>{const[e,t]=f.useState(!1);return f.useEffect(()=>{typeof window<"u"&&t(!0)},[]),e};exports.AdapterConfig=A;exports.AdapterUploadCtxProvider=M;exports.ConditionalSuspense=x;exports.b=g;exports.getCalcPropertyOfProps=N;exports.getUserAgentIntegration=_;exports.useIsBrowser=R;
|
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.1.0-alpha.
|
|
4
|
+
"version": "1.1.0-alpha.3",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
7
7
|
"files": ["dist"],
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
},
|
|
16
16
|
"./next": {
|
|
17
17
|
"import": "./dist/nextjs.js",
|
|
18
|
-
"require": "./dist/nextjs.cjs"
|
|
18
|
+
"require": "./dist/nextjs.cjs",
|
|
19
|
+
"types": "./dist/nextjs.d.ts"
|
|
19
20
|
},
|
|
20
21
|
"./core.css": "./dist/style.css"
|
|
21
22
|
},
|