oc 0.49.26 → 0.49.28

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 (247) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/cli/commands.d.ts +163 -163
  3. package/dist/cli/commands.js +162 -162
  4. package/dist/cli/domain/clean.d.ts +2 -2
  5. package/dist/cli/domain/clean.js +24 -24
  6. package/dist/cli/domain/get-components-by-dir.d.ts +1 -1
  7. package/dist/cli/domain/get-components-by-dir.js +41 -41
  8. package/dist/cli/domain/get-mocked-plugins.d.ts +10 -10
  9. package/dist/cli/domain/get-mocked-plugins.js +88 -88
  10. package/dist/cli/domain/handle-dependencies/ensure-compiler-is-declared-as-devDependency.d.ts +6 -6
  11. package/dist/cli/domain/handle-dependencies/ensure-compiler-is-declared-as-devDependency.js +15 -15
  12. package/dist/cli/domain/handle-dependencies/get-compiler.d.ts +10 -10
  13. package/dist/cli/domain/handle-dependencies/get-compiler.js +28 -28
  14. package/dist/cli/domain/handle-dependencies/get-missing-dependencies.d.ts +1 -1
  15. package/dist/cli/domain/handle-dependencies/get-missing-dependencies.js +18 -18
  16. package/dist/cli/domain/handle-dependencies/index.d.ts +10 -10
  17. package/dist/cli/domain/handle-dependencies/index.js +70 -70
  18. package/dist/cli/domain/handle-dependencies/install-compiler.d.ts +8 -8
  19. package/dist/cli/domain/handle-dependencies/install-compiler.js +58 -58
  20. package/dist/cli/domain/handle-dependencies/install-missing-dependencies.d.ts +5 -5
  21. package/dist/cli/domain/handle-dependencies/install-missing-dependencies.js +63 -63
  22. package/dist/cli/domain/handle-dependencies/link-missing-dependencies.d.ts +6 -6
  23. package/dist/cli/domain/handle-dependencies/link-missing-dependencies.js +32 -32
  24. package/dist/cli/domain/handle-dependencies/require-template.d.ts +17 -17
  25. package/dist/cli/domain/handle-dependencies/require-template.js +34 -34
  26. package/dist/cli/domain/init-template/index.d.ts +10 -10
  27. package/dist/cli/domain/init-template/index.js +44 -44
  28. package/dist/cli/domain/init-template/install-template.d.ts +11 -11
  29. package/dist/cli/domain/init-template/install-template.js +58 -58
  30. package/dist/cli/domain/init-template/scaffold.d.ts +11 -11
  31. package/dist/cli/domain/init-template/scaffold.js +34 -34
  32. package/dist/cli/domain/local.d.ts +21 -21
  33. package/dist/cli/domain/local.js +86 -86
  34. package/dist/cli/domain/mock.d.ts +5 -5
  35. package/dist/cli/domain/mock.js +33 -33
  36. package/dist/cli/domain/package-components.d.ts +9 -9
  37. package/dist/cli/domain/package-components.js +71 -71
  38. package/dist/cli/domain/registry.d.ts +20 -20
  39. package/dist/cli/domain/registry.js +143 -143
  40. package/dist/cli/domain/url-parser.d.ts +14 -14
  41. package/dist/cli/domain/url-parser.js +31 -31
  42. package/dist/cli/domain/watch.d.ts +1 -1
  43. package/dist/cli/domain/watch.js +29 -29
  44. package/dist/cli/facade/clean.d.ts +16 -16
  45. package/dist/cli/facade/clean.js +58 -58
  46. package/dist/cli/facade/dev.d.ts +146 -114
  47. package/dist/cli/facade/dev.js +177 -177
  48. package/dist/cli/facade/init.d.ts +18 -18
  49. package/dist/cli/facade/init.js +39 -39
  50. package/dist/cli/facade/mock.d.ts +18 -18
  51. package/dist/cli/facade/mock.js +12 -12
  52. package/dist/cli/facade/package.d.ts +19 -19
  53. package/dist/cli/facade/package.js +49 -49
  54. package/dist/cli/facade/preview.d.ts +14 -14
  55. package/dist/cli/facade/preview.js +20 -20
  56. package/dist/cli/facade/publish.d.ts +24 -24
  57. package/dist/cli/facade/publish.js +145 -145
  58. package/dist/cli/facade/registry-add.d.ts +14 -14
  59. package/dist/cli/facade/registry-add.js +18 -18
  60. package/dist/cli/facade/registry-ls.d.ts +10 -10
  61. package/dist/cli/facade/registry-ls.js +27 -27
  62. package/dist/cli/facade/registry-remove.d.ts +14 -14
  63. package/dist/cli/facade/registry-remove.js +18 -18
  64. package/dist/cli/facade/registry.d.ts +5 -5
  65. package/dist/cli/facade/registry.js +9 -9
  66. package/dist/cli/index.d.ts +1 -1
  67. package/dist/cli/index.js +91 -91
  68. package/dist/cli/logger.d.ts +8 -8
  69. package/dist/cli/logger.js +19 -19
  70. package/dist/cli/programmatic-api.d.ts +84 -84
  71. package/dist/cli/programmatic-api.js +66 -66
  72. package/dist/cli/validate-command.d.ts +2 -2
  73. package/dist/cli/validate-command.js +18 -18
  74. package/dist/components/oc-client/_package/package.json +1 -1
  75. package/dist/components/oc-client/_package/server.js +1 -1
  76. package/dist/components/oc-client/_package/src/oc-client.min.js +2 -2
  77. package/dist/components/oc-client/_package/src/oc-client.min.map +1 -1
  78. package/dist/components/oc-client/_package/template.js +11 -1
  79. package/dist/components/oc-client/package.json +1 -1
  80. package/dist/components/oc-client/src/oc-client.min.js +2 -2
  81. package/dist/components/oc-client/src/oc-client.min.map +1 -1
  82. package/dist/index.d.ts +3 -3
  83. package/dist/index.js +12 -12
  84. package/dist/oc-cli.d.ts +2 -2
  85. package/dist/oc-cli.js +3 -3
  86. package/dist/registry/app-start.d.ts +3 -3
  87. package/dist/registry/app-start.js +44 -44
  88. package/dist/registry/domain/authentication.d.ts +7 -7
  89. package/dist/registry/domain/authentication.js +53 -53
  90. package/dist/registry/domain/components-cache/components-list.d.ts +8 -8
  91. package/dist/registry/domain/components-cache/components-list.js +73 -73
  92. package/dist/registry/domain/components-cache/index.d.ts +7 -7
  93. package/dist/registry/domain/components-cache/index.js +81 -81
  94. package/dist/registry/domain/components-details.d.ts +6 -6
  95. package/dist/registry/domain/components-details.js +63 -63
  96. package/dist/registry/domain/events-handler.d.ts +48 -40
  97. package/dist/registry/domain/events-handler.js +37 -37
  98. package/dist/registry/domain/extract-package.d.ts +8 -8
  99. package/dist/registry/domain/extract-package.js +30 -30
  100. package/dist/registry/domain/get-package-json-from-temp-dir.d.ts +2 -2
  101. package/dist/registry/domain/get-package-json-from-temp-dir.js +11 -11
  102. package/dist/registry/domain/nested-renderer.d.ts +14 -14
  103. package/dist/registry/domain/nested-renderer.js +59 -59
  104. package/dist/registry/domain/options-sanitiser.d.ts +6 -6
  105. package/dist/registry/domain/options-sanitiser.js +113 -113
  106. package/dist/registry/domain/plugins-initialiser.d.ts +3 -3
  107. package/dist/registry/domain/plugins-initialiser.js +95 -95
  108. package/dist/registry/domain/register-templates.d.ts +5 -5
  109. package/dist/registry/domain/register-templates.js +37 -37
  110. package/dist/registry/domain/repository.d.ts +26 -26
  111. package/dist/registry/domain/repository.js +255 -255
  112. package/dist/registry/domain/require-wrapper.d.ts +2 -2
  113. package/dist/registry/domain/require-wrapper.js +33 -33
  114. package/dist/registry/domain/sanitiser.d.ts +2 -2
  115. package/dist/registry/domain/sanitiser.js +52 -52
  116. package/dist/registry/domain/storage-adapter.d.ts +10 -10
  117. package/dist/registry/domain/storage-adapter.js +55 -55
  118. package/dist/registry/domain/url-builder.d.ts +10 -10
  119. package/dist/registry/domain/url-builder.js +60 -60
  120. package/dist/registry/domain/validators/component-parameters.d.ts +11 -11
  121. package/dist/registry/domain/validators/component-parameters.js +79 -79
  122. package/dist/registry/domain/validators/index.d.ts +16 -16
  123. package/dist/registry/domain/validators/index.js +29 -29
  124. package/dist/registry/domain/validators/node-version.d.ts +15 -15
  125. package/dist/registry/domain/validators/node-version.js +40 -40
  126. package/dist/registry/domain/validators/oc-cli-version.d.ts +15 -15
  127. package/dist/registry/domain/validators/oc-cli-version.js +34 -34
  128. package/dist/registry/domain/validators/package-json-validator.d.ts +13 -13
  129. package/dist/registry/domain/validators/package-json-validator.js +23 -23
  130. package/dist/registry/domain/validators/plugins-requirements.d.ts +9 -9
  131. package/dist/registry/domain/validators/plugins-requirements.js +22 -22
  132. package/dist/registry/domain/validators/registry-configuration.d.ts +9 -9
  133. package/dist/registry/domain/validators/registry-configuration.js +117 -117
  134. package/dist/registry/domain/validators/uploaded-package.d.ts +14 -14
  135. package/dist/registry/domain/validators/uploaded-package.js +25 -25
  136. package/dist/registry/domain/version-handler.d.ts +2 -2
  137. package/dist/registry/domain/version-handler.js +22 -22
  138. package/dist/registry/index.d.ts +64 -48
  139. package/dist/registry/index.js +109 -109
  140. package/dist/registry/middleware/base-url-handler.d.ts +2 -2
  141. package/dist/registry/middleware/base-url-handler.js +12 -12
  142. package/dist/registry/middleware/cors.d.ts +2 -2
  143. package/dist/registry/middleware/cors.js +11 -11
  144. package/dist/registry/middleware/discovery-handler.d.ts +2 -2
  145. package/dist/registry/middleware/discovery-handler.js +15 -15
  146. package/dist/registry/middleware/file-uploads.d.ts +2 -2
  147. package/dist/registry/middleware/file-uploads.js +23 -23
  148. package/dist/registry/middleware/index.d.ts +3 -3
  149. package/dist/registry/middleware/index.js +48 -48
  150. package/dist/registry/middleware/request-handler.d.ts +2 -2
  151. package/dist/registry/middleware/request-handler.js +30 -30
  152. package/dist/registry/router.d.ts +4 -4
  153. package/dist/registry/router.js +56 -56
  154. package/dist/registry/routes/component-info.d.ts +4 -4
  155. package/dist/registry/routes/component-info.js +95 -94
  156. package/dist/registry/routes/component-preview.d.ts +4 -4
  157. package/dist/registry/routes/component-preview.js +72 -72
  158. package/dist/registry/routes/component.d.ts +4 -4
  159. package/dist/registry/routes/component.js +43 -43
  160. package/dist/registry/routes/components.d.ts +4 -4
  161. package/dist/registry/routes/components.js +78 -78
  162. package/dist/registry/routes/dependencies.d.ts +3 -3
  163. package/dist/registry/routes/dependencies.js +28 -28
  164. package/dist/registry/routes/helpers/apply-default-values.d.ts +2 -2
  165. package/dist/registry/routes/helpers/apply-default-values.js +13 -13
  166. package/dist/registry/routes/helpers/get-available-dependencies.d.ts +8 -8
  167. package/dist/registry/routes/helpers/get-available-dependencies.js +23 -23
  168. package/dist/registry/routes/helpers/get-component-fallback.d.ts +17 -17
  169. package/dist/registry/routes/helpers/get-component-fallback.js +95 -95
  170. package/dist/registry/routes/helpers/get-component-retrieving-info.d.ts +20 -20
  171. package/dist/registry/routes/helpers/get-component-retrieving-info.js +24 -24
  172. package/dist/registry/routes/helpers/get-component.d.ts +34 -34
  173. package/dist/registry/routes/helpers/get-component.js +445 -435
  174. package/dist/registry/routes/helpers/get-components-history.d.ts +8 -8
  175. package/dist/registry/routes/helpers/get-components-history.js +28 -28
  176. package/dist/registry/routes/helpers/is-url-discoverable.d.ts +3 -3
  177. package/dist/registry/routes/helpers/is-url-discoverable.js +21 -21
  178. package/dist/registry/routes/index.d.ts +3 -3
  179. package/dist/registry/routes/index.js +93 -93
  180. package/dist/registry/routes/plugins.d.ts +3 -3
  181. package/dist/registry/routes/plugins.js +17 -17
  182. package/dist/registry/routes/publish.d.ts +3 -3
  183. package/dist/registry/routes/publish.js +101 -101
  184. package/dist/registry/routes/static-redirector.d.ts +3 -3
  185. package/dist/registry/routes/static-redirector.js +86 -86
  186. package/dist/registry/views/index.d.ts +2 -2
  187. package/dist/registry/views/index.js +39 -39
  188. package/dist/registry/views/info.d.ts +16 -16
  189. package/dist/registry/views/info.js +39 -39
  190. package/dist/registry/views/partials/component-author.d.ts +8 -8
  191. package/dist/registry/views/partials/component-author.js +20 -20
  192. package/dist/registry/views/partials/component-parameters.d.ts +5 -5
  193. package/dist/registry/views/partials/component-parameters.js +24 -24
  194. package/dist/registry/views/partials/component-state.d.ts +5 -5
  195. package/dist/registry/views/partials/component-state.js +6 -6
  196. package/dist/registry/views/partials/component-versions.d.ts +5 -5
  197. package/dist/registry/views/partials/component-versions.js +9 -9
  198. package/dist/registry/views/partials/components-dependencies.d.ts +2 -2
  199. package/dist/registry/views/partials/components-dependencies.js +12 -12
  200. package/dist/registry/views/partials/components-history.d.ts +2 -2
  201. package/dist/registry/views/partials/components-history.js +10 -10
  202. package/dist/registry/views/partials/components-list.d.ts +2 -2
  203. package/dist/registry/views/partials/components-list.js +26 -26
  204. package/dist/registry/views/partials/components-plugins.d.ts +2 -2
  205. package/dist/registry/views/partials/components-plugins.js +8 -8
  206. package/dist/registry/views/partials/components-templates.d.ts +2 -2
  207. package/dist/registry/views/partials/components-templates.js +14 -14
  208. package/dist/registry/views/partials/layout.d.ts +8 -8
  209. package/dist/registry/views/partials/layout.js +11 -11
  210. package/dist/registry/views/partials/property.d.ts +2 -2
  211. package/dist/registry/views/partials/property.js +11 -11
  212. package/dist/registry/views/partials/selected-checkbox.d.ts +4 -4
  213. package/dist/registry/views/partials/selected-checkbox.js +7 -7
  214. package/dist/registry/views/preview.d.ts +8 -8
  215. package/dist/registry/views/preview.js +9 -9
  216. package/dist/registry/views/static/index.d.ts +2 -2
  217. package/dist/registry/views/static/index.js +3 -3
  218. package/dist/registry/views/static/info.d.ts +2 -2
  219. package/dist/registry/views/static/info.js +3 -3
  220. package/dist/registry/views/static/style.d.ts +2 -2
  221. package/dist/registry/views/static/style.js +3 -3
  222. package/dist/resources/index.d.ts +134 -134
  223. package/dist/resources/index.js +145 -145
  224. package/dist/resources/settings.d.ts +17 -17
  225. package/dist/resources/settings.js +18 -18
  226. package/dist/types.d.ts +231 -231
  227. package/dist/types.js +2 -2
  228. package/dist/utils/clean-require.d.ts +16 -16
  229. package/dist/utils/clean-require.js +18 -18
  230. package/dist/utils/date-stringify.d.ts +1 -1
  231. package/dist/utils/date-stringify.js +22 -22
  232. package/dist/utils/error-to-string.d.ts +1 -1
  233. package/dist/utils/error-to-string.js +15 -15
  234. package/dist/utils/is-template-legacy.d.ts +3 -3
  235. package/dist/utils/is-template-legacy.js +6 -6
  236. package/dist/utils/is-template-valid.d.ts +4 -4
  237. package/dist/utils/is-template-valid.js +12 -12
  238. package/dist/utils/module-exists.d.ts +1 -1
  239. package/dist/utils/module-exists.js +15 -15
  240. package/dist/utils/npm-utils.d.ts +20 -20
  241. package/dist/utils/npm-utils.js +74 -74
  242. package/dist/utils/put.d.ts +2 -2
  243. package/dist/utils/put.js +29 -29
  244. package/dist/utils/strip-version.d.ts +1 -1
  245. package/dist/utils/strip-version.js +11 -11
  246. package/logintervals.md +1 -1
  247. package/package.json +20 -20
@@ -1,117 +1,117 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const auth = __importStar(require("../authentication"));
30
- const resources_1 = __importDefault(require("../../../resources"));
31
- function registryConfiguration(conf) {
32
- const returnError = (message) => {
33
- return {
34
- isValid: false,
35
- message: message || 'registry configuration is not valid'
36
- };
37
- };
38
- if (!conf || Object.keys(conf).length === 0) {
39
- return returnError(resources_1.default.errors.registry.CONFIGURATION_EMPTY);
40
- }
41
- const prefix = conf.prefix;
42
- if (prefix) {
43
- if (prefix.substr(0, 1) !== '/') {
44
- return returnError(resources_1.default.errors.registry.CONFIGURATION_PREFIX_DOES_NOT_START_WITH_SLASH);
45
- }
46
- if (prefix.substr(prefix.length - 1) !== '/') {
47
- return returnError(resources_1.default.errors.registry.CONFIGURATION_PREFIX_DOES_NOT_END_WITH_SLASH);
48
- }
49
- }
50
- const publishAuth = conf.publishAuth;
51
- if (publishAuth) {
52
- const res = auth.validate(publishAuth);
53
- if (!res.isValid) {
54
- return returnError(res.message);
55
- }
56
- }
57
- const dependencies = conf.dependencies;
58
- if (!!dependencies && !Array.isArray(dependencies)) {
59
- return returnError(resources_1.default.errors.registry.CONFIGURATION_DEPENDENCIES_MUST_BE_ARRAY);
60
- }
61
- const routes = conf.routes;
62
- if (!!routes && !Array.isArray(routes)) {
63
- return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_MUST_BE_ARRAY);
64
- }
65
- else {
66
- for (const route of routes || []) {
67
- if (!route.route || !route.handler || !route.method) {
68
- return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_NOT_VALID);
69
- }
70
- if (typeof route.handler !== 'function') {
71
- return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_HANDLER_MUST_BE_FUNCTION);
72
- }
73
- if (route.route.indexOf(prefix || '') === 0) {
74
- return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_ROUTE_CONTAINS_PREFIX(prefix || ''));
75
- }
76
- }
77
- }
78
- if (!conf.local && !conf.storage) {
79
- // S3 settings should either specify both key/secret or
80
- // skip both when leveraging IAM Role based S3 access from EC2
81
- if (!conf.s3 ||
82
- !conf.s3.bucket ||
83
- !conf.s3.region ||
84
- (conf.s3.key && !conf.s3.secret) ||
85
- (!conf.s3.key && conf.s3.secret)) {
86
- return returnError(resources_1.default.errors.registry.CONFIGURATION_STORAGE_NOT_VALID('S3'));
87
- }
88
- }
89
- if (!conf.local && conf.storage) {
90
- if (!conf.storage.adapter) {
91
- //required since this is done before the options-sanitiser
92
- conf.storage.adapter = require('oc-s3-storage-adapter');
93
- }
94
- const cdn = conf.storage.adapter(conf.storage.options);
95
- if (cdn.adapterType === 's3') {
96
- if (!conf.storage.options['bucket'] ||
97
- !conf.storage.options['region'] ||
98
- (conf.storage.options['key'] && !conf.storage.options['secret']) ||
99
- (!conf.storage.options['key'] && conf.storage.options['secret'])) {
100
- return returnError(resources_1.default.errors.registry.CONFIGURATION_STORAGE_NOT_VALID(cdn.adapterType.toUpperCase()));
101
- }
102
- }
103
- }
104
- if (conf.customHeadersToSkipOnWeakVersion) {
105
- if (!Array.isArray(conf.customHeadersToSkipOnWeakVersion)) {
106
- return returnError(resources_1.default.errors.registry
107
- .CONFIGURATION_HEADERS_TO_SKIP_MUST_BE_STRING_ARRAY);
108
- }
109
- const hasNonStringElements = conf.customHeadersToSkipOnWeakVersion.find(element => typeof element !== 'string');
110
- if (hasNonStringElements) {
111
- return returnError(resources_1.default.errors.registry
112
- .CONFIGURATION_HEADERS_TO_SKIP_MUST_BE_STRING_ARRAY);
113
- }
114
- }
115
- return { isValid: true };
116
- }
117
- exports.default = registryConfiguration;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ const auth = __importStar(require("../authentication"));
30
+ const resources_1 = __importDefault(require("../../../resources"));
31
+ function registryConfiguration(conf) {
32
+ const returnError = (message) => {
33
+ return {
34
+ isValid: false,
35
+ message: message || 'registry configuration is not valid'
36
+ };
37
+ };
38
+ if (!conf || Object.keys(conf).length === 0) {
39
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_EMPTY);
40
+ }
41
+ const prefix = conf.prefix;
42
+ if (prefix) {
43
+ if (prefix.substr(0, 1) !== '/') {
44
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_PREFIX_DOES_NOT_START_WITH_SLASH);
45
+ }
46
+ if (prefix.substr(prefix.length - 1) !== '/') {
47
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_PREFIX_DOES_NOT_END_WITH_SLASH);
48
+ }
49
+ }
50
+ const publishAuth = conf.publishAuth;
51
+ if (publishAuth) {
52
+ const res = auth.validate(publishAuth);
53
+ if (!res.isValid) {
54
+ return returnError(res.message);
55
+ }
56
+ }
57
+ const dependencies = conf.dependencies;
58
+ if (!!dependencies && !Array.isArray(dependencies)) {
59
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_DEPENDENCIES_MUST_BE_ARRAY);
60
+ }
61
+ const routes = conf.routes;
62
+ if (!!routes && !Array.isArray(routes)) {
63
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_MUST_BE_ARRAY);
64
+ }
65
+ else {
66
+ for (const route of routes || []) {
67
+ if (!route.route || !route.handler || !route.method) {
68
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_NOT_VALID);
69
+ }
70
+ if (typeof route.handler !== 'function') {
71
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_HANDLER_MUST_BE_FUNCTION);
72
+ }
73
+ if (route.route.indexOf(prefix || '') === 0) {
74
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_ROUTES_ROUTE_CONTAINS_PREFIX(prefix || ''));
75
+ }
76
+ }
77
+ }
78
+ if (!conf.local && !conf.storage) {
79
+ // S3 settings should either specify both key/secret or
80
+ // skip both when leveraging IAM Role based S3 access from EC2
81
+ if (!conf.s3 ||
82
+ !conf.s3.bucket ||
83
+ !conf.s3.region ||
84
+ (conf.s3.key && !conf.s3.secret) ||
85
+ (!conf.s3.key && conf.s3.secret)) {
86
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_STORAGE_NOT_VALID('S3'));
87
+ }
88
+ }
89
+ if (!conf.local && conf.storage) {
90
+ if (!conf.storage.adapter) {
91
+ //required since this is done before the options-sanitiser
92
+ conf.storage.adapter = require('oc-s3-storage-adapter');
93
+ }
94
+ const cdn = conf.storage.adapter(conf.storage.options);
95
+ if (cdn.adapterType === 's3') {
96
+ if (!conf.storage.options['bucket'] ||
97
+ !conf.storage.options['region'] ||
98
+ (conf.storage.options['key'] && !conf.storage.options['secret']) ||
99
+ (!conf.storage.options['key'] && conf.storage.options['secret'])) {
100
+ return returnError(resources_1.default.errors.registry.CONFIGURATION_STORAGE_NOT_VALID(cdn.adapterType.toUpperCase()));
101
+ }
102
+ }
103
+ }
104
+ if (conf.customHeadersToSkipOnWeakVersion) {
105
+ if (!Array.isArray(conf.customHeadersToSkipOnWeakVersion)) {
106
+ return returnError(resources_1.default.errors.registry
107
+ .CONFIGURATION_HEADERS_TO_SKIP_MUST_BE_STRING_ARRAY);
108
+ }
109
+ const hasNonStringElements = conf.customHeadersToSkipOnWeakVersion.find(element => typeof element !== 'string');
110
+ if (hasNonStringElements) {
111
+ return returnError(resources_1.default.errors.registry
112
+ .CONFIGURATION_HEADERS_TO_SKIP_MUST_BE_STRING_ARRAY);
113
+ }
114
+ }
115
+ return { isValid: true };
116
+ }
117
+ exports.default = registryConfiguration;
@@ -1,14 +1,14 @@
1
- /// <reference types="multer" />
2
- type ValidationResponse = {
3
- isValid: true;
4
- files: Express.Multer.File[] | {
5
- [fieldname: string]: Express.Multer.File[];
6
- };
7
- } | {
8
- isValid: false;
9
- message: string;
10
- };
11
- export default function uploadedPackage(input?: Express.Multer.File[] | {
12
- [fieldname: string]: Express.Multer.File[];
13
- }): ValidationResponse;
14
- export {};
1
+ /// <reference types="multer" />
2
+ type ValidationResponse = {
3
+ isValid: true;
4
+ files: Express.Multer.File[] | {
5
+ [fieldname: string]: Express.Multer.File[];
6
+ };
7
+ } | {
8
+ isValid: false;
9
+ message: string;
10
+ };
11
+ export default function uploadedPackage(input?: Express.Multer.File[] | {
12
+ [fieldname: string]: Express.Multer.File[];
13
+ }): ValidationResponse;
14
+ export {};
@@ -1,25 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function uploadedPackage(input) {
4
- const returnError = function (message) {
5
- return {
6
- isValid: false,
7
- message: message || 'uploaded package is not valid'
8
- };
9
- };
10
- if (!input || typeof input !== 'object' || Object.keys(input).length === 0) {
11
- return returnError('empty');
12
- }
13
- if (Object.keys(input).length !== 1) {
14
- return returnError('not_valid');
15
- }
16
- const file = input[0];
17
- const validTypes = ['application/gzip', 'application/octet-stream'];
18
- if (!validTypes.includes(file.mimetype) ||
19
- file.truncated ||
20
- file.filename.indexOf('.tar.gz') < 0) {
21
- return returnError('not_valid');
22
- }
23
- return { isValid: true, files: input };
24
- }
25
- exports.default = uploadedPackage;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function uploadedPackage(input) {
4
+ const returnError = function (message) {
5
+ return {
6
+ isValid: false,
7
+ message: message || 'uploaded package is not valid'
8
+ };
9
+ };
10
+ if (!input || typeof input !== 'object' || Object.keys(input).length === 0) {
11
+ return returnError('empty');
12
+ }
13
+ if (Object.keys(input).length !== 1) {
14
+ return returnError('not_valid');
15
+ }
16
+ const file = input[0];
17
+ const validTypes = ['application/gzip', 'application/octet-stream'];
18
+ if (!validTypes.includes(file.mimetype) ||
19
+ file.truncated ||
20
+ file.filename.indexOf('.tar.gz') < 0) {
21
+ return returnError('not_valid');
22
+ }
23
+ return { isValid: true, files: input };
24
+ }
25
+ exports.default = uploadedPackage;
@@ -1,2 +1,2 @@
1
- export declare function getAvailableVersion(requestedVersion: string | undefined, availableVersions: string[]): string | undefined;
2
- export declare function validateNewVersion(requestedVersion: string, availableVersions: string[]): boolean;
1
+ export declare function getAvailableVersion(requestedVersion: string | undefined, availableVersions: string[]): string | undefined;
2
+ export declare function validateNewVersion(requestedVersion: string, availableVersions: string[]): boolean;
@@ -1,22 +1,22 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.validateNewVersion = exports.getAvailableVersion = void 0;
7
- const semver_1 = __importDefault(require("semver"));
8
- const semver_extra_1 = __importDefault(require("semver-extra"));
9
- function getAvailableVersion(requestedVersion, availableVersions) {
10
- if (typeof requestedVersion === 'undefined') {
11
- requestedVersion = '';
12
- }
13
- const version = semver_1.default.maxSatisfying(availableVersions, requestedVersion) || undefined;
14
- const max = semver_extra_1.default.max(availableVersions);
15
- const isLatest = requestedVersion === '';
16
- return version || (isLatest && max) || undefined;
17
- }
18
- exports.getAvailableVersion = getAvailableVersion;
19
- function validateNewVersion(requestedVersion, availableVersions) {
20
- return !availableVersions.includes(requestedVersion);
21
- }
22
- exports.validateNewVersion = validateNewVersion;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.validateNewVersion = exports.getAvailableVersion = void 0;
7
+ const semver_1 = __importDefault(require("semver"));
8
+ const semver_extra_1 = __importDefault(require("semver-extra"));
9
+ function getAvailableVersion(requestedVersion, availableVersions) {
10
+ if (typeof requestedVersion === 'undefined') {
11
+ requestedVersion = '';
12
+ }
13
+ const version = semver_1.default.maxSatisfying(availableVersions, requestedVersion) || undefined;
14
+ const max = semver_extra_1.default.max(availableVersions);
15
+ const isLatest = requestedVersion === '';
16
+ return version || (isLatest && max) || undefined;
17
+ }
18
+ exports.getAvailableVersion = getAvailableVersion;
19
+ function validateNewVersion(requestedVersion, availableVersions) {
20
+ return !availableVersions.includes(requestedVersion);
21
+ }
22
+ exports.validateNewVersion = validateNewVersion;
@@ -1,48 +1,64 @@
1
- /// <reference types="node" />
2
- import express from 'express';
3
- import http from 'http';
4
- import { Config, Plugin } from '../types';
5
- interface Input extends Partial<Omit<Config, 'beforePublish'>> {
6
- baseUrl: string;
7
- }
8
- export default function registry(inputOptions: Input): {
9
- close: (callback: (err?: Error | undefined | string) => void) => void | http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>;
10
- on: <T extends keyof {
11
- error: {
12
- code: string;
13
- message: string;
14
- };
15
- start: unknown;
16
- 'cache-poll': number;
17
- request: import("./domain/events-handler").RequestData;
18
- 'component-retrieved': {
19
- headers: http.IncomingHttpHeaders;
20
- name: string;
21
- parameters: http.IncomingHttpHeaders;
22
- requestVersion: string;
23
- duration: number;
24
- };
25
- }>(eventName: T, listener: (data: {
26
- error: {
27
- code: string;
28
- message: string;
29
- };
30
- start: unknown;
31
- 'cache-poll': number;
32
- request: import("./domain/events-handler").RequestData;
33
- 'component-retrieved': {
34
- headers: http.IncomingHttpHeaders;
35
- name: string;
36
- parameters: http.IncomingHttpHeaders;
37
- requestVersion: string;
38
- duration: number;
39
- };
40
- }[T]) => void) => void;
41
- register: (plugin: Omit<Plugin, 'callback'>, callback?: ((...args: any[]) => void) | undefined) => void;
42
- start: (callback: (err: unknown, data?: {
43
- app: express.Express;
44
- server: http.Server;
45
- } | undefined) => void) => Promise<void>;
46
- app: express.Express;
47
- };
48
- export {};
1
+ /// <reference types="node" />
2
+ import express from 'express';
3
+ import http from 'http';
4
+ import { Config, Plugin } from '../types';
5
+ interface Input extends Partial<Omit<Config, 'beforePublish'>> {
6
+ baseUrl: string;
7
+ }
8
+ export default function registry(inputOptions: Input): {
9
+ close: (callback: (err?: Error | undefined | string) => void) => void | http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>;
10
+ on: <T extends keyof {
11
+ error: {
12
+ code: string;
13
+ message: string;
14
+ };
15
+ start: unknown;
16
+ 'cache-poll': number;
17
+ request: import("./domain/events-handler").RequestData;
18
+ 'component-retrieved': {
19
+ headers: http.IncomingHttpHeaders;
20
+ name: string;
21
+ parameters: http.IncomingHttpHeaders;
22
+ requestVersion: string;
23
+ duration: number;
24
+ };
25
+ 'data-provider-error': {
26
+ name: string;
27
+ version: string;
28
+ parameters: Record<string, string | number | boolean>;
29
+ requestVersion: string;
30
+ status: number;
31
+ error: Error;
32
+ };
33
+ }>(eventName: T, listener: (data: {
34
+ error: {
35
+ code: string;
36
+ message: string;
37
+ };
38
+ start: unknown;
39
+ 'cache-poll': number;
40
+ request: import("./domain/events-handler").RequestData;
41
+ 'component-retrieved': {
42
+ headers: http.IncomingHttpHeaders;
43
+ name: string;
44
+ parameters: http.IncomingHttpHeaders;
45
+ requestVersion: string;
46
+ duration: number;
47
+ };
48
+ 'data-provider-error': {
49
+ name: string;
50
+ version: string;
51
+ parameters: Record<string, string | number | boolean>;
52
+ requestVersion: string;
53
+ status: number;
54
+ error: Error;
55
+ };
56
+ }[T]) => void) => void;
57
+ register: (plugin: Omit<Plugin, 'callback'>, callback?: ((...args: any[]) => void) | undefined) => void;
58
+ start: (callback: (err: unknown, data?: {
59
+ app: express.Express;
60
+ server: http.Server;
61
+ } | undefined) => void) => Promise<void>;
62
+ app: express.Express;
63
+ };
64
+ export {};