9c08a36c0476456e7062f0d975f15d96d569c1aaf24277459e08396a73a778b8c355d4880162223775cb2732ce9d86faab5ca5786847b7e9516cd940aacf66 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. "use strict";
  2. var _index = require("./index");
  3. var _index2 = _interopRequireDefault(_index);
  4. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  5. (0, _index2.default)("JSXAttribute", {
  6. visitor: ["name", "value"],
  7. aliases: ["JSX", "Immutable"],
  8. fields: {
  9. name: {
  10. validate: (0, _index.assertNodeType)("JSXIdentifier", "JSXNamespacedName")
  11. },
  12. value: {
  13. optional: true,
  14. validate: (0, _index.assertNodeType)("JSXElement", "StringLiteral", "JSXExpressionContainer")
  15. }
  16. }
  17. });
  18. (0, _index2.default)("JSXClosingElement", {
  19. visitor: ["name"],
  20. aliases: ["JSX", "Immutable"],
  21. fields: {
  22. name: {
  23. validate: (0, _index.assertNodeType)("JSXIdentifier", "JSXMemberExpression")
  24. }
  25. }
  26. });
  27. (0, _index2.default)("JSXElement", {
  28. builder: ["openingElement", "closingElement", "children", "selfClosing"],
  29. visitor: ["openingElement", "children", "closingElement"],
  30. aliases: ["JSX", "Immutable", "Expression"],
  31. fields: {
  32. openingElement: {
  33. validate: (0, _index.assertNodeType)("JSXOpeningElement")
  34. },
  35. closingElement: {
  36. optional: true,
  37. validate: (0, _index.assertNodeType)("JSXClosingElement")
  38. },
  39. children: {
  40. validate: (0, _index.chain)((0, _index.assertValueType)("array"), (0, _index.assertEach)((0, _index.assertNodeType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement")))
  41. }
  42. }
  43. });
  44. (0, _index2.default)("JSXEmptyExpression", {
  45. aliases: ["JSX", "Expression"]
  46. });
  47. (0, _index2.default)("JSXExpressionContainer", {
  48. visitor: ["expression"],
  49. aliases: ["JSX", "Immutable"],
  50. fields: {
  51. expression: {
  52. validate: (0, _index.assertNodeType)("Expression")
  53. }
  54. }
  55. });
  56. (0, _index2.default)("JSXSpreadChild", {
  57. visitor: ["expression"],
  58. aliases: ["JSX", "Immutable"],
  59. fields: {
  60. expression: {
  61. validate: (0, _index.assertNodeType)("Expression")
  62. }
  63. }
  64. });
  65. (0, _index2.default)("JSXIdentifier", {
  66. builder: ["name"],
  67. aliases: ["JSX", "Expression"],
  68. fields: {
  69. name: {
  70. validate: (0, _index.assertValueType)("string")
  71. }
  72. }
  73. });
  74. (0, _index2.default)("JSXMemberExpression", {
  75. visitor: ["object", "property"],
  76. aliases: ["JSX", "Expression"],
  77. fields: {
  78. object: {
  79. validate: (0, _index.assertNodeType)("JSXMemberExpression", "JSXIdentifier")
  80. },
  81. property: {
  82. validate: (0, _index.assertNodeType)("JSXIdentifier")
  83. }
  84. }
  85. });
  86. (0, _index2.default)("JSXNamespacedName", {
  87. visitor: ["namespace", "name"],
  88. aliases: ["JSX"],
  89. fields: {
  90. namespace: {
  91. validate: (0, _index.assertNodeType)("JSXIdentifier")
  92. },
  93. name: {
  94. validate: (0, _index.assertNodeType)("JSXIdentifier")
  95. }
  96. }
  97. });
  98. (0, _index2.default)("JSXOpeningElement", {
  99. builder: ["name", "attributes", "selfClosing"],
  100. visitor: ["name", "attributes"],
  101. aliases: ["JSX", "Immutable"],
  102. fields: {
  103. name: {
  104. validate: (0, _index.assertNodeType)("JSXIdentifier", "JSXMemberExpression")
  105. },
  106. selfClosing: {
  107. default: false,
  108. validate: (0, _index.assertValueType)("boolean")
  109. },
  110. attributes: {
  111. validate: (0, _index.chain)((0, _index.assertValueType)("array"), (0, _index.assertEach)((0, _index.assertNodeType)("JSXAttribute", "JSXSpreadAttribute")))
  112. }
  113. }
  114. });
  115. (0, _index2.default)("JSXSpreadAttribute", {
  116. visitor: ["argument"],
  117. aliases: ["JSX"],
  118. fields: {
  119. argument: {
  120. validate: (0, _index.assertNodeType)("Expression")
  121. }
  122. }
  123. });
  124. (0, _index2.default)("JSXText", {
  125. aliases: ["JSX", "Immutable"],
  126. builder: ["value"],
  127. fields: {
  128. value: {
  129. validate: (0, _index.assertValueType)("string")
  130. }
  131. }
  132. });