diff --git a/Swift/Class.swift.twig b/Swift/Class.swift.twig index c6811c3..0815494 100644 --- a/Swift/Class.swift.twig +++ b/Swift/Class.swift.twig @@ -1,4 +1,4 @@ -{%- import 'swift-utils.twig' as utils -%} +{%- import 'utils.twig' as utils -%} {%- set className = utils.formatClassType(type.baseTypeName, type.typeParameters) -%} {%- set parentClassName = utils.formatClassType(utils.parentClassType(parent), type.parentTypeParameters) -%} @@ -8,12 +8,12 @@ import ObjectMapper /// {{ description }} {% if (not hasChilds) -%}final {% endif %}class {{ className }}: {{ parentClassName }} { - {% include 'Class.fields.swig' with { fields: fields } %} - {% include 'Class.date-transformers.swig' with { fields: fields } %} + {% include 'blocks/class/fields.twig' with { fields: fields } %} + {% include 'blocks/class/date-transformers.twig' with { fields: fields } %} // MARK: - Initializer required init(map: Map) throws { - {%- include 'Class.fields-mapping.swig' with { fields: fields } -%} + {%- include 'blocks/class/fields-mapping.twig' with { fields: fields } -%} {% if parent is not null %} try super.init(map: map) {%- endif %} diff --git a/Swift/Enum.swift.twig b/Swift/Enum.swift.twig index 3cc0cb1..2593f0e 100644 --- a/Swift/Enum.swift.twig +++ b/Swift/Enum.swift.twig @@ -1,4 +1,4 @@ -{%- import 'swift-utils.twig' as utils -%} +{%- import 'utils.twig' as utils -%} import Foundation @@ -8,12 +8,6 @@ import Foundation /// - {{ utils.decapitalize(value.name) }}: {{ value.description }} {% endfor -%} enum {{ name }}: {{ utils.enumType(valuesTypes) }} { + {% include 'blocks/enum/cases.twig' with { values: values } %} - {% for value in values -%} - case {{ utils.decapitalize(value.name) }} = {% if valuesTypes == "STRING" -%} - "{{ value.value }}" - {% else %} - {{- value.value }} - {% endif -%} - {% endfor %} } diff --git a/Swift/Class.date-transformers.swig b/Swift/blocks/class/date-transformers.twig similarity index 90% rename from Swift/Class.date-transformers.swig rename to Swift/blocks/class/date-transformers.twig index 6994132..be83b52 100644 --- a/Swift/Class.date-transformers.swig +++ b/Swift/blocks/class/date-transformers.twig @@ -1,4 +1,4 @@ -{%- import 'swift-utils.twig' as utils -%} +{%- import '../../utils.twig' as utils -%} {%- set hasDateFields = false -%} diff --git a/Swift/Class.fields-mapping.swig b/Swift/blocks/class/fields-mapping.twig similarity index 73% rename from Swift/Class.fields-mapping.swig rename to Swift/blocks/class/fields-mapping.twig index c7c5601..3315eaa 100644 --- a/Swift/Class.fields-mapping.swig +++ b/Swift/blocks/class/fields-mapping.twig @@ -1,4 +1,4 @@ -{%- import 'swift-utils.twig' as utils -%} +{%- import '../../utils.twig' as utils -%} {%- for field in fields %} {{ field.name }} = {{ utils.formatNullable('try', field.nullable) }} {{ utils.mappingForField(field, className) }} {%- endfor -%} \ No newline at end of file diff --git a/Swift/Class.fields.swig b/Swift/blocks/class/fields.twig similarity index 81% rename from Swift/Class.fields.swig rename to Swift/blocks/class/fields.twig index bdceb45..f8d4b58 100644 --- a/Swift/Class.fields.swig +++ b/Swift/blocks/class/fields.twig @@ -1,4 +1,4 @@ -{%- import 'swift-utils.twig' as utils -%} +{%- import '../../utils.twig' as utils -%} {%- if fields is not empty -%} // MARK: - Fields diff --git a/Swift/blocks/enum/cases.twig b/Swift/blocks/enum/cases.twig new file mode 100644 index 0000000..7ca7065 --- /dev/null +++ b/Swift/blocks/enum/cases.twig @@ -0,0 +1,12 @@ +{%- import '../../utils.twig' as utils -%} +{%- for value in values -%} + {%- if valuesTypes == "STRING" %} +{%- if value.name != value.value %} + case {{ utils.decapitalize(value.name) }} = "{{ value.value }}" +{%- else %} + case {{ utils.decapitalize(value.name) -}} +{% endif -%} +{%- else %} + case {{ utils.decapitalize(value.name) }} = {{ value.value }} +{%- endif -%} +{%- endfor -%} \ No newline at end of file diff --git a/Swift/swift-utils.twig b/Swift/utils.twig similarity index 100% rename from Swift/swift-utils.twig rename to Swift/utils.twig