@authhero/drizzle 0.31.2 → 0.32.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.
@@ -5,9 +5,16 @@
5
5
  {
6
6
  "idx": 0,
7
7
  "version": "6",
8
- "when": 1772026761829,
9
- "tag": "0000_large_nitro",
8
+ "when": 1775726716499,
9
+ "tag": "0000_good_eternity",
10
+ "breakpoints": true
11
+ },
12
+ {
13
+ "idx": 1,
14
+ "version": "6",
15
+ "when": 1744185600000,
16
+ "tag": "0001_add_custom_domains_domain_unique",
10
17
  "breakpoints": true
11
18
  }
12
19
  ]
13
- }
20
+ }
package/package.json CHANGED
@@ -11,40 +11,50 @@
11
11
  "type": "git",
12
12
  "url": "https://github.com/markusahlstrand/authhero"
13
13
  },
14
- "version": "0.31.2",
14
+ "version": "0.32.0",
15
15
  "files": [
16
16
  "dist",
17
17
  "src/schema",
18
18
  "drizzle"
19
19
  ],
20
- "main": "dist/drizzle.cjs",
21
- "module": "dist/drizzle.mjs",
22
- "types": "dist/drizzle.d.ts",
20
+ "main": "dist/drizzle-adapter.cjs",
21
+ "module": "dist/drizzle-adapter.mjs",
22
+ "types": "dist/drizzle-adapter.d.ts",
23
23
  "exports": {
24
24
  ".": {
25
- "require": "./dist/drizzle.cjs",
26
- "import": "./dist/drizzle.mjs",
27
- "types": "./dist/drizzle.d.ts"
25
+ "require": "./dist/drizzle-adapter.cjs",
26
+ "import": "./dist/drizzle-adapter.mjs",
27
+ "types": "./dist/drizzle-adapter.d.ts"
28
28
  },
29
29
  "./schema/sqlite": {
30
30
  "import": "./src/schema/sqlite/index.ts",
31
31
  "types": "./src/schema/sqlite/index.ts"
32
32
  }
33
33
  },
34
+ "dependencies": {
35
+ "drizzle-orm": "^0.44.2",
36
+ "nanoid": "^5.0.8",
37
+ "@authhero/adapter-interfaces": "0.154.0"
38
+ },
34
39
  "devDependencies": {
40
+ "@hono/zod-openapi": "^0.19.2",
35
41
  "@rollup/plugin-commonjs": "^26.0.1",
36
42
  "@rollup/plugin-node-resolve": "^15.2.3",
43
+ "@types/better-sqlite3": "^7.6.0",
37
44
  "@types/node": "^20.14.9",
45
+ "better-sqlite3": "^11.10.0",
38
46
  "drizzle-kit": "^0.31.4",
47
+ "hono": "^4.6.11",
39
48
  "typescript": "^5.5.2",
40
- "vite": "^5.3.2"
49
+ "vite": "^5.3.2",
50
+ "vitest": "^2.1.5"
41
51
  },
42
- "dependencies": {
43
- "drizzle-orm": "^0.44.2",
44
- "@authhero/adapter-interfaces": "0.152.0"
52
+ "peerDependencies": {
53
+ "hono": "^4.6.8"
45
54
  },
46
55
  "scripts": {
47
56
  "build": "tsc && vite build",
57
+ "test": "vitest run",
48
58
  "db:generate": "drizzle-kit generate",
49
59
  "db:push": "drizzle-kit push"
50
60
  }
@@ -36,23 +36,27 @@ export const connections = sqliteTable(
36
36
  ],
37
37
  );
38
38
 
39
- export const customDomains = sqliteTable("custom_domains", {
40
- custom_domain_id: text("custom_domain_id", { length: 256 }).primaryKey(),
41
- tenant_id: text("tenant_id", { length: 191 })
42
- .notNull()
43
- .references(() => tenants.id, { onDelete: "cascade" }),
44
- domain: text("domain", { length: 255 }).notNull(),
45
- primary: integer("primary", { mode: "boolean" }).notNull(),
46
- status: text("status", { length: 50 }).notNull(),
47
- type: text("type", { length: 50 }).notNull(),
48
- origin_domain_name: text("origin_domain_name", { length: 255 }),
49
- verification: text("verification", { length: 2048 }),
50
- custom_client_ip_header: text("custom_client_ip_header", { length: 50 }),
51
- tls_policy: text("tls_policy", { length: 50 }),
52
- domain_metadata: text("domain_metadata", { length: 2048 }),
53
- created_at: text("created_at", { length: 35 }).notNull(),
54
- updated_at: text("updated_at", { length: 35 }).notNull(),
55
- });
39
+ export const customDomains = sqliteTable(
40
+ "custom_domains",
41
+ {
42
+ custom_domain_id: text("custom_domain_id", { length: 256 }).primaryKey(),
43
+ tenant_id: text("tenant_id", { length: 191 })
44
+ .notNull()
45
+ .references(() => tenants.id, { onDelete: "cascade" }),
46
+ domain: text("domain", { length: 255 }).notNull(),
47
+ primary: integer("primary", { mode: "boolean" }).notNull(),
48
+ status: text("status", { length: 50 }).notNull(),
49
+ type: text("type", { length: 50 }).notNull(),
50
+ origin_domain_name: text("origin_domain_name", { length: 255 }),
51
+ verification: text("verification", { length: 2048 }),
52
+ custom_client_ip_header: text("custom_client_ip_header", { length: 50 }),
53
+ tls_policy: text("tls_policy", { length: 50 }),
54
+ domain_metadata: text("domain_metadata", { length: 2048 }),
55
+ created_at: text("created_at", { length: 35 }).notNull(),
56
+ updated_at: text("updated_at", { length: 35 }).notNull(),
57
+ },
58
+ (table) => [uniqueIndex("custom_domains_domain_unique").on(table.domain)],
59
+ );
56
60
 
57
61
  export const domains = sqliteTable("domains", {
58
62
  id: text("id", { length: 255 }).primaryKey(),
@@ -35,3 +35,6 @@ export * from "./authenticationMethods";
35
35
 
36
36
  // Logs
37
37
  export * from "./logs";
38
+
39
+ // Outbox
40
+ export * from "./outbox";
@@ -0,0 +1,29 @@
1
+ import { sqliteTable, text, integer, index } from "drizzle-orm/sqlite-core";
2
+ import { tenants } from "./tenants";
3
+
4
+ export const outboxEvents = sqliteTable(
5
+ "outbox_events",
6
+ {
7
+ id: text("id", { length: 26 }).primaryKey(),
8
+ tenant_id: text("tenant_id", { length: 191 })
9
+ .notNull()
10
+ .references(() => tenants.id, { onDelete: "cascade" }),
11
+ event_type: text("event_type", { length: 64 }).notNull(),
12
+ log_type: text("log_type", { length: 64 }).notNull(),
13
+ aggregate_type: text("aggregate_type", { length: 64 }).notNull(),
14
+ aggregate_id: text("aggregate_id", { length: 255 }).notNull(),
15
+ payload: text("payload").notNull(),
16
+ created_at: text("created_at", { length: 35 }).notNull(),
17
+ processed_at: text("processed_at", { length: 35 }),
18
+ retry_count: integer("retry_count").notNull().default(0),
19
+ next_retry_at: text("next_retry_at", { length: 35 }),
20
+ error: text("error"),
21
+ claimed_by: text("claimed_by", { length: 255 }),
22
+ claim_expires_at: text("claim_expires_at", { length: 35 }),
23
+ },
24
+ (table) => [
25
+ index("idx_outbox_events_tenant_id").on(table.tenant_id),
26
+ index("idx_outbox_events_processed_at").on(table.processed_at),
27
+ index("idx_outbox_events_claimed_by").on(table.claimed_by),
28
+ ],
29
+ );