@payloadcms/ui 3.62.0-internal.7fb5145 → 3.62.0-internal.ec3a6fa
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/Autosave/index.js +2 -2
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +1 -0
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +10 -10
- package/dist/exports/client/index.js.map +4 -4
- package/dist/fields/Relationship/Input.js +2 -2
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/forms/Form/index.js +2 -2
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +8 -1
- package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +1 -1
- package/dist/hooks/{useQueues.d.ts → useQueue.d.ts} +3 -3
- package/dist/hooks/useQueue.d.ts.map +1 -0
- package/dist/hooks/{useQueues.js → useQueue.js} +3 -3
- package/dist/hooks/useQueue.js.map +1 -0
- package/dist/providers/ToastContainer/index.d.ts.map +1 -1
- package/dist/providers/ToastContainer/index.js +3 -1
- package/dist/providers/ToastContainer/index.js.map +1 -1
- package/package.json +5 -5
- package/dist/hooks/useQueues.d.ts.map +0 -1
- package/dist/hooks/useQueues.js.map +0 -1
|
@@ -25,13 +25,13 @@ type QueueTask = (fn: QueuedFunction, options?: QueuedTaskOptions) => void;
|
|
|
25
25
|
* 3. All remaining tasks will be discarded
|
|
26
26
|
* @returns {queueTask} A function used to queue a function.
|
|
27
27
|
* @example
|
|
28
|
-
* const { queueTask } =
|
|
28
|
+
* const { queueTask } = useQueue()
|
|
29
29
|
* queueTask(async () => {
|
|
30
30
|
* await fetch('https://api.example.com')
|
|
31
31
|
* })
|
|
32
32
|
*/
|
|
33
|
-
export declare function
|
|
33
|
+
export declare function useQueue(): {
|
|
34
34
|
queueTask: QueueTask;
|
|
35
35
|
};
|
|
36
36
|
export {};
|
|
37
|
-
//# sourceMappingURL=
|
|
37
|
+
//# sourceMappingURL=useQueue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useQueue.d.ts","sourceRoot":"","sources":["../../src/hooks/useQueue.ts"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;AAEzC,KAAK,iBAAiB,GAAG;IACvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,OAAO,GAAG,IAAI,CAAA;CACrC,CAAA;AAED,KAAK,SAAS,GAAG,CAAC,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAA;AAE1E;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,IAAI;IAC1B,SAAS,EAAE,SAAS,CAAA;CACrB,CA8CA"}
|
|
@@ -10,12 +10,12 @@ import { useCallback, useRef } from 'react';
|
|
|
10
10
|
* 3. All remaining tasks will be discarded
|
|
11
11
|
* @returns {queueTask} A function used to queue a function.
|
|
12
12
|
* @example
|
|
13
|
-
* const { queueTask } =
|
|
13
|
+
* const { queueTask } = useQueue()
|
|
14
14
|
* queueTask(async () => {
|
|
15
15
|
* await fetch('https://api.example.com')
|
|
16
16
|
* })
|
|
17
17
|
*/
|
|
18
|
-
export function
|
|
18
|
+
export function useQueue() {
|
|
19
19
|
const queue = useRef([]);
|
|
20
20
|
const isProcessing = useRef(false);
|
|
21
21
|
const queueTask = useCallback((fn, options) => {
|
|
@@ -56,4 +56,4 @@ export function useQueues() {
|
|
|
56
56
|
queueTask
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
|
-
//# sourceMappingURL=
|
|
59
|
+
//# sourceMappingURL=useQueue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useQueue.js","names":["useCallback","useRef","useQueue","queue","isProcessing","queueTask","fn","options","current","push","processQueue","beforeProcess","shouldContinue","length","latestTask","pop","err","console","error","afterProcess"],"sources":["../../src/hooks/useQueue.ts"],"sourcesContent":["import { useCallback, useRef } from 'react'\n\ntype QueuedFunction = () => Promise<void>\n\ntype QueuedTaskOptions = {\n /**\n * A function that is called after the queue has processed a function\n * Used to perform side effects after processing the queue\n * @returns {void}\n */\n afterProcess?: () => void\n /**\n * A function that can be used to prevent the queue from processing under certain conditions\n * Can also be used to perform side effects before processing the queue\n * @returns {boolean} If `false`, the queue will not process\n */\n beforeProcess?: () => boolean | void\n}\n\ntype QueueTask = (fn: QueuedFunction, options?: QueuedTaskOptions) => void\n\n/**\n * A React hook that allows you to queue up functions to be executed in order.\n * This is useful when you need to ensure long running networks requests are processed sequentially.\n * Builds up a \"queue\" of functions to be executed in order, only ever processing the last function in the queue.\n * This ensures that a long queue of tasks doesn't cause a backlog of tasks to be processed.\n * E.g. if you queue a task and it begins running, then you queue 9 more tasks:\n * 1. The currently task will finish\n * 2. The next task in the queue will run\n * 3. All remaining tasks will be discarded\n * @returns {queueTask} A function used to queue a function.\n * @example\n * const { queueTask } = useQueue()\n * queueTask(async () => {\n * await fetch('https://api.example.com')\n * })\n */\nexport function useQueue(): {\n queueTask: QueueTask\n} {\n const queue = useRef<QueuedFunction[]>([])\n\n const isProcessing = useRef(false)\n\n const queueTask = useCallback<QueueTask>((fn, options) => {\n queue.current.push(fn)\n\n async function processQueue() {\n if (isProcessing.current) {\n return\n }\n\n // Allow the consumer to prevent the queue from processing under certain conditions\n if (typeof options?.beforeProcess === 'function') {\n const shouldContinue = options.beforeProcess()\n\n if (shouldContinue === false) {\n return\n }\n }\n\n while (queue.current.length > 0) {\n const latestTask = queue.current.pop() // Only process the last task in the queue\n queue.current = [] // Discard all other tasks\n\n isProcessing.current = true\n\n try {\n await latestTask()\n } catch (err) {\n console.error('Error in queued function:', err) // eslint-disable-line no-console\n } finally {\n isProcessing.current = false\n\n if (typeof options?.afterProcess === 'function') {\n options.afterProcess()\n }\n }\n }\n }\n\n void processQueue()\n }, [])\n\n return { queueTask }\n}\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,MAAM,QAAQ;AAqBpC;;;;;;;;;;;;;;;;AAgBA,OAAO,SAASC,SAAA;EAGd,MAAMC,KAAA,GAAQF,MAAA,CAAyB,EAAE;EAEzC,MAAMG,YAAA,GAAeH,MAAA,CAAO;EAE5B,MAAMI,SAAA,GAAYL,WAAA,CAAuB,CAACM,EAAA,EAAIC,OAAA;IAC5CJ,KAAA,CAAMK,OAAO,CAACC,IAAI,CAACH,EAAA;IAEnB,eAAeI,aAAA;MACb,IAAIN,YAAA,CAAaI,OAAO,EAAE;QACxB;MACF;MAEA;MACA,IAAI,OAAOD,OAAA,EAASI,aAAA,KAAkB,YAAY;QAChD,MAAMC,cAAA,GAAiBL,OAAA,CAAQI,aAAa;QAE5C,IAAIC,cAAA,KAAmB,OAAO;UAC5B;QACF;MACF;MAEA,OAAOT,KAAA,CAAMK,OAAO,CAACK,MAAM,GAAG,GAAG;QAC/B,MAAMC,UAAA,GAAaX,KAAA,CAAMK,OAAO,CAACO,GAAG,GAAG;QAAA;QACvCZ,KAAA,CAAMK,OAAO,GAAG,EAAE,CAAC;QAAA;QAEnBJ,YAAA,CAAaI,OAAO,GAAG;QAEvB,IAAI;UACF,MAAMM,UAAA;QACR,EAAE,OAAOE,GAAA,EAAK;UACZC,OAAA,CAAQC,KAAK,CAAC,6BAA6BF,GAAA,EAAK;UAAA;QAClD,UAAU;UACRZ,YAAA,CAAaI,OAAO,GAAG;UAEvB,IAAI,OAAOD,OAAA,EAASY,YAAA,KAAiB,YAAY;YAC/CZ,OAAA,CAAQY,YAAY;UACtB;QACF;MACF;IACF;IAEA,KAAKT,YAAA;EACP,GAAG,EAAE;EAEL,OAAO;IAAEL;EAAU;AACrB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ToastContainer/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,MAAM,EAAE,YAAY,CAAA;CACrB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ToastContainer/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,MAAM,EAAE,YAAY,CAAA;CACrB,CAqCA,CAAA"}
|
|
@@ -15,7 +15,8 @@ export const ToastContainer = ({
|
|
|
15
15
|
toast: {
|
|
16
16
|
duration,
|
|
17
17
|
expand,
|
|
18
|
-
limit
|
|
18
|
+
limit,
|
|
19
|
+
position
|
|
19
20
|
} = {}
|
|
20
21
|
} = {}
|
|
21
22
|
} = config;
|
|
@@ -34,6 +35,7 @@ export const ToastContainer = ({
|
|
|
34
35
|
warning: /*#__PURE__*/_jsx(Warning, {})
|
|
35
36
|
},
|
|
36
37
|
offset: "calc(var(--gutter-h) / 2)",
|
|
38
|
+
position: position ?? 'bottom-right',
|
|
37
39
|
toastOptions: {
|
|
38
40
|
classNames: {
|
|
39
41
|
closeButton: 'payload-toast-close-button',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","Toaster","Error","Info","Success","Warning","ToastContainer","config","admin","toast","duration","expand","limit","_jsx","className","closeButton","dir","gap","icons","error","info","success","warning","offset","toastOptions","classNames","content","icon","title","unstyled","visibleToasts"],"sources":["../../../src/providers/ToastContainer/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig } from 'payload'\n\nimport React from 'react'\nimport { Toaster } from 'sonner'\n\nimport { Error } from './icons/Error.js'\nimport { Info } from './icons/Info.js'\nimport { Success } from './icons/Success.js'\nimport { Warning } from './icons/Warning.js'\n\nexport const ToastContainer: React.FC<{\n config: ClientConfig\n}> = ({ config }) => {\n const { admin: { toast: { duration, expand, limit } = {} } = {} } = config\n\n return (\n <Toaster\n className=\"payload-toast-container\"\n closeButton\n // @ts-expect-error\n dir=\"undefined\"\n duration={duration ?? 4000}\n expand={expand ?? false}\n gap={8}\n icons={{\n error: <Error />,\n info: <Info />,\n success: <Success />,\n warning: <Warning />,\n }}\n offset=\"calc(var(--gutter-h) / 2)\"\n toastOptions={{\n classNames: {\n closeButton: 'payload-toast-close-button',\n content: 'toast-content',\n error: 'toast-error',\n icon: 'toast-icon',\n info: 'toast-info',\n success: 'toast-success',\n title: 'toast-title',\n toast: 'payload-toast-item',\n warning: 'toast-warning',\n },\n unstyled: true,\n }}\n visibleToasts={limit ?? 5}\n />\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,MAAW;AAClB,SAASC,OAAO,QAAQ;AAExB,SAASC,KAAK,QAAQ;AACtB,SAASC,IAAI,QAAQ;AACrB,SAASC,OAAO,QAAQ;AACxB,SAASC,OAAO,QAAQ;AAExB,OAAO,MAAMC,cAAA,GAERA,CAAC;EAAEC;AAAM,CAAE;EACd,MAAM;IAAEC,KAAA,EAAO;MAAEC,KAAA,EAAO;QAAEC,QAAQ;QAAEC,MAAM;QAAEC;
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","Toaster","Error","Info","Success","Warning","ToastContainer","config","admin","toast","duration","expand","limit","position","_jsx","className","closeButton","dir","gap","icons","error","info","success","warning","offset","toastOptions","classNames","content","icon","title","unstyled","visibleToasts"],"sources":["../../../src/providers/ToastContainer/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig } from 'payload'\n\nimport React from 'react'\nimport { Toaster } from 'sonner'\n\nimport { Error } from './icons/Error.js'\nimport { Info } from './icons/Info.js'\nimport { Success } from './icons/Success.js'\nimport { Warning } from './icons/Warning.js'\n\nexport const ToastContainer: React.FC<{\n config: ClientConfig\n}> = ({ config }) => {\n const { admin: { toast: { duration, expand, limit, position } = {} } = {} } = config\n\n return (\n <Toaster\n className=\"payload-toast-container\"\n closeButton\n // @ts-expect-error\n dir=\"undefined\"\n duration={duration ?? 4000}\n expand={expand ?? false}\n gap={8}\n icons={{\n error: <Error />,\n info: <Info />,\n success: <Success />,\n warning: <Warning />,\n }}\n offset=\"calc(var(--gutter-h) / 2)\"\n position={position ?? 'bottom-right'}\n toastOptions={{\n classNames: {\n closeButton: 'payload-toast-close-button',\n content: 'toast-content',\n error: 'toast-error',\n icon: 'toast-icon',\n info: 'toast-info',\n success: 'toast-success',\n title: 'toast-title',\n toast: 'payload-toast-item',\n warning: 'toast-warning',\n },\n unstyled: true,\n }}\n visibleToasts={limit ?? 5}\n />\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,MAAW;AAClB,SAASC,OAAO,QAAQ;AAExB,SAASC,KAAK,QAAQ;AACtB,SAASC,IAAI,QAAQ;AACrB,SAASC,OAAO,QAAQ;AACxB,SAASC,OAAO,QAAQ;AAExB,OAAO,MAAMC,cAAA,GAERA,CAAC;EAAEC;AAAM,CAAE;EACd,MAAM;IAAEC,KAAA,EAAO;MAAEC,KAAA,EAAO;QAAEC,QAAQ;QAAEC,MAAM;QAAEC,KAAK;QAAEC;MAAQ,CAAE,GAAG,CAAC;IAAC,CAAE,GAAG,CAAC;EAAC,CAAE,GAAGN,MAAA;EAE9E,oBACEO,IAAA,CAACb,OAAA;IACCc,SAAA,EAAU;IACVC,WAAW;IACX;IACAC,GAAA,EAAI;IACJP,QAAA,EAAUA,QAAA,IAAY;IACtBC,MAAA,EAAQA,MAAA,IAAU;IAClBO,GAAA,EAAK;IACLC,KAAA,EAAO;MACLC,KAAA,eAAON,IAAA,CAACZ,KAAA;MACRmB,IAAA,eAAMP,IAAA,CAACX,IAAA;MACPmB,OAAA,eAASR,IAAA,CAACV,OAAA;MACVmB,OAAA,eAAST,IAAA,CAACT,OAAA;IACZ;IACAmB,MAAA,EAAO;IACPX,QAAA,EAAUA,QAAA,IAAY;IACtBY,YAAA,EAAc;MACZC,UAAA,EAAY;QACVV,WAAA,EAAa;QACbW,OAAA,EAAS;QACTP,KAAA,EAAO;QACPQ,IAAA,EAAM;QACNP,IAAA,EAAM;QACNC,OAAA,EAAS;QACTO,KAAA,EAAO;QACPpB,KAAA,EAAO;QACPc,OAAA,EAAS;MACX;MACAO,QAAA,EAAU;IACZ;IACAC,aAAA,EAAenB,KAAA,IAAS;;AAG9B","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/ui",
|
|
3
|
-
"version": "3.62.0-internal.
|
|
3
|
+
"version": "3.62.0-internal.ec3a6fa",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -136,7 +136,7 @@
|
|
|
136
136
|
"ts-essentials": "10.0.3",
|
|
137
137
|
"use-context-selector": "2.0.0",
|
|
138
138
|
"uuid": "10.0.0",
|
|
139
|
-
"@payloadcms/translations": "3.62.0-internal.
|
|
139
|
+
"@payloadcms/translations": "3.62.0-internal.ec3a6fa"
|
|
140
140
|
},
|
|
141
141
|
"devDependencies": {
|
|
142
142
|
"@babel/cli": "7.27.2",
|
|
@@ -151,14 +151,14 @@
|
|
|
151
151
|
"babel-plugin-react-compiler": "19.1.0-rc.3",
|
|
152
152
|
"esbuild": "0.25.5",
|
|
153
153
|
"esbuild-sass-plugin": "3.3.1",
|
|
154
|
-
"
|
|
155
|
-
"
|
|
154
|
+
"payload": "3.62.0-internal.ec3a6fa",
|
|
155
|
+
"@payloadcms/eslint-config": "3.28.0"
|
|
156
156
|
},
|
|
157
157
|
"peerDependencies": {
|
|
158
158
|
"next": "^15.2.3",
|
|
159
159
|
"react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
160
160
|
"react-dom": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
161
|
-
"payload": "3.62.0-internal.
|
|
161
|
+
"payload": "3.62.0-internal.ec3a6fa"
|
|
162
162
|
},
|
|
163
163
|
"engines": {
|
|
164
164
|
"node": "^18.20.2 || >=20.9.0"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useQueues.d.ts","sourceRoot":"","sources":["../../src/hooks/useQueues.ts"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;AAEzC,KAAK,iBAAiB,GAAG;IACvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;IACzB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,OAAO,GAAG,IAAI,CAAA;CACrC,CAAA;AAED,KAAK,SAAS,GAAG,CAAC,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAA;AAE1E;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,IAAI;IAC3B,SAAS,EAAE,SAAS,CAAA;CACrB,CA8CA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useQueues.js","names":["useCallback","useRef","useQueues","queue","isProcessing","queueTask","fn","options","current","push","processQueue","beforeProcess","shouldContinue","length","latestTask","pop","err","console","error","afterProcess"],"sources":["../../src/hooks/useQueues.ts"],"sourcesContent":["import { useCallback, useRef } from 'react'\n\ntype QueuedFunction = () => Promise<void>\n\ntype QueuedTaskOptions = {\n /**\n * A function that is called after the queue has processed a function\n * Used to perform side effects after processing the queue\n * @returns {void}\n */\n afterProcess?: () => void\n /**\n * A function that can be used to prevent the queue from processing under certain conditions\n * Can also be used to perform side effects before processing the queue\n * @returns {boolean} If `false`, the queue will not process\n */\n beforeProcess?: () => boolean | void\n}\n\ntype QueueTask = (fn: QueuedFunction, options?: QueuedTaskOptions) => void\n\n/**\n * A React hook that allows you to queue up functions to be executed in order.\n * This is useful when you need to ensure long running networks requests are processed sequentially.\n * Builds up a \"queue\" of functions to be executed in order, only ever processing the last function in the queue.\n * This ensures that a long queue of tasks doesn't cause a backlog of tasks to be processed.\n * E.g. if you queue a task and it begins running, then you queue 9 more tasks:\n * 1. The currently task will finish\n * 2. The next task in the queue will run\n * 3. All remaining tasks will be discarded\n * @returns {queueTask} A function used to queue a function.\n * @example\n * const { queueTask } = useQueues()\n * queueTask(async () => {\n * await fetch('https://api.example.com')\n * })\n */\nexport function useQueues(): {\n queueTask: QueueTask\n} {\n const queue = useRef<QueuedFunction[]>([])\n\n const isProcessing = useRef(false)\n\n const queueTask = useCallback<QueueTask>((fn, options) => {\n queue.current.push(fn)\n\n async function processQueue() {\n if (isProcessing.current) {\n return\n }\n\n // Allow the consumer to prevent the queue from processing under certain conditions\n if (typeof options?.beforeProcess === 'function') {\n const shouldContinue = options.beforeProcess()\n\n if (shouldContinue === false) {\n return\n }\n }\n\n while (queue.current.length > 0) {\n const latestTask = queue.current.pop() // Only process the last task in the queue\n queue.current = [] // Discard all other tasks\n\n isProcessing.current = true\n\n try {\n await latestTask()\n } catch (err) {\n console.error('Error in queued function:', err) // eslint-disable-line no-console\n } finally {\n isProcessing.current = false\n\n if (typeof options?.afterProcess === 'function') {\n options.afterProcess()\n }\n }\n }\n }\n\n void processQueue()\n }, [])\n\n return { queueTask }\n}\n"],"mappings":"AAAA,SAASA,WAAW,EAAEC,MAAM,QAAQ;AAqBpC;;;;;;;;;;;;;;;;AAgBA,OAAO,SAASC,UAAA;EAGd,MAAMC,KAAA,GAAQF,MAAA,CAAyB,EAAE;EAEzC,MAAMG,YAAA,GAAeH,MAAA,CAAO;EAE5B,MAAMI,SAAA,GAAYL,WAAA,CAAuB,CAACM,EAAA,EAAIC,OAAA;IAC5CJ,KAAA,CAAMK,OAAO,CAACC,IAAI,CAACH,EAAA;IAEnB,eAAeI,aAAA;MACb,IAAIN,YAAA,CAAaI,OAAO,EAAE;QACxB;MACF;MAEA;MACA,IAAI,OAAOD,OAAA,EAASI,aAAA,KAAkB,YAAY;QAChD,MAAMC,cAAA,GAAiBL,OAAA,CAAQI,aAAa;QAE5C,IAAIC,cAAA,KAAmB,OAAO;UAC5B;QACF;MACF;MAEA,OAAOT,KAAA,CAAMK,OAAO,CAACK,MAAM,GAAG,GAAG;QAC/B,MAAMC,UAAA,GAAaX,KAAA,CAAMK,OAAO,CAACO,GAAG,GAAG;QAAA;QACvCZ,KAAA,CAAMK,OAAO,GAAG,EAAE,CAAC;QAAA;QAEnBJ,YAAA,CAAaI,OAAO,GAAG;QAEvB,IAAI;UACF,MAAMM,UAAA;QACR,EAAE,OAAOE,GAAA,EAAK;UACZC,OAAA,CAAQC,KAAK,CAAC,6BAA6BF,GAAA,EAAK;UAAA;QAClD,UAAU;UACRZ,YAAA,CAAaI,OAAO,GAAG;UAEvB,IAAI,OAAOD,OAAA,EAASY,YAAA,KAAiB,YAAY;YAC/CZ,OAAA,CAAQY,YAAY;UACtB;QACF;MACF;IACF;IAEA,KAAKT,YAAA;EACP,GAAG,EAAE;EAEL,OAAO;IAAEL;EAAU;AACrB","ignoreList":[]}
|