@common-stack/server-core 0.6.1-alpha.3 → 1.0.1-alpha.0

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 (50) hide show
  1. package/lib/connector/__tests__/container-connector.test.d.ts +2 -0
  2. package/lib/connector/__tests__/context-connector.test.d.ts +1 -0
  3. package/lib/connector/__tests__/fixtures/preferenfces/sample-settings.d.ts +98 -0
  4. package/lib/connector/__tests__/fixtures/sample-roles-permissions/account-api/permission-contribution.d.ts +90 -0
  5. package/lib/connector/__tests__/permissions.test.d.ts +1 -0
  6. package/lib/connector/__tests__/policies.test.d.ts +1 -0
  7. package/lib/connector/__tests__/preferences.test.d.ts +1 -0
  8. package/lib/connector/__tests__/roles-update-connector.test.d.ts +1 -0
  9. package/lib/connector/__tests__/rules-connector.test.d.ts +1 -0
  10. package/lib/connector/__tests__/samples/graphql/types/person_entity_type.d.ts +2 -0
  11. package/lib/connector/__tests__/samples/graphql/types/person_search_type.d.ts +2 -0
  12. package/lib/connector/__tests__/samples/graphql/types/vendor_type.d.ts +2 -0
  13. package/lib/connector/__tests__/schema-connector.test.d.ts +1 -0
  14. package/lib/connector/__tests__/service-connector.test.d.ts +2 -0
  15. package/lib/connector/__tests__/websocket-connector.test.d.ts +1 -0
  16. package/lib/connector/connector.cjs +273 -0
  17. package/lib/connector/connector.cjs.map +1 -0
  18. package/lib/connector/connector.d.ts +4 -20
  19. package/lib/connector/connector.mjs +273 -0
  20. package/lib/connector/connector.mjs.map +1 -0
  21. package/lib/constants/types.cjs +8 -0
  22. package/lib/constants/types.cjs.map +1 -0
  23. package/lib/constants/types.mjs +8 -0
  24. package/lib/constants/types.mjs.map +1 -0
  25. package/lib/index.cjs +1 -0
  26. package/lib/index.cjs.map +1 -0
  27. package/lib/index.mjs +1 -0
  28. package/lib/index.mjs.map +1 -0
  29. package/lib/interfaces/connector.cjs +5 -0
  30. package/lib/interfaces/connector.cjs.map +1 -0
  31. package/lib/interfaces/connector.d.ts +3 -3
  32. package/lib/interfaces/connector.mjs +5 -0
  33. package/lib/interfaces/connector.mjs.map +1 -0
  34. package/lib/interfaces/rules.cjs +6 -0
  35. package/lib/interfaces/rules.cjs.map +1 -0
  36. package/lib/interfaces/rules.d.ts +2 -2
  37. package/lib/interfaces/rules.mjs +6 -0
  38. package/lib/interfaces/rules.mjs.map +1 -0
  39. package/lib/interfaces/store.d.ts +3 -0
  40. package/lib/logger/logger.cjs +5 -0
  41. package/lib/logger/logger.cjs.map +1 -0
  42. package/lib/logger/logger.mjs +5 -0
  43. package/lib/logger/logger.mjs.map +1 -0
  44. package/lib/utils/preferences.cjs +40 -0
  45. package/lib/utils/preferences.cjs.map +1 -0
  46. package/lib/utils/preferences.mjs +40 -0
  47. package/lib/utils/preferences.mjs.map +1 -0
  48. package/package.json +10 -6
  49. package/lib/index.js +0 -713
  50. package/lib/index.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ import 'reflect-metadata';
2
+ import 'jest';
@@ -0,0 +1 @@
1
+ import 'reflect-metadata';
@@ -0,0 +1,98 @@
1
+ import { IPreferences } from "../../../../interfaces";
2
+ export declare const defaultSettings: IPreferences;
3
+ export declare const convertedDefaultSettings: ({
4
+ type: string;
5
+ data: ({
6
+ default: boolean;
7
+ description: string;
8
+ enum: any[];
9
+ enumDescriptions: any[];
10
+ name: string;
11
+ overridable: boolean;
12
+ settings: string;
13
+ type: string;
14
+ } | {
15
+ default: boolean;
16
+ description: string;
17
+ enum: any[];
18
+ enumDescriptions: any[];
19
+ name: string;
20
+ settings: string;
21
+ type: string;
22
+ overridable?: undefined;
23
+ })[];
24
+ } | {
25
+ type: string;
26
+ data: {
27
+ name: string;
28
+ one: boolean;
29
+ }[];
30
+ })[];
31
+ export declare const userSettings: {
32
+ 'files.trimTrailingWhitespace.default': boolean;
33
+ 'tree.trimTrailingWhitespace.something': string;
34
+ 'tree.trimTrailingWhitespace.one': boolean;
35
+ };
36
+ export declare const prefRes: {
37
+ 'files.trimTrailingWhitespace': {
38
+ type: string;
39
+ default: boolean;
40
+ description: string;
41
+ settings: string;
42
+ enum: any[];
43
+ enumDescriptions: any[];
44
+ overridable: boolean;
45
+ };
46
+ 'files.autosave': {
47
+ type: string;
48
+ default: boolean;
49
+ description: string;
50
+ settings: string;
51
+ enum: any[];
52
+ enumDescriptions: any[];
53
+ };
54
+ 'tree.trimTrailingWhitespace': {
55
+ one: boolean;
56
+ };
57
+ };
58
+ export declare const prefsArrRes: ({
59
+ type: string;
60
+ data: ({
61
+ name: string;
62
+ type: string;
63
+ default: boolean;
64
+ description: string;
65
+ settings: string;
66
+ enum: any[];
67
+ enumDescriptions: any[];
68
+ overridable: boolean;
69
+ } | {
70
+ name: string;
71
+ type: string;
72
+ default: boolean;
73
+ description: string;
74
+ settings: string;
75
+ enum: any[];
76
+ enumDescriptions: any[];
77
+ overridable?: undefined;
78
+ })[];
79
+ } | {
80
+ type: string;
81
+ data: {
82
+ name: string;
83
+ one: boolean;
84
+ }[];
85
+ })[];
86
+ export declare const finalSettings: {
87
+ type: string;
88
+ data: {
89
+ name: string;
90
+ type: string;
91
+ default: boolean;
92
+ description: string;
93
+ settings: string;
94
+ enum: any[];
95
+ enumDescriptions: any[];
96
+ overridable: boolean;
97
+ }[];
98
+ }[];
@@ -0,0 +1,90 @@
1
+ export declare const permissionContribution: {
2
+ "organization.teams.inviteMember": {
3
+ enumDescriptions: string[];
4
+ description: string;
5
+ type: string;
6
+ enum: string[];
7
+ default: string;
8
+ scope: number;
9
+ };
10
+ "organization.teams.view": {
11
+ enumDescriptions: string[];
12
+ description: string;
13
+ type: string;
14
+ enum: string[];
15
+ default: string;
16
+ scope: number;
17
+ };
18
+ "organization.teams.create": {
19
+ enumDescriptions: string[];
20
+ description: string;
21
+ type: string;
22
+ enum: string[];
23
+ default: string;
24
+ scope: number;
25
+ };
26
+ "organization.teams.edit": {
27
+ enumDescriptions: string[];
28
+ description: string;
29
+ type: string;
30
+ enum: string[];
31
+ default: string;
32
+ scope: number;
33
+ };
34
+ "organization.teams.delete": {
35
+ enumDescriptions: string[];
36
+ description: string;
37
+ type: string;
38
+ enum: string[];
39
+ default: string;
40
+ scope: number;
41
+ };
42
+ "organization.teams.manage": {
43
+ enumDescriptions: string[];
44
+ description: string;
45
+ type: string;
46
+ enum: string[];
47
+ default: string;
48
+ scope: number;
49
+ };
50
+ "organization.projects.view": {
51
+ enumDescriptions: string[];
52
+ description: string;
53
+ type: string;
54
+ enum: string[];
55
+ default: string;
56
+ scope: number;
57
+ };
58
+ "organization.projects.create": {
59
+ enumDescriptions: string[];
60
+ description: string;
61
+ type: string;
62
+ enum: string[];
63
+ default: string;
64
+ scope: number;
65
+ };
66
+ "organization.projects.edit": {
67
+ enumDescriptions: string[];
68
+ description: string;
69
+ type: string;
70
+ enum: string[];
71
+ default: string;
72
+ scope: number;
73
+ };
74
+ "organization.projects.delete": {
75
+ enumDescriptions: string[];
76
+ description: string;
77
+ type: string;
78
+ enum: string[];
79
+ default: string;
80
+ scope: number;
81
+ };
82
+ "organization.projects.manage": {
83
+ enumDescriptions: string[];
84
+ description: string;
85
+ type: string;
86
+ enum: string[];
87
+ default: string;
88
+ scope: number;
89
+ };
90
+ };
@@ -0,0 +1 @@
1
+ import 'jest';
@@ -0,0 +1 @@
1
+ import 'jest';
@@ -0,0 +1 @@
1
+ import 'jest';
@@ -0,0 +1 @@
1
+ import 'jest';
@@ -0,0 +1 @@
1
+ import 'jest';
@@ -0,0 +1,2 @@
1
+ declare const _default: "\n interface PersonEntity {\n name: String\n age: Int\n dob: Date\n }\n";
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: "\n union personSearch = Client | Vendor\n type personQuery {\n firstSearchResult: personSearch\n }\n";
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: "\n type Vendor implements PersonEntity {\n id: ID!\n name: String\n age: Int\n dob: Date\n }\n type Query {\n vendors: [Vendor]\n }\n";
2
+ export default _default;
@@ -0,0 +1 @@
1
+ import 'jest';
@@ -0,0 +1,2 @@
1
+ import 'reflect-metadata';
2
+ import 'jest';
@@ -0,0 +1 @@
1
+ import 'jest';
@@ -0,0 +1,273 @@
1
+ 'use strict';var lodashEs=require('lodash-es'),inversify=require('inversify'),preferences=require('../utils/preferences.cjs');const featureCatalog = {};
2
+ const combine = (features, extractor) => lodashEs.without(lodashEs.union(...lodashEs.map(features, (res) => lodashEs.castArray(extractor(res)))), undefined);
3
+ class Feature {
4
+ constructor(feature, ...features) {
5
+ const args = [feature, ...features];
6
+ combine(args, (arg) => arg.catalogInfo).forEach((info) => Object.keys(info).forEach((key) => (featureCatalog[key] = info[key])));
7
+ this.schema = combine(args, (arg) => arg.schema);
8
+ this.createDirectivesFunc = combine(args, (arg) => arg.createDirectivesFunc);
9
+ this.createResolversFunc = combine(args, (arg) => arg.createResolversFunc);
10
+ this.createContextFunc = combine(args, (arg) => arg.createContextFunc);
11
+ this.postBindContainerFunc = combine(args, (arg) => arg.postBindContainerFunc);
12
+ this.postBindHemraContainerFunc = combine(args, (arg) => arg.postBindHemraContainerFunc);
13
+ this.createServiceFunc = combine(args, (arg) => arg.createServiceFunc);
14
+ this.preCreateServiceFunc = combine(args, (arg) => arg.preCreateServiceFunc);
15
+ this.postCreateServiceFunc = combine(args, (arg) => arg.postCreateServiceFunc);
16
+ this.preStartFunc = combine(args, (arg) => arg.preStartFunc);
17
+ this.postStartFunc = combine(args, (arg) => arg.postStartFunc);
18
+ this.microservicePreStartFunc = combine(args, (arg) => arg.microservicePreStartFunc);
19
+ this.microservicePostStartFunc = combine(args, (arg) => arg.microservicePostStartFunc);
20
+ this.addBrokerMainServiceClass = combine(args, (arg) => arg.addBrokerMainServiceClass);
21
+ this.addBrokerClientServiceClass = combine(args, (arg) => arg.addBrokerClientServiceClass);
22
+ this.disposeFunc = combine(args, (arg) => arg.disposeFunc);
23
+ this.federation = combine(args, (arg) => arg.federation);
24
+ this.migrations = combine(args, (arg) => arg);
25
+ this.createContainerFunc = combine(args, (arg) => arg.createContainerFunc);
26
+ this.createHemeraContainerFunc = combine(args, (arg) => arg.createHemeraContainerFunc);
27
+ this.createAsyncContainerFunc = combine(args, (arg) => arg.createAsyncContainerFunc);
28
+ this.createAsyncHemeraContainerFunc = combine(args, (arg) => arg.createAsyncHemeraContainerFunc);
29
+ this.updateContainerFunc = combine(args, (arg) => arg.updateContainerFunc);
30
+ this.createDataSourceFunc = combine(args, (arg) => arg.createDataSourceFunc);
31
+ this.beforeware = combine(args, (arg) => arg.beforeware);
32
+ this.middleware = combine(args, (arg) => arg.middleware);
33
+ this.createWebsocketConfig = combine(args, (arg) => arg.createWebsocketConfig);
34
+ this.createPreference = combine(args, (arg) => arg.createPreference);
35
+ this.addPermissions = {
36
+ createPermissions: combine(args, (arg) => arg.addPermissions && arg.addPermissions.createPermissions),
37
+ overwritePermissions: combine(args, (arg) => arg.addPermissions && arg.addPermissions.overwritePermissions),
38
+ };
39
+ this.addPolicies = {
40
+ createPolicies: combine(args, (arg) => arg.addPolicies && arg.addPolicies.createPolicies),
41
+ overwritePolicies: combine(args, (arg) => arg.addPolicies && arg.addPolicies.overwritePolicies),
42
+ };
43
+ this.rolesUpdate = {
44
+ createRoles: combine(args, (arg) => arg.rolesUpdate && arg.rolesUpdate.createRoles),
45
+ overwriteRolesPermissions: combine(args, (arg) => arg.rolesUpdate && arg.rolesUpdate.overwriteRolesPermissions),
46
+ };
47
+ this.overwritePreference = combine(args, (arg) => arg.overwritePreference);
48
+ this._rules = combine(args, (arg) => arg.rules);
49
+ }
50
+ get rules() {
51
+ return this._rules.reduce((acc, curr) => {
52
+ return lodashEs.merge(acc, curr);
53
+ }, {});
54
+ }
55
+ get schemas() {
56
+ return this.schema;
57
+ }
58
+ /**
59
+ * Creates context
60
+ * @param req
61
+ * @param connectionParams
62
+ * @param webSocket
63
+ * @deprecated
64
+ */
65
+ async createContext(req, connectionParams, webSocket) {
66
+ const results = await Promise.all(this.createContextFunc.map((createContext) => createContext(req, connectionParams, webSocket)));
67
+ return lodashEs.merge({}, ...results);
68
+ }
69
+ /**
70
+ * If you need to attach service to Graphql Context, you can use this function.
71
+ * It should be called twice to get the context.
72
+ */
73
+ createServiceContext(options, updateOptions) {
74
+ return async (req, connectionParams, webSocket) => {
75
+ await this.createService(options, updateOptions);
76
+ const results = await Promise.all(this.createContextFunc.map((createContext) => createContext(req, connectionParams, webSocket)));
77
+ return lodashEs.merge({}, ...results, { ...this.services });
78
+ };
79
+ }
80
+ /**
81
+ * Its wrapper to container to get services
82
+ * @param container
83
+ */
84
+ async createService(options, updateOptions) {
85
+ try {
86
+ if (this.container) {
87
+ this.updateContainers(options, updateOptions);
88
+ }
89
+ else {
90
+ await this.createContainers(options);
91
+ await Promise.all(this.preCreateServiceFunc.map(async (createService) => await createService(this.container)));
92
+ }
93
+ this.services = lodashEs.merge({}, ...this.createServiceFunc.map((createService) => createService(this.container)));
94
+ await Promise.all(this.postCreateServiceFunc.map(async (createService) => await createService(this.container)));
95
+ return this.services;
96
+ }
97
+ catch (err) {
98
+ throw err;
99
+ }
100
+ }
101
+ /**
102
+ * Pre start action will be executed there.
103
+ *
104
+ */
105
+ async preStart(options) {
106
+ return await Promise.all(this.preStartFunc.map(async (preStart) => await preStart(this.container, options)));
107
+ }
108
+ /**
109
+ * Post start actions will be executed here.
110
+ */
111
+ async postStart(options) {
112
+ return await Promise.all(this.postStartFunc.map(async (postStart) => await postStart(this.container, options)));
113
+ }
114
+ /**
115
+ * Pre start action will be executed there.
116
+ *
117
+ */
118
+ async microservicePreStart(options) {
119
+ return await Promise.all(this.microservicePreStartFunc.map(async (preStart) => await preStart(this.container, options)));
120
+ }
121
+ /**
122
+ * Post start actions will be executed here.
123
+ */
124
+ async microservicePostStart(options) {
125
+ return await Promise.all(this.microservicePostStartFunc.map(async (postStart) => await postStart(this.container, options)));
126
+ }
127
+ createDataSource(options) {
128
+ return (this.dataSources = lodashEs.merge({}, ...this.createDataSourceFunc.map((createDataSource) => createDataSource(this.container))));
129
+ }
130
+ createResolvers(options) {
131
+ return lodashEs.merge({}, ...this.createResolversFunc.map((createResolvers) => createResolvers(options)));
132
+ }
133
+ createDirectives(options) {
134
+ return lodashEs.merge({}, ...this.createDirectivesFunc.map((createDirectives) => createDirectives(options)));
135
+ }
136
+ async createContainers(options, containerOptions = { skipBaseClassChecks: true }) {
137
+ this.container = new inversify.Container(containerOptions);
138
+ this.createContainerFunc.map((createModule) => {
139
+ this.container.load(createModule(options));
140
+ });
141
+ await Promise.all(this.createAsyncContainerFunc.map(async (asyncCreateModule) => {
142
+ await this.container.loadAsync(asyncCreateModule(options));
143
+ }));
144
+ this.container.bind('IDefaultSettings').toConstantValue(this.getPreferences());
145
+ this.container.bind('IDefaultSettingsObj').toConstantValue(this.getPreferencesObj());
146
+ // permissions
147
+ this.container.bind('IDefaultPermissions').toConstantValue(this.getPermissionPreferences());
148
+ this.container.bind('IDefaultPermissionsObj').toConstantValue(this.getPermissionPreferencesObj());
149
+ this.container.bind('IDefaultRoles').toConstantValue(this.getRoles());
150
+ this.container.bind('IDefaultPoliciesObj').toConstantValue(this.getPolicyPreferencesObj());
151
+ this.postBindContainerFunc.map((bindModule) => {
152
+ this.container.load(bindModule(this.container));
153
+ });
154
+ return this.container;
155
+ }
156
+ /**
157
+ * Use createMicroserviceContainer
158
+ * @param options
159
+ * @deprecated
160
+ */
161
+ async createHemeraContainers(options) {
162
+ return this.createMicroserviceContainers(options);
163
+ }
164
+ /**
165
+ * Creates container for the microservice
166
+ *
167
+ * @param options
168
+ */
169
+ async createMicroserviceContainers(options) {
170
+ this.hemeraContainer = new inversify.Container();
171
+ this.createHemeraContainerFunc.map((createModule) => {
172
+ this.hemeraContainer.load(createModule(options));
173
+ });
174
+ await Promise.all(this.createAsyncHemeraContainerFunc.map(async (asyncCreateModule) => {
175
+ await this.hemeraContainer.loadAsync(asyncCreateModule(options));
176
+ }));
177
+ this.postBindHemraContainerFunc.map((bindModule) => {
178
+ this.hemeraContainer.load(bindModule(this.container));
179
+ });
180
+ return this.hemeraContainer;
181
+ }
182
+ updateContainers(options, updateOptions) {
183
+ let mergedModules = lodashEs.merge({}, ...this.updateContainerFunc);
184
+ const matchingModules = [];
185
+ if (updateOptions) {
186
+ updateOptions.forEach((option) => {
187
+ const dispose = this.disposeFunc.find((el) => el.container === option);
188
+ if (dispose) {
189
+ this.services[dispose.ctx].dispose();
190
+ }
191
+ const searchModule = mergedModules[option];
192
+ if (searchModule) {
193
+ matchingModules.push(searchModule);
194
+ }
195
+ });
196
+ }
197
+ matchingModules.map((createModule) => this.container.load(createModule(options)));
198
+ }
199
+ loadMainMoleculerService({ container, broker, settings, }) {
200
+ this.addBrokerMainServiceClass.map((serviceClass) => broker.createService(serviceClass, { container, settings }));
201
+ }
202
+ loadClientMoleculerService({ container, broker, settings, }) {
203
+ this.addBrokerClientServiceClass.map((serviceClass) => broker.createService(serviceClass, { container, settings }));
204
+ }
205
+ createDefaultPreferences() {
206
+ return preferences.transformPrefsToArray(lodashEs.merge([], ...this.createPreference));
207
+ }
208
+ get beforewares() {
209
+ return this.beforeware;
210
+ }
211
+ get middlewares() {
212
+ return this.middleware;
213
+ }
214
+ getPreferences() {
215
+ return preferences.transformPrefsToArray(this.getPreferencesObj());
216
+ }
217
+ getPreferencesObj() {
218
+ const defaultPrefs = lodashEs.merge([], ...this.createPreference);
219
+ const overwritePrefs = lodashEs.merge([], ...this.overwritePreference);
220
+ return preferences.getCurrentPreferences(defaultPrefs, overwritePrefs);
221
+ }
222
+ getPermissionPreferences() {
223
+ return preferences.transformPrefsToArray(this.getPermissionPreferencesObj());
224
+ }
225
+ getPermissionPreferencesObj() {
226
+ const { createPermissions = [], overwritePermissions = [] } = this.addPermissions;
227
+ const defaultPrefs = lodashEs.merge([], ...lodashEs.castArray(createPermissions));
228
+ const overwritePrefs = lodashEs.merge([], ...lodashEs.castArray(overwritePermissions));
229
+ return preferences.getCurrentPreferences(defaultPrefs, overwritePrefs);
230
+ }
231
+ getPolicyPreferences() {
232
+ return preferences.transformPrefsToArray(this.getPolicyPreferencesObj());
233
+ }
234
+ getPolicyPreferencesObj() {
235
+ const { createPolicies = [], overwritePolicies = [] } = this.addPolicies;
236
+ const defaultPrefs = lodashEs.merge([], ...lodashEs.castArray(createPolicies));
237
+ const overwritePrefs = lodashEs.merge([], ...lodashEs.castArray(overwritePolicies));
238
+ return preferences.getCurrentPreferences(defaultPrefs, overwritePrefs);
239
+ }
240
+ getRoles() {
241
+ const { createRoles, overwriteRolesPermissions } = this.rolesUpdate;
242
+ const mergedRoles = lodashEs.merge({}, ...lodashEs.castArray(createRoles));
243
+ const mergedOverwriteRolesPermissions = lodashEs.merge({}, ...lodashEs.castArray(overwriteRolesPermissions));
244
+ let result = {};
245
+ for (const role in mergedRoles) {
246
+ const rolePermission = mergedOverwriteRolesPermissions[role]
247
+ ? lodashEs.merge({}, mergedRoles[role].permissions, mergedOverwriteRolesPermissions[role])
248
+ : mergedRoles[role].permissions;
249
+ const mmm = {
250
+ ...mergedRoles[role],
251
+ permissions: { ...rolePermission },
252
+ };
253
+ result = lodashEs.merge({}, result, { [role]: mmm });
254
+ }
255
+ return result;
256
+ }
257
+ getRolesObj() {
258
+ const { createRoles } = this.rolesUpdate;
259
+ const defaultPrefs = lodashEs.merge([], ...lodashEs.castArray(createRoles));
260
+ const overwritePrefs = lodashEs.merge([], ...lodashEs.castArray(createRoles));
261
+ return preferences.getCurrentPreferences(defaultPrefs, overwritePrefs);
262
+ }
263
+ getWebsocketConfig() {
264
+ return this.createWebsocketConfig.reduce((pre, curr) => {
265
+ return lodashEs.merge(pre, curr);
266
+ }, {});
267
+ }
268
+ convertArrayToObject(arrayObject) {
269
+ return arrayObject.reduce((pre, curr) => {
270
+ return lodashEs.merge(pre, curr);
271
+ }, {});
272
+ }
273
+ }exports.Feature=Feature;exports.featureCatalog=featureCatalog;//# sourceMappingURL=connector.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.cjs","sources":["../../src/connector/connector.ts"],"sourcesContent":[null],"names":["without","union","map","castArray","merge","Container","transformPrefsToArray","getCurrentPreferences"],"mappings":"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"}
@@ -6,17 +6,18 @@ export interface IFederationServiceOptions {
6
6
  port: number;
7
7
  config?: any;
8
8
  }
9
- export declare type FederationServiceDeclaration = (options: IFederationServiceOptions) => Promise<void>;
9
+ export type FederationServiceDeclaration = (options: IFederationServiceOptions) => Promise<void>;
10
10
  /**
11
11
  * Feature Params that can be passed to Feature Module.
12
12
  */
13
- export declare type FeatureParams<T = ConfigurationScope> = {
13
+ export type FeatureParams<T = ConfigurationScope> = {
14
14
  schema?: string | string[];
15
15
  createRemoteSchemas?: Function | Function[];
16
16
  createDirectivesFunc?: Function | Function[];
17
17
  createResolversFunc?: Function | Function[];
18
18
  createContextFunc?: Function | Function[];
19
19
  postBindContainerFunc?: Function[];
20
+ postBindHemraContainerFunc?: Function[];
20
21
  createServiceFunc?: Function | Function[];
21
22
  createDataSourceFunc?: Function | Function[];
22
23
  createContainerFunc?: Function | Function[];
@@ -35,10 +36,6 @@ export declare type FeatureParams<T = ConfigurationScope> = {
35
36
  updateContainerFunc?: any | any[];
36
37
  createPreference?: IPreferences<T> | IPreferences<T>[];
37
38
  overwritePreference?: IOverwritePreference | IOverwritePreference[];
38
- /**
39
- * @returns envalidConfig of a feature
40
- */
41
- readonly envalidConfig?: any;
42
39
  /**
43
40
  * Permissions Preferences
44
41
  */
@@ -72,6 +69,7 @@ declare class Feature<T = ConfigurationScope> {
72
69
  createServiceFunc: Function[];
73
70
  createContainerFunc: Function[];
74
71
  postBindContainerFunc: Function[];
72
+ postBindHemraContainerFunc: Function[];
75
73
  federation: FederationServiceDeclaration[];
76
74
  createHemeraContainerFunc: Function[];
77
75
  createAsyncContainerFunc: Function[];
@@ -87,7 +85,6 @@ declare class Feature<T = ConfigurationScope> {
87
85
  addBrokerClientServiceClass: Function[];
88
86
  disposeFunc: any[];
89
87
  updateContainerFunc: any[];
90
- envalidConfig: any[];
91
88
  beforeware: Function[];
92
89
  middleware: Function[];
93
90
  createWebsocketConfig: IWebsocketConfig[];
@@ -108,7 +105,6 @@ declare class Feature<T = ConfigurationScope> {
108
105
  constructor(feature?: FeatureParams<T>, ...features: Feature<T>[]);
109
106
  get rules(): IGraphqlShieldRules;
110
107
  get schemas(): string[];
111
- get envalidConfigs(): any;
112
108
  /**
113
109
  * Creates context
114
110
  * @param req
@@ -215,9 +211,6 @@ declare class Feature<T = ConfigurationScope> {
215
211
  copyWithin(target: number, start: number, end?: number): IPreferences<S>[];
216
212
  entries(): IterableIterator<[number, IPreferences<S>]>;
217
213
  keys(): IterableIterator<number>;
218
- /**
219
- * Permissions Preferences
220
- */
221
214
  values(): IterableIterator<IPreferences<S>>;
222
215
  includes(searchElement: IPreferences<S>, fromIndex?: number): boolean;
223
216
  flatMap<U_3, This = undefined>(callback: (this: This, value: IPreferences<S>, index: number, array: IPreferences<S>[]) => U_3 | readonly U_3[], thisArg?: This): U_3[];
@@ -274,9 +267,6 @@ declare class Feature<T = ConfigurationScope> {
274
267
  copyWithin(target: number, start: number, end?: number): IPreferences<T>[];
275
268
  entries(): IterableIterator<[number, IPreferences<T>]>;
276
269
  keys(): IterableIterator<number>;
277
- /**
278
- * Permissions Preferences
279
- */
280
270
  values(): IterableIterator<IPreferences<T>>;
281
271
  includes(searchElement: IPreferences<T>, fromIndex?: number): boolean;
282
272
  flatMap<U_3, This = undefined>(callback: (this: This, value: IPreferences<T>, index: number, array: IPreferences<T>[]) => U_3 | readonly U_3[], thisArg?: This): U_3[];
@@ -333,9 +323,6 @@ declare class Feature<T = ConfigurationScope> {
333
323
  copyWithin(target: number, start: number, end?: number): IPreferences<T>[];
334
324
  entries(): IterableIterator<[number, IPreferences<T>]>;
335
325
  keys(): IterableIterator<number>;
336
- /**
337
- * Permissions Preferences
338
- */
339
326
  values(): IterableIterator<IPreferences<T>>;
340
327
  includes(searchElement: IPreferences<T>, fromIndex?: number): boolean;
341
328
  flatMap<U_3, This = undefined>(callback: (this: This, value: IPreferences<T>, index: number, array: IPreferences<T>[]) => U_3 | readonly U_3[], thisArg?: This): U_3[];
@@ -392,9 +379,6 @@ declare class Feature<T = ConfigurationScope> {
392
379
  copyWithin(target: number, start: number, end?: number): IPreferences<S>[];
393
380
  entries(): IterableIterator<[number, IPreferences<S>]>;
394
381
  keys(): IterableIterator<number>;
395
- /**
396
- * Permissions Preferences
397
- */
398
382
  values(): IterableIterator<IPreferences<S>>;
399
383
  includes(searchElement: IPreferences<S>, fromIndex?: number): boolean;
400
384
  flatMap<U_3, This = undefined>(callback: (this: This, value: IPreferences<S>, index: number, array: IPreferences<S>[]) => U_3 | readonly U_3[], thisArg?: This): U_3[];