# SwiftFormat configuration adapted from Peekaboo defaults (Swift 6 friendly)

--swiftversion 6.2

# Self handling
--self insert
--selfrequired

# Imports / extensions
--importgrouping testable-bottom
--extensionacl on-declarations

# Indentation
--indent 4
--indentcase false
--ifdef no-indent
--xcodeindentation enabled

# Line breaks
--linebreaks lf
--maxwidth 120

# Whitespace
--trimwhitespace always
--emptybraces no-space
--nospaceoperators ...,..<
--ranges no-space
--someAny true
--voidtype void

# Wrapping
--wraparguments before-first
--wrapparameters before-first
--wrapcollections before-first
--closingparen same-line

# Organization
--organizetypes class,struct,enum,extension
--extensionmark "MARK: - %t + %p"
--marktypes always
--markextensions always
--structthreshold 0
--enumthreshold 0

# Other
--stripunusedargs closure-only
--header ignore
--allman false

# Exclusions
--exclude .build,.swiftpm,DerivedData,node_modules,dist,coverage,xcuserdata,Peekaboo,Swabble,apps/android,apps/ios,apps/shared,apps/macos/Sources/ClawdisProtocol,apps/macos/Sources/ClawdbotProtocol
