@kubb/core 3.0.0-alpha.5 → 3.0.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/{FileManager-tzl0YsYE.d.ts → FileManager-Ceski1W9.d.ts} +46 -33
  2. package/dist/{FileManager-jZpqETKU.d.cts → FileManager-wyXRkgIk.d.cts} +46 -33
  3. package/dist/chunk-2EU7DMPM.js +97 -0
  4. package/dist/chunk-2EU7DMPM.js.map +1 -0
  5. package/dist/chunk-5HN4LW3R.cjs +102 -0
  6. package/dist/chunk-5HN4LW3R.cjs.map +1 -0
  7. package/dist/{chunk-Z5CHJQJB.js → chunk-76UEJFFE.js} +1 -4
  8. package/dist/chunk-76UEJFFE.js.map +1 -0
  9. package/dist/{chunk-5JZNFPUP.js → chunk-AWAZR3D5.js} +61 -10
  10. package/dist/chunk-AWAZR3D5.js.map +1 -0
  11. package/dist/{chunk-FWU62YO5.cjs → chunk-DCZQYCCO.cjs} +216 -326
  12. package/dist/chunk-DCZQYCCO.cjs.map +1 -0
  13. package/dist/{chunk-YTSNYMHW.cjs → chunk-L3JJLZ5Q.cjs} +62 -11
  14. package/dist/chunk-L3JJLZ5Q.cjs.map +1 -0
  15. package/dist/{chunk-RBP2ASUX.cjs → chunk-LOLEBOMW.cjs} +1 -4
  16. package/dist/chunk-LOLEBOMW.cjs.map +1 -0
  17. package/dist/chunk-RIEGCND2.js +525 -0
  18. package/dist/chunk-RIEGCND2.js.map +1 -0
  19. package/dist/index.cjs +80 -69
  20. package/dist/index.cjs.map +1 -1
  21. package/dist/index.d.cts +4 -6
  22. package/dist/index.d.ts +4 -6
  23. package/dist/index.js +67 -58
  24. package/dist/index.js.map +1 -1
  25. package/dist/{logger-BnWJh6Yq.d.cts → logger-BWFeedRk.d.cts} +15 -5
  26. package/dist/{logger-BnWJh6Yq.d.ts → logger-BWFeedRk.d.ts} +15 -5
  27. package/dist/logger.cjs +2 -2
  28. package/dist/logger.d.cts +1 -2
  29. package/dist/logger.d.ts +1 -2
  30. package/dist/logger.js +1 -1
  31. package/dist/mocks.cjs +4 -6
  32. package/dist/mocks.cjs.map +1 -1
  33. package/dist/mocks.d.cts +3 -5
  34. package/dist/mocks.d.ts +3 -5
  35. package/dist/mocks.js +3 -5
  36. package/dist/mocks.js.map +1 -1
  37. package/dist/transformers.cjs +189 -33
  38. package/dist/transformers.cjs.map +1 -1
  39. package/dist/transformers.d.cts +1 -3
  40. package/dist/transformers.d.ts +1 -3
  41. package/dist/transformers.js +156 -14
  42. package/dist/transformers.js.map +1 -1
  43. package/dist/utils.cjs +6 -2
  44. package/dist/utils.cjs.map +1 -1
  45. package/dist/utils.d.cts +30 -3
  46. package/dist/utils.d.ts +30 -3
  47. package/dist/utils.js +7 -3
  48. package/package.json +9 -8
  49. package/src/BarrelManager.ts +24 -99
  50. package/src/FileManager.ts +156 -281
  51. package/src/PackageManager.ts +1 -1
  52. package/src/PluginManager.ts +89 -57
  53. package/src/build.ts +6 -19
  54. package/src/logger.ts +6 -8
  55. package/src/transformers/index.ts +2 -3
  56. package/src/transformers/trim.ts +0 -4
  57. package/src/types.ts +1 -1
  58. package/src/utils/TreeNode.ts +91 -26
  59. package/src/utils/executeStrategies.ts +1 -1
  60. package/src/utils/index.ts +2 -1
  61. package/src/utils/parser.ts +96 -0
  62. package/dist/chunk-5JZNFPUP.js.map +0 -1
  63. package/dist/chunk-CEWT73XF.js +0 -637
  64. package/dist/chunk-CEWT73XF.js.map +0 -1
  65. package/dist/chunk-FWU62YO5.cjs.map +0 -1
  66. package/dist/chunk-JKZG2IJR.js +0 -283
  67. package/dist/chunk-JKZG2IJR.js.map +0 -1
  68. package/dist/chunk-PZT4CTBV.cjs +0 -299
  69. package/dist/chunk-PZT4CTBV.cjs.map +0 -1
  70. package/dist/chunk-RBP2ASUX.cjs.map +0 -1
  71. package/dist/chunk-YTSNYMHW.cjs.map +0 -1
  72. package/dist/chunk-Z5CHJQJB.js.map +0 -1
  73. package/src/utils/getParser.ts +0 -17
@@ -1,5 +1,4 @@
1
1
  import { LogLevel, ConsolaInstance } from 'consola';
2
- import * as KubbFile from '@kubb/fs/src/types.ts';
3
2
 
4
3
  declare class EventEmitter<TEvents extends Record<string, any>> {
5
4
  #private;
@@ -15,12 +14,23 @@ type Events = {
15
14
  success: [message: string];
16
15
  error: [message: string, cause: Error];
17
16
  warning: [message: string];
18
- debug: [logs: string[]];
17
+ debug: [{
18
+ logs: string[];
19
+ override?: boolean;
20
+ fileName?: string;
21
+ }];
19
22
  info: [message: string];
20
- progress: [{
21
- count: number;
23
+ progress_start: [{
24
+ id: string;
22
25
  size: number;
23
- file: KubbFile.File;
26
+ }];
27
+ progress: [{
28
+ id: string;
29
+ count?: number;
30
+ data?: string;
31
+ }];
32
+ progress_stop: [{
33
+ id: string;
24
34
  }];
25
35
  };
26
36
  declare const LogMapper: {
@@ -1,5 +1,4 @@
1
1
  import { LogLevel, ConsolaInstance } from 'consola';
2
- import * as KubbFile from '@kubb/fs/src/types.ts';
3
2
 
4
3
  declare class EventEmitter<TEvents extends Record<string, any>> {
5
4
  #private;
@@ -15,12 +14,23 @@ type Events = {
15
14
  success: [message: string];
16
15
  error: [message: string, cause: Error];
17
16
  warning: [message: string];
18
- debug: [logs: string[]];
17
+ debug: [{
18
+ logs: string[];
19
+ override?: boolean;
20
+ fileName?: string;
21
+ }];
19
22
  info: [message: string];
20
- progress: [{
21
- count: number;
23
+ progress_start: [{
24
+ id: string;
22
25
  size: number;
23
- file: KubbFile.File;
26
+ }];
27
+ progress: [{
28
+ id: string;
29
+ count?: number;
30
+ data?: string;
31
+ }];
32
+ progress_stop: [{
33
+ id: string;
24
34
  }];
25
35
  };
26
36
  declare const LogMapper: {
package/dist/logger.cjs CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkRBP2ASUXcjs = require('./chunk-RBP2ASUX.cjs');
6
+ var _chunkLOLEBOMWcjs = require('./chunk-LOLEBOMW.cjs');
7
7
  require('./chunk-34BPAXR2.cjs');
8
8
  require('./chunk-XCPFG6DO.cjs');
9
9
 
@@ -11,5 +11,5 @@ require('./chunk-XCPFG6DO.cjs');
11
11
 
12
12
 
13
13
 
14
- exports.LogMapper = _chunkRBP2ASUXcjs.LogMapper; exports.createLogger = _chunkRBP2ASUXcjs.createLogger; exports.randomCliColour = _chunkRBP2ASUXcjs.randomCliColour; exports.randomColour = _chunkRBP2ASUXcjs.randomColour;
14
+ exports.LogMapper = _chunkLOLEBOMWcjs.LogMapper; exports.createLogger = _chunkLOLEBOMWcjs.createLogger; exports.randomCliColour = _chunkLOLEBOMWcjs.randomCliColour; exports.randomColour = _chunkLOLEBOMWcjs.randomColour;
15
15
  //# sourceMappingURL=logger.cjs.map
package/dist/logger.d.cts CHANGED
@@ -1,3 +1,2 @@
1
- export { a as LogMapper, L as Logger, c as createLogger, b as randomCliColour, r as randomColour } from './logger-BnWJh6Yq.cjs';
1
+ export { a as LogMapper, L as Logger, c as createLogger, b as randomCliColour, r as randomColour } from './logger-BWFeedRk.cjs';
2
2
  import 'consola';
3
- import '@kubb/fs/src/types.ts';
package/dist/logger.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- export { a as LogMapper, L as Logger, c as createLogger, b as randomCliColour, r as randomColour } from './logger-BnWJh6Yq.js';
1
+ export { a as LogMapper, L as Logger, c as createLogger, b as randomCliColour, r as randomColour } from './logger-BWFeedRk.js';
2
2
  import 'consola';
3
- import '@kubb/fs/src/types.ts';
package/dist/logger.js CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  createLogger,
4
4
  randomCliColour,
5
5
  randomColour
6
- } from "./chunk-Z5CHJQJB.js";
6
+ } from "./chunk-76UEJFFE.js";
7
7
  import "./chunk-25NKJ3DV.js";
8
8
  import "./chunk-HMLY7DHA.js";
9
9
  export {
package/dist/mocks.cjs CHANGED
@@ -1,8 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkFWU62YO5cjs = require('./chunk-FWU62YO5.cjs');
4
- require('./chunk-PZT4CTBV.cjs');
5
- require('./chunk-YTSNYMHW.cjs');
3
+ var _chunkDCZQYCCOcjs = require('./chunk-DCZQYCCO.cjs');
4
+ require('./chunk-L3JJLZ5Q.cjs');
6
5
 
7
6
 
8
7
  var _chunk67C6RBGQcjs = require('./chunk-67C6RBGQ.cjs');
@@ -46,14 +45,13 @@ var mockedPluginManager = {
46
45
  baseName,
47
46
  meta: {
48
47
  pluginKey
49
- },
50
- source
48
+ }
51
49
  };
52
50
  }
53
51
  };
54
52
  async function matchFiles(files) {
55
53
  for (const file of files) {
56
- const source = await _chunkFWU62YO5cjs.getSource.call(void 0, file);
54
+ const source = await _chunkDCZQYCCOcjs.getSource.call(void 0, file);
57
55
  expect(source).toMatchSnapshot();
58
56
  }
59
57
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/core/dist/mocks.cjs","../mocks/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACZA,8CAAA,CAAA;AAEA,8BAAyB;AAKlB,IAAM,oBAAA,EAAsB;AAAA,EACjC,WAAA,EAAa,CAAC,EAAE,IAAA,EAAM,KAAK,CAAA,EAAA,GAAM;AAC/B,IAAA,GAAA,CAAI,KAAA,IAAS,MAAA,EAAQ;AACnB,MAAA,OAAO,0CAAA,IAAe,CAAA;AAAA,IACxB;AAEA,IAAA,OAAO,IAAA;AAAA,EACT,CAAA;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,MAAA,EAAQ;AAAA,MACN,IAAA,EAAM;AAAA,IACR;AAAA,EACF,CAAA;AAAA,EACA,WAAA,EAAa,CAAC,EAAE,SAAS,CAAA,EAAA,GAAM,QAAA;AAAA,EAC/B,MAAA,EAAQ;AAAA,IACN,IAAA,CAAK,OAAA,EAAS;AACZ,MAAA,OAAA,CAAQ,GAAA,CAAI,OAAO,CAAA;AAAA,IACrB,CAAA;AAAA,IACA,EAAA,CAAG,SAAA,EAAW,IAAA,EAAM;AAAA,IAAC,CAAA;AAAA,IACrB,QAAA,EAAU;AAAA,EACZ,CAAA;AAAA,EACA,OAAA,EAAS,CAAC,EAAE,IAAA,EAAM,OAAA,EAAS,UAAU,CAAA,EAAA,GAAM;AACzC,IAAA,MAAM,SAAA,EAAW,CAAA,EAAA;AACJ,IAAA;AAET,IAAA;AACO,MAAA;AACE,IAAA;AAEb,IAAA;AAEO,IAAA;AACC,MAAA;AACN,MAAA;AACM,MAAA;AACJ,QAAA;AACF,MAAA;AACA,MAAA;AACF,IAAA;AACF,EAAA;AACF;AAEsB;AACD,EAAA;AACF,IAAA;AACA,IAAA;AACjB,EAAA;AACF;ADKsB;AACA;AACA;AACA","file":"/home/runner/work/kubb/kubb/packages/core/dist/mocks.cjs","sourcesContent":[null,"import { pascalCase } from '../src/transformers/casing.ts'\n\nimport { readSync } from '@kubb/fs'\nimport type * as KubbFile from '@kubb/fs/types'\nimport { FileManager, getSource } from '../src/FileManager'\nimport type { PluginManager } from '../src/PluginManager.ts'\n\nexport const mockedPluginManager = {\n resolveName: ({ name, type }) => {\n if (type === 'type') {\n return pascalCase(name)\n }\n\n return name\n },\n config: {\n output: {\n path: './path',\n },\n },\n resolvePath: ({ baseName }) => baseName,\n logger: {\n emit(message) {\n console.log(message)\n },\n on(eventName, args) {},\n logLevel: 3,\n },\n getFile: ({ name, extName, pluginKey }) => {\n const baseName = `${name}${extName}`\n let source = ''\n\n try {\n source = readSync(baseName)\n } catch (_e) {\n //\n }\n\n return {\n path: baseName,\n baseName,\n meta: {\n pluginKey,\n },\n source,\n }\n },\n} as PluginManager\n\nexport async function matchFiles(files: KubbFile.File[]) {\n for (const file of files) {\n const source = await getSource(file)\n expect(source).toMatchSnapshot()\n }\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/core/dist/mocks.cjs","../mocks/index.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACXA,8CAAA,CAAA;AAEA,8BAAyB;AAKlB,IAAM,oBAAA,EAAsB;AAAA,EACjC,WAAA,EAAa,CAAC,EAAE,IAAA,EAAM,KAAK,CAAA,EAAA,GAAM;AAC/B,IAAA,GAAA,CAAI,KAAA,IAAS,MAAA,EAAQ;AACnB,MAAA,OAAO,0CAAA,IAAe,CAAA;AAAA,IACxB;AAEA,IAAA,OAAO,IAAA;AAAA,EACT,CAAA;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,MAAA,EAAQ;AAAA,MACN,IAAA,EAAM;AAAA,IACR;AAAA,EACF,CAAA;AAAA,EACA,WAAA,EAAa,CAAC,EAAE,SAAS,CAAA,EAAA,GAAM,QAAA;AAAA,EAC/B,MAAA,EAAQ;AAAA,IACN,IAAA,CAAK,OAAA,EAAS;AACZ,MAAA,OAAA,CAAQ,GAAA,CAAI,OAAO,CAAA;AAAA,IACrB,CAAA;AAAA,IACA,EAAA,CAAG,SAAA,EAAW,IAAA,EAAM;AAAA,IAAC,CAAA;AAAA,IACrB,QAAA,EAAU;AAAA,EACZ,CAAA;AAAA,EACA,OAAA,EAAS,CAAC,EAAE,IAAA,EAAM,OAAA,EAAS,UAAU,CAAA,EAAA,GAAM;AACzC,IAAA,MAAM,SAAA,EAAW,CAAA,EAAA;AACJ,IAAA;AAET,IAAA;AACO,MAAA;AACE,IAAA;AAEb,IAAA;AAEO,IAAA;AACC,MAAA;AACN,MAAA;AACM,MAAA;AACJ,QAAA;AACF,MAAA;AACF,IAAA;AACF,EAAA;AACF;AAEsB;AACD,EAAA;AACF,IAAA;AACA,IAAA;AACjB,EAAA;AACF;ADIsB;AACA;AACA;AACA","file":"/home/runner/work/kubb/kubb/packages/core/dist/mocks.cjs","sourcesContent":[null,"import { pascalCase } from '../src/transformers/casing.ts'\n\nimport { readSync } from '@kubb/fs'\nimport type * as KubbFile from '@kubb/fs/types'\nimport { getSource } from '../src/FileManager'\nimport type { PluginManager } from '../src/PluginManager.ts'\n\nexport const mockedPluginManager = {\n resolveName: ({ name, type }) => {\n if (type === 'type') {\n return pascalCase(name)\n }\n\n return name\n },\n config: {\n output: {\n path: './path',\n },\n },\n resolvePath: ({ baseName }) => baseName,\n logger: {\n emit(message) {\n console.log(message)\n },\n on(eventName, args) {},\n logLevel: 3,\n },\n getFile: ({ name, extName, pluginKey }) => {\n const baseName = `${name}${extName}`\n let source = ''\n\n try {\n source = readSync(baseName)\n } catch (_e) {\n //\n }\n\n return {\n path: baseName,\n baseName,\n meta: {\n pluginKey,\n },\n }\n },\n} as PluginManager\n\nexport async function matchFiles(files: Array<KubbFile.ResolvedFile | KubbFile.File>) {\n for (const file of files) {\n const source = await getSource(file as KubbFile.ResolvedFile)\n expect(source).toMatchSnapshot()\n }\n}\n"]}
package/dist/mocks.d.cts CHANGED
@@ -1,13 +1,11 @@
1
1
  import * as KubbFile from '@kubb/fs/types';
2
- import { a as PluginManager } from './FileManager-jZpqETKU.cjs';
2
+ import { a as PluginManager } from './FileManager-wyXRkgIk.cjs';
3
3
  import '@kubb/fs';
4
- import '@kubb/fs/src/types.ts';
5
4
  import '@kubb/types';
6
- import 'directory-tree';
7
- import './logger-BnWJh6Yq.cjs';
5
+ import './logger-BWFeedRk.cjs';
8
6
  import 'consola';
9
7
 
10
8
  declare const mockedPluginManager: PluginManager;
11
- declare function matchFiles(files: KubbFile.File[]): Promise<void>;
9
+ declare function matchFiles(files: Array<KubbFile.ResolvedFile | KubbFile.File>): Promise<void>;
12
10
 
13
11
  export { matchFiles, mockedPluginManager };
package/dist/mocks.d.ts CHANGED
@@ -1,13 +1,11 @@
1
1
  import * as KubbFile from '@kubb/fs/types';
2
- import { a as PluginManager } from './FileManager-tzl0YsYE.js';
2
+ import { a as PluginManager } from './FileManager-Ceski1W9.js';
3
3
  import '@kubb/fs';
4
- import '@kubb/fs/src/types.ts';
5
4
  import '@kubb/types';
6
- import 'directory-tree';
7
- import './logger-BnWJh6Yq.js';
5
+ import './logger-BWFeedRk.js';
8
6
  import 'consola';
9
7
 
10
8
  declare const mockedPluginManager: PluginManager;
11
- declare function matchFiles(files: KubbFile.File[]): Promise<void>;
9
+ declare function matchFiles(files: Array<KubbFile.ResolvedFile | KubbFile.File>): Promise<void>;
12
10
 
13
11
  export { matchFiles, mockedPluginManager };
package/dist/mocks.js CHANGED
@@ -1,8 +1,7 @@
1
1
  import {
2
2
  getSource
3
- } from "./chunk-CEWT73XF.js";
4
- import "./chunk-JKZG2IJR.js";
5
- import "./chunk-5JZNFPUP.js";
3
+ } from "./chunk-RIEGCND2.js";
4
+ import "./chunk-AWAZR3D5.js";
6
5
  import {
7
6
  pascalCase
8
7
  } from "./chunk-4X5FFJPJ.js";
@@ -43,8 +42,7 @@ var mockedPluginManager = {
43
42
  baseName,
44
43
  meta: {
45
44
  pluginKey
46
- },
47
- source
45
+ }
48
46
  };
49
47
  }
50
48
  };
package/dist/mocks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../mocks/index.ts"],"sourcesContent":["import { pascalCase } from '../src/transformers/casing.ts'\n\nimport { readSync } from '@kubb/fs'\nimport type * as KubbFile from '@kubb/fs/types'\nimport { FileManager, getSource } from '../src/FileManager'\nimport type { PluginManager } from '../src/PluginManager.ts'\n\nexport const mockedPluginManager = {\n resolveName: ({ name, type }) => {\n if (type === 'type') {\n return pascalCase(name)\n }\n\n return name\n },\n config: {\n output: {\n path: './path',\n },\n },\n resolvePath: ({ baseName }) => baseName,\n logger: {\n emit(message) {\n console.log(message)\n },\n on(eventName, args) {},\n logLevel: 3,\n },\n getFile: ({ name, extName, pluginKey }) => {\n const baseName = `${name}${extName}`\n let source = ''\n\n try {\n source = readSync(baseName)\n } catch (_e) {\n //\n }\n\n return {\n path: baseName,\n baseName,\n meta: {\n pluginKey,\n },\n source,\n }\n },\n} as PluginManager\n\nexport async function matchFiles(files: KubbFile.File[]) {\n for (const file of files) {\n const source = await getSource(file)\n expect(source).toMatchSnapshot()\n }\n}\n"],"mappings":";;;;;;;;;;;AAEA,SAAS,gBAAgB;AAKlB,IAAM,sBAAsB;AAAA,EACjC,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM;AAC/B,QAAI,SAAS,QAAQ;AACnB,aAAO,WAAW,IAAI;AAAA,IACxB;AAEA,WAAO;AAAA,EACT;AAAA,EACA,QAAQ;AAAA,IACN,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,aAAa,CAAC,EAAE,SAAS,MAAM;AAAA,EAC/B,QAAQ;AAAA,IACN,KAAK,SAAS;AACZ,cAAQ,IAAI,OAAO;AAAA,IACrB;AAAA,IACA,GAAG,WAAW,MAAM;AAAA,IAAC;AAAA,IACrB,UAAU;AAAA,EACZ;AAAA,EACA,SAAS,CAAC,EAAE,MAAM,SAAS,UAAU,MAAM;AACzC,UAAM,WAAW,GAAG,IAAI,GAAG,OAAO;AAClC,QAAI,SAAS;AAEb,QAAI;AACF,eAAS,SAAS,QAAQ;AAAA,IAC5B,SAAS,IAAI;AAAA,IAEb;AAEA,WAAO;AAAA,MACL,MAAM;AAAA,MACN;AAAA,MACA,MAAM;AAAA,QACJ;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAEA,eAAsB,WAAW,OAAwB;AACvD,aAAW,QAAQ,OAAO;AACxB,UAAM,SAAS,MAAM,UAAU,IAAI;AACnC,WAAO,MAAM,EAAE,gBAAgB;AAAA,EACjC;AACF;","names":[]}
1
+ {"version":3,"sources":["../mocks/index.ts"],"sourcesContent":["import { pascalCase } from '../src/transformers/casing.ts'\n\nimport { readSync } from '@kubb/fs'\nimport type * as KubbFile from '@kubb/fs/types'\nimport { getSource } from '../src/FileManager'\nimport type { PluginManager } from '../src/PluginManager.ts'\n\nexport const mockedPluginManager = {\n resolveName: ({ name, type }) => {\n if (type === 'type') {\n return pascalCase(name)\n }\n\n return name\n },\n config: {\n output: {\n path: './path',\n },\n },\n resolvePath: ({ baseName }) => baseName,\n logger: {\n emit(message) {\n console.log(message)\n },\n on(eventName, args) {},\n logLevel: 3,\n },\n getFile: ({ name, extName, pluginKey }) => {\n const baseName = `${name}${extName}`\n let source = ''\n\n try {\n source = readSync(baseName)\n } catch (_e) {\n //\n }\n\n return {\n path: baseName,\n baseName,\n meta: {\n pluginKey,\n },\n }\n },\n} as PluginManager\n\nexport async function matchFiles(files: Array<KubbFile.ResolvedFile | KubbFile.File>) {\n for (const file of files) {\n const source = await getSource(file as KubbFile.ResolvedFile)\n expect(source).toMatchSnapshot()\n }\n}\n"],"mappings":";;;;;;;;;;AAEA,SAAS,gBAAgB;AAKlB,IAAM,sBAAsB;AAAA,EACjC,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM;AAC/B,QAAI,SAAS,QAAQ;AACnB,aAAO,WAAW,IAAI;AAAA,IACxB;AAEA,WAAO;AAAA,EACT;AAAA,EACA,QAAQ;AAAA,IACN,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,aAAa,CAAC,EAAE,SAAS,MAAM;AAAA,EAC/B,QAAQ;AAAA,IACN,KAAK,SAAS;AACZ,cAAQ,IAAI,OAAO;AAAA,IACrB;AAAA,IACA,GAAG,WAAW,MAAM;AAAA,IAAC;AAAA,IACrB,UAAU;AAAA,EACZ;AAAA,EACA,SAAS,CAAC,EAAE,MAAM,SAAS,UAAU,MAAM;AACzC,UAAM,WAAW,GAAG,IAAI,GAAG,OAAO;AAClC,QAAI,SAAS;AAEb,QAAI;AACF,eAAS,SAAS,QAAQ;AAAA,IAC5B,SAAS,IAAI;AAAA,IAEb;AAEA,WAAO;AAAA,MACL,MAAM;AAAA,MACN;AAAA,MACA,MAAM;AAAA,QACJ;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAEA,eAAsB,WAAW,OAAqD;AACpF,aAAW,QAAQ,OAAO;AACxB,UAAM,SAAS,MAAM,UAAU,IAA6B;AAC5D,WAAO,MAAM,EAAE,gBAAgB;AAAA,EACjC;AACF;","names":[]}
@@ -1,42 +1,198 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
2
 
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
- var _chunkPZT4CTBVcjs = require('./chunk-PZT4CTBV.cjs');
3
+ var _chunk5HN4LW3Rcjs = require('./chunk-5HN4LW3R.cjs');
20
4
 
21
5
 
22
6
 
23
7
 
24
8
 
25
9
  var _chunk67C6RBGQcjs = require('./chunk-67C6RBGQ.cjs');
26
- require('./chunk-XCPFG6DO.cjs');
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
10
+
11
+
12
+ var _chunkXCPFG6DOcjs = require('./chunk-XCPFG6DO.cjs');
13
+
14
+ // src/transformers/index.ts
15
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
16
+ var _remeda = require('remeda');
17
+
18
+ // src/transformers/combineCodes.ts
19
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
20
+ function combineCodes(codes) {
21
+ return codes.join("\n");
22
+ }
23
+
24
+ // src/transformers/createJSDocBlockText.ts
25
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
26
+ function createJSDocBlockText({ comments }) {
27
+ const filteredComments = comments.filter(Boolean);
28
+ if (!filteredComments.length) {
29
+ return "";
30
+ }
31
+ return `/**
32
+ * ${filteredComments.join("\n * ")}
33
+ */`;
34
+ }
35
+
36
+ // src/transformers/escape.ts
37
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
38
+ function escape(text) {
39
+ return text ? text.replaceAll("`", "\\`") : "";
40
+ }
41
+ function jsStringEscape(input) {
42
+ return `${input}`.replace(/["'\\\n\r\u2028\u2029]/g, (character) => {
43
+ switch (character) {
44
+ case '"':
45
+ case "'":
46
+ case "\\":
47
+ return `\\${character}`;
48
+ case "\n":
49
+ return "\\n";
50
+ case "\r":
51
+ return "\\r";
52
+ case "\u2028":
53
+ return "\\u2028";
54
+ case "\u2029":
55
+ return "\\u2029";
56
+ default:
57
+ return "";
58
+ }
59
+ });
60
+ }
61
+
62
+ // src/transformers/indent.ts
63
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
64
+ function createIndent(size) {
65
+ return Array.from({ length: size + 1 }).join(" ");
66
+ }
67
+
68
+ // src/transformers/nameSorter.ts
69
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
70
+ function nameSorter(a, b) {
71
+ if (a.name < b.name) {
72
+ return -1;
73
+ }
74
+ if (a.name > b.name) {
75
+ return 1;
76
+ }
77
+ return 0;
78
+ }
79
+
80
+ // src/transformers/searchAndReplace.ts
81
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
82
+ function searchAndReplace(options) {
83
+ const { text, replaceBy, prefix = "", key } = options;
84
+ const searchValues = _optionalChain([options, 'access', _ => _.searchValues, 'optionalCall', _2 => _2(prefix, key)]) || [
85
+ `${prefix}["${key}"]`,
86
+ `${prefix}['${key}']`,
87
+ `${prefix}[\`${key}\`]`,
88
+ `${prefix}"${key}"`,
89
+ `${prefix}'${key}'`,
90
+ `${prefix}\`${key}\``,
91
+ new RegExp(`${prefix}${key}`, "g")
92
+ ];
93
+ return searchValues.reduce((prev, searchValue) => {
94
+ return prev.toString().replaceAll(searchValue, replaceBy);
95
+ }, text);
96
+ }
97
+
98
+ // src/transformers/stringify.ts
99
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
100
+
101
+ // src/transformers/trim.ts
102
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
103
+ function trim(text) {
104
+ return text.replaceAll(/\n/g, "").trim();
105
+ }
106
+ function trimQuotes(text) {
107
+ if (text.match(/^"(.*)"$/)) {
108
+ return text.replace(/^"(.*)"$/, "$1");
109
+ }
110
+ if (text.match(/^'(.*)'$/)) {
111
+ return text.replace(/^'(.*)'$/, "$1");
112
+ }
113
+ if (text.match(/^`(.*)`$/)) {
114
+ return text.replace(/^`(.*)`$/, "$1");
115
+ }
116
+ return text;
117
+ }
118
+
119
+ // src/transformers/stringify.ts
120
+ function stringify(value) {
121
+ if (value === void 0 || value === null) {
122
+ return '""';
123
+ }
124
+ return JSON.stringify(trimQuotes(value.toString()));
125
+ }
126
+ function stringifyObject(value) {
127
+ const items = Object.entries(value).map(([key, value2]) => {
128
+ if (typeof value2 === "object") {
129
+ return `${key}: {
130
+ ${stringifyObject(value2)}
131
+ }`;
132
+ }
133
+ return `${key}: ${value2}`;
134
+ }).filter(Boolean);
135
+ return items.join(",\n");
136
+ }
137
+
138
+ // src/transformers/toRegExp.ts
139
+ _chunkXCPFG6DOcjs.init_cjs_shims.call(void 0, );
140
+ function stringToRegex(text) {
141
+ const isStartWithSlash = text.startsWith("/");
142
+ const isEndWithSlash = text.endsWith("/");
143
+ return new RegExp(text.slice(isStartWithSlash ? 1 : 0, isEndWithSlash ? -1 : void 0));
144
+ }
145
+ function toRegExp(text) {
146
+ if (typeof text === "string") {
147
+ const source = trimQuotes(text);
148
+ return stringToRegex(source);
149
+ }
150
+ return stringToRegex(text.toString());
151
+ }
152
+ function toRegExpString(text, func = "RegExp") {
153
+ const isStartWithSlash = text.startsWith("/");
154
+ const isEndWithSlash = text.endsWith("/");
155
+ const regexp = `new ${func}('${jsStringEscape(text.slice(isStartWithSlash ? 1 : 0, isEndWithSlash ? -1 : void 0))}')`;
156
+ return regexp;
157
+ }
158
+
159
+ // src/transformers/index.ts
160
+
161
+ var transformers_default = {
162
+ combineCodes,
163
+ escape,
164
+ jsStringEscape,
165
+ createIndent,
166
+ transformReservedWord: _chunk5HN4LW3Rcjs.transformReservedWord,
167
+ nameSorter,
168
+ searchAndReplace,
169
+ stringify,
170
+ stringifyObject,
171
+ toRegExp,
172
+ toRegExpString,
173
+ trim,
174
+ trimQuotes,
175
+ JSDoc: {
176
+ createJSDocBlockText
177
+ },
178
+ orderBy: _chunk67C6RBGQcjs.orderBy,
179
+ merge: _remeda.merge,
180
+ camelCase: _chunk67C6RBGQcjs.camelCase,
181
+ pascalCase: _chunk67C6RBGQcjs.pascalCase,
182
+ pathCase: _chunk67C6RBGQcjs.pathCase
183
+ };
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
40
196
 
41
197
 
42
198
 
@@ -46,5 +202,5 @@ require('./chunk-XCPFG6DO.cjs');
46
202
 
47
203
 
48
204
 
49
- exports.camelCase = _chunk67C6RBGQcjs.camelCase; exports.combineCodes = _chunkPZT4CTBVcjs.combineCodes; exports.createIndent = _chunkPZT4CTBVcjs.createIndent; exports.createJSDocBlockText = _chunkPZT4CTBVcjs.createJSDocBlockText; exports.default = _chunkPZT4CTBVcjs.transformers_default; exports.escape = _chunkPZT4CTBVcjs.escape; exports.jsStringEscape = _chunkPZT4CTBVcjs.jsStringEscape; exports.merge = _chunkPZT4CTBVcjs.merge; exports.nameSorter = _chunkPZT4CTBVcjs.nameSorter; exports.orderBy = _chunk67C6RBGQcjs.orderBy; exports.pascalCase = _chunk67C6RBGQcjs.pascalCase; exports.pathCase = _chunk67C6RBGQcjs.pathCase; exports.searchAndReplace = _chunkPZT4CTBVcjs.searchAndReplace; exports.stringify = _chunkPZT4CTBVcjs.stringify; exports.stringifyObject = _chunkPZT4CTBVcjs.stringifyObject; exports.toRegExp = _chunkPZT4CTBVcjs.toRegExp; exports.toRegExpString = _chunkPZT4CTBVcjs.toRegExpString; exports.transformReservedWord = _chunkPZT4CTBVcjs.transformReservedWord; exports.trim = _chunkPZT4CTBVcjs.trim; exports.trimExtName = _chunkPZT4CTBVcjs.trimExtName; exports.trimQuotes = _chunkPZT4CTBVcjs.trimQuotes;
205
+ exports.camelCase = _chunk67C6RBGQcjs.camelCase; exports.combineCodes = combineCodes; exports.createIndent = createIndent; exports.createJSDocBlockText = createJSDocBlockText; exports.default = transformers_default; exports.escape = escape; exports.jsStringEscape = jsStringEscape; exports.merge = _remeda.merge; exports.nameSorter = nameSorter; exports.orderBy = _chunk67C6RBGQcjs.orderBy; exports.pascalCase = _chunk67C6RBGQcjs.pascalCase; exports.pathCase = _chunk67C6RBGQcjs.pathCase; exports.searchAndReplace = searchAndReplace; exports.stringify = stringify; exports.stringifyObject = stringifyObject; exports.toRegExp = toRegExp; exports.toRegExpString = toRegExpString; exports.transformReservedWord = _chunk5HN4LW3Rcjs.transformReservedWord; exports.trim = trim; exports.trimQuotes = trimQuotes;
50
206
  //# sourceMappingURL=transformers.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/core/dist/transformers.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,+lCAAC","file":"/home/runner/work/kubb/kubb/packages/core/dist/transformers.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/kubb/kubb/packages/core/dist/transformers.cjs","../src/transformers/index.ts","../src/transformers/combineCodes.ts","../src/transformers/createJSDocBlockText.ts","../src/transformers/escape.ts","../src/transformers/indent.ts","../src/transformers/nameSorter.ts","../src/transformers/searchAndReplace.ts","../src/transformers/stringify.ts","../src/transformers/trim.ts","../src/transformers/toRegExp.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACbA,8CAAA,CAAA;AACA,gCAAsB;ADetB;AACA;AEjBA,8CAAA,CAAA;AAAO,SAAS,YAAA,CAAa,KAAA,EAAyB;AACpD,EAAA,OAAO,KAAA,CAAM,IAAA,CAAK,IAAI,CAAA;AACxB;AFoBA;AACA;AGvBA,8CAAA,CAAA;AAAO,SAAS,oBAAA,CAAqB,EAAE,SAAS,CAAA,EAAwC;AACtF,EAAA,MAAM,iBAAA,EAAmB,QAAA,CAAS,MAAA,CAAO,OAAO,CAAA;AAEhD,EAAA,GAAA,CAAI,CAAC,gBAAA,CAAiB,MAAA,EAAQ;AAC5B,IAAA,OAAO,EAAA;AAAA,EACT;AAEA,EAAA,OAAO,CAAA;AAAA,GAAA,EAAW,gBAAA,CAAiB,IAAA,CAAK,OAAO,CAAC,CAAA;AAAA,GAAA,CAAA;AAClD;AH0BA;AACA;AInCA,8CAAA,CAAA;AAAO,SAAS,MAAA,CAAO,IAAA,EAAuB;AAC5C,EAAA,OAAO,KAAA,EAAO,IAAA,CAAK,UAAA,CAAW,GAAA,EAAK,KAAK,EAAA,EAAI,EAAA;AAC9C;AAQO,SAAS,cAAA,CAAe,KAAA,EAAoB;AACjD,EAAA,OAAO,CAAA,EAAA;AACL,IAAA;AACE,MAAA;AACA,MAAA;AACA,MAAA;AACE,QAAA;AAEF,MAAA;AACE,QAAA;AACF,MAAA;AACE,QAAA;AACF,MAAA;AACE,QAAA;AACF,MAAA;AACE,QAAA;AACF,MAAA;AACE,QAAA;AACJ,IAAA;AACD,EAAA;AACH;AJ8BU;AACA;AK7DV;AAAgB;AACP,EAAA;AACT;ALgEU;AACA;AMnEV;AAAgB;AACR,EAAA;AACJ,IAAA;AACF,EAAA;AACM,EAAA;AACJ,IAAA;AACF,EAAA;AACO,EAAA;AACT;ANsEU;AACA;AO/EV;AAQgB;AACN,EAAA;AAEF,EAAA;AACD,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACC,IAAA;AACN,EAAA;AAEO,EAAA;AACL,IAAA;AACK,EAAA;AACT;APwEU;AACA;AQjGV;ARmGU;AACA;ASpGV;AAAgB;AACP,EAAA;AACT;AAEgB;AACV,EAAA;AACF,IAAA;AACF,EAAA;AACI,EAAA;AACF,IAAA;AACF,EAAA;AAEI,EAAA;AACF,IAAA;AACF,EAAA;AAEO,EAAA;AACT;AToGU;AACA;AQpHM;AACV,EAAA;AACF,IAAA;AACF,EAAA;AAEO,EAAA;AACT;AAEgB;AACR,EAAA;AAEE,IAAA;AACF,MAAA;AACE,QAAA;AAAsB,OAAA;AAE1B,IAAA;AAEA,IAAA;AAED,EAAA;AAEI,EAAA;AACT;ARgHU;AACA;AUzIV;AAGS;AACD,EAAA;AACA,EAAA;AAEC,EAAA;AACT;AAKgB;AACV,EAAA;AACI,IAAA;AAEN,IAAA;AACF,EAAA;AAEO,EAAA;AACT;AAEgB;AACR,EAAA;AACA,EAAA;AAEA,EAAA;AAEC,EAAA;AACT;AV+HU;AACA;ACpID;AAGF;AACL,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACO,EAAA;AACL,IAAA;AACF,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACA,EAAA;AACF;ADoIU;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/kubb/kubb/packages/core/dist/transformers.cjs","sourcesContent":[null,"import { orderBy } from 'natural-orderby'\nimport { merge } from 'remeda'\n\nimport { 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 { stringify, stringifyObject } from './stringify.ts'\nimport { toRegExp, toRegExpString } from './toRegExp.ts'\nimport { transformReservedWord } from './transformReservedWord.ts'\nimport { trim, trimQuotes } 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 { stringify, stringifyObject } from './stringify.ts'\nexport { toRegExp, toRegExpString } from './toRegExp.ts'\nexport { transformReservedWord } from './transformReservedWord.ts'\nexport { trim, trimQuotes } from './trim.ts'\nexport { merge } from 'remeda'\nexport { orderBy } from 'natural-orderby'\n\nexport default {\n combineCodes,\n escape,\n jsStringEscape,\n createIndent,\n transformReservedWord,\n nameSorter,\n searchAndReplace,\n stringify,\n stringifyObject,\n toRegExp,\n toRegExpString,\n trim,\n trimQuotes,\n JSDoc: {\n createJSDocBlockText,\n },\n orderBy,\n merge,\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\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\nexport function escapeStringRegexp(string: string) {\n if (typeof string !== 'string') {\n throw new TypeError('Expected a string')\n }\n\n // Escape characters with special meaning either inside or outside character sets.\n // Use a simple backslash escape when it’s always valid, and a `\\xnn` escape when the simpler form would be disallowed by Unicode patterns’ stricter grammar.\n return string.replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&').replace(/-/g, '\\\\x2d')\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","type Options = {\n text: string\n replaceBy: string\n prefix?: string\n key: string\n searchValues?: (prefix: string, key: string) => Array<RegExp | string>\n}\n\nexport function searchAndReplace(options: Options): string {\n const { text, replaceBy, prefix = '', key } = options\n\n const searchValues = options.searchValues?.(prefix, key) || [\n `${prefix}[\"${key}\"]`,\n `${prefix}['${key}']`,\n `${prefix}[\\`${key}\\`]`,\n `${prefix}\"${key}\"`,\n `${prefix}'${key}'`,\n `${prefix}\\`${key}\\``,\n new RegExp(`${prefix}${key}`, 'g'),\n ]\n\n return searchValues.reduce((prev, searchValue) => {\n return prev.toString().replaceAll(searchValue, replaceBy)\n }, text) as string\n}\n","import { trimQuotes } from './trim'\n\nexport function stringify(value: string | number | undefined): string {\n if (value === undefined || value === null) {\n return '\"\"'\n }\n\n return JSON.stringify(trimQuotes(value.toString()))\n}\n\nexport function stringifyObject(value: object): string {\n const items = Object.entries(value)\n .map(([key, value]) => {\n if (typeof value === 'object') {\n return `${key}: {\n ${stringifyObject(value)}\n }`\n }\n\n return `${key}: ${value}`\n })\n .filter(Boolean)\n\n return items.join(',\\n')\n}\n","export function trim(text: string): string {\n return text.replaceAll(/\\n/g, '').trim()\n}\n\nexport function trimQuotes(text: string): string {\n if (text.match(/^\"(.*)\"$/)) {\n return text.replace(/^\"(.*)\"$/, '$1')\n }\n if (text.match(/^'(.*)'$/)) {\n return text.replace(/^'(.*)'$/, '$1')\n }\n\n if (text.match(/^`(.*)`$/)) {\n return text.replace(/^`(.*)`$/, '$1')\n }\n\n return text\n}\n","import { jsStringEscape } from './escape'\nimport { trimQuotes } from './trim'\n\nfunction stringToRegex(text: string) {\n const isStartWithSlash = text.startsWith('/')\n const isEndWithSlash = text.endsWith('/')\n\n return new RegExp(text.slice(isStartWithSlash ? 1 : 0, isEndWithSlash ? -1 : undefined))\n}\n\n/**\n * @experimental\n */\nexport function toRegExp(text: string | RegExp): RegExp {\n if (typeof text === 'string') {\n const source = trimQuotes(text)\n\n return stringToRegex(source)\n }\n\n return stringToRegex(text.toString())\n}\n\nexport function toRegExpString(text: string, func = 'RegExp'): string {\n const isStartWithSlash = text.startsWith('/')\n const isEndWithSlash = text.endsWith('/')\n\n const regexp = `new ${func}('${jsStringEscape(text.slice(isStartWithSlash ? 1 : 0, isEndWithSlash ? -1 : undefined))}')`\n\n return regexp\n}\n"]}
@@ -57,7 +57,6 @@ declare function transformReservedWord(word: string): string;
57
57
 
58
58
  declare function trim(text: string): string;
59
59
  declare function trimQuotes(text: string): string;
60
- declare function trimExtName(text: string): string;
61
60
 
62
61
  declare const _default: {
63
62
  readonly combineCodes: typeof combineCodes;
@@ -73,7 +72,6 @@ declare const _default: {
73
72
  readonly toRegExpString: typeof toRegExpString;
74
73
  readonly trim: typeof trim;
75
74
  readonly trimQuotes: typeof trimQuotes;
76
- readonly trimExtName: typeof trimExtName;
77
75
  readonly JSDoc: {
78
76
  readonly createJSDocBlockText: typeof createJSDocBlockText;
79
77
  };
@@ -84,4 +82,4 @@ declare const _default: {
84
82
  readonly pathCase: typeof pathCase;
85
83
  };
86
84
 
87
- export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, pathCase, searchAndReplace, stringify, stringifyObject, toRegExp, toRegExpString, transformReservedWord, trim, trimExtName, trimQuotes };
85
+ export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, pathCase, searchAndReplace, stringify, stringifyObject, toRegExp, toRegExpString, transformReservedWord, trim, trimQuotes };
@@ -57,7 +57,6 @@ declare function transformReservedWord(word: string): string;
57
57
 
58
58
  declare function trim(text: string): string;
59
59
  declare function trimQuotes(text: string): string;
60
- declare function trimExtName(text: string): string;
61
60
 
62
61
  declare const _default: {
63
62
  readonly combineCodes: typeof combineCodes;
@@ -73,7 +72,6 @@ declare const _default: {
73
72
  readonly toRegExpString: typeof toRegExpString;
74
73
  readonly trim: typeof trim;
75
74
  readonly trimQuotes: typeof trimQuotes;
76
- readonly trimExtName: typeof trimExtName;
77
75
  readonly JSDoc: {
78
76
  readonly createJSDocBlockText: typeof createJSDocBlockText;
79
77
  };
@@ -84,4 +82,4 @@ declare const _default: {
84
82
  readonly pathCase: typeof pathCase;
85
83
  };
86
84
 
87
- export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, pathCase, searchAndReplace, stringify, stringifyObject, toRegExp, toRegExpString, transformReservedWord, trim, trimExtName, trimQuotes };
85
+ export { camelCase, combineCodes, createIndent, createJSDocBlockText, _default as default, escape, jsStringEscape, nameSorter, pascalCase, pathCase, searchAndReplace, stringify, stringifyObject, toRegExp, toRegExpString, transformReservedWord, trim, trimQuotes };