@intlayer/backend 5.7.3 → 5.7.4
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/cjs/controllers/dictionary.controller.cjs.map +1 -1
- package/dist/cjs/controllers/newsletter.controller.cjs +12 -13
- package/dist/cjs/controllers/newsletter.controller.cjs.map +1 -1
- package/dist/cjs/controllers/organization.controller.cjs +28 -41
- package/dist/cjs/controllers/organization.controller.cjs.map +1 -1
- package/dist/cjs/controllers/project.controller.cjs +7 -1
- package/dist/cjs/controllers/project.controller.cjs.map +1 -1
- package/dist/cjs/controllers/projectAccessKey.controller.cjs +9 -3
- package/dist/cjs/controllers/projectAccessKey.controller.cjs.map +1 -1
- package/dist/cjs/controllers/stripe.controller.cjs +15 -3
- package/dist/cjs/controllers/stripe.controller.cjs.map +1 -1
- package/dist/cjs/controllers/tag.controller.cjs +4 -6
- package/dist/cjs/controllers/tag.controller.cjs.map +1 -1
- package/dist/cjs/controllers/user.controller.cjs +19 -14
- package/dist/cjs/controllers/user.controller.cjs.map +1 -1
- package/dist/cjs/emails/OAuthTokenCreatedEmail.cjs +5 -7
- package/dist/cjs/emails/OAuthTokenCreatedEmail.cjs.map +1 -1
- package/dist/cjs/schemas/dictionary.schema.cjs +1 -1
- package/dist/cjs/schemas/dictionary.schema.cjs.map +1 -1
- package/dist/cjs/schemas/discussion.schema.cjs +1 -1
- package/dist/cjs/schemas/discussion.schema.cjs.map +1 -1
- package/dist/cjs/schemas/oAuth2.schema.cjs +1 -1
- package/dist/cjs/schemas/oAuth2.schema.cjs.map +1 -1
- package/dist/cjs/schemas/organization.schema.cjs +1 -1
- package/dist/cjs/schemas/organization.schema.cjs.map +1 -1
- package/dist/cjs/schemas/plans.schema.cjs +1 -1
- package/dist/cjs/schemas/plans.schema.cjs.map +1 -1
- package/dist/cjs/schemas/project.schema.cjs +1 -1
- package/dist/cjs/schemas/project.schema.cjs.map +1 -1
- package/dist/cjs/schemas/session.schema.cjs +1 -1
- package/dist/cjs/schemas/session.schema.cjs.map +1 -1
- package/dist/cjs/schemas/tag.schema.cjs +1 -1
- package/dist/cjs/schemas/tag.schema.cjs.map +1 -1
- package/dist/cjs/schemas/user.schema.cjs +1 -1
- package/dist/cjs/schemas/user.schema.cjs.map +1 -1
- package/dist/cjs/types/organization.types.cjs.map +1 -1
- package/dist/cjs/types/project.types.cjs.map +1 -1
- package/dist/cjs/utils/AI/askDocQuestion/askDocQuestion.cjs +3 -0
- package/dist/cjs/utils/AI/askDocQuestion/askDocQuestion.cjs.map +1 -1
- package/dist/cjs/utils/auth/getAuth.cjs +8 -5
- package/dist/cjs/utils/auth/getAuth.cjs.map +1 -1
- package/dist/cjs/utils/errors/errorCodes.cjs +13 -0
- package/dist/cjs/utils/errors/errorCodes.cjs.map +1 -1
- package/dist/cjs/utils/mapper/project.cjs +1 -2
- package/dist/cjs/utils/mapper/project.cjs.map +1 -1
- package/dist/cjs/utils/mapper/session.cjs +37 -0
- package/dist/cjs/utils/mapper/session.cjs.map +1 -0
- package/dist/cjs/utils/permissions.cjs +51 -34
- package/dist/cjs/utils/permissions.cjs.map +1 -1
- package/dist/cjs/utils/validation/validateArray.cjs +5 -1
- package/dist/cjs/utils/validation/validateArray.cjs.map +1 -1
- package/dist/esm/controllers/dictionary.controller.mjs.map +1 -1
- package/dist/esm/controllers/newsletter.controller.mjs +12 -13
- package/dist/esm/controllers/newsletter.controller.mjs.map +1 -1
- package/dist/esm/controllers/organization.controller.mjs +28 -41
- package/dist/esm/controllers/organization.controller.mjs.map +1 -1
- package/dist/esm/controllers/project.controller.mjs +7 -1
- package/dist/esm/controllers/project.controller.mjs.map +1 -1
- package/dist/esm/controllers/projectAccessKey.controller.mjs +10 -4
- package/dist/esm/controllers/projectAccessKey.controller.mjs.map +1 -1
- package/dist/esm/controllers/stripe.controller.mjs +15 -3
- package/dist/esm/controllers/stripe.controller.mjs.map +1 -1
- package/dist/esm/controllers/tag.controller.mjs +4 -6
- package/dist/esm/controllers/tag.controller.mjs.map +1 -1
- package/dist/esm/controllers/user.controller.mjs +19 -14
- package/dist/esm/controllers/user.controller.mjs.map +1 -1
- package/dist/esm/emails/OAuthTokenCreatedEmail.mjs +5 -7
- package/dist/esm/emails/OAuthTokenCreatedEmail.mjs.map +1 -1
- package/dist/esm/schemas/dictionary.schema.mjs +1 -1
- package/dist/esm/schemas/dictionary.schema.mjs.map +1 -1
- package/dist/esm/schemas/discussion.schema.mjs +1 -1
- package/dist/esm/schemas/discussion.schema.mjs.map +1 -1
- package/dist/esm/schemas/oAuth2.schema.mjs +1 -1
- package/dist/esm/schemas/oAuth2.schema.mjs.map +1 -1
- package/dist/esm/schemas/organization.schema.mjs +1 -1
- package/dist/esm/schemas/organization.schema.mjs.map +1 -1
- package/dist/esm/schemas/plans.schema.mjs +1 -1
- package/dist/esm/schemas/plans.schema.mjs.map +1 -1
- package/dist/esm/schemas/project.schema.mjs +1 -1
- package/dist/esm/schemas/project.schema.mjs.map +1 -1
- package/dist/esm/schemas/session.schema.mjs +1 -1
- package/dist/esm/schemas/session.schema.mjs.map +1 -1
- package/dist/esm/schemas/tag.schema.mjs +1 -1
- package/dist/esm/schemas/tag.schema.mjs.map +1 -1
- package/dist/esm/schemas/user.schema.mjs +1 -1
- package/dist/esm/schemas/user.schema.mjs.map +1 -1
- package/dist/esm/utils/AI/askDocQuestion/askDocQuestion.mjs +3 -0
- package/dist/esm/utils/AI/askDocQuestion/askDocQuestion.mjs.map +1 -1
- package/dist/esm/utils/auth/getAuth.mjs +8 -5
- package/dist/esm/utils/auth/getAuth.mjs.map +1 -1
- package/dist/esm/utils/errors/errorCodes.mjs +13 -0
- package/dist/esm/utils/errors/errorCodes.mjs.map +1 -1
- package/dist/esm/utils/mapper/project.mjs +1 -2
- package/dist/esm/utils/mapper/project.mjs.map +1 -1
- package/dist/esm/utils/mapper/session.mjs +13 -0
- package/dist/esm/utils/mapper/session.mjs.map +1 -0
- package/dist/esm/utils/permissions.mjs +51 -34
- package/dist/esm/utils/permissions.mjs.map +1 -1
- package/dist/esm/utils/validation/validateArray.mjs +5 -1
- package/dist/esm/utils/validation/validateArray.mjs.map +1 -1
- package/dist/types/controllers/dictionary.controller.d.ts.map +1 -1
- package/dist/types/controllers/newsletter.controller.d.ts.map +1 -1
- package/dist/types/controllers/organization.controller.d.ts +3 -5
- package/dist/types/controllers/organization.controller.d.ts.map +1 -1
- package/dist/types/controllers/project.controller.d.ts.map +1 -1
- package/dist/types/controllers/projectAccessKey.controller.d.ts.map +1 -1
- package/dist/types/controllers/stripe.controller.d.ts +4 -1
- package/dist/types/controllers/stripe.controller.d.ts.map +1 -1
- package/dist/types/controllers/tag.controller.d.ts.map +1 -1
- package/dist/types/controllers/user.controller.d.ts.map +1 -1
- package/dist/types/emails/OAuthTokenCreatedEmail.d.ts.map +1 -1
- package/dist/types/types/organization.types.d.ts +1 -3
- package/dist/types/types/organization.types.d.ts.map +1 -1
- package/dist/types/types/project.types.d.ts +1 -3
- package/dist/types/types/project.types.d.ts.map +1 -1
- package/dist/types/utils/AI/askDocQuestion/askDocQuestion.d.ts.map +1 -1
- package/dist/types/utils/auth/getAuth.d.ts +2 -2
- package/dist/types/utils/auth/getAuth.d.ts.map +1 -1
- package/dist/types/utils/errors/errorCodes.d.ts +13 -0
- package/dist/types/utils/errors/errorCodes.d.ts.map +1 -1
- package/dist/types/utils/mapper/project.d.ts.map +1 -1
- package/dist/types/utils/mapper/session.d.ts +4 -0
- package/dist/types/utils/mapper/session.d.ts.map +1 -0
- package/dist/types/utils/permissions.d.ts +32 -28
- package/dist/types/utils/permissions.d.ts.map +1 -1
- package/dist/types/utils/validation/validateArray.d.ts.map +1 -1
- package/package.json +9 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utils/mapper/project.ts"],"sourcesContent":["import type { Project, ProjectAPI } from '@/types/project.types';\nimport { ensureMongoDocumentToObject } from '@utils/ensureMongoDocumentToObject';\n\n/**\n * Maps a project to an API response.\n * @param project - The project to map.\n * @param - Whether the user is an admin of the project.\n * @returns The project mapped to an API response.\n */\nexport const mapProjectToAPI = <T extends Project | ProjectAPI | null>(\n project?: T\n): T extends null ? null : ProjectAPI => {\n if (!project) {\n return null as any;\n }\n\n const projectObject = ensureMongoDocumentToObject(project);\n\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/utils/mapper/project.ts"],"sourcesContent":["import type { Project, ProjectAPI } from '@/types/project.types';\nimport { ensureMongoDocumentToObject } from '@utils/ensureMongoDocumentToObject';\n\n/**\n * Maps a project to an API response.\n * @param project - The project to map.\n * @param - Whether the user is an admin of the project.\n * @returns The project mapped to an API response.\n */\nexport const mapProjectToAPI = <T extends Project | ProjectAPI | null>(\n project?: T\n): T extends null ? null : ProjectAPI => {\n if (!project) {\n return null as any;\n }\n\n const projectObject = ensureMongoDocumentToObject(project);\n\n return projectObject as any;\n};\n\n/**\n * Formats an array of projects for API response. Removes sensitive information.\n * @param projects - The array of project objects to format.\n * @param user - The user object.\n * @param - Whether the user is an admin of the project.\n * @returns The formatted array of user objects.\n */\nexport const mapProjectsToAPI = (\n projects: (Project | ProjectAPI)[]\n): ProjectAPI[] =>\n projects.map(mapProjectToAPI).filter(Boolean) as ProjectAPI[];\n"],"mappings":"AACA,SAAS,mCAAmC;AAQrC,MAAM,kBAAkB,CAC7B,YACuC;AACvC,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,QAAM,gBAAgB,4BAA4B,OAAO;AAEzD,SAAO;AACT;AASO,MAAM,mBAAmB,CAC9B,aAEA,SAAS,IAAI,eAAe,EAAE,OAAO,OAAO;","names":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { mapOrganizationToAPI } from "./organization.mjs";
|
|
2
|
+
import { mapProjectToAPI } from "./project.mjs";
|
|
3
|
+
import { mapUserToAPI } from "./user.mjs";
|
|
4
|
+
const mapSessionToAPI = (session) => ({
|
|
5
|
+
...session,
|
|
6
|
+
user: mapUserToAPI(session.user),
|
|
7
|
+
organization: mapOrganizationToAPI(session.organization),
|
|
8
|
+
project: mapProjectToAPI(session.project)
|
|
9
|
+
});
|
|
10
|
+
export {
|
|
11
|
+
mapSessionToAPI
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=session.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/utils/mapper/session.ts"],"sourcesContent":["import type { Session, SessionAPI } from '@/types/session.types';\nimport type { OmitId } from 'better-auth';\nimport { mapOrganizationToAPI } from './organization';\nimport { mapProjectToAPI } from './project';\nimport { mapUserToAPI } from './user';\n\nexport const mapSessionToAPI = (\n session: OmitId<Session>\n): OmitId<SessionAPI> => ({\n ...session,\n user: mapUserToAPI(session.user),\n organization: mapOrganizationToAPI(session.organization),\n project: mapProjectToAPI(session.project),\n});\n"],"mappings":"AAEA,SAAS,4BAA4B;AACrC,SAAS,uBAAuB;AAChC,SAAS,oBAAoB;AAEtB,MAAM,kBAAkB,CAC7B,aACwB;AAAA,EACxB,GAAG;AAAA,EACH,MAAM,aAAa,QAAQ,IAAI;AAAA,EAC/B,cAAc,qBAAqB,QAAQ,YAAY;AAAA,EACvD,SAAS,gBAAgB,QAAQ,OAAO;AAC1C;","names":[]}
|
|
@@ -19,16 +19,22 @@ const ROLE_POLICY = {
|
|
|
19
19
|
user: {
|
|
20
20
|
"user:read": ({
|
|
21
21
|
user,
|
|
22
|
-
|
|
23
|
-
}) =>
|
|
22
|
+
targetUsers
|
|
23
|
+
}) => targetUsers.every(
|
|
24
|
+
(targetUser) => String(targetUser.id) === String(user?.id) && targetUser.email === user?.email
|
|
25
|
+
),
|
|
24
26
|
"user:write": ({
|
|
25
27
|
user,
|
|
26
|
-
|
|
27
|
-
}) =>
|
|
28
|
+
targetUsers
|
|
29
|
+
}) => targetUsers.every(
|
|
30
|
+
(targetUser) => String(targetUser.id) === String(user?.id) && targetUser.email === user?.email
|
|
31
|
+
),
|
|
28
32
|
"user:admin": ({
|
|
29
33
|
user,
|
|
30
|
-
|
|
31
|
-
}) =>
|
|
34
|
+
targetUsers
|
|
35
|
+
}) => targetUsers.every(
|
|
36
|
+
(targetUser) => String(targetUser.id) === String(user?.id) && targetUser.email === user?.email
|
|
37
|
+
),
|
|
32
38
|
"organization:read": ({
|
|
33
39
|
user,
|
|
34
40
|
targetOrganizations
|
|
@@ -63,13 +69,18 @@ const ROLE_POLICY = {
|
|
|
63
69
|
"tag:admin": ({ organization, project }) => String(project?.organizationId) === String(organization?.id),
|
|
64
70
|
"user:write": ({
|
|
65
71
|
organization,
|
|
66
|
-
|
|
67
|
-
}) =>
|
|
68
|
-
(
|
|
72
|
+
targetUsers
|
|
73
|
+
}) => targetUsers.every(
|
|
74
|
+
(targetUser) => organization?.membersIds?.map(String).includes(String(targetUser?.id))
|
|
69
75
|
)
|
|
70
76
|
},
|
|
71
77
|
org_user: {
|
|
72
|
-
"organization:read": (
|
|
78
|
+
"organization:read": ({
|
|
79
|
+
organization,
|
|
80
|
+
targetOrganizations
|
|
81
|
+
}) => targetOrganizations.every(
|
|
82
|
+
(targetOrg) => String(targetOrg.id) === String(organization?.id)
|
|
83
|
+
),
|
|
73
84
|
"project:read": ({
|
|
74
85
|
user,
|
|
75
86
|
targetProjects
|
|
@@ -78,9 +89,9 @@ const ROLE_POLICY = {
|
|
|
78
89
|
),
|
|
79
90
|
"user:read": ({
|
|
80
91
|
organization,
|
|
81
|
-
|
|
82
|
-
}) =>
|
|
83
|
-
(
|
|
92
|
+
targetUsers
|
|
93
|
+
}) => targetUsers.every(
|
|
94
|
+
(targetUser) => organization?.membersIds?.map(String).includes(String(targetUser?.id))
|
|
84
95
|
)
|
|
85
96
|
},
|
|
86
97
|
project_admin: {
|
|
@@ -104,27 +115,21 @@ const ROLE_POLICY = {
|
|
|
104
115
|
),
|
|
105
116
|
"tag:read": ({
|
|
106
117
|
project,
|
|
107
|
-
|
|
108
|
-
}) =>
|
|
109
|
-
(projectId) => String(project?.id) === String(projectId)
|
|
110
|
-
),
|
|
118
|
+
targetTags
|
|
119
|
+
}) => targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),
|
|
111
120
|
"tag:write": ({
|
|
112
121
|
project,
|
|
113
|
-
|
|
114
|
-
}) =>
|
|
115
|
-
(projectId) => String(project?.id) === String(projectId)
|
|
116
|
-
),
|
|
122
|
+
targetTags
|
|
123
|
+
}) => targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),
|
|
117
124
|
"tag:admin": ({
|
|
118
125
|
project,
|
|
119
|
-
|
|
120
|
-
}) =>
|
|
121
|
-
(projectId) => String(project?.id) === String(projectId)
|
|
122
|
-
),
|
|
126
|
+
targetTags
|
|
127
|
+
}) => targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),
|
|
123
128
|
"user:write": ({
|
|
124
129
|
project,
|
|
125
|
-
|
|
126
|
-
}) =>
|
|
127
|
-
(
|
|
130
|
+
targetUsers
|
|
131
|
+
}) => targetUsers.every(
|
|
132
|
+
(targetUser) => project?.membersIds?.map(String).includes(String(targetUser?.id))
|
|
128
133
|
),
|
|
129
134
|
"dictionary:read": ({ project, user }) => project?.adminsIds?.map(String).includes(String(user?.id)),
|
|
130
135
|
"dictionary:write": ({ project, user }) => project?.adminsIds?.map(String).includes(String(user?.id)),
|
|
@@ -140,14 +145,26 @@ const ROLE_POLICY = {
|
|
|
140
145
|
(dictionary) => dictionary?.projectIds?.map(String).includes(String(project?.id))
|
|
141
146
|
),
|
|
142
147
|
"dictionary:write": ({ user, project }) => project?.adminsIds?.map(String).includes(String(user?.id)),
|
|
143
|
-
"tag:read": (
|
|
144
|
-
|
|
145
|
-
|
|
148
|
+
"tag:read": ({
|
|
149
|
+
project,
|
|
150
|
+
targetTags,
|
|
151
|
+
user
|
|
152
|
+
}) => project?.membersIds?.map(String).includes(String(user?.id)) && targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),
|
|
153
|
+
"tag:write": ({
|
|
154
|
+
project,
|
|
155
|
+
targetTags,
|
|
156
|
+
user
|
|
157
|
+
}) => project?.membersIds?.map(String).includes(String(user?.id)) && targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),
|
|
158
|
+
"tag:admin": ({
|
|
159
|
+
user,
|
|
160
|
+
project,
|
|
161
|
+
targetTags
|
|
162
|
+
}) => project?.adminsIds?.map(String).includes(String(user?.id)) && targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),
|
|
146
163
|
"user:read": ({
|
|
147
164
|
project,
|
|
148
|
-
|
|
149
|
-
}) =>
|
|
150
|
-
(
|
|
165
|
+
targetUsers
|
|
166
|
+
}) => targetUsers.every(
|
|
167
|
+
(targetUser) => project?.membersIds?.map(String).includes(String(targetUser?.id))
|
|
151
168
|
)
|
|
152
169
|
},
|
|
153
170
|
project_reviewer: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/permissions.ts"],"sourcesContent":["import { Dictionary, DictionaryAPI } from '@/types/dictionary.types';\nimport { Organization, OrganizationAPI } from '@/types/organization.types';\nimport { Project, ProjectAPI } from '@/types/project.types';\nimport { SessionContext } from '@/types/session.types';\nimport { Tag, TagAPI } from '@/types/tag.types';\nimport { User, UserAPI } from '@/types/user.types';\n\n/**\n * @description\n * A named grouping of privileges (e.g. `\"org_admin\"`).\n * Users are *granted* one or more Roles.\n */\nexport type Roles =\n | 'user'\n | 'admin'\n | 'org_admin'\n | 'org_user'\n | 'project_admin'\n | 'project_user'\n | 'project_reviewer';\n\n/**\n * @description\n * An atomic operation that can be performed on a resource.\n * - **read**: view or list\n * - **write**: create or update\n * - **admin**: delete or change permissions\n */\nexport type Action = 'read' | 'write' | 'admin';\n\n/**\n * @description\n * A first‑class entity in your domain model that you want to protect.\n */\nexport type Resource = {\n organization: Organization;\n project: Project;\n dictionary: Dictionary;\n tag: Tag;\n user: User;\n};\n\n/**\n * @description\n * A literal string combining a Resource and an Action, e.g. `\"project:write\"`.\n * This is the *unit* checked at runtime in your middleware.\n */\nexport type Permission = `${keyof Resource}:${Action}`;\n\ntype CheckPrivilege = (\n args: any\n) => boolean | undefined | Promise<boolean> | Promise<undefined>;\n\ntype RolePolicy = Record<Roles, Partial<Record<Permission, CheckPrivilege>>>;\n\nexport const ROLE_POLICY = {\n admin: {\n 'organization:read': () => true,\n 'organization:write': () => true,\n 'organization:admin': () => true,\n 'project:read': () => true,\n 'project:write': () => true,\n 'project:admin': () => true,\n 'dictionary:read': () => true,\n 'dictionary:write': () => true,\n 'dictionary:admin': () => true,\n 'tag:read': () => true,\n 'tag:write': () => true,\n 'tag:admin': () => true,\n 'user:read': () => true,\n 'user:write': () => true,\n 'user:admin': () => true,\n },\n user: {\n 'user:read': ({\n user,\n targetUserIds,\n }: SessionContext & { targetUserIds: (User | UserAPI)['id'][] }) =>\n targetUserIds.map(String).includes(String(user?.id)),\n 'user:write': ({\n user,\n targetUserIds,\n }: SessionContext & { targetUserIds: (User | UserAPI)['id'][] }) =>\n targetUserIds.map(String).includes(String(user?.id)),\n 'user:admin': ({\n user,\n targetUserIds,\n }: SessionContext & { targetUserIds: (User | UserAPI)['id'][] }) =>\n targetUserIds.map(String).includes(String(user?.id)),\n 'organization:read': ({\n user,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every((organization) =>\n organization?.membersIds?.map(String).includes(String(user?.id))\n ),\n },\n org_admin: {\n 'organization:read': ({\n organization,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every(\n (targetOrg) => String(targetOrg.id) === String(organization?.id)\n ),\n 'organization:write': ({\n organization,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every(\n (targetOrg) => String(targetOrg.id) === String(organization?.id)\n ),\n 'organization:admin': ({\n organization,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every(\n (targetOrg) => String(targetOrg.id) === String(organization?.id)\n ),\n\n 'project:read': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'project:write': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'project:admin': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n\n 'tag:read': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'tag:write': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'tag:admin': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n\n 'user:write': ({\n organization,\n targetUserIds,\n }: SessionContext & { targetUserIds: (User | UserAPI)['id'][] }) =>\n targetUserIds.every((targetUserId) =>\n organization?.membersIds?.map(String).includes(String(targetUserId))\n ),\n },\n org_user: {\n 'organization:read': () => true,\n\n 'project:read': ({\n user,\n targetProjects,\n }: SessionContext & {\n targetProjects: (Project | ProjectAPI)[];\n }) =>\n targetProjects?.every((project) =>\n project?.membersIds?.map(String).includes(String(user?.id))\n ),\n\n 'user:read': ({\n organization,\n targetUserIds,\n }: SessionContext & { targetUserIds: (User | UserAPI)['id'][] }) =>\n targetUserIds.every((targetUserId) =>\n organization?.membersIds?.map(String).includes(String(targetUserId))\n ),\n },\n project_admin: {\n 'project:read': ({\n project,\n targetProjectIds,\n }: SessionContext & {\n targetProjectIds?: (Project | ProjectAPI)['id'][];\n }) =>\n targetProjectIds?.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n 'project:write': ({\n project,\n targetProjectIds,\n }: SessionContext & {\n targetProjectIds?: (Project | ProjectAPI)['id'][];\n }) =>\n targetProjectIds?.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n 'project:admin': ({\n project,\n targetProjectIds,\n }: SessionContext & {\n targetProjectIds?: (Project | ProjectAPI)['id'][];\n }) =>\n targetProjectIds?.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n\n 'tag:read': ({\n project,\n targetTagProjectIds,\n }: SessionContext & { targetTagProjectIds: (Tag | TagAPI)['id'][] }) =>\n targetTagProjectIds.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n 'tag:write': ({\n project,\n targetTagProjectIds,\n }: SessionContext & { targetTagProjectIds: (Tag | TagAPI)['id'][] }) =>\n targetTagProjectIds.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n 'tag:admin': ({\n project,\n targetTagProjectIds,\n }: SessionContext & { targetTagProjectIds: (Tag | TagAPI)['id'][] }) =>\n targetTagProjectIds.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n\n 'user:write': ({\n project,\n targetUserIds,\n }: SessionContext & { targetUserIds: (User | UserAPI)['id'][] }) =>\n targetUserIds.every((targetUserId) =>\n project?.membersIds?.map(String).includes(String(targetUserId))\n ),\n\n 'dictionary:read': ({ project, user }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n 'dictionary:write': ({ project, user }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n 'dictionary:admin': ({ project, user }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n },\n project_user: {\n 'project:read': ({ user, organization, project }: SessionContext) =>\n String(organization?.id) === String(project?.organizationId) &&\n organization?.membersIds?.map(String).includes(String(user?.id)) &&\n project?.membersIds?.map(String).includes(String(user?.id)),\n\n 'dictionary:read': ({\n user,\n project,\n targetDictionaries,\n }: SessionContext & {\n targetDictionaries: (Dictionary | DictionaryAPI)[];\n }) =>\n project?.membersIds?.map(String).includes(String(user?.id)) &&\n targetDictionaries.every((dictionary) =>\n dictionary?.projectIds?.map(String).includes(String(project?.id))\n ),\n 'dictionary:write': ({ user, project }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n\n 'tag:read': () => true,\n 'tag:write': () => true,\n 'tag:admin': ({ user, organization }: SessionContext) =>\n organization?.adminsIds?.map(String).includes(String(user?.id)),\n\n 'user:read': ({\n project,\n targetUserIds,\n }: SessionContext & { targetUserIds: (User | UserAPI)['id'][] }) =>\n targetUserIds.every((targetUserId) =>\n project?.membersIds?.map(String).includes(String(targetUserId))\n ),\n },\n project_reviewer: {\n 'dictionary:read': ({ user, project }: SessionContext) =>\n project?.membersIds?.map(String).includes(String(user?.id)),\n 'dictionary:write': ({ user, project }: SessionContext) =>\n project?.membersIds?.map(String).includes(String(user?.id)),\n\n 'tag:read': () => true,\n },\n} as const satisfies RolePolicy;\n\nexport const getSessionRoles = ({\n user,\n organization,\n project,\n}: SessionContext): Roles[] => {\n const roles: Roles[] = [];\n\n if (!user) {\n return roles;\n }\n\n roles.push('user');\n\n const isUserAdmin = user.role === 'admin';\n\n if (isUserAdmin) {\n roles.push('admin');\n }\n\n if (!organization) {\n return roles;\n }\n\n const isOrganizationAdmin = organization.adminsIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isOrganizationAdmin) {\n roles.push('org_admin');\n }\n\n const isOrganizationMember = organization.membersIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isOrganizationMember) {\n roles.push('org_user');\n }\n\n if (!project) {\n return roles;\n }\n\n const isProjectAdmin = project.adminsIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isProjectAdmin) {\n roles.push('project_admin');\n }\n\n const isProjectMember = project?.membersIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isProjectMember) {\n roles.push('project_user');\n }\n\n // const isProjectReviewer =\n // session.project?.reviewersIds?.includes(session.user!.id);\n\n // if (isProjectReviewer) {\n // roles.push('project_reviewer');\n // }\n\n return roles;\n};\n\nexport const computeEffectivePermission = (roles: Roles[]): Permission[] =>\n Array.from(\n new Set(\n roles.flatMap((role) => Object.keys(ROLE_POLICY[role]) as Permission[])\n )\n );\n\n/**\n * Intersect two permission lists\n * @param permissionList1 - The first permission list\n * @param permissionList2 - The second permission list\n * @returns The intersection of the two permission lists (only permissions present in both)\n */\nexport const intersectPermissions = (\n permissions1: Permission[],\n permissions2: Permission[]\n): Permission[] =>\n permissions1.filter((permission) => permissions2.includes(permission));\n\ntype PermissionResult<\n R extends Roles,\n P extends Permission,\n> = (typeof ROLE_POLICY)[R] extends infer RolePerms\n ? RolePerms extends Record<string, (args: any) => any>\n ? P extends keyof RolePerms\n ? RolePerms[P] extends undefined\n ? never\n : RolePerms[P]\n : never\n : never\n : never;\n\nexport const hasPermission = <P extends Permission>(\n roles: Roles[],\n permission: P\n): PermissionResult<Roles, P> => {\n const rolesCheck: any = roles.map(\n (role) =>\n ROLE_POLICY[role]?.[\n permission as keyof (typeof ROLE_POLICY)[typeof role]\n ] ?? (() => false)\n ) as unknown as PermissionResult<Roles, P>[];\n\n return ((args: any) => rolesCheck.some((check: any) => check(args))) as any;\n};\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/permissions.ts"],"sourcesContent":["import { Dictionary, DictionaryAPI } from '@/types/dictionary.types';\nimport { Organization, OrganizationAPI } from '@/types/organization.types';\nimport { Project, ProjectAPI } from '@/types/project.types';\nimport { SessionContext } from '@/types/session.types';\nimport { Tag, TagAPI } from '@/types/tag.types';\nimport { User, UserAPI } from '@/types/user.types';\n\n/**\n * A named grouping of privileges (e.g. `\"org_admin\"`).\n * Users are *granted* one or more Roles.\n */\nexport type Roles =\n | 'user'\n | 'admin'\n | 'org_admin'\n | 'org_user'\n | 'project_admin'\n | 'project_user'\n | 'project_reviewer';\n\n/**\n * An atomic operation that can be performed on a resource.\n * - **read**: view or list\n * - **write**: create or update\n * - **admin**: delete or change permissions\n */\nexport type Action = 'read' | 'write' | 'admin';\n\n/**\n * A first‑class entity in your domain model that you want to protect.\n */\nexport type Resource = {\n organization: Organization;\n project: Project;\n dictionary: Dictionary;\n tag: Tag;\n user: User;\n};\n\n/**\n * A literal string combining a Resource and an Action, e.g. `\"project:write\"`.\n * This is the *unit* checked at runtime in your middleware.\n */\nexport type Permission = `${keyof Resource}:${Action}`;\n\ntype CheckPrivilege = (\n args: any\n) => boolean | undefined | Promise<boolean> | Promise<undefined>;\n\ntype RolePolicy = Record<Roles, Partial<Record<Permission, CheckPrivilege>>>;\n\nexport const ROLE_POLICY = {\n admin: {\n 'organization:read': () => true,\n 'organization:write': () => true,\n 'organization:admin': () => true,\n 'project:read': () => true,\n 'project:write': () => true,\n 'project:admin': () => true,\n 'dictionary:read': () => true,\n 'dictionary:write': () => true,\n 'dictionary:admin': () => true,\n 'tag:read': () => true,\n 'tag:write': () => true,\n 'tag:admin': () => true,\n 'user:read': () => true,\n 'user:write': () => true,\n 'user:admin': () => true,\n },\n user: {\n 'user:read': ({\n user,\n targetUsers,\n }: SessionContext & { targetUsers: (User | UserAPI)[] }) =>\n targetUsers.every(\n (targetUser) =>\n String(targetUser.id) === String(user?.id) &&\n targetUser.email === user?.email\n ),\n 'user:write': ({\n user,\n targetUsers,\n }: SessionContext & { targetUsers: (User | UserAPI)[] }) =>\n targetUsers.every(\n (targetUser) =>\n String(targetUser.id) === String(user?.id) &&\n targetUser.email === user?.email\n ),\n 'user:admin': ({\n user,\n targetUsers,\n }: SessionContext & { targetUsers: (User | UserAPI)[] }) =>\n targetUsers.every(\n (targetUser) =>\n String(targetUser.id) === String(user?.id) &&\n targetUser.email === user?.email\n ),\n 'organization:read': ({\n user,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every((organization) =>\n organization?.membersIds?.map(String).includes(String(user?.id))\n ),\n },\n org_admin: {\n 'organization:read': ({\n organization,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every(\n (targetOrg) => String(targetOrg.id) === String(organization?.id)\n ),\n 'organization:write': ({\n organization,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every(\n (targetOrg) => String(targetOrg.id) === String(organization?.id)\n ),\n 'organization:admin': ({\n organization,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every(\n (targetOrg) => String(targetOrg.id) === String(organization?.id)\n ),\n\n 'project:read': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'project:write': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'project:admin': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n\n 'tag:read': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'tag:write': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n 'tag:admin': ({ organization, project }: SessionContext) =>\n String(project?.organizationId) === String(organization?.id),\n\n 'user:write': ({\n organization,\n targetUsers,\n }: SessionContext & { targetUsers: (User | UserAPI)[] }) =>\n targetUsers.every((targetUser) =>\n organization?.membersIds?.map(String).includes(String(targetUser?.id))\n ),\n },\n org_user: {\n 'organization:read': ({\n organization,\n targetOrganizations,\n }: SessionContext & {\n targetOrganizations: (Organization | OrganizationAPI)[];\n }) =>\n targetOrganizations.every(\n (targetOrg) => String(targetOrg.id) === String(organization?.id)\n ),\n\n 'project:read': ({\n user,\n targetProjects,\n }: SessionContext & {\n targetProjects: (Project | ProjectAPI)[];\n }) =>\n targetProjects?.every((project) =>\n project?.membersIds?.map(String).includes(String(user?.id))\n ),\n\n 'user:read': ({\n organization,\n targetUsers,\n }: SessionContext & { targetUsers: (User | UserAPI)[] }) =>\n targetUsers.every((targetUser) =>\n organization?.membersIds?.map(String).includes(String(targetUser?.id))\n ),\n },\n project_admin: {\n 'project:read': ({\n project,\n targetProjectIds,\n }: SessionContext & {\n targetProjectIds?: (Project | ProjectAPI)['id'][];\n }) =>\n targetProjectIds?.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n 'project:write': ({\n project,\n targetProjectIds,\n }: SessionContext & {\n targetProjectIds?: (Project | ProjectAPI)['id'][];\n }) =>\n targetProjectIds?.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n 'project:admin': ({\n project,\n targetProjectIds,\n }: SessionContext & {\n targetProjectIds?: (Project | ProjectAPI)['id'][];\n }) =>\n targetProjectIds?.every(\n (projectId) => String(project?.id) === String(projectId)\n ),\n\n 'tag:read': ({\n project,\n targetTags,\n }: SessionContext & { targetTags: (Tag | TagAPI)[] }) =>\n targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),\n 'tag:write': ({\n project,\n targetTags,\n }: SessionContext & { targetTags: (Tag | TagAPI)[] }) =>\n targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),\n 'tag:admin': ({\n project,\n targetTags,\n }: SessionContext & { targetTags: (Tag | TagAPI)[] }) =>\n targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),\n\n 'user:write': ({\n project,\n targetUsers,\n }: SessionContext & { targetUsers: (User | UserAPI)[] }) =>\n targetUsers.every((targetUser) =>\n project?.membersIds?.map(String).includes(String(targetUser?.id))\n ),\n\n 'dictionary:read': ({ project, user }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n 'dictionary:write': ({ project, user }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n 'dictionary:admin': ({ project, user }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n },\n project_user: {\n 'project:read': ({ user, organization, project }: SessionContext) =>\n String(organization?.id) === String(project?.organizationId) &&\n organization?.membersIds?.map(String).includes(String(user?.id)) &&\n project?.membersIds?.map(String).includes(String(user?.id)),\n\n 'dictionary:read': ({\n user,\n project,\n targetDictionaries,\n }: SessionContext & {\n targetDictionaries: (Dictionary | DictionaryAPI)[];\n }) =>\n project?.membersIds?.map(String).includes(String(user?.id)) &&\n targetDictionaries.every((dictionary) =>\n dictionary?.projectIds?.map(String).includes(String(project?.id))\n ),\n 'dictionary:write': ({ user, project }: SessionContext) =>\n project?.adminsIds?.map(String).includes(String(user?.id)),\n\n 'tag:read': ({\n project,\n targetTags,\n user,\n }: SessionContext & {\n targetTags: (Tag | TagAPI)[];\n }) =>\n project?.membersIds?.map(String).includes(String(user?.id)) &&\n targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),\n 'tag:write': ({\n project,\n targetTags,\n user,\n }: SessionContext & {\n targetTags: (Tag | TagAPI)[];\n }) =>\n project?.membersIds?.map(String).includes(String(user?.id)) &&\n targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),\n 'tag:admin': ({\n user,\n project,\n targetTags,\n }: SessionContext & {\n targetTags: (Tag | TagAPI)[];\n }) =>\n project?.adminsIds?.map(String).includes(String(user?.id)) &&\n targetTags.every((tag) => String(project?.id) === String(tag?.projectId)),\n\n 'user:read': ({\n project,\n targetUsers,\n }: SessionContext & { targetUsers: (User | UserAPI)[] }) =>\n targetUsers.every((targetUser) =>\n project?.membersIds?.map(String).includes(String(targetUser?.id))\n ),\n },\n project_reviewer: {\n 'dictionary:read': ({ user, project }: SessionContext) =>\n project?.membersIds?.map(String).includes(String(user?.id)),\n 'dictionary:write': ({ user, project }: SessionContext) =>\n project?.membersIds?.map(String).includes(String(user?.id)),\n\n 'tag:read': () => true,\n },\n} as const satisfies RolePolicy;\n\nexport const getSessionRoles = ({\n user,\n organization,\n project,\n}: SessionContext): Roles[] => {\n const roles: Roles[] = [];\n\n if (!user) {\n return roles;\n }\n\n roles.push('user');\n\n const isUserAdmin = user.role === 'admin';\n\n if (isUserAdmin) {\n roles.push('admin');\n }\n\n if (!organization) {\n return roles;\n }\n\n const isOrganizationAdmin = organization.adminsIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isOrganizationAdmin) {\n roles.push('org_admin');\n }\n\n const isOrganizationMember = organization.membersIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isOrganizationMember) {\n roles.push('org_user');\n }\n\n if (!project) {\n return roles;\n }\n\n const isProjectAdmin = project.adminsIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isProjectAdmin) {\n roles.push('project_admin');\n }\n\n const isProjectMember = project?.membersIds\n ?.map(String)\n .includes(String(user!.id));\n\n if (isProjectMember) {\n roles.push('project_user');\n }\n\n // const isProjectReviewer =\n // session.project?.reviewersIds?.includes(session.user!.id);\n\n // if (isProjectReviewer) {\n // roles.push('project_reviewer');\n // }\n\n return roles;\n};\n\nexport const computeEffectivePermission = (roles: Roles[]): Permission[] =>\n Array.from(\n new Set(\n roles.flatMap((role) => Object.keys(ROLE_POLICY[role]) as Permission[])\n )\n );\n\n/**\n * Intersect two permission lists\n * @param permissionList1 - The first permission list\n * @param permissionList2 - The second permission list\n * @returns The intersection of the two permission lists (only permissions present in both)\n */\nexport const intersectPermissions = (\n permissions1: Permission[],\n permissions2: Permission[]\n): Permission[] =>\n permissions1.filter((permission) => permissions2.includes(permission));\n\ntype PermissionResult<\n R extends Roles,\n P extends Permission,\n> = (typeof ROLE_POLICY)[R] extends infer RolePerms\n ? RolePerms extends Record<string, (args: any) => any>\n ? P extends keyof RolePerms\n ? RolePerms[P] extends undefined\n ? never\n : RolePerms[P]\n : never\n : never\n : never;\n\nexport const hasPermission = <P extends Permission>(\n roles: Roles[],\n permission: P\n): PermissionResult<Roles, P> => {\n const rolesCheck: any = roles.map(\n (role) =>\n ROLE_POLICY[role]?.[\n permission as keyof (typeof ROLE_POLICY)[typeof role]\n ] ?? (() => false)\n ) as unknown as PermissionResult<Roles, P>[];\n\n return ((args: any) => rolesCheck.some((check: any) => check(args))) as any;\n};\n"],"mappings":"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","names":[]}
|
|
@@ -7,7 +7,11 @@ const validateArray = (value, entityName = "Array", elementType, elementValidato
|
|
|
7
7
|
} else if (maxLength && value.length > maxLength) {
|
|
8
8
|
errors.push(`${entityName} must be at most ${maxLength} items long.`);
|
|
9
9
|
} else if (elementType) {
|
|
10
|
-
const isValid = value.
|
|
10
|
+
const isValid = value.every((element) => {
|
|
11
|
+
console.log("element", element, typeof element, elementType);
|
|
12
|
+
return typeof element === elementType;
|
|
13
|
+
});
|
|
14
|
+
console.log("isValid", isValid);
|
|
11
15
|
if (!isValid) {
|
|
12
16
|
errors.push(`${entityName} must contain only ${elementType} elements.`);
|
|
13
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/utils/validation/validateArray.ts"],"sourcesContent":["/* eslint-disable sonarjs/cognitive-complexity */\ntype ElementType = 'string' | 'number' | 'boolean' | 'object' | 'array';\ntype ElementValidator<T> = (value: T) => boolean | string[];\n\n/**\n * Validates a email field.\n * @param value The value to validate.\n * @param entityName The name of the entity being validated.\n * @param minLength The minimum length of the string.\n * @param maxLength The maximum length of the string.\n * @returns An array of validation errors.\n */\nexport const validateArray = <T = unknown>(\n value: T[],\n entityName = 'Array',\n elementType?: ElementType,\n elementValidator?: ElementValidator<T>,\n minLength = 0,\n maxLength = undefined\n): string[] => {\n const errors: string[] = [];\n\n if (!Array.isArray(value)) {\n errors.push(`${entityName} must be an array.`);\n } else if (minLength && value.length < minLength) {\n errors.push(`${entityName} must be at least ${minLength} items long.`);\n } else if (maxLength && value.length > maxLength) {\n errors.push(`${entityName} must be at most ${maxLength} items long.`);\n } else if (elementType) {\n const isValid = value.
|
|
1
|
+
{"version":3,"sources":["../../../../src/utils/validation/validateArray.ts"],"sourcesContent":["/* eslint-disable sonarjs/cognitive-complexity */\ntype ElementType = 'string' | 'number' | 'boolean' | 'object' | 'array';\ntype ElementValidator<T> = (value: T) => boolean | string[];\n\n/**\n * Validates a email field.\n * @param value The value to validate.\n * @param entityName The name of the entity being validated.\n * @param minLength The minimum length of the string.\n * @param maxLength The maximum length of the string.\n * @returns An array of validation errors.\n */\nexport const validateArray = <T = unknown>(\n value: T[],\n entityName = 'Array',\n elementType?: ElementType,\n elementValidator?: ElementValidator<T>,\n minLength = 0,\n maxLength = undefined\n): string[] => {\n const errors: string[] = [];\n\n if (!Array.isArray(value)) {\n errors.push(`${entityName} must be an array.`);\n } else if (minLength && value.length < minLength) {\n errors.push(`${entityName} must be at least ${minLength} items long.`);\n } else if (maxLength && value.length > maxLength) {\n errors.push(`${entityName} must be at most ${maxLength} items long.`);\n } else if (elementType) {\n const isValid = value.every((element) => {\n console.log('element', element, typeof element, elementType);\n return typeof element === elementType;\n });\n\n console.log('isValid', isValid);\n\n if (!isValid) {\n errors.push(`${entityName} must contain only ${elementType} elements.`);\n }\n } else if (elementValidator) {\n const isValidOrErrorList = value.every(elementValidator);\n\n if (Array.isArray(isValidOrErrorList)) {\n const isValid = isValidOrErrorList.length > 0;\n\n if (!isValid) {\n errors.push(...isValidOrErrorList);\n }\n } else {\n const isValid = isValidOrErrorList;\n\n if (!isValid) {\n errors.push(`${entityName} must contain valid elements.`);\n }\n }\n }\n\n return errors;\n};\n"],"mappings":"AAYO,MAAM,gBAAgB,CAC3B,OACA,aAAa,SACb,aACA,kBACA,YAAY,GACZ,YAAY,WACC;AACb,QAAM,SAAmB,CAAC;AAE1B,MAAI,CAAC,MAAM,QAAQ,KAAK,GAAG;AACzB,WAAO,KAAK,GAAG,UAAU,oBAAoB;AAAA,EAC/C,WAAW,aAAa,MAAM,SAAS,WAAW;AAChD,WAAO,KAAK,GAAG,UAAU,qBAAqB,SAAS,cAAc;AAAA,EACvE,WAAW,aAAa,MAAM,SAAS,WAAW;AAChD,WAAO,KAAK,GAAG,UAAU,oBAAoB,SAAS,cAAc;AAAA,EACtE,WAAW,aAAa;AACtB,UAAM,UAAU,MAAM,MAAM,CAAC,YAAY;AACvC,cAAQ,IAAI,WAAW,SAAS,OAAO,SAAS,WAAW;AAC3D,aAAO,OAAO,YAAY;AAAA,IAC5B,CAAC;AAED,YAAQ,IAAI,WAAW,OAAO;AAE9B,QAAI,CAAC,SAAS;AACZ,aAAO,KAAK,GAAG,UAAU,sBAAsB,WAAW,YAAY;AAAA,IACxE;AAAA,EACF,WAAW,kBAAkB;AAC3B,UAAM,qBAAqB,MAAM,MAAM,gBAAgB;AAEvD,QAAI,MAAM,QAAQ,kBAAkB,GAAG;AACrC,YAAM,UAAU,mBAAmB,SAAS;AAE5C,UAAI,CAAC,SAAS;AACZ,eAAO,KAAK,GAAG,kBAAkB;AAAA,MACnC;AAAA,IACF,OAAO;AACL,YAAM,UAAU;AAEhB,UAAI,CAAC,SAAS;AACZ,eAAO,KAAK,GAAG,UAAU,+BAA+B;AAAA,MAC1D;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dictionary.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/dictionary.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,sBAAsB,EAGvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAEV,UAAU,IAAI,eAAe,EAC9B,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAI/E,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,+DAA+D,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AAGxG,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGrD,MAAM,MAAM,qBAAqB,GAC/B,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;AAChD,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,CAAC,qBAAqB,CAAC,EACnC,KAAK,mBAAmB,CAAC,qBAAqB,CAAC,EAC/C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"dictionary.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/dictionary.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"newsletter.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/newsletter.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAK/E,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"newsletter.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/newsletter.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAK/E,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGrD,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;CACtC,CAAC;AACF,MAAM,MAAM,4BAA4B,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AAEjE;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,0BAA0B,CAAC,EAClD,KAAK,mBAAmB,CAAC,4BAA4B,CAAC,EACtD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAuEd,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;CACtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,yBAAyB,GACpC,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,4BAA4B,CAAC,EACpD,KAAK,mBAAmB,CAAC,4BAA4B,CAAC,EACtD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAmEd,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAC9B,MAAM,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,EAChC,KAAK,mBAAmB,CAAC,4BAA4B,CAAC,EACtD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA+Cd,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Organization, OrganizationAPI, OrganizationCreationData } from '../types/organization.types';
|
|
2
|
+
import type { User, UserAPI } from '../types/user.types';
|
|
2
3
|
import type { ResponseWithSession } from '../middlewares/sessionAuth.middleware';
|
|
3
4
|
import type { FiltersAndPagination } from '../utils/filtersAndPagination/getFiltersAndPaginationFromBody';
|
|
4
5
|
import { type OrganizationFiltersParams } from '../utils/filtersAndPagination/getOrganizationFiltersAndPagination';
|
|
@@ -31,10 +32,6 @@ export type UpdateOrganizationResult = ResponseData<OrganizationAPI>;
|
|
|
31
32
|
* Updates an existing organization in the database.
|
|
32
33
|
*/
|
|
33
34
|
export declare const updateOrganization: (req: Request<undefined, undefined, UpdateOrganizationBody>, res: ResponseWithSession<UpdateOrganizationResult>, _next: NextFunction) => Promise<void>;
|
|
34
|
-
export type OrganizationMemberByIdOption = {
|
|
35
|
-
userId: string | Types.ObjectId;
|
|
36
|
-
isAdmin?: boolean;
|
|
37
|
-
};
|
|
38
35
|
export type AddOrganizationMemberBody = {
|
|
39
36
|
userEmail: string;
|
|
40
37
|
};
|
|
@@ -44,7 +41,8 @@ export type AddOrganizationMemberResult = ResponseData<OrganizationAPI>;
|
|
|
44
41
|
*/
|
|
45
42
|
export declare const addOrganizationMember: (req: Request<any, any, AddOrganizationMemberBody>, res: ResponseWithSession<AddOrganizationMemberResult>, _next: NextFunction) => Promise<void>;
|
|
46
43
|
export type UpdateOrganizationMembersBody = Partial<{
|
|
47
|
-
membersIds:
|
|
44
|
+
membersIds: (User | UserAPI)['id'][];
|
|
45
|
+
adminsIds: (User | UserAPI)['id'][];
|
|
48
46
|
}>;
|
|
49
47
|
export type UpdateOrganizationMembersResult = ResponseData<OrganizationAPI>;
|
|
50
48
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/organization.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"organization.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/organization.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,wBAAwB,EACzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAO/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EAGL,KAAK,yBAAyB,EAC/B,MAAM,iEAAiE,CAAC;AAOzE,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,MAAM,MAAM,sBAAsB,GAChC,oBAAoB,CAAC,yBAAyB,CAAC,CAAC;AAClD,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,KAAK,OAAO,CAAC,sBAAsB,CAAC,EACpC,KAAK,mBAAmB,CAAC,sBAAsB,CAAC,EAChD,OAAO,YAAY,kBAoDpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAAE,cAAc,EAAE,MAAM,CAAA;CAAE,CAAC;AAC9D,MAAM,MAAM,qBAAqB,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,CAAC,oBAAoB,EAAE,GAAG,EAAE,GAAG,CAAC,EAC5C,KAAK,mBAAmB,CAAC,qBAAqB,CAAC,EAC/C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAoCd,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,wBAAwB,CAAC;AAC3D,MAAM,MAAM,qBAAqB,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,mBAAmB,CAAC,EAC3C,KAAK,mBAAmB,CAAC,qBAAqB,CAAC,EAC/C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAwCd,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AAC3D,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAC7B,KAAK,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,EAC1D,KAAK,mBAAmB,CAAC,wBAAwB,CAAC,EAClD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAsDd,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,2BAA2B,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,yBAAyB,CAAC,EACjD,KAAK,mBAAmB,CAAC,2BAA2B,CAAC,EACrD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA6Fd,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,OAAO,CAAC;IAClD,UAAU,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;IACrC,SAAS,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;CACrC,CAAC,CAAC;AACH,MAAM,MAAM,+BAA+B,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,yBAAyB,GACpC,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,6BAA6B,CAAC,EACrD,KAAK,mBAAmB,CAAC,+BAA+B,CAAC,EACzD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAqFd,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,OAAO,EACb,KAAK,mBAAmB,EACxB,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAwEd,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,cAAc,EAAE,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC;CACzC,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAC7B,KAAK,OAAO,CAAC,uBAAuB,CAAC,EACrC,KAAK,mBAAmB,CAAC,wBAAwB,CAAC,EAClD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAkDd,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC/B,MAAM,OAAO,EACb,KAAK,mBAAmB,CAAC,0BAA0B,CAAC,EACpD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAwCd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/project.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EAEpB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAK/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,4DAA4D,CAAC;AAIpE,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAC3E,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,OAAO,CAAC,iBAAiB,CAAC,EAC/B,KAAK,mBAAmB,CAAC,iBAAiB,CAAC,EAC3C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA2Dd,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC;AACjD,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,EACtC,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,EAC1C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"project.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/project.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EAEpB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAK/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,4DAA4D,CAAC;AAIpE,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;AAC3E,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,KAAK,OAAO,CAAC,iBAAiB,CAAC,EAC/B,KAAK,mBAAmB,CAAC,iBAAiB,CAAC,EAC3C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA2Dd,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC;AACjD,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,EACtC,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,EAC1C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAqFd,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACjD,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,aAAa,GACxB,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,EACzC,KAAK,mBAAmB,CAAC,mBAAmB,CAAC,EAC7C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAiEd,CAAC;AAGF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAAC;IAC7C,UAAU,EAAE,uBAAuB,EAAE,CAAC;CACvC,CAAC,CAAC;AACH,MAAM,MAAM,0BAA0B,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAC/B,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,wBAAwB,CAAC,EAChD,KAAK,mBAAmB,CAAC,0BAA0B,CAAC,EACpD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA2Gd,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AAChE,MAAM,MAAM,8BAA8B,GAAG,YAAY,CAAC,oBAAoB,CAAC,CAAC;AAEhF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,GACnC,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,4BAA4B,CAAC,EACpD,KAAK,mBAAmB,CAAC,8BAA8B,CAAC,EACxD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA4Dd,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,OAAO,EACb,KAAK,mBAAmB,CAAC,mBAAmB,CAAC,EAC7C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAoFd,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAA;CAAE,CAAC;AACxE,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,aAAa,GACxB,KAAK,OAAO,CAAC,kBAAkB,CAAC,EAChC,KAAK,mBAAmB,CAAC,mBAAmB,CAAC,EAC7C,OAAO,YAAY,kBA2CpB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,MAAM,OAAO,EACb,KAAK,mBAAmB,CAAC,qBAAqB,CAAC,EAC/C,OAAO,YAAY,kBAmCpB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectAccessKey.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/projectAccessKey.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAK/E,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGrD,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAChD,MAAM,MAAM,uBAAuB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,CAAC,mBAAmB,CAAC,EACjC,KAAK,mBAAmB,CAAC,uBAAuB,CAAC,EACjD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"projectAccessKey.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/projectAccessKey.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAK/E,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGrD,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAChD,MAAM,MAAM,uBAAuB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,CAAC,mBAAmB,CAAC,EACjC,KAAK,mBAAmB,CAAC,uBAAuB,CAAC,EACjD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAwEd,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AACvD,MAAM,MAAM,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,EACZ,KAAK,mBAAmB,CAAC,uBAAuB,CAAC,EACjD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAkEd,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AACxD,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAC3B,KAAK,OAAO,CAAC,oBAAoB,CAAC,EAClC,KAAK,mBAAmB,CAAC,wBAAwB,CAAC,EAClD,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAwDd,CAAC"}
|
|
@@ -20,7 +20,10 @@ export type GetCheckoutSessionBody = {
|
|
|
20
20
|
priceId: string;
|
|
21
21
|
promoCode?: string;
|
|
22
22
|
};
|
|
23
|
-
export type GetCheckoutSessionResult = ResponseData<
|
|
23
|
+
export type GetCheckoutSessionResult = ResponseData<{
|
|
24
|
+
subscription: Stripe.Response<Stripe.Subscription>;
|
|
25
|
+
clientSecret: string;
|
|
26
|
+
}>;
|
|
24
27
|
/**
|
|
25
28
|
* Handles subscription creation or update with Stripe and returns a ClientSecret.
|
|
26
29
|
* @param req - Express request object.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripe.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/stripe.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,OAAO,KAAK,mBAAmB,MAAM,gCAAgC,CAAC;AAGtE,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAE/E;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,KAAK,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,EAClD,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,kBAe3C,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"stripe.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/stripe.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,OAAO,KAAK,mBAAmB,MAAM,gCAAgC,CAAC;AAGtE,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;AAE/E;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,KAAK,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,EAClD,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,kBAe3C,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,YAAY,CAAC;IAClD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACnD,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,KAAK,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,sBAAsB,CAAC,EAC1D,KAAK,mBAAmB,CAAC,wBAAwB,CAAC,KACjD,OAAO,CAAC,IAAI,CAwHd,CAAC;AAEF,KAAK,sBAAsB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEnD,KAAK,wBAAwB,GAAG,YAAY,CAAC,sBAAsB,CAAC,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,MAAM,OAAO,EACb,KAAK,mBAAmB,CAAC,wBAAwB,CAAC,KACjD,OAAO,CAAC,IAAI,CA+Ed,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/tag.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,GAAG,EACH,MAAM,EACN,eAAe,EACf,OAAO,EAER,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAG/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,wDAAwD,CAAC;AAGhE,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGrD,MAAM,MAAM,aAAa,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;AACnE,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,OAAO,GAClB,KAAK,OAAO,CAAC,aAAa,CAAC,EAC3B,KAAK,mBAAmB,CAAC,aAAa,CAAC,EACvC,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"tag.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/tag.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,GAAG,EACH,MAAM,EACN,eAAe,EACf,OAAO,EAER,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAG/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,wDAAwD,CAAC;AAGhE,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGrD,MAAM,MAAM,aAAa,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;AACnE,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,OAAO,GAClB,KAAK,OAAO,CAAC,aAAa,CAAC,EAC3B,KAAK,mBAAmB,CAAC,aAAa,CAAC,EACvC,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAsDd,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,eAAe,CAAC;AACzC,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,MAAM,GACjB,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,EAClC,KAAK,mBAAmB,CAAC,YAAY,CAAC,EACtC,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAoEd,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC;AAC5D,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7C,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,SAAS,GACpB,KAAK,OAAO,CAAC,eAAe,EAAE,GAAG,EAAE,aAAa,CAAC,EACjD,KAAK,mBAAmB,CAAC,eAAe,CAAC,EACzC,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAmEd,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC;AAC5D,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GACpB,KAAK,OAAO,CAAC,eAAe,CAAC,EAC7B,KAAK,mBAAmB,CAAC,eAAe,CAAC,EACzC,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA0Ed,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/user.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAI/E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AAExG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yDAAyD,CAAC;AAGhG,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGrD,MAAM,MAAM,cAAc,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAClE,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,EAC5B,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,EAC1C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAwCd,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;AACpE,MAAM,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,QAAQ,GACnB,KAAK,OAAO,CAAC,cAAc,CAAC,EAC5B,KAAK,mBAAmB,CAAC,cAAc,CAAC,EACxC,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CA6Cd,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AACnD,MAAM,MAAM,iBAAiB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AAEtD,eAAO,MAAM,WAAW,GACtB,KAAK,OAAO,CAAC,iBAAiB,CAAC,EAC/B,KAAK,mBAAmB,CAAC,iBAAiB,CAAC,EAC3C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAoBd,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AACrD,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AAEzD,eAAO,MAAM,cAAc,GACzB,KAAK,OAAO,CAAC,oBAAoB,CAAC,EAClC,KAAK,mBAAmB,CAAC,oBAAoB,CAAC,EAC9C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAiCd,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAC3C,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,KAAK,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,GAAG,SAAS,CAAC,EAClD,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,EAC1C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,CAuDd,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAClD,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,KAAK,OAAO,CAAC,gBAAgB,CAAC,EAC9B,KAAK,mBAAmB,CAAC,gBAAgB,CAAC,EAC1C,OAAO,YAAY,KAClB,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"user.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/user.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OAuthTokenCreatedEmail.d.ts","sourceRoot":"","sources":["../../../src/emails/OAuthTokenCreatedEmail.tsx"],"names":[],"mappings":"AAgBA,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,wBAAwB;0FAOlC,2BAA2B;;
|
|
1
|
+
{"version":3,"file":"OAuthTokenCreatedEmail.d.ts","sourceRoot":"","sources":["../../../src/emails/OAuthTokenCreatedEmail.tsx"],"names":[],"mappings":"AAgBA,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,wBAAwB;0FAOlC,2BAA2B;;CAyE7B,CAAC;AAEF,eAAO,MAAM,wBAAwB;0FAOlC,2BAA2B;;CAsE7B,CAAC;AAEF,eAAO,MAAM,wBAAwB;0FAOlC,2BAA2B;;CAqE7B,CAAC"}
|
|
@@ -17,9 +17,7 @@ export type Organization = OrganizationData & {
|
|
|
17
17
|
createdAt: number;
|
|
18
18
|
updatedAt: number;
|
|
19
19
|
};
|
|
20
|
-
export type OrganizationAPI = ObjectIdToString<
|
|
21
|
-
adminsIds?: User['id'][];
|
|
22
|
-
}>;
|
|
20
|
+
export type OrganizationAPI = ObjectIdToString<Organization>;
|
|
23
21
|
export type OrganizationSchema = RenameId<Organization>;
|
|
24
22
|
export type OrganizationModelType = Model<Organization>;
|
|
25
23
|
export type OrganizationDocument = Document<unknown, {}, Organization> & Organization;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization.types.d.ts","sourceRoot":"","sources":["../../../src/types/organization.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG;IAC5C,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"organization.types.d.ts","sourceRoot":"","sources":["../../../src/types/organization.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG;IAC5C,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;AAE7D,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;AACxD,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,CAAC,GACpE,YAAY,CAAC"}
|
|
@@ -50,9 +50,7 @@ export type Project = ProjectData & {
|
|
|
50
50
|
updatedAt: number;
|
|
51
51
|
oAuth2Access: OAuth2Access[];
|
|
52
52
|
};
|
|
53
|
-
export type ProjectAPI = ObjectIdToString<
|
|
54
|
-
adminsIds?: User['id'][];
|
|
55
|
-
}>;
|
|
53
|
+
export type ProjectAPI = ObjectIdToString<Project>;
|
|
56
54
|
export type ProjectSchema = RenameId<Project>;
|
|
57
55
|
export type ProjectModelType = Model<Project>;
|
|
58
56
|
export type ProjectDocument = Document<unknown, {}, Project> & Project;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.types.d.ts","sourceRoot":"","sources":["../../../src/types/project.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACvB,CAAC;AAEF,KAAK,iCAAiC,GAAG,IAAI,CAC3C,cAAc,CAAC,sBAAsB,CAAC,EACtC,SAAS,GAAG,eAAe,CAC5B,CAAC;AAEF,KAAK,mBAAmB,GAAG,IAAI,CAC7B,cAAc,CAAC,QAAQ,CAAC,EACxB,gBAAgB,GAAG,QAAQ,CAC5B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,oBAAoB,EAAE,iCAAiC,CAAC;IACxD,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACxB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,KAAK,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG;IAC5C,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG;IAClC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"project.types.d.ts","sourceRoot":"","sources":["../../../src/types/project.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACvB,CAAC;AAEF,KAAK,iCAAiC,GAAG,IAAI,CAC3C,cAAc,CAAC,sBAAsB,CAAC,EACtC,SAAS,GAAG,eAAe,CAC5B,CAAC;AAEF,KAAK,mBAAmB,GAAG,IAAI,CAC7B,cAAc,CAAC,QAAQ,CAAC,EACxB,gBAAgB,GAAG,QAAQ,CAC5B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,oBAAoB,EAAE,iCAAiC,CAAC;IACxD,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACzB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACxB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,KAAK,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,gBAAgB,GAAG;IAC5C,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,WAAW,GAAG;IAClC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC9C,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"askDocQuestion.d.ts","sourceRoot":"","sources":["../../../../../src/utils/AI/askDocQuestion/askDocQuestion.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,QAAQ,EACR,SAAS,EAET,4BAA4B,EAC7B,MAAM,UAAU,CAAC;AAGlB,KAAK,aAAa,GAAG;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAoBF,eAAO,MAAM,gBAAgB,EAAE,SAI9B,CAAC;AA2FF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAa,OAAO,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"askDocQuestion.d.ts","sourceRoot":"","sources":["../../../../../src/utils/AI/askDocQuestion/askDocQuestion.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,QAAQ,EACR,SAAS,EAET,4BAA4B,EAC7B,MAAM,UAAU,CAAC;AAGlB,KAAK,aAAa,GAAG;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAoBF,eAAO,MAAM,gBAAgB,EAAE,SAI9B,CAAC;AA2FF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAa,OAAO,CAAC,IAAI,CAyHvD,CAAC;AAKF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,MAAM,EACb,aAAY,MAA+B,EAC3C,gBAAe,MAAuC,KACrD,OAAO,CAAC,aAAa,EAAE,CA8BzB,CAAC;AAmBF,eAAO,MAAM,UAAU,EAAE,4BAGxB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,GACzB,UAAU,4BAA4B,EAAE,EACxC,UAAU,QAAQ,EAClB,UAAU,qBAAqB,KAC9B,OAAO,CAAC,oBAAoB,CAoE9B,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Session, SessionContext } from '../../types/session.types';
|
|
2
2
|
import { betterAuth, OmitId } from 'better-auth';
|
|
3
3
|
import type { MongoClient } from 'mongodb';
|
|
4
4
|
export type Auth = ReturnType<typeof betterAuth>;
|
|
5
|
-
export declare const formatSession: (session: SessionContext) => OmitId<
|
|
5
|
+
export declare const formatSession: (session: SessionContext) => OmitId<Session>;
|
|
6
6
|
export declare const getAuth: (dbClient: MongoClient) => Auth;
|
|
7
7
|
//# sourceMappingURL=getAuth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAuth.d.ts","sourceRoot":"","sources":["../../../../src/utils/auth/getAuth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"getAuth.d.ts","sourceRoot":"","sources":["../../../../src/utils/auth/getAuth.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EAEf,MAAM,uBAAuB,CAAC;AAiB/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAEjD,eAAO,MAAM,aAAa,GAAI,SAAS,cAAc,KAAG,MAAM,CAAC,OAAO,CAoBrE,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,UAAU,WAAW,KAAG,IAyN/C,CAAC"}
|
|
@@ -1365,6 +1365,19 @@ export declare const errorData: {
|
|
|
1365
1365
|
};
|
|
1366
1366
|
statusCode: HttpStatusCodes.FORBIDDEN_403;
|
|
1367
1367
|
};
|
|
1368
|
+
INVALID_REQUEST_BODY: {
|
|
1369
|
+
title: {
|
|
1370
|
+
en: string;
|
|
1371
|
+
fr: string;
|
|
1372
|
+
es: string;
|
|
1373
|
+
};
|
|
1374
|
+
message: {
|
|
1375
|
+
en: string;
|
|
1376
|
+
fr: string;
|
|
1377
|
+
es: string;
|
|
1378
|
+
};
|
|
1379
|
+
statusCode: HttpStatusCodes.BAD_REQUEST_400;
|
|
1380
|
+
};
|
|
1368
1381
|
};
|
|
1369
1382
|
export type ErrorCodes = keyof typeof errorData;
|
|
1370
1383
|
//# sourceMappingURL=errorCodes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorCodes.d.ts","sourceRoot":"","sources":["../../../../src/utils/errors/errorCodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAUzD,eAAO,MAAM,SAAS
|
|
1
|
+
{"version":3,"file":"errorCodes.d.ts","sourceRoot":"","sources":["../../../../src/utils/errors/errorCodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAUzD,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAs2Ce,CAAC;AAEtC,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../../src/utils/mapper/project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGjE;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,OAAO,GAAG,UAAU,GAAG,IAAI,EACnE,UAAU,CAAC,KACV,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../../src/utils/mapper/project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGjE;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,OAAO,GAAG,UAAU,GAAG,IAAI,EACnE,UAAU,CAAC,KACV,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,UAQ1B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAC3B,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,EAAE,KACjC,UAAU,EACkD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../src/utils/mapper/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAK1C,eAAO,MAAM,eAAe,GAC1B,SAAS,MAAM,CAAC,OAAO,CAAC,KACvB,MAAM,CAAC,UAAU,CAKlB,CAAC"}
|