@kyro-cms/core 0.1.0 → 0.1.2

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.
Files changed (74) hide show
  1. package/README.md +556 -130
  2. package/dist/bootstrap-2WJK6PG7.cjs +29 -0
  3. package/dist/bootstrap-2WJK6PG7.cjs.map +1 -0
  4. package/dist/bootstrap-Q2TWUQF3.js +4 -0
  5. package/dist/bootstrap-Q2TWUQF3.js.map +1 -0
  6. package/dist/chunk-3QX6KG2S.js +2125 -0
  7. package/dist/chunk-3QX6KG2S.js.map +1 -0
  8. package/dist/chunk-5AOILNGY.cjs +212 -0
  9. package/dist/chunk-5AOILNGY.cjs.map +1 -0
  10. package/dist/{chunk-DKSMFC3L.js → chunk-EINVJPFM.js} +2 -2
  11. package/dist/{chunk-DKSMFC3L.js.map → chunk-EINVJPFM.js.map} +1 -1
  12. package/dist/chunk-F5B64H5S.cjs +2149 -0
  13. package/dist/chunk-F5B64H5S.cjs.map +1 -0
  14. package/dist/chunk-I4BORBXT.cjs +914 -0
  15. package/dist/chunk-I4BORBXT.cjs.map +1 -0
  16. package/dist/chunk-KA3UOIFC.js +206 -0
  17. package/dist/chunk-KA3UOIFC.js.map +1 -0
  18. package/dist/chunk-KWTKEBHM.cjs +176 -0
  19. package/dist/chunk-KWTKEBHM.cjs.map +1 -0
  20. package/dist/chunk-M4JFHQ5J.js +170 -0
  21. package/dist/chunk-M4JFHQ5J.js.map +1 -0
  22. package/dist/chunk-PZ5AY32C.js +9 -0
  23. package/dist/chunk-PZ5AY32C.js.map +1 -0
  24. package/dist/chunk-Q7SFCCGT.cjs +11 -0
  25. package/dist/chunk-Q7SFCCGT.cjs.map +1 -0
  26. package/dist/chunk-U4CHJTWX.cjs +94 -0
  27. package/dist/chunk-U4CHJTWX.cjs.map +1 -0
  28. package/dist/{chunk-3Q3FS5J4.cjs → chunk-V3B25QOK.cjs} +2 -2
  29. package/dist/{chunk-3Q3FS5J4.cjs.map → chunk-V3B25QOK.cjs.map} +1 -1
  30. package/dist/chunk-V67YXRBT.js +899 -0
  31. package/dist/chunk-V67YXRBT.js.map +1 -0
  32. package/dist/chunk-XLMVCGXA.js +86 -0
  33. package/dist/chunk-XLMVCGXA.js.map +1 -0
  34. package/dist/cli/index.cjs +106 -14
  35. package/dist/cli/index.cjs.map +1 -1
  36. package/dist/cli/index.js +106 -14
  37. package/dist/cli/index.js.map +1 -1
  38. package/dist/database-37KXWUER.js +5 -0
  39. package/dist/database-37KXWUER.js.map +1 -0
  40. package/dist/database-LJKD3HE4.cjs +22 -0
  41. package/dist/database-LJKD3HE4.cjs.map +1 -0
  42. package/dist/drizzle/index.cjs +25 -5
  43. package/dist/drizzle/index.d.cts +5 -49
  44. package/dist/drizzle/index.d.ts +5 -49
  45. package/dist/drizzle/index.js +5 -1
  46. package/dist/graphql/index.cjs +1 -0
  47. package/dist/graphql/index.js +1 -0
  48. package/dist/index-BVFlb7uU.d.ts +192 -0
  49. package/dist/index-CzkEHKqu.d.cts +192 -0
  50. package/dist/index.cjs +1203 -23
  51. package/dist/index.cjs.map +1 -1
  52. package/dist/index.d.cts +382 -68
  53. package/dist/index.d.ts +382 -68
  54. package/dist/index.js +1110 -20
  55. package/dist/index.js.map +1 -1
  56. package/dist/mongodb/index.cjs +1 -0
  57. package/dist/mongodb/index.js +1 -0
  58. package/dist/postgres-auth-adapter-CYZAVPPP.cjs +14 -0
  59. package/dist/postgres-auth-adapter-CYZAVPPP.cjs.map +1 -0
  60. package/dist/postgres-auth-adapter-LTDUGBMB.js +5 -0
  61. package/dist/postgres-auth-adapter-LTDUGBMB.js.map +1 -0
  62. package/dist/rest/index.cjs +1 -0
  63. package/dist/rest/index.js +1 -0
  64. package/dist/templates/index.cjs +101 -0
  65. package/dist/templates/index.cjs.map +1 -0
  66. package/dist/templates/index.d.cts +55 -0
  67. package/dist/templates/index.d.ts +55 -0
  68. package/dist/templates/index.js +4 -0
  69. package/dist/templates/index.js.map +1 -0
  70. package/dist/trpc/index.cjs +1 -0
  71. package/dist/trpc/index.js +1 -0
  72. package/dist/ws/index.cjs +1 -0
  73. package/dist/ws/index.js +1 -0
  74. package/package.json +40 -6
@@ -2,6 +2,7 @@
2
2
 
3
3
  var chunkHT6VE4NW_cjs = require('../chunk-HT6VE4NW.cjs');
4
4
  require('../chunk-RLTG4YZM.cjs');
5
+ require('../chunk-Q7SFCCGT.cjs');
5
6
 
6
7
 
7
8
 
@@ -1,4 +1,5 @@
1
1
  export { MongoDBAdapter, createMongoDBAdapter } from '../chunk-DIC236EW.js';
2
2
  import '../chunk-BXMWDUED.js';
3
+ import '../chunk-PZ5AY32C.js';
3
4
  //# sourceMappingURL=index.js.map
4
5
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var chunkKWTKEBHM_cjs = require('./chunk-KWTKEBHM.cjs');
4
+ require('./chunk-5AOILNGY.cjs');
5
+ require('./chunk-Q7SFCCGT.cjs');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, "PostgresAuthAdapter", {
10
+ enumerable: true,
11
+ get: function () { return chunkKWTKEBHM_cjs.PostgresAuthAdapter; }
12
+ });
13
+ //# sourceMappingURL=postgres-auth-adapter-CYZAVPPP.cjs.map
14
+ //# sourceMappingURL=postgres-auth-adapter-CYZAVPPP.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"postgres-auth-adapter-CYZAVPPP.cjs"}
@@ -0,0 +1,5 @@
1
+ export { PostgresAuthAdapter } from './chunk-M4JFHQ5J.js';
2
+ import './chunk-KA3UOIFC.js';
3
+ import './chunk-PZ5AY32C.js';
4
+ //# sourceMappingURL=postgres-auth-adapter-LTDUGBMB.js.map
5
+ //# sourceMappingURL=postgres-auth-adapter-LTDUGBMB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"postgres-auth-adapter-LTDUGBMB.js"}
@@ -2,6 +2,7 @@
2
2
 
3
3
  var chunkUEG7KMKC_cjs = require('../chunk-UEG7KMKC.cjs');
4
4
  require('../chunk-R3XIBBAW.cjs');
5
+ require('../chunk-Q7SFCCGT.cjs');
5
6
 
6
7
 
7
8
 
@@ -1,4 +1,5 @@
1
1
  export { createHonoApp, createRESTAPI } from '../chunk-YPAFJ7EV.js';
2
2
  import '../chunk-SDMNUYVU.js';
3
+ import '../chunk-PZ5AY32C.js';
3
4
  //# sourceMappingURL=index.js.map
4
5
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,101 @@
1
+ 'use strict';
2
+
3
+ var chunkF5B64H5S_cjs = require('../chunk-F5B64H5S.cjs');
4
+ require('../chunk-Q7SFCCGT.cjs');
5
+
6
+
7
+
8
+ Object.defineProperty(exports, "accessSettingsGlobal", {
9
+ enumerable: true,
10
+ get: function () { return chunkF5B64H5S_cjs.accessSettingsGlobal; }
11
+ });
12
+ Object.defineProperty(exports, "allSettingsGlobals", {
13
+ enumerable: true,
14
+ get: function () { return chunkF5B64H5S_cjs.allSettingsGlobals; }
15
+ });
16
+ Object.defineProperty(exports, "blogCollections", {
17
+ enumerable: true,
18
+ get: function () { return chunkF5B64H5S_cjs.blogCollections; }
19
+ });
20
+ Object.defineProperty(exports, "blogGlobals", {
21
+ enumerable: true,
22
+ get: function () { return chunkF5B64H5S_cjs.blogGlobals; }
23
+ });
24
+ Object.defineProperty(exports, "coreSettingsGlobals", {
25
+ enumerable: true,
26
+ get: function () { return chunkF5B64H5S_cjs.coreSettingsGlobals; }
27
+ });
28
+ Object.defineProperty(exports, "createTemplateConfig", {
29
+ enumerable: true,
30
+ get: function () { return chunkF5B64H5S_cjs.createTemplateConfig; }
31
+ });
32
+ Object.defineProperty(exports, "ecommerceCollections", {
33
+ enumerable: true,
34
+ get: function () { return chunkF5B64H5S_cjs.ecommerceCollections; }
35
+ });
36
+ Object.defineProperty(exports, "ecommerceGlobals", {
37
+ enumerable: true,
38
+ get: function () { return chunkF5B64H5S_cjs.ecommerceGlobals; }
39
+ });
40
+ Object.defineProperty(exports, "ecommerceSettingsGlobals", {
41
+ enumerable: true,
42
+ get: function () { return chunkF5B64H5S_cjs.ecommerceSettingsGlobals; }
43
+ });
44
+ Object.defineProperty(exports, "emailSettingsGlobal", {
45
+ enumerable: true,
46
+ get: function () { return chunkF5B64H5S_cjs.emailSettingsGlobal; }
47
+ });
48
+ Object.defineProperty(exports, "getSettingsForTemplate", {
49
+ enumerable: true,
50
+ get: function () { return chunkF5B64H5S_cjs.getSettingsForTemplate; }
51
+ });
52
+ Object.defineProperty(exports, "kitchenSinkCollections", {
53
+ enumerable: true,
54
+ get: function () { return chunkF5B64H5S_cjs.kitchenSinkCollections; }
55
+ });
56
+ Object.defineProperty(exports, "mediaCollection", {
57
+ enumerable: true,
58
+ get: function () { return chunkF5B64H5S_cjs.mediaCollection; }
59
+ });
60
+ Object.defineProperty(exports, "mediaCollections", {
61
+ enumerable: true,
62
+ get: function () { return chunkF5B64H5S_cjs.mediaCollections; }
63
+ });
64
+ Object.defineProperty(exports, "mediaFoldersCollection", {
65
+ enumerable: true,
66
+ get: function () { return chunkF5B64H5S_cjs.mediaFoldersCollection; }
67
+ });
68
+ Object.defineProperty(exports, "minimalCollections", {
69
+ enumerable: true,
70
+ get: function () { return chunkF5B64H5S_cjs.minimalCollections; }
71
+ });
72
+ Object.defineProperty(exports, "paymentSettingsGlobal", {
73
+ enumerable: true,
74
+ get: function () { return chunkF5B64H5S_cjs.paymentSettingsGlobal; }
75
+ });
76
+ Object.defineProperty(exports, "seoSettingsGlobal", {
77
+ enumerable: true,
78
+ get: function () { return chunkF5B64H5S_cjs.seoSettingsGlobal; }
79
+ });
80
+ Object.defineProperty(exports, "settingsBySlug", {
81
+ enumerable: true,
82
+ get: function () { return chunkF5B64H5S_cjs.settingsBySlug; }
83
+ });
84
+ Object.defineProperty(exports, "siteSettingsGlobal", {
85
+ enumerable: true,
86
+ get: function () { return chunkF5B64H5S_cjs.siteSettingsGlobal; }
87
+ });
88
+ Object.defineProperty(exports, "socialSettingsGlobal", {
89
+ enumerable: true,
90
+ get: function () { return chunkF5B64H5S_cjs.socialSettingsGlobal; }
91
+ });
92
+ Object.defineProperty(exports, "storageSettingsGlobal", {
93
+ enumerable: true,
94
+ get: function () { return chunkF5B64H5S_cjs.storageSettingsGlobal; }
95
+ });
96
+ Object.defineProperty(exports, "storeSettingsGlobal", {
97
+ enumerable: true,
98
+ get: function () { return chunkF5B64H5S_cjs.storeSettingsGlobal; }
99
+ });
100
+ //# sourceMappingURL=index.cjs.map
101
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
@@ -0,0 +1,55 @@
1
+ import { C as CollectionConfig, G as GlobalConfig } from '../types-BGM5MV_K.cjs';
2
+
3
+ declare const minimalCollections: Record<string, CollectionConfig>;
4
+
5
+ declare const blogCollections: Record<string, CollectionConfig>;
6
+
7
+ declare const blogGlobals: GlobalConfig[];
8
+
9
+ declare const ecommerceCollections: Record<string, CollectionConfig>;
10
+ declare const ecommerceGlobals: GlobalConfig[];
11
+
12
+ declare const kitchenSinkCollections: Record<string, CollectionConfig>;
13
+
14
+ declare const mediaCollection: CollectionConfig;
15
+ declare const mediaFoldersCollection: CollectionConfig;
16
+ declare const mediaCollections: CollectionConfig[];
17
+
18
+ declare const siteSettingsGlobal: GlobalConfig;
19
+
20
+ declare const seoSettingsGlobal: GlobalConfig;
21
+
22
+ declare const socialSettingsGlobal: GlobalConfig;
23
+
24
+ declare const emailSettingsGlobal: GlobalConfig;
25
+
26
+ declare const storageSettingsGlobal: GlobalConfig;
27
+
28
+ declare const accessSettingsGlobal: GlobalConfig;
29
+
30
+ declare const storeSettingsGlobal: GlobalConfig;
31
+
32
+ declare const paymentSettingsGlobal: GlobalConfig;
33
+
34
+ declare const allSettingsGlobals: GlobalConfig[];
35
+ declare const coreSettingsGlobals: GlobalConfig[];
36
+ declare const ecommerceSettingsGlobals: GlobalConfig[];
37
+ declare const settingsBySlug: Record<string, GlobalConfig>;
38
+ declare function getSettingsForTemplate(template: "minimal" | "blog" | "ecommerce" | "kitchen-sink"): GlobalConfig[];
39
+
40
+ interface TemplateConfig {
41
+ collections?: CollectionConfig[];
42
+ globals?: GlobalConfig[];
43
+ }
44
+ type TemplateType = "minimal" | "blog" | "ecommerce" | "kitchen-sink";
45
+ interface CreateTemplateConfigOptions extends TemplateConfig {
46
+ template?: TemplateType;
47
+ collections?: CollectionConfig[];
48
+ globals?: GlobalConfig[];
49
+ includeMedia?: boolean;
50
+ includeSettings?: "all" | "core" | "ecommerce" | "site" | "seo" | "social" | "email" | "storage" | "access" | "store" | "payments" | string[];
51
+ excludeSettings?: string[];
52
+ }
53
+ declare function createTemplateConfig(options: CreateTemplateConfigOptions): TemplateConfig;
54
+
55
+ export { type CreateTemplateConfigOptions, type TemplateConfig, type TemplateType, accessSettingsGlobal, allSettingsGlobals, blogCollections, blogGlobals, coreSettingsGlobals, createTemplateConfig, ecommerceCollections, ecommerceGlobals, ecommerceSettingsGlobals, emailSettingsGlobal, getSettingsForTemplate, kitchenSinkCollections, mediaCollection, mediaCollections, mediaFoldersCollection, minimalCollections, paymentSettingsGlobal, seoSettingsGlobal, settingsBySlug, siteSettingsGlobal, socialSettingsGlobal, storageSettingsGlobal, storeSettingsGlobal };
@@ -0,0 +1,55 @@
1
+ import { C as CollectionConfig, G as GlobalConfig } from '../types-BGM5MV_K.js';
2
+
3
+ declare const minimalCollections: Record<string, CollectionConfig>;
4
+
5
+ declare const blogCollections: Record<string, CollectionConfig>;
6
+
7
+ declare const blogGlobals: GlobalConfig[];
8
+
9
+ declare const ecommerceCollections: Record<string, CollectionConfig>;
10
+ declare const ecommerceGlobals: GlobalConfig[];
11
+
12
+ declare const kitchenSinkCollections: Record<string, CollectionConfig>;
13
+
14
+ declare const mediaCollection: CollectionConfig;
15
+ declare const mediaFoldersCollection: CollectionConfig;
16
+ declare const mediaCollections: CollectionConfig[];
17
+
18
+ declare const siteSettingsGlobal: GlobalConfig;
19
+
20
+ declare const seoSettingsGlobal: GlobalConfig;
21
+
22
+ declare const socialSettingsGlobal: GlobalConfig;
23
+
24
+ declare const emailSettingsGlobal: GlobalConfig;
25
+
26
+ declare const storageSettingsGlobal: GlobalConfig;
27
+
28
+ declare const accessSettingsGlobal: GlobalConfig;
29
+
30
+ declare const storeSettingsGlobal: GlobalConfig;
31
+
32
+ declare const paymentSettingsGlobal: GlobalConfig;
33
+
34
+ declare const allSettingsGlobals: GlobalConfig[];
35
+ declare const coreSettingsGlobals: GlobalConfig[];
36
+ declare const ecommerceSettingsGlobals: GlobalConfig[];
37
+ declare const settingsBySlug: Record<string, GlobalConfig>;
38
+ declare function getSettingsForTemplate(template: "minimal" | "blog" | "ecommerce" | "kitchen-sink"): GlobalConfig[];
39
+
40
+ interface TemplateConfig {
41
+ collections?: CollectionConfig[];
42
+ globals?: GlobalConfig[];
43
+ }
44
+ type TemplateType = "minimal" | "blog" | "ecommerce" | "kitchen-sink";
45
+ interface CreateTemplateConfigOptions extends TemplateConfig {
46
+ template?: TemplateType;
47
+ collections?: CollectionConfig[];
48
+ globals?: GlobalConfig[];
49
+ includeMedia?: boolean;
50
+ includeSettings?: "all" | "core" | "ecommerce" | "site" | "seo" | "social" | "email" | "storage" | "access" | "store" | "payments" | string[];
51
+ excludeSettings?: string[];
52
+ }
53
+ declare function createTemplateConfig(options: CreateTemplateConfigOptions): TemplateConfig;
54
+
55
+ export { type CreateTemplateConfigOptions, type TemplateConfig, type TemplateType, accessSettingsGlobal, allSettingsGlobals, blogCollections, blogGlobals, coreSettingsGlobals, createTemplateConfig, ecommerceCollections, ecommerceGlobals, ecommerceSettingsGlobals, emailSettingsGlobal, getSettingsForTemplate, kitchenSinkCollections, mediaCollection, mediaCollections, mediaFoldersCollection, minimalCollections, paymentSettingsGlobal, seoSettingsGlobal, settingsBySlug, siteSettingsGlobal, socialSettingsGlobal, storageSettingsGlobal, storeSettingsGlobal };
@@ -0,0 +1,4 @@
1
+ export { accessSettingsGlobal, allSettingsGlobals, blogCollections, blogGlobals, coreSettingsGlobals, createTemplateConfig, ecommerceCollections, ecommerceGlobals, ecommerceSettingsGlobals, emailSettingsGlobal, getSettingsForTemplate, kitchenSinkCollections, mediaCollection, mediaCollections, mediaFoldersCollection, minimalCollections, paymentSettingsGlobal, seoSettingsGlobal, settingsBySlug, siteSettingsGlobal, socialSettingsGlobal, storageSettingsGlobal, storeSettingsGlobal } from '../chunk-3QX6KG2S.js';
2
+ import '../chunk-PZ5AY32C.js';
3
+ //# sourceMappingURL=index.js.map
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -2,6 +2,7 @@
2
2
 
3
3
  var chunk3VZCX4DF_cjs = require('../chunk-3VZCX4DF.cjs');
4
4
  require('../chunk-R3XIBBAW.cjs');
5
+ require('../chunk-Q7SFCCGT.cjs');
5
6
 
6
7
 
7
8
 
@@ -1,4 +1,5 @@
1
1
  export { createContext, createCountProcedure, createCreateProcedure, createDeleteProcedure, createDynamicRouter, createFindByIDProcedure, createFindProcedure, createKyroServer, createUpdateProcedure } from '../chunk-UEYC46RL.js';
2
2
  import '../chunk-SDMNUYVU.js';
3
+ import '../chunk-PZ5AY32C.js';
3
4
  //# sourceMappingURL=index.js.map
4
5
  //# sourceMappingURL=index.js.map
package/dist/ws/index.cjs CHANGED
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkDVD5P72E_cjs = require('../chunk-DVD5P72E.cjs');
4
+ require('../chunk-Q7SFCCGT.cjs');
4
5
 
5
6
 
6
7
 
package/dist/ws/index.js CHANGED
@@ -1,3 +1,4 @@
1
1
  export { KyroPubSub, KyroWSServer, PubSub, createWSServer } from '../chunk-3TPQ2BU6.js';
2
+ import '../chunk-PZ5AY32C.js';
2
3
  //# sourceMappingURL=index.js.map
3
4
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,8 +1,17 @@
1
1
  {
2
2
  "name": "@kyro-cms/core",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Astro-native headless CMS with multi-database adapters, multi-protocol APIs, and multi-vendor support",
5
+ "private": false,
5
6
  "type": "module",
7
+ "author": {
8
+ "name": "Kyro CMS",
9
+ "url": "https://kyro.dev"
10
+ },
11
+ "workspaces": [
12
+ ".",
13
+ "packages/create-kyro"
14
+ ],
6
15
  "main": "./dist/index.js",
7
16
  "module": "./dist/index.js",
8
17
  "types": "./dist/index.d.ts",
@@ -35,6 +44,10 @@
35
44
  "./mongodb": {
36
45
  "types": "./dist/mongodb/index.d.ts",
37
46
  "import": "./dist/mongodb/index.js"
47
+ },
48
+ "./templates": {
49
+ "types": "./dist/templates/index.d.ts",
50
+ "import": "./dist/templates/index.js"
38
51
  }
39
52
  },
40
53
  "files": [
@@ -49,7 +62,12 @@
49
62
  "typecheck": "tsc --noEmit",
50
63
  "lint": "eslint src/",
51
64
  "format": "prettier --write \"src/**/*.ts\"",
52
- "generate": "node --loader ts-node/esm scripts/generate-types.ts"
65
+ "generate": "node --loader ts-node/esm scripts/generate-types.ts",
66
+ "db:generate": "drizzle-kit generate",
67
+ "db:migrate": "drizzle-kit migrate",
68
+ "db:push": "drizzle-kit push",
69
+ "db:studio": "drizzle-kit studio",
70
+ "db:seed": "tsx src/database/drizzle/seed.ts"
53
71
  },
54
72
  "bin": {
55
73
  "kyro": "./dist/cli/index.js"
@@ -64,25 +82,38 @@
64
82
  "websocket",
65
83
  "drizzle",
66
84
  "mongodb",
67
- "multitenant"
85
+ "multitenant",
86
+ "ecommerce",
87
+ "admin"
68
88
  ],
69
89
  "license": "MIT",
90
+ "repository": {
91
+ "type": "git",
92
+ "url": "https://github.com/danielDozie/kyro-cms.git"
93
+ },
94
+ "bugs": {
95
+ "url": "https://github.com/danielDozie/kyro-cms/issues"
96
+ },
97
+ "homepage": "https://github.com/danielDozie/kyro-cms#readme",
70
98
  "dependencies": {
71
99
  "@trpc/client": "^11.0.0",
72
100
  "@trpc/react-query": "^11.0.0",
73
101
  "@trpc/server": "^11.0.0",
74
102
  "bcrypt": "^5.1.1",
103
+ "bcryptjs": "^3.0.3",
75
104
  "chalk": "^5.4.1",
76
105
  "commander": "^13.1.0",
77
- "drizzle-kit": "^0.31.0",
78
- "drizzle-orm": "^0.44.0",
106
+ "drizzle-orm": "^0.44.7",
79
107
  "esbuild": "^0.25.0",
80
108
  "glob": "^11.0.1",
81
109
  "graphql": "^16.10.0",
82
110
  "hono": "^4.7.0",
111
+ "ioredis": "^5.10.1",
83
112
  "jsonwebtoken": "^9.0.2",
84
113
  "mongodb": "^6.12.0",
114
+ "nodemailer": "^8.0.4",
85
115
  "ora": "^8.2.0",
116
+ "postgres": "^3.4.8",
86
117
  "ws": "^8.18.0",
87
118
  "zod": "^3.24.0"
88
119
  },
@@ -91,8 +122,11 @@
91
122
  "@types/better-sqlite3": "^7.6.13",
92
123
  "@types/jsonwebtoken": "^9.0.9",
93
124
  "@types/node": "^22.13.0",
125
+ "@types/nodemailer": "^7.0.11",
126
+ "@types/pg": "^8.20.0",
94
127
  "@types/ws": "^8.18.1",
95
128
  "better-sqlite3": "^11.8.1",
129
+ "drizzle-kit": "^0.31.10",
96
130
  "eslint": "^9.20.0",
97
131
  "mysql2": "^3.12.0",
98
132
  "pg": "^8.13.1",
@@ -117,4 +151,4 @@
117
151
  "optional": true
118
152
  }
119
153
  }
120
- }
154
+ }