@deltabox/toolchain 2.3.2 → 2.4.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.
Files changed (61) hide show
  1. package/CHANGELOG.md +55 -6
  2. package/dist/core.d.ts +2 -1
  3. package/dist/core.js +1 -1
  4. package/dist/index.d.ts +7 -6
  5. package/dist/index.js +1 -1
  6. package/dist/migrate.d.ts +3 -3
  7. package/dist/migrate.js +1 -1
  8. package/dist/package.js +1 -1
  9. package/dist/packages/changelog/src/workflows.js +1 -1
  10. package/dist/packages/core/src/fmt-groups.d.ts +32 -0
  11. package/dist/packages/core/src/fmt-groups.js +1 -0
  12. package/dist/packages/core/src/index.d.ts +3 -2
  13. package/dist/packages/core/src/index.js +1 -1
  14. package/dist/packages/core/src/select.d.ts +3 -0
  15. package/dist/packages/core/src/select.js +1 -1
  16. package/dist/packages/core/src/sync.js +1 -1
  17. package/dist/packages/migrate/src/cli/index.js +1 -1
  18. package/dist/packages/migrate/src/index.d.ts +3 -3
  19. package/dist/packages/migrate/src/index.js +1 -1
  20. package/dist/packages/migrate/src/oxc.js +1 -1
  21. package/dist/packages/migrate/src/types.d.ts +3 -2
  22. package/dist/packages/migrate/src/vite-target.d.ts +7 -0
  23. package/dist/packages/migrate/src/vite-target.js +2 -2
  24. package/dist/packages/migrate/src/vite.d.ts +30 -1
  25. package/dist/packages/migrate/src/vite.js +10 -8
  26. package/dist/packages/project/src/cli/index.js +1 -1
  27. package/dist/packages/project/src/config.d.ts +20 -5
  28. package/dist/packages/project/src/config.js +1 -1
  29. package/dist/packages/project/src/index.d.ts +3 -3
  30. package/dist/packages/project/src/index.js +1 -1
  31. package/dist/packages/project/src/typescript.d.ts +26 -0
  32. package/dist/packages/project/src/typescript.js +17 -10
  33. package/dist/packages/shared/src/config-schema/changelog.d.ts +572 -10
  34. package/dist/packages/shared/src/config-schema/ci.d.ts +1746 -60
  35. package/dist/packages/shared/src/config-schema/index.d.ts +6090 -1032
  36. package/dist/packages/shared/src/config-schema/index.js +1 -1
  37. package/dist/packages/shared/src/config-schema/workflow.d.ts +3825 -481
  38. package/dist/packages/shared/src/config-schema/workflow.js +1 -1
  39. package/dist/packages/shared/src/config-types.d.ts +123 -15
  40. package/dist/packages/shared/src/ignore.d.ts +8 -0
  41. package/dist/packages/shared/src/ignore.js +1 -1
  42. package/dist/packages/shared/src/index.d.ts +7 -7
  43. package/dist/packages/shared/src/index.js +1 -1
  44. package/dist/packages/shared/src/string-utils.d.ts +9 -2
  45. package/dist/packages/shared/src/string-utils.js +2 -2
  46. package/dist/packages/shared/src/toolchain.d.ts +3 -3
  47. package/dist/packages/shared/src/toolchain.js +1 -1
  48. package/dist/packages/shared/src/vite-defaults.d.ts +33 -8
  49. package/dist/packages/shared/src/vite-defaults.js +1 -1
  50. package/dist/packages/vite/src/index.d.ts +3 -1
  51. package/dist/packages/vite/src/index.js +1 -1
  52. package/dist/packages/vite/src/resolve.js +1 -1
  53. package/dist/packages/vite/src/sync.js +3 -3
  54. package/dist/project.d.ts +2 -2
  55. package/dist/project.js +1 -1
  56. package/dist/shared.d.ts +6 -6
  57. package/dist/shared.js +1 -1
  58. package/dist/tooling.js +1 -1
  59. package/dist/vite.d.ts +2 -1
  60. package/dist/vite.js +1 -1
  61. package/package.json +12 -12
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{DEFAULT_IGNORE_PATTERNS as e}from"./ignore.js";const t=[...e,`**/.nuxt/**`,`**/.svelte-kit/**`,`**/.generated/**`,`**/generated/**`,`**/*.json`,`**/*.yml`,`**/*.yaml`,`**/*.lock`,`**/*.min.*`,`**/CHANGELOG.md`,`CHANGELOG.proposed.md`,`**/vite.config.ts`],n={useTabs:!1,tabWidth:4,printWidth:100,endOfLine:`lf`,insertFinalNewline:!0,singleQuote:!0,jsxSingleQuote:!1,quoteProps:`as-needed`,trailingComma:`es5`,semi:!0,arrowParens:`avoid`,bracketSpacing:!0,bracketSameLine:!1,singleAttributePerLine:!1,objectWrap:`preserve`,proseWrap:`preserve`,embeddedLanguageFormatting:`auto`,htmlWhitespaceSensitivity:`css`,vueIndentScriptAndStyle:!1,sortPackageJson:!1,ignorePatterns:t},r=[...e,`**/.nuxt/**`,`**/.svelte-kit/**`,`**/.generated/**`,`**/generated/**`,`**/*.min.*`,`**/vendor/**`],i={ignorePatterns:r,rules:{"jsx-a11y/alt-text":`off`,"jsx-a11y/aria-props":`off`,"jsx-a11y/click-events-have-key-events":`off`,"react/button-has-type":`off`,"react/react-in-jsx-scope":`off`,"react/exhaustive-deps":`off`,"typescript/no-empty-object-type":`off`,"typescript/no-explicit-any":`off`,"typescript/no-non-null-assertion":`off`,"typescript/no-useless-empty-export":`off`,eqeqeq:`warn`,"import/no-duplicates":`warn`,"no-alert":`warn`,"no-case-declarations":`off`,"no-console":`off`,"no-constant-condition":`off`,"no-control-regex":`off`,"no-debugger":`warn`,"no-inner-declarations":`off`,"no-return-assign":`off`,"no-unused-vars":`warn`,"no-useless-escape":`off`,"no-var":`warn`,"prefer-const":`warn`,"prefer-exponentiation-operator":`off`,"prefer-template":`off`}};export{t as DEFAULT_FMT_IGNORE_PATTERNS,n as DEFAULT_FMT_RULES,r as DEFAULT_LINT_IGNORE_PATTERNS,i as DEFAULT_LINT_RULES};
1
+ import"node:path";import"node:url";import.meta.url;import{isPlainObject as e}from"./object-utils.js";import{DEFAULT_FMT_IGNORE_PATTERNS as t,DEFAULT_LINT_IGNORE_PATTERNS as n}from"./ignore.js";const r=`workspace`,i=[`builtin`,`external`,[`internal`,`subpath`],[`parent`,`sibling`,`index`],`style`,`unknown`],a={groups:[...i],customGroups:[],internalPattern:[`~/`,`@/`],newlinesBetween:!0},o={useTabs:!1,tabWidth:4,printWidth:100,endOfLine:`lf`,insertFinalNewline:!0,singleQuote:!0,jsxSingleQuote:!1,quoteProps:`as-needed`,trailingComma:`es5`,semi:!0,arrowParens:`avoid`,bracketSpacing:!0,bracketSameLine:!1,singleAttributePerLine:!1,objectWrap:`preserve`,proseWrap:`preserve`,embeddedLanguageFormatting:`auto`,htmlWhitespaceSensitivity:`css`,vueIndentScriptAndStyle:!1,sortPackageJson:!1,sortImports:{...a,groups:[...i],customGroups:[]},ignorePatterns:[...t]};function s(e){let t=/* @__PURE__ */ new Set,n=/* @__PURE__ */ new Set;for(let r of e)r&&(r.scope&&t.add(r.scope),r.name&&n.add(r.name));let i=[...[...t].sort().map(e=>`${e}/**`),...[...n].sort().flatMap(e=>[e,`${e}/**`])],a=[...new Set(i)];return a.length>0?[{groupName:r,elementNamePattern:a}]:[]}function c(e){return typeof e==`string`?[e]:Array.isArray(e)?e:[]}function l(e,t){if(e.some(e=>c(e).includes(t)))return;let n=e.findIndex(e=>c(e).includes(`external`));e.splice(n===-1?e.length:n+1,0,t)}function u(t,n){if(n.length===0||t.sortImports===void 0||t.sortImports===!1)return t;let r=t.sortImports===!0||!e(t.sortImports)?{...a,groups:[...i],customGroups:[]}:{...t.sortImports},o=Array.isArray(r.groups)?[...r.groups]:[...i],s=Array.isArray(r.customGroups)?r.customGroups.map(e=>({...e})):[];for(let e of n){let t=s.findIndex(t=>t.groupName===e.groupName);if(t===-1)s.push({...e});else{let n=s[t];s[t]={...n,elementNamePattern:[.../* @__PURE__ */ new Set([...n?.elementNamePattern??[],...e.elementNamePattern??[]])]}}e.groupName&&l(o,e.groupName)}return{...t,sortImports:{...r,groups:o,customGroups:s}}}const d={ignorePatterns:[...n],rules:{"jsx-a11y/alt-text":`off`,"jsx-a11y/aria-props":`off`,"jsx-a11y/click-events-have-key-events":`off`,"react/button-has-type":`off`,"react/react-in-jsx-scope":`off`,"react/exhaustive-deps":`off`,"typescript/no-empty-object-type":`off`,"typescript/no-explicit-any":`off`,"typescript/no-non-null-assertion":`off`,"typescript/no-useless-empty-export":`off`,eqeqeq:`warn`,"import/no-duplicates":`warn`,"no-alert":`warn`,"no-case-declarations":`off`,"no-console":`off`,"no-constant-condition":`off`,"no-control-regex":`off`,"no-debugger":`warn`,"no-inner-declarations":`off`,"no-return-assign":`off`,"no-unused-vars":`warn`,"no-useless-escape":`off`,"no-var":`warn`,"prefer-const":`warn`,"prefer-exponentiation-operator":`off`,"prefer-template":`off`}};export{o as DEFAULT_FMT_RULES,r as DEFAULT_FMT_SORT_GROUP,i as DEFAULT_FMT_SORT_GROUPS,a as DEFAULT_FMT_SORT_IMPORTS,d as DEFAULT_LINT_RULES,u as applyFmtCustomGroups,s as fmtCustomGroupsForProjects};
@@ -1,5 +1,7 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
+ import { ResolveFmtCustomGroupsInput, ResolveFmtCustomGroupsOptions, resolveFmtCustomGroups } from "../../core/src/fmt-groups.js";
4
+ import "../../core/src/index.js";
3
5
  import { VP_COMMANDS, VpCommandInfo, VpGroup, resolveVpCommand, viteCommandName } from "./commands.js";
4
6
  import { runGuard, viteCommands } from "./cli/index.js";
5
7
  import { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, DbxTask, ResolvedDbx, dbx, dbxTaskCommand, resolveDbx, runDbx } from "./plugin.js";
@@ -7,4 +9,4 @@ import { viteProvider } from "./provider.js";
7
9
  import { ResolveViteInput, ResolveViteOptions, resolveVite } from "./resolve.js";
8
10
  import { DEFAULT_RESOLVE_IMPORT, OXC_FMT_CONFIG_FILE, OXC_LINT_CONFIG_FILE, VITE_CONFIG_SHIM, ViteSpecifier, detectViteSpecifier, renderStaticViteConfig, renderViteConfig, resolveShimImport, viteConfigObject, viteSyncTask } from "./sync.js";
9
11
  import { ResolvedVp, RunVpOptions, VpResult, VpSource, describeVp, hasVp, resolveVp, runVp, vpVersion, which } from "./vp.js";
10
- export { DBX_TASKS, DBX_TIMEOUT_MS, DEFAULT_RESOLVE_IMPORT, DbxPluginOptions, DbxSource, DbxTask, OXC_FMT_CONFIG_FILE, OXC_LINT_CONFIG_FILE, ResolveViteInput, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, ViteSpecifier, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, detectViteSpecifier, hasVp, renderStaticViteConfig, renderViteConfig, resolveDbx, resolveShimImport, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
12
+ export { DBX_TASKS, DBX_TIMEOUT_MS, DEFAULT_RESOLVE_IMPORT, DbxPluginOptions, DbxSource, DbxTask, OXC_FMT_CONFIG_FILE, OXC_LINT_CONFIG_FILE, type ResolveFmtCustomGroupsInput, type ResolveFmtCustomGroupsOptions, ResolveViteInput, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, ViteSpecifier, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, detectViteSpecifier, hasVp, renderStaticViteConfig, renderViteConfig, resolveDbx, resolveFmtCustomGroups, resolveShimImport, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{VP_COMMANDS as e,resolveVpCommand as t,viteCommandName as n}from"./commands.js";import{describeVp as r,hasVp as i,resolveVp as a,runVp as o,vpVersion as s,which as c}from"./vp.js";import{runGuard as l,viteCommands as u}from"./cli/index.js";import{DBX_TASKS as d,DBX_TIMEOUT_MS as f,dbx as p,dbxTaskCommand as m,resolveDbx as h,runDbx as g}from"./plugin.js";import{viteProvider as _}from"./provider.js";import{DEFAULT_RESOLVE_IMPORT as v,OXC_FMT_CONFIG_FILE as y,OXC_LINT_CONFIG_FILE as b,VITE_CONFIG_SHIM as x,detectViteSpecifier as S,renderStaticViteConfig as C,renderViteConfig as w,resolveShimImport as T,viteConfigObject as E,viteSyncTask as D}from"./sync.js";import{resolveVite as O}from"./resolve.js";export{d as DBX_TASKS,f as DBX_TIMEOUT_MS,v as DEFAULT_RESOLVE_IMPORT,y as OXC_FMT_CONFIG_FILE,b as OXC_LINT_CONFIG_FILE,x as VITE_CONFIG_SHIM,e as VP_COMMANDS,p as dbx,m as dbxTaskCommand,r as describeVp,S as detectViteSpecifier,i as hasVp,C as renderStaticViteConfig,w as renderViteConfig,h as resolveDbx,T as resolveShimImport,O as resolveVite,a as resolveVp,t as resolveVpCommand,g as runDbx,l as runGuard,o as runVp,n as viteCommandName,u as viteCommands,E as viteConfigObject,_ as viteProvider,D as viteSyncTask,s as vpVersion,c as which};
1
+ import"node:path";import"node:url";import.meta.url;import{resolveFmtCustomGroups as e}from"../../core/src/fmt-groups.js";import"../../core/src/index.js";import{VP_COMMANDS as t,resolveVpCommand as n,viteCommandName as r}from"./commands.js";import{describeVp as i,hasVp as a,resolveVp as o,runVp as s,vpVersion as c,which as l}from"./vp.js";import{runGuard as u,viteCommands as d}from"./cli/index.js";import{DBX_TASKS as f,DBX_TIMEOUT_MS as p,dbx as m,dbxTaskCommand as h,resolveDbx as g,runDbx as _}from"./plugin.js";import{viteProvider as v}from"./provider.js";import{DEFAULT_RESOLVE_IMPORT as y,OXC_FMT_CONFIG_FILE as b,OXC_LINT_CONFIG_FILE as x,VITE_CONFIG_SHIM as S,detectViteSpecifier as C,renderStaticViteConfig as w,renderViteConfig as T,resolveShimImport as E,viteConfigObject as D,viteSyncTask as O}from"./sync.js";import{resolveVite as k}from"./resolve.js";export{f as DBX_TASKS,p as DBX_TIMEOUT_MS,y as DEFAULT_RESOLVE_IMPORT,b as OXC_FMT_CONFIG_FILE,x as OXC_LINT_CONFIG_FILE,S as VITE_CONFIG_SHIM,t as VP_COMMANDS,m as dbx,h as dbxTaskCommand,i as describeVp,C as detectViteSpecifier,a as hasVp,w as renderStaticViteConfig,T as renderViteConfig,g as resolveDbx,e as resolveFmtCustomGroups,E as resolveShimImport,k as resolveVite,o as resolveVp,n as resolveVpCommand,_ as runDbx,u as runGuard,s as runVp,r as viteCommandName,d as viteCommands,D as viteConfigObject,v as viteProvider,O as viteSyncTask,c as vpVersion,l as which};
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{deepMerge as e}from"../../shared/src/object-utils.js";import{applyReplacementsDeep as t}from"../../shared/src/template.js";import{resolveTokens as n,sectionConfig as r}from"../../shared/src/toolchain.js";import"../../shared/src/index.js";import{loadToolchainConfig as i}from"../../core/src/loader.js";import"../../core/src/index.js";import{viteConfigObject as a}from"./sync.js";async function o(o={}){let{cwd:s,vite:c,...l}=o,u;if(Object.keys(l).length>0)u=l.toolchain??{};else{let e=await i(s??process.cwd());if(!e.path)throw Error(`resolveVite: no dbx.config.* found — create one, or pass a config to resolveVite().`);u=e.config}let d=r(u.vite)??{},f=c===void 0?d:e(d,r(c)??{});return t(a(f),n(u))}export{o as resolveVite};
1
+ import"node:path";import"node:url";import.meta.url;import{deepMerge as e,isPlainObject as t}from"../../shared/src/object-utils.js";import{applyReplacementsDeep as n}from"../../shared/src/template.js";import{resolveTokens as r,sectionConfig as i}from"../../shared/src/toolchain.js";import{applyFmtCustomGroups as a}from"../../shared/src/vite-defaults.js";import"../../shared/src/index.js";import{loadToolchainConfig as o}from"../../core/src/loader.js";import{resolveFmtCustomGroups as s}from"../../core/src/fmt-groups.js";import"../../core/src/index.js";import{viteConfigObject as c}from"./sync.js";async function l(l={}){let{cwd:u,vite:d,...f}=l,p;if(Object.keys(f).length>0)p=f.toolchain??{};else{let e=await o(u??process.cwd());if(!e.path)throw Error(`resolveVite: no dbx.config.* found — create one, or pass a config to resolveVite().`);p=e.config}let m=i(p.vite)??{},h=d===void 0?m:e(m,i(d)??{}),g=n(c(h),r(p));if(t(g.fmt)){let e=await s({cwd:u??process.cwd()});g.fmt=a(g.fmt,e)}return g}export{l as resolveVite};
@@ -1,5 +1,5 @@
1
- import{default as e}from"node:path";import"node:url";import.meta.url;import{deepMerge as t,isPlainObject as n}from"../../shared/src/object-utils.js";import{readJsonAt as r}from"../../shared/src/fs-utils.js";import{applyReplacementsDeep as i}from"../../shared/src/template.js";import{resolveOxcFmtConfig as a,resolveOxcLintConfig as o,sectionConfig as s,sectionEnabled as c}from"../../shared/src/toolchain.js";import{DEFAULT_FMT_RULES as l,DEFAULT_LINT_RULES as u}from"../../shared/src/vite-defaults.js";import"../../shared/src/index.js";import d from"node:fs";function f(e={}){let{config:r,shim:i,shimImport:a,enabled:o,fmt:s,lint:c,...d}=e,f={...d};return s===!0?f.fmt=l:n(s)?f.fmt=t(l,s):s!==void 0&&(f.fmt=s),c===!0?f.lint=u:n(c)?f.lint=t(u,c):c!==void 0&&(f.lint=c),f}const p=[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`];function m(e,t){return e?p.some(n=>e[n]?.[t]!==void 0):!1}function h(t){let n=e.resolve(t),i=!1;for(;;){let t=r(n,`package.json`);if(m(t,`vite-plus`))return`vite-plus`;if(m(t,`vite`)&&(i=!0),d.existsSync(e.join(n,`.git`)))break;let a=e.dirname(n);if(a===n)break;n=a}return i?`vite`:`vite-plus`}function g(e){return e===`vite`?`UserConfig`:`ViteUserConfig`}function _(t){let n=e.resolve(t);for(;;){if(d.existsSync(e.join(n,`.git`)))return n;let r=e.dirname(n);if(r===n)return e.resolve(t);n=r}}function v(t,n){if(!t)return w;if(!t.startsWith(`.`)&&!e.isAbsolute(t))return t;let r=e.resolve(_(n),t),i=e.relative(e.resolve(n),r).replace(/\\/g,`/`);return i.startsWith(`.`)||(i=`./${i}`),i}function y(e){let t=[],n=0,r=0;for(let i=0;i<e.length;i++){let a=e[i];a===`{`||a===`[`||a===`(`?n++:a===`}`||a===`]`||a===`)`?n--:a===`,`&&n===0&&(t.push(e.slice(r,i).trim()),r=i+1)}let i=e.slice(r).trim();return i&&t.push(i),t.filter(Boolean)}function b(e){let t={named:[]};for(let n of y(e))if(n.startsWith(`{`)&&n.endsWith(`}`))t.named=y(n.slice(1,-1));else if(n.startsWith(`*`)){let e=n.match(/^\*\s*as\s+([\w$]+)$/);e?.[1]&&(t.namespace=e[1])}else/^[\w$]+$/.test(n)&&(t.default=n);return t}function x(e){let t=[];return e.default&&t.push(e.default),e.namespace&&t.push(`* as ${e.namespace}`),e.named.length>0&&t.push(`{ ${e.named.join(`, `)} }`),t.join(`, `)}function S(e){let t=e.trim();return t===``||t.startsWith(`//`)||t.startsWith(`/*`)||t.startsWith(`*`)||t.startsWith(`*/`)}function C(e){let t=e.replace(/^\uFEFF/,``).split(/\r?\n/),n=[],r=0;for(;r<t.length;){let e=t[r];if(S(e)){n.push({kind:`text`,text:e}),r++;continue}if(!e.trimStart().startsWith(`import `))break;let i=e;for(;!/\bfrom\s*['"][^'"]+['"]\s*;?\s*$/.test(i.trim())&&!/^import\s*['"][^'"]+['"]\s*;?\s*$/.test(i.trim())&&r+1<t.length;)r++,i+=`\n${t[r]}`;let a=i.match(/\bfrom\s*['"]([^'"]+)['"]/)?.[1]??i.match(/^import\s*['"]([^'"]+)['"]/)?.[1];if(!a)break;let o=i.match(/^import\s+([\s\S]*?)\s+from\s*['"]/)?.[1]??``;n.push({kind:`import`,parsed:{raw:i,from:a,clause:o}}),r++}return n}const w=`@deltabox/toolchain/vite`;function T(e,t,n,r=w){let i=[],a=!1;for(let o of e){if(o.kind===`text`){i.push(o.text);continue}let{from:e,clause:s}=o.parsed;if(e===`@deltabox/toolchain/vite`||e===r)continue;let c=b(s),l=c.named.filter(e=>e.replace(/^type\s+/,``)!==`resolveVite`);if(e===t&&!a){let e=l.filter(e=>e.replace(/^type\s+/,``)!==`defineConfig`&&e.replace(/^type\s+/,``)!==n);e.unshift(`defineConfig`),e.push(`type ${n}`),i.push(`import ${x({...c,named:e})} from '${t}';`),a=!0}else if(l.length!==c.named.length){let t={...c,named:l};(t.default||t.namespace||t.named.length>0)&&i.push(`import ${x(t)} from '${e}';`)}else i.push(o.parsed.raw)}if(!a){let e=0;for(;e<i.length&&S(i[e]);)e++;i.splice(e,0,`import { defineConfig, type ${n} } from '${t}';`)}return i}function E(e=`vite-plus`,t,n=w){let r=g(e),i=t?T(C(t),e,r,n):[];if(i.length>0){for(;i.length>0&&i[i.length-1].trim()===``;)i.pop();return[...i,`import { resolveVite } from '${n}';`,``,`export default defineConfig(resolveVite<${r}>({ cwd: import.meta.dirname }));`,``].join(`
1
+ import{default as e}from"node:path";import"node:url";import.meta.url;import{deepMerge as t,isPlainObject as n}from"../../shared/src/object-utils.js";import{readJsonAt as r}from"../../shared/src/fs-utils.js";import{applyReplacementsDeep as i}from"../../shared/src/template.js";import{resolveOxcFmtConfig as a,resolveOxcLintConfig as o,sectionConfig as s,sectionEnabled as c}from"../../shared/src/toolchain.js";import{DEFAULT_FMT_RULES as l,DEFAULT_LINT_RULES as u,applyFmtCustomGroups as d}from"../../shared/src/vite-defaults.js";import"../../shared/src/index.js";import{resolveFmtCustomGroups as f}from"../../core/src/fmt-groups.js";import"../../core/src/index.js";import p from"node:fs";function m(e={}){let{config:r,shim:i,shimImport:a,enabled:o,fmt:s,lint:c,...d}=e,f={...d};return s===!0?f.fmt=l:n(s)?f.fmt=t(l,s):s!==void 0&&(f.fmt=s),c===!0?f.lint=u:n(c)?f.lint=t(u,c):c!==void 0&&(f.lint=c),f}const h=[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`];function g(e,t){return e?h.some(n=>e[n]?.[t]!==void 0):!1}function _(t){let n=e.resolve(t),i=!1;for(;;){let t=r(n,`package.json`);if(g(t,`vite-plus`))return`vite-plus`;if(g(t,`vite`)&&(i=!0),p.existsSync(e.join(n,`.git`)))break;let a=e.dirname(n);if(a===n)break;n=a}return i?`vite`:`vite-plus`}function v(e){return e===`vite`?`UserConfig`:`ViteUserConfig`}function y(t){let n=e.resolve(t);for(;;){if(p.existsSync(e.join(n,`.git`)))return n;let r=e.dirname(n);if(r===n)return e.resolve(t);n=r}}function b(t,n){if(!t)return E;if(!t.startsWith(`.`)&&!e.isAbsolute(t))return t;let r=e.resolve(y(n),t),i=e.relative(e.resolve(n),r).replace(/\\/g,`/`);return i.startsWith(`.`)||(i=`./${i}`),i}function x(e){let t=[],n=0,r=0;for(let i=0;i<e.length;i++){let a=e[i];a===`{`||a===`[`||a===`(`?n++:a===`}`||a===`]`||a===`)`?n--:a===`,`&&n===0&&(t.push(e.slice(r,i).trim()),r=i+1)}let i=e.slice(r).trim();return i&&t.push(i),t.filter(Boolean)}function S(e){let t={named:[]};for(let n of x(e))if(n.startsWith(`{`)&&n.endsWith(`}`))t.named=x(n.slice(1,-1));else if(n.startsWith(`*`)){let e=n.match(/^\*\s*as\s+([\w$]+)$/);e?.[1]&&(t.namespace=e[1])}else/^[\w$]+$/.test(n)&&(t.default=n);return t}function C(e){let t=[];return e.default&&t.push(e.default),e.namespace&&t.push(`* as ${e.namespace}`),e.named.length>0&&t.push(`{ ${e.named.join(`, `)} }`),t.join(`, `)}function w(e){let t=e.trim();return t===``||t.startsWith(`//`)||t.startsWith(`/*`)||t.startsWith(`*`)||t.startsWith(`*/`)}function T(e){let t=e.replace(/^\uFEFF/,``).split(/\r?\n/),n=[],r=0;for(;r<t.length;){let e=t[r];if(w(e)){n.push({kind:`text`,text:e}),r++;continue}if(!e.trimStart().startsWith(`import `))break;let i=e;for(;!/\bfrom\s*['"][^'"]+['"]\s*;?\s*$/.test(i.trim())&&!/^import\s*['"][^'"]+['"]\s*;?\s*$/.test(i.trim())&&r+1<t.length;)r++,i+=`\n${t[r]}`;let a=i.match(/\bfrom\s*['"]([^'"]+)['"]/)?.[1]??i.match(/^import\s*['"]([^'"]+)['"]/)?.[1];if(!a)break;let o=i.match(/^import\s+([\s\S]*?)\s+from\s*['"]/)?.[1]??``;n.push({kind:`import`,parsed:{raw:i,from:a,clause:o}}),r++}return n}const E=`@deltabox/toolchain/vite`;function D(e,t,n,r=E){let i=[],a=!1;for(let o of e){if(o.kind===`text`){i.push(o.text);continue}let{from:e,clause:s}=o.parsed;if(e===`@deltabox/toolchain/vite`||e===r)continue;let c=S(s),l=c.named.filter(e=>e.replace(/^type\s+/,``)!==`resolveVite`);if(e===t&&!a){let e=l.filter(e=>e.replace(/^type\s+/,``)!==`defineConfig`&&e.replace(/^type\s+/,``)!==n);e.unshift(`defineConfig`),e.push(`type ${n}`),i.push(`import ${C({...c,named:e})} from '${t}';`),a=!0}else if(l.length!==c.named.length){let t={...c,named:l};(t.default||t.namespace||t.named.length>0)&&i.push(`import ${C(t)} from '${e}';`)}else i.push(o.parsed.raw)}if(!a){let e=0;for(;e<i.length&&w(i[e]);)e++;i.splice(e,0,`import { defineConfig, type ${n} } from '${t}';`)}return i}function O(e=`vite-plus`,t,n=E){let r=v(e),i=t?D(T(t),e,r,n):[];if(i.length>0){for(;i.length>0&&i[i.length-1].trim()===``;)i.pop();return[...i,`import { resolveVite } from '${n}';`,``,`export default defineConfig(resolveVite<${r}>({ cwd: import.meta.dirname }));`,``].join(`
2
2
  `)}return["// Generated by @deltabox/toolchain - edit the vite section in dbx.config and run `dbx sync`.",`import { defineConfig, type ${r} } from '${e}';`,`import { resolveVite } from '${n}';`,``,`export default defineConfig(resolveVite<${r}>({ cwd: import.meta.dirname }));`,``].join(`
3
- `)}const D=E(`vite-plus`);function O(e,t){if(e!=null){if(typeof e==`function`)throw Error(`vite.shim "static" cannot serialize a function (${t}). Use \`vite.shim: "runtime"\` for dynamic configs.`);if(typeof e==`symbol`||typeof e==`bigint`||e instanceof RegExp)throw Error(`vite.shim "static" cannot serialize ${typeof e} (${t}). Use \`vite.shim: "runtime"\` for dynamic configs.`);if(Array.isArray(e))e.forEach((e,n)=>O(e,`${t}[${n}]`));else if(typeof e==`object`){if(!n(e))throw Error(`vite.shim "static" cannot serialize a non-plain object (${t}). Use \`vite.shim: "runtime"\` for dynamic configs.`);for(let[n,r]of Object.entries(e))O(r,t?`${t}.${n}`:n)}}}function k(e,t,n,r=w){let i=g(e);O(t,`vite`);let a=`export default defineConfig<${i}>(${JSON.stringify(t,null,4)});`,o=n?T(C(n),e,i,r):[];if(o.length>0){for(;o.length>0&&o[o.length-1].trim()===``;)o.pop();return[...o,``,a,``].join(`
3
+ `)}const k=O(`vite-plus`);function A(e,t){if(e!=null){if(typeof e==`function`)throw Error(`vite.shim "static" cannot serialize a function (${t}). Use \`vite.shim: "runtime"\` for dynamic configs.`);if(typeof e==`symbol`||typeof e==`bigint`||e instanceof RegExp)throw Error(`vite.shim "static" cannot serialize ${typeof e} (${t}). Use \`vite.shim: "runtime"\` for dynamic configs.`);if(Array.isArray(e))e.forEach((e,n)=>A(e,`${t}[${n}]`));else if(typeof e==`object`){if(!n(e))throw Error(`vite.shim "static" cannot serialize a non-plain object (${t}). Use \`vite.shim: "runtime"\` for dynamic configs.`);for(let[n,r]of Object.entries(e))A(r,t?`${t}.${n}`:n)}}}function j(e,t,n,r=E){let i=v(e);A(t,`vite`);let a=`export default defineConfig<${i}>(${JSON.stringify(t,null,4)});`,o=n?D(T(n),e,i,r):[];if(o.length>0){for(;o.length>0&&o[o.length-1].trim()===``;)o.pop();return[...o,``,a,``].join(`
4
4
  `)}return["// Generated by @deltabox/toolchain - edit the vite section in dbx.config and run `dbx sync`.",`import { defineConfig, type ${i} } from '${e}';`,``,a,``].join(`
5
- `)}const A=`.oxfmtrc.json`,j=`.oxlintrc.json`;function M(e,t){let r=n(t)?t:{};return`${JSON.stringify({$schema:e,...r},null,4)}\n`}function N(){return{name:`vite`,projectTypes:[`monorepo-root`,`monorepo-workspace`,`project`],enabled:e=>c(e.vite)||c(e.fmt)||c(e.lint),run:t=>{let n=c(t.config.vite),r=s(t.config.vite)??{},l=t.ownConfig??t.config,u=c(l.vite)?s(l.vite)??{}:{},p=c(l.fmt)?s(l.fmt)?.oxc:void 0,m=c(l.lint)?s(l.lint)?.oxc:void 0,g={...r},_=a(t.config),y=o(t.config);_!==void 0&&(g.fmt=_),y!==void 0&&(g.lint=y);let b=f(g),x=[],S=r.config,C=S===!1?void 0:typeof S==`string`&&S.trim()?S:`vite.config.ts`;if(n&&C){let n;try{let r=e.isAbsolute(C)?C:e.resolve(t.cwd,C);n=d.readFileSync(r,`utf-8`)}catch{n=void 0}let a=h(t.cwd),o=v(r.shimImport,t.cwd);x.push({path:C,content:r.shim===`static`?k(a,i(b,t.tokens),n,o):E(a,n,o)})}let w=(p!==void 0||u.fmt!==void 0)&&b.fmt!==void 0&&b.fmt!==!1,T=(m!==void 0||u.lint!==void 0)&&b.lint!==void 0&&b.lint!==!1;return w&&x.push({path:A,content:M(`./node_modules/oxfmt/configuration_schema.json`,b.fmt)}),T&&x.push({path:j,content:M(`./node_modules/oxlint/configuration_schema.json`,b.lint)}),x}}}export{w as DEFAULT_RESOLVE_IMPORT,A as OXC_FMT_CONFIG_FILE,j as OXC_LINT_CONFIG_FILE,D as VITE_CONFIG_SHIM,h as detectViteSpecifier,k as renderStaticViteConfig,E as renderViteConfig,v as resolveShimImport,f as viteConfigObject,N as viteSyncTask};
5
+ `)}const M=`.oxfmtrc.json`,N=`.oxlintrc.json`;function P(e,t){let r=n(t)?t:{};return`${JSON.stringify({$schema:e,...r},null,4)}\n`}function F(){return{name:`vite`,projectTypes:[`monorepo-root`,`monorepo-workspace`,`project`],enabled:e=>c(e.vite)||c(e.fmt)||c(e.lint),run:async t=>{let r=c(t.config.vite),l=s(t.config.vite)??{},u=t.ownConfig??t.config,h=c(u.vite)?s(u.vite)??{}:{},g=c(u.fmt)?s(u.fmt)?.oxc:void 0,v=c(u.lint)?s(u.lint)?.oxc:void 0,y={...l},x=a(t.config),S=o(t.config);x!==void 0&&(y.fmt=x),S!==void 0&&(y.lint=S);let C=m(y);if(n(C.fmt)){let e=await f({cwd:t.cwd});C.fmt=d(C.fmt,e)}let w=[],T=l.config,E=T===!1?void 0:typeof T==`string`&&T.trim()?T:`vite.config.ts`;if(r&&E){let n;try{let r=e.isAbsolute(E)?E:e.resolve(t.cwd,E);n=p.readFileSync(r,`utf-8`)}catch{n=void 0}let r=_(t.cwd),a=b(l.shimImport,t.cwd);w.push({path:E,content:l.shim===`static`?j(r,i(C,t.tokens),n,a):O(r,n,a)})}let D=(g!==void 0||h.fmt!==void 0)&&C.fmt!==void 0&&C.fmt!==!1,k=(v!==void 0||h.lint!==void 0)&&C.lint!==void 0&&C.lint!==!1;return D&&w.push({path:M,content:P(`./node_modules/oxfmt/configuration_schema.json`,C.fmt)}),k&&w.push({path:N,content:P(`./node_modules/oxlint/configuration_schema.json`,C.lint)}),w}}}export{E as DEFAULT_RESOLVE_IMPORT,M as OXC_FMT_CONFIG_FILE,N as OXC_LINT_CONFIG_FILE,k as VITE_CONFIG_SHIM,_ as detectViteSpecifier,j as renderStaticViteConfig,O as renderViteConfig,b as resolveShimImport,m as viteConfigObject,F as viteSyncTask};
package/dist/project.d.ts CHANGED
@@ -2,9 +2,9 @@ import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
3
  import { CATALOG_MARKER, CATALOG_PACKAGE_MANAGERS, Catalog, catalogFileFor, catalogsSyncTask, hasCatalog, renderPnpmWorkspace, renderYarnrc, supportsCatalogs } from "./packages/project/src/catalogs.js";
4
4
  import { projectCommands } from "./packages/project/src/cli/index.js";
5
+ import { CONFIG_EXTENSIONS, ConfigExtension, ConfigLanguage, DEFAULT_CONFIG_EXTENSION, MonorepoRootContext, ProjectContext, RootOxcFiles, SCAFFOLD_CATALOG, WorkspaceContext, WriteGeneratedFilesOptions, configFileName, configLanguage, configUsesEsm, createMonorepoRootFiles, createRootProjectFiles, createWorkspaceFiles, findRootOxcFiles, isConfigExtension, renderApplicationEntry, renderApplicationHtml, renderGitignore, renderSourceEntry, renderSourceTest, renderToolchainConfig, renderWorkspaceTsconfig, resolveConfigExtension, upsertWorkspaceTsconfig, workspaceDirForTsconfig, writeGeneratedFiles } from "./packages/project/src/typescript.js";
5
6
  import { GENERATED_CONFIG_FILENAME, GenerateProjectConfigsOptions, GenerateProjectConfigsResult, GeneratedProjectConfig, generateProjectConfigs } from "./packages/project/src/config.js";
6
7
  import { projectSyncTask } from "./packages/project/src/sync.js";
7
- import { MonorepoRootContext, ProjectContext, RootOxcFiles, SCAFFOLD_CATALOG, WorkspaceContext, WriteGeneratedFilesOptions, createMonorepoRootFiles, createRootProjectFiles, createWorkspaceFiles, findRootOxcFiles, renderApplicationEntry, renderApplicationHtml, renderGitignore, renderSourceEntry, renderSourceTest, renderToolchainConfig, renderWorkspaceTsconfig, upsertWorkspaceTsconfig, workspaceDirForTsconfig, writeGeneratedFiles } from "./packages/project/src/typescript.js";
8
8
  import "./packages/project/src/index.js";
9
9
  import { DEFAULT_PACKAGE_MANAGER_VERSIONS } from "./packages/shared/src/toolchain.js";
10
- export { CATALOG_MARKER, CATALOG_PACKAGE_MANAGERS, Catalog, DEFAULT_PACKAGE_MANAGER_VERSIONS, GENERATED_CONFIG_FILENAME, GenerateProjectConfigsOptions, GenerateProjectConfigsResult, GeneratedProjectConfig, MonorepoRootContext, ProjectContext, RootOxcFiles, SCAFFOLD_CATALOG, WorkspaceContext, WriteGeneratedFilesOptions, catalogFileFor, catalogsSyncTask, createMonorepoRootFiles, createRootProjectFiles, createWorkspaceFiles, findRootOxcFiles, generateProjectConfigs, hasCatalog, projectCommands, projectSyncTask, renderApplicationEntry, renderApplicationHtml, renderGitignore, renderPnpmWorkspace, renderSourceEntry, renderSourceTest, renderToolchainConfig, renderWorkspaceTsconfig, renderYarnrc, supportsCatalogs, upsertWorkspaceTsconfig, workspaceDirForTsconfig, writeGeneratedFiles };
10
+ export { CATALOG_MARKER, CATALOG_PACKAGE_MANAGERS, CONFIG_EXTENSIONS, Catalog, ConfigExtension, ConfigLanguage, DEFAULT_CONFIG_EXTENSION, DEFAULT_PACKAGE_MANAGER_VERSIONS, GENERATED_CONFIG_FILENAME, GenerateProjectConfigsOptions, GenerateProjectConfigsResult, GeneratedProjectConfig, MonorepoRootContext, ProjectContext, RootOxcFiles, SCAFFOLD_CATALOG, WorkspaceContext, WriteGeneratedFilesOptions, catalogFileFor, catalogsSyncTask, configFileName, configLanguage, configUsesEsm, createMonorepoRootFiles, createRootProjectFiles, createWorkspaceFiles, findRootOxcFiles, generateProjectConfigs, hasCatalog, isConfigExtension, projectCommands, projectSyncTask, renderApplicationEntry, renderApplicationHtml, renderGitignore, renderPnpmWorkspace, renderSourceEntry, renderSourceTest, renderToolchainConfig, renderWorkspaceTsconfig, renderYarnrc, resolveConfigExtension, supportsCatalogs, upsertWorkspaceTsconfig, workspaceDirForTsconfig, writeGeneratedFiles };
package/dist/project.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{DEFAULT_PACKAGE_MANAGER_VERSIONS as e}from"./packages/shared/src/toolchain.js";import{CATALOG_MARKER as t,CATALOG_PACKAGE_MANAGERS as n,catalogFileFor as r,catalogsSyncTask as i,hasCatalog as a,renderPnpmWorkspace as o,renderYarnrc as s,supportsCatalogs as c}from"./packages/project/src/catalogs.js";import{SCAFFOLD_CATALOG as l,createMonorepoRootFiles as u,createRootProjectFiles as d,createWorkspaceFiles as f,findRootOxcFiles as p,renderApplicationEntry as m,renderApplicationHtml as h,renderGitignore as g,renderSourceEntry as _,renderSourceTest as v,renderToolchainConfig as y,renderWorkspaceTsconfig as b,upsertWorkspaceTsconfig as x,workspaceDirForTsconfig as S,writeGeneratedFiles as C}from"./packages/project/src/typescript.js";import{GENERATED_CONFIG_FILENAME as w,generateProjectConfigs as T}from"./packages/project/src/config.js";import{projectCommands as E}from"./packages/project/src/cli/index.js";import{projectSyncTask as D}from"./packages/project/src/sync.js";import"./packages/project/src/index.js";export{t as CATALOG_MARKER,n as CATALOG_PACKAGE_MANAGERS,e as DEFAULT_PACKAGE_MANAGER_VERSIONS,w as GENERATED_CONFIG_FILENAME,l as SCAFFOLD_CATALOG,r as catalogFileFor,i as catalogsSyncTask,u as createMonorepoRootFiles,d as createRootProjectFiles,f as createWorkspaceFiles,p as findRootOxcFiles,T as generateProjectConfigs,a as hasCatalog,E as projectCommands,D as projectSyncTask,m as renderApplicationEntry,h as renderApplicationHtml,g as renderGitignore,o as renderPnpmWorkspace,_ as renderSourceEntry,v as renderSourceTest,y as renderToolchainConfig,b as renderWorkspaceTsconfig,s as renderYarnrc,c as supportsCatalogs,x as upsertWorkspaceTsconfig,S as workspaceDirForTsconfig,C as writeGeneratedFiles};
1
+ import"node:path";import"node:url";import.meta.url;import{DEFAULT_PACKAGE_MANAGER_VERSIONS as e}from"./packages/shared/src/toolchain.js";import{CATALOG_MARKER as t,CATALOG_PACKAGE_MANAGERS as n,catalogFileFor as r,catalogsSyncTask as i,hasCatalog as a,renderPnpmWorkspace as o,renderYarnrc as s,supportsCatalogs as c}from"./packages/project/src/catalogs.js";import{CONFIG_EXTENSIONS as l,DEFAULT_CONFIG_EXTENSION as u,SCAFFOLD_CATALOG as d,configFileName as f,configLanguage as p,configUsesEsm as m,createMonorepoRootFiles as h,createRootProjectFiles as g,createWorkspaceFiles as _,findRootOxcFiles as v,isConfigExtension as y,renderApplicationEntry as b,renderApplicationHtml as x,renderGitignore as S,renderSourceEntry as C,renderSourceTest as w,renderToolchainConfig as T,renderWorkspaceTsconfig as E,resolveConfigExtension as D,upsertWorkspaceTsconfig as O,workspaceDirForTsconfig as k,writeGeneratedFiles as A}from"./packages/project/src/typescript.js";import{GENERATED_CONFIG_FILENAME as j,generateProjectConfigs as M}from"./packages/project/src/config.js";import{projectCommands as N}from"./packages/project/src/cli/index.js";import{projectSyncTask as P}from"./packages/project/src/sync.js";import"./packages/project/src/index.js";export{t as CATALOG_MARKER,n as CATALOG_PACKAGE_MANAGERS,l as CONFIG_EXTENSIONS,u as DEFAULT_CONFIG_EXTENSION,e as DEFAULT_PACKAGE_MANAGER_VERSIONS,j as GENERATED_CONFIG_FILENAME,d as SCAFFOLD_CATALOG,r as catalogFileFor,i as catalogsSyncTask,f as configFileName,p as configLanguage,m as configUsesEsm,h as createMonorepoRootFiles,g as createRootProjectFiles,_ as createWorkspaceFiles,v as findRootOxcFiles,M as generateProjectConfigs,a as hasCatalog,y as isConfigExtension,N as projectCommands,P as projectSyncTask,b as renderApplicationEntry,x as renderApplicationHtml,S as renderGitignore,o as renderPnpmWorkspace,C as renderSourceEntry,w as renderSourceTest,T as renderToolchainConfig,E as renderWorkspaceTsconfig,s as renderYarnrc,D as resolveConfigExtension,c as supportsCatalogs,O as upsertWorkspaceTsconfig,k as workspaceDirForTsconfig,A as writeGeneratedFiles};
package/dist/shared.d.ts CHANGED
@@ -6,7 +6,7 @@ import { Colors, LOG_LEVELS, LogChannel, LogLevel, LogSuppression, Logger, Logge
6
6
  import { ChangelogAuthorInfo, ChangelogBumpRuleCallbackContext, ChangelogBumpRuleContext, ChangelogCommitFormatContext, ChangelogCommitFormatOptions, ChangelogCommitRecord, ChangelogIssueInfo, ChangelogProvider, ChangelogProviderContext, ChangelogProviderSetting } from "./packages/shared/src/changelog-callbacks.js";
7
7
  import { ChangelogGroupConfig, ChangelogGroupContext, ChangelogGroupEntry, ChangelogGroupHidden, ChangelogGroupItem, ChangelogGroupOrder, ChangelogGroupTitle, ChangelogGroupsContext, ChangelogGroupsSetting } from "./packages/shared/src/changelog-groups.js";
8
8
  import { insertMissingJsonc, mergeJsonAt, readJsonAt, readJsonFile, readJsoncAt, readJsoncFile, toJson, writeJsonFile } from "./packages/shared/src/fs-utils.js";
9
- import { DEFAULT_IGNORE_PATTERNS, IgnoreOptions, collectGitignorePatterns, isIgnoredPath, resolveIgnorePatterns } from "./packages/shared/src/ignore.js";
9
+ import { DEFAULT_FMT_IGNORE_PATTERNS, DEFAULT_IGNORE_PATTERNS, DEFAULT_LINT_IGNORE_PATTERNS, IgnoreOptions, collectGitignorePatterns, isIgnoredPath, resolveIgnorePatterns } from "./packages/shared/src/ignore.js";
10
10
  import { ERROR_MAP, ErrorId, MessageId, WARNING_MAP, WarningId, errorMessage, formatMessage, formatMessageId, warningMessage } from "./packages/shared/src/messages.js";
11
11
  import { Sortable, applyOverrides, deepMerge, isPlainObject, isUnsafeKey, mapValues, resolveSort, sort } from "./packages/shared/src/object-utils.js";
12
12
  import { AzurePipelines } from "./packages/shared/src/config-schema/generated/azure-pipelines.js";
@@ -15,7 +15,7 @@ import { GitHubWorkflow } from "./packages/shared/src/config-schema/generated/gi
15
15
  import { GitLabCi } from "./packages/shared/src/config-schema/generated/gitlab-ci.js";
16
16
  import { OxfmtConfig } from "./packages/shared/src/config-schema/generated/oxfmt-config.js";
17
17
  import { OxlintConfig } from "./packages/shared/src/config-schema/generated/oxlint-config.js";
18
- import { AzureWorkflowSetting, ChangelogBranchesConfig, ChangelogBumpRule, ChangelogBumpRuleMatch, ChangelogCommitFormatConfig, ChangelogCommitlintConfig, ChangelogConfig, ChangelogProviderConfig, ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowSetting, CiChangelogConfig, ConfigJsonValue, CustomWorkflowSettings, DbxConfigSections, GitHubWorkflowSetting, GitLabWorkflowSetting, ProjectType, ToolchainBiomeConfig, ToolchainCatalogsConfig, ToolchainCiConfig, ToolchainConfigSections, ToolchainFmtConfig, ToolchainLintConfig, ToolchainLoggerConfig, ToolchainProjectConfig, ToolchainProvidersConfig, ToolchainRegistryConfig, ToolchainRegistryPolicy, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainTsconfigOverrides, ToolchainViteConfig, ToolchainVscodeSettings, ToolchainWatchConfig, WorkflowJob, WorkflowOptions, WorkflowSetting, WorkflowStep, WorkflowStepsConfig } from "./packages/shared/src/config-types.js";
18
+ import { AzureWorkflowSetting, ChangelogBranchesConfig, ChangelogBumpRule, ChangelogBumpRuleMatch, ChangelogCommitFormatConfig, ChangelogCommitlintConfig, ChangelogConfig, ChangelogProviderConfig, ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowSetting, CiChangelogConfig, ConfigJsonValue, CustomWorkflowSettings, DbxConfigSections, GitHubWorkflowSetting, GitLabWorkflowSetting, ProjectType, ToolchainBiomeConfig, ToolchainCatalogsConfig, ToolchainCiConfig, ToolchainConfigSections, ToolchainFmtConfig, ToolchainLintConfig, ToolchainLoggerConfig, ToolchainProjectConfig, ToolchainProvidersConfig, ToolchainRegistryConfig, ToolchainRegistryPolicy, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainTsconfigOverrides, ToolchainViteConfig, ToolchainVscodeSettings, ToolchainWatchConfig, WorkflowExtra, WorkflowJob, WorkflowOptions, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, WorkflowTokens, WorkflowTriggers } from "./packages/shared/src/config-types.js";
19
19
  import { ReplacementOptions, ReplacementValue, Replacements, Replacer, applyReplacements, applyReplacementsDeep, createReplacer, defineReplacements, extractTokens, hasUnresolvedTokens, tokenPattern } from "./packages/shared/src/template.js";
20
20
  import { biomeConfigOptionsSchema, biomeConfigSchema } from "./packages/shared/src/config-schema/biome.js";
21
21
  import { catalogsConfigSchema } from "./packages/shared/src/config-schema/catalogs.js";
@@ -32,7 +32,7 @@ import { templateKindSchema, templateSourceSchema, templateSourceTypeSchema, tem
32
32
  import { tsconfigConfigSchema } from "./packages/shared/src/config-schema/tsconfig.js";
33
33
  import { viteConfigSchema } from "./packages/shared/src/config-schema/vite.js";
34
34
  import { watchConfigSchema } from "./packages/shared/src/config-schema/watch.js";
35
- import { VendorWorkflowConfig, azureWorkflowSettingSchema, customWorkflowSettingsSchema, githubWorkflowSettingSchema, gitlabWorkflowSettingSchema, isVendorWorkflowConfig, workflowConfigSchema, workflowJobSchema, workflowOptionsSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema } from "./packages/shared/src/config-schema/workflow.js";
35
+ import { VendorWorkflowConfig, azureWorkflowSettingSchema, customWorkflowSettingsSchema, githubWorkflowSettingSchema, gitlabWorkflowSettingSchema, isVendorWorkflowConfig, workflowConfigSchema, workflowExtraSchema, workflowJobSchema, workflowOptionsSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema, workflowTokensSchema, workflowTriggersSchema } from "./packages/shared/src/config-schema/workflow.js";
36
36
  import { configSchema, dbxConfigSchema, toolchainConfigSchema } from "./packages/shared/src/config-schema/index.js";
37
37
  import { CONFIG_FILE_NAMES, DEFAULT_PACKAGE_MANAGER_VERSIONS, DbxConfig, DbxConfigFunction, DbxConfigInput, FORMATTER_PRECEDENCE, FormatterTool, LINTER_PRECEDENCE, LinterTool, ManagedFile, SyncContext, SyncSummary, SyncTask, ToolchainConfig, ToolchainHooks, ToolchainSection, changelogSectionEnabled, defineConfig, repoSlugFromUrl, resolveChangelogBranches, resolveChangelogConfig, resolveCiConfig, resolveCommitlintEnabled, resolveFmtTool, resolveFmtTools, resolveLintTool, resolveLintTools, resolveOxcFmtConfig, resolveOxcLintConfig, resolveTokens, sectionConfig, sectionEnabled } from "./packages/shared/src/toolchain.js";
38
38
  import { Awaitable, GeneratedFile, JsonValue, PackageJson, ToolchainArgument, ToolchainCommand, ToolchainCommandContext, ToolchainOption } from "./packages/shared/src/types.js";
@@ -40,8 +40,8 @@ import { projectFromPackageJson, projectToPackageJson, splitPackageName } from "
40
40
  import { ToolchainProvider, ToolchainProviderAction, ToolchainProviderCommand, providerActions } from "./packages/shared/src/provider.js";
41
41
  import { RegistryPolicy, registrySourceAllowed } from "./packages/shared/src/registry-policy.js";
42
42
  import { RunOptions, SpawnCrossOptions, isCmdShim, killProcessTree, run, spawnCross } from "./packages/shared/src/run.js";
43
- import { asString, camelCase, camelCaseId, capitalize, constantCase, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, formatCliFlag, hasEscapeArtifacts, hasText, indent, isLocalhost, kebabCase, pascalCase, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, sanitizeSlashes, sanitizeText, snakeCase, str, stripControlChars, stripEscapeArtifacts, titleCase } from "./packages/shared/src/string-utils.js";
44
- import { DEFAULT_FMT_IGNORE_PATTERNS, DEFAULT_FMT_RULES, DEFAULT_LINT_IGNORE_PATTERNS, DEFAULT_LINT_RULES, ToolchainOxfmtConfig, ToolchainOxlintConfig } from "./packages/shared/src/vite-defaults.js";
43
+ import { asString, camelCase, camelCaseId, capitalize, constantCase, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, formatCliFlag, hasEscapeArtifacts, hasText, indent, isLocalhost, kebabCase, pascalCase, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, repairBacktickArtifacts, sanitizeSlashes, sanitizeText, snakeCase, str, stripControlChars, stripEscapeArtifacts, titleCase } from "./packages/shared/src/string-utils.js";
44
+ import { DEFAULT_FMT_RULES, DEFAULT_FMT_SORT_GROUP, DEFAULT_FMT_SORT_GROUPS, DEFAULT_FMT_SORT_IMPORTS, DEFAULT_LINT_RULES, FmtCustomGroup, FmtProjectIdentity, FmtSortGroup, FmtSortImports, ToolchainOxfmtConfig, ToolchainOxlintConfig, applyFmtCustomGroups, fmtCustomGroupsForProjects } from "./packages/shared/src/vite-defaults.js";
45
45
  import { YamlValue, toYaml } from "./packages/shared/src/yaml.js";
46
46
  import "./packages/shared/src/index.js";
47
- export { Awaitable, type AzurePipelines, AzureWorkflowSetting, type BiomeConfig, CONFIG_FILE_NAMES, ChangelogAuthorInfo, ChangelogBranchesConfig, ChangelogBreakingCommit, ChangelogBreakingSetting, ChangelogBumpRule, ChangelogBumpRuleCallbackContext, ChangelogBumpRuleContext, ChangelogBumpRuleMatch, ChangelogCommitFormatConfig, ChangelogCommitFormatContext, ChangelogCommitFormatOptions, ChangelogCommitRecord, ChangelogCommitlintConfig, ChangelogConfig, ChangelogGroupConfig, ChangelogGroupContext, ChangelogGroupEntry, ChangelogGroupHidden, ChangelogGroupItem, ChangelogGroupOrder, ChangelogGroupTitle, ChangelogGroupsContext, ChangelogGroupsSetting, ChangelogIssueInfo, ChangelogProvider, ChangelogProviderConfig, ChangelogProviderContext, ChangelogProviderSetting, ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowSetting, CiChangelogConfig, Colors, ConfigJsonValue, CustomWorkflowSettings, DEFAULT_FMT_IGNORE_PATTERNS, DEFAULT_FMT_RULES, DEFAULT_IGNORE_PATTERNS, DEFAULT_LINT_IGNORE_PATTERNS, DEFAULT_LINT_RULES, DEFAULT_PACKAGE_MANAGER_VERSIONS, DbxConfig, DbxConfigFunction, DbxConfigInput, DbxConfigSections, ENABLED_DESCRIPTION, ERROR_MAP, ErrorId, FORMATTER_PRECEDENCE, FormatterTool, GeneratedFile, type GitHubWorkflow, GitHubWorkflowSetting, type GitLabCi, GitLabWorkflowSetting, IgnoreOptions, JsonValue, LINTER_PRECEDENCE, LOG_LEVELS, LinterTool, LogChannel, LogLevel, LogSuppression, Logger, LoggerConfig, LoggerOptions, ManagedFile, MessageId, type OxfmtConfig, type OxlintConfig, PackageJson, ProjectType, RegistryPolicy, ReplacementOptions, ReplacementValue, Replacements, Replacer, RunOptions, Sortable, SpawnCrossOptions, SyncContext, SyncSummary, SyncTask, TOOLCHAIN_PACKAGE, ToolchainArgument, ToolchainBiomeConfig, ToolchainCatalogsConfig, ToolchainCiConfig, ToolchainCommand, ToolchainCommandContext, ToolchainConfig, ToolchainConfigSections, ToolchainFmtConfig, ToolchainHooks, ToolchainLintConfig, ToolchainLogger, ToolchainLoggerConfig, ToolchainOption, ToolchainOxfmtConfig, ToolchainOxlintConfig, ToolchainProjectConfig, ToolchainProvider, ToolchainProviderAction, ToolchainProviderCommand, ToolchainProvidersConfig, ToolchainRegistryConfig, ToolchainRegistryPolicy, ToolchainSection, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainTsconfigOverrides, ToolchainViteConfig, ToolchainVscodeSettings, ToolchainWatchConfig, VendorWorkflowConfig, WARNING_MAP, WarningId, WorkflowJob, WorkflowOptions, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, type YamlValue, applyOverrides, applyReplacements, applyReplacementsDeep, asString, azureWorkflowSettingSchema, biomeConfigOptionsSchema, biomeConfigSchema, camelCase, camelCaseId, capitalize, catalogsConfigSchema, changelogBranchesConfigSchema, changelogBreakingCallbackSchema, changelogBreakingSettingSchema, changelogBumpRuleMatchSchema, changelogBumpRuleSchema, changelogCommitFormatConfigSchema, changelogCommitlintConfigSchema, changelogConfigSchema, changelogGroupConfigSchema, changelogGroupsSettingSchema, changelogProviderConfigSchema, changelogProviderSettingSchema, changelogSectionEnabled, changelogVersioningConfigSchema, changelogVersioningSchema, changelogVersioningTargetSchema, changelogWorkflowSettingSchema, ciChangelogConfigSchema, ciConfigSchema, collectGitignorePatterns, configJsonValueSchema, configSchema, configureLogger, constantCase, createLogger, createReplacer, customWorkflowSettingsSchema, dbxConfigSchema, deepMerge, defineConfig, defineReplacements, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, errorMessage, extractTokens, findOwnCliEntry, fmtConfigSchema, formatCliFlag, formatMessage, formatMessageId, getLogOverrides, getLogger, githubWorkflowSettingSchema, gitlabWorkflowSettingSchema, hasEscapeArtifacts, hasText, hasUnresolvedTokens, indent, insertMissingJsonc, isCmdShim, isIgnoredPath, isLocalhost, isLogLevel, isPlainObject, isUnsafeKey, isVendorWorkflowConfig, kebabCase, killProcessTree, lintConfigSchema, localToolchainVersion, logger, loggerConfigSchema, mapValues, mergeJsonAt, normalizeLogLevel, pascalCase, projectConfigSchema, projectFromPackageJson, projectToPackageJson, projectTypeSchema, providerActions, providersConfigSchema, readJsonAt, readJsonFile, readJsoncAt, readJsoncFile, registryConfigSchema, registryPolicySchema, registrySourceAllowed, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, repoSlugFromUrl, resolveChangelogBranches, resolveChangelogConfig, resolveCiConfig, resolveCommitlintEnabled, resolveFmtTool, resolveFmtTools, resolveIgnorePatterns, resolveLintTool, resolveLintTools, resolveOxcFmtConfig, resolveOxcLintConfig, resolveSort, resolveTokens, run, sanitizeSlashes, sanitizeText, section, sectionConfig, sectionEnabled, setLogConfig, setLogOverrides, snakeCase, sort, spawnCross, splitPackageName, str, stripAnsi, stripControlChars, stripEscapeArtifacts, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, titleCase, toJson, toYaml, tokenPattern, toolchainConfigSchema, tsconfigConfigSchema, viteConfigSchema, vscodeSettingsSchema, warningMessage, watchConfigSchema, withEnabled, workflowConfigSchema, workflowJobSchema, workflowOptionsSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema, writeJsonFile };
47
+ export { Awaitable, type AzurePipelines, AzureWorkflowSetting, type BiomeConfig, CONFIG_FILE_NAMES, ChangelogAuthorInfo, ChangelogBranchesConfig, ChangelogBreakingCommit, ChangelogBreakingSetting, ChangelogBumpRule, ChangelogBumpRuleCallbackContext, ChangelogBumpRuleContext, ChangelogBumpRuleMatch, ChangelogCommitFormatConfig, ChangelogCommitFormatContext, ChangelogCommitFormatOptions, ChangelogCommitRecord, ChangelogCommitlintConfig, ChangelogConfig, ChangelogGroupConfig, ChangelogGroupContext, ChangelogGroupEntry, ChangelogGroupHidden, ChangelogGroupItem, ChangelogGroupOrder, ChangelogGroupTitle, ChangelogGroupsContext, ChangelogGroupsSetting, ChangelogIssueInfo, ChangelogProvider, ChangelogProviderConfig, ChangelogProviderContext, ChangelogProviderSetting, ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowSetting, CiChangelogConfig, Colors, ConfigJsonValue, CustomWorkflowSettings, DEFAULT_FMT_IGNORE_PATTERNS, DEFAULT_FMT_RULES, DEFAULT_FMT_SORT_GROUP, DEFAULT_FMT_SORT_GROUPS, DEFAULT_FMT_SORT_IMPORTS, DEFAULT_IGNORE_PATTERNS, DEFAULT_LINT_IGNORE_PATTERNS, DEFAULT_LINT_RULES, DEFAULT_PACKAGE_MANAGER_VERSIONS, DbxConfig, DbxConfigFunction, DbxConfigInput, DbxConfigSections, ENABLED_DESCRIPTION, ERROR_MAP, ErrorId, FORMATTER_PRECEDENCE, FmtCustomGroup, FmtProjectIdentity, FmtSortGroup, FmtSortImports, FormatterTool, GeneratedFile, type GitHubWorkflow, GitHubWorkflowSetting, type GitLabCi, GitLabWorkflowSetting, IgnoreOptions, JsonValue, LINTER_PRECEDENCE, LOG_LEVELS, LinterTool, LogChannel, LogLevel, LogSuppression, Logger, LoggerConfig, LoggerOptions, ManagedFile, MessageId, type OxfmtConfig, type OxlintConfig, PackageJson, ProjectType, RegistryPolicy, ReplacementOptions, ReplacementValue, Replacements, Replacer, RunOptions, Sortable, SpawnCrossOptions, SyncContext, SyncSummary, SyncTask, TOOLCHAIN_PACKAGE, ToolchainArgument, ToolchainBiomeConfig, ToolchainCatalogsConfig, ToolchainCiConfig, ToolchainCommand, ToolchainCommandContext, ToolchainConfig, ToolchainConfigSections, ToolchainFmtConfig, ToolchainHooks, ToolchainLintConfig, ToolchainLogger, ToolchainLoggerConfig, ToolchainOption, ToolchainOxfmtConfig, ToolchainOxlintConfig, ToolchainProjectConfig, ToolchainProvider, ToolchainProviderAction, ToolchainProviderCommand, ToolchainProvidersConfig, ToolchainRegistryConfig, ToolchainRegistryPolicy, ToolchainSection, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainTsconfigOverrides, ToolchainViteConfig, ToolchainVscodeSettings, ToolchainWatchConfig, VendorWorkflowConfig, WARNING_MAP, WarningId, WorkflowExtra, WorkflowJob, WorkflowOptions, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, WorkflowTokens, WorkflowTriggers, type YamlValue, applyFmtCustomGroups, applyOverrides, applyReplacements, applyReplacementsDeep, asString, azureWorkflowSettingSchema, biomeConfigOptionsSchema, biomeConfigSchema, camelCase, camelCaseId, capitalize, catalogsConfigSchema, changelogBranchesConfigSchema, changelogBreakingCallbackSchema, changelogBreakingSettingSchema, changelogBumpRuleMatchSchema, changelogBumpRuleSchema, changelogCommitFormatConfigSchema, changelogCommitlintConfigSchema, changelogConfigSchema, changelogGroupConfigSchema, changelogGroupsSettingSchema, changelogProviderConfigSchema, changelogProviderSettingSchema, changelogSectionEnabled, changelogVersioningConfigSchema, changelogVersioningSchema, changelogVersioningTargetSchema, changelogWorkflowSettingSchema, ciChangelogConfigSchema, ciConfigSchema, collectGitignorePatterns, configJsonValueSchema, configSchema, configureLogger, constantCase, createLogger, createReplacer, customWorkflowSettingsSchema, dbxConfigSchema, deepMerge, defineConfig, defineReplacements, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, errorMessage, extractTokens, findOwnCliEntry, fmtConfigSchema, fmtCustomGroupsForProjects, formatCliFlag, formatMessage, formatMessageId, getLogOverrides, getLogger, githubWorkflowSettingSchema, gitlabWorkflowSettingSchema, hasEscapeArtifacts, hasText, hasUnresolvedTokens, indent, insertMissingJsonc, isCmdShim, isIgnoredPath, isLocalhost, isLogLevel, isPlainObject, isUnsafeKey, isVendorWorkflowConfig, kebabCase, killProcessTree, lintConfigSchema, localToolchainVersion, logger, loggerConfigSchema, mapValues, mergeJsonAt, normalizeLogLevel, pascalCase, projectConfigSchema, projectFromPackageJson, projectToPackageJson, projectTypeSchema, providerActions, providersConfigSchema, readJsonAt, readJsonFile, readJsoncAt, readJsoncFile, registryConfigSchema, registryPolicySchema, registrySourceAllowed, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, repairBacktickArtifacts, repoSlugFromUrl, resolveChangelogBranches, resolveChangelogConfig, resolveCiConfig, resolveCommitlintEnabled, resolveFmtTool, resolveFmtTools, resolveIgnorePatterns, resolveLintTool, resolveLintTools, resolveOxcFmtConfig, resolveOxcLintConfig, resolveSort, resolveTokens, run, sanitizeSlashes, sanitizeText, section, sectionConfig, sectionEnabled, setLogConfig, setLogOverrides, snakeCase, sort, spawnCross, splitPackageName, str, stripAnsi, stripControlChars, stripEscapeArtifacts, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, titleCase, toJson, toYaml, tokenPattern, toolchainConfigSchema, tsconfigConfigSchema, viteConfigSchema, vscodeSettingsSchema, warningMessage, watchConfigSchema, withEnabled, workflowConfigSchema, workflowExtraSchema, workflowJobSchema, workflowOptionsSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema, workflowTokensSchema, workflowTriggersSchema, writeJsonFile };
package/dist/shared.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{TOOLCHAIN_PACKAGE as e,findOwnCliEntry as t,localToolchainVersion as n}from"./packages/shared/src/bin.js";import{applyOverrides as r,deepMerge as i,isPlainObject as a,isUnsafeKey as o,mapValues as s,resolveSort as c,sort as l}from"./packages/shared/src/object-utils.js";import{insertMissingJsonc as u,mergeJsonAt as d,readJsonAt as f,readJsonFile as p,readJsoncAt as m,readJsoncFile as h,toJson as g,writeJsonFile as _}from"./packages/shared/src/fs-utils.js";import{DEFAULT_IGNORE_PATTERNS as v,collectGitignorePatterns as y,isIgnoredPath as b,resolveIgnorePatterns as x}from"./packages/shared/src/ignore.js";import{ERROR_MAP as S,WARNING_MAP as C,errorMessage as w,formatMessage as T,formatMessageId as E,warningMessage as D}from"./packages/shared/src/messages.js";import{LOG_LEVELS as O,configureLogger as k,createLogger as A,getLogOverrides as j,getLogger as M,isLogLevel as N,logger as P,normalizeLogLevel as F,setLogConfig as I,setLogOverrides as L,stripAnsi as R}from"./packages/shared/src/logger.js";import{projectFromPackageJson as z,projectToPackageJson as B,splitPackageName as V}from"./packages/shared/src/project.js";import{providerActions as H}from"./packages/shared/src/provider.js";import{registrySourceAllowed as U}from"./packages/shared/src/registry-policy.js";import{isCmdShim as W,killProcessTree as G,run as K,spawnCross as q}from"./packages/shared/src/run.js";import{asString as J,camelCase as Y,camelCaseId as X,capitalize as Z,constantCase as Q,ensureLeadingSlash as $,ensureSlashes as ee,ensureTrailingSlash as te,formatCliFlag as ne,hasEscapeArtifacts as re,hasText as ie,indent as ae,isLocalhost as oe,kebabCase as se,pascalCase as ce,removeDoubleSlashes as le,removeLeadingSlash as ue,removeTrailingSlash as de,sanitizeSlashes as fe,sanitizeText as pe,snakeCase as me,str as he,stripControlChars as ge,stripEscapeArtifacts as _e,titleCase as ve}from"./packages/shared/src/string-utils.js";import{applyReplacements as ye,applyReplacementsDeep as be,createReplacer as xe,defineReplacements as Se,extractTokens as Ce,hasUnresolvedTokens as we,tokenPattern as Te}from"./packages/shared/src/template.js";import{configJsonValueSchema as Ee}from"./packages/shared/src/config-schema/json.js";import{ENABLED_DESCRIPTION as De,section as Oe,withEnabled as ke}from"./packages/shared/src/config-schema/meta.js";import{azureWorkflowSettingSchema as Ae,customWorkflowSettingsSchema as je,githubWorkflowSettingSchema as Me,gitlabWorkflowSettingSchema as Ne,isVendorWorkflowConfig as Pe,workflowConfigSchema as Fe,workflowJobSchema as Ie,workflowOptionsSchema as Le,workflowSettingSchema as Re,workflowStepSchema as ze,workflowStepsConfigSchema as Be}from"./packages/shared/src/config-schema/workflow.js";import{biomeConfigOptionsSchema as Ve,biomeConfigSchema as He}from"./packages/shared/src/config-schema/biome.js";import{catalogsConfigSchema as Ue}from"./packages/shared/src/config-schema/catalogs.js";import{changelogBranchesConfigSchema as We,changelogBreakingCallbackSchema as Ge,changelogBreakingSettingSchema as Ke,changelogBumpRuleMatchSchema as qe,changelogBumpRuleSchema as Je,changelogCommitFormatConfigSchema as Ye,changelogCommitlintConfigSchema as Xe,changelogConfigSchema as Ze,changelogGroupConfigSchema as Qe,changelogGroupsSettingSchema as $e,changelogProviderConfigSchema as et,changelogProviderSettingSchema as tt,changelogVersioningConfigSchema as nt,changelogVersioningSchema as rt,changelogVersioningTargetSchema as it,changelogWorkflowSettingSchema as at,ciChangelogConfigSchema as ot}from"./packages/shared/src/config-schema/changelog.js";import{ciConfigSchema as st}from"./packages/shared/src/config-schema/ci.js";import{fmtConfigSchema as ct,lintConfigSchema as lt,vscodeSettingsSchema as ut}from"./packages/shared/src/config-schema/format.js";import{loggerConfigSchema as dt}from"./packages/shared/src/config-schema/logger.js";import{projectConfigSchema as ft,projectTypeSchema as pt}from"./packages/shared/src/config-schema/project.js";import{providersConfigSchema as mt}from"./packages/shared/src/config-schema/providers.js";import{registryConfigSchema as ht,registryPolicySchema as gt}from"./packages/shared/src/config-schema/registry.js";import{templateKindSchema as _t,templateSourceSchema as vt,templateSourceTypeSchema as yt,templatesConfigSchema as bt}from"./packages/shared/src/config-schema/templates.js";import{tsconfigConfigSchema as xt}from"./packages/shared/src/config-schema/tsconfig.js";import{viteConfigSchema as St}from"./packages/shared/src/config-schema/vite.js";import{watchConfigSchema as Ct}from"./packages/shared/src/config-schema/watch.js";import{configSchema as wt,dbxConfigSchema as Tt,toolchainConfigSchema as Et}from"./packages/shared/src/config-schema/index.js";import{CONFIG_FILE_NAMES as Dt,DEFAULT_PACKAGE_MANAGER_VERSIONS as Ot,FORMATTER_PRECEDENCE as kt,LINTER_PRECEDENCE as At,changelogSectionEnabled as jt,defineConfig as Mt,repoSlugFromUrl as Nt,resolveChangelogBranches as Pt,resolveChangelogConfig as Ft,resolveCiConfig as It,resolveCommitlintEnabled as Lt,resolveFmtTool as Rt,resolveFmtTools as zt,resolveLintTool as Bt,resolveLintTools as Vt,resolveOxcFmtConfig as Ht,resolveOxcLintConfig as Ut,resolveTokens as Wt,sectionConfig as Gt,sectionEnabled as Kt}from"./packages/shared/src/toolchain.js";import{DEFAULT_FMT_IGNORE_PATTERNS as qt,DEFAULT_FMT_RULES as Jt,DEFAULT_LINT_IGNORE_PATTERNS as Yt,DEFAULT_LINT_RULES as Xt}from"./packages/shared/src/vite-defaults.js";import{toYaml as Zt}from"./packages/shared/src/yaml.js";import"./packages/shared/src/index.js";export{Dt as CONFIG_FILE_NAMES,qt as DEFAULT_FMT_IGNORE_PATTERNS,Jt as DEFAULT_FMT_RULES,v as DEFAULT_IGNORE_PATTERNS,Yt as DEFAULT_LINT_IGNORE_PATTERNS,Xt as DEFAULT_LINT_RULES,Ot as DEFAULT_PACKAGE_MANAGER_VERSIONS,De as ENABLED_DESCRIPTION,S as ERROR_MAP,kt as FORMATTER_PRECEDENCE,At as LINTER_PRECEDENCE,O as LOG_LEVELS,e as TOOLCHAIN_PACKAGE,C as WARNING_MAP,r as applyOverrides,ye as applyReplacements,be as applyReplacementsDeep,J as asString,Ae as azureWorkflowSettingSchema,Ve as biomeConfigOptionsSchema,He as biomeConfigSchema,Y as camelCase,X as camelCaseId,Z as capitalize,Ue as catalogsConfigSchema,We as changelogBranchesConfigSchema,Ge as changelogBreakingCallbackSchema,Ke as changelogBreakingSettingSchema,qe as changelogBumpRuleMatchSchema,Je as changelogBumpRuleSchema,Ye as changelogCommitFormatConfigSchema,Xe as changelogCommitlintConfigSchema,Ze as changelogConfigSchema,Qe as changelogGroupConfigSchema,$e as changelogGroupsSettingSchema,et as changelogProviderConfigSchema,tt as changelogProviderSettingSchema,jt as changelogSectionEnabled,nt as changelogVersioningConfigSchema,rt as changelogVersioningSchema,it as changelogVersioningTargetSchema,at as changelogWorkflowSettingSchema,ot as ciChangelogConfigSchema,st as ciConfigSchema,y as collectGitignorePatterns,Ee as configJsonValueSchema,wt as configSchema,k as configureLogger,Q as constantCase,A as createLogger,xe as createReplacer,je as customWorkflowSettingsSchema,Tt as dbxConfigSchema,i as deepMerge,Mt as defineConfig,Se as defineReplacements,$ as ensureLeadingSlash,ee as ensureSlashes,te as ensureTrailingSlash,w as errorMessage,Ce as extractTokens,t as findOwnCliEntry,ct as fmtConfigSchema,ne as formatCliFlag,T as formatMessage,E as formatMessageId,j as getLogOverrides,M as getLogger,Me as githubWorkflowSettingSchema,Ne as gitlabWorkflowSettingSchema,re as hasEscapeArtifacts,ie as hasText,we as hasUnresolvedTokens,ae as indent,u as insertMissingJsonc,W as isCmdShim,b as isIgnoredPath,oe as isLocalhost,N as isLogLevel,a as isPlainObject,o as isUnsafeKey,Pe as isVendorWorkflowConfig,se as kebabCase,G as killProcessTree,lt as lintConfigSchema,n as localToolchainVersion,P as logger,dt as loggerConfigSchema,s as mapValues,d as mergeJsonAt,F as normalizeLogLevel,ce as pascalCase,ft as projectConfigSchema,z as projectFromPackageJson,B as projectToPackageJson,pt as projectTypeSchema,H as providerActions,mt as providersConfigSchema,f as readJsonAt,p as readJsonFile,m as readJsoncAt,h as readJsoncFile,ht as registryConfigSchema,gt as registryPolicySchema,U as registrySourceAllowed,le as removeDoubleSlashes,ue as removeLeadingSlash,de as removeTrailingSlash,Nt as repoSlugFromUrl,Pt as resolveChangelogBranches,Ft as resolveChangelogConfig,It as resolveCiConfig,Lt as resolveCommitlintEnabled,Rt as resolveFmtTool,zt as resolveFmtTools,x as resolveIgnorePatterns,Bt as resolveLintTool,Vt as resolveLintTools,Ht as resolveOxcFmtConfig,Ut as resolveOxcLintConfig,c as resolveSort,Wt as resolveTokens,K as run,fe as sanitizeSlashes,pe as sanitizeText,Oe as section,Gt as sectionConfig,Kt as sectionEnabled,I as setLogConfig,L as setLogOverrides,me as snakeCase,l as sort,q as spawnCross,V as splitPackageName,he as str,R as stripAnsi,ge as stripControlChars,_e as stripEscapeArtifacts,_t as templateKindSchema,vt as templateSourceSchema,yt as templateSourceTypeSchema,bt as templatesConfigSchema,ve as titleCase,g as toJson,Zt as toYaml,Te as tokenPattern,Et as toolchainConfigSchema,xt as tsconfigConfigSchema,St as viteConfigSchema,ut as vscodeSettingsSchema,D as warningMessage,Ct as watchConfigSchema,ke as withEnabled,Fe as workflowConfigSchema,Ie as workflowJobSchema,Le as workflowOptionsSchema,Re as workflowSettingSchema,ze as workflowStepSchema,Be as workflowStepsConfigSchema,_ as writeJsonFile};
1
+ import"node:path";import"node:url";import.meta.url;import{TOOLCHAIN_PACKAGE as e,findOwnCliEntry as t,localToolchainVersion as n}from"./packages/shared/src/bin.js";import{applyOverrides as r,deepMerge as i,isPlainObject as a,isUnsafeKey as o,mapValues as s,resolveSort as c,sort as l}from"./packages/shared/src/object-utils.js";import{insertMissingJsonc as u,mergeJsonAt as d,readJsonAt as f,readJsonFile as p,readJsoncAt as m,readJsoncFile as h,toJson as g,writeJsonFile as _}from"./packages/shared/src/fs-utils.js";import{DEFAULT_FMT_IGNORE_PATTERNS as v,DEFAULT_IGNORE_PATTERNS as y,DEFAULT_LINT_IGNORE_PATTERNS as b,collectGitignorePatterns as x,isIgnoredPath as S,resolveIgnorePatterns as C}from"./packages/shared/src/ignore.js";import{ERROR_MAP as w,WARNING_MAP as T,errorMessage as E,formatMessage as D,formatMessageId as O,warningMessage as k}from"./packages/shared/src/messages.js";import{LOG_LEVELS as A,configureLogger as j,createLogger as M,getLogOverrides as N,getLogger as P,isLogLevel as F,logger as I,normalizeLogLevel as L,setLogConfig as R,setLogOverrides as z,stripAnsi as B}from"./packages/shared/src/logger.js";import{projectFromPackageJson as V,projectToPackageJson as H,splitPackageName as U}from"./packages/shared/src/project.js";import{providerActions as W}from"./packages/shared/src/provider.js";import{registrySourceAllowed as G}from"./packages/shared/src/registry-policy.js";import{isCmdShim as K,killProcessTree as q,run as J,spawnCross as Y}from"./packages/shared/src/run.js";import{asString as X,camelCase as Z,camelCaseId as Q,capitalize as $,constantCase as ee,ensureLeadingSlash as te,ensureSlashes as ne,ensureTrailingSlash as re,formatCliFlag as ie,hasEscapeArtifacts as ae,hasText as oe,indent as se,isLocalhost as ce,kebabCase as le,pascalCase as ue,removeDoubleSlashes as de,removeLeadingSlash as fe,removeTrailingSlash as pe,repairBacktickArtifacts as me,sanitizeSlashes as he,sanitizeText as ge,snakeCase as _e,str as ve,stripControlChars as ye,stripEscapeArtifacts as be,titleCase as xe}from"./packages/shared/src/string-utils.js";import{applyReplacements as Se,applyReplacementsDeep as Ce,createReplacer as we,defineReplacements as Te,extractTokens as Ee,hasUnresolvedTokens as De,tokenPattern as Oe}from"./packages/shared/src/template.js";import{configJsonValueSchema as ke}from"./packages/shared/src/config-schema/json.js";import{ENABLED_DESCRIPTION as Ae,section as je,withEnabled as Me}from"./packages/shared/src/config-schema/meta.js";import{azureWorkflowSettingSchema as Ne,customWorkflowSettingsSchema as Pe,githubWorkflowSettingSchema as Fe,gitlabWorkflowSettingSchema as Ie,isVendorWorkflowConfig as Le,workflowConfigSchema as Re,workflowExtraSchema as ze,workflowJobSchema as Be,workflowOptionsSchema as Ve,workflowSettingSchema as He,workflowStepSchema as Ue,workflowStepsConfigSchema as We,workflowTokensSchema as Ge,workflowTriggersSchema as Ke}from"./packages/shared/src/config-schema/workflow.js";import{biomeConfigOptionsSchema as qe,biomeConfigSchema as Je}from"./packages/shared/src/config-schema/biome.js";import{catalogsConfigSchema as Ye}from"./packages/shared/src/config-schema/catalogs.js";import{changelogBranchesConfigSchema as Xe,changelogBreakingCallbackSchema as Ze,changelogBreakingSettingSchema as Qe,changelogBumpRuleMatchSchema as $e,changelogBumpRuleSchema as et,changelogCommitFormatConfigSchema as tt,changelogCommitlintConfigSchema as nt,changelogConfigSchema as rt,changelogGroupConfigSchema as it,changelogGroupsSettingSchema as at,changelogProviderConfigSchema as ot,changelogProviderSettingSchema as st,changelogVersioningConfigSchema as ct,changelogVersioningSchema as lt,changelogVersioningTargetSchema as ut,changelogWorkflowSettingSchema as dt,ciChangelogConfigSchema as ft}from"./packages/shared/src/config-schema/changelog.js";import{ciConfigSchema as pt}from"./packages/shared/src/config-schema/ci.js";import{fmtConfigSchema as mt,lintConfigSchema as ht,vscodeSettingsSchema as gt}from"./packages/shared/src/config-schema/format.js";import{loggerConfigSchema as _t}from"./packages/shared/src/config-schema/logger.js";import{projectConfigSchema as vt,projectTypeSchema as yt}from"./packages/shared/src/config-schema/project.js";import{providersConfigSchema as bt}from"./packages/shared/src/config-schema/providers.js";import{registryConfigSchema as xt,registryPolicySchema as St}from"./packages/shared/src/config-schema/registry.js";import{templateKindSchema as Ct,templateSourceSchema as wt,templateSourceTypeSchema as Tt,templatesConfigSchema as Et}from"./packages/shared/src/config-schema/templates.js";import{tsconfigConfigSchema as Dt}from"./packages/shared/src/config-schema/tsconfig.js";import{viteConfigSchema as Ot}from"./packages/shared/src/config-schema/vite.js";import{watchConfigSchema as kt}from"./packages/shared/src/config-schema/watch.js";import{configSchema as At,dbxConfigSchema as jt,toolchainConfigSchema as Mt}from"./packages/shared/src/config-schema/index.js";import{CONFIG_FILE_NAMES as Nt,DEFAULT_PACKAGE_MANAGER_VERSIONS as Pt,FORMATTER_PRECEDENCE as Ft,LINTER_PRECEDENCE as It,changelogSectionEnabled as Lt,defineConfig as Rt,repoSlugFromUrl as zt,resolveChangelogBranches as Bt,resolveChangelogConfig as Vt,resolveCiConfig as Ht,resolveCommitlintEnabled as Ut,resolveFmtTool as Wt,resolveFmtTools as Gt,resolveLintTool as Kt,resolveLintTools as qt,resolveOxcFmtConfig as Jt,resolveOxcLintConfig as Yt,resolveTokens as Xt,sectionConfig as Zt,sectionEnabled as Qt}from"./packages/shared/src/toolchain.js";import{DEFAULT_FMT_RULES as $t,DEFAULT_FMT_SORT_GROUP as en,DEFAULT_FMT_SORT_GROUPS as tn,DEFAULT_FMT_SORT_IMPORTS as nn,DEFAULT_LINT_RULES as rn,applyFmtCustomGroups as an,fmtCustomGroupsForProjects as on}from"./packages/shared/src/vite-defaults.js";import{toYaml as sn}from"./packages/shared/src/yaml.js";import"./packages/shared/src/index.js";export{Nt as CONFIG_FILE_NAMES,v as DEFAULT_FMT_IGNORE_PATTERNS,$t as DEFAULT_FMT_RULES,en as DEFAULT_FMT_SORT_GROUP,tn as DEFAULT_FMT_SORT_GROUPS,nn as DEFAULT_FMT_SORT_IMPORTS,y as DEFAULT_IGNORE_PATTERNS,b as DEFAULT_LINT_IGNORE_PATTERNS,rn as DEFAULT_LINT_RULES,Pt as DEFAULT_PACKAGE_MANAGER_VERSIONS,Ae as ENABLED_DESCRIPTION,w as ERROR_MAP,Ft as FORMATTER_PRECEDENCE,It as LINTER_PRECEDENCE,A as LOG_LEVELS,e as TOOLCHAIN_PACKAGE,T as WARNING_MAP,an as applyFmtCustomGroups,r as applyOverrides,Se as applyReplacements,Ce as applyReplacementsDeep,X as asString,Ne as azureWorkflowSettingSchema,qe as biomeConfigOptionsSchema,Je as biomeConfigSchema,Z as camelCase,Q as camelCaseId,$ as capitalize,Ye as catalogsConfigSchema,Xe as changelogBranchesConfigSchema,Ze as changelogBreakingCallbackSchema,Qe as changelogBreakingSettingSchema,$e as changelogBumpRuleMatchSchema,et as changelogBumpRuleSchema,tt as changelogCommitFormatConfigSchema,nt as changelogCommitlintConfigSchema,rt as changelogConfigSchema,it as changelogGroupConfigSchema,at as changelogGroupsSettingSchema,ot as changelogProviderConfigSchema,st as changelogProviderSettingSchema,Lt as changelogSectionEnabled,ct as changelogVersioningConfigSchema,lt as changelogVersioningSchema,ut as changelogVersioningTargetSchema,dt as changelogWorkflowSettingSchema,ft as ciChangelogConfigSchema,pt as ciConfigSchema,x as collectGitignorePatterns,ke as configJsonValueSchema,At as configSchema,j as configureLogger,ee as constantCase,M as createLogger,we as createReplacer,Pe as customWorkflowSettingsSchema,jt as dbxConfigSchema,i as deepMerge,Rt as defineConfig,Te as defineReplacements,te as ensureLeadingSlash,ne as ensureSlashes,re as ensureTrailingSlash,E as errorMessage,Ee as extractTokens,t as findOwnCliEntry,mt as fmtConfigSchema,on as fmtCustomGroupsForProjects,ie as formatCliFlag,D as formatMessage,O as formatMessageId,N as getLogOverrides,P as getLogger,Fe as githubWorkflowSettingSchema,Ie as gitlabWorkflowSettingSchema,ae as hasEscapeArtifacts,oe as hasText,De as hasUnresolvedTokens,se as indent,u as insertMissingJsonc,K as isCmdShim,S as isIgnoredPath,ce as isLocalhost,F as isLogLevel,a as isPlainObject,o as isUnsafeKey,Le as isVendorWorkflowConfig,le as kebabCase,q as killProcessTree,ht as lintConfigSchema,n as localToolchainVersion,I as logger,_t as loggerConfigSchema,s as mapValues,d as mergeJsonAt,L as normalizeLogLevel,ue as pascalCase,vt as projectConfigSchema,V as projectFromPackageJson,H as projectToPackageJson,yt as projectTypeSchema,W as providerActions,bt as providersConfigSchema,f as readJsonAt,p as readJsonFile,m as readJsoncAt,h as readJsoncFile,xt as registryConfigSchema,St as registryPolicySchema,G as registrySourceAllowed,de as removeDoubleSlashes,fe as removeLeadingSlash,pe as removeTrailingSlash,me as repairBacktickArtifacts,zt as repoSlugFromUrl,Bt as resolveChangelogBranches,Vt as resolveChangelogConfig,Ht as resolveCiConfig,Ut as resolveCommitlintEnabled,Wt as resolveFmtTool,Gt as resolveFmtTools,C as resolveIgnorePatterns,Kt as resolveLintTool,qt as resolveLintTools,Jt as resolveOxcFmtConfig,Yt as resolveOxcLintConfig,c as resolveSort,Xt as resolveTokens,J as run,he as sanitizeSlashes,ge as sanitizeText,je as section,Zt as sectionConfig,Qt as sectionEnabled,R as setLogConfig,z as setLogOverrides,_e as snakeCase,l as sort,Y as spawnCross,U as splitPackageName,ve as str,B as stripAnsi,ye as stripControlChars,be as stripEscapeArtifacts,Ct as templateKindSchema,wt as templateSourceSchema,Tt as templateSourceTypeSchema,Et as templatesConfigSchema,xe as titleCase,g as toJson,sn as toYaml,Oe as tokenPattern,Mt as toolchainConfigSchema,Dt as tsconfigConfigSchema,Ot as viteConfigSchema,gt as vscodeSettingsSchema,k as warningMessage,kt as watchConfigSchema,Me as withEnabled,Re as workflowConfigSchema,ze as workflowExtraSchema,Be as workflowJobSchema,Ve as workflowOptionsSchema,He as workflowSettingSchema,Ue as workflowStepSchema,We as workflowStepsConfigSchema,Ge as workflowTokensSchema,Ke as workflowTriggersSchema,_ as writeJsonFile};
package/dist/tooling.js CHANGED
@@ -1 +1 @@
1
- import{default as e}from"node:path";import"node:url";import.meta.url;import{deepMerge as t,isPlainObject as n}from"./packages/shared/src/object-utils.js";import{readJsonAt as r,readJsoncAt as i}from"./packages/shared/src/fs-utils.js";import{warningMessage as a}from"./packages/shared/src/messages.js";import{FORMATTER_PRECEDENCE as o,LINTER_PRECEDENCE as s,resolveFmtTools as c,resolveLintTools as l,sectionConfig as u,sectionEnabled as d}from"./packages/shared/src/toolchain.js";import{DEFAULT_FMT_RULES as f,DEFAULT_LINT_RULES as p}from"./packages/shared/src/vite-defaults.js";import"./packages/shared/src/index.js";import{biomeToOx as m,findBiomeConfig as h,readJsonc as g}from"./packages/migrate/src/biome.js";import{dprintToOx as _,findDprintConfig as v}from"./packages/migrate/src/dprint.js";import{eslintToOx as y,findEslintConfig as b}from"./packages/migrate/src/eslint.js";import{findOxcConfigs as x}from"./packages/migrate/src/oxc.js";import{findPrettierConfig as S,prettierToOx as C}from"./packages/migrate/src/prettier.js";import"./packages/migrate/src/index.js";import w from"node:fs";import T from"node:os";const E={oxfmt:[`oxfmt`,`@oxc-project/oxfmt`,`vite-plus`],oxlint:[`oxlint`,`@oxc-project/oxlint`,`vite-plus`],biome:[`@biomejs/biome`],prettier:[`prettier`],dprint:[`dprint`],eslint:[`eslint`]},D={"oxc.oxc-vscode":`oxc`,"biomejs.biome":`biome`,"esbenp.prettier-vscode":`prettier`,"dprint.dprint":`dprint`,"dbaeumer.vscode-eslint":`eslint`},O={"source.fixAll.oxc":`oxc`,"source.fixAll.oxlint":`oxc`,"quickfix.biome":`biome`,"source.fixAll.biome":`biome`,"source.organizeImports.biome":`biome`,"source.fixAll.eslint":`eslint`};function k(t){let n=[],r=e.resolve(t);for(;n.push(r),!w.existsSync(e.join(r,`.git`));){let t=e.dirname(r);if(t===r)break;r=t}return n}function A(e){let t=/* @__PURE__ */ new Set,n=r(e,`package.json`);if(n)for(let e of[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`])for(let r of Object.keys(n[e]??{}))t.add(r);return t}function j(e,t,n){let r=A(e);return t.find(e=>!n.has(e)&&(E[e]??[]).some(e=>r.has(e)))}function M(e,t,n,r){let i=/* @__PURE__ */ new Set;return t===`fmt`?(x(e).fmt&&i.add(`oxc`),h(e)&&i.add(`biome`),S(e)&&i.add(`prettier`),v(e)&&i.add(`dprint`)):(x(e).lint&&i.add(`oxc`),h(e)&&i.add(`biome`),b(e)&&i.add(`eslint`)),n.find(e=>!r.has(e)&&i.has(e))}function N(e,t,n,r){for(let i of k(e)){let e=M(i,t,n,r);if(e)return e;let a=j(i,n,r);if(a)return a}}function P(){let t=T.homedir(),n=process.env.APPDATA;return process.platform===`win32`?[...n?[e.join(n,`Code`,`User`,`settings.json`),e.join(n,`Code - Insiders`,`User`,`settings.json`),e.join(n,`VSCodium`,`User`,`settings.json`)]:[],e.join(t,`AppData`,`Roaming`,`Code`,`User`,`settings.json`)]:process.platform===`darwin`?[e.join(t,`Library`,`Application Support`,`Code`,`User`,`settings.json`),e.join(t,`Library`,`Application Support`,`Code - Insiders`,`User`,`settings.json`)]:[e.join(t,`.config`,`Code`,`User`,`settings.json`),e.join(t,`.config`,`Code - Insiders`,`User`,`settings.json`),e.join(t,`.config`,`VSCodium`,`User`,`settings.json`)]}function F(e){let t=e?[e]:P();for(let e of t)if(w.existsSync(e))try{return g(e)}catch{continue}}function I(e,t,r,i=/* @__PURE__ */ new Set){if(!e)return;let a=/* @__PURE__ */ new Set,o=[e];for(let[t,r]of Object.entries(e))t.startsWith(`[`)&&n(r)&&o.push(r);for(let e of o)if(r===`fmt`){let t=e[`editor.defaultFormatter`];typeof t==`string`&&D[t]&&a.add(D[t])}else{let t=e[`editor.codeActionsOnSave`];if(n(t))for(let e of Object.keys(t))O[e]&&a.add(O[e])}return r===`lint`&&(e[`eslint.enable`]===!0&&a.add(`eslint`),e[`biome.enabled`]===!0&&a.add(`biome`),e[`oxc.enable`]===!0&&a.add(`oxc`)),t.find(e=>!i.has(e)&&a.has(e))}function L(e,t){let n=u(e),r=/* @__PURE__ */ new Set;for(let e of t)n?.[e]===!1&&r.add(e);return r}function R(e){let{$schema:t,...n}=e;return n}function z(e,t){let n=[...Array.isArray(e.ignorePatterns)?e.ignorePatterns:[],...Array.isArray(t.ignorePatterns)?t.ignorePatterns:[]];n.length>0&&(e.ignorePatterns=[...new Set(n)])}async function B(e){for(let t of k(e)){let e=x(t).fmt;if(e)return R(g(e))}for(let n of k(e)){let e=[];if(v(n)){let t=await _.run({cwd:n});t.oxfmt&&e.push(t.oxfmt)}if(S(n)){let t=await C.run({cwd:n});t.oxfmt&&e.push(t.oxfmt)}if(h(n)){let t=await m.run({cwd:n});t.oxfmt&&e.push(t.oxfmt)}if(e.length>0)return e.reduce((e,n)=>t(e,n),{})}}async function V(e){for(let t of k(e)){let e=x(t).lint;if(e)return R(g(e))}for(let n of k(e)){let e=[];if(b(n)){let t=await y.run({cwd:n});t.oxlint&&e.push(R(t.oxlint))}if(h(n)){let t=await m.run({cwd:n});t.oxlint&&e.push(R(t.oxlint))}if(e.length>0)return e.reduce((e,n)=>t(e,n),{})}}function H(e,t){let n=x(e);return t===`fmt`?!!(n.fmt||h(e)||S(e)||v(e)):!!(n.lint||h(e)||b(e))}function U(e,t){return k(e).some(e=>H(e,t))}function W(e,t){try{if(t===`biome`){let t=h(e);if(t)return R(g(t))}if(t===`prettier`)return S(e)?.config;if(t===`dprint`)return v(e)?.config;if(t===`eslint`){let t=b(e);if(t?.json)return R(g(t.file))}}catch{return}}function G(e,t){for(let n of k(e)){let e=W(n,t);if(e!==void 0)return e}}async function K(e,n){let r=[],a=u(e.fmt),m=u(e.lint),h=i(n.cwd,`.vscode/settings.json`),g=F(n.vscodeSettingsPath),_=U(n.cwd,`fmt`),v=U(n.cwd,`lint`);if(d(e.fmt)&&c(e).length===0){let i=L(e.fmt,o),s=I(h,o,`fmt`,i)??N(n.cwd,`fmt`,o,i)??I(g,o,`fmt`,i);!s&&!_&&r.push(`fmt.no-tool`);let c=s??`oxc`,l={...a};if(c===`oxc`){let e=await B(n.cwd),r=t(f,e??{});z(r,e??{}),l.oxc=r}else l[c]=G(n.cwd,c)??{};a=l}if(d(e.lint)&&l(e).length===0){let i=L(e.lint,s),a=I(h,s,`lint`,i)??N(n.cwd,`lint`,s,i)??I(g,s,`lint`,i);!a&&!v&&r.push(`lint.no-tool`);let o=a??`oxc`,c={...m};if(o===`oxc`){let e=await V(n.cwd),r=t(p,e??{});z(r,e??{}),c.oxc=r}else c[o]=G(n.cwd,o)??{};m=c}return{config:{...e,...a===void 0?{}:{fmt:a},...m===void 0?{}:{lint:m}},warnings:r}}function q(e={}){return{name:`tooling-defaults`,enabled:e=>d(e.fmt)||d(e.lint),run:async t=>{let n=c(t.config).length>0,r=l(t.config).length>0,i=await K(t.config,{cwd:t.cwd,...e.vscodeSettingsPath?{vscodeSettingsPath:e.vscodeSettingsPath}:{}});Object.assign(t.config,i.config);for(let e of i.warnings)t.warn(a(e),e);let o=t.ownConfig;if(o&&o!==t.config){let i=d(o.fmt)&&c(o).length===0,a=d(o.lint)&&l(o).length===0;if(i&&!n||a&&!r){let n=await K(o,{cwd:t.cwd,...e.vscodeSettingsPath?{vscodeSettingsPath:e.vscodeSettingsPath}:{}});Object.assign(o,n.config)}}return[]}}}export{K as normalizeToolingConfig,q as toolingDefaultsTask};
1
+ import{default as e}from"node:path";import"node:url";import.meta.url;import{deepMerge as t,isPlainObject as n}from"./packages/shared/src/object-utils.js";import{readJsonAt as r,readJsoncAt as i}from"./packages/shared/src/fs-utils.js";import{warningMessage as a}from"./packages/shared/src/messages.js";import{FORMATTER_PRECEDENCE as o,LINTER_PRECEDENCE as s,resolveFmtTools as c,resolveLintTools as l,sectionConfig as u,sectionEnabled as d}from"./packages/shared/src/toolchain.js";import{DEFAULT_FMT_RULES as f,DEFAULT_LINT_RULES as p,applyFmtCustomGroups as m}from"./packages/shared/src/vite-defaults.js";import"./packages/shared/src/index.js";import{resolveFmtCustomGroups as h}from"./packages/core/src/fmt-groups.js";import"./packages/core/src/index.js";import{biomeToOx as g,findBiomeConfig as _,readJsonc as v}from"./packages/migrate/src/biome.js";import{dprintToOx as y,findDprintConfig as b}from"./packages/migrate/src/dprint.js";import{eslintToOx as x,findEslintConfig as S}from"./packages/migrate/src/eslint.js";import{findOxcConfigs as C}from"./packages/migrate/src/oxc.js";import{findPrettierConfig as w,prettierToOx as T}from"./packages/migrate/src/prettier.js";import"./packages/migrate/src/index.js";import E from"node:fs";import D from"node:os";const O={oxfmt:[`oxfmt`,`@oxc-project/oxfmt`,`vite-plus`],oxlint:[`oxlint`,`@oxc-project/oxlint`,`vite-plus`],biome:[`@biomejs/biome`],prettier:[`prettier`],dprint:[`dprint`],eslint:[`eslint`]},k={"oxc.oxc-vscode":`oxc`,"biomejs.biome":`biome`,"esbenp.prettier-vscode":`prettier`,"dprint.dprint":`dprint`,"dbaeumer.vscode-eslint":`eslint`},A={"source.fixAll.oxc":`oxc`,"source.fixAll.oxlint":`oxc`,"quickfix.biome":`biome`,"source.fixAll.biome":`biome`,"source.organizeImports.biome":`biome`,"source.fixAll.eslint":`eslint`};function j(t){let n=[],r=e.resolve(t);for(;n.push(r),!E.existsSync(e.join(r,`.git`));){let t=e.dirname(r);if(t===r)break;r=t}return n}function M(e){let t=/* @__PURE__ */ new Set,n=r(e,`package.json`);if(n)for(let e of[`dependencies`,`devDependencies`,`peerDependencies`,`optionalDependencies`])for(let r of Object.keys(n[e]??{}))t.add(r);return t}function N(e,t,n){let r=M(e);return t.find(e=>!n.has(e)&&(O[e]??[]).some(e=>r.has(e)))}function P(e,t,n,r){let i=/* @__PURE__ */ new Set;return t===`fmt`?(C(e).fmt&&i.add(`oxc`),_(e)&&i.add(`biome`),w(e)&&i.add(`prettier`),b(e)&&i.add(`dprint`)):(C(e).lint&&i.add(`oxc`),_(e)&&i.add(`biome`),S(e)&&i.add(`eslint`)),n.find(e=>!r.has(e)&&i.has(e))}function F(e,t,n,r){for(let i of j(e)){let e=P(i,t,n,r);if(e)return e;let a=N(i,n,r);if(a)return a}}function I(){let t=D.homedir(),n=process.env.APPDATA;return process.platform===`win32`?[...n?[e.join(n,`Code`,`User`,`settings.json`),e.join(n,`Code - Insiders`,`User`,`settings.json`),e.join(n,`VSCodium`,`User`,`settings.json`)]:[],e.join(t,`AppData`,`Roaming`,`Code`,`User`,`settings.json`)]:process.platform===`darwin`?[e.join(t,`Library`,`Application Support`,`Code`,`User`,`settings.json`),e.join(t,`Library`,`Application Support`,`Code - Insiders`,`User`,`settings.json`)]:[e.join(t,`.config`,`Code`,`User`,`settings.json`),e.join(t,`.config`,`Code - Insiders`,`User`,`settings.json`),e.join(t,`.config`,`VSCodium`,`User`,`settings.json`)]}function L(e){let t=e?[e]:I();for(let e of t)if(E.existsSync(e))try{return v(e)}catch{continue}}function R(e,t,r,i=/* @__PURE__ */ new Set){if(!e)return;let a=/* @__PURE__ */ new Set,o=[e];for(let[t,r]of Object.entries(e))t.startsWith(`[`)&&n(r)&&o.push(r);for(let e of o)if(r===`fmt`){let t=e[`editor.defaultFormatter`];typeof t==`string`&&k[t]&&a.add(k[t])}else{let t=e[`editor.codeActionsOnSave`];if(n(t))for(let e of Object.keys(t))A[e]&&a.add(A[e])}return r===`lint`&&(e[`eslint.enable`]===!0&&a.add(`eslint`),e[`biome.enabled`]===!0&&a.add(`biome`),e[`oxc.enable`]===!0&&a.add(`oxc`)),t.find(e=>!i.has(e)&&a.has(e))}function z(e,t){let n=u(e),r=/* @__PURE__ */ new Set;for(let e of t)n?.[e]===!1&&r.add(e);return r}function B(e){let{$schema:t,...n}=e;return n}function V(e,t){let n=[...Array.isArray(e.ignorePatterns)?e.ignorePatterns:[],...Array.isArray(t.ignorePatterns)?t.ignorePatterns:[]];n.length>0&&(e.ignorePatterns=[...new Set(n)])}async function H(e){for(let t of j(e)){let e=C(t).fmt;if(e)return B(v(e))}for(let n of j(e)){let e=[];if(b(n)){let t=await y.run({cwd:n});t.oxfmt&&e.push(t.oxfmt)}if(w(n)){let t=await T.run({cwd:n});t.oxfmt&&e.push(t.oxfmt)}if(_(n)){let t=await g.run({cwd:n});t.oxfmt&&e.push(t.oxfmt)}if(e.length>0)return e.reduce((e,n)=>t(e,n),{})}}async function U(e){for(let t of j(e)){let e=C(t).lint;if(e)return B(v(e))}for(let n of j(e)){let e=[];if(S(n)){let t=await x.run({cwd:n});t.oxlint&&e.push(B(t.oxlint))}if(_(n)){let t=await g.run({cwd:n});t.oxlint&&e.push(B(t.oxlint))}if(e.length>0)return e.reduce((e,n)=>t(e,n),{})}}function W(e,t){let n=C(e);return t===`fmt`?!!(n.fmt||_(e)||w(e)||b(e)):!!(n.lint||_(e)||S(e))}function G(e,t){return j(e).some(e=>W(e,t))}function K(e,t){try{if(t===`biome`){let t=_(e);if(t)return B(v(t))}if(t===`prettier`)return w(e)?.config;if(t===`dprint`)return b(e)?.config;if(t===`eslint`){let t=S(e);if(t?.json)return B(v(t.file))}}catch{return}}function q(e,t){for(let n of j(e)){let e=K(n,t);if(e!==void 0)return e}}async function J(e,r){let a=[],g=u(e.fmt),_=u(e.lint),v=i(r.cwd,`.vscode/settings.json`),y=L(r.vscodeSettingsPath),b=G(r.cwd,`fmt`),x=G(r.cwd,`lint`);if(d(e.fmt)&&c(e).length===0){let n=z(e.fmt,o),i=R(v,o,`fmt`,n)??F(r.cwd,`fmt`,o,n)??R(y,o,`fmt`,n);!i&&!b&&a.push(`fmt.no-tool`);let s=i??`oxc`,c={...g};if(s===`oxc`){let e=await H(r.cwd),n=t(f,e??{});V(n,e??{}),c.oxc=n}else c[s]=q(r.cwd,s)??{};g=c}if(g&&n(g.oxc)){let e=await h({cwd:r.cwd});g={...g,oxc:m(g.oxc,e)}}if(d(e.lint)&&l(e).length===0){let n=z(e.lint,s),i=R(v,s,`lint`,n)??F(r.cwd,`lint`,s,n)??R(y,s,`lint`,n);!i&&!x&&a.push(`lint.no-tool`);let o=i??`oxc`,c={..._};if(o===`oxc`){let e=await U(r.cwd),n=t(p,e??{});V(n,e??{}),c.oxc=n}else c[o]=q(r.cwd,o)??{};_=c}return{config:{...e,...g===void 0?{}:{fmt:g},..._===void 0?{}:{lint:_}},warnings:a}}function Y(e={}){return{name:`tooling-defaults`,enabled:e=>d(e.fmt)||d(e.lint),run:async t=>{let n=c(t.config).length>0,r=l(t.config).length>0,i=await J(t.config,{cwd:t.cwd,...e.vscodeSettingsPath?{vscodeSettingsPath:e.vscodeSettingsPath}:{}});Object.assign(t.config,i.config);for(let e of i.warnings)t.warn(a(e),e);let o=t.ownConfig;if(o&&o!==t.config){let i=d(o.fmt)&&c(o).length===0,a=d(o.lint)&&l(o).length===0;if(i&&!n||a&&!r){let n=await J(o,{cwd:t.cwd,...e.vscodeSettingsPath?{vscodeSettingsPath:e.vscodeSettingsPath}:{}});Object.assign(o,n.config)}}return[]}}}export{J as normalizeToolingConfig,Y as toolingDefaultsTask};
package/dist/vite.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
+ import { ResolveFmtCustomGroupsInput, ResolveFmtCustomGroupsOptions, resolveFmtCustomGroups } from "./packages/core/src/fmt-groups.js";
3
4
  import { VP_COMMANDS, VpCommandInfo, VpGroup, resolveVpCommand, viteCommandName } from "./packages/vite/src/commands.js";
4
5
  import { runGuard, viteCommands } from "./packages/vite/src/cli/index.js";
5
6
  import { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, DbxTask, ResolvedDbx, dbx, dbxTaskCommand, resolveDbx, runDbx } from "./packages/vite/src/plugin.js";
@@ -8,4 +9,4 @@ import { ResolveViteInput, ResolveViteOptions, resolveVite } from "./packages/vi
8
9
  import { DEFAULT_RESOLVE_IMPORT, OXC_FMT_CONFIG_FILE, OXC_LINT_CONFIG_FILE, VITE_CONFIG_SHIM, ViteSpecifier, detectViteSpecifier, renderStaticViteConfig, renderViteConfig, resolveShimImport, viteConfigObject, viteSyncTask } from "./packages/vite/src/sync.js";
9
10
  import { ResolvedVp, RunVpOptions, VpResult, VpSource, describeVp, hasVp, resolveVp, runVp, vpVersion, which } from "./packages/vite/src/vp.js";
10
11
  import "./packages/vite/src/index.js";
11
- export { DBX_TASKS, DBX_TIMEOUT_MS, DEFAULT_RESOLVE_IMPORT, DbxPluginOptions, DbxSource, DbxTask, OXC_FMT_CONFIG_FILE, OXC_LINT_CONFIG_FILE, ResolveViteInput, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, ViteSpecifier, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, detectViteSpecifier, hasVp, renderStaticViteConfig, renderViteConfig, resolveDbx, resolveShimImport, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
12
+ export { DBX_TASKS, DBX_TIMEOUT_MS, DEFAULT_RESOLVE_IMPORT, DbxPluginOptions, DbxSource, DbxTask, OXC_FMT_CONFIG_FILE, OXC_LINT_CONFIG_FILE, type ResolveFmtCustomGroupsInput, type ResolveFmtCustomGroupsOptions, ResolveViteInput, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, ViteSpecifier, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, detectViteSpecifier, hasVp, renderStaticViteConfig, renderViteConfig, resolveDbx, resolveFmtCustomGroups, resolveShimImport, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
package/dist/vite.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{VP_COMMANDS as e,resolveVpCommand as t,viteCommandName as n}from"./packages/vite/src/commands.js";import{describeVp as r,hasVp as i,resolveVp as a,runVp as o,vpVersion as s,which as c}from"./packages/vite/src/vp.js";import{runGuard as l,viteCommands as u}from"./packages/vite/src/cli/index.js";import{DBX_TASKS as d,DBX_TIMEOUT_MS as f,dbx as p,dbxTaskCommand as m,resolveDbx as h,runDbx as g}from"./packages/vite/src/plugin.js";import{viteProvider as _}from"./packages/vite/src/provider.js";import{DEFAULT_RESOLVE_IMPORT as v,OXC_FMT_CONFIG_FILE as y,OXC_LINT_CONFIG_FILE as b,VITE_CONFIG_SHIM as x,detectViteSpecifier as S,renderStaticViteConfig as C,renderViteConfig as w,resolveShimImport as T,viteConfigObject as E,viteSyncTask as D}from"./packages/vite/src/sync.js";import{resolveVite as O}from"./packages/vite/src/resolve.js";import"./packages/vite/src/index.js";export{d as DBX_TASKS,f as DBX_TIMEOUT_MS,v as DEFAULT_RESOLVE_IMPORT,y as OXC_FMT_CONFIG_FILE,b as OXC_LINT_CONFIG_FILE,x as VITE_CONFIG_SHIM,e as VP_COMMANDS,p as dbx,m as dbxTaskCommand,r as describeVp,S as detectViteSpecifier,i as hasVp,C as renderStaticViteConfig,w as renderViteConfig,h as resolveDbx,T as resolveShimImport,O as resolveVite,a as resolveVp,t as resolveVpCommand,g as runDbx,l as runGuard,o as runVp,n as viteCommandName,u as viteCommands,E as viteConfigObject,_ as viteProvider,D as viteSyncTask,s as vpVersion,c as which};
1
+ import"node:path";import"node:url";import.meta.url;import{resolveFmtCustomGroups as e}from"./packages/core/src/fmt-groups.js";import{VP_COMMANDS as t,resolveVpCommand as n,viteCommandName as r}from"./packages/vite/src/commands.js";import{describeVp as i,hasVp as a,resolveVp as o,runVp as s,vpVersion as c,which as l}from"./packages/vite/src/vp.js";import{runGuard as u,viteCommands as d}from"./packages/vite/src/cli/index.js";import{DBX_TASKS as f,DBX_TIMEOUT_MS as p,dbx as m,dbxTaskCommand as h,resolveDbx as g,runDbx as _}from"./packages/vite/src/plugin.js";import{viteProvider as v}from"./packages/vite/src/provider.js";import{DEFAULT_RESOLVE_IMPORT as y,OXC_FMT_CONFIG_FILE as b,OXC_LINT_CONFIG_FILE as x,VITE_CONFIG_SHIM as S,detectViteSpecifier as C,renderStaticViteConfig as w,renderViteConfig as T,resolveShimImport as E,viteConfigObject as D,viteSyncTask as O}from"./packages/vite/src/sync.js";import{resolveVite as k}from"./packages/vite/src/resolve.js";import"./packages/vite/src/index.js";export{f as DBX_TASKS,p as DBX_TIMEOUT_MS,y as DEFAULT_RESOLVE_IMPORT,b as OXC_FMT_CONFIG_FILE,x as OXC_LINT_CONFIG_FILE,S as VITE_CONFIG_SHIM,t as VP_COMMANDS,m as dbx,h as dbxTaskCommand,i as describeVp,C as detectViteSpecifier,a as hasVp,w as renderStaticViteConfig,T as renderViteConfig,g as resolveDbx,e as resolveFmtCustomGroups,E as resolveShimImport,k as resolveVite,o as resolveVp,n as resolveVpCommand,_ as runDbx,u as runGuard,s as runVp,r as viteCommandName,d as viteCommands,D as viteConfigObject,v as viteProvider,O as viteSyncTask,c as vpVersion,l as which};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deltabox/toolchain",
3
- "version": "2.3.2",
3
+ "version": "2.4.0",
4
4
  "description": "All-in-one development toolchain that let's you scaffold projects, generate and manage configs, tsconfigs, custom templates, syncing, changelogs, CI, Vite+, migrations, and more.",
5
5
  "homepage": "https://toolchain.deltabox.studio",
6
6
  "author": "Victor Sango <victor@deltabox.studio>",
@@ -84,17 +84,17 @@
84
84
  "@commitlint/cli": "^21.2.2",
85
85
  "@commitlint/config-conventional": "^21.2.2",
86
86
  "@deltabox/toolchain": "portal:.",
87
- "@deltabox/toolchain-biome": "2.3.2",
88
- "@deltabox/toolchain-changelog": "2.3.2",
89
- "@deltabox/toolchain-config": "2.3.2",
90
- "@deltabox/toolchain-core": "2.3.2",
91
- "@deltabox/toolchain-migrate": "2.3.2",
92
- "@deltabox/toolchain-project": "2.3.2",
93
- "@deltabox/toolchain-shared": "2.3.2",
94
- "@deltabox/toolchain-template": "2.3.2",
95
- "@deltabox/toolchain-tsconfig": "2.3.2",
96
- "@deltabox/toolchain-tsdown": "2.3.2",
97
- "@deltabox/toolchain-vite": "2.3.2",
87
+ "@deltabox/toolchain-biome": "2.4.0",
88
+ "@deltabox/toolchain-changelog": "2.4.0",
89
+ "@deltabox/toolchain-config": "2.4.0",
90
+ "@deltabox/toolchain-core": "2.4.0",
91
+ "@deltabox/toolchain-migrate": "2.4.0",
92
+ "@deltabox/toolchain-project": "2.4.0",
93
+ "@deltabox/toolchain-shared": "2.4.0",
94
+ "@deltabox/toolchain-template": "2.4.0",
95
+ "@deltabox/toolchain-tsconfig": "2.4.0",
96
+ "@deltabox/toolchain-tsdown": "2.4.0",
97
+ "@deltabox/toolchain-vite": "2.4.0",
98
98
  "@types/node": "^22.10.2",
99
99
  "@typescript/native-preview": "7.0.0-dev.20260707.2",
100
100
  "cross-env": "^10.1.0",