@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.
@@ -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,sBAoGN,CAAA"}
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 isNestedAndEmpty = isEmpty && (parentType === "object" || parentType === "array");
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: isNestedAndEmpty ? `${baseClass}__row-line--nested` : "",
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","isNestedAndEmpty","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 isNestedAndEmpty = isEmpty && (parentType === 'object' || parentType === 'array')\n return (\n <li className={isNestedAndEmpty ? `${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 className={`${baseClass}__json-children`}>\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>\n <Bracket comma={trailingComma} position=\"end\" type={parentType} />\n </span>\n )}\n </li>\n )\n}\n"],"mappings":"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","ignoreList":[]}
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: 5px;
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: #11b102;
6
- --number-color: #62c3f3;
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,CAoIvC,CAAA;AAED,eAAe,kBAAkB,CAAA"}
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 || 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":[]}
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.1-canary.d608962",
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.1-canary.d608962",
83
- "@payloadcms/ui": "3.0.1-canary.d608962",
84
- "@payloadcms/translations": "3.0.1-canary.d608962"
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
- "@payloadcms/eslint-config": "3.0.0",
103
- "payload": "3.0.1-canary.d608962"
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.1-canary.d608962"
108
+ "payload": "3.0.2-canary.f4f29e6"
109
109
  },
110
110
  "engines": {
111
111
  "node": "^18.20.2 || >=20.9.0"