@zthun/janitor-build-config 19.0.0 → 19.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"typedoc.cjs","sources":["../src/typedoc/typedoc-config-builder.mts"],"sourcesContent":["import { cloneDeep } from \"lodash-es\";\nimport { EntryPointStrategy, TypeDocOptions } from \"typedoc\";\n\n/**\n * A builder for TypeDoc configurations.\n */\nexport class ZTypedocConfigBuilder {\n public static readonly OutputDist = \"./dist\";\n public static readonly EntryPointIndex = \"./src/index.ts\";\n\n private typedoc: TypeDocOptions = {};\n\n /**\n * Sets the output directory for the documentation.\n *\n * @param path -\n * The output directory path.\n * @returns\n * This object.\n */\n public out(path: string) {\n this.typedoc.out = path;\n return this;\n }\n\n /**\n * Sets the output directory to \"./dist\".\n *\n * @returns\n * This object.\n */\n public dist = this.out.bind(this, ZTypedocConfigBuilder.OutputDist);\n\n /**\n * Adds a list of entry point glob to the existing entry points.\n *\n * @param glob -\n * The entry point glob pattern.\n *\n * @returns\n * This object.\n */\n public entry(glob: string | string) {\n const entry = this.typedoc.entryPoints || [];\n this.typedoc.entryPoints = entry.concat(glob);\n return this;\n }\n\n /**\n * Adds an entry point for './src/index.ts'.\n *\n * @returns\n * This object.\n */\n public index = this.entry.bind(this, ZTypedocConfigBuilder.EntryPointIndex);\n\n /**\n * Sets the entry point strategy.\n *\n * See {@link https://typedoc.org/api/enums/EntryPointStrategy.html | EntryPointStrategy}\n * for more details.\n *\n * @param strategy -\n * The entry point strategy to use.\n *\n * @returns\n * This object.\n */\n public entryPointStrategy(strategy: EntryPointStrategy) {\n this.typedoc.entryPointStrategy = strategy;\n return this;\n }\n\n /**\n * Sets the entry point strategy to \"resolve\".\n *\n * @returns\n * This object.\n */\n public resolve = this.entryPointStrategy.bind(this, \"resolve\");\n\n /**\n * Sets the entry point strategy to \"packages\".\n *\n * @returns\n * This object.\n */\n public packages = this.entryPointStrategy.bind(this, \"packages\");\n\n /**\n * Sets the excludeNotDocumented flag.\n *\n * @returns\n * This object.\n */\n public excludeNotDocumented() {\n this.typedoc.excludeNotDocumented = true;\n return this;\n }\n\n /**\n * Sets the categorizeByGroup flag.\n *\n * @returns\n * This object.\n */\n public categorizeByGroup() {\n this.typedoc.categorizeByGroup = true;\n return this;\n }\n\n /**\n * Sets the name of the project.\n *\n * @param name -\n * The name of the project.\n *\n * @returns\n * This object.\n */\n public name(name: string) {\n this.typedoc.name = name;\n return this;\n }\n\n /**\n * Sets the favicon for the project.\n *\n * @param path -\n * The path to the favicon file.\n *\n * @returns\n * This object.\n */\n public favicon(path: string) {\n this.typedoc.favicon = path;\n return this;\n }\n\n /**\n * Adds a single exclude glob to the existing excludes.\n *\n * @param glob -\n * The exclude glob pattern.\n *\n * @returns\n * This object.\n */\n public exclude(glob: string | string[]) {\n const excludes = this.typedoc.exclude || [];\n this.typedoc.exclude = excludes.concat(glob);\n return this;\n }\n\n /**\n * Sets the typedoc configuration to be used for an individual project.\n *\n * An individual project typedoc does not output any documentation by itself,\n * but is part of a larger project that does.\n *\n * @returns\n * This object.\n */\n public project() {\n return this.resolve().dist();\n }\n\n /**\n * Sets the typedoc configuration to be used a web project that outputs\n * final documentation for a monorepo of packages.\n *\n * Normally, your monorepo will have a single web or doc project that outputs\n * the typescript for every package in the monorepo. Use this configuration\n * for that project.\n *\n * @returns\n * This object.\n */\n public web() {\n return this.packages()\n .excludeNotDocumented()\n .categorizeByGroup()\n .dist()\n .exclude(\"./\");\n }\n\n /**\n * Builds the final typedoc configuration object.\n *\n * @returns\n * The final typedoc configuration object.\n */\n public build() {\n return cloneDeep(this.typedoc);\n }\n}\n"],"names":["ZTypedocConfigBuilder","out","path","typedoc","entry","glob","entryPoints","concat","entryPointStrategy","strategy","excludeNotDocumented","categorizeByGroup","name","favicon","exclude","excludes","resolve","dist","packages","cloneDeep","bind","OutputDist","index","EntryPointIndex"],"mappings":";;;;;;;;;;;;;;;;;;;AAGA;;AAEC,IACM,MAAMA,qBAAAA,CAAAA;AAMX;;;;;;;MAQOC,GAAIC,CAAAA,IAAY,EAAE;AACvB,QAAA,IAAI,CAACC,OAAO,CAACF,GAAG,GAAGC,IAAAA;AACnB,QAAA,OAAO,IAAI;AACb;AAUA;;;;;;;;MASOE,KAAMC,CAAAA,IAAqB,EAAE;AAClC,QAAA,MAAMD,QAAQ,IAAI,CAACD,OAAO,CAACG,WAAW,IAAI,EAAE;AAC5C,QAAA,IAAI,CAACH,OAAO,CAACG,WAAW,GAAGF,KAAAA,CAAMG,MAAM,CAACF,IAAAA,CAAAA;AACxC,QAAA,OAAO,IAAI;AACb;AAUA;;;;;;;;;;;MAYOG,kBAAmBC,CAAAA,QAA4B,EAAE;AACtD,QAAA,IAAI,CAACN,OAAO,CAACK,kBAAkB,GAAGC,QAAAA;AAClC,QAAA,OAAO,IAAI;AACb;AAkBA;;;;;AAKC,MACD,oBAA8B,GAAA;AAC5B,QAAA,IAAI,CAACN,OAAO,CAACO,oBAAoB,GAAG,IAAA;AACpC,QAAA,OAAO,IAAI;AACb;AAEA;;;;;AAKC,MACD,iBAA2B,GAAA;AACzB,QAAA,IAAI,CAACP,OAAO,CAACQ,iBAAiB,GAAG,IAAA;AACjC,QAAA,OAAO,IAAI;AACb;AAEA;;;;;;;;MASOC,IAAKA,CAAAA,IAAY,EAAE;AACxB,QAAA,IAAI,CAACT,OAAO,CAACS,IAAI,GAAGA,IAAAA;AACpB,QAAA,OAAO,IAAI;AACb;AAEA;;;;;;;;MASOC,OAAQX,CAAAA,IAAY,EAAE;AAC3B,QAAA,IAAI,CAACC,OAAO,CAACU,OAAO,GAAGX,IAAAA;AACvB,QAAA,OAAO,IAAI;AACb;AAEA;;;;;;;;MASOY,OAAQT,CAAAA,IAAuB,EAAE;AACtC,QAAA,MAAMU,WAAW,IAAI,CAACZ,OAAO,CAACW,OAAO,IAAI,EAAE;AAC3C,QAAA,IAAI,CAACX,OAAO,CAACW,OAAO,GAAGC,QAAAA,CAASR,MAAM,CAACF,IAAAA,CAAAA;AACvC,QAAA,OAAO,IAAI;AACb;AAEA;;;;;;;;AAQC,MACD,OAAiB,GAAA;AACf,QAAA,OAAO,IAAI,CAACW,OAAO,EAAA,CAAGC,IAAI,EAAA;AAC5B;AAEA;;;;;;;;;;AAUC,MACD,GAAa,GAAA;QACX,OAAO,IAAI,CAACC,QAAQ,EACjBR,CAAAA,oBAAoB,EACpBC,CAAAA,iBAAiB,EACjBM,CAAAA,IAAI,EACJH,CAAAA,OAAO,CAAC,IAAA,CAAA;AACb;AAEA;;;;;AAKC,MACD,KAAe,GAAA;QACb,OAAOK,kBAAAA,CAAU,IAAI,CAAChB,OAAO,CAAA;AAC/B;;AAxLA,QAAA,gBAAA,CAAA,IAAA,EAAQA,WAA0B,EAAC,CAAA;AAenC;;;;;MAMA,gBAAA,CAAA,IAAA,EAAOc,MAAO,EAAA,IAAI,CAAChB,GAAG,CAACmB,IAAI,CAAC,IAAI,EAAEpB,qBAAAA,CAAsBqB,UAAU,CAAA,CAAA;AAiBlE;;;;;MAMA,gBAAA,CAAA,IAAA,EAAOC,OAAQ,EAAA,IAAI,CAAClB,KAAK,CAACgB,IAAI,CAAC,IAAI,EAAEpB,qBAAAA,CAAsBuB,eAAe,CAAA,CAAA;AAmB1E;;;;;MAMA,gBAAA,CAAA,IAAA,EAAOP,WAAU,IAAI,CAACR,kBAAkB,CAACY,IAAI,CAAC,IAAI,EAAE,SAAA,CAAA,CAAA;AAEpD;;;;;MAMA,gBAAA,CAAA,IAAA,EAAOF,YAAW,IAAI,CAACV,kBAAkB,CAACY,IAAI,CAAC,IAAI,EAAE,UAAA,CAAA,CAAA;;AA4GvD;AA5LE,gBAAA,CADWpB,uBACYqB,YAAa,EAAA,QAAA,CAAA;AACpC,gBAAA,CAFWrB,uBAEYuB,iBAAkB,EAAA,gBAAA,CAAA;;;;"}
1
+ {"version":3,"file":"typedoc.cjs","sources":["../src/typedoc/typedoc-config-builder.mts"],"sourcesContent":["import { cloneDeep } from \"lodash-es\";\nimport type { EntryPointStrategy, TypeDocOptions } from \"typedoc\";\n\n/**\n * A builder for TypeDoc configurations.\n */\nexport class ZTypedocConfigBuilder {\n public static readonly OutputDist = \"./dist\";\n public static readonly EntryPointIndex = \"./src/index.ts\";\n\n private typedoc: TypeDocOptions = {};\n\n /**\n * Sets the output directory for the documentation.\n *\n * @param path -\n * The output directory path.\n * @returns\n * This object.\n */\n public out(path: string) {\n this.typedoc.out = path;\n return this;\n }\n\n /**\n * Sets the output directory to \"./dist\".\n *\n * @returns\n * This object.\n */\n public dist = this.out.bind(this, ZTypedocConfigBuilder.OutputDist);\n\n /**\n * Adds a list of entry point glob to the existing entry points.\n *\n * @param glob -\n * The entry point glob pattern.\n *\n * @returns\n * This object.\n */\n public entry(glob: string | string) {\n const entry = this.typedoc.entryPoints || [];\n this.typedoc.entryPoints = entry.concat(glob);\n return this;\n }\n\n /**\n * Adds an entry point for './src/index.ts'.\n *\n * @returns\n * This object.\n */\n public index = this.entry.bind(this, ZTypedocConfigBuilder.EntryPointIndex);\n\n /**\n * Sets the entry point strategy.\n *\n * See {@link https://typedoc.org/api/enums/EntryPointStrategy.html | EntryPointStrategy}\n * for more details.\n *\n * @param strategy -\n * The entry point strategy to use.\n *\n * @returns\n * This object.\n */\n public entryPointStrategy(strategy: EntryPointStrategy) {\n this.typedoc.entryPointStrategy = strategy;\n return this;\n }\n\n /**\n * Sets the entry point strategy to \"resolve\".\n *\n * @returns\n * This object.\n */\n public resolve = this.entryPointStrategy.bind(this, \"resolve\");\n\n /**\n * Sets the entry point strategy to \"packages\".\n *\n * @returns\n * This object.\n */\n public packages = this.entryPointStrategy.bind(this, \"packages\");\n\n /**\n * Sets the excludeNotDocumented flag.\n *\n * @returns\n * This object.\n */\n public excludeNotDocumented() {\n this.typedoc.excludeNotDocumented = true;\n return this;\n }\n\n /**\n * Sets the categorizeByGroup flag.\n *\n * @returns\n * This object.\n */\n public categorizeByGroup() {\n this.typedoc.categorizeByGroup = true;\n return this;\n }\n\n /**\n * Sets the name of the project.\n *\n * @param name -\n * The name of the project.\n *\n * @returns\n * This object.\n */\n public name(name: string) {\n this.typedoc.name = name;\n return this;\n }\n\n /**\n * Sets the favicon for the project.\n *\n * @param path -\n * The path to the favicon file.\n *\n * @returns\n * This object.\n */\n public favicon(path: string) {\n this.typedoc.favicon = path;\n return this;\n }\n\n /**\n * Adds a single exclude glob to the existing excludes.\n *\n * @param glob -\n * The exclude glob pattern.\n *\n * @returns\n * This object.\n */\n public exclude(glob: string | string[]) {\n const excludes = this.typedoc.exclude || [];\n this.typedoc.exclude = excludes.concat(glob);\n return this;\n }\n\n /**\n * Sets the typedoc configuration to be used for an individual project.\n *\n * An individual project typedoc does not output any documentation by itself,\n * but is part of a larger project that does.\n *\n * @returns\n * This object.\n */\n public project() {\n return this.resolve().dist();\n }\n\n /**\n * Sets the typedoc configuration to be used a web project that outputs\n * final documentation for a monorepo of packages.\n *\n * Normally, your monorepo will have a single web or doc project that outputs\n * the typescript for every package in the monorepo. Use this configuration\n * for that project.\n *\n * @returns\n * This object.\n */\n public web() {\n return this.packages()\n .excludeNotDocumented()\n .categorizeByGroup()\n .dist()\n .exclude(\"./\");\n }\n\n /**\n * Builds the final typedoc configuration object.\n *\n * @returns\n * The final typedoc configuration object.\n */\n public build() {\n return cloneDeep(this.typedoc);\n }\n}\n"],"names":["ZTypedocConfigBuilder","out","path","typedoc","entry","glob","entryPoints","concat","entryPointStrategy","strategy","excludeNotDocumented","categorizeByGroup","name","favicon","exclude","excludes","resolve","dist","packages","cloneDeep","bind","OutputDist","index","EntryPointIndex"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"typedoc.js","sources":["../src/typedoc/typedoc-config-builder.mts"],"sourcesContent":["import { cloneDeep } from \"lodash-es\";\nimport { EntryPointStrategy, TypeDocOptions } from \"typedoc\";\n\n/**\n * A builder for TypeDoc configurations.\n */\nexport class ZTypedocConfigBuilder {\n public static readonly OutputDist = \"./dist\";\n public static readonly EntryPointIndex = \"./src/index.ts\";\n\n private typedoc: TypeDocOptions = {};\n\n /**\n * Sets the output directory for the documentation.\n *\n * @param path -\n * The output directory path.\n * @returns\n * This object.\n */\n public out(path: string) {\n this.typedoc.out = path;\n return this;\n }\n\n /**\n * Sets the output directory to \"./dist\".\n *\n * @returns\n * This object.\n */\n public dist = this.out.bind(this, ZTypedocConfigBuilder.OutputDist);\n\n /**\n * Adds a list of entry point glob to the existing entry points.\n *\n * @param glob -\n * The entry point glob pattern.\n *\n * @returns\n * This object.\n */\n public entry(glob: string | string) {\n const entry = this.typedoc.entryPoints || [];\n this.typedoc.entryPoints = entry.concat(glob);\n return this;\n }\n\n /**\n * Adds an entry point for './src/index.ts'.\n *\n * @returns\n * This object.\n */\n public index = this.entry.bind(this, ZTypedocConfigBuilder.EntryPointIndex);\n\n /**\n * Sets the entry point strategy.\n *\n * See {@link https://typedoc.org/api/enums/EntryPointStrategy.html | EntryPointStrategy}\n * for more details.\n *\n * @param strategy -\n * The entry point strategy to use.\n *\n * @returns\n * This object.\n */\n public entryPointStrategy(strategy: EntryPointStrategy) {\n this.typedoc.entryPointStrategy = strategy;\n return this;\n }\n\n /**\n * Sets the entry point strategy to \"resolve\".\n *\n * @returns\n * This object.\n */\n public resolve = this.entryPointStrategy.bind(this, \"resolve\");\n\n /**\n * Sets the entry point strategy to \"packages\".\n *\n * @returns\n * This object.\n */\n public packages = this.entryPointStrategy.bind(this, \"packages\");\n\n /**\n * Sets the excludeNotDocumented flag.\n *\n * @returns\n * This object.\n */\n public excludeNotDocumented() {\n this.typedoc.excludeNotDocumented = true;\n return this;\n }\n\n /**\n * Sets the categorizeByGroup flag.\n *\n * @returns\n * This object.\n */\n public categorizeByGroup() {\n this.typedoc.categorizeByGroup = true;\n return this;\n }\n\n /**\n * Sets the name of the project.\n *\n * @param name -\n * The name of the project.\n *\n * @returns\n * This object.\n */\n public name(name: string) {\n this.typedoc.name = name;\n return this;\n }\n\n /**\n * Sets the favicon for the project.\n *\n * @param path -\n * The path to the favicon file.\n *\n * @returns\n * This object.\n */\n public favicon(path: string) {\n this.typedoc.favicon = path;\n return this;\n }\n\n /**\n * Adds a single exclude glob to the existing excludes.\n *\n * @param glob -\n * The exclude glob pattern.\n *\n * @returns\n * This object.\n */\n public exclude(glob: string | string[]) {\n const excludes = this.typedoc.exclude || [];\n this.typedoc.exclude = excludes.concat(glob);\n return this;\n }\n\n /**\n * Sets the typedoc configuration to be used for an individual project.\n *\n * An individual project typedoc does not output any documentation by itself,\n * but is part of a larger project that does.\n *\n * @returns\n * This object.\n */\n public project() {\n return this.resolve().dist();\n }\n\n /**\n * Sets the typedoc configuration to be used a web project that outputs\n * final documentation for a monorepo of packages.\n *\n * Normally, your monorepo will have a single web or doc project that outputs\n * the typescript for every package in the monorepo. Use this configuration\n * for that project.\n *\n * @returns\n * This object.\n */\n public web() {\n return this.packages()\n .excludeNotDocumented()\n .categorizeByGroup()\n .dist()\n .exclude(\"./\");\n }\n\n /**\n * Builds the final typedoc configuration object.\n *\n * @returns\n * The final typedoc configuration object.\n */\n public build() {\n return cloneDeep(this.typedoc);\n }\n}\n"],"names":["ZTypedocConfigBuilder","out","path","typedoc","entry","glob","entryPoints","concat","entryPointStrategy","strategy","excludeNotDocumented","categorizeByGroup","name","favicon","exclude","excludes","resolve","dist","packages","cloneDeep","bind","OutputDist","index","EntryPointIndex"],"mappings":"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"}
1
+ {"version":3,"file":"typedoc.js","sources":["../src/typedoc/typedoc-config-builder.mts"],"sourcesContent":["import { cloneDeep } from \"lodash-es\";\nimport type { EntryPointStrategy, TypeDocOptions } from \"typedoc\";\n\n/**\n * A builder for TypeDoc configurations.\n */\nexport class ZTypedocConfigBuilder {\n public static readonly OutputDist = \"./dist\";\n public static readonly EntryPointIndex = \"./src/index.ts\";\n\n private typedoc: TypeDocOptions = {};\n\n /**\n * Sets the output directory for the documentation.\n *\n * @param path -\n * The output directory path.\n * @returns\n * This object.\n */\n public out(path: string) {\n this.typedoc.out = path;\n return this;\n }\n\n /**\n * Sets the output directory to \"./dist\".\n *\n * @returns\n * This object.\n */\n public dist = this.out.bind(this, ZTypedocConfigBuilder.OutputDist);\n\n /**\n * Adds a list of entry point glob to the existing entry points.\n *\n * @param glob -\n * The entry point glob pattern.\n *\n * @returns\n * This object.\n */\n public entry(glob: string | string) {\n const entry = this.typedoc.entryPoints || [];\n this.typedoc.entryPoints = entry.concat(glob);\n return this;\n }\n\n /**\n * Adds an entry point for './src/index.ts'.\n *\n * @returns\n * This object.\n */\n public index = this.entry.bind(this, ZTypedocConfigBuilder.EntryPointIndex);\n\n /**\n * Sets the entry point strategy.\n *\n * See {@link https://typedoc.org/api/enums/EntryPointStrategy.html | EntryPointStrategy}\n * for more details.\n *\n * @param strategy -\n * The entry point strategy to use.\n *\n * @returns\n * This object.\n */\n public entryPointStrategy(strategy: EntryPointStrategy) {\n this.typedoc.entryPointStrategy = strategy;\n return this;\n }\n\n /**\n * Sets the entry point strategy to \"resolve\".\n *\n * @returns\n * This object.\n */\n public resolve = this.entryPointStrategy.bind(this, \"resolve\");\n\n /**\n * Sets the entry point strategy to \"packages\".\n *\n * @returns\n * This object.\n */\n public packages = this.entryPointStrategy.bind(this, \"packages\");\n\n /**\n * Sets the excludeNotDocumented flag.\n *\n * @returns\n * This object.\n */\n public excludeNotDocumented() {\n this.typedoc.excludeNotDocumented = true;\n return this;\n }\n\n /**\n * Sets the categorizeByGroup flag.\n *\n * @returns\n * This object.\n */\n public categorizeByGroup() {\n this.typedoc.categorizeByGroup = true;\n return this;\n }\n\n /**\n * Sets the name of the project.\n *\n * @param name -\n * The name of the project.\n *\n * @returns\n * This object.\n */\n public name(name: string) {\n this.typedoc.name = name;\n return this;\n }\n\n /**\n * Sets the favicon for the project.\n *\n * @param path -\n * The path to the favicon file.\n *\n * @returns\n * This object.\n */\n public favicon(path: string) {\n this.typedoc.favicon = path;\n return this;\n }\n\n /**\n * Adds a single exclude glob to the existing excludes.\n *\n * @param glob -\n * The exclude glob pattern.\n *\n * @returns\n * This object.\n */\n public exclude(glob: string | string[]) {\n const excludes = this.typedoc.exclude || [];\n this.typedoc.exclude = excludes.concat(glob);\n return this;\n }\n\n /**\n * Sets the typedoc configuration to be used for an individual project.\n *\n * An individual project typedoc does not output any documentation by itself,\n * but is part of a larger project that does.\n *\n * @returns\n * This object.\n */\n public project() {\n return this.resolve().dist();\n }\n\n /**\n * Sets the typedoc configuration to be used a web project that outputs\n * final documentation for a monorepo of packages.\n *\n * Normally, your monorepo will have a single web or doc project that outputs\n * the typescript for every package in the monorepo. Use this configuration\n * for that project.\n *\n * @returns\n * This object.\n */\n public web() {\n return this.packages()\n .excludeNotDocumented()\n .categorizeByGroup()\n .dist()\n .exclude(\"./\");\n }\n\n /**\n * Builds the final typedoc configuration object.\n *\n * @returns\n * The final typedoc configuration object.\n */\n public build() {\n return cloneDeep(this.typedoc);\n }\n}\n"],"names":["ZTypedocConfigBuilder","out","path","typedoc","entry","glob","entryPoints","concat","entryPointStrategy","strategy","excludeNotDocumented","categorizeByGroup","name","favicon","exclude","excludes","resolve","dist","packages","cloneDeep","bind","OutputDist","index","EntryPointIndex"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from './vite-config-builder.mjs';
2
2
  export * from './vite-library-builder.mjs';
3
+ export * from './vite-server-builder.mjs';
3
4
  export * from './vite-test-builder.mjs';
@@ -1,4 +1,4 @@
1
- import { LibraryOptions, UserConfig } from 'vite';
1
+ import { LibraryOptions, PluginOption, ServerOptions, UserConfig } from 'vite';
2
2
  import { InlineConfig as TestConfig } from 'vitest/node.js';
3
3
  /**
4
4
  * A config builder for the vite build system.
@@ -41,20 +41,55 @@ import { InlineConfig as TestConfig } from 'vitest/node.js';
41
41
  * ```
42
42
  */
43
43
  export declare class ZViteConfigBuilder {
44
- private _dirname;
45
44
  private config;
46
45
  /**
47
46
  * Initializes a new instance of this object.
47
+ */
48
+ constructor();
49
+ /**
50
+ * Sets whether to minify the build output.
51
+ *
52
+ * @param minify -
53
+ * The flag as to minify the output.
48
54
  *
49
- * @param _dirname -
50
- * The directory that is housing the vite.config
51
- * file. Pass __dirname to this.
55
+ * @returns
56
+ * This object.
52
57
  */
53
- constructor(_dirname: string);
58
+ minify(minify?: boolean): this;
54
59
  /**
55
- * Sets vite into library mode.
60
+ * Adds a list of plugins.
61
+ *
62
+ * @param option -
63
+ * The plugins to add.
64
+ *
65
+ * @returns
66
+ * This object.
67
+ */
68
+ plugin(option?: PluginOption | PluginOption[]): this;
69
+ /**
70
+ * Sets whether to generate source maps.
71
+ *
72
+ * @param sourcemap -
73
+ * True to generate a sourcemap, false for faster build.
74
+ *
75
+ * @returns
76
+ * This object.
77
+ */
78
+ sourceMap(sourcemap?: boolean): this;
79
+ /**
80
+ * Assigns the server options.
56
81
  *
57
82
  * @param options -
83
+ * The server options to assign.
84
+ *
85
+ * @returns
86
+ * This object.
87
+ */
88
+ server(options: ServerOptions): this;
89
+ /**
90
+ * Sets vite into library mode.
91
+ *
92
+ * @param lib -
58
93
  * The options for the library. You can set this to
59
94
  * nothing to use the default library which looks for
60
95
  * an entry point at the source directory called index.ts
@@ -64,7 +99,7 @@ export declare class ZViteConfigBuilder {
64
99
  * @returns
65
100
  * This object.
66
101
  */
67
- library(options?: LibraryOptions): this;
102
+ library(lib?: LibraryOptions): this;
68
103
  /**
69
104
  * Constructs the config to act as if it's compiling a node application.
70
105
  *
@@ -78,8 +113,39 @@ export declare class ZViteConfigBuilder {
78
113
  * This object.
79
114
  */
80
115
  cli(): this;
116
+ /**
117
+ * Constructs the config to act as if it's compiling a nest application.
118
+ *
119
+ * This is just an alias to {@link ZViteConfigBuilder.library} with a single
120
+ * entry point.
121
+ *
122
+ * 1. The file, src/main.mts
123
+ *
124
+ * @returns
125
+ * This object.
126
+ */
127
+ nest(): this;
128
+ /**
129
+ * Constructs the config to act as if it's compiling a web application.
130
+ *
131
+ * @returns
132
+ * This object.
133
+ */
134
+ web(): this;
135
+ /**
136
+ * An alias to {@link web}
137
+ *
138
+ * @returns
139
+ * This object.
140
+ */
141
+ react: () => this;
81
142
  /**
82
143
  * Constructs the config to be for testing.
144
+ *
145
+ * @param options -
146
+ * The test config to use. If this is falsy,
147
+ * then a test setup using a monorepo with an
148
+ * istanbul provider in node is used.
83
149
  */
84
150
  test(options?: TestConfig): this;
85
151
  /**
@@ -0,0 +1,12 @@
1
+ import { ServerOptions } from 'vite';
2
+ export declare class ZViteServerBuilder {
3
+ private options;
4
+ allowedHost(name: string | string[] | true): this;
5
+ denyAllHosts(): this;
6
+ port(port?: number): this;
7
+ strictPort(): this;
8
+ host(ip: string): this;
9
+ localhost: () => this;
10
+ dev(): this;
11
+ build(): ServerOptions;
12
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -56,6 +56,26 @@ export declare class ZViteTestBuilder {
56
56
  * This object.
57
57
  */
58
58
  istanbul: () => this;
59
+ /**
60
+ * Adds to the list of projects.
61
+ *
62
+ * @param project -
63
+ * The list of projects.
64
+ *
65
+ * @returns
66
+ * This object.
67
+ */
68
+ project(project?: string | string[]): this;
69
+ /**
70
+ * Adds monorepo support to the test builder.
71
+ *
72
+ * @param packages -
73
+ * The path to the package directory.
74
+ *
75
+ * @returns
76
+ * This object.
77
+ */
78
+ monorepo(packages?: string): this;
59
79
  /**
60
80
  * Returns the built test configuration.
61
81
  *