@payloadcms/next 3.20.0-canary.75e9839 → 3.20.0-canary.8eef7db

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.
Files changed (111) hide show
  1. package/dist/prod/styles.css +1 -1
  2. package/dist/views/Account/index.d.ts.map +1 -1
  3. package/dist/views/Account/index.js +2 -1
  4. package/dist/views/Account/index.js.map +1 -1
  5. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  6. package/dist/views/CreateFirstUser/index.client.js +4 -2
  7. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  8. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  9. package/dist/views/CreateFirstUser/index.js +2 -1
  10. package/dist/views/CreateFirstUser/index.js.map +1 -1
  11. package/dist/views/Document/getDocumentPermissions.js +2 -2
  12. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  13. package/dist/views/Document/index.d.ts.map +1 -1
  14. package/dist/views/Document/index.js +2 -1
  15. package/dist/views/Document/index.js.map +1 -1
  16. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  17. package/dist/views/LivePreview/index.client.js +5 -2
  18. package/dist/views/LivePreview/index.client.js.map +1 -1
  19. package/dist/views/Version/Default/SelectedLocalesContext.d.ts +8 -0
  20. package/dist/views/Version/Default/SelectedLocalesContext.d.ts.map +1 -0
  21. package/dist/views/Version/Default/SelectedLocalesContext.js +10 -0
  22. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -0
  23. package/dist/views/Version/Default/index.d.ts.map +1 -1
  24. package/dist/views/Version/Default/index.js +89 -159
  25. package/dist/views/Version/Default/index.js.map +1 -1
  26. package/dist/views/Version/Default/types.d.ts +4 -4
  27. package/dist/views/Version/Default/types.d.ts.map +1 -1
  28. package/dist/views/Version/Default/types.js.map +1 -1
  29. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts +6 -0
  30. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -0
  31. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +36 -0
  32. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -0
  33. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts +30 -0
  34. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -0
  35. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +300 -0
  36. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -0
  37. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts +2 -3
  38. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts.map +1 -1
  39. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +54 -31
  40. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  41. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts +2 -3
  42. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts.map +1 -1
  43. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +59 -35
  44. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  45. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +3 -3
  46. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  47. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +97 -65
  48. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  49. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +2 -4
  50. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  51. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +17 -15
  52. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  53. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts +2 -3
  54. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts.map +1 -1
  55. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +7 -24
  56. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  57. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +2 -4
  58. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  59. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +56 -27
  60. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  61. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +2 -4
  62. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  63. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +137 -80
  64. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  65. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +2 -4
  66. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  67. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +71 -36
  68. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  69. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +2 -22
  70. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  71. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +2 -0
  72. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  73. package/dist/views/Version/RenderFieldsToDiff/index.d.ts +2 -4
  74. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  75. package/dist/views/Version/RenderFieldsToDiff/index.js +8 -111
  76. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  77. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  78. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +7 -1
  79. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  80. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.d.ts +27 -0
  81. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.d.ts.map +1 -0
  82. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js +30 -0
  83. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js.map +1 -0
  84. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts +8 -3
  85. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -1
  86. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +12 -3
  87. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  88. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +27 -9
  89. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  90. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  91. package/dist/views/Version/Restore/index.js +2 -2
  92. package/dist/views/Version/Restore/index.js.map +1 -1
  93. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  94. package/dist/views/Version/SelectComparison/index.js +7 -3
  95. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  96. package/dist/views/Version/index.d.ts.map +1 -1
  97. package/dist/views/Version/index.js +117 -15
  98. package/dist/views/Version/index.js.map +1 -1
  99. package/dist/views/Versions/getLatestVersion.d.ts +4 -1
  100. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  101. package/dist/views/Versions/getLatestVersion.js +6 -0
  102. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  103. package/package.json +7 -7
  104. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +0 -21
  105. package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +0 -1
  106. package/dist/views/Version/RenderFieldsToDiff/fields/types.js +0 -2
  107. package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +0 -1
  108. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +0 -21
  109. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +0 -1
  110. package/dist/views/Version/RenderFieldsToDiff/types.js +0 -2
  111. package/dist/views/Version/RenderFieldsToDiff/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,KAAK,EAAiB,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAOzE,OAAO,cAAc,CAAA;AAKrB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA2HjE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/index.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAE3D,OAAO,KAAK,EAAiB,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAIzE,OAAO,cAAc,CAAA;AAOrB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAuIjE,CAAA"}
@@ -1,32 +1,33 @@
1
1
  'use client';
2
2
 
3
- import { c as _c } from "react/compiler-runtime";
4
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
- import { Gutter, useConfig, useDocumentInfo, usePayloadAPI, useTranslation } from '@payloadcms/ui';
4
+ import { Gutter, useConfig, useDocumentInfo, useTranslation } from '@payloadcms/ui';
6
5
  import { formatDate } from '@payloadcms/ui/shared';
7
- import React, { useState } from 'react';
8
- import { diffComponents } from '../RenderFieldsToDiff/fields/index.js';
9
- import { RenderFieldsToDiff } from '../RenderFieldsToDiff/index.js';
6
+ import { usePathname, useRouter, useSearchParams } from 'next/navigation.js';
7
+ import React, { useEffect, useMemo, useState } from 'react';
10
8
  import Restore from '../Restore/index.js';
11
9
  import { SelectComparison } from '../SelectComparison/index.js';
12
10
  import { SelectLocales } from '../SelectLocales/index.js';
11
+ import { SelectedLocalesContext } from './SelectedLocalesContext.js';
13
12
  import { SetStepNav } from './SetStepNav.js';
14
13
  const baseClass = 'view-version';
15
- export const DefaultVersionView = t0 => {
16
- const $ = _c(23);
17
- const {
18
- doc,
19
- docPermissions,
20
- initialComparisonDoc,
21
- latestDraftVersion,
22
- latestPublishedVersion,
23
- localeOptions,
24
- versionID
25
- } = t0;
14
+ export const DefaultVersionView = ({
15
+ canUpdate,
16
+ doc,
17
+ latestDraftVersion,
18
+ latestPublishedVersion,
19
+ RenderedDiff,
20
+ selectedLocales: selectedLocalesProp,
21
+ versionID
22
+ }) => {
26
23
  const {
27
24
  config,
28
25
  getEntityConfig
29
26
  } = useConfig();
27
+ const availableLocales = useMemo(() => config.localization ? config.localization.locales.map(locale => ({
28
+ label: locale.label,
29
+ value: locale.code
30
+ })) : [], [config.localization]);
30
31
  const {
31
32
  i18n
32
33
  } = useTranslation();
@@ -35,180 +36,109 @@ export const DefaultVersionView = t0 => {
35
36
  collectionSlug,
36
37
  globalSlug
37
38
  } = useDocumentInfo();
38
- let t1;
39
- if ($[0] !== collectionSlug || $[1] !== getEntityConfig) {
40
- t1 = () => getEntityConfig({
41
- collectionSlug
42
- });
43
- $[0] = collectionSlug;
44
- $[1] = getEntityConfig;
45
- $[2] = t1;
46
- } else {
47
- t1 = $[2];
48
- }
49
- const [collectionConfig] = useState(t1);
50
- let t2;
51
- if ($[3] !== getEntityConfig || $[4] !== globalSlug) {
52
- t2 = () => getEntityConfig({
53
- globalSlug
54
- });
55
- $[3] = getEntityConfig;
56
- $[4] = globalSlug;
57
- $[5] = t2;
58
- } else {
59
- t2 = $[5];
60
- }
61
- const [globalConfig] = useState(t2);
62
- const [locales, setLocales] = useState(localeOptions);
39
+ const [collectionConfig] = useState(() => getEntityConfig({
40
+ collectionSlug
41
+ }));
42
+ const [globalConfig] = useState(() => getEntityConfig({
43
+ globalSlug
44
+ }));
45
+ const [selectedLocales, setSelectedLocales] = useState(selectedLocalesProp);
63
46
  const [compareValue, setCompareValue] = useState();
47
+ const router = useRouter();
48
+ const pathname = usePathname();
49
+ const searchParams = useSearchParams();
50
+ useEffect(() => {
51
+ // If the selected comparison doc or locales change, update URL params so that version page RSC
52
+ // can update the version comparison state
53
+ const current = new URLSearchParams(Array.from(searchParams.entries()));
54
+ if (!compareValue) {
55
+ current.delete('compareValue');
56
+ } else {
57
+ current.set('compareValue', compareValue?.value);
58
+ }
59
+ if (!selectedLocales) {
60
+ current.delete('localeCodes');
61
+ } else {
62
+ current.set('localeCodes', JSON.stringify(selectedLocales.map(locale_0 => locale_0.value)));
63
+ }
64
+ const search = current.toString();
65
+ const query = search ? `?${search}` : '';
66
+ router.push(`${pathname}${query}`);
67
+ }, [compareValue, pathname, router, searchParams, selectedLocales]);
64
68
  const {
65
- admin: t3,
69
+ admin: {
70
+ dateFormat
71
+ },
66
72
  localization,
67
- routes: t4,
73
+ routes: {
74
+ api: apiRoute
75
+ },
68
76
  serverURL
69
77
  } = config;
70
- const {
71
- dateFormat
72
- } = t3;
73
- const {
74
- api: apiRoute
75
- } = t4;
76
78
  const versionCreatedAt = doc?.updatedAt ? formatDate({
77
79
  date: doc.updatedAt,
78
80
  i18n,
79
81
  pattern: dateFormat
80
- }) : "";
81
- const compareBaseURL = `${serverURL}${apiRoute}/${globalSlug ? "globals/" : ""}${collectionSlug || globalSlug}/versions`;
82
- const compareFetchURL = compareValue?.value && `${compareBaseURL}/${compareValue.value}`;
83
- let t5;
84
- if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
85
- t5 = {
86
- depth: 1,
87
- draft: "true",
88
- locale: "all"
89
- };
90
- $[6] = t5;
91
- } else {
92
- t5 = $[6];
93
- }
94
- let t6;
95
- if ($[7] !== initialComparisonDoc) {
96
- t6 = {
97
- initialData: initialComparisonDoc,
98
- initialParams: t5
99
- };
100
- $[7] = initialComparisonDoc;
101
- $[8] = t6;
102
- } else {
103
- t6 = $[8];
104
- }
105
- const [t7] = usePayloadAPI(compareFetchURL, t6);
106
- const {
107
- data: currentComparisonDoc
108
- } = t7;
109
- const comparison = compareValue?.value && currentComparisonDoc?.version;
110
- const canUpdate = docPermissions?.update;
111
- let t8;
112
- if ($[9] !== locales) {
113
- t8 = locales && locales.map(_temp);
114
- $[9] = locales;
115
- $[10] = t8;
116
- } else {
117
- t8 = $[10];
118
- }
119
- const localeValues = t8;
82
+ }) : '';
83
+ const compareBaseURL = `${serverURL}${apiRoute}/${globalSlug ? 'globals/' : ''}${collectionSlug || globalSlug}/versions`;
120
84
  const draftsEnabled = Boolean((collectionConfig || globalConfig)?.versions.drafts);
121
- let t9;
122
- if ($[11] !== localeOptions || $[12] !== locales || $[13] !== localization) {
123
- t9 = localization && _jsx(SelectLocales, {
124
- onChange: setLocales,
125
- options: localeOptions,
126
- value: locales
127
- });
128
- $[11] = localeOptions;
129
- $[12] = locales;
130
- $[13] = localization;
131
- $[14] = t9;
132
- } else {
133
- t9 = $[14];
134
- }
135
- let t10;
136
- if ($[15] !== collectionConfig || $[16] !== comparison || $[17] !== doc || $[18] !== docPermissions?.fields || $[19] !== globalConfig || $[20] !== i18n || $[21] !== localeValues) {
137
- t10 = doc?.version && _jsx(RenderFieldsToDiff, {
138
- comparison,
139
- diffComponents,
140
- fieldPermissions: docPermissions?.fields,
141
- fields: (collectionConfig || globalConfig)?.fields,
142
- i18n,
143
- locales: localeValues,
144
- version: globalConfig ? {
145
- ...doc?.version,
146
- createdAt: doc?.version?.createdAt || doc.createdAt,
147
- updatedAt: doc?.version?.updatedAt || doc.updatedAt
148
- } : doc?.version
149
- });
150
- $[15] = collectionConfig;
151
- $[16] = comparison;
152
- $[17] = doc;
153
- $[18] = docPermissions?.fields;
154
- $[19] = globalConfig;
155
- $[20] = i18n;
156
- $[21] = localeValues;
157
- $[22] = t10;
158
- } else {
159
- t10 = $[22];
160
- }
161
- return _jsxs("main", {
85
+ return /*#__PURE__*/_jsxs("main", {
162
86
  className: baseClass,
163
- children: [_jsx(SetStepNav, {
164
- collectionConfig,
165
- collectionSlug,
166
- doc,
87
+ children: [/*#__PURE__*/_jsx(SetStepNav, {
88
+ collectionConfig: collectionConfig,
89
+ collectionSlug: collectionSlug,
90
+ doc: doc,
167
91
  fields: (collectionConfig || globalConfig)?.fields,
168
- globalConfig,
169
- globalSlug,
170
- id
171
- }), _jsxs(Gutter, {
92
+ globalConfig: globalConfig,
93
+ globalSlug: globalSlug,
94
+ id: id
95
+ }), /*#__PURE__*/_jsxs(Gutter, {
172
96
  className: `${baseClass}__wrap`,
173
- children: [_jsxs("div", {
97
+ children: [/*#__PURE__*/_jsxs("div", {
174
98
  className: `${baseClass}__header-wrap`,
175
- children: [_jsx("p", {
99
+ children: [/*#__PURE__*/_jsx("p", {
176
100
  className: `${baseClass}__created-at`,
177
- children: i18n.t("version:versionCreatedOn", {
178
- version: i18n.t(doc?.autosave ? "version:autosavedVersion" : "version:version")
101
+ children: i18n.t('version:versionCreatedOn', {
102
+ version: i18n.t(doc?.autosave ? 'version:autosavedVersion' : 'version:version')
179
103
  })
180
- }), _jsxs("header", {
104
+ }), /*#__PURE__*/_jsxs("header", {
181
105
  className: `${baseClass}__header`,
182
- children: [_jsx("h2", {
106
+ children: [/*#__PURE__*/_jsx("h2", {
183
107
  children: versionCreatedAt
184
- }), canUpdate && _jsx(Restore, {
108
+ }), canUpdate && /*#__PURE__*/_jsx(Restore, {
185
109
  className: `${baseClass}__restore`,
186
- collectionSlug,
187
- globalSlug,
110
+ collectionSlug: collectionSlug,
111
+ globalSlug: globalSlug,
188
112
  label: collectionConfig?.labels.singular || globalConfig?.label,
189
113
  originalDocID: id,
190
114
  status: doc?.version?._status,
191
115
  versionDate: versionCreatedAt,
192
- versionID
116
+ versionID: versionID
193
117
  })]
194
118
  })]
195
- }), _jsxs("div", {
119
+ }), /*#__PURE__*/_jsxs("div", {
196
120
  className: `${baseClass}__controls`,
197
- children: [_jsx(SelectComparison, {
121
+ children: [/*#__PURE__*/_jsx(SelectComparison, {
198
122
  baseURL: compareBaseURL,
199
- draftsEnabled,
200
- latestDraftVersion,
201
- latestPublishedVersion,
123
+ draftsEnabled: draftsEnabled,
124
+ latestDraftVersion: latestDraftVersion,
125
+ latestPublishedVersion: latestPublishedVersion,
202
126
  onChange: setCompareValue,
203
127
  parentID: id,
204
128
  value: compareValue,
205
- versionID
206
- }), t9]
207
- }), t10]
129
+ versionID: versionID
130
+ }), localization && /*#__PURE__*/_jsx(SelectLocales, {
131
+ onChange: setSelectedLocales,
132
+ options: availableLocales,
133
+ value: selectedLocales
134
+ })]
135
+ }), /*#__PURE__*/_jsx(SelectedLocalesContext.Provider, {
136
+ value: {
137
+ selectedLocales: selectedLocales.map(locale_1 => locale_1.value)
138
+ },
139
+ children: doc?.version && RenderedDiff
140
+ })]
208
141
  })]
209
142
  });
210
143
  };
211
- function _temp(locale) {
212
- return locale.value;
213
- }
214
144
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","Gutter","useConfig","useDocumentInfo","usePayloadAPI","useTranslation","formatDate","React","useState","diffComponents","RenderFieldsToDiff","Restore","SelectComparison","SelectLocales","SetStepNav","baseClass","DefaultVersionView","t0","$","doc","docPermissions","initialComparisonDoc","latestDraftVersion","latestPublishedVersion","localeOptions","versionID","config","getEntityConfig","i18n","id","collectionSlug","globalSlug","t1","collectionConfig","t2","globalConfig","locales","setLocales","compareValue","setCompareValue","admin","t3","localization","routes","t4","serverURL","dateFormat","api","apiRoute","versionCreatedAt","updatedAt","date","pattern","compareBaseURL","compareFetchURL","value","t5","Symbol","for","depth","draft","locale","t6","initialData","initialParams","t7","data","currentComparisonDoc","comparison","version","canUpdate","update","t8","map","_temp","localeValues","draftsEnabled","Boolean","versions","drafts","t9","_jsx","onChange","options","t10","fieldPermissions","fields","createdAt","_jsxs","className","children","t","autosave","label","labels","singular","originalDocID","status","_status","versionDate","baseURL","parentID"],"sources":["../../../../src/views/Version/Default/index.tsx"],"sourcesContent":["'use client'\nimport type { OptionObject } from 'payload'\n\nimport { Gutter, useConfig, useDocumentInfo, usePayloadAPI, useTranslation } from '@payloadcms/ui'\nimport { formatDate } from '@payloadcms/ui/shared'\nimport React, { useState } from 'react'\n\nimport type { CompareOption, DefaultVersionsViewProps } from './types.js'\n\nimport { diffComponents } from '../RenderFieldsToDiff/fields/index.js'\nimport { RenderFieldsToDiff } from '../RenderFieldsToDiff/index.js'\nimport Restore from '../Restore/index.js'\nimport { SelectComparison } from '../SelectComparison/index.js'\nimport { SelectLocales } from '../SelectLocales/index.js'\nimport './index.scss'\nimport { SetStepNav } from './SetStepNav.js'\n\nconst baseClass = 'view-version'\n\nexport const DefaultVersionView: React.FC<DefaultVersionsViewProps> = ({\n doc,\n docPermissions,\n initialComparisonDoc,\n latestDraftVersion,\n latestPublishedVersion,\n localeOptions,\n versionID,\n}) => {\n const { config, getEntityConfig } = useConfig()\n\n const { i18n } = useTranslation()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n\n const [collectionConfig] = useState(() => getEntityConfig({ collectionSlug }))\n\n const [globalConfig] = useState(() => getEntityConfig({ globalSlug }))\n\n const [locales, setLocales] = useState<OptionObject[]>(localeOptions)\n\n const [compareValue, setCompareValue] = useState<CompareOption>()\n\n const {\n admin: { dateFormat },\n localization,\n routes: { api: apiRoute },\n serverURL,\n } = config\n\n const versionCreatedAt = doc?.updatedAt\n ? formatDate({ date: doc.updatedAt, i18n, pattern: dateFormat })\n : ''\n\n const compareBaseURL = `${serverURL}${apiRoute}/${globalSlug ? 'globals/' : ''}${\n collectionSlug || globalSlug\n }/versions`\n\n const compareFetchURL = compareValue?.value && `${compareBaseURL}/${compareValue.value}`\n\n const [{ data: currentComparisonDoc }] = usePayloadAPI(compareFetchURL, {\n initialData: initialComparisonDoc,\n initialParams: { depth: 1, draft: 'true', locale: 'all' },\n })\n\n const comparison = compareValue?.value && currentComparisonDoc?.version // the `version` key is only present on `versions` documents\n\n const canUpdate = docPermissions?.update\n\n const localeValues = locales && locales.map((locale) => locale.value)\n\n const draftsEnabled = Boolean((collectionConfig || globalConfig)?.versions.drafts)\n\n return (\n <main className={baseClass}>\n <SetStepNav\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n doc={doc}\n fields={(collectionConfig || globalConfig)?.fields}\n globalConfig={globalConfig}\n globalSlug={globalSlug}\n id={id}\n />\n <Gutter className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__header-wrap`}>\n <p className={`${baseClass}__created-at`}>\n {i18n.t('version:versionCreatedOn', {\n version: i18n.t(doc?.autosave ? 'version:autosavedVersion' : 'version:version'),\n })}\n </p>\n <header className={`${baseClass}__header`}>\n <h2>{versionCreatedAt}</h2>\n {canUpdate && (\n <Restore\n className={`${baseClass}__restore`}\n collectionSlug={collectionSlug}\n globalSlug={globalSlug}\n label={collectionConfig?.labels.singular || globalConfig?.label}\n originalDocID={id}\n status={doc?.version?._status}\n versionDate={versionCreatedAt}\n versionID={versionID}\n />\n )}\n </header>\n </div>\n <div className={`${baseClass}__controls`}>\n <SelectComparison\n baseURL={compareBaseURL}\n draftsEnabled={draftsEnabled}\n latestDraftVersion={latestDraftVersion}\n latestPublishedVersion={latestPublishedVersion}\n onChange={setCompareValue}\n parentID={id}\n value={compareValue}\n versionID={versionID}\n />\n {localization && (\n <SelectLocales onChange={setLocales} options={localeOptions} value={locales} />\n )}\n </div>\n {doc?.version && (\n <RenderFieldsToDiff\n comparison={comparison}\n diffComponents={diffComponents}\n fieldPermissions={docPermissions?.fields}\n fields={(collectionConfig || globalConfig)?.fields}\n i18n={i18n}\n locales={localeValues}\n version={\n globalConfig\n ? {\n ...doc?.version,\n createdAt: doc?.version?.createdAt || doc.createdAt,\n updatedAt: doc?.version?.updatedAt || doc.updatedAt,\n }\n : doc?.version\n }\n />\n )}\n </Gutter>\n </main>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Gutter","useConfig","useDocumentInfo","useTranslation","formatDate","usePathname","useRouter","useSearchParams","React","useEffect","useMemo","useState","Restore","SelectComparison","SelectLocales","SelectedLocalesContext","SetStepNav","baseClass","DefaultVersionView","canUpdate","doc","latestDraftVersion","latestPublishedVersion","RenderedDiff","selectedLocales","selectedLocalesProp","versionID","config","getEntityConfig","availableLocales","localization","locales","map","locale","label","value","code","i18n","id","collectionSlug","globalSlug","collectionConfig","globalConfig","setSelectedLocales","compareValue","setCompareValue","router","pathname","searchParams","current","URLSearchParams","Array","from","entries","delete","set","JSON","stringify","search","toString","query","push","admin","dateFormat","routes","api","apiRoute","serverURL","versionCreatedAt","updatedAt","date","pattern","compareBaseURL","draftsEnabled","Boolean","versions","drafts","_jsxs","className","_jsx","fields","t","version","autosave","labels","singular","originalDocID","status","_status","versionDate","baseURL","onChange","parentID","options","Provider"],"sources":["../../../../src/views/Version/Default/index.tsx"],"sourcesContent":["'use client'\nimport type { OptionObject } from 'payload'\n\nimport { Gutter, useConfig, useDocumentInfo, useTranslation } from '@payloadcms/ui'\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { usePathname, useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport type { CompareOption, DefaultVersionsViewProps } from './types.js'\n\nimport Restore from '../Restore/index.js'\nimport { SelectComparison } from '../SelectComparison/index.js'\nimport './index.scss'\nimport { SelectLocales } from '../SelectLocales/index.js'\nimport { SelectedLocalesContext } from './SelectedLocalesContext.js'\nimport { SetStepNav } from './SetStepNav.js'\n\nconst baseClass = 'view-version'\n\nexport const DefaultVersionView: React.FC<DefaultVersionsViewProps> = ({\n canUpdate,\n doc,\n latestDraftVersion,\n latestPublishedVersion,\n RenderedDiff,\n selectedLocales: selectedLocalesProp,\n versionID,\n}) => {\n const { config, getEntityConfig } = useConfig()\n\n const availableLocales = useMemo(\n () =>\n config.localization\n ? config.localization.locales.map((locale) => ({\n label: locale.label,\n value: locale.code,\n }))\n : [],\n [config.localization],\n )\n\n const { i18n } = useTranslation()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n\n const [collectionConfig] = useState(() => getEntityConfig({ collectionSlug }))\n\n const [globalConfig] = useState(() => getEntityConfig({ globalSlug }))\n\n const [selectedLocales, setSelectedLocales] = useState<OptionObject[]>(selectedLocalesProp)\n\n const [compareValue, setCompareValue] = useState<CompareOption>()\n const router = useRouter()\n const pathname = usePathname()\n const searchParams = useSearchParams()\n\n useEffect(() => {\n // If the selected comparison doc or locales change, update URL params so that version page RSC\n // can update the version comparison state\n const current = new URLSearchParams(Array.from(searchParams.entries()))\n\n if (!compareValue) {\n current.delete('compareValue')\n } else {\n current.set('compareValue', compareValue?.value)\n }\n if (!selectedLocales) {\n current.delete('localeCodes')\n } else {\n current.set('localeCodes', JSON.stringify(selectedLocales.map((locale) => locale.value)))\n }\n\n const search = current.toString()\n const query = search ? `?${search}` : ''\n router.push(`${pathname}${query}`)\n }, [compareValue, pathname, router, searchParams, selectedLocales])\n\n const {\n admin: { dateFormat },\n localization,\n routes: { api: apiRoute },\n serverURL,\n } = config\n\n const versionCreatedAt = doc?.updatedAt\n ? formatDate({ date: doc.updatedAt, i18n, pattern: dateFormat })\n : ''\n\n const compareBaseURL = `${serverURL}${apiRoute}/${globalSlug ? 'globals/' : ''}${\n collectionSlug || globalSlug\n }/versions`\n\n const draftsEnabled = Boolean((collectionConfig || globalConfig)?.versions.drafts)\n\n return (\n <main className={baseClass}>\n <SetStepNav\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n doc={doc}\n fields={(collectionConfig || globalConfig)?.fields}\n globalConfig={globalConfig}\n globalSlug={globalSlug}\n id={id}\n />\n <Gutter className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__header-wrap`}>\n <p className={`${baseClass}__created-at`}>\n {i18n.t('version:versionCreatedOn', {\n version: i18n.t(doc?.autosave ? 'version:autosavedVersion' : 'version:version'),\n })}\n </p>\n <header className={`${baseClass}__header`}>\n <h2>{versionCreatedAt}</h2>\n {canUpdate && (\n <Restore\n className={`${baseClass}__restore`}\n collectionSlug={collectionSlug}\n globalSlug={globalSlug}\n label={collectionConfig?.labels.singular || globalConfig?.label}\n originalDocID={id}\n status={doc?.version?._status}\n versionDate={versionCreatedAt}\n versionID={versionID}\n />\n )}\n </header>\n </div>\n <div className={`${baseClass}__controls`}>\n <SelectComparison\n baseURL={compareBaseURL}\n draftsEnabled={draftsEnabled}\n latestDraftVersion={latestDraftVersion}\n latestPublishedVersion={latestPublishedVersion}\n onChange={setCompareValue}\n parentID={id}\n value={compareValue}\n versionID={versionID}\n />\n {localization && (\n <SelectLocales\n onChange={setSelectedLocales}\n options={availableLocales}\n value={selectedLocales}\n />\n )}\n </div>\n <SelectedLocalesContext.Provider\n value={{ selectedLocales: selectedLocales.map((locale) => locale.value) }}\n >\n {doc?.version && RenderedDiff}\n </SelectedLocalesContext.Provider>\n </Gutter>\n </main>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { Document, OptionObject, SanitizedCollectionPermission, SanitizedGlobalPermission } from 'payload';
1
+ import type { Document, OptionObject } from 'payload';
2
2
  export type CompareOption = {
3
3
  label: React.ReactNode | string;
4
4
  options?: CompareOption[];
@@ -6,12 +6,12 @@ export type CompareOption = {
6
6
  value: string;
7
7
  };
8
8
  export type DefaultVersionsViewProps = {
9
+ readonly canUpdate: boolean;
9
10
  readonly doc: Document;
10
- readonly docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission;
11
- readonly initialComparisonDoc: Document;
12
11
  readonly latestDraftVersion?: string;
13
12
  readonly latestPublishedVersion?: string;
14
- readonly localeOptions: OptionObject[];
13
+ readonly RenderedDiff: React.ReactNode;
14
+ readonly selectedLocales: OptionObject[];
15
15
  readonly versionID?: string;
16
16
  };
17
17
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,6BAA6B,EAC7B,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAEhB,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAA;IAC/B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAA;IACtB,QAAQ,CAAC,cAAc,EAAE,6BAA6B,GAAG,yBAAyB,CAAA;IAClF,QAAQ,CAAC,oBAAoB,EAAE,QAAQ,CAAA;IACvC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IACpC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAA;IACxC,QAAQ,CAAC,aAAa,EAAE,YAAY,EAAE,CAAA;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAErD,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAA;IAC/B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;IACzB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAA;IACtB,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IACpC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,CAAA;IACxC,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,eAAe,EAAE,YAAY,EAAE,CAAA;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/Default/types.ts"],"sourcesContent":["import type {\n Document,\n OptionObject,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n} from 'payload'\n\nexport type CompareOption = {\n label: React.ReactNode | string\n options?: CompareOption[]\n relationTo?: string\n value: string\n}\n\nexport type DefaultVersionsViewProps = {\n readonly doc: Document\n readonly docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission\n readonly initialComparisonDoc: Document\n readonly latestDraftVersion?: string\n readonly latestPublishedVersion?: string\n readonly localeOptions: OptionObject[]\n readonly versionID?: string\n}\n"],"mappings":"AAcA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/Default/types.ts"],"sourcesContent":["import type { Document, OptionObject } from 'payload'\n\nexport type CompareOption = {\n label: React.ReactNode | string\n options?: CompareOption[]\n relationTo?: string\n value: string\n}\n\nexport type DefaultVersionsViewProps = {\n readonly canUpdate: boolean\n readonly doc: Document\n readonly latestDraftVersion?: string\n readonly latestPublishedVersion?: string\n readonly RenderedDiff: React.ReactNode\n readonly selectedLocales: OptionObject[]\n readonly versionID?: string\n}\n"],"mappings":"AASA","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import type { VersionField } from 'payload';
2
+ import './index.scss';
3
+ export declare const RenderVersionFieldsToDiff: ({ versionFields, }: {
4
+ versionFields: VersionField[];
5
+ }) => React.ReactNode;
6
+ //# sourceMappingURL=RenderVersionFieldsToDiff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderVersionFieldsToDiff.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,yBAAyB,uBAEnC;IACD,aAAa,EAAE,YAAY,EAAE,CAAA;CAC9B,KAAG,KAAK,CAAC,SA8BT,CAAA"}
@@ -0,0 +1,36 @@
1
+ 'use client';
2
+
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
+ const baseClass = 'render-field-diffs';
5
+ export const RenderVersionFieldsToDiff = ({
6
+ versionFields
7
+ }) => {
8
+ return /*#__PURE__*/_jsx("div", {
9
+ className: baseClass,
10
+ children: versionFields?.map((field, fieldIndex) => {
11
+ if (field.fieldByLocale) {
12
+ const LocaleComponents = [];
13
+ for (const [locale, baseField] of Object.entries(field.fieldByLocale)) {
14
+ LocaleComponents.push(/*#__PURE__*/_jsx("div", {
15
+ className: `${baseClass}__locale`,
16
+ children: /*#__PURE__*/_jsx("div", {
17
+ className: `${baseClass}__locale-value`,
18
+ children: baseField.CustomComponent
19
+ })
20
+ }, [locale, fieldIndex].join('-')));
21
+ }
22
+ return /*#__PURE__*/_jsx("div", {
23
+ className: `${baseClass}__field`,
24
+ children: LocaleComponents
25
+ }, fieldIndex);
26
+ } else if (field.field) {
27
+ return /*#__PURE__*/_jsx("div", {
28
+ className: `${baseClass}__field field__${field.type}`,
29
+ children: field.field.CustomComponent
30
+ }, fieldIndex);
31
+ }
32
+ return null;
33
+ })
34
+ });
35
+ };
36
+ //# sourceMappingURL=RenderVersionFieldsToDiff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderVersionFieldsToDiff.js","names":["baseClass","RenderVersionFieldsToDiff","versionFields","_jsx","className","map","field","fieldIndex","fieldByLocale","LocaleComponents","locale","baseField","Object","entries","push","CustomComponent","join","type"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx"],"sourcesContent":["'use client'\nconst baseClass = 'render-field-diffs'\nimport type { VersionField } from 'payload'\n\nimport './index.scss'\n\nexport const RenderVersionFieldsToDiff = ({\n versionFields,\n}: {\n versionFields: VersionField[]\n}): React.ReactNode => {\n return (\n <div className={baseClass}>\n {versionFields?.map((field, fieldIndex) => {\n if (field.fieldByLocale) {\n const LocaleComponents: React.ReactNode[] = []\n for (const [locale, baseField] of Object.entries(field.fieldByLocale)) {\n LocaleComponents.push(\n <div className={`${baseClass}__locale`} key={[locale, fieldIndex].join('-')}>\n <div className={`${baseClass}__locale-value`}>{baseField.CustomComponent}</div>\n </div>,\n )\n }\n return (\n <div className={`${baseClass}__field`} key={fieldIndex}>\n {LocaleComponents}\n </div>\n )\n } else if (field.field) {\n return (\n <div className={`${baseClass}__field field__${field.type}`} key={fieldIndex}>\n {field.field.CustomComponent}\n </div>\n )\n }\n\n return null\n })}\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,MAAMA,SAAA,GAAY;AAKlB,OAAO,MAAMC,yBAAA,GAA4BA,CAAC;EACxCC;AAAa,CAGd;EACC,oBACEC,IAAA,CAAC;IAAIC,SAAA,EAAWJ,SAAA;cACbE,aAAA,EAAeG,GAAA,CAAI,CAACC,KAAA,EAAOC,UAAA;MAC1B,IAAID,KAAA,CAAME,aAAa,EAAE;QACvB,MAAMC,gBAAA,GAAsC,EAAE;QAC9C,KAAK,MAAM,CAACC,MAAA,EAAQC,SAAA,CAAU,IAAIC,MAAA,CAAOC,OAAO,CAACP,KAAA,CAAME,aAAa,GAAG;UACrEC,gBAAA,CAAiBK,IAAI,cACnBX,IAAA,CAAC;YAAIC,SAAA,EAAW,GAAGJ,SAAA,UAAmB;sBACpC,aAAAG,IAAA,CAAC;cAAIC,SAAA,EAAW,GAAGJ,SAAA,gBAAyB;wBAAGW,SAAA,CAAUI;;aADd,CAACL,MAAA,EAAQH,UAAA,CAAW,CAACS,IAAI,CAAC;QAI3E;QACA,oBACEb,IAAA,CAAC;UAAIC,SAAA,EAAW,GAAGJ,SAAA,SAAkB;oBAClCS;WADyCF,UAAA;MAIhD,OAAO,IAAID,KAAA,CAAMA,KAAK,EAAE;QACtB,oBACEH,IAAA,CAAC;UAAIC,SAAA,EAAW,GAAGJ,SAAA,kBAA2BM,KAAA,CAAMW,IAAI,EAAE;oBACvDX,KAAA,CAAMA,KAAK,CAACS;WADkDR,UAAA;MAIrE;MAEA,OAAO;IACT;;AAGN","ignoreList":[]}
@@ -0,0 +1,30 @@
1
+ import type { I18nClient } from '@payloadcms/translations';
2
+ import type { ClientFieldSchemaMap, Field, FieldDiffClientProps, FieldDiffServerProps, FieldTypes, PayloadComponent, PayloadRequest, SanitizedFieldPermissions, VersionField } from 'payload';
3
+ export type BuildVersionFieldsArgs = {
4
+ clientSchemaMap: ClientFieldSchemaMap;
5
+ comparisonSiblingData: object;
6
+ customDiffComponents: Partial<Record<FieldTypes, PayloadComponent<FieldDiffServerProps, FieldDiffClientProps>>>;
7
+ entitySlug: string;
8
+ fieldPermissions: {
9
+ [key: string]: SanitizedFieldPermissions;
10
+ } | true;
11
+ fields: Field[];
12
+ i18n: I18nClient;
13
+ parentIndexPath: string;
14
+ parentPath: string;
15
+ parentSchemaPath: string;
16
+ req: PayloadRequest;
17
+ selectedLocales: string[];
18
+ versionSiblingData: object;
19
+ };
20
+ /**
21
+ * Build up an object that contains rendered diff components for each field.
22
+ * This is then sent to the client to be rendered.
23
+ *
24
+ * Here, the server is responsible for traversing through the document data and building up this
25
+ * version state object.
26
+ */
27
+ export declare const buildVersionFields: ({ clientSchemaMap, comparisonSiblingData, customDiffComponents, entitySlug, fieldPermissions, fields, i18n, parentIndexPath, parentPath, parentSchemaPath, req, selectedLocales, versionSiblingData, }: BuildVersionFieldsArgs) => {
28
+ versionFields: VersionField[];
29
+ };
30
+ //# sourceMappingURL=buildVersionFields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildVersionFields.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/RenderFieldsToDiff/buildVersionFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAGV,oBAAoB,EACpB,KAAK,EACL,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,yBAAyB,EACzB,YAAY,EACb,MAAM,SAAS,CAAA;AAUhB,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,EAAE,oBAAoB,CAAA;IACrC,qBAAqB,EAAE,MAAM,CAAA;IAC7B,oBAAoB,EAAE,OAAO,CAC3B,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAC,CACjF,CAAA;IACD,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EACZ;QACE,CAAC,GAAG,EAAE,MAAM,GAAG,yBAAyB,CAAA;KACzC,GACD,IAAI,CAAA;IACR,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,UAAU,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;IACxB,GAAG,EAAE,cAAc,CAAA;IACnB,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,2MAc5B,sBAAsB,KAAG;IAC1B,aAAa,EAAE,YAAY,EAAE,CAAA;CA8F9B,CAAA"}