@herb-tools/printer 0.8.9 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js.map +1 -0
- package/dist/{src/erb-to-ruby-string-printer.js → erb-to-ruby-string-printer.js} +20 -22
- package/dist/erb-to-ruby-string-printer.js.map +1 -0
- package/dist/herb-print.js +54344 -14956
- package/dist/herb-print.js.map +1 -1
- package/dist/{src/identity-printer.js → identity-printer.js} +33 -0
- package/dist/identity-printer.js.map +1 -0
- package/dist/indent-printer.js +256 -0
- package/dist/indent-printer.js.map +1 -0
- package/dist/index.cjs +309 -22
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +310 -24
- package/dist/index.js.map +1 -1
- package/dist/print-context.js.map +1 -0
- package/dist/{src/printer.js → printer.js} +3 -1
- package/dist/printer.js.map +1 -0
- package/dist/types/identity-printer.d.ts +6 -0
- package/dist/types/indent-printer.d.ts +41 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/printer.d.ts +1 -1
- package/package.json +2 -2
- package/src/erb-to-ruby-string-printer.ts +25 -27
- package/src/identity-printer.ts +44 -0
- package/src/indent-printer.ts +313 -0
- package/src/index.ts +1 -0
- package/src/printer.ts +6 -6
- package/dist/package.json +0 -50
- package/dist/src/cli.js.map +0 -1
- package/dist/src/erb-to-ruby-string-printer.js.map +0 -1
- package/dist/src/herb-print.js +0 -5
- package/dist/src/herb-print.js.map +0 -1
- package/dist/src/identity-printer.js.map +0 -1
- package/dist/src/index.js +0 -5
- package/dist/src/index.js.map +0 -1
- package/dist/src/print-context.js.map +0 -1
- package/dist/src/printer.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/types/src/cli.d.ts +0 -6
- package/dist/types/src/erb-to-ruby-string-printer.d.ts +0 -42
- package/dist/types/src/herb-print.d.ts +0 -2
- package/dist/types/src/identity-printer.d.ts +0 -48
- package/dist/types/src/index.d.ts +0 -5
- package/dist/types/src/print-context.d.ts +0 -54
- package/dist/types/src/printer.d.ts +0 -39
- /package/dist/{src/cli.js → cli.js} +0 -0
- /package/dist/{src/print-context.js → print-context.js} +0 -0
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Visitor, isToken, isParseResult, getNodesBeforePosition, getNodesAfterPosition, filterNodes, ERBContentNode, isERBOutputNode } from '@herb-tools/core';
|
|
1
|
+
import { Visitor, isToken, isParseResult, getNodesBeforePosition, getNodesAfterPosition, filterNodes, ERBContentNode, isERBOutputNode, isERBIfNode, isERBUnlessNode, isERBElseNode, isHTMLTextNode } from '@herb-tools/core';
|
|
2
2
|
|
|
3
3
|
class PrintContext {
|
|
4
4
|
output = "";
|
|
@@ -140,7 +140,9 @@ class Printer extends Visitor {
|
|
|
140
140
|
return this.context.getOutput();
|
|
141
141
|
}
|
|
142
142
|
write(content) {
|
|
143
|
-
|
|
143
|
+
if (content !== null && content !== undefined) {
|
|
144
|
+
this.context.write(content);
|
|
145
|
+
}
|
|
144
146
|
}
|
|
145
147
|
}
|
|
146
148
|
|
|
@@ -200,6 +202,12 @@ class IdentityPrinter extends Printer {
|
|
|
200
202
|
this.write(node.tag_closing.value);
|
|
201
203
|
}
|
|
202
204
|
}
|
|
205
|
+
visitHTMLVirtualCloseTagNode(_node) {
|
|
206
|
+
// Virtual closing tags don't print anything (they are synthetic)
|
|
207
|
+
}
|
|
208
|
+
visitHTMLOmittedCloseTagNode(_node) {
|
|
209
|
+
// Omitted closing tags don't print anything
|
|
210
|
+
}
|
|
203
211
|
visitHTMLElementNode(node) {
|
|
204
212
|
const tagName = node.tag_name?.value;
|
|
205
213
|
if (tagName) {
|
|
@@ -218,6 +226,24 @@ class IdentityPrinter extends Printer {
|
|
|
218
226
|
this.context.exitTag();
|
|
219
227
|
}
|
|
220
228
|
}
|
|
229
|
+
visitHTMLConditionalElementNode(node) {
|
|
230
|
+
const tagName = node.tag_name?.value;
|
|
231
|
+
if (tagName) {
|
|
232
|
+
this.context.enterTag(tagName);
|
|
233
|
+
}
|
|
234
|
+
if (node.open_conditional) {
|
|
235
|
+
this.visit(node.open_conditional);
|
|
236
|
+
}
|
|
237
|
+
if (node.body) {
|
|
238
|
+
node.body.forEach(child => this.visit(child));
|
|
239
|
+
}
|
|
240
|
+
if (node.close_conditional) {
|
|
241
|
+
this.visit(node.close_conditional);
|
|
242
|
+
}
|
|
243
|
+
if (tagName) {
|
|
244
|
+
this.context.exitTag();
|
|
245
|
+
}
|
|
246
|
+
}
|
|
221
247
|
visitHTMLAttributeNode(node) {
|
|
222
248
|
if (node.name) {
|
|
223
249
|
this.visit(node.name);
|
|
@@ -241,6 +267,12 @@ class IdentityPrinter extends Printer {
|
|
|
241
267
|
this.write(node.close_quote.value);
|
|
242
268
|
}
|
|
243
269
|
}
|
|
270
|
+
visitRubyLiteralNode(node) {
|
|
271
|
+
this.write(node.content);
|
|
272
|
+
}
|
|
273
|
+
visitRubyHTMLAttributesSplatNode(node) {
|
|
274
|
+
this.write(node.content);
|
|
275
|
+
}
|
|
244
276
|
visitHTMLCommentNode(node) {
|
|
245
277
|
if (node.comment_start) {
|
|
246
278
|
this.write(node.comment_start.value);
|
|
@@ -277,6 +309,9 @@ class IdentityPrinter extends Printer {
|
|
|
277
309
|
this.write(node.tag_closing.value);
|
|
278
310
|
}
|
|
279
311
|
}
|
|
312
|
+
visitERBOpenTagNode(node) {
|
|
313
|
+
this.printERBNode(node);
|
|
314
|
+
}
|
|
280
315
|
visitERBContentNode(node) {
|
|
281
316
|
this.printERBNode(node);
|
|
282
317
|
}
|
|
@@ -443,6 +478,259 @@ class IdentityPrinter extends Printer {
|
|
|
443
478
|
}
|
|
444
479
|
}
|
|
445
480
|
|
|
481
|
+
/**
|
|
482
|
+
* IndentPrinter - Re-indentation printer that preserves content but adjusts indentation
|
|
483
|
+
*
|
|
484
|
+
* Extends IdentityPrinter to preserve all content as-is while replacing
|
|
485
|
+
* leading whitespace on each line with the correct indentation based on
|
|
486
|
+
* the AST nesting depth.
|
|
487
|
+
*/
|
|
488
|
+
class IndentPrinter extends IdentityPrinter {
|
|
489
|
+
indentLevel = 0;
|
|
490
|
+
indentWidth;
|
|
491
|
+
pendingIndent = false;
|
|
492
|
+
constructor(indentWidth = 2) {
|
|
493
|
+
super();
|
|
494
|
+
this.indentWidth = indentWidth;
|
|
495
|
+
}
|
|
496
|
+
get indent() {
|
|
497
|
+
return " ".repeat(this.indentLevel * this.indentWidth);
|
|
498
|
+
}
|
|
499
|
+
write(content) {
|
|
500
|
+
if (this.pendingIndent && content.length > 0) {
|
|
501
|
+
this.pendingIndent = false;
|
|
502
|
+
this.context.write(this.indent + content);
|
|
503
|
+
}
|
|
504
|
+
else {
|
|
505
|
+
this.context.write(content);
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
visitLiteralNode(node) {
|
|
509
|
+
this.writeWithIndent(node.content);
|
|
510
|
+
}
|
|
511
|
+
visitHTMLTextNode(node) {
|
|
512
|
+
this.writeWithIndent(node.content);
|
|
513
|
+
}
|
|
514
|
+
visitHTMLElementNode(node) {
|
|
515
|
+
const tagName = node.tag_name?.value;
|
|
516
|
+
if (tagName) {
|
|
517
|
+
this.context.enterTag(tagName);
|
|
518
|
+
}
|
|
519
|
+
if (node.open_tag) {
|
|
520
|
+
this.visit(node.open_tag);
|
|
521
|
+
}
|
|
522
|
+
if (node.body) {
|
|
523
|
+
this.indentLevel++;
|
|
524
|
+
node.body.forEach(child => this.visit(child));
|
|
525
|
+
this.indentLevel--;
|
|
526
|
+
}
|
|
527
|
+
if (node.close_tag) {
|
|
528
|
+
this.visit(node.close_tag);
|
|
529
|
+
}
|
|
530
|
+
if (tagName) {
|
|
531
|
+
this.context.exitTag();
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
visitERBIfNode(node) {
|
|
535
|
+
this.printERBNode(node);
|
|
536
|
+
if (node.statements) {
|
|
537
|
+
this.indentLevel++;
|
|
538
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
539
|
+
this.indentLevel--;
|
|
540
|
+
}
|
|
541
|
+
if (node.subsequent) {
|
|
542
|
+
this.visit(node.subsequent);
|
|
543
|
+
}
|
|
544
|
+
if (node.end_node) {
|
|
545
|
+
this.visit(node.end_node);
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
visitERBElseNode(node) {
|
|
549
|
+
this.printERBNode(node);
|
|
550
|
+
if (node.statements) {
|
|
551
|
+
this.indentLevel++;
|
|
552
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
553
|
+
this.indentLevel--;
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
visitERBBlockNode(node) {
|
|
557
|
+
this.printERBNode(node);
|
|
558
|
+
if (node.body) {
|
|
559
|
+
this.indentLevel++;
|
|
560
|
+
node.body.forEach(child => this.visit(child));
|
|
561
|
+
this.indentLevel--;
|
|
562
|
+
}
|
|
563
|
+
if (node.end_node) {
|
|
564
|
+
this.visit(node.end_node);
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
visitERBCaseNode(node) {
|
|
568
|
+
this.printERBNode(node);
|
|
569
|
+
if (node.children) {
|
|
570
|
+
this.indentLevel++;
|
|
571
|
+
node.children.forEach(child => this.visit(child));
|
|
572
|
+
this.indentLevel--;
|
|
573
|
+
}
|
|
574
|
+
if (node.conditions) {
|
|
575
|
+
this.indentLevel++;
|
|
576
|
+
node.conditions.forEach(condition => this.visit(condition));
|
|
577
|
+
this.indentLevel--;
|
|
578
|
+
}
|
|
579
|
+
if (node.else_clause) {
|
|
580
|
+
this.indentLevel++;
|
|
581
|
+
this.visit(node.else_clause);
|
|
582
|
+
this.indentLevel--;
|
|
583
|
+
}
|
|
584
|
+
if (node.end_node) {
|
|
585
|
+
this.visit(node.end_node);
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
visitERBWhenNode(node) {
|
|
589
|
+
this.printERBNode(node);
|
|
590
|
+
if (node.statements) {
|
|
591
|
+
this.indentLevel++;
|
|
592
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
593
|
+
this.indentLevel--;
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
visitERBWhileNode(node) {
|
|
597
|
+
this.printERBNode(node);
|
|
598
|
+
if (node.statements) {
|
|
599
|
+
this.indentLevel++;
|
|
600
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
601
|
+
this.indentLevel--;
|
|
602
|
+
}
|
|
603
|
+
if (node.end_node) {
|
|
604
|
+
this.visit(node.end_node);
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
visitERBUntilNode(node) {
|
|
608
|
+
this.printERBNode(node);
|
|
609
|
+
if (node.statements) {
|
|
610
|
+
this.indentLevel++;
|
|
611
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
612
|
+
this.indentLevel--;
|
|
613
|
+
}
|
|
614
|
+
if (node.end_node) {
|
|
615
|
+
this.visit(node.end_node);
|
|
616
|
+
}
|
|
617
|
+
}
|
|
618
|
+
visitERBForNode(node) {
|
|
619
|
+
this.printERBNode(node);
|
|
620
|
+
if (node.statements) {
|
|
621
|
+
this.indentLevel++;
|
|
622
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
623
|
+
this.indentLevel--;
|
|
624
|
+
}
|
|
625
|
+
if (node.end_node) {
|
|
626
|
+
this.visit(node.end_node);
|
|
627
|
+
}
|
|
628
|
+
}
|
|
629
|
+
visitERBBeginNode(node) {
|
|
630
|
+
this.printERBNode(node);
|
|
631
|
+
if (node.statements) {
|
|
632
|
+
this.indentLevel++;
|
|
633
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
634
|
+
this.indentLevel--;
|
|
635
|
+
}
|
|
636
|
+
if (node.rescue_clause) {
|
|
637
|
+
this.visit(node.rescue_clause);
|
|
638
|
+
}
|
|
639
|
+
if (node.else_clause) {
|
|
640
|
+
this.visit(node.else_clause);
|
|
641
|
+
}
|
|
642
|
+
if (node.ensure_clause) {
|
|
643
|
+
this.visit(node.ensure_clause);
|
|
644
|
+
}
|
|
645
|
+
if (node.end_node) {
|
|
646
|
+
this.visit(node.end_node);
|
|
647
|
+
}
|
|
648
|
+
}
|
|
649
|
+
visitERBRescueNode(node) {
|
|
650
|
+
this.printERBNode(node);
|
|
651
|
+
if (node.statements) {
|
|
652
|
+
this.indentLevel++;
|
|
653
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
654
|
+
this.indentLevel--;
|
|
655
|
+
}
|
|
656
|
+
if (node.subsequent) {
|
|
657
|
+
this.visit(node.subsequent);
|
|
658
|
+
}
|
|
659
|
+
}
|
|
660
|
+
visitERBEnsureNode(node) {
|
|
661
|
+
this.printERBNode(node);
|
|
662
|
+
if (node.statements) {
|
|
663
|
+
this.indentLevel++;
|
|
664
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
665
|
+
this.indentLevel--;
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
visitERBUnlessNode(node) {
|
|
669
|
+
this.printERBNode(node);
|
|
670
|
+
if (node.statements) {
|
|
671
|
+
this.indentLevel++;
|
|
672
|
+
node.statements.forEach(statement => this.visit(statement));
|
|
673
|
+
this.indentLevel--;
|
|
674
|
+
}
|
|
675
|
+
if (node.else_clause) {
|
|
676
|
+
this.visit(node.else_clause);
|
|
677
|
+
}
|
|
678
|
+
if (node.end_node) {
|
|
679
|
+
this.visit(node.end_node);
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
/**
|
|
683
|
+
* Write content, replacing leading whitespace on each line with the current indent.
|
|
684
|
+
*
|
|
685
|
+
* Uses a pendingIndent mechanism: when content ends with a newline followed by
|
|
686
|
+
* whitespace-only, sets pendingIndent=true instead of writing the indent immediately.
|
|
687
|
+
* The indent is then applied at the correct level when the next node writes content
|
|
688
|
+
* (via the overridden write() method).
|
|
689
|
+
*/
|
|
690
|
+
writeWithIndent(content) {
|
|
691
|
+
if (!content.includes("\n")) {
|
|
692
|
+
if (this.pendingIndent) {
|
|
693
|
+
this.pendingIndent = false;
|
|
694
|
+
const trimmed = content.replace(/^[ \t]+/, "");
|
|
695
|
+
if (trimmed.length > 0) {
|
|
696
|
+
this.context.write(this.indent + trimmed);
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
else {
|
|
700
|
+
this.context.write(content);
|
|
701
|
+
}
|
|
702
|
+
return;
|
|
703
|
+
}
|
|
704
|
+
const lines = content.split("\n");
|
|
705
|
+
const lastIndex = lines.length - 1;
|
|
706
|
+
for (let i = 0; i < lines.length; i++) {
|
|
707
|
+
if (i > 0) {
|
|
708
|
+
this.context.write("\n");
|
|
709
|
+
}
|
|
710
|
+
const line = lines[i];
|
|
711
|
+
const trimmed = line.replace(/^[ \t]+/, "");
|
|
712
|
+
if (i === 0) {
|
|
713
|
+
if (this.pendingIndent) {
|
|
714
|
+
this.pendingIndent = false;
|
|
715
|
+
if (trimmed.length > 0) {
|
|
716
|
+
this.context.write(this.indent + trimmed);
|
|
717
|
+
}
|
|
718
|
+
}
|
|
719
|
+
else {
|
|
720
|
+
this.context.write(line);
|
|
721
|
+
}
|
|
722
|
+
}
|
|
723
|
+
else if (i === lastIndex && trimmed.length === 0) {
|
|
724
|
+
this.pendingIndent = true;
|
|
725
|
+
}
|
|
726
|
+
else if (trimmed.length === 0) ;
|
|
727
|
+
else {
|
|
728
|
+
this.context.write(this.indent + trimmed);
|
|
729
|
+
}
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
}
|
|
733
|
+
|
|
446
734
|
const DEFAULT_ERB_TO_RUBY_STRING_OPTIONS = {
|
|
447
735
|
...DEFAULT_PRINT_OPTIONS,
|
|
448
736
|
forceQuotes: false
|
|
@@ -464,7 +752,6 @@ const DEFAULT_ERB_TO_RUBY_STRING_OPTIONS = {
|
|
|
464
752
|
* - `<% if logged_in? %>Welcome<% else %>Login<% end %>!` => `"#{logged_in? ? "Welcome" : "Login"}!"`
|
|
465
753
|
*/
|
|
466
754
|
class ERBToRubyStringPrinter extends IdentityPrinter {
|
|
467
|
-
// TODO: cleanup `.type === "AST_*" checks`
|
|
468
755
|
static print(node, options = DEFAULT_ERB_TO_RUBY_STRING_OPTIONS) {
|
|
469
756
|
const erbNodes = filterNodes([node], ERBContentNode);
|
|
470
757
|
if (erbNodes.length === 1 && isERBOutputNode(erbNodes[0]) && !options.forceQuotes) {
|
|
@@ -476,19 +763,18 @@ class ERBToRubyStringPrinter extends IdentityPrinter {
|
|
|
476
763
|
if (hasOnlyERBContent && childErbNodes.length === 1 && isERBOutputNode(childErbNodes[0]) && !options.forceQuotes) {
|
|
477
764
|
return (childErbNodes[0].content?.value || "").trim();
|
|
478
765
|
}
|
|
479
|
-
|
|
480
|
-
|
|
766
|
+
const firstChild = node.children[0];
|
|
767
|
+
if (node.children.length === 1 && isERBIfNode(firstChild) && !options.forceQuotes) {
|
|
481
768
|
const printer = new ERBToRubyStringPrinter();
|
|
482
|
-
if (printer.canConvertToTernary(
|
|
483
|
-
printer.convertToTernaryWithoutWrapper(
|
|
769
|
+
if (printer.canConvertToTernary(firstChild)) {
|
|
770
|
+
printer.convertToTernaryWithoutWrapper(firstChild);
|
|
484
771
|
return printer.context.getOutput();
|
|
485
772
|
}
|
|
486
773
|
}
|
|
487
|
-
if (node.children.length === 1 &&
|
|
488
|
-
const unlessNode = node.children[0];
|
|
774
|
+
if (node.children.length === 1 && isERBUnlessNode(firstChild) && !options.forceQuotes) {
|
|
489
775
|
const printer = new ERBToRubyStringPrinter();
|
|
490
|
-
if (printer.canConvertUnlessToTernary(
|
|
491
|
-
printer.convertUnlessToTernaryWithoutWrapper(
|
|
776
|
+
if (printer.canConvertUnlessToTernary(firstChild)) {
|
|
777
|
+
printer.convertUnlessToTernaryWithoutWrapper(firstChild);
|
|
492
778
|
return printer.context.getOutput();
|
|
493
779
|
}
|
|
494
780
|
}
|
|
@@ -528,15 +814,15 @@ class ERBToRubyStringPrinter extends IdentityPrinter {
|
|
|
528
814
|
this.visitChildNodes(node);
|
|
529
815
|
}
|
|
530
816
|
canConvertToTernary(node) {
|
|
531
|
-
if (node.subsequent && node.subsequent
|
|
817
|
+
if (node.subsequent && !isERBElseNode(node.subsequent)) {
|
|
532
818
|
return false;
|
|
533
819
|
}
|
|
534
|
-
const ifOnlyText = node.statements ? node.statements.every(
|
|
820
|
+
const ifOnlyText = node.statements ? node.statements.every(isHTMLTextNode) : true;
|
|
535
821
|
if (!ifOnlyText)
|
|
536
822
|
return false;
|
|
537
|
-
if (node.subsequent
|
|
823
|
+
if (isERBElseNode(node.subsequent)) {
|
|
538
824
|
return node.subsequent.statements
|
|
539
|
-
? node.subsequent.statements.every(
|
|
825
|
+
? node.subsequent.statements.every(isHTMLTextNode)
|
|
540
826
|
: true;
|
|
541
827
|
}
|
|
542
828
|
return true;
|
|
@@ -563,14 +849,14 @@ class ERBToRubyStringPrinter extends IdentityPrinter {
|
|
|
563
849
|
this.context.write('"');
|
|
564
850
|
this.context.write(" : ");
|
|
565
851
|
this.context.write('"');
|
|
566
|
-
if (node.subsequent && node.subsequent.
|
|
852
|
+
if (isERBElseNode(node.subsequent) && node.subsequent.statements) {
|
|
567
853
|
node.subsequent.statements.forEach(statement => this.visit(statement));
|
|
568
854
|
}
|
|
569
855
|
this.context.write('"');
|
|
570
856
|
this.context.write("}");
|
|
571
857
|
}
|
|
572
858
|
convertToTernaryWithoutWrapper(node) {
|
|
573
|
-
if (node.subsequent && node.subsequent
|
|
859
|
+
if (node.subsequent && !isERBElseNode(node.subsequent)) {
|
|
574
860
|
return false;
|
|
575
861
|
}
|
|
576
862
|
if (node.content?.value) {
|
|
@@ -593,18 +879,18 @@ class ERBToRubyStringPrinter extends IdentityPrinter {
|
|
|
593
879
|
this.context.write('"');
|
|
594
880
|
this.context.write(" : ");
|
|
595
881
|
this.context.write('"');
|
|
596
|
-
if (node.subsequent && node.subsequent.
|
|
882
|
+
if (isERBElseNode(node.subsequent) && node.subsequent.statements) {
|
|
597
883
|
node.subsequent.statements.forEach(statement => this.visit(statement));
|
|
598
884
|
}
|
|
599
885
|
this.context.write('"');
|
|
600
886
|
}
|
|
601
887
|
canConvertUnlessToTernary(node) {
|
|
602
|
-
const unlessOnlyText = node.statements ? node.statements.every(
|
|
888
|
+
const unlessOnlyText = node.statements ? node.statements.every(isHTMLTextNode) : true;
|
|
603
889
|
if (!unlessOnlyText)
|
|
604
890
|
return false;
|
|
605
|
-
if (node.else_clause
|
|
891
|
+
if (isERBElseNode(node.else_clause)) {
|
|
606
892
|
return node.else_clause.statements
|
|
607
|
-
? node.else_clause.statements.every(
|
|
893
|
+
? node.else_clause.statements.every(isHTMLTextNode)
|
|
608
894
|
: true;
|
|
609
895
|
}
|
|
610
896
|
return true;
|
|
@@ -633,7 +919,7 @@ class ERBToRubyStringPrinter extends IdentityPrinter {
|
|
|
633
919
|
this.context.write('"');
|
|
634
920
|
this.context.write(" : ");
|
|
635
921
|
this.context.write('"');
|
|
636
|
-
if (node.else_clause
|
|
922
|
+
if (isERBElseNode(node.else_clause)) {
|
|
637
923
|
node.else_clause.statements.forEach(statement => this.visit(statement));
|
|
638
924
|
}
|
|
639
925
|
this.context.write('"');
|
|
@@ -662,12 +948,12 @@ class ERBToRubyStringPrinter extends IdentityPrinter {
|
|
|
662
948
|
this.context.write('"');
|
|
663
949
|
this.context.write(" : ");
|
|
664
950
|
this.context.write('"');
|
|
665
|
-
if (node.else_clause
|
|
951
|
+
if (isERBElseNode(node.else_clause)) {
|
|
666
952
|
node.else_clause.statements.forEach(statement => this.visit(statement));
|
|
667
953
|
}
|
|
668
954
|
this.context.write('"');
|
|
669
955
|
}
|
|
670
956
|
}
|
|
671
957
|
|
|
672
|
-
export { DEFAULT_PRINT_OPTIONS, ERBToRubyStringPrinter, IdentityPrinter, PrintContext, Printer };
|
|
958
|
+
export { DEFAULT_PRINT_OPTIONS, ERBToRubyStringPrinter, IdentityPrinter, IndentPrinter, PrintContext, Printer };
|
|
673
959
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/print-context.ts","../src/printer.ts","../src/identity-printer.ts","../src/erb-to-ruby-string-printer.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/print-context.ts","../src/printer.ts","../src/identity-printer.ts","../src/indent-printer.ts","../src/erb-to-ruby-string-printer.ts"],"sourcesContent":[null,null,null,null,null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"print-context.js","sourceRoot":"","sources":["../src/print-context.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,YAAY;IACf,MAAM,GAAW,EAAE,CAAA;IACnB,WAAW,GAAW,CAAC,CAAA;IACvB,aAAa,GAAW,CAAC,CAAA;IACzB,aAAa,GAAa,EAAE,CAAA;IAEpC;;OAEG;IACH,KAAK,CAAC,IAAY;QAChB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;QACnB,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAA;IACnC,CAAC;IAED;;OAEG;IACH,uBAAuB,CAAC,IAAY;QAClC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;QAEnB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;QACrD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAA;QACnC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,WAAW,EAAE,CAAA;QACpB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,OAAe;QACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IAChD,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,aAAa,KAAK,CAAC,CAAA;IACjC,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAA;IAC3B,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAA;IAChC,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAA;QACpB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAA;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;IACzB,CAAC;CACF"}
|
|
@@ -48,7 +48,9 @@ export class Printer extends Visitor {
|
|
|
48
48
|
return this.context.getOutput();
|
|
49
49
|
}
|
|
50
50
|
write(content) {
|
|
51
|
-
|
|
51
|
+
if (content !== null && content !== undefined) {
|
|
52
|
+
this.context.write(content);
|
|
53
|
+
}
|
|
52
54
|
}
|
|
53
55
|
}
|
|
54
56
|
//# sourceMappingURL=printer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"printer.js","sourceRoot":"","sources":["../src/printer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,OAAO,EAAsB,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAcjD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAiB;IACjD,YAAY,EAAE,KAAK;CACpB,CAAA;AAED,MAAM,OAAgB,OAAQ,SAAQ,OAAO;IACjC,OAAO,GAAiB,IAAI,YAAY,EAAE,CAAA;IAEpD;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,KAA6D,EAAE,UAAwB,qBAAqB;QACvH,MAAM,OAAO,GAAG,IAAK,IAAY,EAAE,CAAA;QAEnC,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACtC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,KAA6D,EAAE,UAAwB,qBAAqB;QAChH,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAA;QAErB,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC,KAAK,CAAA;QACpB,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YACpB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;YACvC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAA;QACjC,CAAC;QAED,MAAM,IAAI,GAAS,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;QAE7D,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,mJAAmJ,CAAC,CAAA;QACzM,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;QAEpB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEhB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAA;IACjC,CAAC;IAES,KAAK,CAAC,OAAkC;QAChD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;CACF"}
|
|
@@ -16,14 +16,20 @@ export declare class IdentityPrinter extends Printer {
|
|
|
16
16
|
visitWhitespaceNode(node: Nodes.WhitespaceNode): void;
|
|
17
17
|
visitHTMLOpenTagNode(node: Nodes.HTMLOpenTagNode): void;
|
|
18
18
|
visitHTMLCloseTagNode(node: Nodes.HTMLCloseTagNode): void;
|
|
19
|
+
visitHTMLVirtualCloseTagNode(_node: Nodes.HTMLVirtualCloseTagNode): void;
|
|
20
|
+
visitHTMLOmittedCloseTagNode(_node: Nodes.HTMLOmittedCloseTagNode): void;
|
|
19
21
|
visitHTMLElementNode(node: Nodes.HTMLElementNode): void;
|
|
22
|
+
visitHTMLConditionalElementNode(node: Nodes.HTMLConditionalElementNode): void;
|
|
20
23
|
visitHTMLAttributeNode(node: Nodes.HTMLAttributeNode): void;
|
|
21
24
|
visitHTMLAttributeNameNode(node: Nodes.HTMLAttributeNameNode): void;
|
|
22
25
|
visitHTMLAttributeValueNode(node: Nodes.HTMLAttributeValueNode): void;
|
|
26
|
+
visitRubyLiteralNode(node: Nodes.RubyLiteralNode): void;
|
|
27
|
+
visitRubyHTMLAttributesSplatNode(node: Nodes.RubyHTMLAttributesSplatNode): void;
|
|
23
28
|
visitHTMLCommentNode(node: Nodes.HTMLCommentNode): void;
|
|
24
29
|
visitHTMLDoctypeNode(node: Nodes.HTMLDoctypeNode): void;
|
|
25
30
|
visitXMLDeclarationNode(node: Nodes.XMLDeclarationNode): void;
|
|
26
31
|
visitCDATANode(node: Nodes.CDATANode): void;
|
|
32
|
+
visitERBOpenTagNode(node: Nodes.ERBOpenTagNode): void;
|
|
27
33
|
visitERBContentNode(node: Nodes.ERBContentNode): void;
|
|
28
34
|
visitERBIfNode(node: Nodes.ERBIfNode): void;
|
|
29
35
|
visitERBElseNode(node: Nodes.ERBElseNode): void;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { IdentityPrinter } from "./identity-printer.js";
|
|
2
|
+
import type * as Nodes from "@herb-tools/core";
|
|
3
|
+
/**
|
|
4
|
+
* IndentPrinter - Re-indentation printer that preserves content but adjusts indentation
|
|
5
|
+
*
|
|
6
|
+
* Extends IdentityPrinter to preserve all content as-is while replacing
|
|
7
|
+
* leading whitespace on each line with the correct indentation based on
|
|
8
|
+
* the AST nesting depth.
|
|
9
|
+
*/
|
|
10
|
+
export declare class IndentPrinter extends IdentityPrinter {
|
|
11
|
+
protected indentLevel: number;
|
|
12
|
+
protected indentWidth: number;
|
|
13
|
+
private pendingIndent;
|
|
14
|
+
constructor(indentWidth?: number);
|
|
15
|
+
protected get indent(): string;
|
|
16
|
+
protected write(content: string): void;
|
|
17
|
+
visitLiteralNode(node: Nodes.LiteralNode): void;
|
|
18
|
+
visitHTMLTextNode(node: Nodes.HTMLTextNode): void;
|
|
19
|
+
visitHTMLElementNode(node: Nodes.HTMLElementNode): void;
|
|
20
|
+
visitERBIfNode(node: Nodes.ERBIfNode): void;
|
|
21
|
+
visitERBElseNode(node: Nodes.ERBElseNode): void;
|
|
22
|
+
visitERBBlockNode(node: Nodes.ERBBlockNode): void;
|
|
23
|
+
visitERBCaseNode(node: Nodes.ERBCaseNode): void;
|
|
24
|
+
visitERBWhenNode(node: Nodes.ERBWhenNode): void;
|
|
25
|
+
visitERBWhileNode(node: Nodes.ERBWhileNode): void;
|
|
26
|
+
visitERBUntilNode(node: Nodes.ERBUntilNode): void;
|
|
27
|
+
visitERBForNode(node: Nodes.ERBForNode): void;
|
|
28
|
+
visitERBBeginNode(node: Nodes.ERBBeginNode): void;
|
|
29
|
+
visitERBRescueNode(node: Nodes.ERBRescueNode): void;
|
|
30
|
+
visitERBEnsureNode(node: Nodes.ERBEnsureNode): void;
|
|
31
|
+
visitERBUnlessNode(node: Nodes.ERBUnlessNode): void;
|
|
32
|
+
/**
|
|
33
|
+
* Write content, replacing leading whitespace on each line with the current indent.
|
|
34
|
+
*
|
|
35
|
+
* Uses a pendingIndent mechanism: when content ends with a newline followed by
|
|
36
|
+
* whitespace-only, sets pendingIndent=true instead of writing the indent immediately.
|
|
37
|
+
* The indent is then applied at the correct level when the next node writes content
|
|
38
|
+
* (via the overridden write() method).
|
|
39
|
+
*/
|
|
40
|
+
protected writeWithIndent(content: string): void;
|
|
41
|
+
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { IdentityPrinter } from "./identity-printer.js";
|
|
2
|
+
export { IndentPrinter } from "./indent-printer.js";
|
|
2
3
|
export { ERBToRubyStringPrinter } from "./erb-to-ruby-string-printer.js";
|
|
3
4
|
export { PrintContext } from "./print-context.js";
|
|
4
5
|
export { Printer, DEFAULT_PRINT_OPTIONS } from "./printer.js";
|