UNPKG

3.04 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.JSXAttribute = JSXAttribute;
7exports.JSXClosingElement = JSXClosingElement;
8exports.JSXClosingFragment = JSXClosingFragment;
9exports.JSXElement = JSXElement;
10exports.JSXEmptyExpression = JSXEmptyExpression;
11exports.JSXExpressionContainer = JSXExpressionContainer;
12exports.JSXFragment = JSXFragment;
13exports.JSXIdentifier = JSXIdentifier;
14exports.JSXMemberExpression = JSXMemberExpression;
15exports.JSXNamespacedName = JSXNamespacedName;
16exports.JSXOpeningElement = JSXOpeningElement;
17exports.JSXOpeningFragment = JSXOpeningFragment;
18exports.JSXSpreadAttribute = JSXSpreadAttribute;
19exports.JSXSpreadChild = JSXSpreadChild;
20exports.JSXText = JSXText;
21function JSXAttribute(node) {
22 this.print(node.name, node);
23 if (node.value) {
24 this.tokenChar(61);
25 this.print(node.value, node);
26 }
27}
28function JSXIdentifier(node) {
29 this.word(node.name);
30}
31function JSXNamespacedName(node) {
32 this.print(node.namespace, node);
33 this.tokenChar(58);
34 this.print(node.name, node);
35}
36function JSXMemberExpression(node) {
37 this.print(node.object, node);
38 this.tokenChar(46);
39 this.print(node.property, node);
40}
41function JSXSpreadAttribute(node) {
42 this.tokenChar(123);
43 this.token("...");
44 this.print(node.argument, node);
45 this.tokenChar(125);
46}
47function JSXExpressionContainer(node) {
48 this.tokenChar(123);
49 this.print(node.expression, node);
50 this.tokenChar(125);
51}
52function JSXSpreadChild(node) {
53 this.tokenChar(123);
54 this.token("...");
55 this.print(node.expression, node);
56 this.tokenChar(125);
57}
58function JSXText(node) {
59 const raw = this.getPossibleRaw(node);
60 if (raw !== undefined) {
61 this.token(raw, true);
62 } else {
63 this.token(node.value, true);
64 }
65}
66function JSXElement(node) {
67 const open = node.openingElement;
68 this.print(open, node);
69 if (open.selfClosing) return;
70 this.indent();
71 for (const child of node.children) {
72 this.print(child, node);
73 }
74 this.dedent();
75 this.print(node.closingElement, node);
76}
77function spaceSeparator() {
78 this.space();
79}
80function JSXOpeningElement(node) {
81 this.tokenChar(60);
82 this.print(node.name, node);
83 this.print(node.typeParameters, node);
84 if (node.attributes.length > 0) {
85 this.space();
86 this.printJoin(node.attributes, node, {
87 separator: spaceSeparator
88 });
89 }
90 if (node.selfClosing) {
91 this.space();
92 this.token("/>");
93 } else {
94 this.tokenChar(62);
95 }
96}
97function JSXClosingElement(node) {
98 this.token("</");
99 this.print(node.name, node);
100 this.tokenChar(62);
101}
102function JSXEmptyExpression() {
103 this.printInnerComments();
104}
105function JSXFragment(node) {
106 this.print(node.openingFragment, node);
107 this.indent();
108 for (const child of node.children) {
109 this.print(child, node);
110 }
111 this.dedent();
112 this.print(node.closingFragment, node);
113}
114function JSXOpeningFragment() {
115 this.tokenChar(60);
116 this.tokenChar(62);
117}
118function JSXClosingFragment() {
119 this.token("</");
120 this.tokenChar(62);
121}
122
123//# sourceMappingURL=jsx.js.map