mana-swift-core/Package.swift
Till JS df6f67ee45 v1.0.0 — initiale Extraktion aus memoro-native
ManaCore + ManaTokens als Swift-Package für alle nativen
mana-e.V.-Apps. Phase α aus mana/docs/MANA_SWIFT.md durch.

ManaCore:
- AuthClient gegen mana-auth (Login, Refresh, Status-Maschine)
- AuthenticatedTransport (URLSession + 401-Retry)
- ManaAppConfig-Protocol für App-injizierbare Konfig
- KeychainStore mit optionaler Shared-Access-Group
- JWT-Parser für lokale Expiry-Prüfung
- AuthError, CoreLog (interne OSLog-Logger)

ManaTokens:
- 12 Vereins-Tokens als dynamic Light/Dark Colors
- 5 Brand-Literale (mana-yellow, spectrum-orange, ...)
- Spacing, Radius, Typography aus mana/docs/THEMING.md

Tests: 12 Unit-Tests grün via swift test.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 19:13:31 +02:00

41 lines
1.1 KiB
Swift

// swift-tools-version: 6.0
import PackageDescription
let package = Package(
name: "mana-swift-core",
defaultLocalization: "de",
platforms: [
.iOS(.v18),
.macOS(.v15),
],
products: [
.library(name: "ManaCore", targets: ["ManaCore"]),
.library(name: "ManaTokens", targets: ["ManaTokens"]),
],
targets: [
.target(
name: "ManaCore",
path: "Sources/ManaCore",
swiftSettings: [
.enableExperimentalFeature("StrictConcurrency"),
]
),
.target(
name: "ManaTokens",
path: "Sources/ManaTokens",
swiftSettings: [
.enableExperimentalFeature("StrictConcurrency"),
]
),
.testTarget(
name: "ManaCoreTests",
dependencies: ["ManaCore"],
path: "Tests/ManaCoreTests"
),
.testTarget(
name: "ManaTokensTests",
dependencies: ["ManaTokens"],
path: "Tests/ManaTokensTests"
),
]
)