sizuku 0.0.7 → 0.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 (228) hide show
  1. package/README.md +96 -344
  2. package/dist/cli/main.d.ts +10 -0
  3. package/dist/cli/main.js +61 -0
  4. package/dist/cli.d.ts +2 -0
  5. package/dist/cli.js +51 -0
  6. package/dist/config/index.d.ts +18 -0
  7. package/dist/config/index.js +13 -0
  8. package/dist/config/loader.d.ts +19 -0
  9. package/dist/config/loader.js +30 -0
  10. package/dist/generator/engine.d.ts +3 -0
  11. package/dist/generator/engine.js +63 -0
  12. package/dist/generator/mermaid-er/config/index.d.ts +4 -4
  13. package/dist/generator/mermaid-er/config/index.js +4 -10
  14. package/dist/generator/mermaid-er/core/extract-relations.d.ts +1 -1
  15. package/dist/generator/mermaid-er/core/extract-relations.js +3 -6
  16. package/dist/generator/mermaid-er/core.d.ts +6 -0
  17. package/dist/generator/mermaid-er/core.js +54 -0
  18. package/dist/generator/mermaid-er/generator/er-content.d.ts +20 -0
  19. package/dist/generator/mermaid-er/generator/{generate-er-content.js → er-content.js} +3 -7
  20. package/dist/generator/mermaid-er/generator/index.d.ts +2 -0
  21. package/dist/generator/mermaid-er/generator/index.js +2 -0
  22. package/dist/generator/mermaid-er/generator/relation-line.d.ts +12 -0
  23. package/dist/generator/mermaid-er/generator/{generate-relation-line.js → relation-line.js} +3 -6
  24. package/dist/generator/mermaid-er/generator.d.ts +3 -0
  25. package/dist/generator/mermaid-er/generator.js +14 -0
  26. package/dist/generator/mermaid-er/index.d.ts +12 -5
  27. package/dist/generator/mermaid-er/index.js +30 -74
  28. package/dist/generator/mermaid-er/relationship/build-relation-line.js +3 -6
  29. package/dist/generator/mermaid-er/types.js +1 -0
  30. package/dist/generator/mermaid-er/validator/index.d.ts +8 -0
  31. package/dist/generator/mermaid-er/validator/index.js +71 -0
  32. package/dist/generator/mermaid-er/validator/is-relationship.d.ts +1 -1
  33. package/dist/generator/mermaid-er/validator/is-relationship.js +1 -4
  34. package/dist/generator/mermaid-er/validator/parse-relation-line.js +1 -4
  35. package/dist/generator/mermaid-er/validator/parse-table-info.d.ts +1 -7
  36. package/dist/generator/mermaid-er/validator/parse-table-info.js +69 -89
  37. package/dist/generator/mermaid-er/validator/remove-duplicate-relations.js +1 -4
  38. package/dist/generator/valibot/config/index.d.ts +2 -2
  39. package/dist/generator/valibot/config/index.js +6 -12
  40. package/dist/generator/valibot/core/extract-schema.d.ts +2 -5
  41. package/dist/generator/valibot/core/extract-schema.js +162 -81
  42. package/dist/generator/valibot/core.d.ts +5 -0
  43. package/dist/generator/valibot/core.js +39 -0
  44. package/dist/generator/valibot/generator/infer-input.d.ts +5 -0
  45. package/dist/generator/valibot/generator/infer-input.js +8 -0
  46. package/dist/generator/valibot/generator/relation-valibot-code.d.ts +13 -0
  47. package/dist/generator/valibot/generator/relation-valibot-code.js +19 -0
  48. package/dist/generator/valibot/generator/valibot-code.d.ts +15 -0
  49. package/dist/generator/valibot/generator/valibot-code.js +16 -0
  50. package/dist/generator/valibot/generator/valibot.d.ts +14 -0
  51. package/dist/generator/valibot/generator/valibot.js +15 -0
  52. package/dist/generator/valibot/generator.d.ts +3 -0
  53. package/dist/generator/valibot/generator.js +14 -0
  54. package/dist/generator/valibot/index.d.ts +14 -3
  55. package/dist/generator/valibot/index.js +46 -73
  56. package/dist/generator/zod/config/index.d.ts +2 -2
  57. package/dist/generator/zod/config/index.js +6 -12
  58. package/dist/generator/zod/core/extract-schema.d.ts +1 -2
  59. package/dist/generator/zod/core/extract-schema.js +228 -81
  60. package/dist/generator/zod/core.d.ts +5 -0
  61. package/dist/generator/zod/core.js +39 -0
  62. package/dist/generator/zod/generator/infer.d.ts +5 -0
  63. package/dist/generator/zod/generator/infer.js +8 -0
  64. package/dist/generator/zod/generator/relation-zod-code.d.ts +13 -0
  65. package/dist/generator/zod/generator/relation-zod-code.js +19 -0
  66. package/dist/generator/zod/generator/zod-code.d.ts +17 -0
  67. package/dist/generator/zod/generator/zod-code.js +18 -0
  68. package/dist/generator/zod/generator/zod.d.ts +16 -0
  69. package/dist/generator/zod/generator/zod.js +16 -0
  70. package/dist/generator/zod/generator.d.ts +3 -0
  71. package/dist/generator/zod/generator.js +14 -0
  72. package/dist/generator/zod/index.d.ts +15 -3
  73. package/dist/generator/zod/index.js +50 -73
  74. package/dist/index.d.ts +8 -0
  75. package/dist/index.js +71 -0
  76. package/dist/shared/config/index.d.ts +13 -0
  77. package/dist/{common → shared}/config/index.js +1 -4
  78. package/dist/shared/format/index.d.ts +15 -0
  79. package/dist/shared/format/index.js +24 -0
  80. package/dist/shared/fs/index.d.ts +7 -0
  81. package/dist/shared/fs/index.js +16 -0
  82. package/dist/shared/fsp/index.d.ts +27 -0
  83. package/dist/shared/fsp/index.js +38 -0
  84. package/dist/shared/generator/field-definitions.d.ts +12 -0
  85. package/dist/shared/generator/field-definitions.js +12 -0
  86. package/dist/shared/helper/ast-parser.d.ts +3 -0
  87. package/dist/shared/helper/ast-parser.js +202 -0
  88. package/dist/shared/helper/build-schema-extractor.d.ts +25 -0
  89. package/dist/shared/helper/build-schema-extractor.js +33 -0
  90. package/dist/shared/helper/create-extract-field-from-property.d.ts +15 -0
  91. package/dist/shared/helper/create-extract-field-from-property.js +20 -0
  92. package/dist/shared/helper/create-extract-fields-from-call-expression.d.ts +14 -0
  93. package/dist/shared/helper/create-extract-fields-from-call-expression.js +14 -0
  94. package/dist/shared/helper/create-extract-relation-field-from-property.d.ts +12 -0
  95. package/dist/shared/helper/create-extract-relation-field-from-property.js +27 -0
  96. package/dist/shared/helper/extract-schemas.d.ts +133 -0
  97. package/dist/shared/helper/extract-schemas.js +445 -0
  98. package/dist/shared/helper/file-writer.d.ts +3 -0
  99. package/dist/shared/helper/file-writer.js +25 -0
  100. package/dist/shared/helper/find-object-literal-expression.d.ts +12 -0
  101. package/dist/shared/helper/find-object-literal-expression.js +31 -0
  102. package/dist/shared/helper/find-object-literalIn-args.d.ts +2 -0
  103. package/dist/shared/helper/find-object-literalIn-args.js +8 -0
  104. package/dist/shared/helper/is-relation-function.d.ts +10 -0
  105. package/dist/shared/helper/is-relation-function.js +16 -0
  106. package/dist/shared/types.js +1 -0
  107. package/dist/{common/text → shared/utils}/capitalize.js +1 -4
  108. package/dist/shared/utils/compose.d.ts +101 -0
  109. package/dist/shared/utils/compose.js +124 -0
  110. package/dist/shared/utils/file.d.ts +92 -0
  111. package/dist/shared/utils/file.js +177 -0
  112. package/dist/shared/utils/functional.d.ts +118 -0
  113. package/dist/shared/utils/functional.js +96 -0
  114. package/dist/shared/utils/index.d.ts +20 -0
  115. package/dist/shared/utils/index.js +48 -0
  116. package/dist/shared/utils/string-utils.d.ts +8 -0
  117. package/dist/shared/utils/string-utils.js +28 -0
  118. package/dist/shared/utils/types.d.ts +32 -0
  119. package/dist/shared/utils/types.js +2 -0
  120. package/dist/shared/utils/validation-utils.d.ts +8 -0
  121. package/dist/shared/utils/validation-utils.js +25 -0
  122. package/dist/src/config/index.d.ts +18 -0
  123. package/dist/src/config/index.js +13 -0
  124. package/dist/src/generator/mermaid-er/core/extract-relations.d.ts +8 -0
  125. package/dist/src/generator/mermaid-er/core/extract-relations.js +12 -0
  126. package/dist/src/generator/mermaid-er/generator/er-content.d.ts +9 -0
  127. package/dist/src/generator/mermaid-er/generator/er-content.js +25 -0
  128. package/dist/src/generator/mermaid-er/generator/index.d.ts +2 -0
  129. package/dist/src/generator/mermaid-er/generator/index.js +2 -0
  130. package/dist/src/generator/mermaid-er/generator/relation-line.d.ts +8 -0
  131. package/dist/src/generator/mermaid-er/generator/relation-line.js +14 -0
  132. package/dist/src/generator/mermaid-er/index.d.ts +6 -0
  133. package/dist/src/generator/mermaid-er/index.js +16 -0
  134. package/dist/src/generator/mermaid-er/relationship/build-relation-line.d.ts +15 -0
  135. package/dist/src/generator/mermaid-er/relationship/build-relation-line.js +35 -0
  136. package/dist/src/generator/mermaid-er/types.d.ts +21 -0
  137. package/dist/src/generator/mermaid-er/types.js +1 -0
  138. package/dist/src/generator/mermaid-er/validator/index.d.ts +4 -0
  139. package/dist/src/generator/mermaid-er/validator/index.js +4 -0
  140. package/dist/src/generator/mermaid-er/validator/is-relationship.d.ts +8 -0
  141. package/dist/src/generator/mermaid-er/validator/is-relationship.js +9 -0
  142. package/dist/src/generator/mermaid-er/validator/parse-relation-line.d.ts +13 -0
  143. package/dist/src/generator/mermaid-er/validator/parse-relation-line.js +21 -0
  144. package/dist/src/generator/mermaid-er/validator/parse-table-info.d.ts +8 -0
  145. package/dist/src/generator/mermaid-er/validator/parse-table-info.js +91 -0
  146. package/dist/src/generator/mermaid-er/validator/remove-duplicate-relations.d.ts +7 -0
  147. package/dist/src/generator/mermaid-er/validator/remove-duplicate-relations.js +9 -0
  148. package/dist/src/generator/valibot/generator/infer-input.d.ts +5 -0
  149. package/dist/src/generator/valibot/generator/infer-input.js +8 -0
  150. package/dist/src/generator/valibot/generator/valibot-code.d.ts +14 -0
  151. package/dist/src/generator/valibot/generator/valibot-code.js +16 -0
  152. package/dist/src/generator/valibot/generator/valibot.d.ts +13 -0
  153. package/dist/src/generator/valibot/generator/valibot.js +11 -0
  154. package/dist/src/generator/valibot/index.d.ts +9 -0
  155. package/dist/src/generator/valibot/index.js +34 -0
  156. package/dist/src/generator/zod/generator/infer.d.ts +5 -0
  157. package/dist/src/generator/zod/generator/infer.js +8 -0
  158. package/dist/{generator/zod/generator/generate-zod-code.d.ts → src/generator/zod/generator/zod-code.d.ts} +8 -3
  159. package/dist/src/generator/zod/generator/zod-code.js +18 -0
  160. package/dist/{generator/zod/generator/generate-zod-schema.d.ts → src/generator/zod/generator/zod.d.ts} +8 -4
  161. package/dist/src/generator/zod/generator/zod.js +12 -0
  162. package/dist/src/generator/zod/index.d.ts +10 -0
  163. package/dist/src/generator/zod/index.js +40 -0
  164. package/dist/src/index.d.ts +10 -0
  165. package/dist/src/index.js +35 -0
  166. package/dist/src/shared/format/index.d.ts +2 -0
  167. package/dist/src/shared/format/index.js +10 -0
  168. package/dist/src/shared/fs/index.d.ts +2 -0
  169. package/dist/src/shared/fs/index.js +10 -0
  170. package/dist/src/shared/fsp/index.d.ts +3 -0
  171. package/dist/src/shared/fsp/index.js +8 -0
  172. package/dist/src/shared/generator/field-definitions.d.ts +12 -0
  173. package/dist/src/shared/generator/field-definitions.js +12 -0
  174. package/dist/src/shared/helper/build-schema-extractor.d.ts +25 -0
  175. package/dist/src/shared/helper/build-schema-extractor.js +33 -0
  176. package/dist/src/shared/helper/create-extract-field-from-property.d.ts +15 -0
  177. package/dist/src/shared/helper/create-extract-field-from-property.js +20 -0
  178. package/dist/src/shared/helper/create-extract-fields-from-call-expression.d.ts +14 -0
  179. package/dist/src/shared/helper/create-extract-fields-from-call-expression.js +14 -0
  180. package/dist/src/shared/helper/create-extract-relation-field-from-property.d.ts +12 -0
  181. package/dist/src/shared/helper/create-extract-relation-field-from-property.js +27 -0
  182. package/dist/src/shared/helper/extract-schemas.d.ts +16 -0
  183. package/dist/src/shared/helper/extract-schemas.js +19 -0
  184. package/dist/src/shared/helper/find-object-literal-expression.d.ts +12 -0
  185. package/dist/src/shared/helper/find-object-literal-expression.js +31 -0
  186. package/dist/src/shared/helper/find-object-literalIn-args.d.ts +2 -0
  187. package/dist/src/shared/helper/find-object-literalIn-args.js +8 -0
  188. package/dist/src/shared/helper/is-relation-function.d.ts +10 -0
  189. package/dist/src/shared/helper/is-relation-function.js +16 -0
  190. package/dist/src/shared/utils/index.d.ts +33 -0
  191. package/dist/src/shared/utils/index.js +61 -0
  192. package/dist/utils/index.d.ts +144 -0
  193. package/dist/utils/index.js +301 -0
  194. package/package.json +10 -13
  195. package/dist/common/config/index.d.ts +0 -13
  196. package/dist/common/format/index.d.ts +0 -1
  197. package/dist/common/format/index.js +0 -12
  198. package/dist/common/generator/generate-field-definitions.d.ts +0 -8
  199. package/dist/common/generator/generate-field-definitions.js +0 -16
  200. package/dist/common/helper/get-camel-case-schema-name-helper.d.ts +0 -7
  201. package/dist/common/helper/get-camel-case-schema-name-helper.js +0 -14
  202. package/dist/common/helper/get-pascal-case-schema-name-helper.d.ts +0 -8
  203. package/dist/common/helper/get-pascal-case-schema-name-helper.js +0 -15
  204. package/dist/common/helper/get-variable-name-helper.d.ts +0 -9
  205. package/dist/common/helper/get-variable-name-helper.js +0 -15
  206. package/dist/common/helper/get-variable-schema-name-helper.d.ts +0 -9
  207. package/dist/common/helper/get-variable-schema-name-helper.js +0 -17
  208. package/dist/common/text/decapitalize.d.ts +0 -17
  209. package/dist/common/text/decapitalize.js +0 -22
  210. package/dist/common/type/index.js +0 -2
  211. package/dist/generator/mermaid-er/generator/generate-er-content.d.ts +0 -9
  212. package/dist/generator/mermaid-er/generator/generate-relation-line.d.ts +0 -7
  213. package/dist/generator/mermaid-er/type/index.js +0 -2
  214. package/dist/generator/mermaid-er/validator/is-relation.d.ts +0 -7
  215. package/dist/generator/mermaid-er/validator/is-relation.js +0 -40
  216. package/dist/generator/valibot/generator/generate-valibot-code.d.ts +0 -11
  217. package/dist/generator/valibot/generator/generate-valibot-code.js +0 -21
  218. package/dist/generator/valibot/generator/generate-valibot-infer-input.d.ts +0 -9
  219. package/dist/generator/valibot/generator/generate-valibot-infer-input.js +0 -16
  220. package/dist/generator/valibot/generator/generate-valibot-schema.d.ts +0 -9
  221. package/dist/generator/valibot/generator/generate-valibot-schema.js +0 -16
  222. package/dist/generator/zod/generator/generate-z-infer.d.ts +0 -11
  223. package/dist/generator/zod/generator/generate-z-infer.js +0 -18
  224. package/dist/generator/zod/generator/generate-zod-code.js +0 -21
  225. package/dist/generator/zod/generator/generate-zod-schema.js +0 -17
  226. /package/dist/generator/mermaid-er/{type/index.d.ts → types.d.ts} +0 -0
  227. /package/dist/{common/type/index.d.ts → shared/types.d.ts} +0 -0
  228. /package/dist/{common/text → shared/utils}/capitalize.d.ts +0 -0
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.decapitalize = decapitalize;
4
- /**
5
- * Decapitalizes the first letter of a string
6
- *
7
- * @function decapitalize
8
- * @param str - String to decapitalize
9
- * @returns String with the first letter in lowercase
10
- *
11
- * @example
12
- * decapitalize('Posts') // Returns: 'posts'
13
- * decapitalize('User') // Returns: 'user'
14
- * decapitalize('Api') // Returns: 'api'
15
- *
16
- * @remarks
17
- * - Leaves the rest of the string unchanged
18
- * - Returns an empty string if the input is empty
19
- */
20
- function decapitalize(str) {
21
- return `${str.charAt(0).toLowerCase()}${str.slice(1)}`;
22
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,9 +0,0 @@
1
- import type { Relation, TableInfo } from '../type';
2
- /**
3
- * Generate ER content
4
- * @function generateERContent
5
- * @param relations - The relations to generate the ER content from
6
- * @param tables - The tables to generate the ER content from
7
- * @returns The generated ER content
8
- */
9
- export declare function generateERContent(relations: Relation[], tables: TableInfo[]): string;
@@ -1,7 +0,0 @@
1
- import type { Relation } from '../type';
2
- /**
3
- * Generate a relation line for a relation
4
- * @param relation - The relation to generate a line for
5
- * @returns The generated relation line
6
- */
7
- export declare function generateRelationLine(relation: Relation): string;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,7 +0,0 @@
1
- import type { RelationType } from '../type'
2
- /**
3
- * Validate if a value is a valid relation type
4
- * @param value - The value to validate
5
- * @returns True if the value is a valid relation type, false otherwise
6
- */
7
- export declare function isRelation(value: unknown): value is RelationType
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isRelation = isRelation;
4
- const VALID_RELATIONS = new Set([
5
- // Required Relationships
6
- 'one-to-one',
7
- 'one-to-many',
8
- 'many-to-one',
9
- 'many-to-many',
10
- 'one-to-zero-one',
11
- 'zero-one-to-one',
12
- 'zero-to-one',
13
- 'zero-to-zero-one',
14
- 'zero-to-many',
15
- 'zero-one-to-many',
16
- 'many-to-zero-one',
17
- // Optional Relationships (using dotted lines)
18
- 'one-to-one-optional',
19
- 'one-to-many-optional',
20
- 'many-to-one-optional',
21
- 'many-to-many-optional',
22
- 'one-to-zero-one-optional',
23
- 'zero-one-to-one-optional',
24
- 'zero-to-one-optional',
25
- 'zero-to-many-optional',
26
- 'zero-one-to-many-optional',
27
- 'many-to-zero-one-optional',
28
- // Nuanced Patterns (Aliases)
29
- 'many-to-zero-many',
30
- 'zero-many-to-many',
31
- 'zero-many-to-zero-many',
32
- ]);
33
- /**
34
- * Validate if a value is a valid relation type
35
- * @param value - The value to validate
36
- * @returns True if the value is a valid relation type, false otherwise
37
- */
38
- function isRelation(value) {
39
- return typeof value === 'string' && VALID_RELATIONS.has(value);
40
- }
@@ -1,11 +0,0 @@
1
- import type { Schema } from '../../../common/type';
2
- import type { Config } from '../../../common/config';
3
- /**
4
- * Generates Valibot code for a given schema and config.
5
- *
6
- * @function generateValibotCode
7
- * @param schema - The schema to generate code for.
8
- * @param config - The configuration for the code generation.
9
- * @returns The generated Valibot code.
10
- */
11
- export declare function generateValibotCode(schema: Schema, config: Config): string;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateValibotCode = generateValibotCode;
4
- const generate_valibot_infer_input_1 = require("./generate-valibot-infer-input");
5
- const generate_valibot_schema_1 = require("./generate-valibot-schema");
6
- /**
7
- * Generates Valibot code for a given schema and config.
8
- *
9
- * @function generateValibotCode
10
- * @param schema - The schema to generate code for.
11
- * @param config - The configuration for the code generation.
12
- * @returns The generated Valibot code.
13
- */
14
- function generateValibotCode(schema, config) {
15
- const valibotSchema = (0, generate_valibot_schema_1.generateValibotSchema)(schema, config);
16
- const valibotInfer = (0, generate_valibot_infer_input_1.generateValibotInferInput)(schema, config);
17
- if (config.type.export) {
18
- return `${valibotSchema}\n\n${valibotInfer}\n`;
19
- }
20
- return `${valibotSchema}\n`;
21
- }
@@ -1,9 +0,0 @@
1
- import type { Schema } from '../../../common/type';
2
- import type { Config } from '../../../common/config';
3
- /**
4
- * @function generateValibotInferInput
5
- * @param schema
6
- * @param config
7
- * @returns
8
- */
9
- export declare function generateValibotInferInput(schema: Schema, config: Config): string;
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateValibotInferInput = generateValibotInferInput;
4
- const get_variable_name_helper_1 = require("../../../common/helper/get-variable-name-helper");
5
- const get_variable_schema_name_helper_1 = require("../../../common/helper/get-variable-schema-name-helper");
6
- /**
7
- * @function generateValibotInferInput
8
- * @param schema
9
- * @param config
10
- * @returns
11
- */
12
- function generateValibotInferInput(schema, config) {
13
- const typeName = (0, get_variable_name_helper_1.getVariableNameHelper)(schema.name, config);
14
- const schemaName = (0, get_variable_schema_name_helper_1.getVariableSchemaNameHelper)(schema.name, config);
15
- return `export type ${typeName} = v.InferInput<typeof ${schemaName}>`;
16
- }
@@ -1,9 +0,0 @@
1
- import type { Schema } from '../../../common/type';
2
- import type { Config } from '../../../common/config';
3
- /**
4
- * @function generateValibotSchema
5
- * @param schema
6
- * @param config
7
- * @returns
8
- */
9
- export declare function generateValibotSchema(schema: Schema, config: Config): string;
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateValibotSchema = generateValibotSchema;
4
- const generate_field_definitions_1 = require("../../../common/generator/generate-field-definitions");
5
- const get_variable_schema_name_helper_1 = require("../../../common/helper/get-variable-schema-name-helper");
6
- /**
7
- * @function generateValibotSchema
8
- * @param schema
9
- * @param config
10
- * @returns
11
- */
12
- function generateValibotSchema(schema, config) {
13
- const schemaName = (0, get_variable_schema_name_helper_1.getVariableSchemaNameHelper)(schema.name, config);
14
- const res = (0, generate_field_definitions_1.generateFieldDefinitions)(schema, config);
15
- return `export const ${schemaName} = v.object({${res}})`;
16
- }
@@ -1,11 +0,0 @@
1
- import type { Schema } from '../../../common/type';
2
- import type { Config } from '../../../common/config';
3
- /**
4
- * Generates a Zod infer type for a given schema and config.
5
- *
6
- * @function generateZInfer
7
- * @param schema - The schema to generate code for.
8
- * @param config - The configuration for the code generation.
9
- * @returns The generated Zod infer type.
10
- */
11
- export declare function generateZInfer(schema: Schema, config: Config): string;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateZInfer = generateZInfer;
4
- const get_variable_name_helper_1 = require("../../../common/helper/get-variable-name-helper");
5
- const get_variable_schema_name_helper_1 = require("../../../common/helper/get-variable-schema-name-helper");
6
- /**
7
- * Generates a Zod infer type for a given schema and config.
8
- *
9
- * @function generateZInfer
10
- * @param schema - The schema to generate code for.
11
- * @param config - The configuration for the code generation.
12
- * @returns The generated Zod infer type.
13
- */
14
- function generateZInfer(schema, config) {
15
- const typeName = (0, get_variable_name_helper_1.getVariableNameHelper)(schema.name, config);
16
- const schemaName = (0, get_variable_schema_name_helper_1.getVariableSchemaNameHelper)(schema.name, config);
17
- return `export type ${typeName} = z.infer<typeof ${schemaName}>`;
18
- }
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateZodCode = generateZodCode;
4
- const generate_z_infer_1 = require("./generate-z-infer");
5
- const generate_zod_schema_1 = require("./generate-zod-schema");
6
- /**
7
- * Generates Zod code for a given schema and config.
8
- *
9
- * @function generateZodCode
10
- * @param schema - The schema to generate code for.
11
- * @param config - The configuration for the code generation.
12
- * @returns The generated Zod code.
13
- */
14
- function generateZodCode(schema, config) {
15
- const zodSchema = (0, generate_zod_schema_1.generateZodSchema)(schema, config);
16
- const zInfer = (0, generate_z_infer_1.generateZInfer)(schema, config);
17
- if (config.type.export) {
18
- return `${zodSchema}\n\n${zInfer}\n`;
19
- }
20
- return `${zodSchema}\n`;
21
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateZodSchema = generateZodSchema;
4
- const get_variable_schema_name_helper_1 = require("../../../common/helper/get-variable-schema-name-helper");
5
- const generate_field_definitions_1 = require("../../../common/generator/generate-field-definitions");
6
- /**
7
- * Generates a Zod schema for a given schema and config.
8
- *
9
- * @function generateZodSchema
10
- * @param schema - The schema to generate code for.
11
- * @param config - The configuration for the code generation.
12
- * @returns The generated Zod schema.
13
- */
14
- function generateZodSchema(schema, config) {
15
- const schemaName = (0, get_variable_schema_name_helper_1.getVariableSchemaNameHelper)(schema.name, config);
16
- return `export const ${schemaName} = z.object({${(0, generate_field_definitions_1.generateFieldDefinitions)(schema, config)}})`;
17
- }