feat(RES-57): Add visibility to control scope of generated code (#18)
All checks were successful
gitea-openium/resgen.swift/pipeline/head This commit looks good

Add visibility parameter: public, package, internal, private
Impacted command: analytics, colors, fonts, images, strings, tags

Reviewed-on: #18
This commit is contained in:
2025-07-21 16:56:05 +02:00
parent beca2c6b2b
commit 5ad219ae89
62 changed files with 1526 additions and 794 deletions

View File

@@ -21,10 +21,13 @@ final class FontExtensionGeneratorTests: XCTestCase {
]
// When
let extensionContent = FontExtensionGenerator.getExtensionContent(fontsNames: fontNames,
staticVar: false,
extensionName: "GenFonts",
isSwiftUI: false)
let extensionContent = FontExtensionGenerator.getExtensionContent(
fontsNames: fontNames,
staticVar: false,
extensionName: "GenFonts",
isSwiftUI: false,
visibility: .public
)
// Expect
let expect = """
@@ -34,18 +37,18 @@ final class FontExtensionGeneratorTests: XCTestCase {
extension GenFonts {
enum FontName: String {
public enum FontName: String {
case CircularStdRegular = "CircularStd-Regular"
case CircularStdBold = "CircularStd-Bold"
}
// MARK: - Getter
func CircularStdRegular(withSize size: CGFloat) -> UIFont {
public func CircularStdRegular(withSize size: CGFloat) -> UIFont {
UIFont(name: FontName.CircularStdRegular.rawValue, size: size)!
}
func CircularStdBold(withSize size: CGFloat) -> UIFont {
public func CircularStdBold(withSize size: CGFloat) -> UIFont {
UIFont(name: FontName.CircularStdBold.rawValue, size: size)!
}
@@ -64,10 +67,13 @@ final class FontExtensionGeneratorTests: XCTestCase {
]
// When
let extensionContent = FontExtensionGenerator.getExtensionContent(fontsNames: fontNames,
staticVar: false,
extensionName: "GenFonts",
isSwiftUI: true)
let extensionContent = FontExtensionGenerator.getExtensionContent(
fontsNames: fontNames,
staticVar: false,
extensionName: "GenFonts",
isSwiftUI: true,
visibility: .package
)
// Expect
let expect = """
@@ -77,18 +83,18 @@ final class FontExtensionGeneratorTests: XCTestCase {
extension GenFonts {
enum FontName: String {
package enum FontName: String {
case CircularStdRegular = "CircularStd-Regular"
case CircularStdBold = "CircularStd-Bold"
}
// MARK: - Getter
func CircularStdRegular(withSize size: CGFloat) -> Font {
package func CircularStdRegular(withSize size: CGFloat) -> Font {
Font.custom(FontName.CircularStdRegular.rawValue, size: size)
}
func CircularStdBold(withSize size: CGFloat) -> Font {
package func CircularStdBold(withSize size: CGFloat) -> Font {
Font.custom(FontName.CircularStdBold.rawValue, size: size)
}