@@ -62,7 +62,7 @@ class TsConverter(
62
62
convertToTsElement(null , target)
63
63
}
64
64
65
- private fun convertToTsElement (requestor : TsElementId ? , target : SerialDescriptor ): TsElementId {
65
+ private fun convertToTsElement (requestor : TsElementId ? , target : SerialDescriptor ): TsElement {
66
66
67
67
val targetId = TsElementId (target.serialName.removeSuffix(" ?" ))
68
68
@@ -112,7 +112,7 @@ class TsConverter(
112
112
}
113
113
114
114
result
115
- }.id
115
+ }
116
116
}
117
117
118
118
@@ -123,18 +123,18 @@ class TsConverter(
123
123
124
124
if (structDescriptor.isInline) {
125
125
val fieldDescriptor = structDescriptor.elementDescriptors.first()
126
- val typeId = convertToTsElement(targetId, fieldDescriptor)
127
- val typeReference = TsTypeReference (typeId , fieldDescriptor.isNullable)
128
- return TsTypeAlias (targetId, setOf (typeReference) )
126
+ val fieldType = convertToTsElement(targetId, fieldDescriptor)
127
+ val fieldTyping = TsTyping (fieldType , fieldDescriptor.isNullable)
128
+ return TsTypeAlias (targetId, fieldTyping )
129
129
} else {
130
130
131
- val properties = structDescriptor.elementDescriptors.mapIndexed { index, field ->
131
+ val properties = structDescriptor.elementDescriptors.mapIndexed { index, fieldDescriptor ->
132
132
val name = structDescriptor.getElementName(index)
133
- val fieldTypeId = convertToTsElement(targetId, field )
134
- val fieldTypeReference = TsTypeReference (fieldTypeId, field .isNullable)
133
+ val fieldType = convertToTsElement(targetId, fieldDescriptor )
134
+ val fieldTyping = TsTyping (fieldType, fieldDescriptor .isNullable)
135
135
when {
136
- structDescriptor.isElementOptional(index) -> TsProperty .Optional (name, fieldTypeReference )
137
- else -> TsProperty .Required (name, fieldTypeReference )
136
+ structDescriptor.isElementOptional(index) -> TsProperty .Optional (name, fieldTyping )
137
+ else -> TsProperty .Required (name, fieldTyping )
138
138
}
139
139
}
140
140
@@ -146,10 +146,6 @@ class TsConverter(
146
146
targetId : TsElementId ,
147
147
enumDescriptor : SerialDescriptor ,
148
148
): TsElement {
149
- // if (descriptor.elementsCount > 0) {
150
- // convertStructure(descriptor)
151
- // }
152
-
153
149
return TsStructure .TsEnum (
154
150
targetId,
155
151
enumDescriptor.elementNames.toSet(),
@@ -160,12 +156,10 @@ class TsConverter(
160
156
targetId : TsElementId ,
161
157
listDescriptor : SerialDescriptor ,
162
158
): TsStructure .TsList {
163
-
164
- val typeDescriptor = listDescriptor.elementDescriptors.first()
165
- val typeId =
166
- TsTypeReference (convertToTsElement(targetId, typeDescriptor), typeDescriptor.isNullable)
167
-
168
- return TsStructure .TsList (targetId, typeId)
159
+ val elementDescriptor = listDescriptor.elementDescriptors.first()
160
+ val elementType = convertToTsElement(targetId, elementDescriptor)
161
+ val elementTyping = TsTyping (elementType, elementDescriptor.isNullable)
162
+ return TsStructure .TsList (targetId, elementTyping)
169
163
}
170
164
171
165
private fun convertMap (
@@ -174,10 +168,13 @@ class TsConverter(
174
168
): TsStructure .TsMap {
175
169
176
170
val (keyDescriptor, valueDescriptor) = mapDescriptor.elementDescriptors.toList()
177
- val keyType =
178
- TsTypeReference (convertToTsElement(targetId, keyDescriptor), keyDescriptor.isNullable)
179
- val valueType =
180
- TsTypeReference (convertToTsElement(targetId, valueDescriptor), valueDescriptor.isNullable)
181
- return TsStructure .TsMap (targetId, keyType, valueType)
171
+
172
+ val keyType = convertToTsElement(targetId, keyDescriptor)
173
+ val keyTyping = TsTyping (keyType, keyDescriptor.isNullable)
174
+
175
+ val valueType = convertToTsElement(targetId, valueDescriptor)
176
+ val valueTyping = TsTyping (valueType, valueDescriptor.isNullable)
177
+
178
+ return TsStructure .TsMap (targetId, keyTyping, valueTyping)
182
179
}
183
180
}
0 commit comments