tinacms-authjs 0.0.0-df15996-20250420014759 → 0.0.0-e024aec-20250526035050

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/index.d.ts CHANGED
@@ -1 +1,27 @@
1
- export * from "../src/index"
1
+ import { AuthOptions } from 'next-auth';
2
+ import type { BackendAuthProvider } from '@tinacms/datalayer';
3
+ declare const TinaAuthJSOptions: ({ databaseClient, uidProp, debug, overrides, secret, providers, }: {
4
+ databaseClient: any;
5
+ uidProp?: string;
6
+ debug?: boolean;
7
+ overrides?: AuthOptions;
8
+ providers?: AuthOptions["providers"];
9
+ secret: string;
10
+ }) => AuthOptions;
11
+ declare const TinaCredentialsProvider: ({ databaseClient, name, }: {
12
+ databaseClient: any;
13
+ name?: string;
14
+ }) => import("next-auth/providers/credentials").CredentialsConfig<{
15
+ username: {
16
+ label: string;
17
+ type: string;
18
+ };
19
+ password: {
20
+ label: string;
21
+ type: string;
22
+ };
23
+ }>;
24
+ declare const AuthJsBackendAuthProvider: ({ authOptions, }: {
25
+ authOptions: AuthOptions;
26
+ }) => BackendAuthProvider;
27
+ export { TinaCredentialsProvider, TinaAuthJSOptions, AuthJsBackendAuthProvider, };
package/dist/index.js CHANGED
@@ -45,10 +45,9 @@ var TINA_CREDENTIALS_PROVIDER_NAME = "TinaCredentials";
45
45
 
46
46
  // src/index.ts
47
47
  var authenticate = async (databaseClient, username, password) => {
48
- var _a;
49
48
  try {
50
49
  const result = await databaseClient.authenticate({ username, password });
51
- return ((_a = result.data) == null ? void 0 : _a.authenticate) || null;
50
+ return result.data?.authenticate || null;
52
51
  } catch (e) {
53
52
  console.error(e);
54
53
  }
@@ -64,17 +63,16 @@ var TinaAuthJSOptions = ({
64
63
  }) => ({
65
64
  callbacks: {
66
65
  jwt: async ({ token: jwt, account }) => {
67
- var _a, _b, _c, _d;
68
66
  if (account) {
69
67
  if (debug) {
70
68
  console.table(jwt);
71
69
  }
72
70
  try {
73
- if (jwt == null ? void 0 : jwt[uidProp]) {
71
+ if (jwt?.[uidProp]) {
74
72
  const sub = jwt[uidProp];
75
73
  const result = await databaseClient.authorize({ sub });
76
- jwt.role = !!((_a = result.data) == null ? void 0 : _a.authorize) ? "user" : "guest";
77
- jwt.passwordChangeRequired = ((_d = (_c = (_b = result.data) == null ? void 0 : _b.authorize) == null ? void 0 : _c._password) == null ? void 0 : _d.passwordChangeRequired) || false;
74
+ jwt.role = !!result.data?.authorize ? "user" : "guest";
75
+ jwt.passwordChangeRequired = result.data?.authorize?._password?.passwordChangeRequired || false;
78
76
  } else if (debug) {
79
77
  console.log(`jwt missing specified uidProp: ${uidProp}`);
80
78
  }
@@ -118,8 +116,7 @@ var AuthJsBackendAuthProvider = ({
118
116
  }) => {
119
117
  const authProvider = {
120
118
  initialize: async () => {
121
- var _a;
122
- if (!((_a = authOptions.providers) == null ? void 0 : _a.length)) {
119
+ if (!authOptions.providers?.length) {
123
120
  throw new Error("No auth providers specified");
124
121
  }
125
122
  const [provider, ...rest] = authOptions.providers;
@@ -137,14 +134,14 @@ var AuthJsBackendAuthProvider = ({
137
134
  writable: false
138
135
  });
139
136
  }
140
- if (!(session == null ? void 0 : session.user)) {
137
+ if (!session?.user) {
141
138
  return {
142
139
  errorCode: 401,
143
140
  errorMessage: "Unauthorized",
144
141
  isAuthorized: false
145
142
  };
146
143
  }
147
- if ((session == null ? void 0 : session.user).role !== "user") {
144
+ if ((session?.user).role !== "user") {
148
145
  return {
149
146
  errorCode: 403,
150
147
  errorMessage: "Forbidden",
@@ -157,12 +154,11 @@ var AuthJsBackendAuthProvider = ({
157
154
  auth: {
158
155
  secure: false,
159
156
  handler: async (req, res, opts) => {
160
- var _a, _b, _c;
161
157
  const url = new URL(
162
158
  req.url,
163
- `http://${((_a = req.headers) == null ? void 0 : _a.host) || "localhost"}`
159
+ `http://${req.headers?.host || "localhost"}`
164
160
  );
165
- const authSubRoutes = (_c = (_b = url.pathname) == null ? void 0 : _b.replace(`${opts.basePath}auth/`, "")) == null ? void 0 : _c.split("/");
161
+ const authSubRoutes = url.pathname?.replace(`${opts.basePath}auth/`, "")?.split("/");
166
162
  req.query.nextauth = authSubRoutes;
167
163
  await (0, import_next_auth.default)(authOptions)(req, res);
168
164
  }
package/dist/tinacms.d.ts CHANGED
@@ -1 +1,32 @@
1
- export * from "../src/tinacms"
1
+ import { Collection, LoginStrategy } from '@tinacms/schema-tools';
2
+ import { AbstractAuthProvider } from 'tinacms';
3
+ import type { FC } from 'react';
4
+ export declare const TINA_CREDENTIALS_PROVIDER_NAME = "TinaCredentials";
5
+ export declare class DefaultAuthJSProvider extends AbstractAuthProvider {
6
+ readonly callbackUrl: string;
7
+ readonly name: string;
8
+ readonly redirect: boolean;
9
+ constructor(props?: {
10
+ name?: string;
11
+ callbackUrl?: string;
12
+ redirect?: boolean;
13
+ });
14
+ authenticate(_props: any): Promise<any>;
15
+ getToken(): Promise<{
16
+ id_token: string;
17
+ }>;
18
+ getUser(): Promise<false | {
19
+ name?: string | null;
20
+ email?: string | null;
21
+ image?: string | null;
22
+ }>;
23
+ logout(): Promise<void>;
24
+ authorize(context?: any): Promise<any>;
25
+ getSessionProvider(): FC;
26
+ }
27
+ export type SignInErrorTypes = 'Signin' | 'OAuthSignin' | 'OAuthCallback' | 'OAuthCreateAccount' | 'EmailCreateAccount' | 'Callback' | 'OAuthAccountNotLinked' | 'EmailSignin' | 'CredentialsSignin' | 'SessionRequired' | 'default';
28
+ export declare class UsernamePasswordAuthJSProvider extends DefaultAuthJSProvider {
29
+ authenticate(props?: Record<string, any>): Promise<void>;
30
+ getLoginStrategy(): LoginStrategy;
31
+ }
32
+ export declare const TinaUserCollection: Collection;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tinacms-authjs",
3
- "version": "0.0.0-df15996-20250420014759",
3
+ "version": "0.0.0-e024aec-20250526035050",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.mjs",
6
6
  "files": [
@@ -18,7 +18,7 @@
18
18
  ]
19
19
  },
20
20
  "dependencies": {
21
- "@tinacms/schema-tools": "0.0.0-df15996-20250420014759"
21
+ "@tinacms/schema-tools": "1.7.3"
22
22
  },
23
23
  "devDependencies": {
24
24
  "next": "14.2.10",
@@ -26,16 +26,16 @@
26
26
  "react": "^18.3.1",
27
27
  "react-dom": "^18.3.1",
28
28
  "typescript": "^5.7.3",
29
- "@tinacms/datalayer": "0.0.0-df15996-20250420014759",
30
- "@tinacms/scripts": "1.3.4",
31
- "tinacms": "0.0.0-df15996-20250420014759"
29
+ "@tinacms/datalayer": "0.0.0-e024aec-20250526035050",
30
+ "@tinacms/scripts": "0.0.0-e024aec-20250526035050",
31
+ "tinacms": "0.0.0-e024aec-20250526035050"
32
32
  },
33
33
  "peerDependencies": {
34
34
  "next": "^12.2.5 || ^13 || ^14",
35
35
  "next-auth": "^4.22.1",
36
36
  "react": "^17.0.2 || ^18",
37
37
  "react-dom": "^17.0.2 || ^18",
38
- "tinacms": "0.0.0-df15996-20250420014759"
38
+ "tinacms": "0.0.0-e024aec-20250526035050"
39
39
  },
40
40
  "publishConfig": {
41
41
  "registry": "https://registry.npmjs.org"