verdaccio 5.15.4 → 5.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/build/index.js +1 -4
  3. package/package.json +29 -27
  4. package/CODE_OF_CONDUCT.md +0 -46
  5. package/CONTRIBUTING.md +0 -195
  6. package/CONTRIBUTORS.md +0 -41
  7. package/SECURITY.md +0 -76
  8. package/babel.config.js +0 -22
  9. package/build/api/debug/index.js +0 -33
  10. package/build/api/endpoint/api/dist-tags.js +0 -85
  11. package/build/api/endpoint/api/package.js +0 -125
  12. package/build/api/endpoint/api/ping.js +0 -13
  13. package/build/api/endpoint/api/publish.js +0 -391
  14. package/build/api/endpoint/api/search.js +0 -124
  15. package/build/api/endpoint/api/star.js +0 -90
  16. package/build/api/endpoint/api/stars.js +0 -32
  17. package/build/api/endpoint/api/user.js +0 -110
  18. package/build/api/endpoint/api/v1/index.js +0 -26
  19. package/build/api/endpoint/api/v1/profile.js +0 -91
  20. package/build/api/endpoint/api/v1/search.js +0 -216
  21. package/build/api/endpoint/api/v1/token.js +0 -178
  22. package/build/api/endpoint/api/whoami.js +0 -24
  23. package/build/api/endpoint/index.js +0 -82
  24. package/build/api/index.js +0 -142
  25. package/build/api/middleware.js +0 -427
  26. package/build/api/rate-limiter.js +0 -24
  27. package/build/api/web/api.js +0 -44
  28. package/build/api/web/endpoint/index.js +0 -51
  29. package/build/api/web/endpoint/package.js +0 -186
  30. package/build/api/web/endpoint/search.js +0 -64
  31. package/build/api/web/endpoint/user.js +0 -79
  32. package/build/api/web/html/favicon.ico +0 -0
  33. package/build/api/web/html/manifest.js +0 -22
  34. package/build/api/web/html/renderHTML.js +0 -155
  35. package/build/api/web/html/template.js +0 -44
  36. package/build/api/web/index.js +0 -139
  37. package/build/config/env.js +0 -11
  38. package/build/lib/auth-utils.js +0 -315
  39. package/build/lib/auth.js +0 -551
  40. package/build/lib/bootstrap.js +0 -205
  41. package/build/lib/bootstrap.v2.js +0 -185
  42. package/build/lib/cli/cli.js +0 -36
  43. package/build/lib/cli/commands/info.js +0 -35
  44. package/build/lib/cli/commands/init.js +0 -98
  45. package/build/lib/cli/commands/version.js +0 -27
  46. package/build/lib/cli/utils.js +0 -75
  47. package/build/lib/cli.js +0 -27
  48. package/build/lib/config-path.js +0 -146
  49. package/build/lib/config-utils.js +0 -157
  50. package/build/lib/config.js +0 -143
  51. package/build/lib/constants.js +0 -187
  52. package/build/lib/crypto-utils.js +0 -87
  53. package/build/lib/local-storage.js +0 -907
  54. package/build/lib/logger/formatter/index.js +0 -16
  55. package/build/lib/logger/formatter/prettifier.js +0 -111
  56. package/build/lib/logger/index.js +0 -26
  57. package/build/lib/logger/levels.js +0 -73
  58. package/build/lib/logger/logger.js +0 -171
  59. package/build/lib/logger/utils.js +0 -31
  60. package/build/lib/metadata-utils.js +0 -46
  61. package/build/lib/notify/index.js +0 -102
  62. package/build/lib/notify/notify-request.js +0 -51
  63. package/build/lib/plugin-loader.js +0 -207
  64. package/build/lib/search.js +0 -145
  65. package/build/lib/storage-utils.js +0 -316
  66. package/build/lib/storage.js +0 -665
  67. package/build/lib/up-storage.js +0 -743
  68. package/build/lib/uplink-util.js +0 -41
  69. package/build/lib/utils.js +0 -813
  70. package/build/utils/string.js +0 -51
  71. package/build/utils/user.js +0 -35
  72. package/conf/README.md +0 -9
  73. package/conf/default.yaml +0 -199
  74. package/conf/docker.yaml +0 -201
  75. package/conf/full.yaml +0 -10
  76. package/eslintrc.js +0 -97
  77. package/index.js +0 -1
  78. package/prettier.config.js +0 -15
  79. package/security.txt +0 -5
  80. package/systemd/verdaccio.service +0 -11
  81. package/tsconfig.json +0 -16
  82. package/yarn-plugins/plugin-postinstall.js +0 -16
package/CHANGELOG.md CHANGED
@@ -2,6 +2,23 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [5.16.0](https://github.com/verdaccio/verdaccio/compare/v5.15.4...v5.16.0) (2022-11-08)
6
+
7
+
8
+ ### Features
9
+
10
+ * docker image refactor a new internal binary run ([#3475](https://github.com/verdaccio/verdaccio/issues/3475)) ([ebaaf3f](https://github.com/verdaccio/verdaccio/commit/ebaaf3f6811c11f5407482628df40198d97c4b83))
11
+ * update to docker base image to node v18.12.0 ([#3469](https://github.com/verdaccio/verdaccio/issues/3469)) ([644938c](https://github.com/verdaccio/verdaccio/commit/644938c0f31dd375af6023362ea9596de1dfa3c5))
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * **deps:** update dependency body-parser to v1.20.1 ([#3438](https://github.com/verdaccio/verdaccio/issues/3438)) ([b3b44f6](https://github.com/verdaccio/verdaccio/commit/b3b44f6317cf7e47689e336bfa6e2c8c8e3d1a93))
17
+ * **deps:** update dependency dayjs to v1.11.6 ([#3459](https://github.com/verdaccio/verdaccio/issues/3459)) ([106e00a](https://github.com/verdaccio/verdaccio/commit/106e00a751ff7f89b660861e5cdd95811a8069a3))
18
+ * **deps:** update dependency express to v4.18.2 ([#3435](https://github.com/verdaccio/verdaccio/issues/3435)) ([128ab21](https://github.com/verdaccio/verdaccio/commit/128ab21a8ae6a83a8650acc1021a460339b0ba74))
19
+ * **deps:** update dependency marked to v4.1.1 ([#3439](https://github.com/verdaccio/verdaccio/issues/3439)) ([1a1572f](https://github.com/verdaccio/verdaccio/commit/1a1572ff9e8eeffb35f2beac2bb24a760b6326bc))
20
+ * update core deps ([#3485](https://github.com/verdaccio/verdaccio/issues/3485)) ([7a000bc](https://github.com/verdaccio/verdaccio/commit/7a000bccdb2af156936a7118cb8b64c51a27015e))
21
+
5
22
  ### [5.15.4](https://github.com/verdaccio/verdaccio/compare/v5.15.3...v5.15.4) (2022-09-29)
6
23
 
7
24
 
package/build/index.js CHANGED
@@ -27,10 +27,7 @@ Object.defineProperty(exports, "startVerdaccio", {
27
27
  return _bootstrap.startVerdaccio;
28
28
  }
29
29
  });
30
-
31
30
  var _utils = require("./lib/utils");
32
-
33
31
  var _bootstrap = require("./lib/bootstrap");
34
-
35
32
  var _bootstrap2 = require("./lib/bootstrap.v2");
36
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHBhcnNlQ29uZmlnRmlsZSB9IGZyb20gJy4vbGliL3V0aWxzJztcbmV4cG9ydCB7IHN0YXJ0VmVyZGFjY2lvIGFzIGRlZmF1bHQsIHN0YXJ0VmVyZGFjY2lvIH0gZnJvbSAnLi9saWIvYm9vdHN0cmFwJztcbi8vIFNpbWlsYXIgc3RydWN0dXJlIGFzIHY2IGJ1dCB3aXRoIGRpZmZlcmVudCBmdW5jdGlvbnNcbi8vIHRoaXMgaXMgYSBicmlkZ2UgZm9yIGVhc3kgbWlncmF0aW9uIHRvIHY2XG5leHBvcnQgeyBydW5TZXJ2ZXIgfSBmcm9tICcuL2xpYi9ib290c3RyYXAudjInO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFHQSJ9
33
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHBhcnNlQ29uZmlnRmlsZSB9IGZyb20gJy4vbGliL3V0aWxzJztcbmV4cG9ydCB7IHN0YXJ0VmVyZGFjY2lvIGFzIGRlZmF1bHQsIHN0YXJ0VmVyZGFjY2lvIH0gZnJvbSAnLi9saWIvYm9vdHN0cmFwJztcbi8vIFNpbWlsYXIgc3RydWN0dXJlIGFzIHY2IGJ1dCB3aXRoIGRpZmZlcmVudCBmdW5jdGlvbnNcbi8vIHRoaXMgaXMgYSBicmlkZ2UgZm9yIGVhc3kgbWlncmF0aW9uIHRvIHY2XG5leHBvcnQgeyBydW5TZXJ2ZXIgfSBmcm9tICcuL2xpYi9ib290c3RyYXAudjInO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFHQSJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "verdaccio",
3
- "version": "5.15.4",
3
+ "version": "5.16.0",
4
4
  "description": "A lightweight private npm proxy registry",
5
5
  "author": {
6
6
  "name": "Verdaccio Maintainers",
@@ -17,24 +17,29 @@
17
17
  "type": "opencollective",
18
18
  "url": "https://opencollective.com/verdaccio"
19
19
  },
20
+ "files": [
21
+ "./build",
22
+ "./index.js",
23
+ "./conf/"
24
+ ],
20
25
  "dependencies": {
21
26
  "@verdaccio/commons-api": "10.2.0",
22
27
  "@verdaccio/local-storage": "10.3.1",
23
- "@verdaccio/readme": "10.4.1",
28
+ "@verdaccio/readme": "10.4.2",
24
29
  "@verdaccio/streams": "10.2.0",
25
- "@verdaccio/ui-theme": "6.0.0-6-next.48",
30
+ "@verdaccio/ui-theme": "6.0.0-6-next.50",
26
31
  "JSONStream": "1.3.5",
27
32
  "async": "3.2.4",
28
- "body-parser": "1.20.0",
33
+ "body-parser": "1.20.1",
29
34
  "clipanion": "3.1.0",
30
35
  "compression": "1.7.4",
31
36
  "cookies": "0.8.0",
32
37
  "cors": "2.8.5",
33
- "dayjs": "1.11.5",
34
- "debug": "^4.3.3",
38
+ "dayjs": "1.11.6",
39
+ "debug": "^4.3.4",
35
40
  "envinfo": "7.8.1",
36
41
  "eslint-import-resolver-node": "0.3.6",
37
- "express": "4.18.1",
42
+ "express": "4.18.2",
38
43
  "express-rate-limit": "5.5.1",
39
44
  "fast-safe-stringify": "2.1.1",
40
45
  "handlebars": "4.7.7",
@@ -45,7 +50,7 @@
45
50
  "lodash": "4.17.21",
46
51
  "lru-cache": "7.14.0",
47
52
  "lunr-mutable-indexes": "2.3.2",
48
- "marked": "4.1.0",
53
+ "marked": "4.2.2",
49
54
  "memoizee": "0.4.15",
50
55
  "mime": "3.0.0",
51
56
  "minimatch": "5.1.0",
@@ -58,15 +63,15 @@
58
63
  "request": "2.88.0",
59
64
  "semver": "7.3.7",
60
65
  "validator": "13.7.0",
61
- "verdaccio-audit": "10.2.2",
62
- "verdaccio-htpasswd": "10.5.0"
66
+ "verdaccio-audit": "10.2.3",
67
+ "verdaccio-htpasswd": "10.5.1"
63
68
  },
64
69
  "devDependencies": {
65
- "@babel/cli": "7.18.10",
66
- "@babel/core": "7.18.10",
67
- "@babel/node": "7.18.10",
70
+ "@babel/cli": "7.19.3",
71
+ "@babel/core": "7.19.3",
72
+ "@babel/node": "7.19.1",
68
73
  "@babel/plugin-proposal-class-properties": "7.18.6",
69
- "@babel/plugin-proposal-decorators": "7.18.10",
74
+ "@babel/plugin-proposal-decorators": "7.19.3",
70
75
  "@babel/plugin-proposal-export-namespace-from": "7.18.9",
71
76
  "@babel/plugin-proposal-function-sent": "7.18.6",
72
77
  "@babel/plugin-proposal-json-strings": "7.18.6",
@@ -78,19 +83,19 @@
78
83
  "@babel/plugin-syntax-dynamic-import": "7.8.3",
79
84
  "@babel/plugin-syntax-import-meta": "7.10.4",
80
85
  "@babel/plugin-transform-async-to-generator": "7.18.6",
81
- "@babel/plugin-transform-classes": "7.18.9",
82
- "@babel/plugin-transform-runtime": "7.18.10",
86
+ "@babel/plugin-transform-classes": "7.19.0",
87
+ "@babel/plugin-transform-runtime": "7.19.1",
83
88
  "@babel/polyfill": "^7.12.1",
84
- "@babel/preset-env": "7.18.10",
89
+ "@babel/preset-env": "7.19.3",
85
90
  "@babel/preset-typescript": "7.18.6",
86
91
  "@babel/register": "7.18.9",
87
- "@babel/runtime": "7.18.9",
92
+ "@babel/runtime": "7.19.0",
88
93
  "@commitlint/cli": "12.1.4",
89
94
  "@commitlint/config-conventional": "12.1.4",
90
95
  "@octokit/rest": "18.12.0",
91
96
  "@trivago/prettier-plugin-sort-imports": "3.2.0",
92
97
  "@types/async": "3.2.13",
93
- "@types/express": "4.17.13",
98
+ "@types/express": "4.17.14",
94
99
  "@types/express-rate-limit": "5.1.3",
95
100
  "@types/express-serve-static-core": "4.17.28",
96
101
  "@types/http-errors": "1.8.2",
@@ -105,12 +110,10 @@
105
110
  "@typescript-eslint/eslint-plugin": "5.22.0",
106
111
  "@typescript-eslint/parser": "5.22.0",
107
112
  "@verdaccio-scope/verdaccio-auth-foo": "0.0.2",
108
- "@verdaccio/eslint-config": "^10.0.0",
109
113
  "@verdaccio/types": "10.7.0",
110
114
  "all-contributors-cli": "6.20.0",
111
115
  "babel-eslint": "10.1.0",
112
116
  "babel-jest": "26.6.3",
113
- "babel-loader": "^8.2.3",
114
117
  "babel-plugin-dynamic-import-node": "2.3.3",
115
118
  "cross-env": "7.0.3",
116
119
  "detect-secrets": "1.0.6",
@@ -136,7 +139,6 @@
136
139
  "node-mocks-http": "^1.10.1",
137
140
  "pinst": "2.1.6",
138
141
  "prettier": "2.7.1",
139
- "puppeteer": "5.5.0",
140
142
  "rimraf": "3.0.2",
141
143
  "selfsigned": "1.10.14",
142
144
  "standard-version": "9.5.0",
@@ -168,11 +170,10 @@
168
170
  "test:unit": "cross-env NODE_ENV=test TZ=UTC FORCE_COLOR=1 jest --config ./jest.config.js --maxWorkers 2 --passWithNoTests",
169
171
  "test:functional": "cross-env NODE_ENV=test jest --config ./test/jest.config.functional.js --testPathPattern ./test/functional/index* --passWithNoTests",
170
172
  "test:e2e:cli": "cross-env NODE_ENV=test jest --config ./test/e2e-cli/jest.config.e2e.cli.js --passWithNoTests",
171
- "test:e2e": "yarn jest --config ./test/jest.config.e2e.js",
172
- "test:all": "yarn run test && yarn run test:functional && yarn run test:e2e & yarn run test:e2e:pkg",
173
+ "test:all": "yarn run test && yarn run test:functional",
173
174
  "pre:ci": "yarn run lint",
174
- "lint": "yarn run type-check && yarn run lint:ts",
175
- "lint:ts": "eslint \"**/*.{js,jsx,ts}\" --max-warnings 145 -c ./eslintrc.js",
175
+ "lint:ts": "yarn run type-check",
176
+ "lint": "eslint \"**/*.{js,jsx,ts}\" --max-warnings 145 -c ./eslintrc.js",
176
177
  "lint:lockfile": "lockfile-lint --path yarn.lock --type yarn --validate-https --allowed-hosts verdaccio npm yarn",
177
178
  "start": "yarn babel-node --extensions \".ts,.tsx\" src/lib/cli --inspect",
178
179
  "start:brk": "yarn babel-node --extensions \".ts,.tsx\" src/lib/cli --inspect-brk",
@@ -205,5 +206,6 @@
205
206
  "type": "opencollective",
206
207
  "url": "https://opencollective.com/verdaccio",
207
208
  "logo": "https://opencollective.com/verdaccio/logo.txt"
208
- }
209
+ },
210
+ "packageManager": "yarn@3.2.3"
209
211
  }
@@ -1,46 +0,0 @@
1
- # Contributor Covenant Code of Conduct
2
-
3
- ## Our Pledge
4
-
5
- In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
6
-
7
- ## Our Standards
8
-
9
- Examples of behavior that contributes to creating a positive environment include:
10
-
11
- - Using welcoming and inclusive language
12
- - Being respectful of differing viewpoints and experiences
13
- - Gracefully accepting constructive criticism
14
- - Focusing on what is best for the community
15
- - Showing empathy towards other community members
16
-
17
- Examples of unacceptable behavior by participants include:
18
-
19
- - The use of sexualized language or imagery and unwelcome sexual attention or advances
20
- - Trolling, insulting/derogatory comments, and personal or political attacks
21
- - Public or private harassment
22
- - Publishing others' private information, such as a physical or electronic address, without explicit permission
23
- - Other conduct which could reasonably be considered inappropriate in a professional setting
24
-
25
- ## Our Responsibilities
26
-
27
- Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
28
-
29
- Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
30
-
31
- ## Scope
32
-
33
- This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
34
-
35
- ## Enforcement
36
-
37
- Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at verdaccio.npm@gmail.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
38
-
39
- Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
40
-
41
- ## Attribution
42
-
43
- This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
44
-
45
- [homepage]: http://contributor-covenant.org
46
- [version]: http://contributor-covenant.org/version/1/4/
package/CONTRIBUTING.md DELETED
@@ -1,195 +0,0 @@
1
- # Contributing to Verdaccio
2
-
3
- > ⚠️ If you intend to file a PR with a new feature, please use the 5.x branch for it 🥰 . master branch is available only for **bug fixing** and dependencies updates.
4
-
5
- We are happy that you wish to contribute to this project. For that reason, we
6
- present you with this guide.
7
-
8
- Additional information is available on the
9
- [wiki](https://github.com/verdaccio/verdaccio/wiki).
10
-
11
- ## Contents
12
-
13
- - [Contents](#contents)
14
- - [How Do I Contribute?](#how-do-i-contribute)
15
- - [Development](#development)
16
- - [Reporting Bugs](#reporting-bugs)
17
- - [Issue Search](#issue-search)
18
- - [Check Website For Solution](#check-website-for-solution)
19
- - [Chat](#chat)
20
- - [Check If It's Been Fixed](#check-if-its-been-fixed)
21
- - [Request Features](#request-features)
22
- - [Submitting a Pull Request](#submitting-a-pull-request)
23
- - [Make Changes and Commit](#make-changes-and-commit)
24
- - [Update Tests](#update-tests)
25
- - [Develop Plugins](#develop-plugins)
26
-
27
- ## How Do I Contribute?
28
-
29
- There are different ways to contribute, each with a different level
30
- of involvement and technical knowledge required, such as:
31
-
32
- - [Reporting Bugs](#reporting-bugs)
33
- - [Request Features](#request-features)
34
- - [Develop Plugins](#develop-plugins)
35
- - [Improve Documentation](http://www.verdaccio.org/docs/en/installation.html)
36
-
37
- **Please read this document carefully. It will help maintainers and readers
38
- in solving your issue(s), evaluating your feature request, etc.**
39
-
40
- ## Development
41
-
42
- Development guides can be found on the [wiki](https://github.com/verdaccio/verdaccio/wiki):
43
-
44
- - [Building the project](https://github.com/verdaccio/verdaccio/wiki/Build-Source-Code)
45
- - [Running, debugging, and testing](https://github.com/verdaccio/verdaccio/wiki/Running-and-Debugging-tests)
46
-
47
- ## Reporting Bugs
48
-
49
- We welcome clear, detailed bug reports.
50
-
51
- **Bugs are considered features that are not working as described in
52
- documentation.**
53
-
54
- If you've found a bug in Verdaccio **that isn't a security risk**, please file
55
- a report in our [issue tracker](https://github.com/verdaccio/verdaccio/issues).
56
-
57
- **NOTE: Verdaccio still does not support all npm commands. Some were not
58
- considered important and others have not been requested yet.**
59
-
60
- ### Issue Search
61
-
62
- Search to see if it has already been reported via
63
- the issue search.
64
-
65
- Additionally, we have labelled questions for easy follow-up as [questions](https://github.com/verdaccio/verdaccio/labels/question).
66
-
67
- If so, up-vote it (using GitHub reactions) or add additional helpful details to
68
- the existing issue to show that it's affecting multiple people.
69
-
70
- ### Check Website For Solution
71
-
72
- Some of the most popular topics can be found in our website(http://www.verdaccio.org/docs/en/installation.html)
73
-
74
- ### Chat
75
-
76
- Questions can be asked via [Discord](http://chat.verdaccio.org/)
77
-
78
- **Please use the `#questions#` and `#development` channels.**
79
-
80
- ### Check If It's Been Fixed
81
-
82
- Check if the issue has been fixed — try to reproduce it using the latest
83
- `master` or development branch in the repository.
84
-
85
- ## Request Features
86
-
87
- New feature requests are welcome. Analyse whether the idea fits within scope of
88
- the project. Then, detail your request, ensuring context and use case is provided.
89
-
90
- **Please provide:**
91
-
92
- - A detailed description the advantages of your request
93
- - Whether or not it's compatible with `npm` and `yarn`
94
- - A potential implementation or design
95
- - Whatever else you have in your mind 🤓
96
-
97
- ### Submitting a Pull Request
98
-
99
- The following are the steps you should follow when creating a pull request.
100
- Subsequent pull requests only need to follow step 3 and beyond.
101
-
102
- 1. Fork the repository on GitHub
103
- 2. Clone the forked repository to your machine
104
- 3. Make your changes and commit them to your local repository
105
- 4. Rebase and push your commits to your GitHub remote fork/repository
106
- 5. Issue a Pull Request to the official repository
107
- 6. Your Pull Request is reviewed by a committer and merged into the repository
108
-
109
- **NOTE**: While there are other ways to accomplish the steps using other tools,
110
- the examples here will assume most actions will be performed via `git` on
111
- command line.
112
-
113
- For more information on maintaining a fork, please see the GitHub Help article
114
- titled [Fork a Repo](https://help.github.com/articles/fork-a-repo/), and
115
- information on [rebasing](https://git-scm.com/book/en/v2/Git-Branching-Rebasing).
116
-
117
- ### Make Changes and Commit
118
-
119
- #### Before Commit
120
-
121
- Before committing, **you must ensure there are no linting errors and
122
- all tests pass.**
123
-
124
- To do this, run all tests (including e2e):
125
-
126
- ```bash
127
- yarn test:all
128
- ```
129
-
130
- Then, and only then, you can create your pull request.
131
-
132
- #### Commit Guidelines
133
-
134
- We follow the [conventional commit messages](https://conventionalcommits.org/)
135
- convention in order to automate CHANGELOG generation and to automate
136
- semantic versioning.
137
-
138
- For example:
139
-
140
- - `feat: A new feature`
141
- - `fix: A bug fix`
142
-
143
- A commit of the type feat introduces a new feature to the codebase
144
- (this correlates with MINOR in semantic versioning).
145
-
146
- e.g.:
147
-
148
- ```
149
- feat: xxxxxxxxxx
150
- ```
151
-
152
- A commit of the type fix patches a bug in your codebase (this correlates with PATCH in semantic versioning).
153
-
154
- e.g.:
155
-
156
- ```
157
- fix: xxxxxxxxxx
158
- ```
159
-
160
- Commits types such as as `docs:`,`style:`,`refactor:`,`perf:`,`test:`
161
- and `chore:` are valid but have no effect on versioning. **It would be great if you use them.**
162
-
163
- All commits message are going to be validated when they are created using husky hooks.
164
-
165
- **PRs that do not follow the commit message guidelines will not be merged.**
166
-
167
- ## Update Tests
168
-
169
- **Any change in source code must include test updates**.
170
-
171
- If you need help with how testing works, please [refer to the following guide](https://github.com/verdaccio/verdaccio/wiki/Running-and-Debugging-tests).
172
-
173
- **If you are introducing new features, you MUST include new tests. PRs for
174
- features without tests will not be merged.**
175
-
176
- Things excluded from tests:
177
-
178
- - Documentation
179
- - Website
180
- - Build
181
- - Deployment
182
- - Assets
183
- - Flow types
184
-
185
- ## Develop Plugins
186
-
187
- Plugins are add-ons that extend the functionality of the application.
188
-
189
- If you want to develop your own plugin:
190
-
191
- 1. Check whether there is a legacy Sinopia plugin for the feature that you need
192
- via [npmjs](https://www.npmjs.com/search?q=sinopia)
193
- 2. Keep in mind the [life-cycle to load a plugin](https://verdaccio.org/docs/en/dev-plugins)
194
- 3. You are free to host your plugin in your repository or ours (just ask)
195
- 4. Provide a detailed description of your plugin to help users understand it
package/CONTRIBUTORS.md DELETED
@@ -1,41 +0,0 @@
1
- <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
2
- <!-- prettier-ignore-start -->
3
- <!-- markdownlint-disable -->
4
- <table>
5
- <tr>
6
- <td align="center"><a href="https://www.linkedin.com/in/jotadeveloper/"><img src="https://avatars0.githubusercontent.com/u/558752?v=4" width="100px;" alt=""/><br /><sub><b>Juan Picado</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=juanpicado" title="Documentation">📖</a> <a href="https://github.com/verdaccio/verdaccio/commits?author=juanpicado" title="Code">💻</a> <a href="#infra-juanpicado" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#eventOrganizing-juanpicado" title="Event Organizing">📋</a> <a href="#blog-juanpicado" title="Blogposts">📝</a> <a href="#maintenance-juanpicado" title="Maintenance">🚧</a></td>
7
- <td align="center"><a href="https://github.com/sergiohgz"><img src="https://avatars3.githubusercontent.com/u/14012309?v=4" width="100px;" alt=""/><br /><sub><b>Sergio Herrera</b></sub></a><br /><a href="#infra-sergiohgz" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-sergiohgz" title="Maintenance">🚧</a></td>
8
- <td align="center"><a href="https://daniel-ruf.de/"><img src="https://avatars1.githubusercontent.com/u/827205?v=4" width="100px;" alt=""/><br /><sub><b>Daniel Ruf</b></sub></a><br /><a href="#security-DanielRuf" title="Security">🛡️</a> <a href="#infra-DanielRuf" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-DanielRuf" title="Maintenance">🚧</a></td>
9
- <td align="center"><a href="https://priscilawebdev.github.io/priscilaoliveira/"><img src="https://avatars1.githubusercontent.com/u/29228205?v=4" width="100px;" alt=""/><br /><sub><b>Priscila Oliveira</b></sub></a><br /><a href="#design-priscilawebdev" title="Design">🎨</a> <a href="https://github.com/verdaccio/verdaccio/commits?author=priscilawebdev" title="Code">💻</a> <a href="#maintenance-priscilawebdev" title="Maintenance">🚧</a></td>
10
- <td align="center"><a href="http://ayusharma.github.io/"><img src="https://avatars0.githubusercontent.com/u/6918450?v=4" width="100px;" alt=""/><br /><sub><b>Ayush Sharma</b></sub></a><br /><a href="#infra-ayusharma" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="https://github.com/verdaccio/verdaccio/commits?author=ayusharma" title="Code">💻</a> <a href="#design-ayusharma" title="Design">🎨</a></td>
11
- <td align="center"><a href="https://github.com/trentearl"><img src="https://avatars2.githubusercontent.com/u/802857?v=4" width="100px;" alt=""/><br /><sub><b>Trent Earl</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=trentearl" title="Code">💻</a></td>
12
- <td align="center"><a href="https://github.com/jmwilkinson"><img src="https://avatars0.githubusercontent.com/u/17836030?v=4" width="100px;" alt=""/><br /><sub><b>jmwilkinson</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=jmwilkinson" title="Code">💻</a></td>
13
- </tr>
14
- <tr>
15
- <td align="center"><a href="https://github.com/bufferoverflow"><img src="https://avatars2.githubusercontent.com/u/378909?v=4" width="100px;" alt=""/><br /><sub><b>Roger Meier</b></sub></a><br /><a href="#plugin-bufferoverflow" title="Plugin/utility libraries">🔌</a></td>
16
- <td align="center"><a href="https://ghuser.io/jamesgeorge007"><img src="https://avatars2.githubusercontent.com/u/25279263?v=4" width="100px;" alt=""/><br /><sub><b>James George</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=jamesgeorge007" title="Code">💻</a></td>
17
- <td align="center"><a href="https://github.com/AvailCat"><img src="https://avatars3.githubusercontent.com/u/19658647?v=4" width="100px;" alt=""/><br /><sub><b>AvailCat</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=AvailCat" title="Code">💻</a> <a href="#infra-AvailCat" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#maintenance-AvailCat" title="Maintenance">🚧</a></td>
18
- <td align="center"><a href="https://www.luciusgaitan.com/"><img src="https://avatars0.githubusercontent.com/u/5970350?v=4" width="100px;" alt=""/><br /><sub><b>Lucius Gaitán</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=lgaitan" title="Code">💻</a></td>
19
- <td align="center"><a href="https://github.com/ramonornela"><img src="https://avatars1.githubusercontent.com/u/187946?v=4" width="100px;" alt=""/><br /><sub><b>Ramon Henrique Ornelas</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=ramonornela" title="Code">💻</a></td>
20
- <td align="center"><a href="https://people.freebsd.org/~mi/resume/"><img src="https://avatars1.githubusercontent.com/u/1486340?v=4" width="100px;" alt=""/><br /><sub><b>UnitedMarsupials-zz</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=UnitedMarsupials-zz" title="Code">💻</a></td>
21
- <td align="center"><a href="http://www.codingintrigue.co.uk/"><img src="https://avatars0.githubusercontent.com/u/9048902?v=4" width="100px;" alt=""/><br /><sub><b>Ryan Graham</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=ryan-codingintrigue" title="Code">💻</a></td>
22
- </tr>
23
- <tr>
24
- <td align="center"><a href="https://github.com/coolsp"><img src="https://avatars1.githubusercontent.com/u/1246647?v=4" width="100px;" alt=""/><br /><sub><b>coolsp</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=coolsp" title="Code">💻</a></td>
25
- <td align="center"><a href="http://ashishsurana.in/"><img src="https://avatars0.githubusercontent.com/u/5610944?v=4" width="100px;" alt=""/><br /><sub><b>Ashish Surana</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=ashishsurana" title="Code">💻</a></td>
26
- <td align="center"><a href="https://github.com/buffaybu"><img src="https://avatars3.githubusercontent.com/u/2025661?v=4" width="100px;" alt=""/><br /><sub><b>Wang Yifei</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=buffaybu" title="Code">💻</a></td>
27
- <td align="center"><a href="https://twitter.com/liran_tal"><img src="https://avatars1.githubusercontent.com/u/316371?v=4" width="100px;" alt=""/><br /><sub><b>Liran Tal</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=lirantal" title="Code">💻</a></td>
28
- <td align="center"><a href="https://github.com/brenordr"><img src="https://avatars2.githubusercontent.com/u/19731692?v=4" width="100px;" alt=""/><br /><sub><b>Breno Rodrigues</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=brenordr" title="Code">💻</a></td>
29
- <td align="center"><a href="https://github.com/jachstet-sea"><img src="https://avatars0.githubusercontent.com/u/7993508?v=4" width="100px;" alt=""/><br /><sub><b>jachstet-sea</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=jachstet-sea" title="Code">💻</a></td>
30
- <td align="center"><a href="https://patrik.votocek.cz/"><img src="https://avatars1.githubusercontent.com/u/112567?v=4" width="100px;" alt=""/><br /><sub><b>Patrik Votoček</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=Vrtak-CZ" title="Code">💻</a></td>
31
- </tr>
32
- <tr>
33
- <td align="center"><a href="https://github.com/monkeywithacupcake"><img src="https://avatars3.githubusercontent.com/u/7316730?v=4" width="100px;" alt=""/><br /><sub><b>jess</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=monkeywithacupcake" title="Code">💻</a></td>
34
- <td align="center"><a href="https://github.com/toolsofraj"><img src="https://avatars0.githubusercontent.com/u/2507152?v=4" width="100px;" alt=""/><br /><sub><b>toolsofraj</b></sub></a><br /><a href="https://github.com/verdaccio/verdaccio/commits?author=toolsofraj" title="Code">💻</a></td>
35
- <td align="center"><a href="https://github.com/ddhp"><img src="https://avatars1.githubusercontent.com/u/1715380?v=4" width="100px;" alt=""/><br /><sub><b>Jian-Chen Chen (jesse)</b></sub></a><br /><a href="#translation-ddhp" title="Translation">🌍</a> <a href="https://github.com/verdaccio/verdaccio/commits?author=ddhp" title="Code">💻</a></td>
36
- </tr>
37
- </table>
38
-
39
- <!-- markdownlint-enable -->
40
- <!-- prettier-ignore-end -->
41
- <!-- ALL-CONTRIBUTORS-LIST:END -->
package/SECURITY.md DELETED
@@ -1,76 +0,0 @@
1
- # Security Policy
2
-
3
- ## Supported versions
4
-
5
- The following table describes the versions of this project that are currently supported with security updates:
6
-
7
- | Version | Supported |
8
- | ------- | ---------------------------------------- |
9
- | 2.x | :x: |
10
- | 3.x | :x: |
11
- | 4.x | :white_check_mark: (until 1st July 2021) |
12
- | 5.x | :white_check_mark: |
13
-
14
- ## Responsible disclosure security policy
15
-
16
- A responsible disclosure policy helps protect users of the project from publicly disclosed security vulnerabilities without a fix by employing a process where vulnerabilities are first triaged in a private manner, and only publicly disclosed after a reasonable time period that allows patching the vulnerability and provides an upgrade path for users.
17
-
18
- When contacting us directly via email, we will do our best efforts to respond in a reasonable time to resolve the issue. When contacting a security program their disclosure policy will provide details on timeframe, processes and paid bounties.
19
-
20
- We kindly ask you to refrain from malicious acts that put our users, the project, or any of the project’s team members at risk.
21
-
22
- ## Reporting a security issue
23
-
24
- > Please do not use the provided email address to report issues which are not related to security vulnerabilities
25
-
26
- At Verdaccio, we consider the security of our systems a top priority. But no matter how much effort we put into system security, there can still be vulnerabilities present.
27
-
28
- If you discover a security vulnerability, please use one of the following means of communications to report it to us:
29
-
30
- - Report the security issue to the Node.js Security WG through the [HackerOne program](https://hackerone.com/nodejs-ecosystem) for ecosystem modules on npm, or to [Snyk Security Team](https://snyk.io/vulnerability-disclosure). They will help triage the security issue and work with all involved parties to remediate and release a fix.
31
-
32
- Note that time-frame and processes are subject to each program’s own policy.
33
-
34
- - Report the security issue to the project maintainers directly at verdaccio@pm.me. If the report contains highly sensitive information, please be advised to encrypt your findings using our [PGP key](https://verdaccio.nyc3.digitaloceanspaces.com/gpg/publickey.verdaccio@pm.me.asc) which is also available in this document.
35
-
36
- Your efforts to responsibly disclose your findings are sincerely appreciated and will be taken into account to acknowledge your contributions.
37
-
38
- ## PGP key
39
-
40
- The following is this project’s PGP key which should be used to encrypt any sensitive information shared on unsecured medium such as e-mails:
41
-
42
- ```
43
- -----BEGIN PGP PUBLIC KEY BLOCK-----
44
- Version: OpenPGP.js v4.5.1
45
- Comment: https://openpgpjs.org
46
-
47
- xsBNBFzm3asBCACxnJDv1r6dxiM2e8iqS6B7fxY2I3X1Rc+3m8mhXOwVwRG4
48
- AOrQ417oSzsVLf4iocg+DWrtxzY79odTLJEovVt79rxwqIIl4y96tH+29kLB
49
- ao7eaYZacfstonVkBAmxBLaYv1x7cqWuukm6sBCOxapW1X9BcbR3vOghDziY
50
- /1AwNjupAOPvKNMtghjrdh3w0iMfZS1hw28zjM1oCeezEil+CTjgQDN+69qS
51
- UFG/BInJ7CVn9TvhU85inSwpxVa576fkhvFoNUrGvFvYRWtXRJndbRdBodVj
52
- C9At/Gb2IeNf7xqXH2KloZ1yaVNVSzLX4jqrMWeF+9Z12SjUyL6G9TwDABEB
53
- AAHNIXZlcmRhY2Npb0BwbS5tZSA8dmVyZGFjY2lvQHBtLm1lPsLAdQQQAQgA
54
- HwUCXObdqwYLCQcIAwIEFQgKAgMWAgECGQECGwMCHgEACgkQpSvoGbwFJYhn
55
- 2wf+JF+yLQXh1EFMih6lpbx243hvglgOWmcigYVRh5mSfULcdW2pmkPQXqhE
56
- DW73qqwN9G9piiPnGMw7sKoB7XJVuFKyvHOYKtem5UQVRvs2rTxnSc5qFcUJ
57
- 0w3Tw/pZ9B3fYAEYti2B/GsSOzaECfBKCFOg15xXGAdwfgff5FsorN1Gb6MG
58
- eCO9c8faSF/+fQUCfokwMDVzxXQFZEMx3q/rHVJ/Fm+XelZ+00c9fdyiuPW5
59
- dM9gATle7lz0iPtxaUDGLW8QZ/7b6O8IJ1kle0tL4AE++bXsVWxNdzhlNohH
60
- Hn09sIdFnG4ySTz4YJjiDd70ZdQjOGEGvutymEIN1xcNq87ATQRc5t2rAQgA
61
- yX2ZhUCtrz7lzK0992yveB+duVF//yo9Pei2ra9Z3GNmA+oWlRH1FTWpAmVH
62
- uDdUchTnxAwaKntabt3Mb1AgEZwrdiG4LuHFbdx2ls93BJ5lXdp7vB6pVf3N
63
- IrhHKyQ/Y5L5kMSj/GjrhO19zmj6mPPEgb3M3ZIZjQUF4pro0pExuAPA9Wxe
64
- awn5+0BUYFs4mZQDtTdiVuz5tWA0fNtt1aBfOPA97tmn18y4b1b0iQIJQpep
65
- BVVnFLeAZOevDcBJFbmQOdAjufWSSgpzX+FZ3rx6RVwwKxUiVQyUuwSQkKh5
66
- RufZ5zE0y7Fe/YlWXbKoj4zNJqYtjPSPngQRWf7UpwARAQABwsBfBBgBCAAJ
67
- BQJc5t2rAhsMAAoJEKUr6Bm8BSWIoYQH+QDw0Z84tZK4N1lh49hYyohs6vNU
68
- 9kG69nKLQA5NymPtTxh8YOJhdJL697FkvKI4OGEO2FXUmcJS3CBJ2nBVKMq2
69
- 1biDRKC4OhIU2RgFhS6bHy6VOn24EYs77T+zX8YXpz8ulYVln2b0QZCubN0Z
70
- L50tEC8HnuVMVN+/pqITdD3FjzwGZgHdW8qkKgD6qhObHCl8/cW2buCsaIAY
71
- eZWVPgPY1S1U0V608qYNtUCkrmUW5Sl6YLvz7JTvTsaym5mzyFXF3ErAURgI
72
- /v4XaWmRgNGIxbIxsFGuEs+KIKBQDJmtvJCVpBNS5IYnFf5h/LA5cfkwMKJt
73
- wXhyE0b/iDs60ZM=
74
- =QWXs
75
- -----END PGP PUBLIC KEY BLOCK-----
76
- ```
package/babel.config.js DELETED
@@ -1,22 +0,0 @@
1
- module.exports = {
2
- presets: [
3
- [
4
- '@babel/env',
5
- {
6
- targets: {
7
- node: '12',
8
- },
9
- },
10
- ],
11
- '@babel/typescript',
12
- ],
13
- plugins: [
14
- 'babel-plugin-dynamic-import-node',
15
- '@babel/proposal-class-properties',
16
- '@babel/proposal-object-rest-spread',
17
- '@babel/plugin-proposal-optional-chaining',
18
- '@babel/plugin-proposal-nullish-coalescing-operator',
19
- '@babel/syntax-dynamic-import',
20
- ],
21
- ignore: ['**/*.d.ts'],
22
- };
@@ -1,33 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _lodash = _interopRequireDefault(require("lodash"));
9
-
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
-
12
- var _default = (app, selfPath) => {
13
- // Hook for tests only
14
- app.get('/-/_debug', function (req, res, next) {
15
- const doGarbabeCollector = _lodash.default.isNil(global.gc) === false;
16
-
17
- if (doGarbabeCollector) {
18
- global.gc();
19
- }
20
-
21
- next({
22
- pid: process.pid,
23
- // @ts-ignore
24
- main: process.mainModule.filename,
25
- conf: selfPath,
26
- mem: process.memoryUsage(),
27
- gc: doGarbabeCollector
28
- });
29
- });
30
- };
31
-
32
- exports.default = _default;
33
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhcHAiLCJzZWxmUGF0aCIsImdldCIsInJlcSIsInJlcyIsIm5leHQiLCJkb0dhcmJhYmVDb2xsZWN0b3IiLCJfIiwiaXNOaWwiLCJnbG9iYWwiLCJnYyIsInBpZCIsInByb2Nlc3MiLCJtYWluIiwibWFpbk1vZHVsZSIsImZpbGVuYW1lIiwiY29uZiIsIm1lbSIsIm1lbW9yeVVzYWdlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwaS9kZWJ1Zy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHBsaWNhdGlvbiB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuaW1wb3J0IHsgJE5leHRGdW5jdGlvblZlciwgJFJlcXVlc3RFeHRlbmQsICRSZXNwb25zZUV4dGVuZCB9IGZyb20gJy4uLy4uLy4uL3R5cGVzJztcblxuZXhwb3J0IGRlZmF1bHQgKGFwcDogQXBwbGljYXRpb24sIHNlbGZQYXRoOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgLy8gSG9vayBmb3IgdGVzdHMgb25seVxuICBhcHAuZ2V0KCcvLS9fZGVidWcnLCBmdW5jdGlvbiAocmVxOiAkUmVxdWVzdEV4dGVuZCwgcmVzOiAkUmVzcG9uc2VFeHRlbmQsIG5leHQ6ICROZXh0RnVuY3Rpb25WZXIpOiB2b2lkIHtcbiAgICBjb25zdCBkb0dhcmJhYmVDb2xsZWN0b3IgPSBfLmlzTmlsKGdsb2JhbC5nYykgPT09IGZhbHNlO1xuXG4gICAgaWYgKGRvR2FyYmFiZUNvbGxlY3Rvcikge1xuICAgICAgZ2xvYmFsLmdjKCk7XG4gICAgfVxuXG4gICAgbmV4dCh7XG4gICAgICBwaWQ6IHByb2Nlc3MucGlkLFxuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgbWFpbjogcHJvY2Vzcy5tYWluTW9kdWxlLmZpbGVuYW1lLFxuICAgICAgY29uZjogc2VsZlBhdGgsXG4gICAgICBtZW06IHByb2Nlc3MubWVtb3J5VXNhZ2UoKSxcbiAgICAgIGdjOiBkb0dhcmJhYmVDb2xsZWN0b3IsXG4gICAgfSk7XG4gIH0pO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBOzs7O2VBSWUsQ0FBQ0EsR0FBRCxFQUFtQkMsUUFBbkIsS0FBOEM7RUFDM0Q7RUFDQUQsR0FBRyxDQUFDRSxHQUFKLENBQVEsV0FBUixFQUFxQixVQUFVQyxHQUFWLEVBQStCQyxHQUEvQixFQUFxREMsSUFBckQsRUFBbUY7SUFDdEcsTUFBTUMsa0JBQWtCLEdBQUdDLGVBQUEsQ0FBRUMsS0FBRixDQUFRQyxNQUFNLENBQUNDLEVBQWYsTUFBdUIsS0FBbEQ7O0lBRUEsSUFBSUosa0JBQUosRUFBd0I7TUFDdEJHLE1BQU0sQ0FBQ0MsRUFBUDtJQUNEOztJQUVETCxJQUFJLENBQUM7TUFDSE0sR0FBRyxFQUFFQyxPQUFPLENBQUNELEdBRFY7TUFFSDtNQUNBRSxJQUFJLEVBQUVELE9BQU8sQ0FBQ0UsVUFBUixDQUFtQkMsUUFIdEI7TUFJSEMsSUFBSSxFQUFFZixRQUpIO01BS0hnQixHQUFHLEVBQUVMLE9BQU8sQ0FBQ00sV0FBUixFQUxGO01BTUhSLEVBQUUsRUFBRUo7SUFORCxDQUFELENBQUo7RUFRRCxDQWZEO0FBZ0JELEMifQ==