@payloadcms/next 3.35.0-internal.5e55452 → 3.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,22 @@
1
+ import type { CollectionSlug } from 'payload';
2
+ type LoginWithEmail = {
3
+ collection: CollectionSlug;
4
+ config: any;
5
+ email: string;
6
+ password: string;
7
+ username?: never;
8
+ };
9
+ type LoginWithUsername = {
10
+ collection: CollectionSlug;
11
+ config: any;
12
+ email?: never;
13
+ password: string;
14
+ username: string;
15
+ };
16
+ type LoginArgs = LoginWithEmail | LoginWithUsername;
17
+ export declare function login({ collection, config, email, password, username }: LoginArgs): Promise<{
18
+ token?: string;
19
+ user: any;
20
+ }>;
21
+ export {};
22
+ //# sourceMappingURL=login.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/auth/login.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAO7C,KAAK,cAAc,GAAG;IACpB,UAAU,EAAE,cAAc,CAAA;IAC1B,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAA;CACjB,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,UAAU,EAAE,cAAc,CAAA;IAC1B,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AACD,KAAK,SAAS,GAAG,cAAc,GAAG,iBAAiB,CAAA;AAEnD,wBAAsB,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC;IACjG,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,GAAG,CAAA;CACV,CAAC,CAyDD"}
@@ -0,0 +1,71 @@
1
+ 'use server';
2
+
3
+ import { getPayload } from 'payload';
4
+ import { setPayloadAuthCookie } from '../utilities/setPayloadAuthCookie.js';
5
+ export async function login({
6
+ collection,
7
+ config,
8
+ email,
9
+ password,
10
+ username
11
+ }) {
12
+ const payload = await getPayload({
13
+ config
14
+ });
15
+ const authConfig = payload.collections[collection]?.config.auth;
16
+ if (!authConfig) {
17
+ throw new Error(`No auth config found for collection: ${collection}`);
18
+ }
19
+ const loginWithUsername = authConfig?.loginWithUsername ?? false;
20
+ if (loginWithUsername) {
21
+ if (loginWithUsername.allowEmailLogin) {
22
+ if (!email && !username) {
23
+ throw new Error('Email or username is required.');
24
+ }
25
+ } else {
26
+ if (!username) {
27
+ throw new Error('Username is required.');
28
+ }
29
+ }
30
+ } else {
31
+ if (!email) {
32
+ throw new Error('Email is required.');
33
+ }
34
+ }
35
+ let loginData;
36
+ if (loginWithUsername) {
37
+ loginData = username ? {
38
+ password,
39
+ username
40
+ } : {
41
+ email,
42
+ password
43
+ };
44
+ } else {
45
+ loginData = {
46
+ email,
47
+ password
48
+ };
49
+ }
50
+ try {
51
+ const result = await payload.login({
52
+ collection,
53
+ data: loginData
54
+ });
55
+ if (result.token) {
56
+ await setPayloadAuthCookie({
57
+ authConfig,
58
+ cookiePrefix: payload.config.cookiePrefix,
59
+ token: result.token
60
+ });
61
+ }
62
+ if ('removeTokenFromResponses' in config && config.removeTokenFromResponses) {
63
+ delete result.token;
64
+ }
65
+ return result;
66
+ } catch (e) {
67
+ console.error('Login error:', e);
68
+ throw new Error(`${e}`);
69
+ }
70
+ }
71
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","names":["getPayload","setPayloadAuthCookie","login","collection","config","email","password","username","payload","authConfig","collections","auth","Error","loginWithUsername","allowEmailLogin","loginData","result","data","token","cookiePrefix","removeTokenFromResponses","e","console","error"],"sources":["../../src/auth/login.ts"],"sourcesContent":["'use server'\n\nimport type { CollectionSlug } from 'payload'\n\nimport { cookies as getCookies } from 'next/headers.js'\nimport { generatePayloadCookie, getPayload } from 'payload'\n\nimport { setPayloadAuthCookie } from '../utilities/setPayloadAuthCookie.js'\n\ntype LoginWithEmail = {\n collection: CollectionSlug\n config: any\n email: string\n password: string\n username?: never\n}\n\ntype LoginWithUsername = {\n collection: CollectionSlug\n config: any\n email?: never\n password: string\n username: string\n}\ntype LoginArgs = LoginWithEmail | LoginWithUsername\n\nexport async function login({ collection, config, email, password, username }: LoginArgs): Promise<{\n token?: string\n user: any\n}> {\n const payload = await getPayload({ config })\n\n const authConfig = payload.collections[collection]?.config.auth\n if (!authConfig) {\n throw new Error(`No auth config found for collection: ${collection}`)\n }\n\n const loginWithUsername = authConfig?.loginWithUsername ?? false\n\n if (loginWithUsername) {\n if (loginWithUsername.allowEmailLogin) {\n if (!email && !username) {\n throw new Error('Email or username is required.')\n }\n } else {\n if (!username) {\n throw new Error('Username is required.')\n }\n }\n } else {\n if (!email) {\n throw new Error('Email is required.')\n }\n }\n\n let loginData\n\n if (loginWithUsername) {\n loginData = username ? { password, username } : { email, password }\n } else {\n loginData = { email, password }\n }\n\n try {\n const result = await payload.login({\n collection,\n data: loginData,\n })\n\n if (result.token) {\n await setPayloadAuthCookie({\n authConfig,\n cookiePrefix: payload.config.cookiePrefix,\n token: result.token,\n })\n }\n\n if ('removeTokenFromResponses' in config && config.removeTokenFromResponses) {\n delete result.token\n }\n\n return result\n } catch (e) {\n console.error('Login error:', e)\n throw new Error(`${e}`)\n }\n}\n"],"mappings":"AAAA;;AAKA,SAAgCA,UAAU,QAAQ;AAElD,SAASC,oBAAoB,QAAQ;AAmBrC,OAAO,eAAeC,MAAM;EAAEC,UAAU;EAAEC,MAAM;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAQ,CAAa;EAItF,MAAMC,OAAA,GAAU,MAAMR,UAAA,CAAW;IAAEI;EAAO;EAE1C,MAAMK,UAAA,GAAaD,OAAA,CAAQE,WAAW,CAACP,UAAA,CAAW,EAAEC,MAAA,CAAOO,IAAA;EAC3D,IAAI,CAACF,UAAA,EAAY;IACf,MAAM,IAAIG,KAAA,CAAM,wCAAwCT,UAAA,EAAY;EACtE;EAEA,MAAMU,iBAAA,GAAoBJ,UAAA,EAAYI,iBAAA,IAAqB;EAE3D,IAAIA,iBAAA,EAAmB;IACrB,IAAIA,iBAAA,CAAkBC,eAAe,EAAE;MACrC,IAAI,CAACT,KAAA,IAAS,CAACE,QAAA,EAAU;QACvB,MAAM,IAAIK,KAAA,CAAM;MAClB;IACF,OAAO;MACL,IAAI,CAACL,QAAA,EAAU;QACb,MAAM,IAAIK,KAAA,CAAM;MAClB;IACF;EACF,OAAO;IACL,IAAI,CAACP,KAAA,EAAO;MACV,MAAM,IAAIO,KAAA,CAAM;IAClB;EACF;EAEA,IAAIG,SAAA;EAEJ,IAAIF,iBAAA,EAAmB;IACrBE,SAAA,GAAYR,QAAA,GAAW;MAAED,QAAA;MAAUC;IAAS,IAAI;MAAEF,KAAA;MAAOC;IAAS;EACpE,OAAO;IACLS,SAAA,GAAY;MAAEV,KAAA;MAAOC;IAAS;EAChC;EAEA,IAAI;IACF,MAAMU,MAAA,GAAS,MAAMR,OAAA,CAAQN,KAAK,CAAC;MACjCC,UAAA;MACAc,IAAA,EAAMF;IACR;IAEA,IAAIC,MAAA,CAAOE,KAAK,EAAE;MAChB,MAAMjB,oBAAA,CAAqB;QACzBQ,UAAA;QACAU,YAAA,EAAcX,OAAA,CAAQJ,MAAM,CAACe,YAAY;QACzCD,KAAA,EAAOF,MAAA,CAAOE;MAChB;IACF;IAEA,IAAI,8BAA8Bd,MAAA,IAAUA,MAAA,CAAOgB,wBAAwB,EAAE;MAC3E,OAAOJ,MAAA,CAAOE,KAAK;IACrB;IAEA,OAAOF,MAAA;EACT,EAAE,OAAOK,CAAA,EAAG;IACVC,OAAA,CAAQC,KAAK,CAAC,gBAAgBF,CAAA;IAC9B,MAAM,IAAIT,KAAA,CAAM,GAAGS,CAAA,EAAG;EACxB;AACF","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export declare function logout({ config }: {
2
+ config: any;
3
+ }): Promise<{
4
+ message: string;
5
+ success: boolean;
6
+ }>;
7
+ //# sourceMappingURL=logout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/auth/logout.ts"],"names":[],"mappings":"AAOA,wBAAsB,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,GAAG,CAAA;CAAE;;;GAqBvD"}
@@ -0,0 +1,37 @@
1
+ 'use server';
2
+
3
+ import { cookies as getCookies, headers as nextHeaders } from 'next/headers.js';
4
+ import { getPayload } from 'payload';
5
+ import { getExistingAuthToken } from '../utilities/getExistingAuthToken.js';
6
+ export async function logout({
7
+ config
8
+ }) {
9
+ try {
10
+ const payload = await getPayload({
11
+ config
12
+ });
13
+ const headers = await nextHeaders();
14
+ const result = await payload.auth({
15
+ headers
16
+ });
17
+ if (!result.user) {
18
+ return {
19
+ message: 'User already logged out',
20
+ success: true
21
+ };
22
+ }
23
+ const existingCookie = await getExistingAuthToken(payload.config.cookiePrefix);
24
+ if (existingCookie) {
25
+ const cookies = await getCookies();
26
+ cookies.delete(existingCookie.name);
27
+ return {
28
+ message: 'User logged out successfully',
29
+ success: true
30
+ };
31
+ }
32
+ } catch (e) {
33
+ console.error('Logout error:', e);
34
+ throw new Error(`${e}`);
35
+ }
36
+ }
37
+ //# sourceMappingURL=logout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logout.js","names":["cookies","getCookies","headers","nextHeaders","getPayload","getExistingAuthToken","logout","config","payload","result","auth","user","message","success","existingCookie","cookiePrefix","delete","name","e","console","error","Error"],"sources":["../../src/auth/logout.ts"],"sourcesContent":["'use server'\n\nimport { cookies as getCookies, headers as nextHeaders } from 'next/headers.js'\nimport { getPayload } from 'payload'\n\nimport { getExistingAuthToken } from '../utilities/getExistingAuthToken.js'\n\nexport async function logout({ config }: { config: any }) {\n try {\n const payload = await getPayload({ config })\n const headers = await nextHeaders()\n const result = await payload.auth({ headers })\n\n if (!result.user) {\n return { message: 'User already logged out', success: true }\n }\n\n const existingCookie = await getExistingAuthToken(payload.config.cookiePrefix)\n\n if (existingCookie) {\n const cookies = await getCookies()\n cookies.delete(existingCookie.name)\n return { message: 'User logged out successfully', success: true }\n }\n } catch (e) {\n console.error('Logout error:', e)\n throw new Error(`${e}`)\n }\n}\n"],"mappings":"AAAA;;AAEA,SAASA,OAAA,IAAWC,UAAU,EAAEC,OAAA,IAAWC,WAAW,QAAQ;AAC9D,SAASC,UAAU,QAAQ;AAE3B,SAASC,oBAAoB,QAAQ;AAErC,OAAO,eAAeC,OAAO;EAAEC;AAAM,CAAmB;EACtD,IAAI;IACF,MAAMC,OAAA,GAAU,MAAMJ,UAAA,CAAW;MAAEG;IAAO;IAC1C,MAAML,OAAA,GAAU,MAAMC,WAAA;IACtB,MAAMM,MAAA,GAAS,MAAMD,OAAA,CAAQE,IAAI,CAAC;MAAER;IAAQ;IAE5C,IAAI,CAACO,MAAA,CAAOE,IAAI,EAAE;MAChB,OAAO;QAAEC,OAAA,EAAS;QAA2BC,OAAA,EAAS;MAAK;IAC7D;IAEA,MAAMC,cAAA,GAAiB,MAAMT,oBAAA,CAAqBG,OAAA,CAAQD,MAAM,CAACQ,YAAY;IAE7E,IAAID,cAAA,EAAgB;MAClB,MAAMd,OAAA,GAAU,MAAMC,UAAA;MACtBD,OAAA,CAAQgB,MAAM,CAACF,cAAA,CAAeG,IAAI;MAClC,OAAO;QAAEL,OAAA,EAAS;QAAgCC,OAAA,EAAS;MAAK;IAClE;EACF,EAAE,OAAOK,CAAA,EAAG;IACVC,OAAA,CAAQC,KAAK,CAAC,iBAAiBF,CAAA;IAC/B,MAAM,IAAIG,KAAA,CAAM,GAAGH,CAAA,EAAG;EACxB;AACF","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import type { CollectionSlug } from 'payload';
2
+ export declare function refresh({ collection, config }: {
3
+ collection: CollectionSlug;
4
+ config: any;
5
+ }): Promise<{
6
+ message: string;
7
+ success: boolean;
8
+ }>;
9
+ //# sourceMappingURL=refresh.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refresh.d.ts","sourceRoot":"","sources":["../../src/auth/refresh.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAQ7C,wBAAsB,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;IAAE,UAAU,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,GAAG,CAAA;CAAE;;;GA+BhG"}
@@ -0,0 +1,48 @@
1
+ 'use server';
2
+
3
+ import { headers as nextHeaders } from 'next/headers.js';
4
+ import { getPayload } from 'payload';
5
+ import { getExistingAuthToken } from '../utilities/getExistingAuthToken.js';
6
+ import { setPayloadAuthCookie } from '../utilities/setPayloadAuthCookie.js';
7
+ export async function refresh({
8
+ collection,
9
+ config
10
+ }) {
11
+ try {
12
+ const payload = await getPayload({
13
+ config
14
+ });
15
+ const authConfig = payload.collections[collection]?.config.auth;
16
+ if (!authConfig) {
17
+ throw new Error(`No auth config found for collection: ${collection}`);
18
+ }
19
+ const {
20
+ user
21
+ } = await payload.auth({
22
+ headers: await nextHeaders()
23
+ });
24
+ if (!user) {
25
+ throw new Error('User not authenticated');
26
+ }
27
+ const existingCookie = await getExistingAuthToken(payload.config.cookiePrefix);
28
+ if (!existingCookie) {
29
+ return {
30
+ message: 'No valid token found',
31
+ success: false
32
+ };
33
+ }
34
+ await setPayloadAuthCookie({
35
+ authConfig,
36
+ cookiePrefix: payload.config.cookiePrefix,
37
+ token: existingCookie.value
38
+ });
39
+ return {
40
+ message: 'Token refreshed successfully',
41
+ success: true
42
+ };
43
+ } catch (e) {
44
+ console.error('Refresh error:', e);
45
+ throw new Error(`${e}`);
46
+ }
47
+ }
48
+ //# sourceMappingURL=refresh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refresh.js","names":["headers","nextHeaders","getPayload","getExistingAuthToken","setPayloadAuthCookie","refresh","collection","config","payload","authConfig","collections","auth","Error","user","existingCookie","cookiePrefix","message","success","token","value","e","console","error"],"sources":["../../src/auth/refresh.ts"],"sourcesContent":["'use server'\n\nimport type { CollectionSlug } from 'payload'\n\nimport { headers as nextHeaders } from 'next/headers.js'\nimport { getPayload } from 'payload'\n\nimport { getExistingAuthToken } from '../utilities/getExistingAuthToken.js'\nimport { setPayloadAuthCookie } from '../utilities/setPayloadAuthCookie.js'\n\nexport async function refresh({ collection, config }: { collection: CollectionSlug; config: any }) {\n try {\n const payload = await getPayload({ config })\n const authConfig = payload.collections[collection]?.config.auth\n\n if (!authConfig) {\n throw new Error(`No auth config found for collection: ${collection}`)\n }\n\n const { user } = await payload.auth({ headers: await nextHeaders() })\n if (!user) {\n throw new Error('User not authenticated')\n }\n\n const existingCookie = await getExistingAuthToken(payload.config.cookiePrefix)\n\n if (!existingCookie) {\n return { message: 'No valid token found', success: false }\n }\n\n await setPayloadAuthCookie({\n authConfig,\n cookiePrefix: payload.config.cookiePrefix,\n token: existingCookie.value,\n })\n\n return { message: 'Token refreshed successfully', success: true }\n } catch (e) {\n console.error('Refresh error:', e)\n throw new Error(`${e}`)\n }\n}\n"],"mappings":"AAAA;;AAIA,SAASA,OAAA,IAAWC,WAAW,QAAQ;AACvC,SAASC,UAAU,QAAQ;AAE3B,SAASC,oBAAoB,QAAQ;AACrC,SAASC,oBAAoB,QAAQ;AAErC,OAAO,eAAeC,QAAQ;EAAEC,UAAU;EAAEC;AAAM,CAA+C;EAC/F,IAAI;IACF,MAAMC,OAAA,GAAU,MAAMN,UAAA,CAAW;MAAEK;IAAO;IAC1C,MAAME,UAAA,GAAaD,OAAA,CAAQE,WAAW,CAACJ,UAAA,CAAW,EAAEC,MAAA,CAAOI,IAAA;IAE3D,IAAI,CAACF,UAAA,EAAY;MACf,MAAM,IAAIG,KAAA,CAAM,wCAAwCN,UAAA,EAAY;IACtE;IAEA,MAAM;MAAEO;IAAI,CAAE,GAAG,MAAML,OAAA,CAAQG,IAAI,CAAC;MAAEX,OAAA,EAAS,MAAMC,WAAA;IAAc;IACnE,IAAI,CAACY,IAAA,EAAM;MACT,MAAM,IAAID,KAAA,CAAM;IAClB;IAEA,MAAME,cAAA,GAAiB,MAAMX,oBAAA,CAAqBK,OAAA,CAAQD,MAAM,CAACQ,YAAY;IAE7E,IAAI,CAACD,cAAA,EAAgB;MACnB,OAAO;QAAEE,OAAA,EAAS;QAAwBC,OAAA,EAAS;MAAM;IAC3D;IAEA,MAAMb,oBAAA,CAAqB;MACzBK,UAAA;MACAM,YAAA,EAAcP,OAAA,CAAQD,MAAM,CAACQ,YAAY;MACzCG,KAAA,EAAOJ,cAAA,CAAeK;IACxB;IAEA,OAAO;MAAEH,OAAA,EAAS;MAAgCC,OAAA,EAAS;IAAK;EAClE,EAAE,OAAOG,CAAA,EAAG;IACVC,OAAA,CAAQC,KAAK,CAAC,kBAAkBF,CAAA;IAChC,MAAM,IAAIR,KAAA,CAAM,GAAGQ,CAAA,EAAG;EACxB;AACF","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ export { login } from '../auth/login.js';
2
+ export { logout } from '../auth/logout.js';
3
+ export { refresh } from '../auth/refresh.js';
4
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/exports/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export { login } from '../auth/login.js';
2
+ export { logout } from '../auth/logout.js';
3
+ export { refresh } from '../auth/refresh.js';
4
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","names":["login","logout","refresh"],"sources":["../../src/exports/auth.ts"],"sourcesContent":["export { login } from '../auth/login.js'\nexport { logout } from '../auth/logout.js'\nexport { refresh } from '../auth/refresh.js'\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ;AACtB,SAASC,MAAM,QAAQ;AACvB,SAASC,OAAO,QAAQ","ignoreList":[]}