@deltabox/toolchain 1.1.21 → 1.2.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 (34) hide show
  1. package/CHANGELOG.md +50 -4
  2. package/README.md +25 -0
  3. package/dist/config.d.ts +2 -2
  4. package/dist/config.js +1 -1
  5. package/dist/index.d.ts +3 -2
  6. package/dist/index.js +1 -1
  7. package/dist/package.js +1 -1
  8. package/dist/packages/changelog/src/workflows.d.ts +1 -1
  9. package/dist/packages/config/src/generators/types.js +1 -1
  10. package/dist/packages/config/src/index.d.ts +3 -3
  11. package/dist/packages/config/src/index.js +1 -1
  12. package/dist/packages/config/src/schema.d.ts +30 -1
  13. package/dist/packages/config/src/schema.js +1 -1
  14. package/dist/packages/core/src/loader.d.ts +1 -1
  15. package/dist/packages/core/src/project-type.d.ts +1 -1
  16. package/dist/packages/core/src/sync.d.ts +1 -1
  17. package/dist/packages/core/src/vscode.d.ts +1 -1
  18. package/dist/packages/project/src/config.d.ts +1 -1
  19. package/dist/packages/project/src/typescript.d.ts +1 -1
  20. package/dist/packages/shared/src/config-schema.d.ts +1624 -20
  21. package/dist/packages/shared/src/config-schema.js +1 -1
  22. package/dist/packages/shared/src/config-types.d.ts +342 -0
  23. package/dist/packages/shared/src/index.d.ts +4 -3
  24. package/dist/packages/shared/src/index.js +1 -1
  25. package/dist/packages/shared/src/toolchain.d.ts +3 -2
  26. package/dist/packages/shared/src/toolchain.js +1 -1
  27. package/dist/packages/shared/src/types.d.ts +1 -1
  28. package/dist/packages/template/src/online.d.ts +1 -1
  29. package/dist/packages/template/src/registry.d.ts +1 -1
  30. package/dist/packages/template/src/types.d.ts +1 -1
  31. package/dist/packages/vite/src/sync.d.ts +1 -1
  32. package/dist/shared.d.ts +3 -2
  33. package/dist/shared.js +1 -1
  34. package/package.json +14 -12
package/CHANGELOG.md CHANGED
@@ -1,9 +1,58 @@
1
1
  # Changelog
2
2
 
3
- ## 1.1.21 (October 2026)
3
+ ## 1.2.0 (October 2026)
4
4
 
5
5
  <!-- release:start -->
6
6
 
7
+ ### New features
8
+ #### Config
9
+ - Generate the shared config types via the config generator ([#a063a2d](https://github.com/deltabox-studio/toolchain/commit/a063a2d) by [T0chi](https://github.com/T0chi))
10
+ - Teach the config engine's Zod->untyped bridge and types generator to handle
11
+ unions (anyOf/oneOf), `const`, and unknown records, and to render a schema's
12
+ fields on the main interface when it has no `base` group (plus type aliases for
13
+ non-object roots). Named `$ref`s (via `.meta({ id })`) render as the type name,
14
+ so the generated config types reference each other instead of inlining.
15
+ - Generate `packages/shared/src/config-types.ts` from the Zod config model with the
16
+ engine's `renderConfigTypes` (`yarn config:types`); `config-schema.ts` keeps only
17
+ the schemas and the types are exported from `config-types.ts`.
18
+ ### Bug fixes
19
+ #### Vscode
20
+ - Group managed files by project and reorder the views ([#f5b49d9](https://github.com/deltabox-studio/toolchain/commit/f5b49d9) by [T0chi](https://github.com/T0chi))
21
+ - The Managed Files view read a manifest per project, so a monorepo's root-level
22
+ managed files never showed. Read each workspace root's manifest and group its
23
+ files by the deepest project that owns them. Move the Projects view above
24
+ Managed Files (renamed from Files).
25
+ ### Documentation
26
+ - Document the config generator outputs ([#fcfcd69](https://github.com/deltabox-studio/toolchain/commit/fcfcd69) by [T0chi](https://github.com/T0chi))
27
+ - Show a short example of each generated output (config types, markdown, env,
28
+ JSON schema) in the config generator guide and the README.
29
+ - Update vscode extension preview ([#fd90dda](https://github.com/deltabox-studio/toolchain/commit/fd90dda) by [T0chi](https://github.com/T0chi))
30
+
31
+ <!-- release:end -->
32
+
33
+
34
+ ## 1.1.24 (October 2026)
35
+
36
+ ### Documentation
37
+ - Update features ([#071006e](https://github.com/deltabox-studio/toolchain/commit/071006e) by [T0chi](https://github.com/T0chi))
38
+
39
+ ## 1.1.23 (October 2026)
40
+
41
+ ### Documentation
42
+ - Using different logo for the hero ([#552172d](https://github.com/deltabox-studio/toolchain/commit/552172d) by [T0chi](https://github.com/T0chi))
43
+
44
+ ## 1.1.22 (October 2026)
45
+
46
+ ### Bug fixes
47
+ #### Ci
48
+ - Skip the Marketplace publish when VSCE_PAT is unset ([#fe4b3ad](https://github.com/deltabox-studio/toolchain/commit/fe4b3ad) by [T0chi](https://github.com/T0chi))
49
+ - The VS Code Marketplace publish was the only failing release step (no
50
+ VSCE_PAT set). Make it a no-op while the secret is unset and publish
51
+ automatically once it is added to the `toolchain / release` environment.
52
+ - Also remove the temporary OIDC diagnostic step now that the release publishes.
53
+
54
+ ## 1.1.21 (October 2026)
55
+
7
56
  ### Bug fixes
8
57
  #### Ci
9
58
  - Publish to npm directly, falling back to a staged publish ([#85cffe7](https://github.com/deltabox-studio/toolchain/commit/85cffe7) by [T0chi](https://github.com/T0chi))
@@ -16,9 +65,6 @@
16
65
  - Replace the static npm-name badge with a shields.io npm/v badge so the README
17
66
  shows the currently published version.
18
67
 
19
- <!-- release:end -->
20
-
21
-
22
68
  ## 1.1.20 (October 2026)
23
69
 
24
70
  ### Bug fixes
package/README.md CHANGED
@@ -137,6 +137,26 @@ engine.writeEnvFile({ output: '.env.example' });
137
137
  engine.writeMarkdown({ outDir: 'docs/reference/configuration' });
138
138
  ```
139
139
 
140
+ It also generates the TypeScript types — named interfaces with jsdoc from
141
+ `.describe()`, where unions and nested objects stay named instead of being
142
+ inlined:
143
+
144
+ ```ts
145
+ engine.writeConfigTypes({ outputDir: 'types' });
146
+ ```
147
+
148
+ ```ts
149
+ // types/server.ts
150
+ export interface ServerConfig {
151
+ /** HTTP port. */
152
+ port?: number;
153
+ }
154
+ ```
155
+
156
+ The toolchain generates its own config types this way — see
157
+ `packages/shared/src/config-types.ts` and the [config generator
158
+ guide](https://toolchain.deltabox.studio/guide/config-generator#generated-outputs).
159
+
140
160
  `configCommands({ engine })` also exposes the same generators as `config:*`
141
161
  commands on your own CLI. See the [config generator
142
162
  guide](https://toolchain.deltabox.studio/guide/config-generator).
@@ -193,6 +213,11 @@ await runSync({ tasks: defaultSyncTasks(), cwd: process.cwd(), config, tokens, p
193
213
 
194
214
  A VS Code extension is available for `deltabox toolchain`.
195
215
 
216
+ <div align="center">
217
+ <img src="./apps/docs/public/vscode-img-1.png" width="250" />
218
+ <img src="./apps/docs/public/vscode-img-2.png" width="250" />
219
+ </div>
220
+
196
221
  Follow the steps below to use it. Will be published to the marketplace in the future.
197
222
 
198
223
  1. Download `deltabox-toolchain.vsix` from [releases](https://github.com/deltabox-studio/toolchain/releases).
package/dist/config.d.ts CHANGED
@@ -12,7 +12,7 @@ import { GenerateTypesOptions, generateConfigTypes, renderAllConfigTypes, render
12
12
  import { ConfigEngine, createConfigEngine } from "./packages/config/src/engine.js";
13
13
  import { EnvSource, EnvTree, applyOverrides, envBool, envInt, envList, envMap, envString, parseEnvTree, readEnvPath, trimTrailingSlashes } from "./packages/config/src/env.js";
14
14
  import { findProjectRoot, monorepoRoot } from "./packages/config/src/root.js";
15
- import { SplitSchema, compileZodSchema, envMetaOf, flattenBaseSchema, resolveUntypedSchema, splitBaseSchema, zodToJsonSchema, zodToUntypedDefinition } from "./packages/config/src/schema.js";
15
+ import { SplitSchema, compileZodSchema, envMetaOf, flattenBaseSchema, renderTsType, resolveUntypedSchema, splitBaseSchema, zodToJsonSchema, zodToUntypedDefinition } from "./packages/config/src/schema.js";
16
16
  import "./packages/config/src/index.js";
17
17
  import { ConfigCommandContext, ConfigCommandDefaults, configCommands } from "./packages/config/src/cli/index.js";
18
- export { BuildConfigJsonOptions, CliArgsOptionConfig, CliArgsParser, CliArgsResult, CliArgsValues, CliFlagOptions, CliOptionDef, CollectEnvVarsOptions, ConfigCommandContext, ConfigCommandDefaults, ConfigEngine, ConfigEngineOptions, ConfigFileSection, ConfigJsonDoc, ConfigJsonEntry, ConfigScopeDef, ConfigScopes, DEFAULT_ENV_PREFIX, EnvFileOptions, EnvSource, EnvTree, EnvValueType, EnvVarDef, EnvVarMeta, GenerateCliOptionsOptions, GenerateEnvTypesOptions, GenerateJsonSchemaOptions, GenerateMarkdownOptions, GenerateTypesOptions, RenderConfigFileOptions, RenderMarkdownOptions, SplitSchema, applyOverrides, buildConfigJson, cliFlagLabel, cliFlagOf, cliShortOf, collectEnvVars, collectRequiredEnvVars, compileZodSchema, configCommands, createCliArgsParser, createConfigEngine, envBool, envInt, envList, envMap, envMetaOf, envPathOf, envString, findProjectRoot, flagOf, flattenBaseSchema, generateCliArgsOptions, generateCliOptions, generateConfigJsonSchema, generateConfigMarkdown, generateConfigTypes, generateEnv, generateEnvDts, generateEnvFile, generateEnvTypes, generateJsonSchemaFile, monorepoRoot, parseEnvTree, readEnvPath, renderAllConfigTypes, renderConfigFileMarkdown, renderConfigIndex, renderConfigTypes, renderScopeMarkdown, resolveScopeSchema, resolveUntypedSchema, splitBaseSchema, trimTrailingSlashes, zodToJsonSchema, zodToUntypedDefinition };
18
+ export { BuildConfigJsonOptions, CliArgsOptionConfig, CliArgsParser, CliArgsResult, CliArgsValues, CliFlagOptions, CliOptionDef, CollectEnvVarsOptions, ConfigCommandContext, ConfigCommandDefaults, ConfigEngine, ConfigEngineOptions, ConfigFileSection, ConfigJsonDoc, ConfigJsonEntry, ConfigScopeDef, ConfigScopes, DEFAULT_ENV_PREFIX, EnvFileOptions, EnvSource, EnvTree, EnvValueType, EnvVarDef, EnvVarMeta, GenerateCliOptionsOptions, GenerateEnvTypesOptions, GenerateJsonSchemaOptions, GenerateMarkdownOptions, GenerateTypesOptions, RenderConfigFileOptions, RenderMarkdownOptions, SplitSchema, applyOverrides, buildConfigJson, cliFlagLabel, cliFlagOf, cliShortOf, collectEnvVars, collectRequiredEnvVars, compileZodSchema, configCommands, createCliArgsParser, createConfigEngine, envBool, envInt, envList, envMap, envMetaOf, envPathOf, envString, findProjectRoot, flagOf, flattenBaseSchema, generateCliArgsOptions, generateCliOptions, generateConfigJsonSchema, generateConfigMarkdown, generateConfigTypes, generateEnv, generateEnvDts, generateEnvFile, generateEnvTypes, generateJsonSchemaFile, monorepoRoot, parseEnvTree, readEnvPath, renderAllConfigTypes, renderConfigFileMarkdown, renderConfigIndex, renderConfigTypes, renderScopeMarkdown, renderTsType, resolveScopeSchema, resolveUntypedSchema, splitBaseSchema, trimTrailingSlashes, zodToJsonSchema, zodToUntypedDefinition };
package/dist/config.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{compileZodSchema as e,envMetaOf as t,flattenBaseSchema as n,resolveUntypedSchema as r,splitBaseSchema as i,zodToJsonSchema as a,zodToUntypedDefinition as o}from"./packages/config/src/schema.js";import{envPathOf as s}from"./packages/config/src/types.js";import{DEFAULT_ENV_PREFIX as c,collectEnvVars as l,collectRequiredEnvVars as u}from"./packages/config/src/collect.js";import{buildConfigJson as d}from"./packages/config/src/config-json.js";import{generateEnvFile as f}from"./packages/config/src/env-file.js";import{cliFlagLabel as p,cliFlagOf as m,cliShortOf as h,createCliArgsParser as g,flagOf as _,generateCliArgsOptions as v,generateCliOptions as y}from"./packages/config/src/generators/cli.js";import{generateEnv as b,generateEnvDts as x,generateEnvTypes as S}from"./packages/config/src/generators/env.js";import{generateConfigJsonSchema as C,generateJsonSchemaFile as w}from"./packages/config/src/generators/json.js";import{generateConfigMarkdown as T,renderConfigFileMarkdown as E,renderConfigIndex as D,renderScopeMarkdown as O}from"./packages/config/src/generators/markdown.js";import{generateConfigTypes as k,renderAllConfigTypes as A,renderConfigTypes as j,resolveScopeSchema as M}from"./packages/config/src/generators/types.js";import{findProjectRoot as N,monorepoRoot as P}from"./packages/config/src/root.js";import{createConfigEngine as F}from"./packages/config/src/engine.js";import{applyOverrides as I,envBool as L,envInt as R,envList as z,envMap as B,envString as V,parseEnvTree as H,readEnvPath as U,trimTrailingSlashes as W}from"./packages/config/src/env.js";import"./packages/config/src/index.js";import{configCommands as G}from"./packages/config/src/cli/index.js";export{c as DEFAULT_ENV_PREFIX,I as applyOverrides,d as buildConfigJson,p as cliFlagLabel,m as cliFlagOf,h as cliShortOf,l as collectEnvVars,u as collectRequiredEnvVars,e as compileZodSchema,G as configCommands,g as createCliArgsParser,F as createConfigEngine,L as envBool,R as envInt,z as envList,B as envMap,t as envMetaOf,s as envPathOf,V as envString,N as findProjectRoot,_ as flagOf,n as flattenBaseSchema,v as generateCliArgsOptions,y as generateCliOptions,C as generateConfigJsonSchema,T as generateConfigMarkdown,k as generateConfigTypes,b as generateEnv,x as generateEnvDts,f as generateEnvFile,S as generateEnvTypes,w as generateJsonSchemaFile,P as monorepoRoot,H as parseEnvTree,U as readEnvPath,A as renderAllConfigTypes,E as renderConfigFileMarkdown,D as renderConfigIndex,j as renderConfigTypes,O as renderScopeMarkdown,M as resolveScopeSchema,r as resolveUntypedSchema,i as splitBaseSchema,W as trimTrailingSlashes,a as zodToJsonSchema,o as zodToUntypedDefinition};
1
+ import"node:path";import"node:url";import.meta.url;import{compileZodSchema as e,envMetaOf as t,flattenBaseSchema as n,renderTsType as r,resolveUntypedSchema as i,splitBaseSchema as a,zodToJsonSchema as o,zodToUntypedDefinition as s}from"./packages/config/src/schema.js";import{envPathOf as c}from"./packages/config/src/types.js";import{DEFAULT_ENV_PREFIX as l,collectEnvVars as u,collectRequiredEnvVars as d}from"./packages/config/src/collect.js";import{buildConfigJson as f}from"./packages/config/src/config-json.js";import{generateEnvFile as p}from"./packages/config/src/env-file.js";import{cliFlagLabel as m,cliFlagOf as h,cliShortOf as g,createCliArgsParser as _,flagOf as v,generateCliArgsOptions as y,generateCliOptions as b}from"./packages/config/src/generators/cli.js";import{generateEnv as x,generateEnvDts as S,generateEnvTypes as C}from"./packages/config/src/generators/env.js";import{generateConfigJsonSchema as w,generateJsonSchemaFile as T}from"./packages/config/src/generators/json.js";import{generateConfigMarkdown as E,renderConfigFileMarkdown as D,renderConfigIndex as O,renderScopeMarkdown as k}from"./packages/config/src/generators/markdown.js";import{generateConfigTypes as A,renderAllConfigTypes as j,renderConfigTypes as M,resolveScopeSchema as N}from"./packages/config/src/generators/types.js";import{findProjectRoot as P,monorepoRoot as F}from"./packages/config/src/root.js";import{createConfigEngine as I}from"./packages/config/src/engine.js";import{applyOverrides as L,envBool as R,envInt as z,envList as B,envMap as V,envString as H,parseEnvTree as U,readEnvPath as W,trimTrailingSlashes as G}from"./packages/config/src/env.js";import"./packages/config/src/index.js";import{configCommands as K}from"./packages/config/src/cli/index.js";export{l as DEFAULT_ENV_PREFIX,L as applyOverrides,f as buildConfigJson,m as cliFlagLabel,h as cliFlagOf,g as cliShortOf,u as collectEnvVars,d as collectRequiredEnvVars,e as compileZodSchema,K as configCommands,_ as createCliArgsParser,I as createConfigEngine,R as envBool,z as envInt,B as envList,V as envMap,t as envMetaOf,c as envPathOf,H as envString,P as findProjectRoot,v as flagOf,n as flattenBaseSchema,y as generateCliArgsOptions,b as generateCliOptions,w as generateConfigJsonSchema,E as generateConfigMarkdown,A as generateConfigTypes,x as generateEnv,S as generateEnvDts,p as generateEnvFile,C as generateEnvTypes,T as generateJsonSchemaFile,F as monorepoRoot,U as parseEnvTree,W as readEnvPath,j as renderAllConfigTypes,D as renderConfigFileMarkdown,O as renderConfigIndex,M as renderConfigTypes,k as renderScopeMarkdown,r as renderTsType,N as resolveScopeSchema,i as resolveUntypedSchema,a as splitBaseSchema,G as trimTrailingSlashes,o as zodToJsonSchema,s as zodToUntypedDefinition};
package/dist/index.d.ts CHANGED
@@ -6,8 +6,9 @@ import { ToolingProvider, ToolingProviderAction, ToolingProviderCommand, provide
6
6
  import { RunOptions, run, spawnCross } from "./packages/shared/src/run.js";
7
7
  import { asString, camelCase, camelCaseId, capitalize, constantCase, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, formatCliFlag, hasText, indent, isLocalhost, kebabCase, pascalCase, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, sanitizeSlashes, snakeCase, str, titleCase } from "./packages/shared/src/string-utils.js";
8
8
  import { ReplacementOptions, ReplacementValue, Replacements, Replacer, applyReplacements, applyReplacementsDeep, createReplacer, defineReplacements, extractTokens, hasUnresolvedTokens, tokenPattern } from "./packages/shared/src/template.js";
9
- import { CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, ChangelogWorkflowsConfig, DbxConfigSections, ProjectType, ToolingBiomeConfig, ToolingChangelogConfig, ToolingConfigSections, ToolingProjectConfig, ToolingTemplateKind, ToolingTemplateSource, ToolingTemplateSourceType, ToolingTemplatesConfig, ToolingTsconfigConfig, ToolingViteConfig, ToolingWatchConfig, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, biomeConfigSchema, changelogConfigSchema, changelogWorkflowsConfigSchema, dbxConfigSchema, projectConfigSchema, projectTypeSchema, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, toolingConfigSchema, tsconfigConfigSchema, viteConfigSchema, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema } from "./packages/shared/src/config-schema.js";
9
+ import { ChangelogWorkflowsConfig, DbxConfigSections, ProjectType, ToolingBiomeConfig, ToolingChangelogConfig, ToolingConfigSections, ToolingProjectConfig, ToolingTemplateKind, ToolingTemplateSource, ToolingTemplateSourceType, ToolingTemplatesConfig, ToolingTsconfigConfig, ToolingViteConfig, ToolingWatchConfig, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig } from "./packages/shared/src/config-types.js";
10
10
  import { Awaitable, GeneratedFile, JsonValue, PackageJson, ToolingArgument, ToolingCommand, ToolingCommandContext, ToolingOption } from "./packages/shared/src/types.js";
11
+ import { CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, CONFIG_TYPE_SCHEMAS, biomeConfigSchema, changelogConfigSchema, changelogWorkflowsConfigSchema, dbxConfigSchema, projectConfigSchema, projectTypeSchema, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, toolingConfigSchema, tsconfigConfigSchema, viteConfigSchema, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema } from "./packages/shared/src/config-schema.js";
11
12
  import { CONFIG_FILE_NAMES, DbxConfig, ManagedFile, SyncContext, SyncSummary, SyncTask, ToolingConfig, ToolingHooks, ToolingSection, defineConfig, repoSlugFromUrl, resolveTokens, sectionConfig, sectionEnabled } from "./packages/shared/src/toolchain.js";
12
13
  import { YamlValue, toYaml } from "./packages/shared/src/yaml.js";
13
14
  import { index_d_exports as index_d_exports$5 } from "./packages/shared/src/index.js";
@@ -28,4 +29,4 @@ import { index_d_exports as index_d_exports$6 } from "./packages/tsconfig/src/in
28
29
  import { index_d_exports as index_d_exports$4 } from "./packages/project/src/index.js";
29
30
  import { index_d_exports as index_d_exports$7 } from "./packages/tsdown/src/index.js";
30
31
  import { defaultSyncTasks } from "./sync.js";
31
- export { Awaitable, BuildProjectGraphOptions, CONFIG_FILE_NAMES, CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, ChangelogWorkflowsConfig, DbxConfig, DbxConfigSections, GeneratedFile, IGNORED_DIRS, JsonValue, LoadedConfig, MANIFEST_DIR, MANIFEST_FILE, ManagedFile, Manifest, PackageJson, PackageManager, ProjectGraph, ProjectNode, ProjectType, ReplacementOptions, ReplacementValue, Replacements, Replacer, ResetProjectsOptions, ResetProjectsResult, ResetSelectors, ResetToolingOptions, ResetToolingResult, RunOptions, RunSyncOptions, RunWatchOptions, SelectProjectsOptions, SelectedProject, Sortable, SyncContext, SyncResult, SyncSummary, SyncTask, ToolingArgument, ToolingBiomeConfig, ToolingChangelogConfig, ToolingCommand, ToolingCommandContext, ToolingConfig, ToolingConfigSections, ToolingHooks, ToolingOption, ToolingProjectConfig, ToolingProvider, ToolingProviderAction, ToolingProviderCommand, ToolingSection, ToolingTemplateKind, ToolingTemplateSource, ToolingTemplateSourceType, ToolingTemplatesConfig, ToolingTsconfigConfig, ToolingViteConfig, ToolingWatchConfig, VscodeSyncOptions, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, type YamlValue, applyReplacements, applyReplacementsDeep, asString, index_d_exports as biome, biomeConfigSchema, buildProjectGraph, camelCase, camelCaseId, capitalize, index_d_exports$1 as changelog, changelogConfigSchema, changelogWorkflowsConfigSchema, index_d_exports$2 as config, constantCase, index_d_exports$3 as core, createReplacer, dbxConfigSchema, deepMerge, defaultSyncTasks, defineConfig, defineReplacements, detectPackageManager, detectProjectType, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, extractTokens, findConfigFile, formatCliFlag, hasText, hasUnresolvedTokens, indent, isLocalhost, isPlainObject, kebabCase, loadToolingConfig, mapValues, mergeJsonAt, orderProjects, pascalCase, index_d_exports$4 as project, projectConfigSchema, projectGraphPath, projectTypeSchema, providerActions, readJsonAt, readJsonFile, readManifest, readProjectGraph, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, repoSlugFromUrl, resetProjects, resetTooling, resolveProjectType, resolveSort, resolveTokens, run, runSync, runWatch, sanitizeSlashes, sectionConfig, sectionEnabled, selectProjects, index_d_exports$5 as shared, snakeCase, sort, spawnCross, str, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, titleCase, toJson, toYaml, tokenPattern, toolingConfigSchema, index_d_exports$6 as tsconfig, tsconfigConfigSchema, index_d_exports$7 as tsdown, viteConfigSchema, vscodeSyncTask, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema, writeJsonFile, writeManifest, writeProjectGraph };
32
+ export { Awaitable, BuildProjectGraphOptions, CONFIG_FILE_NAMES, CONFIG_SECTION_DESCRIPTIONS, CONFIG_SECTION_SCHEMAS, CONFIG_TYPE_SCHEMAS, ChangelogWorkflowsConfig, DbxConfig, DbxConfigSections, GeneratedFile, IGNORED_DIRS, JsonValue, LoadedConfig, MANIFEST_DIR, MANIFEST_FILE, ManagedFile, Manifest, PackageJson, PackageManager, ProjectGraph, ProjectNode, ProjectType, ReplacementOptions, ReplacementValue, Replacements, Replacer, ResetProjectsOptions, ResetProjectsResult, ResetSelectors, ResetToolingOptions, ResetToolingResult, RunOptions, RunSyncOptions, RunWatchOptions, SelectProjectsOptions, SelectedProject, Sortable, SyncContext, SyncResult, SyncSummary, SyncTask, ToolingArgument, ToolingBiomeConfig, ToolingChangelogConfig, ToolingCommand, ToolingCommandContext, ToolingConfig, ToolingConfigSections, ToolingHooks, ToolingOption, ToolingProjectConfig, ToolingProvider, ToolingProviderAction, ToolingProviderCommand, ToolingSection, ToolingTemplateKind, ToolingTemplateSource, ToolingTemplateSourceType, ToolingTemplatesConfig, ToolingTsconfigConfig, ToolingViteConfig, ToolingWatchConfig, VscodeSyncOptions, WorkflowConfig, WorkflowSetting, WorkflowStep, WorkflowStepsConfig, type YamlValue, applyReplacements, applyReplacementsDeep, asString, index_d_exports as biome, biomeConfigSchema, buildProjectGraph, camelCase, camelCaseId, capitalize, index_d_exports$1 as changelog, changelogConfigSchema, changelogWorkflowsConfigSchema, index_d_exports$2 as config, constantCase, index_d_exports$3 as core, createReplacer, dbxConfigSchema, deepMerge, defaultSyncTasks, defineConfig, defineReplacements, detectPackageManager, detectProjectType, ensureLeadingSlash, ensureSlashes, ensureTrailingSlash, extractTokens, findConfigFile, formatCliFlag, hasText, hasUnresolvedTokens, indent, isLocalhost, isPlainObject, kebabCase, loadToolingConfig, mapValues, mergeJsonAt, orderProjects, pascalCase, index_d_exports$4 as project, projectConfigSchema, projectGraphPath, projectTypeSchema, providerActions, readJsonAt, readJsonFile, readManifest, readProjectGraph, removeDoubleSlashes, removeLeadingSlash, removeTrailingSlash, repoSlugFromUrl, resetProjects, resetTooling, resolveProjectType, resolveSort, resolveTokens, run, runSync, runWatch, sanitizeSlashes, sectionConfig, sectionEnabled, selectProjects, index_d_exports$5 as shared, snakeCase, sort, spawnCross, str, templateKindSchema, templateSourceSchema, templateSourceTypeSchema, templatesConfigSchema, titleCase, toJson, toYaml, tokenPattern, toolingConfigSchema, index_d_exports$6 as tsconfig, tsconfigConfigSchema, index_d_exports$7 as tsdown, viteConfigSchema, vscodeSyncTask, watchConfigSchema, workflowConfigSchema, workflowSettingSchema, workflowStepSchema, workflowStepsConfigSchema, writeJsonFile, writeManifest, writeProjectGraph };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{deepMerge as e,isPlainObject as t,mapValues as n,resolveSort as r,sort as i}from"./packages/shared/src/object-utils.js";import{mergeJsonAt as a,readJsonAt as o,readJsonFile as s,toJson as c,writeJsonFile as l}from"./packages/shared/src/fs-utils.js";import{providerActions as u}from"./packages/shared/src/provider.js";import{run as d,spawnCross as f}from"./packages/shared/src/run.js";import{asString as p,camelCase as m,camelCaseId as h,capitalize as g,constantCase as _,ensureLeadingSlash as v,ensureSlashes as y,ensureTrailingSlash as b,formatCliFlag as x,hasText as S,indent as C,isLocalhost as w,kebabCase as T,pascalCase as E,removeDoubleSlashes as D,removeLeadingSlash as O,removeTrailingSlash as k,sanitizeSlashes as A,snakeCase as j,str as M,titleCase as N}from"./packages/shared/src/string-utils.js";import{applyReplacements as P,applyReplacementsDeep as F,createReplacer as I,defineReplacements as L,extractTokens as R,hasUnresolvedTokens as z,tokenPattern as B}from"./packages/shared/src/template.js";import{CONFIG_SECTION_DESCRIPTIONS as V,CONFIG_SECTION_SCHEMAS as H,biomeConfigSchema as U,changelogConfigSchema as W,changelogWorkflowsConfigSchema as G,dbxConfigSchema as K,projectConfigSchema as q,projectTypeSchema as J,templateKindSchema as Y,templateSourceSchema as X,templateSourceTypeSchema as Z,templatesConfigSchema as Q,toolingConfigSchema as $,tsconfigConfigSchema as ee,viteConfigSchema as te,watchConfigSchema as ne,workflowConfigSchema as re,workflowSettingSchema as ie,workflowStepSchema as ae,workflowStepsConfigSchema as oe}from"./packages/shared/src/config-schema.js";import{CONFIG_FILE_NAMES as se,defineConfig as ce,repoSlugFromUrl as le,resolveTokens as ue,sectionConfig as de,sectionEnabled as fe}from"./packages/shared/src/toolchain.js";import{toYaml as pe}from"./packages/shared/src/yaml.js";import{src_exports as me}from"./packages/shared/src/index.js";import{src_exports as he}from"./packages/biome/src/index.js";import{src_exports as ge}from"./packages/changelog/src/index.js";import{src_exports as _e}from"./packages/config/src/index.js";import{detectProjectType as ve,resolveProjectType as ye}from"./packages/core/src/project-type.js";import{findConfigFile as be,loadToolingConfig as xe}from"./packages/core/src/loader.js";import{IGNORED_DIRS as Se,buildProjectGraph as Ce,detectPackageManager as we,orderProjects as Te,projectGraphPath as Ee,readProjectGraph as De,writeProjectGraph as Oe}from"./packages/core/src/graph.js";import{MANIFEST_DIR as ke,MANIFEST_FILE as Ae,readManifest as je,writeManifest as Me}from"./packages/core/src/manifest.js";import{selectProjects as Ne}from"./packages/core/src/select.js";import{resetProjects as Pe,resetTooling as Fe}from"./packages/core/src/reset.js";import{runSync as Ie}from"./packages/core/src/sync.js";import{vscodeSyncTask as Le}from"./packages/core/src/vscode.js";import{runWatch as Re}from"./packages/core/src/watch.js";import{src_exports as ze}from"./packages/core/src/index.js";import{src_exports as Be}from"./packages/tsconfig/src/index.js";import{src_exports as Ve}from"./packages/project/src/index.js";import{src_exports as He}from"./packages/tsdown/src/index.js";import{defaultSyncTasks as Ue}from"./sync.js";export{se as CONFIG_FILE_NAMES,V as CONFIG_SECTION_DESCRIPTIONS,H as CONFIG_SECTION_SCHEMAS,Se as IGNORED_DIRS,ke as MANIFEST_DIR,Ae as MANIFEST_FILE,P as applyReplacements,F as applyReplacementsDeep,p as asString,he as biome,U as biomeConfigSchema,Ce as buildProjectGraph,m as camelCase,h as camelCaseId,g as capitalize,ge as changelog,W as changelogConfigSchema,G as changelogWorkflowsConfigSchema,_e as config,_ as constantCase,ze as core,I as createReplacer,K as dbxConfigSchema,e as deepMerge,Ue as defaultSyncTasks,ce as defineConfig,L as defineReplacements,we as detectPackageManager,ve as detectProjectType,v as ensureLeadingSlash,y as ensureSlashes,b as ensureTrailingSlash,R as extractTokens,be as findConfigFile,x as formatCliFlag,S as hasText,z as hasUnresolvedTokens,C as indent,w as isLocalhost,t as isPlainObject,T as kebabCase,xe as loadToolingConfig,n as mapValues,a as mergeJsonAt,Te as orderProjects,E as pascalCase,Ve as project,q as projectConfigSchema,Ee as projectGraphPath,J as projectTypeSchema,u as providerActions,o as readJsonAt,s as readJsonFile,je as readManifest,De as readProjectGraph,D as removeDoubleSlashes,O as removeLeadingSlash,k as removeTrailingSlash,le as repoSlugFromUrl,Pe as resetProjects,Fe as resetTooling,ye as resolveProjectType,r as resolveSort,ue as resolveTokens,d as run,Ie as runSync,Re as runWatch,A as sanitizeSlashes,de as sectionConfig,fe as sectionEnabled,Ne as selectProjects,me as shared,j as snakeCase,i as sort,f as spawnCross,M as str,Y as templateKindSchema,X as templateSourceSchema,Z as templateSourceTypeSchema,Q as templatesConfigSchema,N as titleCase,c as toJson,pe as toYaml,B as tokenPattern,$ as toolingConfigSchema,Be as tsconfig,ee as tsconfigConfigSchema,He as tsdown,te as viteConfigSchema,Le as vscodeSyncTask,ne as watchConfigSchema,re as workflowConfigSchema,ie as workflowSettingSchema,ae as workflowStepSchema,oe as workflowStepsConfigSchema,l as writeJsonFile,Me as writeManifest,Oe as writeProjectGraph};
1
+ import"node:path";import"node:url";import.meta.url;import{deepMerge as e,isPlainObject as t,mapValues as n,resolveSort as r,sort as i}from"./packages/shared/src/object-utils.js";import{mergeJsonAt as a,readJsonAt as o,readJsonFile as s,toJson as c,writeJsonFile as l}from"./packages/shared/src/fs-utils.js";import{providerActions as u}from"./packages/shared/src/provider.js";import{run as d,spawnCross as f}from"./packages/shared/src/run.js";import{asString as p,camelCase as m,camelCaseId as h,capitalize as g,constantCase as _,ensureLeadingSlash as v,ensureSlashes as y,ensureTrailingSlash as b,formatCliFlag as x,hasText as S,indent as C,isLocalhost as w,kebabCase as T,pascalCase as E,removeDoubleSlashes as D,removeLeadingSlash as O,removeTrailingSlash as k,sanitizeSlashes as A,snakeCase as j,str as M,titleCase as N}from"./packages/shared/src/string-utils.js";import{applyReplacements as P,applyReplacementsDeep as F,createReplacer as I,defineReplacements as L,extractTokens as R,hasUnresolvedTokens as z,tokenPattern as B}from"./packages/shared/src/template.js";import{CONFIG_SECTION_DESCRIPTIONS as V,CONFIG_SECTION_SCHEMAS as H,CONFIG_TYPE_SCHEMAS as U,biomeConfigSchema as W,changelogConfigSchema as G,changelogWorkflowsConfigSchema as K,dbxConfigSchema as q,projectConfigSchema as J,projectTypeSchema as Y,templateKindSchema as X,templateSourceSchema as Z,templateSourceTypeSchema as Q,templatesConfigSchema as $,toolingConfigSchema as ee,tsconfigConfigSchema as te,viteConfigSchema as ne,watchConfigSchema as re,workflowConfigSchema as ie,workflowSettingSchema as ae,workflowStepSchema as oe,workflowStepsConfigSchema as se}from"./packages/shared/src/config-schema.js";import{CONFIG_FILE_NAMES as ce,defineConfig as le,repoSlugFromUrl as ue,resolveTokens as de,sectionConfig as fe,sectionEnabled as pe}from"./packages/shared/src/toolchain.js";import{toYaml as me}from"./packages/shared/src/yaml.js";import{src_exports as he}from"./packages/shared/src/index.js";import{src_exports as ge}from"./packages/biome/src/index.js";import{src_exports as _e}from"./packages/changelog/src/index.js";import{src_exports as ve}from"./packages/config/src/index.js";import{detectProjectType as ye,resolveProjectType as be}from"./packages/core/src/project-type.js";import{findConfigFile as xe,loadToolingConfig as Se}from"./packages/core/src/loader.js";import{IGNORED_DIRS as Ce,buildProjectGraph as we,detectPackageManager as Te,orderProjects as Ee,projectGraphPath as De,readProjectGraph as Oe,writeProjectGraph as ke}from"./packages/core/src/graph.js";import{MANIFEST_DIR as Ae,MANIFEST_FILE as je,readManifest as Me,writeManifest as Ne}from"./packages/core/src/manifest.js";import{selectProjects as Pe}from"./packages/core/src/select.js";import{resetProjects as Fe,resetTooling as Ie}from"./packages/core/src/reset.js";import{runSync as Le}from"./packages/core/src/sync.js";import{vscodeSyncTask as Re}from"./packages/core/src/vscode.js";import{runWatch as ze}from"./packages/core/src/watch.js";import{src_exports as Be}from"./packages/core/src/index.js";import{src_exports as Ve}from"./packages/tsconfig/src/index.js";import{src_exports as He}from"./packages/project/src/index.js";import{src_exports as Ue}from"./packages/tsdown/src/index.js";import{defaultSyncTasks as We}from"./sync.js";export{ce as CONFIG_FILE_NAMES,V as CONFIG_SECTION_DESCRIPTIONS,H as CONFIG_SECTION_SCHEMAS,U as CONFIG_TYPE_SCHEMAS,Ce as IGNORED_DIRS,Ae as MANIFEST_DIR,je as MANIFEST_FILE,P as applyReplacements,F as applyReplacementsDeep,p as asString,ge as biome,W as biomeConfigSchema,we as buildProjectGraph,m as camelCase,h as camelCaseId,g as capitalize,_e as changelog,G as changelogConfigSchema,K as changelogWorkflowsConfigSchema,ve as config,_ as constantCase,Be as core,I as createReplacer,q as dbxConfigSchema,e as deepMerge,We as defaultSyncTasks,le as defineConfig,L as defineReplacements,Te as detectPackageManager,ye as detectProjectType,v as ensureLeadingSlash,y as ensureSlashes,b as ensureTrailingSlash,R as extractTokens,xe as findConfigFile,x as formatCliFlag,S as hasText,z as hasUnresolvedTokens,C as indent,w as isLocalhost,t as isPlainObject,T as kebabCase,Se as loadToolingConfig,n as mapValues,a as mergeJsonAt,Ee as orderProjects,E as pascalCase,He as project,J as projectConfigSchema,De as projectGraphPath,Y as projectTypeSchema,u as providerActions,o as readJsonAt,s as readJsonFile,Me as readManifest,Oe as readProjectGraph,D as removeDoubleSlashes,O as removeLeadingSlash,k as removeTrailingSlash,ue as repoSlugFromUrl,Fe as resetProjects,Ie as resetTooling,be as resolveProjectType,r as resolveSort,de as resolveTokens,d as run,Le as runSync,ze as runWatch,A as sanitizeSlashes,fe as sectionConfig,pe as sectionEnabled,Pe as selectProjects,he as shared,j as snakeCase,i as sort,f as spawnCross,M as str,X as templateKindSchema,Z as templateSourceSchema,Q as templateSourceTypeSchema,$ as templatesConfigSchema,N as titleCase,c as toJson,me as toYaml,B as tokenPattern,ee as toolingConfigSchema,Ve as tsconfig,te as tsconfigConfigSchema,Ue as tsdown,ne as viteConfigSchema,Re as vscodeSyncTask,re as watchConfigSchema,ie as workflowConfigSchema,ae as workflowSettingSchema,oe as workflowStepSchema,se as workflowStepsConfigSchema,l as writeJsonFile,Ne as writeManifest,ke as writeProjectGraph};
package/dist/package.js CHANGED
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;var e=`1.1.21`;export{e as version};
1
+ import"node:path";import"node:url";import.meta.url;var e=`1.2.0`;export{e as version};
@@ -1,7 +1,7 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
3
  import { Replacements } from "../../shared/src/template.js";
4
- import { WorkflowConfig, WorkflowSetting, WorkflowStep } from "../../shared/src/config-schema.js";
4
+ import { WorkflowConfig, WorkflowSetting, WorkflowStep } from "../../shared/src/config-types.js";
5
5
  import "../../shared/src/index.js";
6
6
  //#region packages/changelog/src/workflows.d.ts
7
7
  export interface WorkflowJob {
@@ -1 +1 @@
1
- import{default as e}from"node:path";import"node:url";import.meta.url;import{pascalCase as t}from"../../../shared/src/string-utils.js";import"../../../shared/src/index.js";import{splitBaseSchema as n,zodToJsonSchema as r}from"../schema.js";import i from"node:fs";import{generateTypes as a}from"untyped";const o={addExport:!0,partial:!0};function s(e,t){return e??r(t)}function c(e,r,i={}){let s=i.baseGroup??`base`,c=i.interfaceNames?.[e]??`${t(e)}Config`,l=i.aliases?.[e]??``,{base:u,groups:d,hasBase:f}=n(r,s),p=Object.keys(d.properties??{}),m=a(u,{...o,interfaceName:`${c}Base`}),h;h=f&&p.length>0?a(d,{...o,interfaceName:c}).replace(`export interface ${c} {`,`export interface ${c} extends ${c}Base {`):f?`export interface ${c} extends ${c}Base {}\n`:a(d,{...o,interfaceName:c});let g=`${m}\n${h}\n${l}`;return i.header?`${i.header}\n\n${g}`:g}function l(e,t={}){return Object.fromEntries(Object.entries(e).map(([e,n])=>[e,c(e,s(n.jsonSchema,n.zodSchema),t)]))}function u(t,n){let r=n.extension??`ts`,a=[];for(let[o,s]of Object.entries(l(t,n))){let t=e.join(n.outputDir,`${o}.${r}`);i.mkdirSync(e.dirname(t),{recursive:!0}),i.writeFileSync(t,s,`utf-8`),a.push(t)}return a}export{u as generateConfigTypes,l as renderAllConfigTypes,c as renderConfigTypes,s as resolveScopeSchema};
1
+ import{default as e}from"node:path";import"node:url";import.meta.url;import{pascalCase as t}from"../../../shared/src/string-utils.js";import"../../../shared/src/index.js";import{splitBaseSchema as n,zodToJsonSchema as r}from"../schema.js";import i from"node:fs";import{generateTypes as a}from"untyped";const o={addExport:!0,partial:!0};function s(e,t){return e??r(t)}function c(e,r,i={}){let s=i.baseGroup??`base`,c=i.interfaceNames?.[e]??`${t(e)}Config`,l=i.aliases?.[e]??``,u=e=>i.header?`${i.header}\n\n${e}`:e;if(!r.properties)return u(`export type ${c} = ${r.tsType??`unknown`};\n${l}`);let{base:d,groups:f,hasBase:p}=n(r,s),m=Object.keys(f.properties??{});if(!p)return u(`${a(r,{...o,interfaceName:c})}\n${l}`);let h=a(d,{...o,interfaceName:`${c}Base`}),g;return g=m.length>0?a(f,{...o,interfaceName:c}).replace(`export interface ${c} {`,`export interface ${c} extends ${c}Base {`):`export interface ${c} extends ${c}Base {}\n`,u(`${h}\n${g}\n${l}`)}function l(e,t={}){return Object.fromEntries(Object.entries(e).map(([e,n])=>[e,c(e,s(n.jsonSchema,n.zodSchema),t)]))}function u(t,n){let r=n.extension??`ts`,a=[];for(let[o,s]of Object.entries(l(t,n))){let t=e.join(n.outputDir,`${o}.${r}`);i.mkdirSync(e.dirname(t),{recursive:!0}),i.writeFileSync(t,s,`utf-8`),a.push(t)}return a}export{u as generateConfigTypes,l as renderAllConfigTypes,c as renderConfigTypes,s as resolveScopeSchema};
@@ -13,9 +13,9 @@ import { ConfigEngine, createConfigEngine } from "./engine.js";
13
13
  import { EnvSource, EnvTree, applyOverrides, envBool, envInt, envList, envMap, envString, parseEnvTree, readEnvPath, trimTrailingSlashes } from "./env.js";
14
14
  import "./generators/index.js";
15
15
  import { findProjectRoot, monorepoRoot } from "./root.js";
16
- import { SplitSchema, compileZodSchema, envMetaOf, flattenBaseSchema, resolveUntypedSchema, splitBaseSchema, zodToJsonSchema, zodToUntypedDefinition } from "./schema.js";
16
+ import { SplitSchema, compileZodSchema, envMetaOf, flattenBaseSchema, renderTsType, resolveUntypedSchema, splitBaseSchema, zodToJsonSchema, zodToUntypedDefinition } from "./schema.js";
17
17
  declare namespace index_d_exports {
18
- export { BuildConfigJsonOptions, CliArgsOptionConfig, CliArgsParser, CliArgsResult, CliArgsValues, CliFlagOptions, CliOptionDef, CollectEnvVarsOptions, ConfigEngine, ConfigEngineOptions, ConfigFileSection, ConfigJsonDoc, ConfigJsonEntry, ConfigScopeDef, ConfigScopes, DEFAULT_ENV_PREFIX, EnvFileOptions, EnvSource, EnvTree, EnvValueType, EnvVarDef, EnvVarMeta, GenerateCliOptionsOptions, GenerateEnvTypesOptions, GenerateJsonSchemaOptions, GenerateMarkdownOptions, GenerateTypesOptions, RenderConfigFileOptions, RenderMarkdownOptions, SplitSchema, applyOverrides, buildConfigJson, cliFlagLabel, cliFlagOf, cliShortOf, collectEnvVars, collectRequiredEnvVars, compileZodSchema, createCliArgsParser, createConfigEngine, envBool, envInt, envList, envMap, envMetaOf, envPathOf, envString, findProjectRoot, flagOf, flattenBaseSchema, generateCliArgsOptions, generateCliOptions, generateConfigJsonSchema, generateConfigMarkdown, generateConfigTypes, generateEnv, generateEnvDts, generateEnvFile, generateEnvTypes, generateJsonSchemaFile, monorepoRoot, parseEnvTree, readEnvPath, renderAllConfigTypes, renderConfigFileMarkdown, renderConfigIndex, renderConfigTypes, renderScopeMarkdown, resolveScopeSchema, resolveUntypedSchema, splitBaseSchema, trimTrailingSlashes, zodToJsonSchema, zodToUntypedDefinition };
18
+ export { BuildConfigJsonOptions, CliArgsOptionConfig, CliArgsParser, CliArgsResult, CliArgsValues, CliFlagOptions, CliOptionDef, CollectEnvVarsOptions, ConfigEngine, ConfigEngineOptions, ConfigFileSection, ConfigJsonDoc, ConfigJsonEntry, ConfigScopeDef, ConfigScopes, DEFAULT_ENV_PREFIX, EnvFileOptions, EnvSource, EnvTree, EnvValueType, EnvVarDef, EnvVarMeta, GenerateCliOptionsOptions, GenerateEnvTypesOptions, GenerateJsonSchemaOptions, GenerateMarkdownOptions, GenerateTypesOptions, RenderConfigFileOptions, RenderMarkdownOptions, SplitSchema, applyOverrides, buildConfigJson, cliFlagLabel, cliFlagOf, cliShortOf, collectEnvVars, collectRequiredEnvVars, compileZodSchema, createCliArgsParser, createConfigEngine, envBool, envInt, envList, envMap, envMetaOf, envPathOf, envString, findProjectRoot, flagOf, flattenBaseSchema, generateCliArgsOptions, generateCliOptions, generateConfigJsonSchema, generateConfigMarkdown, generateConfigTypes, generateEnv, generateEnvDts, generateEnvFile, generateEnvTypes, generateJsonSchemaFile, monorepoRoot, parseEnvTree, readEnvPath, renderAllConfigTypes, renderConfigFileMarkdown, renderConfigIndex, renderConfigTypes, renderScopeMarkdown, renderTsType, resolveScopeSchema, resolveUntypedSchema, splitBaseSchema, trimTrailingSlashes, zodToJsonSchema, zodToUntypedDefinition };
19
19
  }
20
20
  //#endregion
21
- export { BuildConfigJsonOptions, CliArgsOptionConfig, CliArgsParser, CliArgsResult, CliArgsValues, CliFlagOptions, CliOptionDef, CollectEnvVarsOptions, ConfigEngine, ConfigEngineOptions, ConfigFileSection, ConfigJsonDoc, ConfigJsonEntry, ConfigScopeDef, ConfigScopes, DEFAULT_ENV_PREFIX, EnvFileOptions, EnvSource, EnvTree, EnvValueType, EnvVarDef, EnvVarMeta, GenerateCliOptionsOptions, GenerateEnvTypesOptions, GenerateJsonSchemaOptions, GenerateMarkdownOptions, GenerateTypesOptions, RenderConfigFileOptions, RenderMarkdownOptions, SplitSchema, applyOverrides, buildConfigJson, cliFlagLabel, cliFlagOf, cliShortOf, collectEnvVars, collectRequiredEnvVars, compileZodSchema, createCliArgsParser, createConfigEngine, envBool, envInt, envList, envMap, envMetaOf, envPathOf, envString, findProjectRoot, flagOf, flattenBaseSchema, generateCliArgsOptions, generateCliOptions, generateConfigJsonSchema, generateConfigMarkdown, generateConfigTypes, generateEnv, generateEnvDts, generateEnvFile, generateEnvTypes, generateJsonSchemaFile, index_d_exports, monorepoRoot, parseEnvTree, readEnvPath, renderAllConfigTypes, renderConfigFileMarkdown, renderConfigIndex, renderConfigTypes, renderScopeMarkdown, resolveScopeSchema, resolveUntypedSchema, splitBaseSchema, trimTrailingSlashes, zodToJsonSchema, zodToUntypedDefinition };
21
+ export { BuildConfigJsonOptions, CliArgsOptionConfig, CliArgsParser, CliArgsResult, CliArgsValues, CliFlagOptions, CliOptionDef, CollectEnvVarsOptions, ConfigEngine, ConfigEngineOptions, ConfigFileSection, ConfigJsonDoc, ConfigJsonEntry, ConfigScopeDef, ConfigScopes, DEFAULT_ENV_PREFIX, EnvFileOptions, EnvSource, EnvTree, EnvValueType, EnvVarDef, EnvVarMeta, GenerateCliOptionsOptions, GenerateEnvTypesOptions, GenerateJsonSchemaOptions, GenerateMarkdownOptions, GenerateTypesOptions, RenderConfigFileOptions, RenderMarkdownOptions, SplitSchema, applyOverrides, buildConfigJson, cliFlagLabel, cliFlagOf, cliShortOf, collectEnvVars, collectRequiredEnvVars, compileZodSchema, createCliArgsParser, createConfigEngine, envBool, envInt, envList, envMap, envMetaOf, envPathOf, envString, findProjectRoot, flagOf, flattenBaseSchema, generateCliArgsOptions, generateCliOptions, generateConfigJsonSchema, generateConfigMarkdown, generateConfigTypes, generateEnv, generateEnvDts, generateEnvFile, generateEnvTypes, generateJsonSchemaFile, index_d_exports, monorepoRoot, parseEnvTree, readEnvPath, renderAllConfigTypes, renderConfigFileMarkdown, renderConfigIndex, renderConfigTypes, renderScopeMarkdown, renderTsType, resolveScopeSchema, resolveUntypedSchema, splitBaseSchema, trimTrailingSlashes, zodToJsonSchema, zodToUntypedDefinition };
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{__exportAll as e}from"../../../_virtual/_rolldown/runtime.js";import{compileZodSchema as t,envMetaOf as n,flattenBaseSchema as r,resolveUntypedSchema as i,splitBaseSchema as a,zodToJsonSchema as o,zodToUntypedDefinition as s}from"./schema.js";import{envPathOf as c}from"./types.js";import{DEFAULT_ENV_PREFIX as l,collectEnvVars as u,collectRequiredEnvVars as d}from"./collect.js";import{buildConfigJson as f}from"./config-json.js";import{generateEnvFile as p}from"./env-file.js";import{cliFlagLabel as m,cliFlagOf as h,cliShortOf as g,createCliArgsParser as _,flagOf as v,generateCliArgsOptions as y,generateCliOptions as b}from"./generators/cli.js";import{generateEnv as x,generateEnvDts as S,generateEnvTypes as C}from"./generators/env.js";import{generateConfigJsonSchema as w,generateJsonSchemaFile as T}from"./generators/json.js";import{generateConfigMarkdown as E,renderConfigFileMarkdown as D,renderConfigIndex as O,renderScopeMarkdown as k}from"./generators/markdown.js";import{generateConfigTypes as A,renderAllConfigTypes as j,renderConfigTypes as M,resolveScopeSchema as N}from"./generators/types.js";import{findProjectRoot as P,monorepoRoot as F}from"./root.js";import{createConfigEngine as I}from"./engine.js";import{applyOverrides as L,envBool as R,envInt as z,envList as B,envMap as V,envString as H,parseEnvTree as U,readEnvPath as W,trimTrailingSlashes as G}from"./env.js";import"./generators/index.js";var K=/* @__PURE__ */ e({DEFAULT_ENV_PREFIX:()=>l,applyOverrides:()=>L,buildConfigJson:()=>f,cliFlagLabel:()=>m,cliFlagOf:()=>h,cliShortOf:()=>g,collectEnvVars:()=>u,collectRequiredEnvVars:()=>d,compileZodSchema:()=>t,createCliArgsParser:()=>_,createConfigEngine:()=>I,envBool:()=>R,envInt:()=>z,envList:()=>B,envMap:()=>V,envMetaOf:()=>n,envPathOf:()=>c,envString:()=>H,findProjectRoot:()=>P,flagOf:()=>v,flattenBaseSchema:()=>r,generateCliArgsOptions:()=>y,generateCliOptions:()=>b,generateConfigJsonSchema:()=>w,generateConfigMarkdown:()=>E,generateConfigTypes:()=>A,generateEnv:()=>x,generateEnvDts:()=>S,generateEnvFile:()=>p,generateEnvTypes:()=>C,generateJsonSchemaFile:()=>T,monorepoRoot:()=>F,parseEnvTree:()=>U,readEnvPath:()=>W,renderAllConfigTypes:()=>j,renderConfigFileMarkdown:()=>D,renderConfigIndex:()=>O,renderConfigTypes:()=>M,renderScopeMarkdown:()=>k,resolveScopeSchema:()=>N,resolveUntypedSchema:()=>i,splitBaseSchema:()=>a,trimTrailingSlashes:()=>G,zodToJsonSchema:()=>o,zodToUntypedDefinition:()=>s});export{l as DEFAULT_ENV_PREFIX,L as applyOverrides,f as buildConfigJson,m as cliFlagLabel,h as cliFlagOf,g as cliShortOf,u as collectEnvVars,d as collectRequiredEnvVars,t as compileZodSchema,_ as createCliArgsParser,I as createConfigEngine,R as envBool,z as envInt,B as envList,V as envMap,n as envMetaOf,c as envPathOf,H as envString,P as findProjectRoot,v as flagOf,r as flattenBaseSchema,y as generateCliArgsOptions,b as generateCliOptions,w as generateConfigJsonSchema,E as generateConfigMarkdown,A as generateConfigTypes,x as generateEnv,S as generateEnvDts,p as generateEnvFile,C as generateEnvTypes,T as generateJsonSchemaFile,F as monorepoRoot,U as parseEnvTree,W as readEnvPath,j as renderAllConfigTypes,D as renderConfigFileMarkdown,O as renderConfigIndex,M as renderConfigTypes,k as renderScopeMarkdown,N as resolveScopeSchema,i as resolveUntypedSchema,a as splitBaseSchema,K as src_exports,G as trimTrailingSlashes,o as zodToJsonSchema,s as zodToUntypedDefinition};
1
+ import"node:path";import"node:url";import.meta.url;import{__exportAll as e}from"../../../_virtual/_rolldown/runtime.js";import{compileZodSchema as t,envMetaOf as n,flattenBaseSchema as r,renderTsType as i,resolveUntypedSchema as a,splitBaseSchema as o,zodToJsonSchema as s,zodToUntypedDefinition as c}from"./schema.js";import{envPathOf as l}from"./types.js";import{DEFAULT_ENV_PREFIX as u,collectEnvVars as d,collectRequiredEnvVars as f}from"./collect.js";import{buildConfigJson as p}from"./config-json.js";import{generateEnvFile as m}from"./env-file.js";import{cliFlagLabel as h,cliFlagOf as g,cliShortOf as _,createCliArgsParser as v,flagOf as y,generateCliArgsOptions as b,generateCliOptions as x}from"./generators/cli.js";import{generateEnv as S,generateEnvDts as C,generateEnvTypes as w}from"./generators/env.js";import{generateConfigJsonSchema as T,generateJsonSchemaFile as E}from"./generators/json.js";import{generateConfigMarkdown as D,renderConfigFileMarkdown as O,renderConfigIndex as k,renderScopeMarkdown as A}from"./generators/markdown.js";import{generateConfigTypes as j,renderAllConfigTypes as M,renderConfigTypes as N,resolveScopeSchema as P}from"./generators/types.js";import{findProjectRoot as F,monorepoRoot as I}from"./root.js";import{createConfigEngine as L}from"./engine.js";import{applyOverrides as R,envBool as z,envInt as B,envList as V,envMap as H,envString as U,parseEnvTree as W,readEnvPath as G,trimTrailingSlashes as K}from"./env.js";import"./generators/index.js";var q=/* @__PURE__ */ e({DEFAULT_ENV_PREFIX:()=>u,applyOverrides:()=>R,buildConfigJson:()=>p,cliFlagLabel:()=>h,cliFlagOf:()=>g,cliShortOf:()=>_,collectEnvVars:()=>d,collectRequiredEnvVars:()=>f,compileZodSchema:()=>t,createCliArgsParser:()=>v,createConfigEngine:()=>L,envBool:()=>z,envInt:()=>B,envList:()=>V,envMap:()=>H,envMetaOf:()=>n,envPathOf:()=>l,envString:()=>U,findProjectRoot:()=>F,flagOf:()=>y,flattenBaseSchema:()=>r,generateCliArgsOptions:()=>b,generateCliOptions:()=>x,generateConfigJsonSchema:()=>T,generateConfigMarkdown:()=>D,generateConfigTypes:()=>j,generateEnv:()=>S,generateEnvDts:()=>C,generateEnvFile:()=>m,generateEnvTypes:()=>w,generateJsonSchemaFile:()=>E,monorepoRoot:()=>I,parseEnvTree:()=>W,readEnvPath:()=>G,renderAllConfigTypes:()=>M,renderConfigFileMarkdown:()=>O,renderConfigIndex:()=>k,renderConfigTypes:()=>N,renderScopeMarkdown:()=>A,renderTsType:()=>i,resolveScopeSchema:()=>P,resolveUntypedSchema:()=>a,splitBaseSchema:()=>o,trimTrailingSlashes:()=>K,zodToJsonSchema:()=>s,zodToUntypedDefinition:()=>c});export{u as DEFAULT_ENV_PREFIX,R as applyOverrides,p as buildConfigJson,h as cliFlagLabel,g as cliFlagOf,_ as cliShortOf,d as collectEnvVars,f as collectRequiredEnvVars,t as compileZodSchema,v as createCliArgsParser,L as createConfigEngine,z as envBool,B as envInt,V as envList,H as envMap,n as envMetaOf,l as envPathOf,U as envString,F as findProjectRoot,y as flagOf,r as flattenBaseSchema,b as generateCliArgsOptions,x as generateCliOptions,T as generateConfigJsonSchema,D as generateConfigMarkdown,j as generateConfigTypes,S as generateEnv,C as generateEnvDts,m as generateEnvFile,w as generateEnvTypes,E as generateJsonSchemaFile,I as monorepoRoot,W as parseEnvTree,G as readEnvPath,M as renderAllConfigTypes,O as renderConfigFileMarkdown,k as renderConfigIndex,N as renderConfigTypes,A as renderScopeMarkdown,i as renderTsType,P as resolveScopeSchema,a as resolveUntypedSchema,o as splitBaseSchema,q as src_exports,K as trimTrailingSlashes,s as zodToJsonSchema,c as zodToUntypedDefinition};
@@ -4,8 +4,36 @@ import { EnvVarMeta } from "./types.js";
4
4
  import { ZodType } from "zod";
5
5
  import { Schema } from "untyped";
6
6
  //#region packages/config/src/schema.d.ts
7
+ /** A JSON Schema node produced by `z.toJSONSchema`. */
8
+ interface JsonSchemaNode {
9
+ type?: string | string[];
10
+ properties?: Record<string, JsonSchemaNode>;
11
+ required?: string[] | boolean;
12
+ default?: unknown;
13
+ defaultValue?: unknown;
14
+ description?: string;
15
+ enum?: string[];
16
+ const?: unknown;
17
+ anyOf?: JsonSchemaNode[];
18
+ oneOf?: JsonSchemaNode[];
19
+ $ref?: string;
20
+ $defs?: Record<string, JsonSchemaNode>;
21
+ items?: JsonSchemaNode;
22
+ additionalProperties?: JsonSchemaNode;
23
+ propertyNames?: JsonSchemaNode;
24
+ env?: string;
25
+ scope?: string;
26
+ secret?: boolean;
27
+ public?: boolean;
28
+ }
7
29
  /** Read the env metadata attached to a Zod leaf via `.meta()`. */
8
30
  export declare function envMetaOf(schema: ZodType): EnvVarMeta | undefined;
31
+ /**
32
+ * Render a JSON Schema node as a TypeScript type string. Nested `$defs` are
33
+ * referenced by name, unions become `A | B`, records become `Record<...>` and
34
+ * object nodes without properties are inlined. Never throws.
35
+ */
36
+ export declare function renderTsType(node: JsonSchemaNode | undefined, defs?: Record<string, JsonSchemaNode>): string;
9
37
  /** Lower a Zod config schema into an untyped definition object. */
10
38
  export declare function zodToUntypedDefinition(zodSchema: ZodType): Record<string, unknown>;
11
39
  /** Compile a Zod schema to a fast native parse function, falling back on error. */
@@ -31,4 +59,5 @@ export interface SplitSchema {
31
59
  export declare function splitBaseSchema(schema: Schema, baseGroup?: string): SplitSchema;
32
60
  /** Flatten the base group of a resolved schema into the top level. */
33
61
  export declare function flattenBaseSchema(schema: Schema, baseGroup?: string): Schema;
34
- //#endregion
62
+ //#endregion
63
+ export {};
@@ -1 +1 @@
1
- import"node:path";import"node:url";import.meta.url;import{z as e}from"zod";const t={string:`string`,number:`number`,integer:`number`,boolean:`boolean`,null:`null`};function n(e){let t=e.meta?.();return t&&typeof t==`object`&&`env`in t?t:void 0}function r(e){return e.enum?`string`:Array.isArray(e.type)?e.type.find(e=>e!==`null`)??`string`:e.type??`string`}function i(e){let n=typeof e?.type==`string`?e.type:`string`;return t[n]??`string`}function a(e){if(e.enum&&Array.isArray(e.enum))return`'${e.enum.join(`' | '`)}'`;let n=Array.isArray(e.type)?e.type:[e.type??`string`];return n.includes(`array`)?`Array<${i(e.items)}>`:n.includes(`object`)?`Record<string, ${i(e.additionalProperties)}>`:n.map(e=>t[e]??e).join(` | `)}function o(e,t=!1){if(e.properties){let n=t?{$schema:{tags:[`@required`]}}:{};for(let[t,r]of Object.entries(e.properties))n[t]=o(r,e.required?.includes(t)??!1);return n}let n={};return e.defaultValue===void 0?e.default!==void 0&&(n.$default=e.default):n.$default=e.defaultValue,n.$schema={type:r(e),tsType:a(e),...r(e)===`array`?{items:{type:i(e.items)}}:{},...t?{tags:[`@required`]}:{},...e.description?{description:e.description}:{},...e.env?{env:e.env}:{},...e.scope?{scope:e.scope}:{},...e.secret?{secret:!0}:{},...e.public?{public:!0}:{},...e.required===!0?{required:!0}:{},...e.defaultValue!==void 0&&e.default!==void 0?{envDefault:e.default}:{}},n}function s(e){return o(e.toJSONSchema())}function c(t){try{return e.compile(t)}catch{return t}}function l(e){return e!==null&&!Array.isArray(e)&&typeof e==`object`}function u(e){let t=typeof e;if(t!==`undefined`&&e!==null)return Array.isArray(e)?`array`:t}function d(e,t,n=`.`){return e?`${e}${n}${t}`:t}function f(e){return[...new Set(e.filter(e=>!!e))]}function p(e){if(e.type===`array`&&!(`items`in e)){let t=f((e.default??[]).map(e=>u(e)));e.items={type:t.length===0?`any`:t.length===1?t[0]:t}}if(e.default===void 0&&(`properties`in e||e.type===`object`||e.type===`any`)){let t=e.properties??{};e.default=Object.fromEntries(Object.entries(t).filter(([,e])=>`default`in e).map(([e,t])=>[e,t.default]))}}function m(e,t,n){if(n.cache.has(t))return n.cache.get(t);let r=`#${t.replace(/\./g,`/`)}`;if(!l(e)){let i=Array.isArray(e)?[...e]:e,a={type:u(e),id:r,default:i};return p(a),n.cache.set(t,a),a}let i={...e.$schema??{},id:r};n.cache.set(t,i);let a=Object.keys(e).filter(e=>e!==`$resolve`&&e!==`$schema`&&e!==`$default`);if(a.length>0){let r={};i.properties=r;for(let o of a)if(!r[o]){let a=r[o]=m(e[o],d(t,o),n);Array.isArray(a.tags)&&a.tags.includes(`@required`)&&(i.required=i.required||[],i.required.includes(o)||i.required.push(o))}}return i.default===void 0&&`$default`in e&&(i.default=e.$default),i.type||=u(i.default)||(i.properties?`object`:`any`),p(i),i}function h(e){return m(e,``,{root:e,cache:/* @__PURE__ */ new Map})}function g(e){return h(s(e))}function _(e,t=`base`){let n=e.properties??{},r=n[t];if(r&&r.type===`object`&&r.properties){let{[t]:i,...a}=n,o=(e.required??[]).filter(e=>e!==t);return{base:r,groups:{...e,properties:a,...o.length>0?{required:o}:{}},hasBase:!0}}return{base:e,groups:{...e,properties:{}},hasBase:!1}}function v(e,t=`base`){let n=e.properties??{},r=n[t];if(r?.type!==`object`)return e;let i=r.properties;if(!i)return e;let{[t]:a,...o}=n;return{...e,properties:{...i,...o},required:[...(e.required??[]).filter(e=>e!==t),...r.required??[]]}}export{c as compileZodSchema,n as envMetaOf,v as flattenBaseSchema,h as resolveUntypedSchema,_ as splitBaseSchema,g as zodToJsonSchema,s as zodToUntypedDefinition};
1
+ import"node:path";import"node:url";import.meta.url;import{z as e}from"zod";const t={string:`string`,number:`number`,integer:`number`,boolean:`boolean`,null:`null`};function n(e){let t=e.meta?.();return t&&typeof t==`object`&&`env`in t?t:void 0}function r(e){return!e||Object.keys(e).length===0}function i(e){return`'${String(e).replace(/\\/g,`\\\\`).replace(/'/g,`\\'`)}'`}function a(e,n={}){if(!e||r(e))return`unknown`;if(e.$ref){let t=e.$ref.split(`/`).pop()??`unknown`;return n[t]?t:`unknown`}if(e.const!==void 0)return typeof e.const==`string`?i(e.const):String(e.const);if(Array.isArray(e.enum)&&e.enum.length>0)return e.enum.map(i).join(` | `);let o=e.anyOf??e.oneOf;if(Array.isArray(o)&&o.length>0)return o.map(e=>a(e,n)).join(` | `);if(e.properties){let t=Array.isArray(e.required)?e.required:[];return`{ ${Object.entries(e.properties).map(([e,r])=>`${e}${t.includes(e)?``:`?`}: ${a(r,n)}`).join(`; `)} }`}let s=Array.isArray(e.type)?e.type:e.type?[e.type]:[];return s.includes(`array`)?`Array<${a(e.items,n)}>`:s.includes(`object`)?e.additionalProperties===void 0?`Record<string, unknown>`:`Record<string, ${r(e.additionalProperties)?`unknown`:a(e.additionalProperties,n)}>`:s.length===0?`unknown`:s.map(e=>t[e]??`unknown`).join(` | `)}function o(e){return e.$ref?`any`:e.const===void 0?e.anyOf||e.oneOf?`any`:e.enum?`string`:Array.isArray(e.type)?e.type.find(e=>e!==`null`)??`string`:e.type??`string`:typeof e.const==`string`?`string`:typeof e.const}function s(e,t=!1,n={}){if(e.$ref)return{$schema:{type:`any`,tsType:e.$ref.split(`/`).pop()??`unknown`,...t?{tags:[`@required`]}:{}}};if(e.properties){let r=t?{$schema:{tags:[`@required`]}}:{};for(let[t,i]of Object.entries(e.properties))r[t]=s(i,e.required?.includes(t)??!1,n);return r}let r=o(e),i={};return e.defaultValue===void 0?e.default!==void 0&&(i.$default=e.default):i.$default=e.defaultValue,i.$schema={type:r,tsType:a(e,n),...r===`array`?{items:{type:o(e.items??{})}}:{},...t?{tags:[`@required`]}:{},...e.description?{description:e.description}:{},...e.env?{env:e.env}:{},...e.scope?{scope:e.scope}:{},...e.secret?{secret:!0}:{},...e.public?{public:!0}:{},...e.required===!0?{required:!0}:{},...e.defaultValue!==void 0&&e.default!==void 0?{envDefault:e.default}:{}},i}function c(e){let t=e.toJSONSchema();if(!t)return{};let n=t.$defs??{},r=t.$ref?.split(`/`).pop();return s(r&&n[r]?n[r]:t,!1,n)}function l(t){try{return e.compile(t)}catch{return t}}function u(e){return e!==null&&!Array.isArray(e)&&typeof e==`object`}function d(e){let t=typeof e;if(t!==`undefined`&&e!==null)return Array.isArray(e)?`array`:t}function f(e,t,n=`.`){return e?`${e}${n}${t}`:t}function p(e){return[...new Set(e.filter(e=>!!e))]}function m(e){if(e.type===`array`&&!(`items`in e)){let t=p((e.default??[]).map(e=>d(e)));e.items={type:t.length===0?`any`:t.length===1?t[0]:t}}if(e.default===void 0&&(`properties`in e||e.type===`object`||e.type===`any`)){let t=e.properties??{};e.default=Object.fromEntries(Object.entries(t).filter(([,e])=>`default`in e).map(([e,t])=>[e,t.default]))}}function h(e,t,n){if(n.cache.has(t))return n.cache.get(t);let r=`#${t.replace(/\./g,`/`)}`;if(!u(e)){let i=Array.isArray(e)?[...e]:e,a={type:d(e),id:r,default:i};return m(a),n.cache.set(t,a),a}let i={...e.$schema??{},id:r};n.cache.set(t,i);let a=Object.keys(e).filter(e=>e!==`$resolve`&&e!==`$schema`&&e!==`$default`);if(a.length>0){let r={};i.properties=r;for(let o of a)if(!r[o]){let a=r[o]=h(e[o],f(t,o),n);Array.isArray(a.tags)&&a.tags.includes(`@required`)&&(i.required=i.required||[],i.required.includes(o)||i.required.push(o))}}return i.default===void 0&&`$default`in e&&(i.default=e.$default),i.type||=d(i.default)||(i.properties?`object`:`any`),m(i),i}function g(e){return h(e,``,{root:e,cache:/* @__PURE__ */ new Map})}function _(e){return g(c(e))}function v(e,t=`base`){let n=e.properties??{},r=n[t];if(r&&r.type===`object`&&r.properties){let{[t]:i,...a}=n,o=(e.required??[]).filter(e=>e!==t);return{base:r,groups:{...e,properties:a,...o.length>0?{required:o}:{}},hasBase:!0}}return{base:e,groups:{...e,properties:{}},hasBase:!1}}function y(e,t=`base`){let n=e.properties??{},r=n[t];if(r?.type!==`object`)return e;let i=r.properties;if(!i)return e;let{[t]:a,...o}=n;return{...e,properties:{...i,...o},required:[...(e.required??[]).filter(e=>e!==t),...r.required??[]]}}export{l as compileZodSchema,n as envMetaOf,y as flattenBaseSchema,a as renderTsType,g as resolveUntypedSchema,v as splitBaseSchema,_ as zodToJsonSchema,c as zodToUntypedDefinition};
@@ -1,7 +1,7 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
3
  import { Replacements } from "../../shared/src/template.js";
4
- import { ProjectType } from "../../shared/src/config-schema.js";
4
+ import { ProjectType } from "../../shared/src/config-types.js";
5
5
  import { ToolingConfig } from "../../shared/src/toolchain.js";
6
6
  import "../../shared/src/index.js";
7
7
  //#region packages/core/src/loader.d.ts
@@ -1,6 +1,6 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
- import { ProjectType } from "../../shared/src/config-schema.js";
3
+ import { ProjectType } from "../../shared/src/config-types.js";
4
4
  import { ToolingConfig } from "../../shared/src/toolchain.js";
5
5
  import "../../shared/src/index.js";
6
6
  //#region packages/core/src/project-type.d.ts
@@ -1,7 +1,7 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
3
  import { Replacements } from "../../shared/src/template.js";
4
- import { ProjectType } from "../../shared/src/config-schema.js";
4
+ import { ProjectType } from "../../shared/src/config-types.js";
5
5
  import { SyncTask, ToolingConfig } from "../../shared/src/toolchain.js";
6
6
  import "../../shared/src/index.js";
7
7
  //#region packages/core/src/sync.d.ts
@@ -1,6 +1,6 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
- import { ProjectType } from "../../shared/src/config-schema.js";
3
+ import { ProjectType } from "../../shared/src/config-types.js";
4
4
  import { SyncTask, ToolingConfig } from "../../shared/src/toolchain.js";
5
5
  import "../../shared/src/index.js";
6
6
  //#region packages/core/src/vscode.d.ts
@@ -1,6 +1,6 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
- import { ProjectType } from "../../shared/src/config-schema.js";
3
+ import { ProjectType } from "../../shared/src/config-types.js";
4
4
  import "../../shared/src/index.js";
5
5
  //#region packages/project/src/config.d.ts
6
6
  /** The file name a generated dbx config uses. */
@@ -1,6 +1,6 @@
1
1
  import __tsdown_shims_path from 'node:path';
2
2
  import __tsdown_shims_url from 'node:url';
3
- import { ProjectType } from "../../shared/src/config-schema.js";
3
+ import { ProjectType } from "../../shared/src/config-types.js";
4
4
  import { GeneratedFile } from "../../shared/src/types.js";
5
5
  import "../../shared/src/index.js";
6
6
  import { MonorepoWorkspace } from "../../tsconfig/src/templates.js";