@payloadcms/next 3.0.0-beta.107 → 3.0.0-beta.108

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 (104) hide show
  1. package/dist/cjs/withPayload.js +4 -4
  2. package/dist/cjs/withPayload.js.map +1 -1
  3. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +28 -24
  5. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  6. package/dist/elements/DocumentLocked/index.d.ts +12 -0
  7. package/dist/elements/DocumentLocked/index.d.ts.map +1 -0
  8. package/dist/elements/DocumentLocked/index.js +142 -0
  9. package/dist/elements/DocumentLocked/index.js.map +1 -0
  10. package/dist/elements/DocumentLocked/index.scss +37 -0
  11. package/dist/elements/DocumentTakeOver/index.d.ts +8 -0
  12. package/dist/elements/DocumentTakeOver/index.d.ts.map +1 -0
  13. package/dist/elements/DocumentTakeOver/index.js +98 -0
  14. package/dist/elements/DocumentTakeOver/index.js.map +1 -0
  15. package/dist/elements/DocumentTakeOver/index.scss +37 -0
  16. package/dist/elements/Nav/NavWrapper/index.scss +5 -0
  17. package/dist/elements/Nav/index.scss +5 -1
  18. package/dist/layouts/Root/index.d.ts.map +1 -1
  19. package/dist/layouts/Root/index.js +52 -20
  20. package/dist/layouts/Root/index.js.map +1 -1
  21. package/dist/prod/styles.css +1 -1
  22. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  23. package/dist/routes/rest/collections/find.js +3 -0
  24. package/dist/routes/rest/collections/find.js.map +1 -1
  25. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  26. package/dist/routes/rest/collections/findByID.js +2 -0
  27. package/dist/routes/rest/collections/findByID.js.map +1 -1
  28. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  29. package/dist/routes/rest/collections/updateByID.js +2 -0
  30. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  31. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  32. package/dist/routes/rest/globals/update.js +2 -0
  33. package/dist/routes/rest/globals/update.js.map +1 -1
  34. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +13 -0
  35. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -0
  36. package/dist/routes/rest/utilities/sanitizeJoinParams.js +17 -0
  37. package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -0
  38. package/dist/templates/Default/index.d.ts.map +1 -1
  39. package/dist/templates/Default/index.js +7 -3
  40. package/dist/templates/Default/index.js.map +1 -1
  41. package/dist/templates/Default/index.scss +6 -1
  42. package/dist/utilities/initPage/index.d.ts.map +1 -1
  43. package/dist/utilities/initPage/index.js +22 -32
  44. package/dist/utilities/initPage/index.js.map +1 -1
  45. package/dist/utilities/initReq.d.ts +11 -0
  46. package/dist/utilities/initReq.d.ts.map +1 -0
  47. package/dist/utilities/initReq.js +46 -0
  48. package/dist/utilities/initReq.js.map +1 -0
  49. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  50. package/dist/views/CreateFirstUser/index.client.js +4 -1
  51. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  52. package/dist/views/Dashboard/Default/index.d.ts +8 -1
  53. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  54. package/dist/views/Dashboard/Default/index.js +14 -2
  55. package/dist/views/Dashboard/Default/index.js.map +1 -1
  56. package/dist/views/Dashboard/Default/index.scss +5 -0
  57. package/dist/views/Dashboard/index.d.ts.map +1 -1
  58. package/dist/views/Dashboard/index.js +16 -1
  59. package/dist/views/Dashboard/index.js.map +1 -1
  60. package/dist/views/Document/getDocumentData.d.ts +5 -2
  61. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  62. package/dist/views/Document/getDocumentData.js +13 -2
  63. package/dist/views/Document/getDocumentData.js.map +1 -1
  64. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  65. package/dist/views/Edit/Default/index.js +162 -14
  66. package/dist/views/Edit/Default/index.js.map +1 -1
  67. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +3 -0
  68. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  69. package/dist/views/List/Default/index.d.ts.map +1 -1
  70. package/dist/views/List/Default/index.js +62 -58
  71. package/dist/views/List/Default/index.js.map +1 -1
  72. package/dist/views/List/Default/index.scss +1 -1
  73. package/dist/views/List/index.d.ts.map +1 -1
  74. package/dist/views/List/index.js +1 -0
  75. package/dist/views/List/index.js.map +1 -1
  76. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  77. package/dist/views/LivePreview/index.client.js +4 -1
  78. package/dist/views/LivePreview/index.client.js.map +1 -1
  79. package/dist/views/LivePreview/usePopupWindow.js +119 -74
  80. package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
  81. package/dist/views/Login/LoginForm/index.js +2 -2
  82. package/dist/views/Login/LoginForm/index.js.map +1 -1
  83. package/dist/views/Version/Default/index.d.ts.map +1 -1
  84. package/dist/views/Version/Default/index.js +2 -0
  85. package/dist/views/Version/Default/index.js.map +1 -1
  86. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  87. package/dist/views/Version/SelectComparison/index.js +24 -3
  88. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  89. package/dist/views/Version/SelectComparison/types.d.ts +1 -0
  90. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  91. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  92. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  93. package/dist/views/Versions/buildColumns.js +63 -48
  94. package/dist/views/Versions/buildColumns.js.map +1 -1
  95. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  96. package/dist/views/Versions/cells/AutosaveCell/index.js +48 -20
  97. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  98. package/dist/views/Versions/index.d.ts.map +1 -1
  99. package/dist/views/Versions/index.js +23 -6
  100. package/dist/views/Versions/index.js.map +1 -1
  101. package/dist/withPayload.d.ts.map +1 -1
  102. package/dist/withPayload.js +4 -4
  103. package/dist/withPayload.js.map +1 -1
  104. package/package.json +23 -15
@@ -1,24 +1,71 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { initI18n, rtlLanguages } from '@payloadcms/translations';
2
+ import { rtlLanguages } from '@payloadcms/translations';
3
3
  import { RootProvider } from '@payloadcms/ui';
4
4
  import { createClientConfig } from '@payloadcms/ui/utilities/createClientConfig';
5
5
  import { headers as getHeaders, cookies as nextCookies } from 'next/headers.js';
6
- import { createLocalReq, parseCookies } from 'payload';
6
+ import { checkDependencies, parseCookies } from 'payload';
7
7
  import React from 'react';
8
8
  import { getPayloadHMR } from '../../utilities/getPayloadHMR.js';
9
9
  import { getRequestLanguage } from '../../utilities/getRequestLanguage.js';
10
10
  import { getRequestTheme } from '../../utilities/getRequestTheme.js';
11
+ import { initReq } from '../../utilities/initReq.js';
11
12
  import { DefaultEditView } from '../../views/Edit/Default/index.js';
12
13
  import { DefaultListView } from '../../views/List/Default/index.js';
13
14
  export const metadata = {
14
15
  description: 'Generated by Next.js',
15
16
  title: 'Next.js'
16
17
  };
18
+ const customReactVersionParser = version => {
19
+ const [mainVersion, ...preReleases] = version.split('-');
20
+ if (preReleases?.length === 3) {
21
+ // Needs different handling, as it's in a format like 19.0.0-rc-06d0b89e-20240801 format
22
+ const date = preReleases[2];
23
+ const parts = mainVersion.split('.').map(Number);
24
+ return {
25
+ parts,
26
+ preReleases: [date]
27
+ };
28
+ }
29
+ const parts = mainVersion.split('.').map(Number);
30
+ return {
31
+ parts,
32
+ preReleases
33
+ };
34
+ };
35
+ let checkedDependencies = false;
17
36
  export const RootLayout = async ({
18
37
  children,
19
38
  config: configPromise,
20
39
  importMap
21
40
  }) => {
41
+ if (process.env.NODE_ENV !== 'production' && process.env.PAYLOAD_DISABLE_DEPENDENCY_CHECKER !== 'true' && !checkedDependencies) {
42
+ // eslint-disable-next-line react-compiler/react-compiler
43
+ checkedDependencies = true;
44
+ // First check if there are mismatching dependency versions of next / react packages
45
+ await checkDependencies({
46
+ dependencyGroups: [{
47
+ name: 'react',
48
+ dependencies: ['react', 'react-dom'],
49
+ targetVersionDependency: 'react'
50
+ }],
51
+ dependencyVersions: {
52
+ next: {
53
+ required: false,
54
+ version: '>=15.0.0-canary.160'
55
+ },
56
+ react: {
57
+ customVersionParser: customReactVersionParser,
58
+ required: false,
59
+ version: '>=19.0.0-rc-5dcb0097-20240918'
60
+ },
61
+ 'react-dom': {
62
+ customVersionParser: customReactVersionParser,
63
+ required: false,
64
+ version: '>=19.0.0-rc-5dcb0097-20240918'
65
+ }
66
+ }
67
+ });
68
+ }
22
69
  const config = await configPromise;
23
70
  const headers = getHeaders();
24
71
  const cookies = parseCookies(headers);
@@ -35,27 +82,12 @@ export const RootLayout = async ({
35
82
  const payload = await getPayloadHMR({
36
83
  config
37
84
  });
38
- const i18n = await initI18n({
39
- config: config.i18n,
40
- context: 'client',
41
- language: languageCode
42
- });
43
- const req = await createLocalReq({
44
- fallbackLocale: null,
45
- req: {
46
- headers,
47
- host: headers.get('host'),
48
- i18n,
49
- url: `${payload.config.serverURL}`
50
- }
51
- }, payload);
52
85
  const {
86
+ i18n,
53
87
  permissions,
88
+ req,
54
89
  user
55
- } = await payload.auth({
56
- headers,
57
- req
58
- });
90
+ } = await initReq(config);
59
91
  const {
60
92
  clientConfig,
61
93
  render
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["initI18n","rtlLanguages","RootProvider","createClientConfig","headers","getHeaders","cookies","nextCookies","createLocalReq","parseCookies","React","getPayloadHMR","getRequestLanguage","getRequestTheme","DefaultEditView","DefaultListView","metadata","description","title","RootLayout","children","config","configPromise","importMap","languageCode","theme","payload","i18n","context","language","req","fallbackLocale","host","get","url","serverURL","permissions","user","auth","clientConfig","render","dir","includes","languageOptions","Object","entries","supportedLanguages","reduce","acc","languageConfig","keys","push","label","translations","general","thisLanguage","value","switchLanguageServerAction","lang","set","name","cookiePrefix","path","navPreferences","find","collection","depth","limit","where","and","key","equals","id","docs","isNavOpen","open","_jsx","_jsxs","dateFNSKey","fallbackLang","fallbackLanguage"],"sources":["../../../src/layouts/Root/index.tsx"],"sourcesContent":["import type { AcceptedLanguages, I18nClient } from '@payloadcms/translations'\nimport type { ImportMap, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport { initI18n, rtlLanguages } from '@payloadcms/translations'\nimport { RootProvider } from '@payloadcms/ui'\nimport '@payloadcms/ui/scss/app.scss'\nimport { createClientConfig } from '@payloadcms/ui/utilities/createClientConfig'\nimport { headers as getHeaders, cookies as nextCookies } from 'next/headers.js'\nimport { createLocalReq, parseCookies } from 'payload'\nimport React from 'react'\n\nimport { getPayloadHMR } from '../../utilities/getPayloadHMR.js'\nimport { getRequestLanguage } from '../../utilities/getRequestLanguage.js'\nimport { getRequestTheme } from '../../utilities/getRequestTheme.js'\nimport { DefaultEditView } from '../../views/Edit/Default/index.js'\nimport { DefaultListView } from '../../views/List/Default/index.js'\n\nexport const metadata = {\n description: 'Generated by Next.js',\n title: 'Next.js',\n}\n\nexport const RootLayout = async ({\n children,\n config: configPromise,\n importMap,\n}: {\n readonly children: React.ReactNode\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n}) => {\n const config = await configPromise\n\n const headers = getHeaders()\n const cookies = parseCookies(headers)\n\n const languageCode = getRequestLanguage({\n config,\n cookies,\n headers,\n })\n\n const theme = getRequestTheme({\n config,\n cookies,\n headers,\n })\n\n const payload = await getPayloadHMR({ config })\n\n const i18n: I18nClient = await initI18n({\n config: config.i18n,\n context: 'client',\n language: languageCode,\n })\n\n const req = await createLocalReq(\n {\n fallbackLocale: null,\n req: {\n headers,\n host: headers.get('host'),\n i18n,\n url: `${payload.config.serverURL}`,\n } as PayloadRequest,\n },\n payload,\n )\n const { permissions, user } = await payload.auth({ headers, req })\n\n const { clientConfig, render } = await createClientConfig({\n children,\n config,\n DefaultEditView,\n DefaultListView,\n i18n,\n importMap,\n payload,\n })\n\n const dir = (rtlLanguages as unknown as AcceptedLanguages[]).includes(languageCode)\n ? 'RTL'\n : 'LTR'\n\n const languageOptions = Object.entries(config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language,\n })\n }\n\n return acc\n },\n [],\n )\n\n // eslint-disable-next-line @typescript-eslint/require-await\n async function switchLanguageServerAction(lang: string): Promise<void> {\n 'use server'\n nextCookies().set({\n name: `${config.cookiePrefix || 'payload'}-lng`,\n path: '/',\n value: lang,\n })\n }\n\n const navPreferences = user\n ? (\n await payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n req,\n user,\n where: {\n and: [\n {\n key: {\n equals: 'nav',\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n ],\n },\n })\n )?.docs?.[0]\n : null\n\n const isNavOpen = navPreferences?.value?.open ?? true\n\n return (\n <html data-theme={theme} dir={dir} lang={languageCode}>\n <body>\n <RootProvider\n config={clientConfig}\n dateFNSKey={i18n.dateFNSKey}\n fallbackLang={clientConfig.i18n.fallbackLanguage}\n isNavOpen={isNavOpen}\n languageCode={languageCode}\n languageOptions={languageOptions}\n permissions={permissions}\n switchLanguageServerAction={switchLanguageServerAction}\n theme={theme}\n translations={i18n.translations}\n user={user}\n >\n {render}\n </RootProvider>\n <div id=\"portal\" />\n </body>\n </html>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["rtlLanguages","RootProvider","createClientConfig","headers","getHeaders","cookies","nextCookies","checkDependencies","parseCookies","React","getPayloadHMR","getRequestLanguage","getRequestTheme","initReq","DefaultEditView","DefaultListView","metadata","description","title","customReactVersionParser","version","mainVersion","preReleases","split","length","date","parts","map","Number","checkedDependencies","RootLayout","children","config","configPromise","importMap","process","env","NODE_ENV","PAYLOAD_DISABLE_DEPENDENCY_CHECKER","dependencyGroups","name","dependencies","targetVersionDependency","dependencyVersions","next","required","react","customVersionParser","languageCode","theme","payload","i18n","permissions","req","user","clientConfig","render","dir","includes","languageOptions","Object","entries","supportedLanguages","reduce","acc","language","languageConfig","keys","push","label","translations","general","thisLanguage","value","switchLanguageServerAction","lang","set","cookiePrefix","path","navPreferences","find","collection","depth","limit","where","and","key","equals","id","docs","isNavOpen","open","_jsx","_jsxs","dateFNSKey","fallbackLang","fallbackLanguage"],"sources":["../../../src/layouts/Root/index.tsx"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { CustomVersionParser, ImportMap, SanitizedConfig } from 'payload'\n\nimport { rtlLanguages } from '@payloadcms/translations'\nimport { RootProvider } from '@payloadcms/ui'\nimport '@payloadcms/ui/scss/app.scss'\nimport { createClientConfig } from '@payloadcms/ui/utilities/createClientConfig'\nimport { headers as getHeaders, cookies as nextCookies } from 'next/headers.js'\nimport { checkDependencies, parseCookies } from 'payload'\nimport React from 'react'\n\nimport { getPayloadHMR } from '../../utilities/getPayloadHMR.js'\nimport { getRequestLanguage } from '../../utilities/getRequestLanguage.js'\nimport { getRequestTheme } from '../../utilities/getRequestTheme.js'\nimport { initReq } from '../../utilities/initReq.js'\nimport { DefaultEditView } from '../../views/Edit/Default/index.js'\nimport { DefaultListView } from '../../views/List/Default/index.js'\n\nexport const metadata = {\n description: 'Generated by Next.js',\n title: 'Next.js',\n}\n\nconst customReactVersionParser: CustomVersionParser = (version) => {\n const [mainVersion, ...preReleases] = version.split('-')\n\n if (preReleases?.length === 3) {\n // Needs different handling, as it's in a format like 19.0.0-rc-06d0b89e-20240801 format\n const date = preReleases[2]\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases: [date] }\n }\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases }\n}\n\nlet checkedDependencies = false\n\nexport const RootLayout = async ({\n children,\n config: configPromise,\n importMap,\n}: {\n readonly children: React.ReactNode\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n}) => {\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.PAYLOAD_DISABLE_DEPENDENCY_CHECKER !== 'true' &&\n !checkedDependencies\n ) {\n // eslint-disable-next-line react-compiler/react-compiler\n checkedDependencies = true\n // First check if there are mismatching dependency versions of next / react packages\n await checkDependencies({\n dependencyGroups: [\n {\n name: 'react',\n dependencies: ['react', 'react-dom'],\n targetVersionDependency: 'react',\n },\n ],\n dependencyVersions: {\n next: {\n required: false,\n version: '>=15.0.0-canary.160',\n },\n react: {\n customVersionParser: customReactVersionParser,\n required: false,\n version: '>=19.0.0-rc-5dcb0097-20240918',\n },\n 'react-dom': {\n customVersionParser: customReactVersionParser,\n required: false,\n version: '>=19.0.0-rc-5dcb0097-20240918',\n },\n },\n })\n }\n\n const config = await configPromise\n\n const headers = getHeaders()\n const cookies = parseCookies(headers)\n\n const languageCode = getRequestLanguage({\n config,\n cookies,\n headers,\n })\n\n const theme = getRequestTheme({\n config,\n cookies,\n headers,\n })\n\n const payload = await getPayloadHMR({ config })\n\n const { i18n, permissions, req, user } = await initReq(config)\n\n const { clientConfig, render } = await createClientConfig({\n children,\n config,\n DefaultEditView,\n DefaultListView,\n i18n,\n importMap,\n payload,\n })\n\n const dir = (rtlLanguages as unknown as AcceptedLanguages[]).includes(languageCode)\n ? 'RTL'\n : 'LTR'\n\n const languageOptions = Object.entries(config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language,\n })\n }\n\n return acc\n },\n [],\n )\n\n // eslint-disable-next-line @typescript-eslint/require-await\n async function switchLanguageServerAction(lang: string): Promise<void> {\n 'use server'\n nextCookies().set({\n name: `${config.cookiePrefix || 'payload'}-lng`,\n path: '/',\n value: lang,\n })\n }\n\n const navPreferences = user\n ? (\n await payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n req,\n user,\n where: {\n and: [\n {\n key: {\n equals: 'nav',\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n ],\n },\n })\n )?.docs?.[0]\n : null\n\n const isNavOpen = navPreferences?.value?.open ?? true\n\n return (\n <html data-theme={theme} dir={dir} lang={languageCode}>\n <body>\n <RootProvider\n config={clientConfig}\n dateFNSKey={i18n.dateFNSKey}\n fallbackLang={clientConfig.i18n.fallbackLanguage}\n isNavOpen={isNavOpen}\n languageCode={languageCode}\n languageOptions={languageOptions}\n permissions={permissions}\n switchLanguageServerAction={switchLanguageServerAction}\n theme={theme}\n translations={i18n.translations}\n user={user}\n >\n {render}\n </RootProvider>\n <div id=\"portal\" />\n </body>\n </html>\n )\n}\n"],"mappings":"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","ignoreList":[]}