@kubb/core 2.0.0-alpha.5 → 2.0.0-alpha.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -477,14 +477,41 @@ type TransformResult = string | null;
477
477
  type BasePath<T extends string = string> = `${T}/`;
478
478
  declare namespace KubbFile {
479
479
  type Import = {
480
+ /**
481
+ * Import name to be used
482
+ * @example ["useState"]
483
+ * @examples "React"
484
+ */
480
485
  name: string | Array<string>;
486
+ /**
487
+ * Path for the import
488
+ * @xample '@kubb/core'
489
+ */
481
490
  path: string;
491
+ /**
492
+ * Add `type` prefix to the import, this will result in: `import type { Type } from './path'`
493
+ */
482
494
  isTypeOnly?: boolean;
483
495
  };
484
496
  type Export = {
497
+ /**
498
+ * Export name to be used
499
+ * @example ["useState"]
500
+ * @examples "React"
501
+ */
485
502
  name?: string | Array<string>;
503
+ /**
504
+ * Path for the import
505
+ * @xample '@kubb/core'
506
+ */
486
507
  path: string;
508
+ /**
509
+ * Add `type` prefix to the export, this will result in: `export type { Type } from './path'`
510
+ */
487
511
  isTypeOnly?: boolean;
512
+ /**
513
+ * Make it possible to override the name, this will result in: `export * as aliasName from './path'`
514
+ */
488
515
  asAlias?: boolean;
489
516
  };
490
517
  const dataTagSymbol: unique symbol;
@@ -495,7 +522,15 @@ declare namespace KubbFile {
495
522
  type Source = string;
496
523
  type Extname = '.ts' | '.js' | '.tsx' | '.json' | `.${string}`;
497
524
  type Mode = 'file' | 'directory';
525
+ /**
526
+ * Name to be used to dynamicly create the baseName(based on input.path)
527
+ * Based on UNIX basename
528
+ * @link https://nodejs.org/api/path.html#pathbasenamepath-suffix
529
+ */
498
530
  type BaseName = `${string}${Extname}`;
531
+ /**
532
+ * Path will be full qualified path to a specified file
533
+ */
499
534
  type Path = string;
500
535
  type AdvancedPath<T extends BaseName = BaseName> = `${BasePath}${T}`;
501
536
  type OptionalPath = Path | undefined | null;
@@ -527,11 +562,17 @@ declare namespace KubbFile {
527
562
  * @default `false`
528
563
  */
529
564
  override?: boolean;
565
+ /**
566
+ * Use extra meta, this is getting used to generate the barrel/index files.
567
+ */
530
568
  meta?: TMeta;
531
569
  /**
532
570
  * This will override `process.env[key]` inside the `source`, see `getFileSource`.
533
571
  */
534
572
  env?: NodeJS.ProcessEnv;
573
+ /**
574
+ * @deprecated
575
+ */
535
576
  validate?: boolean;
536
577
  };
537
578
  type ResolvedFile<TMeta extends FileMetaBase = FileMetaBase, TBaseName extends BaseName = BaseName> = KubbFile.File<TMeta, TBaseName> & {
@@ -646,10 +687,10 @@ declare class PackageManager {
646
687
  getPackageJSON(): Promise<PackageJSON | undefined>;
647
688
  getPackageJSONSync(): PackageJSON | undefined;
648
689
  static setVersion(dependency: DependencyName, version: DependencyVersion): void;
649
- getVersion(dependency: DependencyName): Promise<DependencyVersion | undefined>;
650
- getVersionSync(dependency: DependencyName): DependencyVersion | undefined;
651
- isValid(dependency: DependencyName, version: DependencyVersion): Promise<boolean>;
652
- isValidSync(dependency: DependencyName, version: DependencyVersion): boolean;
690
+ getVersion(dependency: DependencyName | RegExp): Promise<DependencyVersion | undefined>;
691
+ getVersionSync(dependency: DependencyName | RegExp): DependencyVersion | undefined;
692
+ isValid(dependency: DependencyName | RegExp, version: DependencyVersion): Promise<boolean>;
693
+ isValidSync(dependency: DependencyName | RegExp, version: DependencyVersion): boolean;
653
694
  }
654
695
 
655
696
  type KubbPluginFactory<T extends PluginFactoryOptions = PluginFactoryOptions> = (options: T['options']) => KubbUserPluginWithLifeCycle<T>;
package/dist/index.d.ts CHANGED
@@ -477,14 +477,41 @@ type TransformResult = string | null;
477
477
  type BasePath<T extends string = string> = `${T}/`;
478
478
  declare namespace KubbFile {
479
479
  type Import = {
480
+ /**
481
+ * Import name to be used
482
+ * @example ["useState"]
483
+ * @examples "React"
484
+ */
480
485
  name: string | Array<string>;
486
+ /**
487
+ * Path for the import
488
+ * @xample '@kubb/core'
489
+ */
481
490
  path: string;
491
+ /**
492
+ * Add `type` prefix to the import, this will result in: `import type { Type } from './path'`
493
+ */
482
494
  isTypeOnly?: boolean;
483
495
  };
484
496
  type Export = {
497
+ /**
498
+ * Export name to be used
499
+ * @example ["useState"]
500
+ * @examples "React"
501
+ */
485
502
  name?: string | Array<string>;
503
+ /**
504
+ * Path for the import
505
+ * @xample '@kubb/core'
506
+ */
486
507
  path: string;
508
+ /**
509
+ * Add `type` prefix to the export, this will result in: `export type { Type } from './path'`
510
+ */
487
511
  isTypeOnly?: boolean;
512
+ /**
513
+ * Make it possible to override the name, this will result in: `export * as aliasName from './path'`
514
+ */
488
515
  asAlias?: boolean;
489
516
  };
490
517
  const dataTagSymbol: unique symbol;
@@ -495,7 +522,15 @@ declare namespace KubbFile {
495
522
  type Source = string;
496
523
  type Extname = '.ts' | '.js' | '.tsx' | '.json' | `.${string}`;
497
524
  type Mode = 'file' | 'directory';
525
+ /**
526
+ * Name to be used to dynamicly create the baseName(based on input.path)
527
+ * Based on UNIX basename
528
+ * @link https://nodejs.org/api/path.html#pathbasenamepath-suffix
529
+ */
498
530
  type BaseName = `${string}${Extname}`;
531
+ /**
532
+ * Path will be full qualified path to a specified file
533
+ */
499
534
  type Path = string;
500
535
  type AdvancedPath<T extends BaseName = BaseName> = `${BasePath}${T}`;
501
536
  type OptionalPath = Path | undefined | null;
@@ -527,11 +562,17 @@ declare namespace KubbFile {
527
562
  * @default `false`
528
563
  */
529
564
  override?: boolean;
565
+ /**
566
+ * Use extra meta, this is getting used to generate the barrel/index files.
567
+ */
530
568
  meta?: TMeta;
531
569
  /**
532
570
  * This will override `process.env[key]` inside the `source`, see `getFileSource`.
533
571
  */
534
572
  env?: NodeJS.ProcessEnv;
573
+ /**
574
+ * @deprecated
575
+ */
535
576
  validate?: boolean;
536
577
  };
537
578
  type ResolvedFile<TMeta extends FileMetaBase = FileMetaBase, TBaseName extends BaseName = BaseName> = KubbFile.File<TMeta, TBaseName> & {
@@ -646,10 +687,10 @@ declare class PackageManager {
646
687
  getPackageJSON(): Promise<PackageJSON | undefined>;
647
688
  getPackageJSONSync(): PackageJSON | undefined;
648
689
  static setVersion(dependency: DependencyName, version: DependencyVersion): void;
649
- getVersion(dependency: DependencyName): Promise<DependencyVersion | undefined>;
650
- getVersionSync(dependency: DependencyName): DependencyVersion | undefined;
651
- isValid(dependency: DependencyName, version: DependencyVersion): Promise<boolean>;
652
- isValidSync(dependency: DependencyName, version: DependencyVersion): boolean;
690
+ getVersion(dependency: DependencyName | RegExp): Promise<DependencyVersion | undefined>;
691
+ getVersionSync(dependency: DependencyName | RegExp): DependencyVersion | undefined;
692
+ isValid(dependency: DependencyName | RegExp, version: DependencyVersion): Promise<boolean>;
693
+ isValidSync(dependency: DependencyName | RegExp, version: DependencyVersion): boolean;
653
694
  }
654
695
 
655
696
  type KubbPluginFactory<T extends PluginFactoryOptions = PluginFactoryOptions> = (options: T['options']) => KubbUserPluginWithLifeCycle<T>;
package/dist/index.js CHANGED
@@ -198,10 +198,13 @@ var URLPath = class {
198
198
  params: this.getParams()
199
199
  };
200
200
  if (stringify) {
201
- if (type !== "template") {
202
- throw new Error("Type should be `template` when using stringiyf");
201
+ if (type === "template") {
202
+ return JSON.stringify(object).replaceAll("'", "").replaceAll(`"`, "");
203
203
  }
204
- return JSON.stringify(object).replaceAll("'", "").replaceAll(`"`, "");
204
+ if (object.params) {
205
+ return `{ url: '${object.url}', params: ${JSON.stringify(object.params).replaceAll("'", "").replaceAll(`"`, "")} }`;
206
+ }
207
+ return `{ url: '${object.url}' }`;
205
208
  }
206
209
  return object;
207
210
  }
@@ -1804,9 +1807,10 @@ var Generator = class {
1804
1807
  };
1805
1808
  _options3 = new WeakMap();
1806
1809
  _context = new WeakMap();
1807
- var _cache2, _cwd, _SLASHES;
1810
+ var _cache2, _cwd, _SLASHES, _match, match_fn;
1808
1811
  var _PackageManager = class _PackageManager {
1809
1812
  constructor(workspace) {
1813
+ __privateAdd(this, _match);
1810
1814
  __privateAdd(this, _cwd, void 0);
1811
1815
  __privateAdd(this, _SLASHES, /* @__PURE__ */ new Set(["/", "\\"]));
1812
1816
  if (workspace) {
@@ -1869,24 +1873,24 @@ var _PackageManager = class _PackageManager {
1869
1873
  __privateGet(_PackageManager, _cache2)[dependency] = version;
1870
1874
  }
1871
1875
  async getVersion(dependency) {
1872
- if (__privateGet(_PackageManager, _cache2)[dependency]) {
1876
+ if (typeof dependency === "string" && __privateGet(_PackageManager, _cache2)[dependency]) {
1873
1877
  return __privateGet(_PackageManager, _cache2)[dependency];
1874
1878
  }
1875
1879
  const packageJSON = await this.getPackageJSON();
1876
1880
  if (!packageJSON) {
1877
1881
  return void 0;
1878
1882
  }
1879
- return packageJSON["dependencies"]?.[dependency] || packageJSON["devDependencies"]?.[dependency];
1883
+ return __privateMethod(this, _match, match_fn).call(this, packageJSON, dependency);
1880
1884
  }
1881
1885
  getVersionSync(dependency) {
1882
- if (__privateGet(_PackageManager, _cache2)[dependency]) {
1886
+ if (typeof dependency === "string" && __privateGet(_PackageManager, _cache2)[dependency]) {
1883
1887
  return __privateGet(_PackageManager, _cache2)[dependency];
1884
1888
  }
1885
1889
  const packageJSON = this.getPackageJSONSync();
1886
1890
  if (!packageJSON) {
1887
1891
  return void 0;
1888
1892
  }
1889
- return packageJSON["dependencies"]?.[dependency] || packageJSON["devDependencies"]?.[dependency];
1893
+ return __privateMethod(this, _match, match_fn).call(this, packageJSON, dependency);
1890
1894
  }
1891
1895
  async isValid(dependency, version) {
1892
1896
  const packageVersion = await this.getVersion(dependency);
@@ -1917,6 +1921,18 @@ var _PackageManager = class _PackageManager {
1917
1921
  _cache2 = new WeakMap();
1918
1922
  _cwd = new WeakMap();
1919
1923
  _SLASHES = new WeakMap();
1924
+ _match = new WeakSet();
1925
+ match_fn = function(packageJSON, dependency) {
1926
+ const dependencies = {
1927
+ ...packageJSON["dependencies"] || {},
1928
+ ...packageJSON["devDependencies"] || {}
1929
+ };
1930
+ if (typeof dependency === "string" && dependencies[dependency]) {
1931
+ return dependencies[dependency];
1932
+ }
1933
+ const matchedDependency = Object.keys(dependencies).find((dep) => dep.match(dependency));
1934
+ return matchedDependency ? dependencies[matchedDependency] : void 0;
1935
+ };
1920
1936
  __privateAdd(_PackageManager, _cache2, {});
1921
1937
  var PackageManager = _PackageManager;
1922
1938