@memberjunction/server 2.1.2 → 2.1.3

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 (202) hide show
  1. package/dist/apolloServer/TransactionPlugin.d.ts +4 -0
  2. package/dist/apolloServer/TransactionPlugin.d.ts.map +1 -0
  3. package/dist/apolloServer/TransactionPlugin.js +46 -0
  4. package/dist/apolloServer/TransactionPlugin.js.map +1 -0
  5. package/dist/apolloServer/index.d.ts +11 -0
  6. package/dist/apolloServer/index.d.ts.map +1 -0
  7. package/dist/apolloServer/index.js +25 -0
  8. package/dist/apolloServer/index.js.map +1 -0
  9. package/dist/auth/exampleNewUserSubClass.d.ts +6 -0
  10. package/dist/auth/exampleNewUserSubClass.d.ts.map +1 -0
  11. package/dist/auth/exampleNewUserSubClass.js +49 -0
  12. package/dist/auth/exampleNewUserSubClass.js.map +1 -0
  13. package/dist/auth/index.d.ts +30 -0
  14. package/dist/auth/index.d.ts.map +1 -0
  15. package/dist/auth/index.js +121 -0
  16. package/dist/auth/index.js.map +1 -0
  17. package/dist/auth/newUsers.d.ts +5 -0
  18. package/dist/auth/newUsers.d.ts.map +1 -0
  19. package/{src/auth/newUsers.ts → dist/auth/newUsers.js} +20 -14
  20. package/dist/auth/newUsers.js.map +1 -0
  21. package/dist/auth/tokenExpiredError.d.ts +5 -0
  22. package/dist/auth/tokenExpiredError.d.ts.map +1 -0
  23. package/dist/auth/tokenExpiredError.js +12 -0
  24. package/dist/auth/tokenExpiredError.js.map +1 -0
  25. package/dist/cache.d.ts +3 -0
  26. package/dist/cache.d.ts.map +1 -0
  27. package/{src/cache.ts → dist/cache.js} +4 -6
  28. package/dist/cache.js.map +1 -0
  29. package/dist/config.d.ts +196 -0
  30. package/dist/config.d.ts.map +1 -0
  31. package/{src/config.ts → dist/config.js} +25 -49
  32. package/dist/config.js.map +1 -0
  33. package/dist/context.d.ts +17 -0
  34. package/dist/context.d.ts.map +1 -0
  35. package/dist/context.js +84 -0
  36. package/dist/context.js.map +1 -0
  37. package/dist/directives/Public.d.ts +4 -0
  38. package/dist/directives/Public.d.ts.map +1 -0
  39. package/dist/directives/Public.js +30 -0
  40. package/dist/directives/Public.js.map +1 -0
  41. package/dist/directives/index.d.ts +2 -0
  42. package/dist/directives/index.d.ts.map +1 -0
  43. package/dist/directives/index.js +2 -0
  44. package/dist/directives/index.js.map +1 -0
  45. package/dist/entitySubclasses/DuplicateRunEntity.server.d.ts +6 -0
  46. package/dist/entitySubclasses/DuplicateRunEntity.server.d.ts.map +1 -0
  47. package/dist/entitySubclasses/DuplicateRunEntity.server.js +33 -0
  48. package/dist/entitySubclasses/DuplicateRunEntity.server.js.map +1 -0
  49. package/dist/entitySubclasses/entityPermissions.server.d.ts +23 -0
  50. package/dist/entitySubclasses/entityPermissions.server.d.ts.map +1 -0
  51. package/dist/entitySubclasses/entityPermissions.server.js +93 -0
  52. package/dist/entitySubclasses/entityPermissions.server.js.map +1 -0
  53. package/dist/entitySubclasses/userViewEntity.server.d.ts +13 -0
  54. package/dist/entitySubclasses/userViewEntity.server.d.ts.map +1 -0
  55. package/dist/entitySubclasses/userViewEntity.server.js +161 -0
  56. package/dist/entitySubclasses/userViewEntity.server.js.map +1 -0
  57. package/dist/generated/generated.d.ts +6679 -0
  58. package/dist/generated/generated.d.ts.map +1 -0
  59. package/dist/generated/generated.js +40786 -0
  60. package/dist/generated/generated.js.map +1 -0
  61. package/dist/generic/DeleteOptionsInput.d.ts +5 -0
  62. package/dist/generic/DeleteOptionsInput.d.ts.map +1 -0
  63. package/dist/generic/DeleteOptionsInput.js +27 -0
  64. package/dist/generic/DeleteOptionsInput.js.map +1 -0
  65. package/dist/generic/KeyInputOutputTypes.d.ts +16 -0
  66. package/dist/generic/KeyInputOutputTypes.d.ts.map +1 -0
  67. package/dist/generic/KeyInputOutputTypes.js +65 -0
  68. package/dist/generic/KeyInputOutputTypes.js.map +1 -0
  69. package/dist/generic/KeyValuePairInput.d.ts +5 -0
  70. package/dist/generic/KeyValuePairInput.d.ts.map +1 -0
  71. package/dist/generic/KeyValuePairInput.js +27 -0
  72. package/dist/generic/KeyValuePairInput.js.map +1 -0
  73. package/dist/generic/PushStatusResolver.d.ts +14 -0
  74. package/dist/generic/PushStatusResolver.d.ts.map +1 -0
  75. package/dist/generic/PushStatusResolver.js +58 -0
  76. package/dist/generic/PushStatusResolver.js.map +1 -0
  77. package/dist/generic/ResolverBase.d.ts +39 -0
  78. package/dist/generic/ResolverBase.d.ts.map +1 -0
  79. package/dist/generic/ResolverBase.js +573 -0
  80. package/dist/generic/ResolverBase.js.map +1 -0
  81. package/dist/generic/RunViewResolver.d.ts +123 -0
  82. package/dist/generic/RunViewResolver.d.ts.map +1 -0
  83. package/dist/generic/RunViewResolver.js +728 -0
  84. package/dist/generic/RunViewResolver.js.map +1 -0
  85. package/dist/index.d.ts +26 -0
  86. package/dist/index.d.ts.map +1 -0
  87. package/dist/index.js +108 -0
  88. package/dist/index.js.map +1 -0
  89. package/dist/orm.d.ts +4 -0
  90. package/dist/orm.d.ts.map +1 -0
  91. package/dist/orm.js +32 -0
  92. package/dist/orm.js.map +1 -0
  93. package/dist/resolvers/AskSkipResolver.d.ts +54 -0
  94. package/dist/resolvers/AskSkipResolver.d.ts.map +1 -0
  95. package/dist/resolvers/AskSkipResolver.js +805 -0
  96. package/dist/resolvers/AskSkipResolver.js.map +1 -0
  97. package/dist/resolvers/ColorResolver.d.ts +23 -0
  98. package/dist/resolvers/ColorResolver.d.ts.map +1 -0
  99. package/dist/resolvers/ColorResolver.js +97 -0
  100. package/dist/resolvers/ColorResolver.js.map +1 -0
  101. package/dist/resolvers/DatasetResolver.d.ts +42 -0
  102. package/dist/resolvers/DatasetResolver.d.ts.map +1 -0
  103. package/dist/resolvers/DatasetResolver.js +179 -0
  104. package/dist/resolvers/DatasetResolver.js.map +1 -0
  105. package/dist/resolvers/EntityCommunicationsResolver.d.ts +50 -0
  106. package/dist/resolvers/EntityCommunicationsResolver.d.ts.map +1 -0
  107. package/dist/resolvers/EntityCommunicationsResolver.js +280 -0
  108. package/dist/resolvers/EntityCommunicationsResolver.js.map +1 -0
  109. package/dist/resolvers/EntityRecordNameResolver.d.ts +21 -0
  110. package/dist/resolvers/EntityRecordNameResolver.d.ts.map +1 -0
  111. package/dist/resolvers/EntityRecordNameResolver.js +117 -0
  112. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -0
  113. package/dist/resolvers/EntityResolver.d.ts +6 -0
  114. package/dist/resolvers/EntityResolver.d.ts.map +1 -0
  115. package/dist/resolvers/EntityResolver.js +57 -0
  116. package/dist/resolvers/EntityResolver.js.map +1 -0
  117. package/dist/resolvers/FileCategoryResolver.d.ts +6 -0
  118. package/dist/resolvers/FileCategoryResolver.d.ts.map +1 -0
  119. package/dist/resolvers/FileCategoryResolver.js +61 -0
  120. package/dist/resolvers/FileCategoryResolver.js.map +1 -0
  121. package/dist/resolvers/FileResolver.d.ts +24 -0
  122. package/dist/resolvers/FileResolver.d.ts.map +1 -0
  123. package/dist/resolvers/FileResolver.js +166 -0
  124. package/dist/resolvers/FileResolver.js.map +1 -0
  125. package/dist/resolvers/MergeRecordsResolver.d.ts +59 -0
  126. package/dist/resolvers/MergeRecordsResolver.d.ts.map +1 -0
  127. package/dist/resolvers/MergeRecordsResolver.js +282 -0
  128. package/dist/resolvers/MergeRecordsResolver.js.map +1 -0
  129. package/dist/resolvers/PotentialDuplicateRecordResolver.d.ts +29 -0
  130. package/dist/resolvers/PotentialDuplicateRecordResolver.d.ts.map +1 -0
  131. package/dist/resolvers/PotentialDuplicateRecordResolver.js +125 -0
  132. package/dist/resolvers/PotentialDuplicateRecordResolver.js.map +1 -0
  133. package/dist/resolvers/QueryResolver.d.ts +13 -0
  134. package/dist/resolvers/QueryResolver.d.ts.map +1 -0
  135. package/dist/resolvers/QueryResolver.js +77 -0
  136. package/dist/resolvers/QueryResolver.js.map +1 -0
  137. package/dist/resolvers/ReportResolver.d.ts +20 -0
  138. package/dist/resolvers/ReportResolver.d.ts.map +1 -0
  139. package/dist/resolvers/ReportResolver.js +182 -0
  140. package/dist/resolvers/ReportResolver.js.map +1 -0
  141. package/dist/resolvers/UserFavoriteResolver.d.ts +42 -0
  142. package/dist/resolvers/UserFavoriteResolver.d.ts.map +1 -0
  143. package/dist/resolvers/UserFavoriteResolver.js +230 -0
  144. package/dist/resolvers/UserFavoriteResolver.js.map +1 -0
  145. package/dist/resolvers/UserResolver.d.ts +10 -0
  146. package/dist/resolvers/UserResolver.d.ts.map +1 -0
  147. package/dist/resolvers/UserResolver.js +71 -0
  148. package/dist/resolvers/UserResolver.js.map +1 -0
  149. package/dist/resolvers/UserViewResolver.d.ts +13 -0
  150. package/dist/resolvers/UserViewResolver.d.ts.map +1 -0
  151. package/dist/resolvers/UserViewResolver.js +99 -0
  152. package/dist/resolvers/UserViewResolver.js.map +1 -0
  153. package/dist/types.d.ts +37 -0
  154. package/dist/types.d.ts.map +1 -0
  155. package/dist/types.js +2 -0
  156. package/dist/types.js.map +1 -0
  157. package/dist/util.d.ts +4 -0
  158. package/dist/util.d.ts.map +1 -0
  159. package/dist/util.js +85 -0
  160. package/dist/util.js.map +1 -0
  161. package/package.json +25 -21
  162. package/CHANGELOG.json +0 -3389
  163. package/CHANGELOG.md +0 -739
  164. package/src/apolloServer/TransactionPlugin.ts +0 -57
  165. package/src/apolloServer/index.ts +0 -33
  166. package/src/auth/exampleNewUserSubClass.ts +0 -74
  167. package/src/auth/index.ts +0 -151
  168. package/src/auth/tokenExpiredError.ts +0 -12
  169. package/src/context.ts +0 -111
  170. package/src/directives/Public.ts +0 -42
  171. package/src/directives/index.ts +0 -1
  172. package/src/entitySubclasses/DuplicateRunEntity.server.ts +0 -29
  173. package/src/entitySubclasses/entityPermissions.server.ts +0 -111
  174. package/src/entitySubclasses/userViewEntity.server.ts +0 -187
  175. package/src/generated/generated.ts +0 -25369
  176. package/src/generic/DeleteOptionsInput.ts +0 -13
  177. package/src/generic/KeyInputOutputTypes.ts +0 -35
  178. package/src/generic/KeyValuePairInput.ts +0 -14
  179. package/src/generic/PushStatusResolver.ts +0 -40
  180. package/src/generic/ResolverBase.ts +0 -767
  181. package/src/generic/RunViewResolver.ts +0 -582
  182. package/src/index.ts +0 -161
  183. package/src/orm.ts +0 -36
  184. package/src/resolvers/AskSkipResolver.ts +0 -926
  185. package/src/resolvers/ColorResolver.ts +0 -61
  186. package/src/resolvers/DatasetResolver.ts +0 -115
  187. package/src/resolvers/EntityCommunicationsResolver.ts +0 -216
  188. package/src/resolvers/EntityRecordNameResolver.ts +0 -78
  189. package/src/resolvers/EntityResolver.ts +0 -37
  190. package/src/resolvers/FileCategoryResolver.ts +0 -62
  191. package/src/resolvers/FileResolver.ts +0 -147
  192. package/src/resolvers/MergeRecordsResolver.ts +0 -182
  193. package/src/resolvers/PotentialDuplicateRecordResolver.ts +0 -91
  194. package/src/resolvers/QueryResolver.ts +0 -42
  195. package/src/resolvers/ReportResolver.ts +0 -147
  196. package/src/resolvers/UserFavoriteResolver.ts +0 -166
  197. package/src/resolvers/UserResolver.ts +0 -33
  198. package/src/resolvers/UserViewResolver.ts +0 -64
  199. package/src/types.ts +0 -40
  200. package/src/util.ts +0 -106
  201. package/tsconfig.json +0 -30
  202. package/typedoc.json +0 -4
@@ -0,0 +1,230 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Metadata, CompositeKey } from '@memberjunction/core';
14
+ import { Arg, CompositeKeyInputType, CompositeKeyOutputType, Ctx, Field, InputType, Int, Mutation, ObjectType, Query, Resolver } from '@memberjunction/server';
15
+ import { UserCache } from '@memberjunction/sqlserver-dataprovider';
16
+ import { UserFavorite_, UserFavoriteResolverBase } from '../generated/generated';
17
+ let UserFavoriteSearchParams = class UserFavoriteSearchParams {
18
+ EntityID;
19
+ CompositeKey;
20
+ UserID;
21
+ };
22
+ __decorate([
23
+ Field(() => String),
24
+ __metadata("design:type", String)
25
+ ], UserFavoriteSearchParams.prototype, "EntityID", void 0);
26
+ __decorate([
27
+ Field(() => CompositeKeyInputType),
28
+ __metadata("design:type", CompositeKeyInputType)
29
+ ], UserFavoriteSearchParams.prototype, "CompositeKey", void 0);
30
+ __decorate([
31
+ Field(() => String),
32
+ __metadata("design:type", String)
33
+ ], UserFavoriteSearchParams.prototype, "UserID", void 0);
34
+ UserFavoriteSearchParams = __decorate([
35
+ InputType()
36
+ ], UserFavoriteSearchParams);
37
+ export { UserFavoriteSearchParams };
38
+ let UserFavoriteSetParams = class UserFavoriteSetParams {
39
+ EntityID;
40
+ CompositeKey;
41
+ UserID;
42
+ IsFavorite;
43
+ };
44
+ __decorate([
45
+ Field(() => String),
46
+ __metadata("design:type", String)
47
+ ], UserFavoriteSetParams.prototype, "EntityID", void 0);
48
+ __decorate([
49
+ Field(() => CompositeKeyInputType),
50
+ __metadata("design:type", CompositeKeyInputType)
51
+ ], UserFavoriteSetParams.prototype, "CompositeKey", void 0);
52
+ __decorate([
53
+ Field(() => String),
54
+ __metadata("design:type", String)
55
+ ], UserFavoriteSetParams.prototype, "UserID", void 0);
56
+ __decorate([
57
+ Field(() => Boolean),
58
+ __metadata("design:type", Boolean)
59
+ ], UserFavoriteSetParams.prototype, "IsFavorite", void 0);
60
+ UserFavoriteSetParams = __decorate([
61
+ InputType()
62
+ ], UserFavoriteSetParams);
63
+ export { UserFavoriteSetParams };
64
+ let UserFavoriteResult = class UserFavoriteResult {
65
+ EntityID;
66
+ CompositeKey;
67
+ UserID;
68
+ IsFavorite;
69
+ Success;
70
+ };
71
+ __decorate([
72
+ Field(() => Int),
73
+ __metadata("design:type", Number)
74
+ ], UserFavoriteResult.prototype, "EntityID", void 0);
75
+ __decorate([
76
+ Field(() => CompositeKeyOutputType),
77
+ __metadata("design:type", CompositeKeyOutputType)
78
+ ], UserFavoriteResult.prototype, "CompositeKey", void 0);
79
+ __decorate([
80
+ Field(() => Int),
81
+ __metadata("design:type", Number)
82
+ ], UserFavoriteResult.prototype, "UserID", void 0);
83
+ __decorate([
84
+ Field(() => Boolean),
85
+ __metadata("design:type", Boolean)
86
+ ], UserFavoriteResult.prototype, "IsFavorite", void 0);
87
+ __decorate([
88
+ Field(() => Boolean),
89
+ __metadata("design:type", Boolean)
90
+ ], UserFavoriteResult.prototype, "Success", void 0);
91
+ UserFavoriteResult = __decorate([
92
+ ObjectType()
93
+ ], UserFavoriteResult);
94
+ export { UserFavoriteResult };
95
+ let UserFavoriteResolver = class UserFavoriteResolver extends UserFavoriteResolverBase {
96
+ async UserFavoritesByUserID(UserID, { dataSource }) {
97
+ return await this.findBy(dataSource, 'User Favorites', { UserID });
98
+ }
99
+ async UserFavoriteSearchByParams(params, { dataSource }) {
100
+ return await this.findBy(dataSource, 'User Favorites', params);
101
+ }
102
+ async GetRecordFavoriteStatus(params, {}) {
103
+ const md = new Metadata();
104
+ const pk = new CompositeKey(params.CompositeKey.KeyValuePairs);
105
+ const e = md.Entities.find((e) => e.ID === params.EntityID);
106
+ if (e)
107
+ return {
108
+ EntityID: params.EntityID,
109
+ UserID: params.UserID,
110
+ CompositeKey: pk,
111
+ IsFavorite: await md.GetRecordFavoriteStatus(params.UserID, e.Name, pk),
112
+ Success: true,
113
+ };
114
+ else
115
+ throw new Error(`Entity ID:${params.EntityID} not found`);
116
+ }
117
+ SetRecordFavoriteStatus(params, { userPayload }) {
118
+ const md = new Metadata();
119
+ const pk = new CompositeKey(params.CompositeKey.KeyValuePairs);
120
+ const e = md.Entities.find((e) => e.ID === params.EntityID);
121
+ const u = UserCache.Users.find((u) => u.ID === userPayload.userRecord.ID);
122
+ if (e) {
123
+ md.SetRecordFavoriteStatus(params.UserID, e.Name, pk, params.IsFavorite, u);
124
+ return {
125
+ Success: true,
126
+ EntityID: params.EntityID,
127
+ UserID: params.UserID,
128
+ CompositeKey: params.CompositeKey,
129
+ IsFavorite: params.IsFavorite,
130
+ };
131
+ }
132
+ else
133
+ throw new Error(`Entity ID:${params.EntityID} not found`);
134
+ }
135
+ GetTestData() {
136
+ return [{
137
+ firstName: 'John',
138
+ lastName: 'Doe',
139
+ title: 'Software Engineer II',
140
+ email: 'amith+john.doe@nagarajan.org',
141
+ age: 25,
142
+ address: {
143
+ street: '123 Main St',
144
+ city: 'Springfield',
145
+ state: 'IL',
146
+ zip: '62701'
147
+ },
148
+ recommendedArticles: [
149
+ {
150
+ title: 'How to Write Better Code',
151
+ url: 'https://example.com/article1'
152
+ },
153
+ {
154
+ title: 'The Art of Debugging',
155
+ url: 'https://example.com/article2'
156
+ },
157
+ {
158
+ title: 'Using Templates Effectively',
159
+ url: 'https://example.com/article3'
160
+ }
161
+ ]
162
+ },
163
+ {
164
+ firstName: 'Jane',
165
+ lastName: 'Smith',
166
+ title: 'Executive Vice President of Software Development',
167
+ email: 'amith+jane.smith@nagarajan.org',
168
+ age: 30,
169
+ address: {
170
+ street: '456 Elm St',
171
+ city: 'Chicago',
172
+ state: 'IL',
173
+ zip: '62702'
174
+ },
175
+ recommendedArticles: [
176
+ {
177
+ title: 'Exemplifying the Importance of Code Reviews',
178
+ url: 'https://example.com/article1'
179
+ },
180
+ {
181
+ title: 'AI and Software Development: A New Frontier',
182
+ url: 'https://example.com/article2'
183
+ },
184
+ {
185
+ title: 'Gardening Tips for Fun Loving Software Developers',
186
+ url: 'https://example.com/article3'
187
+ }
188
+ ]
189
+ }
190
+ ];
191
+ }
192
+ };
193
+ __decorate([
194
+ Query(() => [UserFavorite_]),
195
+ __param(0, Arg('UserID', () => Int)),
196
+ __param(1, Ctx()),
197
+ __metadata("design:type", Function),
198
+ __metadata("design:paramtypes", [Number, Object]),
199
+ __metadata("design:returntype", Promise)
200
+ ], UserFavoriteResolver.prototype, "UserFavoritesByUserID", null);
201
+ __decorate([
202
+ Query(() => [UserFavorite_]),
203
+ __param(0, Arg('params', () => Int)),
204
+ __param(1, Ctx()),
205
+ __metadata("design:type", Function),
206
+ __metadata("design:paramtypes", [UserFavoriteSearchParams, Object]),
207
+ __metadata("design:returntype", Promise)
208
+ ], UserFavoriteResolver.prototype, "UserFavoriteSearchByParams", null);
209
+ __decorate([
210
+ Query(() => UserFavoriteResult),
211
+ __param(0, Arg('params', () => UserFavoriteSearchParams)),
212
+ __param(1, Ctx()),
213
+ __metadata("design:type", Function),
214
+ __metadata("design:paramtypes", [UserFavoriteSearchParams, Object]),
215
+ __metadata("design:returntype", Promise)
216
+ ], UserFavoriteResolver.prototype, "GetRecordFavoriteStatus", null);
217
+ __decorate([
218
+ Mutation(() => UserFavoriteResult),
219
+ __param(0, Arg('params', () => UserFavoriteSetParams)),
220
+ __param(1, Ctx()),
221
+ __metadata("design:type", Function),
222
+ __metadata("design:paramtypes", [UserFavoriteSetParams, Object]),
223
+ __metadata("design:returntype", void 0)
224
+ ], UserFavoriteResolver.prototype, "SetRecordFavoriteStatus", null);
225
+ UserFavoriteResolver = __decorate([
226
+ Resolver(UserFavorite_)
227
+ ], UserFavoriteResolver);
228
+ export { UserFavoriteResolver };
229
+ export default UserFavoriteResolver;
230
+ //# sourceMappingURL=UserFavoriteResolver.js.map
@@ -0,0 +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,EAAc,GAAG,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC3K,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAC;AAGnE,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAM1E,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAEnC,QAAQ,CAAS;IAGjB,YAAY,CAAwB;IAGpC,MAAM,CAAS;CAChB,CAAA;AAPC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;0DACH;AAGjB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC;8BACrB,qBAAqB;8DAAC;AAGpC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;wDACL;AARJ,wBAAwB;IADpC,SAAS,EAAE;GACC,wBAAwB,CASpC;;AAGM,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAEhC,QAAQ,CAAS;IAGjB,YAAY,CAAwB;IAGpC,MAAM,CAAS;IAGf,UAAU,CAAU;CACrB,CAAA;AAVC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;uDACH;AAGjB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC;8BACrB,qBAAqB;2DAAC;AAGpC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;qDACL;AAGf;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;;yDACD;AAXT,qBAAqB;IADjC,SAAS,EAAE;GACC,qBAAqB,CAYjC;;AAGM,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAE7B,QAAQ,CAAS;IAGjB,YAAY,CAAyB;IAGrC,MAAM,CAAS;IAGf,UAAU,CAAU;IAGpB,OAAO,CAAU;CAClB,CAAA;AAbC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;;oDACA;AAGjB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC;8BACtB,sBAAsB;wDAAC;AAGrC;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;;kDACF;AAGf;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;;sDACD;AAGpB;IADC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;;mDACJ;AAdN,kBAAkB;IAD9B,UAAU,EAAE;GACA,kBAAkB,CAe9B;;AAGM,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,wBAAwB;IAE1D,AAAN,KAAK,CAAC,qBAAqB,CAA2B,MAAc,EAAS,EAAE,UAAU,EAAc;QACrG,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IACrE,CAAC;IAGK,AAAN,KAAK,CAAC,0BAA0B,CAA2B,MAAgC,EAAS,EAAE,UAAU,EAAc;QAC5H,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAGK,AAAN,KAAK,CAAC,uBAAuB,CAAgD,MAAgC,EAAS,EAAc;QAClI,MAAM,EAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAE/D,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC;YACH,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,EAAE;gBAChB,UAAU,EAAE,MAAM,EAAE,CAAC,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACvE,OAAO,EAAE,IAAI;aACd,CAAC;;YACC,MAAM,IAAI,KAAK,CAAC,aAAa,MAAM,CAAC,QAAQ,YAAY,CAAC,CAAC;IACjE,CAAC;IAGD,uBAAuB,CAA6C,MAA6B,EAAS,EAAE,WAAW,EAAc;QACnI,MAAM,EAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAC/D,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,EAAE,CAAC;YACN,EAAE,CAAC,uBAAuB,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YAC5E,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,CAAC;QACJ,CAAC;;YAEC,MAAM,IAAI,KAAK,CAAC,aAAa,MAAM,CAAC,QAAQ,YAAY,CAAC,CAAC;IAE9D,CAAC;IAEO,WAAW;QACjB,OAAO,CAAC;gBACN,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,sBAAsB;gBAC7B,KAAK,EAAE,8BAA8B;gBACrC,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE;oBACP,MAAM,EAAE,aAAa;oBACrB,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE,IAAI;oBACX,GAAG,EAAE,OAAO;iBACb;gBACD,mBAAmB,EAAE;oBACnB;wBACE,KAAK,EAAE,0BAA0B;wBACjC,GAAG,EAAE,8BAA8B;qBACpC;oBACD;wBACE,KAAK,EAAE,sBAAsB;wBAC7B,GAAG,EAAE,8BAA8B;qBACpC;oBACD;wBACE,KAAK,EAAE,6BAA6B;wBACpC,GAAG,EAAE,8BAA8B;qBACpC;iBACF;aACF;YACD;gBACE,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,kDAAkD;gBACzD,KAAK,EAAE,gCAAgC;gBACvC,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE;oBACP,MAAM,EAAE,YAAY;oBACpB,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,IAAI;oBACX,GAAG,EAAE,OAAO;iBACb;gBACD,mBAAmB,EAAE;oBACnB;wBACE,KAAK,EAAE,6CAA6C;wBACpD,GAAG,EAAE,8BAA8B;qBACpC;oBACD;wBACE,KAAK,EAAE,6CAA6C;wBACpD,GAAG,EAAE,8BAA8B;qBACpC;oBACD;wBACE,KAAK,EAAE,mDAAmD;wBAC1D,GAAG,EAAE,8BAA8B;qBACpC;iBACF;aACF;SACF,CAAA;IACD,CAAC;CAEF,CAAA;AAzGO;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC;IACA,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAkB,WAAA,GAAG,EAAE,CAAA;;;;iEAE3E;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC;IACK,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAoC,WAAA,GAAG,EAAE,CAAA;;qCAAhC,wBAAwB;;sEAE1F;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC;IACD,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,wBAAwB,CAAC,CAAA;IAAoC,WAAA,GAAG,EAAE,CAAA;;qCAAhC,wBAAwB;;mEAc5G;AAGD;IADC,QAAQ,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC;IACV,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAA;IAAiC,WAAA,GAAG,EAAE,CAAA;;qCAA7B,qBAAqB;;mEAkBhG;AA/CU,oBAAoB;IADhC,QAAQ,CAAC,aAAa,CAAC;GACX,oBAAoB,CA2GhC;;AAED,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { AppContext } from '@memberjunction/server';
2
+ import { UserResolverBase } from '../generated/generated';
3
+ export declare class UserResolver extends UserResolverBase {
4
+ CurrentUser({ dataSource, userPayload }: AppContext): Promise<any>;
5
+ UserByID(ID: number, { dataSource }: AppContext): Promise<any>;
6
+ UserByEmployeeID(EmployeeID: number, { dataSource }: AppContext): Promise<any>;
7
+ UserByEmail(Email: string, { dataSource }: AppContext): Promise<any>;
8
+ }
9
+ export default UserResolver;
10
+ //# sourceMappingURL=UserResolver.d.ts.map
@@ -0,0 +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,wBAAwB,CAAC;AAEjE,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"}
@@ -0,0 +1,71 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Arg, Ctx, Int, Query, Resolver } from '@memberjunction/server';
14
+ import { User_, UserResolverBase } from '../generated/generated';
15
+ let UserResolver = class UserResolver extends UserResolverBase {
16
+ async CurrentUser({ dataSource, userPayload }) {
17
+ const result = await this.UserByEmail(userPayload.email, { dataSource, userPayload });
18
+ console.log('CurrentUser', result);
19
+ return result;
20
+ }
21
+ async UserByID(ID, { dataSource }) {
22
+ const retVal = super.safeFirstArrayElement(await this.findBy(dataSource, 'Users', { ID }));
23
+ return this.MapFieldNamesToCodeNames('Users', retVal);
24
+ }
25
+ async UserByEmployeeID(EmployeeID, { dataSource }) {
26
+ const retVal = super.safeFirstArrayElement(await this.findBy(dataSource, 'Users', { EmployeeID }));
27
+ return this.MapFieldNamesToCodeNames('Users', retVal);
28
+ }
29
+ async UserByEmail(Email, { dataSource }) {
30
+ const searchEmail = Email;
31
+ const returnVal = super.safeFirstArrayElement(await this.findBy(dataSource, 'Users', { Email: searchEmail }));
32
+ return this.MapFieldNamesToCodeNames('Users', returnVal);
33
+ }
34
+ };
35
+ __decorate([
36
+ Query(() => User_),
37
+ __param(0, Ctx()),
38
+ __metadata("design:type", Function),
39
+ __metadata("design:paramtypes", [Object]),
40
+ __metadata("design:returntype", Promise)
41
+ ], UserResolver.prototype, "CurrentUser", null);
42
+ __decorate([
43
+ Query(() => User_),
44
+ __param(0, Arg('ID', () => Int)),
45
+ __param(1, Ctx()),
46
+ __metadata("design:type", Function),
47
+ __metadata("design:paramtypes", [Number, Object]),
48
+ __metadata("design:returntype", Promise)
49
+ ], UserResolver.prototype, "UserByID", null);
50
+ __decorate([
51
+ Query(() => User_),
52
+ __param(0, Arg('EmployeeID', () => Int)),
53
+ __param(1, Ctx()),
54
+ __metadata("design:type", Function),
55
+ __metadata("design:paramtypes", [Number, Object]),
56
+ __metadata("design:returntype", Promise)
57
+ ], UserResolver.prototype, "UserByEmployeeID", null);
58
+ __decorate([
59
+ Query(() => User_),
60
+ __param(0, Arg('Email', () => String)),
61
+ __param(1, Ctx()),
62
+ __metadata("design:type", Function),
63
+ __metadata("design:paramtypes", [String, Object]),
64
+ __metadata("design:returntype", Promise)
65
+ ], UserResolver.prototype, "UserByEmail", null);
66
+ UserResolver = __decorate([
67
+ Resolver(User_)
68
+ ], UserResolver);
69
+ export { UserResolver };
70
+ export default UserResolver;
71
+ //# sourceMappingURL=UserResolver.js.map
@@ -0,0 +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,wBAAwB,CAAC;AAG1D,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"}
@@ -0,0 +1,13 @@
1
+ import { AppContext, UserPayload } from '@memberjunction/server';
2
+ import { DataSource } from 'typeorm';
3
+ import { UserViewResolverBase } from '../generated/generated';
4
+ export declare class UserViewResolver extends UserViewResolverBase {
5
+ UserViewsByUserID(UserID: number, { dataSource }: AppContext): Promise<any>;
6
+ DefaultViewByUserAndEntity(UserID: number, EntityID: number, { dataSource }: AppContext): Promise<any>;
7
+ CurrentUserDefaultViewByEntityID(EntityID: number, { dataSource, userPayload }: AppContext): Promise<any>;
8
+ protected getCurrentUserID(dataSource: DataSource, userPayload: UserPayload): Promise<number>;
9
+ CurrentUserUserViewsByEntityID(EntityID: number, { dataSource, userPayload }: AppContext): Promise<any>;
10
+ UpdateWhereClause(ID: string, { userPayload }: AppContext): Promise<any>;
11
+ }
12
+ export default UserViewResolver;
13
+ //# sourceMappingURL=UserViewResolver.d.ts.map
@@ -0,0 +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,wBAAwB,CAAC;AAIzE,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"}
@@ -0,0 +1,99 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Metadata } from '@memberjunction/core';
14
+ import { Arg, Ctx, Int, Query, Resolver } from '@memberjunction/server';
15
+ import { UserView_, UserViewResolverBase } from '../generated/generated';
16
+ import { UserResolver } from './UserResolver';
17
+ let UserViewResolver = class UserViewResolver extends UserViewResolverBase {
18
+ async UserViewsByUserID(UserID, { dataSource }) {
19
+ return await this.findBy(dataSource, 'User Views', { UserID });
20
+ }
21
+ async DefaultViewByUserAndEntity(UserID, EntityID, { dataSource }) {
22
+ return await this.findBy(dataSource, 'User Views', { UserID, EntityID, IsDefault: true });
23
+ }
24
+ async CurrentUserDefaultViewByEntityID(EntityID, { dataSource, userPayload }) {
25
+ return await this.findBy(dataSource, 'User Views', {
26
+ UserID: await this.getCurrentUserID(dataSource, userPayload),
27
+ EntityID,
28
+ IsDefault: true,
29
+ });
30
+ }
31
+ async getCurrentUserID(dataSource, userPayload) {
32
+ const userResolver = new UserResolver();
33
+ const user = await userResolver.UserByEmail(userPayload.email, { dataSource, userPayload });
34
+ return user.ID;
35
+ }
36
+ async CurrentUserUserViewsByEntityID(EntityID, { dataSource, userPayload }) {
37
+ return this.findBy(dataSource, 'User Views', { UserID: await this.getCurrentUserID(dataSource, userPayload), EntityID });
38
+ }
39
+ async UpdateWhereClause(ID, { userPayload }) {
40
+ const md = new Metadata();
41
+ const u = this.GetUserFromPayload(userPayload);
42
+ const viewEntity = await md.GetEntityObject('User Views', u);
43
+ await viewEntity.Load(ID);
44
+ viewEntity.UpdateWhereClause();
45
+ if (await viewEntity.Save()) {
46
+ return viewEntity.GetAll();
47
+ }
48
+ else {
49
+ throw new Error('Failed to update where clause');
50
+ }
51
+ }
52
+ };
53
+ __decorate([
54
+ Query(() => [UserView_]),
55
+ __param(0, Arg('UserID', () => Int)),
56
+ __param(1, Ctx()),
57
+ __metadata("design:type", Function),
58
+ __metadata("design:paramtypes", [Number, Object]),
59
+ __metadata("design:returntype", Promise)
60
+ ], UserViewResolver.prototype, "UserViewsByUserID", null);
61
+ __decorate([
62
+ Query(() => [UserView_]),
63
+ __param(0, Arg('UserID', () => Int)),
64
+ __param(1, Arg('EntityID', () => Int)),
65
+ __param(2, Ctx()),
66
+ __metadata("design:type", Function),
67
+ __metadata("design:paramtypes", [Number, Number, Object]),
68
+ __metadata("design:returntype", Promise)
69
+ ], UserViewResolver.prototype, "DefaultViewByUserAndEntity", null);
70
+ __decorate([
71
+ Query(() => [UserView_]),
72
+ __param(0, Arg('EntityID', () => Int)),
73
+ __param(1, Ctx()),
74
+ __metadata("design:type", Function),
75
+ __metadata("design:paramtypes", [Number, Object]),
76
+ __metadata("design:returntype", Promise)
77
+ ], UserViewResolver.prototype, "CurrentUserDefaultViewByEntityID", null);
78
+ __decorate([
79
+ Query(() => [UserView_]),
80
+ __param(0, Arg('EntityID', () => Int)),
81
+ __param(1, Ctx()),
82
+ __metadata("design:type", Function),
83
+ __metadata("design:paramtypes", [Number, Object]),
84
+ __metadata("design:returntype", Promise)
85
+ ], UserViewResolver.prototype, "CurrentUserUserViewsByEntityID", null);
86
+ __decorate([
87
+ Query(() => [UserView_]),
88
+ __param(0, Arg('ID', () => String)),
89
+ __param(1, Ctx()),
90
+ __metadata("design:type", Function),
91
+ __metadata("design:paramtypes", [String, Object]),
92
+ __metadata("design:returntype", Promise)
93
+ ], UserViewResolver.prototype, "UpdateWhereClause", null);
94
+ UserViewResolver = __decorate([
95
+ Resolver(UserView_)
96
+ ], UserViewResolver);
97
+ export { UserViewResolver };
98
+ export default UserViewResolver;
99
+ //# sourceMappingURL=UserViewResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserViewResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import { UserViewEntity } from '@memberjunction/core-entities';
2
+ import { GraphQLSchema } from 'graphql';
3
+ import { PubSubEngine } from 'type-graphql';
4
+ import { DataSource, QueryRunner } from 'typeorm';
5
+ export type UserPayload = {
6
+ email: string;
7
+ userRecord: any;
8
+ sessionId: string;
9
+ };
10
+ export type AppContext = {
11
+ dataSource: DataSource;
12
+ userPayload: UserPayload;
13
+ queryRunner?: QueryRunner;
14
+ };
15
+ export type DirectiveBuilder = {
16
+ typeDefs: string;
17
+ transformer: (schema: GraphQLSchema) => GraphQLSchema;
18
+ };
19
+ export type RunViewGenericParams = {
20
+ viewInfo: UserViewEntity;
21
+ dataSource: DataSource;
22
+ extraFilter: string;
23
+ orderBy: string;
24
+ userSearchString: string;
25
+ excludeUserViewRunID?: string;
26
+ overrideExcludeFilter?: string;
27
+ saveViewResults?: boolean;
28
+ fields?: string[];
29
+ ignoreMaxRows?: boolean;
30
+ excludeDataFromAllPriorViewRuns?: boolean;
31
+ forceAuditLog?: boolean;
32
+ auditLogDescription?: string;
33
+ resultType?: string;
34
+ userPayload?: UserPayload;
35
+ pubSub: PubSubEngine;
36
+ };
37
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,GAAG,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,aAAa,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,cAAc,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,MAAM,EAAE,YAAY,CAAA;CACrB,CAAA"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/dist/util.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ type StreamCallback = (jsonObject: any) => void;
2
+ export declare function sendPostRequest(url: string, payload: any, useCompression: boolean, headers: Record<string, string> | null, streamCallback?: StreamCallback): Promise<any[]>;
3
+ export {};
4
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAQA,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,CAoFjL"}
package/dist/util.js ADDED
@@ -0,0 +1,85 @@
1
+ import { request as httpRequest } from 'http';
2
+ import { request as httpsRequest } from 'https';
3
+ import { gzip as gzipCallback, createGunzip } from 'zlib';
4
+ import { promisify } from 'util';
5
+ import { URL } from 'url';
6
+ const gzip = promisify(gzipCallback);
7
+ export async function sendPostRequest(url, payload, useCompression, headers, streamCallback) {
8
+ return new Promise(async (resolve, reject) => {
9
+ try {
10
+ const { protocol, hostname, port, pathname } = new URL(url);
11
+ let data;
12
+ if (useCompression) {
13
+ try {
14
+ data = await gzip(Buffer.from(JSON.stringify(payload)));
15
+ headers = headers || {};
16
+ headers['Content-Encoding'] = 'gzip';
17
+ }
18
+ catch (error) {
19
+ console.error(`Error in sendPostRequest while compressing data: ${error && error.message ? error.message : error}`);
20
+ return reject(error);
21
+ }
22
+ }
23
+ else {
24
+ data = Buffer.from(JSON.stringify(payload));
25
+ }
26
+ const options = {
27
+ hostname,
28
+ port: port || (protocol === 'https:' ? 443 : 80),
29
+ path: pathname,
30
+ method: 'POST',
31
+ headers: {
32
+ 'Content-Type': 'application/json',
33
+ ...headers
34
+ }
35
+ };
36
+ const request = protocol === 'https:' ? httpsRequest : httpRequest;
37
+ const jsonObjects = [];
38
+ let buffer = '';
39
+ const req = request(options, (res) => {
40
+ const gunzip = createGunzip();
41
+ const stream = res.headers['content-encoding'] === 'gzip' ? res.pipe(gunzip) : res;
42
+ stream.on('data', (chunk) => {
43
+ buffer += chunk;
44
+ let boundary;
45
+ while ((boundary = buffer.indexOf('\n')) !== -1) {
46
+ const jsonString = buffer.substring(0, boundary);
47
+ buffer = buffer.substring(boundary + 1);
48
+ try {
49
+ const jsonObject = JSON.parse(jsonString);
50
+ jsonObjects.push(jsonObject);
51
+ streamCallback?.(jsonObject);
52
+ }
53
+ catch (e) {
54
+ console.warn(`Error in postRequest().stream(data) while parsing JSON object: ${e && e.message ? e.message : e}`);
55
+ }
56
+ }
57
+ });
58
+ stream.on('end', () => {
59
+ if (buffer.trim()) {
60
+ try {
61
+ const jsonObject = JSON.parse(buffer.trim());
62
+ jsonObjects.push(jsonObject);
63
+ streamCallback?.(jsonObject);
64
+ }
65
+ catch (e) {
66
+ console.warn(`Error in postRequest().stream(end) while parsing JSON object: ${e && e.message ? e.message : e}`);
67
+ }
68
+ }
69
+ resolve(jsonObjects);
70
+ });
71
+ });
72
+ req.on('error', (e) => {
73
+ console.error(`Error in sendPostRequest().req.on(error): ${e && e.message ? e.message : e}`);
74
+ reject(e);
75
+ });
76
+ req.write(data);
77
+ req.end();
78
+ }
79
+ catch (e) {
80
+ console.error(`Error in sendPostRequest: ${e && e.message ? e.message : e}`);
81
+ reject(e);
82
+ }
83
+ });
84
+ }
85
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}