UNPKG

@siglesiasg/node-red-hyperledger-fabric-gateway

Version:

Hyperledger Fabric 2.x nodes for node-red with latest fabric-gateway library

69 lines 2.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.buildConnectionConfig = void 0; const node_red_utils_1 = require("./../libs/node-red-utils"); function buildConnectionConfig(RED, config) { const fabricGatewayDef = (0, node_red_utils_1.getConfigValidate)(RED, config.gatewaySelector); const fabricIdentityDef = (0, node_red_utils_1.getConfigValidate)(RED, config.identitySelector); const fabricChannelDef = (0, node_red_utils_1.getConfigValidate)(RED, config.channelSelector); return { gateway: buildGateway(RED, fabricGatewayDef), identity: buildIdentity(RED, fabricIdentityDef), channel: buildChannel(fabricChannelDef) }; } exports.buildConnectionConfig = buildConnectionConfig; function buildGateway(RED, fabricGatewayDef) { const fabricPeerDef = (0, node_red_utils_1.getConfigValidate)(RED, fabricGatewayDef.peerSelectorGw); return { gatewaySelector: fabricGatewayDef.id, name: fabricGatewayDef.name, peer: buildPeer(fabricPeerDef) }; } function buildIdentity(RED, fabricIdentityDef) { const fabricIdentityMspidDef = (0, node_red_utils_1.getConfigValidate)(RED, fabricIdentityDef.mspIdSelector); return { identitySelector: fabricIdentityDef.id, name: fabricIdentityDef.name, certType: fabricIdentityDef.certType, cert: fabricIdentityDef.cert, privateKey: fabricIdentityDef.privateKey, certPath: fabricIdentityDef.certPath, privateKeyPath: fabricIdentityDef.privateKeyPath, microfabUrl: fabricIdentityDef.microfabUrl, microfabId: fabricIdentityDef.microfabId, mspId: buildMspId(fabricIdentityMspidDef) }; } function buildChannel(fabricChannelDef) { return { channelSelector: fabricChannelDef.id, name: fabricChannelDef.name, channel: fabricChannelDef.channel }; } function buildMspId(fabricMspIdDef) { return { mspIdSelector: fabricMspIdDef.id, name: fabricMspIdDef.name, mspId: fabricMspIdDef.mspId, }; } function buildPeer(fabricPeerDef) { let url; if (fabricPeerDef.url.startsWith('grpcs://')) { url = fabricPeerDef.url.substring(8, fabricPeerDef.url.length); } else { url = fabricPeerDef.url; } return { peerSelector: fabricPeerDef.id, name: fabricPeerDef.name, url, tls: fabricPeerDef.tls, grpcOptions: fabricPeerDef.grpcOptions, }; } //# sourceMappingURL=connection-config.model.js.map