@payloadcms/next 3.0.0-beta.47 → 3.0.0-beta.48
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/utilities/initPage/shared.d.ts.map +1 -1
- package/dist/utilities/initPage/shared.js +2 -1
- package/dist/utilities/initPage/shared.js.map +1 -1
- package/dist/views/API/LocaleSelector/index.js.map +1 -1
- package/dist/views/Account/Settings/LanguageSelector.d.ts.map +1 -1
- package/dist/views/Account/Settings/LanguageSelector.js +3 -2
- package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +4 -4
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/Root/getViewFromConfig.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +2 -2
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAapD,eAAO,MAAM,YAAY,UAAW,MAAM,cAAc,MAAM,YAE7D,CAAA;AAED,eAAO,MAAM,gBAAgB,WAAY,eAAe,SAAS,MAAM,cAAc,MAAM,YAQ1F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload/types'\n\nconst authRouteKeys: (keyof SanitizedConfig['admin']['routes'])[] = [\n 'createFirstUser',\n 'forgot',\n 'login',\n 'logout',\n 'forgot',\n 'inactivity',\n 'unauthorized',\n]\n\nexport const isAdminRoute = (route: string, adminRoute: string) => {\n return route.startsWith(adminRoute)\n}\n\nexport const isAdminAuthRoute = (config: SanitizedConfig, route: string, adminRoute: string) => {\n const authRoutes = config.admin?.routes\n ? Object.entries(config.admin.routes)\n .filter(([key]) => authRouteKeys.includes(key as keyof SanitizedConfig['admin']['routes']))\n .map(([_, value]) => value)\n : []\n\n return authRoutes.some((r) => route.replace(adminRoute, '').startsWith(r))\n}\n"],"names":["authRouteKeys","isAdminRoute","route","adminRoute","startsWith","isAdminAuthRoute","config","authRoutes","admin","routes","Object","entries","filter","key","includes","map","_","value","some","r","replace"],"rangeMappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload/types'\n\nconst authRouteKeys: (keyof SanitizedConfig['admin']['routes'])[] = [\n 'createFirstUser',\n 'forgot',\n 'login',\n 'logout',\n 'forgot',\n 'inactivity',\n 'unauthorized',\n 'reset',\n]\n\nexport const isAdminRoute = (route: string, adminRoute: string) => {\n return route.startsWith(adminRoute)\n}\n\nexport const isAdminAuthRoute = (config: SanitizedConfig, route: string, adminRoute: string) => {\n const authRoutes = config.admin?.routes\n ? Object.entries(config.admin.routes)\n .filter(([key]) => authRouteKeys.includes(key as keyof SanitizedConfig['admin']['routes']))\n .map(([_, value]) => value)\n : []\n\n return authRoutes.some((r) => route.replace(adminRoute, '').startsWith(r))\n}\n"],"names":["authRouteKeys","isAdminRoute","route","adminRoute","startsWith","isAdminAuthRoute","config","authRoutes","admin","routes","Object","entries","filter","key","includes","map","_","value","some","r","replace"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":"AAEA,MAAMA,gBAA8D;IAClE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,OAAO,MAAMC,eAAe,CAACC,OAAeC;IAC1C,OAAOD,MAAME,UAAU,CAACD;AAC1B,EAAC;AAED,OAAO,MAAME,mBAAmB,CAACC,QAAyBJ,OAAeC;IACvE,MAAMI,aAAaD,OAAOE,KAAK,EAAEC,SAC7BC,OAAOC,OAAO,CAACL,OAAOE,KAAK,CAACC,MAAM,EAC/BG,MAAM,CAAC,CAAC,CAACC,IAAI,GAAKb,cAAcc,QAAQ,CAACD,MACzCE,GAAG,CAAC,CAAC,CAACC,GAAGC,MAAM,GAAKA,SACvB,EAAE;IAEN,OAAOV,WAAWW,IAAI,CAAC,CAACC,IAAMjB,MAAMkB,OAAO,CAACjB,YAAY,IAAIC,UAAU,CAACe;AACzE,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/API/LocaleSelector/index.tsx"],"sourcesContent":["import { Select } from '@payloadcms/ui/fields/Select'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport React from 'react'\n\nexport const LocaleSelector: React.FC<{\n localeOptions: {\n label: Record<string, string> | string\n value: string\n }[]\n onChange: (value: string) => void\n}> = ({ localeOptions, onChange }) => {\n const { t } = useTranslation()\n\n return (\n <Select\n label={t('general:locale')}\n name=\"locale\"\n onChange={(value) => onChange(value)}\n options={localeOptions}\n path=\"locale\"\n />\n )\n}\n"],"names":["Select","useTranslation","React","LocaleSelector","localeOptions","onChange","t","label","name","value","options","path"],"rangeMappings":";;;;;;;;;;;;;","mappings":";AAAA,SAASA,MAAM,QAAQ,+BAA8B;AACrD,SAASC,cAAc,QAAQ,uCAAsC;AACrE,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,iBAMR,CAAC,EAAEC,aAAa,EAAEC,QAAQ,EAAE;IAC/B,MAAM,EAAEC,CAAC,EAAE,GAAGL;IAEd,qBACE,KAACD;QACCO,OAAOD,EAAE;QACTE,MAAK;QACLH,UAAU,CAACI,
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/API/LocaleSelector/index.tsx"],"sourcesContent":["import { Select } from '@payloadcms/ui/fields/Select'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport React from 'react'\n\nexport const LocaleSelector: React.FC<{\n localeOptions: {\n label: Record<string, string> | string\n value: string\n }[]\n onChange: (value: string) => void\n}> = ({ localeOptions, onChange }) => {\n const { t } = useTranslation()\n\n return (\n <Select\n label={t('general:locale')}\n name=\"locale\"\n onChange={(value: string) => onChange(value)}\n options={localeOptions}\n path=\"locale\"\n />\n )\n}\n"],"names":["Select","useTranslation","React","LocaleSelector","localeOptions","onChange","t","label","name","value","options","path"],"rangeMappings":";;;;;;;;;;;;;","mappings":";AAAA,SAASA,MAAM,QAAQ,+BAA8B;AACrD,SAASC,cAAc,QAAQ,uCAAsC;AACrE,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,iBAMR,CAAC,EAAEC,aAAa,EAAEC,QAAQ,EAAE;IAC/B,MAAM,EAAEC,CAAC,EAAE,GAAGL;IAEd,qBACE,KAACD;QACCO,OAAOD,EAAE;QACTE,MAAK;QACLH,UAAU,CAACI,QAAkBJ,SAASI;QACtCC,SAASN;QACTO,MAAK;;AAGX,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LanguageSelector.d.ts","sourceRoot":"","sources":["../../../../src/views/Account/Settings/LanguageSelector.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LanguageSelector.d.ts","sourceRoot":"","sources":["../../../../src/views/Account/Settings/LanguageSelector.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAIpD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,eAAe,EAAE,eAAe,CAAA;CACjC,CAgBA,CAAA"}
|
|
@@ -8,8 +8,9 @@ export const LanguageSelector = (props)=>{
|
|
|
8
8
|
const { i18n, switchLanguage } = useTranslation();
|
|
9
9
|
return /*#__PURE__*/ _jsx(ReactSelect, {
|
|
10
10
|
inputId: "language-select",
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
isClearable: false,
|
|
12
|
+
onChange: async (option)=>{
|
|
13
|
+
await switchLanguage(option.value);
|
|
13
14
|
},
|
|
14
15
|
options: languageOptions,
|
|
15
16
|
value: languageOptions.find((language)=>language.value === i18n.language)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/Account/Settings/LanguageSelector.tsx"],"sourcesContent":["'use client'\nimport type { LanguageOptions } from 'payload/types'\n\nimport { ReactSelect } from '@payloadcms/ui/elements/ReactSelect'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport React from 'react'\n\nexport const LanguageSelector: React.FC<{\n languageOptions: LanguageOptions\n}> = (props) => {\n const { languageOptions } = props\n\n const { i18n, switchLanguage } = useTranslation()\n\n return (\n <ReactSelect\n inputId=\"language-select\"\n onChange={async (
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/Account/Settings/LanguageSelector.tsx"],"sourcesContent":["'use client'\nimport type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { Option } from '@payloadcms/ui/elements/ReactSelect'\nimport type { LanguageOptions } from 'payload/types'\n\nimport { ReactSelect } from '@payloadcms/ui/elements/ReactSelect'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport React from 'react'\n\nexport const LanguageSelector: React.FC<{\n languageOptions: LanguageOptions\n}> = (props) => {\n const { languageOptions } = props\n\n const { i18n, switchLanguage } = useTranslation()\n\n return (\n <ReactSelect\n inputId=\"language-select\"\n isClearable={false}\n onChange={async (option: Option<AcceptedLanguages>) => {\n await switchLanguage(option.value)\n }}\n options={languageOptions}\n value={languageOptions.find((language) => language.value === i18n.language)}\n />\n )\n}\n"],"names":["ReactSelect","useTranslation","React","LanguageSelector","props","languageOptions","i18n","switchLanguage","inputId","isClearable","onChange","option","value","options","find","language"],"rangeMappings":";;;;;;;;;;;;;;;;;","mappings":"AAAA;;AAKA,SAASA,WAAW,QAAQ,sCAAqC;AACjE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,mBAER,CAACC;IACJ,MAAM,EAAEC,eAAe,EAAE,GAAGD;IAE5B,MAAM,EAAEE,IAAI,EAAEC,cAAc,EAAE,GAAGN;IAEjC,qBACE,KAACD;QACCQ,SAAQ;QACRC,aAAa;QACbC,UAAU,OAAOC;YACf,MAAMJ,eAAeI,OAAOC,KAAK;QACnC;QACAC,SAASR;QACTO,OAAOP,gBAAgBS,IAAI,CAAC,CAACC,WAAaA,SAASH,KAAK,KAAKN,KAAKS,QAAQ;;AAGhF,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Document/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Document/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAsB,cAAc,EAA2B,MAAM,eAAe,CAAA;AAWhG,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAQrE,eAAO,MAAM,gBAAgB,EAAE,wBAAiE,CAAA;AAEhG,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAmO7C,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Document/index.tsx"],"sourcesContent":["import type { EditViewComponent } from 'payload/config'\nimport type { AdminViewComponent, ServerSideEditViewProps } from 'payload/types'\nimport type { AdminViewProps } from 'payload/types'\n\nimport { DocumentHeader } from '@payloadcms/ui/elements/DocumentHeader'\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport { DocumentInfoProvider } from '@payloadcms/ui/providers/DocumentInfo'\nimport { EditDepthProvider } from '@payloadcms/ui/providers/EditDepth'\nimport { FormQueryParamsProvider } from '@payloadcms/ui/providers/FormQueryParams'\nimport { isEditing as getIsEditing } from '@payloadcms/ui/utilities/isEditing'\nimport { notFound, redirect } from 'next/navigation.js'\nimport QueryString from 'qs'\nimport React from 'react'\n\nimport type { GenerateEditViewMetadata } from './getMetaBySegment.js'\n\nimport { NotFoundView } from '../NotFound/index.js'\nimport { getDocumentData } from './getDocumentData.js'\nimport { getDocumentPermissions } from './getDocumentPermissions.js'\nimport { getMetaBySegment } from './getMetaBySegment.js'\nimport { getViewsFromConfig } from './getViewsFromConfig.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async (args) => getMetaBySegment(args)\n\nexport const Document: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n locale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: {\n config,\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n },\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const segments = Array.isArray(params?.segments) ? params.segments : []\n const collectionSlug = collectionConfig?.slug || undefined\n const globalSlug = globalConfig?.slug || undefined\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n\n let ViewOverride: EditViewComponent\n let CustomView: EditViewComponent\n let DefaultView: EditViewComponent\n let ErrorView: AdminViewComponent\n\n let apiURL: string\n let action: string\n\n const { data, formState } = await getDocumentData({\n id,\n collectionConfig,\n globalConfig,\n locale,\n req,\n })\n\n const { docPermissions, hasPublishPermission, hasSavePermission } = await getDocumentPermissions({\n id,\n collectionConfig,\n data,\n globalConfig,\n req,\n })\n\n if (collectionConfig) {\n if (!visibleEntities?.collections?.find((visibleSlug) => visibleSlug === collectionSlug)) {\n notFound()\n }\n\n action = `${serverURL}${apiRoute}/${collectionSlug}${isEditing ? `/${id}` : ''}`\n const apiQueryParams = QueryString.stringify(\n {\n draft: collectionConfig.versions?.drafts ? 'true' : undefined,\n locale: locale?.code,\n },\n { addQueryPrefix: true },\n )\n apiURL = `${serverURL}${apiRoute}/${collectionSlug}/${id}${apiQueryParams}`\n\n const editConfig = collectionConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const collectionViews = getViewsFromConfig({\n collectionConfig,\n config,\n docPermissions,\n routeSegments: segments,\n })\n\n CustomView = collectionViews?.CustomView\n DefaultView = collectionViews?.DefaultView\n ErrorView = collectionViews?.ErrorView\n }\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n\n if (globalConfig) {\n if (!visibleEntities?.globals?.find((visibleSlug) => visibleSlug === globalSlug)) {\n notFound()\n }\n\n action = `${serverURL}${apiRoute}/globals/${globalSlug}`\n\n const apiQueryParams = QueryString.stringify(\n {\n draft: globalConfig.versions?.drafts ? 'true' : undefined,\n locale: locale?.code,\n },\n { addQueryPrefix: true },\n )\n apiURL = `${serverURL}${apiRoute}/${globalSlug}${apiQueryParams}`\n\n const editConfig = globalConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const globalViews = getViewsFromConfig({\n config,\n docPermissions,\n globalConfig,\n routeSegments: segments,\n })\n\n CustomView = globalViews?.CustomView\n DefaultView = globalViews?.DefaultView\n ErrorView = globalViews?.ErrorView\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n }\n\n /**\n * Handle case where autoSave is enabled and the document is being created\n * => create document and redirect\n */\n const shouldAutosave =\n hasSavePermission &&\n ((collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave))\n const validateDraftData =\n collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.validate\n\n if (shouldAutosave && !validateDraftData && !id && collectionSlug) {\n const doc = await payload.create({\n collection: collectionSlug,\n data: {},\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale: locale?.code,\n req,\n user,\n })\n\n if (doc?.id) {\n const redirectURL = `${serverURL}${adminRoute}/collections/${collectionSlug}/${doc.id}`\n redirect(redirectURL)\n } else {\n notFound()\n }\n }\n\n const viewComponentProps: ServerSideEditViewProps = {\n initPageResult,\n params,\n routeSegments: segments,\n searchParams,\n }\n\n return (\n <DocumentInfoProvider\n action={action}\n apiURL={apiURL}\n collectionSlug={collectionConfig?.slug}\n disableActions={false}\n docPermissions={docPermissions}\n globalSlug={globalConfig?.slug}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n initialData={data}\n initialState={formState}\n isEditing={isEditing}\n >\n {!ViewOverride && (\n <DocumentHeader\n collectionConfig={collectionConfig}\n config={payload.config}\n globalConfig={globalConfig}\n i18n={i18n}\n permissions={permissions}\n />\n )}\n <HydrateClientUser permissions={permissions} user={user} />\n <EditDepthProvider\n depth={1}\n key={`${collectionSlug || globalSlug}${locale?.code ? `-${locale?.code}` : ''}`}\n >\n <FormQueryParamsProvider\n initialParams={{\n depth: 0,\n 'fallback-locale': 'null',\n locale: locale?.code,\n uploadEdits: undefined,\n }}\n >\n {ErrorView ? (\n <ErrorView initPageResult={initPageResult} searchParams={searchParams} />\n ) : (\n <RenderCustomComponent\n CustomComponent={ViewOverride || CustomView}\n DefaultComponent={DefaultView}\n componentProps={viewComponentProps}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n )}\n </FormQueryParamsProvider>\n </EditDepthProvider>\n </DocumentInfoProvider>\n )\n}\n"],"names":["DocumentHeader","HydrateClientUser","RenderCustomComponent","DocumentInfoProvider","EditDepthProvider","FormQueryParamsProvider","isEditing","getIsEditing","notFound","redirect","QueryString","React","NotFoundView","getDocumentData","getDocumentPermissions","getMetaBySegment","getViewsFromConfig","generateMetadata","args","Document","initPageResult","params","searchParams","collectionConfig","docID","id","globalConfig","locale","permissions","req","i18n","payload","config","routes","admin","adminRoute","api","apiRoute","serverURL","user","visibleEntities","segments","Array","isArray","collectionSlug","slug","undefined","globalSlug","ViewOverride","CustomView","DefaultView","ErrorView","apiURL","action","data","formState","docPermissions","hasPublishPermission","hasSavePermission","collections","find","visibleSlug","apiQueryParams","stringify","draft","versions","drafts","code","addQueryPrefix","editConfig","components","views","Edit","collectionViews","routeSegments","globals","globalViews","shouldAutosave","autosave","validateDraftData","validate","doc","create","collection","depth","fallbackLocale","redirectURL","viewComponentProps","disableActions","initialData","initialState","initialParams","uploadEdits","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Document/index.tsx"],"sourcesContent":["import type { EditViewComponent } from 'payload/config'\nimport type { AdminViewComponent, AdminViewProps, ServerSideEditViewProps } from 'payload/types'\n\nimport { DocumentHeader } from '@payloadcms/ui/elements/DocumentHeader'\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport { DocumentInfoProvider } from '@payloadcms/ui/providers/DocumentInfo'\nimport { EditDepthProvider } from '@payloadcms/ui/providers/EditDepth'\nimport { FormQueryParamsProvider } from '@payloadcms/ui/providers/FormQueryParams'\nimport { isEditing as getIsEditing } from '@payloadcms/ui/utilities/isEditing'\nimport { notFound, redirect } from 'next/navigation.js'\nimport QueryString from 'qs'\nimport React from 'react'\n\nimport type { GenerateEditViewMetadata } from './getMetaBySegment.js'\n\nimport { NotFoundView } from '../NotFound/index.js'\nimport { getDocumentData } from './getDocumentData.js'\nimport { getDocumentPermissions } from './getDocumentPermissions.js'\nimport { getMetaBySegment } from './getMetaBySegment.js'\nimport { getViewsFromConfig } from './getViewsFromConfig.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async (args) => getMetaBySegment(args)\n\nexport const Document: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n locale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: {\n config,\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n },\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const segments = Array.isArray(params?.segments) ? params.segments : []\n const collectionSlug = collectionConfig?.slug || undefined\n const globalSlug = globalConfig?.slug || undefined\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n\n let ViewOverride: EditViewComponent\n let CustomView: EditViewComponent\n let DefaultView: EditViewComponent\n let ErrorView: AdminViewComponent\n\n let apiURL: string\n let action: string\n\n const { data, formState } = await getDocumentData({\n id,\n collectionConfig,\n globalConfig,\n locale,\n req,\n })\n\n const { docPermissions, hasPublishPermission, hasSavePermission } = await getDocumentPermissions({\n id,\n collectionConfig,\n data,\n globalConfig,\n req,\n })\n\n if (collectionConfig) {\n if (!visibleEntities?.collections?.find((visibleSlug) => visibleSlug === collectionSlug)) {\n notFound()\n }\n\n action = `${serverURL}${apiRoute}/${collectionSlug}${isEditing ? `/${id}` : ''}`\n const apiQueryParams = QueryString.stringify(\n {\n draft: collectionConfig.versions?.drafts ? 'true' : undefined,\n locale: locale?.code,\n },\n { addQueryPrefix: true },\n )\n apiURL = `${serverURL}${apiRoute}/${collectionSlug}/${id}${apiQueryParams}`\n\n const editConfig = collectionConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const collectionViews = getViewsFromConfig({\n collectionConfig,\n config,\n docPermissions,\n routeSegments: segments,\n })\n\n CustomView = collectionViews?.CustomView\n DefaultView = collectionViews?.DefaultView\n ErrorView = collectionViews?.ErrorView\n }\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n\n if (globalConfig) {\n if (!visibleEntities?.globals?.find((visibleSlug) => visibleSlug === globalSlug)) {\n notFound()\n }\n\n action = `${serverURL}${apiRoute}/globals/${globalSlug}`\n\n const apiQueryParams = QueryString.stringify(\n {\n draft: globalConfig.versions?.drafts ? 'true' : undefined,\n locale: locale?.code,\n },\n { addQueryPrefix: true },\n )\n apiURL = `${serverURL}${apiRoute}/${globalSlug}${apiQueryParams}`\n\n const editConfig = globalConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const globalViews = getViewsFromConfig({\n config,\n docPermissions,\n globalConfig,\n routeSegments: segments,\n })\n\n CustomView = globalViews?.CustomView\n DefaultView = globalViews?.DefaultView\n ErrorView = globalViews?.ErrorView\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n }\n\n /**\n * Handle case where autoSave is enabled and the document is being created\n * => create document and redirect\n */\n const shouldAutosave =\n hasSavePermission &&\n ((collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave))\n const validateDraftData =\n collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.validate\n\n if (shouldAutosave && !validateDraftData && !id && collectionSlug) {\n const doc = await payload.create({\n collection: collectionSlug,\n data: {},\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale: locale?.code,\n req,\n user,\n })\n\n if (doc?.id) {\n const redirectURL = `${serverURL}${adminRoute}/collections/${collectionSlug}/${doc.id}`\n redirect(redirectURL)\n } else {\n notFound()\n }\n }\n\n const viewComponentProps: ServerSideEditViewProps = {\n initPageResult,\n params,\n routeSegments: segments,\n searchParams,\n }\n\n return (\n <DocumentInfoProvider\n action={action}\n apiURL={apiURL}\n collectionSlug={collectionConfig?.slug}\n disableActions={false}\n docPermissions={docPermissions}\n globalSlug={globalConfig?.slug}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n initialData={data}\n initialState={formState}\n isEditing={isEditing}\n >\n {!ViewOverride && (\n <DocumentHeader\n collectionConfig={collectionConfig}\n config={payload.config}\n globalConfig={globalConfig}\n i18n={i18n}\n permissions={permissions}\n />\n )}\n <HydrateClientUser permissions={permissions} user={user} />\n <EditDepthProvider\n depth={1}\n key={`${collectionSlug || globalSlug}${locale?.code ? `-${locale?.code}` : ''}`}\n >\n <FormQueryParamsProvider\n initialParams={{\n depth: 0,\n 'fallback-locale': 'null',\n locale: locale?.code,\n uploadEdits: undefined,\n }}\n >\n {ErrorView ? (\n <ErrorView initPageResult={initPageResult} searchParams={searchParams} />\n ) : (\n <RenderCustomComponent\n CustomComponent={ViewOverride || CustomView}\n DefaultComponent={DefaultView}\n componentProps={viewComponentProps}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n )}\n </FormQueryParamsProvider>\n </EditDepthProvider>\n </DocumentInfoProvider>\n )\n}\n"],"names":["DocumentHeader","HydrateClientUser","RenderCustomComponent","DocumentInfoProvider","EditDepthProvider","FormQueryParamsProvider","isEditing","getIsEditing","notFound","redirect","QueryString","React","NotFoundView","getDocumentData","getDocumentPermissions","getMetaBySegment","getViewsFromConfig","generateMetadata","args","Document","initPageResult","params","searchParams","collectionConfig","docID","id","globalConfig","locale","permissions","req","i18n","payload","config","routes","admin","adminRoute","api","apiRoute","serverURL","user","visibleEntities","segments","Array","isArray","collectionSlug","slug","undefined","globalSlug","ViewOverride","CustomView","DefaultView","ErrorView","apiURL","action","data","formState","docPermissions","hasPublishPermission","hasSavePermission","collections","find","visibleSlug","apiQueryParams","stringify","draft","versions","drafts","code","addQueryPrefix","editConfig","components","views","Edit","collectionViews","routeSegments","globals","globalViews","shouldAutosave","autosave","validateDraftData","validate","doc","create","collection","depth","fallbackLocale","redirectURL","viewComponentProps","disableActions","initialData","initialState","initialParams","uploadEdits","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"names":[],"mappings":"AAWA,OAAO,KAA6B,MAAM,OAAO,CAAA;AAEjD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAqEtC,CAAA"}
|
|
@@ -7,17 +7,17 @@ import { useConfig } from '@payloadcms/ui/providers/Config';
|
|
|
7
7
|
import { useTranslation } from '@payloadcms/ui/providers/Translation';
|
|
8
8
|
import { email } from 'payload/fields/validations';
|
|
9
9
|
import React, { Fragment, useState } from 'react';
|
|
10
|
-
import { toast } from 'sonner';
|
|
11
10
|
export const ForgotPasswordForm = ()=>{
|
|
12
11
|
const config = useConfig();
|
|
13
12
|
const { admin: { user: userSlug }, routes: { api } } = config;
|
|
14
13
|
const { t } = useTranslation();
|
|
15
14
|
const [hasSubmitted, setHasSubmitted] = useState(false);
|
|
16
|
-
const handleResponse = (res)=>{
|
|
15
|
+
const handleResponse = (res, successToast, errorToast)=>{
|
|
17
16
|
res.json().then(()=>{
|
|
18
17
|
setHasSubmitted(true);
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
successToast(t('general:submissionSuccessful'));
|
|
19
|
+
}).catch(()=>{
|
|
20
|
+
errorToast(t('authentication:emailNotValid'));
|
|
21
21
|
});
|
|
22
22
|
};
|
|
23
23
|
const initialState = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { FormState, PayloadRequestWithData } from 'payload/types'\n\nimport { Email } from '@payloadcms/ui/fields/Email'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { FormSubmit } from '@payloadcms/ui/forms/Submit'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { email } from 'payload/fields/validations'\nimport React, { Fragment, useState } from 'react'\
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { FormProps } from '@payloadcms/ui/forms/Form'\nimport type { FormState, PayloadRequestWithData } from 'payload/types'\n\nimport { Email } from '@payloadcms/ui/fields/Email'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { FormSubmit } from '@payloadcms/ui/forms/Submit'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { email } from 'payload/fields/validations'\nimport React, { Fragment, useState } from 'react'\n\nexport const ForgotPasswordForm: React.FC = () => {\n const config = useConfig()\n\n const {\n admin: { user: userSlug },\n routes: { api },\n } = config\n\n const { t } = useTranslation()\n const [hasSubmitted, setHasSubmitted] = useState(false)\n\n const handleResponse: FormProps['handleResponse'] = (res, successToast, errorToast) => {\n res\n .json()\n .then(() => {\n setHasSubmitted(true)\n successToast(t('general:submissionSuccessful'))\n })\n .catch(() => {\n errorToast(t('authentication:emailNotValid'))\n })\n }\n\n const initialState: FormState = {\n email: {\n initialValue: '',\n valid: true,\n value: undefined,\n },\n }\n\n if (hasSubmitted) {\n return (\n <Fragment>\n <h1>{t('authentication:emailSent')}</h1>\n <p>{t('authentication:checkYourEmailForPasswordReset')}</p>\n </Fragment>\n )\n }\n\n return (\n <Form\n action={`${api}/${userSlug}/forgot-password`}\n handleResponse={handleResponse}\n initialState={initialState}\n method=\"POST\"\n >\n <h1>{t('authentication:forgotPassword')}</h1>\n <p>{t('authentication:forgotPasswordEmailInstructions')}</p>\n <Email\n autoComplete=\"email\"\n label={t('general:email')}\n name=\"email\"\n required\n validate={(value) =>\n email(value, {\n name: 'email',\n type: 'email',\n data: {},\n preferences: { fields: {} },\n req: { t } as PayloadRequestWithData,\n required: true,\n siblingData: {},\n })\n }\n />\n <FormSubmit>{t('general:submit')}</FormSubmit>\n </Form>\n )\n}\n"],"names":["Email","Form","FormSubmit","useConfig","useTranslation","email","React","Fragment","useState","ForgotPasswordForm","config","admin","user","userSlug","routes","api","t","hasSubmitted","setHasSubmitted","handleResponse","res","successToast","errorToast","json","then","catch","initialState","initialValue","valid","value","undefined","h1","p","action","method","autoComplete","label","name","required","validate","type","data","preferences","fields","req","siblingData"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;AAKA,SAASA,KAAK,QAAQ,8BAA6B;AACnD,SAASC,IAAI,QAAQ,4BAA2B;AAChD,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,KAAK,QAAQ,6BAA4B;AAClD,OAAOC,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,QAAO;AAEjD,OAAO,MAAMC,qBAA+B;IAC1C,MAAMC,SAASP;IAEf,MAAM,EACJQ,OAAO,EAAEC,MAAMC,QAAQ,EAAE,EACzBC,QAAQ,EAAEC,GAAG,EAAE,EAChB,GAAGL;IAEJ,MAAM,EAAEM,CAAC,EAAE,GAAGZ;IACd,MAAM,CAACa,cAAcC,gBAAgB,GAAGV,SAAS;IAEjD,MAAMW,iBAA8C,CAACC,KAAKC,cAAcC;QACtEF,IACGG,IAAI,GACJC,IAAI,CAAC;YACJN,gBAAgB;YAChBG,aAAaL,EAAE;QACjB,GACCS,KAAK,CAAC;YACLH,WAAWN,EAAE;QACf;IACJ;IAEA,MAAMU,eAA0B;QAC9BrB,OAAO;YACLsB,cAAc;YACdC,OAAO;YACPC,OAAOC;QACT;IACF;IAEA,IAAIb,cAAc;QAChB,qBACE,MAACV;;8BACC,KAACwB;8BAAIf,EAAE;;8BACP,KAACgB;8BAAGhB,EAAE;;;;IAGZ;IAEA,qBACE,MAACf;QACCgC,QAAQ,CAAC,EAAElB,IAAI,CAAC,EAAEF,SAAS,gBAAgB,CAAC;QAC5CM,gBAAgBA;QAChBO,cAAcA;QACdQ,QAAO;;0BAEP,KAACH;0BAAIf,EAAE;;0BACP,KAACgB;0BAAGhB,EAAE;;0BACN,KAAChB;gBACCmC,cAAa;gBACbC,OAAOpB,EAAE;gBACTqB,MAAK;gBACLC,QAAQ;gBACRC,UAAU,CAACV,QACTxB,MAAMwB,OAAO;wBACXQ,MAAM;wBACNG,MAAM;wBACNC,MAAM,CAAC;wBACPC,aAAa;4BAAEC,QAAQ,CAAC;wBAAE;wBAC1BC,KAAK;4BAAE5B;wBAAE;wBACTsB,UAAU;wBACVO,aAAa,CAAC;oBAChB;;0BAGJ,KAAC3C;0BAAYc,EAAE;;;;AAGrB,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Root/getViewFromConfig.tsx"],"sourcesContent":["import type { SanitizedConfig } from 'payload/config'\nimport type { AdminViewComponent } from 'payload/types'\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 { ForgotPasswordView, forgotPasswordBaseClass } from '../ForgotPassword/index.js'\nimport { ListView } from '../List/index.js'\nimport { LoginView, loginBaseClass } 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 keyof SanitizedConfig['admin']['routes']]: 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 searchParams,\n segments,\n}: {\n adminRoute\n config: SanitizedConfig\n currentRoute: string\n searchParams: {\n [key: string]: string | string[]\n }\n segments: string[]\n}): {\n DefaultView: AdminViewComponent\n initPageOptions: Parameters<typeof initPage>[0]\n templateClassName: string\n templateType: 'default' | 'minimal'\n} => {\n let ViewToRender: AdminViewComponent = null\n let templateClassName: string\n let templateType: 'default' | 'minimal' | undefined\n\n const initPageOptions: Parameters<typeof initPage>[0] = {\n config,\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 = Dashboard\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 viewToRender: 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: `${adminRoute}${route}`,\n })\n })\n\n if (matchedRoute) {\n viewToRender = matchedRoute[0] as keyof typeof oneSegmentViews\n }\n }\n\n if (oneSegmentViews[viewToRender]) {\n // --> /account\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n\n ViewToRender = oneSegmentViews[viewToRender]\n templateClassName = baseClasses[viewToRender]\n templateType = 'minimal'\n\n if (viewToRender === '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 = ResetPassword\n templateClassName = baseClasses[segmentTwo]\n templateType = 'minimal'\n }\n\n if (isCollection) {\n // --> /collections/:collectionSlug\n initPageOptions.redirectUnauthenticatedUser = true\n ViewToRender = ListView\n templateClassName = `${segmentTwo}-list`\n templateType = 'default'\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n initPageOptions.redirectUnauthenticatedUser = true\n ViewToRender = DocumentView\n templateClassName = 'global-edit'\n templateType = 'default'\n }\n break\n }\n default:\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n ViewToRender = Verify\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 ViewToRender = DocumentView\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 ViewToRender = DocumentView\n templateClassName = `global-edit`\n templateType = 'default'\n }\n break\n }\n\n if (!ViewToRender) {\n ViewToRender = getCustomViewByRoute({ config, currentRoute })\n }\n\n return {\n DefaultView: ViewToRender,\n initPageOptions,\n templateClassName,\n templateType,\n }\n}\n"],"names":["Account","CreateFirstUserView","Dashboard","Document","DocumentView","ForgotPasswordView","forgotPasswordBaseClass","ListView","LoginView","loginBaseClass","LogoutInactivity","LogoutView","ResetPassword","resetPasswordBaseClass","UnauthorizedView","Verify","verifyBaseClass","getCustomViewByRoute","isPathMatchingRoute","baseClasses","account","forgot","login","reset","verify","oneSegmentViews","createFirstUser","inactivity","logout","unauthorized","getViewFromConfig","adminRoute","config","currentRoute","searchParams","segments","ViewToRender","templateClassName","templateType","initPageOptions","route","segmentOne","segmentTwo","isGlobal","isCollection","length","redirectUnauthenticatedUser","viewToRender","admin","routes","matchedRoute","Object","entries","find","exact","path","DefaultView"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Root/getViewFromConfig.tsx"],"sourcesContent":["import type { SanitizedConfig } from 'payload/config'\nimport type { AdminViewComponent } from 'payload/types'\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 { ForgotPasswordView, forgotPasswordBaseClass } from '../ForgotPassword/index.js'\nimport { ListView } from '../List/index.js'\nimport { LoginView, loginBaseClass } 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'>]: 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 searchParams,\n segments,\n}: {\n adminRoute\n config: SanitizedConfig\n currentRoute: string\n searchParams: {\n [key: string]: string | string[]\n }\n segments: string[]\n}): {\n DefaultView: AdminViewComponent\n initPageOptions: Parameters<typeof initPage>[0]\n templateClassName: string\n templateType: 'default' | 'minimal'\n} => {\n let ViewToRender: AdminViewComponent = null\n let templateClassName: string\n let templateType: 'default' | 'minimal' | undefined\n\n const initPageOptions: Parameters<typeof initPage>[0] = {\n config,\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 = Dashboard\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 viewToRender: 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: `${adminRoute}${route}`,\n })\n })\n\n if (matchedRoute) {\n viewToRender = matchedRoute[0] as keyof typeof oneSegmentViews\n }\n }\n\n if (oneSegmentViews[viewToRender]) {\n // --> /account\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n\n ViewToRender = oneSegmentViews[viewToRender]\n templateClassName = baseClasses[viewToRender]\n templateType = 'minimal'\n\n if (viewToRender === '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 = ResetPassword\n templateClassName = baseClasses[segmentTwo]\n templateType = 'minimal'\n }\n\n if (isCollection) {\n // --> /collections/:collectionSlug\n initPageOptions.redirectUnauthenticatedUser = true\n ViewToRender = ListView\n templateClassName = `${segmentTwo}-list`\n templateType = 'default'\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n initPageOptions.redirectUnauthenticatedUser = true\n ViewToRender = DocumentView\n templateClassName = 'global-edit'\n templateType = 'default'\n }\n break\n }\n default:\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n ViewToRender = Verify\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 ViewToRender = DocumentView\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 ViewToRender = DocumentView\n templateClassName = `global-edit`\n templateType = 'default'\n }\n break\n }\n\n if (!ViewToRender) {\n ViewToRender = getCustomViewByRoute({ config, currentRoute })\n }\n\n return {\n DefaultView: ViewToRender,\n initPageOptions,\n templateClassName,\n templateType,\n }\n}\n"],"names":["Account","CreateFirstUserView","Dashboard","Document","DocumentView","ForgotPasswordView","forgotPasswordBaseClass","ListView","LoginView","loginBaseClass","LogoutInactivity","LogoutView","ResetPassword","resetPasswordBaseClass","UnauthorizedView","Verify","verifyBaseClass","getCustomViewByRoute","isPathMatchingRoute","baseClasses","account","forgot","login","reset","verify","oneSegmentViews","createFirstUser","inactivity","logout","unauthorized","getViewFromConfig","adminRoute","config","currentRoute","searchParams","segments","ViewToRender","templateClassName","templateType","initPageOptions","route","segmentOne","segmentTwo","isGlobal","isCollection","length","redirectUnauthenticatedUser","viewToRender","admin","routes","matchedRoute","Object","entries","find","exact","path","DefaultView"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -17,7 +17,7 @@ declare const _default: {
|
|
|
17
17
|
isClearable?: boolean;
|
|
18
18
|
isSortable?: boolean;
|
|
19
19
|
name?: string;
|
|
20
|
-
onChange?: (e: string) => void;
|
|
20
|
+
onChange?: (e: string | string[]) => void;
|
|
21
21
|
options?: import("packages/payload/src/exports/types.js").Option[];
|
|
22
22
|
path?: string;
|
|
23
23
|
value?: string;
|
|
@@ -33,7 +33,7 @@ declare const _default: {
|
|
|
33
33
|
isClearable?: boolean;
|
|
34
34
|
isSortable?: boolean;
|
|
35
35
|
name?: string;
|
|
36
|
-
onChange?: (e: string) => void;
|
|
36
|
+
onChange?: (e: string | string[]) => void;
|
|
37
37
|
options?: import("packages/payload/src/exports/types.js").Option[];
|
|
38
38
|
path?: string;
|
|
39
39
|
value?: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/next",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.48",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -42,9 +42,9 @@
|
|
|
42
42
|
"sass": "1.77.4",
|
|
43
43
|
"sonner": "^1.5.0",
|
|
44
44
|
"ws": "^8.16.0",
|
|
45
|
-
"@payloadcms/graphql": "3.0.0-beta.
|
|
46
|
-
"@payloadcms/
|
|
47
|
-
"@payloadcms/
|
|
45
|
+
"@payloadcms/graphql": "3.0.0-beta.48",
|
|
46
|
+
"@payloadcms/ui": "3.0.0-beta.48",
|
|
47
|
+
"@payloadcms/translations": "3.0.0-beta.48"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@next/eslint-plugin-next": "^14.1.0",
|
|
@@ -64,12 +64,12 @@
|
|
|
64
64
|
"webpack": "^5.78.0",
|
|
65
65
|
"webpack-cli": "^5.1.4",
|
|
66
66
|
"@payloadcms/eslint-config": "1.1.1",
|
|
67
|
-
"payload": "3.0.0-beta.
|
|
67
|
+
"payload": "3.0.0-beta.48"
|
|
68
68
|
},
|
|
69
69
|
"peerDependencies": {
|
|
70
70
|
"graphql": "^16.8.1",
|
|
71
71
|
"next": "^15.0.0-rc.0",
|
|
72
|
-
"payload": "3.0.0-beta.
|
|
72
|
+
"payload": "3.0.0-beta.48"
|
|
73
73
|
},
|
|
74
74
|
"engines": {
|
|
75
75
|
"node": "^18.20.2 || >=20.9.0"
|