typia 7.7.0-dev.20250130 → 8.0.0-dev.20250221

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 (90) hide show
  1. package/README.md +5 -4
  2. package/lib/IReadableURLSearchParams.d.ts +1 -1
  3. package/lib/factories/JsonMetadataFactory.js +1 -1
  4. package/lib/factories/JsonMetadataFactory.js.map +1 -1
  5. package/lib/factories/MetadataTypeTagFactory.js +8 -8
  6. package/lib/factories/MetadataTypeTagFactory.js.map +1 -1
  7. package/lib/factories/ProtobufFactory.js +4 -4
  8. package/lib/factories/ProtobufFactory.js.map +1 -1
  9. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +1 -1
  10. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  11. package/lib/http.d.ts +1 -1
  12. package/lib/internal/_isUniqueItems.js +1 -1
  13. package/lib/json.d.ts +5 -5
  14. package/lib/llm.d.ts +8 -8
  15. package/lib/misc.d.ts +10 -10
  16. package/lib/module.d.ts +1 -1
  17. package/lib/programmers/FeatureProgrammer.d.ts +3 -3
  18. package/lib/programmers/TypiaProgrammer.js +1 -1
  19. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  20. package/lib/programmers/helpers/UnionExplorer.js +1 -1
  21. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  22. package/lib/programmers/helpers/UnionPredicator.d.ts +1 -1
  23. package/lib/programmers/helpers/UnionPredicator.js +1 -1
  24. package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
  25. package/lib/programmers/json/JsonApplicationProgrammer.js +1 -1
  26. package/lib/programmers/llm/LlmApplicationProgrammer.js +2 -2
  27. package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
  28. package/lib/programmers/llm/LlmModelPredicator.js +1 -1
  29. package/lib/programmers/llm/LlmModelPredicator.js.map +1 -1
  30. package/lib/programmers/llm/LlmParametersProgrammer.js +1 -1
  31. package/lib/programmers/llm/LlmParametersProgrammer.js.map +1 -1
  32. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +1 -1
  33. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  34. package/lib/schemas/llm/ILlmApplicationOfValidate.d.ts +2 -2
  35. package/lib/tags/Examples.d.ts +3 -3
  36. package/lib/transformers/ImportTransformer.js +3 -3
  37. package/lib/transformers/ImportTransformer.js.map +1 -1
  38. package/lib/transformers/features/json/JsonSchemasTransformer.js +32 -30
  39. package/lib/transformers/features/json/JsonSchemasTransformer.js.map +1 -1
  40. package/lib/transformers/features/json/JsonValidateParseTransformer.js +1 -1
  41. package/lib/transformers/features/json/JsonValidateParseTransformer.js.map +1 -1
  42. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js +1 -1
  43. package/lib/transformers/features/json/JsonValidateStringifyTransformer.js.map +1 -1
  44. package/lib/transformers/features/llm/LlmApplicationOfValidateTransformer.js +29 -23
  45. package/lib/transformers/features/llm/LlmApplicationOfValidateTransformer.js.map +1 -1
  46. package/lib/transformers/features/llm/LlmApplicationTransformer.js +29 -23
  47. package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
  48. package/lib/transformers/features/llm/LlmParametersTransformer.js +28 -22
  49. package/lib/transformers/features/llm/LlmParametersTransformer.js.map +1 -1
  50. package/lib/transformers/features/llm/LlmSchemaTransformer.js +28 -22
  51. package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
  52. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js +1 -1
  53. package/lib/transformers/features/misc/MiscValidateCloneTransformer.js.map +1 -1
  54. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js +1 -1
  55. package/lib/transformers/features/misc/MiscValidatePruneTransformer.js.map +1 -1
  56. package/lib/transformers/features/reflect/ReflectNameTransformer.js +3 -3
  57. package/package.json +7 -6
  58. package/src/IReadableURLSearchParams.ts +1 -1
  59. package/src/factories/JsonMetadataFactory.ts +1 -1
  60. package/src/factories/MetadataTypeTagFactory.ts +10 -8
  61. package/src/factories/ProtobufFactory.ts +4 -4
  62. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +1 -2
  63. package/src/http.ts +1 -1
  64. package/src/internal/_isUniqueItems.ts +1 -1
  65. package/src/json.ts +6 -6
  66. package/src/llm.ts +8 -8
  67. package/src/misc.ts +11 -11
  68. package/src/module.ts +1 -1
  69. package/src/programmers/FeatureProgrammer.ts +3 -3
  70. package/src/programmers/TypiaProgrammer.ts +1 -1
  71. package/src/programmers/helpers/UnionExplorer.ts +1 -1
  72. package/src/programmers/helpers/UnionPredicator.ts +3 -3
  73. package/src/programmers/json/JsonApplicationProgrammer.ts +1 -1
  74. package/src/programmers/llm/LlmApplicationProgrammer.ts +2 -2
  75. package/src/programmers/llm/LlmModelPredicator.ts +1 -1
  76. package/src/programmers/llm/LlmParametersProgrammer.ts +1 -1
  77. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +1 -1
  78. package/src/schemas/llm/ILlmApplicationOfValidate.ts +2 -2
  79. package/src/tags/Examples.ts +3 -3
  80. package/src/transformers/ImportTransformer.ts +3 -3
  81. package/src/transformers/features/json/JsonSchemasTransformer.ts +34 -32
  82. package/src/transformers/features/json/JsonValidateParseTransformer.ts +1 -1
  83. package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +1 -1
  84. package/src/transformers/features/llm/LlmApplicationOfValidateTransformer.ts +33 -25
  85. package/src/transformers/features/llm/LlmApplicationTransformer.ts +32 -25
  86. package/src/transformers/features/llm/LlmParametersTransformer.ts +32 -24
  87. package/src/transformers/features/llm/LlmSchemaTransformer.ts +32 -24
  88. package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +1 -1
  89. package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +1 -1
  90. package/src/transformers/features/reflect/ReflectNameTransformer.ts +3 -3
@@ -39,36 +39,42 @@ var LlmApplicationOfValidateTransformer;
39
39
  node: props.expression.typeArguments[2],
40
40
  });
41
41
  const type = props.context.checker.getTypeFromTypeNode(top);
42
- const collection = new MetadataCollection_1.MetadataCollection({
43
- replace: MetadataCollection_1.MetadataCollection.replace,
44
- });
45
- const result = MetadataFactory_1.MetadataFactory.analyze({
46
- checker: props.context.checker,
47
- transformer: props.context.transformer,
48
- options: {
49
- escape: true,
50
- constant: true,
51
- absorb: false,
52
- functional: true,
53
- validate: LlmApplicationOfValidateProgrammer_1.LlmApplicationOfValidateProgrammer.validate({
54
- model,
55
- config,
42
+ // VALIDATE TYPE
43
+ const analyze = (validate) => {
44
+ const result = MetadataFactory_1.MetadataFactory.analyze({
45
+ checker: props.context.checker,
46
+ transformer: props.context.transformer,
47
+ options: {
48
+ absorb: validate,
49
+ escape: true,
50
+ constant: true,
51
+ functional: true,
52
+ validate: validate === true
53
+ ? LlmApplicationOfValidateProgrammer_1.LlmApplicationOfValidateProgrammer.validate({
54
+ model,
55
+ config,
56
+ })
57
+ : undefined,
58
+ },
59
+ collection: new MetadataCollection_1.MetadataCollection({
60
+ replace: MetadataCollection_1.MetadataCollection.replace,
56
61
  }),
57
- },
58
- collection,
59
- type,
60
- });
61
- if (result.success === false)
62
- throw TransformerError_1.TransformerError.from({
63
- code: "typia.llm.application",
64
- errors: result.errors,
62
+ type,
65
63
  });
64
+ if (result.success === false)
65
+ throw TransformerError_1.TransformerError.from({
66
+ code: "typia.llm.applicationOfValidate",
67
+ errors: result.errors,
68
+ });
69
+ return result.data;
70
+ };
71
+ analyze(true);
66
72
  // GENERATE LLM APPLICATION
67
73
  const schema = LlmApplicationOfValidateProgrammer_1.LlmApplicationOfValidateProgrammer.write({
68
74
  model,
69
75
  context: props.context,
70
76
  modulo: props.modulo,
71
- metadata: result.data,
77
+ metadata: analyze(false),
72
78
  config,
73
79
  name: top.getFullText().trim(),
74
80
  });
@@ -1 +1 @@
1
- {"version":3,"file":"LlmApplicationOfValidateTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationOfValidateTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmApplicationOfValidateTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationOfValidateTransformer.ts"],"names":[],"mappings":"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"}
@@ -39,34 +39,40 @@ var LlmApplicationTransformer;
39
39
  node: props.expression.typeArguments[2],
40
40
  });
41
41
  const type = props.context.checker.getTypeFromTypeNode(top);
42
- const collection = new MetadataCollection_1.MetadataCollection({
43
- replace: MetadataCollection_1.MetadataCollection.replace,
44
- });
45
- const result = MetadataFactory_1.MetadataFactory.analyze({
46
- checker: props.context.checker,
47
- transformer: props.context.transformer,
48
- options: {
49
- escape: true,
50
- constant: true,
51
- absorb: false,
52
- functional: true,
53
- validate: LlmApplicationProgrammer_1.LlmApplicationProgrammer.validate({
54
- model,
55
- config,
42
+ // VALIDATE TYPE
43
+ const analyze = (validate) => {
44
+ const result = MetadataFactory_1.MetadataFactory.analyze({
45
+ checker: props.context.checker,
46
+ transformer: props.context.transformer,
47
+ options: {
48
+ absorb: validate,
49
+ escape: true,
50
+ constant: true,
51
+ functional: true,
52
+ validate: validate === true
53
+ ? LlmApplicationProgrammer_1.LlmApplicationProgrammer.validate({
54
+ model,
55
+ config,
56
+ })
57
+ : undefined,
58
+ },
59
+ collection: new MetadataCollection_1.MetadataCollection({
60
+ replace: MetadataCollection_1.MetadataCollection.replace,
56
61
  }),
57
- },
58
- collection,
59
- type,
60
- });
61
- if (result.success === false)
62
- throw TransformerError_1.TransformerError.from({
63
- code: "typia.llm.applicationOfValidate",
64
- errors: result.errors,
62
+ type,
65
63
  });
64
+ if (result.success === false)
65
+ throw TransformerError_1.TransformerError.from({
66
+ code: "typia.llm.application",
67
+ errors: result.errors,
68
+ });
69
+ return result.data;
70
+ };
71
+ analyze(true);
66
72
  // GENERATE LLM APPLICATION
67
73
  const schema = LlmApplicationProgrammer_1.LlmApplicationProgrammer.write({
68
74
  model,
69
- metadata: result.data,
75
+ metadata: analyze(false),
70
76
  config,
71
77
  });
72
78
  const literal = typescript_1.default.factory.createAsExpression(LiteralFactory_1.LiteralFactory.write(schema), props.context.importer.type({
@@ -1 +1 @@
1
- {"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmApplicationTransformer.ts"],"names":[],"mappings":"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"}
@@ -37,33 +37,39 @@ var LlmParametersTransformer;
37
37
  node: props.expression.typeArguments[2],
38
38
  });
39
39
  const type = props.context.checker.getTypeFromTypeNode(top);
40
- const collection = new MetadataCollection_1.MetadataCollection({
41
- replace: MetadataCollection_1.MetadataCollection.replace,
42
- });
43
- const result = MetadataFactory_1.MetadataFactory.analyze({
44
- checker: props.context.checker,
45
- transformer: props.context.transformer,
46
- options: {
47
- escape: true,
48
- constant: true,
49
- absorb: false,
50
- validate: LlmParametersProgrammer_1.LlmParametersProgrammer.validate({
51
- model,
52
- config,
40
+ // VALIDATE TYPE
41
+ const analyze = (validate) => {
42
+ const result = MetadataFactory_1.MetadataFactory.analyze({
43
+ checker: props.context.checker,
44
+ transformer: props.context.transformer,
45
+ options: {
46
+ absorb: validate,
47
+ escape: true,
48
+ constant: true,
49
+ validate: validate === true
50
+ ? LlmParametersProgrammer_1.LlmParametersProgrammer.validate({
51
+ model,
52
+ config,
53
+ })
54
+ : undefined,
55
+ },
56
+ collection: new MetadataCollection_1.MetadataCollection({
57
+ replace: MetadataCollection_1.MetadataCollection.replace,
53
58
  }),
54
- },
55
- collection,
56
- type,
57
- });
58
- if (result.success === false)
59
- throw TransformerError_1.TransformerError.from({
60
- code: "typia.llm.parameters",
61
- errors: result.errors,
59
+ type,
62
60
  });
61
+ if (result.success === false)
62
+ throw TransformerError_1.TransformerError.from({
63
+ code: "typia.llm.parameters",
64
+ errors: result.errors,
65
+ });
66
+ return result.data;
67
+ };
68
+ analyze(true);
63
69
  // GENERATE LLM SCHEMA
64
70
  const out = LlmParametersProgrammer_1.LlmParametersProgrammer.write({
65
71
  model,
66
- metadata: result.data,
72
+ metadata: analyze(false),
67
73
  config,
68
74
  });
69
75
  return typescript_1.default.factory.createAsExpression(LiteralFactory_1.LiteralFactory.write(out), props.context.importer.type({
@@ -1 +1 @@
1
- {"version":3,"file":"LlmParametersTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmParametersTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmParametersTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmParametersTransformer.ts"],"names":[],"mappings":"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"}
@@ -38,33 +38,39 @@ var LlmSchemaTransformer;
38
38
  node: props.expression.typeArguments[2],
39
39
  });
40
40
  const type = props.context.checker.getTypeFromTypeNode(top);
41
- const collection = new MetadataCollection_1.MetadataCollection({
42
- replace: MetadataCollection_1.MetadataCollection.replace,
43
- });
44
- const result = MetadataFactory_1.MetadataFactory.analyze({
45
- checker: props.context.checker,
46
- transformer: props.context.transformer,
47
- options: {
48
- escape: true,
49
- constant: true,
50
- absorb: false,
51
- validate: LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate({
52
- model,
53
- config,
41
+ // VALIDATE TYPE
42
+ const analyze = (validate) => {
43
+ const result = MetadataFactory_1.MetadataFactory.analyze({
44
+ checker: props.context.checker,
45
+ transformer: props.context.transformer,
46
+ options: {
47
+ absorb: validate,
48
+ constant: true,
49
+ escape: true,
50
+ validate: validate === true
51
+ ? LlmSchemaProgrammer_1.LlmSchemaProgrammer.validate({
52
+ model,
53
+ config,
54
+ })
55
+ : undefined,
56
+ },
57
+ collection: new MetadataCollection_1.MetadataCollection({
58
+ replace: MetadataCollection_1.MetadataCollection.replace,
54
59
  }),
55
- },
56
- collection,
57
- type,
58
- });
59
- if (result.success === false)
60
- throw TransformerError_1.TransformerError.from({
61
- code: "typia.llm.schema",
62
- errors: result.errors,
60
+ type,
63
61
  });
62
+ if (result.success === false)
63
+ throw TransformerError_1.TransformerError.from({
64
+ code: "typia.llm.schema",
65
+ errors: result.errors,
66
+ });
67
+ return result.data;
68
+ };
69
+ analyze(true);
64
70
  // GENERATE LLM SCHEMA
65
71
  const out = LlmSchemaProgrammer_1.LlmSchemaProgrammer.write({
66
72
  model,
67
- metadata: result.data,
73
+ metadata: analyze(false),
68
74
  config,
69
75
  });
70
76
  const schemaTypeNode = props.context.importer.type({
@@ -1 +1 @@
1
- {"version":3,"file":"LlmSchemaTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmSchemaTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LlmSchemaTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/llm/LlmSchemaTransformer.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,6 @@ const MiscValidateCloneProgrammer_1 = require("../../../programmers/misc/MiscVal
5
5
  const GenericTransformer_1 = require("../../internal/GenericTransformer");
6
6
  var MiscValidateCloneTransformer;
7
7
  (function (MiscValidateCloneTransformer) {
8
- MiscValidateCloneTransformer.transform = (props) => GenericTransformer_1.GenericTransformer.scalar(Object.assign(Object.assign({}, props), { method: "misc.validatClone", write: MiscValidateCloneProgrammer_1.MiscValidateCloneProgrammer.write }));
8
+ MiscValidateCloneTransformer.transform = (props) => GenericTransformer_1.GenericTransformer.scalar(Object.assign(Object.assign({}, props), { method: "misc.validateClone", write: MiscValidateCloneProgrammer_1.MiscValidateCloneProgrammer.write }));
9
9
  })(MiscValidateCloneTransformer || (exports.MiscValidateCloneTransformer = MiscValidateCloneTransformer = {}));
10
10
  //# sourceMappingURL=MiscValidateCloneTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MiscValidateCloneTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/misc/MiscValidateCloneTransformer.ts"],"names":[],"mappings":";;;AAAA,uGAAoG;AAGpG,0EAAuE;AAEvE,IAAiB,4BAA4B,CAO5C;AAPD,WAAiB,4BAA4B;IAC9B,sCAAS,GAAG,CAAC,KAAsB,EAAE,EAAE,CAClD,uCAAkB,CAAC,MAAM,iCACpB,KAAK,KACR,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,yDAA2B,CAAC,KAAK,IACxC,CAAC;AACP,CAAC,EAPgB,4BAA4B,4CAA5B,4BAA4B,QAO5C"}
1
+ {"version":3,"file":"MiscValidateCloneTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/misc/MiscValidateCloneTransformer.ts"],"names":[],"mappings":";;;AAAA,uGAAoG;AAGpG,0EAAuE;AAEvE,IAAiB,4BAA4B,CAO5C;AAPD,WAAiB,4BAA4B;IAC9B,sCAAS,GAAG,CAAC,KAAsB,EAAE,EAAE,CAClD,uCAAkB,CAAC,MAAM,iCACpB,KAAK,KACR,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,yDAA2B,CAAC,KAAK,IACxC,CAAC;AACP,CAAC,EAPgB,4BAA4B,4CAA5B,4BAA4B,QAO5C"}
@@ -5,6 +5,6 @@ const MiscValidatePruneProgrammer_1 = require("../../../programmers/misc/MiscVal
5
5
  const GenericTransformer_1 = require("../../internal/GenericTransformer");
6
6
  var MiscValidatePruneTransformer;
7
7
  (function (MiscValidatePruneTransformer) {
8
- MiscValidatePruneTransformer.transform = (props) => GenericTransformer_1.GenericTransformer.scalar(Object.assign(Object.assign({}, props), { method: "misc.validatPrune", write: MiscValidatePruneProgrammer_1.MiscValidatePruneProgrammer.write }));
8
+ MiscValidatePruneTransformer.transform = (props) => GenericTransformer_1.GenericTransformer.scalar(Object.assign(Object.assign({}, props), { method: "misc.validatePrune", write: MiscValidatePruneProgrammer_1.MiscValidatePruneProgrammer.write }));
9
9
  })(MiscValidatePruneTransformer || (exports.MiscValidatePruneTransformer = MiscValidatePruneTransformer = {}));
10
10
  //# sourceMappingURL=MiscValidatePruneTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MiscValidatePruneTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/misc/MiscValidatePruneTransformer.ts"],"names":[],"mappings":";;;AAAA,uGAAoG;AAGpG,0EAAuE;AAEvE,IAAiB,4BAA4B,CAO5C;AAPD,WAAiB,4BAA4B;IAC9B,sCAAS,GAAG,CAAC,KAAsB,EAAE,EAAE,CAClD,uCAAkB,CAAC,MAAM,iCACpB,KAAK,KACR,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,yDAA2B,CAAC,KAAK,IACxC,CAAC;AACP,CAAC,EAPgB,4BAA4B,4CAA5B,4BAA4B,QAO5C"}
1
+ {"version":3,"file":"MiscValidatePruneTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/misc/MiscValidatePruneTransformer.ts"],"names":[],"mappings":";;;AAAA,uGAAoG;AAGpG,0EAAuE;AAEvE,IAAiB,4BAA4B,CAO5C;AAPD,WAAiB,4BAA4B;IAC9B,sCAAS,GAAG,CAAC,KAAsB,EAAE,EAAE,CAClD,uCAAkB,CAAC,MAAM,iCACpB,KAAK,KACR,MAAM,EAAE,oBAAoB,EAC5B,KAAK,EAAE,yDAA2B,CAAC,KAAK,IACxC,CAAC;AACP,CAAC,EAPgB,4BAA4B,4CAA5B,4BAA4B,QAO5C"}
@@ -23,7 +23,7 @@ var ReflectNameTransformer;
23
23
  const second = props.expression.typeArguments[1];
24
24
  if (second === undefined)
25
25
  return false;
26
- // GET BOOELAN VALUE
26
+ // GET BOOLEAN VALUE
27
27
  const value = getMetadata({
28
28
  context: props.context,
29
29
  node: second,
@@ -53,9 +53,9 @@ const getMetadata = (props) => {
53
53
  checker: props.context.checker,
54
54
  transformer: props.context.transformer,
55
55
  options: {
56
- escape: false,
57
- constant: true,
58
56
  absorb: false,
57
+ constant: true,
58
+ escape: false,
59
59
  },
60
60
  collection,
61
61
  type,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "7.7.0-dev.20250130",
3
+ "version": "8.0.0-dev.20250221",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -23,7 +23,8 @@
23
23
  "dev:errors": "tsc --project tsconfig.errors.json --watch",
24
24
  "eslint": "eslint",
25
25
  "eslint:fix": "eslint --fix",
26
- "prettier": "prettier src --write",
26
+ "prettier": "prettier src --check",
27
+ "prettier:fix": "prettier src --write",
27
28
  "------------------------------------------------": "",
28
29
  "package:latest": "ts-node deploy --tag latest",
29
30
  "package:next": "ts-node deploy --tag next",
@@ -41,7 +42,7 @@
41
42
  },
42
43
  "homepage": "https://typia.io",
43
44
  "dependencies": {
44
- "@samchon/openapi": "^2.4.0",
45
+ "@samchon/openapi": "^3.0.0-dev.20250221",
45
46
  "commander": "^10.0.0",
46
47
  "comment-json": "^4.2.3",
47
48
  "inquirer": "^8.2.5",
@@ -49,8 +50,8 @@
49
50
  "randexp": "^0.5.3"
50
51
  },
51
52
  "peerDependencies": {
52
- "@samchon/openapi": ">=2.4.0 <3.0.0",
53
- "typescript": ">=4.8.0 <5.9.0"
53
+ "@samchon/openapi": ">=3.0.0 <4.0.0",
54
+ "typescript": ">=4.8.0 <5.8.0"
54
55
  },
55
56
  "devDependencies": {
56
57
  "@rollup/plugin-commonjs": "^26.0.1",
@@ -69,7 +70,7 @@
69
70
  "rollup": "^4.18.0",
70
71
  "suppress-warnings": "^1.0.2",
71
72
  "ts-node": "^10.9.2",
72
- "typescript": "~5.8.0-beta"
73
+ "typescript": "~5.7.3"
73
74
  },
74
75
  "stackblitz": {
75
76
  "startCommand": "npm install && npm run test"
@@ -2,7 +2,7 @@
2
2
  * Interface for a readable URLSearchParams object.
3
3
  *
4
4
  * This interface is a subset of the {@link URLSearchParams} interface,
5
- * designed especially for the [Hono.JS](https://hono.dev/) libray.
5
+ * designed especially for the [Hono.JS](https://hono.dev/) library.
6
6
  *
7
7
  * @author https://github.com/miyaji255
8
8
  */
@@ -31,9 +31,9 @@ export namespace JsonMetadataFactory {
31
31
  checker: props.checker,
32
32
  transformer: props.transformer,
33
33
  options: {
34
+ absorb: true,
34
35
  escape: true,
35
36
  constant: true,
36
- absorb: true,
37
37
  validate: props.validate
38
38
  ? (meta, explore) => {
39
39
  const errors: string[] = validate(meta);
@@ -75,10 +75,10 @@ export namespace MetadataTypeTagFactory {
75
75
 
76
76
  // CHECK LIST OF PROPERTIES
77
77
  const tag: MetadataObjectType = top.value.objects[0]!.type;
78
- const statics: string[] = tag.properties
78
+ const statistics: string[] = tag.properties
79
79
  .map((p) => p.key.getSoleLiteral()!)
80
80
  .filter((str) => str !== null);
81
- if (ESSENTIAL_FIELDS.some((f) => !statics.includes(f)))
81
+ if (ESSENTIAL_FIELDS.some((f) => !statistics.includes(f)))
82
82
  return report({
83
83
  property: null,
84
84
  message: `must have at least three properties - ${ESSENTIAL_FIELDS.map(
@@ -152,7 +152,7 @@ export namespace MetadataTypeTagFactory {
152
152
  if (tag.target !== props.type) {
153
153
  success &&= props.report({
154
154
  property: null,
155
- message: `target must constains ${props.type} type`,
155
+ message: `target must contain ${props.type} type`,
156
156
  });
157
157
  }
158
158
 
@@ -223,14 +223,16 @@ export namespace MetadataTypeTagFactory {
223
223
  else if (
224
224
  // VALUE
225
225
  props.key === "value" &&
226
- (props.value.size() > 1 ||
227
- (props.value.size() !== 0 &&
228
- (props.value.constants.length !== 1 ||
229
- props.value.constants[0]!.values.length !== 1)))
226
+ !(
227
+ (props.value.size() === 0 && props.value.isRequired() === false) ||
228
+ (props.value.size() === 1 &&
229
+ (props.value.objects.length === 1 ||
230
+ props.value.constants.length === 1))
231
+ )
230
232
  )
231
233
  return props.report({
232
234
  property: props.key,
233
- message: "must be a constant literal type or undefined value",
235
+ message: "must be a literal type or undefined value",
234
236
  });
235
237
  else if (props.key === "exclusive") return get_exclusive(props) !== null;
236
238
  else if (props.key === "validate") {
@@ -409,14 +409,14 @@ export namespace ProtobufFactory {
409
409
  );
410
410
  }
411
411
  //----
412
- // ARRRAY CASES
412
+ // ARRAY CASES
413
413
  //----
414
- // DO NOT ALLOW MULTI-DIMENTIONAL ARRAY
414
+ // DO NOT ALLOW MULTI-DIMENSIONAL ARRAY
415
415
  if (
416
416
  meta.arrays.length &&
417
417
  meta.arrays.some((array) => !!array.type.value.arrays.length)
418
418
  )
419
- noSupport("over two dimenstional array type");
419
+ noSupport("over two dimensional array type");
420
420
  // CHILD OF ARRAY TYPE MUST BE REQUIRED
421
421
  if (
422
422
  meta.arrays.length &&
@@ -494,7 +494,7 @@ export namespace ProtobufFactory {
494
494
  meta.objects[0]!.type.properties.some((p) => !!p.value.arrays.length)
495
495
  )
496
496
  noSupport("dynamic object with array value type");
497
- // UNION WITH DYNAMIC OBJECTa
497
+ // UNION WITH DYNAMIC OBJECTTa
498
498
  if (
499
499
  meta.size() > 1 &&
500
500
  meta.objects.length &&
@@ -16,7 +16,7 @@ export const iterate_metadata_intersection = (
16
16
  if (props.intersected === true) return false;
17
17
  else if (props.type.isIntersection() === false) return false;
18
18
 
19
- // COSTRUCT FAKE METADATA LIST
19
+ // CONSTRUCT FAKE METADATA LIST
20
20
  const commit: MetadataCollection = props.collection.clone();
21
21
  props.collection["options"] = undefined;
22
22
 
@@ -192,7 +192,6 @@ export const iterate_metadata_intersection = (
192
192
  objects: tagObjects,
193
193
  explore: props.explore,
194
194
  });
195
-
196
195
  Object.assign(props.collection, commit);
197
196
  iterate_metadata({
198
197
  ...props,
package/src/http.ts CHANGED
@@ -592,7 +592,7 @@ export function validateHeaders(): never {
592
592
  * URL path parameter decoder.
593
593
  *
594
594
  * `typia.http.parameter()` is a function decoding a path parameter, with automatic
595
- * type casting to the expected type. When type `T` has beeen defined as `boolean` or
595
+ * type casting to the expected type. When type `T` has been defined as `boolean` or
596
596
  * `number` type, `typia.http.parameter()` will cast the value to the expected type.
597
597
  *
598
598
  * Also, `typia.http.parameter()` performs type assertion to the decoded value by
@@ -1,5 +1,5 @@
1
1
  export const _isUniqueItems = (elements: any[]): boolean => {
2
- // EMTPY OR ONLY ONE
2
+ // EMPTY OR ONLY ONE
3
3
  if (elements.length < 2) return true;
4
4
 
5
5
  // SHALLOW COMPARISON
package/src/json.ts CHANGED
@@ -174,7 +174,7 @@ export function application(): never {
174
174
  * Safe `JSON.parse()` function with type assertion.
175
175
  *
176
176
  * `typia.json.assertParse()` is a combination function of `JSON.parse()` and
177
- * {@link assert}. Therefore, it convers a JSON (JavaScript Object Notation) string
177
+ * {@link assert}. Therefore, it converts a JSON (JavaScript Object Notation) string
178
178
  * to a `T` typed instance with type assertion.
179
179
  *
180
180
  * In such reason, when parsed JSON string value is not matched with the type `T`, it
@@ -197,7 +197,7 @@ export function assertParse(
197
197
  * Safe `JSON.parse()` function with type assertion.
198
198
  *
199
199
  * `typia.json.assertParse()` is a combination function of `JSON.parse()` and
200
- * {@link assert}. Therefore, it convers a JSON (JavaScript Object Notation) string
200
+ * {@link assert}. Therefore, it converts a JSON (JavaScript Object Notation) string
201
201
  * to a `T` typed instance with type assertion.
202
202
  *
203
203
  * In such reason, when parsed JSON string value is not matched with the type `T`,
@@ -230,7 +230,7 @@ export function assertParse<T>(): Primitive<T> {
230
230
  * Safe `JSON.parse()` function with type checking.
231
231
  *
232
232
  * `typia.json.isParse()` is a combination function of `JSON.parse()` and {@link is}.
233
- * Therefore, it convers a JSON (JavaScript Object Notation) string to a `T` typed
233
+ * Therefore, it converts a JSON (JavaScript Object Notation) string to a `T` typed
234
234
  * instance with type checking.
235
235
  *
236
236
  * In such reason, when parsed JSON string value is not matched with the type `T`, it
@@ -249,7 +249,7 @@ export function isParse(input: string): never;
249
249
  * Safe `JSON.parse()` function with type checking.
250
250
  *
251
251
  * `typia.json.isParse()` is a combination function of `JSON.parse()` and {@link is}.
252
- * Therefore, it convers a JSON (JavaScript Object Notation) string to a `T` typed
252
+ * Therefore, it converts a JSON (JavaScript Object Notation) string to a `T` typed
253
253
  * instance with type checking.
254
254
  *
255
255
  * In such reason, when parsed JSON string value is not matched with the type `T`, it
@@ -277,7 +277,7 @@ export function isParse<T>(): Primitive<T> | null {
277
277
  * Safe `JSON.parse()` function with detailed type validation.
278
278
  *
279
279
  * `typia.json.validateParse()` is a combination function of `JSON.parse()` and
280
- * {@link validate}. Therefore, it convers a JSON (JavaScript Object Notation) string
280
+ * {@link validate}. Therefore, it converts a JSON (JavaScript Object Notation) string
281
281
  * to a `T` typed instance with detailed type validation.
282
282
  *
283
283
  * In such reason, when parsed JSON string value is not matched with the type `T`, it
@@ -297,7 +297,7 @@ export function validateParse(input: string): never;
297
297
  * Safe `JSON.parse()` function with detailed type validation.
298
298
  *
299
299
  * `typia.json.validateParse()` is a combination function of `JSON.parse()` and
300
- * {@link validate}. Therefore, it convers a JSON (JavaScript Object Notation) string
300
+ * {@link validate}. Therefore, it converts a JSON (JavaScript Object Notation) string
301
301
  * to a `T` typed instance with detailed type validation.
302
302
  *
303
303
  * In such reason, when parsed JSON string value is not matched with the type `T`, it