Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions Package.resolved

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 15 additions & 5 deletions Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,20 @@

import PackageDescription

let isLocalDevelopment = false
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

開発中にたびたび書き換えが生じて大変なので、仕組みを入れておく


let dependencies: [Package.Dependency] = if isLocalDevelopment {
[
.package(path: "../SwiftTypeReader"),
.package(path: "../TypeScriptAST"),
]
} else {
[
.package(url: "https://github.com/omochi/SwiftTypeReader.git", from: "3.2.0"),
.package(url: "https://github.com/omochi/TypeScriptAST.git", from: "2.1.0"),
]
}

let package = Package(
name: "CodableToTypeScript",
platforms: [.macOS(.v13)],
Expand All @@ -11,11 +25,7 @@ let package = Package(
targets: ["CodableToTypeScript"]
)
],
dependencies: [
.package(url: "https://github.com/omochi/SwiftTypeReader.git", from: "3.0.0"),
// .package(path: "../SwiftTypeReader"),
.package(url: "https://github.com/omochi/TypeScriptAST.git", from: "2.0.1"),
],
dependencies: dependencies,
targets: [
.target(
name: "TestUtils"
Expand Down
8 changes: 6 additions & 2 deletions Sources/CodableToTypeScript/Generator/PackageGenerator.swift
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ public final class PackageGenerator {
symbols: SymbolTable,
importFileExtension: ImportFileExtension,
outputDirectory: URL,
typeScriptExtension: String = "ts"
typeScriptExtension: String = "ts",
pathPrefixReplacements: PathPrefixReplacements = []
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

これが追加された

) {
self.context = context
self.fileManager = fileManager
Expand All @@ -26,6 +27,7 @@ public final class PackageGenerator {
isDirectory: true, relativeTo: outputDirectory.baseURL
)
self.typeScriptExtension = typeScriptExtension
self.pathPrefixReplacements = pathPrefixReplacements
}

public let context: SwiftTypeReader.Context
Expand All @@ -35,6 +37,7 @@ public final class PackageGenerator {
public let importFileExtension: ImportFileExtension
public let outputDirectory: URL
public let typeScriptExtension: String
public let pathPrefixReplacements: PathPrefixReplacements
@available(*, deprecated, renamed: "didConvertSource")
public var didGenerateEntry: ((SourceFile, PackageEntry) throws -> Void)? {
get { didConvertSource }
Expand Down Expand Up @@ -111,7 +114,8 @@ public final class PackageGenerator {
let imports = try tsSource.buildAutoImportDecls(
from: entry.file,
symbolTable: allSymbols,
fileExtension: importFileExtension
fileExtension: importFileExtension,
pathPrefixReplacements: pathPrefixReplacements
)
tsSource.replaceImportDecls(imports)
for importedSymbolName in imports.flatMap(\.names) {
Expand Down