@deltabox/toolchain 1.7.8 → 1.9.1

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 (79) hide show
  1. package/CHANGELOG.md +147 -3
  2. package/dist/changelog.d.ts +3 -2
  3. package/dist/changelog.js +1 -1
  4. package/dist/cli/commands/shared.js +1 -1
  5. package/dist/cli/index.js +1 -1
  6. package/dist/cli/register.js +1 -1
  7. package/dist/core.d.ts +3 -3
  8. package/dist/core.js +1 -1
  9. package/dist/index.d.ts +10 -8
  10. package/dist/index.js +1 -1
  11. package/dist/package.js +1 -1
  12. package/dist/packages/changelog/src/index.d.ts +4 -3
  13. package/dist/packages/changelog/src/index.js +1 -1
  14. package/dist/packages/changelog/src/sync.d.ts +6 -2
  15. package/dist/packages/changelog/src/sync.js +1 -1
  16. package/dist/packages/changelog/src/utils/git.d.ts +2 -2
  17. package/dist/packages/changelog/src/utils/git.js +1 -1
  18. package/dist/packages/changelog/src/utils/graph.d.ts +23 -0
  19. package/dist/packages/changelog/src/utils/graph.js +1 -0
  20. package/dist/packages/changelog/src/utils/versioning.js +1 -1
  21. package/dist/packages/changelog/src/utils/write.js +1 -1
  22. package/dist/packages/changelog/src/workflows.d.ts +6 -2
  23. package/dist/packages/changelog/src/workflows.js +4 -4
  24. package/dist/packages/core/src/gitignore.d.ts +7 -1
  25. package/dist/packages/core/src/gitignore.js +1 -1
  26. package/dist/packages/core/src/graph.js +1 -1
  27. package/dist/packages/core/src/index.d.ts +4 -4
  28. package/dist/packages/core/src/index.js +1 -1
  29. package/dist/packages/core/src/loader.d.ts +30 -4
  30. package/dist/packages/core/src/loader.js +1 -1
  31. package/dist/packages/core/src/project-type.d.ts +8 -1
  32. package/dist/packages/core/src/project-type.js +1 -1
  33. package/dist/packages/core/src/sync.d.ts +1 -1
  34. package/dist/packages/core/src/sync.js +1 -1
  35. package/dist/packages/core/src/watch.d.ts +4 -0
  36. package/dist/packages/core/src/watch.js +1 -1
  37. package/dist/packages/migrate/src/cli/index.d.ts +4 -0
  38. package/dist/packages/migrate/src/cli/index.js +1 -1
  39. package/dist/packages/migrate/src/types.d.ts +11 -0
  40. package/dist/packages/migrate/src/vite.js +2 -1
  41. package/dist/packages/project/src/cli/index.js +1 -1
  42. package/dist/packages/project/src/index.d.ts +3 -2
  43. package/dist/packages/project/src/index.js +1 -1
  44. package/dist/packages/project/src/sync.d.ts +14 -0
  45. package/dist/packages/project/src/sync.js +1 -0
  46. package/dist/packages/project/src/typescript.js +1 -1
  47. package/dist/packages/shared/src/config-schema.d.ts +148 -77
  48. package/dist/packages/shared/src/config-schema.js +1 -1
  49. package/dist/packages/shared/src/config-types.d.ts +78 -16
  50. package/dist/packages/shared/src/ignore.d.ts +38 -0
  51. package/dist/packages/shared/src/ignore.js +1 -0
  52. package/dist/packages/shared/src/index.d.ts +9 -7
  53. package/dist/packages/shared/src/index.js +1 -1
  54. package/dist/packages/shared/src/project.d.ts +25 -0
  55. package/dist/packages/shared/src/project.js +1 -0
  56. package/dist/packages/shared/src/toolchain.d.ts +13 -2
  57. package/dist/packages/shared/src/toolchain.js +1 -1
  58. package/dist/packages/shared/src/types.d.ts +9 -2
  59. package/dist/packages/tsconfig/src/cli/generate/index.d.ts +16 -9
  60. package/dist/packages/tsconfig/src/cli/generate/index.js +1 -1
  61. package/dist/packages/tsconfig/src/cli/generate/utils.js +1 -1
  62. package/dist/packages/tsconfig/src/cli/index.d.ts +1 -1
  63. package/dist/packages/tsconfig/src/cli/index.js +1 -1
  64. package/dist/packages/tsconfig/src/sync.d.ts +4 -5
  65. package/dist/packages/tsconfig/src/sync.js +1 -1
  66. package/dist/packages/tsconfig/src/templates/tsconfig.default.js +1 -1
  67. package/dist/packages/tsconfig/src/templates.d.ts +1 -1
  68. package/dist/packages/vite/src/index.d.ts +2 -2
  69. package/dist/packages/vite/src/resolve.d.ts +8 -3
  70. package/dist/packages/vite/src/resolve.js +1 -1
  71. package/dist/packages/vite/src/sync.js +1 -1
  72. package/dist/project.d.ts +2 -1
  73. package/dist/project.js +1 -1
  74. package/dist/shared.d.ts +8 -6
  75. package/dist/shared.js +1 -1
  76. package/dist/sync.js +1 -1
  77. package/dist/vite.d.ts +2 -2
  78. package/package.json +16 -14
  79. package/scripts/bootstrap.mjs +55 -0
@@ -5,11 +5,10 @@ import "../../shared/src/index.js";
5
5
  //#region packages/tsconfig/src/sync.d.ts
6
6
  /**
7
7
  * The tsconfig sync task: regenerates every workspace `tsconfig.json` from the
8
- * `tsconfig.default.json` files, applying the monorepo aliases + references.
9
- * `tsconfig.build.json` is treated as a user-owned input (like
10
- * `tsconfig.default.json`) and is never rewritten. Watches
11
- * `tsconfig.monorepo.json` and any `tsconfig.default.json` so a change re-runs
12
- * it in watch mode.
8
+ * workspace default tsconfig files, applying the monorepo aliases + references.
9
+ * `tsconfig.build.json` is treated as a user-owned input (like the default
10
+ * tsconfig) and is never rewritten. Watches `tsconfig.workspaces.json` and any
11
+ * default tsconfig so a change re-runs it in watch mode.
13
12
  */
14
13
  export declare function tsconfigSyncTask(): SyncTask;
15
14
  //#endregion
@@ -1 +1 @@
1
- import{default as e}from"node:path";import"node:url";import.meta.url;import{sectionConfig as t,sectionEnabled as n}from"../../shared/src/toolchain.js";import"../../shared/src/index.js";import{generateTsconfigs as r}from"./cli/generate/index.js";import i from"node:fs";function a(t,n){return e.relative(t,n).replace(/\\/g,`/`)}function o(){return{name:`tsconfig`,projectTypes:[`monorepo-root`],enabled:e=>n(e.tsconfig),watch:[`tsconfig.monorepo.json`,`**/tsconfig.default.json`],keep:[`tsconfig.build.json`],run:n=>{let o=t(n.config.tsconfig)??{},s=o.rootFile??`tsconfig.monorepo.json`;if(!i.existsSync(e.resolve(n.cwd,s)))return n.log(`tsconfig: no ${s} at the root; skipping.`),[];let c=o.indent??4,l=r({cwd:n.cwd,aliases:o.aliases??!0,composite:o.composite??!1,refs:o.refs??!1,indent:c,glob:o.glob??`**/tsconfig.default.json`,appGlob:o.appGlob??`apps/**/tsconfig.default.json`,monorepoTsconfigFilename:s,log:!1,write:!1}),u=[];for(let e of l)u.push({path:a(n.cwd,e.targetTsconfigPath),content:`${JSON.stringify(e.newTsconfig,null,c)}\n`});return n.log(`tsconfig: regenerated ${l.length} workspace tsconfig(s).`),u}}}export{o as tsconfigSyncTask};
1
+ import{default as e}from"node:path";import"node:url";import.meta.url;import{sectionConfig as t,sectionEnabled as n}from"../../shared/src/toolchain.js";import"../../shared/src/index.js";import{generateTsconfigs as r}from"./cli/generate/index.js";import i from"node:fs";function a(t,n){return e.relative(t,n).replace(/\\/g,`/`)}function o(){return{name:`tsconfig`,projectTypes:[`monorepo-root`],enabled:e=>n(e.tsconfig),watch:[`tsconfig.workspaces.json`,`**/tsconfig.default.json`],keep:[`tsconfig.build.json`],run:n=>{let o=t(n.config.tsconfig)??{},s=o.rootFile??`tsconfig.workspaces.json`,c=o.defaultFile??`tsconfig.default.json`,l=o.buildFile??`tsconfig.build.json`,u=e.resolve(n.cwd,s),d=i.existsSync(u),f=o.indent??4,p=o.glob??`**/${c}`,m=r({cwd:n.cwd,aliases:o.aliases??!0,composite:o.composite??!1,refs:o.refs??!1,indent:f,glob:p,...o.exclude===void 0?{}:{exclude:o.exclude},...o.gitignore===void 0?{}:{gitignore:o.gitignore},defaultFile:c,buildFile:l,monorepoTsconfigFilename:s,log:!1,write:!1});if(m.length===0){if(o.refs||o.composite||d){let e=Array.isArray(p)?p.join(`, `):p,t=[o.refs?`project references`:``,o.composite?`composite`:``,d?`${s}`:``].filter(Boolean);n.warn(`no workspace tsconfig files found (looked for ${e}), but ${t.join(` + `)} have nothing to wire.`)}else n.log(`tsconfig: no workspace tsconfig files found; skipping.`);return[]}let h=[];for(let e of m)h.push({path:a(n.cwd,e.targetTsconfigPath),content:`${JSON.stringify(e.newTsconfig,null,f)}\n`});return n.log(`tsconfig: regenerated ${m.length} workspace tsconfig(s).`),h}}}export{o as tsconfigSyncTask};
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;var e={extends:`./tsconfig.base.json`,compilerOptions:{module:`ESNext`,moduleResolution:`Bundler`,jsx:`react-jsx`,lib:[`ES2022`,`DOM`,`DOM.Iterable`],types:[`node`]},exclude:[`**/dist`,`**/node_modules`,`apps`,`docs`,`packages`,`sdk`],include:[`src`,`{{envTypesFile}}`,`scripts`,`.oas/**/*`,`package.json`]};export{e as default};
1
+ import"node:path";import"node:url";import.meta.url;var e={extends:`./tsconfig.base.json`,compilerOptions:{module:`ESNext`,moduleResolution:`Bundler`,jsx:`react-jsx`,lib:[`ES2022`,`DOM`,`DOM.Iterable`],types:[`node`]},exclude:[`**/dist`,`**/node_modules`,`apps`,`docs`,`packages`],include:[`src`,`{{envTypesFile}}`,`scripts`,`.oas/**/*`,`package.json`]};export{e as default};
@@ -29,7 +29,7 @@ export interface MonorepoTsconfigOptions {
29
29
  /** Enable `composite` for the generated monorepo config (default true). */
30
30
  composite?: boolean;
31
31
  }
32
- /** Build a project-references + path-aliases `tsconfig.monorepo.json` object. */
32
+ /** Build a project-references + path-aliases `tsconfig.workspaces.json` object. */
33
33
  export declare function buildMonorepoTsconfig(options: MonorepoTsconfigOptions): Record<string, unknown>;
34
34
  /** Render the monorepo tsconfig as JSON text. */
35
35
  export declare function renderMonorepoTsconfig(options: MonorepoTsconfigOptions): string;
@@ -4,7 +4,7 @@ import { VP_COMMANDS, VpCommandInfo, VpGroup, resolveVpCommand, viteCommandName
4
4
  import { runGuard, viteCommands } from "./cli/index.js";
5
5
  import { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, ResolvedDbx, dbx, dbxTaskCommand, resolveDbx, runDbx } from "./plugin.js";
6
6
  import { viteProvider } from "./provider.js";
7
- import { ResolveViteOptions, resolveVite } from "./resolve.js";
7
+ import { ResolveViteInput, ResolveViteOptions, resolveVite } from "./resolve.js";
8
8
  import { VITE_CONFIG_SHIM, renderViteConfig, viteConfigObject, viteSyncTask } from "./sync.js";
9
9
  import { ResolvedVp, RunVpOptions, VpResult, VpSource, describeVp, hasVp, resolveVp, runVp, vpVersion, which } from "./vp.js";
10
- export { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, hasVp, renderViteConfig, resolveDbx, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
10
+ export { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, ResolveViteInput, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, hasVp, renderViteConfig, resolveDbx, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
@@ -8,12 +8,17 @@ export interface ResolveViteOptions {
8
8
  /** Project root to look for `dbx.config.*` in (default: `process.cwd()`). */
9
9
  cwd?: string;
10
10
  }
11
+ /**
12
+ * The single object `resolveVite` accepts: a loaded `dbx.config` (to skip the
13
+ * lookup) and/or the `cwd` to look one up in.
14
+ */
15
+ export type ResolveViteInput = DbxConfig & ResolveViteOptions;
11
16
  /**
12
17
  * Resolve the Vite+ config from `dbx.config.*`'s `toolchain.vite`.
13
18
  *
14
19
  * Returns a promise (the config file is imported asynchronously). Vite awaits a
15
- * config's default export, so `export default defineConfig(resolveVite())` works
16
- * — the promise is resolved before the config is used.
20
+ * config's default export, so `export default defineConfig(resolveVite(...))`
21
+ * works — the promise is resolved before the config is used.
17
22
  */
18
- export declare function resolveVite(dbxConfig?: DbxConfig, options?: ResolveViteOptions): Promise<ViteUserConfig>;
23
+ export declare function resolveVite(options?: ResolveViteInput): Promise<ViteUserConfig>;
19
24
  //#endregion
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{applyReplacementsDeep as e}from"../../shared/src/template.js";import{resolveTokens as t,sectionConfig as n}from"../../shared/src/toolchain.js";import"../../shared/src/index.js";import{loadToolchainConfig as r}from"../../core/src/loader.js";import"../../core/src/index.js";import{viteConfigObject as i}from"./sync.js";async function a(a,o={}){let s;if(a)s=a.toolchain??{};else{let e=await r(o.cwd??process.cwd());if(!e.path)throw Error(`resolveVite: no dbx.config.* found — create one, or pass a config to resolveVite().`);s=e.config}let c=n(s.vite)??{};return e(i(c),t(s))}export{a as resolveVite};
1
+ import"node:path";import"node:url";import.meta.url;import{applyReplacementsDeep as e}from"../../shared/src/template.js";import{resolveTokens as t,sectionConfig as n}from"../../shared/src/toolchain.js";import"../../shared/src/index.js";import{loadToolchainConfig as r}from"../../core/src/loader.js";import"../../core/src/index.js";import{viteConfigObject as i}from"./sync.js";async function a(a={}){let{cwd:o,...s}=a,c;if(Object.keys(s).length>0)c=s.toolchain??{};else{let e=await r(o??process.cwd());if(!e.path)throw Error(`resolveVite: no dbx.config.* found — create one, or pass a config to resolveVite().`);c=e.config}let l=n(c.vite)??{};return e(i(l),t(c))}export{a as resolveVite};
@@ -1,2 +1,2 @@
1
- import"node:path";import"node:url";import.meta.url;import{sectionConfig as e,sectionEnabled as t}from"../../shared/src/toolchain.js";import"../../shared/src/index.js";function n(e={}){let{config:t,...n}=e;return n}const r=["// Generated by @deltabox/toolchain — edit the vite section in dbx.config and run `dbx sync`.",`import { resolveVite } from '@deltabox/toolchain/vite';`,`import { defineConfig } from 'vite-plus';`,``,`export default defineConfig(resolveVite());`,``].join(`
1
+ import"node:path";import"node:url";import.meta.url;import{sectionConfig as e,sectionEnabled as t}from"../../shared/src/toolchain.js";import"../../shared/src/index.js";function n(e={}){let{config:t,...n}=e;return n}const r=["// Generated by @deltabox/toolchain — edit the vite section in dbx.config and run `dbx sync`.",`import { resolveVite } from '@deltabox/toolchain/vite';`,`import { defineConfig } from 'vite-plus';`,``,`export default defineConfig(resolveVite({ cwd: import.meta.dirname }));`,``].join(`
2
2
  `);function i(){return r}function a(){return{name:`vite`,projectTypes:[`monorepo-root`,`monorepo-workspace`,`project`],enabled:e=>t(e.vite),run:t=>(e(t.config.vite)??{}).config===!1?[]:[{path:`vite.config.ts`,content:i()}]}}export{r as VITE_CONFIG_SHIM,i as renderViteConfig,n as viteConfigObject,a as viteSyncTask};
package/dist/project.d.ts CHANGED
@@ -2,6 +2,7 @@ import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
3
  import { projectCommands } from "./packages/project/src/cli/index.js";
4
4
  import { GENERATED_CONFIG_FILENAME, GenerateProjectConfigsOptions, GenerateProjectConfigsResult, GeneratedProjectConfig, generateProjectConfigs } from "./packages/project/src/config.js";
5
+ import { projectSyncTask } from "./packages/project/src/sync.js";
5
6
  import { MonorepoRootContext, ProjectContext, WorkspaceContext, createMonorepoRootFiles, createRootProjectFiles, createWorkspaceFiles, renderGitignore, renderToolchainConfig, renderTurboJson, renderWorkspaceTsconfig, writeGeneratedFiles } from "./packages/project/src/typescript.js";
6
7
  import "./packages/project/src/index.js";
7
- export { GENERATED_CONFIG_FILENAME, GenerateProjectConfigsOptions, GenerateProjectConfigsResult, GeneratedProjectConfig, MonorepoRootContext, ProjectContext, WorkspaceContext, createMonorepoRootFiles, createRootProjectFiles, createWorkspaceFiles, generateProjectConfigs, projectCommands, renderGitignore, renderToolchainConfig, renderTurboJson, renderWorkspaceTsconfig, writeGeneratedFiles };
8
+ export { GENERATED_CONFIG_FILENAME, GenerateProjectConfigsOptions, GenerateProjectConfigsResult, GeneratedProjectConfig, MonorepoRootContext, ProjectContext, WorkspaceContext, createMonorepoRootFiles, createRootProjectFiles, createWorkspaceFiles, generateProjectConfigs, projectCommands, projectSyncTask, renderGitignore, renderToolchainConfig, renderTurboJson, renderWorkspaceTsconfig, writeGeneratedFiles };
package/dist/project.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{createMonorepoRootFiles as e,createRootProjectFiles as t,createWorkspaceFiles as n,renderGitignore as r,renderToolchainConfig as i,renderTurboJson as a,renderWorkspaceTsconfig as o,writeGeneratedFiles as s}from"./packages/project/src/typescript.js";import{GENERATED_CONFIG_FILENAME as c,generateProjectConfigs as l}from"./packages/project/src/config.js";import{projectCommands as u}from"./packages/project/src/cli/index.js";import"./packages/project/src/index.js";export{c as GENERATED_CONFIG_FILENAME,e as createMonorepoRootFiles,t as createRootProjectFiles,n as createWorkspaceFiles,l as generateProjectConfigs,u as projectCommands,r as renderGitignore,i as renderToolchainConfig,a as renderTurboJson,o as renderWorkspaceTsconfig,s as writeGeneratedFiles};
1
+ import"node:path";import"node:url";import.meta.url;import{createMonorepoRootFiles as e,createRootProjectFiles as t,createWorkspaceFiles as n,renderGitignore as r,renderToolchainConfig as i,renderTurboJson as a,renderWorkspaceTsconfig as o,writeGeneratedFiles as s}from"./packages/project/src/typescript.js";import{GENERATED_CONFIG_FILENAME as c,generateProjectConfigs as l}from"./packages/project/src/config.js";import{projectCommands as u}from"./packages/project/src/cli/index.js";import{projectSyncTask as d}from"./packages/project/src/sync.js";import"./packages/project/src/index.js";export{c as GENERATED_CONFIG_FILENAME,e as createMonorepoRootFiles,t as createRootProjectFiles,n as createWorkspaceFiles,l as generateProjectConfigs,u as projectCommands,d as projectSyncTask,r as renderGitignore,i as renderToolchainConfig,a as renderTurboJson,o as renderWorkspaceTsconfig,s as writeGeneratedFiles};
package/dist/shared.d.ts CHANGED
@@ -2,16 +2,18 @@ import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
3
  import { TOOLCHAIN_PACKAGE, findOwnCliEntry, localToolchainVersion } from "./packages/shared/src/bin.js";
4
4
  import { mergeJsonAt, readJsonAt, readJsonFile, toJson, writeJsonFile } from "./packages/shared/src/fs-utils.js";
5
+ import { DEFAULT_IGNORE_PATTERNS, IgnoreOptions, collectGitignorePatterns, isIgnoredPath, resolveIgnorePatterns } from "./packages/shared/src/ignore.js";
5
6
  import { Colors, LOG_LEVELS, LogChannel, LogLevel, Logger, LoggerConfig, LoggerOptions, configureLogger, createLogger, getLogOverrides, getLogger, isLogLevel, logger, normalizeLogLevel, setLogConfig, setLogOverrides, stripAnsi } from "./packages/shared/src/logger.js";
6
7
  import { Sortable, deepMerge, isPlainObject, mapValues, resolveSort, sort } from "./packages/shared/src/object-utils.js";
8
+ import { ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowsConfig, DbxConfigSections, ProjectType, ToolchainBiomeConfig, ToolchainChangelogConfig, ToolchainConfigSections, ToolchainLoggerConfig, ToolchainProjectConfig, ToolchainProvidersConfig, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainViteConfig, ToolchainWatchConfig, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig } from "./packages/shared/src/config-types.js";
9
+ import { ReplacementOptions, ReplacementValue, Replacements, Replacer, applyReplacements, applyReplacementsDeep, createReplacer, defineReplacements, extractTokens, hasUnresolvedTokens, tokenPattern } from "./packages/shared/src/template.js";
10
+ import { CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, CONFIG_TYPE_SCHEMAS, biomeConfigSchema, changelogConfigSchema, changelogVersioningConfigSchema, changelogVersioningSchema, changelogVersioningTargetSchema, changelogWorkflowsConfigSchema, dbxConfigSchema, loggerConfigSchema, projectConfigSchema, projectTypeSchema, providersConfigSchema, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, toolchainConfigSchema, tsconfigConfigSchema, viteConfigSchema, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema } from "./packages/shared/src/config-schema.js";
11
+ import { CONFIG_FILE_NAMES, DbxConfig, ManagedFile, SyncContext, SyncSummary, SyncTask, ToolchainConfig, ToolchainHooks, ToolchainSection, defineConfig, repoSlugFromUrl, resolveChangelogBranches, resolveTokens, sectionConfig, sectionEnabled } from "./packages/shared/src/toolchain.js";
12
+ import { Awaitable, GeneratedFile, JsonValue, PackageJson, ToolchainArgument, ToolchainCommand, ToolchainCommandContext, ToolchainOption } from "./packages/shared/src/types.js";
13
+ import { projectFromPackageJson, projectToPackageJson, splitPackageName } from "./packages/shared/src/project.js";
7
14
  import { ToolchainProvider, ToolchainProviderAction, ToolchainProviderCommand, providerActions } from "./packages/shared/src/provider.js";
8
15
  import { RunOptions, SpawnCrossOptions, killProcessTree, run, spawnCross } from "./packages/shared/src/run.js";
9
16
  import { asString, camelCase, camelCaseId, capitalize, constantCase, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, formatCliFlag, hasText, indent, isLocalhost, kebabCase, pascalCase, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, sanitizeSlashes, sanitizeText, snakeCase, str, stripControlChars, stripEscapeArtifacts, titleCase } from "./packages/shared/src/string-utils.js";
10
- import { ReplacementOptions, ReplacementValue, Replacements, Replacer, applyReplacements, applyReplacementsDeep, createReplacer, defineReplacements, extractTokens, hasUnresolvedTokens, tokenPattern } from "./packages/shared/src/template.js";
11
- import { ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowsConfig, DbxConfigSections, ProjectType, ToolchainBiomeConfig, ToolchainChangelogConfig, ToolchainConfigSections, ToolchainLoggerConfig, ToolchainProjectConfig, ToolchainProvidersConfig, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainViteConfig, ToolchainWatchConfig, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig } from "./packages/shared/src/config-types.js";
12
- import { Awaitable, GeneratedFile, JsonValue, PackageJson, ToolchainArgument, ToolchainCommand, ToolchainCommandContext, ToolchainOption } from "./packages/shared/src/types.js";
13
- import { CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, CONFIG_TYPE_SCHEMAS, biomeConfigSchema, changelogConfigSchema, changelogVersioningConfigSchema, changelogVersioningSchema, changelogVersioningTargetSchema, changelogWorkflowsConfigSchema, dbxConfigSchema, loggerConfigSchema, projectConfigSchema, projectTypeSchema, providersConfigSchema, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, toolchainConfigSchema, tsconfigConfigSchema, viteConfigSchema, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema } from "./packages/shared/src/config-schema.js";
14
- import { CONFIG_FILE_NAMES, DbxConfig, ManagedFile, SyncContext, SyncSummary, SyncTask, ToolchainConfig, ToolchainHooks, ToolchainSection, defineConfig, repoSlugFromUrl, resolveTokens, sectionConfig, sectionEnabled } from "./packages/shared/src/toolchain.js";
15
17
  import { YamlValue, toYaml } from "./packages/shared/src/yaml.js";
16
18
  import "./packages/shared/src/index.js";
17
- export { Awaitable, CONFIG_FILE_NAMES, CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, CONFIG_TYPE_SCHEMAS, ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowsConfig, Colors, DbxConfig, DbxConfigSections, GeneratedFile, JsonValue, LOG_LEVELS, LogChannel, LogLevel, Logger, LoggerConfig, LoggerOptions, ManagedFile, PackageJson, ProjectType, ReplacementOptions, ReplacementValue, Replacements, Replacer, RunOptions, Sortable, SpawnCrossOptions, SyncContext, SyncSummary, SyncTask, TOOLCHAIN_PACKAGE, ToolchainArgument, ToolchainBiomeConfig, ToolchainChangelogConfig, ToolchainCommand, ToolchainCommandContext, ToolchainConfig, ToolchainConfigSections, ToolchainHooks, ToolchainLoggerConfig, ToolchainOption, ToolchainProjectConfig, ToolchainProvider, ToolchainProviderAction, ToolchainProviderCommand, ToolchainProvidersConfig, ToolchainSection, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainViteConfig, ToolchainWatchConfig, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, type YamlValue, applyReplacements, applyReplacementsDeep, asString, biomeConfigSchema, camelCase, camelCaseId, capitalize, changelogConfigSchema, changelogVersioningConfigSchema, changelogVersioningSchema, changelogVersioningTargetSchema, changelogWorkflowsConfigSchema, configureLogger, constantCase, createLogger, createReplacer, dbxConfigSchema, deepMerge, defineConfig, defineReplacements, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, extractTokens, findOwnCliEntry, formatCliFlag, getLogOverrides, getLogger, hasText, hasUnresolvedTokens, indent, isLocalhost, isLogLevel, isPlainObject, kebabCase, killProcessTree, localToolchainVersion, logger, loggerConfigSchema, mapValues, mergeJsonAt, normalizeLogLevel, pascalCase, projectConfigSchema, projectTypeSchema, providerActions, providersConfigSchema, readJsonAt, readJsonFile, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, repoSlugFromUrl, resolveSort, resolveTokens, run, sanitizeSlashes, sanitizeText, sectionConfig, sectionEnabled, setLogConfig, setLogOverrides, snakeCase, sort, spawnCross, str, stripAnsi, stripControlChars, stripEscapeArtifacts, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, titleCase, toJson, toYaml, tokenPattern, toolchainConfigSchema, tsconfigConfigSchema, viteConfigSchema, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema, writeJsonFile };
19
+ export { Awaitable, CONFIG_FILE_NAMES, CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, CONFIG_TYPE_SCHEMAS, ChangelogVersioning, ChangelogVersioningConfig, ChangelogVersioningTarget, ChangelogWorkflowsConfig, Colors, DEFAULT_IGNORE_PATTERNS, DbxConfig, DbxConfigSections, GeneratedFile, IgnoreOptions, JsonValue, LOG_LEVELS, LogChannel, LogLevel, Logger, LoggerConfig, LoggerOptions, ManagedFile, PackageJson, ProjectType, ReplacementOptions, ReplacementValue, Replacements, Replacer, RunOptions, Sortable, SpawnCrossOptions, SyncContext, SyncSummary, SyncTask, TOOLCHAIN_PACKAGE, ToolchainArgument, ToolchainBiomeConfig, ToolchainChangelogConfig, ToolchainCommand, ToolchainCommandContext, ToolchainConfig, ToolchainConfigSections, ToolchainHooks, ToolchainLoggerConfig, ToolchainOption, ToolchainProjectConfig, ToolchainProvider, ToolchainProviderAction, ToolchainProviderCommand, ToolchainProvidersConfig, ToolchainSection, ToolchainTemplateKind, ToolchainTemplateSource, ToolchainTemplateSourceType, ToolchainTemplatesConfig, ToolchainTsconfigConfig, ToolchainViteConfig, ToolchainWatchConfig, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, type YamlValue, applyReplacements, applyReplacementsDeep, asString, biomeConfigSchema, camelCase, camelCaseId, capitalize, changelogConfigSchema, changelogVersioningConfigSchema, changelogVersioningSchema, changelogVersioningTargetSchema, changelogWorkflowsConfigSchema, collectGitignorePatterns, configureLogger, constantCase, createLogger, createReplacer, dbxConfigSchema, deepMerge, defineConfig, defineReplacements, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, extractTokens, findOwnCliEntry, formatCliFlag, getLogOverrides, getLogger, hasText, hasUnresolvedTokens, indent, isIgnoredPath, isLocalhost, isLogLevel, isPlainObject, kebabCase, killProcessTree, localToolchainVersion, logger, loggerConfigSchema, mapValues, mergeJsonAt, normalizeLogLevel, pascalCase, projectConfigSchema, projectFromPackageJson, projectToPackageJson, projectTypeSchema, providerActions, providersConfigSchema, readJsonAt, readJsonFile, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, repoSlugFromUrl, resolveChangelogBranches, resolveIgnorePatterns, resolveSort, resolveTokens, run, sanitizeSlashes, sanitizeText, sectionConfig, sectionEnabled, setLogConfig, setLogOverrides, snakeCase, sort, spawnCross, splitPackageName, str, stripAnsi, stripControlChars, stripEscapeArtifacts, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, titleCase, toJson, toYaml, tokenPattern, toolchainConfigSchema, tsconfigConfigSchema, viteConfigSchema, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema, 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{deepMerge as r,isPlainObject as i,mapValues as a,resolveSort as o,sort as s}from"./packages/shared/src/object-utils.js";import{mergeJsonAt as c,readJsonAt as l,readJsonFile as u,toJson as d,writeJsonFile as f}from"./packages/shared/src/fs-utils.js";import{LOG_LEVELS as p,configureLogger as m,createLogger as h,getLogOverrides as g,getLogger as _,isLogLevel as v,logger as y,normalizeLogLevel as b,setLogConfig as x,setLogOverrides as S,stripAnsi as C}from"./packages/shared/src/logger.js";import{providerActions as w}from"./packages/shared/src/provider.js";import{killProcessTree as T,run as E,spawnCross as D}from"./packages/shared/src/run.js";import{asString as O,camelCase as k,camelCaseId as A,capitalize as j,constantCase as M,ensureLeadingSlash as N,ensureSlashes as P,ensureTrailingSlash as F,formatCliFlag as I,hasText as L,indent as R,isLocalhost as z,kebabCase as B,pascalCase as V,removeDoubleSlashes as H,removeLeadingSlash as U,removeTrailingSlash as W,sanitizeSlashes as G,sanitizeText as K,snakeCase as q,str as J,stripControlChars as Y,stripEscapeArtifacts as X,titleCase as Z}from"./packages/shared/src/string-utils.js";import{applyReplacements as Q,applyReplacementsDeep as $,createReplacer as ee,defineReplacements as te,extractTokens as ne,hasUnresolvedTokens as re,tokenPattern as ie}from"./packages/shared/src/template.js";import{CONFIG_SECTION_DESCRIPTIONS as ae,CONFIG_SECTION_SCHEMAS as oe,CONFIG_TYPE_SCHEMAS as se,biomeConfigSchema as ce,changelogConfigSchema as le,changelogVersioningConfigSchema as ue,changelogVersioningSchema as de,changelogVersioningTargetSchema as fe,changelogWorkflowsConfigSchema as pe,dbxConfigSchema as me,loggerConfigSchema as he,projectConfigSchema as ge,projectTypeSchema as _e,providersConfigSchema as ve,templateKindSchema as ye,templateSourceSchema as be,templateSourceTypeSchema as xe,templatesConfigSchema as Se,toolchainConfigSchema as Ce,tsconfigConfigSchema as we,viteConfigSchema as Te,watchConfigSchema as Ee,workflowConfigSchema as De,workflowSettingSchema as Oe,workflowStepSchema as ke,workflowStepsConfigSchema as Ae}from"./packages/shared/src/config-schema.js";import{CONFIG_FILE_NAMES as je,defineConfig as Me,repoSlugFromUrl as Ne,resolveTokens as Pe,sectionConfig as Fe,sectionEnabled as Ie}from"./packages/shared/src/toolchain.js";import{toYaml as Le}from"./packages/shared/src/yaml.js";import"./packages/shared/src/index.js";export{je as CONFIG_FILE_NAMES,ae as CONFIG_SECTION_DESCRIPTIONS,oe as CONFIG_SECTION_SCHEMAS,se as CONFIG_TYPE_SCHEMAS,p as LOG_LEVELS,e as TOOLCHAIN_PACKAGE,Q as applyReplacements,$ as applyReplacementsDeep,O as asString,ce as biomeConfigSchema,k as camelCase,A as camelCaseId,j as capitalize,le as changelogConfigSchema,ue as changelogVersioningConfigSchema,de as changelogVersioningSchema,fe as changelogVersioningTargetSchema,pe as changelogWorkflowsConfigSchema,m as configureLogger,M as constantCase,h as createLogger,ee as createReplacer,me as dbxConfigSchema,r as deepMerge,Me as defineConfig,te as defineReplacements,N as ensureLeadingSlash,P as ensureSlashes,F as ensureTrailingSlash,ne as extractTokens,t as findOwnCliEntry,I as formatCliFlag,g as getLogOverrides,_ as getLogger,L as hasText,re as hasUnresolvedTokens,R as indent,z as isLocalhost,v as isLogLevel,i as isPlainObject,B as kebabCase,T as killProcessTree,n as localToolchainVersion,y as logger,he as loggerConfigSchema,a as mapValues,c as mergeJsonAt,b as normalizeLogLevel,V as pascalCase,ge as projectConfigSchema,_e as projectTypeSchema,w as providerActions,ve as providersConfigSchema,l as readJsonAt,u as readJsonFile,H as removeDoubleSlashes,U as removeLeadingSlash,W as removeTrailingSlash,Ne as repoSlugFromUrl,o as resolveSort,Pe as resolveTokens,E as run,G as sanitizeSlashes,K as sanitizeText,Fe as sectionConfig,Ie as sectionEnabled,x as setLogConfig,S as setLogOverrides,q as snakeCase,s as sort,D as spawnCross,J as str,C as stripAnsi,Y as stripControlChars,X as stripEscapeArtifacts,ye as templateKindSchema,be as templateSourceSchema,xe as templateSourceTypeSchema,Se as templatesConfigSchema,Z as titleCase,d as toJson,Le as toYaml,ie as tokenPattern,Ce as toolchainConfigSchema,we as tsconfigConfigSchema,Te as viteConfigSchema,Ee as watchConfigSchema,De as workflowConfigSchema,Oe as workflowSettingSchema,ke as workflowStepSchema,Ae as workflowStepsConfigSchema,f 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{deepMerge as r,isPlainObject as i,mapValues as a,resolveSort as o,sort as s}from"./packages/shared/src/object-utils.js";import{mergeJsonAt as c,readJsonAt as l,readJsonFile as u,toJson as d,writeJsonFile as f}from"./packages/shared/src/fs-utils.js";import{DEFAULT_IGNORE_PATTERNS as p,collectGitignorePatterns as m,isIgnoredPath as h,resolveIgnorePatterns as g}from"./packages/shared/src/ignore.js";import{LOG_LEVELS as _,configureLogger as v,createLogger as y,getLogOverrides as b,getLogger as x,isLogLevel as S,logger as C,normalizeLogLevel as w,setLogConfig as T,setLogOverrides as E,stripAnsi as D}from"./packages/shared/src/logger.js";import{projectFromPackageJson as O,projectToPackageJson as k,splitPackageName as A}from"./packages/shared/src/project.js";import{providerActions as j}from"./packages/shared/src/provider.js";import{killProcessTree as M,run as N,spawnCross as P}from"./packages/shared/src/run.js";import{asString as F,camelCase as I,camelCaseId as L,capitalize as R,constantCase as z,ensureLeadingSlash as B,ensureSlashes as V,ensureTrailingSlash as H,formatCliFlag as U,hasText as W,indent as G,isLocalhost as K,kebabCase as q,pascalCase as J,removeDoubleSlashes as Y,removeLeadingSlash as X,removeTrailingSlash as Z,sanitizeSlashes as Q,sanitizeText as $,snakeCase as ee,str as te,stripControlChars as ne,stripEscapeArtifacts as re,titleCase as ie}from"./packages/shared/src/string-utils.js";import{applyReplacements as ae,applyReplacementsDeep as oe,createReplacer as se,defineReplacements as ce,extractTokens as le,hasUnresolvedTokens as ue,tokenPattern as de}from"./packages/shared/src/template.js";import{CONFIG_SECTION_DESCRIPTIONS as fe,CONFIG_SECTION_SCHEMAS as pe,CONFIG_TYPE_SCHEMAS as me,biomeConfigSchema as he,changelogConfigSchema as ge,changelogVersioningConfigSchema as _e,changelogVersioningSchema as ve,changelogVersioningTargetSchema as ye,changelogWorkflowsConfigSchema as be,dbxConfigSchema as xe,loggerConfigSchema as Se,projectConfigSchema as Ce,projectTypeSchema as we,providersConfigSchema as Te,templateKindSchema as Ee,templateSourceSchema as De,templateSourceTypeSchema as Oe,templatesConfigSchema as ke,toolchainConfigSchema as Ae,tsconfigConfigSchema as je,viteConfigSchema as Me,watchConfigSchema as Ne,workflowConfigSchema as Pe,workflowSettingSchema as Fe,workflowStepSchema as Ie,workflowStepsConfigSchema as Le}from"./packages/shared/src/config-schema.js";import{CONFIG_FILE_NAMES as Re,defineConfig as ze,repoSlugFromUrl as Be,resolveChangelogBranches as Ve,resolveTokens as He,sectionConfig as Ue,sectionEnabled as We}from"./packages/shared/src/toolchain.js";import{toYaml as Ge}from"./packages/shared/src/yaml.js";import"./packages/shared/src/index.js";export{Re as CONFIG_FILE_NAMES,fe as CONFIG_SECTION_DESCRIPTIONS,pe as CONFIG_SECTION_SCHEMAS,me as CONFIG_TYPE_SCHEMAS,p as DEFAULT_IGNORE_PATTERNS,_ as LOG_LEVELS,e as TOOLCHAIN_PACKAGE,ae as applyReplacements,oe as applyReplacementsDeep,F as asString,he as biomeConfigSchema,I as camelCase,L as camelCaseId,R as capitalize,ge as changelogConfigSchema,_e as changelogVersioningConfigSchema,ve as changelogVersioningSchema,ye as changelogVersioningTargetSchema,be as changelogWorkflowsConfigSchema,m as collectGitignorePatterns,v as configureLogger,z as constantCase,y as createLogger,se as createReplacer,xe as dbxConfigSchema,r as deepMerge,ze as defineConfig,ce as defineReplacements,B as ensureLeadingSlash,V as ensureSlashes,H as ensureTrailingSlash,le as extractTokens,t as findOwnCliEntry,U as formatCliFlag,b as getLogOverrides,x as getLogger,W as hasText,ue as hasUnresolvedTokens,G as indent,h as isIgnoredPath,K as isLocalhost,S as isLogLevel,i as isPlainObject,q as kebabCase,M as killProcessTree,n as localToolchainVersion,C as logger,Se as loggerConfigSchema,a as mapValues,c as mergeJsonAt,w as normalizeLogLevel,J as pascalCase,Ce as projectConfigSchema,O as projectFromPackageJson,k as projectToPackageJson,we as projectTypeSchema,j as providerActions,Te as providersConfigSchema,l as readJsonAt,u as readJsonFile,Y as removeDoubleSlashes,X as removeLeadingSlash,Z as removeTrailingSlash,Be as repoSlugFromUrl,Ve as resolveChangelogBranches,g as resolveIgnorePatterns,o as resolveSort,He as resolveTokens,N as run,Q as sanitizeSlashes,$ as sanitizeText,Ue as sectionConfig,We as sectionEnabled,T as setLogConfig,E as setLogOverrides,ee as snakeCase,s as sort,P as spawnCross,A as splitPackageName,te as str,D as stripAnsi,ne as stripControlChars,re as stripEscapeArtifacts,Ee as templateKindSchema,De as templateSourceSchema,Oe as templateSourceTypeSchema,ke as templatesConfigSchema,ie as titleCase,d as toJson,Ge as toYaml,de as tokenPattern,Ae as toolchainConfigSchema,je as tsconfigConfigSchema,Me as viteConfigSchema,Ne as watchConfigSchema,Pe as workflowConfigSchema,Fe as workflowSettingSchema,Ie as workflowStepSchema,Le as workflowStepsConfigSchema,f as writeJsonFile};
package/dist/sync.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{sectionConfig as e,sectionEnabled as t}from"./packages/shared/src/toolchain.js";import"./packages/shared/src/index.js";import{biomeSyncTask as n,biomeVscodeSettings as r}from"./packages/biome/src/index.js";import{conventionalCommitsVscodeExtensions as i,conventionalCommitsVscodeSettings as a}from"./packages/changelog/src/templates.js";import{changelogSyncTask as o}from"./packages/changelog/src/sync.js";import"./packages/changelog/src/index.js";import{vscodeSyncTask as s}from"./packages/core/src/vscode.js";import"./packages/core/src/index.js";import{tsconfigSyncTask as c}from"./packages/tsconfig/src/sync.js";import"./packages/tsconfig/src/index.js";import{viteSyncTask as l}from"./packages/vite/src/sync.js";import"./packages/vite/src/index.js";function u(){return[o(),n(),c(),l(),s({settings:e=>[...t(e.biome)?[r]:[],a],extensions:[...i.recommendations],enabled:n=>t(n.changelog)&&e(n.changelog)?.vscode!==!1||t(n.biome)&&e(n.biome)?.vscode!==!1})]}export{u as defaultSyncTasks};
1
+ import"node:path";import"node:url";import.meta.url;import{sectionConfig as e,sectionEnabled as t}from"./packages/shared/src/toolchain.js";import"./packages/shared/src/index.js";import{biomeSyncTask as n,biomeVscodeSettings as r}from"./packages/biome/src/index.js";import{conventionalCommitsVscodeExtensions as i,conventionalCommitsVscodeSettings as a}from"./packages/changelog/src/templates.js";import{changelogSyncTask as o}from"./packages/changelog/src/sync.js";import"./packages/changelog/src/index.js";import{vscodeSyncTask as s}from"./packages/core/src/vscode.js";import"./packages/core/src/index.js";import{tsconfigSyncTask as c}from"./packages/tsconfig/src/sync.js";import"./packages/tsconfig/src/index.js";import{projectSyncTask as l}from"./packages/project/src/sync.js";import"./packages/project/src/index.js";import{viteSyncTask as u}from"./packages/vite/src/sync.js";import"./packages/vite/src/index.js";function d(){return[l(),o(),n(),c(),u(),s({settings:e=>[...t(e.biome)?[r]:[],a],extensions:[...i.recommendations],enabled:n=>t(n.changelog)&&e(n.changelog)?.vscode!==!1||t(n.biome)&&e(n.biome)?.vscode!==!1})]}export{d as defaultSyncTasks};
package/dist/vite.d.ts CHANGED
@@ -4,8 +4,8 @@ import { VP_COMMANDS, VpCommandInfo, VpGroup, resolveVpCommand, viteCommandName
4
4
  import { runGuard, viteCommands } from "./packages/vite/src/cli/index.js";
5
5
  import { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, ResolvedDbx, dbx, dbxTaskCommand, resolveDbx, runDbx } from "./packages/vite/src/plugin.js";
6
6
  import { viteProvider } from "./packages/vite/src/provider.js";
7
- import { ResolveViteOptions, resolveVite } from "./packages/vite/src/resolve.js";
7
+ import { ResolveViteInput, ResolveViteOptions, resolveVite } from "./packages/vite/src/resolve.js";
8
8
  import { VITE_CONFIG_SHIM, renderViteConfig, viteConfigObject, viteSyncTask } from "./packages/vite/src/sync.js";
9
9
  import { ResolvedVp, RunVpOptions, VpResult, VpSource, describeVp, hasVp, resolveVp, runVp, vpVersion, which } from "./packages/vite/src/vp.js";
10
10
  import "./packages/vite/src/index.js";
11
- export { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, hasVp, renderViteConfig, resolveDbx, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
11
+ export { DBX_TASKS, DBX_TIMEOUT_MS, DbxPluginOptions, DbxSource, ResolveViteInput, ResolveViteOptions, ResolvedDbx, ResolvedVp, RunVpOptions, VITE_CONFIG_SHIM, VP_COMMANDS, VpCommandInfo, VpGroup, VpResult, VpSource, dbx, dbxTaskCommand, describeVp, hasVp, renderViteConfig, resolveDbx, resolveVite, resolveVp, resolveVpCommand, runDbx, runGuard, runVp, viteCommandName, viteCommands, viteConfigObject, viteProvider, viteSyncTask, vpVersion, which };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deltabox/toolchain",
3
- "version": "1.7.8",
3
+ "version": "1.9.1",
4
4
  "description": "All-in-one toolchain: scaffold projects, manage templates, configs, tsconfigs, changelogs and builds.",
5
5
  "homepage": "https://toolchain.deltabox.studio",
6
6
  "author": "Victor Sango <victor@deltabox.studio>",
@@ -54,7 +54,7 @@
54
54
  "dev": "tsx src/cli/index.ts",
55
55
  "dbx": "tsx src/cli/index.ts",
56
56
  "commitlint": "commitlint",
57
- "postinstall": "husky && node scripts/bootstrap.mjs"
57
+ "postinstall": "node scripts/bootstrap.mjs"
58
58
  },
59
59
  "publishConfig": {
60
60
  "access": "public",
@@ -77,17 +77,18 @@
77
77
  "devDependencies": {
78
78
  "@commitlint/cli": "^21.2.2",
79
79
  "@commitlint/config-conventional": "^21.2.2",
80
- "@deltabox/toolchain-biome": "1.7.8",
81
- "@deltabox/toolchain-changelog": "1.7.8",
82
- "@deltabox/toolchain-config": "1.7.8",
83
- "@deltabox/toolchain-core": "1.7.8",
84
- "@deltabox/toolchain-migrate": "1.7.8",
85
- "@deltabox/toolchain-project": "1.7.8",
86
- "@deltabox/toolchain-shared": "1.7.8",
87
- "@deltabox/toolchain-template": "1.7.8",
88
- "@deltabox/toolchain-tsconfig": "1.7.8",
89
- "@deltabox/toolchain-tsdown": "1.7.8",
90
- "@deltabox/toolchain-vite": "1.7.8",
80
+ "@deltabox/toolchain": "portal:.",
81
+ "@deltabox/toolchain-biome": "1.9.1",
82
+ "@deltabox/toolchain-changelog": "1.9.1",
83
+ "@deltabox/toolchain-config": "1.9.1",
84
+ "@deltabox/toolchain-core": "1.9.1",
85
+ "@deltabox/toolchain-migrate": "1.9.1",
86
+ "@deltabox/toolchain-project": "1.9.1",
87
+ "@deltabox/toolchain-shared": "1.9.1",
88
+ "@deltabox/toolchain-template": "1.9.1",
89
+ "@deltabox/toolchain-tsconfig": "1.9.1",
90
+ "@deltabox/toolchain-tsdown": "1.9.1",
91
+ "@deltabox/toolchain-vite": "1.9.1",
91
92
  "@types/node": "^22.10.2",
92
93
  "@typescript/native-preview": "7.0.0-dev.20260707.2",
93
94
  "cross-env": "^10.1.0",
@@ -115,7 +116,8 @@
115
116
  "node": ">=22.5.0"
116
117
  },
117
118
  "files": [
118
- "dist"
119
+ "dist",
120
+ "scripts/bootstrap.mjs"
119
121
  ],
120
122
  "exports": {
121
123
  ".": "./dist/index.js",
@@ -0,0 +1,55 @@
1
+ /**
2
+ * The root `postinstall`: activate husky (a checkout-only step) and bootstrap
3
+ * the built `dist` the generated `vite.config.ts` shim needs.
4
+ *
5
+ * The root `vite.config.ts` is a shim that imports `@deltabox/toolchain/vite`, so
6
+ * `vp` — which loads that config to resolve `run.tasks`/`fmt`/`lint` — needs
7
+ * `dist/vite.js` to exist. Building `dist` normally goes through `vp`, which is a
8
+ * cycle on a fresh checkout (no `dist` -> the shim cannot be resolved -> `vp`
9
+ * cannot run).
10
+ *
11
+ * This builds the two things the root build itself needs — `packages/shared`
12
+ * (the leaf the root tsdown config resolves through) and then the root `dist` —
13
+ * directly with tsdown, so `yarn install` leaves the repo ready for any `vp`
14
+ * command. It is a no-op once `dist/vite.js` exists.
15
+ *
16
+ * The same `postinstall` also runs for consumers who install the published
17
+ * package (npm runs a dependency's `postinstall`). Every step below is therefore
18
+ * guarded so a consumer install is a clean no-op: husky only runs in a checkout
19
+ * (`.husky` present) and the build only runs when there is a source tree
20
+ * (`packages/` present).
21
+ */
22
+
23
+ import { execFileSync, execSync } from 'node:child_process';
24
+ import fs from 'node:fs';
25
+ import path from 'node:path';
26
+ import { fileURLToPath } from 'node:url';
27
+
28
+ const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..');
29
+ const tsdown = path.join(root, 'node_modules', 'tsdown', 'dist', 'run.mjs');
30
+
31
+ // Checkout-only: activate husky's git hooks. A published install has no `.husky`,
32
+ // and `husky` is a devDependency (absent for consumers), so never fail on it.
33
+ if (fs.existsSync(path.join(root, '.husky'))) {
34
+ try {
35
+ execSync('husky', { cwd: root, stdio: 'inherit' });
36
+ } catch {
37
+ // best-effort: a missing husky must not fail the install
38
+ }
39
+ }
40
+
41
+ // Nothing to do before dependencies are installed, or once bootstrapped.
42
+ if (!fs.existsSync(tsdown)) process.exit(0);
43
+ if (fs.existsSync(path.join(root, 'dist', 'vite.js'))) process.exit(0);
44
+ // A published install ships `dist` but no source tree to build.
45
+ if (!fs.existsSync(path.join(root, 'packages'))) process.exit(0);
46
+
47
+ const build = cwd =>
48
+ execFileSync(process.execPath, [tsdown, '--config-loader', 'unrun'], {
49
+ cwd,
50
+ stdio: 'inherit',
51
+ });
52
+
53
+ const shared = path.join(root, 'packages', 'shared');
54
+ if (!fs.existsSync(path.join(shared, 'dist', 'index.js'))) build(shared);
55
+ build(root);