@memberjunction/server 2.1.5 → 2.2.1
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/apolloServer/TransactionPlugin.d.ts +1 -1
- package/dist/apolloServer/TransactionPlugin.d.ts.map +1 -1
- package/dist/apolloServer/TransactionPlugin.js.map +1 -1
- package/dist/apolloServer/index.d.ts +1 -1
- package/dist/apolloServer/index.d.ts.map +1 -1
- package/dist/apolloServer/index.js +2 -2
- package/dist/apolloServer/index.js.map +1 -1
- package/dist/auth/exampleNewUserSubClass.d.ts +1 -1
- package/dist/auth/exampleNewUserSubClass.d.ts.map +1 -1
- package/dist/auth/exampleNewUserSubClass.js +7 -7
- package/dist/auth/exampleNewUserSubClass.js.map +1 -1
- package/dist/auth/index.d.ts +1 -1
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +18 -8
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/newUsers.js +1 -1
- package/dist/auth/newUsers.js.map +1 -1
- package/dist/context.d.ts +1 -1
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +4 -4
- package/dist/context.js.map +1 -1
- package/dist/directives/Public.d.ts +1 -1
- package/dist/directives/Public.d.ts.map +1 -1
- package/dist/directives/index.d.ts +1 -1
- package/dist/directives/index.d.ts.map +1 -1
- package/dist/directives/index.js +1 -1
- package/dist/directives/index.js.map +1 -1
- package/dist/entitySubclasses/entityPermissions.server.d.ts +1 -1
- package/dist/entitySubclasses/entityPermissions.server.d.ts.map +1 -1
- package/dist/entitySubclasses/entityPermissions.server.js +5 -6
- package/dist/entitySubclasses/entityPermissions.server.js.map +1 -1
- package/dist/generated/generated.d.ts +14 -2
- package/dist/generated/generated.d.ts.map +1 -1
- package/dist/generated/generated.js +79 -18
- package/dist/generated/generated.js.map +1 -1
- package/dist/generic/ResolverBase.d.ts +3 -3
- package/dist/generic/ResolverBase.d.ts.map +1 -1
- package/dist/generic/ResolverBase.js +1 -1
- package/dist/generic/ResolverBase.js.map +1 -1
- package/dist/generic/RunViewResolver.d.ts +2 -2
- package/dist/generic/RunViewResolver.d.ts.map +1 -1
- package/dist/generic/RunViewResolver.js +1 -1
- package/dist/generic/RunViewResolver.js.map +1 -1
- package/dist/index.d.ts +21 -21
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +36 -27
- package/dist/index.js.map +1 -1
- package/dist/orm.js +4 -4
- package/dist/orm.js.map +1 -1
- package/dist/resolvers/AskSkipResolver.d.ts +3 -3
- package/dist/resolvers/AskSkipResolver.d.ts.map +1 -1
- package/dist/resolvers/AskSkipResolver.js +64 -59
- package/dist/resolvers/AskSkipResolver.js.map +1 -1
- package/dist/resolvers/ColorResolver.d.ts +1 -1
- package/dist/resolvers/ColorResolver.d.ts.map +1 -1
- package/dist/resolvers/ColorResolver.js +1 -1
- package/dist/resolvers/ColorResolver.js.map +1 -1
- package/dist/resolvers/DatasetResolver.d.ts +1 -1
- package/dist/resolvers/DatasetResolver.d.ts.map +1 -1
- package/dist/resolvers/EntityCommunicationsResolver.d.ts +2 -2
- package/dist/resolvers/EntityCommunicationsResolver.d.ts.map +1 -1
- package/dist/resolvers/EntityCommunicationsResolver.js +9 -4
- package/dist/resolvers/EntityCommunicationsResolver.js.map +1 -1
- package/dist/resolvers/EntityRecordNameResolver.d.ts +2 -2
- package/dist/resolvers/EntityRecordNameResolver.d.ts.map +1 -1
- package/dist/resolvers/EntityRecordNameResolver.js +2 -2
- package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
- package/dist/resolvers/EntityResolver.d.ts +2 -2
- package/dist/resolvers/EntityResolver.d.ts.map +1 -1
- package/dist/resolvers/EntityResolver.js +1 -1
- package/dist/resolvers/EntityResolver.js.map +1 -1
- package/dist/resolvers/FileCategoryResolver.d.ts +1 -1
- package/dist/resolvers/FileCategoryResolver.d.ts.map +1 -1
- package/dist/resolvers/FileCategoryResolver.js +2 -2
- package/dist/resolvers/FileCategoryResolver.js.map +1 -1
- package/dist/resolvers/FileResolver.d.ts +2 -2
- package/dist/resolvers/FileResolver.d.ts.map +1 -1
- package/dist/resolvers/FileResolver.js +3 -3
- package/dist/resolvers/FileResolver.js.map +1 -1
- package/dist/resolvers/MergeRecordsResolver.d.ts +2 -2
- package/dist/resolvers/MergeRecordsResolver.d.ts.map +1 -1
- package/dist/resolvers/MergeRecordsResolver.js +4 -2
- package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
- package/dist/resolvers/PotentialDuplicateRecordResolver.d.ts +2 -2
- package/dist/resolvers/PotentialDuplicateRecordResolver.d.ts.map +1 -1
- package/dist/resolvers/PotentialDuplicateRecordResolver.js +1 -1
- package/dist/resolvers/PotentialDuplicateRecordResolver.js.map +1 -1
- package/dist/resolvers/QueryResolver.d.ts +1 -1
- package/dist/resolvers/QueryResolver.d.ts.map +1 -1
- package/dist/resolvers/ReportResolver.d.ts +1 -1
- package/dist/resolvers/ReportResolver.d.ts.map +1 -1
- package/dist/resolvers/ReportResolver.js +16 -14
- package/dist/resolvers/ReportResolver.js.map +1 -1
- package/dist/resolvers/UserFavoriteResolver.d.ts +1 -1
- package/dist/resolvers/UserFavoriteResolver.d.ts.map +1 -1
- package/dist/resolvers/UserFavoriteResolver.js +17 -16
- package/dist/resolvers/UserFavoriteResolver.js.map +1 -1
- package/dist/resolvers/UserResolver.d.ts +1 -1
- package/dist/resolvers/UserResolver.d.ts.map +1 -1
- package/dist/resolvers/UserResolver.js +1 -1
- package/dist/resolvers/UserResolver.js.map +1 -1
- package/dist/resolvers/UserViewResolver.d.ts +1 -1
- package/dist/resolvers/UserViewResolver.d.ts.map +1 -1
- package/dist/resolvers/UserViewResolver.js +2 -2
- package/dist/resolvers/UserViewResolver.js.map +1 -1
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +11 -5
- package/dist/util.js.map +1 -1
- package/package.json +27 -23
- package/src/apolloServer/TransactionPlugin.ts +53 -0
- package/src/apolloServer/index.ts +33 -0
- package/src/auth/exampleNewUserSubClass.ts +79 -0
- package/src/auth/index.ts +171 -0
- package/src/auth/newUsers.ts +58 -0
- package/src/auth/tokenExpiredError.ts +12 -0
- package/src/cache.ts +10 -0
- package/src/config.ts +89 -0
- package/src/context.ts +111 -0
- package/src/directives/Public.ts +42 -0
- package/src/directives/index.ts +1 -0
- package/src/entitySubclasses/DuplicateRunEntity.server.ts +29 -0
- package/src/entitySubclasses/entityPermissions.server.ts +104 -0
- package/src/entitySubclasses/userViewEntity.server.ts +187 -0
- package/src/generated/generated.ts +25406 -0
- package/src/generic/DeleteOptionsInput.ts +13 -0
- package/src/generic/KeyInputOutputTypes.ts +35 -0
- package/src/generic/KeyValuePairInput.ts +14 -0
- package/src/generic/PushStatusResolver.ts +40 -0
- package/src/generic/ResolverBase.ts +767 -0
- package/src/generic/RunViewResolver.ts +579 -0
- package/src/index.ts +171 -0
- package/src/orm.ts +36 -0
- package/src/resolvers/AskSkipResolver.ts +1112 -0
- package/src/resolvers/ColorResolver.ts +61 -0
- package/src/resolvers/DatasetResolver.ts +115 -0
- package/src/resolvers/EntityCommunicationsResolver.ts +221 -0
- package/src/resolvers/EntityRecordNameResolver.ts +75 -0
- package/src/resolvers/EntityResolver.ts +35 -0
- package/src/resolvers/FileCategoryResolver.ts +69 -0
- package/src/resolvers/FileResolver.ts +152 -0
- package/src/resolvers/MergeRecordsResolver.ts +175 -0
- package/src/resolvers/PotentialDuplicateRecordResolver.ts +91 -0
- package/src/resolvers/QueryResolver.ts +42 -0
- package/src/resolvers/ReportResolver.ts +144 -0
- package/src/resolvers/UserFavoriteResolver.ts +176 -0
- package/src/resolvers/UserResolver.ts +33 -0
- package/src/resolvers/UserViewResolver.ts +64 -0
- package/src/types.ts +40 -0
- package/src/util.ts +112 -0
|
@@ -11,9 +11,9 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
11
11
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
12
|
};
|
|
13
13
|
import { Metadata, CompositeKey } from '@memberjunction/core';
|
|
14
|
-
import { Arg, CompositeKeyInputType, CompositeKeyOutputType, Ctx, Field, InputType, Int, Mutation, ObjectType, Query, Resolver } from '@memberjunction/server';
|
|
14
|
+
import { Arg, CompositeKeyInputType, CompositeKeyOutputType, Ctx, Field, InputType, Int, Mutation, ObjectType, Query, Resolver, } from '@memberjunction/server';
|
|
15
15
|
import { UserCache } from '@memberjunction/sqlserver-dataprovider';
|
|
16
|
-
import { UserFavorite_, UserFavoriteResolverBase } from '../generated/generated';
|
|
16
|
+
import { UserFavorite_, UserFavoriteResolverBase } from '../generated/generated.js';
|
|
17
17
|
let UserFavoriteSearchParams = class UserFavoriteSearchParams {
|
|
18
18
|
EntityID;
|
|
19
19
|
CompositeKey;
|
|
@@ -133,7 +133,8 @@ let UserFavoriteResolver = class UserFavoriteResolver extends UserFavoriteResolv
|
|
|
133
133
|
throw new Error(`Entity ID:${params.EntityID} not found`);
|
|
134
134
|
}
|
|
135
135
|
GetTestData() {
|
|
136
|
-
return [
|
|
136
|
+
return [
|
|
137
|
+
{
|
|
137
138
|
firstName: 'John',
|
|
138
139
|
lastName: 'Doe',
|
|
139
140
|
title: 'Software Engineer II',
|
|
@@ -143,22 +144,22 @@ let UserFavoriteResolver = class UserFavoriteResolver extends UserFavoriteResolv
|
|
|
143
144
|
street: '123 Main St',
|
|
144
145
|
city: 'Springfield',
|
|
145
146
|
state: 'IL',
|
|
146
|
-
zip: '62701'
|
|
147
|
+
zip: '62701',
|
|
147
148
|
},
|
|
148
149
|
recommendedArticles: [
|
|
149
150
|
{
|
|
150
151
|
title: 'How to Write Better Code',
|
|
151
|
-
url: 'https://example.com/article1'
|
|
152
|
+
url: 'https://example.com/article1',
|
|
152
153
|
},
|
|
153
154
|
{
|
|
154
155
|
title: 'The Art of Debugging',
|
|
155
|
-
url: 'https://example.com/article2'
|
|
156
|
+
url: 'https://example.com/article2',
|
|
156
157
|
},
|
|
157
158
|
{
|
|
158
159
|
title: 'Using Templates Effectively',
|
|
159
|
-
url: 'https://example.com/article3'
|
|
160
|
-
}
|
|
161
|
-
]
|
|
160
|
+
url: 'https://example.com/article3',
|
|
161
|
+
},
|
|
162
|
+
],
|
|
162
163
|
},
|
|
163
164
|
{
|
|
164
165
|
firstName: 'Jane',
|
|
@@ -170,23 +171,23 @@ let UserFavoriteResolver = class UserFavoriteResolver extends UserFavoriteResolv
|
|
|
170
171
|
street: '456 Elm St',
|
|
171
172
|
city: 'Chicago',
|
|
172
173
|
state: 'IL',
|
|
173
|
-
zip: '62702'
|
|
174
|
+
zip: '62702',
|
|
174
175
|
},
|
|
175
176
|
recommendedArticles: [
|
|
176
177
|
{
|
|
177
178
|
title: 'Exemplifying the Importance of Code Reviews',
|
|
178
|
-
url: 'https://example.com/article1'
|
|
179
|
+
url: 'https://example.com/article1',
|
|
179
180
|
},
|
|
180
181
|
{
|
|
181
182
|
title: 'AI and Software Development: A New Frontier',
|
|
182
|
-
url: 'https://example.com/article2'
|
|
183
|
+
url: 'https://example.com/article2',
|
|
183
184
|
},
|
|
184
185
|
{
|
|
185
186
|
title: 'Gardening Tips for Fun Loving Software Developers',
|
|
186
|
-
url: 'https://example.com/article3'
|
|
187
|
-
}
|
|
188
|
-
]
|
|
189
|
-
}
|
|
187
|
+
url: 'https://example.com/article3',
|
|
188
|
+
},
|
|
189
|
+
],
|
|
190
|
+
},
|
|
190
191
|
];
|
|
191
192
|
}
|
|
192
193
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserFavoriteResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserFavoriteResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAgB,YAAY,EAAY,MAAM,sBAAsB,CAAC;AACtF,OAAO,
|
|
1
|
+
{"version":3,"file":"UserFavoriteResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserFavoriteResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AppContext } from '@memberjunction/server';
|
|
2
|
-
import { UserResolverBase } from '../generated/generated';
|
|
2
|
+
import { UserResolverBase } from '../generated/generated.js';
|
|
3
3
|
export declare class UserResolver extends UserResolverBase {
|
|
4
4
|
CurrentUser({ dataSource, userPayload }: AppContext): Promise<any>;
|
|
5
5
|
UserByID(ID: number, { dataSource }: AppContext): Promise<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkC,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAS,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"UserResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAkC,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAS,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,qBACa,YAAa,SAAQ,gBAAgB;IAE1C,WAAW,CAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,UAAU;IAO1D,QAAQ,CAAuB,EAAE,EAAE,MAAM,EAAS,EAAE,UAAU,EAAE,EAAE,UAAU;IAM5E,gBAAgB,CAA+B,UAAU,EAAE,MAAM,EAAS,EAAE,UAAU,EAAE,EAAE,UAAU;IAMpG,WAAW,CAA6B,KAAK,EAAE,MAAM,EAAS,EAAE,UAAU,EAAE,EAAE,UAAU;CAM/F;AACD,eAAe,YAAY,CAAC"}
|
|
@@ -11,7 +11,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
11
11
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
12
|
};
|
|
13
13
|
import { Arg, Ctx, Int, Query, Resolver } from '@memberjunction/server';
|
|
14
|
-
import { User_, UserResolverBase } from '../generated/generated';
|
|
14
|
+
import { User_, UserResolverBase } from '../generated/generated.js';
|
|
15
15
|
let UserResolver = class UserResolver extends UserResolverBase {
|
|
16
16
|
async CurrentUser({ dataSource, userPayload }) {
|
|
17
17
|
const result = await this.UserByEmail(userPayload.email, { dataSource, userPayload });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"UserResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,gBAAgB;IAE1C,AAAN,KAAK,CAAC,WAAW,CAAQ,EAAE,UAAU,EAAE,WAAW,EAAc;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;QACtF,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ,CAAuB,EAAU,EAAS,EAAE,UAAU,EAAc;QAChF,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3F,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAGK,AAAN,KAAK,CAAC,gBAAgB,CAA+B,UAAkB,EAAS,EAAE,UAAU,EAAc;QACxG,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;QACnG,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CAA6B,KAAa,EAAS,EAAE,UAAU,EAAc;QAE5F,MAAM,WAAW,GAAG,KAAK,CAAC;QAC1B,MAAM,SAAS,GAAG,KAAK,CAAC,qBAAqB,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAC9G,OAAO,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC3D,CAAC;CACF,CAAA;AAzBO;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;IACA,WAAA,GAAG,EAAE,CAAA;;;;+CAIvB;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;IACH,WAAA,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAc,WAAA,GAAG,EAAE,CAAA;;;;4CAGtD;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;IACK,WAAA,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAsB,WAAA,GAAG,EAAE,CAAA;;;;oDAG9E;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;IACA,WAAA,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;IAAiB,WAAA,GAAG,EAAE,CAAA;;;;+CAKlE;AA1BU,YAAY;IADxB,QAAQ,CAAC,KAAK,CAAC;GACH,YAAY,CA2BxB;;AACD,eAAe,YAAY,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AppContext, UserPayload } from '@memberjunction/server';
|
|
2
2
|
import { DataSource } from 'typeorm';
|
|
3
|
-
import { UserViewResolverBase } from '../generated/generated';
|
|
3
|
+
import { UserViewResolverBase } from '../generated/generated.js';
|
|
4
4
|
export declare class UserViewResolver extends UserViewResolverBase {
|
|
5
5
|
UserViewsByUserID(UserID: number, { dataSource }: AppContext): Promise<any>;
|
|
6
6
|
DefaultViewByUserAndEntity(UserID: number, EntityID: number, { dataSource }: AppContext): Promise<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserViewResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAkC,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAa,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"UserViewResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAkC,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAa,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAI5E,qBACa,gBAAiB,SAAQ,oBAAoB;IAElD,iBAAiB,CAA2B,MAAM,EAAE,MAAM,EAAS,EAAE,UAAU,EAAE,EAAE,UAAU;IAK7F,0BAA0B,CACJ,MAAM,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EACrC,EAAE,UAAU,EAAE,EAAE,UAAU;IAM7B,gCAAgC,CAA6B,QAAQ,EAAE,MAAM,EAAS,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,UAAU;cAQnH,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAO7F,8BAA8B,CAA6B,QAAQ,EAAE,MAAM,EAAS,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,UAAU;IAK3H,iBAAiB,CAA0B,EAAE,EAAE,MAAM,EAAS,EAAE,WAAW,EAAE,EAAE,UAAU;CAgBhG;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -12,8 +12,8 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
12
12
|
};
|
|
13
13
|
import { Metadata } from '@memberjunction/core';
|
|
14
14
|
import { Arg, Ctx, Int, Query, Resolver } from '@memberjunction/server';
|
|
15
|
-
import { UserView_, UserViewResolverBase } from '../generated/generated';
|
|
16
|
-
import { UserResolver } from './UserResolver';
|
|
15
|
+
import { UserView_, UserViewResolverBase } from '../generated/generated.js';
|
|
16
|
+
import { UserResolver } from './UserResolver.js';
|
|
17
17
|
let UserViewResolver = class UserViewResolver extends UserViewResolverBase {
|
|
18
18
|
async UserViewsByUserID(UserID, { dataSource }) {
|
|
19
19
|
return await this.findBy(dataSource, 'User Views', { UserID });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserViewResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAe,MAAM,wBAAwB,CAAC;AAEjG,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"UserViewResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAe,MAAM,wBAAwB,CAAC;AAEjG,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAI1C,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,oBAAoB;IAElD,AAAN,KAAK,CAAC,iBAAiB,CAA2B,MAAc,EAAS,EAAE,UAAU,EAAc;QACjG,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IAGK,AAAN,KAAK,CAAC,0BAA0B,CACJ,MAAc,EACZ,QAAgB,EACrC,EAAE,UAAU,EAAc;QAEjC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5F,CAAC;IAGK,AAAN,KAAK,CAAC,gCAAgC,CAA6B,QAAgB,EAAS,EAAE,UAAU,EAAE,WAAW,EAAc;QACjI,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,EAAE;YACjD,MAAM,EAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,WAAW,CAAC;YAC5D,QAAQ;YACR,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,UAAsB,EAAE,WAAwB;QAC/E,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;QAC5F,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAGK,AAAN,KAAK,CAAC,8BAA8B,CAA6B,QAAgB,EAAS,EAAE,UAAU,EAAE,WAAW,EAAc;QAC/H,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3H,CAAC;IAGK,AAAN,KAAK,CAAC,iBAAiB,CAA0B,EAAU,EAAS,EAAE,WAAW,EAAc;QAK7F,MAAM,EAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,UAAU,GAA2B,MAAM,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QACrF,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAC/B,IAAI,MAAM,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5B,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;CACF,CAAA;AAlDO;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IACA,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAkB,WAAA,GAAG,EAAE,CAAA;;;;yDAEvE;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IAEtB,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IACxB,WAAA,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAC1B,WAAA,GAAG,EAAE,CAAA;;;;kEAGP;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IACe,WAAA,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAoB,WAAA,GAAG,EAAE,CAAA;;;;wEAM1F;AASK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IACa,WAAA,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAoB,WAAA,GAAG,EAAE,CAAA;;;;sEAExF;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;IACA,WAAA,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;IAAc,WAAA,GAAG,EAAE,CAAA;;;;yDAelE;AAnDU,gBAAgB;IAD5B,QAAQ,CAAC,SAAS,CAAC;GACP,gBAAgB,CAoD5B;;AAED,eAAe,gBAAgB,CAAC"}
|
package/dist/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AASA,KAAK,cAAc,GAAG,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;AAahD,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,cAAc,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAyFjL"}
|
package/dist/util.js
CHANGED
|
@@ -3,6 +3,7 @@ import { request as httpsRequest } from 'https';
|
|
|
3
3
|
import { gzip as gzipCallback, createGunzip } from 'zlib';
|
|
4
4
|
import { promisify } from 'util';
|
|
5
5
|
import { URL } from 'url';
|
|
6
|
+
import { z } from 'zod';
|
|
6
7
|
const gzip = promisify(gzipCallback);
|
|
7
8
|
export async function sendPostRequest(url, payload, useCompression, headers, streamCallback) {
|
|
8
9
|
return new Promise(async (resolve, reject) => {
|
|
@@ -16,7 +17,8 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
16
17
|
headers['Content-Encoding'] = 'gzip';
|
|
17
18
|
}
|
|
18
19
|
catch (error) {
|
|
19
|
-
|
|
20
|
+
const err = z.object({ message: z.string() }).safeParse(error);
|
|
21
|
+
console.error(`Error in sendPostRequest while compressing data: ${err.success ? err.data.message : error}`);
|
|
20
22
|
return reject(error);
|
|
21
23
|
}
|
|
22
24
|
}
|
|
@@ -51,7 +53,8 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
51
53
|
streamCallback?.(jsonObject);
|
|
52
54
|
}
|
|
53
55
|
catch (e) {
|
|
54
|
-
|
|
56
|
+
const err = z.object({ message: z.string() }).safeParse(e);
|
|
57
|
+
console.warn(`Error in postRequest().stream(data) while parsing JSON object: ${err.success ? err.data.message : e}`);
|
|
55
58
|
}
|
|
56
59
|
}
|
|
57
60
|
});
|
|
@@ -63,21 +66,24 @@ export async function sendPostRequest(url, payload, useCompression, headers, str
|
|
|
63
66
|
streamCallback?.(jsonObject);
|
|
64
67
|
}
|
|
65
68
|
catch (e) {
|
|
66
|
-
|
|
69
|
+
const err = z.object({ message: z.string() }).safeParse(e);
|
|
70
|
+
console.warn(`Error in postRequest().stream(end) while parsing JSON object: ${err.success ? err.data.message : e}`);
|
|
67
71
|
}
|
|
68
72
|
}
|
|
69
73
|
resolve(jsonObjects);
|
|
70
74
|
});
|
|
71
75
|
});
|
|
72
76
|
req.on('error', (e) => {
|
|
73
|
-
|
|
77
|
+
const err = z.object({ message: z.string() }).safeParse(e);
|
|
78
|
+
console.error(`Error in sendPostRequest().req.on(error): ${err.success ? err.data.message : e}`);
|
|
74
79
|
reject(e);
|
|
75
80
|
});
|
|
76
81
|
req.write(data);
|
|
77
82
|
req.end();
|
|
78
83
|
}
|
|
79
84
|
catch (e) {
|
|
80
|
-
|
|
85
|
+
const err = z.object({ message: z.string() }).safeParse(e);
|
|
86
|
+
console.error(`Error in sendPostRequest: ${err.success ? err.data.message : e}`);
|
|
81
87
|
reject(e);
|
|
82
88
|
}
|
|
83
89
|
});
|
package/dist/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,MAAM,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,IAAI,IAAI,YAAY,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/server",
|
|
3
|
-
"version": "2.1
|
|
3
|
+
"version": "2.2.1",
|
|
4
4
|
"description": "MemberJunction: This project provides API access via GraphQL to the common data store.",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./src/index.ts",
|
|
@@ -8,8 +8,12 @@
|
|
|
8
8
|
"author": "MemberJunction.com",
|
|
9
9
|
"license": "ISC",
|
|
10
10
|
"files": [
|
|
11
|
-
"/dist"
|
|
11
|
+
"/dist",
|
|
12
|
+
"/src"
|
|
12
13
|
],
|
|
14
|
+
"exports": {
|
|
15
|
+
".": "./dist/index.js"
|
|
16
|
+
},
|
|
13
17
|
"scripts": {
|
|
14
18
|
"build": "tsc",
|
|
15
19
|
"bundle": "tsc -noEmit && pkgroll --sourcemap --minify",
|
|
@@ -18,27 +22,27 @@
|
|
|
18
22
|
"dependencies": {
|
|
19
23
|
"@apollo/server": "^4.9.1",
|
|
20
24
|
"@graphql-tools/utils": "^10.0.1",
|
|
21
|
-
"@memberjunction/actions": "2.1
|
|
22
|
-
"@memberjunction/ai": "2.1
|
|
23
|
-
"@memberjunction/ai-mistral": "2.1
|
|
24
|
-
"@memberjunction/ai-openai": "2.1
|
|
25
|
-
"@memberjunction/ai-vectors-pinecone": "2.1
|
|
26
|
-
"@memberjunction/aiengine": "2.1
|
|
27
|
-
"@memberjunction/core": "2.1
|
|
28
|
-
"@memberjunction/core-actions": "2.1
|
|
29
|
-
"@memberjunction/core-entities": "2.1
|
|
30
|
-
"@memberjunction/data-context": "2.1
|
|
31
|
-
"@memberjunction/data-context-server": "2.1
|
|
32
|
-
"@memberjunction/doc-utils": "2.1
|
|
33
|
-
"@memberjunction/entity-communications-server": "2.1
|
|
34
|
-
"@memberjunction/external-change-detection": "2.1
|
|
35
|
-
"@memberjunction/global": "2.1
|
|
36
|
-
"@memberjunction/queue": "2.1
|
|
37
|
-
"@memberjunction/skip-types": "2.1
|
|
38
|
-
"@memberjunction/sqlserver-dataprovider": "2.1
|
|
39
|
-
"@memberjunction/graphql-dataprovider": "2.1
|
|
40
|
-
"@memberjunction/storage": "2.1
|
|
41
|
-
"@memberjunction/templates": "2.1
|
|
25
|
+
"@memberjunction/actions": "2.2.1",
|
|
26
|
+
"@memberjunction/ai": "2.2.1",
|
|
27
|
+
"@memberjunction/ai-mistral": "2.2.1",
|
|
28
|
+
"@memberjunction/ai-openai": "2.2.1",
|
|
29
|
+
"@memberjunction/ai-vectors-pinecone": "2.2.1",
|
|
30
|
+
"@memberjunction/aiengine": "2.2.1",
|
|
31
|
+
"@memberjunction/core": "2.2.1",
|
|
32
|
+
"@memberjunction/core-actions": "2.2.1",
|
|
33
|
+
"@memberjunction/core-entities": "2.2.1",
|
|
34
|
+
"@memberjunction/data-context": "2.2.1",
|
|
35
|
+
"@memberjunction/data-context-server": "2.2.1",
|
|
36
|
+
"@memberjunction/doc-utils": "2.2.1",
|
|
37
|
+
"@memberjunction/entity-communications-server": "2.2.1",
|
|
38
|
+
"@memberjunction/external-change-detection": "2.2.1",
|
|
39
|
+
"@memberjunction/global": "2.2.1",
|
|
40
|
+
"@memberjunction/queue": "2.2.1",
|
|
41
|
+
"@memberjunction/skip-types": "2.2.1",
|
|
42
|
+
"@memberjunction/sqlserver-dataprovider": "2.2.1",
|
|
43
|
+
"@memberjunction/graphql-dataprovider": "2.2.1",
|
|
44
|
+
"@memberjunction/storage": "2.2.1",
|
|
45
|
+
"@memberjunction/templates": "2.2.1",
|
|
42
46
|
"@types/cors": "^2.8.13",
|
|
43
47
|
"@types/jsonwebtoken": "9.0.6",
|
|
44
48
|
"@types/node": "20.14.2",
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ApolloServerPlugin, GraphQLRequestContextDidEncounterErrors, GraphQLRequestListenerParsingDidEnd } from '@apollo/server';
|
|
2
|
+
import { DataSource } from 'typeorm';
|
|
3
|
+
import { AppContext } from '../types.js';
|
|
4
|
+
|
|
5
|
+
export const TransactionPlugin: ApolloServerPlugin<AppContext> = {
|
|
6
|
+
async requestDidStart(requestContext) {
|
|
7
|
+
const start = Date.now();
|
|
8
|
+
const query = requestContext.request.query || '';
|
|
9
|
+
const isMutation = /^\s*mutation\b/i.test(query);
|
|
10
|
+
|
|
11
|
+
if (!isMutation) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// Start transaction, one or more mutations. If it is just one mutation, this trans wrapper isn't really needed
|
|
16
|
+
// but there's no good way to know if it's one or more mutations, so we just start a transaction anyway and it isn't terribly expensive
|
|
17
|
+
// to do so with SQL Server anyway.
|
|
18
|
+
const dataSource: DataSource = requestContext.contextValue.dataSource;
|
|
19
|
+
const queryRunner = dataSource.createQueryRunner();
|
|
20
|
+
|
|
21
|
+
requestContext.contextValue.queryRunner = queryRunner;
|
|
22
|
+
console.log('Starting transaction wrapper, time spent: ', Date.now() - start, 'ms ');
|
|
23
|
+
await queryRunner.startTransaction();
|
|
24
|
+
|
|
25
|
+
return {
|
|
26
|
+
didEncounterErrors: async (requestContext) => {
|
|
27
|
+
console.log('Error in transaction wrapper: ' + requestContext.errors, 'time spent: ', Date.now() - start, 'ms');
|
|
28
|
+
},
|
|
29
|
+
executionDidStart: async () => {
|
|
30
|
+
return {
|
|
31
|
+
executionDidEnd: async (err) => {
|
|
32
|
+
try {
|
|
33
|
+
if (err) {
|
|
34
|
+
console.log('Error in transaction, rolling back, time spent: ', Date.now() - start, 'ms ');
|
|
35
|
+
console.error('Rolling back transaction', err);
|
|
36
|
+
await queryRunner.rollbackTransaction();
|
|
37
|
+
} else {
|
|
38
|
+
console.log('Committing transaction, time spent: ', Date.now() - start, 'ms ');
|
|
39
|
+
await queryRunner.commitTransaction();
|
|
40
|
+
}
|
|
41
|
+
} catch (execErr) {
|
|
42
|
+
console.log('Execution Error, time spent: ', Date.now() - start, 'ms ');
|
|
43
|
+
console.error(execErr);
|
|
44
|
+
} finally {
|
|
45
|
+
await queryRunner.release();
|
|
46
|
+
console.log('Transaction complete, time spent: ', Date.now() - start, 'ms ');
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
},
|
|
51
|
+
};
|
|
52
|
+
},
|
|
53
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ApolloServer, ApolloServerOptions } from '@apollo/server';
|
|
2
|
+
import { ApolloServerPluginDrainHttpServer } from '@apollo/server/plugin/drainHttpServer';
|
|
3
|
+
import { Disposable } from 'graphql-ws';
|
|
4
|
+
import { Server } from 'http';
|
|
5
|
+
import { enableIntrospection } from '../config.js';
|
|
6
|
+
import { AppContext } from '../types.js';
|
|
7
|
+
import { TransactionPlugin } from './TransactionPlugin.js';
|
|
8
|
+
|
|
9
|
+
const buildApolloServer = (
|
|
10
|
+
configOverride: ApolloServerOptions<AppContext>,
|
|
11
|
+
{ httpServer, serverCleanup }: { httpServer: Server; serverCleanup: Disposable }
|
|
12
|
+
) =>
|
|
13
|
+
new ApolloServer({
|
|
14
|
+
csrfPrevention: true,
|
|
15
|
+
cache: 'bounded',
|
|
16
|
+
plugins: [
|
|
17
|
+
ApolloServerPluginDrainHttpServer({ httpServer }),
|
|
18
|
+
TransactionPlugin,
|
|
19
|
+
{
|
|
20
|
+
async serverWillStart() {
|
|
21
|
+
return {
|
|
22
|
+
async drainServer() {
|
|
23
|
+
await serverCleanup.dispose();
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
|
+
introspection: enableIntrospection,
|
|
30
|
+
...configOverride,
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
export default buildApolloServer;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { RegisterClass } from '@memberjunction/global';
|
|
2
|
+
import { Metadata, RunView, LogError } from '@memberjunction/core';
|
|
3
|
+
import { NewUserBase } from './newUsers.js';
|
|
4
|
+
import { UserCache } from '@memberjunction/sqlserver-dataprovider';
|
|
5
|
+
import { configInfo } from '../config.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* This example class subclasses the @NewUserBase class and overrides the createNewUser method to create a new person record and then call the base class to create the user record. In this example there is an entity
|
|
9
|
+
* called "Persons" that is mapped to the User table in the core MemberJunction schema. You can sub-class the NewUserBase to do whatever behavior you want and pre-process, post-process or entirely override the base
|
|
10
|
+
* class behavior.
|
|
11
|
+
*/
|
|
12
|
+
// NOTE: This is commented out becuase it is turned off by default. To make this work, you'd have to do a real implementation below, and then uncomment this decorator
|
|
13
|
+
// so that your class is actually used.
|
|
14
|
+
//@RegisterClass(NewUserBase, undefined, 1) /*by putting 1 into the priority setting, MJGlobal ClassFactory will use this instead of the base class as that registration had no priority*/
|
|
15
|
+
export class ExampleNewUserSubClass extends NewUserBase {
|
|
16
|
+
public override async createNewUser(firstName: string, lastName: string, email: string) {
|
|
17
|
+
try {
|
|
18
|
+
const md = new Metadata();
|
|
19
|
+
const contextUser = UserCache.Instance.Users.find(
|
|
20
|
+
(u) => u.Email.trim().toLowerCase() === configInfo?.userHandling?.contextUserForNewUserCreation?.trim().toLowerCase()
|
|
21
|
+
);
|
|
22
|
+
if (!contextUser) {
|
|
23
|
+
LogError(
|
|
24
|
+
`Failed to load context user ${configInfo?.userHandling?.contextUserForNewUserCreation}, if you've not specified this on your config.json you must do so. This is the user that is contextually used for creating a new user record dynamically.`
|
|
25
|
+
);
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
const pEntity = md.Entities.find((e) => e.Name === 'Persons'); // look up the entity info for the Persons entity
|
|
30
|
+
if (!pEntity) {
|
|
31
|
+
LogError('Failed to find Persons entity');
|
|
32
|
+
return undefined;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
let personId;
|
|
36
|
+
// this block of code only executes if we have an entity called Persons
|
|
37
|
+
const rv = new RunView();
|
|
38
|
+
const viewResults = await rv.RunView(
|
|
39
|
+
{
|
|
40
|
+
EntityName: 'Persons',
|
|
41
|
+
ExtraFilter: `Email = '${email}'`,
|
|
42
|
+
},
|
|
43
|
+
contextUser
|
|
44
|
+
);
|
|
45
|
+
|
|
46
|
+
if (viewResults && viewResults.Success && Array.isArray(viewResults.Results) && viewResults.Results.length > 0) {
|
|
47
|
+
// we have a match so use it
|
|
48
|
+
const row = (viewResults.Results as { ID: number }[])[0]; // we know the rows will have an ID number
|
|
49
|
+
personId = row['ID'];
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (!personId) {
|
|
53
|
+
// we don't have a match so create a new person record
|
|
54
|
+
const p = await md.GetEntityObject('Persons', contextUser);
|
|
55
|
+
p.NewRecord(); // assumes we have an entity called Persons that has FirstName/LastName/Email fields
|
|
56
|
+
// this code is commented out because we don't have a strongly typed sub-class generatd for this "Persons" entity as it is a demo/hypothetical example
|
|
57
|
+
//p.FirstName = firstName;
|
|
58
|
+
//p.LastName = lastName;
|
|
59
|
+
//p.Email = email;
|
|
60
|
+
//p.Status = 'active';
|
|
61
|
+
if (await p.Save()) {
|
|
62
|
+
personId = p.FirstPrimaryKey.Value; // if we had a strongly typed sub-class above, we could use this code p.ID;
|
|
63
|
+
} else {
|
|
64
|
+
LogError(`Failed to create new person ${firstName} ${lastName} ${email}`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// now call the base class to create the user, and pass in our LinkedRecordType and ID
|
|
69
|
+
return super.createNewUser(firstName, lastName, email, 'Other', pEntity?.ID, personId);
|
|
70
|
+
} catch (e) {
|
|
71
|
+
LogError(`Error creating new user ${email} ${e}`);
|
|
72
|
+
return undefined;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export function LoadExampleNewUserSubClass() {
|
|
78
|
+
// do nothing, just having this forces the above class to get registered via its @RegisterClass decorator
|
|
79
|
+
}
|