Files
clawdbot/apps/shared/OpenClawKit/Package.swift
2026-01-30 03:16:21 +01:00

62 lines
2.0 KiB
Swift

// swift-tools-version: 6.2
import PackageDescription
let package = Package(
name: "OpenClawKit",
platforms: [
.iOS(.v18),
.macOS(.v15),
],
products: [
.library(name: "OpenClawProtocol", targets: ["OpenClawProtocol"]),
.library(name: "OpenClawKit", targets: ["OpenClawKit"]),
.library(name: "OpenClawChatUI", targets: ["OpenClawChatUI"]),
],
dependencies: [
.package(url: "https://github.com/steipete/ElevenLabsKit", exact: "0.1.0"),
.package(url: "https://github.com/gonzalezreal/textual", exact: "0.3.1"),
],
targets: [
.target(
name: "OpenClawProtocol",
path: "Sources/OpenClawProtocol",
swiftSettings: [
.enableUpcomingFeature("StrictConcurrency"),
]),
.target(
name: "OpenClawKit",
dependencies: [
"OpenClawProtocol",
.product(name: "ElevenLabsKit", package: "ElevenLabsKit"),
],
path: "Sources/OpenClawKit",
resources: [
.process("Resources"),
],
swiftSettings: [
.enableUpcomingFeature("StrictConcurrency"),
]),
.target(
name: "OpenClawChatUI",
dependencies: [
"OpenClawKit",
.product(
name: "Textual",
package: "textual",
condition: .when(platforms: [.macOS, .iOS])),
],
path: "Sources/OpenClawChatUI",
swiftSettings: [
.enableUpcomingFeature("StrictConcurrency"),
]),
.testTarget(
name: "OpenClawKitTests",
dependencies: ["OpenClawKit", "OpenClawChatUI"],
path: "Tests/OpenClawKitTests",
swiftSettings: [
.enableUpcomingFeature("StrictConcurrency"),
.enableExperimentalFeature("SwiftTesting"),
]),
])