UNPKG

morphir-elm

Version:
118 lines (117 loc) 5.63 kB
"use strict"; // Generated by Morphir var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (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 __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.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.encodeLibrary = exports.decodeLibrary = exports.Library = exports.encodeDistribution = exports.decodeDistribution = exports.encodeComponent = exports.decodeComponent = void 0; const codecs = __importStar(require("./../../morphir/internal/codecs")); const Morphir_IR_Name = __importStar(require("./../../morphir/ir/name")); const Morphir_IR_Package = __importStar(require("./../../morphir/ir/package")); const Morphir_IR_Path = __importStar(require("./../../morphir/ir/path")); const Morphir_IR_Type = __importStar(require("./../../morphir/ir/type")); const Morphir_IR_Value = __importStar(require("./../../morphir/ir/value")); function decodeComponent(input) { return codecs.decodeRecord(codecs.buildCodecMap([ ["name", Morphir_IR_Path.decodePath], [ "libraries", codecs.decodeDict.bind(null, Morphir_IR_Package.decodePackageName, Morphir_IR_Package.decodeDefinition.bind(null, codecs.decodeUnit, Morphir_IR_Type.decodeType.bind(null, codecs.decodeUnit))), ], [ "inputs", codecs.decodeDict.bind(null, Morphir_IR_Name.decodeName, Morphir_IR_Type.decodeType.bind(null, codecs.decodeUnit)), ], [ "states", codecs.decodeDict.bind(null, Morphir_IR_Name.decodeName, Morphir_IR_Type.decodeType.bind(null, codecs.decodeUnit)), ], [ "outputs", codecs.decodeDict.bind(null, Morphir_IR_Name.decodeName, Morphir_IR_Value.decodeValue.bind(null, codecs.decodeUnit, Morphir_IR_Type.decodeType.bind(null, codecs.decodeUnit))), ], ]), input); } exports.decodeComponent = decodeComponent; function encodeComponent(value) { return codecs.encodeRecord(codecs.buildCodecMap([ ["name", Morphir_IR_Path.encodePath], [ "libraries", codecs.encodeDict.bind(null, Morphir_IR_Package.encodePackageName, Morphir_IR_Package.encodeDefinition.bind(null, codecs.encodeUnit, Morphir_IR_Type.encodeType.bind(null, codecs.encodeUnit))), ], [ "inputs", codecs.encodeDict.bind(null, Morphir_IR_Name.encodeName, Morphir_IR_Type.encodeType.bind(null, codecs.encodeUnit)), ], [ "states", codecs.encodeDict.bind(null, Morphir_IR_Name.encodeName, Morphir_IR_Type.encodeType.bind(null, codecs.encodeUnit)), ], [ "outputs", codecs.encodeDict.bind(null, Morphir_IR_Name.encodeName, Morphir_IR_Value.encodeValue.bind(null, codecs.encodeUnit, Morphir_IR_Type.encodeType.bind(null, codecs.encodeUnit))), ], ]), value); } exports.encodeComponent = encodeComponent; function decodeDistribution(input) { const kind = codecs.parseKindFromCustomTypeInput(input); switch (kind) { case "Library": return decodeLibrary(input); } codecs.raiseDecodeErrorFromCustomType("Distribution", kind); } exports.decodeDistribution = decodeDistribution; function encodeDistribution(value) { switch (value.kind) { case "Library": return encodeLibrary(value); } } exports.encodeDistribution = encodeDistribution; class Library { constructor(packageName, dependencies, packageDef) { this.packageName = packageName; this.dependencies = dependencies; this.packageDef = packageDef; this.kind = "Library"; } } exports.Library = Library; function decodeLibrary(input) { codecs.preprocessCustomTypeVariant("Library", 3, input); return new Library(Morphir_IR_Package.decodePackageName(input[1]), codecs.decodeDict(Morphir_IR_Package.decodePackageName, Morphir_IR_Package.decodeSpecification.bind(null, codecs.decodeUnit), input[2]), Morphir_IR_Package.decodeDefinition(codecs.decodeUnit, Morphir_IR_Type.decodeType.bind(null, codecs.decodeUnit), input[3])); } exports.decodeLibrary = decodeLibrary; function encodeLibrary(value) { return [ value.kind, Morphir_IR_Package.encodePackageName(value.packageName), codecs.encodeDict(Morphir_IR_Package.encodePackageName, Morphir_IR_Package.encodeSpecification.bind(null, codecs.encodeUnit), value.dependencies), Morphir_IR_Package.encodeDefinition(codecs.encodeUnit, Morphir_IR_Type.encodeType.bind(null, codecs.encodeUnit), value.packageDef), ]; } exports.encodeLibrary = encodeLibrary; exports.default = {};