“use strict”;
var _utils = _interopRequireWildcard(require(“./utils”));
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; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; if (obj != null) { 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 = obj; } } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
(0, _utils.default)(“JSXAttribute”, {
visitor: ["name", "value"], aliases: ["JSX", "Immutable"], fields: { name: { validate: (0, _utils.assertNodeType)("JSXIdentifier", "JSXNamespacedName") }, value: { optional: true, validate: (0, _utils.assertNodeType)("JSXElement", "JSXFragment", "StringLiteral", "JSXExpressionContainer") } }
}); (0, _utils.default)(“JSXClosingElement”, {
visitor: ["name"], aliases: ["JSX", "Immutable"], fields: { name: { validate: (0, _utils.assertNodeType)("JSXIdentifier", "JSXMemberExpression", "JSXNamespacedName") } }
}); (0, _utils.default)(“JSXElement”, {
builder: ["openingElement", "closingElement", "children", "selfClosing"], visitor: ["openingElement", "children", "closingElement"], aliases: ["JSX", "Immutable", "Expression"], fields: { openingElement: { validate: (0, _utils.assertNodeType)("JSXOpeningElement") }, closingElement: { optional: true, validate: (0, _utils.assertNodeType)("JSXClosingElement") }, children: { validate: (0, _utils.chain)((0, _utils.assertValueType)("array"), (0, _utils.assertEach)((0, _utils.assertNodeType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement", "JSXFragment"))) } }
}); (0, _utils.default)(“JSXEmptyExpression”, {
aliases: ["JSX"]
}); (0, _utils.default)(“JSXExpressionContainer”, {
visitor: ["expression"], aliases: ["JSX", "Immutable"], fields: { expression: { validate: (0, _utils.assertNodeType)("Expression", "JSXEmptyExpression") } }
}); (0, _utils.default)(“JSXSpreadChild”, {
visitor: ["expression"], aliases: ["JSX", "Immutable"], fields: { expression: { validate: (0, _utils.assertNodeType)("Expression") } }
}); (0, _utils.default)(“JSXIdentifier”, {
builder: ["name"], aliases: ["JSX"], fields: { name: { validate: (0, _utils.assertValueType)("string") } }
}); (0, _utils.default)(“JSXMemberExpression”, {
visitor: ["object", "property"], aliases: ["JSX"], fields: { object: { validate: (0, _utils.assertNodeType)("JSXMemberExpression", "JSXIdentifier") }, property: { validate: (0, _utils.assertNodeType)("JSXIdentifier") } }
}); (0, _utils.default)(“JSXNamespacedName”, {
visitor: ["namespace", "name"], aliases: ["JSX"], fields: { namespace: { validate: (0, _utils.assertNodeType)("JSXIdentifier") }, name: { validate: (0, _utils.assertNodeType)("JSXIdentifier") } }
}); (0, _utils.default)(“JSXOpeningElement”, {
builder: ["name", "attributes", "selfClosing"], visitor: ["name", "attributes"], aliases: ["JSX", "Immutable"], fields: { name: { validate: (0, _utils.assertNodeType)("JSXIdentifier", "JSXMemberExpression", "JSXNamespacedName") }, selfClosing: { default: false, validate: (0, _utils.assertValueType)("boolean") }, attributes: { validate: (0, _utils.chain)((0, _utils.assertValueType)("array"), (0, _utils.assertEach)((0, _utils.assertNodeType)("JSXAttribute", "JSXSpreadAttribute"))) }, typeParameters: { validate: (0, _utils.assertNodeType)("TypeParameterInstantiation", "TSTypeParameterInstantiation"), optional: true } }
}); (0, _utils.default)(“JSXSpreadAttribute”, {
visitor: ["argument"], aliases: ["JSX"], fields: { argument: { validate: (0, _utils.assertNodeType)("Expression") } }
}); (0, _utils.default)(“JSXText”, {
aliases: ["JSX", "Immutable"], builder: ["value"], fields: { value: { validate: (0, _utils.assertValueType)("string") } }
}); (0, _utils.default)(“JSXFragment”, {
builder: ["openingFragment", "closingFragment", "children"], visitor: ["openingFragment", "children", "closingFragment"], aliases: ["JSX", "Immutable", "Expression"], fields: { openingFragment: { validate: (0, _utils.assertNodeType)("JSXOpeningFragment") }, closingFragment: { validate: (0, _utils.assertNodeType)("JSXClosingFragment") }, children: { validate: (0, _utils.chain)((0, _utils.assertValueType)("array"), (0, _utils.assertEach)((0, _utils.assertNodeType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement", "JSXFragment"))) } }
}); (0, _utils.default)(“JSXOpeningFragment”, {
aliases: ["JSX", "Immutable"]
}); (0, _utils.default)(“JSXClosingFragment”, {
aliases: ["JSX", "Immutable"]
});