Skip to content

Commit ed066a0

Browse files
authored
Add StencilSwiftKit (#194)
* Add StencilSwiftKit * Register StencilSwiftExtensions for XcodeExporter * Register StencilSwiftExtensions for AndroidExporter
1 parent bfd3bd0 commit ed066a0

File tree

4 files changed

+57
-8
lines changed

4 files changed

+57
-8
lines changed

Package.resolved

Lines changed: 38 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Package.swift

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@ let package = Package(
1515
.package(url: "https://github.com/apple/swift-argument-parser", from: "1.0.0"),
1616
.package(url: "https://github.com/jpsim/Yams.git", from: "4.0.0"),
1717
.package(url: "https://github.com/apple/swift-log.git", from: "1.4.0"),
18-
.package(url: "https://github.com/stencilproject/Stencil.git", from: "0.14.2"),
18+
.package(url: "https://github.com/stencilproject/Stencil.git", from: "0.15.1"),
19+
.package(url: "https://github.com/SwiftGen/StencilSwiftKit", from: "2.10.1"),
1920
.package(url: "https://github.com/tuist/XcodeProj.git", from: "8.5.0"),
2021
.package(url: "https://github.com/pointfreeco/swift-custom-dump", from: "0.3.0")
2122
],
@@ -45,7 +46,10 @@ let package = Package(
4546
// Exports resources to Xcode project
4647
.target(
4748
name: "XcodeExport",
48-
dependencies: ["FigmaExportCore", .product(name: "Stencil", package: "Stencil")],
49+
dependencies: [
50+
"FigmaExportCore", .product(name: "Stencil", package: "Stencil"),
51+
"StencilSwiftKit"
52+
],
4953
resources: [
5054
.copy("Resources/")
5155
]
@@ -54,7 +58,7 @@ let package = Package(
5458
// Exports resources to Android project
5559
.target(
5660
name: "AndroidExport",
57-
dependencies: ["FigmaExportCore", "Stencil"],
61+
dependencies: ["FigmaExportCore", "Stencil", "StencilSwiftKit"],
5862
resources: [
5963
.copy("Resources/")
6064
]
@@ -72,7 +76,10 @@ let package = Package(
7276
),
7377
.testTarget(
7478
name: "XcodeExportTests",
75-
dependencies: ["XcodeExport", .product(name: "CustomDump", package: "swift-custom-dump")]
79+
dependencies: [
80+
"XcodeExport", .product(name: "CustomDump", package: "swift-custom-dump"),
81+
"StencilSwiftKit"
82+
]
7683
),
7784
.testTarget(
7885
name: "AndroidExportTests",

Sources/AndroidExport/AndroidExporter.swift

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import Stencil
22
import PathKit
33
import Foundation
44
import FigmaExportCore
5+
import StencilSwiftKit
56

67
public class AndroidExporter {
78

@@ -21,7 +22,9 @@ public class AndroidExporter {
2122
Path(Bundle.module.resourcePath!)
2223
])
2324
}
24-
return Environment(loader: loader)
25+
let ext = Extension()
26+
ext.registerStencilSwiftExtensions()
27+
return Environment(loader: loader, extensions: [ext])
2528
}
2629

2730
func makeFileContents(for string: String, directory: URL, file: URL) throws -> FileContents {

Sources/XcodeExport/XcodeExporterBase.swift

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import FigmaExportCore
22
import Foundation
33
import Stencil
44
import PathKit
5+
import StencilSwiftKit
56

67
public class XcodeExporterBase {
78

@@ -34,7 +35,9 @@ public class XcodeExporterBase {
3435
Path(Bundle.module.resourcePath!)
3536
])
3637
}
37-
return Environment(loader: loader)
38+
let ext = Extension()
39+
ext.registerStencilSwiftExtensions()
40+
return Environment(loader: loader, extensions: [ext])
3841
}
3942

4043
func makeFileContents(for string: String, url: URL) throws -> FileContents {

0 commit comments

Comments
 (0)