@payloadcms/ui 3.0.0-beta.92 → 3.0.0-beta.93

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAsB,MAAM,OAAO,CAAA;AAU1C,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CA2C7D,CAAA;AAED,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAGzC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAsB,MAAM,OAAO,CAAA;AAa1C,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAwF7D,CAAA;AAED,KAAK,KAAK,GAAG;IACX,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAGzC,CAAA"}
@@ -7,15 +7,32 @@ import { useForm, useFormModified } from '../../forms/Form/context.js';
7
7
  import { FormSubmit } from '../../forms/Submit/index.js';
8
8
  import { useHotkey } from '../../hooks/useHotkey.js';
9
9
  import { RenderComponent } from '../../providers/Config/RenderComponent.js';
10
+ import { useConfig } from '../../providers/Config/index.js';
10
11
  import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
11
12
  import { useEditDepth } from '../../providers/EditDepth/index.js';
13
+ import { useLocale } from '../../providers/Locale/index.js';
14
+ import { useOperation } from '../../providers/Operation/index.js';
12
15
  import { useTranslation } from '../../providers/Translation/index.js';
13
16
  export const DefaultPublishButton = t0 => {
14
- const $ = _c(14);
17
+ const $ = _c(24);
15
18
  const {
16
19
  label: labelProp
17
20
  } = t0;
18
21
  const {
22
+ config: t1
23
+ } = useConfig();
24
+ const {
25
+ routes: t2,
26
+ serverURL
27
+ } = t1;
28
+ const {
29
+ api
30
+ } = t2;
31
+ const {
32
+ id,
33
+ collectionSlug,
34
+ docConfig,
35
+ globalSlug,
19
36
  hasPublishPermission,
20
37
  publishedDoc,
21
38
  unpublishedVersions
@@ -25,92 +42,138 @@ export const DefaultPublishButton = t0 => {
25
42
  } = useForm();
26
43
  const modified = useFormModified();
27
44
  const editDepth = useEditDepth();
45
+ const {
46
+ code: locale
47
+ } = useLocale();
28
48
  const {
29
49
  t
30
50
  } = useTranslation();
31
- let t1;
51
+ let t3;
32
52
  if ($[0] !== labelProp || $[1] !== t) {
33
- t1 = labelProp || t("version:publishChanges");
53
+ t3 = labelProp || t("version:publishChanges");
34
54
  $[0] = labelProp;
35
55
  $[1] = t;
36
- $[2] = t1;
56
+ $[2] = t3;
37
57
  } else {
38
- t1 = $[2];
58
+ t3 = $[2];
39
59
  }
40
- const label = t1;
60
+ const label = t3;
41
61
  const hasNewerVersions = unpublishedVersions?.totalDocs > 0;
42
62
  const canPublish = hasPublishPermission && (modified || hasNewerVersions || !publishedDoc);
43
- let t2;
44
- if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
45
- t2 = ["s"];
46
- $[3] = t2;
63
+ const operation = useOperation();
64
+ const forceDisable = operation === "update" && !modified;
65
+ let t4;
66
+ if ($[3] !== forceDisable || $[4] !== locale || $[5] !== collectionSlug || $[6] !== serverURL || $[7] !== api || $[8] !== id || $[9] !== globalSlug || $[10] !== submit) {
67
+ t4 = async () => {
68
+ if (forceDisable) {
69
+ return;
70
+ }
71
+ const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`;
72
+ let action;
73
+ let method = "POST";
74
+ if (collectionSlug) {
75
+ action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ""}${search}`;
76
+ if (id) {
77
+ method = "PATCH";
78
+ }
79
+ }
80
+ if (globalSlug) {
81
+ action = `${serverURL}${api}/globals/${globalSlug}${search}`;
82
+ }
83
+ await submit({
84
+ action,
85
+ method,
86
+ overrides: {
87
+ _status: "draft"
88
+ },
89
+ skipValidation: true
90
+ });
91
+ };
92
+ $[3] = forceDisable;
93
+ $[4] = locale;
94
+ $[5] = collectionSlug;
95
+ $[6] = serverURL;
96
+ $[7] = api;
97
+ $[8] = id;
98
+ $[9] = globalSlug;
99
+ $[10] = submit;
100
+ $[11] = t4;
47
101
  } else {
48
- t2 = $[3];
102
+ t4 = $[11];
49
103
  }
50
- let t3;
51
- if ($[4] !== editDepth) {
52
- t3 = {
104
+ const saveDraft = t4;
105
+ let t5;
106
+ if ($[12] === Symbol.for("react.memo_cache_sentinel")) {
107
+ t5 = ["s"];
108
+ $[12] = t5;
109
+ } else {
110
+ t5 = $[12];
111
+ }
112
+ let t6;
113
+ if ($[13] !== editDepth) {
114
+ t6 = {
53
115
  cmdCtrlKey: true,
54
116
  editDepth,
55
- keyCodes: t2
117
+ keyCodes: t5
56
118
  };
57
- $[4] = editDepth;
58
- $[5] = t3;
119
+ $[13] = editDepth;
120
+ $[14] = t6;
59
121
  } else {
60
- t3 = $[5];
122
+ t6 = $[14];
61
123
  }
62
- let t4;
63
- if ($[6] !== submit) {
64
- t4 = e => {
124
+ let t7;
125
+ if ($[15] !== saveDraft || $[16] !== docConfig.versions) {
126
+ t7 = e => {
65
127
  e.preventDefault();
66
128
  e.stopPropagation();
67
- if (submit) {
68
- submit();
129
+ if (saveDraft && docConfig.versions?.drafts && docConfig.versions?.drafts?.autosave) {
130
+ saveDraft();
69
131
  }
70
132
  };
71
- $[6] = submit;
72
- $[7] = t4;
133
+ $[15] = saveDraft;
134
+ $[16] = docConfig.versions;
135
+ $[17] = t7;
73
136
  } else {
74
- t4 = $[7];
137
+ t7 = $[17];
75
138
  }
76
- useHotkey(t3, t4);
77
- let t5;
78
- if ($[8] !== submit) {
79
- t5 = () => {
139
+ useHotkey(t6, t7);
140
+ let t8;
141
+ if ($[18] !== submit) {
142
+ t8 = () => {
80
143
  submit({
81
144
  overrides: {
82
145
  _status: "published"
83
146
  }
84
147
  });
85
148
  };
86
- $[8] = submit;
87
- $[9] = t5;
149
+ $[18] = submit;
150
+ $[19] = t8;
88
151
  } else {
89
- t5 = $[9];
152
+ t8 = $[19];
90
153
  }
91
- const publish = t5;
154
+ const publish = t8;
92
155
  if (!hasPublishPermission) {
93
156
  return null;
94
157
  }
95
- const t6 = !canPublish;
96
- let t7;
97
- if ($[10] !== t6 || $[11] !== publish || $[12] !== label) {
98
- t7 = _jsx(FormSubmit, {
158
+ const t9 = !canPublish;
159
+ let t10;
160
+ if ($[20] !== t9 || $[21] !== publish || $[22] !== label) {
161
+ t10 = _jsx(FormSubmit, {
99
162
  buttonId: "action-save",
100
- disabled: t6,
163
+ disabled: t9,
101
164
  onClick: publish,
102
165
  size: "medium",
103
166
  type: "button",
104
167
  children: label
105
168
  });
106
- $[10] = t6;
107
- $[11] = publish;
108
- $[12] = label;
109
- $[13] = t7;
169
+ $[20] = t9;
170
+ $[21] = publish;
171
+ $[22] = label;
172
+ $[23] = t10;
110
173
  } else {
111
- t7 = $[13];
174
+ t10 = $[23];
112
175
  }
113
- return t7;
176
+ return t10;
114
177
  };
115
178
  export const PublishButton = ({
116
179
  CustomComponent
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useForm","useFormModified","FormSubmit","useHotkey","RenderComponent","useDocumentInfo","useEditDepth","useTranslation","DefaultPublishButton","t0","$","label","labelProp","hasPublishPermission","publishedDoc","unpublishedVersions","submit","modified","editDepth","t","t1","hasNewerVersions","totalDocs","canPublish","t2","Symbol","for","t3","cmdCtrlKey","keyCodes","t4","e","preventDefault","stopPropagation","t5","overrides","_status","publish","t6","t7","_jsx","buttonId","disabled","onClick","size","type","children","PublishButton","CustomComponent","mappedComponent"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { MappedComponent } from 'payload'\n\nimport React, { useCallback } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const DefaultPublishButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const { hasPublishPermission, publishedDoc, unpublishedVersions } = useDocumentInfo()\n\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n\n const { t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n\n const hasNewerVersions = unpublishedVersions?.totalDocs > 0\n const canPublish = hasPublishPermission && (modified || hasNewerVersions || !publishedDoc)\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (submit) {\n void submit()\n }\n })\n\n const publish = useCallback(() => {\n void submit({\n overrides: {\n _status: 'published',\n },\n })\n }, [submit])\n\n if (!hasPublishPermission) return null\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n onClick={publish}\n size=\"medium\"\n type=\"button\"\n >\n {label}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: MappedComponent\n}\n\nexport const PublishButton: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return <RenderComponent mappedComponent={CustomComponent} />\n return <DefaultPublishButton />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useForm","useFormModified","FormSubmit","useHotkey","RenderComponent","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","DefaultPublishButton","t0","$","label","labelProp","config","t1","routes","t2","serverURL","api","id","collectionSlug","docConfig","globalSlug","hasPublishPermission","publishedDoc","unpublishedVersions","submit","modified","editDepth","code","locale","t","t3","hasNewerVersions","totalDocs","canPublish","operation","forceDisable","t4","search","action","method","overrides","_status","skipValidation","saveDraft","t5","Symbol","for","t6","cmdCtrlKey","keyCodes","t7","versions","e","preventDefault","stopPropagation","drafts","autosave","t8","publish","t9","t10","_jsx","buttonId","disabled","onClick","size","type","children","PublishButton","CustomComponent","mappedComponent"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { MappedComponent } from 'payload'\n\nimport React, { useCallback } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const DefaultPublishButton: React.FC<{ label?: string }> = ({ label: labelProp }) => {\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const {\n id,\n collectionSlug,\n docConfig,\n globalSlug,\n hasPublishPermission,\n publishedDoc,\n unpublishedVersions,\n } = useDocumentInfo()\n\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const { code: locale } = useLocale()\n\n const { t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n\n const hasNewerVersions = unpublishedVersions?.totalDocs > 0\n const canPublish = hasPublishPermission && (modified || hasNewerVersions || !publishedDoc)\n const operation = useOperation()\n\n const forceDisable = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (forceDisable) return\n\n const search = `?locale=${locale}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) method = 'PATCH'\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, locale, id, forceDisable])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && docConfig.versions?.drafts && docConfig.versions?.drafts?.autosave) {\n void saveDraft()\n }\n })\n\n const publish = useCallback(() => {\n void submit({\n overrides: {\n _status: 'published',\n },\n })\n }, [submit])\n\n if (!hasPublishPermission) return null\n\n return (\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n onClick={publish}\n size=\"medium\"\n type=\"button\"\n >\n {label}\n </FormSubmit>\n )\n}\n\ntype Props = {\n CustomComponent?: MappedComponent\n}\n\nexport const PublishButton: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) return <RenderComponent mappedComponent={CustomComponent} />\n return <DefaultPublishButton />\n}\n"],"mappings":"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","ignoreList":[]}