@verdaccio/web 6.0.0-6-next.21 → 6.0.0-6-next.22
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.
- package/CHANGELOG.md +28 -0
- package/build/api/package.js +4 -10
- package/build/api/package.js.map +1 -1
- package/build/middleware/render-web.js +2 -2
- package/build/middleware/render-web.js.map +1 -1
- package/build/renderHTML.js +9 -9
- package/build/renderHTML.js.map +1 -1
- package/build/template.js +2 -2
- package/build/template.js.map +1 -1
- package/package.json +17 -19
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# @verdaccio/web
|
|
2
2
|
|
|
3
|
+
## 6.0.0-6-next.22
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- 000d4374: feat: upgrade to material ui 5
|
|
8
|
+
|
|
9
|
+
### Minor Changes
|
|
10
|
+
|
|
11
|
+
- 24b9be02: refactor: improve docker image build with strict dependencies and prod build
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- Updated dependencies [a828271d]
|
|
16
|
+
- Updated dependencies [24b9be02]
|
|
17
|
+
- Updated dependencies [e75c0a3b]
|
|
18
|
+
- Updated dependencies [b13a3fef]
|
|
19
|
+
- @verdaccio/tarball@11.0.0-6-next.11
|
|
20
|
+
- @verdaccio/store@6.0.0-6-next.17
|
|
21
|
+
- @verdaccio/utils@6.0.0-6-next.10
|
|
22
|
+
- @verdaccio/core@6.0.0-6-next.4
|
|
23
|
+
- @verdaccio/middleware@6.0.0-6-next.16
|
|
24
|
+
- @verdaccio/logger@6.0.0-6-next.8
|
|
25
|
+
- @verdaccio/auth@6.0.0-6-next.16
|
|
26
|
+
- @verdaccio/config@6.0.0-6-next.12
|
|
27
|
+
- @verdaccio/url@11.0.0-6-next.8
|
|
28
|
+
- @verdaccio/loaders@6.0.0-6-next.8
|
|
29
|
+
- @verdaccio/readme@11.0.0-6-next.4
|
|
30
|
+
|
|
3
31
|
## 6.0.0-6-next.21
|
|
4
32
|
|
|
5
33
|
### Minor Changes
|
package/build/api/package.js
CHANGED
|
@@ -39,12 +39,6 @@ var _webUtils = require("../utils/web-utils");
|
|
|
39
39
|
|
|
40
40
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
41
41
|
|
|
42
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
43
|
-
|
|
44
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
45
|
-
|
|
46
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
47
|
-
|
|
48
42
|
// Was required by other packages
|
|
49
43
|
const getOrder = (order = 'asc') => {
|
|
50
44
|
return order === 'asc';
|
|
@@ -53,9 +47,9 @@ const getOrder = (order = 'asc') => {
|
|
|
53
47
|
const debug = (0, _debug.default)('verdaccio:web:api:package');
|
|
54
48
|
|
|
55
49
|
function addPackageWebApi(route, storage, auth, config) {
|
|
56
|
-
var
|
|
50
|
+
var _config$web;
|
|
57
51
|
|
|
58
|
-
const isLoginEnabled = (
|
|
52
|
+
const isLoginEnabled = (config === null || config === void 0 ? void 0 : (_config$web = config.web) === null || _config$web === void 0 ? void 0 : _config$web.login) === true ?? true; // eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
59
53
|
|
|
60
54
|
const anonymousRemoteUser = {
|
|
61
55
|
name: undefined,
|
|
@@ -99,8 +93,8 @@ function addPackageWebApi(route, storage, auth, config) {
|
|
|
99
93
|
debug('process packages %o', packagesToProcess);
|
|
100
94
|
|
|
101
95
|
for (const pkg of packagesToProcess) {
|
|
102
|
-
const pkgCopy =
|
|
103
|
-
|
|
96
|
+
const pkgCopy = { ...pkg
|
|
97
|
+
};
|
|
104
98
|
pkgCopy.author = (0, _utils.formatAuthor)(pkg.author);
|
|
105
99
|
|
|
106
100
|
try {
|
package/build/api/package.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/api/package.ts"],"names":["getOrder","order","debug","addPackageWebApi","route","storage","auth","config","isLoginEnabled","web","login","anonymousRemoteUser","name","undefined","real_groups","groups","checkAllow","remoteUser","Promise","resolve","reject","allow_access","packageName","err","allowed","get","req","res","next","getLocalDatabase","packages","processPackages","permissions","packagesToProcess","slice","pkg","pkgCopy","author","remote_user","avatar","email","gravatar","_","isNil","dist","isNull","tarball","protocol","headers","host","hostname","url_prefix","push","logger","error","sort_packages"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AAGA;;AACA;;AAEA;;AAEA;;AAEA
|
|
1
|
+
{"version":3,"sources":["../../src/api/package.ts"],"names":["getOrder","order","debug","addPackageWebApi","route","storage","auth","config","isLoginEnabled","web","login","anonymousRemoteUser","name","undefined","real_groups","groups","checkAllow","remoteUser","Promise","resolve","reject","allow_access","packageName","err","allowed","get","req","res","next","getLocalDatabase","packages","processPackages","permissions","packagesToProcess","slice","pkg","pkgCopy","author","remote_user","avatar","email","gravatar","_","isNil","dist","isNull","tarball","protocol","headers","host","hostname","url_prefix","push","logger","error","sort_packages"],"mappings":"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","sourcesContent":["import buildDebug from 'debug';\nimport { Router } from 'express';\nimport _ from 'lodash';\n\nimport { IAuth } from '@verdaccio/auth';\nimport { logger } from '@verdaccio/logger';\nimport { $NextFunctionVer, $RequestExtend, $ResponseExtend } from '@verdaccio/middleware';\nimport { Storage } from '@verdaccio/store';\nimport { getLocalRegistryTarballUri } from '@verdaccio/tarball';\nimport { Config, Package, RemoteUser } from '@verdaccio/types';\nimport { formatAuthor, generateGravatarUrl } from '@verdaccio/utils';\n\nimport { AuthorAvatar, sortByName } from '../utils/web-utils';\n\nexport { $RequestExtend, $ResponseExtend, $NextFunctionVer }; // Was required by other packages\n\nconst getOrder = (order = 'asc') => {\n return order === 'asc';\n};\n\nexport type PackageExt = Package & { author: AuthorAvatar; dist?: { tarball: string } };\n\nconst debug = buildDebug('verdaccio:web:api:package');\n\nfunction addPackageWebApi(route: Router, storage: Storage, auth: IAuth, config: Config): void {\n const isLoginEnabled = config?.web?.login === true ?? true;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const anonymousRemoteUser: RemoteUser = {\n name: undefined,\n real_groups: [],\n groups: [],\n };\n\n debug('initialized package web api');\n const checkAllow = (name: string, remoteUser: RemoteUser): Promise<boolean> =>\n new Promise((resolve, reject): void => {\n debug('is login disabled %o', isLoginEnabled);\n // FIXME: this logic does not work, review\n // const remoteUserAccess = !isLoginEnabled ? anonymousRemoteUser : remoteUser;\n try {\n auth.allow_access({ packageName: name }, remoteUser, (err, allowed): void => {\n if (err) {\n resolve(false);\n }\n resolve(allowed);\n });\n } catch (err: any) {\n reject(err);\n }\n });\n\n // Get list of all visible package\n route.get(\n '/packages',\n function (req: $RequestExtend, res: $ResponseExtend, next: $NextFunctionVer): void {\n debug('hit package web api %o');\n storage.getLocalDatabase(async function (err, packages): Promise<void> {\n if (err) {\n throw err;\n }\n async function processPackages(packages: PackageExt[] = []): Promise<PackageExt[]> {\n const permissions: PackageExt[] = [];\n const packagesToProcess = packages.slice();\n debug('process packages %o', packagesToProcess);\n for (const pkg of packagesToProcess) {\n const pkgCopy = { ...pkg };\n pkgCopy.author = formatAuthor(pkg.author);\n try {\n if (await checkAllow(pkg.name, req.remote_user)) {\n if (config.web) {\n pkgCopy.author.avatar = generateGravatarUrl(\n pkgCopy.author.email,\n config.web.gravatar\n );\n }\n // convert any remote dist to a local reference\n // eg: if the dist points to npmjs, switch to localhost:4873/prefix/etc.tar.gz\n if (!_.isNil(pkgCopy.dist) && !_.isNull(pkgCopy.dist.tarball)) {\n pkgCopy.dist.tarball = getLocalRegistryTarballUri(\n pkgCopy.dist.tarball,\n pkg.name,\n { protocol: req.protocol, headers: req.headers as any, host: req.hostname },\n config?.url_prefix\n );\n }\n permissions.push(pkgCopy);\n }\n } catch (err: any) {\n debug('process packages error %o', err);\n logger.logger.error(\n { name: pkg.name, error: err },\n 'permission process for @{name} has failed: @{error}'\n );\n throw err;\n }\n }\n\n return permissions;\n }\n\n const order = getOrder(config?.web?.sort_packages);\n debug('order %o', order);\n\n try {\n next(sortByName(await processPackages(packages), order));\n } catch (error: any) {\n next(error);\n }\n });\n }\n );\n}\n\nexport default addPackageWebApi;\n"],"file":"package.js"}
|
|
@@ -51,7 +51,7 @@ const sendFileCallback = next => err => {
|
|
|
51
51
|
};
|
|
52
52
|
|
|
53
53
|
function renderWebMiddleware(config, auth, storage) {
|
|
54
|
-
var _config$web
|
|
54
|
+
var _config$web;
|
|
55
55
|
|
|
56
56
|
const {
|
|
57
57
|
staticPath,
|
|
@@ -70,7 +70,7 @@ function renderWebMiddleware(config, auth, storage) {
|
|
|
70
70
|
router.use(auth.webUIJWTmiddleware());
|
|
71
71
|
router.use(_security.setSecurityWebHeaders); // Logo
|
|
72
72
|
|
|
73
|
-
let logoURI = (
|
|
73
|
+
let logoURI = (config === null || config === void 0 ? void 0 : (_config$web = config.web) === null || _config$web === void 0 ? void 0 : _config$web.logo) ?? '';
|
|
74
74
|
|
|
75
75
|
if (logoURI && !(0, _url.isURLhasValidProtocol)(logoURI)) {
|
|
76
76
|
// URI related to a local file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/middleware/render-web.ts"],"names":["debug","loadTheme","config","_","isNil","theme","head","plugin","isString","sendFileCallback","next","err","status","HTTP_STATUS","NOT_FOUND","renderWebMiddleware","auth","storage","staticPath","manifest","manifestFiles","require","SearchInstance","configureStorage","router","express","Router","use","webUIJWTmiddleware","setSecurityWebHeaders","logoURI","web","logo","path","posix","join","basename","get","req","res","sendFile","resolve","filename","params","file"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;AAEA,MAAMA,KAAK,GAAG,oBAAW,sBAAX,CAAd;;AAEO,SAASC,SAAT,CAAmBC,MAAnB,EAA2B;AAChC,MAAIC,gBAAEC,KAAF,CAAQF,MAAM,CAACG,KAAf,MAA0B,KAA9B,EAAqC;AACnC,WAAOF,gBAAEG,IAAF,CACL,yBACEJ,MADF,EAEEA,MAAM,CAACG,KAFT,EAGE,EAHF,EAIE,UAAUE,MAAV,EAAkB;AAChB,aAAOJ,gBAAEK,QAAF,CAAWD,MAAX,CAAP;AACD,KANH,EAOE,iBAPF,CADK,CAAP;AAWD;AACF;;AAED,MAAME,gBAAgB,GAAIC,IAAD,IAAWC,GAAD,IAAS;AAC1C,MAAI,CAACA,GAAL,EAAU;AACR;AACD;;AACD,MAAIA,GAAG,CAACC,MAAJ,KAAeC,kBAAYC,SAA/B,EAA0C;AACxCJ,IAAAA,IAAI;AACL,GAFD,MAEO;AACLA,IAAAA,IAAI,CAACC,GAAD,CAAJ;AACD;AACF,CATD;;AAWO,SAASI,mBAAT,CAA6Bb,MAA7B,EAAqCc,IAArC,EAA2CC,OAA3C,EAAyD;AAAA;;AAC9D,QAAM;AAAEC,IAAAA,UAAF;AAAcC,IAAAA,QAAd;AAAwBC,IAAAA;AAAxB,MAA0CC,OAAO,CAAC,qBAAD,CAAP,EAAhD;;AACArB,EAAAA,KAAK,CAAC,gBAAD,EAAmBkB,UAAnB,CAAL;;AACAI,wBAAeC,gBAAf,CAAgCN,OAAhC;AAEA;;;AACA,QAAMO,MAAM,GAAGC,iBAAQC,MAAR,EAAf;;AACAF,EAAAA,MAAM,CAACG,GAAP,CAAWX,IAAI,CAACY,kBAAL,EAAX;AACAJ,EAAAA,MAAM,CAACG,GAAP,CAAWE,+BAAX,EAR8D,CAU9D;;AACA,MAAIC,OAAO,
|
|
1
|
+
{"version":3,"sources":["../../src/middleware/render-web.ts"],"names":["debug","loadTheme","config","_","isNil","theme","head","plugin","isString","sendFileCallback","next","err","status","HTTP_STATUS","NOT_FOUND","renderWebMiddleware","auth","storage","staticPath","manifest","manifestFiles","require","SearchInstance","configureStorage","router","express","Router","use","webUIJWTmiddleware","setSecurityWebHeaders","logoURI","web","logo","path","posix","join","basename","get","req","res","sendFile","resolve","filename","params","file"],"mappings":"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","sourcesContent":["import buildDebug from 'debug';\nimport express from 'express';\nimport _ from 'lodash';\nimport path from 'path';\n\nimport { HTTP_STATUS } from '@verdaccio/core';\nimport { loadPlugin } from '@verdaccio/loaders';\nimport { SearchInstance } from '@verdaccio/store';\nimport { isURLhasValidProtocol } from '@verdaccio/url';\n\nimport renderHTML from '../renderHTML';\nimport { setSecurityWebHeaders } from './security';\n\nconst debug = buildDebug('verdaccio:web:render');\n\nexport function loadTheme(config) {\n if (_.isNil(config.theme) === false) {\n return _.head(\n loadPlugin(\n config,\n config.theme,\n {},\n function (plugin) {\n return _.isString(plugin);\n },\n 'verdaccio-theme'\n )\n );\n }\n}\n\nconst sendFileCallback = (next) => (err) => {\n if (!err) {\n return;\n }\n if (err.status === HTTP_STATUS.NOT_FOUND) {\n next();\n } else {\n next(err);\n }\n};\n\nexport function renderWebMiddleware(config, auth, storage): any {\n const { staticPath, manifest, manifestFiles } = require('@verdaccio/ui-theme')();\n debug('static path %o', staticPath);\n SearchInstance.configureStorage(storage);\n\n /* eslint new-cap:off */\n const router = express.Router();\n router.use(auth.webUIJWTmiddleware());\n router.use(setSecurityWebHeaders);\n\n // Logo\n let logoURI = config?.web?.logo ?? '';\n if (logoURI && !isURLhasValidProtocol(logoURI)) {\n // URI related to a local file\n\n // Note: `path.join` will break on Windows, because it transforms `/` to `\\`\n // Use POSIX version `path.posix.join` instead.\n logoURI = path.posix.join('/-/static/', path.basename(logoURI));\n router.get(logoURI, function (req, res, next) {\n res.sendFile(path.resolve(config.web.logo), sendFileCallback(next));\n debug('render static');\n });\n }\n\n // Static\n router.get('/-/static/*', function (req, res, next) {\n const filename = req.params[0];\n const file = `${staticPath}/${filename}`;\n debug('render static file %o', file);\n res.sendFile(file, sendFileCallback(next));\n });\n\n router.get('/-/web/:section/*', function (req, res) {\n renderHTML(config, manifest, manifestFiles, req, res);\n debug('render html section');\n });\n\n router.get('/', function (req, res) {\n renderHTML(config, manifest, manifestFiles, req, res);\n debug('render root');\n });\n\n return router;\n}\n"],"file":"render-web.js"}
|
package/build/renderHTML.js
CHANGED
|
@@ -37,22 +37,22 @@ const defaultManifestFiles = {
|
|
|
37
37
|
};
|
|
38
38
|
|
|
39
39
|
function renderHTML(config, manifest, manifestFiles, req, res) {
|
|
40
|
-
var _config$i18n
|
|
40
|
+
var _config$i18n, _config$web, _config$web2, _config$web3, _config$web4, _config$web5, _config$web6;
|
|
41
41
|
|
|
42
42
|
const {
|
|
43
43
|
url_prefix
|
|
44
44
|
} = config;
|
|
45
45
|
const base = (0, _url2.getPublicUrl)(config === null || config === void 0 ? void 0 : config.url_prefix, req);
|
|
46
46
|
const basename = new _url.URL(base).pathname;
|
|
47
|
-
const language = (
|
|
48
|
-
const darkMode = (
|
|
49
|
-
const title = (
|
|
47
|
+
const language = (config === null || config === void 0 ? void 0 : (_config$i18n = config.i18n) === null || _config$i18n === void 0 ? void 0 : _config$i18n.web) ?? DEFAULT_LANGUAGE;
|
|
48
|
+
const darkMode = (config === null || config === void 0 ? void 0 : (_config$web = config.web) === null || _config$web === void 0 ? void 0 : _config$web.darkMode) ?? false;
|
|
49
|
+
const title = (config === null || config === void 0 ? void 0 : (_config$web2 = config.web) === null || _config$web2 === void 0 ? void 0 : _config$web2.title) ?? _config.WEB_TITLE;
|
|
50
50
|
const login = (0, _webUtils.hasLogin)(config);
|
|
51
|
-
const scope = (
|
|
52
|
-
const logoURI = (
|
|
53
|
-
const pkgManagers = (
|
|
51
|
+
const scope = (config === null || config === void 0 ? void 0 : (_config$web3 = config.web) === null || _config$web3 === void 0 ? void 0 : _config$web3.scope) ?? '';
|
|
52
|
+
const logoURI = (config === null || config === void 0 ? void 0 : (_config$web4 = config.web) === null || _config$web4 === void 0 ? void 0 : _config$web4.logo) ?? '';
|
|
53
|
+
const pkgManagers = (config === null || config === void 0 ? void 0 : (_config$web5 = config.web) === null || _config$web5 === void 0 ? void 0 : _config$web5.pkgManagers) ?? ['yarn', 'pnpm', 'npm'];
|
|
54
54
|
const version = pkgJSON.version;
|
|
55
|
-
const primaryColor = (
|
|
55
|
+
const primaryColor = (0, _webUtils.validatePrimaryColor)(config === null || config === void 0 ? void 0 : (_config$web6 = config.web) === null || _config$web6 === void 0 ? void 0 : _config$web6.primary_color) ?? '#4b5e40';
|
|
56
56
|
const {
|
|
57
57
|
scriptsBodyAfter,
|
|
58
58
|
metaScripts,
|
|
@@ -85,7 +85,7 @@ function renderHTML(config, manifest, manifestFiles, req, res) {
|
|
|
85
85
|
debug('web options %o', options);
|
|
86
86
|
debug('web manifestFiles %o', manifestFiles);
|
|
87
87
|
webPage = (0, _template.default)({
|
|
88
|
-
manifest: manifestFiles
|
|
88
|
+
manifest: manifestFiles ?? defaultManifestFiles,
|
|
89
89
|
options,
|
|
90
90
|
scriptsBodyAfter,
|
|
91
91
|
metaScripts,
|
package/build/renderHTML.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/renderHTML.ts"],"names":["pkgJSON","require","DEFAULT_LANGUAGE","cache","LRU","max","maxAge","debug","defaultManifestFiles","js","ico","renderHTML","config","manifest","manifestFiles","req","res","url_prefix","base","basename","URL","pathname","language","i18n","web","darkMode","title","WEB_TITLE","login","scope","logoURI","logo","pkgManagers","version","primaryColor","primary_color","scriptsBodyAfter","metaScripts","scriptsbodyBefore","Object","assign","bodyBefore","options","webPage","get","set","error","Error","stack","setHeader","HEADERS","TEXT_HTML","send"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AAEA;;AACA;;;;AAEA,MAAMA,OAAO,GAAGC,OAAO,CAAC,iBAAD,CAAvB;;AACA,MAAMC,gBAAgB,GAAG,OAAzB;AACA,MAAMC,KAAK,GAAG,IAAIC,iBAAJ,CAAQ;AAAEC,EAAAA,GAAG,EAAE,GAAP;AAAYC,EAAAA,MAAM,EAAE,OAAO,EAAP,GAAY;AAAhC,CAAR,CAAd;AAEA,MAAMC,KAAK,GAAG,oBAAW,sBAAX,CAAd;AAEA,MAAMC,oBAAoB,GAAG;AAC3BC,EAAAA,EAAE,EAAE,CAAC,YAAD,EAAe,YAAf,EAA6B,SAA7B,CADuB;AAE3BC,EAAAA,GAAG,EAAE;AAFsB,CAA7B;;AAKe,SAASC,UAAT,CAAoBC,MAApB,EAA4BC,QAA5B,EAAsCC,aAAtC,EAAqDC,GAArD,EAA0DC,GAA1D,EAA+D;AAAA;;AAC5E,QAAM;AAAEC,IAAAA;AAAF,MAAiBL,MAAvB;AACA,QAAMM,IAAI,GAAG,wBAAaN,MAAb,aAAaA,MAAb,uBAAaA,MAAM,CAAEK,UAArB,EAAiCF,GAAjC,CAAb;AACA,QAAMI,QAAQ,GAAG,IAAIC,QAAJ,CAAQF,IAAR,EAAcG,QAA/B;AACA,QAAMC,QAAQ,
|
|
1
|
+
{"version":3,"sources":["../src/renderHTML.ts"],"names":["pkgJSON","require","DEFAULT_LANGUAGE","cache","LRU","max","maxAge","debug","defaultManifestFiles","js","ico","renderHTML","config","manifest","manifestFiles","req","res","url_prefix","base","basename","URL","pathname","language","i18n","web","darkMode","title","WEB_TITLE","login","scope","logoURI","logo","pkgManagers","version","primaryColor","primary_color","scriptsBodyAfter","metaScripts","scriptsbodyBefore","Object","assign","bodyBefore","options","webPage","get","set","error","Error","stack","setHeader","HEADERS","TEXT_HTML","send"],"mappings":"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","sourcesContent":["import buildDebug from 'debug';\nimport LRU from 'lru-cache';\nimport { URL } from 'url';\n\nimport { WEB_TITLE } from '@verdaccio/config';\nimport { HEADERS } from '@verdaccio/core';\nimport { getPublicUrl } from '@verdaccio/url';\n\nimport renderTemplate from './template';\nimport { hasLogin, validatePrimaryColor } from './utils/web-utils';\n\nconst pkgJSON = require('../package.json');\nconst DEFAULT_LANGUAGE = 'es-US';\nconst cache = new LRU({ max: 500, maxAge: 1000 * 60 * 60 });\n\nconst debug = buildDebug('verdaccio:web:render');\n\nconst defaultManifestFiles = {\n js: ['runtime.js', 'vendors.js', 'main.js'],\n ico: 'favicon.ico',\n};\n\nexport default function renderHTML(config, manifest, manifestFiles, req, res) {\n const { url_prefix } = config;\n const base = getPublicUrl(config?.url_prefix, req);\n const basename = new URL(base).pathname;\n const language = config?.i18n?.web ?? DEFAULT_LANGUAGE;\n const darkMode = config?.web?.darkMode ?? false;\n const title = config?.web?.title ?? WEB_TITLE;\n const login = hasLogin(config);\n const scope = config?.web?.scope ?? '';\n const logoURI = config?.web?.logo ?? '';\n const pkgManagers = config?.web?.pkgManagers ?? ['yarn', 'pnpm', 'npm'];\n const version = pkgJSON.version;\n const primaryColor = validatePrimaryColor(config?.web?.primary_color) ?? '#4b5e40';\n const { scriptsBodyAfter, metaScripts, scriptsbodyBefore } = Object.assign(\n {},\n {\n scriptsBodyAfter: [],\n bodyBefore: [],\n metaScripts: [],\n },\n config?.web\n );\n const options = {\n darkMode,\n url_prefix,\n basename,\n base,\n primaryColor,\n version,\n logoURI,\n login,\n pkgManagers,\n title,\n scope,\n language,\n };\n\n let webPage;\n\n try {\n webPage = cache.get('template');\n\n if (!webPage) {\n debug('web options %o', options);\n debug('web manifestFiles %o', manifestFiles);\n webPage = renderTemplate(\n {\n manifest: manifestFiles ?? defaultManifestFiles,\n options,\n scriptsBodyAfter,\n metaScripts,\n scriptsbodyBefore,\n },\n manifest\n );\n debug('template :: %o', webPage);\n cache.set('template', webPage);\n debug('set template cache');\n } else {\n debug('reuse template cache');\n }\n } catch (error: any) {\n throw new Error(`theme could not be load, stack ${error.stack}`);\n }\n res.setHeader('Content-Type', HEADERS.TEXT_HTML);\n res.send(webPage);\n debug('render web');\n}\n"],"file":"renderHTML.js"}
|
package/build/template.js
CHANGED
|
@@ -14,7 +14,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
14
14
|
const debug = (0, _debug.default)('verdaccio:web:render:template');
|
|
15
15
|
|
|
16
16
|
function renderTemplate(template, manifest) {
|
|
17
|
-
var _template$options
|
|
17
|
+
var _template$options;
|
|
18
18
|
|
|
19
19
|
debug('template %o', template);
|
|
20
20
|
debug('manifest %o', manifest);
|
|
@@ -24,7 +24,7 @@ function renderTemplate(template, manifest) {
|
|
|
24
24
|
<head>
|
|
25
25
|
<meta charset="utf-8">
|
|
26
26
|
<base href="${template === null || template === void 0 ? void 0 : template.options.base}">
|
|
27
|
-
<title>${(
|
|
27
|
+
<title>${(template === null || template === void 0 ? void 0 : (_template$options = template.options) === null || _template$options === void 0 ? void 0 : _template$options.title) ?? ''}</title>
|
|
28
28
|
<link rel="icon" href="${template === null || template === void 0 ? void 0 : template.options.base}-/static/favicon.ico"/>
|
|
29
29
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
30
30
|
<script>
|
package/build/template.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/template.ts"],"names":["debug","renderTemplate","template","manifest","options","base","title","JSON","stringify","metaScripts","join","scriptsbodyBefore","js","map","item","scriptsBodyAfter"],"mappings":";;;;;;;AAAA;;AAIA;;;;AAEA,MAAMA,KAAK,GAAG,oBAAW,+BAAX,CAAd;;AAee,SAASC,cAAT,CAAwBC,QAAxB,EAA4CC,QAA5C,EAAuE;AAAA;;AACpFH,EAAAA,KAAK,CAAC,aAAD,EAAgBE,QAAhB,CAAL;AACAF,EAAAA,KAAK,CAAC,aAAD,EAAgBG,QAAhB,CAAL;AAEA,SAAQ;AACV;AACA;AACA;AACA;AACA,sBAAsBD,QALb,aAKaA,QALb,uBAKaA,QAAQ,CAAEE,OAAV,CAAkBC,IAAK;AAC7C,
|
|
1
|
+
{"version":3,"sources":["../src/template.ts"],"names":["debug","renderTemplate","template","manifest","options","base","title","JSON","stringify","metaScripts","join","scriptsbodyBefore","js","map","item","scriptsBodyAfter"],"mappings":";;;;;;;AAAA;;AAIA;;;;AAEA,MAAMA,KAAK,GAAG,oBAAW,+BAAX,CAAd;;AAee,SAASC,cAAT,CAAwBC,QAAxB,EAA4CC,QAA5C,EAAuE;AAAA;;AACpFH,EAAAA,KAAK,CAAC,aAAD,EAAgBE,QAAhB,CAAL;AACAF,EAAAA,KAAK,CAAC,aAAD,EAAgBG,QAAhB,CAAL;AAEA,SAAQ;AACV;AACA;AACA;AACA;AACA,sBAAsBD,QALb,aAKaA,QALb,uBAKaA,QAAQ,CAAEE,OAAV,CAAkBC,IAAK;AAC7C,iBAAiB,CAAAH,QAAQ,SAAR,IAAAA,QAAQ,WAAR,iCAAAA,QAAQ,CAAEE,OAAV,wEAAmBE,KAAnB,KAA4B,EAAG;AAChD,iCAAiCJ,QAPxB,aAOwBA,QAPxB,uBAOwBA,QAAQ,CAAEE,OAAV,CAAkBC,IAAK;AACxD;AACA;AACA,qDAAqDE,IAAI,CAACC,SAAL,CAAeN,QAAQ,CAACE,OAAxB,CAAiC;AACtF;AACA,UAAUF,QAAQ,SAAR,IAAAA,QAAQ,WAAR,IAAAA,QAAQ,CAAEO,WAAV,GAAwBP,QAAQ,CAACO,WAAT,CAAqBC,IAArB,CAA0B,EAA1B,CAAxB,GAAwD,EAAG;AACrE;AACA;AACA,QAAQR,QAAQ,SAAR,IAAAA,QAAQ,WAAR,IAAAA,QAAQ,CAAES,iBAAV,GAA8BT,QAAQ,CAACS,iBAAT,CAA2BD,IAA3B,CAAgC,EAAhC,CAA9B,GAAoE,EAAG;AAC/E;AACA,UAAU,gCAAiBR,QAAQ,CAACC,QAAT,CAAkBS,EAAnC,EAAuCT,QAAvC,EAAiDD,QAAjD,aAAiDA,QAAjD,uBAAiDA,QAAQ,CAAEE,OAAV,CAAkBC,IAAnE,EACCQ,GADD,CACMC,IAAD,IAAW,8BAA6BA,IAAK,aADlD,EAECJ,IAFD,CAEM,EAFN,CAEU;AACpB,UAAUR,QAAQ,SAAR,IAAAA,QAAQ,WAAR,IAAAA,QAAQ,CAAEa,gBAAV,GAA6Bb,QAAQ,CAACa,gBAAT,CAA0BL,IAA1B,CAA+B,EAA/B,CAA7B,GAAkE,EAAG;AAC/E;AACA;AACA,GAvBE;AAwBD","sourcesContent":["import buildDebug from 'debug';\n\nimport { TemplateUIOptions } from '@verdaccio/types';\n\nimport { Manifest, getManifestValue } from './utils/manifest';\n\nconst debug = buildDebug('verdaccio:web:render:template');\n\nexport type Template = {\n manifest: Manifest;\n options: TemplateUIOptions;\n metaScripts?: string[];\n scriptsBodyAfter?: string[];\n scriptsbodyBefore?: string[];\n};\n\n// the outcome of the Webpack Manifest Plugin\nexport interface WebpackManifest {\n [key: string]: string;\n}\n\nexport default function renderTemplate(template: Template, manifest: WebpackManifest) {\n debug('template %o', template);\n debug('manifest %o', manifest);\n\n return `\n <!DOCTYPE html>\n <html lang=\"en-us\"> \n <head>\n <meta charset=\"utf-8\">\n <base href=\"${template?.options.base}\">\n <title>${template?.options?.title ?? ''}</title> \n <link rel=\"icon\" href=\"${template?.options.base}-/static/favicon.ico\"/>\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" /> \n <script>\n window.__VERDACCIO_BASENAME_UI_OPTIONS=${JSON.stringify(template.options)}\n </script>\n ${template?.metaScripts ? template.metaScripts.join('') : ''}\n </head> \n <body class=\"body\">\n ${template?.scriptsbodyBefore ? template.scriptsbodyBefore.join('') : ''}\n <div id=\"root\"></div>\n ${getManifestValue(template.manifest.js, manifest, template?.options.base)\n .map((item) => `<script defer=\"defer\" src=\"${item}\"></script>`)\n .join('')}\n ${template?.scriptsBodyAfter ? template.scriptsBodyAfter.join('') : ''}\n </body>\n </html>\n `;\n}\n"],"file":"template.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@verdaccio/web",
|
|
3
|
-
"version": "6.0.0-6-next.
|
|
3
|
+
"version": "6.0.0-6-next.22",
|
|
4
4
|
"description": "web ui middleware",
|
|
5
5
|
"main": "./build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -25,32 +25,30 @@
|
|
|
25
25
|
},
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@verdaccio/auth": "6.0.0-6-next.
|
|
29
|
-
"@verdaccio/core": "6.0.0-6-next.
|
|
30
|
-
"@verdaccio/config": "6.0.0-6-next.
|
|
31
|
-
"@verdaccio/loaders": "6.0.0-6-next.
|
|
32
|
-
"@verdaccio/logger": "6.0.0-6-next.
|
|
33
|
-
"@verdaccio/middleware": "6.0.0-6-next.
|
|
28
|
+
"@verdaccio/auth": "6.0.0-6-next.16",
|
|
29
|
+
"@verdaccio/core": "6.0.0-6-next.4",
|
|
30
|
+
"@verdaccio/config": "6.0.0-6-next.12",
|
|
31
|
+
"@verdaccio/loaders": "6.0.0-6-next.8",
|
|
32
|
+
"@verdaccio/logger": "6.0.0-6-next.8",
|
|
33
|
+
"@verdaccio/middleware": "6.0.0-6-next.16",
|
|
34
34
|
"@verdaccio/readme": "11.0.0-6-next.4",
|
|
35
|
-
"@verdaccio/store": "6.0.0-6-next.
|
|
36
|
-
"@verdaccio/tarball": "11.0.0-6-next.
|
|
37
|
-
"@verdaccio/url": "11.0.0-6-next.
|
|
38
|
-
"@verdaccio/utils": "6.0.0-6-next.
|
|
39
|
-
"body-
|
|
40
|
-
"
|
|
41
|
-
"debug": "4.3.2",
|
|
35
|
+
"@verdaccio/store": "6.0.0-6-next.17",
|
|
36
|
+
"@verdaccio/tarball": "11.0.0-6-next.11",
|
|
37
|
+
"@verdaccio/url": "11.0.0-6-next.8",
|
|
38
|
+
"@verdaccio/utils": "6.0.0-6-next.10",
|
|
39
|
+
"body-parser": "1.19.1",
|
|
40
|
+
"debug": "4.3.3",
|
|
42
41
|
"express": "4.17.1",
|
|
43
42
|
"lodash": "4.17.21",
|
|
44
43
|
"lru-cache": "6.0.0"
|
|
45
44
|
},
|
|
46
45
|
"devDependencies": {
|
|
47
|
-
"@types/node": "16.11.
|
|
48
|
-
"@verdaccio/types": "11.0.0-6-next.
|
|
49
|
-
"body-parser": "1.19.0",
|
|
46
|
+
"@types/node": "16.11.12",
|
|
47
|
+
"@verdaccio/types": "11.0.0-6-next.10",
|
|
50
48
|
"node-html-parser": "4.1.5",
|
|
51
49
|
"supertest": "6.1.6",
|
|
52
|
-
"verdaccio-auth-memory": "11.0.0-6-next.
|
|
53
|
-
"verdaccio-memory": "11.0.0-6-next.
|
|
50
|
+
"verdaccio-auth-memory": "11.0.0-6-next.7",
|
|
51
|
+
"verdaccio-memory": "11.0.0-6-next.8"
|
|
54
52
|
},
|
|
55
53
|
"funding": {
|
|
56
54
|
"type": "opencollective",
|