From 71cbbe1adb6e2dc3b4137fc6d8165a6095f450df Mon Sep 17 00:00:00 2001 From: "p.strelchenko" Date: Sat, 23 Sep 2023 21:04:22 +0600 Subject: [PATCH 1/7] =?UTF-8?q?[MOB-33633]=20=D0=94=D0=BE=D0=B1=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D1=8F=D0=B5=D1=82=20=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5?= =?UTF-8?q?=D1=80=D0=B6=D0=BA=D1=83=20=D0=BC=D0=BD=D0=BE=D0=B6=D0=B5=D1=81?= =?UTF-8?q?=D1=82=D0=B2=D0=B0=20=D1=88=D0=B0=D0=B1=D0=BB=D0=BE=D0=BD=D0=BE?= =?UTF-8?q?=D0=B2=20=D0=B4=D0=BB=D1=8F=20spacing-=D1=82=D0=BE=D0=BA=D0=B5?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sources/FigmaGen/Commands/TokensCommand.swift | 12 ++++--- .../Tokens/DefaultTokensGenerator.swift | 12 ++++--- ...ltTokensGenerationParametersResolver.swift | 31 +++++++++++++++++-- .../Tokens/TokensTemplateConfiguration.swift | 2 +- .../TokensGenerationParameters.swift | 2 +- 5 files changed, 44 insertions(+), 15 deletions(-) diff --git a/Sources/FigmaGen/Commands/TokensCommand.swift b/Sources/FigmaGen/Commands/TokensCommand.swift index 842c586..edaf6c3 100644 --- a/Sources/FigmaGen/Commands/TokensCommand.swift +++ b/Sources/FigmaGen/Commands/TokensCommand.swift @@ -258,11 +258,13 @@ extension TokensCommand { templateOptions: resolveTemplateOptions(themeTemplateOptions.value), destination: themeDestination.value ), - spacing: TokensTemplateConfiguration.Template( - template: spacingTemplate.value, - templateOptions: resolveTemplateOptions(spacingTemplateOptions.value), - destination: spacingDestination.value - ) + spacing: [ + TokensTemplateConfiguration.Template( + template: spacingTemplate.value, + templateOptions: resolveTemplateOptions(spacingTemplateOptions.value), + destination: spacingDestination.value + ) + ] ) ) } diff --git a/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift index 47a9ee6..463b86a 100644 --- a/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift @@ -55,11 +55,13 @@ final class DefaultTokensGenerator: TokensGenerator { } private func generateSpacingTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let spacingRenderParameters = parameters.tokens.spacingRender { - try spacingTokensGenerator.generate( - renderParameters: spacingRenderParameters, - tokenValues: tokenValues - ) + if let spacingRenderParameters = parameters.tokens.spacingRenderParameters { + for renderParameters in spacingRenderParameters { + try spacingTokensGenerator.generate( + renderParameters: renderParameters, + tokenValues: tokenValues + ) + } } } diff --git a/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift b/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift index 88d0d08..a6cb3de 100644 --- a/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift +++ b/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift @@ -59,6 +59,31 @@ final class DefaultTokensGenerationParametersResolver: TokensGenerationParameter return RenderParameters(template: template, destination: destination) } + private func resolveRenderParameters( + templates: [TokensTemplateConfiguration.Template]?, + nativeTemplateName: String + ) -> [RenderParameters]? { + guard let templateConfigurations = templates else { + return nil + } + + return templateConfigurations.map { template -> RenderParameters in + let templateType = resolveTemplateType( + template: template, + nativeTemplateName: nativeTemplateName + ) + + let destination = resolveDestination(template: template) + + let template = RenderTemplate( + type: templateType, + options: template.templateOptions ?? [:] + ) + + return RenderParameters(template: template, destination: destination) + } + } + // MARK: - // swiftlint:disable:next function_body_length @@ -107,8 +132,8 @@ final class DefaultTokensGenerationParametersResolver: TokensGenerationParameter nativeTemplateName: "Theme" ) - let spacingRender = resolveRenderParameters( - template: configuration.templates?.spacing, + let spacingRenderParameters = resolveRenderParameters( + templates: configuration.templates?.spacing, nativeTemplateName: "SpacingTokens" ) @@ -121,7 +146,7 @@ final class DefaultTokensGenerationParametersResolver: TokensGenerationParameter typographyRender: typographyRender, boxShadowRender: boxShadowRender, themeRender: themeRender, - spacingRender: spacingRender + spacingRenderParameters: spacingRenderParameters ) ) } diff --git a/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift b/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift index 1188323..3ed6030 100644 --- a/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift +++ b/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift @@ -34,7 +34,7 @@ struct TokensTemplateConfiguration: Decodable { let typographies: Template? let boxShadows: Template? let theme: Template? - let spacing: Template? + let spacing: [Template]? } extension TokensTemplateConfiguration.Template { diff --git a/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift b/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift index 9cd46b5..27339f0 100644 --- a/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift +++ b/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift @@ -14,7 +14,7 @@ struct TokensGenerationParameters { let typographyRender: RenderParameters? let boxShadowRender: RenderParameters? let themeRender: RenderParameters? - let spacingRender: RenderParameters? + let spacingRenderParameters: [RenderParameters]? } // MARK: - Instance Properties From 851aad0e858da3e8464d366cc60fa44b6703a53b Mon Sep 17 00:00:00 2001 From: "p.strelchenko" Date: Sat, 23 Sep 2023 21:26:20 +0600 Subject: [PATCH 2/7] =?UTF-8?q?[MOB-33633]=20=D0=94=D0=BE=D0=B1=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D1=8F=D0=B5=D1=82=20=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5?= =?UTF-8?q?=D1=80=D0=B6=D0=BA=D1=83=20=D0=BC=D0=BD=D0=BE=D0=B6=D0=B5=D1=81?= =?UTF-8?q?=D1=82=D0=B2=D0=B0=20=D1=88=D0=B0=D0=B1=D0=BB=D0=BE=D0=BD=D0=BE?= =?UTF-8?q?=D0=B2=20=D0=B4=D0=BB=D1=8F=20=D0=B2=D1=81=D0=B5=D1=85=20=D1=82?= =?UTF-8?q?=D0=B8=D0=BF=D0=BE=D0=B2=20=D1=82=D0=BE=D0=BA=D0=B5=D0=BD=D0=BE?= =?UTF-8?q?=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sources/FigmaGen/Commands/TokensCommand.swift | 74 +++++++++++-------- .../Tokens/DefaultTokensGenerator.swift | 72 ++++++++++-------- ...ltTokensGenerationParametersResolver.swift | 59 +++++---------- .../Tokens/TokensTemplateConfiguration.swift | 12 +-- .../TokensGenerationParameters.swift | 12 +-- 5 files changed, 116 insertions(+), 113 deletions(-) diff --git a/Sources/FigmaGen/Commands/TokensCommand.swift b/Sources/FigmaGen/Commands/TokensCommand.swift index edaf6c3..03cb874 100644 --- a/Sources/FigmaGen/Commands/TokensCommand.swift +++ b/Sources/FigmaGen/Commands/TokensCommand.swift @@ -223,41 +223,55 @@ extension TokensCommand { // MARK: - Instance Properties + // !!! Important note !!! + // For CLI usage of FigmaGen we don't support multiple templates for any token type. var configuration: TokensConfiguration { TokensConfiguration( file: resolveFileConfiguration(), accessToken: resolveAccessTokenConfiguration(), templates: TokensTemplateConfiguration( - colors: TokensTemplateConfiguration.Template( - template: colorsTemplate.value, - templateOptions: resolveTemplateOptions(colorsTemplateOptions.value), - destination: colorsDestination.value - ), - baseColors: TokensTemplateConfiguration.Template( - template: baseColorsTemplate.value, - templateOptions: resolveTemplateOptions(baseColorsTemplateOptions.value), - destination: baseColorsDestination.value - ), - fontFamilies: TokensTemplateConfiguration.Template( - template: fontFamiliesTemplate.value, - templateOptions: resolveTemplateOptions(fontFamiliesTemplateOptions.value), - destination: fontFamiliesDestination.value - ), - typographies: TokensTemplateConfiguration.Template( - template: typographiesTemplate.value, - templateOptions: resolveTemplateOptions(typographiesTemplateOptions.value), - destination: typographiesDestination.value - ), - boxShadows: TokensTemplateConfiguration.Template( - template: boxShadowsTemplate.value, - templateOptions: resolveTemplateOptions(boxShadowsTemplateOptions.value), - destination: boxShadowsDestination.value - ), - theme: TokensTemplateConfiguration.Template( - template: themeTemplate.value, - templateOptions: resolveTemplateOptions(themeTemplateOptions.value), - destination: themeDestination.value - ), + colors: [ + TokensTemplateConfiguration.Template( + template: colorsTemplate.value, + templateOptions: resolveTemplateOptions(colorsTemplateOptions.value), + destination: colorsDestination.value + ) + ], + baseColors: [ + TokensTemplateConfiguration.Template( + template: baseColorsTemplate.value, + templateOptions: resolveTemplateOptions(baseColorsTemplateOptions.value), + destination: baseColorsDestination.value + ) + ], + fontFamilies: [ + TokensTemplateConfiguration.Template( + template: fontFamiliesTemplate.value, + templateOptions: resolveTemplateOptions(fontFamiliesTemplateOptions.value), + destination: fontFamiliesDestination.value + ) + ], + typographies: [ + TokensTemplateConfiguration.Template( + template: typographiesTemplate.value, + templateOptions: resolveTemplateOptions(typographiesTemplateOptions.value), + destination: typographiesDestination.value + ) + ], + boxShadows: [ + TokensTemplateConfiguration.Template( + template: boxShadowsTemplate.value, + templateOptions: resolveTemplateOptions(boxShadowsTemplateOptions.value), + destination: boxShadowsDestination.value + ) + ], + theme: [ + TokensTemplateConfiguration.Template( + template: themeTemplate.value, + templateOptions: resolveTemplateOptions(themeTemplateOptions.value), + destination: themeDestination.value + ) + ], spacing: [ TokensTemplateConfiguration.Template( template: spacingTemplate.value, diff --git a/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift index 463b86a..6f7181f 100644 --- a/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift @@ -66,56 +66,68 @@ final class DefaultTokensGenerator: TokensGenerator { } private func generateThemeTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let themeRenderParameters = parameters.tokens.themeRender { - try themeTokensGenerator.generate( - renderParameters: themeRenderParameters, - tokenValues: tokenValues - ) + if let themeRenderParameters = parameters.tokens.themeRenderParameters { + for renderParameters in themeRenderParameters { + try themeTokensGenerator.generate( + renderParameters: renderParameters, + tokenValues: tokenValues + ) + } } } private func generateBoxShadowTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let boxShadowRenderParameters = parameters.tokens.boxShadowRender { - try boxShadowTokensGenerator.generate( - renderParameters: boxShadowRenderParameters, - tokenValues: tokenValues - ) + if let boxShadowRenderParameters = parameters.tokens.boxShadowRenderParameters { + for renderParameters in boxShadowRenderParameters { + try boxShadowTokensGenerator.generate( + renderParameters: renderParameters, + tokenValues: tokenValues + ) + } } } private func generateTypographyTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let typographyRenderParameters = parameters.tokens.typographyRender { - try typographyTokensGenerator.generate( - renderParameters: typographyRenderParameters, - tokenValues: tokenValues - ) + if let typographyRenderParameters = parameters.tokens.typographyRenderParameters { + for renderParameters in typographyRenderParameters { + try typographyTokensGenerator.generate( + renderParameters: renderParameters, + tokenValues: tokenValues + ) + } } } private func generateFontFamilyTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let fontFamilyRenderParameters = parameters.tokens.fontFamilyRender { - try fontFamilyTokensGenerator.generate( - renderParameters: fontFamilyRenderParameters, - tokenValues: tokenValues - ) + if let fontFamilyRenderParameters = parameters.tokens.fontFamilyRenderParameters { + for renderParameters in fontFamilyRenderParameters { + try fontFamilyTokensGenerator.generate( + renderParameters: renderParameters, + tokenValues: tokenValues + ) + } } } private func generateBaseColorsTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let baseColorRenderParameters = parameters.tokens.baseColorRender { - try baseColorTokensGenerator.generate( - renderParameters: baseColorRenderParameters, - tokenValues: tokenValues - ) + if let baseColorRenderParameters = parameters.tokens.baseColorRenderParameters { + for renderParameters in baseColorRenderParameters { + try baseColorTokensGenerator.generate( + renderParameters: renderParameters, + tokenValues: tokenValues + ) + } } } private func generateColorsTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let colorRenderParameters = parameters.tokens.colorRender { - try colorTokensGenerator.generate( - renderParameters: colorRenderParameters, - tokenValues: tokenValues - ) + if let colorRenderParameters = parameters.tokens.colorRenderParameters { + for renderParameters in colorRenderParameters { + try colorTokensGenerator.generate( + renderParameters: renderParameters, + tokenValues: tokenValues + ) + } } } diff --git a/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift b/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift index a6cb3de..e01a7d3 100644 --- a/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift +++ b/Sources/FigmaGen/Generators/Tokens/GenerationParametersResolver/DefaultTokensGenerationParametersResolver.swift @@ -36,29 +36,6 @@ final class DefaultTokensGenerationParametersResolver: TokensGenerationParameter return .console } - private func resolveRenderParameters( - template: TokensTemplateConfiguration.Template?, - nativeTemplateName: String - ) -> RenderParameters? { - guard let templateConfiguration = template else { - return nil - } - - let templateType = resolveTemplateType( - template: templateConfiguration, - nativeTemplateName: nativeTemplateName - ) - - let destination = resolveDestination(template: templateConfiguration) - - let template = RenderTemplate( - type: templateType, - options: templateConfiguration.templateOptions ?? [:] - ) - - return RenderParameters(template: template, destination: destination) - } - private func resolveRenderParameters( templates: [TokensTemplateConfiguration.Template]?, nativeTemplateName: String @@ -102,33 +79,33 @@ final class DefaultTokensGenerationParametersResolver: TokensGenerationParameter accessToken: accessToken ) - let colorRender = resolveRenderParameters( - template: configuration.templates?.colors, + let colorRenderParameters = resolveRenderParameters( + templates: configuration.templates?.colors, nativeTemplateName: "ColorTokens" ) - let baseColorRender = resolveRenderParameters( - template: configuration.templates?.baseColors, + let baseColorRenderParameters = resolveRenderParameters( + templates: configuration.templates?.baseColors, nativeTemplateName: "BaseColorTokens" ) - let fontFamilyRender = resolveRenderParameters( - template: configuration.templates?.fontFamilies, + let fontFamilyRenderParameters = resolveRenderParameters( + templates: configuration.templates?.fontFamilies, nativeTemplateName: "FontFamilyTokens" ) - let typographyRender = resolveRenderParameters( - template: configuration.templates?.typographies, + let typographyRenderParameters = resolveRenderParameters( + templates: configuration.templates?.typographies, nativeTemplateName: "TypographyTokens" ) - let boxShadowRender = resolveRenderParameters( - template: configuration.templates?.boxShadows, + let boxShadowRenderParameters = resolveRenderParameters( + templates: configuration.templates?.boxShadows, nativeTemplateName: "BoxShadowTokens" ) - let themeRender = resolveRenderParameters( - template: configuration.templates?.theme, + let themeRenderParameters = resolveRenderParameters( + templates: configuration.templates?.theme, nativeTemplateName: "Theme" ) @@ -140,12 +117,12 @@ final class DefaultTokensGenerationParametersResolver: TokensGenerationParameter return TokensGenerationParameters( file: file, tokens: TokensGenerationParameters.TokensParameters( - colorRender: colorRender, - baseColorRender: baseColorRender, - fontFamilyRender: fontFamilyRender, - typographyRender: typographyRender, - boxShadowRender: boxShadowRender, - themeRender: themeRender, + colorRenderParameters: colorRenderParameters, + baseColorRenderParameters: baseColorRenderParameters, + fontFamilyRenderParameters: fontFamilyRenderParameters, + typographyRenderParameters: typographyRenderParameters, + boxShadowRenderParameters: boxShadowRenderParameters, + themeRenderParameters: themeRenderParameters, spacingRenderParameters: spacingRenderParameters ) ) diff --git a/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift b/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift index 3ed6030..a77ef74 100644 --- a/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift +++ b/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift @@ -28,12 +28,12 @@ struct TokensTemplateConfiguration: Decodable { // MARK: - Instance Properties - let colors: Template? - let baseColors: Template? - let fontFamilies: Template? - let typographies: Template? - let boxShadows: Template? - let theme: Template? + let colors: [Template]? + let baseColors: [Template]? + let fontFamilies: [Template]? + let typographies: [Template]? + let boxShadows: [Template]? + let theme: [Template]? let spacing: [Template]? } diff --git a/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift b/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift index 27339f0..0ea77e6 100644 --- a/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift +++ b/Sources/FigmaGen/Models/Parameters/TokensGenerationParameters.swift @@ -8,12 +8,12 @@ struct TokensGenerationParameters { // MARK: - Instance Properties - let colorRender: RenderParameters? - let baseColorRender: RenderParameters? - let fontFamilyRender: RenderParameters? - let typographyRender: RenderParameters? - let boxShadowRender: RenderParameters? - let themeRender: RenderParameters? + let colorRenderParameters: [RenderParameters]? + let baseColorRenderParameters: [RenderParameters]? + let fontFamilyRenderParameters: [RenderParameters]? + let typographyRenderParameters: [RenderParameters]? + let boxShadowRenderParameters: [RenderParameters]? + let themeRenderParameters: [RenderParameters]? let spacingRenderParameters: [RenderParameters]? } From 5d0ae0be4fa8cf96bc427165cf31a5941e212063 Mon Sep 17 00:00:00 2001 From: "p.strelchenko" Date: Sat, 23 Sep 2023 21:36:15 +0600 Subject: [PATCH 3/7] =?UTF-8?q?[MOB-33633]=20=D0=92=D1=8B=D0=B4=D0=B5?= =?UTF-8?q?=D0=BB=D1=8F=D0=B5=D1=82=20=D0=BE=D0=B1=D1=89=D0=B8=D0=B9=20?= =?UTF-8?q?=D0=BF=D1=80=D0=BE=D1=82=D0=BE=D0=BA=D0=BE=D0=BB=20=D0=B3=D0=B5?= =?UTF-8?q?=D0=BD=D0=B5=D1=80=D0=B0=D1=82=D0=BE=D1=80=D0=BE=D0=B2=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=B2=D1=8B=D0=BD=D0=BE=D1=81=D0=B0=20=D0=BE?= =?UTF-8?q?=D0=B1=D1=89=D0=B5=D0=B3=D0=BE=20=D0=BA=D0=BE=D0=B4=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tokens/DefaultTokensGenerator.swift | 98 +++++++++---------- .../BaseColor/BaseColorTokensGenerator.swift | 5 +- .../Generators/BaseTokenGenerator.swift | 9 ++ .../BoxShadow/BoxShadowTokensGenerator.swift | 5 +- .../Color/ColorTokensGenerator.swift | 5 +- .../FontFamilyTokensGenerator.swift | 5 +- .../Spacing/SpacingTokensGenerator.swift | 5 +- .../Theme/ThemeTokensGenerator.swift | 5 +- .../TypographyTokensGenerator.swift | 5 +- 9 files changed, 62 insertions(+), 80 deletions(-) create mode 100644 Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift diff --git a/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift index 6f7181f..6e43976 100644 --- a/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/DefaultTokensGenerator.swift @@ -55,76 +55,70 @@ final class DefaultTokensGenerator: TokensGenerator { } private func generateSpacingTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let spacingRenderParameters = parameters.tokens.spacingRenderParameters { - for renderParameters in spacingRenderParameters { - try spacingTokensGenerator.generate( - renderParameters: renderParameters, - tokenValues: tokenValues - ) - } - } + try generateTokens( + spacingTokensGenerator, + renderParameters: parameters.tokens.spacingRenderParameters, + tokenValues: tokenValues + ) } private func generateThemeTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let themeRenderParameters = parameters.tokens.themeRenderParameters { - for renderParameters in themeRenderParameters { - try themeTokensGenerator.generate( - renderParameters: renderParameters, - tokenValues: tokenValues - ) - } - } + try generateTokens( + themeTokensGenerator, + renderParameters: parameters.tokens.themeRenderParameters, + tokenValues: tokenValues + ) } private func generateBoxShadowTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let boxShadowRenderParameters = parameters.tokens.boxShadowRenderParameters { - for renderParameters in boxShadowRenderParameters { - try boxShadowTokensGenerator.generate( - renderParameters: renderParameters, - tokenValues: tokenValues - ) - } - } + try generateTokens( + boxShadowTokensGenerator, + renderParameters: parameters.tokens.boxShadowRenderParameters, + tokenValues: tokenValues + ) } private func generateTypographyTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let typographyRenderParameters = parameters.tokens.typographyRenderParameters { - for renderParameters in typographyRenderParameters { - try typographyTokensGenerator.generate( - renderParameters: renderParameters, - tokenValues: tokenValues - ) - } - } + try generateTokens( + typographyTokensGenerator, + renderParameters: parameters.tokens.typographyRenderParameters, + tokenValues: tokenValues + ) } private func generateFontFamilyTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let fontFamilyRenderParameters = parameters.tokens.fontFamilyRenderParameters { - for renderParameters in fontFamilyRenderParameters { - try fontFamilyTokensGenerator.generate( - renderParameters: renderParameters, - tokenValues: tokenValues - ) - } - } + try generateTokens( + fontFamilyTokensGenerator, + renderParameters: parameters.tokens.fontFamilyRenderParameters, + tokenValues: tokenValues + ) } private func generateBaseColorsTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let baseColorRenderParameters = parameters.tokens.baseColorRenderParameters { - for renderParameters in baseColorRenderParameters { - try baseColorTokensGenerator.generate( - renderParameters: renderParameters, - tokenValues: tokenValues - ) - } - } + try generateTokens( + baseColorTokensGenerator, + renderParameters: parameters.tokens.baseColorRenderParameters, + tokenValues: tokenValues + ) } private func generateColorsTokens(parameters: TokensGenerationParameters, tokenValues: TokenValues) throws { - if let colorRenderParameters = parameters.tokens.colorRenderParameters { - for renderParameters in colorRenderParameters { - try colorTokensGenerator.generate( - renderParameters: renderParameters, + try generateTokens( + colorTokensGenerator, + renderParameters: parameters.tokens.colorRenderParameters, + tokenValues: tokenValues + ) + } + + private func generateTokens( + _ generator: BaseTokenGenerator, + renderParameters: [RenderParameters]?, + tokenValues: TokenValues + ) throws { + if let renderParametersList = renderParameters { + for params in renderParametersList { + try generator.generate( + renderParameters: params, tokenValues: tokenValues ) } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift index d87f17d..ef43c89 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift @@ -1,8 +1,5 @@ import Foundation -protocol BaseColorTokensGenerator { +protocol BaseColorTokensGenerator: BaseTokenGenerator { - // MARK: - Instance Methods - - func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift new file mode 100644 index 0000000..869bb19 --- /dev/null +++ b/Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift @@ -0,0 +1,9 @@ +import Foundation + +protocol BaseTokenGenerator { + + // MARK: - Instance Methods + + func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws + +} diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift index 4189834..8b92a8e 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift @@ -1,8 +1,5 @@ import Foundation -protocol BoxShadowTokensGenerator { +protocol BoxShadowTokensGenerator : BaseTokenGenerator { - // MARK: - Instance Methods - - func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift index 62156e2..65f0b5c 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift @@ -1,8 +1,5 @@ import Foundation -protocol ColorTokensGenerator { +protocol ColorTokensGenerator : BaseTokenGenerator { - // MARK: - Instance Methods - - func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift index d0ff0e2..44b30ca 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift @@ -1,8 +1,5 @@ import Foundation -protocol FontFamilyTokensGenerator { +protocol FontFamilyTokensGenerator : BaseTokenGenerator { - // MARK: - Instance Methods - - func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift index bbaae12..616ee74 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift @@ -1,8 +1,5 @@ import Foundation -protocol SpacingTokensGenerator { +protocol SpacingTokensGenerator : BaseTokenGenerator { - // MARK: - Instance Methods - - func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift index ceb9b2d..a3d4428 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift @@ -1,8 +1,5 @@ import Foundation -protocol ThemeTokensGenerator { +protocol ThemeTokensGenerator : BaseTokenGenerator { - // MARK: - Instance Methods - - func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift index 535addc..b723e4e 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift @@ -1,8 +1,5 @@ import Foundation -protocol TypographyTokensGenerator { +protocol TypographyTokensGenerator : BaseTokenGenerator { - // MARK: - Instance Methods - - func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws } From 1b6f3692af99706c8acddccb31121e41c296e0a9 Mon Sep 17 00:00:00 2001 From: "p.strelchenko" Date: Sat, 23 Sep 2023 22:06:32 +0600 Subject: [PATCH 4/7] =?UTF-8?q?[MOB-33633]=20=D0=98=D1=81=D0=BF=D1=80?= =?UTF-8?q?=D0=B0=D0=B2=D0=BB=D1=8F=D0=B5=D1=82=20=D0=BA=D0=BE=D0=BD=D1=84?= =?UTF-8?q?=D0=B8=D0=B3=D1=83=D1=80=D0=B0=D1=86=D0=B8=D0=BE=D0=BD=D0=BD?= =?UTF-8?q?=D1=8B=D0=B9=20=D1=84=D0=B0=D0=B9=D0=BB=20=D0=B4=D0=BB=D1=8F=20?= =?UTF-8?q?CI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Demo/.figmagen.yml | 48 +++++++++++++++++++++++----------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/Demo/.figmagen.yml b/Demo/.figmagen.yml index 72f7f09..1f9e8da 100644 --- a/Demo/.figmagen.yml +++ b/Demo/.figmagen.yml @@ -41,33 +41,33 @@ tokens: file: https://www.figma.com/file/W6dy4CFSZWUVpVnSzNZIxA/FigmaGen-Tokens-Demo templates: colors: - destination: FigmaGenDemo/Generated/ColorTokens.swift - templateOptions: - publicAccess: true + - destination: FigmaGenDemo/Generated/ColorTokens.swift + templateOptions: + publicAccess: true baseColors: - destination: FigmaGenDemo/Generated/BaseColorTokens.swift - templateOptions: - publicAccess: true + - destination: FigmaGenDemo/Generated/BaseColorTokens.swift + templateOptions: + publicAccess: true fontFamilies: - destination: FigmaGenDemo/Generated/FontFamilyTokens.swift - templateOptions: - publicAccess: true + - destination: FigmaGenDemo/Generated/FontFamilyTokens.swift + templateOptions: + publicAccess: true typographies: - destination: FigmaGenDemo/Generated/TypographyTokens.swift - templateOptions: - publicAccess: true - styleTypeName: Typography + - destination: FigmaGenDemo/Generated/TypographyTokens.swift + templateOptions: + publicAccess: true + styleTypeName: Typography boxShadows: - destination: FigmaGenDemo/Generated/BoxShadowTokens.swift - templateOptions: - publicAccess: true - shadowTypeName: ShadowToken + - destination: FigmaGenDemo/Generated/BoxShadowTokens.swift + templateOptions: + publicAccess: true + shadowTypeName: ShadowToken spacing: - destination: FigmaGenDemo/Generated/SpacingTokens.swift - templateOptions: - publicAccess: true + - destination: FigmaGenDemo/Generated/SpacingTokens.swift + templateOptions: + publicAccess: true theme: - destination: FigmaGenDemo/Generated/Theme.swift - templateOptions: - publicAccess: true - shadowTypeName: ShadowToken + - destination: FigmaGenDemo/Generated/Theme.swift + templateOptions: + publicAccess: true + shadowTypeName: ShadowToken From 8ef18ba7067229f71e471109a62602d12c9baff0 Mon Sep 17 00:00:00 2001 From: "p.strelchenko" Date: Sat, 23 Sep 2023 22:49:45 +0600 Subject: [PATCH 5/7] =?UTF-8?q?[MOB-33633]=20=D0=98=D1=81=D0=BF=D1=80?= =?UTF-8?q?=D0=B0=D0=B2=D0=BB=D1=8F=D0=B5=D1=82=20=D0=B7=D0=B0=D0=BC=D0=B5?= =?UTF-8?q?=D1=87=D0=B0=D0=BD=D0=B8=D1=8F=20danger?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift | 1 - .../Generators/Tokens/Generators/BaseTokenGenerator.swift | 1 - .../Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift | 3 +-- .../Tokens/Generators/Color/ColorTokensGenerator.swift | 3 +-- .../Generators/FontFamily/FontFamilyTokensGenerator.swift | 3 +-- .../Tokens/Generators/Spacing/SpacingTokensGenerator.swift | 3 +-- .../Tokens/Generators/Theme/ThemeTokensGenerator.swift | 3 +-- .../Generators/Typography/TypographyTokensGenerator.swift | 3 +-- 8 files changed, 6 insertions(+), 14 deletions(-) diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift index ef43c89..abc6e1a 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/BaseColor/BaseColorTokensGenerator.swift @@ -1,5 +1,4 @@ import Foundation protocol BaseColorTokensGenerator: BaseTokenGenerator { - } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift index 869bb19..78792b3 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/BaseTokenGenerator.swift @@ -5,5 +5,4 @@ protocol BaseTokenGenerator { // MARK: - Instance Methods func generate(renderParameters: RenderParameters, tokenValues: TokenValues) throws - } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift index 8b92a8e..3ec3e11 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/BoxShadow/BoxShadowTokensGenerator.swift @@ -1,5 +1,4 @@ import Foundation -protocol BoxShadowTokensGenerator : BaseTokenGenerator { - +protocol BoxShadowTokensGenerator: BaseTokenGenerator { } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift index 65f0b5c..790b901 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Color/ColorTokensGenerator.swift @@ -1,5 +1,4 @@ import Foundation -protocol ColorTokensGenerator : BaseTokenGenerator { - +protocol ColorTokensGenerator: BaseTokenGenerator { } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift index 44b30ca..7991777 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/FontFamily/FontFamilyTokensGenerator.swift @@ -1,5 +1,4 @@ import Foundation -protocol FontFamilyTokensGenerator : BaseTokenGenerator { - +protocol FontFamilyTokensGenerator: BaseTokenGenerator { } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift index 616ee74..6a8ebed 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Spacing/SpacingTokensGenerator.swift @@ -1,5 +1,4 @@ import Foundation -protocol SpacingTokensGenerator : BaseTokenGenerator { - +protocol SpacingTokensGenerator: BaseTokenGenerator { } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift index a3d4428..0bdc265 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Theme/ThemeTokensGenerator.swift @@ -1,5 +1,4 @@ import Foundation -protocol ThemeTokensGenerator : BaseTokenGenerator { - +protocol ThemeTokensGenerator: BaseTokenGenerator { } diff --git a/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift b/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift index b723e4e..7d1f55d 100644 --- a/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift +++ b/Sources/FigmaGen/Generators/Tokens/Generators/Typography/TypographyTokensGenerator.swift @@ -1,5 +1,4 @@ import Foundation -protocol TypographyTokensGenerator : BaseTokenGenerator { - +protocol TypographyTokensGenerator: BaseTokenGenerator { } From 8fb3a43ae0346a266a2db474d483069c50e18875 Mon Sep 17 00:00:00 2001 From: Timur Shafigullin Date: Mon, 25 Sep 2023 17:05:45 +0900 Subject: [PATCH 6/7] =?UTF-8?q?=D0=9F=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=B3=D0=B5=D0=BD=D0=B5=D1=80=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D0=B8=20=D1=82=D0=BE=D0=BA=D0=B5=D0=BD=D0=BE=D0=B2=20=D1=81=20?= =?UTF-8?q?=D0=BE=D0=B4=D0=BD=D0=B8=D0=BC=20destination?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Demo/.figmagen.yml | 42 ++++++------- .../Tokens/TokensTemplateConfiguration.swift | 60 ++++++++++++++++++- 2 files changed, 78 insertions(+), 24 deletions(-) diff --git a/Demo/.figmagen.yml b/Demo/.figmagen.yml index 1f9e8da..ecf3b1c 100644 --- a/Demo/.figmagen.yml +++ b/Demo/.figmagen.yml @@ -45,29 +45,29 @@ tokens: templateOptions: publicAccess: true baseColors: - - destination: FigmaGenDemo/Generated/BaseColorTokens.swift - templateOptions: - publicAccess: true + destination: FigmaGenDemo/Generated/BaseColorTokens.swift + templateOptions: + publicAccess: true fontFamilies: - - destination: FigmaGenDemo/Generated/FontFamilyTokens.swift - templateOptions: - publicAccess: true + destination: FigmaGenDemo/Generated/FontFamilyTokens.swift + templateOptions: + publicAccess: true typographies: - - destination: FigmaGenDemo/Generated/TypographyTokens.swift - templateOptions: - publicAccess: true - styleTypeName: Typography + destination: FigmaGenDemo/Generated/TypographyTokens.swift + templateOptions: + publicAccess: true + styleTypeName: Typography boxShadows: - - destination: FigmaGenDemo/Generated/BoxShadowTokens.swift - templateOptions: - publicAccess: true - shadowTypeName: ShadowToken + destination: FigmaGenDemo/Generated/BoxShadowTokens.swift + templateOptions: + publicAccess: true + shadowTypeName: ShadowToken spacing: - - destination: FigmaGenDemo/Generated/SpacingTokens.swift - templateOptions: - publicAccess: true + destination: FigmaGenDemo/Generated/SpacingTokens.swift + templateOptions: + publicAccess: true theme: - - destination: FigmaGenDemo/Generated/Theme.swift - templateOptions: - publicAccess: true - shadowTypeName: ShadowToken + destination: FigmaGenDemo/Generated/Theme.swift + templateOptions: + publicAccess: true + shadowTypeName: ShadowToken diff --git a/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift b/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift index a77ef74..3c3bc8a 100644 --- a/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift +++ b/Sources/FigmaGen/Models/Configuration/Tokens/TokensTemplateConfiguration.swift @@ -1,11 +1,11 @@ import Foundation import FigmaGenTools -struct TokensTemplateConfiguration: Decodable { +struct TokensTemplateConfiguration { // MARK: - Nested Types - struct Template: Decodable { + struct Template { // MARK: - Instance Properties @@ -37,7 +37,61 @@ struct TokensTemplateConfiguration: Decodable { let spacing: [Template]? } -extension TokensTemplateConfiguration.Template { +// MARK: - Decodable + +extension TokensTemplateConfiguration: Decodable { + + // MARK: - Nested Types + + private enum CodingKeys: String, CodingKey { + case colors + case baseColors + case fontFamilies + case typographies + case boxShadows + case theme + case spacing + } + + private struct TemplateWrapper: Decodable { + + // MARK: - Instance Properties + + let templates: [Template]? + + // MARK: - Initializers + + init(from decoder: Decoder) throws { + let container = try decoder.singleValueContainer() + + if container.decodeNil() { + self.templates = nil + } else if let singleValue = try? container.decode(Template.self) { + self.templates = [singleValue] + } else { + self.templates = try container.decode([Template].self) + } + } + } + + // MARK: - Initializers + + init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + self.colors = try container.decode(TemplateWrapper.self, forKey: .colors).templates + self.baseColors = try container.decode(TemplateWrapper.self, forKey: .baseColors).templates + self.fontFamilies = try container.decode(TemplateWrapper.self, forKey: .fontFamilies).templates + self.typographies = try container.decode(TemplateWrapper.self, forKey: .typographies).templates + self.boxShadows = try container.decode(TemplateWrapper.self, forKey: .boxShadows).templates + self.theme = try container.decode(TemplateWrapper.self, forKey: .theme).templates + self.spacing = try container.decode(TemplateWrapper.self, forKey: .spacing).templates + } +} + +// MARK: - + +extension TokensTemplateConfiguration.Template: Decodable { // MARK: - Nested Types From f27de6d11e752156f19c443e64c84e2f2e60465c Mon Sep 17 00:00:00 2001 From: Timur Shafigullin Date: Mon, 25 Sep 2023 17:44:53 +0900 Subject: [PATCH 7/7] =?UTF-8?q?=D0=93=D0=B5=D0=BD=D0=B5=D1=80=D0=B0=D1=86?= =?UTF-8?q?=D0=B8=D1=8F=20=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20demo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Generated/Icon/Cloud.imageset/Contents.json | 3 +++ .../Images.xcassets/Generated/Icon/Geo.imageset/Contents.json | 3 +++ .../Generated/Icon/Phone.imageset/Contents.json | 3 +++ .../Generated/Icon/Share.imageset/Contents.json | 3 +++ .../Generated/Icon/Snapchat.imageset/Contents.json | 3 +++ .../Images.xcassets/Generated/Icon/Star.imageset/Contents.json | 3 +++ .../Generated/Icon/Telegram.imageset/Contents.json | 3 +++ .../Generated/Icon/Viber.imageset/Contents.json | 3 +++ .../Generated/Icon/WeChat.imageset/Contents.json | 3 +++ .../Generated/Icon/WhatsApp.imageset/Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../InterfaceEssentialFacebookOutlined.imageset/Contents.json | 3 +++ .../Contents.json | 3 +++ .../InterfaceEssentialFigmaStyleFilled.imageset/Contents.json | 3 +++ .../Contents.json | 3 +++ .../InterfaceEssentialGoogleStyleFilled.imageset/Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ .../Contents.json | 3 +++ 26 files changed, 78 insertions(+) diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Cloud.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Cloud.imageset/Contents.json index 56d11e7..540d7c3 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Cloud.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Cloud.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Geo.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Geo.imageset/Contents.json index b1aeea3..870c4d1 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Geo.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Geo.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Phone.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Phone.imageset/Contents.json index 4776c66..75988d7 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Phone.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Phone.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Share.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Share.imageset/Contents.json index c932d8e..da64a08 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Share.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Share.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Snapchat.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Snapchat.imageset/Contents.json index cf85f0a..9de5ea2 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Snapchat.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Snapchat.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Star.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Star.imageset/Contents.json index a2ba259..55e412b 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Star.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Star.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Telegram.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Telegram.imageset/Contents.json index b95934a..601eec2 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Telegram.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Telegram.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Viber.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Viber.imageset/Contents.json index 131074c..ea5af11 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Viber.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/Viber.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WeChat.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WeChat.imageset/Contents.json index 582d0a8..94bced4 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WeChat.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WeChat.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WhatsApp.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WhatsApp.imageset/Contents.json index 7a0faa3..6fefb11 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WhatsApp.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Icon/WhatsApp.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleFilled.imageset/Contents.json index 87ec017..010ab1c 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleOutlined.imageset/Contents.json index 4f4d7d1..a411805 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialBehance/InterfaceEssentialBehanceStyleOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleFilled.imageset/Contents.json index e4379f4..f76e387 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleOutlined.imageset/Contents.json index 4081e62..18ec5d9 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialDribbble/InterfaceEssentialDribbbleStyleOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookOutlined.imageset/Contents.json index ab37e18..64c430a 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookStyleFilled.imageset/Contents.json index aacfea7..7f55f7a 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFacebook/InterfaceEssentialFacebookStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleFilled.imageset/Contents.json index e145e59..a439fee 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleOutlined.imageset/Contents.json index 059545d..30947c8 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialFigma/InterfaceEssentialFigmaStyleOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleFilled.imageset/Contents.json index f12fa30..d193700 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleOutlined.imageset/Contents.json index b46a304..ababe39 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialGoogle/InterfaceEssentialGoogleStyleOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleFilled.imageset/Contents.json index b7adb20..3ad0337 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleOutlined.imageset/Contents.json index 6275b00..e9f94ae 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialInstagram/InterfaceEssentialInstagramStyleOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleFilled.imageset/Contents.json index 989724a..600db9f 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleOutlined.imageset/Contents.json index fae92be..77be0a9 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialLinkedin/InterfaceEssentialLinkedinStyleOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleFilled.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleFilled.imageset/Contents.json index e9bc766..f1b277e 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleFilled.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleFilled.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file diff --git a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleOutlined.imageset/Contents.json b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleOutlined.imageset/Contents.json index 6819afd..b852483 100644 --- a/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleOutlined.imageset/Contents.json +++ b/Demo/FigmaGenDemo/Resources/Images.xcassets/Generated/Service/InterfaceEssentialTwitter/InterfaceEssentialTwitterStyleOutlined.imageset/Contents.json @@ -8,5 +8,8 @@ "info" : { "version" : 1, "author" : "FigmaGen" + }, + "properties" : { + "preserves-vector-representation" : false } } \ No newline at end of file