@koalarx/nest-cli 1.2.15 → 1.2.18
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/commands/new-project/index.ts +4 -0
- package/index.js +15 -783
- package/index.ts +10 -3
- package/package.json +1 -2
|
@@ -3,6 +3,10 @@ import chalk from 'chalk'
|
|
|
3
3
|
import { execSync } from 'node:child_process'
|
|
4
4
|
import { readFileSync, writeFileSync } from 'node:fs'
|
|
5
5
|
import path from 'node:path'
|
|
6
|
+
import { fileURLToPath } from 'node:url'
|
|
7
|
+
|
|
8
|
+
const __filename = fileURLToPath(import.meta.url)
|
|
9
|
+
const __dirname = path.dirname(__filename)
|
|
6
10
|
|
|
7
11
|
export function newProject(projectName: string) {
|
|
8
12
|
copyFolder(path.join(__dirname, 'code-base/startup-project'), projectName)
|
package/index.js
CHANGED
|
@@ -30577,781 +30577,6 @@ var require_inquirer = __commonJS((exports, module) => {
|
|
|
30577
30577
|
};
|
|
30578
30578
|
});
|
|
30579
30579
|
|
|
30580
|
-
// node_modules/figlet/lib/figlet.js
|
|
30581
|
-
var require_figlet = __commonJS((exports, module) => {
|
|
30582
|
-
var figlet = figlet || function() {
|
|
30583
|
-
var FULL_WIDTH = 0, FITTING = 1, SMUSHING = 2, CONTROLLED_SMUSHING = 3;
|
|
30584
|
-
var figFonts = {};
|
|
30585
|
-
var figDefaults = {
|
|
30586
|
-
font: "Standard",
|
|
30587
|
-
fontPath: "./fonts"
|
|
30588
|
-
};
|
|
30589
|
-
function getSmushingRules(oldLayout, newLayout) {
|
|
30590
|
-
var rules = {};
|
|
30591
|
-
var val, index, len, code;
|
|
30592
|
-
var codes = [
|
|
30593
|
-
[16384, "vLayout", SMUSHING],
|
|
30594
|
-
[8192, "vLayout", FITTING],
|
|
30595
|
-
[4096, "vRule5", true],
|
|
30596
|
-
[2048, "vRule4", true],
|
|
30597
|
-
[1024, "vRule3", true],
|
|
30598
|
-
[512, "vRule2", true],
|
|
30599
|
-
[256, "vRule1", true],
|
|
30600
|
-
[128, "hLayout", SMUSHING],
|
|
30601
|
-
[64, "hLayout", FITTING],
|
|
30602
|
-
[32, "hRule6", true],
|
|
30603
|
-
[16, "hRule5", true],
|
|
30604
|
-
[8, "hRule4", true],
|
|
30605
|
-
[4, "hRule3", true],
|
|
30606
|
-
[2, "hRule2", true],
|
|
30607
|
-
[1, "hRule1", true]
|
|
30608
|
-
];
|
|
30609
|
-
val = newLayout !== null ? newLayout : oldLayout;
|
|
30610
|
-
index = 0;
|
|
30611
|
-
len = codes.length;
|
|
30612
|
-
while (index < len) {
|
|
30613
|
-
code = codes[index];
|
|
30614
|
-
if (val >= code[0]) {
|
|
30615
|
-
val = val - code[0];
|
|
30616
|
-
rules[code[1]] = typeof rules[code[1]] === "undefined" ? code[2] : rules[code[1]];
|
|
30617
|
-
} else if (code[1] !== "vLayout" && code[1] !== "hLayout") {
|
|
30618
|
-
rules[code[1]] = false;
|
|
30619
|
-
}
|
|
30620
|
-
index++;
|
|
30621
|
-
}
|
|
30622
|
-
if (typeof rules["hLayout"] === "undefined") {
|
|
30623
|
-
if (oldLayout === 0) {
|
|
30624
|
-
rules["hLayout"] = FITTING;
|
|
30625
|
-
} else if (oldLayout === -1) {
|
|
30626
|
-
rules["hLayout"] = FULL_WIDTH;
|
|
30627
|
-
} else {
|
|
30628
|
-
if (rules["hRule1"] || rules["hRule2"] || rules["hRule3"] || rules["hRule4"] || rules["hRule5"] || rules["hRule6"]) {
|
|
30629
|
-
rules["hLayout"] = CONTROLLED_SMUSHING;
|
|
30630
|
-
} else {
|
|
30631
|
-
rules["hLayout"] = SMUSHING;
|
|
30632
|
-
}
|
|
30633
|
-
}
|
|
30634
|
-
} else if (rules["hLayout"] === SMUSHING) {
|
|
30635
|
-
if (rules["hRule1"] || rules["hRule2"] || rules["hRule3"] || rules["hRule4"] || rules["hRule5"] || rules["hRule6"]) {
|
|
30636
|
-
rules["hLayout"] = CONTROLLED_SMUSHING;
|
|
30637
|
-
}
|
|
30638
|
-
}
|
|
30639
|
-
if (typeof rules["vLayout"] === "undefined") {
|
|
30640
|
-
if (rules["vRule1"] || rules["vRule2"] || rules["vRule3"] || rules["vRule4"] || rules["vRule5"]) {
|
|
30641
|
-
rules["vLayout"] = CONTROLLED_SMUSHING;
|
|
30642
|
-
} else {
|
|
30643
|
-
rules["vLayout"] = FULL_WIDTH;
|
|
30644
|
-
}
|
|
30645
|
-
} else if (rules["vLayout"] === SMUSHING) {
|
|
30646
|
-
if (rules["vRule1"] || rules["vRule2"] || rules["vRule3"] || rules["vRule4"] || rules["vRule5"]) {
|
|
30647
|
-
rules["vLayout"] = CONTROLLED_SMUSHING;
|
|
30648
|
-
}
|
|
30649
|
-
}
|
|
30650
|
-
return rules;
|
|
30651
|
-
}
|
|
30652
|
-
function hRule1_Smush(ch1, ch2, hardBlank) {
|
|
30653
|
-
if (ch1 === ch2 && ch1 !== hardBlank) {
|
|
30654
|
-
return ch1;
|
|
30655
|
-
}
|
|
30656
|
-
return false;
|
|
30657
|
-
}
|
|
30658
|
-
function hRule2_Smush(ch1, ch2) {
|
|
30659
|
-
var rule2Str = "|/\\[]{}()<>";
|
|
30660
|
-
if (ch1 === "_") {
|
|
30661
|
-
if (rule2Str.indexOf(ch2) !== -1) {
|
|
30662
|
-
return ch2;
|
|
30663
|
-
}
|
|
30664
|
-
} else if (ch2 === "_") {
|
|
30665
|
-
if (rule2Str.indexOf(ch1) !== -1) {
|
|
30666
|
-
return ch1;
|
|
30667
|
-
}
|
|
30668
|
-
}
|
|
30669
|
-
return false;
|
|
30670
|
-
}
|
|
30671
|
-
function hRule3_Smush(ch1, ch2) {
|
|
30672
|
-
var rule3Classes = "| /\\ [] {} () <>";
|
|
30673
|
-
var r3_pos1 = rule3Classes.indexOf(ch1);
|
|
30674
|
-
var r3_pos2 = rule3Classes.indexOf(ch2);
|
|
30675
|
-
if (r3_pos1 !== -1 && r3_pos2 !== -1) {
|
|
30676
|
-
if (r3_pos1 !== r3_pos2 && Math.abs(r3_pos1 - r3_pos2) !== 1) {
|
|
30677
|
-
return rule3Classes.substr(Math.max(r3_pos1, r3_pos2), 1);
|
|
30678
|
-
}
|
|
30679
|
-
}
|
|
30680
|
-
return false;
|
|
30681
|
-
}
|
|
30682
|
-
function hRule4_Smush(ch1, ch2) {
|
|
30683
|
-
var rule4Str = "[] {} ()";
|
|
30684
|
-
var r4_pos1 = rule4Str.indexOf(ch1);
|
|
30685
|
-
var r4_pos2 = rule4Str.indexOf(ch2);
|
|
30686
|
-
if (r4_pos1 !== -1 && r4_pos2 !== -1) {
|
|
30687
|
-
if (Math.abs(r4_pos1 - r4_pos2) <= 1) {
|
|
30688
|
-
return "|";
|
|
30689
|
-
}
|
|
30690
|
-
}
|
|
30691
|
-
return false;
|
|
30692
|
-
}
|
|
30693
|
-
function hRule5_Smush(ch1, ch2) {
|
|
30694
|
-
var rule5Str = "/\\ \\/ ><";
|
|
30695
|
-
var rule5Hash = { "0": "|", "3": "Y", "6": "X" };
|
|
30696
|
-
var r5_pos1 = rule5Str.indexOf(ch1);
|
|
30697
|
-
var r5_pos2 = rule5Str.indexOf(ch2);
|
|
30698
|
-
if (r5_pos1 !== -1 && r5_pos2 !== -1) {
|
|
30699
|
-
if (r5_pos2 - r5_pos1 === 1) {
|
|
30700
|
-
return rule5Hash[r5_pos1];
|
|
30701
|
-
}
|
|
30702
|
-
}
|
|
30703
|
-
return false;
|
|
30704
|
-
}
|
|
30705
|
-
function hRule6_Smush(ch1, ch2, hardBlank) {
|
|
30706
|
-
if (ch1 === hardBlank && ch2 === hardBlank) {
|
|
30707
|
-
return hardBlank;
|
|
30708
|
-
}
|
|
30709
|
-
return false;
|
|
30710
|
-
}
|
|
30711
|
-
function vRule1_Smush(ch1, ch2) {
|
|
30712
|
-
if (ch1 === ch2) {
|
|
30713
|
-
return ch1;
|
|
30714
|
-
}
|
|
30715
|
-
return false;
|
|
30716
|
-
}
|
|
30717
|
-
function vRule2_Smush(ch1, ch2) {
|
|
30718
|
-
var rule2Str = "|/\\[]{}()<>";
|
|
30719
|
-
if (ch1 === "_") {
|
|
30720
|
-
if (rule2Str.indexOf(ch2) !== -1) {
|
|
30721
|
-
return ch2;
|
|
30722
|
-
}
|
|
30723
|
-
} else if (ch2 === "_") {
|
|
30724
|
-
if (rule2Str.indexOf(ch1) !== -1) {
|
|
30725
|
-
return ch1;
|
|
30726
|
-
}
|
|
30727
|
-
}
|
|
30728
|
-
return false;
|
|
30729
|
-
}
|
|
30730
|
-
function vRule3_Smush(ch1, ch2) {
|
|
30731
|
-
var rule3Classes = "| /\\ [] {} () <>";
|
|
30732
|
-
var r3_pos1 = rule3Classes.indexOf(ch1);
|
|
30733
|
-
var r3_pos2 = rule3Classes.indexOf(ch2);
|
|
30734
|
-
if (r3_pos1 !== -1 && r3_pos2 !== -1) {
|
|
30735
|
-
if (r3_pos1 !== r3_pos2 && Math.abs(r3_pos1 - r3_pos2) !== 1) {
|
|
30736
|
-
return rule3Classes.substr(Math.max(r3_pos1, r3_pos2), 1);
|
|
30737
|
-
}
|
|
30738
|
-
}
|
|
30739
|
-
return false;
|
|
30740
|
-
}
|
|
30741
|
-
function vRule4_Smush(ch1, ch2) {
|
|
30742
|
-
if (ch1 === "-" && ch2 === "_" || ch1 === "_" && ch2 === "-") {
|
|
30743
|
-
return "=";
|
|
30744
|
-
}
|
|
30745
|
-
return false;
|
|
30746
|
-
}
|
|
30747
|
-
function vRule5_Smush(ch1, ch2) {
|
|
30748
|
-
if (ch1 === "|" && ch2 === "|") {
|
|
30749
|
-
return "|";
|
|
30750
|
-
}
|
|
30751
|
-
return false;
|
|
30752
|
-
}
|
|
30753
|
-
function uni_Smush(ch1, ch2, hardBlank) {
|
|
30754
|
-
if (ch2 === " " || ch2 === "") {
|
|
30755
|
-
return ch1;
|
|
30756
|
-
} else if (ch2 === hardBlank && ch1 !== " ") {
|
|
30757
|
-
return ch1;
|
|
30758
|
-
} else {
|
|
30759
|
-
return ch2;
|
|
30760
|
-
}
|
|
30761
|
-
}
|
|
30762
|
-
function canVerticalSmush(txt1, txt2, opts) {
|
|
30763
|
-
if (opts.fittingRules.vLayout === FULL_WIDTH) {
|
|
30764
|
-
return "invalid";
|
|
30765
|
-
}
|
|
30766
|
-
var ii, len = Math.min(txt1.length, txt2.length);
|
|
30767
|
-
var ch1, ch2, endSmush = false, validSmush;
|
|
30768
|
-
if (len === 0) {
|
|
30769
|
-
return "invalid";
|
|
30770
|
-
}
|
|
30771
|
-
for (ii = 0;ii < len; ii++) {
|
|
30772
|
-
ch1 = txt1.substr(ii, 1);
|
|
30773
|
-
ch2 = txt2.substr(ii, 1);
|
|
30774
|
-
if (ch1 !== " " && ch2 !== " ") {
|
|
30775
|
-
if (opts.fittingRules.vLayout === FITTING) {
|
|
30776
|
-
return "invalid";
|
|
30777
|
-
} else if (opts.fittingRules.vLayout === SMUSHING) {
|
|
30778
|
-
return "end";
|
|
30779
|
-
} else {
|
|
30780
|
-
if (vRule5_Smush(ch1, ch2)) {
|
|
30781
|
-
endSmush = endSmush || false;
|
|
30782
|
-
continue;
|
|
30783
|
-
}
|
|
30784
|
-
validSmush = false;
|
|
30785
|
-
validSmush = opts.fittingRules.vRule1 ? vRule1_Smush(ch1, ch2) : validSmush;
|
|
30786
|
-
validSmush = !validSmush && opts.fittingRules.vRule2 ? vRule2_Smush(ch1, ch2) : validSmush;
|
|
30787
|
-
validSmush = !validSmush && opts.fittingRules.vRule3 ? vRule3_Smush(ch1, ch2) : validSmush;
|
|
30788
|
-
validSmush = !validSmush && opts.fittingRules.vRule4 ? vRule4_Smush(ch1, ch2) : validSmush;
|
|
30789
|
-
endSmush = true;
|
|
30790
|
-
if (!validSmush) {
|
|
30791
|
-
return "invalid";
|
|
30792
|
-
}
|
|
30793
|
-
}
|
|
30794
|
-
}
|
|
30795
|
-
}
|
|
30796
|
-
if (endSmush) {
|
|
30797
|
-
return "end";
|
|
30798
|
-
} else {
|
|
30799
|
-
return "valid";
|
|
30800
|
-
}
|
|
30801
|
-
}
|
|
30802
|
-
function getVerticalSmushDist(lines1, lines2, opts) {
|
|
30803
|
-
var maxDist = lines1.length;
|
|
30804
|
-
var len1 = lines1.length;
|
|
30805
|
-
var len2 = lines2.length;
|
|
30806
|
-
var subLines1, subLines2, slen;
|
|
30807
|
-
var curDist = 1;
|
|
30808
|
-
var ii, ret, result;
|
|
30809
|
-
while (curDist <= maxDist) {
|
|
30810
|
-
subLines1 = lines1.slice(Math.max(0, len1 - curDist), len1);
|
|
30811
|
-
subLines2 = lines2.slice(0, Math.min(maxDist, curDist));
|
|
30812
|
-
slen = subLines2.length;
|
|
30813
|
-
result = "";
|
|
30814
|
-
for (ii = 0;ii < slen; ii++) {
|
|
30815
|
-
ret = canVerticalSmush(subLines1[ii], subLines2[ii], opts);
|
|
30816
|
-
if (ret === "end") {
|
|
30817
|
-
result = ret;
|
|
30818
|
-
} else if (ret === "invalid") {
|
|
30819
|
-
result = ret;
|
|
30820
|
-
break;
|
|
30821
|
-
} else {
|
|
30822
|
-
if (result === "") {
|
|
30823
|
-
result = "valid";
|
|
30824
|
-
}
|
|
30825
|
-
}
|
|
30826
|
-
}
|
|
30827
|
-
if (result === "invalid") {
|
|
30828
|
-
curDist--;
|
|
30829
|
-
break;
|
|
30830
|
-
}
|
|
30831
|
-
if (result === "end") {
|
|
30832
|
-
break;
|
|
30833
|
-
}
|
|
30834
|
-
if (result === "valid") {
|
|
30835
|
-
curDist++;
|
|
30836
|
-
}
|
|
30837
|
-
}
|
|
30838
|
-
return Math.min(maxDist, curDist);
|
|
30839
|
-
}
|
|
30840
|
-
function verticallySmushLines(line1, line2, opts) {
|
|
30841
|
-
var ii, len = Math.min(line1.length, line2.length);
|
|
30842
|
-
var ch1, ch2, result = "", validSmush;
|
|
30843
|
-
for (ii = 0;ii < len; ii++) {
|
|
30844
|
-
ch1 = line1.substr(ii, 1);
|
|
30845
|
-
ch2 = line2.substr(ii, 1);
|
|
30846
|
-
if (ch1 !== " " && ch2 !== " ") {
|
|
30847
|
-
if (opts.fittingRules.vLayout === FITTING) {
|
|
30848
|
-
result += uni_Smush(ch1, ch2);
|
|
30849
|
-
} else if (opts.fittingRules.vLayout === SMUSHING) {
|
|
30850
|
-
result += uni_Smush(ch1, ch2);
|
|
30851
|
-
} else {
|
|
30852
|
-
validSmush = opts.fittingRules.vRule5 ? vRule5_Smush(ch1, ch2) : validSmush;
|
|
30853
|
-
validSmush = !validSmush && opts.fittingRules.vRule1 ? vRule1_Smush(ch1, ch2) : validSmush;
|
|
30854
|
-
validSmush = !validSmush && opts.fittingRules.vRule2 ? vRule2_Smush(ch1, ch2) : validSmush;
|
|
30855
|
-
validSmush = !validSmush && opts.fittingRules.vRule3 ? vRule3_Smush(ch1, ch2) : validSmush;
|
|
30856
|
-
validSmush = !validSmush && opts.fittingRules.vRule4 ? vRule4_Smush(ch1, ch2) : validSmush;
|
|
30857
|
-
result += validSmush;
|
|
30858
|
-
}
|
|
30859
|
-
} else {
|
|
30860
|
-
result += uni_Smush(ch1, ch2);
|
|
30861
|
-
}
|
|
30862
|
-
}
|
|
30863
|
-
return result;
|
|
30864
|
-
}
|
|
30865
|
-
function verticalSmush(lines1, lines2, overlap, opts) {
|
|
30866
|
-
var len1 = lines1.length;
|
|
30867
|
-
var len2 = lines2.length;
|
|
30868
|
-
var piece1 = lines1.slice(0, Math.max(0, len1 - overlap));
|
|
30869
|
-
var piece2_1 = lines1.slice(Math.max(0, len1 - overlap), len1);
|
|
30870
|
-
var piece2_2 = lines2.slice(0, Math.min(overlap, len2));
|
|
30871
|
-
var ii, len, line, piece2 = [], piece3, result = [];
|
|
30872
|
-
len = piece2_1.length;
|
|
30873
|
-
for (ii = 0;ii < len; ii++) {
|
|
30874
|
-
if (ii >= len2) {
|
|
30875
|
-
line = piece2_1[ii];
|
|
30876
|
-
} else {
|
|
30877
|
-
line = verticallySmushLines(piece2_1[ii], piece2_2[ii], opts);
|
|
30878
|
-
}
|
|
30879
|
-
piece2.push(line);
|
|
30880
|
-
}
|
|
30881
|
-
piece3 = lines2.slice(Math.min(overlap, len2), len2);
|
|
30882
|
-
return result.concat(piece1, piece2, piece3);
|
|
30883
|
-
}
|
|
30884
|
-
function padLines(lines, numSpaces) {
|
|
30885
|
-
var ii, len = lines.length, padding = "";
|
|
30886
|
-
for (ii = 0;ii < numSpaces; ii++) {
|
|
30887
|
-
padding += " ";
|
|
30888
|
-
}
|
|
30889
|
-
for (ii = 0;ii < len; ii++) {
|
|
30890
|
-
lines[ii] += padding;
|
|
30891
|
-
}
|
|
30892
|
-
}
|
|
30893
|
-
function smushVerticalFigLines(output, lines, opts) {
|
|
30894
|
-
var len1 = output[0].length;
|
|
30895
|
-
var len2 = lines[0].length;
|
|
30896
|
-
var overlap;
|
|
30897
|
-
if (len1 > len2) {
|
|
30898
|
-
padLines(lines, len1 - len2);
|
|
30899
|
-
} else if (len2 > len1) {
|
|
30900
|
-
padLines(output, len2 - len1);
|
|
30901
|
-
}
|
|
30902
|
-
overlap = getVerticalSmushDist(output, lines, opts);
|
|
30903
|
-
return verticalSmush(output, lines, overlap, opts);
|
|
30904
|
-
}
|
|
30905
|
-
function getHorizontalSmushLength(txt1, txt2, opts) {
|
|
30906
|
-
if (opts.fittingRules.hLayout === FULL_WIDTH) {
|
|
30907
|
-
return 0;
|
|
30908
|
-
}
|
|
30909
|
-
var ii, len1 = txt1.length, len2 = txt2.length;
|
|
30910
|
-
var maxDist = len1;
|
|
30911
|
-
var curDist = 1;
|
|
30912
|
-
var breakAfter = false;
|
|
30913
|
-
var validSmush = false;
|
|
30914
|
-
var seg1, seg2, ch1, ch2;
|
|
30915
|
-
if (len1 === 0) {
|
|
30916
|
-
return 0;
|
|
30917
|
-
}
|
|
30918
|
-
distCal:
|
|
30919
|
-
while (curDist <= maxDist) {
|
|
30920
|
-
seg1 = txt1.substr(len1 - curDist, curDist);
|
|
30921
|
-
seg2 = txt2.substr(0, Math.min(curDist, len2));
|
|
30922
|
-
for (ii = 0;ii < Math.min(curDist, len2); ii++) {
|
|
30923
|
-
ch1 = seg1.substr(ii, 1);
|
|
30924
|
-
ch2 = seg2.substr(ii, 1);
|
|
30925
|
-
if (ch1 !== " " && ch2 !== " ") {
|
|
30926
|
-
if (opts.fittingRules.hLayout === FITTING) {
|
|
30927
|
-
curDist = curDist - 1;
|
|
30928
|
-
break distCal;
|
|
30929
|
-
} else if (opts.fittingRules.hLayout === SMUSHING) {
|
|
30930
|
-
if (ch1 === opts.hardBlank || ch2 === opts.hardBlank) {
|
|
30931
|
-
curDist = curDist - 1;
|
|
30932
|
-
}
|
|
30933
|
-
break distCal;
|
|
30934
|
-
} else {
|
|
30935
|
-
breakAfter = true;
|
|
30936
|
-
validSmush = false;
|
|
30937
|
-
validSmush = opts.fittingRules.hRule1 ? hRule1_Smush(ch1, ch2, opts.hardBlank) : validSmush;
|
|
30938
|
-
validSmush = !validSmush && opts.fittingRules.hRule2 ? hRule2_Smush(ch1, ch2, opts.hardBlank) : validSmush;
|
|
30939
|
-
validSmush = !validSmush && opts.fittingRules.hRule3 ? hRule3_Smush(ch1, ch2, opts.hardBlank) : validSmush;
|
|
30940
|
-
validSmush = !validSmush && opts.fittingRules.hRule4 ? hRule4_Smush(ch1, ch2, opts.hardBlank) : validSmush;
|
|
30941
|
-
validSmush = !validSmush && opts.fittingRules.hRule5 ? hRule5_Smush(ch1, ch2, opts.hardBlank) : validSmush;
|
|
30942
|
-
validSmush = !validSmush && opts.fittingRules.hRule6 ? hRule6_Smush(ch1, ch2, opts.hardBlank) : validSmush;
|
|
30943
|
-
if (!validSmush) {
|
|
30944
|
-
curDist = curDist - 1;
|
|
30945
|
-
break distCal;
|
|
30946
|
-
}
|
|
30947
|
-
}
|
|
30948
|
-
}
|
|
30949
|
-
}
|
|
30950
|
-
if (breakAfter) {
|
|
30951
|
-
break;
|
|
30952
|
-
}
|
|
30953
|
-
curDist++;
|
|
30954
|
-
}
|
|
30955
|
-
return Math.min(maxDist, curDist);
|
|
30956
|
-
}
|
|
30957
|
-
function horizontalSmush(textBlock1, textBlock2, overlap, opts) {
|
|
30958
|
-
var ii, jj, ch, outputFig = [], overlapStart, piece1, piece2, piece3, len1, len2, txt1, txt2;
|
|
30959
|
-
for (ii = 0;ii < opts.height; ii++) {
|
|
30960
|
-
txt1 = textBlock1[ii];
|
|
30961
|
-
txt2 = textBlock2[ii];
|
|
30962
|
-
len1 = txt1.length;
|
|
30963
|
-
len2 = txt2.length;
|
|
30964
|
-
overlapStart = len1 - overlap;
|
|
30965
|
-
piece1 = txt1.substr(0, Math.max(0, overlapStart));
|
|
30966
|
-
piece2 = "";
|
|
30967
|
-
var seg1 = txt1.substr(Math.max(0, len1 - overlap), overlap);
|
|
30968
|
-
var seg2 = txt2.substr(0, Math.min(overlap, len2));
|
|
30969
|
-
for (jj = 0;jj < overlap; jj++) {
|
|
30970
|
-
var ch1 = jj < len1 ? seg1.substr(jj, 1) : " ";
|
|
30971
|
-
var ch2 = jj < len2 ? seg2.substr(jj, 1) : " ";
|
|
30972
|
-
if (ch1 !== " " && ch2 !== " ") {
|
|
30973
|
-
if (opts.fittingRules.hLayout === FITTING) {
|
|
30974
|
-
piece2 += uni_Smush(ch1, ch2, opts.hardBlank);
|
|
30975
|
-
} else if (opts.fittingRules.hLayout === SMUSHING) {
|
|
30976
|
-
piece2 += uni_Smush(ch1, ch2, opts.hardBlank);
|
|
30977
|
-
} else {
|
|
30978
|
-
var nextCh = "";
|
|
30979
|
-
nextCh = !nextCh && opts.fittingRules.hRule1 ? hRule1_Smush(ch1, ch2, opts.hardBlank) : nextCh;
|
|
30980
|
-
nextCh = !nextCh && opts.fittingRules.hRule2 ? hRule2_Smush(ch1, ch2, opts.hardBlank) : nextCh;
|
|
30981
|
-
nextCh = !nextCh && opts.fittingRules.hRule3 ? hRule3_Smush(ch1, ch2, opts.hardBlank) : nextCh;
|
|
30982
|
-
nextCh = !nextCh && opts.fittingRules.hRule4 ? hRule4_Smush(ch1, ch2, opts.hardBlank) : nextCh;
|
|
30983
|
-
nextCh = !nextCh && opts.fittingRules.hRule5 ? hRule5_Smush(ch1, ch2, opts.hardBlank) : nextCh;
|
|
30984
|
-
nextCh = !nextCh && opts.fittingRules.hRule6 ? hRule6_Smush(ch1, ch2, opts.hardBlank) : nextCh;
|
|
30985
|
-
nextCh = nextCh || uni_Smush(ch1, ch2, opts.hardBlank);
|
|
30986
|
-
piece2 += nextCh;
|
|
30987
|
-
}
|
|
30988
|
-
} else {
|
|
30989
|
-
piece2 += uni_Smush(ch1, ch2, opts.hardBlank);
|
|
30990
|
-
}
|
|
30991
|
-
}
|
|
30992
|
-
if (overlap >= len2) {
|
|
30993
|
-
piece3 = "";
|
|
30994
|
-
} else {
|
|
30995
|
-
piece3 = txt2.substr(overlap, Math.max(0, len2 - overlap));
|
|
30996
|
-
}
|
|
30997
|
-
outputFig[ii] = piece1 + piece2 + piece3;
|
|
30998
|
-
}
|
|
30999
|
-
return outputFig;
|
|
31000
|
-
}
|
|
31001
|
-
function generateFigTextLine(txt, figChars, opts) {
|
|
31002
|
-
var charIndex, figChar, overlap = 0, row, outputFigText = [], len = opts.height;
|
|
31003
|
-
for (row = 0;row < len; row++) {
|
|
31004
|
-
outputFigText[row] = "";
|
|
31005
|
-
}
|
|
31006
|
-
if (opts.printDirection === 1) {
|
|
31007
|
-
txt = txt.split("").reverse().join("");
|
|
31008
|
-
}
|
|
31009
|
-
len = txt.length;
|
|
31010
|
-
for (charIndex = 0;charIndex < len; charIndex++) {
|
|
31011
|
-
figChar = figChars[txt.substr(charIndex, 1).charCodeAt(0)];
|
|
31012
|
-
if (figChar) {
|
|
31013
|
-
if (opts.fittingRules.hLayout !== FULL_WIDTH) {
|
|
31014
|
-
overlap = 1e4;
|
|
31015
|
-
for (row = 0;row < opts.height; row++) {
|
|
31016
|
-
overlap = Math.min(overlap, getHorizontalSmushLength(outputFigText[row], figChar[row], opts));
|
|
31017
|
-
}
|
|
31018
|
-
overlap = overlap === 1e4 ? 0 : overlap;
|
|
31019
|
-
}
|
|
31020
|
-
outputFigText = horizontalSmush(outputFigText, figChar, overlap, opts);
|
|
31021
|
-
}
|
|
31022
|
-
}
|
|
31023
|
-
if (opts.showHardBlanks !== true) {
|
|
31024
|
-
len = outputFigText.length;
|
|
31025
|
-
for (row = 0;row < len; row++) {
|
|
31026
|
-
outputFigText[row] = outputFigText[row].replace(new RegExp("\\" + opts.hardBlank, "g"), " ");
|
|
31027
|
-
}
|
|
31028
|
-
}
|
|
31029
|
-
return outputFigText;
|
|
31030
|
-
}
|
|
31031
|
-
var getHorizontalFittingRules = function(layout, options) {
|
|
31032
|
-
var props = ["hLayout", "hRule1", "hRule2", "hRule3", "hRule4", "hRule5", "hRule6"], params = {}, prop, ii;
|
|
31033
|
-
if (layout === "default") {
|
|
31034
|
-
for (ii = 0;ii < props.length; ii++) {
|
|
31035
|
-
params[props[ii]] = options.fittingRules[props[ii]];
|
|
31036
|
-
}
|
|
31037
|
-
} else if (layout === "full") {
|
|
31038
|
-
params = { hLayout: FULL_WIDTH, hRule1: false, hRule2: false, hRule3: false, hRule4: false, hRule5: false, hRule6: false };
|
|
31039
|
-
} else if (layout === "fitted") {
|
|
31040
|
-
params = { hLayout: FITTING, hRule1: false, hRule2: false, hRule3: false, hRule4: false, hRule5: false, hRule6: false };
|
|
31041
|
-
} else if (layout === "controlled smushing") {
|
|
31042
|
-
params = { hLayout: CONTROLLED_SMUSHING, hRule1: true, hRule2: true, hRule3: true, hRule4: true, hRule5: true, hRule6: true };
|
|
31043
|
-
} else if (layout === "universal smushing") {
|
|
31044
|
-
params = { hLayout: SMUSHING, hRule1: false, hRule2: false, hRule3: false, hRule4: false, hRule5: false, hRule6: false };
|
|
31045
|
-
} else {
|
|
31046
|
-
return;
|
|
31047
|
-
}
|
|
31048
|
-
return params;
|
|
31049
|
-
};
|
|
31050
|
-
var getVerticalFittingRules = function(layout, options) {
|
|
31051
|
-
var props = ["vLayout", "vRule1", "vRule2", "vRule3", "vRule4", "vRule5"], params = {}, prop, ii;
|
|
31052
|
-
if (layout === "default") {
|
|
31053
|
-
for (ii = 0;ii < props.length; ii++) {
|
|
31054
|
-
params[props[ii]] = options.fittingRules[props[ii]];
|
|
31055
|
-
}
|
|
31056
|
-
} else if (layout === "full") {
|
|
31057
|
-
params = { vLayout: FULL_WIDTH, vRule1: false, vRule2: false, vRule3: false, vRule4: false, vRule5: false };
|
|
31058
|
-
} else if (layout === "fitted") {
|
|
31059
|
-
params = { vLayout: FITTING, vRule1: false, vRule2: false, vRule3: false, vRule4: false, vRule5: false };
|
|
31060
|
-
} else if (layout === "controlled smushing") {
|
|
31061
|
-
params = { vLayout: CONTROLLED_SMUSHING, vRule1: true, vRule2: true, vRule3: true, vRule4: true, vRule5: true };
|
|
31062
|
-
} else if (layout === "universal smushing") {
|
|
31063
|
-
params = { vLayout: SMUSHING, vRule1: false, vRule2: false, vRule3: false, vRule4: false, vRule5: false };
|
|
31064
|
-
} else {
|
|
31065
|
-
return;
|
|
31066
|
-
}
|
|
31067
|
-
return params;
|
|
31068
|
-
};
|
|
31069
|
-
var generateText = function(fontName, options, txt) {
|
|
31070
|
-
txt = txt.replace(/\r\n/g, `
|
|
31071
|
-
`).replace(/\r/g, `
|
|
31072
|
-
`);
|
|
31073
|
-
var lines = txt.split(`
|
|
31074
|
-
`);
|
|
31075
|
-
var figLines = [];
|
|
31076
|
-
var ii, len, output;
|
|
31077
|
-
len = lines.length;
|
|
31078
|
-
for (ii = 0;ii < len; ii++) {
|
|
31079
|
-
figLines.push(generateFigTextLine(lines[ii], figFonts[fontName], options));
|
|
31080
|
-
}
|
|
31081
|
-
len = figLines.length;
|
|
31082
|
-
output = figLines[0];
|
|
31083
|
-
for (ii = 1;ii < len; ii++) {
|
|
31084
|
-
output = smushVerticalFigLines(output, figLines[ii], options);
|
|
31085
|
-
}
|
|
31086
|
-
return output.join(`
|
|
31087
|
-
`);
|
|
31088
|
-
};
|
|
31089
|
-
var me = function(txt, options, next) {
|
|
31090
|
-
me.text(txt, options, next);
|
|
31091
|
-
};
|
|
31092
|
-
me.text = function(txt, options, next) {
|
|
31093
|
-
var fontName = "";
|
|
31094
|
-
txt = txt + "";
|
|
31095
|
-
if (typeof arguments[1] === "function") {
|
|
31096
|
-
next = options;
|
|
31097
|
-
options = {};
|
|
31098
|
-
options.font = figDefaults.font;
|
|
31099
|
-
}
|
|
31100
|
-
if (typeof options === "string") {
|
|
31101
|
-
fontName = options;
|
|
31102
|
-
options = {};
|
|
31103
|
-
} else {
|
|
31104
|
-
options = options || {};
|
|
31105
|
-
fontName = options.font || figDefaults.font;
|
|
31106
|
-
}
|
|
31107
|
-
me.loadFont(fontName, function(err, fontOpts) {
|
|
31108
|
-
if (err) {
|
|
31109
|
-
return next(err);
|
|
31110
|
-
}
|
|
31111
|
-
next(null, generateText(fontName, _reworkFontOpts(fontOpts, options), txt));
|
|
31112
|
-
});
|
|
31113
|
-
};
|
|
31114
|
-
me.textSync = function(txt, options) {
|
|
31115
|
-
var fontName = "";
|
|
31116
|
-
txt = txt + "";
|
|
31117
|
-
if (typeof options === "string") {
|
|
31118
|
-
fontName = options;
|
|
31119
|
-
options = {};
|
|
31120
|
-
} else {
|
|
31121
|
-
options = options || {};
|
|
31122
|
-
fontName = options.font || figDefaults.font;
|
|
31123
|
-
}
|
|
31124
|
-
var fontOpts = _reworkFontOpts(me.loadFontSync(fontName), options);
|
|
31125
|
-
return generateText(fontName, fontOpts, txt);
|
|
31126
|
-
};
|
|
31127
|
-
function _reworkFontOpts(fontOpts, options) {
|
|
31128
|
-
var myOpts = JSON.parse(JSON.stringify(fontOpts)), params, prop;
|
|
31129
|
-
if (typeof options.horizontalLayout !== "undefined") {
|
|
31130
|
-
params = getHorizontalFittingRules(options.horizontalLayout, fontOpts);
|
|
31131
|
-
for (prop in params) {
|
|
31132
|
-
myOpts.fittingRules[prop] = params[prop];
|
|
31133
|
-
}
|
|
31134
|
-
}
|
|
31135
|
-
if (typeof options.verticalLayout !== "undefined") {
|
|
31136
|
-
params = getVerticalFittingRules(options.verticalLayout, fontOpts);
|
|
31137
|
-
for (prop in params) {
|
|
31138
|
-
myOpts.fittingRules[prop] = params[prop];
|
|
31139
|
-
}
|
|
31140
|
-
}
|
|
31141
|
-
myOpts.printDirection = typeof options.printDirection !== "undefined" ? options.printDirection : fontOpts.printDirection;
|
|
31142
|
-
myOpts.showHardBlanks = options.showHardBlanks || false;
|
|
31143
|
-
return myOpts;
|
|
31144
|
-
}
|
|
31145
|
-
me.metadata = function(fontName, next) {
|
|
31146
|
-
fontName = fontName + "";
|
|
31147
|
-
me.loadFont(fontName, function(err, fontOpts) {
|
|
31148
|
-
if (err) {
|
|
31149
|
-
next(err);
|
|
31150
|
-
return;
|
|
31151
|
-
}
|
|
31152
|
-
next(null, fontOpts, figFonts[fontName].comment);
|
|
31153
|
-
});
|
|
31154
|
-
};
|
|
31155
|
-
me.defaults = function(opts) {
|
|
31156
|
-
if (typeof opts === "object" && opts !== null) {
|
|
31157
|
-
for (var prop in opts) {
|
|
31158
|
-
if (opts.hasOwnProperty(prop)) {
|
|
31159
|
-
figDefaults[prop] = opts[prop];
|
|
31160
|
-
}
|
|
31161
|
-
}
|
|
31162
|
-
}
|
|
31163
|
-
return JSON.parse(JSON.stringify(figDefaults));
|
|
31164
|
-
};
|
|
31165
|
-
me.parseFont = function(fontName, data) {
|
|
31166
|
-
data = data.replace(/\r\n/g, `
|
|
31167
|
-
`).replace(/\r/g, `
|
|
31168
|
-
`);
|
|
31169
|
-
figFonts[fontName] = {};
|
|
31170
|
-
var lines = data.split(`
|
|
31171
|
-
`);
|
|
31172
|
-
var headerData = lines.splice(0, 1)[0].split(" ");
|
|
31173
|
-
var figFont = figFonts[fontName];
|
|
31174
|
-
var opts = {};
|
|
31175
|
-
opts.hardBlank = headerData[0].substr(5, 1);
|
|
31176
|
-
opts.height = parseInt(headerData[1], 10);
|
|
31177
|
-
opts.baseline = parseInt(headerData[2], 10);
|
|
31178
|
-
opts.maxLength = parseInt(headerData[3], 10);
|
|
31179
|
-
opts.oldLayout = parseInt(headerData[4], 10);
|
|
31180
|
-
opts.numCommentLines = parseInt(headerData[5], 10);
|
|
31181
|
-
opts.printDirection = headerData.length >= 6 ? parseInt(headerData[6], 10) : 0;
|
|
31182
|
-
opts.fullLayout = headerData.length >= 7 ? parseInt(headerData[7], 10) : null;
|
|
31183
|
-
opts.codeTagCount = headerData.length >= 8 ? parseInt(headerData[8], 10) : null;
|
|
31184
|
-
opts.fittingRules = getSmushingRules(opts.oldLayout, opts.fullLayout);
|
|
31185
|
-
figFont.options = opts;
|
|
31186
|
-
if (opts.hardBlank.length !== 1 || isNaN(opts.height) || isNaN(opts.baseline) || isNaN(opts.maxLength) || isNaN(opts.oldLayout) || isNaN(opts.numCommentLines)) {
|
|
31187
|
-
throw new Error("FIGlet header contains invalid values.");
|
|
31188
|
-
}
|
|
31189
|
-
var charNums = [], ii;
|
|
31190
|
-
for (ii = 32;ii <= 126; ii++) {
|
|
31191
|
-
charNums.push(ii);
|
|
31192
|
-
}
|
|
31193
|
-
charNums = charNums.concat(196, 214, 220, 228, 246, 252, 223);
|
|
31194
|
-
if (lines.length < opts.numCommentLines + opts.height * charNums.length) {
|
|
31195
|
-
throw new Error("FIGlet file is missing data.");
|
|
31196
|
-
}
|
|
31197
|
-
var cNum, endCharRegEx, parseError = false;
|
|
31198
|
-
figFont.comment = lines.splice(0, opts.numCommentLines).join(`
|
|
31199
|
-
`);
|
|
31200
|
-
figFont.numChars = 0;
|
|
31201
|
-
while (lines.length > 0 && figFont.numChars < charNums.length) {
|
|
31202
|
-
cNum = charNums[figFont.numChars];
|
|
31203
|
-
figFont[cNum] = lines.splice(0, opts.height);
|
|
31204
|
-
for (ii = 0;ii < opts.height; ii++) {
|
|
31205
|
-
if (typeof figFont[cNum][ii] === "undefined") {
|
|
31206
|
-
figFont[cNum][ii] = "";
|
|
31207
|
-
} else {
|
|
31208
|
-
endCharRegEx = new RegExp("\\" + figFont[cNum][ii].substr(figFont[cNum][ii].length - 1, 1) + "+$");
|
|
31209
|
-
figFont[cNum][ii] = figFont[cNum][ii].replace(endCharRegEx, "");
|
|
31210
|
-
}
|
|
31211
|
-
}
|
|
31212
|
-
figFont.numChars++;
|
|
31213
|
-
}
|
|
31214
|
-
while (lines.length > 0) {
|
|
31215
|
-
cNum = lines.splice(0, 1)[0].split(" ")[0];
|
|
31216
|
-
if (/^0[xX][0-9a-fA-F]+$/.test(cNum)) {
|
|
31217
|
-
cNum = parseInt(cNum, 16);
|
|
31218
|
-
} else if (/^0[0-7]+$/.test(cNum)) {
|
|
31219
|
-
cNum = parseInt(cNum, 8);
|
|
31220
|
-
} else if (/^[0-9]+$/.test(cNum)) {
|
|
31221
|
-
cNum = parseInt(cNum, 10);
|
|
31222
|
-
} else if (/^-0[xX][0-9a-fA-F]+$/.test(cNum)) {
|
|
31223
|
-
cNum = parseInt(cNum, 16);
|
|
31224
|
-
} else {
|
|
31225
|
-
if (cNum === "") {
|
|
31226
|
-
break;
|
|
31227
|
-
}
|
|
31228
|
-
console.log("Invalid data:" + cNum);
|
|
31229
|
-
parseError = true;
|
|
31230
|
-
break;
|
|
31231
|
-
}
|
|
31232
|
-
figFont[cNum] = lines.splice(0, opts.height);
|
|
31233
|
-
for (ii = 0;ii < opts.height; ii++) {
|
|
31234
|
-
if (typeof figFont[cNum][ii] === "undefined") {
|
|
31235
|
-
figFont[cNum][ii] = "";
|
|
31236
|
-
} else {
|
|
31237
|
-
endCharRegEx = new RegExp("\\" + figFont[cNum][ii].substr(figFont[cNum][ii].length - 1, 1) + "+$");
|
|
31238
|
-
figFont[cNum][ii] = figFont[cNum][ii].replace(endCharRegEx, "");
|
|
31239
|
-
}
|
|
31240
|
-
}
|
|
31241
|
-
figFont.numChars++;
|
|
31242
|
-
}
|
|
31243
|
-
if (parseError === true) {
|
|
31244
|
-
throw new Error("Error parsing data.");
|
|
31245
|
-
}
|
|
31246
|
-
return opts;
|
|
31247
|
-
};
|
|
31248
|
-
me.loadFont = function(fontName, next) {
|
|
31249
|
-
if (figFonts[fontName]) {
|
|
31250
|
-
next(null, figFonts[fontName].options);
|
|
31251
|
-
return;
|
|
31252
|
-
}
|
|
31253
|
-
if (typeof fetch !== "function") {
|
|
31254
|
-
console.error("figlet.js requires the fetch API or a fetch polyfill such as https://cdnjs.com/libraries/fetch");
|
|
31255
|
-
throw new Error("fetch is required for figlet.js to work.");
|
|
31256
|
-
}
|
|
31257
|
-
fetch(figDefaults.fontPath + "/" + fontName + ".flf").then(function(response) {
|
|
31258
|
-
if (response.ok) {
|
|
31259
|
-
return response.text();
|
|
31260
|
-
}
|
|
31261
|
-
console.log("Unexpected response", response);
|
|
31262
|
-
throw new Error("Network response was not ok.");
|
|
31263
|
-
}).then(function(text) {
|
|
31264
|
-
next(null, me.parseFont(fontName, text));
|
|
31265
|
-
}).catch(next);
|
|
31266
|
-
};
|
|
31267
|
-
me.loadFontSync = function(name) {
|
|
31268
|
-
if (figFonts[name]) {
|
|
31269
|
-
return figFonts[name].options;
|
|
31270
|
-
}
|
|
31271
|
-
throw new Error("synchronous font loading is not implemented for the browser");
|
|
31272
|
-
};
|
|
31273
|
-
me.preloadFonts = function(fonts, next) {
|
|
31274
|
-
if (typeof jQuery === "undefined") {
|
|
31275
|
-
throw new Error("jQuery is required for ajax method to work.");
|
|
31276
|
-
}
|
|
31277
|
-
jQuery.when.apply(this, fonts.map(function(name) {
|
|
31278
|
-
return jQuery.get(figDefaults.fontPath + "/" + name + ".flf");
|
|
31279
|
-
})).then(function() {
|
|
31280
|
-
var args = fonts.length > 1 ? arguments : [arguments];
|
|
31281
|
-
for (var i in fonts) {
|
|
31282
|
-
me.parseFont(fonts[i], args[i][0]);
|
|
31283
|
-
}
|
|
31284
|
-
if (next)
|
|
31285
|
-
next();
|
|
31286
|
-
});
|
|
31287
|
-
};
|
|
31288
|
-
me.figFonts = figFonts;
|
|
31289
|
-
return me;
|
|
31290
|
-
}();
|
|
31291
|
-
if (typeof module !== "undefined") {
|
|
31292
|
-
if (typeof module.exports !== "undefined") {
|
|
31293
|
-
module.exports = figlet;
|
|
31294
|
-
}
|
|
31295
|
-
}
|
|
31296
|
-
});
|
|
31297
|
-
|
|
31298
|
-
// node_modules/figlet/lib/node-figlet.js
|
|
31299
|
-
var require_node_figlet = __commonJS((exports, module) => {
|
|
31300
|
-
var __dirname = "/home/runner/work/koala-nest-cli/koala-nest-cli/node_modules/figlet/lib";
|
|
31301
|
-
var figlet = require_figlet();
|
|
31302
|
-
var fs2 = __require("fs");
|
|
31303
|
-
var fontDir = __dirname + "/../fonts/";
|
|
31304
|
-
figlet.loadFont = function(name, next) {
|
|
31305
|
-
if (figlet.figFonts[name]) {
|
|
31306
|
-
next(null, figlet.figFonts[name].options);
|
|
31307
|
-
return;
|
|
31308
|
-
}
|
|
31309
|
-
fs2.readFile(fontDir + name + ".flf", { encoding: "utf-8" }, function(err, fontData) {
|
|
31310
|
-
if (err) {
|
|
31311
|
-
return next(err);
|
|
31312
|
-
}
|
|
31313
|
-
fontData = fontData + "";
|
|
31314
|
-
try {
|
|
31315
|
-
next(null, figlet.parseFont(name, fontData));
|
|
31316
|
-
} catch (error) {
|
|
31317
|
-
next(error);
|
|
31318
|
-
}
|
|
31319
|
-
});
|
|
31320
|
-
};
|
|
31321
|
-
figlet.loadFontSync = function(name) {
|
|
31322
|
-
if (figlet.figFonts[name]) {
|
|
31323
|
-
return figlet.figFonts[name].options;
|
|
31324
|
-
}
|
|
31325
|
-
var fontData = fs2.readFileSync(fontDir + name + ".flf", { encoding: "utf-8" });
|
|
31326
|
-
fontData = fontData + "";
|
|
31327
|
-
return figlet.parseFont(name, fontData);
|
|
31328
|
-
};
|
|
31329
|
-
figlet.fonts = function(next) {
|
|
31330
|
-
var fontList = [];
|
|
31331
|
-
fs2.readdir(fontDir, function(err, files) {
|
|
31332
|
-
if (err) {
|
|
31333
|
-
return next(err);
|
|
31334
|
-
}
|
|
31335
|
-
files.forEach(function(file) {
|
|
31336
|
-
if (/\.flf$/.test(file)) {
|
|
31337
|
-
fontList.push(file.replace(/\.flf$/, ""));
|
|
31338
|
-
}
|
|
31339
|
-
});
|
|
31340
|
-
next(null, fontList);
|
|
31341
|
-
});
|
|
31342
|
-
};
|
|
31343
|
-
figlet.fontsSync = function() {
|
|
31344
|
-
var fontList = [];
|
|
31345
|
-
fs2.readdirSync(fontDir).forEach(function(file) {
|
|
31346
|
-
if (/\.flf$/.test(file)) {
|
|
31347
|
-
fontList.push(file.replace(/\.flf$/, ""));
|
|
31348
|
-
}
|
|
31349
|
-
});
|
|
31350
|
-
return fontList;
|
|
31351
|
-
};
|
|
31352
|
-
module.exports = figlet;
|
|
31353
|
-
});
|
|
31354
|
-
|
|
31355
30580
|
// src/index.ts
|
|
31356
30581
|
var import_commander = __toESM(require_commander(), 1);
|
|
31357
30582
|
var import_inquirer = __toESM(require_inquirer(), 1);
|
|
@@ -31383,19 +30608,21 @@ var import_chalk = __toESM(require_chalk(), 1);
|
|
|
31383
30608
|
import { execSync } from "node:child_process";
|
|
31384
30609
|
import { readFileSync, writeFileSync } from "node:fs";
|
|
31385
30610
|
import path2 from "node:path";
|
|
31386
|
-
|
|
30611
|
+
import { fileURLToPath } from "node:url";
|
|
30612
|
+
var __filename2 = fileURLToPath(import.meta.url);
|
|
30613
|
+
var __dirname2 = path2.dirname(__filename2);
|
|
31387
30614
|
function newProject(projectName) {
|
|
31388
|
-
copyFolder(path2.join(
|
|
30615
|
+
copyFolder(path2.join(__dirname2, "code-base/startup-project"), projectName);
|
|
31389
30616
|
const packageJson = __require(path2.join(process.cwd(), projectName, "package.json"));
|
|
31390
30617
|
packageJson.name = projectName;
|
|
31391
30618
|
writeFileSync(path2.join(process.cwd(), projectName, "package.json"), JSON.stringify(packageJson, null, 2));
|
|
31392
30619
|
let readme = readFileSync(path2.join(path2.join(process.cwd(), projectName, "README.md"))).toString();
|
|
31393
30620
|
readme = readme.replace("[projectName]", projectName);
|
|
31394
30621
|
writeFileSync(path2.join(process.cwd(), projectName, "README.md"), readme);
|
|
31395
|
-
let env = readFileSync(path2.join(path2.join(
|
|
30622
|
+
let env = readFileSync(path2.join(path2.join(__dirname2, "code-base/env", "config.txt"))).toString();
|
|
31396
30623
|
env = env.replace(/\[projectName\]/g, projectName.replace(/-/g, "_"));
|
|
31397
30624
|
writeFileSync(path2.join(process.cwd(), projectName, ".env"), env);
|
|
31398
|
-
const gitIgnore = readFileSync(path2.join(path2.join(
|
|
30625
|
+
const gitIgnore = readFileSync(path2.join(path2.join(__dirname2, "code-base/gitignore", "config.txt"))).toString();
|
|
31399
30626
|
writeFileSync(path2.join(process.cwd(), projectName, ".gitignore"), gitIgnore);
|
|
31400
30627
|
execSync(`cd ${projectName} && npm install && npx prisma generate`, {
|
|
31401
30628
|
stdio: "inherit"
|
|
@@ -31405,11 +30632,10 @@ function newProject(projectName) {
|
|
|
31405
30632
|
|
|
31406
30633
|
// src/index.ts
|
|
31407
30634
|
var import_chalk2 = __toESM(require_chalk(), 1);
|
|
31408
|
-
var import_figlet = __toESM(require_node_figlet(), 1);
|
|
31409
30635
|
// package.json
|
|
31410
30636
|
var package_default = {
|
|
31411
30637
|
name: "@koalarx/nest-cli",
|
|
31412
|
-
version: "1.2.
|
|
30638
|
+
version: "1.2.18",
|
|
31413
30639
|
description: "Biblioteca de CLI para criação de projetos utilizando Koala Nest",
|
|
31414
30640
|
scripts: {
|
|
31415
30641
|
test: "vitest run",
|
|
@@ -31446,7 +30672,6 @@ var package_default = {
|
|
|
31446
30672
|
dependencies: {
|
|
31447
30673
|
chalk: "^2.4.2",
|
|
31448
30674
|
commander: "^2.19.0",
|
|
31449
|
-
figlet: "^1.2.1",
|
|
31450
30675
|
inquirer: "^6.2.2",
|
|
31451
30676
|
shelljs: "^0.8.3"
|
|
31452
30677
|
},
|
|
@@ -31465,8 +30690,15 @@ var package_default = {
|
|
|
31465
30690
|
};
|
|
31466
30691
|
|
|
31467
30692
|
// src/index.ts
|
|
30693
|
+
var banner = `
|
|
30694
|
+
_ __ _ _ _ _ ____ _ ___
|
|
30695
|
+
| |/ /___ __ _| | __ _ | \\ | | ___ ___| |_ / ___| | |_ _|
|
|
30696
|
+
| ' // _ \\ / _\` | |/ _\` | | \\| |/ _ \\/ __| __| | | | | | |
|
|
30697
|
+
| . \\ (_) | (_| | | (_| | | |\\ | __/\\__ \\ |_ | |___| |___ | |
|
|
30698
|
+
|_|\\_\\___/ \\__,_|_|\\__,_| |_| \\_|\\___||___/\\__| \\____|_____|___|
|
|
30699
|
+
`;
|
|
30700
|
+
console.log(import_chalk2.default.cyan(banner));
|
|
31468
30701
|
import_commander.default.version(package_default.version);
|
|
31469
|
-
console.log(import_chalk2.default.cyan(import_figlet.default.textSync("Koala Nest CLI")));
|
|
31470
30702
|
import_commander.default.command("new [projectName]").description("Cria um novo projeto Nest com Koala Nest").action(async (projectName) => {
|
|
31471
30703
|
if (!projectName) {
|
|
31472
30704
|
projectName = await import_inquirer.default.prompt([
|
package/index.ts
CHANGED
|
@@ -4,12 +4,19 @@ import program from 'commander'
|
|
|
4
4
|
import inquirer from 'inquirer'
|
|
5
5
|
import { newProject } from './commands/new-project'
|
|
6
6
|
import chalk from 'chalk'
|
|
7
|
-
import figlet from 'figlet'
|
|
8
7
|
import packageJson from '../package.json' with { type: 'json' }
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
const banner = `
|
|
10
|
+
_ __ _ _ _ _ ____ _ ___
|
|
11
|
+
| |/ /___ __ _| | __ _ | \\ | | ___ ___| |_ / ___| | |_ _|
|
|
12
|
+
| ' // _ \\ / _\` | |/ _\` | | \\| |/ _ \\/ __| __| | | | | | |
|
|
13
|
+
| . \\ (_) | (_| | | (_| | | |\\ | __/\\__ \\ |_ | |___| |___ | |
|
|
14
|
+
|_|\\_\\___/ \\__,_|_|\\__,_| |_| \\_|\\___||___/\\__| \\____|_____|___|
|
|
15
|
+
`
|
|
16
|
+
|
|
17
|
+
console.log(chalk.cyan(banner))
|
|
11
18
|
|
|
12
|
-
|
|
19
|
+
program.version(packageJson.version)
|
|
13
20
|
|
|
14
21
|
program
|
|
15
22
|
.command('new [projectName]')
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@koalarx/nest-cli",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.18",
|
|
4
4
|
"description": "Biblioteca de CLI para criação de projetos utilizando Koala Nest",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "vitest run",
|
|
@@ -37,7 +37,6 @@
|
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"chalk": "^2.4.2",
|
|
39
39
|
"commander": "^2.19.0",
|
|
40
|
-
"figlet": "^1.2.1",
|
|
41
40
|
"inquirer": "^6.2.2",
|
|
42
41
|
"shelljs": "^0.8.3"
|
|
43
42
|
},
|