UNPKG

ember-legacy-class-transform

Version:
49 lines (39 loc) 4.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _reference = require("@glimmer/reference"); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } var DynamicVarReference = function () { function DynamicVarReference(scope, nameRef) { _classCallCheck(this, DynamicVarReference); this.scope = scope; this.nameRef = nameRef; var varTag = this.varTag = _reference.UpdatableTag.create(_reference.CONSTANT_TAG); this.tag = (0, _reference.combine)([nameRef.tag, varTag]); } DynamicVarReference.prototype.value = function value() { return this.getVar().value(); }; DynamicVarReference.prototype.get = function get(key) { return this.getVar().get(key); }; DynamicVarReference.prototype.getVar = function getVar() { var name = String(this.nameRef.value()); var ref = this.scope.get(name); this.varTag.inner.update(ref.tag); return ref; }; return DynamicVarReference; }(); function getDynamicVar(vm, args) { var scope = vm.dynamicScope(); var nameRef = args.positional.at(0); return new DynamicVarReference(scope, nameRef); } exports.default = getDynamicVar; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9oZWxwZXJzL2dldC1keW5hbWljLXZhci5qcyJdLCJuYW1lcyI6WyJDT05TVEFOVF9UQUciLCJVcGRhdGFibGVUYWciLCJjb21iaW5lIiwiRHluYW1pY1ZhclJlZmVyZW5jZSIsInNjb3BlIiwibmFtZVJlZiIsInZhclRhZyIsImNyZWF0ZSIsInRhZyIsInZhbHVlIiwiZ2V0VmFyIiwiZ2V0Iiwia2V5IiwibmFtZSIsIlN0cmluZyIsInJlZiIsImlubmVyIiwidXBkYXRlIiwiZ2V0RHluYW1pY1ZhciIsInZtIiwiYXJncyIsImR5bmFtaWNTY29wZSIsInBvc2l0aW9uYWwiLCJhdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsQUFBUyxBQUFULEFBQXVCLEFBQXZCLEFBQXFDLEFBQXJDLEFBQW9ELEFBQXBEOzs7Ozs7OztJQUNNLEEsa0NBQ0Y7aUNBQVksQUFBWixPQUFtQixBQUFuQixTQUE0Qjs4QkFDeEI7O2FBQUssQUFBTCxRQUFhLEFBQWIsQUFDQTthQUFLLEFBQUwsVUFBZSxBQUFmLEFBQ0E7WUFBSSxTQUFTLEtBQUssQUFBTCxTQUFjLHdCQUFhLEFBQWIsQUFBb0IsQUFBcEIsQUFBM0IsQUFDQTthQUFLLEFBQUwsTUFBVyx3QkFBUSxDQUFDLFFBQVEsQUFBVCxLQUFjLEFBQWQsQUFBUixBQUFYLEFBQ0g7OztrQ0FDRCxBLHlCQUFRLEFBQ0o7ZUFBTyxLQUFLLEFBQUwsU0FBYyxBQUFkLEFBQVAsQUFDSDtBOztrQ0FDRCxBLG1CQUFJLEEsS0FBSyxBQUNMO2VBQU8sS0FBSyxBQUFMLFNBQWMsQUFBZCxJQUFrQixBQUFsQixBQUFQLEFBQ0g7QTs7a0NBQ0QsQSwyQkFBUyxBQUNMO1lBQUksT0FBTyxPQUFPLEtBQUssQUFBTCxRQUFhLEFBQWIsQUFBUCxBQUFYLEFBQ0E7WUFBSSxNQUFNLEtBQUssQUFBTCxNQUFXLEFBQVgsSUFBZSxBQUFmLEFBQVYsQUFDQTthQUFLLEFBQUwsT0FBWSxBQUFaLE1BQWtCLEFBQWxCLE9BQXlCLElBQUksQUFBN0IsQUFDQTtlQUFPLEFBQVAsQUFDSDtBOzs7OztBQUVMLFNBQVMsQUFBVCxjQUF1QixBQUF2QixJQUEyQixBQUEzQixNQUFpQyxBQUM3QjtRQUFJLFFBQVEsR0FBRyxBQUFILEFBQVosQUFDQTtRQUFJLFVBQVUsS0FBSyxBQUFMLFdBQWdCLEFBQWhCLEdBQW1CLEFBQW5CLEFBQWQsQUFDQTtXQUFPLElBQUksQUFBSixvQkFBd0IsQUFBeEIsT0FBK0IsQUFBL0IsQUFBUCxBQUNIO0FBQ0Q7a0JBQWUsQUFBZiIsImZpbGUiOiJsaWIvaGVscGVycy9nZXQtZHluYW1pYy12YXIuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDT05TVEFOVF9UQUcsIFVwZGF0YWJsZVRhZywgY29tYmluZSB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5jbGFzcyBEeW5hbWljVmFyUmVmZXJlbmNlIHtcbiAgICBjb25zdHJ1Y3RvcihzY29wZSwgbmFtZVJlZikge1xuICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7XG4gICAgICAgIHRoaXMubmFtZVJlZiA9IG5hbWVSZWY7XG4gICAgICAgIGxldCB2YXJUYWcgPSB0aGlzLnZhclRhZyA9IFVwZGF0YWJsZVRhZy5jcmVhdGUoQ09OU1RBTlRfVEFHKTtcbiAgICAgICAgdGhpcy50YWcgPSBjb21iaW5lKFtuYW1lUmVmLnRhZywgdmFyVGFnXSk7XG4gICAgfVxuICAgIHZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRWYXIoKS52YWx1ZSgpO1xuICAgIH1cbiAgICBnZXQoa2V5KSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFZhcigpLmdldChrZXkpO1xuICAgIH1cbiAgICBnZXRWYXIoKSB7XG4gICAgICAgIGxldCBuYW1lID0gU3RyaW5nKHRoaXMubmFtZVJlZi52YWx1ZSgpKTtcbiAgICAgICAgbGV0IHJlZiA9IHRoaXMuc2NvcGUuZ2V0KG5hbWUpO1xuICAgICAgICB0aGlzLnZhclRhZy5pbm5lci51cGRhdGUocmVmLnRhZyk7XG4gICAgICAgIHJldHVybiByZWY7XG4gICAgfVxufVxuZnVuY3Rpb24gZ2V0RHluYW1pY1Zhcih2bSwgYXJncykge1xuICAgIGxldCBzY29wZSA9IHZtLmR5bmFtaWNTY29wZSgpO1xuICAgIGxldCBuYW1lUmVmID0gYXJncy5wb3NpdGlvbmFsLmF0KDApO1xuICAgIHJldHVybiBuZXcgRHluYW1pY1ZhclJlZmVyZW5jZShzY29wZSwgbmFtZVJlZik7XG59XG5leHBvcnQgZGVmYXVsdCBnZXREeW5hbWljVmFyOyJdfQ==