Build Information
Successful build of ThemeKit, reference main (e30f50), with Swift 6.4 for macOS (SPM) on 10 Oct 2026 11:37:02 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64Build Log
[0;36m144 |[0;0m }
[0;36m145 |[0;0m }
[0;36m146 |[0;0m func bookingRef(_ text: String?) -> Self { copy { $0.bookingRef = text } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'bookingRef' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m147 |[0;0m /// Localise the "Passenger" caption (English default).
[0;36m148 |[0;0m func passengerLabel(_ text: String) -> Self { copy { $0.passengerLabelOverride = text } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:517:10: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'gate(_:seat:boarding:terminal:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
[0;36m517 |[0;0m .gate("A12", seat: "14C", boarding: "08:40", terminal: "1")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'gate(_:seat:boarding:terminal:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m518 |[0;0m .bookingRef("PNR: X7K2QF").barcode("TK2434ISTLHR14C")
[0;36m519 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:135:10: [1;39mnote: [1;39mcalls to instance method 'gate(_:seat:boarding:terminal:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m133 |[0;0m }
[0;36m134 |[0;0m /// Convenience for the common gate / seat / boarding trio.
[0;36m135 |[0;0m func gate(_ gate: String? = nil, seat: String? = nil, boarding: String? = nil, terminal: String? = nil) -> Self {
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'gate(_:seat:boarding:terminal:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m136 |[0;0m copy {
[0;36m137 |[0;0m $0.gateValue = gate; $0.seatValue = seat; $0.boardingValue = boarding; $0.terminalValue = terminal
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:516:93: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'date' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'date' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m517 |[0;0m .gate("A12", seat: "14C", boarding: "08:40", terminal: "1")
[0;36m518 |[0;0m .bookingRef("PNR: X7K2QF").barcode("TK2434ISTLHR14C")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:124:10: [1;39mnote: [1;39mcalls to instance method 'date' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m122 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m123 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
[0;36m124 |[0;0m func date(_ text: String?) -> Self { copy { $0.date = text } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'date' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m125 |[0;0m /// The labelled detail cells (gate / seat / boarding / terminal…), in order.
[0;36m126 |[0;0m /// Clears the typed ``BoardingPassConfiguration/gate``/``BoardingPassConfiguration/seat``
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:516:49: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'times(departure:arrival:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'times(departure:arrival:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m517 |[0;0m .gate("A12", seat: "14C", boarding: "08:40", terminal: "1")
[0;36m518 |[0;0m .bookingRef("PNR: X7K2QF").barcode("TK2434ISTLHR14C")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:123:10: [1;39mnote: [1;39mcalls to instance method 'times(departure:arrival:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
[0;36m122 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m123 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'times(departure:arrival:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m124 |[0;0m func date(_ text: String?) -> Self { copy { $0.date = text } }
[0;36m125 |[0;0m /// The labelled detail cells (gate / seat / boarding / terminal…), in order.
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:516:10: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'cities(from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'cities(from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m517 |[0;0m .gate("A12", seat: "14C", boarding: "08:40", terminal: "1")
[0;36m518 |[0;0m .bookingRef("PNR: X7K2QF").barcode("TK2434ISTLHR14C")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:122:10: [1;39mnote: [1;39mcalls to instance method 'cities(from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m120 |[0;0m func flightNo(_ text: String?) -> Self { copy { $0.flightNo = text } }
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
[0;36m122 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'cities(from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m123 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
[0;36m124 |[0;0m func date(_ text: String?) -> Self { copy { $0.date = text } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:515:53: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'cabin' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'cabin' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
[0;36m517 |[0;0m .gate("A12", seat: "14C", boarding: "08:40", terminal: "1")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:121:10: [1;39mnote: [1;39mcalls to instance method 'cabin' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m119 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m120 |[0;0m func flightNo(_ text: String?) -> Self { copy { $0.flightNo = text } }
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'cabin' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m122 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m123 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:515:33: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'flightNo' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'flightNo' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
[0;36m517 |[0;0m .gate("A12", seat: "14C", boarding: "08:40", terminal: "1")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:120:10: [1;39mnote: [1;39mcalls to instance method 'flightNo' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m118 |[0;0m public extension BoardingPass {
[0;36m119 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m120 |[0;0m func flightNo(_ text: String?) -> Self { copy { $0.flightNo = text } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'flightNo' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
[0;36m122 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:515:10: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'airline(_:icon:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'airline(_:icon:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
[0;36m517 |[0;0m .gate("A12", seat: "14C", boarding: "08:40", terminal: "1")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:119:10: [1;39mnote: [1;39mcalls to instance method 'airline(_:icon:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m117 |[0;0m
[0;36m118 |[0;0m public extension BoardingPass {
[0;36m119 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'airline(_:icon:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m120 |[0;0m func flightNo(_ text: String?) -> Self { copy { $0.flightNo = text } }
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:514:5: [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(passenger:from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m511 |[0;0m // MARK: - Previews
[0;36m512 |[0;0m
[0;36m513 |[0;0m private func sampleBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'sampleBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m514 |[0;0m BoardingPass(passenger: "Jordan Lee", from: "IST", to: "LHR")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(passenger:from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m515 |[0;0m .airline("Anadolu Air").flightNo("TK 2434").cabin("Economy")
[0;36m516 |[0;0m .cities(from: "Istanbul", to: "London").times(departure: "09:20", arrival: "12:15").date("18 Jul")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:89:12: [1;39mnote: [1;39mcalls to initializer 'init(passenger:from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m87 |[0;0m private var customStub: AnyView?
[0;36m88 |[0;0m
[0;36m89 |[0;0m public init(passenger: String, from: String, to: String) { // R1
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to initializer 'init(passenger:from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m90 |[0;0m self.passenger = passenger
[0;36m91 |[0;0m self.from = from
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:526:31: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'codeSize' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m519 |[0;0m }
[0;36m520 |[0;0m
[0;36m521 |[0;0m private func denseBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'denseBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m522 |[0;0m BoardingPass(passenger: "Priya Nair", from: "AMS", to: "CDG")
[0;36m523 |[0;0m .airline("Blue Wings").flightNo("BW 810")
[0;36m524 |[0;0m .times(departure: "18:05", arrival: "19:20")
[0;36m525 |[0;0m .details([("Terminal", "2"), ("Gate", "B4"), ("Boarding", "17:35"), ("Seat", "22A"), ("Zone", "1")])
[0;36m526 |[0;0m .qr("BW810AMSCDG22A").codeSize(.large)
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'codeSize' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m527 |[0;0m }
[0;36m528 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:162:10: [1;39mnote: [1;39mcalls to instance method 'codeSize' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m160 |[0;0m func header<V: View>(@ViewBuilder _ content: () -> V) -> Self { copy { $0.headerSlot = AnyView(content()) } }
[0;36m161 |[0;0m /// Footprint of the stub's QR / barcode (default `.medium` — the classic sizes).
[0;36m162 |[0;0m func codeSize(_ s: CodeSize) -> Self { copy { $0.codeSize = s } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'codeSize' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m163 |[0;0m /// Detail-cell arrangement: one `.row` (default) or a two-column `.grid` — honoured by `.classic`.
[0;36m164 |[0;0m func detailsLayout(_ l: DetailsLayout) -> Self { copy { $0.detailsLayout = l } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:526:10: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'qr' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m519 |[0;0m }
[0;36m520 |[0;0m
[0;36m521 |[0;0m private func denseBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'denseBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m522 |[0;0m BoardingPass(passenger: "Priya Nair", from: "AMS", to: "CDG")
[0;36m523 |[0;0m .airline("Blue Wings").flightNo("BW 810")
[0;36m524 |[0;0m .times(departure: "18:05", arrival: "19:20")
[0;36m525 |[0;0m .details([("Terminal", "2"), ("Gate", "B4"), ("Boarding", "17:35"), ("Seat", "22A"), ("Zone", "1")])
[0;36m526 |[0;0m .qr("BW810AMSCDG22A").codeSize(.large)
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'qr' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m527 |[0;0m }
[0;36m528 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:152:10: [1;39mnote: [1;39mcalls to instance method 'qr' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m150 |[0;0m func barcode(_ value: String?) -> Self { copy { $0.barcodeValue = value; $0.qrValue = nil } }
[0;36m151 |[0;0m /// A QR code in the stub (instead of a barcode).
[0;36m152 |[0;0m func qr(_ value: String?) -> Self { copy { $0.qrValue = value; $0.barcodeValue = nil } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'qr' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m153 |[0;0m func accent(_ color: SemanticColor?) -> Self { copy { $0.accent = color } }
[0;36m154 |[0;0m func surface(_ key: Theme.BackgroundColorKey) -> Self { copy { $0.surfaceKey = key } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:525:10: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'details' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m519 |[0;0m }
[0;36m520 |[0;0m
[0;36m521 |[0;0m private func denseBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'denseBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m522 |[0;0m BoardingPass(passenger: "Priya Nair", from: "AMS", to: "CDG")
[0;36m523 |[0;0m .airline("Blue Wings").flightNo("BW 810")
[0;36m524 |[0;0m .times(departure: "18:05", arrival: "19:20")
[0;36m525 |[0;0m .details([("Terminal", "2"), ("Gate", "B4"), ("Boarding", "17:35"), ("Seat", "22A"), ("Zone", "1")])
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'details' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m526 |[0;0m .qr("BW810AMSCDG22A").codeSize(.large)
[0;36m527 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:128:10: [1;39mnote: [1;39mcalls to instance method 'details' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m126 |[0;0m /// Clears the typed ``BoardingPassConfiguration/gate``/``BoardingPassConfiguration/seat``
[0;36m127 |[0;0m /// mirrors — call `.gate(...)` instead when a style needs the typed fields.
[0;36m128 |[0;0m func details(_ items: [(String, String)]) -> Self {
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'details' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m129 |[0;0m copy {
[0;36m130 |[0;0m $0.details = items
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:524:10: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'times(departure:arrival:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m519 |[0;0m }
[0;36m520 |[0;0m
[0;36m521 |[0;0m private func denseBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'denseBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m522 |[0;0m BoardingPass(passenger: "Priya Nair", from: "AMS", to: "CDG")
[0;36m523 |[0;0m .airline("Blue Wings").flightNo("BW 810")
[0;36m524 |[0;0m .times(departure: "18:05", arrival: "19:20")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'times(departure:arrival:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m525 |[0;0m .details([("Terminal", "2"), ("Gate", "B4"), ("Boarding", "17:35"), ("Seat", "22A"), ("Zone", "1")])
[0;36m526 |[0;0m .qr("BW810AMSCDG22A").codeSize(.large)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:123:10: [1;39mnote: [1;39mcalls to instance method 'times(departure:arrival:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
[0;36m122 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m123 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'times(departure:arrival:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m124 |[0;0m func date(_ text: String?) -> Self { copy { $0.date = text } }
[0;36m125 |[0;0m /// The labelled detail cells (gate / seat / boarding / terminal…), in order.
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:523:32: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'flightNo' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m519 |[0;0m }
[0;36m520 |[0;0m
[0;36m521 |[0;0m private func denseBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'denseBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m522 |[0;0m BoardingPass(passenger: "Priya Nair", from: "AMS", to: "CDG")
[0;36m523 |[0;0m .airline("Blue Wings").flightNo("BW 810")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'flightNo' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m524 |[0;0m .times(departure: "18:05", arrival: "19:20")
[0;36m525 |[0;0m .details([("Terminal", "2"), ("Gate", "B4"), ("Boarding", "17:35"), ("Seat", "22A"), ("Zone", "1")])
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:120:10: [1;39mnote: [1;39mcalls to instance method 'flightNo' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m118 |[0;0m public extension BoardingPass {
[0;36m119 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m120 |[0;0m func flightNo(_ text: String?) -> Self { copy { $0.flightNo = text } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'flightNo' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
[0;36m122 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:523:10: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'airline(_:icon:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m519 |[0;0m }
[0;36m520 |[0;0m
[0;36m521 |[0;0m private func denseBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'denseBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m522 |[0;0m BoardingPass(passenger: "Priya Nair", from: "AMS", to: "CDG")
[0;36m523 |[0;0m .airline("Blue Wings").flightNo("BW 810")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'airline(_:icon:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m524 |[0;0m .times(departure: "18:05", arrival: "19:20")
[0;36m525 |[0;0m .details([("Terminal", "2"), ("Gate", "B4"), ("Boarding", "17:35"), ("Seat", "22A"), ("Zone", "1")])
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:119:10: [1;39mnote: [1;39mcalls to instance method 'airline(_:icon:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m117 |[0;0m
[0;36m118 |[0;0m public extension BoardingPass {
[0;36m119 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'airline(_:icon:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m120 |[0;0m func flightNo(_ text: String?) -> Self { copy { $0.flightNo = text } }
[0;36m121 |[0;0m func cabin(_ text: String?) -> Self { copy { $0.cabin = text } }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPassStyle.swift:522:5: [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(passenger:from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m519 |[0;0m }
[0;36m520 |[0;0m
[0;36m521 |[0;0m private func denseBoardingPass() -> BoardingPass {
[0;36m|[0;0m `- [1;39mnote: [1;39madd '@MainActor' to make global function 'denseBoardingPass()' part of global actor 'MainActor'[0;0m
[0;36m522 |[0;0m BoardingPass(passenger: "Priya Nair", from: "AMS", to: "CDG")
[0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(passenger:from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m523 |[0;0m .airline("Blue Wings").flightNo("BW 810")
[0;36m524 |[0;0m .times(departure: "18:05", arrival: "19:20")
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/BoardingPass.swift:89:12: [1;39mnote: [1;39mcalls to initializer 'init(passenger:from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m87 |[0;0m private var customStub: AnyView?
[0;36m88 |[0;0m
[0;36m89 |[0;0m public init(passenger: String, from: String, to: String) { // R1
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to initializer 'init(passenger:from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m90 |[0;0m self.passenger = passenger
[0;36m91 |[0;0m self.from = from
[#ActorIsolatedCall]: <https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call>
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/LayoverRow.swift:139:71: [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m137 |[0;0m }
[0;36m138 |[0;0m PreviewCase("Deprecated .variant(_:) still works") {
[0;36m139 |[0;0m LayoverRow(duration: "2h 15m", airport: "Istanbul (IST)").variant(.banner).accent(.success)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m140 |[0;0m }
[0;36m141 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRow.swift:237:43: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m235 |[0;0m .padding()
[0;36m236 |[0;0m .frame(maxWidth: .infinity)
[0;36m237 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m238 |[0;0m }
[0;36m239 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRowStyle.swift:428:51: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m426 |[0;0m .surface(.bgWhite).onSearch { }
[0;36m427 |[0;0m .padding(Theme.SpacingKey.sm.value)
[0;36m428 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m429 |[0;0m .recentSearchRowStyle(.pill)
[0;36m430 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:120:20: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'PaymentMethodSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m34 |[0;0m /// when optional data is absent (no instalments configured → no inline picker,
[0;36m35 |[0;0m /// no badge for an option → no chip).
[0;36m36 |[0;0m public struct PaymentMethodSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'PaymentMethodSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m37 |[0;0m /// The payment methods to choose among, in caller order.
[0;36m38 |[0;0m public let options: [PaymentMethodOption]
[0;36m:[0;0m
[0;36m118 |[0;0m public func isSelectedBinding(_ id: String) -> Binding<Bool> {
[0;36m119 |[0;0m Binding(
[0;36m120 |[0;0m get: { selectedID == id },
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'PaymentMethodSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m121 |[0;0m set: { if $0 { select(id) } }
[0;36m122 |[0;0m )
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:121:28: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'PaymentMethodSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m34 |[0;0m /// when optional data is absent (no instalments configured → no inline picker,
[0;36m35 |[0;0m /// no badge for an option → no chip).
[0;36m36 |[0;0m public struct PaymentMethodSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'PaymentMethodSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m37 |[0;0m /// The payment methods to choose among, in caller order.
[0;36m38 |[0;0m public let options: [PaymentMethodOption]
[0;36m:[0;0m
[0;36m119 |[0;0m Binding(
[0;36m120 |[0;0m get: { selectedID == id },
[0;36m121 |[0;0m set: { if $0 { select(id) } }
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'PaymentMethodSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m122 |[0;0m )
[0;36m123 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:231:26: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m229 |[0;0m Icon(systemName: option.systemImage)
[0;36m230 |[0;0m .size(.sm)
[0;36m231 |[0;0m .color(isOn ? configuration.accentBase(theme) : theme.text(.textSecondary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m232 |[0;0m }
[0;36m233 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:238:57: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m236 |[0;0m if configuration.indicator(default: .radio) == .checkmark, isOn {
[0;36m237 |[0;0m listRow = listRow.trailing {
[0;36m238 |[0;0m Icon(systemName: "checkmark").size(.sm).color(configuration.accentBase(theme))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m239 |[0;0m }
[0;36m240 |[0;0m } else {
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:284:18: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m282 |[0;0m Icon(systemName: option.systemImage)
[0;36m283 |[0;0m .size(.sm)
[0;36m284 |[0;0m .color(isDisabled ? theme.text(.textDisabled)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m285 |[0;0m : (isOn ? configuration.accentBase(theme) : theme.text(.textSecondary)))
[0;36m286 |[0;0m Text(option.title)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:295:57: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m293 |[0;0m }
[0;36m294 |[0;0m if configuration.indicator(default: .radio) == .checkmark, isOn {
[0;36m295 |[0;0m Icon(systemName: "checkmark").size(.sm).color(configuration.accentBase(theme))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m296 |[0;0m }
[0;36m297 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:352:18: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m350 |[0;0m Icon(systemName: option.systemImage)
[0;36m351 |[0;0m .size(.md)
[0;36m352 |[0;0m .color(isDisabled ? theme.text(.textDisabled)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m353 |[0;0m : (isOn ? configuration.accentBase(theme) : theme.text(.textSecondary)))
[0;36m354 |[0;0m Text(option.title)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:365:69: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m363 |[0;0m }
[0;36m364 |[0;0m if configuration.indicator(default: .checkmark) == .checkmark, isOn {
[0;36m365 |[0;0m Icon(systemName: "checkmark.circle.fill").size(.sm).color(configuration.accentBase(theme))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m366 |[0;0m }
[0;36m367 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:613:76: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m611 |[0;0m Button { configuration.select(option.id) } label: {
[0;36m612 |[0;0m HStack(spacing: configuration.spacing(.sm)) {
[0;36m613 |[0;0m Icon(systemName: option.systemImage).size(.sm).color(configuration.accentBase(theme))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m614 |[0;0m Text(option.title).textStyle(.labelBase600).foregroundStyle(theme.text(.textPrimary))
[0;36m615 |[0;0m Spacer()
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/PaymentMethodSelectorStyle.swift:617:85: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m615 |[0;0m Spacer()
[0;36m616 |[0;0m if isOn {
[0;36m617 |[0;0m Icon(systemName: "checkmark.circle.fill").size(.sm).color(configuration.accentBase(theme))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m618 |[0;0m }
[0;36m619 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/SavedCardsListStyle.swift:135:24: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'SavedCardsListConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m39 |[0;0m /// optional data is absent (no `onDelete` → no delete affordance anywhere, no
[0;36m40 |[0;0m /// `onAddNew` → no add-new row/tile).
[0;36m41 |[0;0m public struct SavedCardsListConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'SavedCardsListConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m42 |[0;0m /// The stored cards to render, in caller order. Never empty — the
[0;36m43 |[0;0m /// component renders its own `EmptyState` before reaching a style.
[0;36m:[0;0m
[0;36m133 |[0;0m /// ``onSelect``; a card can't be deselected by tapping its own radio.
[0;36m134 |[0;0m public func selectionBinding(for card: SavedCard) -> Binding<Bool> {
[0;36m135 |[0;0m Binding(get: { isSelected(card) }, set: { if $0 { onSelect(card.id) } })
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'SavedCardsListConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m136 |[0;0m }
[0;36m137 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/SavedCardsListStyle.swift:135:59: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'SavedCardsListConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m39 |[0;0m /// optional data is absent (no `onDelete` → no delete affordance anywhere, no
[0;36m40 |[0;0m /// `onAddNew` → no add-new row/tile).
[0;36m41 |[0;0m public struct SavedCardsListConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'SavedCardsListConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m42 |[0;0m /// The stored cards to render, in caller order. Never empty — the
[0;36m43 |[0;0m /// component renders its own `EmptyState` before reaching a style.
[0;36m:[0;0m
[0;36m133 |[0;0m /// ``onSelect``; a card can't be deselected by tapping its own radio.
[0;36m134 |[0;0m public func selectionBinding(for card: SavedCard) -> Binding<Bool> {
[0;36m135 |[0;0m Binding(get: { isSelected(card) }, set: { if $0 { onSelect(card.id) } })
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'SavedCardsListConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m136 |[0;0m }
[0;36m137 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/SavedCardsListStyle.swift:210:18: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m208 |[0;0m Icon(systemName: card.brand.icon)
[0;36m209 |[0;0m .size(.sm)
[0;36m210 |[0;0m .color(isOn ? configuration.accentBase(theme) : theme.text(.textSecondary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m211 |[0;0m }
[0;36m212 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/SavedCardsListStyle.swift:241:18: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m239 |[0;0m Icon(systemName: "trash")
[0;36m240 |[0;0m .size(.sm)
[0;36m241 |[0;0m .color(theme.foreground(.systemcolorsFgError))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m242 |[0;0m .frame(width: 44, height: 44) // a11y hit target
[0;36m243 |[0;0m .contentShape(Rectangle())
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/SavedCardsListStyle.swift:384:64: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m382 |[0;0m } label: {
[0;36m383 |[0;0m VStack(spacing: Theme.SpacingKey.xs.value) {
[0;36m384 |[0;0m Icon(systemName: "plus.circle.fill").size(.md).color(configuration.accentBase(theme))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m385 |[0;0m Text(configuration.addNewTitle)
[0;36m386 |[0;0m .textStyle(.labelSm600)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/SavedCardsListStyle.swift:412:60: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m410 |[0;0m }
[0;36m411 |[0;0m .leading {
[0;36m412 |[0;0m Icon(systemName: "plus.circle.fill").size(.sm).color(configuration.accentBase(theme))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m413 |[0;0m }
[0;36m414 |[0;0m .trailing(ListRowTrailing.chevron)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/SavedCardsListStyle.swift:672:58: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m670 |[0;0m } label: {
[0;36m671 |[0;0m HStack(spacing: Theme.SpacingKey.xs.value) {
[0;36m672 |[0;0m Icon(systemName: "chevron.up").size(.xs).color(theme.text(.textSecondary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m673 |[0;0m Text(String(themeKitTravel: "Collapse"))
[0;36m674 |[0;0m .textStyle(.labelSm600)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Steps.swift:370:86: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m368 |[0;0m Image(systemName: step.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m369 |[0;0m .font(.system(size: 20))
[0;36m370 |[0;0m .foregroundStyle(step.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m371 |[0;0m }
[0;36m372 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Steps.swift:370:116: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m368 |[0;0m Image(systemName: step.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m369 |[0;0m .font(.system(size: 20))
[0;36m370 |[0;0m .foregroundStyle(step.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m371 |[0;0m }
[0;36m372 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:241:114: [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m239 |[0;0m PreviewCase("Brand chrome (logo center)") {
[0;36m240 |[0;0m PageHeader("Brand")
[0;36m241 |[0;0m .logo(Text("Acme").font(.system(size: 22, weight: .heavy)).foregroundStyle(SemanticColor.primary.onSolid))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m242 |[0;0m .pageHeaderStyle(.brand)
[0;36m243 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:249:51: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m247 |[0;0m .actions([.init(systemImage: "heart") {}, .init(systemImage: "xmark") {}])
[0;36m248 |[0;0m .pageHeaderStyle(.onImage)
[0;36m249 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m250 |[0;0m }
[0;36m251 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Timeline.swift:288:82: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m286 |[0;0m Image(systemName: item.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m287 |[0;0m .font(.system(size: 20))
[0;36m288 |[0;0m .foregroundStyle(item.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m289 |[0;0m }
[0;36m290 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Timeline.swift:288:112: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m286 |[0;0m Image(systemName: item.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m287 |[0;0m .font(.system(size: 20))
[0;36m288 |[0;0m .foregroundStyle(item.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m289 |[0;0m }
[0;36m290 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/ImageCollage.swift:75:71: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m73 |[0;0m RoundedRectangle(cornerRadius: cornerRadius, style: .continuous)
[0;36m74 |[0;0m .fill(theme.background(.bgSecondaryLight))
[0;36m75 |[0;0m .overlay(Icon(systemName: "photo.on.rectangle").size(.lg).color(theme.text(.textTertiary)))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m76 |[0;0m .frame(maxWidth: .infinity)
[0;36m77 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/InfoBanner.swift:173:55: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m171 |[0;0m .foregroundStyle(theme.text(.textSecondary))
[0;36m172 |[0;0m } else {
[0;36m173 |[0;0m InlineText(message, links: links).color(theme.text(.textSecondary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m174 |[0;0m }
[0;36m175 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/InfoBanner.swift:200:57: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m198 |[0;0m if let onDismiss {
[0;36m199 |[0;0m Button(action: onDismiss) {
[0;36m200 |[0;0m Icon(systemName: "xmark").size(.xs).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m201 |[0;0m }
[0;36m202 |[0;0m .buttonStyle(.plain)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/ListRow.swift:160:63: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m158 |[0;0m if let infoAction {
[0;36m159 |[0;0m Button(action: infoAction) {
[0;36m160 |[0;0m Icon(systemName: "info.circle").size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m161 |[0;0m }
[0;36m162 |[0;0m .buttonStyle(.plain)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/ListRow.swift:198:64: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m196 |[0;0m ZStack {
[0;36m197 |[0;0m Circle().fill(theme.background(.bgElevatorTertiary)).frame(width: 40, height: 40)
[0;36m198 |[0;0m Icon(systemName: leadingSystemImage).size(.sm).color(theme.foreground(.fgHero))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m199 |[0;0m }
[0;36m200 |[0;0m .overlay(alignment: .topTrailing) {
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/ListRow.swift:291:57: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m289 |[0;0m EmptyView()
[0;36m290 |[0;0m case .chevron:
[0;36m291 |[0;0m Icon(systemName: "chevron.right").size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m292 |[0;0m .mirrorsInRTL()
[0;36m293 |[0;0m case .value(let text):
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/ListRow.swift:301:57: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m299 |[0;0m case .checkmark(let on):
[0;36m300 |[0;0m if on {
[0;36m301 |[0;0m Icon(systemName: "checkmark").size(.sm).color(theme.foreground(.fgHero))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m302 |[0;0m }
[0;36m303 |[0;0m case .checkbox(let binding):
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/LocationCard.swift:181:13: [1;33mwarning: [1;39m'init(coordinateRegion:interactionModes:showsUserLocation:userTrackingMode:annotationItems:annotationContent:)' was deprecated in macOS 14.0: Use Map initializers that take a MapContentBuilder instead.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m179 |[0;0m // one rendering on every supported OS. The region binding is
[0;36m180 |[0;0m // constant: the preview is non-interactive (`allowsHitTesting`).
[0;36m181 |[0;0m Map(coordinateRegion: .constant(region),
[0;36m|[0;0m `- [1;33mwarning: [1;39m'init(coordinateRegion:interactionModes:showsUserLocation:userTrackingMode:annotationItems:annotationContent:)' was deprecated in macOS 14.0: Use Map initializers that take a MapContentBuilder instead.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m182 |[0;0m interactionModes: [],
[0;36m183 |[0;0m annotationItems: annotationPins) { pin in
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/LocationCard.swift:184:17: [1;33mwarning: [1;39m'MapMarker' was deprecated in macOS 14.0: Use Marker along with Map initializers that take a MapContentBuilder instead.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m182 |[0;0m interactionModes: [],
[0;36m183 |[0;0m annotationItems: annotationPins) { pin in
[0;36m184 |[0;0m MapMarker(coordinate: pin.coordinate,
[0;36m|[0;0m `- [1;33mwarning: [1;39m'MapMarker' was deprecated in macOS 14.0: Use Marker along with Map initializers that take a MapContentBuilder instead.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m185 |[0;0m tint: pin.isPrimary ? theme.foreground(.fgHero) : theme.text(.textSecondary))
[0;36m186 |[0;0m }
macro expansion #Preview:22:126: [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:253:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m235 |[0;0m }
[0;36m236 |[0;0m
[0;36m237 |[0;0m [4;39m#Preview("Brand + On-image") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m238 |[0;0m PreviewMatrix("PageHeader — brand / onImage styles") {
[0;36m239 |[0;0m PreviewCase("Brand chrome (logo center)") {
[0;36m:[0;0m
[0;36m251 |[0;0m }
[0;36m252 |[0;0m .environment(\.theme, Theme.shared)
[0;36m253 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m20 |[0;0m PreviewCase("Brand chrome (logo center)") {
[0;36m |[0;0m[0;36m21 |[0;0m PageHeader("Brand")
[0;36m |[0;0m[0;36m22 |[0;0m .logo(Text("Acme").font(.system(size: 22, weight: .heavy)).foregroundStyle(SemanticColor.primary.onSolid))
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m |[0;0m[0;36m23 |[0;0m .pageHeaderStyle(.brand)
[0;36m |[0;0m[0;36m24 |[0;0m }
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m254 |[0;0m
macro expansion #Preview:33:63: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:253:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m235 |[0;0m }
[0;36m236 |[0;0m
[0;36m237 |[0;0m [4;39m#Preview("Brand + On-image") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m238 |[0;0m PreviewMatrix("PageHeader — brand / onImage styles") {
[0;36m239 |[0;0m PreviewCase("Brand chrome (logo center)") {
[0;36m:[0;0m
[0;36m251 |[0;0m }
[0;36m252 |[0;0m .environment(\.theme, Theme.shared)
[0;36m253 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m31 |[0;0m }])
[0;36m |[0;0m[0;36m32 |[0;0m .pageHeaderStyle(.onImage)
[0;36m |[0;0m[0;36m33 |[0;0m .background(SemanticColor.primary.solid)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m |[0;0m[0;36m34 |[0;0m }
[0;36m |[0;0m[0;36m35 |[0;0m }
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m254 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Popconfirm.swift:142:75: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m140 |[0;0m VStack(alignment: .leading, spacing: Theme.SpacingKey.sm.value) {
[0;36m141 |[0;0m HStack(alignment: .top, spacing: Theme.SpacingKey.sm.value) {
[0;36m142 |[0;0m Icon(systemName: "exclamationmark.circle.fill").size(.sm).color(theme.foreground(.systemcolorsFgWarning))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m143 |[0;0m VStack(alignment: .leading, spacing: 2) {
[0;36m144 |[0;0m Text(title).textStyle(.labelBase600).foregroundStyle(theme.text(.textPrimary))
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Popconfirm.swift:211:65: [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m205 |[0;0m let edge: TooltipEdge
[0;36m206 |[0;0m
[0;36m207 |[0;0m private var gap: CGFloat { Theme.SpacingKey.sm.value }
[0;36m|[0;0m `- [1;39mnote: [1;39mproperty declared here[0;0m
[0;36m208 |[0;0m
[0;36m209 |[0;0m func body(content: Content) -> some View {
[0;36m210 |[0;0m switch edge {
[0;36m211 |[0;0m case .top: content.alignmentGuide(.top) { $0[.bottom] + gap }
[0;36m|[0;0m `- [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m212 |[0;0m case .bottom: content.alignmentGuide(.bottom) { $0[.top] - gap }
[0;36m213 |[0;0m case .leading: content.alignmentGuide(.leading) { $0[.trailing] + gap }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Popconfirm.swift:212:68: [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m205 |[0;0m let edge: TooltipEdge
[0;36m206 |[0;0m
[0;36m207 |[0;0m private var gap: CGFloat { Theme.SpacingKey.sm.value }
[0;36m|[0;0m `- [1;39mnote: [1;39mproperty declared here[0;0m
[0;36m208 |[0;0m
[0;36m209 |[0;0m func body(content: Content) -> some View {
[0;36m210 |[0;0m switch edge {
[0;36m211 |[0;0m case .top: content.alignmentGuide(.top) { $0[.bottom] + gap }
[0;36m212 |[0;0m case .bottom: content.alignmentGuide(.bottom) { $0[.top] - gap }
[0;36m|[0;0m `- [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m213 |[0;0m case .leading: content.alignmentGuide(.leading) { $0[.trailing] + gap }
[0;36m214 |[0;0m case .trailing: content.alignmentGuide(.trailing) { $0[.leading] - gap }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Popconfirm.swift:213:75: [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m205 |[0;0m let edge: TooltipEdge
[0;36m206 |[0;0m
[0;36m207 |[0;0m private var gap: CGFloat { Theme.SpacingKey.sm.value }
[0;36m|[0;0m `- [1;39mnote: [1;39mproperty declared here[0;0m
[0;36m208 |[0;0m
[0;36m209 |[0;0m func body(content: Content) -> some View {
[0;36m:[0;0m
[0;36m211 |[0;0m case .top: content.alignmentGuide(.top) { $0[.bottom] + gap }
[0;36m212 |[0;0m case .bottom: content.alignmentGuide(.bottom) { $0[.top] - gap }
[0;36m213 |[0;0m case .leading: content.alignmentGuide(.leading) { $0[.trailing] + gap }
[0;36m|[0;0m `- [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m214 |[0;0m case .trailing: content.alignmentGuide(.trailing) { $0[.leading] - gap }
[0;36m215 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Popconfirm.swift:214:76: [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m205 |[0;0m let edge: TooltipEdge
[0;36m206 |[0;0m
[0;36m207 |[0;0m private var gap: CGFloat { Theme.SpacingKey.sm.value }
[0;36m|[0;0m `- [1;39mnote: [1;39mproperty declared here[0;0m
[0;36m208 |[0;0m
[0;36m209 |[0;0m func body(content: Content) -> some View {
[0;36m:[0;0m
[0;36m212 |[0;0m case .bottom: content.alignmentGuide(.bottom) { $0[.top] - gap }
[0;36m213 |[0;0m case .leading: content.alignmentGuide(.leading) { $0[.trailing] + gap }
[0;36m214 |[0;0m case .trailing: content.alignmentGuide(.trailing) { $0[.leading] - gap }
[0;36m|[0;0m `- [1;33mwarning: [1;39mmain actor-isolated property 'gap' can not be referenced from a Sendable closure[0;0m
[0;36m215 |[0;0m }
[0;36m216 |[0;0m }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Steps.swift:370:86: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m368 |[0;0m Image(systemName: step.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m369 |[0;0m .font(.system(size: 20))
[0;36m370 |[0;0m .foregroundStyle(step.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m371 |[0;0m }
[0;36m372 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Steps.swift:370:116: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m368 |[0;0m Image(systemName: step.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m369 |[0;0m .font(.system(size: 20))
[0;36m370 |[0;0m .foregroundStyle(step.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m371 |[0;0m }
[0;36m372 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:241:114: [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m239 |[0;0m PreviewCase("Brand chrome (logo center)") {
[0;36m240 |[0;0m PageHeader("Brand")
[0;36m241 |[0;0m .logo(Text("Acme").font(.system(size: 22, weight: .heavy)).foregroundStyle(SemanticColor.primary.onSolid))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m242 |[0;0m .pageHeaderStyle(.brand)
[0;36m243 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:249:51: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m247 |[0;0m .actions([.init(systemImage: "heart") {}, .init(systemImage: "xmark") {}])
[0;36m248 |[0;0m .pageHeaderStyle(.onImage)
[0;36m249 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m250 |[0;0m }
[0;36m251 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Timeline.swift:288:82: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m286 |[0;0m Image(systemName: item.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m287 |[0;0m .font(.system(size: 20))
[0;36m288 |[0;0m .foregroundStyle(item.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m289 |[0;0m }
[0;36m290 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Timeline.swift:288:112: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m286 |[0;0m Image(systemName: item.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m287 |[0;0m .font(.system(size: 20))
[0;36m288 |[0;0m .foregroundStyle(item.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m289 |[0;0m }
[0;36m290 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Autocomplete.swift:186:59: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m184 |[0;0m private var fieldCore: some View {
[0;36m185 |[0;0m HStack(spacing: Theme.SpacingKey.sm.value) {
[0;36m186 |[0;0m Icon(systemName: "magnifyingglass").size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m187 |[0;0m TextField(placeholder, text: $text)
[0;36m188 |[0;0m .textStyle(.bodyBase400)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Autocomplete.swift:204:69: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m202 |[0;0m } else if showsClear {
[0;36m203 |[0;0m Button { text = "" } label: {
[0;36m204 |[0;0m Icon(systemName: "xmark.circle.fill").size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m205 |[0;0m }
[0;36m206 |[0;0m .buttonStyle(.plain)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/LayoverRow.swift:139:71: [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m137 |[0;0m }
[0;36m138 |[0;0m PreviewCase("Deprecated .variant(_:) still works") {
[0;36m139 |[0;0m LayoverRow(duration: "2h 15m", airport: "Istanbul (IST)").variant(.banner).accent(.success)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m140 |[0;0m }
[0;36m141 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRow.swift:237:43: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m235 |[0;0m .padding()
[0;36m236 |[0;0m .frame(maxWidth: .infinity)
[0;36m237 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m238 |[0;0m }
[0;36m239 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRowStyle.swift:428:51: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m426 |[0;0m .surface(.bgWhite).onSearch { }
[0;36m427 |[0;0m .padding(Theme.SpacingKey.sm.value)
[0;36m428 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m429 |[0;0m .recentSearchRowStyle(.pill)
[0;36m430 |[0;0m }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/LayoverRow.swift:139:71: [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m137 |[0;0m }
[0;36m138 |[0;0m PreviewCase("Deprecated .variant(_:) still works") {
[0;36m139 |[0;0m LayoverRow(duration: "2h 15m", airport: "Istanbul (IST)").variant(.banner).accent(.success)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m140 |[0;0m }
[0;36m141 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRow.swift:237:43: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m235 |[0;0m .padding()
[0;36m236 |[0;0m .frame(maxWidth: .infinity)
[0;36m237 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m238 |[0;0m }
[0;36m239 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRowStyle.swift:428:51: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m426 |[0;0m .surface(.bgWhite).onSearch { }
[0;36m427 |[0;0m .padding(Theme.SpacingKey.sm.value)
[0;36m428 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m429 |[0;0m .recentSearchRowStyle(.pill)
[0;36m430 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadgeStyle.swift:302:53: [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m300 |[0;0m }
[0;36m301 |[0;0m }
[0;36m302 |[0;0m .foregroundStyle(configuration.tone.base)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m303 |[0;0m Capsule().fill(configuration.tone.base).frame(height: 2)
[0;36m304 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadgeStyle.swift:303:51: [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m301 |[0;0m }
[0;36m302 |[0;0m .foregroundStyle(configuration.tone.base)
[0;36m303 |[0;0m Capsule().fill(configuration.tone.base).frame(height: 2)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m304 |[0;0m }
[0;36m305 |[0;0m .fixedSize()
macro expansion #Preview:45:55: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'time' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadgeStyle.swift:337:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m285 |[0;0m // MARK: - Preview
[0;36m286 |[0;0m
[0;36m287 |[0;0m [4;39m#Preview {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m288 |[0;0m /// Proof of external implementability: a custom underline look. Note it
[0;36m289 |[0;0m /// still colours from `configuration.tone` — hue is never a style decision.
[0;36m:[0;0m
[0;36m335 |[0;0m }
[0;36m336 |[0;0m }
[0;36m337 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m43 |[0;0m HStack(spacing: 8) {
[0;36m |[0;0m[0;36m44 |[0;0m ForEach(statuses, id: \.self) { status in
[0;36m |[0;0m[0;36m45 |[0;0m FlightStatusBadge(status).time(status == .delayed ? time : nil)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'time' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m46 |[0;0m }
[0;36m |[0;0m[0;36m47 |[0;0m }
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m338 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadge.swift:156:10: [1;39mnote: [1;39mcalls to instance method 'time' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m154 |[0;0m public extension FlightStatusBadge {
[0;36m155 |[0;0m /// A trailing time, e.g. "+35m" (delay) or "13:15".
[0;36m156 |[0;0m func time(_ text: String?) -> Self { copy { $0.time = text } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'time' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m157 |[0;0m /// Override the label text.
[0;36m158 |[0;0m func label(_ text: String?) -> Self { copy { $0.customLabel = text } }
macro expansion #Preview:45:29: [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadgeStyle.swift:337:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m285 |[0;0m // MARK: - Preview
[0;36m286 |[0;0m
[0;36m287 |[0;0m [4;39m#Preview {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m288 |[0;0m /// Proof of external implementability: a custom underline look. Note it
[0;36m289 |[0;0m /// still colours from `configuration.tone` — hue is never a style decision.
[0;36m:[0;0m
[0;36m335 |[0;0m }
[0;36m336 |[0;0m }
[0;36m337 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m43 |[0;0m HStack(spacing: 8) {
[0;36m |[0;0m[0;36m44 |[0;0m ForEach(statuses, id: \.self) { status in
[0;36m |[0;0m[0;36m45 |[0;0m FlightStatusBadge(status).time(status == .delayed ? time : nil)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(_:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m46 |[0;0m }
[0;36m |[0;0m[0;36m47 |[0;0m }
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m338 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadge.swift:100:12: [1;39mnote: [1;39mcalls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m98 |[0;0m private enum IconSetting { case automatic, custom(String), hidden }
[0;36m99 |[0;0m
[0;36m100 |[0;0m public init(_ status: FlightStatus) { self.status = status } // R1
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to initializer 'init(_:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m101 |[0;0m
[0;36m102 |[0;0m /// The deprecated explicit emphasis mapped to its preset, else the
macro expansion #Preview:33:65: [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadgeStyle.swift:337:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m285 |[0;0m // MARK: - Preview
[0;36m286 |[0;0m
[0;36m287 |[0;0m [4;39m#Preview {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m288 |[0;0m /// Proof of external implementability: a custom underline look. Note it
[0;36m289 |[0;0m /// still colours from `configuration.tone` — hue is never a style decision.
[0;36m:[0;0m
[0;36m335 |[0;0m }
[0;36m336 |[0;0m }
[0;36m337 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m31 |[0;0m }
[0;36m |[0;0m[0;36m32 |[0;0m }
[0;36m |[0;0m[0;36m33 |[0;0m .foregroundStyle(configuration.tone.base)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m |[0;0m[0;36m34 |[0;0m Capsule().fill(configuration.tone.base).frame(height: 2)
[0;36m |[0;0m[0;36m35 |[0;0m }
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m338 |[0;0m
macro expansion #Preview:34:63: [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Atoms/FlightStatusBadgeStyle.swift:337:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m285 |[0;0m // MARK: - Preview
[0;36m286 |[0;0m
[0;36m287 |[0;0m [4;39m#Preview {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m288 |[0;0m /// Proof of external implementability: a custom underline look. Note it
[0;36m289 |[0;0m /// still colours from `configuration.tone` — hue is never a style decision.
[0;36m:[0;0m
[0;36m335 |[0;0m }
[0;36m336 |[0;0m }
[0;36m337 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m32 |[0;0m }
[0;36m |[0;0m[0;36m33 |[0;0m .foregroundStyle(configuration.tone.base)
[0;36m |[0;0m[0;36m34 |[0;0m Capsule().fill(configuration.tone.base).frame(height: 2)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39m'base' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).base[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m |[0;0m[0;36m35 |[0;0m }
[0;36m |[0;0m[0;36m36 |[0;0m .fixedSize()
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m338 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/CabinClassSelectorStyle.swift:93:20: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m35 |[0;0m /// (no glyphs requested → text-only, no description → two-line cards, no size
[0;36m36 |[0;0m /// override → each wrapped control's stock ramp).
[0;36m37 |[0;0m public struct CabinClassSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'CabinClassSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m38 |[0;0m /// The offered cabins, in display order — already resolved by the component
[0;36m39 |[0;0m /// (`.classes(_:)`, with the empty-list → all-four fallback applied), so a
[0;36m:[0;0m
[0;36m91 |[0;0m public var indexBinding: Binding<Int> {
[0;36m92 |[0;0m Binding(
[0;36m93 |[0;0m get: { classes.firstIndex(of: selected) ?? 0 },
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m94 |[0;0m set: { index in
[0;36m95 |[0;0m guard classes.indices.contains(index) else { return }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/CabinClassSelectorStyle.swift:95:23: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m35 |[0;0m /// (no glyphs requested → text-only, no description → two-line cards, no size
[0;36m36 |[0;0m /// override → each wrapped control's stock ramp).
[0;36m37 |[0;0m public struct CabinClassSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'CabinClassSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m38 |[0;0m /// The offered cabins, in display order — already resolved by the component
[0;36m39 |[0;0m /// (`.classes(_:)`, with the empty-list → all-four fallback applied), so a
[0;36m:[0;0m
[0;36m93 |[0;0m get: { classes.firstIndex(of: selected) ?? 0 },
[0;36m94 |[0;0m set: { index in
[0;36m95 |[0;0m guard classes.indices.contains(index) else { return }
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m96 |[0;0m select(classes[index])
[0;36m97 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/CabinClassSelectorStyle.swift:105:20: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m35 |[0;0m /// (no glyphs requested → text-only, no description → two-line cards, no size
[0;36m36 |[0;0m /// override → each wrapped control's stock ramp).
[0;36m37 |[0;0m public struct CabinClassSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'CabinClassSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m38 |[0;0m /// The offered cabins, in display order — already resolved by the component
[0;36m39 |[0;0m /// (`.classes(_:)`, with the empty-list → all-four fallback applied), so a
[0;36m:[0;0m
[0;36m103 |[0;0m public func chipBinding(for cabin: CabinClass) -> Binding<Bool> {
[0;36m104 |[0;0m Binding(
[0;36m105 |[0;0m get: { selected == cabin },
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m106 |[0;0m set: { isOn in if isOn { select(cabin) } }
[0;36m107 |[0;0m )
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/CabinClassSelectorStyle.swift:106:38: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m35 |[0;0m /// (no glyphs requested → text-only, no description → two-line cards, no size
[0;36m36 |[0;0m /// override → each wrapped control's stock ramp).
[0;36m37 |[0;0m public struct CabinClassSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'CabinClassSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m38 |[0;0m /// The offered cabins, in display order — already resolved by the component
[0;36m39 |[0;0m /// (`.classes(_:)`, with the empty-list → all-four fallback applied), so a
[0;36m:[0;0m
[0;36m104 |[0;0m Binding(
[0;36m105 |[0;0m get: { selected == cabin },
[0;36m106 |[0;0m set: { isOn in if isOn { select(cabin) } }
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m107 |[0;0m )
[0;36m108 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/CabinClassSelectorStyle.swift:114:20: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m35 |[0;0m /// (no glyphs requested → text-only, no description → two-line cards, no size
[0;36m36 |[0;0m /// override → each wrapped control's stock ramp).
[0;36m37 |[0;0m public struct CabinClassSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'CabinClassSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m38 |[0;0m /// The offered cabins, in display order — already resolved by the component
[0;36m39 |[0;0m /// (`.classes(_:)`, with the empty-list → all-four fallback applied), so a
[0;36m:[0;0m
[0;36m112 |[0;0m public var radioBinding: Binding<CabinClass?> {
[0;36m113 |[0;0m Binding(
[0;36m114 |[0;0m get: { selected },
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m115 |[0;0m set: { newValue in if let newValue { select(newValue) } }
[0;36m116 |[0;0m )
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/CabinClassSelectorStyle.swift:115:50: [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m35 |[0;0m /// (no glyphs requested → text-only, no description → two-line cards, no size
[0;36m36 |[0;0m /// override → each wrapped control's stock ramp).
[0;36m37 |[0;0m public struct CabinClassSelectorConfiguration {
[0;36m|[0;0m `- [1;39mnote: [1;39mconsider making struct 'CabinClassSelectorConfiguration' conform to the 'Sendable' protocol[0;0m
[0;36m38 |[0;0m /// The offered cabins, in display order — already resolved by the component
[0;36m39 |[0;0m /// (`.classes(_:)`, with the empty-list → all-four fallback applied), so a
[0;36m:[0;0m
[0;36m113 |[0;0m Binding(
[0;36m114 |[0;0m get: { selected },
[0;36m115 |[0;0m set: { newValue in if let newValue { select(newValue) } }
[0;36m|[0;0m `- [1;33mwarning: [1;39mcapture of 'self' with non-Sendable type 'CabinClassSelectorConfiguration' in a '@Sendable' closure[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures\SendableClosureCaptures]8;;\]
[0;36m116 |[0;0m )
[0;36m117 |[0;0m }
[#ActorIsolatedCall]: <https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call>
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/LayoverRow.swift:139:71: [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m137 |[0;0m }
[0;36m138 |[0;0m PreviewCase("Deprecated .variant(_:) still works") {
[0;36m139 |[0;0m LayoverRow(duration: "2h 15m", airport: "Istanbul (IST)").variant(.banner).accent(.success)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'variant' is deprecated: Use .layoverRowStyle(.line/.pill/.banner) instead[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m140 |[0;0m }
[0;36m141 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRow.swift:237:43: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m235 |[0;0m .padding()
[0;36m236 |[0;0m .frame(maxWidth: .infinity)
[0;36m237 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m238 |[0;0m }
[0;36m239 |[0;0m
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Molecules/RecentSearchRowStyle.swift:428:51: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m426 |[0;0m .surface(.bgWhite).onSearch { }
[0;36m427 |[0;0m .padding(Theme.SpacingKey.sm.value)
[0;36m428 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m429 |[0;0m .recentSearchRowStyle(.pill)
[0;36m430 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:205:65: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m203 |[0;0m HStack(spacing: configuration.spacing(.sm)) {
[0;36m204 |[0;0m Text(configuration.from).textStyle(.labelMd700).foregroundStyle(theme.text(.textPrimary))
[0;36m205 |[0;0m Icon(systemName: "arrow.forward").size(.xs).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m206 |[0;0m Text(configuration.to).textStyle(.labelMd700).foregroundStyle(theme.text(.textPrimary))
[0;36m207 |[0;0m if let duration = configuration.duration {
macro expansion #Preview:52:97: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'accent' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m127 |[0;0m /// ``favorite(_:)`` when the flag must persist.
[0;36m128 |[0;0m func favorite() -> Self { copy { $0.showsFavorite = true } }
[0;36m129 |[0;0m func accent(_ color: SemanticColor?) -> Self { copy { $0.accent = color } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'accent' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m130 |[0;0m func elevation(_ e: CardElevation) -> Self { copy { $0.elevation = e } }
[0;36m131 |[0;0m func surface(_ key: Theme.BackgroundColorKey) -> Self { copy { $0.surfaceKey = key } }
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m |[0;0m[0;36m52 |[0;0m .airline("Garuda Indonesia").price(140, currencyCode: "USD").favorite().accent(.info)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'accent' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m53 |[0;0m }
[0;36m |[0;0m[0;36m54 |[0;0m
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:52:86: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'favorite()' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m126 |[0;0m /// *scrolling* (state-per-identity) but not identity churn — use
[0;36m127 |[0;0m /// ``favorite(_:)`` when the flag must persist.
[0;36m128 |[0;0m func favorite() -> Self { copy { $0.showsFavorite = true } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'favorite()' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m129 |[0;0m func accent(_ color: SemanticColor?) -> Self { copy { $0.accent = color } }
[0;36m130 |[0;0m func elevation(_ e: CardElevation) -> Self { copy { $0.elevation = e } }
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m |[0;0m[0;36m52 |[0;0m .airline("Garuda Indonesia").price(140, currencyCode: "USD").favorite().accent(.info)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'favorite()' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m53 |[0;0m }
[0;36m |[0;0m[0;36m54 |[0;0m
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:52:54: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'price(_:currencyCode:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m108 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m109 |[0;0m func airlineLogo(_ url: URL?) -> Self { copy { $0.airlineLogo = url } }
[0;36m110 |[0;0m func price(_ amount: Decimal?, currencyCode: String = "USD") -> Self { copy { $0.price = amount; $0.currencyCode = currencyCode } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'price(_:currencyCode:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m111 |[0;0m /// Omitted-currency form — resolves the code from the environment:
[0;36m112 |[0;0m /// `formatDefaults.currencyCode` → `locale.currency` → `"USD"` (§10).
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m |[0;0m[0;36m52 |[0;0m .airline("Garuda Indonesia").price(140, currencyCode: "USD").favorite().accent(.info)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'price(_:currencyCode:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m53 |[0;0m }
[0;36m |[0;0m[0;36m54 |[0;0m
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:52:26: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'airline(_:icon:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m106 |[0;0m func duration(_ text: String?) -> Self { copy { $0.duration = text } }
[0;36m107 |[0;0m func stops(_ count: Int) -> Self { copy { $0.stops = max(0, count) } }
[0;36m108 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'airline(_:icon:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m109 |[0;0m func airlineLogo(_ url: URL?) -> Self { copy { $0.airlineLogo = url } }
[0;36m110 |[0;0m func price(_ amount: Decimal?, currencyCode: String = "USD") -> Self { copy { $0.price = amount; $0.currencyCode = currencyCode } }
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m |[0;0m[0;36m52 |[0;0m .airline("Garuda Indonesia").price(140, currencyCode: "USD").favorite().accent(.info)
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'airline(_:icon:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m53 |[0;0m }
[0;36m |[0;0m[0;36m54 |[0;0m
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:51:26: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'times(departure:arrival:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m103 |[0;0m public extension FlightTicketCard {
[0;36m104 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m105 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'times(departure:arrival:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m106 |[0;0m func duration(_ text: String?) -> Self { copy { $0.duration = text } }
[0;36m107 |[0;0m func stops(_ count: Int) -> Self { copy { $0.stops = max(0, count) } }
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m49 |[0;0m FlightTicketCard(from: "NYC", to: "SFO")
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'times(departure:arrival:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m52 |[0;0m .airline("Garuda Indonesia").price(140, currencyCode: "USD").favorite().accent(.info)
[0;36m |[0;0m[0;36m53 |[0;0m }
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:50:77: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'duration' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m104 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m105 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
[0;36m106 |[0;0m func duration(_ text: String?) -> Self { copy { $0.duration = text } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'duration' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m107 |[0;0m func stops(_ count: Int) -> Self { copy { $0.stops = max(0, count) } }
[0;36m108 |[0;0m func airline(_ name: String?, icon: String = "airplane") -> Self { copy { $0.airline = name; $0.airlineIcon = icon } }
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m48 |[0;0m func ticket() -> FlightTicketCard {
[0;36m |[0;0m[0;36m49 |[0;0m FlightTicketCard(from: "NYC", to: "SFO")
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'duration' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m |[0;0m[0;36m52 |[0;0m .airline("Garuda Indonesia").price(140, currencyCode: "USD").favorite().accent(.info)
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:50:26: [1;33mwarning: [1;39mcall to main actor-isolated instance method 'cities(from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m102 |[0;0m
[0;36m103 |[0;0m public extension FlightTicketCard {
[0;36m104 |[0;0m func cities(from: String?, to: String?) -> Self { copy { $0.fromCity = from; $0.toCity = to } }
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to instance method 'cities(from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m105 |[0;0m func times(departure: String?, arrival: String?) -> Self { copy { $0.departure = departure; $0.arrival = arrival } }
[0;36m106 |[0;0m func duration(_ text: String?) -> Self { copy { $0.duration = text } }
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m48 |[0;0m func ticket() -> FlightTicketCard {
[0;36m |[0;0m[0;36m49 |[0;0m FlightTicketCard(from: "NYC", to: "SFO")
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated instance method 'cities(from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m |[0;0m[0;36m52 |[0;0m .airline("Garuda Indonesia").price(140, currencyCode: "USD").favorite().accent(.info)
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:49:21: [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m69 |[0;0m private var customStub: AnyView?
[0;36m70 |[0;0m
[0;36m71 |[0;0m public init(from: String, to: String) { // R1
[0;36m|[0;0m |- [1;39mnote: [1;39mcalls to initializer 'init(from:to:)' from outside of its actor context are implicitly asynchronous[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39mmain actor isolation inferred from conformance to protocol 'View'[0;0m
[0;36m72 |[0;0m self.from = from
[0;36m73 |[0;0m self.to = to
[0;36m:[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m47 |[0;0m
[0;36m |[0;0m[0;36m48 |[0;0m func ticket() -> FlightTicketCard {
[0;36m |[0;0m[0;36m49 |[0;0m FlightTicketCard(from: "NYC", to: "SFO")
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39mcall to main actor-isolated initializer 'init(from:to:)' in a synchronous nonisolated context[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call\ActorIsolatedCall]8;;\]
[0;36m |[0;0m[0;36m50 |[0;0m .cities(from: "New York City", to: "San Francisco").duration("1h 45m")
[0;36m |[0;0m[0;36m51 |[0;0m .times(departure: "10:00 AM", arrival: "11:30 AM")
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
macro expansion #Preview:29:77: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
`- /Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Components/Organisms/FlightTicketCard.swift:239:2: [1;39mnote: [1;39mexpanded code originates here[0;0m
[0;36m192 |[0;0m // in-preview style proving external implementability (token-fed, soft accent
[0;36m193 |[0;0m // banner with the route line and the price).
[0;36m194 |[0;0m [4;39m#Preview("Styles × light/dark") {[0;0m
[0;36m|[0;0m `- [1;39mnote: [1;39min expansion of macro 'Preview' here[0;0m
[0;36m195 |[0;0m struct BannerTicketStyle: FlightTicketCardStyle {
[0;36m196 |[0;0m func makeBody(configuration: FlightTicketCardConfiguration) -> some View {
[0;36m:[0;0m
[0;36m237 |[0;0m }
[0;36m238 |[0;0m }
[0;36m239 |[0;0m }
[0;36m +--- [0;0mmacro expansion #Preview [0;36m--------------------------------------[0;0m
[0;36m |[0;0m[0;36m27 |[0;0m HStack(spacing: configuration.spacing(.sm)) {
[0;36m |[0;0m[0;36m28 |[0;0m Text(configuration.from).textStyle(.labelMd700).foregroundStyle(theme.text(.textPrimary))
[0;36m |[0;0m[0;36m29 |[0;0m Icon(systemName: "arrow.forward").size(.xs).color(theme.text(.textTertiary))
[0;36m |[0;0m [0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m |[0;0m[0;36m30 |[0;0m Text(configuration.to).textStyle(.labelMd700).foregroundStyle(theme.text(.textPrimary))
[0;36m |[0;0m[0;36m31 |[0;0m if let duration = configuration.duration {
[0;36m +-----------------------------[0;0m[0;36m--------------------------------------[0;0m
[0;36m240 |[0;0m
[0;36m241 |[0;0m // The perforated tear shell is per-preset chrome (see header note): on the
[#ActorIsolatedCall]: <https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call>
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Steps.swift:370:86: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m368 |[0;0m Image(systemName: step.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m369 |[0;0m .font(.system(size: 20))
[0;36m370 |[0;0m .foregroundStyle(step.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m371 |[0;0m }
[0;36m372 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Steps.swift:370:116: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m368 |[0;0m Image(systemName: step.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m369 |[0;0m .font(.system(size: 20))
[0;36m370 |[0;0m .foregroundStyle(step.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m371 |[0;0m }
[0;36m372 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:241:114: [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m239 |[0;0m PreviewCase("Brand chrome (logo center)") {
[0;36m240 |[0;0m PageHeader("Brand")
[0;36m241 |[0;0m .logo(Text("Acme").font(.system(size: 22, weight: .heavy)).foregroundStyle(SemanticColor.primary.onSolid))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'onSolid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).onSolid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m242 |[0;0m .pageHeaderStyle(.brand)
[0;36m243 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/PageHeader.swift:249:51: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m247 |[0;0m .actions([.init(systemImage: "heart") {}, .init(systemImage: "xmark") {}])
[0;36m248 |[0;0m .pageHeaderStyle(.onImage)
[0;36m249 |[0;0m .background(SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m250 |[0;0m }
[0;36m251 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Timeline.swift:288:82: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m286 |[0;0m Image(systemName: item.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m287 |[0;0m .font(.system(size: 20))
[0;36m288 |[0;0m .foregroundStyle(item.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m289 |[0;0m }
[0;36m290 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Organisms/Timeline.swift:288:112: [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m286 |[0;0m Image(systemName: item.state == .done ? "checkmark.seal.fill" : "\(index + 1).circle.fill")
[0;36m287 |[0;0m .font(.system(size: 20))
[0;36m288 |[0;0m .foregroundStyle(item.state == .todo ? SemanticColor.neutral.solid : SemanticColor.primary.solid)
[0;36m|[0;0m `- [1;33mwarning: [1;39m'solid' is deprecated: Reads Theme.shared and ignores per-subtree .theme(); use theme.resolve(color).solid[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m289 |[0;0m }
[0;36m290 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/MultiSelect.swift:195:69: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m193 |[0;0m if effectiveClearable && !selection.isEmpty && isEnabled && !isLoading {
[0;36m194 |[0;0m Button { selection.removeAll() } label: {
[0;36m195 |[0;0m Icon(systemName: "xmark.circle.fill").size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m196 |[0;0m }
[0;36m197 |[0;0m .buttonStyle(.plain)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/MultiSelect.swift:214:67: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m212 |[0;0m if searchable {
[0;36m213 |[0;0m HStack(spacing: Theme.SpacingKey.sm.value) {
[0;36m214 |[0;0m Icon(systemName: "magnifyingglass").size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m215 |[0;0m TextField("Search", text: $query)
[0;36m216 |[0;0m .textStyle(.bodyBase400)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/MultiSelect.swift:294:59: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m292 |[0;0m Button { commitTag() } label: {
[0;36m293 |[0;0m HStack(spacing: Theme.SpacingKey.sm.value) {
[0;36m294 |[0;0m Icon(systemName: "plus.circle").size(.sm).color(theme.foreground(.fgHero))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m295 |[0;0m Text(String(themeKit: "Create \(trimmedQuery)")) // one interpolated key — fully localizable
[0;36m296 |[0;0m .textStyle(.bodyBase400)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/Pagination.swift:140:18: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m138 |[0;0m Icon(systemName: systemName)
[0;36m139 |[0;0m .size(.sm)
[0;36m140 |[0;0m .color(enabled ? theme.text(.textPrimary) : theme.text(.textDisabled))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m141 |[0;0m .frame(width: 36, height: 36)
[0;36m142 |[0;0m .mirrorsInRTL()
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/PhoneField.swift:250:56: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m248 |[0;0m // the trigger's *position* still mirrors with the leading slot.
[0;36m249 |[0;0m .environment(\.layoutDirection, .leftToRight)
[0;36m250 |[0;0m Icon(systemName: "chevron.down").size(.xs).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m251 |[0;0m }
[0;36m252 |[0;0m .contentShape(Rectangle())
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/PhoneField.swift:298:61: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m296 |[0;0m .environment(\.layoutDirection, .leftToRight) // keep "+44" LTR
[0;36m297 |[0;0m if option == effectiveDialCode {
[0;36m298 |[0;0m Icon(systemName: "checkmark").size(.sm).color(theme.foreground(.fgHero))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m299 |[0;0m }
[0;36m300 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/QuantityStepper.swift:65:18: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m63 |[0;0m Icon(systemName: systemName)
[0;36m64 |[0;0m .size(.sm)
[0;36m65 |[0;0m .color(enabled && isEnabled ? theme.text(.textHero) : theme.text(.textDisabled))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m66 |[0;0m .frame(width: 32, height: 32)
[0;36m67 |[0;0m // Glyph stays 32pt; expand the hit area to the 44pt WCAG 2.5.5 / HIG minimum.
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/SearchBar.swift:151:68: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m149 |[0;0m if showBackButton {
[0;36m150 |[0;0m Button { onBack?() } label: {
[0;36m151 |[0;0m Icon(systemName: "chevron.left").size(.md).color(theme.text(.textPrimary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m152 |[0;0m .mirrorsInRTL()
[0;36m153 |[0;0m }
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/SearchBar.swift:194:60: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m192 |[0;0m private var fieldCore: some View {
[0;36m193 |[0;0m HStack(spacing: Theme.SpacingKey.sm.value) {
[0;36m194 |[0;0m Icon(systemName: leadingSystemImage).size(.sm).color(theme.text(leadingIconColorKey))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m195 |[0;0m
[0;36m196 |[0;0m TextField(placeholder, text: $text)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/SearchBar.swift:241:65: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m239 |[0;0m } else if !text.isEmpty {
[0;36m240 |[0;0m Button { text = "" } label: {
[0;36m241 |[0;0m Icon(systemName: "xmark.circle.fill").size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m242 |[0;0m }
[0;36m243 |[0;0m .buttonStyle(.plain)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/SearchBar.swift:247:65: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m245 |[0;0m } else if let trailingSystemImage {
[0;36m246 |[0;0m Button { onTrailing?() } label: {
[0;36m247 |[0;0m Icon(systemName: trailingSystemImage).size(.sm).color(theme.text(.textPrimary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m248 |[0;0m }
[0;36m249 |[0;0m .buttonStyle(.plain)
/Users/admin/builder/spi-builder-workspace/Sources/ThemeKit/Components/Molecules/SearchBar.swift:357:76: [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m355 |[0;0m HStack(spacing: Theme.SpacingKey.sm.value) {
[0;36m356 |[0;0m if let leadingSystemImage {
[0;36m357 |[0;0m Icon(systemName: leadingSystemImage).size(.sm).color(theme.text(.textTertiary))
[0;36m|[0;0m `- [1;33mwarning: [1;39m'color' is deprecated: Use accent(_:) with a SemanticColor token.[0;0m [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
[0;36m358 |[0;0m }
[0;36m359 |[0;0m Text(item)
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
Build complete.
{
"default_localization" : "en",
"dependencies" : [
{
"identity" : "lottie-ios",
"requirement" : {
"range" : [
{
"lower_bound" : "4.4.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/airbnb/lottie-ios.git"
},
{
"identity" : "almanac",
"requirement" : {
"range" : [
{
"lower_bound" : "0.2.0",
"upper_bound" : "1.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/isamercan/Almanac.git"
},
{
"identity" : "swift-snapshot-testing",
"requirement" : {
"range" : [
{
"lower_bound" : "1.17.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/pointfreeco/swift-snapshot-testing.git"
},
{
"identity" : "swift-docc-plugin",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-docc-plugin"
}
],
"manifest_display_name" : "ThemeKit",
"name" : "ThemeKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "15.6"
},
{
"name" : "macos",
"version" : "14.0"
}
],
"products" : [
{
"name" : "ThemeKit",
"targets" : [
"ThemeKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ThemeKitCore",
"targets" : [
"ThemeKitCore"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ThemeKitLottie",
"targets" : [
"ThemeKitLottie"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ThemeKitCalendar",
"targets" : [
"ThemeKitCalendar"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "ThemeKitTravel",
"targets" : [
"ThemeKitTravel"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"6"
],
"targets" : [
{
"c99name" : "ThemeKitTravel",
"module_type" : "SwiftTarget",
"name" : "ThemeKitTravel",
"path" : "Sources/ThemeKitTravel",
"product_memberships" : [
"ThemeKitTravel"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitTravel/Resources/Localizable.xcstrings",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"Components/Atoms/FlightStatusBadge.swift",
"Components/Atoms/FlightStatusBadgeStyle.swift",
"Components/Atoms/SeatCell.swift",
"Components/Atoms/SeatCellStyle.swift",
"Components/Molecules/CabinClassSelector.swift",
"Components/Molecules/CabinClassSelectorStyle.swift",
"Components/Molecules/DatePriceStrip.swift",
"Components/Molecules/DatePriceStripStyle.swift",
"Components/Molecules/FlightRoute.swift",
"Components/Molecules/FlightRouteStyle.swift",
"Components/Molecules/LayoverRow.swift",
"Components/Molecules/LayoverRowStyle.swift",
"Components/Molecules/PassengerRow.swift",
"Components/Molecules/PassengerRowStyle.swift",
"Components/Molecules/RecentSearchRow.swift",
"Components/Molecules/RecentSearchRowStyle.swift",
"Components/Molecules/SeatLegend.swift",
"Components/Molecules/SeatLegendStyle.swift",
"Components/Molecules/TripTypeToggle.swift",
"Components/Molecules/TripTypeToggleStyle.swift",
"Components/Organisms/AirportPicker.swift",
"Components/Organisms/AirportPickerStyle.swift",
"Components/Organisms/AncillaryCard.swift",
"Components/Organisms/AncillaryCardStyle.swift",
"Components/Organisms/BoardingPass.swift",
"Components/Organisms/BoardingPassStyle.swift",
"Components/Organisms/CheckInFlow.swift",
"Components/Organisms/CheckInFlowStyle.swift",
"Components/Organisms/FareFamilyCard.swift",
"Components/Organisms/FareFamilyCardStyle.swift",
"Components/Organisms/FareSummary.swift",
"Components/Organisms/FareSummaryStyle.swift",
"Components/Organisms/FilterBar.swift",
"Components/Organisms/FilterBarStyle.swift",
"Components/Organisms/FlightCard.swift",
"Components/Organisms/FlightCardStyle.swift",
"Components/Organisms/FlightListItem.swift",
"Components/Organisms/FlightListItemStyle.swift",
"Components/Organisms/FlightModels.swift",
"Components/Organisms/FlightResultRow.swift",
"Components/Organisms/FlightResultRowStyle.swift",
"Components/Organisms/FlightTicketCard.swift",
"Components/Organisms/FlightTicketCardStyle.swift",
"Components/Organisms/FlightTracker.swift",
"Components/Organisms/FlightTrackerStyle.swift",
"Components/Organisms/PassengerForm.swift",
"Components/Organisms/PassengerFormStyle.swift",
"Components/Organisms/PaymentMethodSelector.swift",
"Components/Organisms/PaymentMethodSelectorStyle.swift",
"Components/Organisms/SavedCardsList.swift",
"Components/Organisms/SavedCardsListStyle.swift",
"Components/Organisms/SeatMap.swift",
"Components/Organisms/SeatMapModels.swift",
"Components/Organisms/SeatMapStyle.swift",
"Components/Organisms/StickyBookingBar.swift",
"Components/Organisms/StickyBookingBarStyle.swift",
"Components/Organisms/TransportCrossSellCard.swift",
"Components/Organisms/TransportCrossSellCardStyle.swift",
"Components/Organisms/TripSearchCard.swift",
"Components/Organisms/TripSearchCardStyle.swift",
"FlightDefaults.swift",
"Localization.swift",
"Models/FlightSearchModels.swift",
"Models/FlightStatusModels.swift",
"Models/PassengerModels.swift",
"Models/PaymentModels.swift",
"ThemeKitTravel.swift",
"Validation/PassengerRules.swift"
],
"target_dependencies" : [
"ThemeKit"
],
"type" : "library"
},
{
"c99name" : "ThemeKitTests",
"module_type" : "SwiftTarget",
"name" : "ThemeKitTests",
"path" : "Tests/ThemeKitTests",
"product_dependencies" : [
"SnapshotTesting"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/ThemeKitTests/Fixtures",
"rule" : {
"copy" : {
}
}
}
],
"sources" : [
"AccessibilitySemanticsTests.swift",
"AccessibilityTests.swift",
"AccordionStyleTests.swift",
"AdaptiveFitTests.swift",
"AlertToastSlotTests.swift",
"AnimatedImageLoaderTests.swift",
"AutocompleteTests.swift",
"BadgeChromeStyleTests.swift",
"BrandColorTests.swift",
"BreadcrumbsTests.swift",
"ButtonChromeStyleTests.swift",
"ButtonDockChromeStyleTests.swift",
"CSSThemeTests.swift",
"CalloutChromeStyleTests.swift",
"ChartCanvasTests.swift",
"CheckboxChromeStyleTests.swift",
"ChipStyleTitleTests.swift",
"ChromeStyleBehaviourTests.swift",
"ColorModelsTests.swift",
"CommandPaletteTests.swift",
"ComponentMotionTests.swift",
"ContentContrastTests.swift",
"ControllableStateTests.swift",
"CountBadgeStyleTests.swift",
"CouponChromeStyleTests.swift",
"CustomTextStyleRegistrationTests.swift",
"CustomTokenRegistrationTests.swift",
"CustomTokenTests.swift",
"DataTablePagingTests.swift",
"DateFieldTests.swift",
"DateWheelPickerTests.swift",
"DesignCatalogTests.swift",
"DesignParserTests.swift",
"DialogStyleTests.swift",
"DividerStyleTests.swift",
"DrawerPresenterTests.swift",
"EmptyStateStyleTests.swift",
"FeedbackPresenterTests.swift",
"Generated/L10nKeyInvariantTests.swift",
"GifGenerator.swift",
"HexColorTests.swift",
"IconTileStyleTests.swift",
"InfoMessageIconsTests.swift",
"InfoMessageTests.swift",
"InlineTextStyleTests.swift",
"InputNumberTests.swift",
"L10nGenerationGateTests.swift",
"L10nResolverTests.swift",
"L10nViewLayerTests.swift",
"LanguageSwitcherRegionTests.swift",
"LocalizationTests.swift",
"MeasuredLayoutTests.swift",
"MotionSpringTests.swift",
"MultiLineTextInputLabelTests.swift",
"MultiSelectTests.swift",
"OTPDigitStyleTests.swift",
"OTPInputTests.swift",
"OnChangeCompatTests.swift",
"PaginationTests.swift",
"PriceTagStyleTests.swift",
"PriceTrendChartStyleTests.swift",
"RadioButtonChromeStyleTests.swift",
"RadiusCappingTests.swift",
"RadiusRoleTests.swift",
"RangeSliderStyleTests.swift",
"RangeSliderTests.swift",
"RenderSmokeTests.swift",
"ScreenshotGenerator.swift",
"SearchBarTests.swift",
"SegmentedControlStyleTests.swift",
"SegmentedTabBarChromeStyleTests.swift",
"SemanticColorResolvedTests.swift",
"SheetHeaderStyleTests.swift",
"SheetPresenterTests.swift",
"SkeletonStyleTests.swift",
"Snapshot/AirportPickerSnapshotTests.swift",
"Snapshot/AlertDialogSnapshotTests.swift",
"Snapshot/BadgesChromeStyleSnapshotTests.swift",
"Snapshot/ButtonChromeStyleSnapshotTests.swift",
"Snapshot/ButtonSnapshotTests.swift",
"Snapshot/CabinClassSnapshotTests.swift",
"Snapshot/CalloutInlineTextChromeStyleSnapshotTests.swift",
"Snapshot/CheckInFlowSnapshotTests.swift",
"Snapshot/ChipRadioChromeStyleSnapshotTests.swift",
"Snapshot/ComponentSnapshotTests.swift",
"Snapshot/DialogChromeStyleSnapshotTests.swift",
"Snapshot/DisplaySnapshotTests.swift",
"Snapshot/DockSheetHeaderChromeStyleSnapshotTests.swift",
"Snapshot/EmptyStateChromeStyleSnapshotTests.swift",
"Snapshot/FlexibilitySnapshotTests.swift",
"Snapshot/FlightFavoriteSnapshotTests.swift",
"Snapshot/FlightTrackerSnapshotTests.swift",
"Snapshot/FormControlSnapshotTests.swift",
"Snapshot/HeroUIGapSnapshotTests.swift",
"Snapshot/L10nSnapshotTests.swift",
"Snapshot/LanguageSwitcherSnapshotTests.swift",
"Snapshot/PaymentSnapshotTests.swift",
"Snapshot/PriceTagChromeStyleSnapshotTests.swift",
"Snapshot/SavedCardsListSnapshotTests.swift",
"Snapshot/SkeletonDividerChromeStyleSnapshotTests.swift",
"Snapshot/SnapshotSupport.swift",
"Snapshot/TitleTabChromeStyleSnapshotTests.swift",
"Snapshot/TooltipChromeStyleSnapshotTests.swift",
"Snapshot/TransportCrossSellSnapshotTests.swift",
"Snapshot/TravelEditionSnapshotTests.swift",
"Snapshot/TravelSnapshotTests.swift",
"Snapshot/TripSearchCardSnapshotTests.swift",
"SwiftTestingPilot.swift",
"TableSortKeyTests.swift",
"TextInputHasErrorTests.swift",
"TextInputTests.swift",
"ThemeEnvironmentTests.swift",
"ThemeGeneratorGoldenTests.swift",
"ThemeGeneratorRobustnessTests.swift",
"ThemeGeneratorTests.swift",
"ThemeInjectionTests.swift",
"ThemeIntegrityTests.swift",
"ThemeKitRootObservationTests.swift",
"ThemeKitTravelModelTests.swift",
"ThemeKitTravelPackagingTests.swift",
"ThemePresetRenderProof.swift",
"ThemePresetsTests.swift",
"ThemeSubtreeColorResolutionTests.swift",
"ThemeTests.swift",
"TimeFieldTests.swift",
"TitleStyleTests.swift",
"ToggleChromeStyleTests.swift",
"TooltipPlacementTests.swift",
"TooltipStyleConfigurationTests.swift",
"TooltipStyleTests.swift",
"TooltipTests.swift",
"TravelComponentLogicTests.swift",
"TravelComponentsRenderTests.swift",
"UploadControllerTests.swift",
"ValidationTests.swift",
"ValidatorsEdgeCaseTests.swift",
"ValidatorsExtensibilityTests.swift"
],
"target_dependencies" : [
"ThemeKit",
"ThemeKitCore",
"ThemeKitTravel"
],
"type" : "test"
},
{
"c99name" : "ThemeKitLottie",
"module_type" : "SwiftTarget",
"name" : "ThemeKitLottie",
"path" : "Sources/ThemeKitLottie",
"product_memberships" : [
"ThemeKitLottie"
],
"sources" : [
"LottieEmptyState.swift",
"LottieIllustration.swift"
],
"target_dependencies" : [
"ThemeKit"
],
"type" : "library"
},
{
"c99name" : "ThemeKitCore",
"module_type" : "SwiftTarget",
"name" : "ThemeKitCore",
"path" : "Sources/ThemeKitCore",
"product_memberships" : [
"ThemeKit",
"ThemeKitCore",
"ThemeKitLottie",
"ThemeKitCalendar",
"ThemeKitTravel"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/DesignSpecs/brutalist.design.md",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/DesignSpecs/ios-native.design.md",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/DesignSpecs/linear-dark.design.md",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/DesignSpecs/notion-minimal.design.md",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/DesignSpecs/pastel-soft.design.md",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/Fonts/Inter.ttf",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/Fonts/Montserrat.ttf",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/Localizable.xcstrings",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/defaultTheme.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/defaultThemeDark.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/heroui.css",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/herouiTheme.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/herouiThemeDark.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/oceanTheme.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/oceanThemeDark.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/sunsetTheme.json",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/ThemeKitCore/Resources/sunsetThemeDark.json",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"Color+Extensions.swift",
"ColorContrast.swift",
"ControllableState.swift",
"Localization.swift",
"Theme/AspectRatio.swift",
"Theme/CSSTheme.swift",
"Theme/ColorTokens.generated.swift",
"Theme/ComponentDensity.swift",
"Theme/DesignMode/DesignMarkdownParser.swift",
"Theme/DesignMode/DesignMode.swift",
"Theme/DesignMode/DesignSpec.swift",
"Theme/DesignMode/DesignSpecCatalog.swift",
"Theme/DesignMode/DesignSpecResolver.swift",
"Theme/Grid.swift",
"Theme/MicroMotion.swift",
"Theme/Motion.swift",
"Theme/MotionSpring.swift",
"Theme/SemanticColor.swift",
"Theme/SemanticColorResolved.swift",
"Theme/Shadows.swift",
"Theme/Theme.swift",
"Theme/ThemeConfig.swift",
"Theme/ThemeContext.swift",
"Theme/ThemeGenerator.swift",
"Theme/ThemeKit.swift",
"Theme/ThemeKitLocalized.swift",
"Theme/ThemeModel.swift",
"Theme/ThemePresets.swift",
"Theme/ThemedHostingController.swift",
"Theme/Typography.swift",
"ThemeAnyShape.swift",
"ThemeKitFacade.swift",
"ThemeKitLocalizationValue.swift",
"ThemeKitStrings.swift",
"ThemeUnevenRoundedRect.swift"
],
"type" : "library"
},
{
"c99name" : "ThemeKitCalendarTests",
"module_type" : "SwiftTarget",
"name" : "ThemeKitCalendarTests",
"path" : "Tests/ThemeKitCalendarTests",
"sources" : [
"CalendarThemeBridgeTests.swift"
],
"target_dependencies" : [
"ThemeKitCalendar",
"ThemeKit"
],
"type" : "test"
},
{
"c99name" : "ThemeKitCalendar",
"module_type" : "SwiftTarget",
"name" : "ThemeKitCalendar",
"path" : "Sources/ThemeKitCalendar",
"product_memberships" : [
"ThemeKitCalendar"
],
"sources" : [
"CalendarTheme+ThemeKit.swift",
"DateRangePicker.swift",
"TimeWheel.swift"
],
"target_dependencies" : [
"ThemeKit"
],
"type" : "library"
},
{
"c99name" : "ThemeKit",
"module_type" : "SwiftTarget",
"name" : "ThemeKit",
"path" : "Sources/ThemeKit",
"product_memberships" : [
"ThemeKit",
"ThemeKitLottie",
"ThemeKitCalendar",
"ThemeKitTravel"
],
"sources" : [
"Accessibility/Accessibility.swift",
"Accessibility/DynamicType.swift",
"Accessibility/LayoutDirection.swift",
"ComponentDefaults.swift",
"Components/Atoms/AnimatedImage.swift",
"Components/Atoms/Aura.swift",
"Components/Atoms/Avatar.swift",
"Components/Atoms/Backdrop.swift",
"Components/Atoms/Badge.swift",
"Components/Atoms/BadgeChromeStyle.swift",
"Components/Atoms/Barcode.swift",
"Components/Atoms/BorderBeam.swift",
"Components/Atoms/Chip.swift",
"Components/Atoms/ChipStyle.swift",
"Components/Atoms/CloseButton.swift",
"Components/Atoms/CodeBlock.swift",
"Components/Atoms/ColorSwatch.swift",
"Components/Atoms/Confetti.swift",
"Components/Atoms/CornerRadiusModifier.swift",
"Components/Atoms/CountBadge.swift",
"Components/Atoms/CountBadgeStyle.swift",
"Components/Atoms/CountdownTimer.swift",
"Components/Atoms/DescriptionModal.swift",
"Components/Atoms/DividerStyle.swift",
"Components/Atoms/DividerView.swift",
"Components/Atoms/FareFeatureRow.swift",
"Components/Atoms/FeatureModels.swift",
"Components/Atoms/GaugeView.swift",
"Components/Atoms/HelperText.swift",
"Components/Atoms/Icon.swift",
"Components/Atoms/IconTile.swift",
"Components/Atoms/IconTileStyle.swift",
"Components/Atoms/Indicator.swift",
"Components/Atoms/InlineText.swift",
"Components/Atoms/InlineTextStyle.swift",
"Components/Atoms/InputLabel.swift",
"Components/Atoms/Join.swift",
"Components/Atoms/Kbd.swift",
"Components/Atoms/Mask.swift",
"Components/Atoms/MeterStyle.swift",
"Components/Atoms/PointsBadge.swift",
"Components/Atoms/PriceTag.swift",
"Components/Atoms/PriceTagStyle.swift",
"Components/Atoms/ProgressBar.swift",
"Components/Atoms/QRCode.swift",
"Components/Atoms/RadialProgress.swift",
"Components/Atoms/Rating.swift",
"Components/Atoms/RemoteImage.swift",
"Components/Atoms/RollingNumber.swift",
"Components/Atoms/ScoreBadge.swift",
"Components/Atoms/SearchBadge.swift",
"Components/Atoms/ShareButton.swift",
"Components/Atoms/Skeleton.swift",
"Components/Atoms/SkeletonGroup.swift",
"Components/Atoms/SkeletonStyle.swift",
"Components/Atoms/Spinner.swift",
"Components/Atoms/StatusDot.swift",
"Components/Atoms/SurfaceView.swift",
"Components/Atoms/Swap.swift",
"Components/Atoms/SwapButton.swift",
"Components/Atoms/Tag.swift",
"Components/Atoms/TextLink.swift",
"Components/Atoms/TextRotate.swift",
"Components/Atoms/TiltCard.swift",
"Components/Atoms/Title.swift",
"Components/Atoms/TitleStyle.swift",
"Components/Atoms/TrendChip.swift",
"Components/Atoms/Watermark.swift",
"Components/Molecules/Affix.swift",
"Components/Molecules/AmenityGrid.swift",
"Components/Molecules/AnchorNav.swift",
"Components/Molecules/Autocomplete.swift",
"Components/Molecules/Breadcrumbs.swift",
"Components/Molecules/ButtonGroup.swift",
"Components/Molecules/Buttons/ButtonChromeStyle.swift",
"Components/Molecules/Buttons/ButtonSize.swift",
"Components/Molecules/Buttons/Buttons.swift",
"Components/Molecules/Buttons/ThemeButton.swift",
"Components/Molecules/CalendarView.swift",
"Components/Molecules/CalendarYearPicker.swift",
"Components/Molecules/Cascader.swift",
"Components/Molecules/Charts/AreaChart.swift",
"Components/Molecules/Charts/BarChart.swift",
"Components/Molecules/Charts/ChartModels.swift",
"Components/Molecules/Charts/ChartSupport.swift",
"Components/Molecules/Charts/DonutChart.swift",
"Components/Molecules/Charts/LineChart.swift",
"Components/Molecules/Checkbox.swift",
"Components/Molecules/CheckboxChromeStyle.swift",
"Components/Molecules/CheckboxGroup.swift",
"Components/Molecules/Chips.swift",
"Components/Molecules/ColorArea.swift",
"Components/Molecules/ColorField.swift",
"Components/Molecules/ColorModels.swift",
"Components/Molecules/ColorSlider.swift",
"Components/Molecules/ColorSwatchPicker.swift",
"Components/Molecules/ColumnsGrid.swift",
"Components/Molecules/ControlRow.swift",
"Components/Molecules/CurrencyPicker.swift",
"Components/Molecules/DateField.swift",
"Components/Molecules/DateWheelPicker.swift",
"Components/Molecules/Dropdown.swift",
"Components/Molecules/EmojiReactionButton.swift",
"Components/Molecules/FieldButton.swift",
"Components/Molecules/FieldStyle.swift",
"Components/Molecules/Fieldset.swift",
"Components/Molecules/FileInput.swift",
"Components/Molecules/FilterGroup.swift",
"Components/Molecules/FilterRow.swift",
"Components/Molecules/Flex.swift",
"Components/Molecules/FlowLayout.swift",
"Components/Molecules/GuestSelector.swift",
"Components/Molecules/HoverCard.swift",
"Components/Molecules/InputGroup.swift",
"Components/Molecules/InputNumber.swift",
"Components/Molecules/InstallmentPicker.swift",
"Components/Molecules/InstallmentSelector.swift",
"Components/Molecules/LanguageSwitcher.swift",
"Components/Molecules/MapPriceMarker.swift",
"Components/Molecules/Masonry.swift",
"Components/Molecules/Mentions.swift",
"Components/Molecules/MultiLineTextInput.swift",
"Components/Molecules/MultiSelect.swift",
"Components/Molecules/OTPInput.swift",
"Components/Molecules/Pagination.swift",
"Components/Molecules/PaymentCardField.swift",
"Components/Molecules/PhoneField.swift",
"Components/Molecules/PriceBreakdown.swift",
"Components/Molecules/PriceHistogram.swift",
"Components/Molecules/PriceTrendChart.swift",
"Components/Molecules/PriceTrendChartStyle.swift",
"Components/Molecules/ProgressIndicator.swift",
"Components/Molecules/QuantityStepper.swift",
"Components/Molecules/RadioButton.swift",
"Components/Molecules/RadioButtonChromeStyle.swift",
"Components/Molecules/RadioGroup.swift",
"Components/Molecules/RangeSlider.swift",
"Components/Molecules/RangeSliderStyle.swift",
"Components/Molecules/ScrollShadow.swift",
"Components/Molecules/ScrubGallery.swift",
"Components/Molecules/SearchBar.swift",
"Components/Molecules/SearchField.swift",
"Components/Molecules/SearchSummary.swift",
"Components/Molecules/SegmentedControl.swift",
"Components/Molecules/SegmentedControlStyle.swift",
"Components/Molecules/Select.swift",
"Components/Molecules/SelectBox.swift",
"Components/Molecules/SelectStyle.swift",
"Components/Molecules/Slider.swift",
"Components/Molecules/SmartSuggestion.swift",
"Components/Molecules/SortSummaryBar.swift",
"Components/Molecules/Space.swift",
"Components/Molecules/Splitter.swift",
"Components/Molecules/Stat.swift",
"Components/Molecules/StatStyle.swift",
"Components/Molecules/StepperRow.swift",
"Components/Molecules/Steps.swift",
"Components/Molecules/SuggestionRow.swift",
"Components/Molecules/TableCells.swift",
"Components/Molecules/TextInput.swift",
"Components/Molecules/TextInputFormatter.swift",
"Components/Molecules/ThemeContextMenu.swift",
"Components/Molecules/ThemeController.swift",
"Components/Molecules/ThemeToggle.swift",
"Components/Molecules/TimeField.swift",
"Components/Molecules/ToggleChromeStyle.swift",
"Components/Molecules/ToggleGroup.swift",
"Components/Molecules/Tooltip.swift",
"Components/Molecules/TooltipStyle.swift",
"Components/Molecules/Transfer.swift",
"Components/Molecules/TreeSelect.swift",
"Components/Molecules/TreeView.swift",
"Components/Molecules/ValidationRule.swift",
"Components/Organisms/Accordion.swift",
"Components/Organisms/AccordionGroup.swift",
"Components/Organisms/AccordionStyle.swift",
"Components/Organisms/ActionBar.swift",
"Components/Organisms/Agenda.swift",
"Components/Organisms/AgentPriceRow.swift",
"Components/Organisms/AlertDialog.swift",
"Components/Organisms/AlertToast.swift",
"Components/Organisms/AnchoredPopover.swift",
"Components/Organisms/BarStyle.swift",
"Components/Organisms/BlogCard.swift",
"Components/Organisms/BottomSheet.swift",
"Components/Organisms/BrowserFrame.swift",
"Components/Organisms/ButtonDock.swift",
"Components/Organisms/ButtonDockChromeStyle.swift",
"Components/Organisms/Callout.swift",
"Components/Organisms/CalloutChromeStyle.swift",
"Components/Organisms/Card.swift",
"Components/Organisms/CardStack.swift",
"Components/Organisms/CardStyle.swift",
"Components/Organisms/Carousel.swift",
"Components/Organisms/ChatBubble.swift",
"Components/Organisms/ColorPickerPanel.swift",
"Components/Organisms/CommandPalette.swift",
"Components/Organisms/Counter.swift",
"Components/Organisms/Coupon.swift",
"Components/Organisms/CouponChromeStyle.swift",
"Components/Organisms/DataTable.swift",
"Components/Organisms/DestinationCard.swift",
"Components/Organisms/Dialog.swift",
"Components/Organisms/DialogStyle.swift",
"Components/Organisms/Diff.swift",
"Components/Organisms/Drawer.swift",
"Components/Organisms/EmptyState.swift",
"Components/Organisms/EmptyStateStyle.swift",
"Components/Organisms/Feedback.swift",
"Components/Organisms/FeedbackDefaults.swift",
"Components/Organisms/FilterList.swift",
"Components/Organisms/FloatingActionButton.swift",
"Components/Organisms/Footer.swift",
"Components/Organisms/Gallery.swift",
"Components/Organisms/Hero.swift",
"Components/Organisms/HotelResultCard.swift",
"Components/Organisms/ImageCollage.swift",
"Components/Organisms/InfoBanner.swift",
"Components/Organisms/KanbanBoard.swift",
"Components/Organisms/KeyValueTable.swift",
"Components/Organisms/ListRow.swift",
"Components/Organisms/ListRowStyle.swift",
"Components/Organisms/ListView.swift",
"Components/Organisms/LocationCard.swift",
"Components/Organisms/LoyaltyCard.swift",
"Components/Organisms/MapCallout.swift",
"Components/Organisms/MenuCard.swift",
"Components/Organisms/NavigationBar.swift",
"Components/Organisms/NotificationCard.swift",
"Components/Organisms/PageHeader.swift",
"Components/Organisms/PageHeaderStyle.swift",
"Components/Organisms/PagingCarousel.swift",
"Components/Organisms/PhoneFrame.swift",
"Components/Organisms/Popconfirm.swift",
"Components/Organisms/PriceAlertCard.swift",
"Components/Organisms/PromoBanner.swift",
"Components/Organisms/RatingSummary.swift",
"Components/Organisms/ResultView.swift",
"Components/Organisms/ReviewCard.swift",
"Components/Organisms/RoomCard.swift",
"Components/Organisms/SegmentedTabBar.swift",
"Components/Organisms/SegmentedTabBarChromeStyle.swift",
"Components/Organisms/SelectionCards.swift",
"Components/Organisms/SheetHeader.swift",
"Components/Organisms/SheetHeaderStyle.swift",
"Components/Organisms/Sidebar.swift",
"Components/Organisms/ThemePicker.swift",
"Components/Organisms/TicketStub.swift",
"Components/Organisms/Timeline.swift",
"Components/Organisms/Toast.swift",
"Components/Organisms/ToastStyle.swift",
"Components/Organisms/Tour.swift",
"Components/Organisms/Upload.swift",
"Components/Organisms/VideoPlayerView.swift",
"Components/Organisms/WindowFrame.swift",
"CoreExports.swift",
"Extensions/Chrome.swift",
"Extensions/DismissDrag.swift",
"Extensions/GlassChrome.swift",
"Extensions/Shake.swift",
"Extensions/SlotContent.swift",
"FieldDefaults.swift",
"FormatDefaults.swift",
"ReadOnly.swift",
"Utils/AdaptiveFit.swift",
"Utils/AvailabilityCompat.swift",
"Utils/ComponentMotion.swift",
"Utils/Debounce.swift",
"Utils/Effects.swift",
"Utils/Haptics.swift",
"Utils/Impression.swift",
"Utils/MeasuredLayoutSupport.swift",
"Utils/PreviewMatrix.swift",
"Utils/SelectionHaptics.swift",
"Utils/ThemeMotion.swift",
"Validation/FormValidator.swift",
"Validation/FormWiring.swift",
"Validation/InfoMessage.swift",
"Validation/InfoMessageUI.swift",
"Validation/Validation.swift",
"Validation/Validators.swift"
],
"target_dependencies" : [
"ThemeKitCore"
],
"type" : "library"
}
],
"tools_version" : "6.2"
}
Done.