123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- "use strict";
- var _utils = require("./utils.js");
- const defineType = (0, _utils.defineAliasedType)("JSX");
- defineType("JSXAttribute", {
- visitor: ["name", "value"],
- aliases: ["Immutable"],
- fields: {
- name: {
- validate: (0, _utils.assertNodeType)("JSXIdentifier", "JSXNamespacedName")
- },
- value: {
- optional: true,
- validate: (0, _utils.assertNodeType)("JSXElement", "JSXFragment", "StringLiteral", "JSXExpressionContainer")
- }
- }
- });
- defineType("JSXClosingElement", {
- visitor: ["name"],
- aliases: ["Immutable"],
- fields: {
- name: {
- validate: (0, _utils.assertNodeType)("JSXIdentifier", "JSXMemberExpression", "JSXNamespacedName")
- }
- }
- });
- defineType("JSXElement", {
- builder: ["openingElement", "closingElement", "children", "selfClosing"],
- visitor: ["openingElement", "children", "closingElement"],
- aliases: ["Immutable", "Expression"],
- fields: Object.assign({
- openingElement: {
- validate: (0, _utils.assertNodeType)("JSXOpeningElement")
- },
- closingElement: {
- optional: true,
- validate: (0, _utils.assertNodeType)("JSXClosingElement")
- },
- children: (0, _utils.validateArrayOfType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement", "JSXFragment")
- }, {
- selfClosing: {
- validate: (0, _utils.assertValueType)("boolean"),
- optional: true
- }
- })
- });
- defineType("JSXEmptyExpression", {});
- defineType("JSXExpressionContainer", {
- visitor: ["expression"],
- aliases: ["Immutable"],
- fields: {
- expression: {
- validate: (0, _utils.assertNodeType)("Expression", "JSXEmptyExpression")
- }
- }
- });
- defineType("JSXSpreadChild", {
- visitor: ["expression"],
- aliases: ["Immutable"],
- fields: {
- expression: {
- validate: (0, _utils.assertNodeType)("Expression")
- }
- }
- });
- defineType("JSXIdentifier", {
- builder: ["name"],
- fields: {
- name: {
- validate: (0, _utils.assertValueType)("string")
- }
- }
- });
- defineType("JSXMemberExpression", {
- visitor: ["object", "property"],
- fields: {
- object: {
- validate: (0, _utils.assertNodeType)("JSXMemberExpression", "JSXIdentifier")
- },
- property: {
- validate: (0, _utils.assertNodeType)("JSXIdentifier")
- }
- }
- });
- defineType("JSXNamespacedName", {
- visitor: ["namespace", "name"],
- fields: {
- namespace: {
- validate: (0, _utils.assertNodeType)("JSXIdentifier")
- },
- name: {
- validate: (0, _utils.assertNodeType)("JSXIdentifier")
- }
- }
- });
- defineType("JSXOpeningElement", {
- builder: ["name", "attributes", "selfClosing"],
- visitor: ["name", "typeParameters", "typeArguments", "attributes"],
- aliases: ["Immutable"],
- fields: Object.assign({
- name: {
- validate: (0, _utils.assertNodeType)("JSXIdentifier", "JSXMemberExpression", "JSXNamespacedName")
- },
- selfClosing: {
- default: false
- },
- attributes: (0, _utils.validateArrayOfType)("JSXAttribute", "JSXSpreadAttribute"),
- typeArguments: {
- validate: (0, _utils.assertNodeType)("TypeParameterInstantiation"),
- optional: true
- }
- }, {
- typeParameters: {
- validate: (0, _utils.assertNodeType)("TSTypeParameterInstantiation"),
- optional: true
- }
- })
- });
- defineType("JSXSpreadAttribute", {
- visitor: ["argument"],
- fields: {
- argument: {
- validate: (0, _utils.assertNodeType)("Expression")
- }
- }
- });
- defineType("JSXText", {
- aliases: ["Immutable"],
- builder: ["value"],
- fields: {
- value: {
- validate: (0, _utils.assertValueType)("string")
- }
- }
- });
- defineType("JSXFragment", {
- builder: ["openingFragment", "closingFragment", "children"],
- visitor: ["openingFragment", "children", "closingFragment"],
- aliases: ["Immutable", "Expression"],
- fields: {
- openingFragment: {
- validate: (0, _utils.assertNodeType)("JSXOpeningFragment")
- },
- closingFragment: {
- validate: (0, _utils.assertNodeType)("JSXClosingFragment")
- },
- children: (0, _utils.validateArrayOfType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement", "JSXFragment")
- }
- });
- defineType("JSXOpeningFragment", {
- aliases: ["Immutable"]
- });
- defineType("JSXClosingFragment", {
- aliases: ["Immutable"]
- });
- //# sourceMappingURL=jsx.js.map
|