verdaccio-memory 10.3.2 → 10.4.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.
package/lib/index.js CHANGED
@@ -11,7 +11,6 @@ Object.defineProperty(exports, "LocalMemory", {
11
11
  });
12
12
  exports.default = void 0;
13
13
  var _localMemory = _interopRequireDefault(require("./local-memory"));
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
- var _default = _localMemory.default;
16
- exports.default = _default;
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ var _default = exports.default = _localMemory.default;
17
16
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_localMemory","_interopRequireDefault","require","obj","__esModule","default","_default","LocalMemory","exports"],"sources":["../src/index.ts"],"sourcesContent":["import LocalMemory from './local-memory';\n\nexport { LocalMemory };\n\nexport default LocalMemory;\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyC,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,IAAAG,QAAA,GAI1BC,oBAAW;AAAAC,OAAA,CAAAH,OAAA,GAAAC,QAAA"}
1
+ {"version":3,"file":"index.js","names":["_localMemory","_interopRequireDefault","require","e","__esModule","default","_default","exports","LocalMemory"],"sources":["../src/index.ts"],"sourcesContent":["import LocalMemory from './local-memory';\n\nexport { LocalMemory };\n\nexport default LocalMemory;\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyC,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,IAAAG,QAAA,GAAAC,OAAA,CAAAF,OAAA,GAI1BG,oBAAW","ignoreList":[]}
@@ -4,12 +4,20 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _commonsApi = require("@verdaccio/commons-api");
7
+ var _core = require("@verdaccio/core");
8
8
  var _memoryHandler = _interopRequireDefault(require("./memory-handler"));
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
12
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
13
  const DEFAULT_LIMIT = 1000;
11
14
  class LocalMemory {
12
15
  constructor(config, options) {
16
+ _defineProperty(this, "path", void 0);
17
+ _defineProperty(this, "limit", void 0);
18
+ _defineProperty(this, "logger", void 0);
19
+ _defineProperty(this, "data", void 0);
20
+ _defineProperty(this, "config", void 0);
13
21
  this.config = config;
14
22
  this.limit = config.limit || DEFAULT_LIMIT;
15
23
  this.logger = options.logger;
@@ -75,20 +83,19 @@ class LocalMemory {
75
83
  }
76
84
  saveToken(token) {
77
85
  this.logger.warn('[verdaccio/memory][saveToken] save token has not been implemented yet');
78
- return Promise.reject((0, _commonsApi.getServiceUnavailable)('method not implemented'));
86
+ return Promise.reject(_core.errorUtils.getServiceUnavailable('method not implemented'));
79
87
  }
80
88
  deleteToken(user, tokenKey) {
81
89
  this.logger.warn({
82
90
  tokenKey,
83
91
  user
84
92
  }, '[verdaccio/memory][deleteToken] delete token has not been implemented yet @{user}');
85
- return Promise.reject((0, _commonsApi.getServiceUnavailable)('method not implemented'));
93
+ return Promise.reject(_core.errorUtils.getServiceUnavailable('method not implemented'));
86
94
  }
87
95
  readTokens(filter) {
88
96
  this.logger.warn('[verdaccio/memory][readTokens] read tokens has not been implemented yet ');
89
- return Promise.reject((0, _commonsApi.getServiceUnavailable)('method not implemented'));
97
+ return Promise.reject(_core.errorUtils.getServiceUnavailable('method not implemented'));
90
98
  }
91
99
  }
92
- var _default = LocalMemory;
93
- exports.default = _default;
100
+ var _default = exports.default = LocalMemory;
94
101
  //# sourceMappingURL=local-memory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-memory.js","names":["_commonsApi","require","_memoryHandler","_interopRequireDefault","obj","__esModule","default","DEFAULT_LIMIT","LocalMemory","constructor","config","options","limit","logger","data","_createEmtpyDatabase","path","getSecret","Promise","resolve","secret","setSecret","add","name","cb","list","length","indexOf","push","info","Error","search","onPackage","onEnd","validateName","warn","remove","item","splice","get","getPackageStorage","packageInfo","MemoryHandler","files","emptyDatabase","saveToken","token","reject","getServiceUnavailable","deleteToken","user","tokenKey","readTokens","filter","_default","exports"],"sources":["../src/local-memory.ts"],"sourcesContent":["import { getServiceUnavailable } from '@verdaccio/commons-api';\nimport { Logger, Callback, Config, IPluginStorage, Token, TokenFilter, PluginOptions } from '@verdaccio/legacy-types';\n\nimport MemoryHandler, { DataHandler } from './memory-handler';\n\nexport type ConfigMemory = Config & { limit?: number };\nexport interface MemoryLocalStorage {\n secret: string;\n list: string[];\n files: DataHandler;\n}\n\nconst DEFAULT_LIMIT = 1000;\nclass LocalMemory implements IPluginStorage<ConfigMemory> {\n private path: string;\n private limit: number;\n public logger: Logger;\n private data: MemoryLocalStorage;\n public config: ConfigMemory;\n\n public constructor(config: ConfigMemory, options: PluginOptions<ConfigMemory>) {\n this.config = config;\n this.limit = config.limit || DEFAULT_LIMIT;\n this.logger = options.logger;\n this.data = this._createEmtpyDatabase();\n this.path = '/';\n }\n\n public getSecret(): Promise<string> {\n return Promise.resolve(this.data.secret);\n }\n\n public setSecret(secret: string): Promise<string | null> {\n return new Promise((resolve): void => {\n this.data.secret = secret;\n resolve(null);\n });\n }\n\n public add(name: string, cb: Callback): void {\n const { list } = this.data;\n\n if (list.length < this.limit) {\n if (list.indexOf(name) === -1) {\n list.push(name);\n }\n cb(null);\n } else {\n this.logger.info({ limit: this.limit }, 'Storage memory has reached limit of @{limit} packages');\n cb(new Error('Storage memory has reached limit of limit packages'));\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public search(onPackage: Callback, onEnd: Callback, validateName: Function): void {\n this.logger.warn('[verdaccio/memory]: search method not implemented, PR is welcome');\n onEnd();\n }\n\n public remove(name: string, cb: Callback): void {\n const { list } = this.data;\n const item = list.indexOf(name);\n\n if (item !== -1) {\n list.splice(item, 1);\n }\n\n cb(null);\n }\n\n public get(cb: Callback): void {\n cb(null, this.data.list);\n }\n\n public getPackageStorage(packageInfo: string): MemoryHandler {\n return new MemoryHandler(packageInfo, this.data.files, this.logger);\n }\n\n private _createEmtpyDatabase(): MemoryLocalStorage {\n const list: string[] = [];\n const files = {};\n const emptyDatabase = {\n list,\n files,\n secret: '',\n };\n\n return emptyDatabase;\n }\n\n public saveToken(token: Token): Promise<void> {\n this.logger.warn('[verdaccio/memory][saveToken] save token has not been implemented yet');\n\n return Promise.reject(getServiceUnavailable('method not implemented'));\n }\n\n public deleteToken(user: string, tokenKey: string): Promise<void> {\n this.logger.warn(\n { tokenKey, user },\n '[verdaccio/memory][deleteToken] delete token has not been implemented yet @{user}'\n );\n\n return Promise.reject(getServiceUnavailable('method not implemented'));\n }\n\n public readTokens(filter: TokenFilter): Promise<Token[]> {\n this.logger.warn('[verdaccio/memory][readTokens] read tokens has not been implemented yet ');\n\n return Promise.reject(getServiceUnavailable('method not implemented'));\n }\n}\n\nexport default LocalMemory;\n"],"mappings":"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"}
1
+ {"version":3,"file":"local-memory.js","names":["_core","require","_memoryHandler","_interopRequireDefault","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DEFAULT_LIMIT","LocalMemory","constructor","config","options","limit","logger","data","_createEmtpyDatabase","path","getSecret","Promise","resolve","secret","setSecret","add","name","cb","list","length","indexOf","push","info","Error","search","onPackage","onEnd","validateName","warn","remove","item","splice","get","getPackageStorage","packageInfo","MemoryHandler","files","emptyDatabase","saveToken","token","reject","errorUtils","getServiceUnavailable","deleteToken","user","tokenKey","readTokens","filter","_default","exports"],"sources":["../src/local-memory.ts"],"sourcesContent":["import { errorUtils } from '@verdaccio/core';\nimport { Logger, Callback, Config, IPluginStorage, Token, TokenFilter, PluginOptions } from '@verdaccio/legacy-types';\n\nimport MemoryHandler, { DataHandler } from './memory-handler';\n\nexport type ConfigMemory = Config & { limit?: number };\nexport interface MemoryLocalStorage {\n secret: string;\n list: string[];\n files: DataHandler;\n}\n\nconst DEFAULT_LIMIT = 1000;\nclass LocalMemory implements IPluginStorage<ConfigMemory> {\n private path: string;\n private limit: number;\n public logger: Logger;\n private data: MemoryLocalStorage;\n public config: ConfigMemory;\n\n public constructor(config: ConfigMemory, options: PluginOptions<ConfigMemory>) {\n this.config = config;\n this.limit = config.limit || DEFAULT_LIMIT;\n this.logger = options.logger;\n this.data = this._createEmtpyDatabase();\n this.path = '/';\n }\n\n public getSecret(): Promise<string> {\n return Promise.resolve(this.data.secret);\n }\n\n public setSecret(secret: string): Promise<string | null> {\n return new Promise((resolve): void => {\n this.data.secret = secret;\n resolve(null);\n });\n }\n\n public add(name: string, cb: Callback): void {\n const { list } = this.data;\n\n if (list.length < this.limit) {\n if (list.indexOf(name) === -1) {\n list.push(name);\n }\n cb(null);\n } else {\n this.logger.info({ limit: this.limit }, 'Storage memory has reached limit of @{limit} packages');\n cb(new Error('Storage memory has reached limit of limit packages'));\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public search(onPackage: Callback, onEnd: Callback, validateName: Function): void {\n this.logger.warn('[verdaccio/memory]: search method not implemented, PR is welcome');\n onEnd();\n }\n\n public remove(name: string, cb: Callback): void {\n const { list } = this.data;\n const item = list.indexOf(name);\n\n if (item !== -1) {\n list.splice(item, 1);\n }\n\n cb(null);\n }\n\n public get(cb: Callback): void {\n cb(null, this.data.list);\n }\n\n public getPackageStorage(packageInfo: string): MemoryHandler {\n return new MemoryHandler(packageInfo, this.data.files, this.logger);\n }\n\n private _createEmtpyDatabase(): MemoryLocalStorage {\n const list: string[] = [];\n const files = {};\n const emptyDatabase = {\n list,\n files,\n secret: '',\n };\n\n return emptyDatabase;\n }\n\n public saveToken(token: Token): Promise<void> {\n this.logger.warn('[verdaccio/memory][saveToken] save token has not been implemented yet');\n\n return Promise.reject(errorUtils.getServiceUnavailable('method not implemented'));\n }\n\n public deleteToken(user: string, tokenKey: string): Promise<void> {\n this.logger.warn(\n { tokenKey, user },\n '[verdaccio/memory][deleteToken] delete token has not been implemented yet @{user}'\n );\n\n return Promise.reject(errorUtils.getServiceUnavailable('method not implemented'));\n }\n\n public readTokens(filter: TokenFilter): Promise<Token[]> {\n this.logger.warn('[verdaccio/memory][readTokens] read tokens has not been implemented yet ');\n\n return Promise.reject(errorUtils.getServiceUnavailable('method not implemented'));\n }\n}\n\nexport default LocalMemory;\n"],"mappings":"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","ignoreList":[]}
@@ -5,14 +5,27 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _path = _interopRequireDefault(require("path"));
8
- var _commonsApi = require("@verdaccio/commons-api");
8
+ var _core = require("@verdaccio/core");
9
9
  var _memoryFs = _interopRequireDefault(require("memory-fs"));
10
10
  var _streams = require("@verdaccio/streams");
11
11
  var _utils = require("./utils");
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
14
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
15
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
16
  const fs = new _memoryFs.default();
17
+ const {
18
+ getBadRequest,
19
+ getInternalError,
20
+ getConflict,
21
+ getNotFound
22
+ } = _core.errorUtils;
14
23
  class MemoryHandler {
15
24
  constructor(packageName, data, logger) {
25
+ _defineProperty(this, "data", void 0);
26
+ _defineProperty(this, "name", void 0);
27
+ _defineProperty(this, "path", void 0);
28
+ _defineProperty(this, "logger", void 0);
16
29
  // this is not need it
17
30
  this.data = data;
18
31
  this.name = packageName;
@@ -34,7 +47,7 @@ class MemoryHandler {
34
47
  try {
35
48
  onWrite(pkgFileName, transformPackage(pkg), onEnd);
36
49
  } catch (err) {
37
- return onEnd((0, _commonsApi.getInternalError)('error on parse the metadata'));
50
+ return onEnd(getInternalError('error on parse the metadata'));
38
51
  }
39
52
  });
40
53
  }
@@ -54,16 +67,16 @@ class MemoryHandler {
54
67
  this.data[name] = json;
55
68
  return cb(null);
56
69
  } catch (err) {
57
- return cb((0, _commonsApi.getInternalError)(err.message));
70
+ return cb(getInternalError(err.message));
58
71
  }
59
72
  }
60
73
  readPackage(name, cb) {
61
74
  const json = this._getStorage(name);
62
75
  const isJson = typeof json === 'undefined';
63
76
  try {
64
- return cb(isJson ? (0, _commonsApi.getNotFound)() : null, (0, _utils.parsePackage)(json));
77
+ return cb(isJson ? getNotFound() : null, (0, _utils.parsePackage)(json));
65
78
  } catch (err) {
66
- return cb((0, _commonsApi.getNotFound)());
79
+ return cb(getNotFound());
67
80
  }
68
81
  }
69
82
  writeTarball(name) {
@@ -76,7 +89,7 @@ class MemoryHandler {
76
89
  }
77
90
  fs.stat(temporalName, function (fileError, stats) {
78
91
  if (!fileError && stats) {
79
- return uploadStream.emit('error', (0, _commonsApi.getConflict)());
92
+ return uploadStream.emit('error', getConflict());
80
93
  }
81
94
  try {
82
95
  const file = fs.createWriteStream(temporalName);
@@ -88,7 +101,7 @@ class MemoryHandler {
88
101
  uploadStream.on('end', onEnd);
89
102
  };
90
103
  uploadStream.abort = function () {
91
- uploadStream.emit('error', (0, _commonsApi.getBadRequest)('transmision aborted'));
104
+ uploadStream.emit('error', getBadRequest('transmision aborted'));
92
105
  file.end();
93
106
  };
94
107
  uploadStream.emit('open');
@@ -108,7 +121,7 @@ class MemoryHandler {
108
121
  process.nextTick(function () {
109
122
  fs.stat(pathName, function (fileError, stats) {
110
123
  if (fileError && !stats) {
111
- return readTarballStream.emit('error', (0, _commonsApi.getNotFound)());
124
+ return readTarballStream.emit('error', getNotFound());
112
125
  }
113
126
  try {
114
127
  const readStream = fs.createReadStream(pathName);
@@ -121,7 +134,7 @@ class MemoryHandler {
121
134
  readTarballStream.emit('error', error);
122
135
  });
123
136
  readTarballStream.abort = function () {
124
- readStream.destroy((0, _commonsApi.getBadRequest)('read has been aborted'));
137
+ readStream.destroy(getBadRequest('read has been aborted'));
125
138
  };
126
139
  return;
127
140
  } catch (err) {
@@ -136,6 +149,5 @@ class MemoryHandler {
136
149
  return this.data[name];
137
150
  }
138
151
  }
139
- var _default = MemoryHandler;
140
- exports.default = _default;
152
+ var _default = exports.default = MemoryHandler;
141
153
  //# sourceMappingURL=memory-handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-handler.js","names":["_path","_interopRequireDefault","require","_commonsApi","_memoryFs","_streams","_utils","obj","__esModule","default","fs","MemoryFileSystem","MemoryHandler","constructor","packageName","data","logger","name","path","updatePackage","pkgFileName","updateHandler","onWrite","transformPackage","onEnd","json","_getStorage","pkg","parsePackage","err","getInternalError","deletePackage","pkgName","callback","removePackage","createPackage","value","cb","savePackage","stringifyPackage","message","readPackage","isJson","getNotFound","writeTarball","uploadStream","UploadTarball","temporalName","process","nextTick","mkdirp","dirname","mkdirpError","emit","stat","fileError","stats","getConflict","file","createWriteStream","pipe","done","on","abort","getBadRequest","end","readTarball","pathName","readTarballStream","ReadTarball","readStream","createReadStream","pathMeta","meta","contentLength","length","error","destroy","_default","exports"],"sources":["../src/memory-handler.ts"],"sourcesContent":["import path from 'path';\nimport {\n VerdaccioError,\n getBadRequest,\n getInternalError,\n getConflict,\n getNotFound,\n} from '@verdaccio/commons-api';\nimport MemoryFileSystem from 'memory-fs';\nimport { UploadTarball, ReadTarball } from '@verdaccio/streams';\nimport {\n Callback,\n Logger,\n IPackageStorageManager,\n IUploadTarball,\n IReadTarball,\n CallbackAction,\n StorageUpdateCallback,\n StorageWriteCallback,\n PackageTransformer,\n Package,\n ReadPackageCallback,\n} from '@verdaccio/legacy-types';\n\nimport { parsePackage, stringifyPackage } from './utils';\n\nconst fs = new MemoryFileSystem();\n\nexport type DataHandler = {\n [key: string]: string;\n};\n\nclass MemoryHandler implements IPackageStorageManager {\n private data: DataHandler;\n private name: string;\n private path: string;\n public logger: Logger;\n\n public constructor(packageName: string, data: DataHandler, logger: Logger) {\n // this is not need it\n this.data = data;\n this.name = packageName;\n this.logger = logger;\n this.path = `/${packageName}`;\n }\n\n public updatePackage(\n pkgFileName: string,\n updateHandler: StorageUpdateCallback,\n onWrite: StorageWriteCallback,\n transformPackage: PackageTransformer,\n onEnd: CallbackAction\n ): void {\n const json: string = this._getStorage(pkgFileName);\n let pkg: Package;\n\n try {\n pkg = parsePackage(json) as Package;\n } catch (err) {\n return onEnd(err);\n }\n\n updateHandler(pkg, (err: VerdaccioError) => {\n if (err) {\n return onEnd(err);\n }\n try {\n onWrite(pkgFileName, transformPackage(pkg), onEnd);\n } catch (err) {\n return onEnd(getInternalError('error on parse the metadata'));\n }\n });\n }\n\n public deletePackage(pkgName: string, callback: Callback): void {\n delete this.data[pkgName];\n return callback(null);\n }\n\n public removePackage(callback: CallbackAction): void {\n return callback(null);\n }\n\n public createPackage(name: string, value: Package, cb: CallbackAction): void {\n this.savePackage(name, value, cb);\n }\n\n public savePackage(name: string, value: Package, cb: CallbackAction): void {\n try {\n const json: string = stringifyPackage(value);\n\n this.data[name] = json;\n return cb(null);\n } catch (err: any) {\n return cb(getInternalError(err.message));\n }\n }\n\n public readPackage(name: string, cb: ReadPackageCallback): void {\n const json = this._getStorage(name);\n const isJson = typeof json === 'undefined';\n\n try {\n return cb(isJson ? getNotFound() : null, parsePackage(json));\n } catch (err) {\n return cb(getNotFound());\n }\n }\n\n public writeTarball(name: string): IUploadTarball {\n const uploadStream: IUploadTarball = new UploadTarball({});\n const temporalName = `${this.path}/${name}`;\n\n process.nextTick(function () {\n fs.mkdirp(path.dirname(temporalName), function (mkdirpError) {\n if (mkdirpError) {\n return uploadStream.emit('error', mkdirpError);\n }\n fs.stat(temporalName, function (fileError, stats) {\n if (!fileError && stats) {\n return uploadStream.emit('error', getConflict());\n }\n\n try {\n const file = fs.createWriteStream(temporalName);\n\n uploadStream.pipe(file);\n\n uploadStream.done = function (): void {\n const onEnd = function (): void {\n uploadStream.emit('success');\n };\n\n uploadStream.on('end', onEnd);\n };\n\n uploadStream.abort = function (): void {\n uploadStream.emit('error', getBadRequest('transmision aborted'));\n file.end();\n };\n\n uploadStream.emit('open');\n return;\n } catch (err) {\n uploadStream.emit('error', err);\n return;\n }\n });\n });\n });\n\n return uploadStream;\n }\n\n public readTarball(name: string): IReadTarball {\n const pathName = `${this.path}/${name}`;\n\n const readTarballStream: IReadTarball = new ReadTarball({});\n\n process.nextTick(function () {\n fs.stat(pathName, function (fileError, stats) {\n if (fileError && !stats) {\n return readTarballStream.emit('error', getNotFound());\n }\n\n try {\n const readStream = fs.createReadStream(pathName);\n\n const pathMeta = fs.meta(pathName);\n const contentLength: number = (pathMeta && pathMeta.length) || 0;\n readTarballStream.emit('content-length', contentLength);\n readTarballStream.emit('open');\n readStream.pipe(readTarballStream);\n readStream.on('error', (error: VerdaccioError) => {\n readTarballStream.emit('error', error);\n });\n\n readTarballStream.abort = function (): void {\n readStream.destroy(getBadRequest('read has been aborted'));\n };\n return;\n } catch (err) {\n readTarballStream.emit('error', err);\n return;\n }\n });\n });\n\n return readTarballStream;\n }\n\n private _getStorage(name = ''): string {\n return this.data[name];\n }\n}\n\nexport default MemoryHandler;\n"],"mappings":"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"}
1
+ {"version":3,"file":"memory-handler.js","names":["_path","_interopRequireDefault","require","_core","_memoryFs","_streams","_utils","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","fs","MemoryFileSystem","getBadRequest","getInternalError","getConflict","getNotFound","errorUtils","MemoryHandler","constructor","packageName","data","logger","name","path","updatePackage","pkgFileName","updateHandler","onWrite","transformPackage","onEnd","json","_getStorage","pkg","parsePackage","err","deletePackage","pkgName","callback","removePackage","createPackage","cb","savePackage","stringifyPackage","message","readPackage","isJson","writeTarball","uploadStream","UploadTarball","temporalName","process","nextTick","mkdirp","dirname","mkdirpError","emit","stat","fileError","stats","file","createWriteStream","pipe","done","on","abort","end","readTarball","pathName","readTarballStream","ReadTarball","readStream","createReadStream","pathMeta","meta","contentLength","length","error","destroy","_default","exports"],"sources":["../src/memory-handler.ts"],"sourcesContent":["import path from 'path';\nimport {\n VerdaccioError,\nerrorUtils,\n} from '@verdaccio/core';\nimport MemoryFileSystem from 'memory-fs';\nimport { UploadTarball, ReadTarball } from '@verdaccio/streams';\nimport {\n Callback,\n Logger,\n IPackageStorageManager,\n IUploadTarball,\n IReadTarball,\n CallbackAction,\n StorageUpdateCallback,\n StorageWriteCallback,\n PackageTransformer,\n Package,\n ReadPackageCallback,\n} from '@verdaccio/legacy-types';\n\nimport { parsePackage, stringifyPackage } from './utils';\n\nconst fs = new MemoryFileSystem();\nconst { getBadRequest,\n getInternalError,\n getConflict,\n getNotFound} = errorUtils\n\nexport type DataHandler = {\n [key: string]: string;\n};\n\nclass MemoryHandler implements IPackageStorageManager {\n private data: DataHandler;\n private name: string;\n private path: string;\n public logger: Logger;\n\n public constructor(packageName: string, data: DataHandler, logger: Logger) {\n // this is not need it\n this.data = data;\n this.name = packageName;\n this.logger = logger;\n this.path = `/${packageName}`;\n }\n\n public updatePackage(\n pkgFileName: string,\n updateHandler: StorageUpdateCallback,\n onWrite: StorageWriteCallback,\n transformPackage: PackageTransformer,\n onEnd: CallbackAction\n ): void {\n const json: string = this._getStorage(pkgFileName);\n let pkg: Package;\n\n try {\n pkg = parsePackage(json) as Package;\n } catch (err) {\n return onEnd(err);\n }\n\n updateHandler(pkg, (err: VerdaccioError) => {\n if (err) {\n return onEnd(err);\n }\n try {\n onWrite(pkgFileName, transformPackage(pkg), onEnd);\n } catch (err) {\n return onEnd(getInternalError('error on parse the metadata'));\n }\n });\n }\n\n public deletePackage(pkgName: string, callback: Callback): void {\n delete this.data[pkgName];\n return callback(null);\n }\n\n public removePackage(callback: CallbackAction): void {\n return callback(null);\n }\n\n public createPackage(name: string, value: Package, cb: CallbackAction): void {\n this.savePackage(name, value, cb);\n }\n\n public savePackage(name: string, value: Package, cb: CallbackAction): void {\n try {\n const json: string = stringifyPackage(value);\n\n this.data[name] = json;\n return cb(null);\n } catch (err: any) {\n return cb(getInternalError(err.message));\n }\n }\n\n public readPackage(name: string, cb: ReadPackageCallback): void {\n const json = this._getStorage(name);\n const isJson = typeof json === 'undefined';\n\n try {\n return cb(isJson ? getNotFound() : null, parsePackage(json));\n } catch (err) {\n return cb(getNotFound());\n }\n }\n\n public writeTarball(name: string): IUploadTarball {\n const uploadStream: IUploadTarball = new UploadTarball({});\n const temporalName = `${this.path}/${name}`;\n\n process.nextTick(function () {\n fs.mkdirp(path.dirname(temporalName), function (mkdirpError) {\n if (mkdirpError) {\n return uploadStream.emit('error', mkdirpError);\n }\n fs.stat(temporalName, function (fileError, stats) {\n if (!fileError && stats) {\n return uploadStream.emit('error', getConflict());\n }\n\n try {\n const file = fs.createWriteStream(temporalName);\n\n uploadStream.pipe(file);\n\n uploadStream.done = function (): void {\n const onEnd = function (): void {\n uploadStream.emit('success');\n };\n\n uploadStream.on('end', onEnd);\n };\n\n uploadStream.abort = function (): void {\n uploadStream.emit('error', getBadRequest('transmision aborted'));\n file.end();\n };\n\n uploadStream.emit('open');\n return;\n } catch (err) {\n uploadStream.emit('error', err);\n return;\n }\n });\n });\n });\n\n return uploadStream;\n }\n\n public readTarball(name: string): IReadTarball {\n const pathName = `${this.path}/${name}`;\n\n const readTarballStream: IReadTarball = new ReadTarball({});\n\n process.nextTick(function () {\n fs.stat(pathName, function (fileError, stats) {\n if (fileError && !stats) {\n return readTarballStream.emit('error', getNotFound());\n }\n\n try {\n const readStream = fs.createReadStream(pathName);\n\n const pathMeta = fs.meta(pathName);\n const contentLength: number = (pathMeta && pathMeta.length) || 0;\n readTarballStream.emit('content-length', contentLength);\n readTarballStream.emit('open');\n readStream.pipe(readTarballStream);\n readStream.on('error', (error: VerdaccioError) => {\n readTarballStream.emit('error', error);\n });\n\n readTarballStream.abort = function (): void {\n readStream.destroy(getBadRequest('read has been aborted'));\n };\n return;\n } catch (err) {\n readTarballStream.emit('error', err);\n return;\n }\n });\n });\n\n return readTarballStream;\n }\n\n private _getStorage(name = ''): string {\n return this.data[name];\n }\n}\n\nexport default MemoryHandler;\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAIA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAeA,IAAAI,MAAA,GAAAJ,OAAA;AAAyD,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAEzD,MAAMgB,EAAE,GAAG,IAAIC,iBAAgB,CAAC,CAAC;AACjC,MAAM;EAAGC,aAAa;EACpBC,gBAAgB;EAChBC,WAAW;EACXC;AAAW,CAAC,GAAGC,gBAAU;AAM3B,MAAMC,aAAa,CAAmC;EAM7CC,WAAWA,CAACC,WAAmB,EAAEC,IAAiB,EAAEC,MAAc,EAAE;IAAA7B,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACzE;IACA,IAAI,CAAC4B,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACE,IAAI,GAAGH,WAAW;IACvB,IAAI,CAACE,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACE,IAAI,GAAG,IAAIJ,WAAW,EAAE;EAC/B;EAEOK,aAAaA,CAClBC,WAAmB,EACnBC,aAAoC,EACpCC,OAA6B,EAC7BC,gBAAoC,EACpCC,KAAqB,EACf;IACN,MAAMC,IAAY,GAAG,IAAI,CAACC,WAAW,CAACN,WAAW,CAAC;IAClD,IAAIO,GAAY;IAEhB,IAAI;MACFA,GAAG,GAAG,IAAAC,mBAAY,EAACH,IAAI,CAAY;IACrC,CAAC,CAAC,OAAOI,GAAG,EAAE;MACZ,OAAOL,KAAK,CAACK,GAAG,CAAC;IACnB;IAEAR,aAAa,CAACM,GAAG,EAAGE,GAAmB,IAAK;MAC1C,IAAIA,GAAG,EAAE;QACP,OAAOL,KAAK,CAACK,GAAG,CAAC;MACnB;MACA,IAAI;QACFP,OAAO,CAACF,WAAW,EAAEG,gBAAgB,CAACI,GAAG,CAAC,EAAEH,KAAK,CAAC;MACpD,CAAC,CAAC,OAAOK,GAAG,EAAE;QACZ,OAAOL,KAAK,CAAChB,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;MAC/D;IACF,CAAC,CAAC;EACJ;EAEOsB,aAAaA,CAACC,OAAe,EAAEC,QAAkB,EAAQ;IAC9D,OAAO,IAAI,CAACjB,IAAI,CAACgB,OAAO,CAAC;IACzB,OAAOC,QAAQ,CAAC,IAAI,CAAC;EACvB;EAEOC,aAAaA,CAACD,QAAwB,EAAQ;IACnD,OAAOA,QAAQ,CAAC,IAAI,CAAC;EACvB;EAEOE,aAAaA,CAACjB,IAAY,EAAExB,KAAc,EAAE0C,EAAkB,EAAQ;IAC3E,IAAI,CAACC,WAAW,CAACnB,IAAI,EAAExB,KAAK,EAAE0C,EAAE,CAAC;EACnC;EAEOC,WAAWA,CAACnB,IAAY,EAAExB,KAAc,EAAE0C,EAAkB,EAAQ;IACzE,IAAI;MACF,MAAMV,IAAY,GAAG,IAAAY,uBAAgB,EAAC5C,KAAK,CAAC;MAE5C,IAAI,CAACsB,IAAI,CAACE,IAAI,CAAC,GAAGQ,IAAI;MACtB,OAAOU,EAAE,CAAC,IAAI,CAAC;IACjB,CAAC,CAAC,OAAON,GAAQ,EAAE;MACjB,OAAOM,EAAE,CAAC3B,gBAAgB,CAACqB,GAAG,CAACS,OAAO,CAAC,CAAC;IAC1C;EACF;EAEOC,WAAWA,CAACtB,IAAY,EAAEkB,EAAuB,EAAQ;IAC9D,MAAMV,IAAI,GAAG,IAAI,CAACC,WAAW,CAACT,IAAI,CAAC;IACnC,MAAMuB,MAAM,GAAG,OAAOf,IAAI,KAAK,WAAW;IAE1C,IAAI;MACF,OAAOU,EAAE,CAACK,MAAM,GAAG9B,WAAW,CAAC,CAAC,GAAG,IAAI,EAAE,IAAAkB,mBAAY,EAACH,IAAI,CAAC,CAAC;IAC9D,CAAC,CAAC,OAAOI,GAAG,EAAE;MACZ,OAAOM,EAAE,CAACzB,WAAW,CAAC,CAAC,CAAC;IAC1B;EACF;EAEO+B,YAAYA,CAACxB,IAAY,EAAkB;IAChD,MAAMyB,YAA4B,GAAG,IAAIC,sBAAa,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAMC,YAAY,GAAG,GAAG,IAAI,CAAC1B,IAAI,IAAID,IAAI,EAAE;IAE3C4B,OAAO,CAACC,QAAQ,CAAC,YAAY;MAC3BzC,EAAE,CAAC0C,MAAM,CAAC7B,aAAI,CAAC8B,OAAO,CAACJ,YAAY,CAAC,EAAE,UAAUK,WAAW,EAAE;QAC3D,IAAIA,WAAW,EAAE;UACf,OAAOP,YAAY,CAACQ,IAAI,CAAC,OAAO,EAAED,WAAW,CAAC;QAChD;QACA5C,EAAE,CAAC8C,IAAI,CAACP,YAAY,EAAE,UAAUQ,SAAS,EAAEC,KAAK,EAAE;UAChD,IAAI,CAACD,SAAS,IAAIC,KAAK,EAAE;YACvB,OAAOX,YAAY,CAACQ,IAAI,CAAC,OAAO,EAAEzC,WAAW,CAAC,CAAC,CAAC;UAClD;UAEA,IAAI;YACF,MAAM6C,IAAI,GAAGjD,EAAE,CAACkD,iBAAiB,CAACX,YAAY,CAAC;YAE/CF,YAAY,CAACc,IAAI,CAACF,IAAI,CAAC;YAEvBZ,YAAY,CAACe,IAAI,GAAG,YAAkB;cACpC,MAAMjC,KAAK,GAAG,SAAAA,CAAA,EAAkB;gBAC9BkB,YAAY,CAACQ,IAAI,CAAC,SAAS,CAAC;cAC9B,CAAC;cAEDR,YAAY,CAACgB,EAAE,CAAC,KAAK,EAAElC,KAAK,CAAC;YAC/B,CAAC;YAEDkB,YAAY,CAACiB,KAAK,GAAG,YAAkB;cACrCjB,YAAY,CAACQ,IAAI,CAAC,OAAO,EAAE3C,aAAa,CAAC,qBAAqB,CAAC,CAAC;cAChE+C,IAAI,CAACM,GAAG,CAAC,CAAC;YACZ,CAAC;YAEDlB,YAAY,CAACQ,IAAI,CAAC,MAAM,CAAC;YACzB;UACF,CAAC,CAAC,OAAOrB,GAAG,EAAE;YACZa,YAAY,CAACQ,IAAI,CAAC,OAAO,EAAErB,GAAG,CAAC;YAC/B;UACF;QACF,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAOa,YAAY;EACrB;EAEOmB,WAAWA,CAAC5C,IAAY,EAAgB;IAC7C,MAAM6C,QAAQ,GAAG,GAAG,IAAI,CAAC5C,IAAI,IAAID,IAAI,EAAE;IAEvC,MAAM8C,iBAA+B,GAAG,IAAIC,oBAAW,CAAC,CAAC,CAAC,CAAC;IAE3DnB,OAAO,CAACC,QAAQ,CAAC,YAAY;MAC3BzC,EAAE,CAAC8C,IAAI,CAACW,QAAQ,EAAE,UAAUV,SAAS,EAAEC,KAAK,EAAE;QAC5C,IAAID,SAAS,IAAI,CAACC,KAAK,EAAE;UACvB,OAAOU,iBAAiB,CAACb,IAAI,CAAC,OAAO,EAAExC,WAAW,CAAC,CAAC,CAAC;QACvD;QAEA,IAAI;UACF,MAAMuD,UAAU,GAAG5D,EAAE,CAAC6D,gBAAgB,CAACJ,QAAQ,CAAC;UAEhD,MAAMK,QAAQ,GAAG9D,EAAE,CAAC+D,IAAI,CAACN,QAAQ,CAAC;UAClC,MAAMO,aAAqB,GAAIF,QAAQ,IAAIA,QAAQ,CAACG,MAAM,IAAK,CAAC;UAChEP,iBAAiB,CAACb,IAAI,CAAC,gBAAgB,EAAEmB,aAAa,CAAC;UACvDN,iBAAiB,CAACb,IAAI,CAAC,MAAM,CAAC;UAC9Be,UAAU,CAACT,IAAI,CAACO,iBAAiB,CAAC;UAClCE,UAAU,CAACP,EAAE,CAAC,OAAO,EAAGa,KAAqB,IAAK;YAChDR,iBAAiB,CAACb,IAAI,CAAC,OAAO,EAAEqB,KAAK,CAAC;UACxC,CAAC,CAAC;UAEFR,iBAAiB,CAACJ,KAAK,GAAG,YAAkB;YAC1CM,UAAU,CAACO,OAAO,CAACjE,aAAa,CAAC,uBAAuB,CAAC,CAAC;UAC5D,CAAC;UACD;QACF,CAAC,CAAC,OAAOsB,GAAG,EAAE;UACZkC,iBAAiB,CAACb,IAAI,CAAC,OAAO,EAAErB,GAAG,CAAC;UACpC;QACF;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAOkC,iBAAiB;EAC1B;EAEQrC,WAAWA,CAACT,IAAI,GAAG,EAAE,EAAU;IACrC,OAAO,IAAI,CAACF,IAAI,CAACE,IAAI,CAAC;EACxB;AACF;AAAC,IAAAwD,QAAA,GAAAC,OAAA,CAAAxF,OAAA,GAEc0B,aAAa","ignoreList":[]}
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["stringifyPackage","pkg","JSON","stringify","parsePackage","parse"],"sources":["../src/utils.ts"],"sourcesContent":["import { Package } from '@verdaccio/legacy-types';\n\nexport function stringifyPackage(pkg: Package) {\n return JSON.stringify(pkg, null, '\\t');\n}\n\nexport function parsePackage(pkg: string) {\n return JSON.parse(pkg);\n}\n"],"mappings":";;;;;;;AAEO,SAASA,gBAAgBA,CAACC,GAAY,EAAE;EAC7C,OAAOC,IAAI,CAACC,SAAS,CAACF,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;AACxC;AAEO,SAASG,YAAYA,CAACH,GAAW,EAAE;EACxC,OAAOC,IAAI,CAACG,KAAK,CAACJ,GAAG,CAAC;AACxB"}
1
+ {"version":3,"file":"utils.js","names":["stringifyPackage","pkg","JSON","stringify","parsePackage","parse"],"sources":["../src/utils.ts"],"sourcesContent":["import { Package } from '@verdaccio/legacy-types';\n\nexport function stringifyPackage(pkg: Package) {\n return JSON.stringify(pkg, null, '\\t');\n}\n\nexport function parsePackage(pkg: string) {\n return JSON.parse(pkg);\n}\n"],"mappings":";;;;;;;AAEO,SAASA,gBAAgBA,CAACC,GAAY,EAAE;EAC7C,OAAOC,IAAI,CAACC,SAAS,CAACF,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;AACxC;AAEO,SAASG,YAAYA,CAACH,GAAW,EAAE;EACxC,OAAOC,IAAI,CAACG,KAAK,CAACJ,GAAG,CAAC;AACxB","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "verdaccio-memory",
3
- "version": "10.3.2",
3
+ "version": "10.4.0",
4
4
  "description": "Storage implementation in memory",
5
5
  "keywords": [
6
6
  "verdaccio",
@@ -25,10 +25,10 @@
25
25
  "lib/"
26
26
  ],
27
27
  "engines": {
28
- "node": ">=8"
28
+ "node": ">=18"
29
29
  },
30
30
  "dependencies": {
31
- "@verdaccio/commons-api": "10.2.0",
31
+ "@verdaccio/core": "8.0.0-next-8.19",
32
32
  "@verdaccio/streams": "10.2.1",
33
33
  "memory-fs": "0.5.0"
34
34
  },