@memberjunction/server 0.9.129 → 0.9.142

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/build.log.json +27 -0
  2. package/dist/apolloServer/TransactionPlugin.js +45 -45
  3. package/dist/apolloServer/TransactionPlugin.js.map +1 -1
  4. package/dist/apolloServer/index.js +26 -26
  5. package/dist/auth/exampleNewUserSubClass.js +53 -53
  6. package/dist/auth/exampleNewUserSubClass.js.map +1 -1
  7. package/dist/auth/index.js +110 -110
  8. package/dist/auth/index.js.map +1 -1
  9. package/dist/auth/newUsers.js +65 -66
  10. package/dist/auth/newUsers.js.map +1 -1
  11. package/dist/cache.js +10 -10
  12. package/dist/config.js +62 -62
  13. package/dist/config.js.map +1 -1
  14. package/dist/context.js +101 -101
  15. package/dist/context.js.map +1 -1
  16. package/dist/directives/Public.js +33 -33
  17. package/dist/directives/Public.js.map +1 -1
  18. package/dist/directives/index.js +17 -17
  19. package/dist/entitySubclasses/userViewEntity.server.js +127 -127
  20. package/dist/entitySubclasses/userViewEntity.server.js.map +1 -1
  21. package/dist/generated/generated.js +20205 -19004
  22. package/dist/generated/generated.js.map +1 -1
  23. package/dist/generic/PushStatusResolver.js +58 -58
  24. package/dist/generic/PushStatusResolver.js.map +1 -1
  25. package/dist/generic/ResolverBase.js +231 -231
  26. package/dist/generic/ResolverBase.js.map +1 -1
  27. package/dist/generic/RunViewResolver.js +400 -400
  28. package/dist/generic/RunViewResolver.js.map +1 -1
  29. package/dist/index.js +131 -131
  30. package/dist/index.js.map +1 -1
  31. package/dist/orm.js +33 -33
  32. package/dist/orm.js.map +1 -1
  33. package/dist/resolvers/AskSkipResolver.js +246 -246
  34. package/dist/resolvers/AskSkipResolver.js.map +1 -1
  35. package/dist/resolvers/ColorResolver.js +93 -93
  36. package/dist/resolvers/ColorResolver.js.map +1 -1
  37. package/dist/resolvers/DatasetResolver.js +167 -167
  38. package/dist/resolvers/DatasetResolver.js.map +1 -1
  39. package/dist/resolvers/EntityRecordNameResolver.js +111 -111
  40. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  41. package/dist/resolvers/EntityResolver.js +59 -59
  42. package/dist/resolvers/EntityResolver.js.map +1 -1
  43. package/dist/resolvers/MergeRecordsResolver.js +282 -282
  44. package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
  45. package/dist/resolvers/QueryResolver.js +74 -0
  46. package/dist/resolvers/QueryResolver.js.map +1 -0
  47. package/dist/resolvers/ReportResolver.js +73 -73
  48. package/dist/resolvers/ReportResolver.js.map +1 -1
  49. package/dist/resolvers/UserFavoriteResolver.js +161 -161
  50. package/dist/resolvers/UserFavoriteResolver.js.map +1 -1
  51. package/dist/resolvers/UserResolver.js +69 -69
  52. package/dist/resolvers/UserResolver.js.map +1 -1
  53. package/dist/resolvers/UserViewResolver.js +101 -101
  54. package/dist/resolvers/UserViewResolver.js.map +1 -1
  55. package/dist/types.js +2 -2
  56. package/package.json +11 -11
  57. package/src/apolloServer/TransactionPlugin.ts +1 -1
  58. package/src/generated/generated.ts +921 -2
  59. package/src/resolvers/AskSkipResolver.ts +1 -1
  60. package/src/resolvers/QueryResolver.ts +42 -0
  61. package/src/resolvers/ReportResolver.ts +0 -15
  62. package/tsconfig.json +2 -2
package/build.log.json CHANGED
@@ -115,5 +115,32 @@
115
115
  },
116
116
  {
117
117
  "buildTime": "2024-01-26T23:19:55.2888269-06:00"
118
+ },
119
+ {
120
+ "buildTime": "2024-02-01T23:16:10.1213228-06:00"
121
+ },
122
+ {
123
+ "buildTime": "2024-02-02T16:17:55.0840272-06:00"
124
+ },
125
+ {
126
+ "buildTime": "2024-02-02T18:26:34.0904271-06:00"
127
+ },
128
+ {
129
+ "buildTime": "2024-02-02T19:07:26.6996848-06:00"
130
+ },
131
+ {
132
+ "buildTime": "2024-02-02T19:21:59.1460857-06:00"
133
+ },
134
+ {
135
+ "buildTime": "2024-02-02T19:30:24.524437-06:00"
136
+ },
137
+ {
138
+ "buildTime": "2024-02-02T20:03:53.9569316-06:00"
139
+ },
140
+ {
141
+ "buildTime": "2024-02-02T23:54:11.3645747-06:00"
142
+ },
143
+ {
144
+ "buildTime": "2024-02-03T18:50:09.0441057-06:00"
118
145
  }
119
146
  ]
@@ -1,46 +1,46 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TransactionPlugin = void 0;
4
- exports.TransactionPlugin = {
5
- async requestDidStart(requestContext) {
6
- const start = Date.now();
7
- const query = requestContext.request.query || '';
8
- const isMutation = /^\s*mutation\b/i.test(query);
9
- if (!isMutation) {
10
- return;
11
- }
12
- const dataSource = requestContext.contextValue.dataSource;
13
- const queryRunner = dataSource.createQueryRunner();
14
- requestContext.contextValue.queryRunner = queryRunner;
15
- console.log('Starting transaction wrapper, time spent: ', Date.now() - start, 'ms ');
16
- await queryRunner.startTransaction();
17
- return {
18
- executionDidStart: async () => {
19
- return {
20
- executionDidEnd: async (err) => {
21
- try {
22
- if (err) {
23
- console.log('Error in transaction, rolling back, time spent: ', Date.now() - start, 'ms ');
24
- console.error('Rolling back transaction', err);
25
- await queryRunner.rollbackTransaction();
26
- }
27
- else {
28
- console.log('Committing transaction, time spent: ', Date.now() - start, 'ms ');
29
- await queryRunner.commitTransaction();
30
- }
31
- }
32
- catch (execErr) {
33
- console.log('Execution Error, time spent: ', Date.now() - start, 'ms ');
34
- console.error(execErr);
35
- }
36
- finally {
37
- await queryRunner.release();
38
- console.log('Transaction complete, time spent: ', Date.now() - start, 'ms ');
39
- }
40
- },
41
- };
42
- },
43
- };
44
- },
45
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TransactionPlugin = void 0;
4
+ exports.TransactionPlugin = {
5
+ async requestDidStart(requestContext) {
6
+ const start = Date.now();
7
+ const query = requestContext.request.query || '';
8
+ const isMutation = /^\s*mutation\b/i.test(query);
9
+ if (!isMutation) {
10
+ return null;
11
+ }
12
+ const dataSource = requestContext.contextValue.dataSource;
13
+ const queryRunner = dataSource.createQueryRunner();
14
+ requestContext.contextValue.queryRunner = queryRunner;
15
+ console.log('Starting transaction wrapper, time spent: ', Date.now() - start, 'ms ');
16
+ await queryRunner.startTransaction();
17
+ return {
18
+ executionDidStart: async () => {
19
+ return {
20
+ executionDidEnd: async (err) => {
21
+ try {
22
+ if (err) {
23
+ console.log('Error in transaction, rolling back, time spent: ', Date.now() - start, 'ms ');
24
+ console.error('Rolling back transaction', err);
25
+ await queryRunner.rollbackTransaction();
26
+ }
27
+ else {
28
+ console.log('Committing transaction, time spent: ', Date.now() - start, 'ms ');
29
+ await queryRunner.commitTransaction();
30
+ }
31
+ }
32
+ catch (execErr) {
33
+ console.log('Execution Error, time spent: ', Date.now() - start, 'ms ');
34
+ console.error(execErr);
35
+ }
36
+ finally {
37
+ await queryRunner.release();
38
+ console.log('Transaction complete, time spent: ', Date.now() - start, 'ms ');
39
+ }
40
+ },
41
+ };
42
+ },
43
+ };
44
+ },
45
+ };
46
46
  //# sourceMappingURL=TransactionPlugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionPlugin.js","sourceRoot":"","sources":["../../src/apolloServer/TransactionPlugin.ts"],"names":[],"mappings":";;;AAIa,QAAA,iBAAiB,GAAmC;IAC/D,KAAK,CAAC,eAAe,CAAC,cAAc;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,EAAE;YACf,OAAO;SACR;QAKD,MAAM,UAAU,GAAe,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC;QACtE,MAAM,WAAW,GAAG,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAEnD,cAAc,CAAC,YAAY,CAAC,WAAW,GAAG,WAAW,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;QACrF,MAAM,WAAW,CAAC,gBAAgB,EAAE,CAAC;QAErC,OAAO;YACL,iBAAiB,EAAE,KAAK,IAAI,EAAE;gBAC5B,OAAO;oBACL,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;wBAC7B,IAAI;4BACF,IAAI,GAAG,EAAE;gCACP,OAAO,CAAC,GAAG,CACT,kDAAkD,EAClD,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAClB,KAAK,CACN,CAAC;gCACF,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;gCAC/C,MAAM,WAAW,CAAC,mBAAmB,EAAE,CAAC;6BACzC;iCAAM;gCACL,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;gCAC/E,MAAM,WAAW,CAAC,iBAAiB,EAAE,CAAC;6BACvC;yBACF;wBAAC,OAAO,OAAO,EAAE;4BAChB,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;4BACxE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;yBACxB;gCAAS;4BACR,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;4BAC5B,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;yBAC9E;oBACH,CAAC;iBACF,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"TransactionPlugin.js","sourceRoot":"","sources":["../../src/apolloServer/TransactionPlugin.ts"],"names":[],"mappings":";;;AAIa,QAAA,iBAAiB,GAAmC;IAC/D,KAAK,CAAC,eAAe,CAAC,cAAc;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;QAKD,MAAM,UAAU,GAAe,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC;QACtE,MAAM,WAAW,GAAG,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAEnD,cAAc,CAAC,YAAY,CAAC,WAAW,GAAG,WAAW,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;QACrF,MAAM,WAAW,CAAC,gBAAgB,EAAE,CAAC;QAErC,OAAO;YACL,iBAAiB,EAAE,KAAK,IAAI,EAAE;gBAC5B,OAAO;oBACL,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;wBAC7B,IAAI,CAAC;4BACH,IAAI,GAAG,EAAE,CAAC;gCACR,OAAO,CAAC,GAAG,CACT,kDAAkD,EAClD,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAClB,KAAK,CACN,CAAC;gCACF,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;gCAC/C,MAAM,WAAW,CAAC,mBAAmB,EAAE,CAAC;4BAC1C,CAAC;iCAAM,CAAC;gCACN,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;gCAC/E,MAAM,WAAW,CAAC,iBAAiB,EAAE,CAAC;4BACxC,CAAC;wBACH,CAAC;wBAAC,OAAO,OAAO,EAAE,CAAC;4BACjB,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;4BACxE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBACzB,CAAC;gCAAS,CAAC;4BACT,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC;4BAC5B,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,KAAK,CAAC,CAAC;wBAC/E,CAAC;oBACH,CAAC;iBACF,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -1,27 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const server_1 = require("@apollo/server");
4
- const drainHttpServer_1 = require("@apollo/server/plugin/drainHttpServer");
5
- const config_1 = require("../config");
6
- const TransactionPlugin_1 = require("./TransactionPlugin");
7
- const buildApolloServer = (configOverride, { httpServer, serverCleanup }) => new server_1.ApolloServer({
8
- csrfPrevention: true,
9
- cache: 'bounded',
10
- plugins: [
11
- (0, drainHttpServer_1.ApolloServerPluginDrainHttpServer)({ httpServer }),
12
- TransactionPlugin_1.TransactionPlugin,
13
- {
14
- async serverWillStart() {
15
- return {
16
- async drainServer() {
17
- await serverCleanup.dispose();
18
- },
19
- };
20
- },
21
- },
22
- ],
23
- introspection: config_1.enableIntrospection,
24
- ...configOverride,
25
- });
26
- exports.default = buildApolloServer;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const server_1 = require("@apollo/server");
4
+ const drainHttpServer_1 = require("@apollo/server/plugin/drainHttpServer");
5
+ const config_1 = require("../config");
6
+ const TransactionPlugin_1 = require("./TransactionPlugin");
7
+ const buildApolloServer = (configOverride, { httpServer, serverCleanup }) => new server_1.ApolloServer({
8
+ csrfPrevention: true,
9
+ cache: 'bounded',
10
+ plugins: [
11
+ (0, drainHttpServer_1.ApolloServerPluginDrainHttpServer)({ httpServer }),
12
+ TransactionPlugin_1.TransactionPlugin,
13
+ {
14
+ async serverWillStart() {
15
+ return {
16
+ async drainServer() {
17
+ await serverCleanup.dispose();
18
+ },
19
+ };
20
+ },
21
+ },
22
+ ],
23
+ introspection: config_1.enableIntrospection,
24
+ ...configOverride,
25
+ });
26
+ exports.default = buildApolloServer;
27
27
  //# sourceMappingURL=index.js.map
@@ -1,54 +1,54 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LoadExampleNewUserSubClass = exports.ExampleNewUserSubClass = void 0;
4
- const core_1 = require("@memberjunction/core");
5
- const newUsers_1 = require("./newUsers");
6
- const sqlserver_dataprovider_1 = require("@memberjunction/sqlserver-dataprovider");
7
- const config_1 = require("../config");
8
- class ExampleNewUserSubClass extends newUsers_1.NewUserBase {
9
- async createNewUser(firstName, lastName, email) {
10
- try {
11
- const md = new core_1.Metadata();
12
- const contextUser = sqlserver_dataprovider_1.UserCache.Instance.Users.find(u => u.Email.trim().toLowerCase() === config_1.configInfo?.userHandling?.contextUserForNewUserCreation?.trim().toLowerCase());
13
- if (!contextUser) {
14
- (0, core_1.LogError)(`Failed to load context user ${config_1.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.`);
15
- return undefined;
16
- }
17
- const pEntity = md.Entities.find(e => e.Name === 'Persons');
18
- if (!pEntity) {
19
- (0, core_1.LogError)('Failed to find Persons entity');
20
- return undefined;
21
- }
22
- let personId;
23
- const rv = new core_1.RunView();
24
- const viewResults = await rv.RunView({
25
- EntityName: 'Persons',
26
- ExtraFilter: `Email = '${email}'`
27
- }, contextUser);
28
- if (viewResults && viewResults.Success && Array.isArray(viewResults.Results) && viewResults.Results.length > 0) {
29
- const row = viewResults.Results[0];
30
- personId = row['ID'];
31
- }
32
- if (!personId) {
33
- const p = await md.GetEntityObject('Persons', contextUser);
34
- p.NewRecord();
35
- if (await p.Save()) {
36
- personId = p.PrimaryKey.Value;
37
- }
38
- else {
39
- (0, core_1.LogError)(`Failed to create new person ${firstName} ${lastName} ${email}`);
40
- }
41
- }
42
- return super.createNewUser(firstName, lastName, email, 'Other', pEntity?.ID, personId);
43
- }
44
- catch (e) {
45
- (0, core_1.LogError)(`Error creating new user ${email} ${e}`);
46
- return undefined;
47
- }
48
- }
49
- }
50
- exports.ExampleNewUserSubClass = ExampleNewUserSubClass;
51
- function LoadExampleNewUserSubClass() {
52
- }
53
- exports.LoadExampleNewUserSubClass = LoadExampleNewUserSubClass;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LoadExampleNewUserSubClass = exports.ExampleNewUserSubClass = void 0;
4
+ const core_1 = require("@memberjunction/core");
5
+ const newUsers_1 = require("./newUsers");
6
+ const sqlserver_dataprovider_1 = require("@memberjunction/sqlserver-dataprovider");
7
+ const config_1 = require("../config");
8
+ class ExampleNewUserSubClass extends newUsers_1.NewUserBase {
9
+ async createNewUser(firstName, lastName, email) {
10
+ try {
11
+ const md = new core_1.Metadata();
12
+ const contextUser = sqlserver_dataprovider_1.UserCache.Instance.Users.find(u => u.Email.trim().toLowerCase() === config_1.configInfo?.userHandling?.contextUserForNewUserCreation?.trim().toLowerCase());
13
+ if (!contextUser) {
14
+ (0, core_1.LogError)(`Failed to load context user ${config_1.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.`);
15
+ return undefined;
16
+ }
17
+ const pEntity = md.Entities.find(e => e.Name === 'Persons');
18
+ if (!pEntity) {
19
+ (0, core_1.LogError)('Failed to find Persons entity');
20
+ return undefined;
21
+ }
22
+ let personId;
23
+ const rv = new core_1.RunView();
24
+ const viewResults = await rv.RunView({
25
+ EntityName: 'Persons',
26
+ ExtraFilter: `Email = '${email}'`
27
+ }, contextUser);
28
+ if (viewResults && viewResults.Success && Array.isArray(viewResults.Results) && viewResults.Results.length > 0) {
29
+ const row = viewResults.Results[0];
30
+ personId = row['ID'];
31
+ }
32
+ if (!personId) {
33
+ const p = await md.GetEntityObject('Persons', contextUser);
34
+ p.NewRecord();
35
+ if (await p.Save()) {
36
+ personId = p.PrimaryKey.Value;
37
+ }
38
+ else {
39
+ (0, core_1.LogError)(`Failed to create new person ${firstName} ${lastName} ${email}`);
40
+ }
41
+ }
42
+ return super.createNewUser(firstName, lastName, email, 'Other', pEntity?.ID, personId);
43
+ }
44
+ catch (e) {
45
+ (0, core_1.LogError)(`Error creating new user ${email} ${e}`);
46
+ return undefined;
47
+ }
48
+ }
49
+ }
50
+ exports.ExampleNewUserSubClass = ExampleNewUserSubClass;
51
+ function LoadExampleNewUserSubClass() {
52
+ }
53
+ exports.LoadExampleNewUserSubClass = LoadExampleNewUserSubClass;
54
54
  //# sourceMappingURL=exampleNewUserSubClass.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exampleNewUserSubClass.js","sourceRoot":"","sources":["../../src/auth/exampleNewUserSubClass.ts"],"names":[],"mappings":";;;AACA,+CAAmE;AACnE,yCAAyC;AACzC,mFAAmE;AACnE,sCAAuC;AAUvC,MAAa,sBAAuB,SAAQ,sBAAW;IACnC,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,QAAgB,EAAE,KAAa;QAClF,IAAI;YACA,MAAM,EAAE,GAAG,IAAI,eAAQ,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,kCAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,mBAAU,EAAE,YAAY,EAAE,6BAA6B,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;YACtK,IAAG,CAAC,WAAW,EAAE;gBACb,IAAA,eAAQ,EAAC,+BAA+B,mBAAU,EAAE,YAAY,EAAE,6BAA6B,2JAA2J,CAAC,CAAC;gBAC5P,OAAO,SAAS,CAAC;aACpB;YAED,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YAC5D,IAAI,CAAC,OAAO,EAAE;gBACV,IAAA,eAAQ,EAAC,+BAA+B,CAAC,CAAC;gBAC1C,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,QAAQ,CAAC;YAEb,MAAM,EAAE,GAAG,IAAI,cAAO,EAAE,CAAC;YACzB,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC;gBACjC,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,YAAY,KAAK,GAAG;aACpC,EAAE,WAAW,CAAC,CAAA;YAEf,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBAE5G,MAAM,GAAG,GAAI,WAAW,CAAC,OAA4B,CAAC,CAAC,CAAC,CAAC;gBACzD,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;aACxB;YAED,IAAI,CAAC,QAAQ,EAAE;gBAEX,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC3D,CAAC,CAAC,SAAS,EAAE,CAAC;gBAMd,IAAI,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;oBAChB,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;iBACjC;qBACI;oBACD,IAAA,eAAQ,EAAC,+BAA+B,SAAS,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAA;iBAC5E;aACJ;YAGD,OAAO,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;SAC1F;QACD,OAAO,CAAC,EAAE;YACN,IAAA,eAAQ,EAAC,2BAA2B,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;YAClD,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;CACJ;AAvDD,wDAuDC;AAED,SAAgB,0BAA0B;AAE1C,CAAC;AAFD,gEAEC"}
1
+ {"version":3,"file":"exampleNewUserSubClass.js","sourceRoot":"","sources":["../../src/auth/exampleNewUserSubClass.ts"],"names":[],"mappings":";;;AACA,+CAAmE;AACnE,yCAAyC;AACzC,mFAAmE;AACnE,sCAAuC;AAUvC,MAAa,sBAAuB,SAAQ,sBAAW;IACnC,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,QAAgB,EAAE,KAAa;QAClF,IAAI,CAAC;YACD,MAAM,EAAE,GAAG,IAAI,eAAQ,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,kCAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,mBAAU,EAAE,YAAY,EAAE,6BAA6B,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;YACtK,IAAG,CAAC,WAAW,EAAE,CAAC;gBACd,IAAA,eAAQ,EAAC,+BAA+B,mBAAU,EAAE,YAAY,EAAE,6BAA6B,2JAA2J,CAAC,CAAC;gBAC5P,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,IAAA,eAAQ,EAAC,+BAA+B,CAAC,CAAC;gBAC1C,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,IAAI,QAAQ,CAAC;YAEb,MAAM,EAAE,GAAG,IAAI,cAAO,EAAE,CAAC;YACzB,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC;gBACjC,UAAU,EAAE,SAAS;gBACrB,WAAW,EAAE,YAAY,KAAK,GAAG;aACpC,EAAE,WAAW,CAAC,CAAA;YAEf,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAE7G,MAAM,GAAG,GAAI,WAAW,CAAC,OAA4B,CAAC,CAAC,CAAC,CAAC;gBACzD,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAEZ,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC3D,CAAC,CAAC,SAAS,EAAE,CAAC;gBAMd,IAAI,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBACjB,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;gBAClC,CAAC;qBACI,CAAC;oBACF,IAAA,eAAQ,EAAC,+BAA+B,SAAS,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAA;gBAC7E,CAAC;YACL,CAAC;YAGD,OAAO,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3F,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,IAAA,eAAQ,EAAC,2BAA2B,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;YAClD,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;CACJ;AAvDD,wDAuDC;AAED,SAAgB,0BAA0B;AAE1C,CAAC;AAFD,gEAEC"}
@@ -1,111 +1,111 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.verifyUserRecord = exports.getSigningKeys = exports.UserPayload = exports.validationOptions = void 0;
7
- const jwks_rsa_1 = __importDefault(require("jwks-rsa"));
8
- const config_1 = require("../config");
9
- const sqlserver_dataprovider_1 = require("@memberjunction/sqlserver-dataprovider");
10
- const core_1 = require("@memberjunction/core");
11
- const newUsers_1 = require("./newUsers");
12
- const global_1 = require("@memberjunction/global");
13
- const missingAzureConfig = !config_1.tenantID || !config_1.webClientID;
14
- const missingAuth0Config = !config_1.auth0Domain || !config_1.auth0WebClientID;
15
- class MissingAuthError extends Error {
16
- constructor() {
17
- super('Could not find authentication configuration for either MSAL or Auth0 in the server environment variables.');
18
- this.name = 'MissingAuthError';
19
- }
20
- }
21
- const issuers = {
22
- azure: `https://login.microsoftonline.com/${config_1.tenantID}/v2.0`,
23
- auth0: `https://${config_1.auth0Domain}/`,
24
- };
25
- exports.validationOptions = {
26
- [issuers.auth0]: {
27
- audience: config_1.auth0WebClientID,
28
- jwksUri: `https://${config_1.auth0Domain}/.well-known/jwks.json`,
29
- },
30
- [issuers.azure]: {
31
- audience: config_1.webClientID,
32
- jwksUri: `https://login.microsoftonline.com/${config_1.tenantID}/discovery/v2.0/keys`,
33
- },
34
- };
35
- class UserPayload {
36
- }
37
- exports.UserPayload = UserPayload;
38
- const getSigningKeys = (issuer) => (header, cb) => {
39
- const jwksUri = exports.validationOptions[issuer].jwksUri;
40
- if (missingAuth0Config && missingAzureConfig) {
41
- throw new MissingAuthError();
42
- }
43
- if (missingAuth0Config) {
44
- console.warn('Auth0 configuration not found in environment variables');
45
- }
46
- if (missingAzureConfig) {
47
- console.warn('MSAL configuration not found in environment variables');
48
- }
49
- (0, jwks_rsa_1.default)({ jwksUri })
50
- .getSigningKey(header.kid)
51
- .then((key) => {
52
- cb(null, 'publicKey' in key ? key.publicKey : key.rsaPublicKey);
53
- })
54
- .catch((err) => console.error(err));
55
- };
56
- exports.getSigningKeys = getSigningKeys;
57
- const verifyUserRecord = async (email, firstName, lastName, requestDomain, dataSource, attemptCacheUpdateIfNeeded = true) => {
58
- if (!email)
59
- return undefined;
60
- let user = sqlserver_dataprovider_1.UserCache.Instance.Users.find((u) => {
61
- if (!u.Email || u.Email.trim() === '') {
62
- console.error(`SYSTEM METADATA ISSUE: User ${u.ID} has no email address`);
63
- return false;
64
- }
65
- else
66
- return u.Email.toLowerCase().trim() === email.toLowerCase().trim();
67
- });
68
- if (!user) {
69
- if (config_1.configInfo.userHandling.autoCreateNewUsers && firstName && lastName && (requestDomain || config_1.configInfo.userHandling.newUserLimitedToAuthorizedDomains === false)) {
70
- let passesDomainCheck = config_1.configInfo.userHandling.newUserLimitedToAuthorizedDomains === false;
71
- if (!passesDomainCheck && requestDomain) {
72
- passesDomainCheck = config_1.configInfo.userHandling.newUserAuthorizedDomains.some((pattern) => {
73
- const regex = new RegExp('^' + pattern.toLowerCase().trim().replace(/\./g, '\\.').replace(/\*/g, '.*') + '$');
74
- return regex.test(requestDomain?.toLowerCase().trim());
75
- });
76
- }
77
- if (passesDomainCheck) {
78
- console.warn(`User ${email} not found in cache. Attempting to create a new user...`);
79
- const newUserCreator = global_1.MJGlobal.Instance.ClassFactory.CreateInstance(newUsers_1.NewUserBase);
80
- const newUser = await newUserCreator.createNewUser(firstName, lastName, email);
81
- if (newUser) {
82
- const initData = newUser.GetAll();
83
- initData.UserRoles = config_1.configInfo.userHandling.newUserRoles.map((role) => { return { UserID: initData.ID, RoleName: role }; });
84
- user = new core_1.UserInfo(core_1.Metadata.Provider, initData);
85
- sqlserver_dataprovider_1.UserCache.Instance.Users.push(user);
86
- console.warn(` >>> New user ${email} created successfully!`);
87
- }
88
- }
89
- else {
90
- console.warn(`User ${email} not found in cache. Request domain '${requestDomain}' does not match any of the domains in the newUserAuthorizedDomains setting. To ignore domain, make sure you set the newUserLimitedToAuthorizedDomains setting to false. In this case we are NOT creating a new user.`);
91
- }
92
- }
93
- if (!user && config_1.configInfo.userHandling.updateCacheWhenNotFound && dataSource && attemptCacheUpdateIfNeeded) {
94
- console.warn(`User ${email} not found in cache. Updating cache in attempt to find the user...`);
95
- const startTime = Date.now();
96
- await sqlserver_dataprovider_1.UserCache.Instance.Refresh(dataSource);
97
- const endTime = Date.now();
98
- const elapsed = endTime - startTime;
99
- const delay = config_1.configInfo.userHandling.updateCacheWhenNotFoundDelay ? (config_1.configInfo.userHandling.updateCacheWhenNotFoundDelay < 30000 ? config_1.configInfo.userHandling.updateCacheWhenNotFoundDelay : 30000) : 0;
100
- if (elapsed < delay)
101
- await new Promise(resolve => setTimeout(resolve, delay - elapsed));
102
- const finalTime = Date.now();
103
- const finalElapsed = finalTime - startTime;
104
- console.log(` UserCache updated in ${elapsed}ms, total elapsed time of ${finalElapsed}ms including delay of ${delay}ms (if needed). Attempting to find the user again via recursive call to verifyUserRecord()`);
105
- return (0, exports.verifyUserRecord)(email, firstName, lastName, requestDomain, dataSource, false);
106
- }
107
- }
108
- return user;
109
- };
110
- exports.verifyUserRecord = verifyUserRecord;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.verifyUserRecord = exports.getSigningKeys = exports.UserPayload = exports.validationOptions = void 0;
7
+ const jwks_rsa_1 = __importDefault(require("jwks-rsa"));
8
+ const config_1 = require("../config");
9
+ const sqlserver_dataprovider_1 = require("@memberjunction/sqlserver-dataprovider");
10
+ const core_1 = require("@memberjunction/core");
11
+ const newUsers_1 = require("./newUsers");
12
+ const global_1 = require("@memberjunction/global");
13
+ const missingAzureConfig = !config_1.tenantID || !config_1.webClientID;
14
+ const missingAuth0Config = !config_1.auth0Domain || !config_1.auth0WebClientID;
15
+ class MissingAuthError extends Error {
16
+ constructor() {
17
+ super('Could not find authentication configuration for either MSAL or Auth0 in the server environment variables.');
18
+ this.name = 'MissingAuthError';
19
+ }
20
+ }
21
+ const issuers = {
22
+ azure: `https://login.microsoftonline.com/${config_1.tenantID}/v2.0`,
23
+ auth0: `https://${config_1.auth0Domain}/`,
24
+ };
25
+ exports.validationOptions = {
26
+ [issuers.auth0]: {
27
+ audience: config_1.auth0WebClientID,
28
+ jwksUri: `https://${config_1.auth0Domain}/.well-known/jwks.json`,
29
+ },
30
+ [issuers.azure]: {
31
+ audience: config_1.webClientID,
32
+ jwksUri: `https://login.microsoftonline.com/${config_1.tenantID}/discovery/v2.0/keys`,
33
+ },
34
+ };
35
+ class UserPayload {
36
+ }
37
+ exports.UserPayload = UserPayload;
38
+ const getSigningKeys = (issuer) => (header, cb) => {
39
+ const jwksUri = exports.validationOptions[issuer].jwksUri;
40
+ if (missingAuth0Config && missingAzureConfig) {
41
+ throw new MissingAuthError();
42
+ }
43
+ if (missingAuth0Config) {
44
+ console.warn('Auth0 configuration not found in environment variables');
45
+ }
46
+ if (missingAzureConfig) {
47
+ console.warn('MSAL configuration not found in environment variables');
48
+ }
49
+ (0, jwks_rsa_1.default)({ jwksUri })
50
+ .getSigningKey(header.kid)
51
+ .then((key) => {
52
+ cb(null, 'publicKey' in key ? key.publicKey : key.rsaPublicKey);
53
+ })
54
+ .catch((err) => console.error(err));
55
+ };
56
+ exports.getSigningKeys = getSigningKeys;
57
+ const verifyUserRecord = async (email, firstName, lastName, requestDomain, dataSource, attemptCacheUpdateIfNeeded = true) => {
58
+ if (!email)
59
+ return undefined;
60
+ let user = sqlserver_dataprovider_1.UserCache.Instance.Users.find((u) => {
61
+ if (!u.Email || u.Email.trim() === '') {
62
+ console.error(`SYSTEM METADATA ISSUE: User ${u.ID} has no email address`);
63
+ return false;
64
+ }
65
+ else
66
+ return u.Email.toLowerCase().trim() === email.toLowerCase().trim();
67
+ });
68
+ if (!user) {
69
+ if (config_1.configInfo.userHandling.autoCreateNewUsers && firstName && lastName && (requestDomain || config_1.configInfo.userHandling.newUserLimitedToAuthorizedDomains === false)) {
70
+ let passesDomainCheck = config_1.configInfo.userHandling.newUserLimitedToAuthorizedDomains === false;
71
+ if (!passesDomainCheck && requestDomain) {
72
+ passesDomainCheck = config_1.configInfo.userHandling.newUserAuthorizedDomains.some((pattern) => {
73
+ const regex = new RegExp('^' + pattern.toLowerCase().trim().replace(/\./g, '\\.').replace(/\*/g, '.*') + '$');
74
+ return regex.test(requestDomain?.toLowerCase().trim());
75
+ });
76
+ }
77
+ if (passesDomainCheck) {
78
+ console.warn(`User ${email} not found in cache. Attempting to create a new user...`);
79
+ const newUserCreator = global_1.MJGlobal.Instance.ClassFactory.CreateInstance(newUsers_1.NewUserBase);
80
+ const newUser = await newUserCreator.createNewUser(firstName, lastName, email);
81
+ if (newUser) {
82
+ const initData = newUser.GetAll();
83
+ initData.UserRoles = config_1.configInfo.userHandling.newUserRoles.map((role) => { return { UserID: initData.ID, RoleName: role }; });
84
+ user = new core_1.UserInfo(core_1.Metadata.Provider, initData);
85
+ sqlserver_dataprovider_1.UserCache.Instance.Users.push(user);
86
+ console.warn(` >>> New user ${email} created successfully!`);
87
+ }
88
+ }
89
+ else {
90
+ console.warn(`User ${email} not found in cache. Request domain '${requestDomain}' does not match any of the domains in the newUserAuthorizedDomains setting. To ignore domain, make sure you set the newUserLimitedToAuthorizedDomains setting to false. In this case we are NOT creating a new user.`);
91
+ }
92
+ }
93
+ if (!user && config_1.configInfo.userHandling.updateCacheWhenNotFound && dataSource && attemptCacheUpdateIfNeeded) {
94
+ console.warn(`User ${email} not found in cache. Updating cache in attempt to find the user...`);
95
+ const startTime = Date.now();
96
+ await sqlserver_dataprovider_1.UserCache.Instance.Refresh(dataSource);
97
+ const endTime = Date.now();
98
+ const elapsed = endTime - startTime;
99
+ const delay = config_1.configInfo.userHandling.updateCacheWhenNotFoundDelay ? (config_1.configInfo.userHandling.updateCacheWhenNotFoundDelay < 30000 ? config_1.configInfo.userHandling.updateCacheWhenNotFoundDelay : 30000) : 0;
100
+ if (elapsed < delay)
101
+ await new Promise(resolve => setTimeout(resolve, delay - elapsed));
102
+ const finalTime = Date.now();
103
+ const finalElapsed = finalTime - startTime;
104
+ console.log(` UserCache updated in ${elapsed}ms, total elapsed time of ${finalElapsed}ms including delay of ${delay}ms (if needed). Attempting to find the user again via recursive call to verifyUserRecord()`);
105
+ return (0, exports.verifyUserRecord)(email, firstName, lastName, requestDomain, dataSource, false);
106
+ }
107
+ }
108
+ return user;
109
+ };
110
+ exports.verifyUserRecord = verifyUserRecord;
111
111
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"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"}