@xlera/xplor-chaincode-utils
Advanced tools
| import { ChaincodeInterface, ChaincodeResponse, ChaincodeStub } from "fabric-shim"; | ||
| import { Logger } from "winston"; | ||
| export declare class Chaincode implements ChaincodeInterface { | ||
| logger: Logger; | ||
| constructor(logLevel?: string); | ||
| get name(): string; | ||
| Init(stub: ChaincodeStub): Promise<ChaincodeResponse>; | ||
| Invoke(stub: ChaincodeStub): Promise<ChaincodeResponse>; | ||
| private executeMethod; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.Chaincode = void 0; | ||
| var tslib_1 = require("tslib"); | ||
| var shim = require("fabric-shim"); | ||
| var helpers_1 = require("./utils/helpers"); | ||
| var StubHelper_1 = require("./StubHelper"); | ||
| var datatransform_1 = require("./utils/datatransform"); | ||
| var ChaincodeError_1 = require("./utils/errors/ChaincodeError"); | ||
| var InternalServerError_1 = require("./utils/errors/InternalServerError"); | ||
| var serialize = require("serialize-error"); | ||
| var Chaincode = (function () { | ||
| function Chaincode(logLevel) { | ||
| this.logger = helpers_1.Helpers.getLoggerInstance(this.name, logLevel); | ||
| } | ||
| Object.defineProperty(Chaincode.prototype, "name", { | ||
| get: function () { | ||
| return this.constructor.name; | ||
| }, | ||
| enumerable: false, | ||
| configurable: true | ||
| }); | ||
| Chaincode.prototype.Init = function (stub) { | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var ret; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| this.logger.info("=========== Instantiated " + this.name + " chaincode ==========="); | ||
| this.logger.info("Transaction ID: " + stub.getTxID()); | ||
| this.logger.info("Args: " + stub.getArgs().join(",")); | ||
| ret = stub.getFunctionAndParameters(); | ||
| return [4, this.executeMethod("init", ret.params, stub, true)]; | ||
| case 1: return [2, _a.sent()]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| Chaincode.prototype.Invoke = function (stub) { | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var ret; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| this.logger.info("=========== Invoked Chaincode " + this.name + " ==========="); | ||
| this.logger.info("Transaction ID: " + stub.getTxID()); | ||
| this.logger.info("Args: " + stub.getArgs().join(",")); | ||
| ret = stub.getFunctionAndParameters(); | ||
| return [4, this.executeMethod(ret.fcn, ret.params, stub)]; | ||
| case 1: return [2, _a.sent()]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| Chaincode.prototype.executeMethod = function (fcn, params, stub, silent) { | ||
| if (silent === void 0) { silent = false; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var method, payload, err_1, error; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| method = this[fcn]; | ||
| if (!method) { | ||
| if (!silent) { | ||
| this.logger.error("no function of name: " + fcn + " found"); | ||
| return [2, shim.error(serialize(new ChaincodeError_1.ChaincodeError("no function of name: " + fcn + " found", 400)))]; | ||
| } | ||
| else { | ||
| return [2, shim.success()]; | ||
| } | ||
| } | ||
| _a.label = 1; | ||
| case 1: | ||
| _a.trys.push([1, 3, , 4]); | ||
| this.logger.debug("============= START : " + fcn + " ==========="); | ||
| return [4, method.call(this, new StubHelper_1.StubHelper(stub), params)]; | ||
| case 2: | ||
| payload = _a.sent(); | ||
| if (payload !== undefined && | ||
| payload !== null && | ||
| !Buffer.isBuffer(payload)) { | ||
| payload = Buffer.from(JSON.stringify(datatransform_1.Transform.normalizePayload(payload))); | ||
| } | ||
| this.logger.debug("============= END : " + fcn + " ==========="); | ||
| return [2, shim.success(payload)]; | ||
| case 3: | ||
| err_1 = _a.sent(); | ||
| error = err_1; | ||
| this.logger.error(err_1); | ||
| if (error.name !== "ChaincodeError") { | ||
| error = new InternalServerError_1.InternalServerError(error.message); | ||
| } | ||
| delete error.stack; | ||
| return [2, shim.error(Buffer.from(JSON.stringify(serialize(error))))]; | ||
| case 4: return [2]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| return Chaincode; | ||
| }()); | ||
| exports.Chaincode = Chaincode; | ||
| //# sourceMappingURL=Chaincode.js.map |
| {"version":3,"file":"Chaincode.js","sourceRoot":"","sources":["../../src/Chaincode.ts"],"names":[],"mappings":"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"} |
| export declare enum ERRORS { | ||
| PARSING_PARAMETERS_ERROR = "Error parsing parameters", | ||
| INVALID_PARAMETERS_ERROR = "Invalid parameters", | ||
| UNKNOWN_FUNCTION_ERROR = "Received unknown function", | ||
| UNKNOWN_ERROR = "Unknown error occurred" | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.ERRORS = void 0; | ||
| var ERRORS; | ||
| (function (ERRORS) { | ||
| ERRORS["PARSING_PARAMETERS_ERROR"] = "Error parsing parameters"; | ||
| ERRORS["INVALID_PARAMETERS_ERROR"] = "Invalid parameters"; | ||
| ERRORS["UNKNOWN_FUNCTION_ERROR"] = "Received unknown function"; | ||
| ERRORS["UNKNOWN_ERROR"] = "Unknown error occurred"; | ||
| })(ERRORS = exports.ERRORS || (exports.ERRORS = {})); | ||
| //# sourceMappingURL=errors.js.map |
| {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/constants/errors.ts"],"names":[],"mappings":";;;AAGA,IAAY,MAKX;AALD,WAAY,MAAM;IACd,+DAAqD,CAAA;IACrD,yDAA+C,CAAA;IAC/C,8DAAoD,CAAA;IACpD,kDAAwC,CAAA;AAC5C,CAAC,EALW,MAAM,GAAN,cAAM,KAAN,cAAM,QAKjB"} |
| export * from "./Chaincode"; | ||
| export * from "./StubHelper"; | ||
| export * from "./utils/datatransform"; | ||
| export * from "./utils/helpers"; | ||
| export * from "./utils/errors/ChaincodeError"; | ||
| export * from "./utils/errors/NotFoundError"; | ||
| export { GetQueryResultAsListOptions } from "./models/GetQueryResultAsListOptions"; | ||
| export { DeleteAllByQueryOptions } from "./models/DeleteAllByQueryOptions"; | ||
| export { GetStateByRangeAsListOptions } from "./models/GetStateByRangeAsListOptions"; | ||
| export { PutStateOptions } from "./models/PutStateOptions"; | ||
| export { GetStateOptions } from "./models/GetStateOptions"; | ||
| export interface KV { | ||
| key: string; | ||
| value: any; | ||
| } | ||
| export interface KeyModificationItem { | ||
| is_delete: boolean; | ||
| value: Object; | ||
| timestamp: number; | ||
| tx_id: string; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var tslib_1 = require("tslib"); | ||
| tslib_1.__exportStar(require("./Chaincode"), exports); | ||
| tslib_1.__exportStar(require("./StubHelper"), exports); | ||
| tslib_1.__exportStar(require("./utils/datatransform"), exports); | ||
| tslib_1.__exportStar(require("./utils/helpers"), exports); | ||
| tslib_1.__exportStar(require("./utils/errors/ChaincodeError"), exports); | ||
| tslib_1.__exportStar(require("./utils/errors/NotFoundError"), exports); | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,sDAA4B;AAC5B,uDAA6B;AAC7B,gEAAsC;AACtC,0DAAgC;AAChC,wEAA8C;AAC9C,uEAA6C"} |
| export declare type DeleteAllByQueryOptions = { | ||
| privateCollection?: string; | ||
| }; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| //# sourceMappingURL=DeleteAllByQueryOptions.js.map |
| {"version":3,"file":"DeleteAllByQueryOptions.js","sourceRoot":"","sources":["../../../src/models/DeleteAllByQueryOptions.ts"],"names":[],"mappings":""} |
| export declare type GetQueryResultAsListOptions = { | ||
| keyValue?: boolean; | ||
| privateCollection?: string; | ||
| }; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| //# sourceMappingURL=GetQueryResultAsListOptions.js.map |
| {"version":3,"file":"GetQueryResultAsListOptions.js","sourceRoot":"","sources":["../../../src/models/GetQueryResultAsListOptions.ts"],"names":[],"mappings":""} |
| export declare type GetStateByRangeAsListOptions = { | ||
| privateCollection?: string; | ||
| }; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| //# sourceMappingURL=GetStateByRangeAsListOptions.js.map |
| {"version":3,"file":"GetStateByRangeAsListOptions.js","sourceRoot":"","sources":["../../../src/models/GetStateByRangeAsListOptions.ts"],"names":[],"mappings":""} |
| export declare type GetStateOptions = { | ||
| privateCollection?: string; | ||
| }; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| //# sourceMappingURL=GetStateOptions.js.map |
| {"version":3,"file":"GetStateOptions.js","sourceRoot":"","sources":["../../../src/models/GetStateOptions.ts"],"names":[],"mappings":""} |
| export declare type PutStateOptions = { | ||
| privateCollection?: string; | ||
| }; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| //# sourceMappingURL=PutStateOptions.js.map |
| {"version":3,"file":"PutStateOptions.js","sourceRoot":"","sources":["../../../src/models/PutStateOptions.ts"],"names":[],"mappings":""} |
| import { ClientIdentity, ChaincodeStub } from "fabric-shim"; | ||
| import { KV } from "./index"; | ||
| import { GetQueryResultAsListOptions } from "./models/GetQueryResultAsListOptions"; | ||
| import { DeleteAllByQueryOptions } from "./models/DeleteAllByQueryOptions"; | ||
| import { GetStateByRangeAsListOptions } from "./models/GetStateByRangeAsListOptions"; | ||
| import { PutStateOptions } from "./models/PutStateOptions"; | ||
| import { GetStateOptions } from "./models/GetStateOptions"; | ||
| import { ShimCryptoClass } from "fabric-shim-crypto"; | ||
| export declare class StubHelper { | ||
| private readonly stub; | ||
| private logger; | ||
| constructor(stub: ChaincodeStub); | ||
| getStub(): ChaincodeStub; | ||
| getChaincodeCrypto(): ShimCryptoClass; | ||
| getClientIdentity(): ClientIdentity; | ||
| generateUUID(name: string): string; | ||
| getQueryResultAsList(query: string | object, options?: GetQueryResultAsListOptions): Promise<object[] | KV[]>; | ||
| getStateByRangeAsList(startKey: string, endKey: string, options?: GetStateByRangeAsListOptions): Promise<KV[]>; | ||
| getHistoryForKeyAsList(key: string): Promise<object[]>; | ||
| deleteAllByQuery(query: string | object, options?: DeleteAllByQueryOptions): Promise<void[]>; | ||
| putState(key: string, value: any, options?: PutStateOptions): Promise<any>; | ||
| getStateAsObject(key: string, options?: GetStateOptions): Promise<Object>; | ||
| getStateAsString(key: string, options?: GetStateOptions): Promise<string>; | ||
| getStateAsDate(key: string, options?: GetStateOptions): Promise<Date>; | ||
| getTxDate(): Date; | ||
| setEvent(name: string, payload: object): void; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.StubHelper = void 0; | ||
| var tslib_1 = require("tslib"); | ||
| var fabric_shim_1 = require("fabric-shim"); | ||
| var helpers_1 = require("./utils/helpers"); | ||
| var datatransform_1 = require("./utils/datatransform"); | ||
| var fabric_shim_crypto_1 = require("fabric-shim-crypto"); | ||
| var aguid = require("aguid"); | ||
| var StubHelper = (function () { | ||
| function StubHelper(stub) { | ||
| this.stub = stub; | ||
| this.stub = stub; | ||
| this.logger = helpers_1.Helpers.getLoggerInstance("StubHelper"); | ||
| } | ||
| StubHelper.prototype.getStub = function () { | ||
| return this.stub; | ||
| }; | ||
| StubHelper.prototype.getChaincodeCrypto = function () { | ||
| return new fabric_shim_crypto_1.ShimCryptoClass(this.stub); | ||
| }; | ||
| StubHelper.prototype.getClientIdentity = function () { | ||
| return new fabric_shim_1.ClientIdentity(this.stub); | ||
| }; | ||
| StubHelper.prototype.generateUUID = function (name) { | ||
| var txId = this.stub.getTxID(); | ||
| var txTimestamp = this.getTxDate().getTime(); | ||
| return aguid(name + "_" + txId + "_" + txTimestamp); | ||
| }; | ||
| StubHelper.prototype.getQueryResultAsList = function (query, options) { | ||
| if (options === void 0) { options = {}; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var queryString, iterator; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| if (query && typeof query === "object") { | ||
| queryString = JSON.stringify(query); | ||
| } | ||
| else { | ||
| queryString = query; | ||
| } | ||
| this.logger.debug("Query: " + queryString); | ||
| if (!options.privateCollection) return [3, 2]; | ||
| return [4, this.stub.getPrivateDataQueryResult(options.privateCollection, queryString)]; | ||
| case 1: | ||
| iterator = _a.sent(); | ||
| return [3, 4]; | ||
| case 2: return [4, this.stub.getQueryResult(queryString)]; | ||
| case 3: | ||
| iterator = _a.sent(); | ||
| _a.label = 4; | ||
| case 4: | ||
| if (options.keyValue) { | ||
| return [2, datatransform_1.Transform.iteratorToKVList(iterator)]; | ||
| } | ||
| return [2, datatransform_1.Transform.iteratorToList(iterator)]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.getStateByRangeAsList = function (startKey, endKey, options) { | ||
| if (options === void 0) { options = {}; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var iterator; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| this.logger.debug("StartKey: " + startKey + " - EndKey: " + endKey); | ||
| if (!options.privateCollection) return [3, 2]; | ||
| return [4, this.stub.getPrivateDataByRange(options.privateCollection, startKey, endKey)]; | ||
| case 1: | ||
| iterator = _a.sent(); | ||
| return [3, 4]; | ||
| case 2: return [4, this.stub.getStateByRange(startKey, endKey)]; | ||
| case 3: | ||
| iterator = _a.sent(); | ||
| _a.label = 4; | ||
| case 4: return [2, datatransform_1.Transform.iteratorToList(iterator)]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.getHistoryForKeyAsList = function (key) { | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var iterator; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| this.logger.debug("History for key: " + key); | ||
| return [4, this.stub.getHistoryForKey(key)]; | ||
| case 1: | ||
| iterator = _a.sent(); | ||
| return [2, datatransform_1.Transform.iteratorToHistoryList(iterator)]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.deleteAllByQuery = function (query, options) { | ||
| if (options === void 0) { options = {}; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var allResults; | ||
| var _this = this; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: return [4, this.getQueryResultAsList(query, tslib_1.__assign({ keyValue: true }, options))]; | ||
| case 1: | ||
| allResults = _a.sent(); | ||
| return [2, Promise.all(allResults.map(function (record) { | ||
| if (options.privateCollection) { | ||
| return _this.stub.deletePrivateData(options.privateCollection, record.key); | ||
| } | ||
| else { | ||
| return _this.stub.deleteState(record.key); | ||
| } | ||
| }))]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.putState = function (key, value, options) { | ||
| if (options === void 0) { options = {}; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| return tslib_1.__generator(this, function (_a) { | ||
| if (options.privateCollection) { | ||
| return [2, this.stub.putPrivateData(options.privateCollection, key, datatransform_1.Transform.serialize(value))]; | ||
| } | ||
| return [2, this.stub.putState(key, datatransform_1.Transform.serialize(value))]; | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.getStateAsObject = function (key, options) { | ||
| if (options === void 0) { options = {}; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var valueAsBytes; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| if (!options.privateCollection) return [3, 2]; | ||
| return [4, this.stub.getPrivateData(options.privateCollection, key)]; | ||
| case 1: | ||
| valueAsBytes = _a.sent(); | ||
| return [3, 4]; | ||
| case 2: return [4, this.stub.getState(key)]; | ||
| case 3: | ||
| valueAsBytes = _a.sent(); | ||
| _a.label = 4; | ||
| case 4: | ||
| if (valueAsBytes === undefined || | ||
| valueAsBytes === null || | ||
| valueAsBytes.toString().length <= 0) { | ||
| return [2, null]; | ||
| } | ||
| return [2, datatransform_1.Transform.bufferToObject(valueAsBytes)]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.getStateAsString = function (key, options) { | ||
| if (options === void 0) { options = {}; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var valueAsBytes; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| if (!options.privateCollection) return [3, 2]; | ||
| return [4, this.stub.getPrivateData(options.privateCollection, key)]; | ||
| case 1: | ||
| valueAsBytes = _a.sent(); | ||
| return [3, 4]; | ||
| case 2: return [4, this.stub.getState(key)]; | ||
| case 3: | ||
| valueAsBytes = _a.sent(); | ||
| _a.label = 4; | ||
| case 4: | ||
| if (valueAsBytes === undefined || | ||
| valueAsBytes === null || | ||
| valueAsBytes.toString().length <= 0) { | ||
| return [2, null]; | ||
| } | ||
| return [2, datatransform_1.Transform.bufferToString(valueAsBytes)]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.getStateAsDate = function (key, options) { | ||
| if (options === void 0) { options = {}; } | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var valueAsBytes; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| if (!options.privateCollection) return [3, 2]; | ||
| return [4, this.stub.getPrivateData(options.privateCollection, key)]; | ||
| case 1: | ||
| valueAsBytes = _a.sent(); | ||
| return [3, 4]; | ||
| case 2: return [4, this.stub.getState(key)]; | ||
| case 3: | ||
| valueAsBytes = _a.sent(); | ||
| _a.label = 4; | ||
| case 4: | ||
| if (valueAsBytes === undefined || | ||
| valueAsBytes === null || | ||
| valueAsBytes.toString().length <= 0) { | ||
| return [2, null]; | ||
| } | ||
| return [2, datatransform_1.Transform.bufferToDate(valueAsBytes)]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| StubHelper.prototype.getTxDate = function () { | ||
| return new Date(this.stub.getTxTimestamp().nanos * 1000); | ||
| }; | ||
| StubHelper.prototype.setEvent = function (name, payload) { | ||
| var bufferedPayload; | ||
| if (Buffer.isBuffer(payload)) { | ||
| bufferedPayload = payload; | ||
| } | ||
| else { | ||
| bufferedPayload = Buffer.from(JSON.stringify(payload)); | ||
| } | ||
| this.logger.debug("Setting Event " + name + " with payload " + JSON.stringify(payload)); | ||
| this.stub.setEvent(name, bufferedPayload); | ||
| }; | ||
| return StubHelper; | ||
| }()); | ||
| exports.StubHelper = StubHelper; | ||
| //# sourceMappingURL=StubHelper.js.map |
| {"version":3,"file":"StubHelper.js","sourceRoot":"","sources":["../../src/StubHelper.ts"],"names":[],"mappings":"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"} |
| /// <reference types="node" /> | ||
| import { Iterators } from "fabric-shim"; | ||
| import { KeyModificationItem, KV } from "../index"; | ||
| import { Logger } from "winston"; | ||
| export declare class Transform { | ||
| static logger: Logger; | ||
| static serialize(value: any): Buffer; | ||
| static bufferToObject(buffer: Buffer): object | string; | ||
| static bufferToDate(buffer: Buffer): Date | undefined; | ||
| static bufferToString(buffer: Buffer): string | undefined; | ||
| static iteratorToList(iterator: Iterators.CommonIterator<any>): Promise<any[]>; | ||
| static iteratorToKVList(iterator: Iterators.CommonIterator<any>): Promise<KV[]>; | ||
| static iteratorToHistoryList(iterator: Iterators.HistoryQueryIterator): Promise<KeyModificationItem[]>; | ||
| static normalizePayload(value: any): any; | ||
| static isDate(date: any): boolean; | ||
| static isString(data: any): boolean; | ||
| static isObject(data: any): boolean; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.Transform = void 0; | ||
| var tslib_1 = require("tslib"); | ||
| var helpers_1 = require("./helpers"); | ||
| var Transform = (function () { | ||
| function Transform() { | ||
| } | ||
| Transform.serialize = function (value) { | ||
| if (value instanceof Buffer) { | ||
| return value; | ||
| } | ||
| else if (this.isDate(value) || this.isString(value)) { | ||
| return Buffer.from(this.normalizePayload(value).toString()); | ||
| } | ||
| return Buffer.from(JSON.stringify(this.normalizePayload(value))); | ||
| }; | ||
| Transform.bufferToObject = function (buffer) { | ||
| if (buffer == null) { | ||
| return null; | ||
| } | ||
| if (Number(parseFloat(buffer.toString())) === buffer) { | ||
| return buffer; | ||
| } | ||
| var bufferString = buffer.toString("utf8"); | ||
| if (bufferString.length <= 0) { | ||
| return null; | ||
| } | ||
| try { | ||
| return JSON.parse(bufferString); | ||
| } | ||
| catch (err) { | ||
| this.logger.error("Error parsing buffer to JSON", bufferString); | ||
| return bufferString; | ||
| } | ||
| }; | ||
| Transform.bufferToDate = function (buffer) { | ||
| if (buffer == null) { | ||
| return null; | ||
| } | ||
| var bufferString = buffer.toString(); | ||
| if (bufferString.length <= 0) { | ||
| return null; | ||
| } | ||
| if (/\d+/g.test(bufferString)) { | ||
| return new Date(parseInt(bufferString, 10)); | ||
| } | ||
| return null; | ||
| }; | ||
| Transform.bufferToString = function (buffer) { | ||
| if (buffer == null) { | ||
| return null; | ||
| } | ||
| return buffer.toString(); | ||
| }; | ||
| Transform.iteratorToList = function (iterator) { | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var allResults, res, parsedItem; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| allResults = []; | ||
| _a.label = 1; | ||
| case 1: | ||
| if (!(res == null || !res.done)) return [3, 3]; | ||
| return [4, iterator.next()]; | ||
| case 2: | ||
| res = _a.sent(); | ||
| if (res.value && res.value.value.toString()) { | ||
| parsedItem = void 0; | ||
| try { | ||
| parsedItem = JSON.parse(res.value.value.toString("utf8")); | ||
| } | ||
| catch (err) { | ||
| parsedItem = res.value.value.toString("utf8"); | ||
| } | ||
| allResults.push(parsedItem); | ||
| } | ||
| return [3, 1]; | ||
| case 3: return [4, iterator.close()]; | ||
| case 4: | ||
| _a.sent(); | ||
| return [2, allResults]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| Transform.iteratorToKVList = function (iterator) { | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var allResults, res, parsedItem; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| allResults = []; | ||
| _a.label = 1; | ||
| case 1: | ||
| if (!(res == null || !res.done)) return [3, 3]; | ||
| return [4, iterator.next()]; | ||
| case 2: | ||
| res = _a.sent(); | ||
| if (res.value && res.value.value.toString()) { | ||
| parsedItem = { key: "", value: {} }; | ||
| parsedItem.key = res.value.key; | ||
| try { | ||
| parsedItem.value = JSON.parse(res.value.value.toString("utf8")); | ||
| } | ||
| catch (err) { | ||
| parsedItem.value = res.value.value.toString("utf8"); | ||
| } | ||
| allResults.push(parsedItem); | ||
| } | ||
| return [3, 1]; | ||
| case 3: return [4, iterator.close()]; | ||
| case 4: | ||
| _a.sent(); | ||
| return [2, allResults]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| Transform.iteratorToHistoryList = function (iterator) { | ||
| return tslib_1.__awaiter(this, void 0, void 0, function () { | ||
| var allResults, res, parsedItem; | ||
| return tslib_1.__generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| allResults = []; | ||
| _a.label = 1; | ||
| case 1: | ||
| if (!(res == null || !res.done)) return [3, 3]; | ||
| return [4, iterator.next()]; | ||
| case 2: | ||
| res = _a.sent(); | ||
| if (res.value && res.value.value.toString()) { | ||
| parsedItem = { | ||
| is_delete: false, | ||
| value: {}, | ||
| timestamp: null, | ||
| tx_id: "", | ||
| }; | ||
| try { | ||
| parsedItem.value = JSON.parse(res.value.value.toString()); | ||
| } | ||
| catch (err) { | ||
| parsedItem.value = res.value.value.toString(); | ||
| } | ||
| parsedItem.is_delete = res.value.isDelete; | ||
| parsedItem.tx_id = res.value.txId; | ||
| parsedItem.timestamp = res.value.timestamp.nanos; | ||
| allResults.push(parsedItem); | ||
| } | ||
| return [3, 1]; | ||
| case 3: return [4, iterator.close()]; | ||
| case 4: | ||
| _a.sent(); | ||
| return [2, allResults]; | ||
| } | ||
| }); | ||
| }); | ||
| }; | ||
| Transform.normalizePayload = function (value) { | ||
| var _this = this; | ||
| if (value === null) { | ||
| return value; | ||
| } | ||
| else if (this.isDate(value)) { | ||
| return value.getTime(); | ||
| } | ||
| else if (this.isString(value)) { | ||
| return value; | ||
| } | ||
| else if (Array.isArray(value)) { | ||
| return value.map(function (v) { return _this.normalizePayload(v); }); | ||
| } | ||
| else if (this.isObject(value)) { | ||
| return Object.entries(value).reduce(function (a, _a) { | ||
| var key = _a[0], v = _a[1]; | ||
| a[key] = _this.normalizePayload(v); | ||
| return a; | ||
| }, {}); | ||
| } | ||
| return value; | ||
| }; | ||
| Transform.isDate = function (date) { | ||
| return (date && | ||
| Object.prototype.toString.call(date) === "[object Date]" && | ||
| !isNaN(date)); | ||
| }; | ||
| Transform.isString = function (data) { | ||
| return data && (typeof data === "string" || data instanceof String); | ||
| }; | ||
| Transform.isObject = function (data) { | ||
| return data !== null && typeof data === "object"; | ||
| }; | ||
| Transform.logger = helpers_1.Helpers.getLoggerInstance("Transform", "info"); | ||
| return Transform; | ||
| }()); | ||
| exports.Transform = Transform; | ||
| //# sourceMappingURL=datatransform.js.map |
| {"version":3,"file":"datatransform.js","sourceRoot":"","sources":["../../../src/utils/datatransform.ts"],"names":[],"mappings":"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"} |
| export declare class ChaincodeError extends Error { | ||
| status: number; | ||
| constructor(message: string, status?: number); | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.ChaincodeError = void 0; | ||
| var tslib_1 = require("tslib"); | ||
| var ChaincodeError = (function (_super) { | ||
| tslib_1.__extends(ChaincodeError, _super); | ||
| function ChaincodeError(message, status) { | ||
| var _this = _super.call(this, message) || this; | ||
| _this.name = _this.constructor.name; | ||
| Error.captureStackTrace(_this, _this.constructor); | ||
| _this.status = status || 500; | ||
| return _this; | ||
| } | ||
| return ChaincodeError; | ||
| }(Error)); | ||
| exports.ChaincodeError = ChaincodeError; | ||
| //# sourceMappingURL=ChaincodeError.js.map |
| {"version":3,"file":"ChaincodeError.js","sourceRoot":"","sources":["../../../../src/utils/errors/ChaincodeError.ts"],"names":[],"mappings":";;;;AAGA;IAAoC,0CAAK;IAIrC,wBAAY,OAAe,EAAE,MAAgB;QAA7C,YAGI,kBAAM,OAAO,CAAC,SAajB;QAVG,KAAI,CAAC,IAAI,GAAG,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAGlC,KAAK,CAAC,iBAAiB,CAAC,KAAI,EAAE,KAAI,CAAC,WAAW,CAAC,CAAC;QAKhD,KAAI,CAAC,MAAM,GAAG,MAAM,IAAI,GAAG,CAAC;;IAEhC,CAAC;IAEL,qBAAC;AAAD,CAAC,AAtBD,CAAoC,KAAK,GAsBxC;AAtBY,wCAAc"} |
| import { ChaincodeError } from './ChaincodeError'; | ||
| export declare class InternalServerError extends ChaincodeError { | ||
| constructor(message?: string); | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.InternalServerError = void 0; | ||
| var tslib_1 = require("tslib"); | ||
| var ChaincodeError_1 = require("./ChaincodeError"); | ||
| var InternalServerError = (function (_super) { | ||
| tslib_1.__extends(InternalServerError, _super); | ||
| function InternalServerError(message) { | ||
| if (message === void 0) { message = ''; } | ||
| return _super.call(this, message, 500) || this; | ||
| } | ||
| return InternalServerError; | ||
| }(ChaincodeError_1.ChaincodeError)); | ||
| exports.InternalServerError = InternalServerError; | ||
| //# sourceMappingURL=InternalServerError.js.map |
| {"version":3,"file":"InternalServerError.js","sourceRoot":"","sources":["../../../../src/utils/errors/InternalServerError.ts"],"names":[],"mappings":";;;;AAAA,mDAAkD;AAKlD;IAAyC,+CAAc;IAEnD,6BAAY,OAAY;QAAZ,wBAAA,EAAA,YAAY;eACpB,kBAAM,OAAO,EAAE,GAAG,CAAC;IACvB,CAAC;IAEL,0BAAC;AAAD,CAAC,AAND,CAAyC,+BAAc,GAMtD;AANY,kDAAmB"} |
| import { ChaincodeError } from './ChaincodeError'; | ||
| export declare class NotFoundError extends ChaincodeError { | ||
| constructor(message?: string); | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.NotFoundError = void 0; | ||
| var tslib_1 = require("tslib"); | ||
| var ChaincodeError_1 = require("./ChaincodeError"); | ||
| var NotFoundError = (function (_super) { | ||
| tslib_1.__extends(NotFoundError, _super); | ||
| function NotFoundError(message) { | ||
| if (message === void 0) { message = ''; } | ||
| return _super.call(this, message, 404) || this; | ||
| } | ||
| return NotFoundError; | ||
| }(ChaincodeError_1.ChaincodeError)); | ||
| exports.NotFoundError = NotFoundError; | ||
| //# sourceMappingURL=NotFoundError.js.map |
| {"version":3,"file":"NotFoundError.js","sourceRoot":"","sources":["../../../../src/utils/errors/NotFoundError.ts"],"names":[],"mappings":";;;;AAAA,mDAAkD;AAKlD;IAAmC,yCAAc;IAE7C,uBAAY,OAAY;QAAZ,wBAAA,EAAA,YAAY;eACpB,kBAAM,OAAO,EAAE,GAAG,CAAC;IACvB,CAAC;IAEL,oBAAC;AAAD,CAAC,AAND,CAAmC,+BAAc,GAMhD;AANY,sCAAa"} |
| import { ChaincodeError } from './ChaincodeError'; | ||
| import { ValidationError } from 'yup'; | ||
| export declare class ObjectValidationError extends ChaincodeError { | ||
| value: any; | ||
| path: string; | ||
| type: any; | ||
| errors: string[]; | ||
| inner: ValidationError[]; | ||
| params?: object; | ||
| constructor(error: ValidationError); | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.ObjectValidationError = void 0; | ||
| var tslib_1 = require("tslib"); | ||
| var ChaincodeError_1 = require("./ChaincodeError"); | ||
| var ObjectValidationError = (function (_super) { | ||
| tslib_1.__extends(ObjectValidationError, _super); | ||
| function ObjectValidationError(error) { | ||
| var _this = _super.call(this, error.message, 400) || this; | ||
| _this.errors = error.errors; | ||
| _this.params = error.params; | ||
| _this.path = error.path; | ||
| _this.value = error.value; | ||
| _this.inner = error.inner; | ||
| _this.type = error.type; | ||
| return _this; | ||
| } | ||
| return ObjectValidationError; | ||
| }(ChaincodeError_1.ChaincodeError)); | ||
| exports.ObjectValidationError = ObjectValidationError; | ||
| //# sourceMappingURL=ObjectValidationError.js.map |
| {"version":3,"file":"ObjectValidationError.js","sourceRoot":"","sources":["../../../../src/utils/errors/ObjectValidationError.ts"],"names":[],"mappings":";;;;AAAA,mDAAkD;AAMlD;IAA2C,iDAAc;IAmBrD,+BAAY,KAAsB;QAAlC,YAGI,kBAAM,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,SAQ5B;QANG,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,KAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,KAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACvB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACzB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACzB,KAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;;IAC3B,CAAC;IAEL,4BAAC;AAAD,CAAC,AAhCD,CAA2C,+BAAc,GAgCxD;AAhCY,sDAAqB"} |
| import { Logger } from "winston"; | ||
| export declare class Helpers { | ||
| static getLoggerInstance(name: string, level?: string): Logger; | ||
| static checkArgs<T>(object: Object, yupSchema: any): Promise<T>; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.Helpers = void 0; | ||
| var winston_1 = require("winston"); | ||
| var ObjectValidationError_1 = require("./errors/ObjectValidationError"); | ||
| var ChaincodeError_1 = require("./errors/ChaincodeError"); | ||
| var Helpers = (function () { | ||
| function Helpers() { | ||
| } | ||
| Helpers.getLoggerInstance = function (name, level) { | ||
| return new winston_1.Logger({ | ||
| transports: [ | ||
| new winston_1.transports.Console({ | ||
| level: level || "debug", | ||
| handleExceptions: true, | ||
| }), | ||
| ], | ||
| exitOnError: false, | ||
| }); | ||
| }; | ||
| Helpers.checkArgs = function (object, yupSchema) { | ||
| if (!object || !yupSchema) { | ||
| return Promise.reject(new ChaincodeError_1.ChaincodeError("CheckArgs requires an object and schema", 400)); | ||
| } | ||
| return yupSchema | ||
| .validate(object) | ||
| .then(function (validatedObject) { | ||
| return validatedObject; | ||
| }) | ||
| .catch(function (error) { | ||
| throw new ObjectValidationError_1.ObjectValidationError(error); | ||
| }); | ||
| }; | ||
| return Helpers; | ||
| }()); | ||
| exports.Helpers = Helpers; | ||
| //# sourceMappingURL=helpers.js.map |
| {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":";;;AAAA,mCAA6C;AAC7C,wEAAuE;AACvE,0DAAyD;AAKzD;IAAA;IA0DA,CAAC;IAhDiB,yBAAiB,GAA/B,UAAgC,IAAY,EAAE,KAAc;QACxD,OAAO,IAAI,gBAAM,CAAC;YACd,UAAU,EAAE;gBACR,IAAI,oBAAU,CAAC,OAAO,CAAC;oBACnB,KAAK,EAAE,KAAK,IAAI,OAAO;oBAEvB,gBAAgB,EAAE,IAAI;iBAIzB,CAAC;aACL;YACD,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC;IACP,CAAC;IAea,iBAAS,GAAvB,UAA2B,MAAc,EAAE,SAAc;QACrD,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE;YACvB,OAAO,OAAO,CAAC,MAAM,CACjB,IAAI,+BAAc,CACd,yCAAyC,EACzC,GAAG,CACN,CACJ,CAAC;SACL;QAED,OAAO,SAAS;aACX,QAAQ,CAAC,MAAM,CAAC;aAChB,IAAI,CAAC,UAAC,eAAkB;YACrB,OAAO,eAAe,CAAC;QAC3B,CAAC,CAAC;aACD,KAAK,CAAC,UAAC,KAAU;YACd,MAAM,IAAI,6CAAqB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACX,CAAC;IACL,cAAC;AAAD,CAAC,AA1DD,IA0DC;AA1DY,0BAAO"} |
+30
-45
| { | ||
| "name": "@xlera/xplor-chaincode-utils", | ||
| "version": "1.3.20", | ||
| "version": "1.3.21", | ||
| "description": "Utilities for working with and testing hyperledger Fabric nodejs chaincode", | ||
| "main": "dist/index.js", | ||
| "types": "dist/index.d.ts", | ||
| "main": "./dist/index.js", | ||
| "types": "./dist/index.d.ts", | ||
| "typings": "./dist/src/index.d.ts", | ||
| "files": [ | ||
| "dist/*" | ||
| ], | ||
| "scripts": { | ||
| "clean": "rimraf dist", | ||
| "clean:docs": "rimraf docs", | ||
| "build": "npm run clean && tsc", | ||
| "test": "mocha -r ts-node/register src/test/**/*.spec.ts --reporter spec", | ||
| "test:coverage": "nyc --no-clean mocha -r ts-node/register src/test/**/*.spec.ts --reporter spec", | ||
| "report-coverage": "nyc report --reporter=text-lcov > coverage.lcov && codecov", | ||
| "lint": "tslint --fix -c tslint.json './src/**/*.ts'", | ||
| "clean": "rimraf dist", | ||
| "prepare": "npm run build", | ||
| "watch": "npm-scripts-watcher", | ||
| "generate:docs": "rimraf docs && typedoc src --out docs --target ES6 --excludePrivate && touch docs/.nojekyll && touch docs/modules/.nojekyll" | ||
| }, | ||
| "lint": "tslint --fix -c '../../tslint.json' -p './tsconfig.json'", | ||
| "predocs:generate": "npm run clean:docs", | ||
| "docs:generate": "typedoc src --mode file --out docs --target ES6 --excludePrivate", | ||
| "docs:serve": "http-server docs" | ||
| }, | ||
| "repository": { | ||
| "type": "git", | ||
| "url": "git+https://github.com/wearetheledger/fabric-chaincode-utils.git" | ||
| "url": "https://github.com/xlerarepo/xplor/tree/develop/%40xlera/xplor-chaincode-utils.git" | ||
| }, | ||
| "keywords": [], | ||
| "author": "TheLedger <https://github.com/wearetheledger>", | ||
| "keywords": [ | ||
| "typescript", | ||
| "chaincode", | ||
| "blockchain", | ||
| "hyperledger", | ||
| "solutions", | ||
| "environment", | ||
| "hyperledger fabric", | ||
| "smart contract", | ||
| "run", | ||
| "hurley", | ||
| "composer" | ||
| ], | ||
| "license": "MIT", | ||
| "bugs": { | ||
| "url": "https://github.com/wearetheledger/fabric-chaincode-utils/issues" | ||
| "url": "https://github.com/xlerarepo/xplor/tree/develop/%40xlera/xplor-chaincode-utils/issues" | ||
| }, | ||
| "homepage": "https://github.com/wearetheledger/fabric-chaincode-utils#readme", | ||
| "homepage": "https://github.com/xlerarepo/xplor/tree/develop/%40xlera/xplor-chaincode-utils#readme", | ||
| "devDependencies": { | ||
@@ -64,32 +78,3 @@ "@types/chai": "^4.3.4", | ||
| }, | ||
| "husky": { | ||
| "hooks": { | ||
| "pre-push": "npm run lint && git add . && npm run test" | ||
| } | ||
| }, | ||
| "watch": { | ||
| "{src,test}/**/*.ts": [ | ||
| "test" | ||
| ] | ||
| }, | ||
| "nyc": { | ||
| "include": [ | ||
| "src/**/*.ts" | ||
| ], | ||
| "extension": [ | ||
| ".ts" | ||
| ], | ||
| "require": [ | ||
| "ts-node/register" | ||
| ], | ||
| "reporter": [ | ||
| "text" | ||
| ], | ||
| "exclude": [ | ||
| "src/utils/errors/*.ts" | ||
| ], | ||
| "sourceMap": true, | ||
| "instrument": true | ||
| }, | ||
| "gitHead": "b0ffe3dfe0a51350aa4c93758af199d1cd7b8c3d" | ||
| } |
| # EditorConfig helps developers define and maintain | ||
| # consistent coding styles between different editors and IDEs. | ||
| root = true | ||
| [*] | ||
| end_of_line = lf | ||
| charset = utf-8 | ||
| trim_trailing_whitespace = true | ||
| insert_final_newline = true | ||
| indent_style = space | ||
| indent_size = 4 |
| declare module 'fabric-shim-crypto' { | ||
| namespace ShimCrypto { | ||
| /*~ Write your module's methods and properties in this class */ | ||
| /*~ If you want to expose types from your module as well, you can | ||
| *~ place them in this block. | ||
| */ | ||
| export class ShimCryptoClass { | ||
| constructor(stub: Object); | ||
| ENCRYPT_KEY: string; | ||
| SIGN_KEY: string; | ||
| INIT_VECTOR: string; | ||
| encrypt(plaintext: string): Buffer; | ||
| decrypt(ciphertext: string): Buffer; | ||
| sign(message: string): Buffer; | ||
| verify(signature: Buffer, message: string): ShimCrypto.VerifyResponse; | ||
| } | ||
| export interface VerifyResponse { | ||
| ok: boolean; | ||
| error?: Error; | ||
| } | ||
| } | ||
| export = ShimCrypto; | ||
| } |
| { | ||
| "extends": "./tsconfig.json", | ||
| "exclude": [ | ||
| "node_modules", | ||
| "test", | ||
| "**/*spec.ts" | ||
| ] | ||
| } |
| { | ||
| "compilerOptions": { | ||
| "types": [ | ||
| "@types/chai" | ||
| ], | ||
| "typeRoots": [ | ||
| "./node_modules/@types", | ||
| "./node_modules/@theledger" | ||
| ] | ||
| } | ||
| } |
-150
| { | ||
| "rules": { | ||
| "class-name": true, | ||
| "comment-format": [ | ||
| false | ||
| ], | ||
| "curly": true, | ||
| "eofline": false, | ||
| "forin": true, | ||
| "indent": [ | ||
| true, | ||
| "spaces", | ||
| 4 | ||
| ], | ||
| "label-position": true, | ||
| "max-line-length": [ | ||
| true, | ||
| 150 | ||
| ], | ||
| "member-access": false, | ||
| "no-conditional-assignment": true, | ||
| "no-require-imports": false, | ||
| "member-ordering": [ | ||
| true, | ||
| { | ||
| "order": [ | ||
| "static-field", | ||
| "instance-field", | ||
| "constructor", | ||
| "public-instance-method", | ||
| "protected-instance-method", | ||
| "private-instance-method" | ||
| ] | ||
| } | ||
| ], | ||
| "no-any": false, | ||
| "no-arg": true, | ||
| "no-bitwise": true, | ||
| "no-magic-numbers": false, | ||
| "object-literal-key-quotes": [ | ||
| false | ||
| ], | ||
| "object-literal-shorthand": false, | ||
| "no-mergeable-namespace": true, | ||
| "no-console": [ | ||
| false, | ||
| "debug", | ||
| "info", | ||
| "time", | ||
| "timeEnd", | ||
| "trace" | ||
| ], | ||
| "no-construct": true, | ||
| "no-debugger": true, | ||
| "no-duplicate-variable": true, | ||
| "no-empty": true, | ||
| "no-empty-interface": true, | ||
| "no-eval": true, | ||
| "completed-docs": [ | ||
| false | ||
| ], | ||
| "no-inferrable-types": [ | ||
| true | ||
| ], | ||
| "no-invalid-this": [ | ||
| true | ||
| ], | ||
| "cyclomatic-complexity": [ | ||
| true, | ||
| 20 | ||
| ], | ||
| "no-shadowed-variable": true, | ||
| "no-string-literal": false, | ||
| "no-switch-case-fall-through": true, | ||
| "no-for-in-array": false, | ||
| "no-trailing-whitespace": false, | ||
| "no-unused-expression": true, | ||
| "no-unused-variable": true, | ||
| "no-unsafe-finally": true, | ||
| "no-unused-new": true, | ||
| "no-parameter-properties": false, | ||
| "no-use-before-declare": true, | ||
| "use-isnan": true, | ||
| "switch-default": true, | ||
| "jsdoc-format": false, | ||
| "no-var-requires": false, | ||
| "no-var-keyword": true, | ||
| "no-default-export": true, | ||
| "restrict-plus-operands": false, | ||
| "object-literal-sort-keys": false, | ||
| "prefer-for-of": true, | ||
| "no-null-keyword": false, | ||
| "new-parens": true, | ||
| "no-angle-bracket-type-assertion": false, | ||
| "no-consecutive-blank-lines": true, | ||
| "max-classes-per-file": [ | ||
| true, | ||
| 1 | ||
| ], | ||
| "file-header": [ | ||
| false | ||
| ], | ||
| "align": [ | ||
| true | ||
| ], | ||
| "array-type": [ | ||
| false | ||
| ], | ||
| "interface-name": [ | ||
| false | ||
| ], | ||
| "arrow-parens": false, | ||
| "one-variable-per-declaration": [ | ||
| false | ||
| ], | ||
| "one-line": [ | ||
| true, | ||
| "check-open-brace", | ||
| "check-catch", | ||
| "check-else", | ||
| "check-finally" | ||
| ], | ||
| "quotemark": [ | ||
| true, | ||
| "single", | ||
| "avoid-escape" | ||
| ], | ||
| "radix": false, | ||
| "semicolon": [ | ||
| true | ||
| ], | ||
| "trailing-comma": [ | ||
| false | ||
| ], | ||
| "triple-equals": [ | ||
| false | ||
| ], | ||
| "typedef": [ | ||
| true | ||
| ], | ||
| "variable-name": [ | ||
| true, | ||
| "allow-leading-underscore", | ||
| "allow-pascal-case" | ||
| ], | ||
| "whitespace": [ | ||
| false | ||
| ] | ||
| } | ||
| } |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
No contributors or author data
MaintenancePackage does not specify a list of contributors or an author in package.json.
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
No website
QualityPackage does not have a website.
57316
369.03%48
500%784
317.02%2
Infinity%1
Infinity%1
Infinity%