zcb 0.0.24 → 0.0.26

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 (150) hide show
  1. package/README.md +1 -1
  2. package/bin/zcb.js +3 -0
  3. package/dist/cjs/cli.cjs.map +1 -1
  4. package/dist/cjs/index.cjs +3 -3
  5. package/dist/cjs/index.cjs.map +1 -1
  6. package/dist/esm/cli.mjs.map +1 -1
  7. package/dist/esm/index.mjs +3 -3
  8. package/dist/esm/index.mjs.map +1 -1
  9. package/dist/types/cjs/cli.d.cts +6 -0
  10. package/dist/types/cjs/cli.d.cts.map +1 -0
  11. package/dist/types/cjs/createConfigBuilder.d.cts +16 -0
  12. package/dist/types/cjs/createConfigBuilder.d.cts.map +1 -0
  13. package/dist/types/cjs/createConfigParser.d.cts +3 -0
  14. package/dist/types/cjs/createConfigParser.d.cts.map +1 -0
  15. package/dist/types/cjs/createConfigReader.d.cts +8 -0
  16. package/dist/types/cjs/createConfigReader.d.cts.map +1 -0
  17. package/dist/types/cjs/data/countryCodes.d.cts +2 -0
  18. package/dist/types/cjs/data/countryCodes.d.cts.map +1 -0
  19. package/dist/types/cjs/data/countryNames.d.cts +2 -0
  20. package/dist/types/cjs/data/countryNames.d.cts.map +1 -0
  21. package/dist/types/cjs/data/distanceUnits.d.cts +2 -0
  22. package/dist/types/cjs/data/distanceUnits.d.cts.map +1 -0
  23. package/dist/types/cjs/data/languageCodes.d.cts +2 -0
  24. package/dist/types/cjs/data/languageCodes.d.cts.map +1 -0
  25. package/dist/types/cjs/data/timezones.d.cts +2 -0
  26. package/dist/types/cjs/data/timezones.d.cts.map +1 -0
  27. package/dist/types/cjs/index.d.cts +10 -0
  28. package/dist/types/cjs/index.d.cts.map +1 -0
  29. package/dist/types/cjs/transformers/cloneNonEnumerableValues.d.cts +3 -0
  30. package/dist/types/cjs/transformers/cloneNonEnumerableValues.d.cts.map +1 -0
  31. package/dist/types/cjs/transformers/removeDisabledSlices.d.cts +3 -0
  32. package/dist/types/cjs/transformers/removeDisabledSlices.d.cts.map +1 -0
  33. package/dist/types/cjs/transformers/runExperiments.d.cts +3 -0
  34. package/dist/types/cjs/transformers/runExperiments.d.cts.map +1 -0
  35. package/dist/types/cjs/transformers/setupExperiments.d.cts +3 -0
  36. package/dist/types/cjs/transformers/setupExperiments.d.cts.map +1 -0
  37. package/dist/types/cjs/types.d.cts +45 -0
  38. package/dist/types/cjs/types.d.cts.map +1 -0
  39. package/dist/types/cjs/utils/arrayHasInvalidDefaults.d.cts +3 -0
  40. package/dist/types/cjs/utils/arrayHasInvalidDefaults.d.cts.map +1 -0
  41. package/dist/types/cjs/utils/importValidateTransformWriteConfig.d.cts +3 -0
  42. package/dist/types/cjs/utils/importValidateTransformWriteConfig.d.cts.map +1 -0
  43. package/dist/types/cjs/utils/isDerivedValueCallback.d.cts +2 -0
  44. package/dist/types/cjs/utils/isDerivedValueCallback.d.cts.map +1 -0
  45. package/dist/types/cjs/utils/isInvalidPropertyOverride.d.cts +2 -0
  46. package/dist/types/cjs/utils/isInvalidPropertyOverride.d.cts.map +1 -0
  47. package/dist/types/cjs/utils/isPropertyReservedWord.d.cts +3 -0
  48. package/dist/types/cjs/utils/isPropertyReservedWord.d.cts.map +1 -0
  49. package/dist/types/cjs/utils/isSchemaValid.d.cts +3 -0
  50. package/dist/types/cjs/utils/isSchemaValid.d.cts.map +1 -0
  51. package/dist/types/cjs/utils/isValidPropertyDefinition.d.cts +3 -0
  52. package/dist/types/cjs/utils/isValidPropertyDefinition.d.cts.map +1 -0
  53. package/dist/types/cjs/utils/isValidValue.d.cts +2 -0
  54. package/dist/types/cjs/utils/isValidValue.d.cts.map +1 -0
  55. package/dist/types/cjs/utils/objectHasInvalidDefaults.d.cts +3 -0
  56. package/dist/types/cjs/utils/objectHasInvalidDefaults.d.cts.map +1 -0
  57. package/dist/types/cjs/utils/recordHasInvalidDefaults.d.cts +3 -0
  58. package/dist/types/cjs/utils/recordHasInvalidDefaults.d.cts.map +1 -0
  59. package/dist/types/cjs/utils/transformConfig.d.cts +4 -0
  60. package/dist/types/cjs/utils/transformConfig.d.cts.map +1 -0
  61. package/dist/types/cjs/utils/transformWriteConfig.d.cts +3 -0
  62. package/dist/types/cjs/utils/transformWriteConfig.d.cts.map +1 -0
  63. package/dist/types/esm/cli.d.ts.map +1 -0
  64. package/dist/types/esm/createConfigBuilder.d.ts.map +1 -0
  65. package/dist/types/esm/createConfigParser.d.ts.map +1 -0
  66. package/dist/types/esm/createConfigReader.d.ts.map +1 -0
  67. package/dist/types/esm/data/countryCodes.d.ts.map +1 -0
  68. package/dist/types/esm/data/countryNames.d.ts.map +1 -0
  69. package/dist/types/esm/data/distanceUnits.d.ts.map +1 -0
  70. package/dist/types/esm/data/languageCodes.d.ts.map +1 -0
  71. package/dist/types/esm/data/timezones.d.ts.map +1 -0
  72. package/dist/types/esm/index.d.ts.map +1 -0
  73. package/dist/types/esm/transformers/cloneNonEnumerableValues.d.ts.map +1 -0
  74. package/dist/types/esm/transformers/removeDisabledSlices.d.ts.map +1 -0
  75. package/dist/types/esm/transformers/runExperiments.d.ts.map +1 -0
  76. package/dist/types/esm/transformers/setupExperiments.d.ts.map +1 -0
  77. package/dist/types/{types.d.ts → esm/types.d.ts} +4 -4
  78. package/dist/types/esm/types.d.ts.map +1 -0
  79. package/dist/types/esm/utils/arrayHasInvalidDefaults.d.ts.map +1 -0
  80. package/dist/types/esm/utils/importValidateTransformWriteConfig.d.ts.map +1 -0
  81. package/dist/types/esm/utils/isDerivedValueCallback.d.ts.map +1 -0
  82. package/dist/types/esm/utils/isInvalidPropertyOverride.d.ts.map +1 -0
  83. package/dist/types/esm/utils/isPropertyReservedWord.d.ts.map +1 -0
  84. package/dist/types/esm/utils/isSchemaValid.d.ts.map +1 -0
  85. package/dist/types/esm/utils/isValidPropertyDefinition.d.ts.map +1 -0
  86. package/dist/types/esm/utils/isValidValue.d.ts.map +1 -0
  87. package/dist/types/esm/utils/objectHasInvalidDefaults.d.ts.map +1 -0
  88. package/dist/types/esm/utils/recordHasInvalidDefaults.d.ts.map +1 -0
  89. package/dist/types/esm/utils/transformConfig.d.ts.map +1 -0
  90. package/dist/types/esm/utils/transformWriteConfig.d.ts.map +1 -0
  91. package/dist/types/tsconfig.build.tsbuildinfo +1 -0
  92. package/package.json +21 -15
  93. package/src/createConfigBuilder.ts +3 -3
  94. package/src/types.ts +6 -6
  95. package/tsconfig.build.json +1 -1
  96. package/bin/zcb.mjs +0 -3
  97. package/dist/tsconfig.build.tsbuildinfo +0 -1
  98. package/dist/types/cli.d.ts.map +0 -1
  99. package/dist/types/createConfigBuilder.d.ts.map +0 -1
  100. package/dist/types/createConfigParser.d.ts.map +0 -1
  101. package/dist/types/createConfigReader.d.ts.map +0 -1
  102. package/dist/types/data/countryCodes.d.ts.map +0 -1
  103. package/dist/types/data/countryNames.d.ts.map +0 -1
  104. package/dist/types/data/distanceUnits.d.ts.map +0 -1
  105. package/dist/types/data/languageCodes.d.ts.map +0 -1
  106. package/dist/types/data/timezones.d.ts.map +0 -1
  107. package/dist/types/index.d.ts.map +0 -1
  108. package/dist/types/transformers/cloneNonEnumerableValues.d.ts.map +0 -1
  109. package/dist/types/transformers/removeDisabledSlices.d.ts.map +0 -1
  110. package/dist/types/transformers/runExperiments.d.ts.map +0 -1
  111. package/dist/types/transformers/setupExperiments.d.ts.map +0 -1
  112. package/dist/types/types.d.ts.map +0 -1
  113. package/dist/types/utils/arrayHasInvalidDefaults.d.ts.map +0 -1
  114. package/dist/types/utils/importValidateTransformWriteConfig.d.ts.map +0 -1
  115. package/dist/types/utils/isDerivedValueCallback.d.ts.map +0 -1
  116. package/dist/types/utils/isInvalidPropertyOverride.d.ts.map +0 -1
  117. package/dist/types/utils/isPropertyReservedWord.d.ts.map +0 -1
  118. package/dist/types/utils/isSchemaValid.d.ts.map +0 -1
  119. package/dist/types/utils/isValidPropertyDefinition.d.ts.map +0 -1
  120. package/dist/types/utils/isValidValue.d.ts.map +0 -1
  121. package/dist/types/utils/objectHasInvalidDefaults.d.ts.map +0 -1
  122. package/dist/types/utils/recordHasInvalidDefaults.d.ts.map +0 -1
  123. package/dist/types/utils/transformConfig.d.ts.map +0 -1
  124. package/dist/types/utils/transformWriteConfig.d.ts.map +0 -1
  125. /package/dist/types/{cli.d.ts → esm/cli.d.ts} +0 -0
  126. /package/dist/types/{createConfigBuilder.d.ts → esm/createConfigBuilder.d.ts} +0 -0
  127. /package/dist/types/{createConfigParser.d.ts → esm/createConfigParser.d.ts} +0 -0
  128. /package/dist/types/{createConfigReader.d.ts → esm/createConfigReader.d.ts} +0 -0
  129. /package/dist/types/{data → esm/data}/countryCodes.d.ts +0 -0
  130. /package/dist/types/{data → esm/data}/countryNames.d.ts +0 -0
  131. /package/dist/types/{data → esm/data}/distanceUnits.d.ts +0 -0
  132. /package/dist/types/{data → esm/data}/languageCodes.d.ts +0 -0
  133. /package/dist/types/{data → esm/data}/timezones.d.ts +0 -0
  134. /package/dist/types/{index.d.ts → esm/index.d.ts} +0 -0
  135. /package/dist/types/{transformers → esm/transformers}/cloneNonEnumerableValues.d.ts +0 -0
  136. /package/dist/types/{transformers → esm/transformers}/removeDisabledSlices.d.ts +0 -0
  137. /package/dist/types/{transformers → esm/transformers}/runExperiments.d.ts +0 -0
  138. /package/dist/types/{transformers → esm/transformers}/setupExperiments.d.ts +0 -0
  139. /package/dist/types/{utils → esm/utils}/arrayHasInvalidDefaults.d.ts +0 -0
  140. /package/dist/types/{utils → esm/utils}/importValidateTransformWriteConfig.d.ts +0 -0
  141. /package/dist/types/{utils → esm/utils}/isDerivedValueCallback.d.ts +0 -0
  142. /package/dist/types/{utils → esm/utils}/isInvalidPropertyOverride.d.ts +0 -0
  143. /package/dist/types/{utils → esm/utils}/isPropertyReservedWord.d.ts +0 -0
  144. /package/dist/types/{utils → esm/utils}/isSchemaValid.d.ts +0 -0
  145. /package/dist/types/{utils → esm/utils}/isValidPropertyDefinition.d.ts +0 -0
  146. /package/dist/types/{utils → esm/utils}/isValidValue.d.ts +0 -0
  147. /package/dist/types/{utils → esm/utils}/objectHasInvalidDefaults.d.ts +0 -0
  148. /package/dist/types/{utils → esm/utils}/recordHasInvalidDefaults.d.ts +0 -0
  149. /package/dist/types/{utils → esm/utils}/transformConfig.d.ts +0 -0
  150. /package/dist/types/{utils → esm/utils}/transformWriteConfig.d.ts +0 -0
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "zcb",
3
3
  "description": "Build configs with type safety from zod schema.",
4
- "version": "0.0.24",
4
+ "version": "0.0.26",
5
5
  "author": "Dylan Aubrey",
6
6
  "license": "MIT",
7
7
  "homepage": "https://github.com/badbatch/zod-config-builder",
@@ -9,10 +9,16 @@
9
9
  "bugs": "https://github.com/badbatch/zod-config-builder/issues",
10
10
  "type": "module",
11
11
  "bin": {
12
- "zcb": "./bin/zcb.mjs"
12
+ "zcb": "./bin/zcb.js"
13
13
  },
14
+ "main": "./dist/cjs/index.cjs",
15
+ "module": "./dist/esm/index.mjs",
16
+ "types": "./dist/types/cjs/index.d.cts",
14
17
  "exports": {
15
- "types": "./dist/types/index.d.ts",
18
+ "types": {
19
+ "import": "./dist/types/esm/index.d.ts",
20
+ "require": "./dist/types/cjs/index.d.cts"
21
+ },
16
22
  "import": "./dist/esm/index.mjs",
17
23
  "require": "./dist/cjs/index.cjs"
18
24
  },
@@ -20,10 +26,15 @@
20
26
  "access": "public"
21
27
  },
22
28
  "dependencies": {
29
+ "@types/fs-extra": "^11.0.1",
30
+ "@types/json-schema": "^7.0.11",
31
+ "@types/shelljs": "^0.8.12",
32
+ "@types/yargs": "^15.0.15",
23
33
  "fs-extra": "^11.1.1",
24
34
  "handlebars": "^4.7.7",
25
35
  "json-schema": "^0.4.0",
26
36
  "shelljs": "^0.8.5",
37
+ "type-fest": "^3.10.0",
27
38
  "yargs": "^15.4.1",
28
39
  "zod": "^3.21.4",
29
40
  "zod-to-json-schema": "^3.21.0"
@@ -39,7 +50,6 @@
39
50
  "@babel/core": "^7.21.8",
40
51
  "@babel/eslint-parser": "^7.21.8",
41
52
  "@babel/plugin-proposal-decorators": "^7.23.3",
42
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
43
53
  "@babel/plugin-syntax-import-assertions": "^7.20.0",
44
54
  "@babel/plugin-transform-class-properties": "^7.23.3",
45
55
  "@babel/plugin-transform-export-namespace-from": "^7.23.4",
@@ -54,35 +64,32 @@
54
64
  "@commitlint/prompt-cli": "^17.6.3",
55
65
  "@jest/globals": "^29.5.0",
56
66
  "@repodog/babel-config": "^1.1.11",
57
- "@repodog/cli": "^1.2.4",
67
+ "@repodog/cli": "^1.3.3",
58
68
  "@repodog/commitlint-config": "^1.1.6",
59
- "@repodog/eslint-config": "^1.1.17",
69
+ "@repodog/eslint-config": "^1.1.19",
60
70
  "@repodog/eslint-config-jest": "^1.1.10",
61
71
  "@repodog/jest-config": "^1.1.11",
62
72
  "@repodog/markdownlint-config": "^1.1.5",
63
73
  "@repodog/prettier-config": "^1.1.5",
64
74
  "@repodog/rollup-config": "^1.1.8",
65
- "@repodog/syncpack-config": "^1.2.2",
66
- "@repodog/ts-config": "^1.1.6",
75
+ "@repodog/syncpack-config": "^1.2.3",
76
+ "@repodog/ts-config": "^1.1.7",
67
77
  "@rollup/plugin-babel": "^6.0.3",
68
78
  "@rollup/plugin-commonjs": "^25.0.7",
69
79
  "@rollup/plugin-image": "^3.0.2",
70
80
  "@rollup/plugin-json": "^6.0.0",
71
81
  "@rollup/plugin-node-resolve": "^15.0.2",
72
82
  "@rollup/plugin-terser": "^0.4.1",
73
- "@types/fs-extra": "^11.0.1",
74
83
  "@types/jest": "^25.2.3",
75
- "@types/json-schema": "^7.0.11",
76
84
  "@types/lodash-es": "^4.17.9",
77
85
  "@types/node": "^18.16.7",
78
- "@types/shelljs": "^0.8.12",
79
- "@types/yargs": "^15.0.15",
80
86
  "@typescript-eslint/eslint-plugin": "^5.59.5",
81
87
  "@typescript-eslint/parser": "^5.59.5",
82
88
  "babel-jest": "^29.5.0",
83
89
  "babel-plugin-codegen": "^4.1.5",
84
90
  "babel-plugin-macros": "^3.1.0",
85
91
  "core-js": "^3.30.2",
92
+ "cts-types": "^0.0.4",
86
93
  "del-cli": "^3.0.1",
87
94
  "eslint": "^8.40.0",
88
95
  "eslint-config-prettier": "^8.8.0",
@@ -114,7 +121,6 @@
114
121
  "syncpack": "^12.0.0-alpha.0",
115
122
  "ts-node": "^10.9.1",
116
123
  "ts-toolbelt": "^9.6.0",
117
- "type-fest": "^3.10.0",
118
124
  "typescript": "^5.0.4"
119
125
  },
120
126
  "keywords": [
@@ -130,7 +136,7 @@
130
136
  "compile": "pnpm run /^compile:.*/",
131
137
  "compile:cjs": "MODULE_SYSTEM=cjs rollup -c ./rollup.config.cjs",
132
138
  "compile:esm": "rollup -c ./rollup.config.cjs",
133
- "compile:types": "tsc --project ./tsconfig.build.json",
139
+ "compile:types": "tsc --project ./tsconfig.build.json && cts-types build dist/types/esm dist/types/cjs",
134
140
  "cut:changelog": "changelog",
135
141
  "cut:post-version": "pnpm run build",
136
142
  "lint": "eslint . --ext .ts,.cjs",
@@ -138,7 +144,7 @@
138
144
  "syncpack": "syncpack format && syncpack list-mismatches && syncpack lint-semver-ranges",
139
145
  "test": "node --require=suppress-experimental-warnings --experimental-vm-modules node_modules/jest/bin/jest.js",
140
146
  "type-check": "tsc --noEmit",
141
- "validate": "npm run syncpack && pnpm run build && pnpm run lint && pnpm run type-check && pnpm run test",
147
+ "validate": "pnpm run syncpack && pnpm run build && pnpm run lint && pnpm run type-check && pnpm run test",
142
148
  "zcb:build": "NODE_OPTIONS=\"--loader ts-node/esm\" node ./bin/zcb.mjs build ./src/__testUtils__/configBuilder.ts ./src/__testUtils__/builtConfig.ts",
143
149
  "zcb:watch": "NODE_OPTIONS=\"--loader ts-node/esm\" node ./bin/zcb.mjs watch ./src/__testUtils__/configBuilder.ts ./src/__testUtils__/builtConfig.ts"
144
150
  }
@@ -87,10 +87,10 @@ export const createConfigBuilder = <ZodTypes>(
87
87
 
88
88
  return configBuilder;
89
89
  },
90
- extend: (configBuilder: ConfigBuilder<Config>) => {
91
- config = transformConfigSync<Config>(configBuilder.values(), [cloneNonEnumerableValues]);
90
+ extend: (builder: ConfigBuilder<Config>) => {
91
+ config = transformConfigSync<Config>(builder.values(), [cloneNonEnumerableValues]);
92
92
  // @ts-expect-error private property
93
- callbacks = { ...configBuilder.__callbacks } as Partial<Record<keyof Config, DerivedValueCallback>>;
93
+ callbacks = { ...builder.__callbacks } as Partial<Record<keyof Config, DerivedValueCallback>>;
94
94
  },
95
95
  flush: () => {
96
96
  const values = configBuilder.values();
package/src/types.ts CHANGED
@@ -59,16 +59,16 @@ export interface WriteConfigOptions {
59
59
  outputFile: string;
60
60
  }
61
61
 
62
- export type Leaves<T, Path extends string[] = []> = T extends string
63
- ? Path
62
+ export type Leaves<T, LeafPath extends string[] = []> = T extends string
63
+ ? LeafPath
64
64
  : {
65
- [K in keyof T & string]: Leaves<T[K], [...Path, K]>;
65
+ [K in keyof T & string]: Leaves<T[K], [...LeafPath, K]>;
66
66
  }[keyof T & string];
67
67
 
68
- export type Paths<T, Path extends string[] = []> = T extends string
69
- ? Path
68
+ export type Paths<T, LeafPath extends string[] = []> = T extends string
69
+ ? LeafPath
70
70
  : {
71
- [K in keyof T & string]: T[K] extends object ? Paths<T[K], [...Path, K]> : Path;
71
+ [K in keyof T & string]: T[K] extends object ? Paths<T[K], [...LeafPath, K]> : LeafPath;
72
72
  }[keyof T & string];
73
73
 
74
74
  export type LeavesScopeDiffs<T1 extends readonly string[][], T2 extends string[]> = {
@@ -2,7 +2,7 @@
2
2
  "extends": "@repodog/ts-config/build.json",
3
3
  "compilerOptions": {
4
4
  "rootDir": "src",
5
- "outDir": "dist/types"
5
+ "outDir": "dist/types/esm"
6
6
  },
7
7
  "include": [
8
8
  "src/**/*"
package/bin/zcb.mjs DELETED
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- const { cli } = await import('../dist/esm/cli.mjs'); // eslint-disable-line import/no-unresolved
3
- cli();