@kubb/core 3.0.0-alpha.9 → 3.0.0-beta.10
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/README.md +14 -5
- package/dist/{FileManager-B0GJlthB.d.cts → FileManager-Cn8nSj1H.d.ts} +101 -83
- package/dist/{FileManager-BFycBDqG.d.ts → FileManager-DKZ30qz_.d.cts} +101 -83
- package/dist/chunk-2EU7DMPM.js +2 -3
- package/dist/chunk-2EU7DMPM.js.map +1 -1
- package/dist/{chunk-DID47EQD.cjs → chunk-2U6NQV4E.cjs} +6 -7
- package/dist/chunk-2U6NQV4E.cjs.map +1 -0
- package/dist/{chunk-SEH6NUCX.cjs → chunk-6XTAOEVP.cjs} +10 -10
- package/dist/chunk-6XTAOEVP.cjs.map +1 -0
- package/dist/{chunk-4X5FFJPJ.js → chunk-BQXM32UO.js} +11 -16
- package/dist/chunk-BQXM32UO.js.map +1 -0
- package/dist/{chunk-27CPVXAT.js → chunk-DXGMSPTW.js} +174 -231
- package/dist/chunk-DXGMSPTW.js.map +1 -0
- package/dist/{chunk-SCR3LUXT.js → chunk-E6CN2CZC.js} +38 -27
- package/dist/chunk-E6CN2CZC.js.map +1 -0
- package/dist/chunk-HBQM723K.js +12 -26
- package/dist/chunk-HBQM723K.js.map +1 -1
- package/dist/{chunk-5IGANEGE.cjs → chunk-I2VBU4S2.cjs} +268 -301
- package/dist/chunk-I2VBU4S2.cjs.map +1 -0
- package/dist/{chunk-5E2I6KH4.cjs → chunk-MNBVVNEF.cjs} +54 -37
- package/dist/chunk-MNBVVNEF.cjs.map +1 -0
- package/dist/{chunk-A6PCLWEY.cjs → chunk-PKTBHC5T.cjs} +30 -31
- package/dist/chunk-PKTBHC5T.cjs.map +1 -0
- package/dist/{chunk-IPZQXBA2.cjs → chunk-S22N4SXV.cjs} +57 -34
- package/dist/chunk-S22N4SXV.cjs.map +1 -0
- package/dist/index.cjs +223 -241
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -6
- package/dist/index.d.ts +4 -6
- package/dist/index.js +106 -148
- package/dist/index.js.map +1 -1
- package/dist/{logger-BWFeedRk.d.cts → logger-DvbHXjIO.d.cts} +10 -8
- package/dist/{logger-BWFeedRk.d.ts → logger-DvbHXjIO.d.ts} +10 -8
- package/dist/logger.cjs +25 -14
- package/dist/logger.cjs.map +1 -1
- package/dist/logger.d.cts +1 -1
- package/dist/logger.d.ts +1 -1
- package/dist/logger.js +3 -13
- package/dist/logger.js.map +1 -1
- package/dist/mocks.cjs +29 -24
- package/dist/mocks.cjs.map +1 -1
- package/dist/mocks.d.cts +4 -3
- package/dist/mocks.d.ts +4 -3
- package/dist/mocks.js +22 -25
- package/dist/mocks.js.map +1 -1
- package/dist/{prompt-DVQN7JTN.cjs → prompt-3GFRRR4Q.cjs} +89 -89
- package/dist/prompt-3GFRRR4Q.cjs.map +1 -0
- package/dist/prompt-WQQUN22Z.js +8 -13
- package/dist/prompt-WQQUN22Z.js.map +1 -1
- package/dist/transformers.cjs +63 -52
- package/dist/transformers.cjs.map +1 -1
- package/dist/transformers.d.cts +1 -1
- package/dist/transformers.d.ts +1 -1
- package/dist/transformers.js +10 -37
- package/dist/transformers.js.map +1 -1
- package/dist/utils.cjs +65 -34
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +6 -8
- package/dist/utils.d.ts +6 -8
- package/dist/utils.js +3 -33
- package/dist/utils.js.map +1 -1
- package/package.json +10 -13
- package/src/BarrelManager.ts +76 -74
- package/src/FileManager.ts +55 -60
- package/src/PluginManager.ts +61 -61
- package/src/PromiseManager.ts +1 -1
- package/src/__snapshots__/barrel.json +11 -29
- package/src/__snapshots__/grouped.json +18 -12
- package/src/__snapshots__/ordered.json +18 -12
- package/src/build.ts +24 -11
- package/src/config.ts +2 -4
- package/src/index.ts +1 -1
- package/src/logger.ts +41 -7
- package/src/plugin.ts +0 -3
- package/src/transformers/escape.ts +0 -10
- package/src/transformers/stringify.ts +1 -1
- package/src/types.ts +77 -46
- package/src/utils/TreeNode.ts +31 -56
- package/src/utils/executeStrategies.ts +2 -2
- package/src/utils/parser.ts +38 -39
- package/dist/chunk-27CPVXAT.js.map +0 -1
- package/dist/chunk-4X5FFJPJ.js.map +0 -1
- package/dist/chunk-5E2I6KH4.cjs.map +0 -1
- package/dist/chunk-5IGANEGE.cjs.map +0 -1
- package/dist/chunk-A6PCLWEY.cjs.map +0 -1
- package/dist/chunk-DID47EQD.cjs.map +0 -1
- package/dist/chunk-IPZQXBA2.cjs.map +0 -1
- package/dist/chunk-SCR3LUXT.js.map +0 -1
- package/dist/chunk-SEH6NUCX.cjs.map +0 -1
- package/dist/prompt-DVQN7JTN.cjs.map +0 -1
- package/src/utils/cache.ts +0 -35
|
@@ -2,16 +2,12 @@ import { write, read } from '@kubb/fs';
|
|
|
2
2
|
import * as KubbFile from '@kubb/fs/types';
|
|
3
3
|
import { ResolvedFile } from '@kubb/fs/types';
|
|
4
4
|
import { PossiblePromise, GreaterThan } from '@kubb/types';
|
|
5
|
-
import { E as EventEmitter, L as Logger } from './logger-
|
|
5
|
+
import { E as EventEmitter, L as Logger } from './logger-DvbHXjIO.cjs';
|
|
6
6
|
|
|
7
7
|
type RequiredPluginLifecycle = Required<PluginLifecycle>;
|
|
8
|
-
|
|
9
|
-
* Get the type of the first argument in a function.
|
|
10
|
-
* @example Arg0<(a: string, b: number) => void> -> string
|
|
11
|
-
*/
|
|
12
|
-
type Argument0<H extends keyof PluginLifecycle> = Parameters<RequiredPluginLifecycle[H]>[0];
|
|
13
|
-
type Strategy = 'hookFirst' | 'hookForPlugin' | 'hookParallel' | 'hookReduceArg0' | 'hookSeq';
|
|
8
|
+
type Strategy = 'hookFirst' | 'hookForPlugin' | 'hookParallel' | 'hookSeq';
|
|
14
9
|
type Executer<H extends PluginLifecycleHooks = PluginLifecycleHooks> = {
|
|
10
|
+
message: string;
|
|
15
11
|
strategy: Strategy;
|
|
16
12
|
hookName: H;
|
|
17
13
|
plugin: Plugin;
|
|
@@ -27,20 +23,20 @@ type Options = {
|
|
|
27
23
|
logger: Logger;
|
|
28
24
|
};
|
|
29
25
|
type Events = {
|
|
30
|
-
|
|
26
|
+
executing: [executer: Executer];
|
|
31
27
|
executed: [executer: Executer];
|
|
32
28
|
error: [error: Error];
|
|
33
29
|
};
|
|
34
30
|
type GetFileProps<TOptions = object> = {
|
|
35
31
|
name: string;
|
|
36
32
|
mode?: KubbFile.Mode;
|
|
37
|
-
|
|
33
|
+
extname: KubbFile.Extname;
|
|
38
34
|
pluginKey: Plugin['key'];
|
|
39
35
|
options?: TOptions;
|
|
40
36
|
};
|
|
41
37
|
declare class PluginManager {
|
|
42
38
|
#private;
|
|
43
|
-
readonly plugins:
|
|
39
|
+
readonly plugins: Set<Plugin<PluginFactoryOptions<string, object, object, any, object>>>;
|
|
44
40
|
readonly fileManager: FileManager;
|
|
45
41
|
readonly events: EventEmitter<Events>;
|
|
46
42
|
readonly config: Config;
|
|
@@ -48,7 +44,7 @@ declare class PluginManager {
|
|
|
48
44
|
readonly logger: Logger;
|
|
49
45
|
readonly options: Options;
|
|
50
46
|
constructor(config: Config, options: Options);
|
|
51
|
-
getFile<TOptions = object>({ name, mode,
|
|
47
|
+
getFile<TOptions = object>({ name, mode, extname, pluginKey, options }: GetFileProps<TOptions>): KubbFile.File<{
|
|
52
48
|
pluginKey: Plugin['key'];
|
|
53
49
|
}>;
|
|
54
50
|
resolvePath: <TOptions = object>(params: ResolvePathParams<TOptions>) => KubbFile.OptionalPath;
|
|
@@ -60,143 +56,141 @@ declare class PluginManager {
|
|
|
60
56
|
/**
|
|
61
57
|
* Run a specific hookName for plugin x.
|
|
62
58
|
*/
|
|
63
|
-
hookForPlugin<H extends PluginLifecycleHooks>({ pluginKey, hookName, parameters, }: {
|
|
59
|
+
hookForPlugin<H extends PluginLifecycleHooks>({ pluginKey, hookName, parameters, message, }: {
|
|
64
60
|
pluginKey: Plugin['key'];
|
|
65
61
|
hookName: H;
|
|
66
62
|
parameters: PluginParameter<H>;
|
|
63
|
+
message: string;
|
|
67
64
|
}): Promise<Array<ReturnType<ParseResult<H>> | null>>;
|
|
68
65
|
/**
|
|
69
66
|
* Run a specific hookName for plugin x.
|
|
70
67
|
*/
|
|
71
|
-
hookForPluginSync<H extends PluginLifecycleHooks>({ pluginKey, hookName, parameters, }: {
|
|
68
|
+
hookForPluginSync<H extends PluginLifecycleHooks>({ pluginKey, hookName, parameters, message, }: {
|
|
72
69
|
pluginKey: Plugin['key'];
|
|
73
70
|
hookName: H;
|
|
74
71
|
parameters: PluginParameter<H>;
|
|
72
|
+
message: string;
|
|
75
73
|
}): Array<ReturnType<ParseResult<H>>> | null;
|
|
76
74
|
/**
|
|
77
75
|
* First non-null result stops and will return it's value.
|
|
78
76
|
*/
|
|
79
|
-
hookFirst<H extends PluginLifecycleHooks>({ hookName, parameters, skipped, }: {
|
|
77
|
+
hookFirst<H extends PluginLifecycleHooks>({ hookName, parameters, skipped, message, }: {
|
|
80
78
|
hookName: H;
|
|
81
79
|
parameters: PluginParameter<H>;
|
|
82
80
|
skipped?: ReadonlySet<Plugin> | null;
|
|
81
|
+
message: string;
|
|
83
82
|
}): Promise<SafeParseResult<H>>;
|
|
84
83
|
/**
|
|
85
84
|
* First non-null result stops and will return it's value.
|
|
86
85
|
*/
|
|
87
|
-
hookFirstSync<H extends PluginLifecycleHooks>({ hookName, parameters, skipped, }: {
|
|
86
|
+
hookFirstSync<H extends PluginLifecycleHooks>({ hookName, parameters, skipped, message, }: {
|
|
88
87
|
hookName: H;
|
|
89
88
|
parameters: PluginParameter<H>;
|
|
90
89
|
skipped?: ReadonlySet<Plugin> | null;
|
|
90
|
+
message: string;
|
|
91
91
|
}): SafeParseResult<H>;
|
|
92
92
|
/**
|
|
93
93
|
* Run all plugins in parallel(order will be based on `this.plugin` and if `pre` or `post` is set).
|
|
94
94
|
*/
|
|
95
|
-
hookParallel<H extends PluginLifecycleHooks, TOuput = void>({ hookName, parameters, }: {
|
|
95
|
+
hookParallel<H extends PluginLifecycleHooks, TOuput = void>({ hookName, parameters, message, }: {
|
|
96
96
|
hookName: H;
|
|
97
97
|
parameters?: Parameters<RequiredPluginLifecycle[H]> | undefined;
|
|
98
|
+
message: string;
|
|
98
99
|
}): Promise<Awaited<TOuput>[]>;
|
|
99
|
-
/**
|
|
100
|
-
* Chain all plugins, `reduce` can be passed through to handle every returned value. The return value of the first plugin will be used as the first parameter for the plugin after that.
|
|
101
|
-
*/
|
|
102
|
-
hookReduceArg0<H extends PluginLifecycleHooks>({ hookName, parameters, reduce, }: {
|
|
103
|
-
hookName: H;
|
|
104
|
-
parameters: PluginParameter<H>;
|
|
105
|
-
reduce: (reduction: Argument0<H>, result: ReturnType<ParseResult<H>>, plugin: Plugin) => PossiblePromise<Argument0<H> | null>;
|
|
106
|
-
}): Promise<Argument0<H>>;
|
|
107
100
|
/**
|
|
108
101
|
* Chains plugins
|
|
109
102
|
*/
|
|
110
|
-
hookSeq<H extends PluginLifecycleHooks>({ hookName, parameters }: {
|
|
103
|
+
hookSeq<H extends PluginLifecycleHooks>({ hookName, parameters, message, }: {
|
|
111
104
|
hookName: H;
|
|
112
105
|
parameters?: PluginParameter<H>;
|
|
106
|
+
message: string;
|
|
113
107
|
}): Promise<void>;
|
|
114
108
|
getPluginsByKey(hookName: keyof PluginLifecycle, pluginKey: Plugin['key']): Plugin[];
|
|
115
109
|
static getDependedPlugins<T1 extends PluginFactoryOptions, T2 extends PluginFactoryOptions = never, T3 extends PluginFactoryOptions = never, TOutput = T3 extends never ? (T2 extends never ? [T1: Plugin<T1>] : [T1: Plugin<T1>, T2: Plugin<T2>]) : [T1: Plugin<T1>, T2: Plugin<T2>, T3: Plugin<T3>]>(plugins: Array<Plugin>, dependedPluginNames: string | string[]): TOutput;
|
|
116
110
|
static get hooks(): readonly ["buildStart", "resolvePath", "resolveName", "buildEnd"];
|
|
117
111
|
}
|
|
118
112
|
|
|
119
|
-
interface Cache<TStore extends object = object> {
|
|
120
|
-
delete(id: keyof TStore): boolean;
|
|
121
|
-
get(id: keyof TStore): TStore[keyof TStore] | null;
|
|
122
|
-
has(id: keyof TStore): boolean;
|
|
123
|
-
set(id: keyof TStore, value: unknown): void;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
113
|
/**
|
|
127
|
-
* Config used in `kubb.config.
|
|
114
|
+
* Config used in `kubb.config.ts`
|
|
128
115
|
*
|
|
129
|
-
* @example
|
|
116
|
+
* @example
|
|
117
|
+
* import { defineConfig } from '@kubb/core'
|
|
130
118
|
* export default defineConfig({
|
|
131
119
|
* ...
|
|
132
120
|
* })
|
|
133
121
|
*/
|
|
134
122
|
type UserConfig = Omit<Config, 'root' | 'plugins'> & {
|
|
135
123
|
/**
|
|
136
|
-
*
|
|
137
|
-
* the location of the config file itself.
|
|
124
|
+
* The project root directory, which can be either an absolute path or a path relative to the location of your `kubb.config.ts` file.
|
|
138
125
|
* @default process.cwd()
|
|
139
126
|
*/
|
|
140
127
|
root?: string;
|
|
141
128
|
/**
|
|
142
|
-
*
|
|
129
|
+
* An array of Kubb plugins used for generation. Each plugin may have additional configurable options (defined within the plugin itself). If a plugin relies on another plugin, an error will occur if the required dependency is missing. Refer to “pre” for more details.
|
|
143
130
|
*/
|
|
144
131
|
plugins?: Array<Omit<UnknownUserPlugin, 'context'>>;
|
|
145
132
|
};
|
|
146
133
|
type InputPath = {
|
|
147
134
|
/**
|
|
148
|
-
*
|
|
135
|
+
* Specify your Swagger/OpenAPI file, either as an absolute path or a path relative to the root.
|
|
149
136
|
*/
|
|
150
137
|
path: string;
|
|
151
138
|
};
|
|
152
139
|
type InputData = {
|
|
153
140
|
/**
|
|
154
|
-
* `string` or `object`
|
|
141
|
+
* A `string` or `object` that contains your Swagger/OpenAPI data.
|
|
155
142
|
*/
|
|
156
143
|
data: string | unknown;
|
|
157
144
|
};
|
|
158
145
|
type Input = InputPath | InputData;
|
|
146
|
+
type BarrelType = 'all' | 'named';
|
|
159
147
|
/**
|
|
160
148
|
* @private
|
|
161
149
|
*/
|
|
162
150
|
type Config<TInput = Input> = {
|
|
163
151
|
/**
|
|
164
|
-
*
|
|
152
|
+
* The name to display in the CLI output.
|
|
165
153
|
*/
|
|
166
154
|
name?: string;
|
|
167
155
|
/**
|
|
168
|
-
*
|
|
169
|
-
* the location of the config file itself.
|
|
156
|
+
* The project root directory, which can be either an absolute path or a path relative to the location of your `kubb.config.ts` file.
|
|
170
157
|
* @default process.cwd()
|
|
171
158
|
*/
|
|
172
159
|
root: string;
|
|
160
|
+
/**
|
|
161
|
+
* You can use either `input.path` or `input.data`, depending on your specific needs.
|
|
162
|
+
*/
|
|
173
163
|
input: TInput;
|
|
174
164
|
output: {
|
|
175
165
|
/**
|
|
176
|
-
*
|
|
177
|
-
* This can be an absolute path
|
|
166
|
+
* The path where all generated files will be exported.
|
|
167
|
+
* This can be an absolute path or a path relative to the specified root option.
|
|
178
168
|
*/
|
|
179
169
|
path: string;
|
|
180
170
|
/**
|
|
181
|
-
* Clean output directory before each build.
|
|
171
|
+
* Clean the output directory before each build.
|
|
182
172
|
*/
|
|
183
173
|
clean?: boolean;
|
|
184
174
|
/**
|
|
185
|
-
*
|
|
186
|
-
* This is being used for the playground.
|
|
175
|
+
* Save files to the file system.
|
|
187
176
|
* @default true
|
|
188
177
|
*/
|
|
189
178
|
write?: boolean;
|
|
190
179
|
/**
|
|
191
|
-
*
|
|
192
|
-
* @default
|
|
180
|
+
* Override the extension to the generated imports and exports, by default each plugin will add an extension
|
|
181
|
+
* @default { '.ts': '.ts'}
|
|
182
|
+
*/
|
|
183
|
+
extension?: Record<KubbFile.Extname, KubbFile.Extname>;
|
|
184
|
+
/**
|
|
185
|
+
* Specify how `index.ts` files should be created. You can also disable the generation of barrel files here. While each plugin has its own `barrelType` option, this setting controls the creation of the root barrel file, such as` src/gen/index.ts`.
|
|
186
|
+
* @default 'named'
|
|
193
187
|
*/
|
|
194
|
-
|
|
188
|
+
barrelType?: BarrelType | false;
|
|
195
189
|
};
|
|
196
190
|
/**
|
|
197
|
-
*
|
|
198
|
-
*
|
|
199
|
-
*
|
|
191
|
+
* An array of Kubb plugins that will be used in the generation.
|
|
192
|
+
* Each plugin may include additional configurable options(defined in the plugin itself).
|
|
193
|
+
* If a plugin depends on another plugin, an error will be returned if the required dependency is missing. See pre for more details.
|
|
200
194
|
*/
|
|
201
195
|
plugins?: Array<Plugin>;
|
|
202
196
|
/**
|
|
@@ -281,21 +275,6 @@ type Plugin<TOptions extends PluginFactoryOptions = PluginFactoryOptions> = {
|
|
|
281
275
|
* @private
|
|
282
276
|
*/
|
|
283
277
|
key: TOptions['key'];
|
|
284
|
-
output?: {
|
|
285
|
-
/**
|
|
286
|
-
* Output to save the clients.
|
|
287
|
-
*/
|
|
288
|
-
path: string;
|
|
289
|
-
/**
|
|
290
|
-
* Add an extension to the generated imports and exports, default it will not use an extension
|
|
291
|
-
*/
|
|
292
|
-
extName?: KubbFile.Extname;
|
|
293
|
-
/**
|
|
294
|
-
* Define what needs to exported, here you can also disable the export of barrel files
|
|
295
|
-
* @default `'barrelNamed'`
|
|
296
|
-
*/
|
|
297
|
-
exportType?: 'barrel' | 'barrelNamed' | false;
|
|
298
|
-
};
|
|
299
278
|
/**
|
|
300
279
|
* Specifies the preceding plugins for the current plugin. You can pass an array of preceding plugin names, and the current plugin will be executed after these plugins.
|
|
301
280
|
* Can be used to validate dependent plugins.
|
|
@@ -327,7 +306,7 @@ type PluginLifecycle<TOptions extends PluginFactoryOptions = PluginFactoryOption
|
|
|
327
306
|
* @type hookFirst
|
|
328
307
|
* @example ('./Pet.ts', './src/gen/') => '/src/gen/Pet.ts'
|
|
329
308
|
*/
|
|
330
|
-
resolvePath?: (this: PluginContext<TOptions>, baseName:
|
|
309
|
+
resolvePath?: (this: PluginContext<TOptions>, baseName: KubbFile.BaseName, mode?: KubbFile.Mode, options?: TOptions['resolvePathOptions']) => KubbFile.OptionalPath;
|
|
331
310
|
/**
|
|
332
311
|
* Resolve to a name based on a string.
|
|
333
312
|
* Useful when converting to PascalCase or camelCase.
|
|
@@ -343,10 +322,9 @@ type PluginLifecycle<TOptions extends PluginFactoryOptions = PluginFactoryOption
|
|
|
343
322
|
};
|
|
344
323
|
type PluginLifecycleHooks = keyof PluginLifecycle;
|
|
345
324
|
type PluginParameter<H extends PluginLifecycleHooks> = Parameters<Required<PluginLifecycle>[H]>;
|
|
346
|
-
type PluginCache = Record<string, [number, unknown]>;
|
|
347
325
|
type ResolvePathParams<TOptions = object> = {
|
|
348
326
|
pluginKey?: Plugin['key'];
|
|
349
|
-
baseName:
|
|
327
|
+
baseName: KubbFile.BaseName;
|
|
350
328
|
mode?: KubbFile.Mode;
|
|
351
329
|
/**
|
|
352
330
|
* Options to be passed to 'resolvePath' 3th parameter
|
|
@@ -358,14 +336,14 @@ type ResolveNameParams = {
|
|
|
358
336
|
pluginKey?: Plugin['key'];
|
|
359
337
|
/**
|
|
360
338
|
* `file` will be used to customize the name of the created file(use of camelCase)
|
|
361
|
-
* `function` can be used
|
|
339
|
+
* `function` can be used to customize the exported functions(use of camelCase)
|
|
362
340
|
* `type` is a special type for TypeScript(use of PascalCase)
|
|
341
|
+
* `const` can be used for variables(use of camelCase)
|
|
363
342
|
*/
|
|
364
|
-
type?: 'file' | 'function' | 'type';
|
|
343
|
+
type?: 'file' | 'function' | 'type' | 'const';
|
|
365
344
|
};
|
|
366
345
|
type PluginContext<TOptions extends PluginFactoryOptions = PluginFactoryOptions> = {
|
|
367
346
|
config: Config;
|
|
368
|
-
cache: Cache<PluginCache>;
|
|
369
347
|
fileManager: FileManager;
|
|
370
348
|
pluginManager: PluginManager;
|
|
371
349
|
addFile: (...file: Array<KubbFile.File>) => Promise<Array<KubbFile.ResolvedFile>>;
|
|
@@ -381,6 +359,41 @@ type PluginContext<TOptions extends PluginFactoryOptions = PluginFactoryOptions>
|
|
|
381
359
|
*/
|
|
382
360
|
plugin: Plugin<TOptions>;
|
|
383
361
|
};
|
|
362
|
+
/**
|
|
363
|
+
* Specify the export location for the files and define the behavior of the output
|
|
364
|
+
*/
|
|
365
|
+
type Output = {
|
|
366
|
+
/**
|
|
367
|
+
* Path to the output folder or file that will contain the generated code
|
|
368
|
+
*/
|
|
369
|
+
path: string;
|
|
370
|
+
/**
|
|
371
|
+
* Define what needs to be exported, here you can also disable the export of barrel files
|
|
372
|
+
* @default 'named'
|
|
373
|
+
*/
|
|
374
|
+
barrelType?: BarrelType | false;
|
|
375
|
+
/**
|
|
376
|
+
* Add a banner text in the beginning of every file
|
|
377
|
+
*/
|
|
378
|
+
banner?: string;
|
|
379
|
+
/**
|
|
380
|
+
* Add a footer text in the beginning of every file
|
|
381
|
+
*/
|
|
382
|
+
footer?: string;
|
|
383
|
+
};
|
|
384
|
+
type GroupContext = {
|
|
385
|
+
group: string;
|
|
386
|
+
};
|
|
387
|
+
type Group = {
|
|
388
|
+
/**
|
|
389
|
+
* Define a type where to group the files on
|
|
390
|
+
*/
|
|
391
|
+
type: 'tag';
|
|
392
|
+
/**
|
|
393
|
+
* Return the name of a group based on the group name, this will be used for the file and name generation
|
|
394
|
+
*/
|
|
395
|
+
name?: (context: GroupContext) => string;
|
|
396
|
+
};
|
|
384
397
|
|
|
385
398
|
type BarrelData = {
|
|
386
399
|
file?: KubbFile.File;
|
|
@@ -392,17 +405,19 @@ type BarrelData = {
|
|
|
392
405
|
name: string;
|
|
393
406
|
};
|
|
394
407
|
declare class TreeNode {
|
|
408
|
+
#private;
|
|
395
409
|
data: BarrelData;
|
|
396
410
|
parent?: TreeNode;
|
|
397
411
|
children: Array<TreeNode>;
|
|
398
412
|
constructor(data: BarrelData, parent?: TreeNode);
|
|
399
413
|
addChild(data: BarrelData): TreeNode;
|
|
400
|
-
find(data?: BarrelData): TreeNode | null;
|
|
401
|
-
get leaves(): Array<TreeNode>;
|
|
402
414
|
get root(): TreeNode;
|
|
415
|
+
get leaves(): Array<TreeNode>;
|
|
403
416
|
forEach(callback: (treeNode: TreeNode) => void): this;
|
|
404
|
-
|
|
405
|
-
|
|
417
|
+
findDeep(predicate?: (value: TreeNode, index: number, obj: TreeNode[]) => boolean): TreeNode | undefined;
|
|
418
|
+
forEachDeep(callback: (treeNode: TreeNode) => void): void;
|
|
419
|
+
filterDeep(callback: (treeNode: TreeNode) => boolean): Array<TreeNode>;
|
|
420
|
+
mapDeep<T>(callback: (treeNode: TreeNode) => T): Array<T>;
|
|
406
421
|
static build(files: KubbFile.File[], root?: string): TreeNode | null;
|
|
407
422
|
}
|
|
408
423
|
type DirectoryTree = {
|
|
@@ -417,6 +432,7 @@ type FileMetaBase = {
|
|
|
417
432
|
};
|
|
418
433
|
type AddResult<T extends Array<KubbFile.File>> = Promise<Awaited<GreaterThan<T['length'], 1> extends true ? Promise<ResolvedFile[]> : Promise<ResolvedFile>>>;
|
|
419
434
|
type AddIndexesProps = {
|
|
435
|
+
type: BarrelType | false | undefined;
|
|
420
436
|
/**
|
|
421
437
|
* Root based on root and output.path specified in the config
|
|
422
438
|
*/
|
|
@@ -427,9 +443,6 @@ type AddIndexesProps = {
|
|
|
427
443
|
*/
|
|
428
444
|
output: {
|
|
429
445
|
path: string;
|
|
430
|
-
extName?: KubbFile.Extname;
|
|
431
|
-
exportAs?: string;
|
|
432
|
-
exportType?: 'barrel' | 'barrelNamed' | false;
|
|
433
446
|
};
|
|
434
447
|
group?: {
|
|
435
448
|
output: string;
|
|
@@ -450,10 +463,15 @@ declare class FileManager {
|
|
|
450
463
|
getCacheById(id: string): KubbFile.File | undefined;
|
|
451
464
|
getByPath(path: KubbFile.Path): KubbFile.ResolvedFile | undefined;
|
|
452
465
|
deleteByPath(path: KubbFile.Path): void;
|
|
453
|
-
getBarrelFiles({ files, meta, root, output, logger }: AddIndexesProps): Promise<KubbFile.File[]>;
|
|
466
|
+
getBarrelFiles({ type, files, meta, root, output, logger }: AddIndexesProps): Promise<KubbFile.File[]>;
|
|
454
467
|
write(...params: Parameters<typeof write>): ReturnType<typeof write>;
|
|
455
468
|
read(...params: Parameters<typeof read>): ReturnType<typeof read>;
|
|
456
469
|
static getMode(path: string | undefined | null): KubbFile.Mode;
|
|
457
470
|
}
|
|
471
|
+
type GetSourceOptions = {
|
|
472
|
+
extname?: KubbFile.Extname;
|
|
473
|
+
logger?: Logger;
|
|
474
|
+
};
|
|
475
|
+
declare function getSource<TMeta extends FileMetaBase = FileMetaBase>(file: ResolvedFile<TMeta>, { logger, extname }?: GetSourceOptions): Promise<string>;
|
|
458
476
|
|
|
459
|
-
export { type Config as C, FileManager as F, type GetPluginFactoryOptions as G, type InputPath as I, type PluginContext as P, type ResolvePathParams as R, type UserConfig as U, PluginManager as a, type PluginFactoryOptions as b, type UserPluginWithLifeCycle as c, type FileMetaBase as d, type InputData as e, type PluginKey as f,
|
|
477
|
+
export { type BarrelType as B, type Config as C, FileManager as F, type GetPluginFactoryOptions as G, type InputPath as I, type Output as O, type PluginContext as P, type ResolvePathParams as R, type UserConfig as U, PluginManager as a, type PluginFactoryOptions as b, type UserPluginWithLifeCycle as c, type FileMetaBase as d, type InputData as e, type PluginKey as f, getSource as g, type UserPlugin as h, type Plugin as i, type PluginWithLifeCycle as j, type PluginLifecycle as k, type PluginLifecycleHooks as l, type PluginParameter as m, type ResolveNameParams as n, type Group as o };
|
package/dist/chunk-2EU7DMPM.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/transformers/transformReservedWord.ts"],"sourcesContent":["/**\n * @link https://github.com/jonschlinkert/reserved/blob/master/index.js\n */\nconst reservedWords = [\n 'abstract',\n 'arguments',\n 'boolean',\n 'break',\n 'byte',\n 'case',\n 'catch',\n 'char',\n 'class',\n 'const',\n 'continue',\n 'debugger',\n 'default',\n 'delete',\n 'do',\n 'double',\n 'else',\n 'enum',\n 'eval',\n 'export',\n 'extends',\n 'false',\n 'final',\n 'finally',\n 'float',\n 'for',\n 'function',\n 'goto',\n 'if',\n 'implements',\n 'import',\n 'in',\n 'instanceof',\n 'int',\n 'interface',\n 'let',\n 'long',\n 'native',\n 'new',\n 'null',\n 'package',\n 'private',\n 'protected',\n 'public',\n 'return',\n 'short',\n 'static',\n 'super',\n 'switch',\n 'synchronized',\n 'this',\n 'throw',\n 'throws',\n 'transient',\n 'true',\n 'try',\n 'typeof',\n 'var',\n 'void',\n 'volatile',\n 'while',\n 'with',\n 'yield',\n\n 'Array',\n 'Date',\n 'eval',\n 'function',\n 'hasOwnProperty',\n 'Infinity',\n 'isFinite',\n 'isNaN',\n 'isPrototypeOf',\n 'length',\n 'Math',\n 'name',\n 'NaN',\n 'Number',\n 'Object',\n 'prototype',\n 'String',\n 'toString',\n 'undefined',\n 'valueOf',\n]\n\nexport function transformReservedWord(word: string): string {\n if ((word && reservedWords.includes(word)) || word?.match(/^\\d/)) {\n return `_${word}`\n }\n\n return word\n}\n"]
|
|
1
|
+
{"version":3,"sources":["../src/transformers/transformReservedWord.ts"],"names":[],"mappings":";AAGA,IAAM,aAAgB,GAAA;AAAA,EACpB,UAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,IAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA,YAAA;AAAA,EACA,KAAA;AAAA,EACA,WAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EAEA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,gBAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,eAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA;AACF,CAAA;AAEO,SAAS,sBAAsB,IAAsB,EAAA;AAC1D,EAAK,IAAA,IAAA,IAAQ,cAAc,QAAS,CAAA,IAAI,KAAM,IAAM,EAAA,KAAA,CAAM,KAAK,CAAG,EAAA;AAChE,IAAA,OAAO,IAAI,IAAI,CAAA,CAAA;AAAA;AAGjB,EAAO,OAAA,IAAA;AACT","file":"chunk-2EU7DMPM.js","sourcesContent":["/**\n * @link https://github.com/jonschlinkert/reserved/blob/master/index.js\n */\nconst reservedWords = [\n 'abstract',\n 'arguments',\n 'boolean',\n 'break',\n 'byte',\n 'case',\n 'catch',\n 'char',\n 'class',\n 'const',\n 'continue',\n 'debugger',\n 'default',\n 'delete',\n 'do',\n 'double',\n 'else',\n 'enum',\n 'eval',\n 'export',\n 'extends',\n 'false',\n 'final',\n 'finally',\n 'float',\n 'for',\n 'function',\n 'goto',\n 'if',\n 'implements',\n 'import',\n 'in',\n 'instanceof',\n 'int',\n 'interface',\n 'let',\n 'long',\n 'native',\n 'new',\n 'null',\n 'package',\n 'private',\n 'protected',\n 'public',\n 'return',\n 'short',\n 'static',\n 'super',\n 'switch',\n 'synchronized',\n 'this',\n 'throw',\n 'throws',\n 'transient',\n 'true',\n 'try',\n 'typeof',\n 'var',\n 'void',\n 'volatile',\n 'while',\n 'with',\n 'yield',\n\n 'Array',\n 'Date',\n 'eval',\n 'function',\n 'hasOwnProperty',\n 'Infinity',\n 'isFinite',\n 'isNaN',\n 'isPrototypeOf',\n 'length',\n 'Math',\n 'name',\n 'NaN',\n 'Number',\n 'Object',\n 'prototype',\n 'String',\n 'toString',\n 'undefined',\n 'valueOf',\n]\n\nexport function transformReservedWord(word: string): string {\n if ((word && reservedWords.includes(word)) || word?.match(/^\\d/)) {\n return `_${word}`\n }\n\n return word\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk6XTAOEVP_cjs = require('./chunk-6XTAOEVP.cjs');
|
|
4
4
|
|
|
5
5
|
// src/transformers/transformReservedWord.ts
|
|
6
|
-
|
|
6
|
+
chunk6XTAOEVP_cjs.init_cjs_shims();
|
|
7
7
|
var reservedWords = [
|
|
8
8
|
"abstract",
|
|
9
9
|
"arguments",
|
|
@@ -90,13 +90,12 @@ var reservedWords = [
|
|
|
90
90
|
"valueOf"
|
|
91
91
|
];
|
|
92
92
|
function transformReservedWord(word) {
|
|
93
|
-
if (word && reservedWords.includes(word) ||
|
|
93
|
+
if (word && reservedWords.includes(word) || word?.match(/^\d/)) {
|
|
94
94
|
return `_${word}`;
|
|
95
95
|
}
|
|
96
96
|
return word;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
|
|
100
|
-
|
|
101
99
|
exports.transformReservedWord = transformReservedWord;
|
|
102
|
-
//# sourceMappingURL=chunk-
|
|
100
|
+
//# sourceMappingURL=chunk-2U6NQV4E.cjs.map
|
|
101
|
+
//# sourceMappingURL=chunk-2U6NQV4E.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transformers/transformReservedWord.ts"],"names":["init_cjs_shims"],"mappings":";;;;;AAAAA,gCAAA,EAAA;AAGA,IAAM,aAAgB,GAAA;AAAA,EACpB,UAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,IAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA;AAAA,EACA,IAAA;AAAA,EACA,YAAA;AAAA,EACA,KAAA;AAAA,EACA,WAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,cAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EAEA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,gBAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,eAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA;AACF,CAAA;AAEO,SAAS,sBAAsB,IAAsB,EAAA;AAC1D,EAAK,IAAA,IAAA,IAAQ,cAAc,QAAS,CAAA,IAAI,KAAM,IAAM,EAAA,KAAA,CAAM,KAAK,CAAG,EAAA;AAChE,IAAA,OAAO,IAAI,IAAI,CAAA,CAAA;AAAA;AAGjB,EAAO,OAAA,IAAA;AACT","file":"chunk-2U6NQV4E.cjs","sourcesContent":["/**\n * @link https://github.com/jonschlinkert/reserved/blob/master/index.js\n */\nconst reservedWords = [\n 'abstract',\n 'arguments',\n 'boolean',\n 'break',\n 'byte',\n 'case',\n 'catch',\n 'char',\n 'class',\n 'const',\n 'continue',\n 'debugger',\n 'default',\n 'delete',\n 'do',\n 'double',\n 'else',\n 'enum',\n 'eval',\n 'export',\n 'extends',\n 'false',\n 'final',\n 'finally',\n 'float',\n 'for',\n 'function',\n 'goto',\n 'if',\n 'implements',\n 'import',\n 'in',\n 'instanceof',\n 'int',\n 'interface',\n 'let',\n 'long',\n 'native',\n 'new',\n 'null',\n 'package',\n 'private',\n 'protected',\n 'public',\n 'return',\n 'short',\n 'static',\n 'super',\n 'switch',\n 'synchronized',\n 'this',\n 'throw',\n 'throws',\n 'transient',\n 'true',\n 'try',\n 'typeof',\n 'var',\n 'void',\n 'volatile',\n 'while',\n 'with',\n 'yield',\n\n 'Array',\n 'Date',\n 'eval',\n 'function',\n 'hasOwnProperty',\n 'Infinity',\n 'isFinite',\n 'isNaN',\n 'isPrototypeOf',\n 'length',\n 'Math',\n 'name',\n 'NaN',\n 'Number',\n 'Object',\n 'prototype',\n 'String',\n 'toString',\n 'undefined',\n 'valueOf',\n]\n\nexport function transformReservedWord(word: string): string {\n if ((word && reservedWords.includes(word)) || word?.match(/^\\d/)) {\n return `_${word}`\n }\n\n return word\n}\n"]}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var __create = Object.create;
|
|
2
4
|
var __defProp = Object.defineProperty;
|
|
3
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
@@ -27,16 +29,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
27
29
|
mod
|
|
28
30
|
));
|
|
29
31
|
|
|
30
|
-
// ../../node_modules/.pnpm/tsup@8.
|
|
32
|
+
// ../../node_modules/.pnpm/tsup@8.3.5_@microsoft+api-extractor@7.47.11_@types+node@20.17.3__@swc+core@1.7.22_jiti@2.3.3__njwlryiwvpy37iky3y3g2bvfku/node_modules/tsup/assets/cjs_shims.js
|
|
31
33
|
var init_cjs_shims = __esm({
|
|
32
|
-
"../../node_modules/.pnpm/tsup@8.
|
|
33
|
-
"use strict";
|
|
34
|
+
"../../node_modules/.pnpm/tsup@8.3.5_@microsoft+api-extractor@7.47.11_@types+node@20.17.3__@swc+core@1.7.22_jiti@2.3.3__njwlryiwvpy37iky3y3g2bvfku/node_modules/tsup/assets/cjs_shims.js"() {
|
|
34
35
|
}
|
|
35
36
|
});
|
|
36
37
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
//# sourceMappingURL=chunk-SEH6NUCX.cjs.map
|
|
38
|
+
exports.__commonJS = __commonJS;
|
|
39
|
+
exports.__toESM = __toESM;
|
|
40
|
+
exports.init_cjs_shims = init_cjs_shims;
|
|
41
|
+
//# sourceMappingURL=chunk-6XTAOEVP.cjs.map
|
|
42
|
+
//# sourceMappingURL=chunk-6XTAOEVP.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.pnpm/tsup@8.3.5_@microsoft+api-extractor@7.47.11_@types+node@20.17.3__@swc+core@1.7.22_jiti@2.3.3__njwlryiwvpy37iky3y3g2bvfku/node_modules/tsup/assets/cjs_shims.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAA,cAAA,GAAA,KAAA,CAAA;AAAA,EAAA,yLAAA,GAAA;AAAA;AAAA,CAAA","file":"chunk-6XTAOEVP.cjs","sourcesContent":["// Shim globals in cjs bundle\n// There's a weird bug that esbuild will always inject importMetaUrl\n// if we export it as `const importMetaUrl = ... __filename ...`\n// But using a function will not cause this issue\n\nconst getImportMetaUrl = () =>\n typeof document === 'undefined'\n ? new URL(`file:${__filename}`).href\n : (document.currentScript && document.currentScript.src) ||\n new URL('main.js', document.baseURI).href\n\nexport const importMetaUrl = /* @__PURE__ */ getImportMetaUrl()\n"]}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
import { camelCase as camelCase$1, pascalCase as pascalCase$1, pathCase as pathCase$1 } from 'change-case';
|
|
2
|
+
|
|
3
|
+
// ../../node_modules/.pnpm/natural-orderby@4.0.0/node_modules/natural-orderby/dist/index.js
|
|
2
4
|
var compareNumbers = function compareNumbers2(numberA, numberB) {
|
|
3
5
|
if (numberA < numberB) {
|
|
4
6
|
return -1;
|
|
@@ -299,15 +301,12 @@ function orderBy(collection, identifiers, orders) {
|
|
|
299
301
|
var validatedOrders = getOrders(orders);
|
|
300
302
|
return baseOrderBy(collection, validatedIdentifiers, validatedOrders);
|
|
301
303
|
}
|
|
302
|
-
|
|
303
|
-
// src/transformers/casing.ts
|
|
304
|
-
import { camelCase as changeCamelCase, pascalCase as changePascalCase, pathCase as changePathCase } from "change-case";
|
|
305
304
|
function camelCase(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
306
305
|
if (isFile) {
|
|
307
306
|
const splitArray = text.split(".");
|
|
308
307
|
return splitArray.map((item, i) => i === splitArray.length - 1 ? camelCase(item, { prefix, suffix }) : camelCase(item)).join("/");
|
|
309
308
|
}
|
|
310
|
-
return
|
|
309
|
+
return camelCase$1(`${prefix} ${text} ${suffix}`, {
|
|
311
310
|
delimiter: "",
|
|
312
311
|
mergeAmbiguousCharacters: true
|
|
313
312
|
});
|
|
@@ -317,7 +316,7 @@ function pascalCase(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
|
317
316
|
const splitArray = text.split(".");
|
|
318
317
|
return splitArray.map((item, i) => i === splitArray.length - 1 ? pascalCase(item, { prefix, suffix }) : camelCase(item)).join("/");
|
|
319
318
|
}
|
|
320
|
-
return
|
|
319
|
+
return pascalCase$1(`${prefix} ${text} ${suffix}`, {
|
|
321
320
|
delimiter: "",
|
|
322
321
|
mergeAmbiguousCharacters: true
|
|
323
322
|
});
|
|
@@ -327,20 +326,13 @@ function pathCase(text, { isFile, prefix = "", suffix = "" } = {}) {
|
|
|
327
326
|
const splitArray = text.split(".");
|
|
328
327
|
return splitArray.map((item, i) => i === splitArray.length - 1 ? pathCase(item, { prefix, suffix }) : camelCase(item)).join("/");
|
|
329
328
|
}
|
|
330
|
-
return
|
|
329
|
+
return pathCase$1(`${prefix} ${text} ${suffix}`, { delimiter: "" });
|
|
331
330
|
}
|
|
332
|
-
|
|
333
|
-
export {
|
|
334
|
-
orderBy,
|
|
335
|
-
camelCase,
|
|
336
|
-
pascalCase,
|
|
337
|
-
pathCase
|
|
338
|
-
};
|
|
339
331
|
/*! Bundled license information:
|
|
340
332
|
|
|
341
333
|
natural-orderby/dist/index.js:
|
|
342
334
|
(**
|
|
343
|
-
* natural-orderby
|
|
335
|
+
* natural-orderby v4.0.0
|
|
344
336
|
*
|
|
345
337
|
* Copyright (c) Olaf Ennen
|
|
346
338
|
*
|
|
@@ -350,4 +342,7 @@ natural-orderby/dist/index.js:
|
|
|
350
342
|
* @license MIT
|
|
351
343
|
*)
|
|
352
344
|
*/
|
|
353
|
-
|
|
345
|
+
|
|
346
|
+
export { camelCase, orderBy, pascalCase, pathCase };
|
|
347
|
+
//# sourceMappingURL=chunk-BQXM32UO.js.map
|
|
348
|
+
//# sourceMappingURL=chunk-BQXM32UO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.pnpm/natural-orderby@4.0.0/node_modules/natural-orderby/dist/index.js","../src/transformers/casing.ts"],"names":["compareNumbers","compareUnicode","stringCompare","compareChunks","compareOtherTypes","compareValues","normalizeAlphaChunk","parseNumber","normalizeNumericChunk","createChunkMap","createChunks","createChunkMaps","isFunction","isNaN","isNull","isObject","isSymbol","isUndefined","parseDate","numberify","stringify","getMappedValueRecord","compareMultiple","createIdentifierFn","getElementByIndex","getValueByIdentifier","baseOrderBy","getIdentifiers","getOrders","changeCamelCase","changePascalCase","changePathCase"],"mappings":";;;AAUA,IAAI,cAAiB,GAAA,SAASA,eAAe,CAAA,OAAA,EAAS,OAAS,EAAA;AAC7D,EAAA,IAAI,UAAU,OAAS,EAAA;AACrB,IAAO,OAAA,CAAA,CAAA;AAAA;AAET,EAAA,IAAI,UAAU,OAAS,EAAA;AACrB,IAAO,OAAA,CAAA;AAAA;AAET,EAAO,OAAA,CAAA;AACT,CAAA;AAEA,IAAI,cAAiB,GAAA,SAASC,eAAe,CAAA,OAAA,EAAS,OAAS,EAAA;AAC7D,EAAI,IAAA,MAAA,GAAS,OAAQ,CAAA,aAAA,CAAc,OAAO,CAAA;AAC1C,EAAA,OAAO,MAAS,GAAA,MAAA,GAAS,IAAK,CAAA,GAAA,CAAI,MAAM,CAAI,GAAA,CAAA;AAC9C,CAAA;AAEA,IAAI,UAAa,GAAA,6FAAA;AACjB,IAAI,kCAAqC,GAAA,YAAA;AACzC,IAAI,cAAiB,GAAA,MAAA;AACrB,IAAI,eAAkB,GAAA,iDAAA;AACtB,IAAI,OAAU,GAAA,4GAAA;AACd,IAAI,eAAkB,GAAA,oBAAA;AAEtB,IAAI,qBAAwB,GAAA,cAAA;AAE5B,IAAI,aAAgB,GAAA,SAASC,cAAc,CAAA,OAAA,EAAS,OAAS,EAAA;AAC3D,EAAA,IAAI,UAAU,OAAS,EAAA;AACrB,IAAO,OAAA,CAAA,CAAA;AAAA;AAET,EAAA,IAAI,UAAU,OAAS,EAAA;AACrB,IAAO,OAAA,CAAA;AAAA;AAET,EAAO,OAAA,CAAA;AACT,CAAA;AAEA,IAAI,aAAgB,GAAA,SAASC,cAAc,CAAA,OAAA,EAAS,OAAS,EAAA;AAC3D,EAAA,IAAI,UAAU,OAAQ,CAAA,MAAA;AACtB,EAAA,IAAI,UAAU,OAAQ,CAAA,MAAA;AACtB,EAAA,IAAI,IAAO,GAAA,IAAA,CAAK,GAAI,CAAA,OAAA,EAAS,OAAO,CAAA;AACpC,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,IAAA,EAAM,CAAK,EAAA,EAAA;AAC7B,IAAI,IAAA,MAAA,GAAS,QAAQ,CAAC,CAAA;AACtB,IAAI,IAAA,MAAA,GAAS,QAAQ,CAAC,CAAA;AACtB,IAAI,IAAA,MAAA,CAAO,gBAAqB,KAAA,MAAA,CAAO,gBAAkB,EAAA;AACvD,MAAA,IAAI,MAAO,CAAA,gBAAA,KAAqB,EAAQ,MAAA,MAAA,CAAO,qBAAqB,EAAK,CAAA,EAAA;AAEvE,QAAO,OAAA,MAAA,CAAO,gBAAqB,KAAA,EAAA,GAAK,CAAK,CAAA,GAAA,CAAA;AAAA;AAE/C,MAAA,IAAI,MAAO,CAAA,YAAA,KAAiB,KAAa,CAAA,IAAA,MAAA,CAAO,iBAAiB,KAAW,CAAA,EAAA;AAE1E,QAAA,IAAI,MAAS,GAAA,cAAA,CAAe,MAAO,CAAA,YAAA,EAAc,OAAO,YAAY,CAAA;AACpE,QAAA,IAAI,WAAW,CAAG,EAAA;AAOhB,UAAA,OAAO,aAAc,CAAA,MAAA,CAAO,gBAAkB,EAAA,MAAA,CAAO,gBAAgB,CAAA;AAAA;AAEvE,QAAO,OAAA,MAAA;AAAA,iBACE,MAAO,CAAA,YAAA,KAAiB,KAAa,CAAA,IAAA,MAAA,CAAO,iBAAiB,KAAW,CAAA,EAAA;AAEjF,QAAO,OAAA,MAAA,CAAO,YAAiB,KAAA,KAAA,CAAA,GAAY,CAAK,CAAA,GAAA,CAAA;AAAA,iBACvC,qBAAsB,CAAA,IAAA,CAAK,OAAO,gBAAmB,GAAA,MAAA,CAAO,gBAAgB,CAAG,EAAA;AAExF,QAAA,OAAO,cAAe,CAAA,MAAA,CAAO,gBAAkB,EAAA,MAAA,CAAO,gBAAgB,CAAA;AAAA,OACjE,MAAA;AAEL,QAAA,OAAO,aAAc,CAAA,MAAA,CAAO,gBAAkB,EAAA,MAAA,CAAO,gBAAgB,CAAA;AAAA;AACvE;AACF;AAGF,EAAI,IAAA,OAAA,GAAU,IAAQ,IAAA,OAAA,GAAU,IAAM,EAAA;AACpC,IAAO,OAAA,OAAA,IAAW,OAAO,CAAK,CAAA,GAAA,CAAA;AAAA;AAEhC,EAAO,OAAA,CAAA;AACT,CAAA;AAEA,IAAI,iBAAoB,GAAA,SAASC,kBAAkB,CAAA,MAAA,EAAQ,MAAQ,EAAA;AACjE,EAAA,IAAI,CAAC,MAAO,CAAA,MAAA,GAAS,OAAO,MAAS,GAAA,CAAC,OAAO,MAAQ,EAAA;AACnD,IAAO,OAAA,CAAC,MAAO,CAAA,MAAA,GAAS,CAAI,GAAA,CAAA,CAAA;AAAA;AAE9B,EAAA,IAAI,OAAO,KAAQ,GAAA,CAAC,MAAO,CAAA,KAAA,GAAQ,OAAO,KAAO,EAAA;AAC/C,IAAO,OAAA,MAAA,CAAO,QAAQ,CAAK,CAAA,GAAA,CAAA;AAAA;AAE7B,EAAA,IAAI,OAAO,QAAW,GAAA,CAAC,MAAO,CAAA,QAAA,GAAW,OAAO,QAAU,EAAA;AACxD,IAAO,OAAA,MAAA,CAAO,WAAW,CAAK,CAAA,GAAA,CAAA;AAAA;AAEhC,EAAA,IAAI,OAAO,QAAW,GAAA,CAAC,MAAO,CAAA,QAAA,GAAW,OAAO,QAAU,EAAA;AACxD,IAAO,OAAA,MAAA,CAAO,WAAW,CAAK,CAAA,GAAA,CAAA;AAAA;AAEhC,EAAA,IAAI,OAAO,OAAU,GAAA,CAAC,MAAO,CAAA,OAAA,GAAU,OAAO,OAAS,EAAA;AACrD,IAAO,OAAA,MAAA,CAAO,UAAU,CAAK,CAAA,GAAA,CAAA;AAAA;AAE/B,EAAA,IAAI,OAAO,UAAa,GAAA,CAAC,MAAO,CAAA,UAAA,GAAa,OAAO,UAAY,EAAA;AAC9D,IAAO,OAAA,MAAA,CAAO,aAAa,CAAK,CAAA,GAAA,CAAA;AAAA;AAElC,EAAA,IAAI,OAAO,MAAS,GAAA,CAAC,MAAO,CAAA,MAAA,GAAS,OAAO,MAAQ,EAAA;AAClD,IAAO,OAAA,MAAA,CAAO,SAAS,CAAK,CAAA,GAAA,CAAA;AAAA;AAE9B,EAAO,OAAA,CAAA;AACT,CAAA;AAEA,IAAI,aAAgB,GAAA,SAASC,cAAc,CAAA,MAAA,EAAQ,MAAQ,EAAA;AACzD,EAAI,IAAA,MAAA,CAAO,KAAU,KAAA,MAAA,CAAO,KAAO,EAAA;AACjC,IAAO,OAAA,CAAA;AAAA;AAET,EAAA,IAAI,MAAO,CAAA,YAAA,KAAiB,KAAa,CAAA,IAAA,MAAA,CAAO,iBAAiB,KAAW,CAAA,EAAA;AAC1E,IAAA,OAAO,cAAe,CAAA,MAAA,CAAO,YAAc,EAAA,MAAA,CAAO,YAAY,CAAA;AAAA;AAEhE,EAAI,IAAA,MAAA,CAAO,MAAU,IAAA,MAAA,CAAO,MAAQ,EAAA;AAClC,IAAA,OAAO,aAAc,CAAA,MAAA,CAAO,MAAQ,EAAA,MAAA,CAAO,MAAM,CAAA;AAAA;AAEnD,EAAO,OAAA,iBAAA,CAAkB,QAAQ,MAAM,CAAA;AACzC,CAAA;AAEA,IAAI,mBAAA,GAAsB,SAASC,oBAAAA,CAAoB,KAAO,EAAA;AAC5D,EAAA,OAAO,MAAM,OAAQ,CAAA,cAAA,EAAgB,GAAG,CAAE,CAAA,OAAA,CAAQ,oCAAoC,EAAE,CAAA;AAC1F,CAAA;AAEA,IAAI,WAAA,GAAc,SAASC,YAAAA,CAAY,KAAO,EAAA;AAC5C,EAAI,IAAA,KAAA,CAAM,WAAW,CAAG,EAAA;AACtB,IAAI,IAAA,YAAA,GAAe,OAAO,KAAK,CAAA;AAC/B,IAAA,IAAI,CAAC,MAAA,CAAO,KAAM,CAAA,YAAY,CAAG,EAAA;AAC/B,MAAO,OAAA,YAAA;AAAA;AACT;AAEF,EAAO,OAAA,KAAA,CAAA;AACT,CAAA;AAEA,IAAI,qBAAwB,GAAA,SAASC,sBAAsB,CAAA,KAAA,EAAO,OAAO,MAAQ,EAAA;AAC/E,EAAI,IAAA,eAAA,CAAgB,IAAK,CAAA,KAAK,CAAG,EAAA;AAI/B,IAAI,IAAA,CAAC,eAAgB,CAAA,IAAA,CAAK,KAAK,CAAA,IAAK,KAAU,KAAA,CAAA,IAAK,MAAO,CAAA,KAAA,GAAQ,CAAC,CAAA,KAAM,GAAK,EAAA;AAC5E,MAAO,OAAA,WAAA,CAAY,KAAK,CAAK,IAAA,CAAA;AAAA;AAC/B;AAEF,EAAO,OAAA,KAAA,CAAA;AACT,CAAA;AAEA,IAAI,cAAiB,GAAA,SAASC,eAAe,CAAA,KAAA,EAAO,OAAO,MAAQ,EAAA;AACjE,EAAO,OAAA;AAAA,IACL,YAAc,EAAA,qBAAA,CAAsB,KAAO,EAAA,KAAA,EAAO,MAAM,CAAA;AAAA,IACxD,gBAAA,EAAkB,oBAAoB,KAAK;AAAA,GAC7C;AACF,CAAA;AAEA,IAAI,YAAA,GAAe,SAASC,aAAAA,CAAa,KAAO,EAAA;AAC9C,EAAA,OAAO,KAAM,CAAA,OAAA,CAAQ,UAAY,EAAA,QAAQ,EAAE,OAAQ,CAAA,KAAA,EAAO,EAAE,CAAA,CAAE,OAAQ,CAAA,KAAA,EAAO,EAAE,CAAA,CAAE,MAAM,IAAI,CAAA;AAC7F,CAAA;AAEA,IAAI,eAAA,GAAkB,SAASC,gBAAAA,CAAgB,KAAO,EAAA;AACpD,EAAA,IAAI,UAAa,GAAA,YAAA,CAAa,KAAK,CAAA,CAAE,IAAI,cAAc,CAAA;AACvD,EAAO,OAAA,UAAA;AACT,CAAA;AAEA,IAAI,UAAA,GAAa,SAASC,WAAAA,CAAW,KAAO,EAAA;AAC1C,EAAA,OAAO,OAAO,KAAU,KAAA,UAAA;AAC1B,CAAA;AAEA,IAAI,KAAA,GAAQ,SAASC,MAAAA,CAAM,KAAO,EAAA;AAChC,EAAO,OAAA,MAAA,CAAO,KAAM,CAAA,KAAK,CAAK,IAAA,KAAA,YAAiB,UAAU,MAAO,CAAA,KAAA,CAAM,KAAM,CAAA,OAAA,EAAS,CAAA;AACvF,CAAA;AAEA,IAAI,MAAA,GAAS,SAASC,OAAAA,CAAO,KAAO,EAAA;AAClC,EAAA,OAAO,KAAU,KAAA,IAAA;AACnB,CAAA;AAEA,IAAI,QAAA,GAAW,SAASC,SAAAA,CAAS,KAAO,EAAA;AACtC,EAAO,OAAA,KAAA,KAAU,QAAQ,OAAO,KAAA,KAAU,YAAY,CAAC,KAAA,CAAM,QAAQ,KAAK,CAAA,IAAK,EAAE,KAAiB,YAAA,MAAA,CAAA,IAAW,EAAE,KAAiB,YAAA,MAAA,CAAA,IAAW,EAAE,KAAiB,YAAA,OAAA,CAAA,IAAY,EAAE,KAAiB,YAAA,IAAA,CAAA;AAC/L,CAAA;AAEA,IAAI,QAAA,GAAW,SAASC,SAAAA,CAAS,KAAO,EAAA;AACtC,EAAA,OAAO,OAAO,KAAU,KAAA,QAAA;AAC1B,CAAA;AAEA,IAAI,WAAA,GAAc,SAASC,YAAAA,CAAY,KAAO,EAAA;AAC5C,EAAA,OAAO,KAAU,KAAA,KAAA,CAAA;AACnB,CAAA;AAEA,IAAI,SAAA,GAAY,SAASC,UAAAA,CAAU,KAAO,EAAA;AACxC,EAAI,IAAA;AACF,IAAI,IAAA,UAAA,GAAa,IAAK,CAAA,KAAA,CAAM,KAAK,CAAA;AACjC,IAAA,IAAI,CAAC,MAAA,CAAO,KAAM,CAAA,UAAU,CAAG,EAAA;AAC7B,MAAI,IAAA,OAAA,CAAQ,IAAK,CAAA,KAAK,CAAG,EAAA;AACvB,QAAO,OAAA,UAAA;AAAA;AACT;AAEF,IAAO,OAAA,KAAA,CAAA;AAAA,WACA,OAAS,EAAA;AAChB,IAAO,OAAA,KAAA,CAAA;AAAA;AAEX,CAAA;AAEA,IAAI,SAAA,GAAY,SAASC,UAAAA,CAAU,KAAO,EAAA;AACxC,EAAI,IAAA,YAAA,GAAe,YAAY,KAAK,CAAA;AACpC,EAAA,IAAI,iBAAiB,KAAW,CAAA,EAAA;AAC9B,IAAO,OAAA,YAAA;AAAA;AAET,EAAA,OAAO,UAAU,KAAK,CAAA;AACxB,CAAA;AAEA,IAAI,SAAA,GAAY,SAASC,UAAAA,CAAU,KAAO,EAAA;AACxC,EAAA,IAAI,OAAO,KAAA,KAAU,SAAa,IAAA,KAAA,YAAiB,OAAS,EAAA;AAC1D,IAAO,OAAA,MAAA,CAAO,KAAK,CAAA,CAAE,QAAS,EAAA;AAAA;AAEhC,EAAA,IAAI,OAAO,KAAA,KAAU,QAAY,IAAA,KAAA,YAAiB,MAAQ,EAAA;AACxD,IAAA,OAAO,MAAM,QAAS,EAAA;AAAA;AAExB,EAAA,IAAI,iBAAiB,IAAM,EAAA;AACzB,IAAO,OAAA,KAAA,CAAM,OAAQ,EAAA,CAAE,QAAS,EAAA;AAAA;AAElC,EAAA,IAAI,OAAO,KAAA,KAAU,QAAY,IAAA,KAAA,YAAiB,MAAQ,EAAA;AACxD,IAAA,OAAO,KAAM,CAAA,WAAA,EAAc,CAAA,OAAA,CAAQ,oCAAoC,EAAE,CAAA;AAAA;AAE3E,EAAO,OAAA,EAAA;AACT,CAAA;AAEA,IAAI,oBAAA,GAAuB,SAASC,qBAAAA,CAAqB,KAAO,EAAA;AAC9D,EAAI,IAAA,OAAO,UAAU,QAAY,IAAA,KAAA,YAAiB,WAAW,OAAO,KAAA,KAAU,YAAY,KAAiB,YAAA,MAAA,KAAW,CAAC,KAAM,CAAA,KAAK,KAAK,OAAO,KAAA,KAAU,aAAa,KAAiB,YAAA,OAAA,IAAW,iBAAiB,IAAM,EAAA;AACtN,IAAI,IAAA,WAAA,GAAc,UAAU,KAAK,CAAA;AACjC,IAAI,IAAA,YAAA,GAAe,UAAU,WAAW,CAAA;AACxC,IAAA,IAAI,MAAS,GAAA,eAAA,CAAgB,YAAe,GAAA,EAAA,GAAK,eAAe,WAAW,CAAA;AAC3E,IAAO,OAAA;AAAA,MACL,YAAA;AAAA,MACA,MAAA;AAAA,MACA;AAAA,KACF;AAAA;AAEF,EAAO,OAAA;AAAA,IACL,OAAA,EAAS,KAAM,CAAA,OAAA,CAAQ,KAAK,CAAA;AAAA,IAC5B,UAAA,EAAY,WAAW,KAAK,CAAA;AAAA,IAC5B,KAAA,EAAO,MAAM,KAAK,CAAA;AAAA,IAClB,MAAA,EAAQ,OAAO,KAAK,CAAA;AAAA,IACpB,QAAA,EAAU,SAAS,KAAK,CAAA;AAAA,IACxB,QAAA,EAAU,SAAS,KAAK,CAAA;AAAA,IACxB,WAAA,EAAa,YAAY,KAAK,CAAA;AAAA,IAC9B;AAAA,GACF;AACF,CAAA;AAmCA,IAAI,eAAkB,GAAA,SAASC,gBAAgB,CAAA,OAAA,EAAS,SAAS,MAAQ,EAAA;AACvE,EAAA,IAAI,MAAS,GAAA,OAAA,CAAQ,KACnB,EAAA,OAAA,GAAU,OAAQ,CAAA,MAAA;AACpB,EAAA,IAAI,MAAS,GAAA,OAAA,CAAQ,KACnB,EAAA,OAAA,GAAU,OAAQ,CAAA,MAAA;AACpB,EAAA,IAAI,SAAS,OAAQ,CAAA,MAAA;AACrB,EAAA,IAAI,eAAe,MAAO,CAAA,MAAA;AAC1B,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,MAAA,EAAQ,CAAK,EAAA,EAAA;AAC/B,IAAA,IAAI,KAAQ,GAAA,CAAA,GAAI,YAAe,GAAA,MAAA,CAAO,CAAC,CAAI,GAAA,IAAA;AAC3C,IAAI,IAAA,KAAA,IAAS,OAAO,KAAA,KAAU,UAAY,EAAA;AACxC,MAAI,IAAA,MAAA,GAAS,MAAM,OAAQ,CAAA,CAAC,EAAE,KAAO,EAAA,OAAA,CAAQ,CAAC,CAAA,CAAE,KAAK,CAAA;AACrD,MAAA,IAAI,MAAQ,EAAA;AACV,QAAO,OAAA,MAAA;AAAA;AACT,KACK,MAAA;AACL,MAAA,IAAI,UAAU,aAAc,CAAA,OAAA,CAAQ,CAAC,CAAG,EAAA,OAAA,CAAQ,CAAC,CAAC,CAAA;AAClD,MAAA,IAAI,OAAS,EAAA;AACX,QAAO,OAAA,OAAA,IAAW,KAAU,KAAA,MAAA,GAAS,CAAK,CAAA,GAAA,CAAA,CAAA;AAAA;AAC5C;AACF;AAEF,EAAA,OAAO,MAAS,GAAA,MAAA;AAClB,CAAA;AAEA,IAAI,kBAAA,GAAqB,SAASC,mBAAAA,CAAmB,UAAY,EAAA;AAC/D,EAAI,IAAA,OAAO,eAAe,UAAY,EAAA;AAEpC,IAAO,OAAA,UAAA;AAAA;AAET,EAAA,OAAO,SAAU,KAAO,EAAA;AACtB,IAAI,IAAA,KAAA,CAAM,OAAQ,CAAA,KAAK,CAAG,EAAA;AACxB,MAAI,IAAA,KAAA,GAAQ,OAAO,UAAU,CAAA;AAC7B,MAAI,IAAA,MAAA,CAAO,SAAU,CAAA,KAAK,CAAG,EAAA;AAC3B,QAAA,OAAO,MAAM,KAAK,CAAA;AAAA;AACpB,KACS,MAAA,IAAA,KAAA,IAAS,OAAO,KAAA,KAAU,QAAU,EAAA;AAC7C,MAAA,IAAI,MAAS,GAAA,MAAA,CAAO,wBAAyB,CAAA,KAAA,EAAO,UAAU,CAAA;AAC9D,MAAO,OAAA,MAAA,IAAU,IAAO,GAAA,KAAA,CAAA,GAAS,MAAO,CAAA,KAAA;AAAA;AAE1C,IAAO,OAAA,KAAA;AAAA,GACT;AACF,CAAA;AAEA,IAAI,iBAAoB,GAAA,SAASC,kBAAkB,CAAA,UAAA,EAAY,KAAO,EAAA;AACpE,EAAA,OAAO,WAAW,KAAK,CAAA;AACzB,CAAA;AAEA,IAAI,oBAAuB,GAAA,SAASC,qBAAqB,CAAA,KAAA,EAAO,QAAU,EAAA;AACxE,EAAA,OAAO,SAAS,KAAK,CAAA;AACvB,CAAA;AAEA,IAAI,WAAc,GAAA,SAASC,YAAY,CAAA,UAAA,EAAY,aAAa,MAAQ,EAAA;AACtE,EAAI,IAAA,aAAA,GAAgB,YAAY,MAAS,GAAA,WAAA,CAAY,IAAI,kBAAkB,CAAA,GAAI,CAAC,SAAU,KAAO,EAAA;AAC/F,IAAO,OAAA,KAAA;AAAA,GACR,CAAA;AAGD,EAAA,IAAI,gBAAmB,GAAA,UAAA,CAAW,GAAI,CAAA,SAAU,SAAS,KAAO,EAAA;AAC9D,IAAA,IAAI,MAAS,GAAA,aAAA,CAAc,GAAI,CAAA,SAAU,UAAY,EAAA;AACnD,MAAO,OAAA,oBAAA,CAAqB,SAAS,UAAU,CAAA;AAAA,KAChD,CAAE,CAAA,GAAA,CAAI,oBAAoB,CAAA;AAC3B,IAAO,OAAA;AAAA,MACL,KAAA;AAAA,MACA;AAAA,KACF;AAAA,GACD,CAAA;AAGD,EAAiB,gBAAA,CAAA,IAAA,CAAK,SAAU,OAAA,EAAS,OAAS,EAAA;AAChD,IAAO,OAAA,eAAA,CAAgB,OAAS,EAAA,OAAA,EAAS,MAAM,CAAA;AAAA,GAChD,CAAA;AACD,EAAO,OAAA,gBAAA,CAAiB,GAAI,CAAA,SAAU,OAAS,EAAA;AAC7C,IAAO,OAAA,iBAAA,CAAkB,UAAY,EAAA,OAAA,CAAQ,KAAK,CAAA;AAAA,GACnD,CAAA;AACH,CAAA;AAEA,IAAI,cAAA,GAAiB,SAASC,eAAAA,CAAe,WAAa,EAAA;AACxD,EAAA,IAAI,CAAC,WAAa,EAAA;AAChB,IAAA,OAAO,EAAC;AAAA;AAEV,EAAA,IAAI,cAAiB,GAAA,CAAC,KAAM,CAAA,OAAA,CAAQ,WAAW,CAAA,GAAI,CAAC,WAAW,CAAI,GAAA,EAAG,CAAA,MAAA,CAAO,WAAW,CAAA;AACxF,EAAI,IAAA,cAAA,CAAe,IAAK,CAAA,SAAU,UAAY,EAAA;AAC5C,IAAA,OAAO,OAAO,UAAe,KAAA,QAAA,IAAY,OAAO,UAAe,KAAA,QAAA,IAAY,OAAO,UAAe,KAAA,UAAA;AAAA,GAClG,CAAG,EAAA;AACF,IAAA,OAAO,EAAC;AAAA;AAEV,EAAO,OAAA,cAAA;AACT,CAAA;AAEA,IAAI,SAAA,GAAY,SAASC,UAAAA,CAAU,MAAQ,EAAA;AACzC,EAAA,IAAI,CAAC,MAAQ,EAAA;AACX,IAAA,OAAO,EAAC;AAAA;AAEV,EAAA,IAAI,SAAY,GAAA,CAAC,KAAM,CAAA,OAAA,CAAQ,MAAM,CAAA,GAAI,CAAC,MAAM,CAAI,GAAA,EAAG,CAAA,MAAA,CAAO,MAAM,CAAA;AACpE,EAAI,IAAA,SAAA,CAAU,IAAK,CAAA,SAAU,KAAO,EAAA;AAClC,IAAA,OAAO,KAAU,KAAA,KAAA,IAAS,KAAU,KAAA,MAAA,IAAU,OAAO,KAAU,KAAA,UAAA;AAAA,GAChE,CAAG,EAAA;AACF,IAAA,OAAO,EAAC;AAAA;AAEV,EAAO,OAAA,SAAA;AACT,CAAA;AAQA,SAAS,OAAA,CAAQ,UAAY,EAAA,WAAA,EAAa,MAAQ,EAAA;AAChD,EAAA,IAAI,CAAC,UAAc,IAAA,CAAC,KAAM,CAAA,OAAA,CAAQ,UAAU,CAAG,EAAA;AAC7C,IAAA,OAAO,EAAC;AAAA;AAEV,EAAI,IAAA,oBAAA,GAAuB,eAAe,WAAW,CAAA;AACrD,EAAI,IAAA,eAAA,GAAkB,UAAU,MAAM,CAAA;AACtC,EAAO,OAAA,WAAA,CAAY,UAAY,EAAA,oBAAA,EAAsB,eAAe,CAAA;AACtE;ACtYO,SAAS,SAAA,CAAU,IAAc,EAAA,EAAE,MAAQ,EAAA,MAAA,GAAS,IAAI,MAAS,GAAA,EAAA,EAAgB,GAAA,EAAY,EAAA;AAClG,EAAA,IAAI,MAAQ,EAAA;AACV,IAAM,MAAA,UAAA,GAAa,IAAK,CAAA,KAAA,CAAM,GAAG,CAAA;AACjC,IAAO,OAAA,UAAA,CAAW,IAAI,CAAC,IAAA,EAAM,MAAO,CAAM,KAAA,UAAA,CAAW,SAAS,CAAI,GAAA,SAAA,CAAU,MAAM,EAAE,MAAA,EAAQ,QAAQ,CAAA,GAAI,UAAU,IAAI,CAAE,CAAE,CAAA,IAAA,CAAK,GAAG,CAAA;AAAA;AAGpI,EAAA,OAAOC,YAAgB,CAAG,EAAA,MAAM,IAAI,IAAI,CAAA,CAAA,EAAI,MAAM,CAAI,CAAA,EAAA;AAAA,IACpD,SAAW,EAAA,EAAA;AAAA,IACX,wBAA0B,EAAA;AAAA,GAC3B,CAAA;AACH;AAEO,SAAS,UAAA,CAAW,IAAc,EAAA,EAAE,MAAQ,EAAA,MAAA,GAAS,IAAI,MAAS,GAAA,EAAA,EAAgB,GAAA,EAAY,EAAA;AACnG,EAAA,IAAI,MAAQ,EAAA;AACV,IAAM,MAAA,UAAA,GAAa,IAAK,CAAA,KAAA,CAAM,GAAG,CAAA;AACjC,IAAO,OAAA,UAAA,CAAW,IAAI,CAAC,IAAA,EAAM,MAAO,CAAM,KAAA,UAAA,CAAW,SAAS,CAAI,GAAA,UAAA,CAAW,MAAM,EAAE,MAAA,EAAQ,QAAQ,CAAA,GAAI,UAAU,IAAI,CAAE,CAAE,CAAA,IAAA,CAAK,GAAG,CAAA;AAAA;AAGrI,EAAA,OAAOC,aAAiB,CAAG,EAAA,MAAM,IAAI,IAAI,CAAA,CAAA,EAAI,MAAM,CAAI,CAAA,EAAA;AAAA,IACrD,SAAW,EAAA,EAAA;AAAA,IACX,wBAA0B,EAAA;AAAA,GAC3B,CAAA;AACH;AAEO,SAAS,QAAA,CAAS,IAAc,EAAA,EAAE,MAAQ,EAAA,MAAA,GAAS,IAAI,MAAS,GAAA,EAAA,EAAgB,GAAA,EAAY,EAAA;AACjG,EAAA,IAAI,MAAQ,EAAA;AACV,IAAM,MAAA,UAAA,GAAa,IAAK,CAAA,KAAA,CAAM,GAAG,CAAA;AACjC,IAAO,OAAA,UAAA,CAAW,IAAI,CAAC,IAAA,EAAM,MAAO,CAAM,KAAA,UAAA,CAAW,SAAS,CAAI,GAAA,QAAA,CAAS,MAAM,EAAE,MAAA,EAAQ,QAAQ,CAAA,GAAI,UAAU,IAAI,CAAE,CAAE,CAAA,IAAA,CAAK,GAAG,CAAA;AAAA;AAGnI,EAAO,OAAAC,UAAA,CAAe,CAAG,EAAA,MAAM,CAAI,CAAA,EAAA,IAAI,CAAI,CAAA,EAAA,MAAM,CAAI,CAAA,EAAA,EAAE,SAAW,EAAA,EAAA,EAAI,CAAA;AACxE","file":"chunk-BQXM32UO.js","sourcesContent":["/**\n * natural-orderby v4.0.0\n *\n * Copyright (c) Olaf Ennen\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nvar compareNumbers = function compareNumbers(numberA, numberB) {\n if (numberA < numberB) {\n return -1;\n }\n if (numberA > numberB) {\n return 1;\n }\n return 0;\n};\n\nvar compareUnicode = function compareUnicode(stringA, stringB) {\n var result = stringA.localeCompare(stringB);\n return result ? result / Math.abs(result) : 0;\n};\n\nvar RE_NUMBERS = /(^0x[\\da-fA-F]+$|^([+-]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+)?(?!\\.\\d+)(?=\\D|\\s|$))|\\d+)/g;\nvar RE_LEADING_OR_TRAILING_WHITESPACES = /^\\s+|\\s+$/g; // trim pre-post whitespace\nvar RE_WHITESPACES = /\\s+/g; // normalize all whitespace to single ' ' character\nvar RE_INT_OR_FLOAT = /^[+-]?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:[eE][+-]?\\d+)?$/; // identify integers and floats\nvar RE_DATE = /(^([\\w ]+,?[\\w ]+)?[\\w ]+,?[\\w ]+\\d+:\\d+(:\\d+)?[\\w ]?|^\\d{1,4}[/-]\\d{1,4}[/-]\\d{1,4}|^\\w+, \\w+ \\d+, \\d{4})/; // identify date strings\nvar RE_LEADING_ZERO = /^0+[1-9]{1}[0-9]*$/;\n// eslint-disable-next-line no-control-regex\nvar RE_UNICODE_CHARACTERS = /[^\\x00-\\x80]/;\n\nvar stringCompare = function stringCompare(stringA, stringB) {\n if (stringA < stringB) {\n return -1;\n }\n if (stringA > stringB) {\n return 1;\n }\n return 0;\n};\n\nvar compareChunks = function compareChunks(chunksA, chunksB) {\n var lengthA = chunksA.length;\n var lengthB = chunksB.length;\n var size = Math.min(lengthA, lengthB);\n for (var i = 0; i < size; i++) {\n var chunkA = chunksA[i];\n var chunkB = chunksB[i];\n if (chunkA.normalizedString !== chunkB.normalizedString) {\n if (chunkA.normalizedString === '' !== (chunkB.normalizedString === '')) {\n // empty strings have lowest value\n return chunkA.normalizedString === '' ? -1 : 1;\n }\n if (chunkA.parsedNumber !== undefined && chunkB.parsedNumber !== undefined) {\n // compare numbers\n var result = compareNumbers(chunkA.parsedNumber, chunkB.parsedNumber);\n if (result === 0) {\n // compare string value, if parsed numbers are equal\n // Example:\n // chunkA = { parsedNumber: 1, normalizedString: \"001\" }\n // chunkB = { parsedNumber: 1, normalizedString: \"01\" }\n // chunkA.parsedNumber === chunkB.parsedNumber\n // chunkA.normalizedString < chunkB.normalizedString\n return stringCompare(chunkA.normalizedString, chunkB.normalizedString);\n }\n return result;\n } else if (chunkA.parsedNumber !== undefined || chunkB.parsedNumber !== undefined) {\n // number < string\n return chunkA.parsedNumber !== undefined ? -1 : 1;\n } else if (RE_UNICODE_CHARACTERS.test(chunkA.normalizedString + chunkB.normalizedString)) {\n // use locale comparison only if one of the chunks contains unicode characters\n return compareUnicode(chunkA.normalizedString, chunkB.normalizedString);\n } else {\n // use common string comparison for performance reason\n return stringCompare(chunkA.normalizedString, chunkB.normalizedString);\n }\n }\n }\n // if the chunks are equal so far, the one which has more chunks is greater than the other one\n if (lengthA > size || lengthB > size) {\n return lengthA <= size ? -1 : 1;\n }\n return 0;\n};\n\nvar compareOtherTypes = function compareOtherTypes(valueA, valueB) {\n if (!valueA.chunks ? valueB.chunks : !valueB.chunks) {\n return !valueA.chunks ? 1 : -1;\n }\n if (valueA.isNaN ? !valueB.isNaN : valueB.isNaN) {\n return valueA.isNaN ? -1 : 1;\n }\n if (valueA.isSymbol ? !valueB.isSymbol : valueB.isSymbol) {\n return valueA.isSymbol ? -1 : 1;\n }\n if (valueA.isObject ? !valueB.isObject : valueB.isObject) {\n return valueA.isObject ? -1 : 1;\n }\n if (valueA.isArray ? !valueB.isArray : valueB.isArray) {\n return valueA.isArray ? -1 : 1;\n }\n if (valueA.isFunction ? !valueB.isFunction : valueB.isFunction) {\n return valueA.isFunction ? -1 : 1;\n }\n if (valueA.isNull ? !valueB.isNull : valueB.isNull) {\n return valueA.isNull ? -1 : 1;\n }\n return 0;\n};\n\nvar compareValues = function compareValues(valueA, valueB) {\n if (valueA.value === valueB.value) {\n return 0;\n }\n if (valueA.parsedNumber !== undefined && valueB.parsedNumber !== undefined) {\n return compareNumbers(valueA.parsedNumber, valueB.parsedNumber);\n }\n if (valueA.chunks && valueB.chunks) {\n return compareChunks(valueA.chunks, valueB.chunks);\n }\n return compareOtherTypes(valueA, valueB);\n};\n\nvar normalizeAlphaChunk = function normalizeAlphaChunk(chunk) {\n return chunk.replace(RE_WHITESPACES, ' ').replace(RE_LEADING_OR_TRAILING_WHITESPACES, '');\n};\n\nvar parseNumber = function parseNumber(value) {\n if (value.length !== 0) {\n var parsedNumber = Number(value);\n if (!Number.isNaN(parsedNumber)) {\n return parsedNumber;\n }\n }\n return undefined;\n};\n\nvar normalizeNumericChunk = function normalizeNumericChunk(chunk, index, chunks) {\n if (RE_INT_OR_FLOAT.test(chunk)) {\n // don´t parse a number, if there´s a preceding decimal point\n // to keep significance\n // e.g. 1.0020, 1.020\n if (!RE_LEADING_ZERO.test(chunk) || index === 0 || chunks[index - 1] !== '.') {\n return parseNumber(chunk) || 0;\n }\n }\n return undefined;\n};\n\nvar createChunkMap = function createChunkMap(chunk, index, chunks) {\n return {\n parsedNumber: normalizeNumericChunk(chunk, index, chunks),\n normalizedString: normalizeAlphaChunk(chunk)\n };\n};\n\nvar createChunks = function createChunks(value) {\n return value.replace(RE_NUMBERS, '\\0$1\\0').replace(/\\0$/, '').replace(/^\\0/, '').split('\\0');\n};\n\nvar createChunkMaps = function createChunkMaps(value) {\n var chunksMaps = createChunks(value).map(createChunkMap);\n return chunksMaps;\n};\n\nvar isFunction = function isFunction(value) {\n return typeof value === 'function';\n};\n\nvar isNaN = function isNaN(value) {\n return Number.isNaN(value) || value instanceof Number && Number.isNaN(value.valueOf());\n};\n\nvar isNull = function isNull(value) {\n return value === null;\n};\n\nvar isObject = function isObject(value) {\n return value !== null && typeof value === 'object' && !Array.isArray(value) && !(value instanceof Number) && !(value instanceof String) && !(value instanceof Boolean) && !(value instanceof Date);\n};\n\nvar isSymbol = function isSymbol(value) {\n return typeof value === 'symbol';\n};\n\nvar isUndefined = function isUndefined(value) {\n return value === undefined;\n};\n\nvar parseDate = function parseDate(value) {\n try {\n var parsedDate = Date.parse(value);\n if (!Number.isNaN(parsedDate)) {\n if (RE_DATE.test(value)) {\n return parsedDate;\n }\n }\n return undefined;\n } catch (_unused) {\n return undefined;\n }\n};\n\nvar numberify = function numberify(value) {\n var parsedNumber = parseNumber(value);\n if (parsedNumber !== undefined) {\n return parsedNumber;\n }\n return parseDate(value);\n};\n\nvar stringify = function stringify(value) {\n if (typeof value === 'boolean' || value instanceof Boolean) {\n return Number(value).toString();\n }\n if (typeof value === 'number' || value instanceof Number) {\n return value.toString();\n }\n if (value instanceof Date) {\n return value.getTime().toString();\n }\n if (typeof value === 'string' || value instanceof String) {\n return value.toLowerCase().replace(RE_LEADING_OR_TRAILING_WHITESPACES, '');\n }\n return '';\n};\n\nvar getMappedValueRecord = function getMappedValueRecord(value) {\n if (typeof value === 'string' || value instanceof String || (typeof value === 'number' || value instanceof Number) && !isNaN(value) || typeof value === 'boolean' || value instanceof Boolean || value instanceof Date) {\n var stringValue = stringify(value);\n var parsedNumber = numberify(stringValue);\n var chunks = createChunkMaps(parsedNumber ? \"\" + parsedNumber : stringValue);\n return {\n parsedNumber: parsedNumber,\n chunks: chunks,\n value: value\n };\n }\n return {\n isArray: Array.isArray(value),\n isFunction: isFunction(value),\n isNaN: isNaN(value),\n isNull: isNull(value),\n isObject: isObject(value),\n isSymbol: isSymbol(value),\n isUndefined: isUndefined(value),\n value: value\n };\n};\n\nvar baseCompare = function baseCompare(options) {\n return function (valueA, valueB) {\n var a = getMappedValueRecord(valueA);\n var b = getMappedValueRecord(valueB);\n var result = compareValues(a, b);\n return result * (options.order === 'desc' ? -1 : 1);\n };\n};\n\nvar isValidOrder = function isValidOrder(value) {\n return typeof value === 'string' && (value === 'asc' || value === 'desc');\n};\nvar getOptions = function getOptions(customOptions) {\n var order = 'asc';\n if (typeof customOptions === 'string' && isValidOrder(customOptions)) {\n order = customOptions;\n } else if (customOptions && typeof customOptions === 'object' && customOptions.order && isValidOrder(customOptions.order)) {\n order = customOptions.order;\n }\n return {\n order: order\n };\n};\n\n/**\n * Creates a compare function that defines the natural sort order considering\n * the given `options` which may be passed to [`Array.prototype.sort()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort).\n */\nfunction compare(options) {\n var validatedOptions = getOptions(options);\n return baseCompare(validatedOptions);\n}\n\nvar compareMultiple = function compareMultiple(recordA, recordB, orders) {\n var indexA = recordA.index,\n valuesA = recordA.values;\n var indexB = recordB.index,\n valuesB = recordB.values;\n var length = valuesA.length;\n var ordersLength = orders.length;\n for (var i = 0; i < length; i++) {\n var order = i < ordersLength ? orders[i] : null;\n if (order && typeof order === 'function') {\n var result = order(valuesA[i].value, valuesB[i].value);\n if (result) {\n return result;\n }\n } else {\n var _result = compareValues(valuesA[i], valuesB[i]);\n if (_result) {\n return _result * (order === 'desc' ? -1 : 1);\n }\n }\n }\n return indexA - indexB;\n};\n\nvar createIdentifierFn = function createIdentifierFn(identifier) {\n if (typeof identifier === 'function') {\n // identifier is already a lookup function\n return identifier;\n }\n return function (value) {\n if (Array.isArray(value)) {\n var index = Number(identifier);\n if (Number.isInteger(index)) {\n return value[index];\n }\n } else if (value && typeof value === 'object') {\n var result = Object.getOwnPropertyDescriptor(value, identifier);\n return result == null ? void 0 : result.value;\n }\n return value;\n };\n};\n\nvar getElementByIndex = function getElementByIndex(collection, index) {\n return collection[index];\n};\n\nvar getValueByIdentifier = function getValueByIdentifier(value, getValue) {\n return getValue(value);\n};\n\nvar baseOrderBy = function baseOrderBy(collection, identifiers, orders) {\n var identifierFns = identifiers.length ? identifiers.map(createIdentifierFn) : [function (value) {\n return value;\n }];\n\n // temporary array holds elements with position and sort-values\n var mappedCollection = collection.map(function (element, index) {\n var values = identifierFns.map(function (identifier) {\n return getValueByIdentifier(element, identifier);\n }).map(getMappedValueRecord);\n return {\n index: index,\n values: values\n };\n });\n\n // iterate over values and compare values until a != b or last value reached\n mappedCollection.sort(function (recordA, recordB) {\n return compareMultiple(recordA, recordB, orders);\n });\n return mappedCollection.map(function (element) {\n return getElementByIndex(collection, element.index);\n });\n};\n\nvar getIdentifiers = function getIdentifiers(identifiers) {\n if (!identifiers) {\n return [];\n }\n var identifierList = !Array.isArray(identifiers) ? [identifiers] : [].concat(identifiers);\n if (identifierList.some(function (identifier) {\n return typeof identifier !== 'string' && typeof identifier !== 'number' && typeof identifier !== 'function';\n })) {\n return [];\n }\n return identifierList;\n};\n\nvar getOrders = function getOrders(orders) {\n if (!orders) {\n return [];\n }\n var orderList = !Array.isArray(orders) ? [orders] : [].concat(orders);\n if (orderList.some(function (order) {\n return order !== 'asc' && order !== 'desc' && typeof order !== 'function';\n })) {\n return [];\n }\n return orderList;\n};\n\n/**\n * Creates an array of elements, natural sorted by specified identifiers and\n * the corresponding sort orders. This method implements a stable sort\n * algorithm, which means the original sort order of equal elements is\n * preserved.\n */\nfunction orderBy(collection, identifiers, orders) {\n if (!collection || !Array.isArray(collection)) {\n return [];\n }\n var validatedIdentifiers = getIdentifiers(identifiers);\n var validatedOrders = getOrders(orders);\n return baseOrderBy(collection, validatedIdentifiers, validatedOrders);\n}\n\nexport { compare, orderBy };\n","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}`, {\n delimiter: '',\n mergeAmbiguousCharacters: true,\n })\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}`, {\n delimiter: '',\n mergeAmbiguousCharacters: true,\n })\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"]}
|