diff --git a/cmd/libs/go2idl/openapi-gen/generators/openapi.go b/cmd/libs/go2idl/openapi-gen/generators/openapi.go index ad12815610e..fec9acf78e9 100644 --- a/cmd/libs/go2idl/openapi-gen/generators/openapi.go +++ b/cmd/libs/go2idl/openapi-gen/generators/openapi.go @@ -446,10 +446,15 @@ func (g openAPITypeWriter) generateMapProperty(t *types.Type) error { } g.Do("Type: []string{\"object\"},\n", nil) g.Do("AdditionalProperties: &spec.SchemaOrBool{\nSchema: &spec.Schema{\nSchemaProps: spec.SchemaProps{\n", nil) + typeString, format := common.GetOpenAPITypeFormat(elemType.String()) + if typeString != "" { + g.generateSimpleProperty(typeString, format) + g.Do("},\n},\n},\n", nil) + return nil + } switch elemType.Kind { case types.Builtin: - typeString, format := common.GetOpenAPITypeFormat(elemType.String()) - g.generateSimpleProperty(typeString, format) + return fmt.Errorf("please add type %v to getOpenAPITypeFormat function.", elemType) case types.Struct: g.generateReferenceProperty(t.Elem) case types.Slice, types.Array: @@ -465,10 +470,15 @@ func (g openAPITypeWriter) generateSliceProperty(t *types.Type) error { elemType := resolveAliasAndPtrType(t.Elem) g.Do("Type: []string{\"array\"},\n", nil) g.Do("Items: &spec.SchemaOrArray{\nSchema: &spec.Schema{\nSchemaProps: spec.SchemaProps{\n", nil) + typeString, format := common.GetOpenAPITypeFormat(elemType.String()) + if typeString != "" { + g.generateSimpleProperty(typeString, format) + g.Do("},\n},\n},\n", nil) + return nil + } switch elemType.Kind { case types.Builtin: - typeString, format := common.GetOpenAPITypeFormat(elemType.String()) - g.generateSimpleProperty(typeString, format) + return fmt.Errorf("please add type %v to getOpenAPITypeFormat function.", elemType) case types.Struct: g.generateReferenceProperty(t.Elem) default: diff --git a/pkg/generated/openapi/zz_generated.openapi.go b/pkg/generated/openapi/zz_generated.openapi.go index 2401d9fd8ae..c4d656621bd 100644 --- a/pkg/generated/openapi/zz_generated.openapi.go +++ b/pkg/generated/openapi/zz_generated.openapi.go @@ -12324,15 +12324,8 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ AdditionalProperties: &spec.SchemaOrBool{ Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ - Type: []string{"array"}, - Items: &spec.SchemaOrArray{ - Schema: &spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"integer"}, - Format: "byte", - }, - }, - }, + Type: []string{"string"}, + Format: "byte", }, }, },