typia 7.0.0-dev.20241012 → 7.0.0-dev.20241019
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.
- package/lib/factories/JsonMetadataFactory.js +3 -2
- package/lib/factories/JsonMetadataFactory.js.map +1 -1
- package/lib/factories/MetadataCollection.d.ts +3 -3
- package/lib/factories/MetadataCollection.js +2 -2
- package/lib/factories/MetadataCollection.js.map +1 -1
- package/lib/factories/MetadataFactory.d.ts +2 -2
- package/lib/factories/MetadataFactory.js +3 -3
- package/lib/factories/MetadataFactory.js.map +1 -1
- package/lib/factories/MetadataTypeTagFactory.d.ts +3 -2
- package/lib/factories/MetadataTypeTagFactory.js +26 -3
- package/lib/factories/MetadataTypeTagFactory.js.map +1 -1
- package/lib/factories/ProtobufFactory.js +1266 -160
- package/lib/factories/ProtobufFactory.js.map +1 -1
- package/lib/factories/internal/metadata/IMetadataIteratorProps.d.ts +1 -0
- package/lib/factories/internal/metadata/MetadataHelper.js +1 -1
- package/lib/factories/internal/metadata/MetadataHelper.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_alias.d.ts +2 -2
- package/lib/factories/internal/metadata/emplace_metadata_object.js +5 -5
- package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/explore_metadata.js +2 -0
- package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata.js +1 -1
- package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_alias.js +8 -2
- package/lib/factories/internal/metadata/iterate_metadata_alias.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_collection.js +6 -6
- package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_intersection.js +262 -137
- package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_map.js +4 -2
- package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_native.js +27 -11
- package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_set.js +8 -1
- package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_sort.js +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_template.js +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
- package/lib/programmers/CheckerProgrammer.js +5 -5
- package/lib/programmers/CheckerProgrammer.js.map +1 -1
- package/lib/programmers/RandomProgrammer.js +12 -12
- package/lib/programmers/RandomProgrammer.js.map +1 -1
- package/lib/programmers/helpers/AtomicPredicator.js +3 -3
- package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
- package/lib/programmers/helpers/ProtobufUtil.d.ts +6 -3
- package/lib/programmers/helpers/ProtobufUtil.js +216 -93
- package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
- package/lib/programmers/helpers/UnionExplorer.d.ts +4 -2
- package/lib/programmers/helpers/UnionExplorer.js +1 -1
- package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
- package/lib/programmers/http/HttpFormDataProgrammer.js +6 -6
- package/lib/programmers/http/HttpFormDataProgrammer.js.map +1 -1
- package/lib/programmers/internal/application_escaped.js +2 -2
- package/lib/programmers/internal/application_escaped.js.map +1 -1
- package/lib/programmers/internal/application_v30_alias.js +13 -8
- package/lib/programmers/internal/application_v30_alias.js.map +1 -1
- package/lib/programmers/internal/application_v30_native.js +17 -10
- package/lib/programmers/internal/application_v30_native.js.map +1 -1
- package/lib/programmers/internal/application_v30_object.js +16 -6
- package/lib/programmers/internal/application_v30_object.js.map +1 -1
- package/lib/programmers/internal/application_v30_schema.js +24 -17
- package/lib/programmers/internal/application_v30_schema.js.map +1 -1
- package/lib/programmers/internal/application_v31_alias.js +12 -11
- package/lib/programmers/internal/application_v31_alias.js.map +1 -1
- package/lib/programmers/internal/application_v31_native.js +17 -10
- package/lib/programmers/internal/application_v31_native.js.map +1 -1
- package/lib/programmers/internal/application_v31_object.js +13 -6
- package/lib/programmers/internal/application_v31_object.js.map +1 -1
- package/lib/programmers/internal/application_v31_schema.js +23 -16
- package/lib/programmers/internal/application_v31_schema.js.map +1 -1
- package/lib/programmers/internal/check_dynamic_key.js +4 -4
- package/lib/programmers/internal/check_dynamic_key.js.map +1 -1
- package/lib/programmers/internal/check_native.js +3 -3
- package/lib/programmers/internal/check_union_array_like.js.map +1 -1
- package/lib/programmers/internal/llm_schema_escaped.js +2 -2
- package/lib/programmers/internal/llm_schema_escaped.js.map +1 -1
- package/lib/programmers/internal/llm_schema_object.js +18 -14
- package/lib/programmers/internal/llm_schema_object.js.map +1 -1
- package/lib/programmers/internal/llm_schema_station.js +8 -8
- package/lib/programmers/internal/llm_schema_station.js.map +1 -1
- package/lib/programmers/json/JsonSchemasProgrammer.js +5 -5
- package/lib/programmers/json/JsonSchemasProgrammer.js.map +1 -1
- package/lib/programmers/json/JsonStringifyProgrammer.js +18 -17
- package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
- package/lib/programmers/llm/LlmSchemaProgrammer.js +6 -6
- package/lib/programmers/llm/LlmSchemaProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscCloneProgrammer.js +7 -5
- package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscPruneProgrammer.js +1 -1
- package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
- package/lib/programmers/notations/NotationGeneralProgrammer.js +6 -4
- package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
- package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +169 -220
- package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
- package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +6 -4
- package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
- package/lib/programmers/protobuf/ProtobufMessageProgrammer.d.ts +1 -1
- package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +53 -128
- package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
- package/lib/schemas/metadata/IMetadata.d.ts +14 -18
- package/lib/schemas/metadata/IMetadataAlias.d.ts +2 -7
- package/lib/schemas/metadata/IMetadataAliasType.d.ts +10 -0
- package/lib/schemas/metadata/IMetadataAliasType.js +3 -0
- package/lib/schemas/metadata/IMetadataAliasType.js.map +1 -0
- package/lib/schemas/metadata/IMetadataComponents.d.ts +2 -2
- package/lib/schemas/metadata/IMetadataConstantValue.d.ts +1 -1
- package/lib/schemas/metadata/IMetadataDictionary.d.ts +2 -2
- package/lib/schemas/metadata/IMetadataMap.d.ts +7 -0
- package/lib/schemas/metadata/{IMetadataEntry.js → IMetadataMap.js} +1 -1
- package/lib/schemas/metadata/IMetadataMap.js.map +1 -0
- package/lib/schemas/metadata/IMetadataNative.d.ts +5 -0
- package/lib/schemas/metadata/IMetadataNative.js +3 -0
- package/lib/schemas/metadata/IMetadataNative.js.map +1 -0
- package/lib/schemas/metadata/IMetadataSet.d.ts +6 -0
- package/lib/schemas/metadata/IMetadataSet.js +3 -0
- package/lib/schemas/metadata/IMetadataSet.js.map +1 -0
- package/lib/schemas/metadata/IMetadataTemplate.d.ts +1 -1
- package/lib/schemas/metadata/IMetadataTypeTag.d.ts +1 -1
- package/lib/schemas/metadata/Metadata.d.ts +6 -9
- package/lib/schemas/metadata/Metadata.js +136 -98
- package/lib/schemas/metadata/Metadata.js.map +1 -1
- package/lib/schemas/metadata/MetadataAlias.d.ts +8 -11
- package/lib/schemas/metadata/MetadataAlias.js +48 -33
- package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
- package/lib/schemas/metadata/MetadataAliasType.d.ts +16 -0
- package/lib/schemas/metadata/MetadataAliasType.js +51 -0
- package/lib/schemas/metadata/MetadataAliasType.js.map +1 -0
- package/lib/schemas/metadata/MetadataComponents.d.ts +2 -2
- package/lib/schemas/metadata/MetadataComponents.js +2 -2
- package/lib/schemas/metadata/MetadataComponents.js.map +1 -1
- package/lib/schemas/metadata/MetadataConstantValue.d.ts +1 -1
- package/lib/schemas/metadata/MetadataMap.d.ts +14 -0
- package/lib/schemas/metadata/MetadataMap.js +66 -0
- package/lib/schemas/metadata/MetadataMap.js.map +1 -0
- package/lib/schemas/metadata/MetadataNative.d.ts +12 -0
- package/lib/schemas/metadata/MetadataNative.js +65 -0
- package/lib/schemas/metadata/MetadataNative.js.map +1 -0
- package/lib/schemas/metadata/MetadataProperty.d.ts +2 -0
- package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
- package/lib/schemas/metadata/MetadataSet.d.ts +13 -0
- package/lib/schemas/metadata/MetadataSet.js +64 -0
- package/lib/schemas/metadata/MetadataSet.js.map +1 -0
- package/lib/schemas/metadata/MetadataTemplate.d.ts +1 -1
- package/lib/schemas/protobuf/IProtobufProperty.d.ts +5 -0
- package/lib/schemas/protobuf/IProtobufProperty.js +3 -0
- package/lib/schemas/protobuf/IProtobufProperty.js.map +1 -0
- package/lib/schemas/protobuf/IProtobufPropertyType.d.ts +28 -0
- package/lib/schemas/protobuf/IProtobufPropertyType.js +3 -0
- package/lib/schemas/protobuf/IProtobufPropertyType.js.map +1 -0
- package/lib/schemas/protobuf/IProtobufSchema.d.ts +38 -0
- package/lib/schemas/protobuf/IProtobufSchema.js +3 -0
- package/lib/schemas/protobuf/IProtobufSchema.js.map +1 -0
- package/lib/tags/Example.d.ts +2 -2
- package/lib/tags/Examples.d.ts +2 -2
- package/lib/tags/JsonSchemaPlugin.d.ts +1 -1
- package/lib/tags/Sequence.d.ts +9 -0
- package/lib/tags/Sequence.js +3 -0
- package/lib/tags/Sequence.js.map +1 -0
- package/lib/tags/TagBase.d.ts +1 -1
- package/lib/tags/index.d.ts +1 -0
- package/lib/tags/index.js +1 -0
- package/lib/tags/index.js.map +1 -1
- package/lib/utils/{NameEncoder.d.ts → ProtobufNameEncoder.d.ts} +1 -1
- package/lib/utils/{NameEncoder.js → ProtobufNameEncoder.js} +7 -7
- package/lib/utils/ProtobufNameEncoder.js.map +1 -0
- package/package.json +1 -1
- package/src/factories/JsonMetadataFactory.ts +5 -2
- package/src/factories/MetadataCollection.ts +6 -6
- package/src/factories/MetadataFactory.ts +7 -7
- package/src/factories/MetadataTypeTagFactory.ts +31 -6
- package/src/factories/ProtobufFactory.ts +794 -177
- package/src/factories/internal/metadata/IMetadataIteratorProps.ts +1 -0
- package/src/factories/internal/metadata/MetadataHelper.ts +1 -1
- package/src/factories/internal/metadata/emplace_metadata_alias.ts +2 -2
- package/src/factories/internal/metadata/emplace_metadata_object.ts +5 -5
- package/src/factories/internal/metadata/explore_metadata.ts +1 -0
- package/src/factories/internal/metadata/iterate_metadata.ts +1 -1
- package/src/factories/internal/metadata/iterate_metadata_alias.ts +9 -4
- package/src/factories/internal/metadata/iterate_metadata_collection.ts +6 -6
- package/src/factories/internal/metadata/iterate_metadata_intersection.ts +163 -181
- package/src/factories/internal/metadata/iterate_metadata_map.ts +5 -2
- package/src/factories/internal/metadata/iterate_metadata_native.ts +20 -2
- package/src/factories/internal/metadata/iterate_metadata_set.ts +27 -11
- package/src/factories/internal/metadata/iterate_metadata_sort.ts +1 -1
- package/src/factories/internal/metadata/iterate_metadata_template.ts +1 -3
- package/src/programmers/CheckerProgrammer.ts +9 -7
- package/src/programmers/RandomProgrammer.ts +16 -14
- package/src/programmers/helpers/AtomicPredicator.ts +3 -3
- package/src/programmers/helpers/ProtobufUtil.ts +147 -44
- package/src/programmers/helpers/UnionExplorer.ts +62 -62
- package/src/programmers/http/HttpFormDataProgrammer.ts +10 -6
- package/src/programmers/internal/application_escaped.ts +2 -2
- package/src/programmers/internal/application_v30_alias.ts +18 -12
- package/src/programmers/internal/application_v30_native.ts +22 -12
- package/src/programmers/internal/application_v30_object.ts +23 -8
- package/src/programmers/internal/application_v30_schema.ts +31 -34
- package/src/programmers/internal/application_v31_alias.ts +16 -13
- package/src/programmers/internal/application_v31_native.ts +22 -12
- package/src/programmers/internal/application_v31_object.ts +19 -8
- package/src/programmers/internal/application_v31_schema.ts +26 -29
- package/src/programmers/internal/check_dynamic_key.ts +4 -4
- package/src/programmers/internal/check_native.ts +4 -4
- package/src/programmers/internal/check_union_array_like.ts +2 -1
- package/src/programmers/internal/llm_schema_escaped.ts +2 -2
- package/src/programmers/internal/llm_schema_object.ts +21 -18
- package/src/programmers/internal/llm_schema_station.ts +9 -11
- package/src/programmers/json/JsonSchemasProgrammer.ts +5 -5
- package/src/programmers/json/JsonStringifyProgrammer.ts +5 -5
- package/src/programmers/llm/LlmSchemaProgrammer.ts +6 -6
- package/src/programmers/misc/MiscCloneProgrammer.ts +11 -7
- package/src/programmers/misc/MiscPruneProgrammer.ts +1 -1
- package/src/programmers/notations/NotationGeneralProgrammer.ts +10 -6
- package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +254 -308
- package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +11 -8
- package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +73 -95
- package/src/schemas/metadata/IMetadata.ts +35 -39
- package/src/schemas/metadata/IMetadataAlias.ts +6 -12
- package/src/schemas/metadata/IMetadataAliasType.ts +12 -0
- package/src/schemas/metadata/IMetadataArray.ts +6 -6
- package/src/schemas/metadata/IMetadataComponents.ts +11 -11
- package/src/schemas/metadata/IMetadataConstantValue.ts +1 -1
- package/src/schemas/metadata/IMetadataDictionary.ts +2 -2
- package/src/schemas/metadata/IMetadataMap.ts +8 -0
- package/src/schemas/metadata/IMetadataNative.ts +6 -0
- package/src/schemas/metadata/IMetadataObjectType.ts +13 -13
- package/src/schemas/metadata/IMetadataSet.ts +7 -0
- package/src/schemas/metadata/IMetadataTemplate.ts +7 -7
- package/src/schemas/metadata/IMetadataTuple.ts +6 -6
- package/src/schemas/metadata/IMetadataTypeTag.ts +16 -16
- package/src/schemas/metadata/Metadata.ts +100 -47
- package/src/schemas/metadata/MetadataAlias.ts +46 -61
- package/src/schemas/metadata/MetadataAliasType.ts +63 -0
- package/src/schemas/metadata/MetadataArray.ts +49 -49
- package/src/schemas/metadata/MetadataComponents.ts +3 -3
- package/src/schemas/metadata/MetadataConstantValue.ts +1 -1
- package/src/schemas/metadata/MetadataMap.ts +48 -0
- package/src/schemas/metadata/MetadataNative.ts +44 -0
- package/src/schemas/metadata/MetadataProperty.ts +3 -0
- package/src/schemas/metadata/MetadataSet.ts +45 -0
- package/src/schemas/metadata/MetadataTemplate.ts +80 -80
- package/src/schemas/metadata/MetadataTuple.ts +32 -32
- package/src/schemas/protobuf/IProtobufProperty.ts +6 -0
- package/src/schemas/protobuf/IProtobufPropertyType.ts +37 -0
- package/src/schemas/protobuf/IProtobufSchema.ts +50 -0
- package/src/tags/Example.ts +24 -17
- package/src/tags/Examples.ts +16 -16
- package/src/tags/JsonSchemaPlugin.ts +8 -8
- package/src/tags/Sequence.ts +10 -0
- package/src/tags/TagBase.ts +82 -76
- package/src/tags/index.ts +1 -0
- package/src/utils/{NameEncoder.ts → ProtobufNameEncoder.ts} +1 -1
- package/lib/schemas/metadata/IMetadataEntry.d.ts +0 -5
- package/lib/schemas/metadata/IMetadataEntry.js.map +0 -1
- package/lib/utils/NameEncoder.js.map +0 -1
- package/src/schemas/metadata/IMetadataEntry.ts +0 -6
|
@@ -4,11 +4,12 @@ import { CommentFactory } from "../../factories/CommentFactory";
|
|
|
4
4
|
|
|
5
5
|
import { IJsDocTagInfo } from "../../schemas/metadata/IJsDocTagInfo";
|
|
6
6
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
7
|
-
import {
|
|
7
|
+
import { MetadataObject } from "../../schemas/metadata/MetadataObject";
|
|
8
8
|
|
|
9
9
|
import { PatternUtil } from "../../utils/PatternUtil";
|
|
10
10
|
|
|
11
11
|
import { application_description } from "./application_description";
|
|
12
|
+
import { application_plugin } from "./application_plugin";
|
|
12
13
|
import { llm_schema_station } from "./llm_schema_station";
|
|
13
14
|
import { metadata_to_pattern } from "./metadata_to_pattern";
|
|
14
15
|
|
|
@@ -16,9 +17,9 @@ import { metadata_to_pattern } from "./metadata_to_pattern";
|
|
|
16
17
|
* @internal
|
|
17
18
|
*/
|
|
18
19
|
export const llm_schema_object = (props: {
|
|
19
|
-
object:
|
|
20
|
+
object: MetadataObject;
|
|
20
21
|
nullable: boolean;
|
|
21
|
-
}): ILlmSchema.IObject => {
|
|
22
|
+
}): ILlmSchema.IObject[] => {
|
|
22
23
|
// ITERATE PROPERTIES
|
|
23
24
|
const properties: Record<string, any> = {};
|
|
24
25
|
const extraMeta: ISuperfluous = {
|
|
@@ -27,7 +28,7 @@ export const llm_schema_object = (props: {
|
|
|
27
28
|
};
|
|
28
29
|
const required: string[] = [];
|
|
29
30
|
|
|
30
|
-
for (const property of props.object.properties) {
|
|
31
|
+
for (const property of props.object.type.properties) {
|
|
31
32
|
if (
|
|
32
33
|
// FUNCTIONAL TYPE
|
|
33
34
|
property.value.functions.length &&
|
|
@@ -82,20 +83,22 @@ export const llm_schema_object = (props: {
|
|
|
82
83
|
}
|
|
83
84
|
}
|
|
84
85
|
|
|
85
|
-
return {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
86
|
+
return application_plugin({
|
|
87
|
+
schema: {
|
|
88
|
+
type: "object",
|
|
89
|
+
properties,
|
|
90
|
+
nullable: props.nullable,
|
|
91
|
+
required: required.length ? required : undefined,
|
|
92
|
+
title: (() => {
|
|
93
|
+
const info: IJsDocTagInfo | undefined =
|
|
94
|
+
props.object.type.jsDocTags.find((tag) => tag.name === "title");
|
|
95
|
+
return info?.text?.length ? CommentFactory.merge(info.text) : undefined;
|
|
96
|
+
})(),
|
|
97
|
+
description: application_description(props.object.type),
|
|
98
|
+
additionalProperties: join(extraMeta),
|
|
99
|
+
},
|
|
100
|
+
tags: props.object.tags,
|
|
101
|
+
});
|
|
99
102
|
};
|
|
100
103
|
|
|
101
104
|
/**
|
|
@@ -99,8 +99,8 @@ export const llm_schema_station = (props: {
|
|
|
99
99
|
|
|
100
100
|
// NATIVES
|
|
101
101
|
for (const native of props.metadata.natives)
|
|
102
|
-
if (AtomicPredicator.native(native)) {
|
|
103
|
-
const type: string = native.toLowerCase();
|
|
102
|
+
if (AtomicPredicator.native(native.name)) {
|
|
103
|
+
const type: string = native.name.toLowerCase();
|
|
104
104
|
if (props.metadata.atomics.some((a) => a.type === type)) continue;
|
|
105
105
|
else if (type === "boolean")
|
|
106
106
|
insert(
|
|
@@ -138,7 +138,7 @@ export const llm_schema_station = (props: {
|
|
|
138
138
|
}),
|
|
139
139
|
)[0]!,
|
|
140
140
|
);
|
|
141
|
-
} else insert(llm_schema_native(native));
|
|
141
|
+
} else insert(llm_schema_native(native.name));
|
|
142
142
|
if (props.metadata.sets.length) insert(llm_schema_native("Set"));
|
|
143
143
|
if (props.metadata.maps.length) insert(llm_schema_native("Map"));
|
|
144
144
|
|
|
@@ -149,16 +149,14 @@ export const llm_schema_station = (props: {
|
|
|
149
149
|
"Error on LlmSchemaProgrammer.write(): LLM schema does not allow recursive object type.",
|
|
150
150
|
);
|
|
151
151
|
else
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
}),
|
|
157
|
-
);
|
|
152
|
+
llm_schema_object({
|
|
153
|
+
object,
|
|
154
|
+
nullable: props.metadata.nullable,
|
|
155
|
+
}).forEach(insert);
|
|
158
156
|
|
|
159
157
|
// ALIASES
|
|
160
158
|
for (const alias of props.metadata.aliases)
|
|
161
|
-
if (alias.recursive)
|
|
159
|
+
if (alias.type.recursive)
|
|
162
160
|
throw new Error(
|
|
163
161
|
"Error on LlmSchemaProgrammer.write(): LLM schema does not allow recursive alias type.",
|
|
164
162
|
);
|
|
@@ -166,7 +164,7 @@ export const llm_schema_station = (props: {
|
|
|
166
164
|
insert(
|
|
167
165
|
llm_schema_station({
|
|
168
166
|
...props,
|
|
169
|
-
metadata: alias.value,
|
|
167
|
+
metadata: alias.type.value,
|
|
170
168
|
}),
|
|
171
169
|
);
|
|
172
170
|
|
|
@@ -30,12 +30,12 @@ export namespace JsonSchemasProgrammer {
|
|
|
30
30
|
output.push("JSON schema does not support Set type.");
|
|
31
31
|
for (const native of metadata.natives)
|
|
32
32
|
if (
|
|
33
|
-
AtomicPredicator.native(native) === false &&
|
|
34
|
-
native !== "Date" &&
|
|
35
|
-
native !== "Blob" &&
|
|
36
|
-
native !== "File"
|
|
33
|
+
AtomicPredicator.native(native.name) === false &&
|
|
34
|
+
native.name !== "Date" &&
|
|
35
|
+
native.name !== "Blob" &&
|
|
36
|
+
native.name !== "File"
|
|
37
37
|
)
|
|
38
|
-
output.push(`JSON schema does not support ${native} type.`);
|
|
38
|
+
output.push(`JSON schema does not support ${native.name} type.`);
|
|
39
39
|
return output;
|
|
40
40
|
};
|
|
41
41
|
|
|
@@ -235,10 +235,10 @@ export namespace JsonStringifyProgrammer {
|
|
|
235
235
|
type: "resolved",
|
|
236
236
|
is:
|
|
237
237
|
props.metadata.escaped.original.size() === 1 &&
|
|
238
|
-
props.metadata.escaped.original.natives[0] === "Date"
|
|
238
|
+
props.metadata.escaped.original.natives[0]?.name === "Date"
|
|
239
239
|
? () =>
|
|
240
240
|
check_native({
|
|
241
|
-
|
|
241
|
+
name: "Date",
|
|
242
242
|
input: props.input,
|
|
243
243
|
})
|
|
244
244
|
: () =>
|
|
@@ -427,14 +427,14 @@ export namespace JsonStringifyProgrammer {
|
|
|
427
427
|
type: "object",
|
|
428
428
|
is: () =>
|
|
429
429
|
check_native({
|
|
430
|
-
|
|
430
|
+
name: native.name,
|
|
431
431
|
input: props.input,
|
|
432
432
|
}),
|
|
433
433
|
value: () =>
|
|
434
|
-
AtomicPredicator.native(native)
|
|
434
|
+
AtomicPredicator.native(native.name)
|
|
435
435
|
? decode_atomic({
|
|
436
436
|
...props,
|
|
437
|
-
type: native.toLowerCase() as Atomic.Literal,
|
|
437
|
+
type: native.name.toLowerCase() as Atomic.Literal,
|
|
438
438
|
})
|
|
439
439
|
: ts.factory.createStringLiteral("{}"),
|
|
440
440
|
});
|
|
@@ -26,14 +26,14 @@ export namespace LlmSchemaProgrammer {
|
|
|
26
26
|
output.push("LLM schema does not support Set type.");
|
|
27
27
|
for (const native of metadata.natives)
|
|
28
28
|
if (
|
|
29
|
-
AtomicPredicator.native(native) === false &&
|
|
30
|
-
native !== "Date" &&
|
|
31
|
-
native !== "Blob" &&
|
|
32
|
-
native !== "File"
|
|
29
|
+
AtomicPredicator.native(native.name) === false &&
|
|
30
|
+
native.name !== "Date" &&
|
|
31
|
+
native.name !== "Blob" &&
|
|
32
|
+
native.name !== "File"
|
|
33
33
|
)
|
|
34
|
-
output.push(`LLM schema does not support ${native} type.`);
|
|
34
|
+
output.push(`LLM schema does not support ${native.name} type.`);
|
|
35
35
|
if (
|
|
36
|
-
metadata.aliases.some((a) => a.recursive) ||
|
|
36
|
+
metadata.aliases.some((a) => a.type.recursive) ||
|
|
37
37
|
metadata.arrays.some((a) => a.type.recursive) ||
|
|
38
38
|
metadata.objects.some((o) => o.type.recursive) ||
|
|
39
39
|
metadata.tuples.some((t) => t.type.recursive)
|
|
@@ -9,7 +9,9 @@ import { TypeFactory } from "../../factories/TypeFactory";
|
|
|
9
9
|
|
|
10
10
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
11
11
|
import { MetadataArray } from "../../schemas/metadata/MetadataArray";
|
|
12
|
+
import { MetadataMap } from "../../schemas/metadata/MetadataMap";
|
|
12
13
|
import { MetadataObjectType } from "../../schemas/metadata/MetadataObjectType";
|
|
14
|
+
import { MetadataSet } from "../../schemas/metadata/MetadataSet";
|
|
13
15
|
import { MetadataTuple } from "../../schemas/metadata/MetadataTuple";
|
|
14
16
|
import { MetadataTupleType } from "../../schemas/metadata/MetadataTupleType";
|
|
15
17
|
|
|
@@ -270,16 +272,18 @@ export namespace MiscCloneProgrammer {
|
|
|
270
272
|
for (const native of props.metadata.natives)
|
|
271
273
|
unions.push({
|
|
272
274
|
type: "native",
|
|
273
|
-
is: () => ExpressionFactory.isInstanceOf(native, props.input),
|
|
275
|
+
is: () => ExpressionFactory.isInstanceOf(native.name, props.input),
|
|
274
276
|
value: () =>
|
|
275
|
-
native === "Boolean" ||
|
|
277
|
+
native.name === "Boolean" ||
|
|
278
|
+
native.name === "Number" ||
|
|
279
|
+
native.name === "String"
|
|
276
280
|
? ts.factory.createCallExpression(
|
|
277
281
|
IdentifierFactory.access(props.input, "valueOf"),
|
|
278
282
|
undefined,
|
|
279
283
|
undefined,
|
|
280
284
|
)
|
|
281
285
|
: decode_native({
|
|
282
|
-
type: native,
|
|
286
|
+
type: native.name,
|
|
283
287
|
input: props.input,
|
|
284
288
|
}),
|
|
285
289
|
});
|
|
@@ -578,7 +582,7 @@ export namespace MiscCloneProgrammer {
|
|
|
578
582
|
config: FeatureProgrammer.IConfig;
|
|
579
583
|
functor: FunctionProgrammer;
|
|
580
584
|
input: ts.Expression;
|
|
581
|
-
sets:
|
|
585
|
+
sets: MetadataSet[];
|
|
582
586
|
explore: FeatureProgrammer.IExplore;
|
|
583
587
|
}): ts.Expression =>
|
|
584
588
|
ts.factory.createCallExpression(
|
|
@@ -634,7 +638,7 @@ export namespace MiscCloneProgrammer {
|
|
|
634
638
|
config: FeatureProgrammer.IConfig;
|
|
635
639
|
functor: FunctionProgrammer;
|
|
636
640
|
input: ts.Expression;
|
|
637
|
-
maps:
|
|
641
|
+
maps: MetadataMap[];
|
|
638
642
|
explore: FeatureProgrammer.IExplore;
|
|
639
643
|
}): ts.Expression =>
|
|
640
644
|
ts.factory.createCallExpression(
|
|
@@ -967,9 +971,9 @@ export namespace MiscCloneProgrammer {
|
|
|
967
971
|
absorb: true,
|
|
968
972
|
validate: (metadata) => {
|
|
969
973
|
const output: string[] = [];
|
|
970
|
-
if (metadata.natives.some((
|
|
974
|
+
if (metadata.natives.some((native) => native.name === "WeakSet"))
|
|
971
975
|
output.push("unable to clone WeakSet");
|
|
972
|
-
else if (metadata.natives.some((
|
|
976
|
+
else if (metadata.natives.some((native) => native.name === "WeakMap"))
|
|
973
977
|
output.push("unable to clone WeakMap");
|
|
974
978
|
return output;
|
|
975
979
|
},
|
|
@@ -221,7 +221,7 @@ export namespace MiscPruneProgrammer {
|
|
|
221
221
|
for (const native of props.metadata.natives)
|
|
222
222
|
unions.push({
|
|
223
223
|
type: "native",
|
|
224
|
-
is: () => ExpressionFactory.isInstanceOf(native, props.input),
|
|
224
|
+
is: () => ExpressionFactory.isInstanceOf(native.name, props.input),
|
|
225
225
|
value: () => ts.factory.createReturnStatement(),
|
|
226
226
|
});
|
|
227
227
|
if (props.metadata.sets.length)
|
|
@@ -9,7 +9,9 @@ import { TypeFactory } from "../../factories/TypeFactory";
|
|
|
9
9
|
|
|
10
10
|
import { Metadata } from "../../schemas/metadata/Metadata";
|
|
11
11
|
import { MetadataArray } from "../../schemas/metadata/MetadataArray";
|
|
12
|
+
import { MetadataMap } from "../../schemas/metadata/MetadataMap";
|
|
12
13
|
import { MetadataObjectType } from "../../schemas/metadata/MetadataObjectType";
|
|
14
|
+
import { MetadataSet } from "../../schemas/metadata/MetadataSet";
|
|
13
15
|
import { MetadataTuple } from "../../schemas/metadata/MetadataTuple";
|
|
14
16
|
import { MetadataTupleType } from "../../schemas/metadata/MetadataTupleType";
|
|
15
17
|
|
|
@@ -298,19 +300,21 @@ export namespace NotationGeneralProgrammer {
|
|
|
298
300
|
}),
|
|
299
301
|
});
|
|
300
302
|
for (const native of props.metadata.natives) {
|
|
301
|
-
if (native === "WeakSet" || native === "WeakMap") continue;
|
|
303
|
+
if (native.name === "WeakSet" || native.name === "WeakMap") continue;
|
|
302
304
|
unions.push({
|
|
303
305
|
type: "native",
|
|
304
|
-
is: () => ExpressionFactory.isInstanceOf(native, props.input),
|
|
306
|
+
is: () => ExpressionFactory.isInstanceOf(native.name, props.input),
|
|
305
307
|
value: () =>
|
|
306
|
-
native === "Boolean" ||
|
|
308
|
+
native.name === "Boolean" ||
|
|
309
|
+
native.name === "Number" ||
|
|
310
|
+
native.name === "String"
|
|
307
311
|
? ts.factory.createCallExpression(
|
|
308
312
|
IdentifierFactory.access(props.input, "valueOf"),
|
|
309
313
|
undefined,
|
|
310
314
|
undefined,
|
|
311
315
|
)
|
|
312
316
|
: decode_native({
|
|
313
|
-
name: native,
|
|
317
|
+
name: native.name,
|
|
314
318
|
input: props.input,
|
|
315
319
|
}),
|
|
316
320
|
});
|
|
@@ -530,7 +534,7 @@ export namespace NotationGeneralProgrammer {
|
|
|
530
534
|
functor: FunctionProgrammer;
|
|
531
535
|
input: ts.Expression;
|
|
532
536
|
explore: FeatureProgrammer.IExplore;
|
|
533
|
-
sets:
|
|
537
|
+
sets: Array<MetadataSet>;
|
|
534
538
|
}): ts.Expression =>
|
|
535
539
|
ts.factory.createCallExpression(
|
|
536
540
|
UnionExplorer.set({
|
|
@@ -585,7 +589,7 @@ export namespace NotationGeneralProgrammer {
|
|
|
585
589
|
config: FeatureProgrammer.IConfig;
|
|
586
590
|
functor: FunctionProgrammer;
|
|
587
591
|
input: ts.Expression;
|
|
588
|
-
maps:
|
|
592
|
+
maps: Array<MetadataMap>;
|
|
589
593
|
explore: FeatureProgrammer.IExplore;
|
|
590
594
|
}): ts.Expression =>
|
|
591
595
|
ts.factory.createCallExpression(
|