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,8 +1,8 @@
1
- import { ComponentsDetails } from '../../../types';
2
- interface ComponentHistory {
3
- name: string;
4
- version: string;
5
- publishDate: string;
6
- }
7
- export default function getComponentsHistory(history: ComponentsDetails): ComponentHistory[];
8
- export {};
1
+ import { ComponentsDetails } from '../../../types';
2
+ interface ComponentHistory {
3
+ name: string;
4
+ version: string;
5
+ publishDate: string;
6
+ }
7
+ export default function getComponentsHistory(history: ComponentsDetails): ComponentHistory[];
8
+ export {};
@@ -1,28 +1,28 @@
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
- const date_stringify_1 = __importDefault(require("../../../utils/date-stringify"));
7
- function getComponentsHistory(history) {
8
- const result = [];
9
- for (const [name, versions] of Object.entries(history.components)) {
10
- for (const [version, details] of Object.entries(versions)) {
11
- result.push({
12
- name,
13
- publishDate: details.publishDate,
14
- version
15
- });
16
- }
17
- }
18
- return result
19
- .sort((a, b) => b.publishDate - a.publishDate)
20
- .map(x => ({
21
- name: x.name,
22
- version: x.version,
23
- publishDate: !x.publishDate
24
- ? 'Unknown'
25
- : (0, date_stringify_1.default)(new Date(x.publishDate))
26
- }));
27
- }
28
- exports.default = getComponentsHistory;
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
+ const date_stringify_1 = __importDefault(require("../../../utils/date-stringify"));
7
+ function getComponentsHistory(history) {
8
+ const result = [];
9
+ for (const [name, versions] of Object.entries(history.components)) {
10
+ for (const [version, details] of Object.entries(versions)) {
11
+ result.push({
12
+ name,
13
+ publishDate: details.publishDate,
14
+ version
15
+ });
16
+ }
17
+ }
18
+ return result
19
+ .sort((a, b) => b.publishDate - a.publishDate)
20
+ .map(x => ({
21
+ name: x.name,
22
+ version: x.version,
23
+ publishDate: !x.publishDate
24
+ ? 'Unknown'
25
+ : (0, date_stringify_1.default)(new Date(x.publishDate))
26
+ }));
27
+ }
28
+ exports.default = getComponentsHistory;
@@ -1,3 +1,3 @@
1
- export default function isUrlDiscoverable(url: string): Promise<{
2
- isDiscoverable: boolean;
3
- }>;
1
+ export default function isUrlDiscoverable(url: string): Promise<{
2
+ isDiscoverable: boolean;
3
+ }>;
@@ -1,21 +1,21 @@
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
- const got_1 = __importDefault(require("got"));
7
- async function isUrlDiscoverable(url) {
8
- try {
9
- const res = await (0, got_1.default)(url, {
10
- headers: { accept: 'text/html' }
11
- });
12
- const isHtml = !!res.headers['content-type']?.includes('text/html');
13
- return {
14
- isDiscoverable: isHtml
15
- };
16
- }
17
- catch (err) {
18
- return { isDiscoverable: false };
19
- }
20
- }
21
- exports.default = isUrlDiscoverable;
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
+ const got_1 = __importDefault(require("got"));
7
+ async function isUrlDiscoverable(url) {
8
+ try {
9
+ const res = await (0, got_1.default)(url, {
10
+ headers: { accept: 'text/html' }
11
+ });
12
+ const isHtml = !!res.headers['content-type']?.includes('text/html');
13
+ return {
14
+ isDiscoverable: isHtml
15
+ };
16
+ }
17
+ catch (err) {
18
+ return { isDiscoverable: false };
19
+ }
20
+ }
21
+ exports.default = isUrlDiscoverable;
@@ -1,3 +1,3 @@
1
- import type { Repository } from '../domain/repository';
2
- import { NextFunction, Request, Response } from 'express';
3
- export default function (repository: Repository): (req: Request, res: Response, next: NextFunction) => void;
1
+ import type { Repository } from '../domain/repository';
2
+ import { NextFunction, Request, Response } from 'express';
3
+ export default function (repository: Repository): (req: Request, res: Response, next: NextFunction) => void;
@@ -1,93 +1,93 @@
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
- const async_1 = __importDefault(require("async"));
7
- const parse_author_1 = __importDefault(require("parse-author"));
8
- const lodash_1 = __importDefault(require("lodash"));
9
- const path_1 = __importDefault(require("path"));
10
- const fs_extra_1 = __importDefault(require("fs-extra"));
11
- const date_stringify_1 = __importDefault(require("../../utils/date-stringify"));
12
- const get_components_history_1 = __importDefault(require("./helpers/get-components-history"));
13
- const get_available_dependencies_1 = __importDefault(require("./helpers/get-available-dependencies"));
14
- const views_1 = __importDefault(require("../views"));
15
- const urlBuilder = require("../domain/url-builder");
16
- const universalify_1 = require("universalify");
17
- const packageInfo = fs_extra_1.default.readJsonSync(path_1.default.join(__dirname, '..', '..', '..', 'package.json'));
18
- const getParsedAuthor = (author) => {
19
- author = author || {};
20
- return typeof author === 'string' ? (0, parse_author_1.default)(author) : author;
21
- };
22
- const mapComponentDetails = (component) => Object.assign(component, { author: getParsedAuthor(component.author) });
23
- const isHtmlRequest = (headers) => !!headers.accept && headers.accept.indexOf('text/html') >= 0;
24
- function default_1(repository) {
25
- return (req, res, next) => {
26
- (0, universalify_1.fromPromise)(repository.getComponents)((err, components) => {
27
- if (err) {
28
- res.errorDetails = 'cdn not available';
29
- res.status(404).json({ error: res.errorDetails });
30
- return;
31
- }
32
- const baseResponse = {
33
- href: res.conf.baseUrl,
34
- ocVersion: packageInfo.version,
35
- type: res.conf.local ? 'oc-registry-local' : 'oc-registry'
36
- };
37
- if (isHtmlRequest(req.headers) && !!res.conf.discovery) {
38
- let componentsInfo = [];
39
- let componentsReleases = 0;
40
- const stateCounts = {};
41
- async_1.default.each(components, (component, callback) => (0, universalify_1.fromPromise)(repository.getComponent)(component, undefined, (err, result) => {
42
- if (err)
43
- return callback(err);
44
- if (result.oc && result.oc.date) {
45
- result.oc.stringifiedDate = (0, date_stringify_1.default)(new Date(result.oc.date));
46
- }
47
- componentsInfo.push(mapComponentDetails(result));
48
- componentsReleases += result.allVersions.length;
49
- callback();
50
- }), err => {
51
- if (err)
52
- return next(err);
53
- componentsInfo = lodash_1.default.sortBy(componentsInfo, 'name');
54
- (0, universalify_1.fromPromise)(repository.getComponentsDetails)((err, details) => {
55
- // eslint-disable-next-line no-console
56
- if (err)
57
- console.log(err);
58
- res.send((0, views_1.default)(
59
- // @ts-ignore
60
- Object.assign(baseResponse, {
61
- availableDependencies: (0, get_available_dependencies_1.default)(res.conf.dependencies),
62
- availablePlugins: res.conf.plugins,
63
- components: componentsInfo,
64
- componentsReleases,
65
- componentsList: componentsInfo.map(component => {
66
- const state = lodash_1.default.get(component, 'oc.state', '');
67
- if (state) {
68
- stateCounts[state] = (stateCounts[state] || 0) + 1;
69
- }
70
- return {
71
- name: component.name,
72
- author: component.author,
73
- state
74
- };
75
- }),
76
- componentsHistory: !res.conf.local && (0, get_components_history_1.default)(details),
77
- q: req.query['q'] || '',
78
- stateCounts,
79
- templates: repository.getTemplatesInfo(),
80
- title: 'OpenComponents Registry'
81
- })));
82
- });
83
- });
84
- }
85
- else {
86
- res.status(200).json(Object.assign(baseResponse, {
87
- components: lodash_1.default.map(components, component => urlBuilder.component(component, res.conf.baseUrl))
88
- }));
89
- }
90
- });
91
- };
92
- }
93
- exports.default = default_1;
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
+ const async_1 = __importDefault(require("async"));
7
+ const parse_author_1 = __importDefault(require("parse-author"));
8
+ const lodash_1 = __importDefault(require("lodash"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const fs_extra_1 = __importDefault(require("fs-extra"));
11
+ const date_stringify_1 = __importDefault(require("../../utils/date-stringify"));
12
+ const get_components_history_1 = __importDefault(require("./helpers/get-components-history"));
13
+ const get_available_dependencies_1 = __importDefault(require("./helpers/get-available-dependencies"));
14
+ const views_1 = __importDefault(require("../views"));
15
+ const urlBuilder = require("../domain/url-builder");
16
+ const universalify_1 = require("universalify");
17
+ const packageInfo = fs_extra_1.default.readJsonSync(path_1.default.join(__dirname, '..', '..', '..', 'package.json'));
18
+ const getParsedAuthor = (author) => {
19
+ author = author || {};
20
+ return typeof author === 'string' ? (0, parse_author_1.default)(author) : author;
21
+ };
22
+ const mapComponentDetails = (component) => Object.assign(component, { author: getParsedAuthor(component.author) });
23
+ const isHtmlRequest = (headers) => !!headers.accept && headers.accept.indexOf('text/html') >= 0;
24
+ function default_1(repository) {
25
+ return (req, res, next) => {
26
+ (0, universalify_1.fromPromise)(repository.getComponents)((err, components) => {
27
+ if (err) {
28
+ res.errorDetails = 'cdn not available';
29
+ res.status(404).json({ error: res.errorDetails });
30
+ return;
31
+ }
32
+ const baseResponse = {
33
+ href: res.conf.baseUrl,
34
+ ocVersion: packageInfo.version,
35
+ type: res.conf.local ? 'oc-registry-local' : 'oc-registry'
36
+ };
37
+ if (isHtmlRequest(req.headers) && !!res.conf.discovery) {
38
+ let componentsInfo = [];
39
+ let componentsReleases = 0;
40
+ const stateCounts = {};
41
+ async_1.default.each(components, (component, callback) => (0, universalify_1.fromPromise)(repository.getComponent)(component, undefined, (err, result) => {
42
+ if (err)
43
+ return callback(err);
44
+ if (result.oc && result.oc.date) {
45
+ result.oc.stringifiedDate = (0, date_stringify_1.default)(new Date(result.oc.date));
46
+ }
47
+ componentsInfo.push(mapComponentDetails(result));
48
+ componentsReleases += result.allVersions.length;
49
+ callback();
50
+ }), err => {
51
+ if (err)
52
+ return next(err);
53
+ componentsInfo = lodash_1.default.sortBy(componentsInfo, 'name');
54
+ (0, universalify_1.fromPromise)(repository.getComponentsDetails)((err, details) => {
55
+ // eslint-disable-next-line no-console
56
+ if (err)
57
+ console.log(err);
58
+ res.send((0, views_1.default)(
59
+ // @ts-ignore
60
+ Object.assign(baseResponse, {
61
+ availableDependencies: (0, get_available_dependencies_1.default)(res.conf.dependencies),
62
+ availablePlugins: res.conf.plugins,
63
+ components: componentsInfo,
64
+ componentsReleases,
65
+ componentsList: componentsInfo.map(component => {
66
+ const state = lodash_1.default.get(component, 'oc.state', '');
67
+ if (state) {
68
+ stateCounts[state] = (stateCounts[state] || 0) + 1;
69
+ }
70
+ return {
71
+ name: component.name,
72
+ author: component.author,
73
+ state
74
+ };
75
+ }),
76
+ componentsHistory: !res.conf.local && (0, get_components_history_1.default)(details),
77
+ q: req.query['q'] || '',
78
+ stateCounts,
79
+ templates: repository.getTemplatesInfo(),
80
+ title: 'OpenComponents Registry'
81
+ })));
82
+ });
83
+ });
84
+ }
85
+ else {
86
+ res.status(200).json(Object.assign(baseResponse, {
87
+ components: lodash_1.default.map(components, component => urlBuilder.component(component, res.conf.baseUrl))
88
+ }));
89
+ }
90
+ });
91
+ };
92
+ }
93
+ exports.default = default_1;
@@ -1,3 +1,3 @@
1
- import { Request, Response } from 'express';
2
- import { Config } from '../../types';
3
- export default function plugins(conf: Config): (_req: Request, res: Response) => void;
1
+ import { Request, Response } from 'express';
2
+ import { Config } from '../../types';
3
+ export default function plugins(conf: Config): (_req: Request, res: Response) => void;
@@ -1,17 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function plugins(conf) {
4
- return (_req, res) => {
5
- if (res.conf.discovery) {
6
- const plugins = Object.entries(conf.plugins).map(([pluginName, pluginFn]) => ({
7
- name: pluginName,
8
- description: pluginFn.toString()
9
- }));
10
- res.status(200).json(plugins);
11
- }
12
- else {
13
- res.status(401);
14
- }
15
- };
16
- }
17
- exports.default = plugins;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function plugins(conf) {
4
+ return (_req, res) => {
5
+ if (res.conf.discovery) {
6
+ const plugins = Object.entries(conf.plugins).map(([pluginName, pluginFn]) => ({
7
+ name: pluginName,
8
+ description: pluginFn.toString()
9
+ }));
10
+ res.status(200).json(plugins);
11
+ }
12
+ else {
13
+ res.status(401);
14
+ }
15
+ };
16
+ }
17
+ exports.default = plugins;
@@ -1,3 +1,3 @@
1
- import { Request, Response } from 'express';
2
- import type { Repository } from '../domain/repository';
3
- export default function publish(repository: Repository): (req: Request, res: Response) => Promise<void>;
1
+ import { Request, Response } from 'express';
2
+ import type { Repository } from '../domain/repository';
3
+ export default function publish(repository: Repository): (req: Request, res: Response) => Promise<void>;
@@ -1,101 +1,101 @@
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 extract_package_1 = __importDefault(require("../domain/extract-package"));
30
- const index_1 = __importDefault(require("../../resources/index"));
31
- const validator = __importStar(require("../domain/validators"));
32
- function publish(repository) {
33
- return async function (req, res) {
34
- if (!req.params['componentName'] || !req.params['componentVersion']) {
35
- res.errorDetails = 'malformed request';
36
- res.status(409).json({ error: res.errorDetails });
37
- return;
38
- }
39
- const packageValidation = validator.validatePackage(req.files);
40
- if (!packageValidation.isValid) {
41
- res.errorDetails = 'package is not valid';
42
- res.status(409).json({ error: res.errorDetails });
43
- return;
44
- }
45
- const files = packageValidation.files;
46
- const ocCliValidationResult = validator.validateOcCliVersion(req.headers['user-agent']);
47
- if (!ocCliValidationResult.isValid) {
48
- res.errorDetails = index_1.default.errors.registry.OC_CLI_VERSION_IS_NOT_VALID(ocCliValidationResult.error.registryVersion, ocCliValidationResult.error.cliVersion);
49
- res.status(409).json({
50
- code: 'cli_version_not_valid',
51
- error: res.errorDetails,
52
- details: ocCliValidationResult.error
53
- });
54
- return;
55
- }
56
- const nodeValidationResult = validator.validateNodeVersion(req.headers['user-agent'], process.version);
57
- if (!nodeValidationResult.isValid) {
58
- res.errorDetails = index_1.default.errors.registry.NODE_CLI_VERSION_IS_NOT_VALID(nodeValidationResult.error.registryNodeVersion, nodeValidationResult.error.cliNodeVersion);
59
- res.status(409).json({
60
- code: 'node_version_not_valid',
61
- error: res.errorDetails,
62
- details: nodeValidationResult.error
63
- });
64
- return;
65
- }
66
- try {
67
- const pkgDetails = await (0, extract_package_1.default)(files, res.conf.tarExtractMode);
68
- try {
69
- await repository.publishComponent(pkgDetails, req.params['componentName'], req.params['componentVersion']);
70
- res.status(200).json({ ok: true });
71
- }
72
- catch (err) {
73
- if (err.code === 'not_allowed') {
74
- res.errorDetails = `Publish not allowed: ${err.msg}`;
75
- res.status(403).json({ error: err.msg });
76
- }
77
- else if (err.code === 'already_exists') {
78
- res.errorDetails = `Component already exists: ${err.msg}`;
79
- res.status(403).json({ error: err.msg });
80
- }
81
- else if (err.code === 'name_not_valid') {
82
- res.errorDetails = `Component name not valid: ${err.msg}`;
83
- res.status(409).json({ error: err.msg });
84
- }
85
- else if (err.code === 'version_not_valid') {
86
- res.errorDetails = `Component version not valid: ${err.msg}`;
87
- res.status(409).json({ error: err.msg });
88
- }
89
- else {
90
- res.errorDetails = `Publish failed: ${err.msg}`;
91
- res.status(500).json({ error: err.msg });
92
- }
93
- }
94
- }
95
- catch (err) {
96
- res.errorDetails = `Package is not valid: ${err}`;
97
- res.status(500).json({ error: 'package is not valid', details: err });
98
- }
99
- };
100
- }
101
- exports.default = publish;
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 extract_package_1 = __importDefault(require("../domain/extract-package"));
30
+ const index_1 = __importDefault(require("../../resources/index"));
31
+ const validator = __importStar(require("../domain/validators"));
32
+ function publish(repository) {
33
+ return async function (req, res) {
34
+ if (!req.params['componentName'] || !req.params['componentVersion']) {
35
+ res.errorDetails = 'malformed request';
36
+ res.status(409).json({ error: res.errorDetails });
37
+ return;
38
+ }
39
+ const packageValidation = validator.validatePackage(req.files);
40
+ if (!packageValidation.isValid) {
41
+ res.errorDetails = 'package is not valid';
42
+ res.status(409).json({ error: res.errorDetails });
43
+ return;
44
+ }
45
+ const files = packageValidation.files;
46
+ const ocCliValidationResult = validator.validateOcCliVersion(req.headers['user-agent']);
47
+ if (!ocCliValidationResult.isValid) {
48
+ res.errorDetails = index_1.default.errors.registry.OC_CLI_VERSION_IS_NOT_VALID(ocCliValidationResult.error.registryVersion, ocCliValidationResult.error.cliVersion);
49
+ res.status(409).json({
50
+ code: 'cli_version_not_valid',
51
+ error: res.errorDetails,
52
+ details: ocCliValidationResult.error
53
+ });
54
+ return;
55
+ }
56
+ const nodeValidationResult = validator.validateNodeVersion(req.headers['user-agent'], process.version);
57
+ if (!nodeValidationResult.isValid) {
58
+ res.errorDetails = index_1.default.errors.registry.NODE_CLI_VERSION_IS_NOT_VALID(nodeValidationResult.error.registryNodeVersion, nodeValidationResult.error.cliNodeVersion);
59
+ res.status(409).json({
60
+ code: 'node_version_not_valid',
61
+ error: res.errorDetails,
62
+ details: nodeValidationResult.error
63
+ });
64
+ return;
65
+ }
66
+ try {
67
+ const pkgDetails = await (0, extract_package_1.default)(files, res.conf.tarExtractMode);
68
+ try {
69
+ await repository.publishComponent(pkgDetails, req.params['componentName'], req.params['componentVersion']);
70
+ res.status(200).json({ ok: true });
71
+ }
72
+ catch (err) {
73
+ if (err.code === 'not_allowed') {
74
+ res.errorDetails = `Publish not allowed: ${err.msg}`;
75
+ res.status(403).json({ error: err.msg });
76
+ }
77
+ else if (err.code === 'already_exists') {
78
+ res.errorDetails = `Component already exists: ${err.msg}`;
79
+ res.status(403).json({ error: err.msg });
80
+ }
81
+ else if (err.code === 'name_not_valid') {
82
+ res.errorDetails = `Component name not valid: ${err.msg}`;
83
+ res.status(409).json({ error: err.msg });
84
+ }
85
+ else if (err.code === 'version_not_valid') {
86
+ res.errorDetails = `Component version not valid: ${err.msg}`;
87
+ res.status(409).json({ error: err.msg });
88
+ }
89
+ else {
90
+ res.errorDetails = `Publish failed: ${err.msg}`;
91
+ res.status(500).json({ error: err.msg });
92
+ }
93
+ }
94
+ }
95
+ catch (err) {
96
+ res.errorDetails = `Package is not valid: ${err}`;
97
+ res.status(500).json({ error: 'package is not valid', details: err });
98
+ }
99
+ };
100
+ }
101
+ exports.default = publish;
@@ -1,3 +1,3 @@
1
- import { Request, Response } from 'express';
2
- import type { Repository } from '../domain/repository';
3
- export default function staticRedirector(repository: Repository): (req: Request, res: Response) => void;
1
+ import { Request, Response } from 'express';
2
+ import type { Repository } from '../domain/repository';
3
+ export default function staticRedirector(repository: Repository): (req: Request, res: Response) => void;