@kubb/core 2.0.0-canary.20231030T124950 → 2.0.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.
Files changed (100) hide show
  1. package/README.md +1 -1
  2. package/dist/chunk-4A7WG6IA.js +128 -0
  3. package/dist/chunk-4A7WG6IA.js.map +1 -0
  4. package/dist/chunk-54P4AWHI.js +71 -0
  5. package/dist/chunk-54P4AWHI.js.map +1 -0
  6. package/dist/chunk-5TK7TMV6.cjs +131 -0
  7. package/dist/chunk-5TK7TMV6.cjs.map +1 -0
  8. package/dist/chunk-7S67BJXQ.js +85 -0
  9. package/dist/chunk-7S67BJXQ.js.map +1 -0
  10. package/dist/chunk-E3ANGQ5N.cjs +2290 -0
  11. package/dist/chunk-E3ANGQ5N.cjs.map +1 -0
  12. package/dist/chunk-H47IKRXJ.cjs +129 -0
  13. package/dist/chunk-H47IKRXJ.cjs.map +1 -0
  14. package/dist/chunk-HIE46T3F.js +129 -0
  15. package/dist/chunk-HIE46T3F.js.map +1 -0
  16. package/dist/chunk-K2H7BYQB.js +155 -0
  17. package/dist/chunk-K2H7BYQB.js.map +1 -0
  18. package/dist/chunk-NAWI7UXW.js +67 -0
  19. package/dist/chunk-NAWI7UXW.js.map +1 -0
  20. package/dist/chunk-PLVKILIY.cjs +162 -0
  21. package/dist/chunk-PLVKILIY.cjs.map +1 -0
  22. package/dist/chunk-W2FP7ZWW.cjs +71 -0
  23. package/dist/chunk-W2FP7ZWW.cjs.map +1 -0
  24. package/dist/chunk-WZQO3EPM.cjs +91 -0
  25. package/dist/chunk-WZQO3EPM.cjs.map +1 -0
  26. package/dist/chunk-XDHI63G7.cjs +104 -0
  27. package/dist/chunk-XDHI63G7.cjs.map +1 -0
  28. package/dist/chunk-XPOF4D5N.js +18 -0
  29. package/dist/chunk-XPOF4D5N.js.map +1 -0
  30. package/dist/fs.cjs +31 -0
  31. package/dist/fs.cjs.map +1 -0
  32. package/dist/fs.d.cts +5 -0
  33. package/dist/fs.d.ts +5 -0
  34. package/dist/fs.js +11 -0
  35. package/dist/fs.js.map +1 -0
  36. package/dist/index.cjs +1866 -977
  37. package/dist/index.cjs.map +1 -1
  38. package/dist/index.d.cts +302 -319
  39. package/dist/index.d.ts +302 -319
  40. package/dist/index.js +1071 -846
  41. package/dist/index.js.map +1 -1
  42. package/dist/logger.cjs +26 -0
  43. package/dist/logger.cjs.map +1 -0
  44. package/dist/logger.d.cts +32 -0
  45. package/dist/logger.d.ts +32 -0
  46. package/dist/logger.js +8 -0
  47. package/dist/logger.js.map +1 -0
  48. package/dist/transformers.cjs +124 -0
  49. package/dist/transformers.cjs.map +1 -0
  50. package/dist/transformers.d.cts +55 -0
  51. package/dist/transformers.d.ts +55 -0
  52. package/dist/transformers.js +95 -0
  53. package/dist/transformers.js.map +1 -0
  54. package/dist/utils.cjs +23 -1163
  55. package/dist/utils.cjs.map +1 -1
  56. package/dist/utils.d.cts +2 -143
  57. package/dist/utils.d.ts +2 -143
  58. package/dist/utils.js +15 -1118
  59. package/dist/utils.js.map +1 -1
  60. package/dist/write-A6VgHkYA.d.cts +10 -0
  61. package/dist/write-A6VgHkYA.d.ts +10 -0
  62. package/package.json +40 -23
  63. package/src/BarrelManager.ts +113 -0
  64. package/src/FileManager.ts +581 -0
  65. package/src/Generator.ts +34 -0
  66. package/src/PackageManager.ts +178 -0
  67. package/src/PluginManager.ts +645 -0
  68. package/src/PromiseManager.ts +51 -0
  69. package/src/build.ts +221 -0
  70. package/src/config.ts +22 -0
  71. package/src/errors.ts +12 -0
  72. package/src/fs/clean.ts +5 -0
  73. package/src/fs/index.ts +3 -0
  74. package/src/fs/read.ts +68 -0
  75. package/src/fs/write.ts +79 -0
  76. package/src/index.ts +27 -0
  77. package/src/logger.ts +121 -0
  78. package/src/plugin.ts +80 -0
  79. package/src/transformers/casing.ts +9 -0
  80. package/src/transformers/combineCodes.ts +3 -0
  81. package/src/transformers/createJSDocBlockText.ts +9 -0
  82. package/src/transformers/escape.ts +31 -0
  83. package/src/transformers/indent.ts +3 -0
  84. package/src/transformers/index.ts +36 -0
  85. package/src/transformers/nameSorter.ts +9 -0
  86. package/src/transformers/searchAndReplace.ts +25 -0
  87. package/src/transformers/transformReservedWord.ts +97 -0
  88. package/src/transformers/trim.ts +7 -0
  89. package/src/types.ts +334 -0
  90. package/src/utils/EventEmitter.ts +24 -0
  91. package/src/utils/FunctionParams.ts +86 -0
  92. package/src/utils/TreeNode.ts +125 -0
  93. package/src/utils/URLPath.ts +133 -0
  94. package/src/utils/cache.ts +35 -0
  95. package/src/utils/executeStrategies.ts +83 -0
  96. package/src/utils/index.ts +8 -0
  97. package/src/utils/promise.ts +13 -0
  98. package/src/utils/renderTemplate.ts +31 -0
  99. package/src/utils/timeout.ts +7 -0
  100. package/src/utils/uniqueName.ts +20 -0
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ var chunkPLVKILIY_cjs = require('./chunk-PLVKILIY.cjs');
4
+ require('./chunk-E3ANGQ5N.cjs');
5
+ require('./chunk-WZQO3EPM.cjs');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, 'LogLevel', {
10
+ enumerable: true,
11
+ get: function () { return chunkPLVKILIY_cjs.LogLevel; }
12
+ });
13
+ Object.defineProperty(exports, 'createLogger', {
14
+ enumerable: true,
15
+ get: function () { return chunkPLVKILIY_cjs.createLogger; }
16
+ });
17
+ Object.defineProperty(exports, 'randomCliColour', {
18
+ enumerable: true,
19
+ get: function () { return chunkPLVKILIY_cjs.randomCliColour; }
20
+ });
21
+ Object.defineProperty(exports, 'randomColour', {
22
+ enumerable: true,
23
+ get: function () { return chunkPLVKILIY_cjs.randomColour; }
24
+ });
25
+ //# sourceMappingURL=out.js.map
26
+ //# sourceMappingURL=logger.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ import { Ora } from 'ora';
2
+
3
+ declare const LogLevel: {
4
+ readonly silent: "silent";
5
+ readonly info: "info";
6
+ readonly debug: "debug";
7
+ };
8
+ type LogLevel = keyof typeof LogLevel;
9
+ type Logger = {
10
+ /**
11
+ * Optional config name to show in CLI output
12
+ */
13
+ name?: string;
14
+ logLevel: LogLevel;
15
+ log: (message: string | null) => void;
16
+ error: (message: string | null) => void;
17
+ info: (message: string | null) => void;
18
+ warn: (message: string | null) => void;
19
+ debug: (message: string | null) => Promise<void>;
20
+ spinner?: Ora;
21
+ logs: string[];
22
+ };
23
+ type Props = {
24
+ name?: string;
25
+ logLevel: LogLevel;
26
+ spinner?: Ora;
27
+ };
28
+ declare function createLogger({ logLevel, name, spinner }: Props): Logger;
29
+ declare function randomColour(text?: string, colours?: readonly ["black", "blue", "darkBlue", "cyan", "gray", "green", "darkGreen", "magenta", "red", "darkRed", "yellow", "darkYellow"]): string;
30
+ declare function randomCliColour(text?: string, colors?: readonly ["black", "blue", "darkBlue", "cyan", "gray", "green", "darkGreen", "magenta", "red", "darkRed", "yellow", "darkYellow"]): string;
31
+
32
+ export { LogLevel, type Logger, createLogger, randomCliColour, randomColour };
@@ -0,0 +1,32 @@
1
+ import { Ora } from 'ora';
2
+
3
+ declare const LogLevel: {
4
+ readonly silent: "silent";
5
+ readonly info: "info";
6
+ readonly debug: "debug";
7
+ };
8
+ type LogLevel = keyof typeof LogLevel;
9
+ type Logger = {
10
+ /**
11
+ * Optional config name to show in CLI output
12
+ */
13
+ name?: string;
14
+ logLevel: LogLevel;
15
+ log: (message: string | null) => void;
16
+ error: (message: string | null) => void;
17
+ info: (message: string | null) => void;
18
+ warn: (message: string | null) => void;
19
+ debug: (message: string | null) => Promise<void>;
20
+ spinner?: Ora;
21
+ logs: string[];
22
+ };
23
+ type Props = {
24
+ name?: string;
25
+ logLevel: LogLevel;
26
+ spinner?: Ora;
27
+ };
28
+ declare function createLogger({ logLevel, name, spinner }: Props): Logger;
29
+ declare function randomColour(text?: string, colours?: readonly ["black", "blue", "darkBlue", "cyan", "gray", "green", "darkGreen", "magenta", "red", "darkRed", "yellow", "darkYellow"]): string;
30
+ declare function randomCliColour(text?: string, colors?: readonly ["black", "blue", "darkBlue", "cyan", "gray", "green", "darkGreen", "magenta", "red", "darkRed", "yellow", "darkYellow"]): string;
31
+
32
+ export { LogLevel, type Logger, createLogger, randomCliColour, randomColour };
package/dist/logger.js ADDED
@@ -0,0 +1,8 @@
1
+ import { createRequire } from 'module';
2
+ export { LogLevel, createLogger, randomCliColour, randomColour } from './chunk-K2H7BYQB.js';
3
+ import './chunk-7S67BJXQ.js';
4
+ import './chunk-54P4AWHI.js';
5
+
6
+ createRequire(import.meta.url);
7
+ //# sourceMappingURL=out.js.map
8
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
@@ -0,0 +1,124 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var chunk5TK7TMV6_cjs = require('./chunk-5TK7TMV6.cjs');
6
+ var chunkXDHI63G7_cjs = require('./chunk-XDHI63G7.cjs');
7
+ var chunkWZQO3EPM_cjs = require('./chunk-WZQO3EPM.cjs');
8
+
9
+ // src/transformers/index.ts
10
+ chunkWZQO3EPM_cjs.init_cjs_shims();
11
+
12
+ // src/transformers/combineCodes.ts
13
+ chunkWZQO3EPM_cjs.init_cjs_shims();
14
+ function combineCodes(codes) {
15
+ return codes.join("\n");
16
+ }
17
+
18
+ // src/transformers/createJSDocBlockText.ts
19
+ chunkWZQO3EPM_cjs.init_cjs_shims();
20
+ function createJSDocBlockText({ comments }) {
21
+ const filteredComments = comments.filter(Boolean);
22
+ if (!filteredComments.length) {
23
+ return "";
24
+ }
25
+ return `/**
26
+ * ${filteredComments.join("\n * ")}
27
+ */`;
28
+ }
29
+
30
+ // src/transformers/escape.ts
31
+ chunkWZQO3EPM_cjs.init_cjs_shims();
32
+ function escape(text) {
33
+ return text ? text.replaceAll("`", "\\`") : "";
34
+ }
35
+ function jsStringEscape(input) {
36
+ return `${input}`.replace(/["'\\\n\r\u2028\u2029]/g, (character) => {
37
+ switch (character) {
38
+ case '"':
39
+ case "'":
40
+ case "\\":
41
+ return "\\" + character;
42
+ case "\n":
43
+ return "\\n";
44
+ case "\r":
45
+ return "\\r";
46
+ case "\u2028":
47
+ return "\\u2028";
48
+ case "\u2029":
49
+ return "\\u2029";
50
+ default:
51
+ return "";
52
+ }
53
+ });
54
+ }
55
+
56
+ // src/transformers/indent.ts
57
+ chunkWZQO3EPM_cjs.init_cjs_shims();
58
+ function createIndent(size) {
59
+ return Array.from({ length: size + 1 }).join(" ");
60
+ }
61
+
62
+ // src/transformers/nameSorter.ts
63
+ chunkWZQO3EPM_cjs.init_cjs_shims();
64
+ function nameSorter(a, b) {
65
+ if (a.name < b.name) {
66
+ return -1;
67
+ }
68
+ if (a.name > b.name) {
69
+ return 1;
70
+ }
71
+ return 0;
72
+ }
73
+
74
+ // src/transformers/index.ts
75
+ var transformers_default = {
76
+ combineCodes,
77
+ escape,
78
+ jsStringEscape,
79
+ createIndent,
80
+ transformReservedWord: chunk5TK7TMV6_cjs.transformReservedWord,
81
+ nameSorter,
82
+ searchAndReplace: chunk5TK7TMV6_cjs.searchAndReplace,
83
+ trim: chunk5TK7TMV6_cjs.trim,
84
+ trimExtName: chunk5TK7TMV6_cjs.trimExtName,
85
+ JSDoc: {
86
+ createJSDocBlockText
87
+ },
88
+ camelCase: chunkXDHI63G7_cjs.camelCase,
89
+ pascalCase: chunkXDHI63G7_cjs.pascalCase
90
+ };
91
+
92
+ Object.defineProperty(exports, 'searchAndReplace', {
93
+ enumerable: true,
94
+ get: function () { return chunk5TK7TMV6_cjs.searchAndReplace; }
95
+ });
96
+ Object.defineProperty(exports, 'transformReservedWord', {
97
+ enumerable: true,
98
+ get: function () { return chunk5TK7TMV6_cjs.transformReservedWord; }
99
+ });
100
+ Object.defineProperty(exports, 'trim', {
101
+ enumerable: true,
102
+ get: function () { return chunk5TK7TMV6_cjs.trim; }
103
+ });
104
+ Object.defineProperty(exports, 'trimExtName', {
105
+ enumerable: true,
106
+ get: function () { return chunk5TK7TMV6_cjs.trimExtName; }
107
+ });
108
+ Object.defineProperty(exports, 'camelCase', {
109
+ enumerable: true,
110
+ get: function () { return chunkXDHI63G7_cjs.camelCase; }
111
+ });
112
+ Object.defineProperty(exports, 'pascalCase', {
113
+ enumerable: true,
114
+ get: function () { return chunkXDHI63G7_cjs.pascalCase; }
115
+ });
116
+ exports.combineCodes = combineCodes;
117
+ exports.createIndent = createIndent;
118
+ exports.createJSDocBlockText = createJSDocBlockText;
119
+ exports.default = transformers_default;
120
+ exports.escape = escape;
121
+ exports.jsStringEscape = jsStringEscape;
122
+ exports.nameSorter = nameSorter;
123
+ //# sourceMappingURL=out.js.map
124
+ //# sourceMappingURL=transformers.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/transformers/index.ts","../src/transformers/combineCodes.ts","../src/transformers/createJSDocBlockText.ts","../src/transformers/escape.ts","../src/transformers/indent.ts","../src/transformers/nameSorter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;ACAA;AAAO,SAAS,aAAa,OAAyB;AACpD,SAAO,MAAM,KAAK,IAAI;AACxB;;;ACFA;AAAO,SAAS,qBAAqB,EAAE,SAAS,GAAwC;AACtF,QAAM,mBAAmB,SAAS,OAAO,OAAO;AAEhD,MAAI,CAAC,iBAAiB,QAAQ;AAC5B,WAAO;AAAA,EACT;AAEA,SAAO;AAAA,KAAW,iBAAiB,KAAK,OAAO,CAAC;AAAA;AAClD;;;ACRA;AAAO,SAAS,OAAO,MAAuB;AAC5C,SAAO,OAAO,KAAK,WAAW,KAAK,KAAK,IAAI;AAC9C;AAQO,SAAS,eAAe,OAAoB;AACjD,SAAO,GAAG,KAAK,GAAG,QAAQ,2BAA2B,CAAC,cAAc;AAClE,YAAQ,WAAW;AAAA,MACjB,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,OAAO;AAAA,MAEhB,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO;AAAA,IACX;AAAA,EACF,CAAC;AACH;;;AC9BA;AAAO,SAAS,aAAa,MAAsB;AACjD,SAAO,MAAM,KAAK,EAAE,QAAQ,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG;AAClD;;;ACFA;AAAO,SAAS,WAAuC,GAAM,GAAkB;AAC7E,MAAI,EAAE,OAAO,EAAE,MAAM;AACnB,WAAO;AAAA,EACT;AACA,MAAI,EAAE,OAAO,EAAE,MAAM;AACnB,WAAO;AAAA,EACT;AACA,SAAO;AACT;;;ALYA,IAAO,uBAAQ;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,IACL;AAAA,EACF;AAAA,EACA;AAAA,EACA;AACF","sourcesContent":["import { camelCase, pascalCase } from './casing.ts'\nimport { combineCodes } from './combineCodes.ts'\nimport { createJSDocBlockText } from './createJSDocBlockText.ts'\nimport { escape, jsStringEscape } from './escape.ts'\nimport { createIndent } from './indent.ts'\nimport { nameSorter } from './nameSorter.ts'\nimport { searchAndReplace } from './searchAndReplace.ts'\nimport { transformReservedWord } from './transformReservedWord.ts'\nimport { trim, trimExtName } from './trim.ts'\n\nexport { camelCase, pascalCase } from './casing.ts'\nexport { combineCodes } from './combineCodes.ts'\nexport { createJSDocBlockText } from './createJSDocBlockText.ts'\nexport { escape, jsStringEscape } from './escape.ts'\nexport { createIndent } from './indent.ts'\nexport { nameSorter } from './nameSorter.ts'\nexport { searchAndReplace } from './searchAndReplace.ts'\nexport { transformReservedWord } from './transformReservedWord.ts'\nexport { trim, trimExtName } from './trim.ts'\n\nexport default {\n combineCodes,\n escape,\n jsStringEscape,\n createIndent,\n transformReservedWord,\n nameSorter,\n searchAndReplace,\n trim,\n trimExtName,\n JSDoc: {\n createJSDocBlockText,\n },\n camelCase,\n pascalCase,\n} as const\n","export function combineCodes(codes: string[]): string {\n return codes.join('\\n')\n}\n","export function createJSDocBlockText({ comments }: { comments: Array<string> }): string {\n const filteredComments = comments.filter(Boolean)\n\n if (!filteredComments.length) {\n return ''\n }\n\n return `/**\\n * ${filteredComments.join('\\n * ')}\\n */`\n}\n","export function escape(text?: string): string {\n return text ? text.replaceAll('`', '\\\\`') : ''\n}\n\n/**\n * Escape all characters not included in SingleStringCharacters and DoubleStringCharacters on\n * @link http://www.ecma-international.org/ecma-262/5.1/#sec-7.8.4\n * @link https://github.com/joliss/js-string-escape/blob/master/index.js\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function jsStringEscape(input: any): string {\n return `${input}`.replace(/[\"'\\\\\\n\\r\\u2028\\u2029]/g, (character) => {\n switch (character) {\n case '\"':\n case \"'\":\n case '\\\\':\n return '\\\\' + character\n // Four possible LineTerminator characters need to be escaped:\n case '\\n':\n return '\\\\n'\n case '\\r':\n return '\\\\r'\n case '\\u2028':\n return '\\\\u2028'\n case '\\u2029':\n return '\\\\u2029'\n default:\n return ''\n }\n })\n}\n","export function createIndent(size: number): string {\n return Array.from({ length: size + 1 }).join(' ')\n}\n","export function nameSorter<T extends { name: string }>(a: T, b: T): 0 | 1 | -1 {\n if (a.name < b.name) {\n return -1\n }\n if (a.name > b.name) {\n return 1\n }\n return 0\n}\n"]}
@@ -0,0 +1,55 @@
1
+ declare function camelCase(text: string): string;
2
+ declare function pascalCase(text: string): string;
3
+
4
+ declare function combineCodes(codes: string[]): string;
5
+
6
+ declare function createJSDocBlockText({ comments }: {
7
+ comments: Array<string>;
8
+ }): string;
9
+
10
+ declare function escape(text?: string): string;
11
+ /**
12
+ * Escape all characters not included in SingleStringCharacters and DoubleStringCharacters on
13
+ * @link http://www.ecma-international.org/ecma-262/5.1/#sec-7.8.4
14
+ * @link https://github.com/joliss/js-string-escape/blob/master/index.js
15
+ */
16
+ declare function jsStringEscape(input: any): string;
17
+
18
+ declare function createIndent(size: number): string;
19
+
20
+ declare function nameSorter<T extends {
21
+ name: string;
22
+ }>(a: T, b: T): 0 | 1 | -1;
23
+
24
+ type Options = {
25
+ text: string;
26
+ replaceBy: string;
27
+ prefix?: string;
28
+ key: string;
29
+ searchValues?: (prefix: string, key: string) => Array<RegExp | string>;
30
+ };
31
+ declare function searchAndReplace(options: Options): string;
32
+
33
+ declare function transformReservedWord(word: string): string;
34
+
35
+ declare function trim(text: string): string;
36
+ declare function trimExtName(text: string): string;
37
+
38
+ declare const _default: {
39
+ readonly combineCodes: typeof combineCodes;
40
+ readonly escape: typeof escape;
41
+ readonly jsStringEscape: typeof jsStringEscape;
42
+ readonly createIndent: typeof createIndent;
43
+ readonly transformReservedWord: typeof transformReservedWord;
44
+ readonly nameSorter: typeof nameSorter;
45
+ readonly searchAndReplace: typeof searchAndReplace;
46
+ readonly trim: typeof trim;
47
+ readonly trimExtName: typeof trimExtName;
48
+ readonly JSDoc: {
49
+ readonly createJSDocBlockText: typeof createJSDocBlockText;
50
+ };
51
+ readonly camelCase: typeof camelCase;
52
+ readonly pascalCase: typeof pascalCase;
53
+ };
54
+
55
+ export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, searchAndReplace, transformReservedWord, trim, trimExtName };
@@ -0,0 +1,55 @@
1
+ declare function camelCase(text: string): string;
2
+ declare function pascalCase(text: string): string;
3
+
4
+ declare function combineCodes(codes: string[]): string;
5
+
6
+ declare function createJSDocBlockText({ comments }: {
7
+ comments: Array<string>;
8
+ }): string;
9
+
10
+ declare function escape(text?: string): string;
11
+ /**
12
+ * Escape all characters not included in SingleStringCharacters and DoubleStringCharacters on
13
+ * @link http://www.ecma-international.org/ecma-262/5.1/#sec-7.8.4
14
+ * @link https://github.com/joliss/js-string-escape/blob/master/index.js
15
+ */
16
+ declare function jsStringEscape(input: any): string;
17
+
18
+ declare function createIndent(size: number): string;
19
+
20
+ declare function nameSorter<T extends {
21
+ name: string;
22
+ }>(a: T, b: T): 0 | 1 | -1;
23
+
24
+ type Options = {
25
+ text: string;
26
+ replaceBy: string;
27
+ prefix?: string;
28
+ key: string;
29
+ searchValues?: (prefix: string, key: string) => Array<RegExp | string>;
30
+ };
31
+ declare function searchAndReplace(options: Options): string;
32
+
33
+ declare function transformReservedWord(word: string): string;
34
+
35
+ declare function trim(text: string): string;
36
+ declare function trimExtName(text: string): string;
37
+
38
+ declare const _default: {
39
+ readonly combineCodes: typeof combineCodes;
40
+ readonly escape: typeof escape;
41
+ readonly jsStringEscape: typeof jsStringEscape;
42
+ readonly createIndent: typeof createIndent;
43
+ readonly transformReservedWord: typeof transformReservedWord;
44
+ readonly nameSorter: typeof nameSorter;
45
+ readonly searchAndReplace: typeof searchAndReplace;
46
+ readonly trim: typeof trim;
47
+ readonly trimExtName: typeof trimExtName;
48
+ readonly JSDoc: {
49
+ readonly createJSDocBlockText: typeof createJSDocBlockText;
50
+ };
51
+ readonly camelCase: typeof camelCase;
52
+ readonly pascalCase: typeof pascalCase;
53
+ };
54
+
55
+ export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, searchAndReplace, transformReservedWord, trim, trimExtName };
@@ -0,0 +1,95 @@
1
+ import { createRequire } from 'module';
2
+ import { transformReservedWord, searchAndReplace, trim, trimExtName } from './chunk-HIE46T3F.js';
3
+ export { searchAndReplace, transformReservedWord, trim, trimExtName } from './chunk-HIE46T3F.js';
4
+ import { camelCase, pascalCase } from './chunk-XPOF4D5N.js';
5
+ export { camelCase, pascalCase } from './chunk-XPOF4D5N.js';
6
+ import { init_esm_shims } from './chunk-54P4AWHI.js';
7
+
8
+ createRequire(import.meta.url);
9
+
10
+ // src/transformers/index.ts
11
+ init_esm_shims();
12
+
13
+ // src/transformers/combineCodes.ts
14
+ init_esm_shims();
15
+ function combineCodes(codes) {
16
+ return codes.join("\n");
17
+ }
18
+
19
+ // src/transformers/createJSDocBlockText.ts
20
+ init_esm_shims();
21
+ function createJSDocBlockText({ comments }) {
22
+ const filteredComments = comments.filter(Boolean);
23
+ if (!filteredComments.length) {
24
+ return "";
25
+ }
26
+ return `/**
27
+ * ${filteredComments.join("\n * ")}
28
+ */`;
29
+ }
30
+
31
+ // src/transformers/escape.ts
32
+ init_esm_shims();
33
+ function escape(text) {
34
+ return text ? text.replaceAll("`", "\\`") : "";
35
+ }
36
+ function jsStringEscape(input) {
37
+ return `${input}`.replace(/["'\\\n\r\u2028\u2029]/g, (character) => {
38
+ switch (character) {
39
+ case '"':
40
+ case "'":
41
+ case "\\":
42
+ return "\\" + character;
43
+ case "\n":
44
+ return "\\n";
45
+ case "\r":
46
+ return "\\r";
47
+ case "\u2028":
48
+ return "\\u2028";
49
+ case "\u2029":
50
+ return "\\u2029";
51
+ default:
52
+ return "";
53
+ }
54
+ });
55
+ }
56
+
57
+ // src/transformers/indent.ts
58
+ init_esm_shims();
59
+ function createIndent(size) {
60
+ return Array.from({ length: size + 1 }).join(" ");
61
+ }
62
+
63
+ // src/transformers/nameSorter.ts
64
+ init_esm_shims();
65
+ function nameSorter(a, b) {
66
+ if (a.name < b.name) {
67
+ return -1;
68
+ }
69
+ if (a.name > b.name) {
70
+ return 1;
71
+ }
72
+ return 0;
73
+ }
74
+
75
+ // src/transformers/index.ts
76
+ var transformers_default = {
77
+ combineCodes,
78
+ escape,
79
+ jsStringEscape,
80
+ createIndent,
81
+ transformReservedWord,
82
+ nameSorter,
83
+ searchAndReplace,
84
+ trim,
85
+ trimExtName,
86
+ JSDoc: {
87
+ createJSDocBlockText
88
+ },
89
+ camelCase,
90
+ pascalCase
91
+ };
92
+
93
+ export { combineCodes, createIndent, createJSDocBlockText, transformers_default as default, escape, jsStringEscape, nameSorter };
94
+ //# sourceMappingURL=out.js.map
95
+ //# sourceMappingURL=transformers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/transformers/index.ts","../src/transformers/combineCodes.ts","../src/transformers/createJSDocBlockText.ts","../src/transformers/escape.ts","../src/transformers/indent.ts","../src/transformers/nameSorter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;;ACAA;AAAO,SAAS,aAAa,OAAyB;AACpD,SAAO,MAAM,KAAK,IAAI;AACxB;;;ACFA;AAAO,SAAS,qBAAqB,EAAE,SAAS,GAAwC;AACtF,QAAM,mBAAmB,SAAS,OAAO,OAAO;AAEhD,MAAI,CAAC,iBAAiB,QAAQ;AAC5B,WAAO;AAAA,EACT;AAEA,SAAO;AAAA,KAAW,iBAAiB,KAAK,OAAO,CAAC;AAAA;AAClD;;;ACRA;AAAO,SAAS,OAAO,MAAuB;AAC5C,SAAO,OAAO,KAAK,WAAW,KAAK,KAAK,IAAI;AAC9C;AAQO,SAAS,eAAe,OAAoB;AACjD,SAAO,GAAG,KAAK,GAAG,QAAQ,2BAA2B,CAAC,cAAc;AAClE,YAAQ,WAAW;AAAA,MACjB,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,OAAO;AAAA,MAEhB,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT,KAAK;AACH,eAAO;AAAA,MACT;AACE,eAAO;AAAA,IACX;AAAA,EACF,CAAC;AACH;;;AC9BA;AAAO,SAAS,aAAa,MAAsB;AACjD,SAAO,MAAM,KAAK,EAAE,QAAQ,OAAO,EAAE,CAAC,EAAE,KAAK,GAAG;AAClD;;;ACFA;AAAO,SAAS,WAAuC,GAAM,GAAkB;AAC7E,MAAI,EAAE,OAAO,EAAE,MAAM;AACnB,WAAO;AAAA,EACT;AACA,MAAI,EAAE,OAAO,EAAE,MAAM;AACnB,WAAO;AAAA,EACT;AACA,SAAO;AACT;;;ALYA,IAAO,uBAAQ;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,IACL;AAAA,EACF;AAAA,EACA;AAAA,EACA;AACF","sourcesContent":["import { camelCase, pascalCase } from './casing.ts'\nimport { combineCodes } from './combineCodes.ts'\nimport { createJSDocBlockText } from './createJSDocBlockText.ts'\nimport { escape, jsStringEscape } from './escape.ts'\nimport { createIndent } from './indent.ts'\nimport { nameSorter } from './nameSorter.ts'\nimport { searchAndReplace } from './searchAndReplace.ts'\nimport { transformReservedWord } from './transformReservedWord.ts'\nimport { trim, trimExtName } from './trim.ts'\n\nexport { camelCase, pascalCase } from './casing.ts'\nexport { combineCodes } from './combineCodes.ts'\nexport { createJSDocBlockText } from './createJSDocBlockText.ts'\nexport { escape, jsStringEscape } from './escape.ts'\nexport { createIndent } from './indent.ts'\nexport { nameSorter } from './nameSorter.ts'\nexport { searchAndReplace } from './searchAndReplace.ts'\nexport { transformReservedWord } from './transformReservedWord.ts'\nexport { trim, trimExtName } from './trim.ts'\n\nexport default {\n combineCodes,\n escape,\n jsStringEscape,\n createIndent,\n transformReservedWord,\n nameSorter,\n searchAndReplace,\n trim,\n trimExtName,\n JSDoc: {\n createJSDocBlockText,\n },\n camelCase,\n pascalCase,\n} as const\n","export function combineCodes(codes: string[]): string {\n return codes.join('\\n')\n}\n","export function createJSDocBlockText({ comments }: { comments: Array<string> }): string {\n const filteredComments = comments.filter(Boolean)\n\n if (!filteredComments.length) {\n return ''\n }\n\n return `/**\\n * ${filteredComments.join('\\n * ')}\\n */`\n}\n","export function escape(text?: string): string {\n return text ? text.replaceAll('`', '\\\\`') : ''\n}\n\n/**\n * Escape all characters not included in SingleStringCharacters and DoubleStringCharacters on\n * @link http://www.ecma-international.org/ecma-262/5.1/#sec-7.8.4\n * @link https://github.com/joliss/js-string-escape/blob/master/index.js\n */\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport function jsStringEscape(input: any): string {\n return `${input}`.replace(/[\"'\\\\\\n\\r\\u2028\\u2029]/g, (character) => {\n switch (character) {\n case '\"':\n case \"'\":\n case '\\\\':\n return '\\\\' + character\n // Four possible LineTerminator characters need to be escaped:\n case '\\n':\n return '\\\\n'\n case '\\r':\n return '\\\\r'\n case '\\u2028':\n return '\\\\u2028'\n case '\\u2029':\n return '\\\\u2029'\n default:\n return ''\n }\n })\n}\n","export function createIndent(size: number): string {\n return Array.from({ length: size + 1 }).join(' ')\n}\n","export function nameSorter<T extends { name: string }>(a: T, b: T): 0 | 1 | -1 {\n if (a.name < b.name) {\n return -1\n }\n if (a.name > b.name) {\n return 1\n }\n return 0\n}\n"]}