@duplojs/data-parser-tools 0.2.3 → 0.2.5

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 (93) hide show
  1. package/README.md +167 -2
  2. package/dist/toJsonSchema/override.cjs +5 -4
  3. package/dist/toJsonSchema/override.mjs +5 -4
  4. package/dist/toJsonSchema/render.cjs +11 -12
  5. package/dist/toJsonSchema/render.d.ts +8 -8
  6. package/dist/toJsonSchema/render.mjs +11 -12
  7. package/dist/toJsonSchema/transformer/create.d.ts +9 -7
  8. package/dist/toJsonSchema/transformer/defaults/date.cjs +1 -2
  9. package/dist/toJsonSchema/transformer/defaults/date.mjs +1 -2
  10. package/dist/toJsonSchema/transformer/defaults/file.cjs +17 -0
  11. package/dist/toJsonSchema/transformer/defaults/file.d.ts +5 -0
  12. package/dist/toJsonSchema/transformer/defaults/file.mjs +15 -0
  13. package/dist/toJsonSchema/transformer/defaults/index.cjs +2 -0
  14. package/dist/toJsonSchema/transformer/defaults/index.d.ts +1 -1
  15. package/dist/toJsonSchema/transformer/defaults/index.mjs +2 -0
  16. package/dist/toJsonSchema/transformer/defaults/literal.cjs +59 -23
  17. package/dist/toJsonSchema/transformer/defaults/literal.d.ts +12 -4
  18. package/dist/toJsonSchema/transformer/defaults/literal.mjs +60 -24
  19. package/dist/toJsonSchema/transformer/defaults/nullable.cjs +11 -2
  20. package/dist/toJsonSchema/transformer/defaults/nullable.mjs +11 -2
  21. package/dist/toJsonSchema/transformer/defaults/object.cjs +1 -1
  22. package/dist/toJsonSchema/transformer/defaults/object.mjs +1 -1
  23. package/dist/toJsonSchema/transformer/defaults/optional.cjs +10 -1
  24. package/dist/toJsonSchema/transformer/defaults/optional.mjs +10 -1
  25. package/dist/toJsonSchema/transformer/defaults/time.cjs +1 -1
  26. package/dist/toJsonSchema/transformer/defaults/time.mjs +1 -1
  27. package/dist/toJsonSchema/transformer/defaults/union.cjs +3 -3
  28. package/dist/toJsonSchema/transformer/defaults/union.mjs +3 -3
  29. package/dist/toJsonSchema/transformer/transformer.cjs +10 -10
  30. package/dist/toJsonSchema/transformer/transformer.d.ts +5 -5
  31. package/dist/toJsonSchema/transformer/transformer.mjs +10 -10
  32. package/dist/toTypescript/index.cjs +2 -0
  33. package/dist/toTypescript/index.mjs +1 -0
  34. package/dist/toTypescript/override.cjs +5 -7
  35. package/dist/toTypescript/override.mjs +5 -7
  36. package/dist/toTypescript/render.cjs +7 -1
  37. package/dist/toTypescript/render.d.ts +6 -6
  38. package/dist/toTypescript/render.mjs +7 -1
  39. package/dist/toTypescript/transformer/create.d.ts +10 -5
  40. package/dist/toTypescript/transformer/defaults/array.d.ts +1 -2
  41. package/dist/toTypescript/transformer/defaults/bigint.d.ts +1 -2
  42. package/dist/toTypescript/transformer/defaults/boolean.d.ts +1 -2
  43. package/dist/toTypescript/transformer/defaults/date.cjs +17 -7
  44. package/dist/toTypescript/transformer/defaults/date.d.ts +1 -2
  45. package/dist/toTypescript/transformer/defaults/date.mjs +19 -9
  46. package/dist/toTypescript/transformer/defaults/empty.d.ts +1 -2
  47. package/dist/toTypescript/transformer/defaults/file.cjs +13 -0
  48. package/dist/toTypescript/transformer/defaults/file.d.ts +1 -0
  49. package/dist/toTypescript/transformer/defaults/file.mjs +11 -0
  50. package/dist/toTypescript/transformer/defaults/index.cjs +2 -0
  51. package/dist/toTypescript/transformer/defaults/index.d.ts +1 -1
  52. package/dist/toTypescript/transformer/defaults/index.mjs +2 -0
  53. package/dist/toTypescript/transformer/defaults/lazy.d.ts +1 -2
  54. package/dist/toTypescript/transformer/defaults/literal.d.ts +1 -2
  55. package/dist/toTypescript/transformer/defaults/nil.d.ts +1 -2
  56. package/dist/toTypescript/transformer/defaults/nullable.cjs +11 -2
  57. package/dist/toTypescript/transformer/defaults/nullable.d.ts +1 -2
  58. package/dist/toTypescript/transformer/defaults/nullable.mjs +11 -2
  59. package/dist/toTypescript/transformer/defaults/number.d.ts +1 -2
  60. package/dist/toTypescript/transformer/defaults/object.cjs +2 -10
  61. package/dist/toTypescript/transformer/defaults/object.d.ts +1 -2
  62. package/dist/toTypescript/transformer/defaults/object.mjs +2 -10
  63. package/dist/toTypescript/transformer/defaults/optional.cjs +11 -2
  64. package/dist/toTypescript/transformer/defaults/optional.d.ts +1 -2
  65. package/dist/toTypescript/transformer/defaults/optional.mjs +11 -2
  66. package/dist/toTypescript/transformer/defaults/pipe.d.ts +1 -2
  67. package/dist/toTypescript/transformer/defaults/record.cjs +2 -1
  68. package/dist/toTypescript/transformer/defaults/record.d.ts +1 -2
  69. package/dist/toTypescript/transformer/defaults/record.mjs +3 -2
  70. package/dist/toTypescript/transformer/defaults/recover.d.ts +1 -2
  71. package/dist/toTypescript/transformer/defaults/string.d.ts +1 -2
  72. package/dist/toTypescript/transformer/defaults/templateLiteral.d.ts +1 -2
  73. package/dist/toTypescript/transformer/defaults/time.cjs +17 -7
  74. package/dist/toTypescript/transformer/defaults/time.d.ts +1 -2
  75. package/dist/toTypescript/transformer/defaults/time.mjs +18 -8
  76. package/dist/toTypescript/transformer/defaults/transform.d.ts +1 -2
  77. package/dist/toTypescript/transformer/defaults/tuple.d.ts +1 -2
  78. package/dist/toTypescript/transformer/defaults/union.d.ts +1 -2
  79. package/dist/toTypescript/transformer/defaults/unknown.d.ts +1 -2
  80. package/dist/toTypescript/transformer/hook.d.ts +3 -2
  81. package/dist/toTypescript/transformer/importTypesTransformer.cjs +10 -0
  82. package/dist/toTypescript/transformer/importTypesTransformer.d.ts +2 -0
  83. package/dist/toTypescript/transformer/importTypesTransformer.mjs +8 -0
  84. package/dist/toTypescript/transformer/includesUndefinedTypeNode.cjs +16 -0
  85. package/dist/toTypescript/transformer/includesUndefinedTypeNode.d.ts +2 -0
  86. package/dist/toTypescript/transformer/includesUndefinedTypeNode.mjs +14 -0
  87. package/dist/toTypescript/transformer/index.cjs +2 -0
  88. package/dist/toTypescript/transformer/index.d.ts +1 -0
  89. package/dist/toTypescript/transformer/index.mjs +1 -0
  90. package/dist/toTypescript/transformer/transformer.cjs +8 -0
  91. package/dist/toTypescript/transformer/transformer.d.ts +4 -3
  92. package/dist/toTypescript/transformer/transformer.mjs +8 -0
  93. package/package.json +3 -2
@@ -2,3 +2,4 @@ export { createTransformer } from './create.mjs';
2
2
  export { transformer } from './transformer.mjs';
3
3
  import './hook.mjs';
4
4
  export { defaultTransformers } from './defaults/index.mjs';
5
+ export { includesUndefinedTypeNode } from './includesUndefinedTypeNode.mjs';
@@ -8,6 +8,7 @@ function transformer(schema, params) {
8
8
  const result = hook({
9
9
  schema: lastValue,
10
10
  context: params.context,
11
+ importType: params.importType,
11
12
  output: (action, schema) => ({
12
13
  schema,
13
14
  action,
@@ -41,6 +42,13 @@ function transformer(schema, params) {
41
42
  buildError() {
42
43
  return utils.E.left("buildDataParserError");
43
44
  },
45
+ importType: params.importType,
46
+ addImport(path, typeName) {
47
+ const types = params.importType.get(path) ?? [];
48
+ if (!utils.A.includes(types, typeName)) {
49
+ params.importType.set(path, utils.A.push(types, typeName));
50
+ }
51
+ },
44
52
  };
45
53
  const result = utils.A.reduce(params.transformers, utils.A.reduceFrom(utils.E.left("dataParserNotSupport", currentSchema)), ({ element: functionBuilder, lastValue, next, exit, }) => {
46
54
  const result = functionBuilder(currentSchema, functionParams);
@@ -1,11 +1,12 @@
1
1
  import { type DP } from "@duplojs/utils";
2
- import { type MapContext, type DataParserNotSupportedEither, type createTransformer, type TransformerMode, type DataParserErrorEither } from "./create";
3
- import { type TransformerHook } from "./hook";
2
+ import type { MapContext, DataParserNotSupportedEither, createTransformer, TransformerMode, DataParserErrorEither, MapImportType, SupportedDataParsers } from "./create";
3
+ import type { TransformerHook } from "./hook";
4
4
  export interface TransformerFunctionParams {
5
5
  readonly transformers: readonly ReturnType<typeof createTransformer>[];
6
6
  readonly context: MapContext;
7
7
  readonly mode: TransformerMode;
8
8
  readonly hooks: readonly TransformerHook[];
9
- readonly recursiveDataParsers: DP.DataParser[];
9
+ readonly recursiveDataParsers: SupportedDataParsers[];
10
+ readonly importType: MapImportType;
10
11
  }
11
12
  export declare function transformer(schema: DP.DataParser, params: TransformerFunctionParams): import("./create").TransformerSuccessEither | DataParserNotSupportedEither | DataParserErrorEither;
@@ -6,6 +6,7 @@ function transformer(schema, params) {
6
6
  const result = hook({
7
7
  schema: lastValue,
8
8
  context: params.context,
9
+ importType: params.importType,
9
10
  output: (action, schema) => ({
10
11
  schema,
11
12
  action,
@@ -39,6 +40,13 @@ function transformer(schema, params) {
39
40
  buildError() {
40
41
  return E.left("buildDataParserError");
41
42
  },
43
+ importType: params.importType,
44
+ addImport(path, typeName) {
45
+ const types = params.importType.get(path) ?? [];
46
+ if (!A.includes(types, typeName)) {
47
+ params.importType.set(path, A.push(types, typeName));
48
+ }
49
+ },
42
50
  };
43
51
  const result = A.reduce(params.transformers, A.reduceFrom(E.left("dataParserNotSupport", currentSchema)), ({ element: functionBuilder, lastValue, next, exit, }) => {
44
52
  const result = functionBuilder(currentSchema, functionParams);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duplojs/data-parser-tools",
3
- "version": "0.2.3",
3
+ "version": "0.2.5",
4
4
  "license": "MIT",
5
5
  "author": "duplojs",
6
6
  "contributors": [
@@ -71,7 +71,8 @@
71
71
  "vitest": "3.2.4"
72
72
  },
73
73
  "peerDependencies": {
74
- "@duplojs/utils": ">=1.3.30 <2.0.0"
74
+ "@duplojs/utils": ">=1.5.1 <2.0.0",
75
+ "@duplojs/server-utils": ">=0.1.4 < 1.0.0"
75
76
  },
76
77
  "dependencies": {
77
78
  "typescript": "5.9.2"