UNPKG

@glimmer/syntax

Version:
54 lines (40 loc) 4.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ElementModifier = exports.ComponentArg = exports.SplatAttr = exports.HtmlAttr = void 0; var _args = require("./args"); var _node = require("./node"); /** * `HtmlAttr` nodes are valid HTML attributes, with or without a value. * * Exceptions: * * - `...attributes` is `SplatAttr` * - `@x=<value>` is `ComponentArg` */ class HtmlAttr extends (0, _node.node)('HtmlAttr').fields() {} exports.HtmlAttr = HtmlAttr; class SplatAttr extends (0, _node.node)('SplatAttr').fields() {} /** * Corresponds to an argument passed by a component (`@x=<value>`) */ exports.SplatAttr = SplatAttr; class ComponentArg extends (0, _node.node)().fields() { /** * Convert the component argument into a named argument node */ toNamedArgument() { return new _args.NamedArgument({ name: this.name, value: this.value }); } } /** * An `ElementModifier` is just a normal call node in modifier position. */ exports.ComponentArg = ComponentArg; class ElementModifier extends (0, _node.node)('ElementModifier').fields() {} exports.ElementModifier = ElementModifier; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3N5bnRheC9saWIvdjItYS9vYmplY3RzL2F0dHItYmxvY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBOztBQUdBOztBQXdCQTs7Ozs7Ozs7QUFRTSxNQUFBLFFBQUEsU0FBd0IsZ0JBQUEsVUFBQSxFQUF4QixNQUF3QixFQUF4QixDQUFrRTs7OztBQUVsRSxNQUFBLFNBQUEsU0FBeUIsZ0JBQUEsV0FBQSxFQUF6QixNQUF5QixFQUF6QixDQUF1RTtBQUU3RTs7Ozs7OztBQUdNLE1BQUEsWUFBQSxTQUE0QixrQkFBNUIsTUFBNEIsRUFBNUIsQ0FBNEQ7QUFDaEU7OztBQUdBLEVBQUEsZUFBZSxHQUFBO0FBQ2IsV0FBTyxJQUFBLG1CQUFBLENBQWtCO0FBQ3ZCLE1BQUEsSUFBSSxFQUFFLEtBRGlCLElBQUE7QUFFdkIsTUFBQSxLQUFLLEVBQUUsS0FBSztBQUZXLEtBQWxCLENBQVA7QUFJRDs7QUFUK0Q7QUFZbEU7Ozs7Ozs7QUFHTSxNQUFBLGVBQUEsU0FBK0IsZ0JBQUEsaUJBQUEsRUFBL0IsTUFBK0IsRUFBL0IsQ0FBMkUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTb3VyY2VTbGljZSB9IGZyb20gJy4uLy4uL3NvdXJjZS9zbGljZSc7XG5pbXBvcnQgeyBOYW1lZEFyZ3VtZW50IH0gZnJvbSAnLi9hcmdzJztcbmltcG9ydCB0eXBlIHsgQ2FsbEZpZWxkcyB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgdHlwZSB7IEV4cHJlc3Npb25Ob2RlIH0gZnJvbSAnLi9leHByJztcbmltcG9ydCB7IG5vZGUgfSBmcm9tICcuL25vZGUnO1xuXG4vKipcbiAqIEF0dHIgbm9kZXMgbG9vayBsaWtlIEhUTUwgYXR0cmlidXRlcywgYnV0IGFyZSBjbGFzc2lmaWVkIGFzOlxuICpcbiAqIDEuIGBIdG1sQXR0cmAsIHdoaWNoIG1lYW5zIGEgcmVndWxhciBIVE1MIGF0dHJpYnV0ZSBpbiBHbGltbWVyXG4gKiAyLiBgU3BsYXRBdHRyYCwgd2hpY2ggbWVhbnMgYC4uLmF0dHJpYnV0ZXNgXG4gKiAzLiBgQ29tcG9uZW50QXJnYCwgd2hpY2ggbWVhbnMgYW4gYXR0cmlidXRlIHdob3NlIG5hbWUgYmVnaW5zIHdpdGggYEBgLCBhbmQgaXQgaXMgdGhlcmVmb3JlIGFcbiAqICAgIGNvbXBvbmVudCBhcmd1bWVudC5cbiAqL1xuZXhwb3J0IHR5cGUgQXR0ck5vZGUgPSBIdG1sQXR0ciB8IFNwbGF0QXR0ciB8IENvbXBvbmVudEFyZztcblxuLyoqXG4gKiBgSHRtbEF0dHJgIGFuZCBgU3BsYXRBdHRyYCBhcmUgZ3JvdXBlZCB0b2dldGhlciBiZWNhdXNlIHRoZSBvcmRlciBvZiB0aGUgYFNwbGF0QXR0cmAgbm9kZSxcbiAqIHJlbGF0aXZlIHRvIG90aGVyIGF0dHJpYnV0ZXMsIG1hdHRlcnMuXG4gKi9cbmV4cG9ydCB0eXBlIEh0bWxPclNwbGF0QXR0ciA9IEh0bWxBdHRyIHwgU3BsYXRBdHRyO1xuXG4vKipcbiAqIFwiQXR0ciBCbG9ja1wiIG5vZGVzIGFyZSBhbGxvd2VkIGluc2lkZSBhbiBvcGVuIGVsZW1lbnQgdGFnIGluIHRlbXBsYXRlcy4gVGhleSBpbnRlcmFjdCB3aXRoIHRoZVxuICogZWxlbWVudCAob3IgY29tcG9uZW50KS5cbiAqL1xuZXhwb3J0IHR5cGUgQXR0ckJsb2NrTm9kZSA9IEF0dHJOb2RlIHwgRWxlbWVudE1vZGlmaWVyO1xuXG4vKipcbiAqIGBIdG1sQXR0cmAgbm9kZXMgYXJlIHZhbGlkIEhUTUwgYXR0cmlidXRlcywgd2l0aCBvciB3aXRob3V0IGEgdmFsdWUuXG4gKlxuICogRXhjZXB0aW9uczpcbiAqXG4gKiAtIGAuLi5hdHRyaWJ1dGVzYCBpcyBgU3BsYXRBdHRyYFxuICogLSBgQHg9PHZhbHVlPmAgaXMgYENvbXBvbmVudEFyZ2BcbiAqL1xuZXhwb3J0IGNsYXNzIEh0bWxBdHRyIGV4dGVuZHMgbm9kZSgnSHRtbEF0dHInKS5maWVsZHM8QXR0ck5vZGVPcHRpb25zPigpIHt9XG5cbmV4cG9ydCBjbGFzcyBTcGxhdEF0dHIgZXh0ZW5kcyBub2RlKCdTcGxhdEF0dHInKS5maWVsZHM8eyBzeW1ib2w6IG51bWJlciB9PigpIHt9XG5cbi8qKlxuICogQ29ycmVzcG9uZHMgdG8gYW4gYXJndW1lbnQgcGFzc2VkIGJ5IGEgY29tcG9uZW50IChgQHg9PHZhbHVlPmApXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21wb25lbnRBcmcgZXh0ZW5kcyBub2RlKCkuZmllbGRzPEF0dHJOb2RlT3B0aW9ucz4oKSB7XG4gIC8qKlxuICAgKiBDb252ZXJ0IHRoZSBjb21wb25lbnQgYXJndW1lbnQgaW50byBhIG5hbWVkIGFyZ3VtZW50IG5vZGVcbiAgICovXG4gIHRvTmFtZWRBcmd1bWVudCgpOiBOYW1lZEFyZ3VtZW50IHtcbiAgICByZXR1cm4gbmV3IE5hbWVkQXJndW1lbnQoe1xuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgfSk7XG4gIH1cbn1cblxuLyoqXG4gKiBBbiBgRWxlbWVudE1vZGlmaWVyYCBpcyBqdXN0IGEgbm9ybWFsIGNhbGwgbm9kZSBpbiBtb2RpZmllciBwb3NpdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIEVsZW1lbnRNb2RpZmllciBleHRlbmRzIG5vZGUoJ0VsZW1lbnRNb2RpZmllcicpLmZpZWxkczxDYWxsRmllbGRzPigpIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXR0ck5vZGVPcHRpb25zIHtcbiAgbmFtZTogU291cmNlU2xpY2U7XG4gIHZhbHVlOiBFeHByZXNzaW9uTm9kZTtcbiAgdHJ1c3Rpbmc6IGJvb2xlYW47XG59XG4iXSwic291cmNlUm9vdCI6IiJ9