// swift-tools-version: 6.4 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDescription let package = Package( name: "NorgEditor", platforms: [ .iOS(.v18), .macOS(.v15), .visionOS(.v2), ], products: [ // Products define the executables and libraries a package produces, making them visible to other packages. .library( name: "NorgEditor", targets: ["NorgEditor"] ), ], dependencies: [ .package(url: "https://git.sr.ht/~rbdr/norgkit", from: "1.1.0"), .package(url: "https://git.sr.ht/~rbdr/norg-keyboard-toolbar", from: "1.1.0"), ], targets: [ // Targets are the basic building blocks of a package, defining a module or a test suite. // Targets can depend on other targets in this package and products from dependencies. .target( name: "NorgEditor", dependencies: [ .product(name: "NorgKit", package: "norgkit"), // UIKit-only input accessory; native macOS uses NSTextView with no // toolbar, so it's linked only where UIKit is available. .product( name: "NorgKeyboardToolbar", package: "norg-keyboard-toolbar", condition: .when(platforms: [.iOS, .visionOS, .macCatalyst]) ), ], swiftSettings: [ .enableUpcomingFeature("ApproachableConcurrency"), ], ), .testTarget( name: "NorgEditorTests", dependencies: ["NorgEditor"], swiftSettings: [ .enableUpcomingFeature("ApproachableConcurrency"), ], ), ], swiftLanguageModes: [.v6] )