@payloadcms/ui 3.91.0-internal.6e3dc85 → 3.91.0-internal.c1569dc
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/FolderView/FolderFileTable/index.d.ts.map +1 -1
- package/dist/elements/FolderView/FolderFileTable/index.js +12 -2
- package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
- package/dist/elements/FolderView/FolderFileTable/index.scss +14 -0
- package/dist/elements/Thumbnail/index.d.ts +1 -0
- package/dist/elements/Thumbnail/index.d.ts.map +1 -1
- package/dist/elements/Thumbnail/index.js +2 -0
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +2 -1
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +24 -24
- package/dist/exports/client/index.js.map +4 -4
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +12 -4
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
- package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
- package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/index.scss +49 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
- package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
- package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
- package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
- package/dist/providers/Auth/authSessionRequests.js +119 -0
- package/dist/providers/Auth/authSessionRequests.js.map +1 -0
- package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
- package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
- package/dist/providers/Auth/index.d.ts +3 -57
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +290 -135
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Auth/sessionActivity.d.ts +23 -0
- package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
- package/dist/providers/Auth/sessionActivity.js +49 -0
- package/dist/providers/Auth/sessionActivity.js.map +1 -0
- package/dist/providers/Auth/sessionActivity.spec.js +44 -0
- package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
- package/dist/providers/Auth/sessionTiming.d.ts +11 -0
- package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
- package/dist/providers/Auth/sessionTiming.js +18 -0
- package/dist/providers/Auth/sessionTiming.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
- package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.js +263 -0
- package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
- package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
- package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/types.js +6 -0
- package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
- package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
- package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
- package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
- package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
- package/dist/providers/Auth/types.d.ts +70 -0
- package/dist/providers/Auth/types.d.ts.map +1 -0
- package/dist/providers/Auth/types.js +2 -0
- package/dist/providers/Auth/types.js.map +1 -0
- package/dist/providers/Auth/types.spec.js +8 -0
- package/dist/providers/Auth/types.spec.js.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
- package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
- package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
- package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
- package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
- package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
- package/dist/providers/UploadHandlers/index.js +24 -59
- package/dist/providers/UploadHandlers/index.js.map +1 -1
- package/dist/providers/UploadHandlers/index.spec.js +63 -0
- package/dist/providers/UploadHandlers/index.spec.js.map +1 -0
- package/dist/styles.css +1 -1
- package/package.json +5 -5
|
@@ -1,63 +1,31 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import { c as _c } from "react/compiler-runtime";
|
|
4
3
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
import React, {
|
|
4
|
+
import React, { useCallback, useMemo, useRef } from 'react';
|
|
6
5
|
const Context = /*#__PURE__*/React.createContext(null);
|
|
7
|
-
export const UploadHandlersProvider =
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const {
|
|
31
|
-
collectionSlug: collectionSlug_0,
|
|
32
|
-
handler
|
|
33
|
-
} = t3;
|
|
34
|
-
setUploadHandlers(uploadHandlers_0 => {
|
|
35
|
-
const clone = new Map(uploadHandlers_0);
|
|
36
|
-
clone.set(collectionSlug_0, handler);
|
|
37
|
-
return clone;
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
$[2] = t2;
|
|
41
|
-
} else {
|
|
42
|
-
t2 = $[2];
|
|
43
|
-
}
|
|
44
|
-
const setUploadHandler = t2;
|
|
45
|
-
let t3;
|
|
46
|
-
if ($[3] !== children || $[4] !== getUploadHandler) {
|
|
47
|
-
t3 = _jsx(Context, {
|
|
48
|
-
value: {
|
|
49
|
-
getUploadHandler,
|
|
50
|
-
setUploadHandler
|
|
51
|
-
},
|
|
52
|
-
children
|
|
53
|
-
});
|
|
54
|
-
$[3] = children;
|
|
55
|
-
$[4] = getUploadHandler;
|
|
56
|
-
$[5] = t3;
|
|
57
|
-
} else {
|
|
58
|
-
t3 = $[5];
|
|
59
|
-
}
|
|
60
|
-
return t3;
|
|
6
|
+
export const UploadHandlersProvider = ({
|
|
7
|
+
children
|
|
8
|
+
}) => {
|
|
9
|
+
const uploadHandlers = useRef(new Map());
|
|
10
|
+
const getUploadHandler = useCallback(({
|
|
11
|
+
collectionSlug
|
|
12
|
+
}) => {
|
|
13
|
+
return uploadHandlers.current.get(collectionSlug);
|
|
14
|
+
}, []);
|
|
15
|
+
const setUploadHandler = useCallback(({
|
|
16
|
+
collectionSlug: collectionSlug_0,
|
|
17
|
+
handler
|
|
18
|
+
}) => {
|
|
19
|
+
uploadHandlers.current.set(collectionSlug_0, handler);
|
|
20
|
+
}, []);
|
|
21
|
+
const value = useMemo(() => ({
|
|
22
|
+
getUploadHandler,
|
|
23
|
+
setUploadHandler
|
|
24
|
+
}), [getUploadHandler, setUploadHandler]);
|
|
25
|
+
return /*#__PURE__*/_jsx(Context, {
|
|
26
|
+
value: value,
|
|
27
|
+
children: children
|
|
28
|
+
});
|
|
61
29
|
};
|
|
62
30
|
export const useUploadHandlers = () => {
|
|
63
31
|
const context = React.use(Context);
|
|
@@ -66,7 +34,4 @@ export const useUploadHandlers = () => {
|
|
|
66
34
|
}
|
|
67
35
|
return context;
|
|
68
36
|
};
|
|
69
|
-
function _temp() {
|
|
70
|
-
return new Map();
|
|
71
|
-
}
|
|
72
37
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","useMemo","useRef","Context","createContext","UploadHandlersProvider","children","uploadHandlers","Map","getUploadHandler","collectionSlug","current","get","setUploadHandler","handler","set","value","_jsx","useUploadHandlers","context","use","Error"],"sources":["../../../src/providers/UploadHandlers/index.tsx"],"sourcesContent":["'use client'\nimport type { UploadCollectionSlug } from 'payload'\n\nimport React, { useCallback, useMemo, useRef } from 'react'\n\ntype UploadHandler = (args: {\n docPrefix?: string\n file: File\n updateFilename: (filename: string) => void\n}) => Promise<unknown>\n\nexport type UploadHandlersContext = {\n getUploadHandler: (args: { collectionSlug: UploadCollectionSlug }) => null | UploadHandler\n setUploadHandler: (args: {\n collectionSlug: UploadCollectionSlug\n handler: UploadHandler\n }) => unknown\n}\n\nconst Context = React.createContext<null | UploadHandlersContext>(null)\n\nexport const UploadHandlersProvider = ({ children }) => {\n const uploadHandlers = useRef<Map<UploadCollectionSlug, UploadHandler>>(new Map())\n\n const getUploadHandler = useCallback<UploadHandlersContext['getUploadHandler']>(\n ({ collectionSlug }) => {\n return uploadHandlers.current.get(collectionSlug)\n },\n [],\n )\n\n const setUploadHandler = useCallback<UploadHandlersContext['setUploadHandler']>(\n ({ collectionSlug, handler }) => {\n uploadHandlers.current.set(collectionSlug, handler)\n },\n [],\n )\n\n const value = useMemo<UploadHandlersContext>(\n () => ({ getUploadHandler, setUploadHandler }),\n [getUploadHandler, setUploadHandler],\n )\n\n return <Context value={value}>{children}</Context>\n}\n\nexport const useUploadHandlers = (): UploadHandlersContext => {\n const context = React.use(Context)\n\n if (context === null) {\n throw new Error('useUploadHandlers must be used within UploadHandlersProvider')\n }\n\n return context\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,IAASC,WAAW,EAAEC,OAAO,EAAEC,MAAM,QAAQ;AAgBpD,MAAMC,OAAA,gBAAUJ,KAAA,CAAMK,aAAa,CAA+B;AAElE,OAAO,MAAMC,sBAAA,GAAyBA,CAAC;EAAEC;AAAQ,CAAE;EACjD,MAAMC,cAAA,GAAiBL,MAAA,CAAiD,IAAIM,GAAA;EAE5E,MAAMC,gBAAA,GAAmBT,WAAA,CACvB,CAAC;IAAEU;EAAc,CAAE;IACjB,OAAOH,cAAA,CAAeI,OAAO,CAACC,GAAG,CAACF,cAAA;EACpC,GACA,EAAE;EAGJ,MAAMG,gBAAA,GAAmBb,WAAA,CACvB,CAAC;IAAEU,cAAc,EAAdA,gBAAc;IAAEI;EAAO,CAAE;IAC1BP,cAAA,CAAeI,OAAO,CAACI,GAAG,CAACL,gBAAA,EAAgBI,OAAA;EAC7C,GACA,EAAE;EAGJ,MAAME,KAAA,GAAQf,OAAA,CACZ,OAAO;IAAEQ,gBAAA;IAAkBI;EAAiB,IAC5C,CAACJ,gBAAA,EAAkBI,gBAAA,CAAiB;EAGtC,oBAAOI,IAAA,CAACd,OAAA;IAAQa,KAAA,EAAOA,KAAA;cAAQV;;AACjC;AAEA,OAAO,MAAMY,iBAAA,GAAoBA,CAAA;EAC/B,MAAMC,OAAA,GAAUpB,KAAA,CAAMqB,GAAG,CAACjB,OAAA;EAE1B,IAAIgB,OAAA,KAAY,MAAM;IACpB,MAAM,IAAIE,KAAA,CAAM;EAClB;EAEA,OAAOF,OAAA;AACT","ignoreList":[]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// @vitest-environment jsdom
|
|
2
|
+
import React, { act, useEffect, useEffectEvent } from 'react';
|
|
3
|
+
import { createRoot } from 'react-dom/client';
|
|
4
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
5
|
+
import { UploadHandlersProvider, useUploadHandlers } from './index.js';
|
|
6
|
+
const reactActEnvironment = globalThis;
|
|
7
|
+
reactActEnvironment.IS_REACT_ACT_ENVIRONMENT = true;
|
|
8
|
+
describe('UploadHandlersProvider', () => {
|
|
9
|
+
it('registers many upload handlers without rerendering context consumers', async () => {
|
|
10
|
+
const collectionSlugs = Array.from({
|
|
11
|
+
length: 50
|
|
12
|
+
}, (_, index) => `upload-${index}`);
|
|
13
|
+
const container = document.createElement('div');
|
|
14
|
+
const handler = vi.fn(async () => undefined);
|
|
15
|
+
const root = createRoot(container);
|
|
16
|
+
let context;
|
|
17
|
+
let contextConsumerRenderCount = 0;
|
|
18
|
+
document.body.appendChild(container);
|
|
19
|
+
const RegisterUploadHandler = ({
|
|
20
|
+
collectionSlug
|
|
21
|
+
}) => {
|
|
22
|
+
const {
|
|
23
|
+
setUploadHandler
|
|
24
|
+
} = useUploadHandlers();
|
|
25
|
+
const registerUploadHandler = useEffectEvent(() => {
|
|
26
|
+
setUploadHandler({
|
|
27
|
+
collectionSlug,
|
|
28
|
+
handler
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
registerUploadHandler();
|
|
33
|
+
}, []);
|
|
34
|
+
return null;
|
|
35
|
+
};
|
|
36
|
+
const ContextConsumer = () => {
|
|
37
|
+
context = useUploadHandlers();
|
|
38
|
+
contextConsumerRenderCount++;
|
|
39
|
+
return null;
|
|
40
|
+
};
|
|
41
|
+
try {
|
|
42
|
+
await act(async () => {
|
|
43
|
+
root.render(React.createElement(UploadHandlersProvider, null, ...collectionSlugs.map(collectionSlug => React.createElement(RegisterUploadHandler, {
|
|
44
|
+
collectionSlug,
|
|
45
|
+
key: collectionSlug
|
|
46
|
+
})), React.createElement(ContextConsumer)));
|
|
47
|
+
});
|
|
48
|
+
expect(contextConsumerRenderCount).toBe(1);
|
|
49
|
+
expect(context).toBeDefined();
|
|
50
|
+
for (const collectionSlug of collectionSlugs) {
|
|
51
|
+
expect(context?.getUploadHandler({
|
|
52
|
+
collectionSlug
|
|
53
|
+
})).toBe(handler);
|
|
54
|
+
}
|
|
55
|
+
} finally {
|
|
56
|
+
await act(async () => {
|
|
57
|
+
root.unmount();
|
|
58
|
+
});
|
|
59
|
+
container.remove();
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
//# sourceMappingURL=index.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.spec.js","names":["React","act","useEffect","useEffectEvent","createRoot","describe","expect","it","vi","UploadHandlersProvider","useUploadHandlers","reactActEnvironment","globalThis","IS_REACT_ACT_ENVIRONMENT","collectionSlugs","Array","from","length","_","index","container","document","createElement","handler","fn","undefined","root","context","contextConsumerRenderCount","body","appendChild","RegisterUploadHandler","collectionSlug","setUploadHandler","registerUploadHandler","ContextConsumer","render","map","key","toBe","toBeDefined","getUploadHandler","unmount","remove"],"sources":["../../../src/providers/UploadHandlers/index.spec.ts"],"sourcesContent":["// @vitest-environment jsdom\n\nimport type { UploadCollectionSlug } from 'payload'\n\nimport React, { act, useEffect, useEffectEvent } from 'react'\nimport { createRoot } from 'react-dom/client'\nimport { describe, expect, it, vi } from 'vitest'\n\nimport type { UploadHandlersContext } from './index.js'\n\nimport { UploadHandlersProvider, useUploadHandlers } from './index.js'\n\nconst reactActEnvironment = globalThis as typeof globalThis & {\n IS_REACT_ACT_ENVIRONMENT: boolean\n}\n\nreactActEnvironment.IS_REACT_ACT_ENVIRONMENT = true\n\ndescribe('UploadHandlersProvider', () => {\n it('registers many upload handlers without rerendering context consumers', async () => {\n const collectionSlugs = Array.from(\n { length: 50 },\n (_, index) => `upload-${index}` as UploadCollectionSlug,\n )\n const container = document.createElement('div')\n const handler = vi.fn(async () => undefined)\n const root = createRoot(container)\n let context: undefined | UploadHandlersContext\n let contextConsumerRenderCount = 0\n\n document.body.appendChild(container)\n\n const RegisterUploadHandler = ({\n collectionSlug,\n }: {\n collectionSlug: UploadCollectionSlug\n }) => {\n const { setUploadHandler } = useUploadHandlers()\n const registerUploadHandler = useEffectEvent(() => {\n setUploadHandler({ collectionSlug, handler })\n })\n\n useEffect(() => {\n registerUploadHandler()\n }, [])\n\n return null\n }\n\n const ContextConsumer = () => {\n context = useUploadHandlers()\n contextConsumerRenderCount++\n\n return null\n }\n\n try {\n await act(async () => {\n root.render(\n React.createElement(\n UploadHandlersProvider,\n null,\n ...collectionSlugs.map((collectionSlug) =>\n React.createElement(RegisterUploadHandler, {\n collectionSlug,\n key: collectionSlug,\n }),\n ),\n React.createElement(ContextConsumer),\n ),\n )\n })\n\n expect(contextConsumerRenderCount).toBe(1)\n expect(context).toBeDefined()\n\n for (const collectionSlug of collectionSlugs) {\n expect(context?.getUploadHandler({ collectionSlug })).toBe(handler)\n }\n } finally {\n await act(async () => {\n root.unmount()\n })\n container.remove()\n }\n })\n})\n"],"mappings":"AAAA;AAIA,OAAOA,KAAA,IAASC,GAAG,EAAEC,SAAS,EAAEC,cAAc,QAAQ;AACtD,SAASC,UAAU,QAAQ;AAC3B,SAASC,QAAQ,EAAEC,MAAM,EAAEC,EAAE,EAAEC,EAAE,QAAQ;AAIzC,SAASC,sBAAsB,EAAEC,iBAAiB,QAAQ;AAE1D,MAAMC,mBAAA,GAAsBC,UAAA;AAI5BD,mBAAA,CAAoBE,wBAAwB,GAAG;AAE/CR,QAAA,CAAS,0BAA0B;EACjCE,EAAA,CAAG,wEAAwE;IACzE,MAAMO,eAAA,GAAkBC,KAAA,CAAMC,IAAI,CAChC;MAAEC,MAAA,EAAQ;IAAG,GACb,CAACC,CAAA,EAAGC,KAAA,KAAU,UAAUA,KAAA,EAAO;IAEjC,MAAMC,SAAA,GAAYC,QAAA,CAASC,aAAa,CAAC;IACzC,MAAMC,OAAA,GAAUf,EAAA,CAAGgB,EAAE,CAAC,YAAYC,SAAA;IAClC,MAAMC,IAAA,GAAOtB,UAAA,CAAWgB,SAAA;IACxB,IAAIO,OAAA;IACJ,IAAIC,0BAAA,GAA6B;IAEjCP,QAAA,CAASQ,IAAI,CAACC,WAAW,CAACV,SAAA;IAE1B,MAAMW,qBAAA,GAAwBA,CAAC;MAC7BC;IAAc,CAGf;MACC,MAAM;QAAEC;MAAgB,CAAE,GAAGvB,iBAAA;MAC7B,MAAMwB,qBAAA,GAAwB/B,cAAA,CAAe;QAC3C8B,gBAAA,CAAiB;UAAED,cAAA;UAAgBT;QAAQ;MAC7C;MAEArB,SAAA,CAAU;QACRgC,qBAAA;MACF,GAAG,EAAE;MAEL,OAAO;IACT;IAEA,MAAMC,eAAA,GAAkBA,CAAA;MACtBR,OAAA,GAAUjB,iBAAA;MACVkB,0BAAA;MAEA,OAAO;IACT;IAEA,IAAI;MACF,MAAM3B,GAAA,CAAI;QACRyB,IAAA,CAAKU,MAAM,CACTpC,KAAA,CAAMsB,aAAa,CACjBb,sBAAA,EACA,SACGK,eAAA,CAAgBuB,GAAG,CAAEL,cAAA,IACtBhC,KAAA,CAAMsB,aAAa,CAACS,qBAAA,EAAuB;UACzCC,cAAA;UACAM,GAAA,EAAKN;QACP,KAEFhC,KAAA,CAAMsB,aAAa,CAACa,eAAA;MAG1B;MAEA7B,MAAA,CAAOsB,0BAAA,EAA4BW,IAAI,CAAC;MACxCjC,MAAA,CAAOqB,OAAA,EAASa,WAAW;MAE3B,KAAK,MAAMR,cAAA,IAAkBlB,eAAA,EAAiB;QAC5CR,MAAA,CAAOqB,OAAA,EAASc,gBAAA,CAAiB;UAAET;QAAe,IAAIO,IAAI,CAAChB,OAAA;MAC7D;IACF,UAAU;MACR,MAAMtB,GAAA,CAAI;QACRyB,IAAA,CAAKgB,OAAO;MACd;MACAtB,SAAA,CAAUuB,MAAM;IAClB;EACF;AACF","ignoreList":[]}
|