@bluealba/pae-bootstrap-lib 2.0.0 → 2.0.1-develop-1297

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 (27) hide show
  1. package/dist/src/bootstrap/bootstrap-platform.d.ts +5 -2
  2. package/dist/src/bootstrap/bootstrap-platform.d.ts.map +1 -1
  3. package/dist/src/bootstrap/bootstrap-platform.js +60 -45
  4. package/dist/src/bootstrap/bootstrap-platform.js.map +1 -1
  5. package/dist/src/bootstrap/domain/bootstrap-sync-metadata.interface.d.ts +12 -0
  6. package/dist/src/bootstrap/domain/bootstrap-sync-metadata.interface.d.ts.map +1 -1
  7. package/dist/src/bootstrap/domain/domain-validation.test.js +500 -244
  8. package/dist/src/bootstrap/domain/domain-validation.test.js.map +1 -1
  9. package/dist/src/bootstrap/domain/index.d.ts +2 -0
  10. package/dist/src/bootstrap/domain/index.d.ts.map +1 -0
  11. package/dist/src/bootstrap/domain/index.js +18 -0
  12. package/dist/src/bootstrap/domain/index.js.map +1 -0
  13. package/dist/src/bootstrap/read-bootstrap-applications.d.ts.map +1 -1
  14. package/dist/src/bootstrap/read-bootstrap-applications.js +98 -3
  15. package/dist/src/bootstrap/read-bootstrap-applications.js.map +1 -1
  16. package/dist/src/bootstrap/run-bootstrap-sync.service.d.ts.map +1 -1
  17. package/dist/src/bootstrap/run-bootstrap-sync.service.js +3 -1
  18. package/dist/src/bootstrap/run-bootstrap-sync.service.js.map +1 -1
  19. package/dist/src/bootstrap/synchronizers/sync-feature-flags.d.ts +8 -0
  20. package/dist/src/bootstrap/synchronizers/sync-feature-flags.d.ts.map +1 -0
  21. package/dist/src/bootstrap/synchronizers/sync-feature-flags.js +67 -0
  22. package/dist/src/bootstrap/synchronizers/sync-feature-flags.js.map +1 -0
  23. package/dist/src/index.d.ts +1 -0
  24. package/dist/src/index.d.ts.map +1 -1
  25. package/dist/src/index.js +1 -0
  26. package/dist/src/index.js.map +1 -1
  27. package/package.json +2 -2
@@ -46,12 +46,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
46
46
  scopedTo: 'blah'
47
47
  },
48
48
  };
49
- const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io11(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io12(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io14(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io4(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io5(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io6(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io8(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io9(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io4 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io5 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io6 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io7(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io7 = input => Object.keys(input).every(key => {
49
+ const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.featureFlags || Array.isArray(input.featureFlags) && input.featureFlags.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io5(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io14(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io15(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io16(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.enabled || "boolean" === typeof input.enabled) && (undefined === input.constraints || Array.isArray(input.constraints) && input.constraints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "string" === typeof input.contextName && "string" === typeof input.operator && (undefined === input.values || Array.isArray(input.values) && input.values.every(elem => "string" === typeof elem)); const _io5 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io6(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io7(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io8(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io10(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io11(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io6 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io7 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io8 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io9(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io9 = input => Object.keys(input).every(key => {
50
50
  const value = input[key];
51
51
  if (undefined === value)
52
52
  return true;
53
53
  return true;
54
- }); const _io8 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io9 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io10(elem))); const _io10 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io11 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io12 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io13 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io14 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io15(input.customProps)); const _io15 = input => Object.keys(input).every(key => {
54
+ }); const _io10 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io11 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io12(elem))); const _io12 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io13 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io14 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io15 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io16 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io17(input.customProps)); const _io17 = input => Object.keys(input).every(key => {
55
55
  const value = input[key];
56
56
  if (undefined === value)
57
57
  return true;
@@ -68,28 +68,44 @@ describe('BootstrapSyncMetadata - type validations', () => {
68
68
  path: _path + ".sharedLibraries",
69
69
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
70
70
  value: input.sharedLibraries
71
- })) && input.sharedLibraries.map((elem, _index13) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
72
- path: _path + ".sharedLibraries[" + _index13 + "]",
71
+ })) && input.sharedLibraries.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
72
+ path: _path + ".sharedLibraries[" + _index16 + "]",
73
73
  expected: "CreateSharedLibraryDTO",
74
74
  value: elem
75
- })) && _vo2(elem, _path + ".sharedLibraries[" + _index13 + "]", true && _exceptionable) || _report(_exceptionable, {
76
- path: _path + ".sharedLibraries[" + _index13 + "]",
75
+ })) && _vo2(elem, _path + ".sharedLibraries[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
76
+ path: _path + ".sharedLibraries[" + _index16 + "]",
77
77
  expected: "CreateSharedLibraryDTO",
78
78
  value: elem
79
79
  })).every(flag => flag) || _report(_exceptionable, {
80
80
  path: _path + ".sharedLibraries",
81
81
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
82
82
  value: input.sharedLibraries
83
+ }), undefined === input.featureFlags || (Array.isArray(input.featureFlags) || _report(_exceptionable, {
84
+ path: _path + ".featureFlags",
85
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
86
+ value: input.featureFlags
87
+ })) && input.featureFlags.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
88
+ path: _path + ".featureFlags[" + _index17 + "]",
89
+ expected: "BootstrapFeatureFlag",
90
+ value: elem
91
+ })) && _vo3(elem, _path + ".featureFlags[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
92
+ path: _path + ".featureFlags[" + _index17 + "]",
93
+ expected: "BootstrapFeatureFlag",
94
+ value: elem
95
+ })).every(flag => flag) || _report(_exceptionable, {
96
+ path: _path + ".featureFlags",
97
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
98
+ value: input.featureFlags
83
99
  }), undefined === input.catalog || (Array.isArray(input.catalog) || _report(_exceptionable, {
84
100
  path: _path + ".catalog",
85
101
  expected: "(Array<CreateOrUpdateModule> | undefined)",
86
102
  value: input.catalog
87
- })) && input.catalog.map((elem, _index14) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
88
- path: _path + ".catalog[" + _index14 + "]",
103
+ })) && input.catalog.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
104
+ path: _path + ".catalog[" + _index18 + "]",
89
105
  expected: "CreateOrUpdateModule",
90
106
  value: elem
91
- })) && _vo3(elem, _path + ".catalog[" + _index14 + "]", true && _exceptionable) || _report(_exceptionable, {
92
- path: _path + ".catalog[" + _index14 + "]",
107
+ })) && _vo5(elem, _path + ".catalog[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
108
+ path: _path + ".catalog[" + _index18 + "]",
93
109
  expected: "CreateOrUpdateModule",
94
110
  value: elem
95
111
  })).every(flag => flag) || _report(_exceptionable, {
@@ -100,12 +116,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
100
116
  path: _path + ".applicationsAuthz",
101
117
  expected: "(Array<CreateApplicationDTO> | undefined)",
102
118
  value: input.applicationsAuthz
103
- })) && input.applicationsAuthz.map((elem, _index15) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
104
- path: _path + ".applicationsAuthz[" + _index15 + "]",
119
+ })) && input.applicationsAuthz.map((elem, _index19) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
120
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
105
121
  expected: "CreateApplicationDTO",
106
122
  value: elem
107
- })) && _vo11(elem, _path + ".applicationsAuthz[" + _index15 + "]", true && _exceptionable) || _report(_exceptionable, {
108
- path: _path + ".applicationsAuthz[" + _index15 + "]",
123
+ })) && _vo13(elem, _path + ".applicationsAuthz[" + _index19 + "]", true && _exceptionable) || _report(_exceptionable, {
124
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
109
125
  expected: "CreateApplicationDTO",
110
126
  value: elem
111
127
  })).every(flag => flag) || _report(_exceptionable, {
@@ -116,12 +132,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
116
132
  path: _path + ".rolesAuthz",
117
133
  expected: "(Array<CreateRoleDTO> | undefined)",
118
134
  value: input.rolesAuthz
119
- })) && input.rolesAuthz.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
120
- path: _path + ".rolesAuthz[" + _index16 + "]",
135
+ })) && input.rolesAuthz.map((elem, _index20) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
136
+ path: _path + ".rolesAuthz[" + _index20 + "]",
121
137
  expected: "CreateRoleDTO",
122
138
  value: elem
123
- })) && _vo12(elem, _path + ".rolesAuthz[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
124
- path: _path + ".rolesAuthz[" + _index16 + "]",
139
+ })) && _vo14(elem, _path + ".rolesAuthz[" + _index20 + "]", true && _exceptionable) || _report(_exceptionable, {
140
+ path: _path + ".rolesAuthz[" + _index20 + "]",
125
141
  expected: "CreateRoleDTO",
126
142
  value: elem
127
143
  })).every(flag => flag) || _report(_exceptionable, {
@@ -132,12 +148,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
132
148
  path: _path + ".operationsAuthz",
133
149
  expected: "(Array<OperationAuthzBootstrap> | undefined)",
134
150
  value: input.operationsAuthz
135
- })) && input.operationsAuthz.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
136
- path: _path + ".operationsAuthz[" + _index17 + "]",
151
+ })) && input.operationsAuthz.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
152
+ path: _path + ".operationsAuthz[" + _index21 + "]",
137
153
  expected: "OperationAuthzBootstrap",
138
154
  value: elem
139
- })) && _vo13(elem, _path + ".operationsAuthz[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
140
- path: _path + ".operationsAuthz[" + _index17 + "]",
155
+ })) && _vo15(elem, _path + ".operationsAuthz[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
156
+ path: _path + ".operationsAuthz[" + _index21 + "]",
141
157
  expected: "OperationAuthzBootstrap",
142
158
  value: elem
143
159
  })).every(flag => flag) || _report(_exceptionable, {
@@ -148,12 +164,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
148
164
  path: _path + ".modulesConfig",
149
165
  expected: "(Array<UpdateModuleUIConfigDTO> | undefined)",
150
166
  value: input.modulesConfig
151
- })) && input.modulesConfig.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
152
- path: _path + ".modulesConfig[" + _index18 + "]",
167
+ })) && input.modulesConfig.map((elem, _index22) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
168
+ path: _path + ".modulesConfig[" + _index22 + "]",
153
169
  expected: "UpdateModuleUIConfigDTO",
154
170
  value: elem
155
- })) && _vo14(elem, _path + ".modulesConfig[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
156
- path: _path + ".modulesConfig[" + _index18 + "]",
171
+ })) && _vo16(elem, _path + ".modulesConfig[" + _index22 + "]", true && _exceptionable) || _report(_exceptionable, {
172
+ path: _path + ".modulesConfig[" + _index22 + "]",
157
173
  expected: "UpdateModuleUIConfigDTO",
158
174
  value: elem
159
175
  })).every(flag => flag) || _report(_exceptionable, {
@@ -180,13 +196,61 @@ describe('BootstrapSyncMetadata - type validations', () => {
180
196
  path: _path + ".name",
181
197
  expected: "string",
182
198
  value: input.name
199
+ }), undefined === input.description || "string" === typeof input.description || _report(_exceptionable, {
200
+ path: _path + ".description",
201
+ expected: "(string | undefined)",
202
+ value: input.description
203
+ }), undefined === input.enabled || "boolean" === typeof input.enabled || _report(_exceptionable, {
204
+ path: _path + ".enabled",
205
+ expected: "(boolean | undefined)",
206
+ value: input.enabled
207
+ }), undefined === input.constraints || (Array.isArray(input.constraints) || _report(_exceptionable, {
208
+ path: _path + ".constraints",
209
+ expected: "(Array<__type> | undefined)",
210
+ value: input.constraints
211
+ })) && input.constraints.map((elem, _index23) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
212
+ path: _path + ".constraints[" + _index23 + "]",
213
+ expected: "__type.o1",
214
+ value: elem
215
+ })) && _vo4(elem, _path + ".constraints[" + _index23 + "]", true && _exceptionable) || _report(_exceptionable, {
216
+ path: _path + ".constraints[" + _index23 + "]",
217
+ expected: "__type.o1",
218
+ value: elem
219
+ })).every(flag => flag) || _report(_exceptionable, {
220
+ path: _path + ".constraints",
221
+ expected: "(Array<__type> | undefined)",
222
+ value: input.constraints
223
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.contextName || _report(_exceptionable, {
224
+ path: _path + ".contextName",
225
+ expected: "string",
226
+ value: input.contextName
227
+ }), "string" === typeof input.operator || _report(_exceptionable, {
228
+ path: _path + ".operator",
229
+ expected: "string",
230
+ value: input.operator
231
+ }), undefined === input.values || (Array.isArray(input.values) || _report(_exceptionable, {
232
+ path: _path + ".values",
233
+ expected: "(Array<string> | undefined)",
234
+ value: input.values
235
+ })) && input.values.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
236
+ path: _path + ".values[" + _index24 + "]",
237
+ expected: "string",
238
+ value: elem
239
+ })).every(flag => flag) || _report(_exceptionable, {
240
+ path: _path + ".values",
241
+ expected: "(Array<string> | undefined)",
242
+ value: input.values
243
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
244
+ path: _path + ".name",
245
+ expected: "string",
246
+ value: input.name
183
247
  }), "string" === typeof input.displayName || _report(_exceptionable, {
184
248
  path: _path + ".displayName",
185
249
  expected: "string",
186
250
  value: input.displayName
187
- }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || _report(_exceptionable, {
251
+ }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type || _report(_exceptionable, {
188
252
  path: _path + ".type",
189
- expected: "(\"app\" | \"cloud-function\" | \"service\" | \"utility\")",
253
+ expected: "(\"app\" | \"cloud-function\" | \"documentation\" | \"service\" | \"utility\")",
190
254
  value: input.type
191
255
  }), "string" === typeof input.baseUrl || _report(_exceptionable, {
192
256
  path: _path + ".baseUrl",
@@ -196,7 +260,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
196
260
  path: _path + ".service",
197
261
  expected: "ServiceConfig",
198
262
  value: input.service
199
- })) && _vo4(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
263
+ })) && _vo6(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
200
264
  path: _path + ".service",
201
265
  expected: "ServiceConfig",
202
266
  value: input.service
@@ -204,8 +268,8 @@ describe('BootstrapSyncMetadata - type validations', () => {
204
268
  path: _path + ".dependsOn",
205
269
  expected: "Array<string>",
206
270
  value: input.dependsOn
207
- })) && input.dependsOn.map((elem, _index19) => "string" === typeof elem || _report(_exceptionable, {
208
- path: _path + ".dependsOn[" + _index19 + "]",
271
+ })) && input.dependsOn.map((elem, _index25) => "string" === typeof elem || _report(_exceptionable, {
272
+ path: _path + ".dependsOn[" + _index25 + "]",
209
273
  expected: "string",
210
274
  value: elem
211
275
  })).every(flag => flag) || _report(_exceptionable, {
@@ -216,7 +280,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
216
280
  path: _path + ".commonPaths",
217
281
  expected: "(CommonPathsMetadata | undefined)",
218
282
  value: input.commonPaths
219
- })) && _vo5(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
283
+ })) && _vo7(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
220
284
  path: _path + ".commonPaths",
221
285
  expected: "(CommonPathsMetadata | undefined)",
222
286
  value: input.commonPaths
@@ -224,7 +288,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
224
288
  path: _path + ".ui",
225
289
  expected: "(UIConfig | undefined)",
226
290
  value: input.ui
227
- })) && _vo6(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
291
+ })) && _vo8(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
228
292
  path: _path + ".ui",
229
293
  expected: "(UIConfig | undefined)",
230
294
  value: input.ui
@@ -232,7 +296,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
232
296
  path: _path + ".cloudFunction",
233
297
  expected: "(CloudFunctionConfig | undefined)",
234
298
  value: input.cloudFunction
235
- })) && _vo8(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
299
+ })) && _vo10(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
236
300
  path: _path + ".cloudFunction",
237
301
  expected: "(CloudFunctionConfig | undefined)",
238
302
  value: input.cloudFunction
@@ -240,7 +304,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
240
304
  path: _path + ".authorization",
241
305
  expected: "(AuthorizationMetadata | undefined)",
242
306
  value: input.authorization
243
- })) && _vo9(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
307
+ })) && _vo11(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
244
308
  path: _path + ".authorization",
245
309
  expected: "(AuthorizationMetadata | undefined)",
246
310
  value: input.authorization
@@ -260,7 +324,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
260
324
  path: _path + ".id",
261
325
  expected: "(number | undefined)",
262
326
  value: input.id
263
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
327
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
264
328
  path: _path + ".host",
265
329
  expected: "string",
266
330
  value: input.host
@@ -276,7 +340,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
276
340
  path: _path + ".includeBaseURL",
277
341
  expected: "(boolean | undefined)",
278
342
  value: input.includeBaseURL
279
- })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
343
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
280
344
  path: _path + ".apiDocs",
281
345
  expected: "(string | undefined)",
282
346
  value: input.apiDocs
@@ -292,7 +356,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
292
356
  path: _path + ".changelog",
293
357
  expected: "(string | undefined)",
294
358
  value: input.changelog
295
- })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
359
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
296
360
  path: _path + ".route",
297
361
  expected: "string",
298
362
  value: input.route
@@ -308,7 +372,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
308
372
  path: _path + ".customProps",
309
373
  expected: "ModuleProps",
310
374
  value: input.customProps
311
- })) && _vo7(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
375
+ })) && _vo9(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
312
376
  path: _path + ".customProps",
313
377
  expected: "ModuleProps",
314
378
  value: input.customProps
@@ -320,12 +384,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
320
384
  path: _path + ".isPlatformCustomization",
321
385
  expected: "(boolean | undefined)",
322
386
  value: input.isPlatformCustomization
323
- })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
387
+ })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
324
388
  const value = input[key];
325
389
  if (undefined === value)
326
390
  return true;
327
391
  return true;
328
- }).every(flag => flag)].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
392
+ }).every(flag => flag)].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
329
393
  path: _path + ".provider",
330
394
  expected: "\"aws\"",
331
395
  value: input.provider
@@ -333,12 +397,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
333
397
  path: _path + ".requiresSignature",
334
398
  expected: "boolean",
335
399
  value: input.requiresSignature
336
- })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
400
+ })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
337
401
  path: _path + ".operations",
338
402
  expected: "(Array<string> | undefined)",
339
403
  value: input.operations
340
- })) && input.operations.map((elem, _index20) => "string" === typeof elem || _report(_exceptionable, {
341
- path: _path + ".operations[" + _index20 + "]",
404
+ })) && input.operations.map((elem, _index26) => "string" === typeof elem || _report(_exceptionable, {
405
+ path: _path + ".operations[" + _index26 + "]",
342
406
  expected: "string",
343
407
  value: elem
344
408
  })).every(flag => flag) || _report(_exceptionable, {
@@ -349,24 +413,24 @@ describe('BootstrapSyncMetadata - type validations', () => {
349
413
  path: _path + ".routes",
350
414
  expected: "(Array<RouteAuthorization> | undefined)",
351
415
  value: input.routes
352
- })) && input.routes.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
353
- path: _path + ".routes[" + _index21 + "]",
416
+ })) && input.routes.map((elem, _index27) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
417
+ path: _path + ".routes[" + _index27 + "]",
354
418
  expected: "RouteAuthorization",
355
419
  value: elem
356
- })) && _vo10(elem, _path + ".routes[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
357
- path: _path + ".routes[" + _index21 + "]",
420
+ })) && _vo12(elem, _path + ".routes[" + _index27 + "]", true && _exceptionable) || _report(_exceptionable, {
421
+ path: _path + ".routes[" + _index27 + "]",
358
422
  expected: "RouteAuthorization",
359
423
  value: elem
360
424
  })).every(flag => flag) || _report(_exceptionable, {
361
425
  path: _path + ".routes",
362
426
  expected: "(Array<RouteAuthorization> | undefined)",
363
427
  value: input.routes
364
- })].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
428
+ })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
365
429
  path: _path + ".methods",
366
430
  expected: "(Array<HttpMethod> | undefined)",
367
431
  value: input.methods
368
- })) && input.methods.map((elem, _index22) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
369
- path: _path + ".methods[" + _index22 + "]",
432
+ })) && input.methods.map((elem, _index28) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
433
+ path: _path + ".methods[" + _index28 + "]",
370
434
  expected: "(\"CONNECT\" | \"DELETE\" | \"GET\" | \"HEAD\" | \"OPTIONS\" | \"PATCH\" | \"POST\" | \"PUT\" | \"TRACE\")",
371
435
  value: elem
372
436
  })).every(flag => flag) || _report(_exceptionable, {
@@ -381,15 +445,15 @@ describe('BootstrapSyncMetadata - type validations', () => {
381
445
  path: _path + ".operations",
382
446
  expected: "Array<string>",
383
447
  value: input.operations
384
- })) && input.operations.map((elem, _index23) => "string" === typeof elem || _report(_exceptionable, {
385
- path: _path + ".operations[" + _index23 + "]",
448
+ })) && input.operations.map((elem, _index29) => "string" === typeof elem || _report(_exceptionable, {
449
+ path: _path + ".operations[" + _index29 + "]",
386
450
  expected: "string",
387
451
  value: elem
388
452
  })).every(flag => flag) || _report(_exceptionable, {
389
453
  path: _path + ".operations",
390
454
  expected: "Array<string>",
391
455
  value: input.operations
392
- })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
456
+ })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
393
457
  path: _path + ".name",
394
458
  expected: "string",
395
459
  value: input.name
@@ -405,7 +469,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
405
469
  path: _path + ".allowedByDefault",
406
470
  expected: "(boolean | undefined)",
407
471
  value: input.allowedByDefault
408
- })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
472
+ })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
409
473
  path: _path + ".applicationName",
410
474
  expected: "(string | undefined)",
411
475
  value: input.applicationName
@@ -417,12 +481,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
417
481
  path: _path + ".description",
418
482
  expected: "(string | undefined)",
419
483
  value: input.description
420
- })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
484
+ })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
421
485
  path: _path + ".roles",
422
486
  expected: "(Array<string> | undefined)",
423
487
  value: input.roles
424
- })) && input.roles.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
425
- path: _path + ".roles[" + _index24 + "]",
488
+ })) && input.roles.map((elem, _index30) => "string" === typeof elem || _report(_exceptionable, {
489
+ path: _path + ".roles[" + _index30 + "]",
426
490
  expected: "string",
427
491
  value: elem
428
492
  })).every(flag => flag) || _report(_exceptionable, {
@@ -441,7 +505,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
441
505
  path: _path + ".applicationName",
442
506
  expected: "(string | undefined)",
443
507
  value: input.applicationName
444
- })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
508
+ })].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
445
509
  path: _path + ".moduleName",
446
510
  expected: "string",
447
511
  value: input.moduleName
@@ -449,11 +513,11 @@ describe('BootstrapSyncMetadata - type validations', () => {
449
513
  path: _path + ".customProps",
450
514
  expected: "Record<string, any>",
451
515
  value: input.customProps
452
- })) && _vo15(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
516
+ })) && _vo17(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
453
517
  path: _path + ".customProps",
454
518
  expected: "Record<string, any>",
455
519
  value: input.customProps
456
- })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
520
+ })].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
457
521
  const value = input[key];
458
522
  if (undefined === value)
459
523
  return true;
@@ -492,12 +556,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
492
556
  const invalidObject = {
493
557
  invalidField: 'invalidValue',
494
558
  };
495
- const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io11(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io12(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io14(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io4(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io5(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io6(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io8(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io9(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io4 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io5 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io6 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io7(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io7 = input => Object.keys(input).every(key => {
559
+ const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.featureFlags || Array.isArray(input.featureFlags) && input.featureFlags.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io5(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io14(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io15(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io16(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.enabled || "boolean" === typeof input.enabled) && (undefined === input.constraints || Array.isArray(input.constraints) && input.constraints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "string" === typeof input.contextName && "string" === typeof input.operator && (undefined === input.values || Array.isArray(input.values) && input.values.every(elem => "string" === typeof elem)); const _io5 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io6(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io7(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io8(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io10(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io11(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io6 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io7 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io8 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io9(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io9 = input => Object.keys(input).every(key => {
496
560
  const value = input[key];
497
561
  if (undefined === value)
498
562
  return true;
499
563
  return true;
500
- }); const _io8 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io9 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io10(elem))); const _io10 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io11 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io12 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io13 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io14 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io15(input.customProps)); const _io15 = input => Object.keys(input).every(key => {
564
+ }); const _io10 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io11 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io12(elem))); const _io12 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io13 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io14 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io15 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io16 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io17(input.customProps)); const _io17 = input => Object.keys(input).every(key => {
501
565
  const value = input[key];
502
566
  if (undefined === value)
503
567
  return true;
@@ -514,28 +578,44 @@ describe('BootstrapSyncMetadata - type validations', () => {
514
578
  path: _path + ".sharedLibraries",
515
579
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
516
580
  value: input.sharedLibraries
517
- })) && input.sharedLibraries.map((elem, _index13) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
518
- path: _path + ".sharedLibraries[" + _index13 + "]",
581
+ })) && input.sharedLibraries.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
582
+ path: _path + ".sharedLibraries[" + _index16 + "]",
519
583
  expected: "CreateSharedLibraryDTO",
520
584
  value: elem
521
- })) && _vo2(elem, _path + ".sharedLibraries[" + _index13 + "]", true && _exceptionable) || _report(_exceptionable, {
522
- path: _path + ".sharedLibraries[" + _index13 + "]",
585
+ })) && _vo2(elem, _path + ".sharedLibraries[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
586
+ path: _path + ".sharedLibraries[" + _index16 + "]",
523
587
  expected: "CreateSharedLibraryDTO",
524
588
  value: elem
525
589
  })).every(flag => flag) || _report(_exceptionable, {
526
590
  path: _path + ".sharedLibraries",
527
591
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
528
592
  value: input.sharedLibraries
593
+ }), undefined === input.featureFlags || (Array.isArray(input.featureFlags) || _report(_exceptionable, {
594
+ path: _path + ".featureFlags",
595
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
596
+ value: input.featureFlags
597
+ })) && input.featureFlags.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
598
+ path: _path + ".featureFlags[" + _index17 + "]",
599
+ expected: "BootstrapFeatureFlag",
600
+ value: elem
601
+ })) && _vo3(elem, _path + ".featureFlags[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
602
+ path: _path + ".featureFlags[" + _index17 + "]",
603
+ expected: "BootstrapFeatureFlag",
604
+ value: elem
605
+ })).every(flag => flag) || _report(_exceptionable, {
606
+ path: _path + ".featureFlags",
607
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
608
+ value: input.featureFlags
529
609
  }), undefined === input.catalog || (Array.isArray(input.catalog) || _report(_exceptionable, {
530
610
  path: _path + ".catalog",
531
611
  expected: "(Array<CreateOrUpdateModule> | undefined)",
532
612
  value: input.catalog
533
- })) && input.catalog.map((elem, _index14) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
534
- path: _path + ".catalog[" + _index14 + "]",
613
+ })) && input.catalog.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
614
+ path: _path + ".catalog[" + _index18 + "]",
535
615
  expected: "CreateOrUpdateModule",
536
616
  value: elem
537
- })) && _vo3(elem, _path + ".catalog[" + _index14 + "]", true && _exceptionable) || _report(_exceptionable, {
538
- path: _path + ".catalog[" + _index14 + "]",
617
+ })) && _vo5(elem, _path + ".catalog[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
618
+ path: _path + ".catalog[" + _index18 + "]",
539
619
  expected: "CreateOrUpdateModule",
540
620
  value: elem
541
621
  })).every(flag => flag) || _report(_exceptionable, {
@@ -546,12 +626,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
546
626
  path: _path + ".applicationsAuthz",
547
627
  expected: "(Array<CreateApplicationDTO> | undefined)",
548
628
  value: input.applicationsAuthz
549
- })) && input.applicationsAuthz.map((elem, _index15) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
550
- path: _path + ".applicationsAuthz[" + _index15 + "]",
629
+ })) && input.applicationsAuthz.map((elem, _index19) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
630
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
551
631
  expected: "CreateApplicationDTO",
552
632
  value: elem
553
- })) && _vo11(elem, _path + ".applicationsAuthz[" + _index15 + "]", true && _exceptionable) || _report(_exceptionable, {
554
- path: _path + ".applicationsAuthz[" + _index15 + "]",
633
+ })) && _vo13(elem, _path + ".applicationsAuthz[" + _index19 + "]", true && _exceptionable) || _report(_exceptionable, {
634
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
555
635
  expected: "CreateApplicationDTO",
556
636
  value: elem
557
637
  })).every(flag => flag) || _report(_exceptionable, {
@@ -562,12 +642,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
562
642
  path: _path + ".rolesAuthz",
563
643
  expected: "(Array<CreateRoleDTO> | undefined)",
564
644
  value: input.rolesAuthz
565
- })) && input.rolesAuthz.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
566
- path: _path + ".rolesAuthz[" + _index16 + "]",
645
+ })) && input.rolesAuthz.map((elem, _index20) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
646
+ path: _path + ".rolesAuthz[" + _index20 + "]",
567
647
  expected: "CreateRoleDTO",
568
648
  value: elem
569
- })) && _vo12(elem, _path + ".rolesAuthz[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
570
- path: _path + ".rolesAuthz[" + _index16 + "]",
649
+ })) && _vo14(elem, _path + ".rolesAuthz[" + _index20 + "]", true && _exceptionable) || _report(_exceptionable, {
650
+ path: _path + ".rolesAuthz[" + _index20 + "]",
571
651
  expected: "CreateRoleDTO",
572
652
  value: elem
573
653
  })).every(flag => flag) || _report(_exceptionable, {
@@ -578,12 +658,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
578
658
  path: _path + ".operationsAuthz",
579
659
  expected: "(Array<OperationAuthzBootstrap> | undefined)",
580
660
  value: input.operationsAuthz
581
- })) && input.operationsAuthz.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
582
- path: _path + ".operationsAuthz[" + _index17 + "]",
661
+ })) && input.operationsAuthz.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
662
+ path: _path + ".operationsAuthz[" + _index21 + "]",
583
663
  expected: "OperationAuthzBootstrap",
584
664
  value: elem
585
- })) && _vo13(elem, _path + ".operationsAuthz[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
586
- path: _path + ".operationsAuthz[" + _index17 + "]",
665
+ })) && _vo15(elem, _path + ".operationsAuthz[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
666
+ path: _path + ".operationsAuthz[" + _index21 + "]",
587
667
  expected: "OperationAuthzBootstrap",
588
668
  value: elem
589
669
  })).every(flag => flag) || _report(_exceptionable, {
@@ -594,12 +674,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
594
674
  path: _path + ".modulesConfig",
595
675
  expected: "(Array<UpdateModuleUIConfigDTO> | undefined)",
596
676
  value: input.modulesConfig
597
- })) && input.modulesConfig.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
598
- path: _path + ".modulesConfig[" + _index18 + "]",
677
+ })) && input.modulesConfig.map((elem, _index22) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
678
+ path: _path + ".modulesConfig[" + _index22 + "]",
599
679
  expected: "UpdateModuleUIConfigDTO",
600
680
  value: elem
601
- })) && _vo14(elem, _path + ".modulesConfig[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
602
- path: _path + ".modulesConfig[" + _index18 + "]",
681
+ })) && _vo16(elem, _path + ".modulesConfig[" + _index22 + "]", true && _exceptionable) || _report(_exceptionable, {
682
+ path: _path + ".modulesConfig[" + _index22 + "]",
603
683
  expected: "UpdateModuleUIConfigDTO",
604
684
  value: elem
605
685
  })).every(flag => flag) || _report(_exceptionable, {
@@ -626,13 +706,61 @@ describe('BootstrapSyncMetadata - type validations', () => {
626
706
  path: _path + ".name",
627
707
  expected: "string",
628
708
  value: input.name
709
+ }), undefined === input.description || "string" === typeof input.description || _report(_exceptionable, {
710
+ path: _path + ".description",
711
+ expected: "(string | undefined)",
712
+ value: input.description
713
+ }), undefined === input.enabled || "boolean" === typeof input.enabled || _report(_exceptionable, {
714
+ path: _path + ".enabled",
715
+ expected: "(boolean | undefined)",
716
+ value: input.enabled
717
+ }), undefined === input.constraints || (Array.isArray(input.constraints) || _report(_exceptionable, {
718
+ path: _path + ".constraints",
719
+ expected: "(Array<__type> | undefined)",
720
+ value: input.constraints
721
+ })) && input.constraints.map((elem, _index23) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
722
+ path: _path + ".constraints[" + _index23 + "]",
723
+ expected: "__type.o1",
724
+ value: elem
725
+ })) && _vo4(elem, _path + ".constraints[" + _index23 + "]", true && _exceptionable) || _report(_exceptionable, {
726
+ path: _path + ".constraints[" + _index23 + "]",
727
+ expected: "__type.o1",
728
+ value: elem
729
+ })).every(flag => flag) || _report(_exceptionable, {
730
+ path: _path + ".constraints",
731
+ expected: "(Array<__type> | undefined)",
732
+ value: input.constraints
733
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.contextName || _report(_exceptionable, {
734
+ path: _path + ".contextName",
735
+ expected: "string",
736
+ value: input.contextName
737
+ }), "string" === typeof input.operator || _report(_exceptionable, {
738
+ path: _path + ".operator",
739
+ expected: "string",
740
+ value: input.operator
741
+ }), undefined === input.values || (Array.isArray(input.values) || _report(_exceptionable, {
742
+ path: _path + ".values",
743
+ expected: "(Array<string> | undefined)",
744
+ value: input.values
745
+ })) && input.values.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
746
+ path: _path + ".values[" + _index24 + "]",
747
+ expected: "string",
748
+ value: elem
749
+ })).every(flag => flag) || _report(_exceptionable, {
750
+ path: _path + ".values",
751
+ expected: "(Array<string> | undefined)",
752
+ value: input.values
753
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
754
+ path: _path + ".name",
755
+ expected: "string",
756
+ value: input.name
629
757
  }), "string" === typeof input.displayName || _report(_exceptionable, {
630
758
  path: _path + ".displayName",
631
759
  expected: "string",
632
760
  value: input.displayName
633
- }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || _report(_exceptionable, {
761
+ }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type || _report(_exceptionable, {
634
762
  path: _path + ".type",
635
- expected: "(\"app\" | \"cloud-function\" | \"service\" | \"utility\")",
763
+ expected: "(\"app\" | \"cloud-function\" | \"documentation\" | \"service\" | \"utility\")",
636
764
  value: input.type
637
765
  }), "string" === typeof input.baseUrl || _report(_exceptionable, {
638
766
  path: _path + ".baseUrl",
@@ -642,7 +770,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
642
770
  path: _path + ".service",
643
771
  expected: "ServiceConfig",
644
772
  value: input.service
645
- })) && _vo4(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
773
+ })) && _vo6(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
646
774
  path: _path + ".service",
647
775
  expected: "ServiceConfig",
648
776
  value: input.service
@@ -650,8 +778,8 @@ describe('BootstrapSyncMetadata - type validations', () => {
650
778
  path: _path + ".dependsOn",
651
779
  expected: "Array<string>",
652
780
  value: input.dependsOn
653
- })) && input.dependsOn.map((elem, _index19) => "string" === typeof elem || _report(_exceptionable, {
654
- path: _path + ".dependsOn[" + _index19 + "]",
781
+ })) && input.dependsOn.map((elem, _index25) => "string" === typeof elem || _report(_exceptionable, {
782
+ path: _path + ".dependsOn[" + _index25 + "]",
655
783
  expected: "string",
656
784
  value: elem
657
785
  })).every(flag => flag) || _report(_exceptionable, {
@@ -662,7 +790,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
662
790
  path: _path + ".commonPaths",
663
791
  expected: "(CommonPathsMetadata | undefined)",
664
792
  value: input.commonPaths
665
- })) && _vo5(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
793
+ })) && _vo7(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
666
794
  path: _path + ".commonPaths",
667
795
  expected: "(CommonPathsMetadata | undefined)",
668
796
  value: input.commonPaths
@@ -670,7 +798,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
670
798
  path: _path + ".ui",
671
799
  expected: "(UIConfig | undefined)",
672
800
  value: input.ui
673
- })) && _vo6(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
801
+ })) && _vo8(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
674
802
  path: _path + ".ui",
675
803
  expected: "(UIConfig | undefined)",
676
804
  value: input.ui
@@ -678,7 +806,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
678
806
  path: _path + ".cloudFunction",
679
807
  expected: "(CloudFunctionConfig | undefined)",
680
808
  value: input.cloudFunction
681
- })) && _vo8(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
809
+ })) && _vo10(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
682
810
  path: _path + ".cloudFunction",
683
811
  expected: "(CloudFunctionConfig | undefined)",
684
812
  value: input.cloudFunction
@@ -686,7 +814,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
686
814
  path: _path + ".authorization",
687
815
  expected: "(AuthorizationMetadata | undefined)",
688
816
  value: input.authorization
689
- })) && _vo9(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
817
+ })) && _vo11(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
690
818
  path: _path + ".authorization",
691
819
  expected: "(AuthorizationMetadata | undefined)",
692
820
  value: input.authorization
@@ -706,7 +834,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
706
834
  path: _path + ".id",
707
835
  expected: "(number | undefined)",
708
836
  value: input.id
709
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
837
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
710
838
  path: _path + ".host",
711
839
  expected: "string",
712
840
  value: input.host
@@ -722,7 +850,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
722
850
  path: _path + ".includeBaseURL",
723
851
  expected: "(boolean | undefined)",
724
852
  value: input.includeBaseURL
725
- })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
853
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
726
854
  path: _path + ".apiDocs",
727
855
  expected: "(string | undefined)",
728
856
  value: input.apiDocs
@@ -738,7 +866,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
738
866
  path: _path + ".changelog",
739
867
  expected: "(string | undefined)",
740
868
  value: input.changelog
741
- })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
869
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
742
870
  path: _path + ".route",
743
871
  expected: "string",
744
872
  value: input.route
@@ -754,7 +882,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
754
882
  path: _path + ".customProps",
755
883
  expected: "ModuleProps",
756
884
  value: input.customProps
757
- })) && _vo7(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
885
+ })) && _vo9(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
758
886
  path: _path + ".customProps",
759
887
  expected: "ModuleProps",
760
888
  value: input.customProps
@@ -766,12 +894,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
766
894
  path: _path + ".isPlatformCustomization",
767
895
  expected: "(boolean | undefined)",
768
896
  value: input.isPlatformCustomization
769
- })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
897
+ })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
770
898
  const value = input[key];
771
899
  if (undefined === value)
772
900
  return true;
773
901
  return true;
774
- }).every(flag => flag)].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
902
+ }).every(flag => flag)].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
775
903
  path: _path + ".provider",
776
904
  expected: "\"aws\"",
777
905
  value: input.provider
@@ -779,12 +907,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
779
907
  path: _path + ".requiresSignature",
780
908
  expected: "boolean",
781
909
  value: input.requiresSignature
782
- })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
910
+ })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
783
911
  path: _path + ".operations",
784
912
  expected: "(Array<string> | undefined)",
785
913
  value: input.operations
786
- })) && input.operations.map((elem, _index20) => "string" === typeof elem || _report(_exceptionable, {
787
- path: _path + ".operations[" + _index20 + "]",
914
+ })) && input.operations.map((elem, _index26) => "string" === typeof elem || _report(_exceptionable, {
915
+ path: _path + ".operations[" + _index26 + "]",
788
916
  expected: "string",
789
917
  value: elem
790
918
  })).every(flag => flag) || _report(_exceptionable, {
@@ -795,24 +923,24 @@ describe('BootstrapSyncMetadata - type validations', () => {
795
923
  path: _path + ".routes",
796
924
  expected: "(Array<RouteAuthorization> | undefined)",
797
925
  value: input.routes
798
- })) && input.routes.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
799
- path: _path + ".routes[" + _index21 + "]",
926
+ })) && input.routes.map((elem, _index27) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
927
+ path: _path + ".routes[" + _index27 + "]",
800
928
  expected: "RouteAuthorization",
801
929
  value: elem
802
- })) && _vo10(elem, _path + ".routes[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
803
- path: _path + ".routes[" + _index21 + "]",
930
+ })) && _vo12(elem, _path + ".routes[" + _index27 + "]", true && _exceptionable) || _report(_exceptionable, {
931
+ path: _path + ".routes[" + _index27 + "]",
804
932
  expected: "RouteAuthorization",
805
933
  value: elem
806
934
  })).every(flag => flag) || _report(_exceptionable, {
807
935
  path: _path + ".routes",
808
936
  expected: "(Array<RouteAuthorization> | undefined)",
809
937
  value: input.routes
810
- })].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
938
+ })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
811
939
  path: _path + ".methods",
812
940
  expected: "(Array<HttpMethod> | undefined)",
813
941
  value: input.methods
814
- })) && input.methods.map((elem, _index22) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
815
- path: _path + ".methods[" + _index22 + "]",
942
+ })) && input.methods.map((elem, _index28) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
943
+ path: _path + ".methods[" + _index28 + "]",
816
944
  expected: "(\"CONNECT\" | \"DELETE\" | \"GET\" | \"HEAD\" | \"OPTIONS\" | \"PATCH\" | \"POST\" | \"PUT\" | \"TRACE\")",
817
945
  value: elem
818
946
  })).every(flag => flag) || _report(_exceptionable, {
@@ -827,15 +955,15 @@ describe('BootstrapSyncMetadata - type validations', () => {
827
955
  path: _path + ".operations",
828
956
  expected: "Array<string>",
829
957
  value: input.operations
830
- })) && input.operations.map((elem, _index23) => "string" === typeof elem || _report(_exceptionable, {
831
- path: _path + ".operations[" + _index23 + "]",
958
+ })) && input.operations.map((elem, _index29) => "string" === typeof elem || _report(_exceptionable, {
959
+ path: _path + ".operations[" + _index29 + "]",
832
960
  expected: "string",
833
961
  value: elem
834
962
  })).every(flag => flag) || _report(_exceptionable, {
835
963
  path: _path + ".operations",
836
964
  expected: "Array<string>",
837
965
  value: input.operations
838
- })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
966
+ })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
839
967
  path: _path + ".name",
840
968
  expected: "string",
841
969
  value: input.name
@@ -851,7 +979,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
851
979
  path: _path + ".allowedByDefault",
852
980
  expected: "(boolean | undefined)",
853
981
  value: input.allowedByDefault
854
- })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
982
+ })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
855
983
  path: _path + ".applicationName",
856
984
  expected: "(string | undefined)",
857
985
  value: input.applicationName
@@ -863,12 +991,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
863
991
  path: _path + ".description",
864
992
  expected: "(string | undefined)",
865
993
  value: input.description
866
- })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
994
+ })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
867
995
  path: _path + ".roles",
868
996
  expected: "(Array<string> | undefined)",
869
997
  value: input.roles
870
- })) && input.roles.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
871
- path: _path + ".roles[" + _index24 + "]",
998
+ })) && input.roles.map((elem, _index30) => "string" === typeof elem || _report(_exceptionable, {
999
+ path: _path + ".roles[" + _index30 + "]",
872
1000
  expected: "string",
873
1001
  value: elem
874
1002
  })).every(flag => flag) || _report(_exceptionable, {
@@ -887,7 +1015,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
887
1015
  path: _path + ".applicationName",
888
1016
  expected: "(string | undefined)",
889
1017
  value: input.applicationName
890
- })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
1018
+ })].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
891
1019
  path: _path + ".moduleName",
892
1020
  expected: "string",
893
1021
  value: input.moduleName
@@ -895,11 +1023,11 @@ describe('BootstrapSyncMetadata - type validations', () => {
895
1023
  path: _path + ".customProps",
896
1024
  expected: "Record<string, any>",
897
1025
  value: input.customProps
898
- })) && _vo15(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1026
+ })) && _vo17(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
899
1027
  path: _path + ".customProps",
900
1028
  expected: "Record<string, any>",
901
1029
  value: input.customProps
902
- })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1030
+ })].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
903
1031
  const value = input[key];
904
1032
  if (undefined === value)
905
1033
  return true;
@@ -959,12 +1087,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
959
1087
  scopedTo: "any"
960
1088
  },
961
1089
  };
962
- const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io11(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io12(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io14(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io4(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io5(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io6(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io8(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io9(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io4 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io5 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io6 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io7(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io7 = input => Object.keys(input).every(key => {
1090
+ const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.featureFlags || Array.isArray(input.featureFlags) && input.featureFlags.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io5(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io14(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io15(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io16(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.enabled || "boolean" === typeof input.enabled) && (undefined === input.constraints || Array.isArray(input.constraints) && input.constraints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "string" === typeof input.contextName && "string" === typeof input.operator && (undefined === input.values || Array.isArray(input.values) && input.values.every(elem => "string" === typeof elem)); const _io5 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io6(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io7(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io8(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io10(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io11(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io6 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io7 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io8 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io9(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io9 = input => Object.keys(input).every(key => {
963
1091
  const value = input[key];
964
1092
  if (undefined === value)
965
1093
  return true;
966
1094
  return true;
967
- }); const _io8 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io9 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io10(elem))); const _io10 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io11 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io12 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io13 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io14 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io15(input.customProps)); const _io15 = input => Object.keys(input).every(key => {
1095
+ }); const _io10 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io11 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io12(elem))); const _io12 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io13 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io14 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io15 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io16 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io17(input.customProps)); const _io17 = input => Object.keys(input).every(key => {
968
1096
  const value = input[key];
969
1097
  if (undefined === value)
970
1098
  return true;
@@ -981,28 +1109,44 @@ describe('BootstrapSyncMetadata - type validations', () => {
981
1109
  path: _path + ".sharedLibraries",
982
1110
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
983
1111
  value: input.sharedLibraries
984
- })) && input.sharedLibraries.map((elem, _index13) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
985
- path: _path + ".sharedLibraries[" + _index13 + "]",
1112
+ })) && input.sharedLibraries.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1113
+ path: _path + ".sharedLibraries[" + _index16 + "]",
986
1114
  expected: "CreateSharedLibraryDTO",
987
1115
  value: elem
988
- })) && _vo2(elem, _path + ".sharedLibraries[" + _index13 + "]", true && _exceptionable) || _report(_exceptionable, {
989
- path: _path + ".sharedLibraries[" + _index13 + "]",
1116
+ })) && _vo2(elem, _path + ".sharedLibraries[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
1117
+ path: _path + ".sharedLibraries[" + _index16 + "]",
990
1118
  expected: "CreateSharedLibraryDTO",
991
1119
  value: elem
992
1120
  })).every(flag => flag) || _report(_exceptionable, {
993
1121
  path: _path + ".sharedLibraries",
994
1122
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
995
1123
  value: input.sharedLibraries
1124
+ }), undefined === input.featureFlags || (Array.isArray(input.featureFlags) || _report(_exceptionable, {
1125
+ path: _path + ".featureFlags",
1126
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
1127
+ value: input.featureFlags
1128
+ })) && input.featureFlags.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1129
+ path: _path + ".featureFlags[" + _index17 + "]",
1130
+ expected: "BootstrapFeatureFlag",
1131
+ value: elem
1132
+ })) && _vo3(elem, _path + ".featureFlags[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
1133
+ path: _path + ".featureFlags[" + _index17 + "]",
1134
+ expected: "BootstrapFeatureFlag",
1135
+ value: elem
1136
+ })).every(flag => flag) || _report(_exceptionable, {
1137
+ path: _path + ".featureFlags",
1138
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
1139
+ value: input.featureFlags
996
1140
  }), undefined === input.catalog || (Array.isArray(input.catalog) || _report(_exceptionable, {
997
1141
  path: _path + ".catalog",
998
1142
  expected: "(Array<CreateOrUpdateModule> | undefined)",
999
1143
  value: input.catalog
1000
- })) && input.catalog.map((elem, _index14) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1001
- path: _path + ".catalog[" + _index14 + "]",
1144
+ })) && input.catalog.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1145
+ path: _path + ".catalog[" + _index18 + "]",
1002
1146
  expected: "CreateOrUpdateModule",
1003
1147
  value: elem
1004
- })) && _vo3(elem, _path + ".catalog[" + _index14 + "]", true && _exceptionable) || _report(_exceptionable, {
1005
- path: _path + ".catalog[" + _index14 + "]",
1148
+ })) && _vo5(elem, _path + ".catalog[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
1149
+ path: _path + ".catalog[" + _index18 + "]",
1006
1150
  expected: "CreateOrUpdateModule",
1007
1151
  value: elem
1008
1152
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1013,12 +1157,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1013
1157
  path: _path + ".applicationsAuthz",
1014
1158
  expected: "(Array<CreateApplicationDTO> | undefined)",
1015
1159
  value: input.applicationsAuthz
1016
- })) && input.applicationsAuthz.map((elem, _index15) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1017
- path: _path + ".applicationsAuthz[" + _index15 + "]",
1160
+ })) && input.applicationsAuthz.map((elem, _index19) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1161
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
1018
1162
  expected: "CreateApplicationDTO",
1019
1163
  value: elem
1020
- })) && _vo11(elem, _path + ".applicationsAuthz[" + _index15 + "]", true && _exceptionable) || _report(_exceptionable, {
1021
- path: _path + ".applicationsAuthz[" + _index15 + "]",
1164
+ })) && _vo13(elem, _path + ".applicationsAuthz[" + _index19 + "]", true && _exceptionable) || _report(_exceptionable, {
1165
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
1022
1166
  expected: "CreateApplicationDTO",
1023
1167
  value: elem
1024
1168
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1029,12 +1173,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1029
1173
  path: _path + ".rolesAuthz",
1030
1174
  expected: "(Array<CreateRoleDTO> | undefined)",
1031
1175
  value: input.rolesAuthz
1032
- })) && input.rolesAuthz.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1033
- path: _path + ".rolesAuthz[" + _index16 + "]",
1176
+ })) && input.rolesAuthz.map((elem, _index20) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1177
+ path: _path + ".rolesAuthz[" + _index20 + "]",
1034
1178
  expected: "CreateRoleDTO",
1035
1179
  value: elem
1036
- })) && _vo12(elem, _path + ".rolesAuthz[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
1037
- path: _path + ".rolesAuthz[" + _index16 + "]",
1180
+ })) && _vo14(elem, _path + ".rolesAuthz[" + _index20 + "]", true && _exceptionable) || _report(_exceptionable, {
1181
+ path: _path + ".rolesAuthz[" + _index20 + "]",
1038
1182
  expected: "CreateRoleDTO",
1039
1183
  value: elem
1040
1184
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1045,12 +1189,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1045
1189
  path: _path + ".operationsAuthz",
1046
1190
  expected: "(Array<OperationAuthzBootstrap> | undefined)",
1047
1191
  value: input.operationsAuthz
1048
- })) && input.operationsAuthz.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1049
- path: _path + ".operationsAuthz[" + _index17 + "]",
1192
+ })) && input.operationsAuthz.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1193
+ path: _path + ".operationsAuthz[" + _index21 + "]",
1050
1194
  expected: "OperationAuthzBootstrap",
1051
1195
  value: elem
1052
- })) && _vo13(elem, _path + ".operationsAuthz[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
1053
- path: _path + ".operationsAuthz[" + _index17 + "]",
1196
+ })) && _vo15(elem, _path + ".operationsAuthz[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
1197
+ path: _path + ".operationsAuthz[" + _index21 + "]",
1054
1198
  expected: "OperationAuthzBootstrap",
1055
1199
  value: elem
1056
1200
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1061,12 +1205,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1061
1205
  path: _path + ".modulesConfig",
1062
1206
  expected: "(Array<UpdateModuleUIConfigDTO> | undefined)",
1063
1207
  value: input.modulesConfig
1064
- })) && input.modulesConfig.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1065
- path: _path + ".modulesConfig[" + _index18 + "]",
1208
+ })) && input.modulesConfig.map((elem, _index22) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1209
+ path: _path + ".modulesConfig[" + _index22 + "]",
1066
1210
  expected: "UpdateModuleUIConfigDTO",
1067
1211
  value: elem
1068
- })) && _vo14(elem, _path + ".modulesConfig[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
1069
- path: _path + ".modulesConfig[" + _index18 + "]",
1212
+ })) && _vo16(elem, _path + ".modulesConfig[" + _index22 + "]", true && _exceptionable) || _report(_exceptionable, {
1213
+ path: _path + ".modulesConfig[" + _index22 + "]",
1070
1214
  expected: "UpdateModuleUIConfigDTO",
1071
1215
  value: elem
1072
1216
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1093,13 +1237,61 @@ describe('BootstrapSyncMetadata - type validations', () => {
1093
1237
  path: _path + ".name",
1094
1238
  expected: "string",
1095
1239
  value: input.name
1240
+ }), undefined === input.description || "string" === typeof input.description || _report(_exceptionable, {
1241
+ path: _path + ".description",
1242
+ expected: "(string | undefined)",
1243
+ value: input.description
1244
+ }), undefined === input.enabled || "boolean" === typeof input.enabled || _report(_exceptionable, {
1245
+ path: _path + ".enabled",
1246
+ expected: "(boolean | undefined)",
1247
+ value: input.enabled
1248
+ }), undefined === input.constraints || (Array.isArray(input.constraints) || _report(_exceptionable, {
1249
+ path: _path + ".constraints",
1250
+ expected: "(Array<__type> | undefined)",
1251
+ value: input.constraints
1252
+ })) && input.constraints.map((elem, _index23) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1253
+ path: _path + ".constraints[" + _index23 + "]",
1254
+ expected: "__type.o1",
1255
+ value: elem
1256
+ })) && _vo4(elem, _path + ".constraints[" + _index23 + "]", true && _exceptionable) || _report(_exceptionable, {
1257
+ path: _path + ".constraints[" + _index23 + "]",
1258
+ expected: "__type.o1",
1259
+ value: elem
1260
+ })).every(flag => flag) || _report(_exceptionable, {
1261
+ path: _path + ".constraints",
1262
+ expected: "(Array<__type> | undefined)",
1263
+ value: input.constraints
1264
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.contextName || _report(_exceptionable, {
1265
+ path: _path + ".contextName",
1266
+ expected: "string",
1267
+ value: input.contextName
1268
+ }), "string" === typeof input.operator || _report(_exceptionable, {
1269
+ path: _path + ".operator",
1270
+ expected: "string",
1271
+ value: input.operator
1272
+ }), undefined === input.values || (Array.isArray(input.values) || _report(_exceptionable, {
1273
+ path: _path + ".values",
1274
+ expected: "(Array<string> | undefined)",
1275
+ value: input.values
1276
+ })) && input.values.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
1277
+ path: _path + ".values[" + _index24 + "]",
1278
+ expected: "string",
1279
+ value: elem
1280
+ })).every(flag => flag) || _report(_exceptionable, {
1281
+ path: _path + ".values",
1282
+ expected: "(Array<string> | undefined)",
1283
+ value: input.values
1284
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
1285
+ path: _path + ".name",
1286
+ expected: "string",
1287
+ value: input.name
1096
1288
  }), "string" === typeof input.displayName || _report(_exceptionable, {
1097
1289
  path: _path + ".displayName",
1098
1290
  expected: "string",
1099
1291
  value: input.displayName
1100
- }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || _report(_exceptionable, {
1292
+ }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type || _report(_exceptionable, {
1101
1293
  path: _path + ".type",
1102
- expected: "(\"app\" | \"cloud-function\" | \"service\" | \"utility\")",
1294
+ expected: "(\"app\" | \"cloud-function\" | \"documentation\" | \"service\" | \"utility\")",
1103
1295
  value: input.type
1104
1296
  }), "string" === typeof input.baseUrl || _report(_exceptionable, {
1105
1297
  path: _path + ".baseUrl",
@@ -1109,7 +1301,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1109
1301
  path: _path + ".service",
1110
1302
  expected: "ServiceConfig",
1111
1303
  value: input.service
1112
- })) && _vo4(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
1304
+ })) && _vo6(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
1113
1305
  path: _path + ".service",
1114
1306
  expected: "ServiceConfig",
1115
1307
  value: input.service
@@ -1117,8 +1309,8 @@ describe('BootstrapSyncMetadata - type validations', () => {
1117
1309
  path: _path + ".dependsOn",
1118
1310
  expected: "Array<string>",
1119
1311
  value: input.dependsOn
1120
- })) && input.dependsOn.map((elem, _index19) => "string" === typeof elem || _report(_exceptionable, {
1121
- path: _path + ".dependsOn[" + _index19 + "]",
1312
+ })) && input.dependsOn.map((elem, _index25) => "string" === typeof elem || _report(_exceptionable, {
1313
+ path: _path + ".dependsOn[" + _index25 + "]",
1122
1314
  expected: "string",
1123
1315
  value: elem
1124
1316
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1129,7 +1321,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1129
1321
  path: _path + ".commonPaths",
1130
1322
  expected: "(CommonPathsMetadata | undefined)",
1131
1323
  value: input.commonPaths
1132
- })) && _vo5(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
1324
+ })) && _vo7(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
1133
1325
  path: _path + ".commonPaths",
1134
1326
  expected: "(CommonPathsMetadata | undefined)",
1135
1327
  value: input.commonPaths
@@ -1137,7 +1329,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1137
1329
  path: _path + ".ui",
1138
1330
  expected: "(UIConfig | undefined)",
1139
1331
  value: input.ui
1140
- })) && _vo6(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
1332
+ })) && _vo8(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
1141
1333
  path: _path + ".ui",
1142
1334
  expected: "(UIConfig | undefined)",
1143
1335
  value: input.ui
@@ -1145,7 +1337,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1145
1337
  path: _path + ".cloudFunction",
1146
1338
  expected: "(CloudFunctionConfig | undefined)",
1147
1339
  value: input.cloudFunction
1148
- })) && _vo8(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
1340
+ })) && _vo10(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
1149
1341
  path: _path + ".cloudFunction",
1150
1342
  expected: "(CloudFunctionConfig | undefined)",
1151
1343
  value: input.cloudFunction
@@ -1153,7 +1345,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1153
1345
  path: _path + ".authorization",
1154
1346
  expected: "(AuthorizationMetadata | undefined)",
1155
1347
  value: input.authorization
1156
- })) && _vo9(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
1348
+ })) && _vo11(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
1157
1349
  path: _path + ".authorization",
1158
1350
  expected: "(AuthorizationMetadata | undefined)",
1159
1351
  value: input.authorization
@@ -1173,7 +1365,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1173
1365
  path: _path + ".id",
1174
1366
  expected: "(number | undefined)",
1175
1367
  value: input.id
1176
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
1368
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
1177
1369
  path: _path + ".host",
1178
1370
  expected: "string",
1179
1371
  value: input.host
@@ -1189,7 +1381,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1189
1381
  path: _path + ".includeBaseURL",
1190
1382
  expected: "(boolean | undefined)",
1191
1383
  value: input.includeBaseURL
1192
- })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
1384
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
1193
1385
  path: _path + ".apiDocs",
1194
1386
  expected: "(string | undefined)",
1195
1387
  value: input.apiDocs
@@ -1205,7 +1397,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1205
1397
  path: _path + ".changelog",
1206
1398
  expected: "(string | undefined)",
1207
1399
  value: input.changelog
1208
- })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
1400
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
1209
1401
  path: _path + ".route",
1210
1402
  expected: "string",
1211
1403
  value: input.route
@@ -1221,7 +1413,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1221
1413
  path: _path + ".customProps",
1222
1414
  expected: "ModuleProps",
1223
1415
  value: input.customProps
1224
- })) && _vo7(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1416
+ })) && _vo9(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1225
1417
  path: _path + ".customProps",
1226
1418
  expected: "ModuleProps",
1227
1419
  value: input.customProps
@@ -1233,12 +1425,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1233
1425
  path: _path + ".isPlatformCustomization",
1234
1426
  expected: "(boolean | undefined)",
1235
1427
  value: input.isPlatformCustomization
1236
- })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1428
+ })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1237
1429
  const value = input[key];
1238
1430
  if (undefined === value)
1239
1431
  return true;
1240
1432
  return true;
1241
- }).every(flag => flag)].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
1433
+ }).every(flag => flag)].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
1242
1434
  path: _path + ".provider",
1243
1435
  expected: "\"aws\"",
1244
1436
  value: input.provider
@@ -1246,12 +1438,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1246
1438
  path: _path + ".requiresSignature",
1247
1439
  expected: "boolean",
1248
1440
  value: input.requiresSignature
1249
- })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
1441
+ })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
1250
1442
  path: _path + ".operations",
1251
1443
  expected: "(Array<string> | undefined)",
1252
1444
  value: input.operations
1253
- })) && input.operations.map((elem, _index20) => "string" === typeof elem || _report(_exceptionable, {
1254
- path: _path + ".operations[" + _index20 + "]",
1445
+ })) && input.operations.map((elem, _index26) => "string" === typeof elem || _report(_exceptionable, {
1446
+ path: _path + ".operations[" + _index26 + "]",
1255
1447
  expected: "string",
1256
1448
  value: elem
1257
1449
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1262,24 +1454,24 @@ describe('BootstrapSyncMetadata - type validations', () => {
1262
1454
  path: _path + ".routes",
1263
1455
  expected: "(Array<RouteAuthorization> | undefined)",
1264
1456
  value: input.routes
1265
- })) && input.routes.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1266
- path: _path + ".routes[" + _index21 + "]",
1457
+ })) && input.routes.map((elem, _index27) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1458
+ path: _path + ".routes[" + _index27 + "]",
1267
1459
  expected: "RouteAuthorization",
1268
1460
  value: elem
1269
- })) && _vo10(elem, _path + ".routes[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
1270
- path: _path + ".routes[" + _index21 + "]",
1461
+ })) && _vo12(elem, _path + ".routes[" + _index27 + "]", true && _exceptionable) || _report(_exceptionable, {
1462
+ path: _path + ".routes[" + _index27 + "]",
1271
1463
  expected: "RouteAuthorization",
1272
1464
  value: elem
1273
1465
  })).every(flag => flag) || _report(_exceptionable, {
1274
1466
  path: _path + ".routes",
1275
1467
  expected: "(Array<RouteAuthorization> | undefined)",
1276
1468
  value: input.routes
1277
- })].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
1469
+ })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
1278
1470
  path: _path + ".methods",
1279
1471
  expected: "(Array<HttpMethod> | undefined)",
1280
1472
  value: input.methods
1281
- })) && input.methods.map((elem, _index22) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
1282
- path: _path + ".methods[" + _index22 + "]",
1473
+ })) && input.methods.map((elem, _index28) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
1474
+ path: _path + ".methods[" + _index28 + "]",
1283
1475
  expected: "(\"CONNECT\" | \"DELETE\" | \"GET\" | \"HEAD\" | \"OPTIONS\" | \"PATCH\" | \"POST\" | \"PUT\" | \"TRACE\")",
1284
1476
  value: elem
1285
1477
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1294,15 +1486,15 @@ describe('BootstrapSyncMetadata - type validations', () => {
1294
1486
  path: _path + ".operations",
1295
1487
  expected: "Array<string>",
1296
1488
  value: input.operations
1297
- })) && input.operations.map((elem, _index23) => "string" === typeof elem || _report(_exceptionable, {
1298
- path: _path + ".operations[" + _index23 + "]",
1489
+ })) && input.operations.map((elem, _index29) => "string" === typeof elem || _report(_exceptionable, {
1490
+ path: _path + ".operations[" + _index29 + "]",
1299
1491
  expected: "string",
1300
1492
  value: elem
1301
1493
  })).every(flag => flag) || _report(_exceptionable, {
1302
1494
  path: _path + ".operations",
1303
1495
  expected: "Array<string>",
1304
1496
  value: input.operations
1305
- })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
1497
+ })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
1306
1498
  path: _path + ".name",
1307
1499
  expected: "string",
1308
1500
  value: input.name
@@ -1318,7 +1510,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1318
1510
  path: _path + ".allowedByDefault",
1319
1511
  expected: "(boolean | undefined)",
1320
1512
  value: input.allowedByDefault
1321
- })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
1513
+ })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
1322
1514
  path: _path + ".applicationName",
1323
1515
  expected: "(string | undefined)",
1324
1516
  value: input.applicationName
@@ -1330,12 +1522,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1330
1522
  path: _path + ".description",
1331
1523
  expected: "(string | undefined)",
1332
1524
  value: input.description
1333
- })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
1525
+ })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
1334
1526
  path: _path + ".roles",
1335
1527
  expected: "(Array<string> | undefined)",
1336
1528
  value: input.roles
1337
- })) && input.roles.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
1338
- path: _path + ".roles[" + _index24 + "]",
1529
+ })) && input.roles.map((elem, _index30) => "string" === typeof elem || _report(_exceptionable, {
1530
+ path: _path + ".roles[" + _index30 + "]",
1339
1531
  expected: "string",
1340
1532
  value: elem
1341
1533
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1354,7 +1546,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1354
1546
  path: _path + ".applicationName",
1355
1547
  expected: "(string | undefined)",
1356
1548
  value: input.applicationName
1357
- })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
1549
+ })].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
1358
1550
  path: _path + ".moduleName",
1359
1551
  expected: "string",
1360
1552
  value: input.moduleName
@@ -1362,11 +1554,11 @@ describe('BootstrapSyncMetadata - type validations', () => {
1362
1554
  path: _path + ".customProps",
1363
1555
  expected: "Record<string, any>",
1364
1556
  value: input.customProps
1365
- })) && _vo15(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1557
+ })) && _vo17(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1366
1558
  path: _path + ".customProps",
1367
1559
  expected: "Record<string, any>",
1368
1560
  value: input.customProps
1369
- })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1561
+ })].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1370
1562
  const value = input[key];
1371
1563
  if (undefined === value)
1372
1564
  return true;
@@ -1426,12 +1618,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1426
1618
  scopedTo: "any"
1427
1619
  },
1428
1620
  };
1429
- const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io11(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io12(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io14(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io4(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io5(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io6(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io8(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io9(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io4 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io5 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io6 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io7(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io7 = input => Object.keys(input).every(key => {
1621
+ const result = (() => { const _io0 = input => "object" === typeof input.syncConfig && null !== input.syncConfig && _io1(input.syncConfig) && (undefined === input.sharedLibraries || Array.isArray(input.sharedLibraries) && input.sharedLibraries.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && (undefined === input.featureFlags || Array.isArray(input.featureFlags) && input.featureFlags.every(elem => "object" === typeof elem && null !== elem && _io3(elem))) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every(elem => "object" === typeof elem && null !== elem && _io5(elem))) && (undefined === input.applicationsAuthz || Array.isArray(input.applicationsAuthz) && input.applicationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (undefined === input.rolesAuthz || Array.isArray(input.rolesAuthz) && input.rolesAuthz.every(elem => "object" === typeof elem && null !== elem && _io14(elem))) && (undefined === input.operationsAuthz || Array.isArray(input.operationsAuthz) && input.operationsAuthz.every(elem => "object" === typeof elem && null !== elem && _io15(elem))) && (undefined === input.modulesConfig || Array.isArray(input.modulesConfig) && input.modulesConfig.every(elem => "object" === typeof elem && null !== elem && _io16(elem))); const _io1 = input => "string" === typeof input.scopedTo; const _io2 = input => "string" === typeof input.name && "string" === typeof input.url && (undefined === input.description || "string" === typeof input.description); const _io3 = input => "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.enabled || "boolean" === typeof input.enabled) && (undefined === input.constraints || Array.isArray(input.constraints) && input.constraints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "string" === typeof input.contextName && "string" === typeof input.operator && (undefined === input.values || Array.isArray(input.values) && input.values.every(elem => "string" === typeof elem)); const _io5 = input => "string" === typeof input.name && "string" === typeof input.displayName && ("service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type) && "string" === typeof input.baseUrl && ("object" === typeof input.service && null !== input.service && _io6(input.service)) && (Array.isArray(input.dependsOn) && input.dependsOn.every(elem => "string" === typeof elem)) && (undefined === input.commonPaths || "object" === typeof input.commonPaths && null !== input.commonPaths && false === Array.isArray(input.commonPaths) && _io7(input.commonPaths)) && (undefined === input.ui || "object" === typeof input.ui && null !== input.ui && _io8(input.ui)) && (undefined === input.cloudFunction || "object" === typeof input.cloudFunction && null !== input.cloudFunction && _io10(input.cloudFunction)) && (undefined === input.authorization || "object" === typeof input.authorization && null !== input.authorization && false === Array.isArray(input.authorization) && _io11(input.authorization)) && (undefined === input.application || "string" === typeof input.application) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.isPublic || "boolean" === typeof input.isPublic) && (undefined === input.id || "number" === typeof input.id); const _io6 = input => "string" === typeof input.host && "number" === typeof input.port && (undefined === input.protocol || "string" === typeof input.protocol) && (undefined === input.includeBaseURL || "boolean" === typeof input.includeBaseURL); const _io7 = input => (undefined === input.apiDocs || "string" === typeof input.apiDocs) && (undefined === input.version || "string" === typeof input.version) && (undefined === input.health || "string" === typeof input.health) && (undefined === input.changelog || "string" === typeof input.changelog); const _io8 = input => "string" === typeof input.route && (null === input.mountAtSelector || undefined === input.mountAtSelector || "string" === typeof input.mountAtSelector) && "string" === typeof input.bundleFile && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io9(input.customProps)) && (undefined === input.shell || "boolean" === typeof input.shell) && (undefined === input.isPlatformCustomization || "boolean" === typeof input.isPlatformCustomization); const _io9 = input => Object.keys(input).every(key => {
1430
1622
  const value = input[key];
1431
1623
  if (undefined === value)
1432
1624
  return true;
1433
1625
  return true;
1434
- }); const _io8 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io9 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io10(elem))); const _io10 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io11 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io12 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io13 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io14 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io15(input.customProps)); const _io15 = input => Object.keys(input).every(key => {
1626
+ }); const _io10 = input => "aws" === input.provider && "boolean" === typeof input.requiresSignature; const _io11 = input => (undefined === input.operations || Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)) && (undefined === input.routes || Array.isArray(input.routes) && input.routes.every(elem => "object" === typeof elem && null !== elem && _io12(elem))); const _io12 = input => (undefined === input.methods || Array.isArray(input.methods) && input.methods.every(elem => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem)) && "string" === typeof input.pattern && (Array.isArray(input.operations) && input.operations.every(elem => "string" === typeof elem)); const _io13 = input => "string" === typeof input.name && (undefined === input.displayName || "string" === typeof input.displayName) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.allowedByDefault || "boolean" === typeof input.allowedByDefault); const _io14 = input => (undefined === input.applicationName || "string" === typeof input.applicationName) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description); const _io15 = input => (undefined === input.roles || Array.isArray(input.roles) && input.roles.every(elem => "string" === typeof elem)) && "string" === typeof input.name && (undefined === input.description || "string" === typeof input.description) && (undefined === input.applicationName || "string" === typeof input.applicationName); const _io16 = input => "string" === typeof input.moduleName && ("object" === typeof input.customProps && null !== input.customProps && false === Array.isArray(input.customProps) && _io17(input.customProps)); const _io17 = input => Object.keys(input).every(key => {
1435
1627
  const value = input[key];
1436
1628
  if (undefined === value)
1437
1629
  return true;
@@ -1448,28 +1640,44 @@ describe('BootstrapSyncMetadata - type validations', () => {
1448
1640
  path: _path + ".sharedLibraries",
1449
1641
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
1450
1642
  value: input.sharedLibraries
1451
- })) && input.sharedLibraries.map((elem, _index13) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1452
- path: _path + ".sharedLibraries[" + _index13 + "]",
1643
+ })) && input.sharedLibraries.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1644
+ path: _path + ".sharedLibraries[" + _index16 + "]",
1453
1645
  expected: "CreateSharedLibraryDTO",
1454
1646
  value: elem
1455
- })) && _vo2(elem, _path + ".sharedLibraries[" + _index13 + "]", true && _exceptionable) || _report(_exceptionable, {
1456
- path: _path + ".sharedLibraries[" + _index13 + "]",
1647
+ })) && _vo2(elem, _path + ".sharedLibraries[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
1648
+ path: _path + ".sharedLibraries[" + _index16 + "]",
1457
1649
  expected: "CreateSharedLibraryDTO",
1458
1650
  value: elem
1459
1651
  })).every(flag => flag) || _report(_exceptionable, {
1460
1652
  path: _path + ".sharedLibraries",
1461
1653
  expected: "(Array<CreateSharedLibraryDTO> | undefined)",
1462
1654
  value: input.sharedLibraries
1655
+ }), undefined === input.featureFlags || (Array.isArray(input.featureFlags) || _report(_exceptionable, {
1656
+ path: _path + ".featureFlags",
1657
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
1658
+ value: input.featureFlags
1659
+ })) && input.featureFlags.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1660
+ path: _path + ".featureFlags[" + _index17 + "]",
1661
+ expected: "BootstrapFeatureFlag",
1662
+ value: elem
1663
+ })) && _vo3(elem, _path + ".featureFlags[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
1664
+ path: _path + ".featureFlags[" + _index17 + "]",
1665
+ expected: "BootstrapFeatureFlag",
1666
+ value: elem
1667
+ })).every(flag => flag) || _report(_exceptionable, {
1668
+ path: _path + ".featureFlags",
1669
+ expected: "(Array<BootstrapFeatureFlag> | undefined)",
1670
+ value: input.featureFlags
1463
1671
  }), undefined === input.catalog || (Array.isArray(input.catalog) || _report(_exceptionable, {
1464
1672
  path: _path + ".catalog",
1465
1673
  expected: "(Array<CreateOrUpdateModule> | undefined)",
1466
1674
  value: input.catalog
1467
- })) && input.catalog.map((elem, _index14) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1468
- path: _path + ".catalog[" + _index14 + "]",
1675
+ })) && input.catalog.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1676
+ path: _path + ".catalog[" + _index18 + "]",
1469
1677
  expected: "CreateOrUpdateModule",
1470
1678
  value: elem
1471
- })) && _vo3(elem, _path + ".catalog[" + _index14 + "]", true && _exceptionable) || _report(_exceptionable, {
1472
- path: _path + ".catalog[" + _index14 + "]",
1679
+ })) && _vo5(elem, _path + ".catalog[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
1680
+ path: _path + ".catalog[" + _index18 + "]",
1473
1681
  expected: "CreateOrUpdateModule",
1474
1682
  value: elem
1475
1683
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1480,12 +1688,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1480
1688
  path: _path + ".applicationsAuthz",
1481
1689
  expected: "(Array<CreateApplicationDTO> | undefined)",
1482
1690
  value: input.applicationsAuthz
1483
- })) && input.applicationsAuthz.map((elem, _index15) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1484
- path: _path + ".applicationsAuthz[" + _index15 + "]",
1691
+ })) && input.applicationsAuthz.map((elem, _index19) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1692
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
1485
1693
  expected: "CreateApplicationDTO",
1486
1694
  value: elem
1487
- })) && _vo11(elem, _path + ".applicationsAuthz[" + _index15 + "]", true && _exceptionable) || _report(_exceptionable, {
1488
- path: _path + ".applicationsAuthz[" + _index15 + "]",
1695
+ })) && _vo13(elem, _path + ".applicationsAuthz[" + _index19 + "]", true && _exceptionable) || _report(_exceptionable, {
1696
+ path: _path + ".applicationsAuthz[" + _index19 + "]",
1489
1697
  expected: "CreateApplicationDTO",
1490
1698
  value: elem
1491
1699
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1496,12 +1704,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1496
1704
  path: _path + ".rolesAuthz",
1497
1705
  expected: "(Array<CreateRoleDTO> | undefined)",
1498
1706
  value: input.rolesAuthz
1499
- })) && input.rolesAuthz.map((elem, _index16) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1500
- path: _path + ".rolesAuthz[" + _index16 + "]",
1707
+ })) && input.rolesAuthz.map((elem, _index20) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1708
+ path: _path + ".rolesAuthz[" + _index20 + "]",
1501
1709
  expected: "CreateRoleDTO",
1502
1710
  value: elem
1503
- })) && _vo12(elem, _path + ".rolesAuthz[" + _index16 + "]", true && _exceptionable) || _report(_exceptionable, {
1504
- path: _path + ".rolesAuthz[" + _index16 + "]",
1711
+ })) && _vo14(elem, _path + ".rolesAuthz[" + _index20 + "]", true && _exceptionable) || _report(_exceptionable, {
1712
+ path: _path + ".rolesAuthz[" + _index20 + "]",
1505
1713
  expected: "CreateRoleDTO",
1506
1714
  value: elem
1507
1715
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1512,12 +1720,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1512
1720
  path: _path + ".operationsAuthz",
1513
1721
  expected: "(Array<OperationAuthzBootstrap> | undefined)",
1514
1722
  value: input.operationsAuthz
1515
- })) && input.operationsAuthz.map((elem, _index17) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1516
- path: _path + ".operationsAuthz[" + _index17 + "]",
1723
+ })) && input.operationsAuthz.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1724
+ path: _path + ".operationsAuthz[" + _index21 + "]",
1517
1725
  expected: "OperationAuthzBootstrap",
1518
1726
  value: elem
1519
- })) && _vo13(elem, _path + ".operationsAuthz[" + _index17 + "]", true && _exceptionable) || _report(_exceptionable, {
1520
- path: _path + ".operationsAuthz[" + _index17 + "]",
1727
+ })) && _vo15(elem, _path + ".operationsAuthz[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
1728
+ path: _path + ".operationsAuthz[" + _index21 + "]",
1521
1729
  expected: "OperationAuthzBootstrap",
1522
1730
  value: elem
1523
1731
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1528,12 +1736,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1528
1736
  path: _path + ".modulesConfig",
1529
1737
  expected: "(Array<UpdateModuleUIConfigDTO> | undefined)",
1530
1738
  value: input.modulesConfig
1531
- })) && input.modulesConfig.map((elem, _index18) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1532
- path: _path + ".modulesConfig[" + _index18 + "]",
1739
+ })) && input.modulesConfig.map((elem, _index22) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1740
+ path: _path + ".modulesConfig[" + _index22 + "]",
1533
1741
  expected: "UpdateModuleUIConfigDTO",
1534
1742
  value: elem
1535
- })) && _vo14(elem, _path + ".modulesConfig[" + _index18 + "]", true && _exceptionable) || _report(_exceptionable, {
1536
- path: _path + ".modulesConfig[" + _index18 + "]",
1743
+ })) && _vo16(elem, _path + ".modulesConfig[" + _index22 + "]", true && _exceptionable) || _report(_exceptionable, {
1744
+ path: _path + ".modulesConfig[" + _index22 + "]",
1537
1745
  expected: "UpdateModuleUIConfigDTO",
1538
1746
  value: elem
1539
1747
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1560,13 +1768,61 @@ describe('BootstrapSyncMetadata - type validations', () => {
1560
1768
  path: _path + ".name",
1561
1769
  expected: "string",
1562
1770
  value: input.name
1771
+ }), undefined === input.description || "string" === typeof input.description || _report(_exceptionable, {
1772
+ path: _path + ".description",
1773
+ expected: "(string | undefined)",
1774
+ value: input.description
1775
+ }), undefined === input.enabled || "boolean" === typeof input.enabled || _report(_exceptionable, {
1776
+ path: _path + ".enabled",
1777
+ expected: "(boolean | undefined)",
1778
+ value: input.enabled
1779
+ }), undefined === input.constraints || (Array.isArray(input.constraints) || _report(_exceptionable, {
1780
+ path: _path + ".constraints",
1781
+ expected: "(Array<__type> | undefined)",
1782
+ value: input.constraints
1783
+ })) && input.constraints.map((elem, _index23) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1784
+ path: _path + ".constraints[" + _index23 + "]",
1785
+ expected: "__type.o1",
1786
+ value: elem
1787
+ })) && _vo4(elem, _path + ".constraints[" + _index23 + "]", true && _exceptionable) || _report(_exceptionable, {
1788
+ path: _path + ".constraints[" + _index23 + "]",
1789
+ expected: "__type.o1",
1790
+ value: elem
1791
+ })).every(flag => flag) || _report(_exceptionable, {
1792
+ path: _path + ".constraints",
1793
+ expected: "(Array<__type> | undefined)",
1794
+ value: input.constraints
1795
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.contextName || _report(_exceptionable, {
1796
+ path: _path + ".contextName",
1797
+ expected: "string",
1798
+ value: input.contextName
1799
+ }), "string" === typeof input.operator || _report(_exceptionable, {
1800
+ path: _path + ".operator",
1801
+ expected: "string",
1802
+ value: input.operator
1803
+ }), undefined === input.values || (Array.isArray(input.values) || _report(_exceptionable, {
1804
+ path: _path + ".values",
1805
+ expected: "(Array<string> | undefined)",
1806
+ value: input.values
1807
+ })) && input.values.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
1808
+ path: _path + ".values[" + _index24 + "]",
1809
+ expected: "string",
1810
+ value: elem
1811
+ })).every(flag => flag) || _report(_exceptionable, {
1812
+ path: _path + ".values",
1813
+ expected: "(Array<string> | undefined)",
1814
+ value: input.values
1815
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
1816
+ path: _path + ".name",
1817
+ expected: "string",
1818
+ value: input.name
1563
1819
  }), "string" === typeof input.displayName || _report(_exceptionable, {
1564
1820
  path: _path + ".displayName",
1565
1821
  expected: "string",
1566
1822
  value: input.displayName
1567
- }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || _report(_exceptionable, {
1823
+ }), "service" === input.type || "app" === input.type || "utility" === input.type || "cloud-function" === input.type || "documentation" === input.type || _report(_exceptionable, {
1568
1824
  path: _path + ".type",
1569
- expected: "(\"app\" | \"cloud-function\" | \"service\" | \"utility\")",
1825
+ expected: "(\"app\" | \"cloud-function\" | \"documentation\" | \"service\" | \"utility\")",
1570
1826
  value: input.type
1571
1827
  }), "string" === typeof input.baseUrl || _report(_exceptionable, {
1572
1828
  path: _path + ".baseUrl",
@@ -1576,7 +1832,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1576
1832
  path: _path + ".service",
1577
1833
  expected: "ServiceConfig",
1578
1834
  value: input.service
1579
- })) && _vo4(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
1835
+ })) && _vo6(input.service, _path + ".service", true && _exceptionable) || _report(_exceptionable, {
1580
1836
  path: _path + ".service",
1581
1837
  expected: "ServiceConfig",
1582
1838
  value: input.service
@@ -1584,8 +1840,8 @@ describe('BootstrapSyncMetadata - type validations', () => {
1584
1840
  path: _path + ".dependsOn",
1585
1841
  expected: "Array<string>",
1586
1842
  value: input.dependsOn
1587
- })) && input.dependsOn.map((elem, _index19) => "string" === typeof elem || _report(_exceptionable, {
1588
- path: _path + ".dependsOn[" + _index19 + "]",
1843
+ })) && input.dependsOn.map((elem, _index25) => "string" === typeof elem || _report(_exceptionable, {
1844
+ path: _path + ".dependsOn[" + _index25 + "]",
1589
1845
  expected: "string",
1590
1846
  value: elem
1591
1847
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1596,7 +1852,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1596
1852
  path: _path + ".commonPaths",
1597
1853
  expected: "(CommonPathsMetadata | undefined)",
1598
1854
  value: input.commonPaths
1599
- })) && _vo5(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
1855
+ })) && _vo7(input.commonPaths, _path + ".commonPaths", true && _exceptionable) || _report(_exceptionable, {
1600
1856
  path: _path + ".commonPaths",
1601
1857
  expected: "(CommonPathsMetadata | undefined)",
1602
1858
  value: input.commonPaths
@@ -1604,7 +1860,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1604
1860
  path: _path + ".ui",
1605
1861
  expected: "(UIConfig | undefined)",
1606
1862
  value: input.ui
1607
- })) && _vo6(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
1863
+ })) && _vo8(input.ui, _path + ".ui", true && _exceptionable) || _report(_exceptionable, {
1608
1864
  path: _path + ".ui",
1609
1865
  expected: "(UIConfig | undefined)",
1610
1866
  value: input.ui
@@ -1612,7 +1868,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1612
1868
  path: _path + ".cloudFunction",
1613
1869
  expected: "(CloudFunctionConfig | undefined)",
1614
1870
  value: input.cloudFunction
1615
- })) && _vo8(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
1871
+ })) && _vo10(input.cloudFunction, _path + ".cloudFunction", true && _exceptionable) || _report(_exceptionable, {
1616
1872
  path: _path + ".cloudFunction",
1617
1873
  expected: "(CloudFunctionConfig | undefined)",
1618
1874
  value: input.cloudFunction
@@ -1620,7 +1876,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1620
1876
  path: _path + ".authorization",
1621
1877
  expected: "(AuthorizationMetadata | undefined)",
1622
1878
  value: input.authorization
1623
- })) && _vo9(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
1879
+ })) && _vo11(input.authorization, _path + ".authorization", true && _exceptionable) || _report(_exceptionable, {
1624
1880
  path: _path + ".authorization",
1625
1881
  expected: "(AuthorizationMetadata | undefined)",
1626
1882
  value: input.authorization
@@ -1640,7 +1896,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1640
1896
  path: _path + ".id",
1641
1897
  expected: "(number | undefined)",
1642
1898
  value: input.id
1643
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
1899
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.host || _report(_exceptionable, {
1644
1900
  path: _path + ".host",
1645
1901
  expected: "string",
1646
1902
  value: input.host
@@ -1656,7 +1912,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1656
1912
  path: _path + ".includeBaseURL",
1657
1913
  expected: "(boolean | undefined)",
1658
1914
  value: input.includeBaseURL
1659
- })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
1915
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [undefined === input.apiDocs || "string" === typeof input.apiDocs || _report(_exceptionable, {
1660
1916
  path: _path + ".apiDocs",
1661
1917
  expected: "(string | undefined)",
1662
1918
  value: input.apiDocs
@@ -1672,7 +1928,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1672
1928
  path: _path + ".changelog",
1673
1929
  expected: "(string | undefined)",
1674
1930
  value: input.changelog
1675
- })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
1931
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["string" === typeof input.route || _report(_exceptionable, {
1676
1932
  path: _path + ".route",
1677
1933
  expected: "string",
1678
1934
  value: input.route
@@ -1688,7 +1944,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1688
1944
  path: _path + ".customProps",
1689
1945
  expected: "ModuleProps",
1690
1946
  value: input.customProps
1691
- })) && _vo7(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1947
+ })) && _vo9(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1692
1948
  path: _path + ".customProps",
1693
1949
  expected: "ModuleProps",
1694
1950
  value: input.customProps
@@ -1700,12 +1956,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1700
1956
  path: _path + ".isPlatformCustomization",
1701
1957
  expected: "(boolean | undefined)",
1702
1958
  value: input.isPlatformCustomization
1703
- })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1959
+ })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1704
1960
  const value = input[key];
1705
1961
  if (undefined === value)
1706
1962
  return true;
1707
1963
  return true;
1708
- }).every(flag => flag)].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
1964
+ }).every(flag => flag)].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => ["aws" === input.provider || _report(_exceptionable, {
1709
1965
  path: _path + ".provider",
1710
1966
  expected: "\"aws\"",
1711
1967
  value: input.provider
@@ -1713,12 +1969,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1713
1969
  path: _path + ".requiresSignature",
1714
1970
  expected: "boolean",
1715
1971
  value: input.requiresSignature
1716
- })].every(flag => flag); const _vo9 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
1972
+ })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => [undefined === input.operations || (Array.isArray(input.operations) || _report(_exceptionable, {
1717
1973
  path: _path + ".operations",
1718
1974
  expected: "(Array<string> | undefined)",
1719
1975
  value: input.operations
1720
- })) && input.operations.map((elem, _index20) => "string" === typeof elem || _report(_exceptionable, {
1721
- path: _path + ".operations[" + _index20 + "]",
1976
+ })) && input.operations.map((elem, _index26) => "string" === typeof elem || _report(_exceptionable, {
1977
+ path: _path + ".operations[" + _index26 + "]",
1722
1978
  expected: "string",
1723
1979
  value: elem
1724
1980
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1729,24 +1985,24 @@ describe('BootstrapSyncMetadata - type validations', () => {
1729
1985
  path: _path + ".routes",
1730
1986
  expected: "(Array<RouteAuthorization> | undefined)",
1731
1987
  value: input.routes
1732
- })) && input.routes.map((elem, _index21) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1733
- path: _path + ".routes[" + _index21 + "]",
1988
+ })) && input.routes.map((elem, _index27) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1989
+ path: _path + ".routes[" + _index27 + "]",
1734
1990
  expected: "RouteAuthorization",
1735
1991
  value: elem
1736
- })) && _vo10(elem, _path + ".routes[" + _index21 + "]", true && _exceptionable) || _report(_exceptionable, {
1737
- path: _path + ".routes[" + _index21 + "]",
1992
+ })) && _vo12(elem, _path + ".routes[" + _index27 + "]", true && _exceptionable) || _report(_exceptionable, {
1993
+ path: _path + ".routes[" + _index27 + "]",
1738
1994
  expected: "RouteAuthorization",
1739
1995
  value: elem
1740
1996
  })).every(flag => flag) || _report(_exceptionable, {
1741
1997
  path: _path + ".routes",
1742
1998
  expected: "(Array<RouteAuthorization> | undefined)",
1743
1999
  value: input.routes
1744
- })].every(flag => flag); const _vo10 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
2000
+ })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.methods || (Array.isArray(input.methods) || _report(_exceptionable, {
1745
2001
  path: _path + ".methods",
1746
2002
  expected: "(Array<HttpMethod> | undefined)",
1747
2003
  value: input.methods
1748
- })) && input.methods.map((elem, _index22) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
1749
- path: _path + ".methods[" + _index22 + "]",
2004
+ })) && input.methods.map((elem, _index28) => "GET" === elem || "POST" === elem || "PUT" === elem || "DELETE" === elem || "PATCH" === elem || "OPTIONS" === elem || "HEAD" === elem || "CONNECT" === elem || "TRACE" === elem || _report(_exceptionable, {
2005
+ path: _path + ".methods[" + _index28 + "]",
1750
2006
  expected: "(\"CONNECT\" | \"DELETE\" | \"GET\" | \"HEAD\" | \"OPTIONS\" | \"PATCH\" | \"POST\" | \"PUT\" | \"TRACE\")",
1751
2007
  value: elem
1752
2008
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1761,15 +2017,15 @@ describe('BootstrapSyncMetadata - type validations', () => {
1761
2017
  path: _path + ".operations",
1762
2018
  expected: "Array<string>",
1763
2019
  value: input.operations
1764
- })) && input.operations.map((elem, _index23) => "string" === typeof elem || _report(_exceptionable, {
1765
- path: _path + ".operations[" + _index23 + "]",
2020
+ })) && input.operations.map((elem, _index29) => "string" === typeof elem || _report(_exceptionable, {
2021
+ path: _path + ".operations[" + _index29 + "]",
1766
2022
  expected: "string",
1767
2023
  value: elem
1768
2024
  })).every(flag => flag) || _report(_exceptionable, {
1769
2025
  path: _path + ".operations",
1770
2026
  expected: "Array<string>",
1771
2027
  value: input.operations
1772
- })].every(flag => flag); const _vo11 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
2028
+ })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => ["string" === typeof input.name || _report(_exceptionable, {
1773
2029
  path: _path + ".name",
1774
2030
  expected: "string",
1775
2031
  value: input.name
@@ -1785,7 +2041,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1785
2041
  path: _path + ".allowedByDefault",
1786
2042
  expected: "(boolean | undefined)",
1787
2043
  value: input.allowedByDefault
1788
- })].every(flag => flag); const _vo12 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
2044
+ })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => [undefined === input.applicationName || "string" === typeof input.applicationName || _report(_exceptionable, {
1789
2045
  path: _path + ".applicationName",
1790
2046
  expected: "(string | undefined)",
1791
2047
  value: input.applicationName
@@ -1797,12 +2053,12 @@ describe('BootstrapSyncMetadata - type validations', () => {
1797
2053
  path: _path + ".description",
1798
2054
  expected: "(string | undefined)",
1799
2055
  value: input.description
1800
- })].every(flag => flag); const _vo13 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
2056
+ })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [undefined === input.roles || (Array.isArray(input.roles) || _report(_exceptionable, {
1801
2057
  path: _path + ".roles",
1802
2058
  expected: "(Array<string> | undefined)",
1803
2059
  value: input.roles
1804
- })) && input.roles.map((elem, _index24) => "string" === typeof elem || _report(_exceptionable, {
1805
- path: _path + ".roles[" + _index24 + "]",
2060
+ })) && input.roles.map((elem, _index30) => "string" === typeof elem || _report(_exceptionable, {
2061
+ path: _path + ".roles[" + _index30 + "]",
1806
2062
  expected: "string",
1807
2063
  value: elem
1808
2064
  })).every(flag => flag) || _report(_exceptionable, {
@@ -1821,7 +2077,7 @@ describe('BootstrapSyncMetadata - type validations', () => {
1821
2077
  path: _path + ".applicationName",
1822
2078
  expected: "(string | undefined)",
1823
2079
  value: input.applicationName
1824
- })].every(flag => flag); const _vo14 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
2080
+ })].every(flag => flag); const _vo16 = (input, _path, _exceptionable = true) => ["string" === typeof input.moduleName || _report(_exceptionable, {
1825
2081
  path: _path + ".moduleName",
1826
2082
  expected: "string",
1827
2083
  value: input.moduleName
@@ -1829,11 +2085,11 @@ describe('BootstrapSyncMetadata - type validations', () => {
1829
2085
  path: _path + ".customProps",
1830
2086
  expected: "Record<string, any>",
1831
2087
  value: input.customProps
1832
- })) && _vo15(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
2088
+ })) && _vo17(input.customProps, _path + ".customProps", true && _exceptionable) || _report(_exceptionable, {
1833
2089
  path: _path + ".customProps",
1834
2090
  expected: "Record<string, any>",
1835
2091
  value: input.customProps
1836
- })].every(flag => flag); const _vo15 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
2092
+ })].every(flag => flag); const _vo17 = (input, _path, _exceptionable = true) => [false === _exceptionable || Object.keys(input).map(key => {
1837
2093
  const value = input[key];
1838
2094
  if (undefined === value)
1839
2095
  return true;