@harmoniclabs/plu-ts-onchain
Version:
An embedded DSL for Cardano smart contracts creation coupled with a library for Cardano transactions, all in Typescript
32 lines (31 loc) • 1.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.pfromData = exports.fromData = void 0;
var obj_utils_1 = require("@harmoniclabs/obj-utils");
var addUtilityForType_1 = require("../../UtilityTerms/addUtilityForType.js");
var papp_1 = require("../../../papp.js");
var fromData_minimal_1 = require("./fromData_minimal.js");
function fromData(t) {
// "as any" because
// Type '(term: Term<PData>) => UtilityTermOf<PType | PStruct<StructDefinition> | ToPType<FromPType<ToPType<T>>>>'
// is not assignable to type '(term: Term<PData>) => UtilityTermOf<ToPType<T>>'
return (function (term) {
var theTerm = (0, fromData_minimal_1._fromData)(t)(term);
return (0, addUtilityForType_1.addUtilityForType)(theTerm.type)(theTerm);
});
}
exports.fromData = fromData;
function pfromData(t) {
var term = (0, fromData_minimal_1._pfromData)(t);
return (0, obj_utils_1.definePropertyIfNotPresent)(term, "$", {
get: function () { return function (other) {
var theTerm = (0, papp_1.papp)(term, other);
theTerm.isConstant = other.isConstant;
return theTerm;
}; },
set: function () { },
configurable: false,
enumerable: true
});
}
exports.pfromData = pfromData;