{"version":3,"file":"index.cjs","names":[],"sources":["../src/defaults.ts","../src/plugins.ts","../src/shareableConfigs.ts","../src/utils.ts"],"sourcesContent":["import type { UserWorkspaceConfig, ViteUserConfig } from './external.js'\n\n/**\n * Default configuration for {@linkcode vitestProject}.\n *\n * @since 0.0.5\n * @public\n */\nexport const vitestProjectDefaults = {\n  /**\n   * @default { 'import.meta.vitest': 'undefined' }\n   */\n  define: {\n    /**\n     * @default 'undefined'\n     */\n    'import.meta.vitest': 'undefined',\n  },\n\n  test: {\n    /**\n     * @default true\n     */\n    clearMocks: true,\n\n    /**\n     * @default true\n     */\n    globals: true,\n\n    /**\n     * @default { enabled: true, tsconfig: './tsconfig.json' }\n     */\n    typecheck: {\n      /**\n       * @default true\n       */\n      enabled: true,\n\n      /**\n       * @default './tsconfig.json'\n       */\n      tsconfig: './tsconfig.json',\n    },\n\n    /**\n     * @default true\n     */\n    unstubEnvs: true,\n\n    /**\n     * @default true\n     */\n    unstubGlobals: true,\n  },\n} as const satisfies UserWorkspaceConfig\n\n/**\n * Default configuration for {@linkcode vitestConfig}.\n *\n * @since 0.0.5\n * @public\n */\nexport const vitestConfigDefaults = {\n  ...vitestProjectDefaults,\n\n  test: {\n    ...vitestProjectDefaults.test,\n\n    /**\n     * @default { include: ['src/**\\/*.?(c|m)[jt]s?(x)'] }\n     */\n    coverage: {\n      /**\n       * @default ['src/**\\/*.?(c|m)[jt]s?(x)']\n       */\n      include: ['src/**/*.?(c|m)[jt]s?(x)'],\n    },\n\n    /**\n     * @default process.env.GITHUB_ACTIONS ? [['default', { summary: false }], ['github-actions', {}]] : [['default', {}]]\n     */\n    reporters: process.env.GITHUB_ACTIONS\n      ? ([\n          ['default', { summary: false }],\n          ['github-actions', {}],\n        ] as const)\n      : ([['default', {}]] as const),\n\n    /**\n     * @default false\n     */\n    watch: false,\n  },\n} as const satisfies ViteUserConfig\n","import type { Plugin, PluginOptions } from './external.js'\nimport { tsconfigPaths } from './external.js'\n\n/**\n * Default configuration for {@linkcode tsconfigPaths}.\n *\n * @since 0.0.5\n * @public\n */\nexport const tsconfigPathsOptions = {\n  configNames: ['tsconfig.json'],\n  projects: ['./tsconfig.json'],\n} as const satisfies PluginOptions\n\n/**\n * plugins for {@linkcode vitestProjectDefaults}.\n *\n * @since 0.0.5\n * @public\n */\nexport const plugins = [\n  /* @__PURE__ */ tsconfigPaths(tsconfigPathsOptions),\n] as const satisfies [Plugin] as [Plugin]\n","import { vitestConfigDefaults } from './defaults.js'\nimport type { UserWorkspaceConfig, ViteUserConfig } from './external.js'\nimport { defineConfig, defineProject } from './external.js'\n\n/**\n * Shareable {@link https://vitest.dev | **Vitest**}\n * configuration tailored for projects using TypeScript.\n *\n * @example\n * <caption>#### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__</caption>\n *\n * ```ts\n * import { vitestConfig } from '@aryaemami59/vitest-config'\n *\n * export default vitestConfig\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__</caption>\n *\n * ```ts\n * const { vitestConfig } = require('@aryaemami59/vitest-config')\n *\n * module.exports = vitestConfig\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__</caption>\n *\n * ```ts\n * module.exports = (async () =>\n *   (await import('@aryaemami59/vitest-config')).vitestConfig)()\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__</caption>\n *\n * ```ts\n * import vitestConfigModule = require('@aryaemami59/vitest-config')\n * import vitestConfig = vitestConfigModule.vitestConfig\n *\n * export = vitestConfig\n * ```\n *\n * @since 0.0.3\n * @public\n */\nexport const vitestConfig: ViteUserConfig =\n  /* @__PURE__ */ defineConfig(vitestConfigDefaults)\n\n/**\n * Shareable {@link https://vitest.dev | **Vitest**}\n * configuration tailored for projects using TypeScript.\n *\n * @example\n * <caption>#### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__</caption>\n *\n * ```ts\n * import { vitestProject } from '@aryaemami59/vitest-config'\n *\n * export default vitestProject\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__</caption>\n *\n * ```ts\n * const { vitestProject } = require('@aryaemami59/vitest-config')\n *\n * module.exports = vitestProject\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__</caption>\n *\n * ```ts\n * module.exports = (async () =>\n *   (await import('@aryaemami59/vitest-config')).vitestProject)()\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__</caption>\n *\n * ```ts\n * import vitestConfigModule = require('@aryaemami59/vitest-config')\n * import vitestProject = vitestConfigModule.vitestProject\n *\n * export = vitestProject\n * ```\n *\n * @since 0.0.5\n * @public\n */\nexport const vitestProject: UserWorkspaceConfig =\n  /* @__PURE__ */ defineProject(vitestConfigDefaults)\n","import type { UserWorkspaceConfig, ViteUserConfig } from './external.js'\nimport { mergeConfig } from './external.js'\nimport { vitestConfig, vitestProject } from './shareableConfigs.js'\n\n/**\n * A function that returns {@linkcode vitestConfig}\n * along with optional additional overrides.\n *\n * @param [additionalOverrides={}] - **Optional** additional overrides to apply to the configuration.\n * @returns An augmented version of the default {@linkcode vitestConfig}, incorporating any provided overrides.\n *\n * @example\n * <caption>#### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__</caption>\n *\n * ```ts\n * import { createVitestConfig } from '@aryaemami59/vitest-config'\n *\n * export default createVitestConfig({\n *   test: {\n *     environment: 'jsdom',\n *     // Other additional overrides\n *   },\n * })\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__</caption>\n *\n * ```ts\n * const { createVitestConfig } = require('@aryaemami59/vitest-config')\n *\n * module.exports = createVitestConfig({\n *   test: {\n *     environment: 'jsdom',\n *     // Other additional overrides\n *   },\n * })\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__</caption>\n *\n * ```ts\n * module.exports = (async () =>\n *   (await import('@aryaemami59/vitest-config')).createVitestConfig({\n *     test: {\n *       environment: 'jsdom',\n *       // Other additional overrides\n *     },\n *   }))()\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__</caption>\n *\n * ```ts\n * import vitestConfigModule = require('@aryaemami59/vitest-config')\n * import createVitestConfig = vitestConfigModule.createVitestConfig\n *\n * export = createVitestConfig({\n *   test: {\n *     environment: 'jsdom',\n *     // Other additional overrides\n *   },\n * })\n * ```\n *\n * @since 0.0.3\n * @public\n */\nexport const createVitestConfig = (\n  additionalOverrides: ViteUserConfig = {},\n): ViteUserConfig =>\n  /* @__PURE__ */ mergeConfig(vitestConfig, additionalOverrides)\n\n/**\n * A function that returns {@linkcode vitestProject}\n * along with optional additional overrides.\n *\n * @param [additionalOverrides={}] - **Optional** additional overrides to apply to the configuration.\n * @returns An augmented version of the default {@linkcode vitestProject}, incorporating any provided overrides.\n *\n * @example\n * <caption>#### __ECMAScript Modules (ESM) usage inside a file like `vitest.config.mts` or `vitest.config.mjs`__</caption>\n *\n * ```ts\n * import { createVitestProject } from '@aryaemami59/vitest-config'\n *\n * export default createVitestProject({\n *   test: {\n *     environment: 'jsdom',\n *     // Other additional overrides\n *   },\n * })\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using `require`)__</caption>\n *\n * ```ts\n * const { createVitestProject } = require('@aryaemami59/vitest-config')\n *\n * module.exports = createVitestProject({\n *   test: {\n *     environment: 'jsdom',\n *     // Other additional overrides\n *   },\n * })\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` or `vitest.config.cjs` (using dynamic import)__</caption>\n *\n * ```ts\n * module.exports = (async () =>\n *   (await import('@aryaemami59/vitest-config')).createVitestProject({\n *     test: {\n *       environment: 'jsdom',\n *       // Other additional overrides\n *     },\n *   }))()\n * ```\n *\n * @example\n * <caption>#### __CommonJS (CJS) usage inside a file like `vitest.config.cts` (using import and export assignment)__</caption>\n *\n * ```ts\n * import vitestConfigModule = require('@aryaemami59/vitest-config')\n * import createVitestProject = vitestConfigModule.createVitestProject\n *\n * export = createVitestProject({\n *   test: {\n *     environment: 'jsdom',\n *     // Other additional overrides\n *   },\n * })\n * ```\n *\n * @since 0.0.5\n * @public\n */\nexport const createVitestProject = (\n  additionalOverrides: UserWorkspaceConfig = {},\n): UserWorkspaceConfig =>\n  /* @__PURE__ */ mergeConfig(vitestProject, additionalOverrides)\n"],"mappings":";;;;;;;AAQA,MAAa,wBAAwB;CAInC,QAAQ,EAIN,sBAAsB,aACvB;CAED,MAAM;EAIJ,YAAY;EAKZ,SAAS;EAKT,WAAW;GAIT,SAAS;GAKT,UAAU;GACX;EAKD,YAAY;EAKZ,eAAe;EAChB;CACF;AAQD,MAAa,uBAAuB;CAClC,GAAG;CAEH,MAAM;EACJ,GAAG,sBAAsB;EAKzB,UAAU,EAIR,SAAS,CAAC,2BAA2B,EACtC;EAKD,WAAW,QAAQ,IAAI,iBAClB,CACC,CAAC,WAAW,EAAE,SAAS,OAAO,CAAC,EAC/B,CAAC,kBAAkB,EAAE,CAAC,CACvB,GACA,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;EAKtB,OAAO;EACR;CACF;;;;ACrFD,MAAa,uBAAuB;CAClC,aAAa,CAAC,gBAAgB;CAC9B,UAAU,CAAC,kBAAkB;CAC9B;AAQD,MAAa,UAAU,CACL,iDAAc,qBAAqB,CACpD;;;;ACyBD,MAAa,eACK,gDAAa,qBAAqB;AA6CpD,MAAa,gBACK,iDAAc,qBAAqB;;;;ACxBrD,MAAa,sBACX,sBAAsC,EAAE,KAExB,+CAAY,cAAc,oBAAoB;AAoEhE,MAAa,uBACX,sBAA2C,EAAE,KAE7B,+CAAY,eAAe,oBAAoB"}