@arch-cadre/core 0.0.39 → 0.0.40

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 (106) hide show
  1. package/dist/core/auth/augment.d.ts +18 -0
  2. package/dist/core/auth/augment.d.ts.map +1 -0
  3. package/dist/core/auth/augment.js +53 -0
  4. package/dist/core/auth/email-verification.d.ts +58 -0
  5. package/dist/core/auth/email-verification.d.ts.map +1 -0
  6. package/dist/core/auth/email-verification.js +115 -0
  7. package/dist/core/auth/events.d.ts +53 -0
  8. package/dist/core/auth/events.d.ts.map +1 -0
  9. package/dist/core/auth/events.js +2 -0
  10. package/dist/core/auth/logic.d.ts +106 -0
  11. package/dist/core/auth/logic.d.ts.map +1 -0
  12. package/dist/core/auth/logic.js +264 -0
  13. package/dist/core/auth/password-reset.d.ts +35 -0
  14. package/dist/core/auth/password-reset.d.ts.map +1 -0
  15. package/dist/core/auth/password-reset.js +132 -0
  16. package/dist/core/auth/rbac.d.ts +56 -0
  17. package/dist/core/auth/rbac.d.ts.map +1 -0
  18. package/dist/core/auth/rbac.js +151 -0
  19. package/dist/core/auth/session.d.ts +50 -0
  20. package/dist/core/auth/session.d.ts.map +1 -0
  21. package/dist/core/auth/session.js +167 -0
  22. package/dist/core/auth/types.d.ts +52 -0
  23. package/dist/core/auth/types.d.ts.map +1 -0
  24. package/dist/core/auth/types.js +2 -0
  25. package/dist/core/auth/utils/encode.d.ts +12 -0
  26. package/dist/core/auth/utils/encode.d.ts.map +1 -0
  27. package/dist/core/auth/utils/encode.js +24 -0
  28. package/dist/core/auth/utils/encryption.d.ts +25 -0
  29. package/dist/core/auth/utils/encryption.d.ts.map +1 -0
  30. package/dist/core/auth/utils/encryption.js +68 -0
  31. package/dist/core/auth/validation.d.ts +44 -0
  32. package/dist/core/auth/validation.d.ts.map +1 -0
  33. package/dist/core/auth/validation.js +44 -0
  34. package/dist/core/bootstrap.d.ts +2 -0
  35. package/dist/core/bootstrap.d.ts.map +1 -0
  36. package/dist/core/bootstrap.js +54 -0
  37. package/dist/core/config.d.ts +9 -0
  38. package/dist/core/config.d.ts.map +1 -0
  39. package/dist/core/config.js +6 -0
  40. package/dist/core/config.server.d.ts +12 -0
  41. package/dist/core/config.server.d.ts.map +1 -0
  42. package/dist/core/config.server.js +101 -0
  43. package/dist/core/event-bus.d.ts +14 -0
  44. package/dist/core/event-bus.d.ts.map +1 -0
  45. package/dist/core/event-bus.js +54 -0
  46. package/dist/core/filesystem/index.d.ts +4 -0
  47. package/dist/core/filesystem/index.d.ts.map +1 -0
  48. package/dist/core/filesystem/index.js +27 -0
  49. package/dist/core/filesystem/providers/local.d.ts +8 -0
  50. package/dist/core/filesystem/providers/local.d.ts.map +1 -0
  51. package/dist/core/filesystem/providers/local.js +49 -0
  52. package/dist/core/filesystem/service.d.ts +16 -0
  53. package/dist/core/filesystem/service.d.ts.map +1 -0
  54. package/dist/core/filesystem/service.js +54 -0
  55. package/dist/core/filesystem/types.d.ts +19 -0
  56. package/dist/core/filesystem/types.d.ts.map +1 -0
  57. package/dist/core/filesystem/types.js +2 -0
  58. package/dist/core/notifications/actions.d.ts +54 -0
  59. package/dist/core/notifications/actions.d.ts.map +1 -0
  60. package/dist/core/notifications/actions.js +49 -0
  61. package/dist/core/notifications/index.d.ts +4 -0
  62. package/dist/core/notifications/index.d.ts.map +1 -0
  63. package/dist/core/notifications/index.js +19 -0
  64. package/dist/core/notifications/service.d.ts +7 -0
  65. package/dist/core/notifications/service.d.ts.map +1 -0
  66. package/dist/core/notifications/service.js +35 -0
  67. package/dist/core/notifications/types.d.ts +17 -0
  68. package/dist/core/notifications/types.d.ts.map +1 -0
  69. package/dist/core/notifications/types.js +2 -0
  70. package/dist/core/setup.d.ts +6 -0
  71. package/dist/core/setup.d.ts.map +1 -0
  72. package/dist/core/setup.js +28 -0
  73. package/dist/core/types.d.ts +10 -0
  74. package/dist/core/types.d.ts.map +1 -0
  75. package/dist/core/types.js +2 -0
  76. package/dist/index.d.ts +8 -0
  77. package/dist/index.d.ts.map +1 -0
  78. package/dist/index.js +32 -0
  79. package/dist/server/auth/email.d.ts +10 -0
  80. package/dist/server/auth/email.d.ts.map +1 -0
  81. package/dist/server/auth/email.js +24 -0
  82. package/dist/server/auth/password.d.ts +20 -0
  83. package/dist/server/auth/password.d.ts.map +1 -0
  84. package/dist/server/auth/password.js +38 -0
  85. package/dist/server/auth/types.d.ts +13 -0
  86. package/dist/server/auth/types.d.ts.map +1 -0
  87. package/dist/server/auth/types.js +17 -0
  88. package/dist/server/auth/user.d.ts +54 -0
  89. package/dist/server/auth/user.d.ts.map +1 -0
  90. package/dist/server/auth/user.js +237 -0
  91. package/dist/server/database/inject.d.ts +11 -0
  92. package/dist/server/database/inject.d.ts.map +1 -0
  93. package/dist/server/database/inject.js +33 -0
  94. package/dist/server/database/schema.d.ts +2953 -0
  95. package/dist/server/database/schema.d.ts.map +1 -0
  96. package/dist/server/database/schema.js +195 -0
  97. package/dist/server/database/types.d.ts +12 -0
  98. package/dist/server/database/types.d.ts.map +1 -0
  99. package/dist/server/database/types.js +2 -0
  100. package/dist/server/emails/index.d.ts +23 -0
  101. package/dist/server/emails/index.d.ts.map +1 -0
  102. package/dist/server/emails/index.js +73 -0
  103. package/dist/server.d.ts +25 -0
  104. package/dist/server.d.ts.map +1 -0
  105. package/dist/server.js +48 -0
  106. package/package.json +7 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/server/database/schema.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,OAAO,SAAS,CAAC"}
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.coreSchema = exports.relations = exports.systemModulesTable = exports.notificationTable = exports.passwordResetSessionTable = exports.emailVerificationTable = exports.sessionTable = exports.rolesToPermissionsTable = exports.usersToPermissionsTable = exports.usersToRolesTable = exports.permissionsTable = exports.rolesTable = exports.userTable = void 0;
4
+ const drizzle_orm_1 = require("drizzle-orm");
5
+ const pg_core_1 = require("drizzle-orm/pg-core");
6
+ exports.userTable = (0, pg_core_1.pgTable)("users", {
7
+ id: (0, pg_core_1.text)("id")
8
+ .$defaultFn(() => crypto.randomUUID())
9
+ .notNull()
10
+ .primaryKey(),
11
+ email: (0, pg_core_1.text)("email").notNull().unique(),
12
+ name: (0, pg_core_1.text)("name").notNull(),
13
+ password: (0, pg_core_1.text)("password"),
14
+ image: (0, pg_core_1.text)("image"),
15
+ recovery_code: (0, pg_core_1.bytea)("recovery_code").notNull(),
16
+ emailVerifiedAt: (0, pg_core_1.timestamp)("email_verified_at", { precision: 3 }),
17
+ createdAt: (0, pg_core_1.timestamp)("created_at", { precision: 3 }).notNull().defaultNow(),
18
+ updatedAt: (0, pg_core_1.timestamp)("updated_at", { precision: 3 }),
19
+ });
20
+ exports.rolesTable = (0, pg_core_1.pgTable)("roles", {
21
+ id: (0, pg_core_1.text)("id")
22
+ .$defaultFn(() => crypto.randomUUID())
23
+ .notNull()
24
+ .primaryKey(),
25
+ name: (0, pg_core_1.text)("name").notNull().unique(), // np. "admin", "user"
26
+ description: (0, pg_core_1.text)("description"),
27
+ });
28
+ exports.permissionsTable = (0, pg_core_1.pgTable)("permissions", {
29
+ id: (0, pg_core_1.text)("id")
30
+ .$defaultFn(() => crypto.randomUUID())
31
+ .notNull()
32
+ .primaryKey(),
33
+ name: (0, pg_core_1.text)("name").notNull().unique(), // np. "blog:write"
34
+ description: (0, pg_core_1.text)("description"),
35
+ });
36
+ exports.usersToRolesTable = (0, pg_core_1.pgTable)("users_to_roles", {
37
+ userId: (0, pg_core_1.text)("user_id")
38
+ .notNull()
39
+ .references(() => exports.userTable.id, { onDelete: "cascade" }),
40
+ roleId: (0, pg_core_1.text)("role_id")
41
+ .notNull()
42
+ .references(() => exports.rolesTable.id, { onDelete: "cascade" }),
43
+ }, (t) => [{ pk: (0, drizzle_orm_1.sql) `PRIMARY KEY (${t.userId}, ${t.roleId})` }]);
44
+ exports.usersToPermissionsTable = (0, pg_core_1.pgTable)("users_to_permissions", {
45
+ userId: (0, pg_core_1.text)("user_id")
46
+ .notNull()
47
+ .references(() => exports.userTable.id, { onDelete: "cascade" }),
48
+ permissionId: (0, pg_core_1.text)("permission_id")
49
+ .notNull()
50
+ .references(() => exports.permissionsTable.id, { onDelete: "cascade" }),
51
+ }, (t) => [{ pk: (0, drizzle_orm_1.sql) `PRIMARY KEY (${t.userId}, ${t.permissionId})` }]);
52
+ exports.rolesToPermissionsTable = (0, pg_core_1.pgTable)("roles_to_permissions", {
53
+ roleId: (0, pg_core_1.text)("role_id")
54
+ .notNull()
55
+ .references(() => exports.rolesTable.id, { onDelete: "cascade" }),
56
+ permissionId: (0, pg_core_1.text)("permission_id")
57
+ .notNull()
58
+ .references(() => exports.permissionsTable.id, { onDelete: "cascade" }),
59
+ }, (t) => [{ pk: (0, drizzle_orm_1.sql) `PRIMARY KEY (${t.roleId}, ${t.permissionId})` }]);
60
+ exports.sessionTable = (0, pg_core_1.pgTable)("sessions", {
61
+ id: (0, pg_core_1.text)("id")
62
+ .$defaultFn(() => crypto.randomUUID())
63
+ .notNull()
64
+ .primaryKey(),
65
+ active_organization_id: (0, pg_core_1.text)("active_organization_id"),
66
+ userId: (0, pg_core_1.text)("user_id")
67
+ .notNull()
68
+ .references(() => exports.userTable.id, {
69
+ onDelete: "cascade",
70
+ onUpdate: "cascade",
71
+ }),
72
+ expiresAt: (0, pg_core_1.timestamp)("expires_at", { precision: 3 }).notNull(),
73
+ createdAt: (0, pg_core_1.timestamp)("created_at", { precision: 3 }).notNull().defaultNow(),
74
+ updatedAt: (0, pg_core_1.timestamp)("updated_at", { precision: 3 }),
75
+ });
76
+ exports.emailVerificationTable = (0, pg_core_1.pgTable)("email_verification_requests", {
77
+ id: (0, pg_core_1.text)("id")
78
+ .$defaultFn(() => crypto.randomUUID())
79
+ .notNull()
80
+ .primaryKey(),
81
+ email: (0, pg_core_1.text)("email").notNull(),
82
+ code: (0, pg_core_1.text)("code").notNull(),
83
+ userId: (0, pg_core_1.text)("user_id")
84
+ .notNull()
85
+ .references(() => exports.userTable.id, {
86
+ onDelete: "cascade",
87
+ onUpdate: "cascade",
88
+ }),
89
+ expiresAt: (0, pg_core_1.timestamp)("expires_at", { precision: 3 }).notNull(),
90
+ createdAt: (0, pg_core_1.timestamp)("created_at", { precision: 3 }).notNull().defaultNow(),
91
+ updatedAt: (0, pg_core_1.timestamp)("updated_at", { precision: 3 }),
92
+ });
93
+ exports.passwordResetSessionTable = (0, pg_core_1.pgTable)("password_reset_sessions", {
94
+ id: (0, pg_core_1.text)("id")
95
+ .$defaultFn(() => crypto.randomUUID())
96
+ .notNull()
97
+ .primaryKey(),
98
+ email: (0, pg_core_1.text)("email").notNull(),
99
+ code: (0, pg_core_1.text)("code").notNull(),
100
+ emailVerified: (0, pg_core_1.boolean)("emailVerified").default(false),
101
+ userId: (0, pg_core_1.text)("user_id")
102
+ .notNull()
103
+ .references(() => exports.userTable.id, {
104
+ onDelete: "cascade",
105
+ onUpdate: "cascade",
106
+ }),
107
+ expiresAt: (0, pg_core_1.timestamp)("expires_at", { precision: 3 }).notNull(),
108
+ createdAt: (0, pg_core_1.timestamp)("created_at", { precision: 3 }).notNull().defaultNow(),
109
+ updatedAt: (0, pg_core_1.timestamp)("updated_at", { precision: 3 }),
110
+ });
111
+ exports.notificationTable = (0, pg_core_1.pgTable)("notification", {
112
+ id: (0, pg_core_1.text)("id")
113
+ .$defaultFn(() => crypto.randomUUID())
114
+ .notNull()
115
+ .primaryKey(),
116
+ title: (0, pg_core_1.text)("title").notNull(),
117
+ content: (0, pg_core_1.text)("content"),
118
+ target: (0, pg_core_1.text)("target"),
119
+ type: (0, pg_core_1.text)("type"),
120
+ isRead: (0, pg_core_1.boolean)("isRead").notNull(),
121
+ resourceId: (0, pg_core_1.text)("resource_id"),
122
+ resourceType: (0, pg_core_1.text)("resource_type"),
123
+ userId: (0, pg_core_1.text)("user_id")
124
+ .notNull()
125
+ .references(() => exports.userTable.id, {
126
+ onDelete: "cascade",
127
+ onUpdate: "cascade",
128
+ }),
129
+ createdAt: (0, pg_core_1.timestamp)("created_at", { precision: 3 }).notNull().defaultNow(),
130
+ updatedAt: (0, pg_core_1.timestamp)("updated_at", { precision: 3 }),
131
+ });
132
+ exports.systemModulesTable = (0, pg_core_1.pgTable)("system_modules", {
133
+ id: (0, pg_core_1.text)("id").notNull().primaryKey(),
134
+ enabled: (0, pg_core_1.boolean)("enabled").notNull().default(false),
135
+ installed: (0, pg_core_1.boolean)("installed").notNull().default(false),
136
+ deleted: (0, pg_core_1.boolean)("deleted").notNull().default(false),
137
+ system: (0, pg_core_1.boolean)("system").notNull().default(false),
138
+ config: (0, pg_core_1.text)("config"),
139
+ lastStep: (0, pg_core_1.text)("last_step"), // Przechowuje aktualny etap (np. "Syncing DB")
140
+ updatedAt: (0, pg_core_1.timestamp)("updated_at", { precision: 3 }).defaultNow(),
141
+ });
142
+ exports.relations = (0, drizzle_orm_1.defineRelations)({
143
+ user: exports.userTable,
144
+ emailVerification: exports.emailVerificationTable,
145
+ passwordResetSession: exports.passwordResetSessionTable,
146
+ session: exports.sessionTable,
147
+ notification: exports.notificationTable,
148
+ systemModulesTable: exports.systemModulesTable,
149
+ }, (r) => ({
150
+ user: {
151
+ sessions: r.many.session({
152
+ from: r.user.id,
153
+ to: r.session.userId,
154
+ }),
155
+ emailVerification: r.many.emailVerification({
156
+ from: r.user.id,
157
+ to: r.emailVerification.userId,
158
+ }),
159
+ passwordResetSession: r.many.passwordResetSession({
160
+ from: r.user.id,
161
+ to: r.passwordResetSession.userId,
162
+ }),
163
+ },
164
+ session: {
165
+ user: r.one.user({
166
+ from: r.session.userId,
167
+ to: r.user.id,
168
+ }),
169
+ },
170
+ emailVerification: {
171
+ user: r.one.user({
172
+ from: r.emailVerification.userId,
173
+ to: r.user.id,
174
+ }),
175
+ },
176
+ passwordResetSession: {
177
+ user: r.one.user({
178
+ from: r.passwordResetSession.userId,
179
+ to: r.user.id,
180
+ }),
181
+ },
182
+ }));
183
+ exports.coreSchema = {
184
+ userTable: exports.userTable,
185
+ rolesTable: exports.rolesTable,
186
+ permissionsTable: exports.permissionsTable,
187
+ usersToRolesTable: exports.usersToRolesTable,
188
+ usersToPermissionsTable: exports.usersToPermissionsTable,
189
+ rolesToPermissionsTable: exports.rolesToPermissionsTable,
190
+ sessionTable: exports.sessionTable,
191
+ emailVerificationTable: exports.emailVerificationTable,
192
+ passwordResetSessionTable: exports.passwordResetSessionTable,
193
+ notificationTable: exports.notificationTable,
194
+ systemModulesTable: exports.systemModulesTable,
195
+ };
@@ -0,0 +1,12 @@
1
+ import type { emailVerificationTable, notificationTable, passwordResetSessionTable, sessionTable, userTable } from "./schema";
2
+ export type User = typeof userTable.$inferSelect;
3
+ export type AddUser = typeof userTable.$inferInsert;
4
+ export type Session = typeof sessionTable.$inferSelect;
5
+ export type AddSession = typeof sessionTable.$inferInsert;
6
+ export type Notification = typeof notificationTable.$inferSelect;
7
+ export type AddNotification = typeof notificationTable.$inferInsert;
8
+ export type EmailVerificationRequest = typeof emailVerificationTable.$inferSelect;
9
+ export type AddEmailVerificationRequest = typeof emailVerificationTable.$inferInsert;
10
+ export type PasswordResetSession = typeof passwordResetSessionTable.$inferSelect;
11
+ export type AddPasswordResetSession = typeof passwordResetSessionTable.$inferInsert;
12
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/database/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,yBAAyB,EACzB,YAAY,EACZ,SAAS,EACV,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,IAAI,GAAG,OAAO,SAAS,CAAC,YAAY,CAAC;AACjD,MAAM,MAAM,OAAO,GAAG,OAAO,SAAS,CAAC,YAAY,CAAC;AAEpD,MAAM,MAAM,OAAO,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AACvD,MAAM,MAAM,UAAU,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,OAAO,iBAAiB,CAAC,YAAY,CAAC;AACjE,MAAM,MAAM,eAAe,GAAG,OAAO,iBAAiB,CAAC,YAAY,CAAC;AAEpE,MAAM,MAAM,wBAAwB,GAClC,OAAO,sBAAsB,CAAC,YAAY,CAAC;AAC7C,MAAM,MAAM,2BAA2B,GACrC,OAAO,sBAAsB,CAAC,YAAY,CAAC;AAE7C,MAAM,MAAM,oBAAoB,GAC9B,OAAO,yBAAyB,CAAC,YAAY,CAAC;AAChD,MAAM,MAAM,uBAAuB,GACjC,OAAO,yBAAyB,CAAC,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Sends an email with a verification link.
3
+ * @param email Recipient's email address.
4
+ * @param code Verification code.
5
+ */
6
+ export declare function sendVerifyEmail(email: string, code: string): Promise<void>;
7
+ /**
8
+ * Sends an email with a password reset link.
9
+ * @param email Recipient's email address.
10
+ * @param code Password reset code.
11
+ */
12
+ export declare function sendResetPassword(email: string, code: string): Promise<void>;
13
+ /**
14
+ * Sends an email with a recovery code.
15
+ * @param email Recipient's email address.
16
+ * @param recoveryCode Recovery code
17
+ */
18
+ export declare function sendRecoveryCode(email: string, recoveryCode: string): Promise<void>;
19
+ /**
20
+ * Sends a 2FA code via email.
21
+ */
22
+ export declare function send2FACode(email: string, code: string): Promise<void>;
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/emails/index.ts"],"names":[],"mappings":"AAaA;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAQhE;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAQlE;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iBAQzE;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,iBAW5D"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ "use server";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.sendVerifyEmail = sendVerifyEmail;
5
+ exports.sendResetPassword = sendResetPassword;
6
+ exports.sendRecoveryCode = sendRecoveryCode;
7
+ exports.send2FACode = send2FACode;
8
+ // import nodemailer from "nodemailer";
9
+ // Konfiguracja transportera SMTP
10
+ // const transporter = nodemailer.createTransport({
11
+ // service: "gmail",
12
+ // auth: {
13
+ // user: process.env.GOOGLE_SMTP_APP_USERNAME,
14
+ // pass: process.env.GOOGLE_SMTP_APP_PASSWORD,
15
+ // },
16
+ // });
17
+ /**
18
+ * Sends an email with a verification link.
19
+ * @param email Recipient's email address.
20
+ * @param code Verification code.
21
+ */
22
+ async function sendVerifyEmail(email, code) {
23
+ // const { t } = await getTranslation();
24
+ // await transporter.sendMail({
25
+ // from: `Winkly <${process.env.GOOGLE_SMTP_APP_USERNAME}>`,
26
+ // to: email,
27
+ // subject: t("Verify Email"),
28
+ // text: t("Verify your email address with your code: {{ code }}", { code }),
29
+ // });
30
+ }
31
+ /**
32
+ * Sends an email with a password reset link.
33
+ * @param email Recipient's email address.
34
+ * @param code Password reset code.
35
+ */
36
+ async function sendResetPassword(email, code) {
37
+ // const { t } = await getTranslation();
38
+ // await transporter.sendMail({
39
+ // from: `Winkly <${process.env.GOOGLE_SMTP_APP_USERNAME}>`,
40
+ // to: email,
41
+ // subject: t("Password Reset"),
42
+ // text: t("Verify password reset with code: {{ code }}", { code }),
43
+ // });
44
+ }
45
+ /**
46
+ * Sends an email with a recovery code.
47
+ * @param email Recipient's email address.
48
+ * @param recoveryCode Recovery code
49
+ */
50
+ async function sendRecoveryCode(email, recoveryCode) {
51
+ // const { t } = await getTranslation();
52
+ // await transporter.sendMail({
53
+ // from: `Winkly <${process.env.GOOGLE_SMTP_APP_USERNAME}>`,
54
+ // to: email,
55
+ // subject: t("Recovery Code"),
56
+ // text: t("Your recovery code is: {{ recoveryCode }}", { recoveryCode }),
57
+ // });
58
+ }
59
+ /**
60
+ * Sends a 2FA code via email.
61
+ */
62
+ async function send2FACode(email, code) {
63
+ // const { t } = await getTranslation();
64
+ // await transporter.sendMail({
65
+ // from: `Winkly <${process.env.GOOGLE_SMTP_APP_USERNAME}>`,
66
+ // to: email,
67
+ // subject: t("Your 2FA Code"),
68
+ // text: t(
69
+ // "Your verification code is: {{ code }}. It will expire in 10 minutes.",
70
+ // { code },
71
+ // ),
72
+ // });
73
+ }
@@ -0,0 +1,25 @@
1
+ export * from "./core/auth/email-verification";
2
+ export * from "./core/auth/logic";
3
+ export * from "./core/auth/password-reset";
4
+ export * from "./core/auth/rbac";
5
+ export * from "./core/auth/session";
6
+ export * from "./core/auth/types";
7
+ export * from "./core/auth/utils/encode";
8
+ export * from "./core/auth/utils/encryption";
9
+ export * from "./core/auth/validation";
10
+ export * from "./core/bootstrap";
11
+ export * from "./core/config.server";
12
+ export * from "./core/event-bus";
13
+ export * from "./core/filesystem/service";
14
+ export * from "./core/filesystem/types";
15
+ export * from "./core/notifications/actions";
16
+ export * from "./core/notifications/types";
17
+ export * from "./core/setup";
18
+ export * from "./core/types";
19
+ export * from "./server/auth/email";
20
+ export * from "./server/auth/password";
21
+ export * from "./server/auth/user";
22
+ export * from "./server/database/inject";
23
+ export * from "./server/database/schema";
24
+ export * from "./server/emails/index";
25
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAEA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AAKxC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAE7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
package/dist/server.js ADDED
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ // Server-side Logic (DB, Filesystem, Auth)
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ __exportStar(require("./core/auth/email-verification"), exports);
19
+ __exportStar(require("./core/auth/logic"), exports);
20
+ __exportStar(require("./core/auth/password-reset"), exports);
21
+ __exportStar(require("./core/auth/rbac"), exports);
22
+ __exportStar(require("./core/auth/session"), exports);
23
+ // Shared exports (from types/common logic)
24
+ __exportStar(require("./core/auth/types"), exports);
25
+ __exportStar(require("./core/auth/utils/encode"), exports);
26
+ __exportStar(require("./core/auth/utils/encryption"), exports);
27
+ __exportStar(require("./core/auth/validation"), exports);
28
+ __exportStar(require("./core/bootstrap"), exports);
29
+ __exportStar(require("./core/config.server"), exports);
30
+ __exportStar(require("./core/event-bus"), exports);
31
+ __exportStar(require("./core/filesystem/service"), exports);
32
+ __exportStar(require("./core/filesystem/types"), exports);
33
+ // export * from "./core/modules/lifecycle";
34
+ // export * from "./core/modules/manage";
35
+ // export * from "./core/modules/registry";
36
+ // export * from "./core/modules/ui";
37
+ __exportStar(require("./core/notifications/actions"), exports);
38
+ // export * from "./core/modules/types";
39
+ __exportStar(require("./core/notifications/types"), exports);
40
+ __exportStar(require("./core/setup"), exports);
41
+ __exportStar(require("./core/types"), exports);
42
+ // Server specific database exports
43
+ __exportStar(require("./server/auth/email"), exports);
44
+ __exportStar(require("./server/auth/password"), exports);
45
+ __exportStar(require("./server/auth/user"), exports);
46
+ __exportStar(require("./server/database/inject"), exports);
47
+ __exportStar(require("./server/database/schema"), exports);
48
+ __exportStar(require("./server/emails/index"), exports);
package/package.json CHANGED
@@ -1,11 +1,13 @@
1
1
  {
2
2
  "name": "@arch-cadre/core",
3
- "version": "0.0.39",
3
+ "version": "0.0.40",
4
4
  "type": "module",
5
5
  "description": "Core logic for Kryo framework",
6
+ "types": "./dist/index.d.ts",
7
+ "module": "./dist/index.js",
6
8
  "exports": {
7
- ".": "./dist/index.mjs",
8
- "./server": "./dist/server.mjs",
9
+ ".": "./dist/index.js",
10
+ "./server": "./dist/server.js",
9
11
  "./package.json": "./package.json"
10
12
  },
11
13
  "files": [
@@ -19,7 +21,7 @@
19
21
  "dev:unbuild": "unbuild --stub",
20
22
  "build:unbuild": "unbuild",
21
23
  "dev": "tsdown --watch",
22
- "build": "tsdown"
24
+ "build": "tsc"
23
25
  },
24
26
  "dependencies": {
25
27
  "@oslojs/binary": "^1.0.0",
@@ -48,6 +50,5 @@
48
50
  "swr": "^2.3.8",
49
51
  "tsdown": "^0.20.3",
50
52
  "typescript": "^5"
51
- },
52
- "types": "./dist/index.d.cts"
53
+ }
53
54
  }