@payloadcms/next 3.0.0-canary.a5aaf21 → 3.0.0-canary.a7293f6
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.
- package/dist/layouts/Root/index.js +6 -6
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/routes/graphql/handler.d.ts.map +1 -1
- package/dist/routes/graphql/handler.js +23 -11
- package/dist/routes/graphql/handler.js.map +1 -1
- package/dist/routes/rest/index.d.ts +12 -12
- package/dist/routes/rest/index.d.ts.map +1 -1
- package/dist/routes/rest/index.js +17 -15
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/routes/rest/routeError.d.ts +2 -7
- package/dist/routes/rest/routeError.d.ts.map +1 -1
- package/dist/routes/rest/routeError.js +33 -19
- package/dist/routes/rest/routeError.js.map +1 -1
- package/dist/utilities/getNextRequestI18n.js +2 -2
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/getRequestTheme.d.ts.map +1 -1
- package/dist/utilities/getRequestTheme.js +3 -0
- package/dist/utilities/getRequestTheme.js.map +1 -1
- package/dist/utilities/initPage/index.js +1 -1
- package/dist/utilities/initPage/index.js.map +1 -1
- package/dist/utilities/initReq.js +1 -1
- package/dist/utilities/initReq.js.map +1 -1
- package/dist/views/Account/Settings/index.d.ts +2 -1
- package/dist/views/Account/Settings/index.d.ts.map +1 -1
- package/dist/views/Account/Settings/index.js +3 -2
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/index.d.ts.map +1 -1
- package/dist/views/Account/index.js +3 -1
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +31 -15
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
- package/dist/views/Document/getDocumentPermissions.js +4 -1
- package/dist/views/Document/getDocumentPermissions.js.map +1 -1
- package/dist/views/Edit/Default/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/index.js +32 -67
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.js +2 -2
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/LivePreview/index.client.d.ts.map +1 -1
- package/dist/views/LivePreview/index.client.js +214 -203
- package/dist/views/LivePreview/index.client.js.map +1 -1
- package/dist/views/NotFound/index.d.ts +5 -5
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +4 -2
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/Root/getViewFromConfig.js +1 -1
- package/dist/views/Root/getViewFromConfig.js.map +1 -1
- package/dist/views/Root/index.d.ts +5 -5
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +4 -2
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Root/meta.d.ts +5 -5
- package/dist/views/Root/meta.d.ts.map +1 -1
- package/dist/views/Root/meta.js +3 -2
- package/dist/views/Root/meta.js.map +1 -1
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +8 -14
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +2 -0
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/getLatestVersion.d.ts +1 -0
- package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
- package/dist/views/Versions/getLatestVersion.js +14 -3
- package/dist/views/Versions/getLatestVersion.js.map +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +2 -0
- package/dist/views/Versions/index.js.map +1 -1
- package/package.json +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["formatAdminURL","React","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","importMap","params","searchParams","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","_jsx","req","locale","payload","permissions","user","visibleEntities","NotFoundView","marginTop"],"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type {\n AdminViewComponent,\n ImportMap,\n PayloadServerReactComponent,\n SanitizedConfig,\n} from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { NotFoundClient } from './index.client.js'\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n}: {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: { [key: string]: string | string[] }\n}): Promise<Metadata> => {\n const config = await configPromise\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n return {\n title: i18n.t('general:notFound'),\n }\n}\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18n\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const NotFoundPage = async ({\n config: configPromise,\n importMap,\n params,\n searchParams,\n}: {\n config: Promise<SanitizedConfig>\n importMap: ImportMap\n params: {\n segments: string[]\n }
|
|
1
|
+
{"version":3,"file":"index.js","names":["formatAdminURL","React","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","importMap","params","paramsPromise","searchParams","searchParamsPromise","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","_jsx","req","locale","payload","permissions","user","visibleEntities","NotFoundView","marginTop"],"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type {\n AdminViewComponent,\n ImportMap,\n PayloadServerReactComponent,\n SanitizedConfig,\n} from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { NotFoundClient } from './index.client.js'\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n}: {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: { [key: string]: string | string[] }\n}): Promise<Metadata> => {\n const config = await configPromise\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n return {\n title: i18n.t('general:notFound'),\n }\n}\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18n\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const NotFoundPage = async ({\n config: configPromise,\n importMap,\n params: paramsPromise,\n searchParams: searchParamsPromise,\n}: {\n config: Promise<SanitizedConfig>\n importMap: ImportMap\n params: Promise<{\n segments: string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}) => {\n const config = await configPromise\n const { routes: { admin: adminRoute } = {} } = config\n\n const searchParams = await searchParamsPromise\n const initPageResult = await initPage({\n config,\n importMap,\n redirectUnauthenticatedUser: true,\n route: formatAdminURL({ adminRoute, path: '/not-found' }),\n searchParams,\n })\n\n const params = await paramsPromise\n\n return (\n <DefaultTemplate\n i18n={initPageResult.req.i18n}\n locale={initPageResult.locale}\n params={params}\n payload={initPageResult.req.payload}\n permissions={initPageResult.permissions}\n searchParams={searchParams}\n user={initPageResult.req.user}\n visibleEntities={initPageResult.visibleEntities}\n >\n <NotFoundClient />\n </DefaultTemplate>\n )\n}\n\nexport const NotFoundView: PayloadServerReactComponent<AdminViewComponent> = () => {\n return <NotFoundClient marginTop=\"large\" />\n}\n"],"mappings":";AASA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAE/B,OAAO,MAAMC,oBAAA,GAAuB,MAAAA,CAAO;EACzCC,MAAA,EAAQC;AAAa,CAItB;EACC,MAAMD,MAAA,GAAS,MAAMC,aAAA;EAErB,MAAMC,IAAA,GAAO,MAAMN,kBAAA,CAAmB;IACpCI;EACF;EAEA,OAAO;IACLG,KAAA,EAAOD,IAAA,CAAKE,CAAC,CAAC;EAChB;AACF;AAQA,OAAO,MAAMC,YAAA,GAAe,MAAAA,CAAO;EACjCL,MAAA,EAAQC,aAAa;EACrBK,SAAS;EACTC,MAAA,EAAQC,aAAa;EACrBC,YAAA,EAAcC;AAAmB,CAUlC;EACC,MAAMV,MAAA,GAAS,MAAMC,aAAA;EACrB,MAAM;IAAEU,MAAA,EAAQ;MAAEC,KAAA,EAAOC;IAAU,CAAE,GAAG,CAAC;EAAC,CAAE,GAAGb,MAAA;EAE/C,MAAMS,YAAA,GAAe,MAAMC,mBAAA;EAC3B,MAAMI,cAAA,GAAiB,MAAMjB,QAAA,CAAS;IACpCG,MAAA;IACAM,SAAA;IACAS,2BAAA,EAA6B;IAC7BC,KAAA,EAAOvB,cAAA,CAAe;MAAEoB,UAAA;MAAYI,IAAA,EAAM;IAAa;IACvDR;EACF;EAEA,MAAMF,MAAA,GAAS,MAAMC,aAAA;EAErB,oBACEU,IAAA,CAACvB,eAAA;IACCO,IAAA,EAAMY,cAAA,CAAeK,GAAG,CAACjB,IAAI;IAC7BkB,MAAA,EAAQN,cAAA,CAAeM,MAAM;IAC7Bb,MAAA,EAAQA,MAAA;IACRc,OAAA,EAASP,cAAA,CAAeK,GAAG,CAACE,OAAO;IACnCC,WAAA,EAAaR,cAAA,CAAeQ,WAAW;IACvCb,YAAA,EAAcA,YAAA;IACdc,IAAA,EAAMT,cAAA,CAAeK,GAAG,CAACI,IAAI;IAC7BC,eAAA,EAAiBV,cAAA,CAAeU,eAAe;cAE/C,aAAAN,IAAA,CAACpB,cAAA;;AAGP;AAEA,OAAO,MAAM2B,YAAA,GAAgEA,CAAA;EAC3E,oBAAOP,IAAA,CAACpB,cAAA;IAAe4B,SAAA,EAAU;;AACnC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getViewFromConfig.js","names":["formatAdminURL","Account","CreateFirstUserView","Dashboard","Document","DocumentView","forgotPasswordBaseClass","ForgotPasswordView","ListView","loginBaseClass","LoginView","LogoutInactivity","LogoutView","ResetPassword","resetPasswordBaseClass","UnauthorizedView","Verify","verifyBaseClass","getCustomViewByRoute","isPathMatchingRoute","baseClasses","account","forgot","login","reset","verify","oneSegmentViews","createFirstUser","inactivity","logout","unauthorized","getViewFromConfig","adminRoute","config","currentRoute","importMap","searchParams","segments","ViewToRender","templateClassName","templateType","initPageOptions","route","segmentOne","segmentTwo","isGlobal","isCollection","length","Component","redirectUnauthenticatedUser","viewKey","admin","routes","matchedRoute","Object","entries","find","exact","path","view","DefaultView"],"sources":["../../../src/views/Root/getViewFromConfig.ts"],"sourcesContent":["import type { AdminViewComponent, AdminViewProps, ImportMap, SanitizedConfig } from 'payload'\nimport type React from 'react'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\n\nimport type { initPage } from '../../utilities/initPage/index.js'\n\nimport { Account } from '../Account/index.js'\nimport { CreateFirstUserView } from '../CreateFirstUser/index.js'\nimport { Dashboard } from '../Dashboard/index.js'\nimport { Document as DocumentView } from '../Document/index.js'\nimport { forgotPasswordBaseClass, ForgotPasswordView } from '../ForgotPassword/index.js'\nimport { ListView } from '../List/index.js'\nimport { loginBaseClass, LoginView } from '../Login/index.js'\nimport { LogoutInactivity, LogoutView } from '../Logout/index.js'\nimport { ResetPassword, resetPasswordBaseClass } from '../ResetPassword/index.js'\nimport { UnauthorizedView } from '../Unauthorized/index.js'\nimport { Verify, verifyBaseClass } from '../Verify/index.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\nimport { isPathMatchingRoute } from './isPathMatchingRoute.js'\n\nconst baseClasses = {\n account: 'account',\n forgot: forgotPasswordBaseClass,\n login: loginBaseClass,\n reset: resetPasswordBaseClass,\n verify: verifyBaseClass,\n}\n\ntype OneSegmentViews = {\n [K in Exclude<keyof SanitizedConfig['admin']['routes'], 'reset'>]: React.FC<AdminViewProps>\n}\n\nexport type ViewFromConfig = {\n Component?: React.FC<AdminViewProps>\n payloadComponent?: AdminViewComponent\n}\n\nconst oneSegmentViews: OneSegmentViews = {\n account: Account,\n createFirstUser: CreateFirstUserView,\n forgot: ForgotPasswordView,\n inactivity: LogoutInactivity,\n login: LoginView,\n logout: LogoutView,\n unauthorized: UnauthorizedView,\n}\n\nexport const getViewFromConfig = ({\n adminRoute,\n config,\n currentRoute,\n importMap,\n searchParams,\n segments,\n}: {\n adminRoute: string\n config: SanitizedConfig\n currentRoute: string\n importMap: ImportMap\n searchParams: {\n [key: string]: string | string[]\n }\n segments: string[]\n}): {\n DefaultView: ViewFromConfig\n initPageOptions: Parameters<typeof initPage>[0]\n templateClassName: string\n templateType: 'default' | 'minimal'\n} => {\n let ViewToRender: ViewFromConfig = null\n let templateClassName: string\n let templateType: 'default' | 'minimal' | undefined\n\n const initPageOptions: Parameters<typeof initPage>[0] = {\n config,\n importMap,\n route: currentRoute,\n searchParams,\n }\n\n const [segmentOne, segmentTwo] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n\n switch (segments.length) {\n case 0: {\n if (currentRoute === adminRoute) {\n ViewToRender = {\n Component: Dashboard,\n }\n templateClassName = 'dashboard'\n templateType = 'default'\n initPageOptions.redirectUnauthenticatedUser = true\n }\n break\n }\n case 1: {\n // users can override the default routes via `admin.routes` config\n // i.e.{ admin: { routes: { logout: '/sign-out', inactivity: '/idle' }}}\n let viewKey: keyof typeof oneSegmentViews\n\n if (config.admin.routes) {\n const matchedRoute = Object.entries(config.admin.routes).find(([, route]) => {\n return isPathMatchingRoute({\n currentRoute,\n exact: true,\n path: formatAdminURL({ adminRoute, path: route }),\n })\n })\n\n if (matchedRoute) {\n viewKey = matchedRoute[0] as keyof typeof oneSegmentViews\n }\n }\n\n if (oneSegmentViews[viewKey]) {\n // --> /account\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n\n ViewToRender = {\n Component: oneSegmentViews[viewKey],\n }\n\n templateClassName = baseClasses[viewKey]\n templateType = 'minimal'\n\n if (viewKey === 'account') {\n initPageOptions.redirectUnauthenticatedUser = true\n templateType = 'default'\n }\n }\n break\n }\n case 2: {\n if (segmentOne === 'reset') {\n // --> /reset/:token\n ViewToRender = {\n Component: ResetPassword,\n }\n templateClassName = baseClasses[segmentTwo]\n templateType = 'minimal'\n }\n\n if (isCollection) {\n // --> /collections/:collectionSlug\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: ListView,\n }\n\n templateClassName = `${segmentTwo}-list`\n templateType = 'default'\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = 'global-edit'\n templateType = 'default'\n }\n break\n }\n default:\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n ViewToRender = {\n Component: Verify,\n }\n\n templateClassName = 'verify'\n templateType = 'minimal'\n } else if (isCollection) {\n // Custom Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/preview\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:versionId\n // --> /collections/:collectionSlug/:id/api\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `collection-default-edit`\n templateType = 'default'\n } else if (isGlobal) {\n // Custom Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/preview\n // --> /globals/:globalSlug/versions/:versionId\n // --> /globals/:globalSlug/api\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `global-edit`\n templateType = 'default'\n }\n break\n }\n\n if (!ViewToRender) {\n ViewToRender = getCustomViewByRoute({ config, currentRoute })?.view\n }\n\n return {\n DefaultView: ViewToRender,\n initPageOptions,\n templateClassName,\n templateType,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"getViewFromConfig.js","names":["formatAdminURL","Account","CreateFirstUserView","Dashboard","Document","DocumentView","forgotPasswordBaseClass","ForgotPasswordView","ListView","loginBaseClass","LoginView","LogoutInactivity","LogoutView","ResetPassword","resetPasswordBaseClass","UnauthorizedView","Verify","verifyBaseClass","getCustomViewByRoute","isPathMatchingRoute","baseClasses","account","forgot","login","reset","verify","oneSegmentViews","createFirstUser","inactivity","logout","unauthorized","getViewFromConfig","adminRoute","config","currentRoute","importMap","searchParams","segments","ViewToRender","templateClassName","templateType","initPageOptions","route","segmentOne","segmentTwo","isGlobal","isCollection","length","Component","redirectUnauthenticatedUser","viewKey","admin","routes","matchedRoute","Object","entries","find","exact","path","view","DefaultView"],"sources":["../../../src/views/Root/getViewFromConfig.ts"],"sourcesContent":["import type { AdminViewComponent, AdminViewProps, ImportMap, SanitizedConfig } from 'payload'\nimport type React from 'react'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\n\nimport type { initPage } from '../../utilities/initPage/index.js'\n\nimport { Account } from '../Account/index.js'\nimport { CreateFirstUserView } from '../CreateFirstUser/index.js'\nimport { Dashboard } from '../Dashboard/index.js'\nimport { Document as DocumentView } from '../Document/index.js'\nimport { forgotPasswordBaseClass, ForgotPasswordView } from '../ForgotPassword/index.js'\nimport { ListView } from '../List/index.js'\nimport { loginBaseClass, LoginView } from '../Login/index.js'\nimport { LogoutInactivity, LogoutView } from '../Logout/index.js'\nimport { ResetPassword, resetPasswordBaseClass } from '../ResetPassword/index.js'\nimport { UnauthorizedView } from '../Unauthorized/index.js'\nimport { Verify, verifyBaseClass } from '../Verify/index.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\nimport { isPathMatchingRoute } from './isPathMatchingRoute.js'\n\nconst baseClasses = {\n account: 'account',\n forgot: forgotPasswordBaseClass,\n login: loginBaseClass,\n reset: resetPasswordBaseClass,\n verify: verifyBaseClass,\n}\n\ntype OneSegmentViews = {\n [K in Exclude<keyof SanitizedConfig['admin']['routes'], 'reset'>]: React.FC<AdminViewProps>\n}\n\nexport type ViewFromConfig = {\n Component?: React.FC<AdminViewProps>\n payloadComponent?: AdminViewComponent\n}\n\nconst oneSegmentViews: OneSegmentViews = {\n account: Account,\n createFirstUser: CreateFirstUserView,\n forgot: ForgotPasswordView,\n inactivity: LogoutInactivity,\n login: LoginView,\n logout: LogoutView,\n unauthorized: UnauthorizedView,\n}\n\nexport const getViewFromConfig = ({\n adminRoute,\n config,\n currentRoute,\n importMap,\n searchParams,\n segments,\n}: {\n adminRoute: string\n config: SanitizedConfig\n currentRoute: string\n importMap: ImportMap\n searchParams: {\n [key: string]: string | string[]\n }\n segments: string[]\n}): {\n DefaultView: ViewFromConfig\n initPageOptions: Parameters<typeof initPage>[0]\n templateClassName: string\n templateType: 'default' | 'minimal'\n} => {\n let ViewToRender: ViewFromConfig = null\n let templateClassName: string\n let templateType: 'default' | 'minimal' | undefined\n\n const initPageOptions: Parameters<typeof initPage>[0] = {\n config,\n importMap,\n route: currentRoute,\n searchParams,\n }\n\n const [segmentOne, segmentTwo] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n\n switch (segments.length) {\n case 0: {\n if (currentRoute === adminRoute) {\n ViewToRender = {\n Component: Dashboard,\n }\n templateClassName = 'dashboard'\n templateType = 'default'\n initPageOptions.redirectUnauthenticatedUser = true\n }\n break\n }\n case 1: {\n // users can override the default routes via `admin.routes` config\n // i.e.{ admin: { routes: { logout: '/sign-out', inactivity: '/idle' }}}\n let viewKey: keyof typeof oneSegmentViews\n\n if (config.admin.routes) {\n const matchedRoute = Object.entries(config.admin.routes).find(([, route]) => {\n return isPathMatchingRoute({\n currentRoute,\n exact: true,\n path: formatAdminURL({ adminRoute, path: route }),\n })\n })\n\n if (matchedRoute) {\n viewKey = matchedRoute[0] as keyof typeof oneSegmentViews\n }\n }\n\n if (oneSegmentViews[viewKey]) {\n // --> /account\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n\n ViewToRender = {\n Component: oneSegmentViews[viewKey],\n }\n\n templateClassName = baseClasses[viewKey]\n templateType = 'minimal'\n\n if (viewKey === 'account') {\n initPageOptions.redirectUnauthenticatedUser = true\n templateType = 'default'\n }\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n ViewToRender = {\n Component: ResetPassword,\n }\n templateClassName = baseClasses[segmentTwo]\n templateType = 'minimal'\n }\n\n if (isCollection) {\n // --> /collections/:collectionSlug\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: ListView,\n }\n\n templateClassName = `${segmentTwo}-list`\n templateType = 'default'\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = 'global-edit'\n templateType = 'default'\n }\n break\n }\n default:\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n ViewToRender = {\n Component: Verify,\n }\n\n templateClassName = 'verify'\n templateType = 'minimal'\n } else if (isCollection) {\n // Custom Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/preview\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:versionId\n // --> /collections/:collectionSlug/:id/api\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `collection-default-edit`\n templateType = 'default'\n } else if (isGlobal) {\n // Custom Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/preview\n // --> /globals/:globalSlug/versions/:versionId\n // --> /globals/:globalSlug/api\n initPageOptions.redirectUnauthenticatedUser = true\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `global-edit`\n templateType = 'default'\n }\n break\n }\n\n if (!ViewToRender) {\n ViewToRender = getCustomViewByRoute({ config, currentRoute })?.view\n }\n\n return {\n DefaultView: ViewToRender,\n initPageOptions,\n templateClassName,\n templateType,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,14 +11,14 @@ export type GenerateViewMetadata = (args: {
|
|
|
11
11
|
[key: string]: string | string[];
|
|
12
12
|
};
|
|
13
13
|
}) => Promise<Metadata>;
|
|
14
|
-
export declare const RootPage: ({ config: configPromise, importMap, params, searchParams, }: {
|
|
14
|
+
export declare const RootPage: ({ config: configPromise, importMap, params: paramsPromise, searchParams: searchParamsPromise, }: {
|
|
15
15
|
readonly config: Promise<SanitizedConfig>;
|
|
16
16
|
readonly importMap: ImportMap;
|
|
17
|
-
readonly params: {
|
|
17
|
+
readonly params: Promise<{
|
|
18
18
|
segments: string[];
|
|
19
|
-
}
|
|
20
|
-
readonly searchParams: {
|
|
19
|
+
}>;
|
|
20
|
+
readonly searchParams: Promise<{
|
|
21
21
|
[key: string]: string | string[];
|
|
22
|
-
}
|
|
22
|
+
}>;
|
|
23
23
|
}) => Promise<React.JSX.Element>;
|
|
24
24
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Root/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAmB,eAAe,EAAE,MAAM,SAAS,CAAA;AAI1E,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEvB,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Root/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAmB,eAAe,EAAE,MAAM,SAAS,CAAA;AAI1E,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEvB,eAAO,MAAM,QAAQ,oGAKlB;IACD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,MAAM,EAAE,CAAA;KACnB,CAAC,CAAA;IACF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;QAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KACjC,CAAC,CAAA;CACH,+BAgHA,CAAA"}
|
package/dist/views/Root/index.js
CHANGED
|
@@ -10,8 +10,8 @@ export { generatePageMetadata } from './meta.js';
|
|
|
10
10
|
export const RootPage = async ({
|
|
11
11
|
config: configPromise,
|
|
12
12
|
importMap,
|
|
13
|
-
params,
|
|
14
|
-
searchParams
|
|
13
|
+
params: paramsPromise,
|
|
14
|
+
searchParams: searchParamsPromise
|
|
15
15
|
}) => {
|
|
16
16
|
const config = await configPromise;
|
|
17
17
|
const {
|
|
@@ -25,11 +25,13 @@ export const RootPage = async ({
|
|
|
25
25
|
admin: adminRoute
|
|
26
26
|
}
|
|
27
27
|
} = config;
|
|
28
|
+
const params = await paramsPromise;
|
|
28
29
|
const currentRoute = formatAdminURL({
|
|
29
30
|
adminRoute,
|
|
30
31
|
path: `${Array.isArray(params.segments) ? `/${params.segments.join('/')}` : ''}`
|
|
31
32
|
});
|
|
32
33
|
const segments = Array.isArray(params.segments) ? params.segments : [];
|
|
34
|
+
const searchParams = await searchParamsPromise;
|
|
33
35
|
const {
|
|
34
36
|
DefaultView,
|
|
35
37
|
initPageOptions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["formatAdminURL","getCreateMappedComponent","RenderComponent","notFound","redirect","React","Fragment","DefaultTemplate","MinimalTemplate","initPage","getViewFromConfig","generatePageMetadata","RootPage","config","configPromise","importMap","params","searchParams","admin","routes","createFirstUser","_createFirstUserRoute","user","userSlug","adminRoute","currentRoute","path","Array","isArray","segments","join","DefaultView","initPageOptions","templateClassName","templateType","dbHasUser","Component","payloadComponent","initPageResult","req","payload","db","findOne","collection","then","doc","createFirstUserRoute","collectionConfig","collections","find","slug","disableLocalStrategy","auth","createMappedView","serverProps","i18n","MappedView","undefined","RenderedView","_jsx","mappedComponent","_jsxs","className","locale","permissions","visibleEntities","globals"],"sources":["../../../src/views/Root/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type { ImportMap, MappedComponent, SanitizedConfig } from 'payload'\n\nimport { formatAdminURL, getCreateMappedComponent, RenderComponent } from '@payloadcms/ui/shared'\nimport { notFound, redirect } from 'next/navigation.js'\nimport React, { Fragment } from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { MinimalTemplate } from '../../templates/Minimal/index.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { getViewFromConfig } from './getViewFromConfig.js'\n\nexport { generatePageMetadata } from './meta.js'\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18nClient\n isEditing?: boolean\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const RootPage = async ({\n config: configPromise,\n importMap,\n params,\n searchParams,\n}: {\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n readonly params: {\n segments: string[]\n }
|
|
1
|
+
{"version":3,"file":"index.js","names":["formatAdminURL","getCreateMappedComponent","RenderComponent","notFound","redirect","React","Fragment","DefaultTemplate","MinimalTemplate","initPage","getViewFromConfig","generatePageMetadata","RootPage","config","configPromise","importMap","params","paramsPromise","searchParams","searchParamsPromise","admin","routes","createFirstUser","_createFirstUserRoute","user","userSlug","adminRoute","currentRoute","path","Array","isArray","segments","join","DefaultView","initPageOptions","templateClassName","templateType","dbHasUser","Component","payloadComponent","initPageResult","req","payload","db","findOne","collection","then","doc","createFirstUserRoute","collectionConfig","collections","find","slug","disableLocalStrategy","auth","createMappedView","serverProps","i18n","MappedView","undefined","RenderedView","_jsx","mappedComponent","_jsxs","className","locale","permissions","visibleEntities","globals"],"sources":["../../../src/views/Root/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type { ImportMap, MappedComponent, SanitizedConfig } from 'payload'\n\nimport { formatAdminURL, getCreateMappedComponent, RenderComponent } from '@payloadcms/ui/shared'\nimport { notFound, redirect } from 'next/navigation.js'\nimport React, { Fragment } from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { MinimalTemplate } from '../../templates/Minimal/index.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { getViewFromConfig } from './getViewFromConfig.js'\n\nexport { generatePageMetadata } from './meta.js'\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18nClient\n isEditing?: boolean\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const RootPage = async ({\n config: configPromise,\n importMap,\n params: paramsPromise,\n searchParams: searchParamsPromise,\n}: {\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n readonly params: Promise<{\n segments: string[]\n }>\n readonly searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}) => {\n const config = await configPromise\n\n const {\n admin: {\n routes: { createFirstUser: _createFirstUserRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute },\n } = config\n\n const params = await paramsPromise\n const currentRoute = formatAdminURL({\n adminRoute,\n path: `${Array.isArray(params.segments) ? `/${params.segments.join('/')}` : ''}`,\n })\n\n const segments = Array.isArray(params.segments) ? params.segments : []\n\n const searchParams = await searchParamsPromise\n\n const { DefaultView, initPageOptions, templateClassName, templateType } = getViewFromConfig({\n adminRoute,\n config,\n currentRoute,\n importMap,\n searchParams,\n segments,\n })\n\n let dbHasUser = false\n\n if (!DefaultView?.Component && !DefaultView?.payloadComponent) {\n notFound()\n }\n\n const initPageResult = await initPage(initPageOptions)\n\n if (initPageResult) {\n dbHasUser = await initPageResult?.req.payload.db\n .findOne({\n collection: userSlug,\n req: initPageResult?.req,\n })\n ?.then((doc) => !!doc)\n\n const createFirstUserRoute = formatAdminURL({ adminRoute, path: _createFirstUserRoute })\n\n const collectionConfig = config.collections.find(({ slug }) => slug === userSlug)\n const disableLocalStrategy = collectionConfig?.auth?.disableLocalStrategy\n\n if (disableLocalStrategy && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n\n if (!dbHasUser && currentRoute !== createFirstUserRoute && !disableLocalStrategy) {\n redirect(createFirstUserRoute)\n }\n\n if (dbHasUser && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n }\n\n const createMappedView = getCreateMappedComponent({\n importMap,\n serverProps: {\n i18n: initPageResult?.req.i18n,\n importMap,\n initPageResult,\n params,\n payload: initPageResult?.req.payload,\n searchParams,\n },\n })\n\n const MappedView: MappedComponent = createMappedView(\n DefaultView.payloadComponent,\n undefined,\n DefaultView.Component,\n 'createMappedView',\n )\n\n const RenderedView = <RenderComponent mappedComponent={MappedView} />\n\n return (\n <Fragment>\n {!templateType && <Fragment>{RenderedView}</Fragment>}\n {templateType === 'minimal' && (\n <MinimalTemplate className={templateClassName}>{RenderedView}</MinimalTemplate>\n )}\n {templateType === 'default' && (\n <DefaultTemplate\n i18n={initPageResult?.req.i18n}\n locale={initPageResult?.locale}\n params={params}\n payload={initPageResult?.req.payload}\n permissions={initPageResult?.permissions}\n searchParams={searchParams}\n user={initPageResult?.req.user}\n visibleEntities={{\n // The reason we are not passing in initPageResult.visibleEntities directly is due to a \"Cannot assign to read only property of object '#<Object>\" error introduced in React 19\n // which this caused as soon as initPageResult.visibleEntities is passed in\n collections: initPageResult.visibleEntities?.collections,\n globals: initPageResult.visibleEntities?.globals,\n }}\n >\n {RenderedView}\n </DefaultTemplate>\n )}\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,13 +2,13 @@ import type { Metadata } from 'next';
|
|
|
2
2
|
import type { SanitizedConfig } from 'payload';
|
|
3
3
|
type Args = {
|
|
4
4
|
config: Promise<SanitizedConfig>;
|
|
5
|
-
params: {
|
|
5
|
+
params: Promise<{
|
|
6
6
|
[key: string]: string | string[];
|
|
7
|
-
}
|
|
8
|
-
searchParams: {
|
|
7
|
+
}>;
|
|
8
|
+
searchParams: Promise<{
|
|
9
9
|
[key: string]: string | string[];
|
|
10
|
-
}
|
|
10
|
+
}>;
|
|
11
11
|
};
|
|
12
|
-
export declare const generatePageMetadata: ({ config: configPromise, params }: Args) => Promise<Metadata>;
|
|
12
|
+
export declare const generatePageMetadata: ({ config: configPromise, params: paramsPromise, }: Args) => Promise<Metadata>;
|
|
13
13
|
export {};
|
|
14
14
|
//# sourceMappingURL=meta.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/views/Root/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AA0B9C,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAChC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/views/Root/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AA0B9C,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAChC,MAAM,EAAE,OAAO,CAAC;QACd,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KACjC,CAAC,CAAA;IACF,YAAY,EAAE,OAAO,CAAC;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KACjC,CAAC,CAAA;CACH,CAAA;AAED,eAAO,MAAM,oBAAoB,sDAG9B,IAAI,sBAsHN,CAAA"}
|
package/dist/views/Root/meta.js
CHANGED
|
@@ -22,9 +22,10 @@ const oneSegmentMeta = {
|
|
|
22
22
|
};
|
|
23
23
|
export const generatePageMetadata = async ({
|
|
24
24
|
config: configPromise,
|
|
25
|
-
params
|
|
25
|
+
params: paramsPromise
|
|
26
26
|
}) => {
|
|
27
27
|
const config = await configPromise;
|
|
28
|
+
const params = await paramsPromise;
|
|
28
29
|
const segments = Array.isArray(params.segments) ? params.segments : [];
|
|
29
30
|
const currentRoute = `/${segments.join('/')}`;
|
|
30
31
|
const [segmentOne, segmentTwo] = segments;
|
|
@@ -72,7 +73,7 @@ export const generatePageMetadata = async ({
|
|
|
72
73
|
}
|
|
73
74
|
case 2:
|
|
74
75
|
{
|
|
75
|
-
if (segmentOne ===
|
|
76
|
+
if (`/${segmentOne}` === config.admin.routes.reset) {
|
|
76
77
|
// --> /reset/:token
|
|
77
78
|
meta = await generateResetPasswordMetadata({
|
|
78
79
|
config,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.js","names":["getNextRequestI18n","generateAccountMetadata","generateCreateFirstUserMetadata","generateDashboardMetadata","generateDocumentMetadata","generateForgotPasswordMetadata","generateListMetadata","generateLoginMetadata","generateNotFoundMeta","generateResetPasswordMetadata","generateUnauthorizedMetadata","generateVerifyMetadata","generateCustomViewMetadata","getCustomViewByRoute","oneSegmentMeta","forgot","login","logout","unauthorized","generatePageMetadata","config","configPromise","params","segments","Array","isArray","currentRoute","join","segmentOne","segmentTwo","isGlobal","isCollection","i18n","meta","collectionConfig","length","collections","find","collection","slug","globalConfig","globals","global","viewConfig","viewKey"],"sources":["../../../src/views/Root/meta.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedConfig } from 'payload'\n\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { generateAccountMetadata } from '../Account/index.js'\nimport { generateCreateFirstUserMetadata } from '../CreateFirstUser/index.js'\nimport { generateDashboardMetadata } from '../Dashboard/index.js'\nimport { generateDocumentMetadata } from '../Document/meta.js'\nimport { generateForgotPasswordMetadata } from '../ForgotPassword/index.js'\nimport { generateListMetadata } from '../List/index.js'\nimport { generateLoginMetadata } from '../Login/index.js'\nimport { generateNotFoundMeta } from '../NotFound/meta.js'\nimport { generateResetPasswordMetadata } from '../ResetPassword/index.js'\nimport { generateUnauthorizedMetadata } from '../Unauthorized/index.js'\nimport { generateVerifyMetadata } from '../Verify/index.js'\nimport { generateCustomViewMetadata } from './generateCustomViewMetadata.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nconst oneSegmentMeta = {\n 'create-first-user': generateCreateFirstUserMetadata,\n forgot: generateForgotPasswordMetadata,\n login: generateLoginMetadata,\n logout: generateUnauthorizedMetadata,\n 'logout-inactivity': generateUnauthorizedMetadata,\n unauthorized: generateUnauthorizedMetadata,\n}\n\ntype Args = {\n config: Promise<SanitizedConfig>\n params: {\n [key: string]: string | string[]\n }
|
|
1
|
+
{"version":3,"file":"meta.js","names":["getNextRequestI18n","generateAccountMetadata","generateCreateFirstUserMetadata","generateDashboardMetadata","generateDocumentMetadata","generateForgotPasswordMetadata","generateListMetadata","generateLoginMetadata","generateNotFoundMeta","generateResetPasswordMetadata","generateUnauthorizedMetadata","generateVerifyMetadata","generateCustomViewMetadata","getCustomViewByRoute","oneSegmentMeta","forgot","login","logout","unauthorized","generatePageMetadata","config","configPromise","params","paramsPromise","segments","Array","isArray","currentRoute","join","segmentOne","segmentTwo","isGlobal","isCollection","i18n","meta","collectionConfig","length","collections","find","collection","slug","globalConfig","globals","global","admin","routes","reset","viewConfig","viewKey"],"sources":["../../../src/views/Root/meta.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedConfig } from 'payload'\n\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { generateAccountMetadata } from '../Account/index.js'\nimport { generateCreateFirstUserMetadata } from '../CreateFirstUser/index.js'\nimport { generateDashboardMetadata } from '../Dashboard/index.js'\nimport { generateDocumentMetadata } from '../Document/meta.js'\nimport { generateForgotPasswordMetadata } from '../ForgotPassword/index.js'\nimport { generateListMetadata } from '../List/index.js'\nimport { generateLoginMetadata } from '../Login/index.js'\nimport { generateNotFoundMeta } from '../NotFound/meta.js'\nimport { generateResetPasswordMetadata } from '../ResetPassword/index.js'\nimport { generateUnauthorizedMetadata } from '../Unauthorized/index.js'\nimport { generateVerifyMetadata } from '../Verify/index.js'\nimport { generateCustomViewMetadata } from './generateCustomViewMetadata.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nconst oneSegmentMeta = {\n 'create-first-user': generateCreateFirstUserMetadata,\n forgot: generateForgotPasswordMetadata,\n login: generateLoginMetadata,\n logout: generateUnauthorizedMetadata,\n 'logout-inactivity': generateUnauthorizedMetadata,\n unauthorized: generateUnauthorizedMetadata,\n}\n\ntype Args = {\n config: Promise<SanitizedConfig>\n params: Promise<{\n [key: string]: string | string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n params: paramsPromise,\n}: Args) => {\n const config = await configPromise\n\n const params = await paramsPromise\n const segments = Array.isArray(params.segments) ? params.segments : []\n\n const currentRoute = `/${segments.join('/')}`\n const [segmentOne, segmentTwo] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n let meta: Metadata\n\n // TODO: handle custom routes\n\n const collectionConfig =\n isCollection &&\n segments.length > 1 &&\n config?.collections?.find((collection) => collection.slug === segmentTwo)\n\n const globalConfig =\n isGlobal && segments.length > 1 && config?.globals?.find((global) => global.slug === segmentTwo)\n\n switch (segments.length) {\n case 0: {\n meta = await generateDashboardMetadata({ config, i18n })\n break\n }\n case 1: {\n if (oneSegmentMeta[segmentOne] && segmentOne !== 'account') {\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n meta = await oneSegmentMeta[segmentOne]({ config, i18n })\n break\n } else if (segmentOne === 'account') {\n // --> /account\n meta = await generateAccountMetadata({ config, i18n })\n break\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n meta = await generateResetPasswordMetadata({ config, i18n })\n }\n if (isCollection) {\n // --> /collections/:collectionSlug\n meta = await generateListMetadata({ collectionConfig, config, i18n })\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n meta = await generateDocumentMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n default: {\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n meta = await generateVerifyMetadata({ config, i18n })\n } else if (isCollection) {\n // Custom Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/preview\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:version\n // --> /collections/:collectionSlug/:id/api\n meta = await generateDocumentMetadata({ collectionConfig, config, i18n, params })\n } else if (isGlobal) {\n // Custom Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/versions/:version\n // --> /globals/:globalSlug/preview\n // --> /globals/:globalSlug/api\n meta = await generateDocumentMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n }\n\n if (!meta) {\n const { viewConfig, viewKey } = getCustomViewByRoute({\n config,\n currentRoute,\n })\n\n if (viewKey) {\n // Custom Views\n // --> /:path\n meta = await generateCustomViewMetadata({\n config,\n i18n,\n viewConfig,\n })\n } else {\n meta = await generateNotFoundMeta({ config, i18n })\n }\n }\n\n return meta\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiH5B,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
4
4
|
import { getTranslation } from '@payloadcms/translations';
|
|
5
|
-
import { Button,
|
|
5
|
+
import { Button, Modal, PopupList, useConfig, useModal, useTranslation } from '@payloadcms/ui';
|
|
6
6
|
import { formatAdminURL, requests } from '@payloadcms/ui/shared';
|
|
7
7
|
import { useRouter } from 'next/navigation.js';
|
|
8
8
|
import React, { Fragment, useCallback, useState } from 'react';
|
|
@@ -77,27 +77,21 @@ const Restore = ({
|
|
|
77
77
|
}
|
|
78
78
|
}, [fetchURL, redirectURL, t, i18n, router]);
|
|
79
79
|
return /*#__PURE__*/_jsxs(Fragment, {
|
|
80
|
-
children: [/*#__PURE__*/
|
|
80
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
81
81
|
className: [baseClass, className].filter(Boolean).join(' '),
|
|
82
|
-
children:
|
|
82
|
+
children: /*#__PURE__*/_jsx(Button, {
|
|
83
|
+
buttonStyle: "pill",
|
|
83
84
|
className: [canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' '),
|
|
84
85
|
onClick: () => toggleModal(modalSlug),
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
button: /*#__PURE__*/_jsx(Pill, {
|
|
88
|
-
className: `${baseClass}__chevron`,
|
|
89
|
-
children: /*#__PURE__*/_jsx(ChevronIcon, {})
|
|
90
|
-
}),
|
|
91
|
-
caret: false,
|
|
92
|
-
render: () => /*#__PURE__*/_jsx(PopupList.ButtonGroup, {
|
|
86
|
+
size: "small",
|
|
87
|
+
SubMenuPopupContent: canRestoreAsDraft && /*#__PURE__*/_jsx(PopupList.ButtonGroup, {
|
|
93
88
|
children: /*#__PURE__*/_jsx(PopupList.Button, {
|
|
94
89
|
onClick: () => [setDraft(true), toggleModal(modalSlug)],
|
|
95
90
|
children: t('version:restoreAsDraft')
|
|
96
91
|
})
|
|
97
92
|
}),
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
})]
|
|
93
|
+
children: t('version:restoreThisVersion')
|
|
94
|
+
})
|
|
101
95
|
}), /*#__PURE__*/_jsx(Modal, {
|
|
102
96
|
className: `${baseClass}__modal`,
|
|
103
97
|
slug: modalSlug,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","Button","
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","Button","Modal","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","collections","routes","admin","adminRoute","api","apiRoute","serverURL","collectionConfig","find","collection","slug","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","versions","drafts","path","handleRestore","res","post","headers","language","json","success","message","push","error","_jsxs","_jsx","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","undefined","type"],"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ChevronIcon,\n Modal,\n Pill,\n Popup,\n PopupList,\n useConfig,\n useModal,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL, requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport './index.scss'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\nconst Restore: React.FC<Props> = ({\n className,\n collectionSlug,\n globalSlug,\n label,\n originalDocID,\n status,\n versionDate,\n versionID,\n}) => {\n const {\n config: {\n collections,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((collection) => collection.slug === collectionSlug)\n\n const { toggleModal } = useModal()\n const [processing, setProcessing] = useState(false)\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate,\n })\n\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n if (collectionSlug) {\n fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${originalDocID}`,\n })\n }\n\n if (globalSlug) {\n fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n })\n }\n\n const handleRestore = useCallback(async () => {\n setProcessing(true)\n\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n router.push(redirectURL)\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [fetchURL, redirectURL, t, i18n, router])\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Button\n buttonStyle=\"pill\"\n className={[canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"small\"\n SubMenuPopupContent={\n canRestoreAsDraft && (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n }\n >\n {t('version:restoreThisVersion')}\n </Button>\n </div>\n <Modal className={`${baseClass}__modal`} slug={modalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('version:confirmVersionRestoration')}</h1>\n <p>{restoreMessage}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(modalSlug)}\n size=\"large\"\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button onClick={processing ? undefined : () => void handleRestore()}>\n {processing ? t('version:restoring') : t('general:confirm')}\n </Button>\n </div>\n </div>\n </Modal>\n </Fragment>\n )\n}\n\nexport default Restore\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iBAAiB,EAGjB,2BAA2B,EAC5B,MAAM,SAAS,CAAA;AAShB,eAAO,MAAM,WAAW,EAAE,2BAA2B,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iBAAiB,EAGjB,2BAA2B,EAC5B,MAAM,SAAS,CAAA;AAShB,eAAO,MAAM,WAAW,EAAE,2BAA2B,CAAC,iBAAiB,CA6ItE,CAAA"}
|
|
@@ -52,12 +52,14 @@ export const VersionView = async props => {
|
|
|
52
52
|
latestDraftVersion = await getLatestVersion({
|
|
53
53
|
slug,
|
|
54
54
|
type: 'collection',
|
|
55
|
+
parentID: id,
|
|
55
56
|
payload,
|
|
56
57
|
status: 'draft'
|
|
57
58
|
});
|
|
58
59
|
latestPublishedVersion = await getLatestVersion({
|
|
59
60
|
slug,
|
|
60
61
|
type: 'collection',
|
|
62
|
+
parentID: id,
|
|
61
63
|
payload,
|
|
62
64
|
status: 'published'
|
|
63
65
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["notFound","deepCopyObjectSimple","React","getLatestVersion","DefaultVersionView","VersionView","props","initPageResult","routeSegments","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","type","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","localeOptions","locales","map","code","label","value","latestVersion","_jsx","initialComparisonDoc"],"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n CollectionPermission,\n Document,\n EditViewComponent,\n GlobalPermission,\n OptionObject,\n PayloadServerReactComponent,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { deepCopyObjectSimple } from 'payload'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\n\nexport const VersionView: PayloadServerReactComponent<EditViewComponent> = async (props) => {\n const { initPageResult, routeSegments } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const { localization } = config\n\n let docPermissions: CollectionPermission | GlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const localeOptions: OptionObject[] =\n localization &&\n localization.locales.map(({ code, label }) => ({\n label,\n value: code,\n }))\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n return (\n <DefaultVersionView\n doc={doc}\n /**\n * After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801\" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).\n * If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a\n * \"TypeError: Cannot read properties of undefined (reading '$$typeof')\" error\n *\n * // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)\n */\n docPermissions={deepCopyObjectSimple(docPermissions)}\n initialComparisonDoc={latestVersion}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n localeOptions={localeOptions}\n versionID={versionID}\n />\n )\n}\n"],"mappings":";AASA,SAASA,QAAQ,QAAQ;AACzB,SAASC,oBAAoB,QAAQ;AACrC,OAAOC,KAAA,MAAW;AAElB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,kBAAkB,QAAQ;AAEnC,OAAO,MAAMC,WAAA,GAA8D,MAAOC,KAAA;EAChF,MAAM;IAAEC,cAAc;IAAEC;EAAa,CAAE,GAAGF,KAAA;EAE1C,MAAM;IACJG,gBAAgB;IAChBC,KAAA,EAAOC,EAAE;IACTC,YAAY;IACZC,WAAW;IACXC,GAAG;IACHA,GAAA,EAAK;MAAEC,OAAO;MAAEA,OAAA,EAAS;QAAEC;MAAM,CAAE,GAAG,CAAC,CAAC;MAAEC;IAAI,CAAE,GAAG,CAAC;EAAC,CACtD,GAAGV,cAAA;EAEJ,MAAMW,SAAA,GAAYV,aAAa,CAACA,aAAA,CAAcW,MAAM,GAAG,EAAE;EAEzD,MAAMC,cAAA,GAAiBX,gBAAA,EAAkBY,IAAA;EACzC,MAAMC,UAAA,GAAaV,YAAA,EAAcS,IAAA;EAEjC,MAAM;IAAEE;EAAY,CAAE,GAAGP,MAAA;EAEzB,IAAIQ,cAAA;EACJ,IAAIH,IAAA;EAEJ,IAAII,GAAA;EACJ,IAAIC,sBAAA,GAAyB;EAC7B,IAAIC,kBAAA,GAAqB;EAEzB,IAAIP,cAAA,EAAgB;IAClB;IACAC,IAAA,GAAOD,cAAA;IACPI,cAAA,GAAiBX,WAAA,CAAYe,WAAW,CAACR,cAAA,CAAe;IAExD,IAAI;MACFK,GAAA,GAAM,MAAMV,OAAA,CAAQc,eAAe,CAAC;QAClClB,EAAA,EAAIO,SAAA;QACJY,UAAA,EAAYT,IAAA;QACZU,KAAA,EAAO;QACPC,MAAA,EAAQ;QACRC,cAAA,EAAgB;QAChBnB,GAAA;QACAG;MACF;MAEA,IAAIR,gBAAA,EAAkByB,QAAA,EAAUC,MAAA,EAAQ;QACtCR,kBAAA,GAAqB,MAAMxB,gBAAA,CAAiB;UAC1CkB,IAAA;UACAe,IAAA,EAAM;
|
|
1
|
+
{"version":3,"file":"index.js","names":["notFound","deepCopyObjectSimple","React","getLatestVersion","DefaultVersionView","VersionView","props","initPageResult","routeSegments","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","type","parentID","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","localeOptions","locales","map","code","label","value","latestVersion","_jsx","initialComparisonDoc"],"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n CollectionPermission,\n Document,\n EditViewComponent,\n GlobalPermission,\n OptionObject,\n PayloadServerReactComponent,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { deepCopyObjectSimple } from 'payload'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\n\nexport const VersionView: PayloadServerReactComponent<EditViewComponent> = async (props) => {\n const { initPageResult, routeSegments } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const { localization } = config\n\n let docPermissions: CollectionPermission | GlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'collection',\n parentID: id,\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n parentID: id,\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const localeOptions: OptionObject[] =\n localization &&\n localization.locales.map(({ code, label }) => ({\n label,\n value: code,\n }))\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n return (\n <DefaultVersionView\n doc={doc}\n /**\n * After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801\" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).\n * If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a\n * \"TypeError: Cannot read properties of undefined (reading '$$typeof')\" error\n *\n * // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)\n */\n docPermissions={deepCopyObjectSimple(docPermissions)}\n initialComparisonDoc={latestVersion}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n localeOptions={localeOptions}\n versionID={versionID}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,SAAS,CAAA;AAE7C,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAA;AAER,KAAK,IAAI,GAAG;IACV,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,WAAW,CAAA;IAC7B,IAAI,EAAE,YAAY,GAAG,QAAQ,CAAA;CAC9B,CAAA;AACD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAoDtE"}
|
|
@@ -2,18 +2,29 @@ export async function getLatestVersion(args) {
|
|
|
2
2
|
const {
|
|
3
3
|
slug,
|
|
4
4
|
type = 'collection',
|
|
5
|
+
parentID,
|
|
5
6
|
payload,
|
|
6
7
|
status
|
|
7
8
|
} = args;
|
|
9
|
+
const and = [{
|
|
10
|
+
'version._status': {
|
|
11
|
+
equals: status
|
|
12
|
+
}
|
|
13
|
+
}];
|
|
14
|
+
if (type === 'collection' && parentID) {
|
|
15
|
+
and.push({
|
|
16
|
+
parent: {
|
|
17
|
+
equals: parentID
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
8
21
|
try {
|
|
9
22
|
const sharedOptions = {
|
|
10
23
|
depth: 0,
|
|
11
24
|
limit: 1,
|
|
12
25
|
sort: '-updatedAt',
|
|
13
26
|
where: {
|
|
14
|
-
|
|
15
|
-
equals: status
|
|
16
|
-
}
|
|
27
|
+
and
|
|
17
28
|
}
|
|
18
29
|
};
|
|
19
30
|
const response = type === 'collection' ? await payload.findVersions({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLatestVersion.js","names":["getLatestVersion","args","slug","type","payload","status","sharedOptions","depth","limit","sort","where","
|
|
1
|
+
{"version":3,"file":"getLatestVersion.js","names":["getLatestVersion","args","slug","type","parentID","payload","status","and","equals","push","parent","sharedOptions","depth","limit","sort","where","response","findVersions","collection","findGlobalVersions","docs","length","id","updatedAt","e","console","error"],"sources":["../../../src/views/Versions/getLatestVersion.ts"],"sourcesContent":["import type { Payload, Where } from 'payload'\n\ntype ReturnType = {\n id: string\n updatedAt: string\n} | null\n\ntype Args = {\n parentID?: number | string\n payload: Payload\n slug: string\n status: 'draft' | 'published'\n type: 'collection' | 'global'\n}\nexport async function getLatestVersion(args: Args): Promise<ReturnType> {\n const { slug, type = 'collection', parentID, payload, status } = args\n\n const and: Where[] = [\n {\n 'version._status': {\n equals: status,\n },\n },\n ]\n\n if (type === 'collection' && parentID) {\n and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n try {\n const sharedOptions = {\n depth: 0,\n limit: 1,\n sort: '-updatedAt',\n where: {\n and,\n },\n }\n\n const response =\n type === 'collection'\n ? await payload.findVersions({\n collection: slug,\n ...sharedOptions,\n })\n : await payload.findGlobalVersions({\n slug,\n ...sharedOptions,\n })\n\n if (!response.docs.length) {\n return null\n }\n\n return {\n id: response.docs[0].id,\n updatedAt: response.docs[0].updatedAt,\n }\n } catch (e) {\n console.error(e)\n return null\n }\n}\n"],"mappings":"AAcA,OAAO,eAAeA,iBAAiBC,IAAU;EAC/C,MAAM;IAAEC,IAAI;IAAEC,IAAA,GAAO,YAAY;IAAEC,QAAQ;IAAEC,OAAO;IAAEC;EAAM,CAAE,GAAGL,IAAA;EAEjE,MAAMM,GAAA,GAAe,CACnB;IACE,mBAAmB;MACjBC,MAAA,EAAQF;IACV;EACF,EACD;EAED,IAAIH,IAAA,KAAS,gBAAgBC,QAAA,EAAU;IACrCG,GAAA,CAAIE,IAAI,CAAC;MACPC,MAAA,EAAQ;QACNF,MAAA,EAAQJ;MACV;IACF;EACF;EAEA,IAAI;IACF,MAAMO,aAAA,GAAgB;MACpBC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPC,IAAA,EAAM;MACNC,KAAA,EAAO;QACLR;MACF;IACF;IAEA,MAAMS,QAAA,GACJb,IAAA,KAAS,eACL,MAAME,OAAA,CAAQY,YAAY,CAAC;MACzBC,UAAA,EAAYhB,IAAA;MACZ,GAAGS;IACL,KACA,MAAMN,OAAA,CAAQc,kBAAkB,CAAC;MAC/BjB,IAAA;MACA,GAAGS;IACL;IAEN,IAAI,CAACK,QAAA,CAASI,IAAI,CAACC,MAAM,EAAE;MACzB,OAAO;IACT;IAEA,OAAO;MACLC,EAAA,EAAIN,QAAA,CAASI,IAAI,CAAC,EAAE,CAACE,EAAE;MACvBC,SAAA,EAAWP,QAAA,CAASI,IAAI,CAAC,EAAE,CAACG;IAC9B;EACF,EAAE,OAAOC,CAAA,EAAG;IACVC,OAAA,CAAQC,KAAK,CAACF,CAAA;IACd,OAAO;EACT;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAW5F,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,aAAa,CAAA;AAEnC,eAAO,MAAM,YAAY,EAAE,2BAA2B,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAW5F,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,aAAa,CAAA;AAEnC,eAAO,MAAM,YAAY,EAAE,2BAA2B,CAAC,iBAAiB,CAiMvE,CAAA"}
|
|
@@ -78,12 +78,14 @@ export const VersionsView = async props => {
|
|
|
78
78
|
latestDraftVersion = await getLatestVersion({
|
|
79
79
|
slug: collectionSlug,
|
|
80
80
|
type: 'collection',
|
|
81
|
+
parentID: id,
|
|
81
82
|
payload,
|
|
82
83
|
status: 'draft'
|
|
83
84
|
});
|
|
84
85
|
latestPublishedVersion = await getLatestVersion({
|
|
85
86
|
slug: collectionSlug,
|
|
86
87
|
type: 'collection',
|
|
88
|
+
parentID: id,
|
|
87
89
|
payload,
|
|
88
90
|
status: 'published'
|
|
89
91
|
});
|