New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@ckb-lumos/config-manager

Package Overview
Dependencies
Maintainers
3
Versions
195
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ckb-lumos/config-manager - npm Package Compare versions

Comparing version 0.18.0-rc1 to 0.18.0-rc2

lib/helpers.d.ts

120

lib/index.js

@@ -1,86 +0,36 @@

const deepFreeze = require("deep-freeze-strict");
const { readFileSync } = require("fs");
const { env } = require("process");
const predefined = require("./predefined");
function assertHexString(debugPath, string) {
if (!/^0x([0-9a-fA-F][0-9a-fA-F])*$/.test(string)) {
throw new Error(`${debugPath} must be a hex string!`);
}
}
function assertHash(debugPath, hash) {
assertHexString(debugPath, hash);
if (hash.length != 66) {
throw new Error(`${debugPath} must be a hex string of 66 bytes long!`);
}
}
function assertInteger(debugPath, i) {
if (i === "0x0") {
return;
}
if (!/^0x[1-9a-fA-F][0-9a-fA-F]*$/.test(i)) {
throw new Error(`${debugPath} must be a hex integer!`);
}
}
function validateConfig(config) {
if (typeof config.PREFIX !== "string") {
throw new Error("PREFIX must be a string!");
}
for (const scriptName of Object.keys(config.SCRIPTS)) {
const scriptConfig = config.SCRIPTS[scriptName];
assertHash(`SCRIPTS.${scriptName}.CODE_HASH`, scriptConfig.CODE_HASH);
const hashType = scriptConfig.HASH_TYPE;
if (hashType !== "type" && hashType !== "data") {
throw new Error(
`SCRIPTS.${scriptName}.HASH_TYPE must either be data or type!`
);
}
assertHash(`SCRIPTS.${scriptName}.TX_HASH`, scriptConfig.TX_HASH);
assertInteger(`SCRIPTS.${scriptName}.INDEX`, scriptConfig.INDEX);
const depType = scriptConfig.DEP_TYPE;
if (depType !== "dep_group" && depType !== "code") {
throw new Error(
`SCRIPTS.${scriptName}.DEP_TYPE must either be dep_group or code!`
);
}
const shortId = scriptConfig.SHORT_ID;
// Short ID is optional
if (shortId != undefined) {
if (typeof shortId !== "number") {
throw new Error("SHORT_ID must be a number!");
}
}
}
}
let config = predefined.LINA;
function getConfig() {
return config;
}
function initializeConfig() {
if (env.LUMOS_CONFIG_NAME && predefined[env.LUMOS_CONFIG_NAME]) {
config = predefined[env.LUMOS_CONFIG_NAME];
return;
}
const configFilename = env.LUMOS_CONFIG_FILE || "config.json";
try {
const data = readFileSync(configFilename);
const loadedConfig = JSON.parse(data);
validateConfig(loadedConfig);
config = deepFreeze(loadedConfig);
} catch (e) {
throw new Error(`Error loading config from file ${configFilename}: ${e}`);
}
}
module.exports = {
getConfig,
initializeConfig,
predefined,
validateConfig,
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
};
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./types"), exports);
var manager_1 = require("./manager");
Object.defineProperty(exports, "initializeConfig", { enumerable: true, get: function () { return manager_1.initializeConfig; } });
Object.defineProperty(exports, "getConfig", { enumerable: true, get: function () { return manager_1.getConfig; } });
Object.defineProperty(exports, "validateConfig", { enumerable: true, get: function () { return manager_1.validateConfig; } });
Object.defineProperty(exports, "CKB2019", { enumerable: true, get: function () { return manager_1.CKB2019; } });
Object.defineProperty(exports, "CKB2021", { enumerable: true, get: function () { return manager_1.CKB2021; } });
exports.helpers = __importStar(require("./helpers"));
var predefined_1 = require("./predefined");
Object.defineProperty(exports, "predefined", { enumerable: true, get: function () { return predefined_1.predefined; } });
Object.defineProperty(exports, "createConfig", { enumerable: true, get: function () { return predefined_1.createConfig; } });
//# sourceMappingURL=index.js.map

@@ -1,112 +0,105 @@

const deepFreeze = require("deep-freeze-strict");
const LINA = deepFreeze({
PREFIX: "ckb",
SCRIPTS: {
SECP256K1_BLAKE160: {
CODE_HASH:
"0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8",
HASH_TYPE: "type",
TX_HASH:
"0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c",
INDEX: "0x0",
DEP_TYPE: "dep_group",
SHORT_ID: 0,
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.predefined = exports.createConfig = void 0;
const deep_freeze_strict_1 = __importDefault(require("deep-freeze-strict"));
/**
* create a frozen {@link ScriptConfig}, also this is a TypeScript helper to create an autocomplete-friendly {@link ScriptConfigs}
* @param configShape
*/
function createConfig(configShape) {
return deep_freeze_strict_1.default(configShape);
}
exports.createConfig = createConfig;
const LINA = createConfig({
CKB2021: true,
PREFIX: "ckb",
SCRIPTS: {
SECP256K1_BLAKE160: {
CODE_HASH: "0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8",
HASH_TYPE: "type",
TX_HASH: "0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c",
INDEX: "0x0",
DEP_TYPE: "dep_group",
SHORT_ID: 0,
},
SECP256K1_BLAKE160_MULTISIG: {
CODE_HASH: "0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8",
HASH_TYPE: "type",
TX_HASH: "0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c",
INDEX: "0x1",
DEP_TYPE: "dep_group",
SHORT_ID: 1,
},
DAO: {
CODE_HASH: "0x82d76d1b75fe2fd9a27dfbaa65a039221a380d76c926f378d3f81cf3e7e13f2e",
HASH_TYPE: "type",
TX_HASH: "0xe2fb199810d49a4d8beec56718ba2593b665db9d52299a0f9e6e75416d73ff5c",
INDEX: "0x2",
DEP_TYPE: "code",
},
SUDT: {
CODE_HASH: "0x5e7a36a77e68eecc013dfa2fe6a23f3b6c344b04005808694ae6dd45eea4cfd5",
HASH_TYPE: "type",
TX_HASH: "0xc7813f6a415144643970c2e88e0bb6ca6a8edc5dd7c1022746f628284a9936d5",
INDEX: "0x0",
DEP_TYPE: "code",
},
ANYONE_CAN_PAY: {
CODE_HASH: "0xd369597ff47f29fbc0d47d2e3775370d1250b85140c670e4718af712983a2354",
HASH_TYPE: "type",
TX_HASH: "0x4153a2014952d7cac45f285ce9a7c5c0c0e1b21f2d378b82ac1433cb11c25c4d",
INDEX: "0x0",
DEP_TYPE: "dep_group",
SHORT_ID: 2,
},
},
SECP256K1_BLAKE160_MULTISIG: {
CODE_HASH:
"0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8",
HASH_TYPE: "type",
TX_HASH:
"0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c",
INDEX: "0x1",
DEP_TYPE: "dep_group",
SHORT_ID: 1,
},
DAO: {
CODE_HASH:
"0x82d76d1b75fe2fd9a27dfbaa65a039221a380d76c926f378d3f81cf3e7e13f2e",
HASH_TYPE: "type",
TX_HASH:
"0xe2fb199810d49a4d8beec56718ba2593b665db9d52299a0f9e6e75416d73ff5c",
INDEX: "0x2",
DEP_TYPE: "code",
},
SUDT: {
CODE_HASH:
"0x5e7a36a77e68eecc013dfa2fe6a23f3b6c344b04005808694ae6dd45eea4cfd5",
HASH_TYPE: "type",
TX_HASH:
"0xc7813f6a415144643970c2e88e0bb6ca6a8edc5dd7c1022746f628284a9936d5",
INDEX: "0x0",
DEP_TYPE: "code",
},
ANYONE_CAN_PAY: {
CODE_HASH:
"0xd369597ff47f29fbc0d47d2e3775370d1250b85140c670e4718af712983a2354",
HASH_TYPE: "type",
TX_HASH:
"0x4153a2014952d7cac45f285ce9a7c5c0c0e1b21f2d378b82ac1433cb11c25c4d",
INDEX: "0x0",
DEP_TYPE: "dep_group",
},
},
});
const AGGRON4 = deepFreeze({
PREFIX: "ckt",
SCRIPTS: {
SECP256K1_BLAKE160: {
CODE_HASH:
"0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8",
HASH_TYPE: "type",
TX_HASH:
"0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37",
INDEX: "0x0",
DEP_TYPE: "dep_group",
SHORT_ID: 0,
const AGGRON4 = createConfig({
CKB2021: true,
PREFIX: "ckt",
SCRIPTS: {
SECP256K1_BLAKE160: {
CODE_HASH: "0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8",
HASH_TYPE: "type",
TX_HASH: "0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37",
INDEX: "0x0",
DEP_TYPE: "dep_group",
SHORT_ID: 0,
},
SECP256K1_BLAKE160_MULTISIG: {
CODE_HASH: "0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8",
HASH_TYPE: "type",
TX_HASH: "0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37",
INDEX: "0x1",
DEP_TYPE: "dep_group",
SHORT_ID: 1,
},
DAO: {
CODE_HASH: "0x82d76d1b75fe2fd9a27dfbaa65a039221a380d76c926f378d3f81cf3e7e13f2e",
HASH_TYPE: "type",
TX_HASH: "0x8f8c79eb6671709633fe6a46de93c0fedc9c1b8a6527a18d3983879542635c9f",
INDEX: "0x2",
DEP_TYPE: "code",
},
SUDT: {
CODE_HASH: "0xc5e5dcf215925f7ef4dfaf5f4b4f105bc321c02776d6e7d52a1db3fcd9d011a4",
HASH_TYPE: "type",
TX_HASH: "0xe12877ebd2c3c364dc46c5c992bcfaf4fee33fa13eebdf82c591fc9825aab769",
INDEX: "0x0",
DEP_TYPE: "code",
},
ANYONE_CAN_PAY: {
CODE_HASH: "0x3419a1c09eb2567f6552ee7a8ecffd64155cffe0f1796e6e61ec088d740c1356",
HASH_TYPE: "type",
TX_HASH: "0xec26b0f85ed839ece5f11c4c4e837ec359f5adc4420410f6453b1f6b60fb96a6",
INDEX: "0x0",
DEP_TYPE: "dep_group",
SHORT_ID: 2
},
},
SECP256K1_BLAKE160_MULTISIG: {
CODE_HASH:
"0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8",
HASH_TYPE: "type",
TX_HASH:
"0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37",
INDEX: "0x1",
DEP_TYPE: "dep_group",
SHORT_ID: 1,
},
DAO: {
CODE_HASH:
"0x82d76d1b75fe2fd9a27dfbaa65a039221a380d76c926f378d3f81cf3e7e13f2e",
HASH_TYPE: "type",
TX_HASH:
"0x8f8c79eb6671709633fe6a46de93c0fedc9c1b8a6527a18d3983879542635c9f",
INDEX: "0x2",
DEP_TYPE: "code",
},
SUDT: {
CODE_HASH:
"0xc5e5dcf215925f7ef4dfaf5f4b4f105bc321c02776d6e7d52a1db3fcd9d011a4",
HASH_TYPE: "type",
TX_HASH:
"0xe12877ebd2c3c364dc46c5c992bcfaf4fee33fa13eebdf82c591fc9825aab769",
INDEX: "0x0",
DEP_TYPE: "code",
},
ANYONE_CAN_PAY: {
CODE_HASH:
"0x3419a1c09eb2567f6552ee7a8ecffd64155cffe0f1796e6e61ec088d740c1356",
HASH_TYPE: "type",
TX_HASH:
"0xec26b0f85ed839ece5f11c4c4e837ec359f5adc4420410f6453b1f6b60fb96a6",
INDEX: "0x0",
DEP_TYPE: "dep_group",
},
},
});
module.exports = {
LINA,
AGGRON4,
};
exports.predefined = { LINA, AGGRON4 };
//# sourceMappingURL=predefined.js.map
{
"name": "@ckb-lumos/config-manager",
"version": "0.18.0-rc1",
"version": "0.18.0-rc2",
"description": "Config manager for lumos",

@@ -8,4 +8,3 @@ "author": "Xuejie Xiao <xxuejie@gmail.com>",

"license": "MIT",
"main": "lib/index.js",
"types": "index.d.ts",
"main": "lib",
"engines": {

@@ -29,3 +28,3 @@ "node": ">=12.0.0"

"access": "public",
"registry": "http://registry.npmjs.org/"
"registry": "https://registry.npmjs.org/"
},

@@ -37,5 +36,9 @@ "repository": {

"scripts": {
"fmt": "prettier --write \"{lib,tests}/**/*.js\" index.d.ts package.json",
"lint": "eslint -c ../../.eslintrc.js \"{lib,tests}/**/*.js\"",
"test": "ava"
"fmt": "prettier --write \"{src,tests}/**/*.ts\" package.json",
"lint": "eslint -c ../../.eslintrc.js \"{src,tests}/**/*.ts\"",
"test": "ava",
"build": "tsc",
"clean": "rm -rf lib",
"prepublishOnly": "yarn run clean && yarn run build",
"release": "npm publish"
},

@@ -46,4 +49,6 @@ "bugs": {

"dependencies": {
"@ckb-lumos/base": "^0.18.0-rc2",
"@types/deep-freeze-strict": "^1.1.0",
"deep-freeze-strict": "^1.1.1"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc