@payloadcms/next 3.0.1-canary.d608962 → 3.0.2-canary.f4f29e6
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/prod/styles.css +1 -1
- package/dist/views/API/RenderJSON/index.d.ts.map +1 -1
- package/dist/views/API/RenderJSON/index.js +4 -3
- package/dist/views/API/RenderJSON/index.js.map +1 -1
- package/dist/views/API/RenderJSON/index.scss +13 -10
- package/dist/views/API/index.scss +2 -8
- package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/index.js +1 -1
- package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/API/RenderJSON/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,cAAc,CAAA;AAgCrB,KAAK,IAAI,GAAG;IACV,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,UAAU,+DAMpB,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/API/RenderJSON/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,cAAc,CAAA;AAgCrB,KAAK,IAAI,GAAG;IACV,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,UAAU,+DAMpB,IAAI,sBAsGN,CAAA"}
|
|
@@ -39,7 +39,7 @@ export const RenderJSON = t0 => {
|
|
|
39
39
|
const objectKeys = object ? Object.keys(object) : [];
|
|
40
40
|
const objectLength = objectKeys.length;
|
|
41
41
|
const [isOpen, setIsOpen] = React.useState(true);
|
|
42
|
-
const
|
|
42
|
+
const isNested = parentType === "object" || parentType === "array";
|
|
43
43
|
let t4;
|
|
44
44
|
if ($[0] !== isOpen) {
|
|
45
45
|
t4 = () => setIsOpen(!isOpen);
|
|
@@ -49,7 +49,7 @@ export const RenderJSON = t0 => {
|
|
|
49
49
|
t4 = $[1];
|
|
50
50
|
}
|
|
51
51
|
return _jsxs("li", {
|
|
52
|
-
className:
|
|
52
|
+
className: isNested ? `${baseClass}__row-line--nested` : "",
|
|
53
53
|
children: [_jsxs("button", {
|
|
54
54
|
"aria-label": "toggle",
|
|
55
55
|
className: `${baseClass}__list-toggle ${isEmpty ? `${baseClass}__list-toggle--empty` : ""}`,
|
|
@@ -68,7 +68,7 @@ export const RenderJSON = t0 => {
|
|
|
68
68
|
}) : null]
|
|
69
69
|
})]
|
|
70
70
|
}), _jsx("ul", {
|
|
71
|
-
className: `${baseClass}__json-children`,
|
|
71
|
+
className: `${baseClass}__json-children ${isNested ? `${baseClass}__json-children--nested` : ""}`,
|
|
72
72
|
children: isOpen && objectKeys.map((key, keyIndex) => {
|
|
73
73
|
let value = object[key];
|
|
74
74
|
let type;
|
|
@@ -123,6 +123,7 @@ export const RenderJSON = t0 => {
|
|
|
123
123
|
}
|
|
124
124
|
})
|
|
125
125
|
}), !isEmpty && _jsx("span", {
|
|
126
|
+
className: isNested ? `${baseClass}__bracket--nested` : "",
|
|
126
127
|
children: _jsx(Bracket, {
|
|
127
128
|
comma: trailingComma,
|
|
128
129
|
position: "end",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","ChevronIcon","React","chars","leftCurlyBracket","leftSquareBracket","rightCurlyBracket","rightSquareBracket","baseClass","Bracket","type","comma","position","rightBracket","leftBracket","bracketToRender","_jsxs","className","RenderJSON","t0","$","isEmpty","t1","object","objectKey","parentType","t2","trailingComma","t3","undefined","objectKeys","Object","keys","objectLength","length","isOpen","setIsOpen","useState","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","ChevronIcon","React","chars","leftCurlyBracket","leftSquareBracket","rightCurlyBracket","rightSquareBracket","baseClass","Bracket","type","comma","position","rightBracket","leftBracket","bracketToRender","_jsxs","className","RenderJSON","t0","$","isEmpty","t1","object","objectKey","parentType","t2","trailingComma","t3","undefined","objectKeys","Object","keys","objectLength","length","isOpen","setIsOpen","useState","isNested","t4","children","onClick","_jsx","map","key","keyIndex","value","isLastKey","Date","toISOString","Array","isArray","parentHasKey","Boolean","rowClasses","filter","join","JSON","stringify"],"sources":["../../../../src/views/API/RenderJSON/index.tsx"],"sourcesContent":["'use client'\nimport { ChevronIcon } from '@payloadcms/ui'\nimport * as React from 'react'\n\nimport './index.scss'\n\nconst chars = {\n leftCurlyBracket: '\\u007B',\n leftSquareBracket: '\\u005B',\n rightCurlyBracket: '\\u007D',\n rightSquareBracket: '\\u005D',\n}\n\nconst baseClass = 'query-inspector'\n\nconst Bracket = ({\n type,\n comma = false,\n position,\n}: {\n comma?: boolean\n position: 'end' | 'start'\n type: 'array' | 'object'\n}) => {\n const rightBracket = type === 'object' ? chars.rightCurlyBracket : chars.rightSquareBracket\n const leftBracket = type === 'object' ? chars.leftCurlyBracket : chars.leftSquareBracket\n const bracketToRender = position === 'end' ? rightBracket : leftBracket\n\n return (\n <span className={`${baseClass}__bracket ${baseClass}__bracket--position-${position}`}>\n {bracketToRender}\n {position === 'end' && comma ? ',' : null}\n </span>\n )\n}\n\ntype Args = {\n isEmpty?: boolean\n object: any[] | Record<string, any>\n objectKey?: string\n parentType?: 'array' | 'object'\n trailingComma?: boolean\n}\n\nexport const RenderJSON = ({\n isEmpty = false,\n object,\n objectKey,\n parentType = 'object',\n trailingComma = false,\n}: Args) => {\n const objectKeys = object ? Object.keys(object) : []\n const objectLength = objectKeys.length\n const [isOpen, setIsOpen] = React.useState<boolean>(true)\n const isNested = parentType === 'object' || parentType === 'array'\n return (\n <li className={isNested ? `${baseClass}__row-line--nested` : ''}>\n <button\n aria-label=\"toggle\"\n className={`${baseClass}__list-toggle ${isEmpty ? `${baseClass}__list-toggle--empty` : ''}`}\n onClick={() => setIsOpen(!isOpen)}\n type=\"button\"\n >\n {isEmpty ? null : (\n <ChevronIcon\n className={`${baseClass}__toggle-row-icon ${baseClass}__toggle-row-icon--${\n isOpen ? 'open' : 'closed'\n }`}\n />\n )}\n <span>\n {objectKey && `\"${objectKey}\": `}\n <Bracket position=\"start\" type={parentType} />\n {isEmpty ? <Bracket comma={trailingComma} position=\"end\" type={parentType} /> : null}\n </span>\n </button>\n\n <ul\n className={`${baseClass}__json-children ${isNested ? `${baseClass}__json-children--nested` : ''}`}\n >\n {isOpen &&\n objectKeys.map((key, keyIndex) => {\n let value = object[key]\n let type = 'string'\n const isLastKey = keyIndex === objectLength - 1\n\n if (value === null) {\n type = 'null'\n } else if (value instanceof Date) {\n type = 'date'\n value = value.toISOString()\n } else if (Array.isArray(value)) {\n type = 'array'\n } else if (typeof value === 'object') {\n type = 'object'\n } else if (typeof value === 'number') {\n type = 'number'\n } else if (typeof value === 'boolean') {\n type = 'boolean'\n } else {\n type = 'string'\n }\n\n if (type === 'object' || type === 'array') {\n return (\n <RenderJSON\n isEmpty={value.length === 0 || Object.keys(value).length === 0}\n key={`${key}-${keyIndex}`}\n object={value}\n objectKey={parentType === 'object' ? key : undefined}\n parentType={type}\n trailingComma={!isLastKey}\n />\n )\n }\n\n if (\n type === 'date' ||\n type === 'string' ||\n type === 'null' ||\n type === 'number' ||\n type === 'boolean'\n ) {\n const parentHasKey = Boolean(parentType === 'object' && key)\n\n const rowClasses = [\n `${baseClass}__row-line`,\n `${baseClass}__value-type--${type}`,\n `${baseClass}__row-line--${objectKey ? 'nested' : 'top'}`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <li className={rowClasses} key={`${key}-${keyIndex}`}>\n {parentHasKey ? <span>{`\"${key}\": `}</span> : null}\n\n <span className={`${baseClass}__value`}>{JSON.stringify(value)}</span>\n {isLastKey ? '' : ','}\n </li>\n )\n }\n })}\n </ul>\n\n {!isEmpty && (\n <span className={isNested ? `${baseClass}__bracket--nested` : ''}>\n <Bracket comma={trailingComma} position=\"end\" type={parentType} />\n </span>\n )}\n </li>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
@import '../../../scss/styles.scss';
|
|
2
2
|
|
|
3
|
+
$tab-width: 16px;
|
|
4
|
+
|
|
3
5
|
@layer payload-default {
|
|
4
6
|
.query-inspector {
|
|
5
7
|
&__json-children {
|
|
6
8
|
position: relative;
|
|
7
9
|
|
|
10
|
+
&--nested {
|
|
11
|
+
& li {
|
|
12
|
+
padding-left: $tab-width;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
8
16
|
&:before {
|
|
9
17
|
content: '';
|
|
10
18
|
position: absolute;
|
|
11
19
|
top: 0;
|
|
12
|
-
left: 8px;
|
|
13
20
|
width: 1px;
|
|
14
21
|
height: 100%;
|
|
15
22
|
border-left: 1px dashed var(--theme-elevation-200);
|
|
@@ -35,10 +42,6 @@
|
|
|
35
42
|
left: -3px;
|
|
36
43
|
width: calc(100% + 3px);
|
|
37
44
|
|
|
38
|
-
svg {
|
|
39
|
-
margin-left: 5px;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
45
|
svg .stroke {
|
|
43
46
|
stroke: var(--theme-elevation-400);
|
|
44
47
|
}
|
|
@@ -76,15 +79,15 @@
|
|
|
76
79
|
}
|
|
77
80
|
}
|
|
78
81
|
|
|
79
|
-
&__row-line--nested {
|
|
80
|
-
margin-left: 25px;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
82
|
&__bracket {
|
|
84
83
|
position: relative;
|
|
85
84
|
|
|
85
|
+
&--nested {
|
|
86
|
+
margin-left: $tab-width;
|
|
87
|
+
}
|
|
88
|
+
|
|
86
89
|
&--position-end {
|
|
87
|
-
left:
|
|
90
|
+
left: 1px;
|
|
88
91
|
width: calc(100% - 5px);
|
|
89
92
|
}
|
|
90
93
|
}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
@layer payload-default {
|
|
4
4
|
.query-inspector {
|
|
5
|
-
--string-color:
|
|
6
|
-
--number-color:
|
|
5
|
+
--string-color: var(--color-success-450);
|
|
6
|
+
--number-color: var(--color-warning-450);
|
|
7
7
|
display: flex;
|
|
8
8
|
gap: calc(var(--base) * 2);
|
|
9
9
|
align-items: flex-start;
|
|
@@ -116,10 +116,4 @@
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
|
-
|
|
120
|
-
html[data-theme='light'] {
|
|
121
|
-
.query-inspector {
|
|
122
|
-
--number-color: #2e9cd3;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
119
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAkB,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvD,OAAO,cAAc,CAAA;AAIrB,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAkB,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvD,OAAO,cAAc,CAAA;AAIrB,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuIvC,CAAA;AAED,eAAe,kBAAkB,CAAA"}
|
|
@@ -33,7 +33,7 @@ const RenderFieldsToDiff = ({
|
|
|
33
33
|
const valueIsObject = field.type === 'code' || field.type === 'json';
|
|
34
34
|
const versionValue = valueIsObject ? JSON.stringify(version?.[fieldName]) : version?.[fieldName];
|
|
35
35
|
const comparisonValue = valueIsObject ? JSON.stringify(comparison?.[fieldName]) : comparison?.[fieldName];
|
|
36
|
-
const hasPermission = fieldPermissions?.[fieldName] === true || fieldPermissions?.[fieldName]?.read;
|
|
36
|
+
const hasPermission = fieldPermissions === true || fieldPermissions?.[fieldName] === true || fieldPermissions?.[fieldName]?.read;
|
|
37
37
|
const subFieldPermissions = fieldPermissions?.[fieldName] === true || fieldPermissions?.[fieldName]?.fields;
|
|
38
38
|
if (!hasPermission) {
|
|
39
39
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["fieldAffectsData","React","diffMethods","Nested","baseClass","RenderFieldsToDiff","comparison","diffComponents","__diffComponents","fieldPermissions","fields","i18n","locales","version","_jsx","className","map","field","i","name","Component","type","isRichText","diffMethod","fieldName","valueIsObject","versionValue","JSON","stringify","comparisonValue","hasPermission","read","subFieldPermissions","baseCellProps","localized","locale","index","versionLocaleValue","comparisonLocaleValue","cellProps","join","Tabs","tabs","disableGutter","permissions"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["'use client'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport { fieldAffectsData } from 'payload/shared'\nimport React from 'react'\n\nimport type { diffComponents as _diffComponents } from './fields/index.js'\nimport type { FieldDiffProps, Props } from './types.js'\n\nimport { diffMethods } from './fields/diffMethods.js'\nimport Nested from './fields/Nested/index.js'\nimport './index.scss'\n\nconst baseClass = 'render-field-diffs'\n\nconst RenderFieldsToDiff: React.FC<Props> = ({\n comparison,\n diffComponents: __diffComponents,\n fieldPermissions,\n fields,\n i18n,\n locales,\n version,\n}) => {\n // typing it as `as typeof _diffComponents` here ensures the TField generics of DiffComponentProps are respected.\n // Without it, you could pass a UI field to the Tabs component, without it erroring\n const diffComponents: typeof _diffComponents = __diffComponents as typeof _diffComponents\n return (\n <div className={baseClass}>\n {fields?.map((field, i) => {\n if ('name' in field && field.name === 'id') {\n return null\n }\n\n const Component = diffComponents[field.type]\n\n const isRichText = field.type === 'richText'\n const diffMethod: DiffMethod = diffMethods[field.type] || 'CHARS'\n\n if (Component) {\n if (fieldAffectsData(field)) {\n const fieldName = field.name\n const valueIsObject = field.type === 'code' || field.type === 'json'\n\n const versionValue = valueIsObject\n ? JSON.stringify(version?.[fieldName])\n : version?.[fieldName]\n\n const comparisonValue = valueIsObject\n ? JSON.stringify(comparison?.[fieldName])\n : comparison?.[fieldName]\n\n const hasPermission =\n fieldPermissions?.[fieldName] === true
|
|
1
|
+
{"version":3,"file":"index.js","names":["fieldAffectsData","React","diffMethods","Nested","baseClass","RenderFieldsToDiff","comparison","diffComponents","__diffComponents","fieldPermissions","fields","i18n","locales","version","_jsx","className","map","field","i","name","Component","type","isRichText","diffMethod","fieldName","valueIsObject","versionValue","JSON","stringify","comparisonValue","hasPermission","read","subFieldPermissions","baseCellProps","localized","locale","index","versionLocaleValue","comparisonLocaleValue","cellProps","join","Tabs","tabs","disableGutter","permissions"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["'use client'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport { fieldAffectsData } from 'payload/shared'\nimport React from 'react'\n\nimport type { diffComponents as _diffComponents } from './fields/index.js'\nimport type { FieldDiffProps, Props } from './types.js'\n\nimport { diffMethods } from './fields/diffMethods.js'\nimport Nested from './fields/Nested/index.js'\nimport './index.scss'\n\nconst baseClass = 'render-field-diffs'\n\nconst RenderFieldsToDiff: React.FC<Props> = ({\n comparison,\n diffComponents: __diffComponents,\n fieldPermissions,\n fields,\n i18n,\n locales,\n version,\n}) => {\n // typing it as `as typeof _diffComponents` here ensures the TField generics of DiffComponentProps are respected.\n // Without it, you could pass a UI field to the Tabs component, without it erroring\n const diffComponents: typeof _diffComponents = __diffComponents as typeof _diffComponents\n\n return (\n <div className={baseClass}>\n {fields?.map((field, i) => {\n if ('name' in field && field.name === 'id') {\n return null\n }\n\n const Component = diffComponents[field.type]\n\n const isRichText = field.type === 'richText'\n const diffMethod: DiffMethod = diffMethods[field.type] || 'CHARS'\n\n if (Component) {\n if (fieldAffectsData(field)) {\n const fieldName = field.name\n const valueIsObject = field.type === 'code' || field.type === 'json'\n\n const versionValue = valueIsObject\n ? JSON.stringify(version?.[fieldName])\n : version?.[fieldName]\n\n const comparisonValue = valueIsObject\n ? JSON.stringify(comparison?.[fieldName])\n : comparison?.[fieldName]\n\n const hasPermission =\n fieldPermissions === true ||\n fieldPermissions?.[fieldName] === true ||\n fieldPermissions?.[fieldName]?.read\n\n const subFieldPermissions =\n fieldPermissions?.[fieldName] === true || fieldPermissions?.[fieldName]?.fields\n\n if (!hasPermission) {\n return null\n }\n\n const baseCellProps: FieldDiffProps = {\n comparison: comparisonValue,\n diffComponents,\n diffMethod,\n field,\n fieldPermissions: subFieldPermissions,\n fields: 'fields' in field ? field?.fields : fields,\n i18n,\n isRichText,\n locales,\n version: versionValue,\n }\n\n if (field.localized) {\n return (\n <div className={`${baseClass}__field`} key={i}>\n {locales.map((locale, index) => {\n const versionLocaleValue = versionValue?.[locale]\n const comparisonLocaleValue = comparisonValue?.[locale]\n\n const cellProps = {\n ...baseCellProps,\n comparison: comparisonLocaleValue,\n version: versionLocaleValue,\n }\n\n return (\n <div className={`${baseClass}__locale`} key={[locale, index].join('-')}>\n <div className={`${baseClass}__locale-value`}>\n <Component {...cellProps} locale={locale} />\n </div>\n </div>\n )\n })}\n </div>\n )\n }\n\n return (\n <div className={`${baseClass}__field`} key={i}>\n <Component {...baseCellProps} />\n </div>\n )\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n const Tabs = diffComponents.tabs\n\n return (\n <Tabs\n comparison={comparison}\n diffComponents={diffComponents}\n field={field}\n fields={[]}\n i18n={i18n}\n key={i}\n locales={locales}\n version={version}\n />\n )\n }\n\n // At this point, we are dealing with a `row`, etc\n if ('fields' in field) {\n return (\n <Nested\n comparison={comparison}\n diffComponents={diffComponents}\n disableGutter\n field={field}\n fields={field.fields}\n i18n={i18n}\n key={i}\n locales={locales}\n permissions={fieldPermissions}\n version={version}\n />\n )\n }\n }\n\n return null\n })}\n </div>\n )\n}\n\nexport default RenderFieldsToDiff\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/next",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.2-canary.f4f29e6",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -79,9 +79,9 @@
|
|
|
79
79
|
"sass": "1.77.4",
|
|
80
80
|
"sonner": "^1.5.0",
|
|
81
81
|
"uuid": "10.0.0",
|
|
82
|
-
"@payloadcms/graphql": "3.0.
|
|
83
|
-
"@payloadcms/
|
|
84
|
-
"@payloadcms/
|
|
82
|
+
"@payloadcms/graphql": "3.0.2-canary.f4f29e6",
|
|
83
|
+
"@payloadcms/translations": "3.0.2-canary.f4f29e6",
|
|
84
|
+
"@payloadcms/ui": "3.0.2-canary.f4f29e6"
|
|
85
85
|
},
|
|
86
86
|
"devDependencies": {
|
|
87
87
|
"@babel/cli": "^7.24.5",
|
|
@@ -99,13 +99,13 @@
|
|
|
99
99
|
"esbuild-sass-plugin": "3.3.1",
|
|
100
100
|
"eslint-plugin-react-compiler": "19.0.0-beta-a7bf2bd-20241110",
|
|
101
101
|
"swc-plugin-transform-remove-imports": "1.15.0",
|
|
102
|
-
"
|
|
103
|
-
"
|
|
102
|
+
"payload": "3.0.2-canary.f4f29e6",
|
|
103
|
+
"@payloadcms/eslint-config": "3.0.0"
|
|
104
104
|
},
|
|
105
105
|
"peerDependencies": {
|
|
106
106
|
"graphql": "^16.8.1",
|
|
107
107
|
"next": "^15.0.0",
|
|
108
|
-
"payload": "3.0.
|
|
108
|
+
"payload": "3.0.2-canary.f4f29e6"
|
|
109
109
|
},
|
|
110
110
|
"engines": {
|
|
111
111
|
"node": "^18.20.2 || >=20.9.0"
|