Open
Description
I'm trying to use the interactive setup to connect my design system to code connect. When asked for the URL of the Figma file with my design system library (step 3 in the guide), I get this error:
node:events:497
throw er; // Unhandled 'error' event
^
Error: write EPIPE
at WriteWrap.onWriteComplete [as oncomplete] (node:internal/stream_base_commons:94:16)
Emitted 'error' event on Socket instance at:
at emitErrorNT (node:internal/streams/destroy:169:8)
at emitErrorCloseNT (node:internal/streams/destroy:128:3)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
errno: -32,
code: 'EPIPE',
syscall: 'write'
}
Node.js v21.7.1
I tried running swift run -c release --verbose figma-swift
, which produced the following error:
error: binary operator '??' cannot be applied to operands of type '(output: String, changes: [Formatter.Change])?' and 'String'
225 |
226 | private func rewriteCodeBlockWithTemplate() -> String {
227 | let formatted = (try? SwiftFormat.format(code.trimmedDescriptionRemovingReturnStatement())) ?? code.trimmedDescriptionRemovingReturnStatement()
| `- error: binary operator '??' cannot be applied to operands of type '(output: String, changes: [Formatter.Change])?' and 'String'
228 | let tree = Parser.parse(source: formatted)
229 | let rewriter = MappedPropertyRewriter(
path/to/project/.build/checkouts/code-connect/swiftui/lib/CodeConnectTemplateWriter.swift:249:35: error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
247 | ).replaceNestedInstancePlaceholders(
248 | nestedInstanceCalls: rewriter.nestedInstanceCalls
249 | ).trimmingCharacters(in: .whitespacesAndNewlines)
| `- error: cannot infer contextual base in reference to member 'whitespacesAndNewlines'
250 |
251 | return "export default figma.swift`\(rewrittenCode)`"
- Code Connect CLI version: 1.1.2
- Operating system: OSX
figma.config for my SwiftUI project:
{
"codeConnect": {
"swiftPackagePath": "Package.swift",
"include": ["Sources/**/**/*"],
"exclude": ["markdown/**", "danger/**", "scripts/**", "SnapshotTests/**"]
}
}
My Package.swift setup:
import PackageDescription
let package = Package(
name: "ProjectName",
defaultLocalization: "en",
platforms: [
.macOS(.v14),
.iOS(.v16)
],
products: [
.library(name: "ProjectName", targets: ["ProjectTarget"])
],
dependencies: [
...
.package(url: "https://github.com/figma/code-connect", from: "1.0.0"),
],
targets: [
.target(name: "ProjectTarget",
dependencies: [
...
.product(name: "Figma", package: "code-connect")
],
path: "Path/To/Project"
)
]
)