@payloadcms/ui 3.34.0-canary.4 → 3.34.0

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 (115) hide show
  1. package/dist/elements/AddNewRelation/index.js +16 -18
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/GenerateConfirmation/index.js +66 -30
  4. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  5. package/dist/elements/Localizer/index.js +4 -4
  6. package/dist/elements/Localizer/index.js.map +1 -1
  7. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts +2 -0
  8. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  9. package/dist/elements/PublishButton/ScheduleDrawer/index.js +5 -3
  10. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  11. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  12. package/dist/elements/PublishButton/index.js +127 -302
  13. package/dist/elements/PublishButton/index.js.map +1 -1
  14. package/dist/elements/Status/index.js +92 -168
  15. package/dist/elements/Status/index.js.map +1 -1
  16. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +4 -4
  17. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  18. package/dist/elements/Table/OrderableTable.js +0 -1
  19. package/dist/elements/Table/OrderableTable.js.map +1 -1
  20. package/dist/elements/Table/index.d.ts.map +1 -1
  21. package/dist/elements/Table/index.js +1 -1
  22. package/dist/elements/Table/index.js.map +1 -1
  23. package/dist/elements/WhereBuilder/Condition/Date/index.d.ts +1 -1
  24. package/dist/elements/WhereBuilder/Condition/Date/index.d.ts.map +1 -1
  25. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  26. package/dist/elements/WhereBuilder/Condition/Date/types.d.ts +1 -1
  27. package/dist/elements/WhereBuilder/Condition/Date/types.d.ts.map +1 -1
  28. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  29. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.d.ts +2 -2
  30. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.d.ts.map +1 -1
  31. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  32. package/dist/elements/WhereBuilder/Condition/Number/index.d.ts +1 -1
  33. package/dist/elements/WhereBuilder/Condition/Number/index.d.ts.map +1 -1
  34. package/dist/elements/WhereBuilder/Condition/Number/index.js +103 -17
  35. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  36. package/dist/elements/WhereBuilder/Condition/Number/types.d.ts +2 -2
  37. package/dist/elements/WhereBuilder/Condition/Number/types.d.ts.map +1 -1
  38. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  39. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts +1 -1
  40. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  41. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  42. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +1 -1
  43. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
  44. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  45. package/dist/elements/WhereBuilder/Condition/Select/index.d.ts +1 -1
  46. package/dist/elements/WhereBuilder/Condition/Select/index.d.ts.map +1 -1
  47. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  48. package/dist/elements/WhereBuilder/Condition/Select/types.d.ts +1 -1
  49. package/dist/elements/WhereBuilder/Condition/Select/types.d.ts.map +1 -1
  50. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  51. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts +1 -1
  52. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  53. package/dist/elements/WhereBuilder/Condition/Text/index.js +102 -17
  54. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  55. package/dist/elements/WhereBuilder/Condition/Text/types.d.ts +2 -2
  56. package/dist/elements/WhereBuilder/Condition/Text/types.d.ts.map +1 -1
  57. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  58. package/dist/elements/WhereBuilder/Condition/index.d.ts +2 -2
  59. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  60. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  61. package/dist/elements/WhereBuilder/index.js +5 -5
  62. package/dist/elements/WhereBuilder/index.js.map +1 -1
  63. package/dist/elements/WhereBuilder/types.d.ts +3 -2
  64. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  65. package/dist/elements/WhereBuilder/types.js.map +1 -1
  66. package/dist/exports/client/{CodeEditor-J4IKAVAK.js → CodeEditor-7N7BMHRP.js} +2 -2
  67. package/dist/exports/client/{DatePicker-DMHV2M2L.js → DatePicker-4DPXLCID.js} +2 -2
  68. package/dist/exports/client/{chunk-3AA2TJQ5.js → chunk-OA4JPMVI.js} +1 -1
  69. package/dist/exports/client/{chunk-3AA2TJQ5.js.map → chunk-OA4JPMVI.js.map} +1 -1
  70. package/dist/exports/client/{chunk-PKQOCWZD.js → chunk-QPA2ZA5J.js} +1 -1
  71. package/dist/exports/client/{chunk-PKQOCWZD.js.map → chunk-QPA2ZA5J.js.map} +1 -1
  72. package/dist/exports/client/index.d.ts +3 -0
  73. package/dist/exports/client/index.d.ts.map +1 -1
  74. package/dist/exports/client/index.js +23 -23
  75. package/dist/exports/client/index.js.map +4 -4
  76. package/dist/fields/Tabs/index.js +2 -2
  77. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  78. package/dist/forms/Form/fieldReducer.js +16 -0
  79. package/dist/forms/Form/fieldReducer.js.map +1 -1
  80. package/dist/forms/Form/index.d.ts.map +1 -1
  81. package/dist/forms/Form/index.js +37 -54
  82. package/dist/forms/Form/index.js.map +1 -1
  83. package/dist/forms/Form/mergeServerFormState.d.ts +8 -9
  84. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  85. package/dist/forms/Form/mergeServerFormState.js +50 -101
  86. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  87. package/dist/forms/Form/types.d.ts +7 -1
  88. package/dist/forms/Form/types.d.ts.map +1 -1
  89. package/dist/forms/Form/types.js.map +1 -1
  90. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  91. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +16 -5
  92. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  93. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  94. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  95. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  96. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  97. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
  98. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  99. package/dist/styles.css +1 -1
  100. package/dist/utilities/renderTable.d.ts.map +1 -1
  101. package/dist/utilities/renderTable.js +1 -5
  102. package/dist/utilities/renderTable.js.map +1 -1
  103. package/dist/views/Edit/Auth/index.js +2 -2
  104. package/dist/views/Edit/Auth/index.js.map +1 -1
  105. package/package.json +9 -9
  106. package/dist/forms/Form/mergeErrorPaths.d.ts +0 -5
  107. package/dist/forms/Form/mergeErrorPaths.d.ts.map +0 -1
  108. package/dist/forms/Form/mergeErrorPaths.js +0 -30
  109. package/dist/forms/Form/mergeErrorPaths.js.map +0 -1
  110. package/dist/utilities/arraysHaveSameStrings.d.ts +0 -2
  111. package/dist/utilities/arraysHaveSameStrings.d.ts.map +0 -1
  112. package/dist/utilities/arraysHaveSameStrings.js +0 -17
  113. package/dist/utilities/arraysHaveSameStrings.js.map +0 -1
  114. /package/dist/exports/client/{CodeEditor-J4IKAVAK.js.map → CodeEditor-7N7BMHRP.js.map} +0 -0
  115. /package/dist/exports/client/{DatePicker-DMHV2M2L.js.map → DatePicker-4DPXLCID.js.map} +0 -0
@@ -1,6 +1,5 @@
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
4
  import { useModal } from '@faceless-ui/modal';
6
5
  import React, { useCallback } from 'react';
@@ -16,7 +15,6 @@ import { ConfirmationModal } from '../ConfirmationModal/index.js';
16
15
  import './index.scss';
17
16
  const baseClass = 'status';
18
17
  export const Status = () => {
19
- const $ = _c(37);
20
18
  const {
21
19
  id,
22
20
  collectionSlug,
@@ -33,15 +31,13 @@ export const Status = () => {
33
31
  toggleModal
34
32
  } = useModal();
35
33
  const {
36
- config: t0
34
+ config: {
35
+ routes: {
36
+ api
37
+ },
38
+ serverURL
39
+ }
37
40
  } = useConfig();
38
- const {
39
- routes: t1,
40
- serverURL
41
- } = t0;
42
- const {
43
- api
44
- } = t1;
45
41
  const {
46
42
  reset: resetForm
47
43
  } = useForm();
@@ -56,183 +52,111 @@ export const Status = () => {
56
52
  const revertModalSlug = `confirm-revert-${id}`;
57
53
  let statusToRender;
58
54
  if (unpublishedVersionCount > 0 && hasPublishedDoc) {
59
- statusToRender = "changed";
60
- } else {
61
- if (!hasPublishedDoc) {
62
- statusToRender = "draft";
63
- } else {
64
- if (hasPublishedDoc && unpublishedVersionCount <= 0) {
65
- statusToRender = "published";
66
- }
67
- }
55
+ statusToRender = 'changed';
56
+ } else if (!hasPublishedDoc) {
57
+ statusToRender = 'draft';
58
+ } else if (hasPublishedDoc && unpublishedVersionCount <= 0) {
59
+ statusToRender = 'published';
68
60
  }
69
- let t2;
70
- if ($[0] !== api || $[1] !== collectionSlug || $[2] !== globalSlug || $[3] !== i18n.language || $[4] !== id || $[5] !== incrementVersionCount || $[6] !== locale || $[7] !== resetForm || $[8] !== serverURL || $[9] !== setHasPublishedDoc || $[10] !== setMostRecentVersionIsAutosaved || $[11] !== setUnpublishedVersionCount || $[12] !== t) {
71
- t2 = async action => {
72
- let url;
73
- let method;
74
- let body;
75
- if (action === "unpublish") {
76
- body = {
77
- _status: "draft"
78
- };
79
- }
80
- if (collectionSlug) {
81
- url = `${serverURL}${api}/${collectionSlug}/${id}?locale=${locale}&fallback-locale=null&depth=0`;
82
- method = "patch";
61
+ const performAction = useCallback(async action => {
62
+ let url;
63
+ let method;
64
+ let body;
65
+ if (action === 'unpublish') {
66
+ body = {
67
+ _status: 'draft'
68
+ };
69
+ }
70
+ if (collectionSlug) {
71
+ url = `${serverURL}${api}/${collectionSlug}/${id}?locale=${locale}&fallback-locale=null&depth=0`;
72
+ method = 'patch';
73
+ }
74
+ if (globalSlug) {
75
+ url = `${serverURL}${api}/globals/${globalSlug}?locale=${locale}&fallback-locale=null&depth=0`;
76
+ method = 'post';
77
+ }
78
+ if (action === 'revert') {
79
+ const publishedDoc = await requests.get(url, {
80
+ headers: {
81
+ 'Accept-Language': i18n.language,
82
+ 'Content-Type': 'application/json'
83
+ }
84
+ }).then(res => res.json());
85
+ body = publishedDoc;
86
+ }
87
+ const res_0 = await requests[method](url, {
88
+ body: JSON.stringify(body),
89
+ headers: {
90
+ 'Accept-Language': i18n.language,
91
+ 'Content-Type': 'application/json'
83
92
  }
93
+ });
94
+ if (res_0.status === 200) {
95
+ let data;
96
+ const json = await res_0.json();
84
97
  if (globalSlug) {
85
- url = `${serverURL}${api}/globals/${globalSlug}?locale=${locale}&fallback-locale=null&depth=0`;
86
- method = "post";
98
+ data = json.result;
99
+ } else if (collectionSlug) {
100
+ data = json.doc;
87
101
  }
88
- if (action === "revert") {
89
- const publishedDoc = await requests.get(url, {
90
- headers: {
91
- "Accept-Language": i18n.language,
92
- "Content-Type": "application/json"
93
- }
94
- }).then(_temp);
95
- body = publishedDoc;
102
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
103
+ resetForm(data);
104
+ toast.success(json.message);
105
+ incrementVersionCount();
106
+ setMostRecentVersionIsAutosaved(false);
107
+ if (action === 'unpublish') {
108
+ setHasPublishedDoc(false);
109
+ } else if (action === 'revert') {
110
+ setUnpublishedVersionCount(0);
96
111
  }
97
- const res_0 = await requests[method](url, {
98
- body: JSON.stringify(body),
99
- headers: {
100
- "Accept-Language": i18n.language,
101
- "Content-Type": "application/json"
102
- }
103
- });
104
- if (res_0.status === 200) {
105
- let data;
106
- const json = await res_0.json();
107
- if (globalSlug) {
108
- data = json.result;
109
- } else {
110
- if (collectionSlug) {
111
- data = json.doc;
112
- }
113
- }
114
- resetForm(data);
115
- toast.success(json.message);
116
- incrementVersionCount();
117
- setMostRecentVersionIsAutosaved(false);
118
- if (action === "unpublish") {
119
- setHasPublishedDoc(false);
120
- } else {
121
- if (action === "revert") {
122
- setUnpublishedVersionCount(0);
123
- }
124
- }
125
- } else {
126
- toast.error(t("error:unPublishingDocument"));
127
- }
128
- };
129
- $[0] = api;
130
- $[1] = collectionSlug;
131
- $[2] = globalSlug;
132
- $[3] = i18n.language;
133
- $[4] = id;
134
- $[5] = incrementVersionCount;
135
- $[6] = locale;
136
- $[7] = resetForm;
137
- $[8] = serverURL;
138
- $[9] = setHasPublishedDoc;
139
- $[10] = setMostRecentVersionIsAutosaved;
140
- $[11] = setUnpublishedVersionCount;
141
- $[12] = t;
142
- $[13] = t2;
143
- } else {
144
- t2 = $[13];
145
- }
146
- const performAction = t2;
112
+ } else {
113
+ toast.error(t('error:unPublishingDocument'));
114
+ }
115
+ }, [api, collectionSlug, globalSlug, id, i18n.language, incrementVersionCount, locale, resetForm, serverURL, setUnpublishedVersionCount, setMostRecentVersionIsAutosaved, t, setHasPublishedDoc]);
147
116
  const canUpdate = docPermissions?.update;
148
117
  if (statusToRender) {
149
- const t3 = `${t("version:status")}: ${t(`version:${statusToRender}`)}`;
150
- let t4;
151
- if ($[14] !== canUpdate || $[15] !== performAction || $[16] !== revertModalSlug || $[17] !== statusToRender || $[18] !== t || $[19] !== t3 || $[20] !== toggleModal || $[21] !== unPublishModalSlug) {
152
- let t5;
153
- if ($[23] !== canUpdate || $[24] !== performAction || $[25] !== statusToRender || $[26] !== t || $[27] !== toggleModal || $[28] !== unPublishModalSlug) {
154
- t5 = canUpdate && statusToRender === "published" && _jsxs(React.Fragment, {
155
- children: ["\xA0\u2014\xA0", _jsx(Button, {
118
+ return /*#__PURE__*/_jsx("div", {
119
+ className: baseClass,
120
+ title: `${t('version:status')}: ${t(`version:${statusToRender}`)}`,
121
+ children: /*#__PURE__*/_jsxs("div", {
122
+ className: `${baseClass}__value-wrap`,
123
+ children: [/*#__PURE__*/_jsxs("span", {
124
+ className: `${baseClass}__label`,
125
+ children: [t('version:status'), ": "]
126
+ }), /*#__PURE__*/_jsx("span", {
127
+ className: `${baseClass}__value`,
128
+ children: t(`version:${statusToRender}`)
129
+ }), canUpdate && statusToRender === 'published' && /*#__PURE__*/_jsxs(React.Fragment, {
130
+ children: [" — ", /*#__PURE__*/_jsx(Button, {
156
131
  buttonStyle: "none",
157
132
  className: `${baseClass}__action`,
158
133
  onClick: () => toggleModal(unPublishModalSlug),
159
- children: t("version:unpublish")
160
- }), _jsx(ConfirmationModal, {
161
- body: t("version:aboutToUnpublish"),
162
- confirmingLabel: t("version:unpublishing"),
163
- heading: t("version:confirmUnpublish"),
134
+ children: t('version:unpublish')
135
+ }), /*#__PURE__*/_jsx(ConfirmationModal, {
136
+ body: t('version:aboutToUnpublish'),
137
+ confirmingLabel: t('version:unpublishing'),
138
+ heading: t('version:confirmUnpublish'),
164
139
  modalSlug: unPublishModalSlug,
165
- onConfirm: () => performAction("unpublish")
140
+ onConfirm: () => performAction('unpublish')
166
141
  })]
167
- });
168
- $[23] = canUpdate;
169
- $[24] = performAction;
170
- $[25] = statusToRender;
171
- $[26] = t;
172
- $[27] = toggleModal;
173
- $[28] = unPublishModalSlug;
174
- $[29] = t5;
175
- } else {
176
- t5 = $[29];
177
- }
178
- let t6;
179
- if ($[30] !== canUpdate || $[31] !== performAction || $[32] !== revertModalSlug || $[33] !== statusToRender || $[34] !== t || $[35] !== toggleModal) {
180
- t6 = canUpdate && statusToRender === "changed" && _jsxs(React.Fragment, {
181
- children: ["\xA0\u2014\xA0", _jsx(Button, {
142
+ }), canUpdate && statusToRender === 'changed' && /*#__PURE__*/_jsxs(React.Fragment, {
143
+ children: [" — ", /*#__PURE__*/_jsx(Button, {
182
144
  buttonStyle: "none",
183
145
  className: `${baseClass}__action`,
184
146
  id: "action-revert-to-published",
185
147
  onClick: () => toggleModal(revertModalSlug),
186
- children: t("version:revertToPublished")
187
- }), _jsx(ConfirmationModal, {
188
- body: t("version:aboutToRevertToPublished"),
189
- confirmingLabel: t("version:reverting"),
190
- heading: t("version:confirmRevertToSaved"),
148
+ children: t('version:revertToPublished')
149
+ }), /*#__PURE__*/_jsx(ConfirmationModal, {
150
+ body: t('version:aboutToRevertToPublished'),
151
+ confirmingLabel: t('version:reverting'),
152
+ heading: t('version:confirmRevertToSaved'),
191
153
  modalSlug: revertModalSlug,
192
- onConfirm: () => performAction("revert")
154
+ onConfirm: () => performAction('revert')
193
155
  })]
194
- });
195
- $[30] = canUpdate;
196
- $[31] = performAction;
197
- $[32] = revertModalSlug;
198
- $[33] = statusToRender;
199
- $[34] = t;
200
- $[35] = toggleModal;
201
- $[36] = t6;
202
- } else {
203
- t6 = $[36];
204
- }
205
- t4 = _jsx("div", {
206
- className: baseClass,
207
- title: t3,
208
- children: _jsxs("div", {
209
- className: `${baseClass}__value-wrap`,
210
- children: [_jsxs("span", {
211
- className: `${baseClass}__label`,
212
- children: [t("version:status"), ":\xA0"]
213
- }), _jsx("span", {
214
- className: `${baseClass}__value`,
215
- children: t(`version:${statusToRender}`)
216
- }), t5, t6]
217
- })
218
- });
219
- $[14] = canUpdate;
220
- $[15] = performAction;
221
- $[16] = revertModalSlug;
222
- $[17] = statusToRender;
223
- $[18] = t;
224
- $[19] = t3;
225
- $[20] = toggleModal;
226
- $[21] = unPublishModalSlug;
227
- $[22] = t4;
228
- } else {
229
- t4 = $[22];
230
- }
231
- return t4;
156
+ })]
157
+ })
158
+ });
232
159
  }
233
160
  return null;
234
161
  };
235
- function _temp(res) {
236
- return res.json();
237
- }
238
162
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","React","useCallback","toast","useForm","useConfig","useDocumentInfo","useLocale","useTranslation","requests","Button","ConfirmationModal","baseClass","Status","$","id","collectionSlug","docPermissions","globalSlug","hasPublishedDoc","incrementVersionCount","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","toggleModal","config","t0","routes","t1","serverURL","api","reset","resetForm","code","locale","i18n","t","unPublishModalSlug","revertModalSlug","statusToRender","t2","language","action","url","method","body","publishedDoc","get","headers","then","_temp","res_0","JSON","stringify","res","status","data","json","result","doc","success","message","error","performAction","canUpdate","update","t3","t4","t5","_jsxs","Fragment","children","_jsx","buttonStyle","className","onClick","confirmingLabel","heading","modalSlug","onConfirm","t6","title"],"sources":["../../../src/elements/Status/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport './index.scss'\n\nconst baseClass = 'status'\n\nexport const Status: React.FC = () => {\n const {\n id,\n collectionSlug,\n docPermissions,\n globalSlug,\n hasPublishedDoc,\n incrementVersionCount,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n } = useDocumentInfo()\n const { toggleModal } = useModal()\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n const { reset: resetForm } = useForm()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const unPublishModalSlug = `confirm-un-publish-${id}`\n const revertModalSlug = `confirm-revert-${id}`\n\n let statusToRender: 'changed' | 'draft' | 'published'\n\n if (unpublishedVersionCount > 0 && hasPublishedDoc) {\n statusToRender = 'changed'\n } else if (!hasPublishedDoc) {\n statusToRender = 'draft'\n } else if (hasPublishedDoc && unpublishedVersionCount <= 0) {\n statusToRender = 'published'\n }\n\n const performAction = useCallback(\n async (action: 'revert' | 'unpublish') => {\n let url\n let method\n let body\n\n if (action === 'unpublish') {\n body = {\n _status: 'draft',\n }\n }\n\n if (collectionSlug) {\n url = `${serverURL}${api}/${collectionSlug}/${id}?locale=${locale}&fallback-locale=null&depth=0`\n method = 'patch'\n }\n\n if (globalSlug) {\n url = `${serverURL}${api}/globals/${globalSlug}?locale=${locale}&fallback-locale=null&depth=0`\n method = 'post'\n }\n\n if (action === 'revert') {\n const publishedDoc = await requests\n .get(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then((res) => res.json())\n\n body = publishedDoc\n }\n\n const res = await requests[method](url, {\n body: JSON.stringify(body),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n if (res.status === 200) {\n let data\n const json = await res.json()\n\n if (globalSlug) {\n data = json.result\n } else if (collectionSlug) {\n data = json.doc\n }\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n resetForm(data)\n toast.success(json.message)\n incrementVersionCount()\n setMostRecentVersionIsAutosaved(false)\n\n if (action === 'unpublish') {\n setHasPublishedDoc(false)\n } else if (action === 'revert') {\n setUnpublishedVersionCount(0)\n }\n } else {\n toast.error(t('error:unPublishingDocument'))\n }\n },\n [\n api,\n collectionSlug,\n globalSlug,\n id,\n i18n.language,\n incrementVersionCount,\n locale,\n resetForm,\n serverURL,\n setUnpublishedVersionCount,\n setMostRecentVersionIsAutosaved,\n t,\n setHasPublishedDoc,\n ],\n )\n\n const canUpdate = docPermissions?.update\n\n if (statusToRender) {\n return (\n <div\n className={baseClass}\n title={`${t('version:status')}: ${t(`version:${statusToRender}`)}`}\n >\n <div className={`${baseClass}__value-wrap`}>\n <span className={`${baseClass}__label`}>{t('version:status')}:&nbsp;</span>\n <span className={`${baseClass}__value`}>{t(`version:${statusToRender}`)}</span>\n {canUpdate && statusToRender === 'published' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n onClick={() => toggleModal(unPublishModalSlug)}\n >\n {t('version:unpublish')}\n </Button>\n <ConfirmationModal\n body={t('version:aboutToUnpublish')}\n confirmingLabel={t('version:unpublishing')}\n heading={t('version:confirmUnpublish')}\n modalSlug={unPublishModalSlug}\n onConfirm={() => performAction('unpublish')}\n />\n </React.Fragment>\n )}\n {canUpdate && statusToRender === 'changed' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n id=\"action-revert-to-published\"\n onClick={() => toggleModal(revertModalSlug)}\n >\n {t('version:revertToPublished')}\n </Button>\n <ConfirmationModal\n body={t('version:aboutToRevertToPublished')}\n confirmingLabel={t('version:reverting')}\n heading={t('version:confirmRevertToSaved')}\n modalSlug={revertModalSlug}\n onConfirm={() => performAction('revert')}\n />\n </React.Fragment>\n )}\n </div>\n </div>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","React","useCallback","toast","useForm","useConfig","useDocumentInfo","useLocale","useTranslation","requests","Button","ConfirmationModal","baseClass","Status","id","collectionSlug","docPermissions","globalSlug","hasPublishedDoc","incrementVersionCount","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","toggleModal","config","routes","api","serverURL","reset","resetForm","code","locale","i18n","t","unPublishModalSlug","revertModalSlug","statusToRender","performAction","action","url","method","body","_status","publishedDoc","get","headers","language","then","res","json","JSON","stringify","status","data","result","doc","success","message","error","canUpdate","update","_jsx","className","title","_jsxs","Fragment","buttonStyle","onClick","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/Status/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport './index.scss'\n\nconst baseClass = 'status'\n\nexport const Status: React.FC = () => {\n const {\n id,\n collectionSlug,\n docPermissions,\n globalSlug,\n hasPublishedDoc,\n incrementVersionCount,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n } = useDocumentInfo()\n const { toggleModal } = useModal()\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n const { reset: resetForm } = useForm()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const unPublishModalSlug = `confirm-un-publish-${id}`\n const revertModalSlug = `confirm-revert-${id}`\n\n let statusToRender: 'changed' | 'draft' | 'published'\n\n if (unpublishedVersionCount > 0 && hasPublishedDoc) {\n statusToRender = 'changed'\n } else if (!hasPublishedDoc) {\n statusToRender = 'draft'\n } else if (hasPublishedDoc && unpublishedVersionCount <= 0) {\n statusToRender = 'published'\n }\n\n const performAction = useCallback(\n async (action: 'revert' | 'unpublish') => {\n let url\n let method\n let body\n\n if (action === 'unpublish') {\n body = {\n _status: 'draft',\n }\n }\n\n if (collectionSlug) {\n url = `${serverURL}${api}/${collectionSlug}/${id}?locale=${locale}&fallback-locale=null&depth=0`\n method = 'patch'\n }\n\n if (globalSlug) {\n url = `${serverURL}${api}/globals/${globalSlug}?locale=${locale}&fallback-locale=null&depth=0`\n method = 'post'\n }\n\n if (action === 'revert') {\n const publishedDoc = await requests\n .get(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then((res) => res.json())\n\n body = publishedDoc\n }\n\n const res = await requests[method](url, {\n body: JSON.stringify(body),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n if (res.status === 200) {\n let data\n const json = await res.json()\n\n if (globalSlug) {\n data = json.result\n } else if (collectionSlug) {\n data = json.doc\n }\n\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n resetForm(data)\n toast.success(json.message)\n incrementVersionCount()\n setMostRecentVersionIsAutosaved(false)\n\n if (action === 'unpublish') {\n setHasPublishedDoc(false)\n } else if (action === 'revert') {\n setUnpublishedVersionCount(0)\n }\n } else {\n toast.error(t('error:unPublishingDocument'))\n }\n },\n [\n api,\n collectionSlug,\n globalSlug,\n id,\n i18n.language,\n incrementVersionCount,\n locale,\n resetForm,\n serverURL,\n setUnpublishedVersionCount,\n setMostRecentVersionIsAutosaved,\n t,\n setHasPublishedDoc,\n ],\n )\n\n const canUpdate = docPermissions?.update\n\n if (statusToRender) {\n return (\n <div\n className={baseClass}\n title={`${t('version:status')}: ${t(`version:${statusToRender}`)}`}\n >\n <div className={`${baseClass}__value-wrap`}>\n <span className={`${baseClass}__label`}>{t('version:status')}:&nbsp;</span>\n <span className={`${baseClass}__value`}>{t(`version:${statusToRender}`)}</span>\n {canUpdate && statusToRender === 'published' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n onClick={() => toggleModal(unPublishModalSlug)}\n >\n {t('version:unpublish')}\n </Button>\n <ConfirmationModal\n body={t('version:aboutToUnpublish')}\n confirmingLabel={t('version:unpublishing')}\n heading={t('version:confirmUnpublish')}\n modalSlug={unPublishModalSlug}\n onConfirm={() => performAction('unpublish')}\n />\n </React.Fragment>\n )}\n {canUpdate && statusToRender === 'changed' && (\n <React.Fragment>\n &nbsp;&mdash;&nbsp;\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__action`}\n id=\"action-revert-to-published\"\n onClick={() => toggleModal(revertModalSlug)}\n >\n {t('version:revertToPublished')}\n </Button>\n <ConfirmationModal\n body={t('version:aboutToRevertToPublished')}\n confirmingLabel={t('version:reverting')}\n heading={t('version:confirmRevertToSaved')}\n modalSlug={revertModalSlug}\n onConfirm={() => performAction('revert')}\n />\n </React.Fragment>\n )}\n </div>\n </div>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
@@ -124,9 +124,9 @@ export const RelationshipCell = t0 => {
124
124
  }
125
125
  useEffect(t6, t7);
126
126
  let t8;
127
- if ($[19] !== cellData || $[20] !== config.admin.dateFormat || $[21] !== customCellContext || $[22] !== documents || $[23] !== field || $[24] !== getEntityConfig || $[25] !== i18n || $[26] !== intersectionRef || $[27] !== label || $[28] !== t || $[29] !== values) {
127
+ if ($[19] !== cellData || $[20] !== config.admin || $[21] !== customCellContext || $[22] !== documents || $[23] !== field || $[24] !== getEntityConfig || $[25] !== i18n || $[26] !== intersectionRef || $[27] !== label || $[28] !== t || $[29] !== values) {
128
128
  let t9;
129
- if ($[31] !== config.admin.dateFormat || $[32] !== customCellContext || $[33] !== documents || $[34] !== field || $[35] !== getEntityConfig || $[36] !== i18n || $[37] !== t || $[38] !== values.length) {
129
+ if ($[31] !== config.admin || $[32] !== customCellContext || $[33] !== documents || $[34] !== field || $[35] !== getEntityConfig || $[36] !== i18n || $[37] !== t || $[38] !== values.length) {
130
130
  t9 = (t10, i) => {
131
131
  const {
132
132
  relationTo: relationTo_0,
@@ -162,7 +162,7 @@ export const RelationshipCell = t0 => {
162
162
  children: [document === false && `${t("general:untitled")} - ID: ${value}`, document === null && `${t("general:loading")}...`, document ? fileField || label_0 : null, values.length > i + 1 && ", "]
163
163
  }, i);
164
164
  };
165
- $[31] = config.admin.dateFormat;
165
+ $[31] = config.admin;
166
166
  $[32] = customCellContext;
167
167
  $[33] = documents;
168
168
  $[34] = field;
@@ -185,7 +185,7 @@ export const RelationshipCell = t0 => {
185
185
  })]
186
186
  });
187
187
  $[19] = cellData;
188
- $[20] = config.admin.dateFormat;
188
+ $[20] = config.admin;
189
189
  $[21] = customCellContext;
190
190
  $[22] = documents;
191
191
  $[23] = field;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useEffect","useMemo","useState","useIntersect","useConfig","useTranslation","canUseDOM","formatDocTitle","useListRelationships","FileCell","baseClass","totalToShow","RelationshipCell","t0","$","cellData","cellDataFromProps","customCellProps","customCellContext","field","t1","label","relationTo","collection","t2","docs","config","getEntityConfig","collections","routes","intersectionRef","entry","t3","Symbol","for","values","setValues","documents","getRelationships","hasRequested","setHasRequested","i18n","t","isAboveViewport","boundingClientRect","top","window","innerHeight","t4","formattedValues","arrayCellData","Array","isArray","slice","length","forEach","cell","push","value","t5","api","t6","t7","t8","admin","dateFormat","t9","t10","i","relationTo_0","document","relatedCollection","collectionSlug","label_0","collectionConfig","data","fallback","fileField","type","fieldPreviewAllowed","displayPreview","undefined","previewAllowed","upload","slug","rowData","_jsxs","Fragment","children","className","ref","map","count","items"],"sources":["../../../../../../src/elements/Table/DefaultCell/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type {\n DefaultCellComponentProps,\n JoinFieldClient,\n RelationshipFieldClient,\n UploadFieldClient,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { useIntersect } from '../../../../../hooks/useIntersect.js'\nimport { useConfig } from '../../../../../providers/Config/index.js'\nimport { useTranslation } from '../../../../../providers/Translation/index.js'\nimport { canUseDOM } from '../../../../../utilities/canUseDOM.js'\nimport { formatDocTitle } from '../../../../../utilities/formatDocTitle/index.js'\nimport { useListRelationships } from '../../../RelationshipProvider/index.js'\nimport { FileCell } from '../File/index.js'\nimport './index.scss'\n\ntype Value = { relationTo: string; value: number | string }\nconst baseClass = 'relationship-cell'\nconst totalToShow = 3\n\nexport type RelationshipCellProps = DefaultCellComponentProps<\n JoinFieldClient | RelationshipFieldClient | UploadFieldClient\n>\n\nexport const RelationshipCell: React.FC<RelationshipCellProps> = ({\n cellData: cellDataFromProps,\n customCellProps: customCellContext,\n field,\n field: { label },\n}) => {\n // conditionally extract relationTo both both relationship and join fields\n const relationTo =\n ('relationTo' in field && field.relationTo) || ('collection' in field && field.collection)\n\n // conditionally extract docs from join fields\n const cellData = useMemo(() => {\n return 'collection' in field ? cellDataFromProps?.docs : cellDataFromProps\n }, [cellDataFromProps, field])\n\n const { config, getEntityConfig } = useConfig()\n const { collections, routes } = config\n const [intersectionRef, entry] = useIntersect()\n const [values, setValues] = useState<Value[]>([])\n const { documents, getRelationships } = useListRelationships()\n const [hasRequested, setHasRequested] = useState(false)\n const { i18n, t } = useTranslation()\n\n const isAboveViewport = canUseDOM ? entry?.boundingClientRect?.top < window.innerHeight : false\n\n useEffect(() => {\n if ((cellData || typeof cellData === 'number') && isAboveViewport && !hasRequested) {\n const formattedValues: Value[] = []\n const arrayCellData = Array.isArray(cellData) ? cellData : [cellData]\n arrayCellData\n .slice(0, arrayCellData.length < totalToShow ? arrayCellData.length : totalToShow)\n .forEach((cell) => {\n if (typeof cell === 'object' && 'relationTo' in cell && 'value' in cell) {\n formattedValues.push(cell)\n }\n if (\n (typeof cell === 'number' || typeof cell === 'string') &&\n typeof relationTo === 'string'\n ) {\n formattedValues.push({\n relationTo,\n value: cell,\n })\n }\n })\n getRelationships(formattedValues)\n setHasRequested(true)\n setValues(formattedValues)\n }\n }, [\n cellData,\n relationTo,\n collections,\n isAboveViewport,\n routes.api,\n hasRequested,\n getRelationships,\n ])\n\n useEffect(() => {\n if (hasRequested) {\n setHasRequested(false)\n }\n }, [cellData])\n\n return (\n <div className={baseClass} ref={intersectionRef}>\n {values.map(({ relationTo, value }, i) => {\n const document = documents[relationTo][value]\n const relatedCollection = getEntityConfig({\n collectionSlug: relationTo,\n })\n\n const label = formatDocTitle({\n collectionConfig: relatedCollection,\n data: document || null,\n dateFormat: config.admin.dateFormat,\n fallback: `${t('general:untitled')} - ID: ${value}`,\n i18n,\n })\n\n let fileField = null\n\n if (field.type === 'upload') {\n const fieldPreviewAllowed = 'displayPreview' in field ? field.displayPreview : undefined\n const previewAllowed =\n fieldPreviewAllowed ?? relatedCollection.upload?.displayPreview ?? true\n\n if (previewAllowed && document) {\n fileField = (\n <FileCell\n cellData={label}\n collectionConfig={relatedCollection}\n collectionSlug={relatedCollection.slug}\n customCellProps={customCellContext}\n field={field}\n rowData={document}\n />\n )\n }\n }\n\n return (\n <React.Fragment key={i}>\n {document === false && `${t('general:untitled')} - ID: ${value}`}\n {document === null && `${t('general:loading')}...`}\n {document ? fileField || label : null}\n {values.length > i + 1 && ', '}\n </React.Fragment>\n )\n })}\n {Array.isArray(cellData) &&\n cellData.length > totalToShow &&\n t('fields:itemsAndMore', { count: cellData.length - totalToShow, items: '' })}\n {values.length === 0 && t('general:noLabel', { label: getTranslation(label || '', i18n) })}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useEffect","useMemo","useState","useIntersect","useConfig","useTranslation","canUseDOM","formatDocTitle","useListRelationships","FileCell","baseClass","totalToShow","RelationshipCell","t0","$","cellData","cellDataFromProps","customCellProps","customCellContext","field","t1","label","relationTo","collection","t2","docs","config","getEntityConfig","collections","routes","intersectionRef","entry","t3","Symbol","for","values","setValues","documents","getRelationships","hasRequested","setHasRequested","i18n","t","isAboveViewport","boundingClientRect","top","window","innerHeight","t4","formattedValues","arrayCellData","Array","isArray","slice","length","forEach","cell","push","value","t5","api","t6","t7","t8","admin","t9","t10","i","relationTo_0","document","relatedCollection","collectionSlug","label_0","collectionConfig","data","dateFormat","fallback","fileField","type","fieldPreviewAllowed","displayPreview","undefined","previewAllowed","upload","slug","rowData","_jsxs","Fragment","children","className","ref","map","count","items"],"sources":["../../../../../../src/elements/Table/DefaultCell/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type {\n DefaultCellComponentProps,\n JoinFieldClient,\n RelationshipFieldClient,\n UploadFieldClient,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { useIntersect } from '../../../../../hooks/useIntersect.js'\nimport { useConfig } from '../../../../../providers/Config/index.js'\nimport { useTranslation } from '../../../../../providers/Translation/index.js'\nimport { canUseDOM } from '../../../../../utilities/canUseDOM.js'\nimport { formatDocTitle } from '../../../../../utilities/formatDocTitle/index.js'\nimport { useListRelationships } from '../../../RelationshipProvider/index.js'\nimport { FileCell } from '../File/index.js'\nimport './index.scss'\n\ntype Value = { relationTo: string; value: number | string }\nconst baseClass = 'relationship-cell'\nconst totalToShow = 3\n\nexport type RelationshipCellProps = DefaultCellComponentProps<\n JoinFieldClient | RelationshipFieldClient | UploadFieldClient\n>\n\nexport const RelationshipCell: React.FC<RelationshipCellProps> = ({\n cellData: cellDataFromProps,\n customCellProps: customCellContext,\n field,\n field: { label },\n}) => {\n // conditionally extract relationTo both both relationship and join fields\n const relationTo =\n ('relationTo' in field && field.relationTo) || ('collection' in field && field.collection)\n\n // conditionally extract docs from join fields\n const cellData = useMemo(() => {\n return 'collection' in field ? cellDataFromProps?.docs : cellDataFromProps\n }, [cellDataFromProps, field])\n\n const { config, getEntityConfig } = useConfig()\n const { collections, routes } = config\n const [intersectionRef, entry] = useIntersect()\n const [values, setValues] = useState<Value[]>([])\n const { documents, getRelationships } = useListRelationships()\n const [hasRequested, setHasRequested] = useState(false)\n const { i18n, t } = useTranslation()\n\n const isAboveViewport = canUseDOM ? entry?.boundingClientRect?.top < window.innerHeight : false\n\n useEffect(() => {\n if ((cellData || typeof cellData === 'number') && isAboveViewport && !hasRequested) {\n const formattedValues: Value[] = []\n const arrayCellData = Array.isArray(cellData) ? cellData : [cellData]\n arrayCellData\n .slice(0, arrayCellData.length < totalToShow ? arrayCellData.length : totalToShow)\n .forEach((cell) => {\n if (typeof cell === 'object' && 'relationTo' in cell && 'value' in cell) {\n formattedValues.push(cell)\n }\n if (\n (typeof cell === 'number' || typeof cell === 'string') &&\n typeof relationTo === 'string'\n ) {\n formattedValues.push({\n relationTo,\n value: cell,\n })\n }\n })\n getRelationships(formattedValues)\n setHasRequested(true)\n setValues(formattedValues)\n }\n }, [\n cellData,\n relationTo,\n collections,\n isAboveViewport,\n routes.api,\n hasRequested,\n getRelationships,\n ])\n\n useEffect(() => {\n if (hasRequested) {\n setHasRequested(false)\n }\n }, [cellData])\n\n return (\n <div className={baseClass} ref={intersectionRef}>\n {values.map(({ relationTo, value }, i) => {\n const document = documents[relationTo][value]\n const relatedCollection = getEntityConfig({\n collectionSlug: relationTo,\n })\n\n const label = formatDocTitle({\n collectionConfig: relatedCollection,\n data: document || null,\n dateFormat: config.admin.dateFormat,\n fallback: `${t('general:untitled')} - ID: ${value}`,\n i18n,\n })\n\n let fileField = null\n\n if (field.type === 'upload') {\n const fieldPreviewAllowed = 'displayPreview' in field ? field.displayPreview : undefined\n const previewAllowed =\n fieldPreviewAllowed ?? relatedCollection.upload?.displayPreview ?? true\n\n if (previewAllowed && document) {\n fileField = (\n <FileCell\n cellData={label}\n collectionConfig={relatedCollection}\n collectionSlug={relatedCollection.slug}\n customCellProps={customCellContext}\n field={field}\n rowData={document}\n />\n )\n }\n }\n\n return (\n <React.Fragment key={i}>\n {document === false && `${t('general:untitled')} - ID: ${value}`}\n {document === null && `${t('general:loading')}...`}\n {document ? fileField || label : null}\n {values.length > i + 1 && ', '}\n </React.Fragment>\n )\n })}\n {Array.isArray(cellData) &&\n cellData.length > totalToShow &&\n t('fields:itemsAndMore', { count: cellData.length - totalToShow, items: '' })}\n {values.length === 0 && t('general:noLabel', { label: getTranslation(label || '', i18n) })}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -19,7 +19,6 @@ export const OrderableTable = ({
19
19
  }) => {
20
20
  const {
21
21
  data: listQueryData,
22
- handleSortChange,
23
22
  orderableFieldName,
24
23
  query
25
24
  } = useListQuery();
@@ -1 +1 @@
1
- {"version":3,"file":"OrderableTable.js","names":["DragOverlay","React","useEffect","useState","toast","useListQuery","DraggableSortableItem","DraggableSortable","OrderableRow","OrderableRowDragPreview","baseClass","OrderableTable","appearance","collection","columns","data","initialData","listQueryData","handleSortChange","orderableFieldName","query","serverData","docs","localData","setLocalData","cellMap","setCellMap","dragActiveRowId","setDragActiveRowId","Object","fromEntries","map","item","index","String","id","_id","activeColumns","filter","col","active","includes","accessor","length","_jsx","handleDragEnd","moveFromIndex","moveToIndex","sort","warning","undefined","movedId","newBeforeRow","newAfterRow","previousData","currentData","newData","splice","target","key","newKeyWillBe","jsonBody","collectionSlug","slug","docsToMove","response","fetch","body","JSON","stringify","headers","method","status","Error","ok","err","error","message","handleDragStart","rowIds","row","className","Boolean","join","_jsxs","ids","onDragEnd","onDragStart","cellPadding","cellSpacing","i","Heading","rowIndex","children","attributes","isDragging","listeners","setNodeRef","transform","transition","dragAttributes","dragListeners","ref","rowId","style","opacity"],"sources":["../../../src/elements/Table/OrderableTable.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, Column, OrderableEndpointBody } from 'payload'\n\nimport './index.scss'\n\nimport { DragOverlay } from '@dnd-kit/core'\nimport React, { useEffect, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { DraggableSortableItem } from '../DraggableSortable/DraggableSortableItem/index.js'\nimport { DraggableSortable } from '../DraggableSortable/index.js'\nimport { OrderableRow } from './OrderableRow.js'\nimport { OrderableRowDragPreview } from './OrderableRowDragPreview.js'\n\nconst baseClass = 'table'\n\nexport type Props = {\n readonly appearance?: 'condensed' | 'default'\n readonly collection: ClientCollectionConfig\n readonly columns?: Column[]\n readonly data: Record<string, unknown>[]\n}\n\nexport const OrderableTable: React.FC<Props> = ({\n appearance = 'default',\n collection,\n columns,\n data: initialData,\n}) => {\n const { data: listQueryData, handleSortChange, orderableFieldName, query } = useListQuery()\n // Use the data from ListQueryProvider if available, otherwise use the props\n const serverData = listQueryData?.docs || initialData\n\n // Local state to track the current order of rows\n const [localData, setLocalData] = useState(serverData)\n\n // id -> index for each column\n const [cellMap, setCellMap] = useState<Record<string, number>>({})\n\n const [dragActiveRowId, setDragActiveRowId] = useState<number | string | undefined>()\n\n // Update local data when server data changes\n useEffect(() => {\n setLocalData(serverData)\n setCellMap(\n Object.fromEntries(serverData.map((item, index) => [String(item.id ?? item._id), index])),\n )\n }, [serverData])\n\n const activeColumns = columns?.filter((col) => col?.active)\n\n if (\n !activeColumns ||\n activeColumns.filter((col) => !['_dragHandle', '_select'].includes(col.accessor)).length === 0\n ) {\n return <div>No columns selected</div>\n }\n\n const handleDragEnd = async ({ moveFromIndex, moveToIndex }) => {\n if (query.sort !== orderableFieldName && query.sort !== `-${orderableFieldName}`) {\n toast.warning('To reorder the rows you must first sort them by the \"Order\" column')\n setDragActiveRowId(undefined)\n return\n }\n\n if (moveFromIndex === moveToIndex) {\n setDragActiveRowId(undefined)\n return\n }\n\n const movedId = localData[moveFromIndex].id ?? localData[moveFromIndex]._id\n const newBeforeRow =\n moveToIndex > moveFromIndex ? localData[moveToIndex] : localData[moveToIndex - 1]\n const newAfterRow =\n moveToIndex > moveFromIndex ? localData[moveToIndex + 1] : localData[moveToIndex]\n\n // Store the original data for rollback\n const previousData = [...localData]\n\n // Optimisitc update of local state to reorder the rows\n setLocalData((currentData) => {\n const newData = [...currentData]\n // Update the rendered cell for the moved row to show \"pending\"\n newData[moveFromIndex][orderableFieldName] = `pending`\n // Move the item in the array\n newData.splice(moveToIndex, 0, newData.splice(moveFromIndex, 1)[0])\n return newData\n })\n\n try {\n const target: OrderableEndpointBody['target'] = newBeforeRow\n ? {\n id: newBeforeRow.id ?? newBeforeRow._id,\n key: newBeforeRow[orderableFieldName],\n }\n : {\n id: newAfterRow.id ?? newAfterRow._id,\n key: newAfterRow[orderableFieldName],\n }\n\n const newKeyWillBe =\n (newBeforeRow && query.sort === orderableFieldName) ||\n (!newBeforeRow && query.sort === `-${orderableFieldName}`)\n ? 'greater'\n : 'less'\n\n const jsonBody: OrderableEndpointBody = {\n collectionSlug: collection.slug,\n docsToMove: [movedId],\n newKeyWillBe,\n orderableFieldName,\n target,\n }\n\n const response = await fetch(`/api/reorder`, {\n body: JSON.stringify(jsonBody),\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n })\n\n if (response.status === 403) {\n throw new Error('You do not have permission to reorder these rows')\n }\n\n if (!response.ok) {\n throw new Error(\n 'Failed to reorder. This can happen if you reorder several rows too quickly. Please try again.',\n )\n }\n } catch (err) {\n const error = err instanceof Error ? err.message : String(err)\n // Rollback to previous state if the request fails\n setLocalData(previousData)\n toast.error(error)\n } finally {\n setDragActiveRowId(undefined)\n }\n }\n\n const handleDragStart = ({ id }) => {\n setDragActiveRowId(id)\n }\n\n const rowIds = localData.map((row) => row.id ?? row._id)\n\n return (\n <div\n className={[baseClass, appearance && `${baseClass}--appearance-${appearance}`]\n .filter(Boolean)\n .join(' ')}\n >\n <DraggableSortable ids={rowIds} onDragEnd={handleDragEnd} onDragStart={handleDragStart}>\n <table cellPadding=\"0\" cellSpacing=\"0\">\n <thead>\n <tr>\n {activeColumns.map((col, i) => (\n <th id={`heading-${col.accessor}`} key={i}>\n {col.Heading}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {localData.map((row, rowIndex) => (\n <DraggableSortableItem id={rowIds[rowIndex]} key={rowIds[rowIndex]}>\n {({ attributes, isDragging, listeners, setNodeRef, transform, transition }) => (\n <OrderableRow\n cellMap={cellMap}\n className={`row-${rowIndex + 1}`}\n columns={activeColumns}\n dragAttributes={attributes}\n dragListeners={listeners}\n ref={setNodeRef}\n rowId={row.id ?? row._id}\n style={{\n opacity: isDragging ? 0 : 1,\n transform,\n transition,\n }}\n />\n )}\n </DraggableSortableItem>\n ))}\n </tbody>\n </table>\n\n <DragOverlay>\n <OrderableRowDragPreview\n className={[baseClass, `${baseClass}--drag-preview`].join(' ')}\n rowId={dragActiveRowId}\n >\n <OrderableRow cellMap={cellMap} columns={activeColumns} rowId={dragActiveRowId} />\n </OrderableRowDragPreview>\n </DragOverlay>\n </DraggableSortable>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"OrderableTable.js","names":["DragOverlay","React","useEffect","useState","toast","useListQuery","DraggableSortableItem","DraggableSortable","OrderableRow","OrderableRowDragPreview","baseClass","OrderableTable","appearance","collection","columns","data","initialData","listQueryData","orderableFieldName","query","serverData","docs","localData","setLocalData","cellMap","setCellMap","dragActiveRowId","setDragActiveRowId","Object","fromEntries","map","item","index","String","id","_id","activeColumns","filter","col","active","includes","accessor","length","_jsx","handleDragEnd","moveFromIndex","moveToIndex","sort","warning","undefined","movedId","newBeforeRow","newAfterRow","previousData","currentData","newData","splice","target","key","newKeyWillBe","jsonBody","collectionSlug","slug","docsToMove","response","fetch","body","JSON","stringify","headers","method","status","Error","ok","err","error","message","handleDragStart","rowIds","row","className","Boolean","join","_jsxs","ids","onDragEnd","onDragStart","cellPadding","cellSpacing","i","Heading","rowIndex","children","attributes","isDragging","listeners","setNodeRef","transform","transition","dragAttributes","dragListeners","ref","rowId","style","opacity"],"sources":["../../../src/elements/Table/OrderableTable.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, Column, OrderableEndpointBody } from 'payload'\n\nimport './index.scss'\n\nimport { DragOverlay } from '@dnd-kit/core'\nimport React, { useEffect, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { DraggableSortableItem } from '../DraggableSortable/DraggableSortableItem/index.js'\nimport { DraggableSortable } from '../DraggableSortable/index.js'\nimport { OrderableRow } from './OrderableRow.js'\nimport { OrderableRowDragPreview } from './OrderableRowDragPreview.js'\n\nconst baseClass = 'table'\n\nexport type Props = {\n readonly appearance?: 'condensed' | 'default'\n readonly collection: ClientCollectionConfig\n readonly columns?: Column[]\n readonly data: Record<string, unknown>[]\n}\n\nexport const OrderableTable: React.FC<Props> = ({\n appearance = 'default',\n collection,\n columns,\n data: initialData,\n}) => {\n const { data: listQueryData, orderableFieldName, query } = useListQuery()\n // Use the data from ListQueryProvider if available, otherwise use the props\n const serverData = listQueryData?.docs || initialData\n\n // Local state to track the current order of rows\n const [localData, setLocalData] = useState(serverData)\n\n // id -> index for each column\n const [cellMap, setCellMap] = useState<Record<string, number>>({})\n\n const [dragActiveRowId, setDragActiveRowId] = useState<number | string | undefined>()\n\n // Update local data when server data changes\n useEffect(() => {\n setLocalData(serverData)\n setCellMap(\n Object.fromEntries(serverData.map((item, index) => [String(item.id ?? item._id), index])),\n )\n }, [serverData])\n\n const activeColumns = columns?.filter((col) => col?.active)\n\n if (\n !activeColumns ||\n activeColumns.filter((col) => !['_dragHandle', '_select'].includes(col.accessor)).length === 0\n ) {\n return <div>No columns selected</div>\n }\n\n const handleDragEnd = async ({ moveFromIndex, moveToIndex }) => {\n if (query.sort !== orderableFieldName && query.sort !== `-${orderableFieldName}`) {\n toast.warning('To reorder the rows you must first sort them by the \"Order\" column')\n setDragActiveRowId(undefined)\n return\n }\n\n if (moveFromIndex === moveToIndex) {\n setDragActiveRowId(undefined)\n return\n }\n\n const movedId = localData[moveFromIndex].id ?? localData[moveFromIndex]._id\n const newBeforeRow =\n moveToIndex > moveFromIndex ? localData[moveToIndex] : localData[moveToIndex - 1]\n const newAfterRow =\n moveToIndex > moveFromIndex ? localData[moveToIndex + 1] : localData[moveToIndex]\n\n // Store the original data for rollback\n const previousData = [...localData]\n\n // Optimisitc update of local state to reorder the rows\n setLocalData((currentData) => {\n const newData = [...currentData]\n // Update the rendered cell for the moved row to show \"pending\"\n newData[moveFromIndex][orderableFieldName] = `pending`\n // Move the item in the array\n newData.splice(moveToIndex, 0, newData.splice(moveFromIndex, 1)[0])\n return newData\n })\n\n try {\n const target: OrderableEndpointBody['target'] = newBeforeRow\n ? {\n id: newBeforeRow.id ?? newBeforeRow._id,\n key: newBeforeRow[orderableFieldName],\n }\n : {\n id: newAfterRow.id ?? newAfterRow._id,\n key: newAfterRow[orderableFieldName],\n }\n\n const newKeyWillBe =\n (newBeforeRow && query.sort === orderableFieldName) ||\n (!newBeforeRow && query.sort === `-${orderableFieldName}`)\n ? 'greater'\n : 'less'\n\n const jsonBody: OrderableEndpointBody = {\n collectionSlug: collection.slug,\n docsToMove: [movedId],\n newKeyWillBe,\n orderableFieldName,\n target,\n }\n\n const response = await fetch(`/api/reorder`, {\n body: JSON.stringify(jsonBody),\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n })\n\n if (response.status === 403) {\n throw new Error('You do not have permission to reorder these rows')\n }\n\n if (!response.ok) {\n throw new Error(\n 'Failed to reorder. This can happen if you reorder several rows too quickly. Please try again.',\n )\n }\n } catch (err) {\n const error = err instanceof Error ? err.message : String(err)\n // Rollback to previous state if the request fails\n setLocalData(previousData)\n toast.error(error)\n } finally {\n setDragActiveRowId(undefined)\n }\n }\n\n const handleDragStart = ({ id }) => {\n setDragActiveRowId(id)\n }\n\n const rowIds = localData.map((row) => row.id ?? row._id)\n\n return (\n <div\n className={[baseClass, appearance && `${baseClass}--appearance-${appearance}`]\n .filter(Boolean)\n .join(' ')}\n >\n <DraggableSortable ids={rowIds} onDragEnd={handleDragEnd} onDragStart={handleDragStart}>\n <table cellPadding=\"0\" cellSpacing=\"0\">\n <thead>\n <tr>\n {activeColumns.map((col, i) => (\n <th id={`heading-${col.accessor}`} key={i}>\n {col.Heading}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {localData.map((row, rowIndex) => (\n <DraggableSortableItem id={rowIds[rowIndex]} key={rowIds[rowIndex]}>\n {({ attributes, isDragging, listeners, setNodeRef, transform, transition }) => (\n <OrderableRow\n cellMap={cellMap}\n className={`row-${rowIndex + 1}`}\n columns={activeColumns}\n dragAttributes={attributes}\n dragListeners={listeners}\n ref={setNodeRef}\n rowId={row.id ?? row._id}\n style={{\n opacity: isDragging ? 0 : 1,\n transform,\n transition,\n }}\n />\n )}\n </DraggableSortableItem>\n ))}\n </tbody>\n </table>\n\n <DragOverlay>\n <OrderableRowDragPreview\n className={[baseClass, `${baseClass}--drag-preview`].join(' ')}\n rowId={dragActiveRowId}\n >\n <OrderableRow cellMap={cellMap} columns={activeColumns} rowId={dragActiveRowId} />\n </OrderableRowDragPreview>\n </DragOverlay>\n </DraggableSortable>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Table/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA0CjC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Table/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiDjC,CAAA"}
@@ -39,7 +39,7 @@ export const Table = ({
39
39
  children: col.renderedCells[rowIndex]
40
40
  }, colIndex);
41
41
  })
42
- }, rowIndex))
42
+ }, typeof row.id === 'string' || typeof row.id === 'number' ? String(row.id) : rowIndex))
43
43
  })]
44
44
  })
45
45
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","baseClass","Table","appearance","columns","data","activeColumns","filter","col","active","length","_jsx","className","Boolean","join","_jsxs","cellPadding","cellSpacing","map","i","id","accessor","Heading","row","rowIndex","colIndex","renderedCells"],"sources":["../../../src/elements/Table/index.tsx"],"sourcesContent":["'use client'\n\nimport type { Column } from 'payload'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'table'\n\nexport type Props = {\n readonly appearance?: 'condensed' | 'default'\n readonly columns?: Column[]\n readonly data: Record<string, unknown>[]\n}\n\nexport const Table: React.FC<Props> = ({ appearance, columns, data }) => {\n const activeColumns = columns?.filter((col) => col?.active)\n\n if (!activeColumns || activeColumns.length === 0) {\n return <div>No columns selected</div>\n }\n\n return (\n <div\n className={[baseClass, appearance && `${baseClass}--appearance-${appearance}`]\n .filter(Boolean)\n .join(' ')}\n >\n <table cellPadding=\"0\" cellSpacing=\"0\">\n <thead>\n <tr>\n {activeColumns.map((col, i) => (\n <th id={`heading-${col.accessor}`} key={i}>\n {col.Heading}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data &&\n data.map((row, rowIndex) => (\n <tr className={`row-${rowIndex + 1}`} key={rowIndex}>\n {activeColumns.map((col, colIndex) => {\n const { accessor } = col\n\n return (\n <td className={`cell-${accessor}`} key={colIndex}>\n {col.renderedCells[rowIndex]}\n </td>\n )\n })}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAIA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAQlB,OAAO,MAAMC,KAAA,GAAyBA,CAAC;EAAEC,UAAU;EAAEC,OAAO;EAAEC;AAAI,CAAE;EAClE,MAAMC,aAAA,GAAgBF,OAAA,EAASG,MAAA,CAAQC,GAAA,IAAQA,GAAA,EAAKC,MAAA;EAEpD,IAAI,CAACH,aAAA,IAAiBA,aAAA,CAAcI,MAAM,KAAK,GAAG;IAChD,oBAAOC,IAAA,CAAC;gBAAI;;EACd;EAEA,oBACEA,IAAA,CAAC;IACCC,SAAA,EAAW,CAACX,SAAA,EAAWE,UAAA,IAAc,GAAGF,SAAA,gBAAyBE,UAAA,EAAY,CAAC,CAC3EI,MAAM,CAACM,OAAA,EACPC,IAAI,CAAC;cAER,aAAAC,KAAA,CAAC;MAAMC,WAAA,EAAY;MAAIC,WAAA,EAAY;8BACjCN,IAAA,CAAC;kBACC,aAAAA,IAAA,CAAC;oBACEL,aAAA,CAAcY,GAAG,CAAC,CAACV,GAAA,EAAKW,CAAA,kBACvBR,IAAA,CAAC;YAAGS,EAAA,EAAI,WAAWZ,GAAA,CAAIa,QAAQ,EAAE;sBAC9Bb,GAAA,CAAIc;aADiCH,CAAA;;uBAM9CR,IAAA,CAAC;kBACEN,IAAA,IACCA,IAAA,CAAKa,GAAG,CAAC,CAACK,GAAA,EAAKC,QAAA,kBACbb,IAAA,CAAC;UAAGC,SAAA,EAAW,OAAOY,QAAA,GAAW,GAAG;oBACjClB,aAAA,CAAcY,GAAG,CAAC,CAACV,GAAA,EAAKiB,QAAA;YACvB,MAAM;cAAEJ;YAAQ,CAAE,GAAGb,GAAA;YAErB,oBACEG,IAAA,CAAC;cAAGC,SAAA,EAAW,QAAQS,QAAA,EAAU;wBAC9Bb,GAAA,CAAIkB,aAAa,CAACF,QAAA;eADmBC,QAAA;UAI5C;WATyCD,QAAA;;;;AAgBzD","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","baseClass","Table","appearance","columns","data","activeColumns","filter","col","active","length","_jsx","className","Boolean","join","_jsxs","cellPadding","cellSpacing","map","i","id","accessor","Heading","row","rowIndex","colIndex","renderedCells","String"],"sources":["../../../src/elements/Table/index.tsx"],"sourcesContent":["'use client'\n\nimport type { Column } from 'payload'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'table'\n\nexport type Props = {\n readonly appearance?: 'condensed' | 'default'\n readonly columns?: Column[]\n readonly data: Record<string, unknown>[]\n}\n\nexport const Table: React.FC<Props> = ({ appearance, columns, data }) => {\n const activeColumns = columns?.filter((col) => col?.active)\n\n if (!activeColumns || activeColumns.length === 0) {\n return <div>No columns selected</div>\n }\n\n return (\n <div\n className={[baseClass, appearance && `${baseClass}--appearance-${appearance}`]\n .filter(Boolean)\n .join(' ')}\n >\n <table cellPadding=\"0\" cellSpacing=\"0\">\n <thead>\n <tr>\n {activeColumns.map((col, i) => (\n <th id={`heading-${col.accessor}`} key={i}>\n {col.Heading}\n </th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data &&\n data.map((row, rowIndex) => (\n <tr\n className={`row-${rowIndex + 1}`}\n key={\n typeof row.id === 'string' || typeof row.id === 'number'\n ? String(row.id)\n : rowIndex\n }\n >\n {activeColumns.map((col, colIndex) => {\n const { accessor } = col\n\n return (\n <td className={`cell-${accessor}`} key={colIndex}>\n {col.renderedCells[rowIndex]}\n </td>\n )\n })}\n </tr>\n ))}\n </tbody>\n </table>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAIA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAQlB,OAAO,MAAMC,KAAA,GAAyBA,CAAC;EAAEC,UAAU;EAAEC,OAAO;EAAEC;AAAI,CAAE;EAClE,MAAMC,aAAA,GAAgBF,OAAA,EAASG,MAAA,CAAQC,GAAA,IAAQA,GAAA,EAAKC,MAAA;EAEpD,IAAI,CAACH,aAAA,IAAiBA,aAAA,CAAcI,MAAM,KAAK,GAAG;IAChD,oBAAOC,IAAA,CAAC;gBAAI;;EACd;EAEA,oBACEA,IAAA,CAAC;IACCC,SAAA,EAAW,CAACX,SAAA,EAAWE,UAAA,IAAc,GAAGF,SAAA,gBAAyBE,UAAA,EAAY,CAAC,CAC3EI,MAAM,CAACM,OAAA,EACPC,IAAI,CAAC;cAER,aAAAC,KAAA,CAAC;MAAMC,WAAA,EAAY;MAAIC,WAAA,EAAY;8BACjCN,IAAA,CAAC;kBACC,aAAAA,IAAA,CAAC;oBACEL,aAAA,CAAcY,GAAG,CAAC,CAACV,GAAA,EAAKW,CAAA,kBACvBR,IAAA,CAAC;YAAGS,EAAA,EAAI,WAAWZ,GAAA,CAAIa,QAAQ,EAAE;sBAC9Bb,GAAA,CAAIc;aADiCH,CAAA;;uBAM9CR,IAAA,CAAC;kBACEN,IAAA,IACCA,IAAA,CAAKa,GAAG,CAAC,CAACK,GAAA,EAAKC,QAAA,kBACbb,IAAA,CAAC;UACCC,SAAA,EAAW,OAAOY,QAAA,GAAW,GAAG;oBAO/BlB,aAAA,CAAcY,GAAG,CAAC,CAACV,GAAA,EAAKiB,QAAA;YACvB,MAAM;cAAEJ;YAAQ,CAAE,GAAGb,GAAA;YAErB,oBACEG,IAAA,CAAC;cAAGC,SAAA,EAAW,QAAQS,QAAA,EAAU;wBAC9Bb,GAAA,CAAIkB,aAAa,CAACF,QAAA;eADmBC,QAAA;UAI5C;WAbE,OAAOF,GAAA,CAAIH,EAAE,KAAK,YAAY,OAAOG,GAAA,CAAIH,EAAE,KAAK,WAC5CO,MAAA,CAAOJ,GAAA,CAAIH,EAAE,IACbI,QAAA;;;;AAkBtB","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import type { Props } from './types.js';
2
+ import type { DateFilterProps as Props } from './types.js';
3
3
  export declare const DateFilter: React.FC<Props>;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Date/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAMvC,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAQtC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Date/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,eAAe,IAAI,KAAK,EAAE,MAAM,YAAY,CAAA;AAM1D,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAQtC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","DatePickerField","baseClass","DateFilter","disabled","field","admin","onChange","value","date","_jsx","className","readOnly"],"sources":["../../../../../src/elements/WhereBuilder/Condition/Date/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\nimport { DatePickerField } from '../../../DatePicker/index.js'\n\nconst baseClass = 'condition-value-date'\n\nexport const DateFilter: React.FC<Props> = ({ disabled, field: { admin }, onChange, value }) => {\n const { date } = admin || {}\n\n return (\n <div className={baseClass}>\n <DatePickerField {...date} onChange={onChange} readOnly={disabled} value={value as Date} />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,MAAW;AAIlB,SAASC,eAAe,QAAQ;AAEhC,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,UAAA,GAA8BA,CAAC;EAAEC,QAAQ;EAAEC,KAAA,EAAO;IAAEC;EAAK,CAAE;EAAEC,QAAQ;EAAEC;AAAK,CAAE;EACzF,MAAM;IAAEC;EAAI,CAAE,GAAGH,KAAA,IAAS,CAAC;EAE3B,oBACEI,IAAA,CAAC;IAAIC,SAAA,EAAWT,SAAA;cACd,aAAAQ,IAAA,CAACT,eAAA;MAAiB,GAAGQ,IAAI;MAAEF,QAAA,EAAUA,QAAA;MAAUK,QAAA,EAAUR,QAAA;MAAUI,KAAA,EAAOA;;;AAGhF","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","DatePickerField","baseClass","DateFilter","disabled","field","admin","onChange","value","date","_jsx","className","readOnly"],"sources":["../../../../../src/elements/WhereBuilder/Condition/Date/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { DateFilterProps as Props } from './types.js'\n\nimport { DatePickerField } from '../../../DatePicker/index.js'\n\nconst baseClass = 'condition-value-date'\n\nexport const DateFilter: React.FC<Props> = ({ disabled, field: { admin }, onChange, value }) => {\n const { date } = admin || {}\n\n return (\n <div className={baseClass}>\n <DatePickerField {...date} onChange={onChange} readOnly={disabled} value={value as Date} />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,MAAW;AAIlB,SAASC,eAAe,QAAQ;AAEhC,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,UAAA,GAA8BA,CAAC;EAAEC,QAAQ;EAAEC,KAAA,EAAO;IAAEC;EAAK,CAAE;EAAEC,QAAQ;EAAEC;AAAK,CAAE;EACzF,MAAM;IAAEC;EAAI,CAAE,GAAGH,KAAA,IAAS,CAAC;EAE3B,oBACEI,IAAA,CAAC;IAAIC,SAAA,EAAWT,SAAA;cACd,aAAAQ,IAAA,CAACT,eAAA;MAAiB,GAAGQ,IAAI;MAAEF,QAAA,EAAUA,QAAA;MAAUK,QAAA,EAAUR,QAAA;MAAUI,KAAA,EAAOA;;;AAGhF","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import type { DateFieldClient } from 'payload';
2
2
  import type { DefaultFilterProps } from '../types.js';
3
- export type Props = {
3
+ export type DateFilterProps = {
4
4
  readonly field: DateFieldClient;
5
5
  readonly value: Date | string;
6
6
  } & DefaultFilterProps;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Date/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAErD,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAAA;CAC9B,GAAG,kBAAkB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/elements/WhereBuilder/Condition/Date/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAErD,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAAA;CAC9B,GAAG,kBAAkB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/elements/WhereBuilder/Condition/Date/types.ts"],"sourcesContent":["import type { DateFieldClient } from 'payload'\n\nimport type { DefaultFilterProps } from '../types.js'\n\nexport type Props = {\n readonly field: DateFieldClient\n readonly value: Date | string\n} & DefaultFilterProps\n"],"mappings":"AAIA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../../src/elements/WhereBuilder/Condition/Date/types.ts"],"sourcesContent":["import type { DateFieldClient } from 'payload'\n\nimport type { DefaultFilterProps } from '../types.js'\n\nexport type DateFilterProps = {\n readonly field: DateFieldClient\n readonly value: Date | string\n} & DefaultFilterProps\n"],"mappings":"AAIA","ignoreList":[]}