hekireki 0.0.9 → 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 (148) hide show
  1. package/README.md +71 -214
  2. package/dist/generator/mermaid-er/generator/er-content.d.ts +2 -0
  3. package/dist/generator/mermaid-er/generator/er-content.js +21 -0
  4. package/dist/generator/mermaid-er/generator/index.d.ts +4 -0
  5. package/dist/generator/mermaid-er/generator/index.js +4 -0
  6. package/dist/generator/mermaid-er/generator/{generate-model-fields.d.ts → model-fields.d.ts} +1 -1
  7. package/dist/generator/mermaid-er/generator/{generate-model-fields.js → model-fields.js} +1 -4
  8. package/dist/generator/mermaid-er/generator/model-info.d.ts +7 -0
  9. package/dist/generator/mermaid-er/generator/model-info.js +9 -0
  10. package/dist/generator/mermaid-er/generator/relation-line.d.ts +7 -0
  11. package/dist/generator/mermaid-er/generator/relation-line.js +13 -0
  12. package/dist/generator/mermaid-er/index.d.ts +0 -6
  13. package/dist/generator/mermaid-er/index.js +11 -28
  14. package/dist/generator/mermaid-er/relationship/build-relation-line.d.ts +0 -5
  15. package/dist/generator/mermaid-er/relationship/build-relation-line.js +7 -15
  16. package/dist/generator/mermaid-er/types.js +1 -0
  17. package/dist/generator/mermaid-er/validator/exclude-many-to-one-relations.js +1 -4
  18. package/dist/generator/mermaid-er/validator/extract-relations.d.ts +1 -1
  19. package/dist/generator/mermaid-er/validator/extract-relations.js +5 -8
  20. package/dist/generator/mermaid-er/validator/index.d.ts +5 -0
  21. package/dist/generator/mermaid-er/validator/index.js +5 -0
  22. package/dist/generator/mermaid-er/validator/is-relationship.d.ts +1 -1
  23. package/dist/generator/mermaid-er/validator/is-relationship.js +1 -4
  24. package/dist/generator/mermaid-er/validator/parse-relation.d.ts +1 -1
  25. package/dist/generator/mermaid-er/validator/parse-relation.js +1 -4
  26. package/dist/generator/mermaid-er/validator/remove-duplicate-relations.js +1 -4
  27. package/dist/generator/valibot/generator/index.d.ts +5 -0
  28. package/dist/generator/valibot/generator/index.js +5 -0
  29. package/dist/generator/valibot/generator/{generate-valibot-infer-input.d.ts → infer-input.d.ts} +1 -2
  30. package/dist/generator/valibot/generator/infer-input.js +9 -0
  31. package/dist/generator/valibot/generator/properties.d.ts +7 -0
  32. package/dist/generator/valibot/generator/{generate-valibot-properties.js → properties.js} +2 -5
  33. package/dist/generator/valibot/generator/schema.d.ts +7 -0
  34. package/dist/generator/valibot/generator/schema.js +9 -0
  35. package/dist/generator/valibot/generator/{generate-valibot-schemas.d.ts → schemas.d.ts} +2 -4
  36. package/dist/generator/valibot/generator/schemas.js +17 -0
  37. package/dist/generator/valibot/generator/valibot.d.ts +9 -0
  38. package/dist/generator/valibot/generator/valibot.js +50 -0
  39. package/dist/generator/valibot/index.d.ts +0 -8
  40. package/dist/generator/valibot/index.js +13 -44
  41. package/dist/generator/valibot/validator/index.d.ts +2 -0
  42. package/dist/generator/valibot/validator/index.js +2 -0
  43. package/dist/generator/valibot/validator/is-valibot-document.d.ts +1 -0
  44. package/dist/generator/valibot/validator/{is-valibot-documentation.js → is-valibot-document.js} +1 -4
  45. package/dist/generator/valibot/validator/is-valibot.d.ts +6 -0
  46. package/dist/generator/valibot/validator/{is-valibot-validation.js → is-valibot.js} +1 -5
  47. package/dist/generator/zod/generator/index.d.ts +5 -0
  48. package/dist/generator/zod/generator/index.js +5 -0
  49. package/dist/generator/zod/generator/{generate-zod-infer.d.ts → infer.d.ts} +1 -2
  50. package/dist/generator/zod/generator/infer.js +9 -0
  51. package/dist/generator/zod/generator/{generate-zod-properties.d.ts → properties.d.ts} +2 -3
  52. package/dist/generator/zod/generator/{generate-zod-properties.js → properties.js} +2 -5
  53. package/dist/generator/zod/generator/{generate-zod-schema.d.ts → schema.d.ts} +1 -2
  54. package/dist/generator/zod/generator/schema.js +10 -0
  55. package/dist/generator/zod/generator/{generate-zod-schemas.d.ts → schemas.d.ts} +2 -3
  56. package/dist/generator/zod/generator/schemas.js +16 -0
  57. package/dist/generator/zod/generator/zod.d.ts +9 -0
  58. package/dist/generator/zod/generator/zod.js +55 -0
  59. package/dist/generator/zod/index.d.ts +0 -8
  60. package/dist/generator/zod/index.js +14 -44
  61. package/dist/generator/zod/validator/index.d.ts +2 -0
  62. package/dist/generator/zod/validator/index.js +2 -0
  63. package/dist/generator/zod/validator/{is-zod-documentation.d.ts → is-zod-document.d.ts} +1 -1
  64. package/dist/generator/zod/validator/{is-zod-documentation.js → is-zod-document.js} +1 -4
  65. package/dist/generator/zod/validator/{is-zod-validation.d.ts → is-zod.d.ts} +1 -1
  66. package/dist/generator/zod/validator/{is-zod-validation.js → is-zod.js} +1 -4
  67. package/dist/shared/format/index.d.ts +1 -0
  68. package/dist/shared/format/index.js +9 -0
  69. package/dist/shared/helper/group-by-model.d.ts +8 -0
  70. package/dist/{common/helper/group-by-model-helper.js → shared/helper/group-by-model.js} +1 -4
  71. package/dist/shared/types.js +1 -0
  72. package/dist/{common/text → shared/utils}/capitalize.d.ts +3 -5
  73. package/dist/{common/text → shared/utils}/capitalize.js +4 -9
  74. package/dist/shared/utils/index.d.ts +1 -0
  75. package/dist/shared/utils/index.js +1 -0
  76. package/dist/shared/validator/is-fields.d.ts +12 -0
  77. package/dist/{common/validator/is-fields-validation.js → shared/validator/is-fields.js} +1 -4
  78. package/package.json +13 -12
  79. package/dist/common/format/index.d.ts +0 -1
  80. package/dist/common/format/index.js +0 -12
  81. package/dist/common/helper/get-camel-case-schema-name-helper.d.ts +0 -7
  82. package/dist/common/helper/get-camel-case-schema-name-helper.js +0 -14
  83. package/dist/common/helper/get-pascal-case-schema-name-helper.d.ts +0 -8
  84. package/dist/common/helper/get-pascal-case-schema-name-helper.js +0 -15
  85. package/dist/common/helper/get-variable-name-helper.d.ts +0 -9
  86. package/dist/common/helper/get-variable-name-helper.js +0 -15
  87. package/dist/common/helper/get-variable-schema-name-helper.d.ts +0 -9
  88. package/dist/common/helper/get-variable-schema-name-helper.js +0 -17
  89. package/dist/common/helper/group-by-model-helper.d.ts +0 -8
  90. package/dist/common/text/decapitalize.d.ts +0 -17
  91. package/dist/common/text/decapitalize.js +0 -22
  92. package/dist/common/type/index.js +0 -2
  93. package/dist/common/validator/is-fields-validation.d.ts +0 -13
  94. package/dist/generator/mermaid/generator/generate-er-content.d.ts +0 -7
  95. package/dist/generator/mermaid/generator/generate-er-content.js +0 -22
  96. package/dist/generator/mermaid/generator/generate-model-fields.d.ts +0 -7
  97. package/dist/generator/mermaid/generator/generate-model-fields.js +0 -27
  98. package/dist/generator/mermaid/generator/generate-model-info.d.ts +0 -8
  99. package/dist/generator/mermaid/generator/generate-model-info.js +0 -13
  100. package/dist/generator/mermaid/generator/generate-relation-line.d.ts +0 -7
  101. package/dist/generator/mermaid/generator/generate-relation-line.js +0 -16
  102. package/dist/generator/mermaid/index.d.ts +0 -9
  103. package/dist/generator/mermaid/index.js +0 -39
  104. package/dist/generator/mermaid/output/index.d.ts +0 -8
  105. package/dist/generator/mermaid/output/index.js +0 -24
  106. package/dist/generator/mermaid/relationship/build-relation-line.d.ts +0 -14
  107. package/dist/generator/mermaid/relationship/build-relation-line.js +0 -37
  108. package/dist/generator/mermaid/relationship/index.d.ts +0 -12
  109. package/dist/generator/mermaid/relationship/index.js +0 -30
  110. package/dist/generator/mermaid/type/index.d.ts +0 -10
  111. package/dist/generator/mermaid/type/index.js +0 -2
  112. package/dist/generator/mermaid/validator/exclude-many-to-one-relations.d.ts +0 -7
  113. package/dist/generator/mermaid/validator/exclude-many-to-one-relations.js +0 -12
  114. package/dist/generator/mermaid/validator/extract-relations.d.ts +0 -7
  115. package/dist/generator/mermaid/validator/extract-relations.js +0 -25
  116. package/dist/generator/mermaid/validator/is-relation.d.ts +0 -7
  117. package/dist/generator/mermaid/validator/is-relation.js +0 -37
  118. package/dist/generator/mermaid/validator/is-relationship.d.ts +0 -7
  119. package/dist/generator/mermaid/validator/is-relationship.js +0 -11
  120. package/dist/generator/mermaid/validator/parse-relation.d.ts +0 -8
  121. package/dist/generator/mermaid/validator/parse-relation.js +0 -24
  122. package/dist/generator/mermaid/validator/remove-duplicate-relations.d.ts +0 -6
  123. package/dist/generator/mermaid/validator/remove-duplicate-relations.js +0 -11
  124. package/dist/generator/mermaid-er/generator/generate-er-content.d.ts +0 -7
  125. package/dist/generator/mermaid-er/generator/generate-er-content.js +0 -22
  126. package/dist/generator/mermaid-er/generator/generate-model-info.d.ts +0 -8
  127. package/dist/generator/mermaid-er/generator/generate-model-info.js +0 -13
  128. package/dist/generator/mermaid-er/generator/generate-relation-line.d.ts +0 -7
  129. package/dist/generator/mermaid-er/generator/generate-relation-line.js +0 -16
  130. package/dist/generator/mermaid-er/output/index.d.ts +0 -8
  131. package/dist/generator/mermaid-er/output/index.js +0 -24
  132. package/dist/generator/mermaid-er/type/index.js +0 -2
  133. package/dist/generator/valibot/generator/generate-valibot-infer-input.js +0 -16
  134. package/dist/generator/valibot/generator/generate-valibot-properties.d.ts +0 -8
  135. package/dist/generator/valibot/generator/generate-valibot-schema.d.ts +0 -9
  136. package/dist/generator/valibot/generator/generate-valibot-schema.js +0 -15
  137. package/dist/generator/valibot/generator/generate-valibot-schemas.js +0 -21
  138. package/dist/generator/valibot/generator/generate-valibot.d.ts +0 -9
  139. package/dist/generator/valibot/generator/generate-valibot.js +0 -52
  140. package/dist/generator/valibot/validator/is-valibot-documentation.d.ts +0 -1
  141. package/dist/generator/valibot/validator/is-valibot-validation.d.ts +0 -7
  142. package/dist/generator/zod/generator/generate-zod-infer.js +0 -16
  143. package/dist/generator/zod/generator/generate-zod-schema.js +0 -15
  144. package/dist/generator/zod/generator/generate-zod-schemas.js +0 -20
  145. package/dist/generator/zod/generator/generate-zod.d.ts +0 -9
  146. package/dist/generator/zod/generator/generate-zod.js +0 -52
  147. /package/dist/generator/mermaid-er/{type/index.d.ts → types.d.ts} +0 -0
  148. /package/dist/{common/type/index.d.ts → shared/types.d.ts} +0 -0
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateZodInfer = generateZodInfer;
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
- * Generate Zod infer
8
- * @param modelName - The name of the model
9
- * @param config - The configuration for the generator
10
- * @returns The generated Zod infer
11
- */
12
- function generateZodInfer(modelName, config) {
13
- const typeName = (0, get_variable_name_helper_1.getVariableNameHelper)(modelName, config);
14
- const schemaName = (0, get_variable_schema_name_helper_1.getVariableSchemaNameHelper)(modelName, config);
15
- return `export type ${typeName} = z.infer<typeof ${schemaName}>`;
16
- }
@@ -1,15 +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
- /**
6
- * Generate Zod schema
7
- * @param modelName - The name of the model
8
- * @param fields - The fields of the model
9
- * @param config - The configuration for the generator
10
- * @returns The generated Zod schema
11
- */
12
- function generateZodSchema(modelName, fields, config) {
13
- const schemaName = (0, get_variable_schema_name_helper_1.getVariableSchemaNameHelper)(modelName, config);
14
- return `export const ${schemaName} = z.object({\n${fields}\n})`;
15
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateZodSchemas = generateZodSchemas;
4
- const generate_zod_properties_1 = require("./generate-zod-properties");
5
- const generate_zod_schema_1 = require("./generate-zod-schema");
6
- /**
7
- * Generate Zod schemas
8
- * @param modelFields - The fields of the model
9
- * @param config - The configuration for the generator
10
- * @returns The generated Zod schemas
11
- */
12
- function generateZodSchemas(modelFields, config) {
13
- const modelName = modelFields[0].modelName;
14
- const modelDoc = modelFields[0].documentation || '';
15
- const fields = (0, generate_zod_properties_1.generateZodProperties)(modelFields, config);
16
- if (!(modelDoc || !config?.comment)) {
17
- return (0, generate_zod_schema_1.generateZodSchema)(modelName, fields, config);
18
- }
19
- return `${(0, generate_zod_schema_1.generateZodSchema)(modelName, fields, config)}`;
20
- }
@@ -1,9 +0,0 @@
1
- import type { Config } from '..';
2
- import type { Model } from '../../../common/type';
3
- /**
4
- * Generate Zod schemas and types
5
- * @param models - The models to generate the Zod schemas and types for
6
- * @param config - The configuration for the generator
7
- * @returns The generated Zod schemas and types
8
- */
9
- export declare function generateZod(models: readonly Model[], config: Config): string;
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateZod = generateZod;
4
- const is_zod_documentation_1 = require("../validator/is-zod-documentation");
5
- const is_zod_validation_1 = require("../validator/is-zod-validation");
6
- const is_fields_validation_1 = require("../../../common/validator/is-fields-validation");
7
- const group_by_model_helper_1 = require("../../../common/helper/group-by-model-helper");
8
- const generate_zod_schemas_1 = require("./generate-zod-schemas");
9
- const generate_zod_infer_1 = require("./generate-zod-infer");
10
- const ZOD_IMPORT = `import { z } from 'zod'\n`;
11
- /**
12
- * Generate Zod schemas and types
13
- * @param models - The models to generate the Zod schemas and types for
14
- * @param config - The configuration for the generator
15
- * @returns The generated Zod schemas and types
16
- */
17
- function generateZod(models, config) {
18
- const modelInfos = models.map((model) => {
19
- return {
20
- documentation: model.documentation ?? '',
21
- name: model.name,
22
- fields: model.fields,
23
- };
24
- });
25
- const modelFields = modelInfos.map((model) => {
26
- const fields = model.fields.map((field) => ({
27
- documentation: model.documentation,
28
- modelName: model.name,
29
- fieldName: field.name,
30
- comment: (0, is_zod_documentation_1.isZodDocumentValidation)(field.documentation),
31
- validation: (0, is_zod_validation_1.isZodValidation)(field.documentation),
32
- }));
33
- return fields;
34
- });
35
- // null exclude
36
- const validFields = (0, is_fields_validation_1.isFieldsValidation)(modelFields);
37
- // group by model
38
- const groupedByModel = (0, group_by_model_helper_1.groupByModelHelper)(validFields);
39
- const zods = Object.values(groupedByModel).map((fields) => {
40
- return {
41
- generateZodSchema: (0, generate_zod_schemas_1.generateZodSchemas)(fields, config),
42
- generateZodInfer: config.type === 'true' ? (0, generate_zod_infer_1.generateZodInfer)(fields[0].modelName, config) : '',
43
- };
44
- });
45
- return [
46
- ZOD_IMPORT,
47
- '',
48
- zods
49
- .flatMap(({ generateZodSchema, generateZodInfer }) => [generateZodSchema, generateZodInfer].filter(Boolean))
50
- .join('\n\n'),
51
- ].join('\n');
52
- }