@kubb/core 2.4.0 → 2.4.1
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/chunk-GLL5G5KY.js +30 -0
- package/dist/chunk-GLL5G5KY.js.map +1 -0
- package/dist/{chunk-BRWCAKW5.cjs → chunk-LDKM6T7X.cjs} +4 -4
- package/dist/{chunk-65OHDKQD.cjs → chunk-N7XIQXXQ.cjs} +28 -5
- package/dist/chunk-N7XIQXXQ.cjs.map +1 -0
- package/dist/{chunk-37XMXECQ.js → chunk-STP2UI5Q.js} +2 -2
- package/dist/index.cjs +3 -3
- package/dist/index.js +2 -2
- package/dist/mocks.cjs +2 -2
- package/dist/mocks.js +1 -1
- package/dist/transformers.cjs +10 -5
- package/dist/transformers.cjs.map +1 -1
- package/dist/transformers.d.cts +13 -3
- package/dist/transformers.d.ts +13 -3
- package/dist/transformers.js +4 -3
- package/dist/transformers.js.map +1 -1
- package/dist/utils.cjs +4 -4
- package/dist/utils.js +2 -2
- package/package.json +3 -3
- package/src/transformers/casing.ts +33 -5
- package/src/transformers/index.ts +3 -2
- package/dist/chunk-65OHDKQD.cjs.map +0 -1
- package/dist/chunk-MASAFU3G.js +0 -15
- package/dist/chunk-MASAFU3G.js.map +0 -1
- /package/dist/{chunk-37XMXECQ.js.map → chunk-LDKM6T7X.cjs.map} +0 -0
- /package/dist/{chunk-BRWCAKW5.cjs.map → chunk-STP2UI5Q.js.map} +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { init_esm_shims } from './chunk-ETA3LCRB.js';
|
|
2
|
+
import { camelCase as camelCase$1, pascalCase as pascalCase$1, pathCase as pathCase$1 } from 'change-case';
|
|
3
|
+
|
|
4
|
+
// src/transformers/casing.ts
|
|
5
|
+
init_esm_shims();
|
|
6
|
+
function camelCase(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
7
|
+
if (isFile) {
|
|
8
|
+
const splitArray = text.split(".");
|
|
9
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? camelCase(item, { prefix, suffix }) : camelCase(item)).join("/");
|
|
10
|
+
}
|
|
11
|
+
return camelCase$1(`${prefix} ${text} ${suffix}`, { delimiter: "", mergeAmbiguousCharacters: true });
|
|
12
|
+
}
|
|
13
|
+
function pascalCase(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
14
|
+
if (isFile) {
|
|
15
|
+
const splitArray = text.split(".");
|
|
16
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? pascalCase(item, { prefix, suffix }) : camelCase(item)).join("/");
|
|
17
|
+
}
|
|
18
|
+
return pascalCase$1(`${prefix} ${text} ${suffix}`, { delimiter: "", mergeAmbiguousCharacters: true });
|
|
19
|
+
}
|
|
20
|
+
function pathCase(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
21
|
+
if (isFile) {
|
|
22
|
+
const splitArray = text.split(".");
|
|
23
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? pathCase(item, { prefix, suffix }) : camelCase(item)).join("/");
|
|
24
|
+
}
|
|
25
|
+
return pathCase$1(`${prefix} ${text} ${suffix}`, { delimiter: "" });
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { camelCase, pascalCase, pathCase };
|
|
29
|
+
//# sourceMappingURL=out.js.map
|
|
30
|
+
//# sourceMappingURL=chunk-GLL5G5KY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transformers/casing.ts"],"names":[],"mappings":";;;;;AAAA;AAAA,SAAS,aAAa,iBAAiB,cAAc,kBAAkB,YAAY,sBAAsB;AAWlG,SAAS,UAAU,MAAc,EAAE,QAAQ,SAAS,IAAI,SAAS,GAAG,IAAa,CAAC,GAAW;AAClG,MAAI,QAAQ;AACV,UAAM,aAAa,KAAK,MAAM,GAAG;AACjC,WAAO,WAAW,IAAI,CAAC,MAAM,MAAM,MAAM,WAAW,SAAS,IAAI,UAAU,MAAM,EAAE,QAAQ,OAAO,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE,KAAK,GAAG;AAAA,EAClI;AAEA,SAAO,gBAAgB,GAAG,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,EAAE,WAAW,IAAI,0BAA0B,KAAK,CAAC;AACzG;AAEO,SAAS,WAAW,MAAc,EAAE,QAAQ,SAAS,IAAI,SAAS,GAAG,IAAa,CAAC,GAAW;AACnG,MAAI,QAAQ;AACV,UAAM,aAAa,KAAK,MAAM,GAAG;AACjC,WAAO,WAAW,IAAI,CAAC,MAAM,MAAM,MAAM,WAAW,SAAS,IAAI,WAAW,MAAM,EAAE,QAAQ,OAAO,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE,KAAK,GAAG;AAAA,EACnI;AAEA,SAAO,iBAAiB,GAAG,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,EAAE,WAAW,IAAI,0BAA0B,KAAK,CAAC;AAC1G;AAEO,SAAS,SAAS,MAAc,EAAE,QAAQ,SAAS,IAAI,SAAS,GAAG,IAAa,CAAC,GAAW;AACjG,MAAI,QAAQ;AACV,UAAM,aAAa,KAAK,MAAM,GAAG;AACjC,WAAO,WAAW,IAAI,CAAC,MAAM,MAAM,MAAM,WAAW,SAAS,IAAI,SAAS,MAAM,EAAE,QAAQ,OAAO,CAAC,IAAI,UAAU,IAAI,CAAC,EAAE,KAAK,GAAG;AAAA,EACjI;AAEA,SAAO,eAAe,GAAG,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,EAAE,WAAW,GAAG,CAAC;AACxE","sourcesContent":["import { camelCase as changeCamelCase, pascalCase as changePascalCase, pathCase as changePathCase } from 'change-case'\n\ntype Options = {\n /**\n * When set it will replace all `.` with `/`.\n */\n isFile?: boolean\n prefix?: string\n suffix?: string\n}\n\nexport function camelCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => i === splitArray.length - 1 ? camelCase(item, { prefix, suffix }) : camelCase(item)).join('/')\n }\n\n return changeCamelCase(`${prefix} ${text} ${suffix}`, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n\nexport function pascalCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => i === splitArray.length - 1 ? pascalCase(item, { prefix, suffix }) : camelCase(item)).join('/')\n }\n\n return changePascalCase(`${prefix} ${text} ${suffix}`, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n\nexport function pathCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => i === splitArray.length - 1 ? pathCase(item, { prefix, suffix }) : camelCase(item)).join('/')\n }\n\n return changePathCase(`${prefix} ${text} ${suffix}`, { delimiter: '' })\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkN7XIQXXQ_cjs = require('./chunk-N7XIQXXQ.cjs');
|
|
4
4
|
var chunkKAA3L7N6_cjs = require('./chunk-KAA3L7N6.cjs');
|
|
5
5
|
|
|
6
6
|
// src/utils/URLPath.ts
|
|
@@ -71,7 +71,7 @@ var URLPath = class {
|
|
|
71
71
|
let newPath = this.path.replaceAll("{", "${");
|
|
72
72
|
if (found) {
|
|
73
73
|
newPath = found.reduce((prev, curr) => {
|
|
74
|
-
const pathParam = replacer ? replacer(
|
|
74
|
+
const pathParam = replacer ? replacer(chunkN7XIQXXQ_cjs.camelCase(curr)) : chunkN7XIQXXQ_cjs.camelCase(curr);
|
|
75
75
|
const replacement = `\${${pathParam}}`;
|
|
76
76
|
return prev.replace(curr, replacement);
|
|
77
77
|
}, this.path);
|
|
@@ -87,7 +87,7 @@ var URLPath = class {
|
|
|
87
87
|
const params = {};
|
|
88
88
|
found.forEach((item) => {
|
|
89
89
|
item = item.replaceAll("{", "").replaceAll("}", "");
|
|
90
|
-
const pathParam = replacer ? replacer(
|
|
90
|
+
const pathParam = replacer ? replacer(chunkN7XIQXXQ_cjs.camelCase(item)) : chunkN7XIQXXQ_cjs.camelCase(item);
|
|
91
91
|
params[pathParam] = pathParam;
|
|
92
92
|
}, this.path);
|
|
93
93
|
return params;
|
|
@@ -103,4 +103,4 @@ var URLPath = class {
|
|
|
103
103
|
|
|
104
104
|
exports.URLPath = URLPath;
|
|
105
105
|
//# sourceMappingURL=out.js.map
|
|
106
|
-
//# sourceMappingURL=chunk-
|
|
106
|
+
//# sourceMappingURL=chunk-LDKM6T7X.cjs.map
|
|
@@ -39,6 +39,10 @@ function splitSeparateNumbers(value) {
|
|
|
39
39
|
}
|
|
40
40
|
return words;
|
|
41
41
|
}
|
|
42
|
+
function noCase(input, options) {
|
|
43
|
+
const [prefix, words, suffix] = splitPrefixSuffix(input, options);
|
|
44
|
+
return prefix + words.map(lowerFactory(options?.locale)).join(options?.delimiter ?? " ") + suffix;
|
|
45
|
+
}
|
|
42
46
|
function camelCase(input, options) {
|
|
43
47
|
const [prefix, words, suffix] = splitPrefixSuffix(input, options);
|
|
44
48
|
const lower = lowerFactory(options?.locale);
|
|
@@ -57,6 +61,9 @@ function pascalCase(input, options) {
|
|
|
57
61
|
const transform = options?.mergeAmbiguousCharacters ? capitalCaseTransformFactory(lower, upper) : pascalCaseTransformFactory(lower, upper);
|
|
58
62
|
return prefix + words.map(transform).join(options?.delimiter ?? "") + suffix;
|
|
59
63
|
}
|
|
64
|
+
function pathCase(input, options) {
|
|
65
|
+
return noCase(input, { delimiter: "/", ...options });
|
|
66
|
+
}
|
|
60
67
|
function lowerFactory(locale) {
|
|
61
68
|
return locale === false ? (input) => input.toLowerCase() : (input) => input.toLocaleLowerCase(locale);
|
|
62
69
|
}
|
|
@@ -100,14 +107,30 @@ function splitPrefixSuffix(input, options = {}) {
|
|
|
100
107
|
}
|
|
101
108
|
|
|
102
109
|
// src/transformers/casing.ts
|
|
103
|
-
function camelCase2(text) {
|
|
104
|
-
|
|
110
|
+
function camelCase2(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
111
|
+
if (isFile) {
|
|
112
|
+
const splitArray = text.split(".");
|
|
113
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? camelCase2(item, { prefix, suffix }) : camelCase2(item)).join("/");
|
|
114
|
+
}
|
|
115
|
+
return camelCase(`${prefix} ${text} ${suffix}`, { delimiter: "", mergeAmbiguousCharacters: true });
|
|
105
116
|
}
|
|
106
|
-
function pascalCase2(text) {
|
|
107
|
-
|
|
117
|
+
function pascalCase2(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
118
|
+
if (isFile) {
|
|
119
|
+
const splitArray = text.split(".");
|
|
120
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? pascalCase2(item, { prefix, suffix }) : camelCase2(item)).join("/");
|
|
121
|
+
}
|
|
122
|
+
return pascalCase(`${prefix} ${text} ${suffix}`, { delimiter: "", mergeAmbiguousCharacters: true });
|
|
123
|
+
}
|
|
124
|
+
function pathCase2(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
125
|
+
if (isFile) {
|
|
126
|
+
const splitArray = text.split(".");
|
|
127
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? pathCase2(item, { prefix, suffix }) : camelCase2(item)).join("/");
|
|
128
|
+
}
|
|
129
|
+
return pathCase(`${prefix} ${text} ${suffix}`, { delimiter: "" });
|
|
108
130
|
}
|
|
109
131
|
|
|
110
132
|
exports.camelCase = camelCase2;
|
|
111
133
|
exports.pascalCase = pascalCase2;
|
|
134
|
+
exports.pathCase = pathCase2;
|
|
112
135
|
//# sourceMappingURL=out.js.map
|
|
113
|
-
//# sourceMappingURL=chunk-
|
|
136
|
+
//# sourceMappingURL=chunk-N7XIQXXQ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transformers/casing.ts","../../../node_modules/.pnpm/change-case@5.4.2/node_modules/change-case/src/index.ts"],"names":["camelCase","pascalCase","pathCase"],"mappings":"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","sourcesContent":["import { camelCase as changeCamelCase, pascalCase as changePascalCase, pathCase as changePathCase } from 'change-case'\n\ntype Options = {\n /**\n * When set it will replace all `.` with `/`.\n */\n isFile?: boolean\n prefix?: string\n suffix?: string\n}\n\nexport function camelCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => i === splitArray.length - 1 ? camelCase(item, { prefix, suffix }) : camelCase(item)).join('/')\n }\n\n return changeCamelCase(`${prefix} ${text} ${suffix}`, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n\nexport function pascalCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => i === splitArray.length - 1 ? pascalCase(item, { prefix, suffix }) : camelCase(item)).join('/')\n }\n\n return changePascalCase(`${prefix} ${text} ${suffix}`, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n\nexport function pathCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {\n if (isFile) {\n const splitArray = text.split('.')\n return splitArray.map((item, i) => i === splitArray.length - 1 ? pathCase(item, { prefix, suffix }) : camelCase(item)).join('/')\n }\n\n return changePathCase(`${prefix} ${text} ${suffix}`, { delimiter: '' })\n}\n","// Regexps involved with splitting words in various case formats.\nconst SPLIT_LOWER_UPPER_RE = /([\\p{Ll}\\d])(\\p{Lu})/gu;\nconst SPLIT_UPPER_UPPER_RE = /(\\p{Lu})([\\p{Lu}][\\p{Ll}])/gu;\n\n// Used to iterate over the initial split result and separate numbers.\nconst SPLIT_SEPARATE_NUMBER_RE = /(\\d)\\p{Ll}|(\\p{L})\\d/u;\n\n// Regexp involved with stripping non-word characters from the result.\nconst DEFAULT_STRIP_REGEXP = /[^\\p{L}\\d]+/giu;\n\n// The replacement value for splits.\nconst SPLIT_REPLACE_VALUE = \"$1\\0$2\";\n\n// The default characters to keep after transforming case.\nconst DEFAULT_PREFIX_SUFFIX_CHARACTERS = \"\";\n\n/**\n * Supported locale values. Use `false` to ignore locale.\n * Defaults to `undefined`, which uses the host environment.\n */\nexport type Locale = string[] | string | false | undefined;\n\n/**\n * Options used for converting strings to pascal/camel case.\n */\nexport interface PascalCaseOptions extends Options {\n mergeAmbiguousCharacters?: boolean;\n}\n\n/**\n * Options used for converting strings to any case.\n */\nexport interface Options {\n locale?: Locale;\n split?: (value: string) => string[];\n /** @deprecated Pass `split: splitSeparateNumbers` instead. */\n separateNumbers?: boolean;\n delimiter?: string;\n prefixCharacters?: string;\n suffixCharacters?: string;\n}\n\n/**\n * Split any cased input strings into an array of words.\n */\nexport function split(value: string) {\n let result = value.trim();\n\n result = result\n .replace(SPLIT_LOWER_UPPER_RE, SPLIT_REPLACE_VALUE)\n .replace(SPLIT_UPPER_UPPER_RE, SPLIT_REPLACE_VALUE);\n\n result = result.replace(DEFAULT_STRIP_REGEXP, \"\\0\");\n\n let start = 0;\n let end = result.length;\n\n // Trim the delimiter from around the output string.\n while (result.charAt(start) === \"\\0\") start++;\n if (start === end) return [];\n while (result.charAt(end - 1) === \"\\0\") end--;\n\n return result.slice(start, end).split(/\\0/g);\n}\n\n/**\n * Split the input string into an array of words, separating numbers.\n */\nexport function splitSeparateNumbers(value: string) {\n const words = split(value);\n for (let i = 0; i < words.length; i++) {\n const word = words[i];\n const match = SPLIT_SEPARATE_NUMBER_RE.exec(word);\n if (match) {\n const offset = match.index + (match[1] ?? match[2]).length;\n words.splice(i, 1, word.slice(0, offset), word.slice(offset));\n }\n }\n return words;\n}\n\n/**\n * Convert a string to space separated lower case (`foo bar`).\n */\nexport function noCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n return (\n prefix +\n words.map(lowerFactory(options?.locale)).join(options?.delimiter ?? \" \") +\n suffix\n );\n}\n\n/**\n * Convert a string to camel case (`fooBar`).\n */\nexport function camelCase(input: string, options?: PascalCaseOptions) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = options?.mergeAmbiguousCharacters\n ? capitalCaseTransformFactory(lower, upper)\n : pascalCaseTransformFactory(lower, upper);\n return (\n prefix +\n words\n .map((word, index) => {\n if (index === 0) return lower(word);\n return transform(word, index);\n })\n .join(options?.delimiter ?? \"\") +\n suffix\n );\n}\n\n/**\n * Convert a string to pascal case (`FooBar`).\n */\nexport function pascalCase(input: string, options?: PascalCaseOptions) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = options?.mergeAmbiguousCharacters\n ? capitalCaseTransformFactory(lower, upper)\n : pascalCaseTransformFactory(lower, upper);\n return prefix + words.map(transform).join(options?.delimiter ?? \"\") + suffix;\n}\n\n/**\n * Convert a string to pascal snake case (`Foo_Bar`).\n */\nexport function pascalSnakeCase(input: string, options?: Options) {\n return capitalCase(input, { delimiter: \"_\", ...options });\n}\n\n/**\n * Convert a string to capital case (`Foo Bar`).\n */\nexport function capitalCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n return (\n prefix +\n words\n .map(capitalCaseTransformFactory(lower, upper))\n .join(options?.delimiter ?? \" \") +\n suffix\n );\n}\n\n/**\n * Convert a string to constant case (`FOO_BAR`).\n */\nexport function constantCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n return (\n prefix +\n words.map(upperFactory(options?.locale)).join(options?.delimiter ?? \"_\") +\n suffix\n );\n}\n\n/**\n * Convert a string to dot case (`foo.bar`).\n */\nexport function dotCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \".\", ...options });\n}\n\n/**\n * Convert a string to kebab case (`foo-bar`).\n */\nexport function kebabCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \"-\", ...options });\n}\n\n/**\n * Convert a string to path case (`foo/bar`).\n */\nexport function pathCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \"/\", ...options });\n}\n\n/**\n * Convert a string to path case (`Foo bar`).\n */\nexport function sentenceCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = capitalCaseTransformFactory(lower, upper);\n return (\n prefix +\n words\n .map((word, index) => {\n if (index === 0) return transform(word);\n return lower(word);\n })\n .join(options?.delimiter ?? \" \") +\n suffix\n );\n}\n\n/**\n * Convert a string to snake case (`foo_bar`).\n */\nexport function snakeCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \"_\", ...options });\n}\n\n/**\n * Convert a string to header case (`Foo-Bar`).\n */\nexport function trainCase(input: string, options?: Options) {\n return capitalCase(input, { delimiter: \"-\", ...options });\n}\n\nfunction lowerFactory(locale: Locale): (input: string) => string {\n return locale === false\n ? (input: string) => input.toLowerCase()\n : (input: string) => input.toLocaleLowerCase(locale);\n}\n\nfunction upperFactory(locale: Locale): (input: string) => string {\n return locale === false\n ? (input: string) => input.toUpperCase()\n : (input: string) => input.toLocaleUpperCase(locale);\n}\n\nfunction capitalCaseTransformFactory(\n lower: (input: string) => string,\n upper: (input: string) => string,\n) {\n return (word: string) => `${upper(word[0])}${lower(word.slice(1))}`;\n}\n\nfunction pascalCaseTransformFactory(\n lower: (input: string) => string,\n upper: (input: string) => string,\n) {\n return (word: string, index: number) => {\n const char0 = word[0];\n const initial =\n index > 0 && char0 >= \"0\" && char0 <= \"9\" ? \"_\" + char0 : upper(char0);\n return initial + lower(word.slice(1));\n };\n}\n\nfunction splitPrefixSuffix(\n input: string,\n options: Options = {},\n): [string, string[], string] {\n const splitFn =\n options.split ?? (options.separateNumbers ? splitSeparateNumbers : split);\n const prefixCharacters =\n options.prefixCharacters ?? DEFAULT_PREFIX_SUFFIX_CHARACTERS;\n const suffixCharacters =\n options.suffixCharacters ?? DEFAULT_PREFIX_SUFFIX_CHARACTERS;\n let prefixIndex = 0;\n let suffixIndex = input.length;\n\n while (prefixIndex < input.length) {\n const char = input.charAt(prefixIndex);\n if (!prefixCharacters.includes(char)) break;\n prefixIndex++;\n }\n\n while (suffixIndex > prefixIndex) {\n const index = suffixIndex - 1;\n const char = input.charAt(index);\n if (!suffixCharacters.includes(char)) break;\n suffixIndex = index;\n }\n\n return [\n input.slice(0, prefixIndex),\n splitFn(input.slice(prefixIndex, suffixIndex)),\n input.slice(suffixIndex),\n ];\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { camelCase } from './chunk-
|
|
1
|
+
import { camelCase } from './chunk-GLL5G5KY.js';
|
|
2
2
|
import { init_esm_shims } from './chunk-ETA3LCRB.js';
|
|
3
3
|
|
|
4
4
|
// src/utils/URLPath.ts
|
|
@@ -101,4 +101,4 @@ var URLPath = class {
|
|
|
101
101
|
|
|
102
102
|
export { URLPath };
|
|
103
103
|
//# sourceMappingURL=out.js.map
|
|
104
|
-
//# sourceMappingURL=chunk-
|
|
104
|
+
//# sourceMappingURL=chunk-STP2UI5Q.js.map
|
package/dist/index.cjs
CHANGED
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var chunkLDKM6T7X_cjs = require('./chunk-LDKM6T7X.cjs');
|
|
6
6
|
var chunk5SUBV3F7_cjs = require('./chunk-5SUBV3F7.cjs');
|
|
7
7
|
var chunkOYDUQYAK_cjs = require('./chunk-OYDUQYAK.cjs');
|
|
8
8
|
require('./chunk-2UXXYHS6.cjs');
|
|
9
9
|
require('./chunk-KXP7HD6Z.cjs');
|
|
10
|
-
require('./chunk-
|
|
10
|
+
require('./chunk-N7XIQXXQ.cjs');
|
|
11
11
|
var chunkJSJ3NRBQ_cjs = require('./chunk-JSJ3NRBQ.cjs');
|
|
12
12
|
var chunkXX56SVPB_cjs = require('./chunk-XX56SVPB.cjs');
|
|
13
13
|
require('./chunk-DM53DOLW.cjs');
|
|
@@ -51,7 +51,7 @@ async function setup(options) {
|
|
|
51
51
|
const { config, logger = chunkJSJ3NRBQ_cjs.createLogger({ logLevel: chunkJSJ3NRBQ_cjs.LogLevel.silent }) } = options;
|
|
52
52
|
let count = 0;
|
|
53
53
|
try {
|
|
54
|
-
if (isInputPath(config) && !new
|
|
54
|
+
if (isInputPath(config) && !new chunkLDKM6T7X_cjs.URLPath(config.input.path).isURL) {
|
|
55
55
|
await chunkXX56SVPB_cjs.read(config.input.path);
|
|
56
56
|
}
|
|
57
57
|
} catch (e) {
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { URLPath } from './chunk-
|
|
1
|
+
import { URLPath } from './chunk-STP2UI5Q.js';
|
|
2
2
|
import { clean } from './chunk-IQBEGX4Z.js';
|
|
3
3
|
import { FileManager, PluginManager, isPromise } from './chunk-HI4PB2AG.js';
|
|
4
4
|
export { FileManager, KubbFile, PluginManager, PromiseManager, Warning, createPlugin, pluginName as name, pluginName } from './chunk-HI4PB2AG.js';
|
|
5
5
|
import './chunk-GKW5TTFV.js';
|
|
6
6
|
import './chunk-YW33IVCC.js';
|
|
7
|
-
import './chunk-
|
|
7
|
+
import './chunk-GLL5G5KY.js';
|
|
8
8
|
import { LogLevel, createLogger, p, randomCliColour } from './chunk-V6AVJEQC.js';
|
|
9
9
|
import { read, readSync } from './chunk-YUTCMBUY.js';
|
|
10
10
|
import './chunk-MYC5HIA5.js';
|
package/dist/mocks.cjs
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
require('./chunk-OYDUQYAK.cjs');
|
|
4
4
|
require('./chunk-2UXXYHS6.cjs');
|
|
5
5
|
require('./chunk-KXP7HD6Z.cjs');
|
|
6
|
-
var
|
|
6
|
+
var chunkN7XIQXXQ_cjs = require('./chunk-N7XIQXXQ.cjs');
|
|
7
7
|
require('./chunk-JSJ3NRBQ.cjs');
|
|
8
8
|
require('./chunk-XX56SVPB.cjs');
|
|
9
9
|
require('./chunk-DM53DOLW.cjs');
|
|
@@ -14,7 +14,7 @@ chunkKAA3L7N6_cjs.init_cjs_shims();
|
|
|
14
14
|
var mockedPluginManager = {
|
|
15
15
|
resolveName: ({ name, type }) => {
|
|
16
16
|
if (type === "type") {
|
|
17
|
-
return
|
|
17
|
+
return chunkN7XIQXXQ_cjs.pascalCase(name);
|
|
18
18
|
}
|
|
19
19
|
return name;
|
|
20
20
|
},
|
package/dist/mocks.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import './chunk-HI4PB2AG.js';
|
|
2
2
|
import './chunk-GKW5TTFV.js';
|
|
3
3
|
import './chunk-YW33IVCC.js';
|
|
4
|
-
import { pascalCase } from './chunk-
|
|
4
|
+
import { pascalCase } from './chunk-GLL5G5KY.js';
|
|
5
5
|
import './chunk-V6AVJEQC.js';
|
|
6
6
|
import './chunk-YUTCMBUY.js';
|
|
7
7
|
import './chunk-MYC5HIA5.js';
|
package/dist/transformers.cjs
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var chunk2UXXYHS6_cjs = require('./chunk-2UXXYHS6.cjs');
|
|
6
|
-
var
|
|
6
|
+
var chunkN7XIQXXQ_cjs = require('./chunk-N7XIQXXQ.cjs');
|
|
7
7
|
var chunkKAA3L7N6_cjs = require('./chunk-KAA3L7N6.cjs');
|
|
8
8
|
|
|
9
9
|
// src/transformers/index.ts
|
|
@@ -85,8 +85,9 @@ var transformers_default = {
|
|
|
85
85
|
JSDoc: {
|
|
86
86
|
createJSDocBlockText
|
|
87
87
|
},
|
|
88
|
-
camelCase:
|
|
89
|
-
pascalCase:
|
|
88
|
+
camelCase: chunkN7XIQXXQ_cjs.camelCase,
|
|
89
|
+
pascalCase: chunkN7XIQXXQ_cjs.pascalCase,
|
|
90
|
+
pathCase: chunkN7XIQXXQ_cjs.pathCase
|
|
90
91
|
};
|
|
91
92
|
|
|
92
93
|
Object.defineProperty(exports, "searchAndReplace", {
|
|
@@ -107,11 +108,15 @@ Object.defineProperty(exports, "trimExtName", {
|
|
|
107
108
|
});
|
|
108
109
|
Object.defineProperty(exports, "camelCase", {
|
|
109
110
|
enumerable: true,
|
|
110
|
-
get: function () { return
|
|
111
|
+
get: function () { return chunkN7XIQXXQ_cjs.camelCase; }
|
|
111
112
|
});
|
|
112
113
|
Object.defineProperty(exports, "pascalCase", {
|
|
113
114
|
enumerable: true,
|
|
114
|
-
get: function () { return
|
|
115
|
+
get: function () { return chunkN7XIQXXQ_cjs.pascalCase; }
|
|
116
|
+
});
|
|
117
|
+
Object.defineProperty(exports, "pathCase", {
|
|
118
|
+
enumerable: true,
|
|
119
|
+
get: function () { return chunkN7XIQXXQ_cjs.pathCase; }
|
|
115
120
|
});
|
|
116
121
|
exports.combineCodes = combineCodes;
|
|
117
122
|
exports.createIndent = createIndent;
|
|
@@ -1 +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":"
|
|
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;AAAA,EACA;AACF","sourcesContent":["import { camelCase, pascalCase, pathCase } 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, pathCase } 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 pathCase,\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"]}
|
package/dist/transformers.d.cts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
type Options$1 = {
|
|
2
|
+
/**
|
|
3
|
+
* When set it will replace all `.` with `/`.
|
|
4
|
+
*/
|
|
5
|
+
isFile?: boolean;
|
|
6
|
+
prefix?: string;
|
|
7
|
+
suffix?: string;
|
|
8
|
+
};
|
|
9
|
+
declare function camelCase(text: string, { isFile, prefix, suffix }?: Options$1): string;
|
|
10
|
+
declare function pascalCase(text: string, { isFile, prefix, suffix }?: Options$1): string;
|
|
11
|
+
declare function pathCase(text: string, { isFile, prefix, suffix }?: Options$1): string;
|
|
3
12
|
|
|
4
13
|
declare function combineCodes(codes: string[]): string;
|
|
5
14
|
|
|
@@ -50,6 +59,7 @@ declare const _default: {
|
|
|
50
59
|
};
|
|
51
60
|
readonly camelCase: typeof camelCase;
|
|
52
61
|
readonly pascalCase: typeof pascalCase;
|
|
62
|
+
readonly pathCase: typeof pathCase;
|
|
53
63
|
};
|
|
54
64
|
|
|
55
|
-
export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, searchAndReplace, transformReservedWord, trim, trimExtName };
|
|
65
|
+
export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, pathCase, searchAndReplace, transformReservedWord, trim, trimExtName };
|
package/dist/transformers.d.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
type Options$1 = {
|
|
2
|
+
/**
|
|
3
|
+
* When set it will replace all `.` with `/`.
|
|
4
|
+
*/
|
|
5
|
+
isFile?: boolean;
|
|
6
|
+
prefix?: string;
|
|
7
|
+
suffix?: string;
|
|
8
|
+
};
|
|
9
|
+
declare function camelCase(text: string, { isFile, prefix, suffix }?: Options$1): string;
|
|
10
|
+
declare function pascalCase(text: string, { isFile, prefix, suffix }?: Options$1): string;
|
|
11
|
+
declare function pathCase(text: string, { isFile, prefix, suffix }?: Options$1): string;
|
|
3
12
|
|
|
4
13
|
declare function combineCodes(codes: string[]): string;
|
|
5
14
|
|
|
@@ -50,6 +59,7 @@ declare const _default: {
|
|
|
50
59
|
};
|
|
51
60
|
readonly camelCase: typeof camelCase;
|
|
52
61
|
readonly pascalCase: typeof pascalCase;
|
|
62
|
+
readonly pathCase: typeof pathCase;
|
|
53
63
|
};
|
|
54
64
|
|
|
55
|
-
export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, searchAndReplace, transformReservedWord, trim, trimExtName };
|
|
65
|
+
export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, pathCase, searchAndReplace, transformReservedWord, trim, trimExtName };
|
package/dist/transformers.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { transformReservedWord, searchAndReplace, trim, trimExtName } from './chunk-GKW5TTFV.js';
|
|
2
2
|
export { searchAndReplace, transformReservedWord, trim, trimExtName } from './chunk-GKW5TTFV.js';
|
|
3
|
-
import { camelCase, pascalCase } from './chunk-
|
|
4
|
-
export { camelCase, pascalCase } from './chunk-
|
|
3
|
+
import { camelCase, pascalCase, pathCase } from './chunk-GLL5G5KY.js';
|
|
4
|
+
export { camelCase, pascalCase, pathCase } from './chunk-GLL5G5KY.js';
|
|
5
5
|
import { init_esm_shims } from './chunk-ETA3LCRB.js';
|
|
6
6
|
|
|
7
7
|
// src/transformers/index.ts
|
|
@@ -84,7 +84,8 @@ var transformers_default = {
|
|
|
84
84
|
createJSDocBlockText
|
|
85
85
|
},
|
|
86
86
|
camelCase,
|
|
87
|
-
pascalCase
|
|
87
|
+
pascalCase,
|
|
88
|
+
pathCase
|
|
88
89
|
};
|
|
89
90
|
|
|
90
91
|
export { combineCodes, createIndent, createJSDocBlockText, transformers_default as default, escape, jsStringEscape, nameSorter };
|
package/dist/transformers.js.map
CHANGED
|
@@ -1 +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":"
|
|
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;AAAA,EACA;AACF","sourcesContent":["import { camelCase, pascalCase, pathCase } 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, pathCase } 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 pathCase,\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"]}
|
package/dist/utils.cjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkLDKM6T7X_cjs = require('./chunk-LDKM6T7X.cjs');
|
|
4
4
|
var chunkKXP7HD6Z_cjs = require('./chunk-KXP7HD6Z.cjs');
|
|
5
|
-
var
|
|
5
|
+
var chunkN7XIQXXQ_cjs = require('./chunk-N7XIQXXQ.cjs');
|
|
6
6
|
var chunkKAA3L7N6_cjs = require('./chunk-KAA3L7N6.cjs');
|
|
7
7
|
var naturalOrderby = require('natural-orderby');
|
|
8
8
|
|
|
@@ -35,7 +35,7 @@ var FunctionParams = class {
|
|
|
35
35
|
acc.push(`${type}${rest.default ? ` = ${rest.default}` : ""}`);
|
|
36
36
|
return acc;
|
|
37
37
|
}
|
|
38
|
-
const parameterName = name.startsWith("{") ? name :
|
|
38
|
+
const parameterName = name.startsWith("{") ? name : chunkN7XIQXXQ_cjs.camelCase(name);
|
|
39
39
|
if (type) {
|
|
40
40
|
if (required) {
|
|
41
41
|
acc.push(`${parameterName}: ${type}${rest.default ? ` = ${rest.default}` : ""}`);
|
|
@@ -99,7 +99,7 @@ async function timeout(ms) {
|
|
|
99
99
|
|
|
100
100
|
Object.defineProperty(exports, "URLPath", {
|
|
101
101
|
enumerable: true,
|
|
102
|
-
get: function () { return
|
|
102
|
+
get: function () { return chunkLDKM6T7X_cjs.URLPath; }
|
|
103
103
|
});
|
|
104
104
|
Object.defineProperty(exports, "getUniqueName", {
|
|
105
105
|
enumerable: true,
|
package/dist/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { URLPath } from './chunk-
|
|
1
|
+
export { URLPath } from './chunk-STP2UI5Q.js';
|
|
2
2
|
export { getUniqueName, setUniqueName } from './chunk-YW33IVCC.js';
|
|
3
|
-
import { camelCase } from './chunk-
|
|
3
|
+
import { camelCase } from './chunk-GLL5G5KY.js';
|
|
4
4
|
import { init_esm_shims } from './chunk-ETA3LCRB.js';
|
|
5
5
|
import { orderBy } from 'natural-orderby';
|
|
6
6
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kubb/core",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.1",
|
|
4
4
|
"description": "Generator core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -76,8 +76,8 @@
|
|
|
76
76
|
"p-queue": "^8.0.1",
|
|
77
77
|
"seedrandom": "^3.0.5",
|
|
78
78
|
"semver": "^7.5.4",
|
|
79
|
-
"@kubb/parser": "2.4.
|
|
80
|
-
"@kubb/types": "2.4.
|
|
79
|
+
"@kubb/parser": "2.4.1",
|
|
80
|
+
"@kubb/types": "2.4.1"
|
|
81
81
|
},
|
|
82
82
|
"devDependencies": {
|
|
83
83
|
"@types/fs-extra": "^11.0.4",
|
|
@@ -1,9 +1,37 @@
|
|
|
1
|
-
import { camelCase as
|
|
1
|
+
import { camelCase as changeCamelCase, pascalCase as changePascalCase, pathCase as changePathCase } from 'change-case'
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
type Options = {
|
|
4
|
+
/**
|
|
5
|
+
* When set it will replace all `.` with `/`.
|
|
6
|
+
*/
|
|
7
|
+
isFile?: boolean
|
|
8
|
+
prefix?: string
|
|
9
|
+
suffix?: string
|
|
5
10
|
}
|
|
6
11
|
|
|
7
|
-
export function
|
|
8
|
-
|
|
12
|
+
export function camelCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {
|
|
13
|
+
if (isFile) {
|
|
14
|
+
const splitArray = text.split('.')
|
|
15
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? camelCase(item, { prefix, suffix }) : camelCase(item)).join('/')
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return changeCamelCase(`${prefix} ${text} ${suffix}`, { delimiter: '', mergeAmbiguousCharacters: true })
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export function pascalCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {
|
|
22
|
+
if (isFile) {
|
|
23
|
+
const splitArray = text.split('.')
|
|
24
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? pascalCase(item, { prefix, suffix }) : camelCase(item)).join('/')
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return changePascalCase(`${prefix} ${text} ${suffix}`, { delimiter: '', mergeAmbiguousCharacters: true })
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function pathCase(text: string, { isFile, prefix = '', suffix = '' }: Options = {}): string {
|
|
31
|
+
if (isFile) {
|
|
32
|
+
const splitArray = text.split('.')
|
|
33
|
+
return splitArray.map((item, i) => i === splitArray.length - 1 ? pathCase(item, { prefix, suffix }) : camelCase(item)).join('/')
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
return changePathCase(`${prefix} ${text} ${suffix}`, { delimiter: '' })
|
|
9
37
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { camelCase, pascalCase } from './casing.ts'
|
|
1
|
+
import { camelCase, pascalCase, pathCase } from './casing.ts'
|
|
2
2
|
import { combineCodes } from './combineCodes.ts'
|
|
3
3
|
import { createJSDocBlockText } from './createJSDocBlockText.ts'
|
|
4
4
|
import { escape, jsStringEscape } from './escape.ts'
|
|
@@ -8,7 +8,7 @@ import { searchAndReplace } from './searchAndReplace.ts'
|
|
|
8
8
|
import { transformReservedWord } from './transformReservedWord.ts'
|
|
9
9
|
import { trim, trimExtName } from './trim.ts'
|
|
10
10
|
|
|
11
|
-
export { camelCase, pascalCase } from './casing.ts'
|
|
11
|
+
export { camelCase, pascalCase, pathCase } from './casing.ts'
|
|
12
12
|
export { combineCodes } from './combineCodes.ts'
|
|
13
13
|
export { createJSDocBlockText } from './createJSDocBlockText.ts'
|
|
14
14
|
export { escape, jsStringEscape } from './escape.ts'
|
|
@@ -33,4 +33,5 @@ export default {
|
|
|
33
33
|
},
|
|
34
34
|
camelCase,
|
|
35
35
|
pascalCase,
|
|
36
|
+
pathCase,
|
|
36
37
|
} as const
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/transformers/casing.ts","../../../node_modules/.pnpm/change-case@5.4.2/node_modules/change-case/src/index.ts"],"names":["camelCase","pascalCase"],"mappings":"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","sourcesContent":["import { camelCase as changeCaseCamel, pascalCase as changePascalCase } from 'change-case'\n\nexport function camelCase(text: string): string {\n return changeCaseCamel(text, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n\nexport function pascalCase(text: string): string {\n return changePascalCase(text, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n","// Regexps involved with splitting words in various case formats.\nconst SPLIT_LOWER_UPPER_RE = /([\\p{Ll}\\d])(\\p{Lu})/gu;\nconst SPLIT_UPPER_UPPER_RE = /(\\p{Lu})([\\p{Lu}][\\p{Ll}])/gu;\n\n// Used to iterate over the initial split result and separate numbers.\nconst SPLIT_SEPARATE_NUMBER_RE = /(\\d)\\p{Ll}|(\\p{L})\\d/u;\n\n// Regexp involved with stripping non-word characters from the result.\nconst DEFAULT_STRIP_REGEXP = /[^\\p{L}\\d]+/giu;\n\n// The replacement value for splits.\nconst SPLIT_REPLACE_VALUE = \"$1\\0$2\";\n\n// The default characters to keep after transforming case.\nconst DEFAULT_PREFIX_SUFFIX_CHARACTERS = \"\";\n\n/**\n * Supported locale values. Use `false` to ignore locale.\n * Defaults to `undefined`, which uses the host environment.\n */\nexport type Locale = string[] | string | false | undefined;\n\n/**\n * Options used for converting strings to pascal/camel case.\n */\nexport interface PascalCaseOptions extends Options {\n mergeAmbiguousCharacters?: boolean;\n}\n\n/**\n * Options used for converting strings to any case.\n */\nexport interface Options {\n locale?: Locale;\n split?: (value: string) => string[];\n /** @deprecated Pass `split: splitSeparateNumbers` instead. */\n separateNumbers?: boolean;\n delimiter?: string;\n prefixCharacters?: string;\n suffixCharacters?: string;\n}\n\n/**\n * Split any cased input strings into an array of words.\n */\nexport function split(value: string) {\n let result = value.trim();\n\n result = result\n .replace(SPLIT_LOWER_UPPER_RE, SPLIT_REPLACE_VALUE)\n .replace(SPLIT_UPPER_UPPER_RE, SPLIT_REPLACE_VALUE);\n\n result = result.replace(DEFAULT_STRIP_REGEXP, \"\\0\");\n\n let start = 0;\n let end = result.length;\n\n // Trim the delimiter from around the output string.\n while (result.charAt(start) === \"\\0\") start++;\n if (start === end) return [];\n while (result.charAt(end - 1) === \"\\0\") end--;\n\n return result.slice(start, end).split(/\\0/g);\n}\n\n/**\n * Split the input string into an array of words, separating numbers.\n */\nexport function splitSeparateNumbers(value: string) {\n const words = split(value);\n for (let i = 0; i < words.length; i++) {\n const word = words[i];\n const match = SPLIT_SEPARATE_NUMBER_RE.exec(word);\n if (match) {\n const offset = match.index + (match[1] ?? match[2]).length;\n words.splice(i, 1, word.slice(0, offset), word.slice(offset));\n }\n }\n return words;\n}\n\n/**\n * Convert a string to space separated lower case (`foo bar`).\n */\nexport function noCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n return (\n prefix +\n words.map(lowerFactory(options?.locale)).join(options?.delimiter ?? \" \") +\n suffix\n );\n}\n\n/**\n * Convert a string to camel case (`fooBar`).\n */\nexport function camelCase(input: string, options?: PascalCaseOptions) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = options?.mergeAmbiguousCharacters\n ? capitalCaseTransformFactory(lower, upper)\n : pascalCaseTransformFactory(lower, upper);\n return (\n prefix +\n words\n .map((word, index) => {\n if (index === 0) return lower(word);\n return transform(word, index);\n })\n .join(options?.delimiter ?? \"\") +\n suffix\n );\n}\n\n/**\n * Convert a string to pascal case (`FooBar`).\n */\nexport function pascalCase(input: string, options?: PascalCaseOptions) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = options?.mergeAmbiguousCharacters\n ? capitalCaseTransformFactory(lower, upper)\n : pascalCaseTransformFactory(lower, upper);\n return prefix + words.map(transform).join(options?.delimiter ?? \"\") + suffix;\n}\n\n/**\n * Convert a string to pascal snake case (`Foo_Bar`).\n */\nexport function pascalSnakeCase(input: string, options?: Options) {\n return capitalCase(input, { delimiter: \"_\", ...options });\n}\n\n/**\n * Convert a string to capital case (`Foo Bar`).\n */\nexport function capitalCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n return (\n prefix +\n words\n .map(capitalCaseTransformFactory(lower, upper))\n .join(options?.delimiter ?? \" \") +\n suffix\n );\n}\n\n/**\n * Convert a string to constant case (`FOO_BAR`).\n */\nexport function constantCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n return (\n prefix +\n words.map(upperFactory(options?.locale)).join(options?.delimiter ?? \"_\") +\n suffix\n );\n}\n\n/**\n * Convert a string to dot case (`foo.bar`).\n */\nexport function dotCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \".\", ...options });\n}\n\n/**\n * Convert a string to kebab case (`foo-bar`).\n */\nexport function kebabCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \"-\", ...options });\n}\n\n/**\n * Convert a string to path case (`foo/bar`).\n */\nexport function pathCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \"/\", ...options });\n}\n\n/**\n * Convert a string to path case (`Foo bar`).\n */\nexport function sentenceCase(input: string, options?: Options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = capitalCaseTransformFactory(lower, upper);\n return (\n prefix +\n words\n .map((word, index) => {\n if (index === 0) return transform(word);\n return lower(word);\n })\n .join(options?.delimiter ?? \" \") +\n suffix\n );\n}\n\n/**\n * Convert a string to snake case (`foo_bar`).\n */\nexport function snakeCase(input: string, options?: Options) {\n return noCase(input, { delimiter: \"_\", ...options });\n}\n\n/**\n * Convert a string to header case (`Foo-Bar`).\n */\nexport function trainCase(input: string, options?: Options) {\n return capitalCase(input, { delimiter: \"-\", ...options });\n}\n\nfunction lowerFactory(locale: Locale): (input: string) => string {\n return locale === false\n ? (input: string) => input.toLowerCase()\n : (input: string) => input.toLocaleLowerCase(locale);\n}\n\nfunction upperFactory(locale: Locale): (input: string) => string {\n return locale === false\n ? (input: string) => input.toUpperCase()\n : (input: string) => input.toLocaleUpperCase(locale);\n}\n\nfunction capitalCaseTransformFactory(\n lower: (input: string) => string,\n upper: (input: string) => string,\n) {\n return (word: string) => `${upper(word[0])}${lower(word.slice(1))}`;\n}\n\nfunction pascalCaseTransformFactory(\n lower: (input: string) => string,\n upper: (input: string) => string,\n) {\n return (word: string, index: number) => {\n const char0 = word[0];\n const initial =\n index > 0 && char0 >= \"0\" && char0 <= \"9\" ? \"_\" + char0 : upper(char0);\n return initial + lower(word.slice(1));\n };\n}\n\nfunction splitPrefixSuffix(\n input: string,\n options: Options = {},\n): [string, string[], string] {\n const splitFn =\n options.split ?? (options.separateNumbers ? splitSeparateNumbers : split);\n const prefixCharacters =\n options.prefixCharacters ?? DEFAULT_PREFIX_SUFFIX_CHARACTERS;\n const suffixCharacters =\n options.suffixCharacters ?? DEFAULT_PREFIX_SUFFIX_CHARACTERS;\n let prefixIndex = 0;\n let suffixIndex = input.length;\n\n while (prefixIndex < input.length) {\n const char = input.charAt(prefixIndex);\n if (!prefixCharacters.includes(char)) break;\n prefixIndex++;\n }\n\n while (suffixIndex > prefixIndex) {\n const index = suffixIndex - 1;\n const char = input.charAt(index);\n if (!suffixCharacters.includes(char)) break;\n suffixIndex = index;\n }\n\n return [\n input.slice(0, prefixIndex),\n splitFn(input.slice(prefixIndex, suffixIndex)),\n input.slice(suffixIndex),\n ];\n}\n"]}
|
package/dist/chunk-MASAFU3G.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { init_esm_shims } from './chunk-ETA3LCRB.js';
|
|
2
|
-
import { camelCase as camelCase$1, pascalCase as pascalCase$1 } from 'change-case';
|
|
3
|
-
|
|
4
|
-
// src/transformers/casing.ts
|
|
5
|
-
init_esm_shims();
|
|
6
|
-
function camelCase(text) {
|
|
7
|
-
return camelCase$1(text, { delimiter: "", mergeAmbiguousCharacters: true });
|
|
8
|
-
}
|
|
9
|
-
function pascalCase(text) {
|
|
10
|
-
return pascalCase$1(text, { delimiter: "", mergeAmbiguousCharacters: true });
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export { camelCase, pascalCase };
|
|
14
|
-
//# sourceMappingURL=out.js.map
|
|
15
|
-
//# sourceMappingURL=chunk-MASAFU3G.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/transformers/casing.ts"],"names":[],"mappings":";;;;;AAAA;AAAA,SAAS,aAAa,iBAAiB,cAAc,wBAAwB;AAEtE,SAAS,UAAU,MAAsB;AAC9C,SAAO,gBAAgB,MAAM,EAAE,WAAW,IAAI,0BAA0B,KAAK,CAAC;AAChF;AAEO,SAAS,WAAW,MAAsB;AAC/C,SAAO,iBAAiB,MAAM,EAAE,WAAW,IAAI,0BAA0B,KAAK,CAAC;AACjF","sourcesContent":["import { camelCase as changeCaseCamel, pascalCase as changePascalCase } from 'change-case'\n\nexport function camelCase(text: string): string {\n return changeCaseCamel(text, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n\nexport function pascalCase(text: string): string {\n return changePascalCase(text, { delimiter: '', mergeAmbiguousCharacters: true })\n}\n"]}
|
|
File without changes
|
|
File without changes
|