@contentgrowth/content-auth 0.4.8 → 0.4.9

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.
@@ -9,7 +9,7 @@ import {
9
9
  normalizeEmail,
10
10
  schema_exports,
11
11
  verifyTurnstile
12
- } from "../chunk-WI4UHTAT.js";
12
+ } from "../chunk-52ZT54FA.js";
13
13
  import "../chunk-R5U7XKVJ.js";
14
14
  export {
15
15
  Hono,
@@ -147,206 +147,92 @@ var createAdditionalColumns = (additionalFields) => {
147
147
  });
148
148
  return columns;
149
149
  };
150
- var createUsersTable = (tableName = "users", fields, additionalFields) => {
151
- const idCol = text(fields?.id || "id").primaryKey();
152
- const nameCol = text(fields?.name || "name").notNull();
153
- const emailCol = text(fields?.email || "email").notNull().unique();
154
- const emailVerifiedCol = integer(fields?.emailVerified || "emailVerified", { mode: "boolean" }).notNull();
155
- const imageCol = text(fields?.image || "image");
156
- const createdAtCol = integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull();
157
- const updatedAtCol = integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" }).notNull();
158
- return sqliteTable(tableName, {
159
- id: idCol,
160
- [fields?.id || "id"]: idCol,
161
- name: nameCol,
162
- [fields?.name || "name"]: nameCol,
163
- email: emailCol,
164
- [fields?.email || "email"]: emailCol,
165
- emailVerified: emailVerifiedCol,
166
- [fields?.emailVerified || "emailVerified"]: emailVerifiedCol,
167
- image: imageCol,
168
- [fields?.image || "image"]: imageCol,
169
- createdAt: createdAtCol,
170
- [fields?.createdAt || "createdAt"]: createdAtCol,
171
- updatedAt: updatedAtCol,
172
- [fields?.updatedAt || "updatedAt"]: updatedAtCol,
173
- ...createAdditionalColumns(additionalFields)
174
- });
175
- };
176
- var createSessionsTable = (tableName = "sessions", usersTableOrFn = users, fields, userPkField = "id", additionalFields) => {
150
+ var createUsersTable = (tableName = "users", fields, additionalFields) => sqliteTable(tableName, {
151
+ id: text(fields?.id || "id").primaryKey(),
152
+ [fields?.name || "name"]: text(fields?.name || "name").notNull(),
153
+ [fields?.email || "email"]: text(fields?.email || "email").notNull().unique(),
154
+ [fields?.emailVerified || "emailVerified"]: integer(fields?.emailVerified || "emailVerified", { mode: "boolean" }).notNull(),
155
+ [fields?.image || "image"]: text(fields?.image || "image"),
156
+ [fields?.createdAt || "createdAt"]: integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull(),
157
+ [fields?.updatedAt || "updatedAt"]: integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" }).notNull(),
158
+ ...createAdditionalColumns(additionalFields)
159
+ });
160
+ var createSessionsTable = (tableName = "sessions", usersTableOrFn = users, fields, additionalFields) => {
177
161
  const usersTable = typeof usersTableOrFn === "function" ? usersTableOrFn() : usersTableOrFn;
178
- const idCol = text(fields?.id || "id").primaryKey();
179
- const expiresAtCol = integer(fields?.expiresAt || "expiresAt", { mode: "timestamp" }).notNull();
180
- const tokenCol = text(fields?.token || "token").notNull().unique();
181
- const createdAtCol = integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull();
182
- const updatedAtCol = integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" }).notNull();
183
- const ipAddressCol = text(fields?.ipAddress || "ipAddress");
184
- const userAgentCol = text(fields?.userAgent || "userAgent");
185
- const userIdCol = text(fields?.userId || "userId").notNull().references(() => usersTable[userPkField] || usersTable.id, { onDelete: "cascade" });
186
- const activeOrganizationIdCol = text(fields?.activeOrganizationId || "activeOrganizationId");
187
162
  return sqliteTable(tableName, {
188
- id: idCol,
189
- [fields?.id || "id"]: idCol,
190
- expiresAt: expiresAtCol,
191
- [fields?.expiresAt || "expiresAt"]: expiresAtCol,
192
- token: tokenCol,
193
- [fields?.token || "token"]: tokenCol,
194
- createdAt: createdAtCol,
195
- [fields?.createdAt || "createdAt"]: createdAtCol,
196
- updatedAt: updatedAtCol,
197
- [fields?.updatedAt || "updatedAt"]: updatedAtCol,
198
- ipAddress: ipAddressCol,
199
- [fields?.ipAddress || "ipAddress"]: ipAddressCol,
200
- userAgent: userAgentCol,
201
- [fields?.userAgent || "userAgent"]: userAgentCol,
202
- userId: userIdCol,
203
- [fields?.userId || "userId"]: userIdCol,
204
- activeOrganizationId: activeOrganizationIdCol,
205
- [fields?.activeOrganizationId || "activeOrganizationId"]: activeOrganizationIdCol,
163
+ id: text(fields?.id || "id").primaryKey(),
164
+ [fields?.expiresAt || "expiresAt"]: integer(fields?.expiresAt || "expiresAt", { mode: "timestamp" }).notNull(),
165
+ [fields?.token || "token"]: text(fields?.token || "token").notNull().unique(),
166
+ [fields?.createdAt || "createdAt"]: integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull(),
167
+ [fields?.updatedAt || "updatedAt"]: integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" }).notNull(),
168
+ [fields?.ipAddress || "ipAddress"]: text(fields?.ipAddress || "ipAddress"),
169
+ [fields?.userAgent || "userAgent"]: text(fields?.userAgent || "userAgent"),
170
+ [fields?.userId || "userId"]: text(fields?.userId || "userId").notNull().references(() => usersTable.id, { onDelete: "cascade" }),
171
+ [fields?.activeOrganizationId || "activeOrganizationId"]: text(fields?.activeOrganizationId || "activeOrganizationId"),
206
172
  ...createAdditionalColumns(additionalFields)
207
173
  });
208
174
  };
209
- var createAccountsTable = (tableName = "accounts", usersTableOrFn = users, fields, userPkField = "id", additionalFields) => {
175
+ var createAccountsTable = (tableName = "accounts", usersTableOrFn = users, fields, additionalFields) => {
210
176
  const usersTable = typeof usersTableOrFn === "function" ? usersTableOrFn() : usersTableOrFn;
211
- const idCol = text(fields?.id || "id").primaryKey();
212
- const accountIdCol = text(fields?.accountId || "accountId").notNull();
213
- const providerIdCol = text(fields?.providerId || "providerId").notNull();
214
- const userIdCol = text(fields?.userId || "userId").notNull().references(() => usersTable[userPkField] || usersTable.id, { onDelete: "cascade" });
215
- const accessTokenCol = text(fields?.accessToken || "accessToken");
216
- const refreshTokenCol = text(fields?.refreshToken || "refreshToken");
217
- const idTokenCol = text(fields?.idToken || "idToken");
218
- const accessTokenExpiresAtCol = integer(fields?.accessTokenExpiresAt || "accessTokenExpiresAt", { mode: "timestamp" });
219
- const refreshTokenExpiresAtCol = integer(fields?.refreshTokenExpiresAt || "refreshTokenExpiresAt", { mode: "timestamp" });
220
- const scopeCol = text(fields?.scope || "scope");
221
- const passwordCol = text(fields?.password || "password");
222
- const createdAtCol = integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull();
223
- const updatedAtCol = integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" }).notNull();
224
177
  return sqliteTable(tableName, {
225
- id: idCol,
226
- [fields?.id || "id"]: idCol,
227
- accountId: accountIdCol,
228
- [fields?.accountId || "accountId"]: accountIdCol,
229
- providerId: providerIdCol,
230
- [fields?.providerId || "providerId"]: providerIdCol,
231
- userId: userIdCol,
232
- [fields?.userId || "userId"]: userIdCol,
233
- accessToken: accessTokenCol,
234
- [fields?.accessToken || "accessToken"]: accessTokenCol,
235
- refreshToken: refreshTokenCol,
236
- [fields?.refreshToken || "refreshToken"]: refreshTokenCol,
237
- idToken: idTokenCol,
238
- [fields?.idToken || "idToken"]: idTokenCol,
239
- accessTokenExpiresAt: accessTokenExpiresAtCol,
240
- [fields?.accessTokenExpiresAt || "accessTokenExpiresAt"]: accessTokenExpiresAtCol,
241
- refreshTokenExpiresAt: refreshTokenExpiresAtCol,
242
- [fields?.refreshTokenExpiresAt || "refreshTokenExpiresAt"]: refreshTokenExpiresAtCol,
243
- scope: scopeCol,
244
- [fields?.scope || "scope"]: scopeCol,
245
- password: passwordCol,
246
- [fields?.password || "password"]: passwordCol,
247
- createdAt: createdAtCol,
248
- [fields?.createdAt || "createdAt"]: createdAtCol,
249
- updatedAt: updatedAtCol,
250
- [fields?.updatedAt || "updatedAt"]: updatedAtCol,
178
+ id: text(fields?.id || "id").primaryKey(),
179
+ [fields?.accountId || "accountId"]: text(fields?.accountId || "accountId").notNull(),
180
+ [fields?.providerId || "providerId"]: text(fields?.providerId || "providerId").notNull(),
181
+ [fields?.userId || "userId"]: text(fields?.userId || "userId").notNull().references(() => usersTable.id, { onDelete: "cascade" }),
182
+ [fields?.accessToken || "accessToken"]: text(fields?.accessToken || "accessToken"),
183
+ [fields?.refreshToken || "refreshToken"]: text(fields?.refreshToken || "refreshToken"),
184
+ [fields?.idToken || "idToken"]: text(fields?.idToken || "idToken"),
185
+ [fields?.accessTokenExpiresAt || "accessTokenExpiresAt"]: integer(fields?.accessTokenExpiresAt || "accessTokenExpiresAt", { mode: "timestamp" }),
186
+ [fields?.refreshTokenExpiresAt || "refreshTokenExpiresAt"]: integer(fields?.refreshTokenExpiresAt || "refreshTokenExpiresAt", { mode: "timestamp" }),
187
+ [fields?.scope || "scope"]: text(fields?.scope || "scope"),
188
+ [fields?.password || "password"]: text(fields?.password || "password"),
189
+ [fields?.createdAt || "createdAt"]: integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull(),
190
+ [fields?.updatedAt || "updatedAt"]: integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" }).notNull(),
251
191
  ...createAdditionalColumns(additionalFields)
252
192
  });
253
193
  };
254
- var createVerificationsTable = (tableName = "verifications", fields, additionalFields) => {
255
- const idCol = text(fields?.id || "id").primaryKey();
256
- const identifierCol = text(fields?.identifier || "identifier").notNull();
257
- const valueCol = text(fields?.value || "value").notNull();
258
- const expiresAtCol = integer(fields?.expiresAt || "expiresAt", { mode: "timestamp" }).notNull();
259
- const createdAtCol = integer(fields?.createdAt || "createdAt", { mode: "timestamp" });
260
- const updatedAtCol = integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" });
261
- return sqliteTable(tableName, {
262
- id: idCol,
263
- [fields?.id || "id"]: idCol,
264
- identifier: identifierCol,
265
- [fields?.identifier || "identifier"]: identifierCol,
266
- value: valueCol,
267
- [fields?.value || "value"]: valueCol,
268
- expiresAt: expiresAtCol,
269
- [fields?.expiresAt || "expiresAt"]: expiresAtCol,
270
- createdAt: createdAtCol,
271
- [fields?.createdAt || "createdAt"]: createdAtCol,
272
- updatedAt: updatedAtCol,
273
- [fields?.updatedAt || "updatedAt"]: updatedAtCol,
274
- ...createAdditionalColumns(additionalFields)
275
- });
276
- };
277
- var createOrganizationsTable = (tableName = "organizations", fields, additionalFields) => {
278
- const idCol = text(fields?.id || "id").primaryKey();
279
- const nameCol = text(fields?.name || "name").notNull();
280
- const slugCol = text(fields?.slug || "slug").unique();
281
- const logoCol = text(fields?.logo || "logo");
282
- const createdAtCol = integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull();
283
- const metadataCol = text(fields?.metadata || "metadata");
284
- return sqliteTable(tableName, {
285
- id: idCol,
286
- [fields?.id || "id"]: idCol,
287
- name: nameCol,
288
- [fields?.name || "name"]: nameCol,
289
- slug: slugCol,
290
- [fields?.slug || "slug"]: slugCol,
291
- logo: logoCol,
292
- [fields?.logo || "logo"]: logoCol,
293
- createdAt: createdAtCol,
294
- [fields?.createdAt || "createdAt"]: createdAtCol,
295
- metadata: metadataCol,
296
- [fields?.metadata || "metadata"]: metadataCol,
297
- ...createAdditionalColumns(additionalFields)
298
- });
299
- };
300
- var createMembersTable = (tableName = "members", organizationsTableOrFn = organizations, usersTableOrFn = users, fields, userPkField = "id", additionalFields) => {
194
+ var createVerificationsTable = (tableName = "verifications", fields, additionalFields) => sqliteTable(tableName, {
195
+ id: text(fields?.id || "id").primaryKey(),
196
+ [fields?.identifier || "identifier"]: text(fields?.identifier || "identifier").notNull(),
197
+ [fields?.value || "value"]: text(fields?.value || "value").notNull(),
198
+ [fields?.expiresAt || "expiresAt"]: integer(fields?.expiresAt || "expiresAt", { mode: "timestamp" }).notNull(),
199
+ [fields?.createdAt || "createdAt"]: integer(fields?.createdAt || "createdAt", { mode: "timestamp" }),
200
+ [fields?.updatedAt || "updatedAt"]: integer(fields?.updatedAt || "updatedAt", { mode: "timestamp" }),
201
+ ...createAdditionalColumns(additionalFields)
202
+ });
203
+ var createOrganizationsTable = (tableName = "organizations", fields, additionalFields) => sqliteTable(tableName, {
204
+ id: text(fields?.id || "id").primaryKey(),
205
+ [fields?.name || "name"]: text(fields?.name || "name").notNull(),
206
+ [fields?.slug || "slug"]: text(fields?.slug || "slug").unique(),
207
+ [fields?.logo || "logo"]: text(fields?.logo || "logo"),
208
+ [fields?.createdAt || "createdAt"]: integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull(),
209
+ [fields?.metadata || "metadata"]: text(fields?.metadata || "metadata"),
210
+ ...createAdditionalColumns(additionalFields)
211
+ });
212
+ var createMembersTable = (tableName = "members", organizationsTableOrFn = organizations, usersTableOrFn = users, fields, additionalFields) => {
301
213
  const organizationsTable = typeof organizationsTableOrFn === "function" ? organizationsTableOrFn() : organizationsTableOrFn;
302
214
  const usersTable = typeof usersTableOrFn === "function" ? usersTableOrFn() : usersTableOrFn;
303
- const idCol = text(fields?.id || "id").primaryKey();
304
- const organizationIdCol = text(fields?.organizationId || "organizationId").notNull().references(() => organizationsTable[fields?.organizationId || "id"] || organizationsTable.id, { onDelete: "cascade" });
305
- const userIdCol = text(fields?.userId || "userId").notNull().references(() => usersTable[userPkField] || usersTable.id, { onDelete: "cascade" });
306
- const roleCol = text(fields?.role || "role").notNull();
307
- const createdAtCol = integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull();
308
215
  return sqliteTable(tableName, {
309
- id: idCol,
310
- [fields?.id || "id"]: idCol,
311
- organizationId: organizationIdCol,
312
- [fields?.organizationId || "organizationId"]: organizationIdCol,
313
- userId: userIdCol,
314
- [fields?.userId || "userId"]: userIdCol,
315
- role: roleCol,
316
- [fields?.role || "role"]: roleCol,
317
- createdAt: createdAtCol,
318
- [fields?.createdAt || "createdAt"]: createdAtCol,
216
+ id: text(fields?.id || "id").primaryKey(),
217
+ [fields?.organizationId || "organizationId"]: text(fields?.organizationId || "organizationId").notNull().references(() => organizationsTable.id, { onDelete: "cascade" }),
218
+ [fields?.userId || "userId"]: text(fields?.userId || "userId").notNull().references(() => usersTable.id, { onDelete: "cascade" }),
219
+ [fields?.role || "role"]: text(fields?.role || "role").notNull(),
220
+ [fields?.createdAt || "createdAt"]: integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull(),
319
221
  ...createAdditionalColumns(additionalFields)
320
222
  });
321
223
  };
322
- var createInvitationsTable = (tableName = "invitations", organizationsTableOrFn = organizations, usersTableOrFn = users, fields, userPkField = "id", additionalFields) => {
224
+ var createInvitationsTable = (tableName = "invitations", organizationsTableOrFn = organizations, usersTableOrFn = users, fields, additionalFields) => {
323
225
  const organizationsTable = typeof organizationsTableOrFn === "function" ? organizationsTableOrFn() : organizationsTableOrFn;
324
226
  const usersTable = typeof usersTableOrFn === "function" ? usersTableOrFn() : usersTableOrFn;
325
- const idCol = text(fields?.id || "id").primaryKey();
326
- const organizationIdCol = text(fields?.organizationId || "organizationId").notNull().references(() => organizationsTable[fields?.organizationId || "id"] || organizationsTable.id, { onDelete: "cascade" });
327
- const emailCol = text(fields?.email || "email").notNull();
328
- const roleCol = text(fields?.role || "role");
329
- const statusCol = text(fields?.status || "status").notNull();
330
- const expiresAtCol = integer(fields?.expiresAt || "expiresAt", { mode: "timestamp" }).notNull();
331
- const inviterIdCol = text(fields?.inviterId || "inviterId").notNull().references(() => usersTable[userPkField] || usersTable.id, { onDelete: "cascade" });
332
- const createdAtCol = integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull();
333
227
  return sqliteTable(tableName, {
334
- id: idCol,
335
- [fields?.id || "id"]: idCol,
336
- organizationId: organizationIdCol,
337
- [fields?.organizationId || "organizationId"]: organizationIdCol,
338
- email: emailCol,
339
- [fields?.email || "email"]: emailCol,
340
- role: roleCol,
341
- [fields?.role || "role"]: roleCol,
342
- status: statusCol,
343
- [fields?.status || "status"]: statusCol,
344
- expiresAt: expiresAtCol,
345
- [fields?.expiresAt || "expiresAt"]: expiresAtCol,
346
- inviterId: inviterIdCol,
347
- [fields?.inviterId || "inviterId"]: inviterIdCol,
348
- createdAt: createdAtCol,
349
- [fields?.createdAt || "createdAt"]: createdAtCol,
228
+ id: text(fields?.id || "id").primaryKey(),
229
+ [fields?.organizationId || "organizationId"]: text(fields?.organizationId || "organizationId").notNull().references(() => organizationsTable.id, { onDelete: "cascade" }),
230
+ [fields?.email || "email"]: text(fields?.email || "email").notNull(),
231
+ [fields?.role || "role"]: text(fields?.role || "role"),
232
+ [fields?.status || "status"]: text(fields?.status || "status").notNull(),
233
+ [fields?.expiresAt || "expiresAt"]: integer(fields?.expiresAt || "expiresAt", { mode: "timestamp" }).notNull(),
234
+ [fields?.inviterId || "inviterId"]: text(fields?.inviterId || "inviterId").notNull().references(() => usersTable.id, { onDelete: "cascade" }),
235
+ [fields?.createdAt || "createdAt"]: integer(fields?.createdAt || "createdAt", { mode: "timestamp" }).notNull(),
350
236
  ...createAdditionalColumns(additionalFields)
351
237
  });
352
238
  };
@@ -496,14 +382,13 @@ var createAuth = (config) => {
496
382
  const orgTableName = schemaMapping?.organization?.tableName || "organizations";
497
383
  const memberTableName = schemaMapping?.member?.tableName || "members";
498
384
  const invitationTableName = schemaMapping?.invitation?.tableName || "invitations";
499
- const userPkField = schemaMapping?.user?.fields?.id || "id";
500
385
  const usersTable = createUsersTable(userTableName, schemaMapping?.user?.fields, schemaMapping?.user?.additionalFields);
501
386
  const organizationsTable = createOrganizationsTable(orgTableName, schemaMapping?.organization?.fields, schemaMapping?.organization?.additionalFields);
502
- const sessionsTable = createSessionsTable(sessionTableName, usersTable, schemaMapping?.session?.fields, userPkField, schemaMapping?.session?.additionalFields);
503
- const accountsTable = createAccountsTable(accountTableName, usersTable, schemaMapping?.account?.fields, userPkField, schemaMapping?.account?.additionalFields);
387
+ const sessionsTable = createSessionsTable(sessionTableName, usersTable, schemaMapping?.session?.fields, schemaMapping?.session?.additionalFields);
388
+ const accountsTable = createAccountsTable(accountTableName, usersTable, schemaMapping?.account?.fields, schemaMapping?.account?.additionalFields);
504
389
  const verificationsTable = createVerificationsTable(verificationTableName, schemaMapping?.verification?.fields, schemaMapping?.verification?.additionalFields);
505
- const membersTable = createMembersTable(memberTableName, organizationsTable, usersTable, schemaMapping?.member?.fields, userPkField, schemaMapping?.member?.additionalFields);
506
- const invitationsTable = createInvitationsTable(invitationTableName, organizationsTable, usersTable, schemaMapping?.invitation?.fields, userPkField, schemaMapping?.invitation?.additionalFields);
390
+ const membersTable = createMembersTable(memberTableName, organizationsTable, usersTable, schemaMapping?.member?.fields, schemaMapping?.member?.additionalFields);
391
+ const invitationsTable = createInvitationsTable(invitationTableName, organizationsTable, usersTable, schemaMapping?.invitation?.fields, schemaMapping?.invitation?.additionalFields);
507
392
  const userKey = schemaMapping?.user?.tableName || "user";
508
393
  const sessionKey = schemaMapping?.session?.tableName || "session";
509
394
  const accountKey = schemaMapping?.account?.tableName || "account";
package/dist/index.js CHANGED
@@ -9,7 +9,7 @@ import {
9
9
  normalizeEmail,
10
10
  schema_exports,
11
11
  verifyTurnstile
12
- } from "./chunk-WI4UHTAT.js";
12
+ } from "./chunk-52ZT54FA.js";
13
13
  import {
14
14
  AuthForm,
15
15
  CreateOrganizationForm,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contentgrowth/content-auth",
3
- "version": "0.4.8",
3
+ "version": "0.4.9",
4
4
  "description": "Better Auth wrapper with UI components for Cloudflare Workers & Pages. Includes custom schema mapping, Turnstile bot protection, and email normalization.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",