UNPKG

@glimmer/compiler

Version:
58 lines (42 loc) 6.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ClassifiedSimpleElement = void 0; var _syntax = require("@glimmer/syntax"); var _result = require("../../../../shared/result"); var mir = _interopRequireWildcard(require("../../../2-encoding/mir")); var _statements = require("../statements"); function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; } function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } var ClassifiedSimpleElement = /*#__PURE__*/function () { function ClassifiedSimpleElement(tag, element, dynamicFeatures) { this.tag = tag; this.element = element; this.dynamicFeatures = dynamicFeatures; this.isComponent = false; } var _proto = ClassifiedSimpleElement.prototype; _proto.arg = function arg(attr) { return (0, _result.Err)((0, _syntax.generateSyntaxError)(attr.name.chars + " is not a valid attribute name. @arguments are only allowed on components, but the tag for this element (`" + this.tag.chars + "`) is a regular, non-component HTML element.", attr.loc)); }; _proto.toStatement = function toStatement(classified, _ref) { var _this = this; var params = _ref.params; var state = classified.state, element = classified.element; var body = _statements.VISIT_STMTS.visitList(this.element.body, state); return body.mapOk(function (body) { return new mir.SimpleElement({ loc: element.loc, tag: _this.tag, params: params, body: body.toArray(), dynamicFeatures: _this.dynamicFeatures }); }); }; return ClassifiedSimpleElement; }(); exports.ClassifiedSimpleElement = ClassifiedSimpleElement; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL2NvbXBpbGVyL2xpYi9wYXNzZXMvMS1ub3JtYWxpemF0aW9uL3Zpc2l0b3JzL2VsZW1lbnQvc2ltcGxlLWVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOztBQUVBOztBQUNBOztBQUNBOzs7Ozs7QUFHQSxJQUFNLHVCQUFOLEdBQUEsYUFBQSxZQUFBO0FBQ0UsV0FBQSx1QkFBQSxDQUFBLEdBQUEsRUFBQSxPQUFBLEVBQUEsZUFBQSxFQUdtQztBQUZ6QixTQUFBLEdBQUEsR0FBQSxHQUFBO0FBQ0EsU0FBQSxPQUFBLEdBQUEsT0FBQTtBQUNDLFNBQUEsZUFBQSxHQUFBLGVBQUE7QUFHRixTQUFBLFdBQUEsR0FBQSxLQUFBO0FBRkw7O0FBTE4sTUFBQSxNQUFBLEdBQUEsdUJBQUEsQ0FBQSxTQUFBOztBQUFBLEVBQUEsTUFBQSxDQUFBLEdBQUEsR0FTRSxTQUFBLEdBQUEsQ0FBQSxJQUFBLEVBQTRCO0FBQzFCLFdBQU8saUJBQ0wsaUNBQ0ssSUFBSSxDQUFKLElBQUEsQ0FEYyxLQUNkLEdBRGMsNEdBQ2QsR0FBNkgsS0FBQSxHQUFBLENBRC9HLEtBQ2QsR0FEYyw4Q0FBbkIsRUFFRSxJQUFJLENBSFIsR0FDRSxDQURLLENBQVA7QUFWSixHQUFBOztBQUFBLEVBQUEsTUFBQSxDQUFBLFdBQUEsR0FrQkUsU0FBQSxXQUFBLENBQUEsVUFBQSxFQUFBLElBQUEsRUFBbUU7QUFBQSxRQUFBLEtBQUEsR0FBQSxJQUFBOztBQUFBLFFBQXRCLE1BQXNCLEdBQUEsSUFBQSxDQUF0QixNQUFzQjtBQUFBLFFBQzdELEtBRDZELEdBQ2pFLFVBRGlFLENBQUEsS0FBQTtBQUFBLFFBQ3BELE9BRG9ELEdBQ2pFLFVBRGlFLENBQUEsT0FBQTs7QUFHakUsUUFBSSxJQUFJLEdBQUcsd0JBQUEsU0FBQSxDQUFzQixLQUFBLE9BQUEsQ0FBdEIsSUFBQSxFQUFYLEtBQVcsQ0FBWDs7QUFFQSxXQUFPLElBQUksQ0FBSixLQUFBLENBQ0osVUFBRCxJQUFDLEVBQUQ7QUFBQSxhQUNFLElBQUksR0FBRyxDQUFQLGFBQUEsQ0FBc0I7QUFDcEIsUUFBQSxHQUFHLEVBQUUsT0FBTyxDQURRLEdBQUE7QUFFcEIsUUFBQSxHQUFHLEVBQUUsS0FBQSxDQUZlLEdBQUE7QUFHcEIsUUFBQSxNQUhvQixFQUFBLE1BQUE7QUFJcEIsUUFBQSxJQUFJLEVBQUUsSUFBSSxDQUpVLE9BSWQsRUFKYztBQUtwQixRQUFBLGVBQWUsRUFBRSxLQUFBLENBQUs7QUFMRixPQUF0QixDQURGO0FBREYsS0FBTyxDQUFQO0FBdkJKLEdBQUE7O0FBQUEsU0FBQSx1QkFBQTtBQUFBLENBQUEsRUFBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFTVHYyLCBnZW5lcmF0ZVN5bnRheEVycm9yLCBTb3VyY2VTbGljZSB9IGZyb20gJ0BnbGltbWVyL3N5bnRheCc7XG5cbmltcG9ydCB7IEVyciwgUmVzdWx0IH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL3Jlc3VsdCc7XG5pbXBvcnQgKiBhcyBtaXIgZnJvbSAnLi4vLi4vLi4vMi1lbmNvZGluZy9taXInO1xuaW1wb3J0IHsgVklTSVRfU1RNVFMgfSBmcm9tICcuLi9zdGF0ZW1lbnRzJztcbmltcG9ydCB7IENsYXNzaWZpZWQsIENsYXNzaWZpZWRFbGVtZW50LCBQcmVwYXJlZEFyZ3MgfSBmcm9tICcuL2NsYXNzaWZpZWQnO1xuXG5leHBvcnQgY2xhc3MgQ2xhc3NpZmllZFNpbXBsZUVsZW1lbnQgaW1wbGVtZW50cyBDbGFzc2lmaWVkIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0YWc6IFNvdXJjZVNsaWNlLFxuICAgIHByaXZhdGUgZWxlbWVudDogQVNUdjIuU2ltcGxlRWxlbWVudCxcbiAgICByZWFkb25seSBkeW5hbWljRmVhdHVyZXM6IGJvb2xlYW5cbiAgKSB7fVxuXG4gIHJlYWRvbmx5IGlzQ29tcG9uZW50ID0gZmFsc2U7XG5cbiAgYXJnKGF0dHI6IEFTVHYyLkNvbXBvbmVudEFyZyk6IFJlc3VsdDxtaXIuTmFtZWRBcmd1bWVudD4ge1xuICAgIHJldHVybiBFcnIoXG4gICAgICBnZW5lcmF0ZVN5bnRheEVycm9yKFxuICAgICAgICBgJHthdHRyLm5hbWUuY2hhcnN9IGlzIG5vdCBhIHZhbGlkIGF0dHJpYnV0ZSBuYW1lLiBAYXJndW1lbnRzIGFyZSBvbmx5IGFsbG93ZWQgb24gY29tcG9uZW50cywgYnV0IHRoZSB0YWcgZm9yIHRoaXMgZWxlbWVudCAoXFxgJHt0aGlzLnRhZy5jaGFyc31cXGApIGlzIGEgcmVndWxhciwgbm9uLWNvbXBvbmVudCBIVE1MIGVsZW1lbnQuYCxcbiAgICAgICAgYXR0ci5sb2NcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgdG9TdGF0ZW1lbnQoY2xhc3NpZmllZDogQ2xhc3NpZmllZEVsZW1lbnQsIHsgcGFyYW1zIH06IFByZXBhcmVkQXJncyk6IFJlc3VsdDxtaXIuU3RhdGVtZW50PiB7XG4gICAgbGV0IHsgc3RhdGUsIGVsZW1lbnQgfSA9IGNsYXNzaWZpZWQ7XG5cbiAgICBsZXQgYm9keSA9IFZJU0lUX1NUTVRTLnZpc2l0TGlzdCh0aGlzLmVsZW1lbnQuYm9keSwgc3RhdGUpO1xuXG4gICAgcmV0dXJuIGJvZHkubWFwT2soXG4gICAgICAoYm9keSkgPT5cbiAgICAgICAgbmV3IG1pci5TaW1wbGVFbGVtZW50KHtcbiAgICAgICAgICBsb2M6IGVsZW1lbnQubG9jLFxuICAgICAgICAgIHRhZzogdGhpcy50YWcsXG4gICAgICAgICAgcGFyYW1zLFxuICAgICAgICAgIGJvZHk6IGJvZHkudG9BcnJheSgpLFxuICAgICAgICAgIGR5bmFtaWNGZWF0dXJlczogdGhpcy5keW5hbWljRmVhdHVyZXMsXG4gICAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==