@payloadcms/ui 3.23.0-canary.f4bcd50 → 3.23.0-canary.f63b80a
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/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +11 -4
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/exports/client/{CodeEditor-BMYVMDNZ.js → CodeEditor-G3Y4UHC4.js} +2 -2
- package/dist/exports/client/chunk-4L367VSB.js +26 -0
- package/dist/exports/client/{chunk-CQQHQHCB.js.map → chunk-4L367VSB.js.map} +3 -3
- 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 +11 -11
- package/dist/exports/client/index.js.map +3 -3
- package/dist/fields/Blocks/BlockRow.d.ts +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.d.ts +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js +31 -23
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.d.ts +1 -1
- package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +6 -4
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Join/index.d.ts.map +1 -1
- package/dist/fields/Join/index.js +9 -2
- package/dist/fields/Join/index.js.map +1 -1
- package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
- package/dist/forms/Form/mergeServerFormState.js +1 -0
- package/dist/forms/Form/mergeServerFormState.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +2 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +1 -1
- package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js +2 -1
- package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
- package/dist/providers/Config/index.d.ts +2 -2
- package/dist/providers/Config/index.d.ts.map +1 -1
- package/dist/providers/Config/index.js +17 -2
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +3 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +4 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
- package/dist/utilities/copyDataFromLocale.js +13 -15
- package/dist/utilities/copyDataFromLocale.js.map +1 -1
- package/dist/utilities/getClientConfig.js.map +1 -1
- package/package.json +4 -4
- package/dist/exports/client/chunk-CQQHQHCB.js +0 -26
- /package/dist/exports/client/{CodeEditor-BMYVMDNZ.js.map → CodeEditor-G3Y4UHC4.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildClientFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,
|
|
1
|
+
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildClientFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EAGzB,KAAK,cAAc,EACnB,KAAK,OAAO,EACb,MAAM,SAAS,CAAA;AAGhB,KAAK,IAAI,GAAG;IACV,eAAe,EAAE,oBAAoB,CAAA;IACrC,MAAM,EAAE,YAAY,CAAA;IACpB,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,cAAc,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,sGASxB,IAAI,SA4IN,CAAA"}
|
|
@@ -37,7 +37,9 @@ export const traverseFields = ({
|
|
|
37
37
|
});
|
|
38
38
|
break;
|
|
39
39
|
case 'blocks':
|
|
40
|
-
|
|
40
|
+
;
|
|
41
|
+
(field.blockReferences ?? field.blocks).map(_block => {
|
|
42
|
+
const block = typeof _block === 'string' ? config.blocksMap ? config.blocksMap[_block] : config.blocks.find(block => typeof block !== 'string' && block.slug === _block) : _block;
|
|
41
43
|
const blockSchemaPath = `${schemaPath}.${block.slug}`;
|
|
42
44
|
clientSchemaMap.set(blockSchemaPath, block);
|
|
43
45
|
traverseFields({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.js","names":["createClientFields","getFieldPaths","tabHasName","traverseFields","clientSchemaMap","config","fields","i18n","parentIndexPath","parentSchemaPath","payload","schemaMap","index","field","entries","indexPath","schemaPath","parentPath","set","type","blocks","map","block","
|
|
1
|
+
{"version":3,"file":"traverseFields.js","names":["createClientFields","getFieldPaths","tabHasName","traverseFields","clientSchemaMap","config","fields","i18n","parentIndexPath","parentSchemaPath","payload","schemaMap","index","field","entries","indexPath","schemaPath","parentPath","set","type","blockReferences","blocks","map","_block","block","blocksMap","find","slug","blockSchemaPath","richTextFieldSchemaMap","Map","path","subField","startsWith","isFieldsOnly","Object","keys","length","clientFields","defaultIDType","db","disableAddingID","importMap","tabs","tab","tabIndex","isNamedTab","tabIndexPath","tabSchemaPath"],"sources":["../../../src/utilities/buildClientFieldSchemaMap/traverseFields.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\n\nimport {\n type ClientBlock,\n type ClientConfig,\n type ClientField,\n type ClientFieldSchemaMap,\n createClientFields,\n type Field,\n type FieldSchemaMap,\n type Payload,\n} from 'payload'\nimport { getFieldPaths, tabHasName } from 'payload/shared'\n\ntype Args = {\n clientSchemaMap: ClientFieldSchemaMap\n config: ClientConfig\n fields: ClientField[]\n i18n: I18n<any, any>\n parentIndexPath: string\n parentSchemaPath: string\n payload: Payload\n schemaMap: FieldSchemaMap\n}\n\nexport const traverseFields = ({\n clientSchemaMap,\n config,\n fields,\n i18n,\n parentIndexPath,\n parentSchemaPath,\n payload,\n schemaMap,\n}: Args) => {\n for (const [index, field] of fields.entries()) {\n const { indexPath, schemaPath } = getFieldPaths({\n field,\n index,\n parentIndexPath: 'name' in field ? '' : parentIndexPath,\n parentPath: '',\n parentSchemaPath,\n })\n\n clientSchemaMap.set(schemaPath, field)\n\n switch (field.type) {\n case 'array':\n case 'group':\n traverseFields({\n clientSchemaMap,\n config,\n fields: field.fields,\n i18n,\n parentIndexPath: '',\n parentSchemaPath: schemaPath,\n payload,\n schemaMap,\n })\n\n break\n\n case 'blocks':\n ;(field.blockReferences ?? field.blocks).map((_block) => {\n const block =\n typeof _block === 'string'\n ? config.blocksMap\n ? config.blocksMap[_block]\n : config.blocks.find((block) => typeof block !== 'string' && block.slug === _block)\n : _block\n\n const blockSchemaPath = `${schemaPath}.${block.slug}`\n\n clientSchemaMap.set(blockSchemaPath, block)\n traverseFields({\n clientSchemaMap,\n config,\n fields: block.fields,\n i18n,\n parentIndexPath: '',\n parentSchemaPath: blockSchemaPath,\n payload,\n schemaMap,\n })\n })\n\n break\n case 'collapsible':\n case 'row':\n traverseFields({\n clientSchemaMap,\n config,\n fields: field.fields,\n i18n,\n parentIndexPath: indexPath,\n parentSchemaPath,\n payload,\n schemaMap,\n })\n break\n\n case 'richText': {\n // richText sub-fields are not part of the ClientConfig or the Config.\n // They only exist in the field schema map.\n // Thus, we need to\n // 1. get them from the field schema map\n // 2. convert them to client fields\n // 3. add them to the client schema map\n\n // So these would basically be all fields that are not part of the client config already\n const richTextFieldSchemaMap: FieldSchemaMap = new Map()\n for (const [path, subField] of schemaMap.entries()) {\n if (path.startsWith(`${schemaPath}.`)) {\n richTextFieldSchemaMap.set(path, subField)\n }\n }\n\n // Now loop through them, convert each entry to a client field and add it to the client schema map\n for (const [path, subField] of richTextFieldSchemaMap.entries()) {\n // check if fields is the only key in the subField object\n const isFieldsOnly = Object.keys(subField).length === 1 && 'fields' in subField\n\n const clientFields = createClientFields({\n defaultIDType: payload.config.db.defaultIDType,\n disableAddingID: true,\n fields: isFieldsOnly ? subField.fields : [subField as Field],\n i18n,\n importMap: payload.importMap,\n })\n\n clientSchemaMap.set(\n path,\n isFieldsOnly\n ? {\n fields: clientFields,\n }\n : clientFields[0],\n )\n }\n break\n }\n\n case 'tabs':\n field.tabs.map((tab, tabIndex) => {\n const isNamedTab = tabHasName(tab)\n\n const { indexPath: tabIndexPath, schemaPath: tabSchemaPath } = getFieldPaths({\n field: {\n ...tab,\n type: 'tab',\n },\n index: tabIndex,\n parentIndexPath: indexPath,\n parentPath: '',\n parentSchemaPath,\n })\n\n clientSchemaMap.set(tabSchemaPath, tab)\n\n traverseFields({\n clientSchemaMap,\n config,\n fields: tab.fields,\n i18n,\n parentIndexPath: isNamedTab ? '' : tabIndexPath,\n parentSchemaPath: isNamedTab ? tabSchemaPath : parentSchemaPath,\n payload,\n schemaMap,\n })\n })\n\n break\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAKrE,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,cAAc,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,4EAOxB,IAAI,
|
|
1
|
+
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAKrE,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,SAAS,EAAE,cAAc,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,cAAc,4EAOxB,IAAI,SA8GN,CAAA"}
|
|
@@ -33,7 +33,10 @@ export const traverseFields = ({
|
|
|
33
33
|
});
|
|
34
34
|
break;
|
|
35
35
|
case 'blocks':
|
|
36
|
-
|
|
36
|
+
;
|
|
37
|
+
(field.blockReferences ?? field.blocks).map(_block => {
|
|
38
|
+
// TODO: iterate over blocks mapped to block slug in v4, or pass through payload.blocks
|
|
39
|
+
const block = typeof _block === 'string' ? config.blocks.find(b => b.slug === _block) : _block;
|
|
37
40
|
const blockSchemaPath = `${schemaPath}.${block.slug}`;
|
|
38
41
|
schemaMap.set(blockSchemaPath, block);
|
|
39
42
|
traverseFields({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.js","names":["MissingEditorProp","getFieldPaths","tabHasName","traverseFields","config","fields","i18n","parentIndexPath","parentSchemaPath","schemaMap","index","field","entries","indexPath","schemaPath","parentPath","set","type","blocks","map","block","
|
|
1
|
+
{"version":3,"file":"traverseFields.js","names":["MissingEditorProp","getFieldPaths","tabHasName","traverseFields","config","fields","i18n","parentIndexPath","parentSchemaPath","schemaMap","index","field","entries","indexPath","schemaPath","parentPath","set","type","blockReferences","blocks","map","_block","block","find","b","slug","blockSchemaPath","editor","Error","generateSchemaMap","tabs","tab","tabIndex","isNamedTab","tabIndexPath","tabSchemaPath"],"sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Field, FieldSchemaMap, SanitizedConfig } from 'payload'\n\nimport { MissingEditorProp } from 'payload'\nimport { getFieldPaths, tabHasName } from 'payload/shared'\n\ntype Args = {\n config: SanitizedConfig\n fields: Field[]\n i18n: I18n<any, any>\n parentIndexPath: string\n parentSchemaPath: string\n schemaMap: FieldSchemaMap\n}\n\nexport const traverseFields = ({\n config,\n fields,\n i18n,\n parentIndexPath,\n parentSchemaPath,\n schemaMap,\n}: Args) => {\n for (const [index, field] of fields.entries()) {\n const { indexPath, schemaPath } = getFieldPaths({\n field,\n index,\n parentIndexPath: 'name' in field ? '' : parentIndexPath,\n parentPath: '',\n parentSchemaPath,\n })\n\n schemaMap.set(schemaPath, field)\n\n switch (field.type) {\n case 'array':\n case 'group':\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n parentIndexPath: '',\n parentSchemaPath: schemaPath,\n schemaMap,\n })\n\n break\n\n case 'blocks':\n ;(field.blockReferences ?? field.blocks).map((_block) => {\n // TODO: iterate over blocks mapped to block slug in v4, or pass through payload.blocks\n const block =\n typeof _block === 'string' ? config.blocks.find((b) => b.slug === _block) : _block\n\n const blockSchemaPath = `${schemaPath}.${block.slug}`\n\n schemaMap.set(blockSchemaPath, block)\n traverseFields({\n config,\n fields: block.fields,\n i18n,\n parentIndexPath: '',\n parentSchemaPath: blockSchemaPath,\n schemaMap,\n })\n })\n\n break\n case 'collapsible':\n case 'row':\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n parentIndexPath: indexPath,\n parentSchemaPath,\n schemaMap,\n })\n\n break\n\n case 'richText':\n if (!field?.editor) {\n throw new MissingEditorProp(field) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof field.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (typeof field.editor.generateSchemaMap === 'function') {\n field.editor.generateSchemaMap({\n config,\n field,\n i18n,\n schemaMap,\n schemaPath,\n })\n }\n\n break\n\n case 'tabs':\n field.tabs.map((tab, tabIndex) => {\n const isNamedTab = tabHasName(tab)\n\n const { indexPath: tabIndexPath, schemaPath: tabSchemaPath } = getFieldPaths({\n field: {\n ...tab,\n type: 'tab',\n },\n index: tabIndex,\n parentIndexPath: indexPath,\n parentPath: '',\n parentSchemaPath,\n })\n\n schemaMap.set(tabSchemaPath, tab)\n\n traverseFields({\n config,\n fields: tab.fields,\n i18n,\n parentIndexPath: isNamedTab ? '' : tabIndexPath,\n parentSchemaPath: isNamedTab ? tabSchemaPath : parentSchemaPath,\n schemaMap,\n })\n })\n\n break\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyDataFromLocale.d.ts","sourceRoot":"","sources":["../../src/utilities/copyDataFromLocale.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"copyDataFromLocale.d.ts","sourceRoot":"","sources":["../../src/utilities/copyDataFromLocale.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,EAKnB,KAAK,cAAc,EACpB,MAAM,SAAS,CAAA;AAMhB,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAyID,eAAO,MAAM,yBAAyB,SAAgB,sBAAsB,0EAiB3E,CAAA;AAED,eAAO,MAAM,kBAAkB,SAAgB,sBAAsB,0CAsHpE,CAAA"}
|
|
@@ -2,7 +2,7 @@ import ObjectIdImport from 'bson-objectid';
|
|
|
2
2
|
import { formatErrors } from 'payload';
|
|
3
3
|
import { fieldAffectsData, tabHasName } from 'payload/shared';
|
|
4
4
|
const ObjectId = ObjectIdImport.default || ObjectIdImport;
|
|
5
|
-
function iterateFields(fields, fromLocaleData, toLocaleData) {
|
|
5
|
+
function iterateFields(fields, fromLocaleData, toLocaleData, req) {
|
|
6
6
|
fields.map(field => {
|
|
7
7
|
if (fieldAffectsData(field)) {
|
|
8
8
|
switch (field.type) {
|
|
@@ -22,7 +22,7 @@ function iterateFields(fields, fromLocaleData, toLocaleData) {
|
|
|
22
22
|
if (field.localized) {
|
|
23
23
|
toLocaleData[field.name][index].id = new ObjectId().toHexString();
|
|
24
24
|
}
|
|
25
|
-
iterateFields(field.fields, fromLocaleData[field.name][index], item);
|
|
25
|
+
iterateFields(field.fields, fromLocaleData[field.name][index], item, req);
|
|
26
26
|
}
|
|
27
27
|
});
|
|
28
28
|
}
|
|
@@ -38,15 +38,13 @@ function iterateFields(fields, fromLocaleData, toLocaleData) {
|
|
|
38
38
|
// if the field has a value - loop over the data from target
|
|
39
39
|
if (field.name in toLocaleData) {
|
|
40
40
|
toLocaleData[field.name].map((blockData, index) => {
|
|
41
|
-
const
|
|
42
|
-
slug
|
|
43
|
-
}) => slug === blockData.blockType)?.fields;
|
|
41
|
+
const block = req.payload.blocks[blockData.blockType] ?? (field.blockReferences ?? field.blocks).find(block => typeof block !== 'string' && block.slug === blockData.blockType);
|
|
44
42
|
// Generate new IDs if the field is localized to prevent errors with relational DBs.
|
|
45
43
|
if (field.localized) {
|
|
46
44
|
toLocaleData[field.name][index].id = new ObjectId().toHexString();
|
|
47
45
|
}
|
|
48
|
-
if (
|
|
49
|
-
iterateFields(
|
|
46
|
+
if (block?.fields?.length) {
|
|
47
|
+
iterateFields(block?.fields, fromLocaleData[field.name][index], blockData, req);
|
|
50
48
|
}
|
|
51
49
|
});
|
|
52
50
|
}
|
|
@@ -74,7 +72,7 @@ function iterateFields(fields, fromLocaleData, toLocaleData) {
|
|
|
74
72
|
case 'group':
|
|
75
73
|
{
|
|
76
74
|
if (field.name in toLocaleData && fromLocaleData?.[field.name] !== undefined) {
|
|
77
|
-
iterateFields(field.fields, fromLocaleData[field.name], toLocaleData[field.name]);
|
|
75
|
+
iterateFields(field.fields, fromLocaleData[field.name], toLocaleData[field.name], req);
|
|
78
76
|
}
|
|
79
77
|
break;
|
|
80
78
|
}
|
|
@@ -83,16 +81,16 @@ function iterateFields(fields, fromLocaleData, toLocaleData) {
|
|
|
83
81
|
switch (field.type) {
|
|
84
82
|
case 'collapsible':
|
|
85
83
|
case 'row':
|
|
86
|
-
iterateFields(field.fields, fromLocaleData, toLocaleData);
|
|
84
|
+
iterateFields(field.fields, fromLocaleData, toLocaleData, req);
|
|
87
85
|
break;
|
|
88
86
|
case 'tabs':
|
|
89
87
|
field.tabs.map(tab => {
|
|
90
88
|
if (tabHasName(tab)) {
|
|
91
89
|
if (tab.name in toLocaleData && fromLocaleData?.[tab.name] !== undefined) {
|
|
92
|
-
iterateFields(tab.fields, fromLocaleData[tab.name], toLocaleData[tab.name]);
|
|
90
|
+
iterateFields(tab.fields, fromLocaleData[tab.name], toLocaleData[tab.name], req);
|
|
93
91
|
}
|
|
94
92
|
} else {
|
|
95
|
-
iterateFields(tab.fields, fromLocaleData, toLocaleData);
|
|
93
|
+
iterateFields(tab.fields, fromLocaleData, toLocaleData, req);
|
|
96
94
|
}
|
|
97
95
|
});
|
|
98
96
|
break;
|
|
@@ -100,8 +98,8 @@ function iterateFields(fields, fromLocaleData, toLocaleData) {
|
|
|
100
98
|
}
|
|
101
99
|
});
|
|
102
100
|
}
|
|
103
|
-
function mergeData(fromLocaleData, toLocaleData, fields) {
|
|
104
|
-
iterateFields(fields, fromLocaleData, toLocaleData);
|
|
101
|
+
function mergeData(fromLocaleData, toLocaleData, fields, req) {
|
|
102
|
+
iterateFields(fields, fromLocaleData, toLocaleData, req);
|
|
105
103
|
return toLocaleData;
|
|
106
104
|
}
|
|
107
105
|
export const copyDataFromLocaleHandler = async args => {
|
|
@@ -194,7 +192,7 @@ export const copyDataFromLocale = async args => {
|
|
|
194
192
|
}
|
|
195
193
|
return globalSlug ? await payload.updateGlobal({
|
|
196
194
|
slug: globalSlug,
|
|
197
|
-
data: overrideData ? fromLocaleData.value : mergeData(fromLocaleData.value, toLocaleData.value, globals[globalSlug].config.fields),
|
|
195
|
+
data: overrideData ? fromLocaleData.value : mergeData(fromLocaleData.value, toLocaleData.value, globals[globalSlug].config.fields, req),
|
|
198
196
|
locale: toLocale,
|
|
199
197
|
overrideAccess: false,
|
|
200
198
|
req,
|
|
@@ -202,7 +200,7 @@ export const copyDataFromLocale = async args => {
|
|
|
202
200
|
}) : await payload.update({
|
|
203
201
|
id: docID,
|
|
204
202
|
collection: collectionSlug,
|
|
205
|
-
data: overrideData ? fromLocaleData.value : mergeData(fromLocaleData.value, toLocaleData.value, collections[collectionSlug].config.fields),
|
|
203
|
+
data: overrideData ? fromLocaleData.value : mergeData(fromLocaleData.value, toLocaleData.value, collections[collectionSlug].config.fields, req),
|
|
206
204
|
locale: toLocale,
|
|
207
205
|
overrideAccess: false,
|
|
208
206
|
req,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copyDataFromLocale.js","names":["ObjectIdImport","formatErrors","fieldAffectsData","tabHasName","ObjectId","default","iterateFields","fields","fromLocaleData","toLocaleData","map","field","type","name","undefined","includes","item","index","localized","id","toHexString","blockData","blockFields","blocks","find","slug","blockType","length","tabs","tab","mergeData","copyDataFromLocaleHandler","args","req","copyDataFromLocale","err","payload","logger","error","msg","fromLocale","toLocale","message","collectionSlug","docID","globalSlug","overrideData","collections","globals","user","incomingUserSlug","collection","adminUserSlug","config","admin","adminAccessFunction","access","canAccessAdmin","Error","Promise","allSettled","findGlobal","depth","locale","overrideAccess","findByID","joins","status","updateGlobal","data","value","update"],"sources":["../../src/utilities/copyDataFromLocale.ts"],"sourcesContent":["import ObjectIdImport from 'bson-objectid'\nimport {\n type CollectionSlug,\n type Data,\n type Field,\n formatErrors,\n type PayloadRequest,\n} from 'payload'\nimport { fieldAffectsData, tabHasName } from 'payload/shared'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\nexport type CopyDataFromLocaleArgs = {\n collectionSlug?: CollectionSlug\n docID?: number | string\n fromLocale: string\n globalSlug?: string\n overrideData?: boolean\n req: PayloadRequest\n toLocale: string\n}\n\nfunction iterateFields(fields: Field[], fromLocaleData: Data, toLocaleData: Data): void {\n fields.map((field) => {\n if (fieldAffectsData(field)) {\n switch (field.type) {\n case 'array':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((item: Data, index: number) => {\n if (fromLocaleData[field.name]?.[index]) {\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (field.localized) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n iterateFields(field.fields, fromLocaleData[field.name][index], item)\n }\n })\n }\n break\n\n case 'blocks':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((blockData: Data, index: number) => {\n const blockFields = field.blocks.find(\n ({ slug }) => slug === blockData.blockType,\n )?.fields\n\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (field.localized) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n if (blockFields?.length) {\n iterateFields(blockFields, fromLocaleData[field.name][index], blockData)\n }\n })\n }\n\n break\n\n case 'checkbox':\n case 'code':\n case 'date':\n case 'email':\n case 'json':\n case 'number':\n case 'point':\n case 'radio':\n case 'relationship':\n case 'richText':\n case 'select':\n case 'text':\n case 'textarea':\n case 'upload':\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n }\n break\n\n case 'group': {\n if (field.name in toLocaleData && fromLocaleData?.[field.name] !== undefined) {\n iterateFields(field.fields, fromLocaleData[field.name], toLocaleData[field.name])\n }\n break\n }\n }\n } else {\n switch (field.type) {\n case 'collapsible':\n case 'row':\n iterateFields(field.fields, fromLocaleData, toLocaleData)\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n if (tabHasName(tab)) {\n if (tab.name in toLocaleData && fromLocaleData?.[tab.name] !== undefined) {\n iterateFields(tab.fields, fromLocaleData[tab.name], toLocaleData[tab.name])\n }\n } else {\n iterateFields(tab.fields, fromLocaleData, toLocaleData)\n }\n })\n break\n }\n }\n })\n}\n\nfunction mergeData(fromLocaleData: Data, toLocaleData: Data, fields: Field[]): Data {\n iterateFields(fields, fromLocaleData, toLocaleData)\n\n return toLocaleData\n}\n\nexport const copyDataFromLocaleHandler = async (args: CopyDataFromLocaleArgs) => {\n const { req } = args\n\n try {\n return await copyDataFromLocale(args)\n } catch (err) {\n req.payload.logger.error({\n err,\n msg: `There was an error copying data from \"${args.fromLocale}\" to \"${args.toLocale}\"`,\n })\n\n if (err.message === 'Unauthorized') {\n return null\n }\n\n return formatErrors(err)\n }\n}\n\nexport const copyDataFromLocale = async (args: CopyDataFromLocaleArgs) => {\n const {\n collectionSlug,\n docID,\n fromLocale,\n globalSlug,\n overrideData = false,\n req: {\n payload,\n payload: { collections, globals },\n user,\n },\n req,\n toLocale,\n } = args\n\n const incomingUserSlug = user?.collection\n\n const adminUserSlug = payload.config.admin.user\n\n // If we have a user slug, test it against the functions\n if (incomingUserSlug) {\n const adminAccessFunction = payload.collections[incomingUserSlug].config.access?.admin\n\n // Run the admin access function from the config if it exists\n if (adminAccessFunction) {\n const canAccessAdmin = await adminAccessFunction({ req: args.req })\n\n if (!canAccessAdmin) {\n throw new Error('Unauthorized')\n }\n // Match the user collection to the global admin config\n } else if (adminUserSlug !== incomingUserSlug) {\n throw new Error('Unauthorized')\n }\n }\n\n const [fromLocaleData, toLocaleData] = await Promise.allSettled([\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n ])\n\n if (fromLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${fromLocale}\"`)\n }\n\n if (toLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${toLocale}\"`)\n }\n\n return globalSlug\n ? await payload.updateGlobal({\n slug: globalSlug,\n data: overrideData\n ? fromLocaleData.value\n : mergeData(fromLocaleData.value, toLocaleData.value, globals[globalSlug].config.fields),\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n : await payload.update({\n id: docID,\n collection: collectionSlug,\n data: overrideData\n ? fromLocaleData.value\n : mergeData(\n fromLocaleData.value,\n toLocaleData.value,\n collections[collectionSlug].config.fields,\n ),\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"copyDataFromLocale.js","names":["ObjectIdImport","formatErrors","fieldAffectsData","tabHasName","ObjectId","default","iterateFields","fields","fromLocaleData","toLocaleData","req","map","field","type","name","undefined","includes","item","index","localized","id","toHexString","blockData","block","payload","blocks","blockType","blockReferences","find","slug","length","tabs","tab","mergeData","copyDataFromLocaleHandler","args","copyDataFromLocale","err","logger","error","msg","fromLocale","toLocale","message","collectionSlug","docID","globalSlug","overrideData","collections","globals","user","incomingUserSlug","collection","adminUserSlug","config","admin","adminAccessFunction","access","canAccessAdmin","Error","Promise","allSettled","findGlobal","depth","locale","overrideAccess","findByID","joins","status","updateGlobal","data","value","update"],"sources":["../../src/utilities/copyDataFromLocale.ts"],"sourcesContent":["import ObjectIdImport from 'bson-objectid'\nimport {\n type CollectionSlug,\n type Data,\n type Field,\n type FlattenedBlock,\n formatErrors,\n type PayloadRequest,\n} from 'payload'\nimport { fieldAffectsData, tabHasName } from 'payload/shared'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\nexport type CopyDataFromLocaleArgs = {\n collectionSlug?: CollectionSlug\n docID?: number | string\n fromLocale: string\n globalSlug?: string\n overrideData?: boolean\n req: PayloadRequest\n toLocale: string\n}\n\nfunction iterateFields(\n fields: Field[],\n fromLocaleData: Data,\n toLocaleData: Data,\n req: PayloadRequest,\n): void {\n fields.map((field) => {\n if (fieldAffectsData(field)) {\n switch (field.type) {\n case 'array':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((item: Data, index: number) => {\n if (fromLocaleData[field.name]?.[index]) {\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (field.localized) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n iterateFields(field.fields, fromLocaleData[field.name][index], item, req)\n }\n })\n }\n break\n\n case 'blocks':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((blockData: Data, index: number) => {\n const block =\n req.payload.blocks[blockData.blockType] ??\n ((field.blockReferences ?? field.blocks).find(\n (block) => typeof block !== 'string' && block.slug === blockData.blockType,\n ) as FlattenedBlock | undefined)\n\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (field.localized) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n if (block?.fields?.length) {\n iterateFields(block?.fields, fromLocaleData[field.name][index], blockData, req)\n }\n })\n }\n\n break\n\n case 'checkbox':\n case 'code':\n case 'date':\n case 'email':\n case 'json':\n case 'number':\n case 'point':\n case 'radio':\n case 'relationship':\n case 'richText':\n case 'select':\n case 'text':\n case 'textarea':\n case 'upload':\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n }\n break\n\n case 'group': {\n if (field.name in toLocaleData && fromLocaleData?.[field.name] !== undefined) {\n iterateFields(field.fields, fromLocaleData[field.name], toLocaleData[field.name], req)\n }\n break\n }\n }\n } else {\n switch (field.type) {\n case 'collapsible':\n case 'row':\n iterateFields(field.fields, fromLocaleData, toLocaleData, req)\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n if (tabHasName(tab)) {\n if (tab.name in toLocaleData && fromLocaleData?.[tab.name] !== undefined) {\n iterateFields(tab.fields, fromLocaleData[tab.name], toLocaleData[tab.name], req)\n }\n } else {\n iterateFields(tab.fields, fromLocaleData, toLocaleData, req)\n }\n })\n break\n }\n }\n })\n}\n\nfunction mergeData(\n fromLocaleData: Data,\n toLocaleData: Data,\n fields: Field[],\n req: PayloadRequest,\n): Data {\n iterateFields(fields, fromLocaleData, toLocaleData, req)\n\n return toLocaleData\n}\n\nexport const copyDataFromLocaleHandler = async (args: CopyDataFromLocaleArgs) => {\n const { req } = args\n\n try {\n return await copyDataFromLocale(args)\n } catch (err) {\n req.payload.logger.error({\n err,\n msg: `There was an error copying data from \"${args.fromLocale}\" to \"${args.toLocale}\"`,\n })\n\n if (err.message === 'Unauthorized') {\n return null\n }\n\n return formatErrors(err)\n }\n}\n\nexport const copyDataFromLocale = async (args: CopyDataFromLocaleArgs) => {\n const {\n collectionSlug,\n docID,\n fromLocale,\n globalSlug,\n overrideData = false,\n req: {\n payload,\n payload: { collections, globals },\n user,\n },\n req,\n toLocale,\n } = args\n\n const incomingUserSlug = user?.collection\n\n const adminUserSlug = payload.config.admin.user\n\n // If we have a user slug, test it against the functions\n if (incomingUserSlug) {\n const adminAccessFunction = payload.collections[incomingUserSlug].config.access?.admin\n\n // Run the admin access function from the config if it exists\n if (adminAccessFunction) {\n const canAccessAdmin = await adminAccessFunction({ req: args.req })\n\n if (!canAccessAdmin) {\n throw new Error('Unauthorized')\n }\n // Match the user collection to the global admin config\n } else if (adminUserSlug !== incomingUserSlug) {\n throw new Error('Unauthorized')\n }\n }\n\n const [fromLocaleData, toLocaleData] = await Promise.allSettled([\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n ])\n\n if (fromLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${fromLocale}\"`)\n }\n\n if (toLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${toLocale}\"`)\n }\n\n return globalSlug\n ? await payload.updateGlobal({\n slug: globalSlug,\n data: overrideData\n ? fromLocaleData.value\n : mergeData(\n fromLocaleData.value,\n toLocaleData.value,\n globals[globalSlug].config.fields,\n req,\n ),\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n : await payload.update({\n id: docID,\n collection: collectionSlug,\n data: overrideData\n ? fromLocaleData.value\n : mergeData(\n fromLocaleData.value,\n toLocaleData.value,\n collections[collectionSlug].config.fields,\n req,\n ),\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getClientConfig.js","names":["createClientConfig","cache","cachedClientConfig","global","_payload_clientConfig","getClientConfig","args","_payload_doNotCacheClientConfig","config","i18n","importMap"],"sources":["../../src/utilities/getClientConfig.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ClientConfig, ImportMap, SanitizedConfig } from 'payload'\n\nimport { createClientConfig } from 'payload'\nimport { cache } from 'react'\n\nlet cachedClientConfig = global._payload_clientConfig\n\nif (!cachedClientConfig) {\n cachedClientConfig = global._payload_clientConfig = null\n}\n\nexport const getClientConfig = cache(\n (args: { config: SanitizedConfig; i18n: I18nClient; importMap: ImportMap }): ClientConfig => {\n if (cachedClientConfig && !global._payload_doNotCacheClientConfig) {\n return cachedClientConfig\n }\n\n const { config, i18n, importMap } = args\n\n cachedClientConfig = createClientConfig({\n config,\n i18n,\n importMap,\n })\n\n global._payload_clientConfig = cachedClientConfig\n\n global._payload_doNotCacheClientConfig = false\n\n return cachedClientConfig\n },\n)\n"],"mappings":"AAGA,SAASA,kBAAkB,QAAQ;AACnC,SAASC,KAAK,QAAQ;AAEtB,IAAIC,kBAAA,
|
|
1
|
+
{"version":3,"file":"getClientConfig.js","names":["createClientConfig","cache","cachedClientConfig","global","_payload_clientConfig","getClientConfig","args","_payload_doNotCacheClientConfig","config","i18n","importMap"],"sources":["../../src/utilities/getClientConfig.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ClientConfig, ImportMap, SanitizedConfig } from 'payload'\n\nimport { createClientConfig } from 'payload'\nimport { cache } from 'react'\n\nlet cachedClientConfig: ClientConfig | null = global._payload_clientConfig\n\nif (!cachedClientConfig) {\n cachedClientConfig = global._payload_clientConfig = null\n}\n\nexport const getClientConfig = cache(\n (args: { config: SanitizedConfig; i18n: I18nClient; importMap: ImportMap }): ClientConfig => {\n if (cachedClientConfig && !global._payload_doNotCacheClientConfig) {\n return cachedClientConfig\n }\n\n const { config, i18n, importMap } = args\n\n cachedClientConfig = createClientConfig({\n config,\n i18n,\n importMap,\n })\n\n global._payload_clientConfig = cachedClientConfig\n\n global._payload_doNotCacheClientConfig = false\n\n return cachedClientConfig\n },\n)\n"],"mappings":"AAGA,SAASA,kBAAkB,QAAQ;AACnC,SAASC,KAAK,QAAQ;AAEtB,IAAIC,kBAAA,GAA0CC,MAAA,CAAOC,qBAAqB;AAE1E,IAAI,CAACF,kBAAA,EAAoB;EACvBA,kBAAA,GAAqBC,MAAA,CAAOC,qBAAqB,GAAG;AACtD;AAEA,OAAO,MAAMC,eAAA,GAAkBJ,KAAA,CAC5BK,IAAA;EACC,IAAIJ,kBAAA,IAAsB,CAACC,MAAA,CAAOI,+BAA+B,EAAE;IACjE,OAAOL,kBAAA;EACT;EAEA,MAAM;IAAEM,MAAM;IAAEC,IAAI;IAAEC;EAAS,CAAE,GAAGJ,IAAA;EAEpCJ,kBAAA,GAAqBF,kBAAA,CAAmB;IACtCQ,MAAA;IACAC,IAAA;IACAC;EACF;EAEAP,MAAA,CAAOC,qBAAqB,GAAGF,kBAAA;EAE/BC,MAAA,CAAOI,+BAA+B,GAAG;EAEzC,OAAOL,kBAAA;AACT","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/ui",
|
|
3
|
-
"version": "3.23.0-canary.
|
|
3
|
+
"version": "3.23.0-canary.f63b80a",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
"ts-essentials": "10.0.3",
|
|
133
133
|
"use-context-selector": "2.0.0",
|
|
134
134
|
"uuid": "10.0.0",
|
|
135
|
-
"@payloadcms/translations": "3.23.0-canary.
|
|
135
|
+
"@payloadcms/translations": "3.23.0-canary.f63b80a"
|
|
136
136
|
},
|
|
137
137
|
"devDependencies": {
|
|
138
138
|
"@babel/cli": "7.26.4",
|
|
@@ -149,13 +149,13 @@
|
|
|
149
149
|
"esbuild-sass-plugin": "3.3.1",
|
|
150
150
|
"eslint-plugin-react-compiler": "19.0.0-beta-714736e-20250131",
|
|
151
151
|
"@payloadcms/eslint-config": "3.9.0",
|
|
152
|
-
"payload": "3.23.0-canary.
|
|
152
|
+
"payload": "3.23.0-canary.f63b80a"
|
|
153
153
|
},
|
|
154
154
|
"peerDependencies": {
|
|
155
155
|
"next": "^15.0.0",
|
|
156
156
|
"react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
157
157
|
"react-dom": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
158
|
-
"payload": "3.23.0-canary.
|
|
158
|
+
"payload": "3.23.0-canary.f63b80a"
|
|
159
159
|
},
|
|
160
160
|
"engines": {
|
|
161
161
|
"node": "^18.20.2 || >=20.9.0"
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
// Workaround for react-datepicker and other cjs dependencies potentially inserting require("react") statements
|
|
3
|
-
import * as requireReact from 'react';
|
|
4
|
-
import * as requireReactDom from 'react-dom';
|
|
5
|
-
|
|
6
|
-
function require(m) {
|
|
7
|
-
if (m === 'react') return requireReact;
|
|
8
|
-
if (m === 'react-dom') return requireReactDom;
|
|
9
|
-
throw new Error(`Unknown module ${m}`);
|
|
10
|
-
}
|
|
11
|
-
// Workaround end
|
|
12
|
-
|
|
13
|
-
import{c as Sr}from"react/compiler-runtime";import{jsx as Be}from"react/jsx-runtime";function Ue(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function se(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function re(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?se(Object(r),!0).forEach(function(n){Ue(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):se(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function qe(t,e){if(t==null)return{};var r={},n=Object.keys(t),o,i;for(i=0;i<n.length;i++)o=n[i],!(e.indexOf(o)>=0)&&(r[o]=t[o]);return r}function de(t,e){if(t==null)return{};var r=qe(t,e),n,o;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o<i.length;o++)n=i[o],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function me(t,e){return Fe(t)||Ke(t,e)||Ge(t,e)||Ye()}function Fe(t){if(Array.isArray(t))return t}function Ke(t,e){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(t)))){var r=[],n=!0,o=!1,i=void 0;try{for(var c=t[Symbol.iterator](),a;!(n=(a=c.next()).done)&&(r.push(a.value),!(e&&r.length===e));n=!0);}catch(u){o=!0,i=u}finally{try{!n&&c.return!=null&&c.return()}finally{if(o)throw i}}return r}}function Ge(t,e){if(t){if(typeof t=="string")return fe(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set")return Array.from(t);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fe(t,e)}}function fe(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function Ye(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
14
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Je(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function pe(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function ge(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?pe(Object(r),!0).forEach(function(n){Je(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):pe(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Qe(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return function(n){return e.reduceRight(function(o,i){return i(o)},n)}}function W(t){return function e(){for(var r=this,n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return o.length>=t.length?t.apply(this,o):function(){for(var c=arguments.length,a=new Array(c),u=0;u<c;u++)a[u]=arguments[u];return e.apply(r,[].concat(o,a))}}}function G(t){return{}.toString.call(t).includes("Object")}function Xe(t){return!Object.keys(t).length}function H(t){return typeof t=="function"}function Ze(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function et(t,e){return G(e)||A("changeType"),Object.keys(e).some(function(r){return!Ze(t,r)})&&A("changeField"),e}function tt(t){H(t)||A("selectorType")}function rt(t){H(t)||G(t)||A("handlerType"),G(t)&&Object.values(t).some(function(e){return!H(e)})&&A("handlersType")}function nt(t){t||A("initialIsRequired"),G(t)||A("initialType"),Xe(t)&&A("initialContent")}function ot(t,e){throw new Error(t[e]||t.default)}var it={initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"},A=W(ot)(it),K={changes:et,selector:tt,handler:rt,initial:nt};function at(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};K.initial(t),K.handler(e);var r={current:t},n=W(lt)(r,e),o=W(ut)(r),i=W(K.changes)(t),c=W(ct)(r);function a(){var l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(m){return m};return K.selector(l),l(r.current)}function u(l){Qe(n,o,i,c)(l)}return[a,u]}function ct(t,e){return H(e)?e(t.current):e}function ut(t,e){return t.current=ge(ge({},t.current),e),e}function lt(t,e,r){return H(e)?e(t.current):Object.keys(r).forEach(function(n){var o;return(o=e[n])===null||o===void 0?void 0:o.call(e,t.current[n])}),r}var st={create:at},he=st;var ft={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs"}},ve=ft;function dt(t){return function e(){for(var r=this,n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return o.length>=t.length?t.apply(this,o):function(){for(var c=arguments.length,a=new Array(c),u=0;u<c;u++)a[u]=arguments[u];return e.apply(r,[].concat(o,a))}}}var ye=dt;function mt(t){return{}.toString.call(t).includes("Object")}var be=mt;function pt(t){return t||we("configIsRequired"),be(t)||we("configType"),t.urls?(gt(),{paths:{vs:t.urls.monacoBase}}):t}function gt(){console.warn(Oe.deprecation)}function ht(t,e){throw new Error(t[e]||t.default)}var Oe={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:`Deprecation warning!
|
|
15
|
-
You are using deprecated way of configuration.
|
|
16
|
-
|
|
17
|
-
Instead of using
|
|
18
|
-
monaco.config({ urls: { monacoBase: '...' } })
|
|
19
|
-
use
|
|
20
|
-
monaco.config({ paths: { vs: '...' } })
|
|
21
|
-
|
|
22
|
-
For more please check the link https://github.com/suren-atoyan/monaco-loader#config
|
|
23
|
-
`},we=ye(ht)(Oe),vt={config:pt},je=vt;var yt=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return function(o){return r.reduceRight(function(i,c){return c(i)},o)}},Me=yt;function Se(t,e){return Object.keys(e).forEach(function(r){e[r]instanceof Object&&t[r]&&Object.assign(e[r],Se(t[r],e[r]))}),re(re({},t),e)}var xe=Se;var bt={type:"cancelation",msg:"operation is manually canceled"};function wt(t){var e=!1,r=new Promise(function(n,o){t.then(function(i){return e?o(bt):n(i)}),t.catch(o)});return r.cancel=function(){return e=!0},r}var Y=wt;var Ot=he.create({config:ve,isInitialized:!1,resolve:null,reject:null,monaco:null}),Ce=me(Ot,2),B=Ce[0],J=Ce[1];function jt(t){var e=je.config(t),r=e.monaco,n=de(e,["monaco"]);J(function(o){return{config:xe(o.config,n),monaco:r}})}function Mt(){var t=B(function(e){var r=e.monaco,n=e.isInitialized,o=e.resolve;return{monaco:r,isInitialized:n,resolve:o}});if(!t.isInitialized){if(J({isInitialized:!0}),t.monaco)return t.resolve(t.monaco),Y(ne);if(window.monaco&&window.monaco.editor)return Ee(window.monaco),t.resolve(window.monaco),Y(ne);Me(St,Ct)(Et)}return Y(ne)}function St(t){return document.body.appendChild(t)}function xt(t){var e=document.createElement("script");return t&&(e.src=t),e}function Ct(t){var e=B(function(n){var o=n.config,i=n.reject;return{config:o,reject:i}}),r=xt("".concat(e.config.paths.vs,"/loader.js"));return r.onload=function(){return t()},r.onerror=e.reject,r}function Et(){var t=B(function(r){var n=r.config,o=r.resolve,i=r.reject;return{config:n,resolve:o,reject:i}}),e=window.require;e.config(t.config),e(["vs/editor/editor.main"],function(r){Ee(r),t.resolve(r)},function(r){t.reject(r)})}function Ee(t){B().monaco||J({monaco:t})}function Pt(){return B(function(t){var e=t.monaco;return e})}var ne=new Promise(function(t,e){return J({resolve:t,reject:e})}),Tt={config:jt,init:Mt,__getMonacoInstance:Pt},D=Tt;import{memo as It}from"react";import Rt,{useState as Pe,useRef as _,useCallback as Te,useEffect as Ie}from"react";import{memo as At}from"react";import oe from"react";import Lt from"react";import{useEffect as Bt}from"react";import{useEffect as Ut,useRef as qt}from"react";import{useState as fn}from"react";import{memo as Qt}from"react";import Xt,{useState as Re,useEffect as Q,useRef as I,useCallback as Zt}from"react";import{useEffect as er,useRef as tr}from"react";var Dt={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},ie=Dt,_t={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},kt=_t;function $t({children:t}){return Lt.createElement("div",{style:kt.container},t)}var Nt=$t,Vt=Nt;function Wt({width:t,height:e,isEditorReady:r,loading:n,_ref:o,className:i,wrapperProps:c}){return oe.createElement("section",{style:{...ie.wrapper,width:t,height:e},...c},!r&&oe.createElement(Vt,null,n),oe.createElement("div",{ref:o,style:{...ie.fullWidth,...!r&&ie.hide},className:i}))}var Ht=Wt,Ae=At(Ht);function zt(t){Bt(t,[])}var De=zt;function Ft(t,e,r=!0){let n=qt(!0);Ut(n.current||!r?()=>{n.current=!1}:t,e)}var E=Ft;function z(){}function k(t,e,r,n){return Kt(t,n)||Gt(t,e,r,n)}function Kt(t,e){return t.editor.getModel(Le(t,e))}function Gt(t,e,r,n){return t.editor.createModel(e,r,n?Le(t,n):void 0)}function Le(t,e){return t.Uri.parse(e)}function Yt({original:t,modified:e,language:r,originalLanguage:n,modifiedLanguage:o,originalModelPath:i,modifiedModelPath:c,keepCurrentOriginalModel:a=!1,keepCurrentModifiedModel:u=!1,theme:l="light",loading:m="Loading...",options:s={},height:S="100%",width:v="100%",className:x,wrapperProps:O={},beforeMount:h=z,onMount:C=z}){let[p,P]=Pe(!1),[T,y]=Pe(!0),b=_(null),g=_(null),N=_(null),j=_(C),f=_(h),L=_(!1);De(()=>{let d=D.init();return d.then(w=>(g.current=w)&&y(!1)).catch(w=>w?.type!=="cancelation"&&console.error("Monaco initialization: error:",w)),()=>b.current?V():d.cancel()}),E(()=>{if(b.current&&g.current){let d=b.current.getOriginalEditor(),w=k(g.current,t||"",n||r||"text",i||"");w!==d.getModel()&&d.setModel(w)}},[i],p),E(()=>{if(b.current&&g.current){let d=b.current.getModifiedEditor(),w=k(g.current,e||"",o||r||"text",c||"");w!==d.getModel()&&d.setModel(w)}},[c],p),E(()=>{let d=b.current.getModifiedEditor();d.getOption(g.current.editor.EditorOption.readOnly)?d.setValue(e||""):e!==d.getValue()&&(d.executeEdits("",[{range:d.getModel().getFullModelRange(),text:e||"",forceMoveMarkers:!0}]),d.pushUndoStop())},[e],p),E(()=>{b.current?.getModel()?.original.setValue(t||"")},[t],p),E(()=>{let{original:d,modified:w}=b.current.getModel();g.current.editor.setModelLanguage(d,n||r||"text"),g.current.editor.setModelLanguage(w,o||r||"text")},[r,n,o],p),E(()=>{g.current?.editor.setTheme(l)},[l],p),E(()=>{b.current?.updateOptions(s)},[s],p);let q=Te(()=>{if(!g.current)return;f.current(g.current);let d=k(g.current,t||"",n||r||"text",i||""),w=k(g.current,e||"",o||r||"text",c||"");b.current?.setModel({original:d,modified:w})},[r,e,o,t,n,i,c]),F=Te(()=>{!L.current&&N.current&&(b.current=g.current.editor.createDiffEditor(N.current,{automaticLayout:!0,...s}),q(),g.current?.editor.setTheme(l),P(!0),L.current=!0)},[s,l,q]);Ie(()=>{p&&j.current(b.current,g.current)},[p]),Ie(()=>{!T&&!p&&F()},[T,p,F]);function V(){let d=b.current?.getModel();a||d?.original?.dispose(),u||d?.modified?.dispose(),b.current?.dispose()}return Rt.createElement(Ae,{width:v,height:S,isEditorReady:p,loading:m,_ref:N,className:x,wrapperProps:O})}var Jt=Yt,ln=It(Jt);function rr(t){let e=tr();return er(()=>{e.current=t},[t]),e.current}var nr=rr,X=new Map;function or({defaultValue:t,defaultLanguage:e,defaultPath:r,value:n,language:o,path:i,theme:c="light",line:a,loading:u="Loading...",options:l={},overrideServices:m={},saveViewState:s=!0,keepCurrentModel:S=!1,width:v="100%",height:x="100%",className:O,wrapperProps:h={},beforeMount:C=z,onMount:p=z,onChange:P,onValidate:T=z}){let[y,b]=Re(!1),[g,N]=Re(!0),j=I(null),f=I(null),L=I(null),q=I(p),F=I(C),V=I(),d=I(n),w=nr(i),ue=I(!1),Z=I(!1);De(()=>{let M=D.init();return M.then(R=>(j.current=R)&&N(!1)).catch(R=>R?.type!=="cancelation"&&console.error("Monaco initialization: error:",R)),()=>f.current?ze():M.cancel()}),E(()=>{let M=k(j.current,t||n||"",e||o||"",i||r||"");M!==f.current?.getModel()&&(s&&X.set(w,f.current?.saveViewState()),f.current?.setModel(M),s&&f.current?.restoreViewState(X.get(i)))},[i],y),E(()=>{f.current?.updateOptions(l)},[l],y),E(()=>{!f.current||n===void 0||(f.current.getOption(j.current.editor.EditorOption.readOnly)?f.current.setValue(n):n!==f.current.getValue()&&(Z.current=!0,f.current.executeEdits("",[{range:f.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),f.current.pushUndoStop(),Z.current=!1))},[n],y),E(()=>{let M=f.current?.getModel();M&&o&&j.current?.editor.setModelLanguage(M,o)},[o],y),E(()=>{a!==void 0&&f.current?.revealLine(a)},[a],y),E(()=>{j.current?.editor.setTheme(c)},[c],y);let le=Zt(()=>{if(!(!L.current||!j.current)&&!ue.current){F.current(j.current);let M=i||r,R=k(j.current,n||t||"",e||o||"",M||"");f.current=j.current?.editor.create(L.current,{model:R,automaticLayout:!0,...l},m),s&&f.current.restoreViewState(X.get(M)),j.current.editor.setTheme(c),a!==void 0&&f.current.revealLine(a),b(!0),ue.current=!0}},[t,e,r,n,o,i,l,m,s,c,a]);Q(()=>{y&&q.current(f.current,j.current)},[y]),Q(()=>{!g&&!y&&le()},[g,y,le]),d.current=n,Q(()=>{y&&P&&(V.current?.dispose(),V.current=f.current?.onDidChangeModelContent(M=>{Z.current||P(f.current.getValue(),M)}))},[y,P]),Q(()=>{if(y){let M=j.current.editor.onDidChangeMarkers(R=>{let ee=f.current.getModel()?.uri;if(ee&&R.find(te=>te.path===ee.path)){let te=j.current.editor.getModelMarkers({resource:ee});T?.(te)}});return()=>{M?.dispose()}}return()=>{}},[y,T]);function ze(){V.current?.dispose(),S?s&&X.set(i,f.current.saveViewState()):f.current.getModel()?.dispose(),f.current.dispose()}return Xt.createElement(Ae,{width:v,height:x,isEditorReady:y,loading:u,_ref:L,className:O,wrapperProps:h})}var ir=or,ar=Qt(ir),ae=ar;import{useState as xr}from"react";import{c as pr}from"react/compiler-runtime";import{jsx as gr}from"react/jsx-runtime";import{createContext as hr,useContext as vr,useEffect as yr,useState as $e}from"react";import{jsx as cr}from"react/jsx-runtime";import{createContext as ur,useCallback as lr,useContext as sr,useEffect as fr,useMemo as dr,useState as mr}from"react";var _e=ur(void 0),On=({children:t,config:e})=>{let[r,n]=mr(e);fr(()=>{n(e)},[e]);let{collectionsBySlug:o,globalsBySlug:i}=dr(()=>{let a={},u={};for(let l of r.collections)a[l.slug]=l;for(let l of r.globals)u[l.slug]=l;return{collectionsBySlug:a,globalsBySlug:u}},[r]),c=lr(a=>"collectionSlug"in a?o[a.collectionSlug]??null:"globalSlug"in a?i[a.globalSlug]??null:null,[o,i]);return cr(_e.Provider,{value:{config:r,getEntityConfig:c,setConfig:n},children:t})},ke=()=>sr(_e);var br={autoMode:!0,setTheme:()=>null,theme:"light"},Ve=hr(br);function Ne(t,e,r){let n=new Date;n.setTime(n.getTime()+r*24*60*60*1e3);let o="expires="+n.toUTCString();document.cookie=t+"="+e+";"+o+";path=/"}var wr=t=>{let e,r=window.document.cookie.split("; ").find(n=>n.startsWith(`${t}=`))?.split("=")[1];return r==="light"||r==="dark"?e=r:e=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",document.documentElement.setAttribute("data-theme",e),{theme:e,themeFromCookies:r}},Or="light",Tn=t=>{let e=pr(11),{children:r,theme:n}=t,{config:o}=ke(),i=o.admin.theme,c=`${o.cookiePrefix||"payload"}-theme`,[a,u]=$e(n||Or),[l,m]=$e(),s,S;e[0]!==c||e[1]!==i?(s=()=>{if(i!=="all")return;let{theme:h,themeFromCookies:C}=wr(c);u(h),m(!C)},S=[i,c],e[0]=c,e[1]=i,e[2]=s,e[3]=S):(s=e[2],S=e[3]),yr(s,S);let v;e[4]!==c?(v=h=>{if(h==="light"||h==="dark")u(h),m(!1),Ne(c,h,365),document.documentElement.setAttribute("data-theme",h);else if(h==="auto"){Ne(c,h,-1);let C=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";document.documentElement.setAttribute("data-theme",C),m(!0),u(C)}},e[4]=c,e[5]=v):v=e[5];let x=v,O;return e[6]!==l||e[7]!==r||e[8]!==x||e[9]!==a?(O=gr(Ve.Provider,{value:{autoMode:l,setTheme:x,theme:a},children:r}),e[6]=l,e[7]=r,e[8]=x,e[9]=a,e[10]=O):O=e[10],O},We=()=>vr(Ve);import{c as Mr}from"react/compiler-runtime";import{jsx as U}from"react/jsx-runtime";import"react";import{c as jr}from"react/compiler-runtime";import*as $ from"react";var He=(t,e)=>{let r=jr(9),n=e===void 0?!1:e,[o,i]=$.useState(!1),c=$.useRef(void 0),a;r[0]!==t?(a=()=>(i(!1),clearTimeout(c.current),c.current=setTimeout(()=>{i(!0)},t),()=>{clearTimeout(c.current)}),r[0]=t,r[1]=a):a=r[1];let u=a,l,m;r[2]!==u||r[3]!==n?(l=()=>{n&&u()},m=[u,n],r[2]=u,r[3]=n,r[4]=l,r[5]=m):(l=r[4],m=r[5]),$.useEffect(l,m);let s;return r[6]!==o||r[7]!==u?(s=[o,u],r[6]=o,r[7]=u,r[8]=s):s=r[8],s};var ce=({animationDelay:t="0ms",height:e="60px",width:r="100%"})=>U("div",{className:"shimmer-effect",style:{height:typeof e=="number"?`${e}px`:e,width:typeof r=="number"?`${r}px`:r},children:U("div",{className:"shimmer-effect__shine",style:{animationDelay:t}})}),$n=t=>{let e=Mr(7),{className:r,count:n,height:o,renderDelay:i,shimmerDelay:c,shimmerItemClassName:a,width:u}=t,l=i===void 0?500:i,m=c===void 0?25:c,s=typeof m=="number"?`${m}ms`:m,[S]=He(l,!0);if(!S)return null;let v;return e[0]!==r||e[1]!==n||e[2]!==o||e[3]!==s||e[4]!==a||e[5]!==u?(v=U("div",{className:r,children:[...Array(n)].map((x,O)=>U("div",{className:a,children:U(ce,{animationDelay:`calc(${O} * ${s})`,height:o,width:u})},O))}),e[0]=r,e[1]=n,e[2]=o,e[3]=s,e[4]=a,e[5]=u,e[6]=v):v=e[6],v};var Cr=ae.default||ae,Er="code-editor",Pr=t=>{let e=Sr(24),r,n,o,i,c,a;e[0]!==t?({className:r,maxHeight:n,minHeight:o,options:i,readOnly:c,...a}=t,e[0]=t,e[1]=r,e[2]=n,e[3]=o,e[4]=i,e[5]=c,e[6]=a):(r=e[1],n=e[2],o=e[3],i=e[4],c=e[5],a=e[6]);let u=o??56,[l,m]=xr(u),{theme:s}=We(),S=a?.defaultLanguage?`language--${a.defaultLanguage}`:"",v=c&&"read-only",x;e[7]!==r||e[8]!==S||e[9]!==v?(x=[Er,r,S,v].filter(Boolean),e[7]=r,e[8]=S,e[9]=v,e[10]=x):x=e[10];let O=x.join(" "),h;if(e[11]!==u||e[12]!==O||e[13]!==l||e[14]!==n||e[15]!==i||e[16]!==c||e[17]!==a||e[18]!==s){let C,p;e[20]!==u||e[21]!==a?(C=(P,T)=>{a.onChange?.(P,T),m(Math.max(u,P.split(`
|
|
24
|
-
`).length*18+2))},p=(P,T)=>{a.onMount?.(P,T),m(Math.max(u,P.getValue().split(`
|
|
25
|
-
`).length*18+2))},e[20]=u,e[21]=a,e[22]=C,e[23]=p):(C=e[22],p=e[23]),h=Be(Cr,{className:O,loading:Be(ce,{height:l}),options:{detectIndentation:!0,hideCursorInOverviewRuler:!0,minimap:{enabled:!1},overviewRulerBorder:!1,readOnly:!!c,scrollbar:{alwaysConsumeMouseWheel:!1},scrollBeyondLastLine:!1,tabSize:2,wordWrap:"on",...i},theme:s==="dark"?"vs-dark":"vs",...a,height:n?Math.min(l,n):l,onChange:C,onMount:p}),e[11]=u,e[12]=O,e[13]=l,e[14]=n,e[15]=i,e[16]=c,e[17]=a,e[18]=s,e[19]=h}else h=e[19];return h},Fn=Pr;export{On as a,ke as b,He as c,ce as d,$n as e,Or as f,Tn as g,We as h,Fn as i};
|
|
26
|
-
//# sourceMappingURL=chunk-CQQHQHCB.js.map
|
|
File without changes
|