@swiftbrowser/swift 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. package/Package.swift +200 -9
  2. package/README.md +7 -9
  3. package/Sources/AVFoundation/AVFoundation.swift +131 -0
  4. package/Sources/AVFoundation/Asset.swift +487 -0
  5. package/Sources/AVFoundation/AudioSession.swift +144 -0
  6. package/Sources/AVFoundation/CMTime.swift +303 -0
  7. package/Sources/AVFoundation/Capture.swift +688 -0
  8. package/Sources/AVFoundation/Player.swift +749 -0
  9. package/Sources/AVFoundation/PlayerView.swift +117 -0
  10. package/Sources/AVKit/AVKit.swift +132 -0
  11. package/Sources/Accelerate/Accelerate.swift +122 -0
  12. package/Sources/AppIntents/AppIntents.swift +144 -0
  13. package/Sources/AppIntents/Parameters.swift +220 -0
  14. package/Sources/AppIntents/Shortcuts.swift +159 -0
  15. package/Sources/AudioToolbox/AudioToolbox.swift +55 -0
  16. package/Sources/AuthenticationServices/AuthenticationServices.swift +257 -0
  17. package/Sources/AuthenticationServices/Authorization.swift +251 -0
  18. package/Sources/Charts/Charts.swift +0 -4
  19. package/Sources/Combine/AnyCancellable.swift +65 -0
  20. package/Sources/Combine/AnyPublisher.swift +148 -0
  21. package/Sources/Combine/AnySubscriber.swift +230 -0
  22. package/Sources/Combine/Cancellable.swift +35 -0
  23. package/Sources/Combine/Codable.swift +29 -0
  24. package/Sources/Combine/CombineIdentifier.swift +45 -0
  25. package/Sources/Combine/Concurrency/ConcurrencyHelpers.swift +24 -0
  26. package/Sources/Combine/Concurrency/Future+Concurrency.swift +136 -0
  27. package/Sources/Combine/Concurrency/GENERATED-Publisher+Concurrency.swift +397 -0
  28. package/Sources/Combine/CurrentValueSubject.swift +252 -0
  29. package/Sources/Combine/CustomCombineIdentifierConvertible.swift +28 -0
  30. package/Sources/Combine/Future.swift +228 -0
  31. package/Sources/Combine/GENERATED-RootProtocols.swift +426 -0
  32. package/Sources/Combine/Helpers/ConduitBase.swift +40 -0
  33. package/Sources/Combine/Helpers/ConduitList.swift +59 -0
  34. package/Sources/Combine/Helpers/DebugHook.swift +177 -0
  35. package/Sources/Combine/Helpers/FilterProducer.swift +174 -0
  36. package/Sources/Combine/Helpers/Locking.swift +30 -0
  37. package/Sources/Combine/Helpers/PartialCompletion.swift +26 -0
  38. package/Sources/Combine/Helpers/ReduceProducer.swift +249 -0
  39. package/Sources/Combine/Helpers/SubjectSubscriber.swift +96 -0
  40. package/Sources/Combine/Helpers/SubscriberTap.swift +69 -0
  41. package/Sources/Combine/Helpers/SubscriptionStatus.swift +33 -0
  42. package/Sources/Combine/Helpers/SubscriptionTap.swift +33 -0
  43. package/Sources/Combine/Helpers/Utils.swift +30 -0
  44. package/Sources/Combine/Helpers/Violations.swift +33 -0
  45. package/Sources/Combine/ImmediateScheduler.swift +178 -0
  46. package/Sources/Combine/LICENSE +21 -0
  47. package/Sources/Combine/NotificationPublisher.swift +48 -0
  48. package/Sources/Combine/ObjectWillChange.swift +46 -0
  49. package/Sources/Combine/PassthroughSubject.swift +222 -0
  50. package/Sources/Combine/Publisher+Subscribe.swift +53 -0
  51. package/Sources/Combine/Publishers/Deferred.swift +48 -0
  52. package/Sources/Combine/Publishers/Empty.swift +54 -0
  53. package/Sources/Combine/Publishers/Fail.swift +42 -0
  54. package/Sources/Combine/Publishers/GENERATED-Publishers.Catch.swift +673 -0
  55. package/Sources/Combine/Publishers/GENERATED-Publishers.Encode.swift +388 -0
  56. package/Sources/Combine/Publishers/GENERATED-Publishers.MapKeyPath.swift +384 -0
  57. package/Sources/Combine/Publishers/Just.swift +313 -0
  58. package/Sources/Combine/Publishers/Optional.Publisher.swift +315 -0
  59. package/Sources/Combine/Publishers/Publishers.AllSatisfy.swift +217 -0
  60. package/Sources/Combine/Publishers/Publishers.AssertNoFailure.swift +158 -0
  61. package/Sources/Combine/Publishers/Publishers.Autoconnect.swift +193 -0
  62. package/Sources/Combine/Publishers/Publishers.Breakpoint.swift +231 -0
  63. package/Sources/Combine/Publishers/Publishers.Buffer.swift +356 -0
  64. package/Sources/Combine/Publishers/Publishers.Collect.swift +102 -0
  65. package/Sources/Combine/Publishers/Publishers.CollectByCount.swift +195 -0
  66. package/Sources/Combine/Publishers/Publishers.CompactMap.swift +241 -0
  67. package/Sources/Combine/Publishers/Publishers.Comparison.swift +371 -0
  68. package/Sources/Combine/Publishers/Publishers.Concatenate.swift +474 -0
  69. package/Sources/Combine/Publishers/Publishers.Contains.swift +293 -0
  70. package/Sources/Combine/Publishers/Publishers.Count.swift +87 -0
  71. package/Sources/Combine/Publishers/Publishers.Debounce.swift +332 -0
  72. package/Sources/Combine/Publishers/Publishers.Delay.swift +269 -0
  73. package/Sources/Combine/Publishers/Publishers.Drop.swift +155 -0
  74. package/Sources/Combine/Publishers/Publishers.DropUntilOutput.swift +283 -0
  75. package/Sources/Combine/Publishers/Publishers.DropWhile.swift +378 -0
  76. package/Sources/Combine/Publishers/Publishers.Filter.swift +248 -0
  77. package/Sources/Combine/Publishers/Publishers.First.swift +261 -0
  78. package/Sources/Combine/Publishers/Publishers.FlatMap.swift +533 -0
  79. package/Sources/Combine/Publishers/Publishers.HandleEvents.swift +260 -0
  80. package/Sources/Combine/Publishers/Publishers.IgnoreOutput.swift +109 -0
  81. package/Sources/Combine/Publishers/Publishers.Last.swift +252 -0
  82. package/Sources/Combine/Publishers/Publishers.MakeConnectable.swift +82 -0
  83. package/Sources/Combine/Publishers/Publishers.Map.swift +351 -0
  84. package/Sources/Combine/Publishers/Publishers.MapError.swift +140 -0
  85. package/Sources/Combine/Publishers/Publishers.MeasureInterval.swift +187 -0
  86. package/Sources/Combine/Publishers/Publishers.Multicast.swift +284 -0
  87. package/Sources/Combine/Publishers/Publishers.Output.swift +241 -0
  88. package/Sources/Combine/Publishers/Publishers.PrefixUntilOutput.swift +197 -0
  89. package/Sources/Combine/Publishers/Publishers.PrefixWhile.swift +176 -0
  90. package/Sources/Combine/Publishers/Publishers.Print.swift +206 -0
  91. package/Sources/Combine/Publishers/Publishers.ReceiveOn.swift +227 -0
  92. package/Sources/Combine/Publishers/Publishers.Reduce.swift +204 -0
  93. package/Sources/Combine/Publishers/Publishers.RemoveDuplicates.swift +264 -0
  94. package/Sources/Combine/Publishers/Publishers.ReplaceEmpty.swift +201 -0
  95. package/Sources/Combine/Publishers/Publishers.ReplaceError.swift +211 -0
  96. package/Sources/Combine/Publishers/Publishers.Retry.swift +274 -0
  97. package/Sources/Combine/Publishers/Publishers.Scan.swift +331 -0
  98. package/Sources/Combine/Publishers/Publishers.Sequence.swift +437 -0
  99. package/Sources/Combine/Publishers/Publishers.SetFailureType.swift +120 -0
  100. package/Sources/Combine/Publishers/Publishers.Share.swift +104 -0
  101. package/Sources/Combine/Publishers/Publishers.SubscribeOn.swift +197 -0
  102. package/Sources/Combine/Publishers/Publishers.SwitchToLatest.swift +444 -0
  103. package/Sources/Combine/Publishers/Publishers.Throttle.swift +359 -0
  104. package/Sources/Combine/Publishers/Publishers.Timeout.swift +301 -0
  105. package/Sources/Combine/Publishers/Publishers.Zip.swift +720 -0
  106. package/Sources/Combine/Publishers/Publishers.swift +13 -0
  107. package/Sources/Combine/Publishers/Record.swift +237 -0
  108. package/Sources/Combine/Publishers/Result.Publisher.swift +337 -0
  109. package/Sources/Combine/Result.swift +46 -0
  110. package/Sources/Combine/Scheduler.swift +89 -0
  111. package/Sources/Combine/Schedulers.swift +211 -0
  112. package/Sources/Combine/Subject+Void.swift +17 -0
  113. package/Sources/Combine/Subscriber+Void.swift +20 -0
  114. package/Sources/Combine/Subscribers/Subscribers.Assign.swift +175 -0
  115. package/Sources/Combine/Subscribers/Subscribers.Completion.swift +90 -0
  116. package/Sources/Combine/Subscribers/Subscribers.Demand.swift +476 -0
  117. package/Sources/Combine/Subscribers/Subscribers.Sink.swift +206 -0
  118. package/Sources/Combine/Subscribers/Subscribers.swift +9 -0
  119. package/Sources/Combine/Subscription.swift +22 -0
  120. package/Sources/Combine/Subscriptions.swift +42 -0
  121. package/Sources/Combine/SwiftUIObservation.swift +10 -0
  122. package/Sources/Combine/_Introspection.swift +107 -0
  123. package/Sources/CommonCrypto/CommonCrypto.swift +80 -0
  124. package/Sources/Compression/Compression.swift +365 -0
  125. package/Sources/Compression/Deflate.swift +407 -0
  126. package/Sources/Compression/Zlib.swift +179 -0
  127. package/Sources/CoreFoundationTypes/CoreFoundationTypes.swift +101 -0
  128. package/Sources/CoreGraphics/CoreGraphics.swift +411 -0
  129. package/Sources/CoreGraphics/ProjectionTransforms.swift +28 -0
  130. package/Sources/CoreHaptics/CoreHaptics.swift +399 -0
  131. package/Sources/CoreImage/CIColor.swift +41 -0
  132. package/Sources/CoreImage/CIContext.swift +31 -0
  133. package/Sources/CoreImage/CIDetector.swift +57 -0
  134. package/Sources/CoreImage/CIFilter.swift +243 -0
  135. package/Sources/CoreImage/CIFilterBuiltins.swift +136 -0
  136. package/Sources/CoreImage/CIImage.swift +162 -0
  137. package/Sources/CoreImage/QRCode.swift +393 -0
  138. package/Sources/CoreLocation/Coordinate.swift +30 -0
  139. package/Sources/CoreLocation/Location.swift +65 -0
  140. package/Sources/CoreML/Evaluation.swift +414 -0
  141. package/Sources/CoreML/FeatureValue.swift +266 -0
  142. package/Sources/CoreML/Model.swift +269 -0
  143. package/Sources/CoreML/MultiArray.swift +92 -0
  144. package/Sources/CoreML/Specification.swift +233 -0
  145. package/Sources/CoreText/CoreText.swift +64 -0
  146. package/Sources/CoreTransferable/CoreTransferable.swift +606 -0
  147. package/Sources/CryptoKit/ChaChaPoly.swift +258 -0
  148. package/Sources/CryptoKit/CryptoKit.swift +375 -0
  149. package/Sources/CryptoKit/Curve25519.swift +317 -0
  150. package/Sources/CryptoKit/P256.swift +321 -0
  151. package/Sources/FoundationBridge/AppStorage.swift +165 -0
  152. package/Sources/FoundationBridge/AssetResources.swift +90 -0
  153. package/Sources/FoundationBridge/AsyncBytes.swift +128 -0
  154. package/Sources/FoundationBridge/AsyncImage.swift +116 -0
  155. package/Sources/FoundationBridge/AttributedStrings.swift +16 -0
  156. package/Sources/{_FoundationCommon → FoundationBridge}/Bundle.swift +41 -4
  157. package/Sources/FoundationBridge/CombineExports.swift +8 -0
  158. package/Sources/FoundationBridge/CoreFoundation.swift +77 -0
  159. package/Sources/FoundationBridge/Dispatch.swift +458 -0
  160. package/Sources/FoundationBridge/EnvironmentFoundation.swift +41 -0
  161. package/Sources/FoundationBridge/FileImporter.swift +128 -0
  162. package/Sources/FoundationBridge/FileSystem.swift +68 -0
  163. package/Sources/FoundationBridge/FoundationBridge.swift +24 -72
  164. package/Sources/FoundationBridge/HostResolution.swift +31 -0
  165. package/Sources/FoundationBridge/ItemProvider.swift +655 -0
  166. package/Sources/FoundationBridge/KeyValueObserving.swift +138 -0
  167. package/Sources/FoundationBridge/Links.swift +127 -0
  168. package/Sources/FoundationBridge/ListFormatter.swift +32 -0
  169. package/Sources/FoundationBridge/Localization.swift +149 -0
  170. package/Sources/FoundationBridge/Locks.swift +50 -0
  171. package/Sources/FoundationBridge/Markdown.swift +527 -0
  172. package/Sources/FoundationBridge/MeasurementFormat.swift +95 -0
  173. package/Sources/FoundationBridge/NotificationCenter.swift +154 -0
  174. package/Sources/FoundationBridge/OpenURLHandlers.swift +60 -0
  175. package/Sources/FoundationBridge/Operation.swift +195 -0
  176. package/Sources/FoundationBridge/ProcessInfo.swift +32 -0
  177. package/Sources/FoundationBridge/RelativeDateTimeFormatter.swift +136 -0
  178. package/Sources/FoundationBridge/SceneStorage.swift +78 -0
  179. package/Sources/FoundationBridge/SecurityExports.swift +8 -0
  180. package/Sources/FoundationBridge/Selector.swift +226 -0
  181. package/Sources/FoundationBridge/StringComparators.swift +17 -0
  182. package/Sources/FoundationBridge/Table.swift +211 -0
  183. package/Sources/FoundationBridge/TextAttributes.swift +42 -0
  184. package/Sources/FoundationBridge/Timer.swift +6 -1
  185. package/Sources/FoundationBridge/URLSession.swift +718 -0
  186. package/Sources/{_FoundationCommon → FoundationBridge}/UserDefaults.swift +17 -4
  187. package/Sources/FoundationBridge/WebAuthRedirects.swift +227 -0
  188. package/Sources/FoundationBridge/WebSocket.swift +187 -0
  189. package/Sources/FoundationModels/FoundationModels.swift +1098 -0
  190. package/Sources/ImageIO/GIF.swift +72 -0
  191. package/Sources/ImageIO/ImageIO.swift +248 -0
  192. package/Sources/ImageIO/ImageTypes.swift +28 -0
  193. package/Sources/LinkPresentation/LinkPresentation.swift +249 -0
  194. package/Sources/LocalAuthentication/LAContext.swift +86 -0
  195. package/Sources/MapKit/Geometry.swift +223 -0
  196. package/Sources/MapKit/Map.swift +638 -0
  197. package/Sources/MapKit/MapView.swift +229 -0
  198. package/Sources/MobileCoreServices/MobileCoreServices.swift +28 -0
  199. package/Sources/NaturalLanguage/LanguageIdentifier.swift +317 -0
  200. package/Sources/NaturalLanguage/NaturalLanguage.swift +135 -0
  201. package/Sources/OSLog/OSLog.swift +6 -0
  202. package/Sources/Photos/Photos.swift +572 -0
  203. package/Sources/PhotosUI/PhotosPicker.swift +248 -0
  204. package/Sources/PhotosUI/PhotosPickerItem.swift +261 -0
  205. package/Sources/QuickLook/QuickLook.swift +168 -0
  206. package/Sources/SafariServices/SafariServices.swift +106 -0
  207. package/Sources/Security/Security.swift +332 -0
  208. package/Sources/StoreKit/AppStore.swift +207 -0
  209. package/Sources/StoreKit/Products.swift +280 -0
  210. package/Sources/StoreKit/RequestReview.swift +28 -0
  211. package/Sources/StoreKit/StoreKit1.swift +486 -0
  212. package/Sources/StoreKit/StoreViews.swift +428 -0
  213. package/Sources/StoreKit/Transactions.swift +197 -0
  214. package/Sources/SwiftData/Macros.swift +58 -0
  215. package/Sources/SwiftData/ModelActor.swift +38 -0
  216. package/Sources/SwiftData/ModelContainer.swift +129 -0
  217. package/Sources/SwiftData/ModelContext.swift +451 -0
  218. package/Sources/SwiftData/PersistentModel.swift +238 -0
  219. package/Sources/SwiftData/Properties.swift +261 -0
  220. package/Sources/SwiftData/Query.swift +256 -0
  221. package/Sources/SwiftData/Schema.swift +192 -0
  222. package/Sources/SwiftData/Store.swift +146 -0
  223. package/Sources/SwiftData/StringPredicates.swift +125 -0
  224. package/Sources/SwiftDataMacros/EntryMacro.swift +82 -0
  225. package/Sources/SwiftDataMacros/GenerableMacro.swift +183 -0
  226. package/Sources/SwiftDataMacros/ModelActorMacro.swift +46 -0
  227. package/Sources/SwiftDataMacros/ModelMacro.swift +260 -0
  228. package/Sources/SwiftDataMacros/Plugin.swift +18 -0
  229. package/Sources/SwiftDataMacros/PredicateMacro.swift +1244 -0
  230. package/Sources/SwiftUI/API/Accessibility.swift +55 -6
  231. package/Sources/SwiftUI/API/AccessibilityExtras.swift +33 -0
  232. package/Sources/SwiftUI/API/AccessibilityFocus.swift +63 -0
  233. package/Sources/SwiftUI/API/Alert.swift +1 -1
  234. package/Sources/SwiftUI/API/AlignmentGuides.swift +65 -0
  235. package/Sources/SwiftUI/API/Animation.swift +37 -5
  236. package/Sources/SwiftUI/API/App.swift +31 -1
  237. package/Sources/SwiftUI/API/BindingCollections.swift +35 -0
  238. package/Sources/SwiftUI/API/BindingForEach.swift +27 -0
  239. package/Sources/SwiftUI/API/Bitmaps.swift +254 -0
  240. package/Sources/SwiftUI/API/ButtonStyles.swift +96 -0
  241. package/Sources/SwiftUI/API/Canvas.swift +337 -0
  242. package/Sources/SwiftUI/API/Color.swift +104 -28
  243. package/Sources/SwiftUI/API/ColorEffects.swift +52 -0
  244. package/Sources/SwiftUI/API/ColorPickerAndLabeledContent.swift +138 -0
  245. package/Sources/SwiftUI/API/ColorSpaces.swift +161 -0
  246. package/Sources/SwiftUI/API/Commands.swift +106 -0
  247. package/Sources/SwiftUI/API/ContainerBackground.swift +28 -0
  248. package/Sources/SwiftUI/API/ContentShape.swift +33 -0
  249. package/Sources/SwiftUI/API/ContentSizeCategory.swift +35 -0
  250. package/Sources/SwiftUI/API/ContentUnavailable.swift +101 -0
  251. package/Sources/SwiftUI/API/Controls.swift +59 -27
  252. package/Sources/SwiftUI/API/CustomLayout.swift +49 -10
  253. package/Sources/SwiftUI/API/CustomToolbarContent.swift +46 -0
  254. package/Sources/SwiftUI/API/Decorations.swift +1 -1
  255. package/Sources/SwiftUI/API/EditMode.swift +25 -82
  256. package/Sources/SwiftUI/API/Effects.swift +105 -7
  257. package/Sources/SwiftUI/API/Entry.swift +8 -0
  258. package/Sources/SwiftUI/API/Environment.swift +93 -9
  259. package/Sources/SwiftUI/API/EnvironmentSendable.swift +6 -0
  260. package/Sources/SwiftUI/API/Focus.swift +11 -3
  261. package/Sources/SwiftUI/API/Gauge.swift +3 -2
  262. package/Sources/SwiftUI/API/GeometryEffects.swift +232 -0
  263. package/Sources/SwiftUI/API/GeometryReader.swift +13 -2
  264. package/Sources/SwiftUI/API/GestureState.swift +65 -0
  265. package/Sources/SwiftUI/API/Gestures.swift +1 -1
  266. package/Sources/SwiftUI/API/Glass.swift +127 -0
  267. package/Sources/SwiftUI/API/Grid.swift +1 -1
  268. package/Sources/SwiftUI/API/GroupBoxAndControlGroup.swift +130 -0
  269. package/Sources/SwiftUI/API/KeyPress.swift +54 -0
  270. package/Sources/SwiftUI/API/LabelStyle.swift +13 -6
  271. package/Sources/SwiftUI/API/Layout.swift +67 -12
  272. package/Sources/SwiftUI/API/LazyStacks.swift +49 -0
  273. package/Sources/SwiftUI/API/LegacyAlert.swift +97 -0
  274. package/Sources/SwiftUI/API/Lists.swift +61 -6
  275. package/Sources/SwiftUI/API/Menu.swift +8 -1
  276. package/Sources/SwiftUI/API/Modifiers.swift +80 -10
  277. package/Sources/SwiftUI/API/MoreModifiers.swift +100 -0
  278. package/Sources/SwiftUI/API/Namespace.swift +44 -0
  279. package/Sources/SwiftUI/API/Navigation.swift +24 -9
  280. package/Sources/SwiftUI/API/NavigationDestinationBindings.swift +55 -0
  281. package/Sources/SwiftUI/API/ObservableObject.swift +16 -2
  282. package/Sources/SwiftUI/API/Path.swift +543 -0
  283. package/Sources/SwiftUI/API/Phase8Controls.swift +48 -31
  284. package/Sources/SwiftUI/API/PhaseAnimator.swift +130 -0
  285. package/Sources/SwiftUI/API/Picker.swift +11 -2
  286. package/Sources/SwiftUI/API/PointerAndKeyboard.swift +77 -0
  287. package/Sources/SwiftUI/API/Popover.swift +41 -0
  288. package/Sources/SwiftUI/API/Preferences.swift +262 -0
  289. package/Sources/SwiftUI/API/Presentation.swift +17 -4
  290. package/Sources/SwiftUI/API/PresentationExtras.swift +60 -0
  291. package/Sources/SwiftUI/API/Primitives.swift +164 -37
  292. package/Sources/SwiftUI/API/Publishers.swift +4 -4
  293. package/Sources/SwiftUI/API/Redaction.swift +75 -0
  294. package/Sources/SwiftUI/API/RowActions.swift +3 -2
  295. package/Sources/SwiftUI/API/Scenes.swift +131 -0
  296. package/Sources/SwiftUI/API/ScrollModifiers.swift +132 -0
  297. package/Sources/SwiftUI/API/ScrollTargets.swift +3 -3
  298. package/Sources/SwiftUI/API/ScrollViewReader.swift +144 -0
  299. package/Sources/SwiftUI/API/SectionSupplements.swift +96 -0
  300. package/Sources/SwiftUI/API/Shape.swift +214 -0
  301. package/Sources/SwiftUI/API/ShapeStyle.swift +105 -7
  302. package/Sources/SwiftUI/API/ShapeTrim.swift +78 -0
  303. package/Sources/SwiftUI/API/Sharing.swift +193 -0
  304. package/Sources/SwiftUI/API/StackLayouts.swift +199 -0
  305. package/Sources/SwiftUI/API/State.swift +18 -1
  306. package/Sources/SwiftUI/API/StatusGaps.swift +121 -0
  307. package/Sources/SwiftUI/API/SymbolEffects.swift +203 -0
  308. package/Sources/SwiftUI/API/TabContent.swift +841 -0
  309. package/Sources/SwiftUI/API/Table.swift +382 -0
  310. package/Sources/SwiftUI/API/Tabs.swift +148 -4
  311. package/Sources/SwiftUI/API/Tasks.swift +2 -2
  312. package/Sources/SwiftUI/API/Text.swift +386 -0
  313. package/Sources/SwiftUI/API/TextDates.swift +61 -0
  314. package/Sources/SwiftUI/API/TextDecorations.swift +52 -0
  315. package/Sources/SwiftUI/API/TextFieldAxis.swift +103 -0
  316. package/Sources/SwiftUI/API/TextFieldCommit.swift +52 -0
  317. package/Sources/SwiftUI/API/Toolbar.swift +52 -16
  318. package/Sources/SwiftUI/API/Transfer.swift +145 -0
  319. package/Sources/SwiftUI/API/UnevenRoundedRectangle.swift +66 -0
  320. package/Sources/SwiftUI/API/Video.swift +64 -0
  321. package/Sources/SwiftUI/API/View.swift +10 -2
  322. package/Sources/SwiftUI/API/ViewModifier.swift +4 -1
  323. package/Sources/SwiftUI/API/VisualEffect.swift +74 -1
  324. package/Sources/SwiftUI/API/Windows.swift +25 -0
  325. package/Sources/SwiftUI/Charts/Axis.swift +7 -1
  326. package/Sources/SwiftUI/Charts/AxisFormatsAndRanges.swift +68 -0
  327. package/Sources/SwiftUI/Charts/Chart.swift +17 -3
  328. package/Sources/SwiftUI/Charts/ChartProxy.swift +57 -0
  329. package/Sources/SwiftUI/Localization/Localization.swift +498 -0
  330. package/Sources/SwiftUI/Localization/PluralRules.swift +127 -0
  331. package/Sources/SwiftUI/Runtime/Executor.swift +2 -0
  332. package/Sources/SwiftUI/Runtime/Exports.swift +37 -1
  333. package/Sources/SwiftUI/Runtime/ImageSource.swift +310 -0
  334. package/Sources/SwiftUI/Runtime/JSON.swift +76 -4
  335. package/Sources/SwiftUI/Runtime/LazyRows.swift +99 -0
  336. package/Sources/SwiftUI/Runtime/Measurements.swift +140 -0
  337. package/Sources/SwiftUI/Runtime/Ops.swift +58 -12
  338. package/Sources/SwiftUI/Runtime/Reconciler.swift +10 -1
  339. package/Sources/SwiftUI/Runtime/Replay.swift +382 -0
  340. package/Sources/SwiftUI/Runtime/Runtime.swift +977 -198
  341. package/Sources/SwiftUI/Runtime/Sameness.swift +152 -0
  342. package/Sources/SwiftUI/Runtime/ViewPath.swift +89 -0
  343. package/Sources/SwiftUI/Runtime/ViewTraits.swift +175 -0
  344. package/Sources/SwiftUI/Runtime/WebAuthHeadless.swift +49 -0
  345. package/Sources/Symbols/Symbols.swift +25 -0
  346. package/Sources/Translation/Translation.swift +423 -0
  347. package/Sources/UIKit/Activity.swift +213 -0
  348. package/Sources/UIKit/Alerts.swift +69 -0
  349. package/Sources/UIKit/AppDelegate.swift +222 -0
  350. package/Sources/UIKit/Appearance.swift +84 -0
  351. package/Sources/UIKit/ColorConversions.swift +70 -0
  352. package/Sources/UIKit/Controls.swift +225 -0
  353. package/Sources/UIKit/Device.swift +200 -0
  354. package/Sources/UIKit/Feedback.swift +65 -0
  355. package/Sources/UIKit/Font.swift +307 -0
  356. package/Sources/UIKit/Graphics.swift +204 -0
  357. package/Sources/UIKit/HostingController.swift +185 -0
  358. package/Sources/UIKit/Identity.swift +24 -0
  359. package/Sources/UIKit/Introspectable.swift +510 -0
  360. package/Sources/UIKit/Pasteboard.swift +363 -0
  361. package/Sources/UIKit/PhotoAlbum.swift +81 -0
  362. package/Sources/UIKit/RemoteNotifications.swift +15 -0
  363. package/Sources/UIKit/Representable.swift +288 -0
  364. package/Sources/UIKit/SafeArea.swift +12 -0
  365. package/Sources/UIKit/SceneDelegates.swift +132 -0
  366. package/Sources/UIKit/Scenes.swift +40 -0
  367. package/Sources/UIKit/ScrollView.swift +157 -0
  368. package/Sources/UIKit/ShortcutItems.swift +67 -0
  369. package/Sources/UIKit/SymbolConfiguration.swift +124 -0
  370. package/Sources/UIKit/TargetAction.swift +123 -0
  371. package/Sources/UIKit/TextPaste.swift +161 -0
  372. package/Sources/UIKit/TextView.swift +538 -0
  373. package/Sources/UIKit/UIKit.swift +292 -0
  374. package/Sources/UIKit/UIView.swift +855 -0
  375. package/Sources/UIKit/ViewTranslation.swift +311 -0
  376. package/Sources/UniformTypeIdentifiers/UTType.swift +196 -0
  377. package/Sources/UserNotifications/Content.swift +370 -0
  378. package/Sources/UserNotifications/NotificationCenter.swift +309 -0
  379. package/Sources/WeatherKit/WeatherKit.swift +228 -0
  380. package/Sources/WebKit/WebKit.swift +245 -0
  381. package/Sources/os/os.swift +376 -0
  382. package/Sources/zlib/zlib.swift +6 -0
  383. package/index.d.ts +1 -1
  384. package/index.mjs +2 -2
  385. package/manifest.d.mts +2 -0
  386. package/manifest.mjs +39 -0
  387. package/package.json +5 -3
  388. package/sync-sources.mjs +21 -7
  389. package/Sources/FoundationLite/Common.swift +0 -3
  390. package/Sources/FoundationLite/FoundationLite.swift +0 -171
  391. package/Sources/FoundationLite/Interaction.swift +0 -146
  392. package/Sources/FoundationLite/Timer.swift +0 -48
  393. package/Sources/_FoundationCommon/_FoundationCommon.swift +0 -10
@@ -0,0 +1,262 @@
1
+ // Preferences: values views pass up to their ancestors, the way environment
2
+ // values pass down. A view sets one with `.preference(key:value:)`; the
3
+ // reconciler combines a subtree's values with the key's `reduce` (children in
4
+ // order) after the subtree's bodies ran, and `.onPreferenceChange`,
5
+ // `.overlayPreferenceValue` and `.backgroundPreferenceValue` read the result.
6
+ // A subtree that is skipped keeps the values it produced last time.
7
+ //
8
+ // Anchors: the Swift side has no layout, so an anchor resolves against the
9
+ // size the renderer reports for the anchored view (its element carries
10
+ // `reportsSize`, like a `GeometryReader`'s), in the view's own coordinates:
11
+ // `.bounds` is `CGRect(origin: .zero, size: measured)`. Until the first
12
+ // report it is zero, and the preference updates when the size arrives.
13
+
14
+ /// A named value produced by a view, combined over a subtree with `reduce`.
15
+ public protocol PreferenceKey {
16
+ associatedtype Value
17
+ static var defaultValue: Value { get }
18
+ static func reduce(value: inout Value, nextValue: () -> Value)
19
+ }
20
+
21
+ extension PreferenceKey where Value: ExpressibleByNilLiteral {
22
+ public static var defaultValue: Value { nil }
23
+ }
24
+
25
+ /// The preference values a subtree produced, by key type.
26
+ struct _PreferenceValues {
27
+ struct Entry {
28
+ var value: Any
29
+ /// The key's `reduce`, for combining with a later sibling's value.
30
+ let reduce: (Any, Any) -> Any
31
+ }
32
+
33
+ var entries: [ObjectIdentifier: Entry] = [:]
34
+
35
+ var isEmpty: Bool { entries.isEmpty }
36
+
37
+ subscript<K: PreferenceKey>(key: K.Type) -> K.Value? {
38
+ entries[ObjectIdentifier(key)]?.value as? K.Value
39
+ }
40
+
41
+ /// The key's combined value, or its default when nothing in the subtree set it.
42
+ func value<K: PreferenceKey>(of key: K.Type) -> K.Value { self[key] ?? K.defaultValue }
43
+
44
+ mutating func set<K: PreferenceKey>(_ key: K.Type, to value: K.Value) {
45
+ entries[ObjectIdentifier(key)] = Entry(value: value) { first, next in
46
+ var combined = first as! K.Value
47
+ K.reduce(value: &combined) { next as! K.Value }
48
+ return combined
49
+ }
50
+ }
51
+
52
+ mutating func remove<K: PreferenceKey>(_ key: K.Type) {
53
+ entries[ObjectIdentifier(key)] = nil
54
+ }
55
+
56
+ /// Adds a later sibling's values: a key both set is reduced, in order.
57
+ mutating func merge(_ later: _PreferenceValues) {
58
+ for (key, entry) in later.entries {
59
+ if var existing = entries[key] {
60
+ existing.value = existing.reduce(existing.value, entry.value)
61
+ entries[key] = existing
62
+ } else {
63
+ entries[key] = entry
64
+ }
65
+ }
66
+ }
67
+ }
68
+
69
+ /// A view that changes its subtree's preference values (after its children's are combined).
70
+ protocol _PreferenceWriting: _TraitBearing {
71
+ func _write(_ values: inout _PreferenceValues, measured: CGSize)
72
+ }
73
+
74
+ /// A view that reads its subtree's combined values.
75
+ protocol _PreferenceReading: _TraitBearing {
76
+ /// Called after the subtree reconciled; `last` is what the previous call returned.
77
+ @MainActor func _read(_ values: _PreferenceValues, last: Any?) -> (keep: Any?, action: (@MainActor () -> Void)?)
78
+ }
79
+
80
+ /// A view whose element reports its laid-out size (`reportsSize`).
81
+ protocol _SizeReporting: _TraitBearing {}
82
+
83
+ /// `overlayPreferenceValue` / `backgroundPreferenceValue`: the decoration is
84
+ /// made from the base's combined value, after the base reconciled.
85
+ protocol _PreferenceValueDecorating: _TraitBearing {
86
+ var _base: any View { get }
87
+ func _decoration(from values: _PreferenceValues) -> any View
88
+ }
89
+
90
+ // MARK: - Setting
91
+
92
+ struct _PreferenceView<Content: View, Key: PreferenceKey> {
93
+ let content: Content
94
+ let value: Key.Value
95
+ }
96
+ extension _PreferenceView: _PrimitiveView, _GroupView {
97
+ var _children: [any View] { [content] }
98
+ }
99
+ extension _PreferenceView: _PreferenceWriting {
100
+ func _write(_ values: inout _PreferenceValues, measured: CGSize) { values.set(Key.self, to: value) }
101
+ }
102
+
103
+ struct _TransformPreferenceView<Content: View, Key: PreferenceKey> {
104
+ let content: Content
105
+ let transform: (inout Key.Value) -> Void
106
+ }
107
+ extension _TransformPreferenceView: _PrimitiveView, _GroupView {
108
+ var _children: [any View] { [content] }
109
+ }
110
+ extension _TransformPreferenceView: _PreferenceWriting {
111
+ func _write(_ values: inout _PreferenceValues, measured: CGSize) {
112
+ var value = values.value(of: Key.self)
113
+ transform(&value)
114
+ values.set(Key.self, to: value)
115
+ }
116
+ }
117
+
118
+ nonisolated extension View {
119
+ /// Sets the key's value for this view; it replaces what the content set for the key.
120
+ public func preference<K: PreferenceKey>(key: K.Type = K.self, value: K.Value) -> some View {
121
+ _PreferenceView<Self, K>(content: self, value: value)
122
+ }
123
+
124
+ /// Changes the key's value the content produced (its default when it set none).
125
+ public func transformPreference<K: PreferenceKey>(_ key: K.Type = K.self, _ callback: @escaping (inout K.Value) -> Void) -> some View {
126
+ _TransformPreferenceView<Self, K>(content: self, transform: callback)
127
+ }
128
+ }
129
+
130
+ // MARK: - Reading
131
+
132
+ struct _PreferenceChangeView<Content: View, Key: PreferenceKey> where Key.Value: Equatable {
133
+ let content: Content
134
+ let action: (Key.Value) -> Void
135
+ }
136
+ extension _PreferenceChangeView: _PrimitiveView, _GroupView {
137
+ var _children: [any View] { [content] }
138
+ }
139
+ extension _PreferenceChangeView: _PreferenceReading {
140
+ @MainActor func _read(_ values: _PreferenceValues, last: Any?) -> (keep: Any?, action: (@MainActor () -> Void)?) {
141
+ let value = values.value(of: Key.self)
142
+ if let last = last as? Key.Value, last == value { return (last, nil) }
143
+ let action = self.action
144
+ return (value, { action(value) })
145
+ }
146
+ }
147
+
148
+ struct _PreferenceDecorationView<Content: View, Key: PreferenceKey, Decoration: View> {
149
+ let content: Content
150
+ let decoration: (Key.Value) -> Decoration
151
+ let role: String
152
+ let alignment: Alignment
153
+ }
154
+ extension _PreferenceDecorationView: _PrimitiveView {}
155
+ extension _PreferenceDecorationView: _HostView {
156
+ var _kind: String { "decorated" }
157
+ func _props(in environment: EnvironmentValues) -> _JSON {
158
+ .object(["role": .string(role), "alignment": .string(alignment._name)])
159
+ }
160
+ var _content: [any View] { [content] }
161
+ }
162
+ extension _PreferenceDecorationView: _PreferenceValueDecorating {
163
+ var _base: any View { content }
164
+ func _decoration(from values: _PreferenceValues) -> any View { decoration(values.value(of: Key.self)) }
165
+ }
166
+
167
+ nonisolated extension View {
168
+ /// Runs `action` after a render in which the key's combined value in this
169
+ /// subtree changed (and after the first, with its initial value).
170
+ public func onPreferenceChange<K: PreferenceKey>(_ key: K.Type = K.self, perform action: @escaping (K.Value) -> Void) -> some View where K.Value: Equatable {
171
+ _PreferenceChangeView<Self, K>(content: self, action: action)
172
+ }
173
+
174
+ /// An overlay made from the key's combined value in this view.
175
+ public func overlayPreferenceValue<K: PreferenceKey, V: View>(_ key: K.Type, alignment: Alignment = .center, @ViewBuilder _ transform: @escaping (K.Value) -> V) -> some View {
176
+ _PreferenceDecorationView<Self, K, V>(content: self, decoration: transform, role: "overlay", alignment: alignment)
177
+ }
178
+
179
+ /// A background made from the key's combined value in this view.
180
+ public func backgroundPreferenceValue<K: PreferenceKey, V: View>(_ key: K.Type, alignment: Alignment = .center, @ViewBuilder _ transform: @escaping (K.Value) -> V) -> some View {
181
+ _PreferenceDecorationView<Self, K, V>(content: self, decoration: transform, role: "background", alignment: alignment)
182
+ }
183
+ }
184
+
185
+ // MARK: - Anchors
186
+
187
+ /// A geometric value of a view, resolved with a `GeometryProxy` subscript.
188
+ public struct Anchor<Value> {
189
+ let value: Value
190
+
191
+ /// How to make an anchor from a view's bounds.
192
+ public struct Source {
193
+ let resolve: (CGRect) -> Value
194
+ }
195
+ }
196
+ extension Anchor: Equatable where Value: Equatable {}
197
+ extension Anchor: Hashable where Value: Hashable {}
198
+ extension Anchor: Sendable where Value: Sendable {}
199
+
200
+ extension Anchor.Source where Value == CGRect {
201
+ public static var bounds: Anchor<CGRect>.Source { .init { $0 } }
202
+ public static func rect(_ r: CGRect) -> Anchor<CGRect>.Source { .init { _ in r } }
203
+ }
204
+
205
+ extension Anchor.Source where Value == CGPoint {
206
+ public static func point(_ p: CGPoint) -> Anchor<CGPoint>.Source { .init { _ in p } }
207
+ public static func unitPoint(_ p: UnitPoint) -> Anchor<CGPoint>.Source {
208
+ .init { CGPoint(x: $0.minX + p.x * $0.width, y: $0.minY + p.y * $0.height) }
209
+ }
210
+ public static var topLeading: Anchor<CGPoint>.Source { unitPoint(.topLeading) }
211
+ public static var top: Anchor<CGPoint>.Source { unitPoint(.top) }
212
+ public static var topTrailing: Anchor<CGPoint>.Source { unitPoint(.topTrailing) }
213
+ public static var leading: Anchor<CGPoint>.Source { unitPoint(.leading) }
214
+ public static var center: Anchor<CGPoint>.Source { unitPoint(.center) }
215
+ public static var trailing: Anchor<CGPoint>.Source { unitPoint(.trailing) }
216
+ public static var bottomLeading: Anchor<CGPoint>.Source { unitPoint(.bottomLeading) }
217
+ public static var bottom: Anchor<CGPoint>.Source { unitPoint(.bottom) }
218
+ public static var bottomTrailing: Anchor<CGPoint>.Source { unitPoint(.bottomTrailing) }
219
+ }
220
+
221
+ extension GeometryProxy {
222
+ /// The anchor's value, in the anchored view's own coordinates (see the file comment).
223
+ public subscript<T>(anchor: Anchor<T>) -> T { anchor.value }
224
+ }
225
+
226
+ struct _AnchorPreferenceView<Content: View, A, Key: PreferenceKey> {
227
+ let content: Content
228
+ let source: Anchor<A>.Source
229
+ /// Sets the value (`anchorPreference`) or changes it (`transformAnchorPreference`).
230
+ let write: (inout _PreferenceValues, Anchor<A>) -> Void
231
+ }
232
+ extension _AnchorPreferenceView: _PrimitiveView, _SizeReporting {}
233
+ extension _AnchorPreferenceView: _HostView {
234
+ var _kind: String { "zstack" }
235
+ func _props(in environment: EnvironmentValues) -> _JSON {
236
+ .object(["alignment": .string(Alignment.center._name), "reportsSize": .bool(true)])
237
+ }
238
+ var _content: [any View] { [content] }
239
+ }
240
+ extension _AnchorPreferenceView: _PreferenceWriting {
241
+ func _write(_ values: inout _PreferenceValues, measured: CGSize) {
242
+ write(&values, Anchor(value: source.resolve(CGRect(origin: .zero, size: measured))))
243
+ }
244
+ }
245
+
246
+ nonisolated extension View {
247
+ /// Sets the key's value from an anchor of this view's bounds.
248
+ public func anchorPreference<A, K: PreferenceKey>(key: K.Type = K.self, value: Anchor<A>.Source, transform: @escaping (Anchor<A>) -> K.Value) -> some View {
249
+ _AnchorPreferenceView<Self, A, K>(content: self, source: value) { values, anchor in
250
+ values.set(K.self, to: transform(anchor))
251
+ }
252
+ }
253
+
254
+ /// Changes the key's value with an anchor of this view's bounds.
255
+ public func transformAnchorPreference<A, K: PreferenceKey>(key: K.Type = K.self, value: Anchor<A>.Source, transform: @escaping (inout K.Value, Anchor<A>) -> Void) -> some View {
256
+ _AnchorPreferenceView<Self, A, K>(content: self, source: value) { values, anchor in
257
+ var current = values.value(of: K.self)
258
+ transform(&current, anchor)
259
+ values.set(K.self, to: current)
260
+ }
261
+ }
262
+ }
@@ -3,11 +3,23 @@ public struct PresentationDetent: Hashable, Sendable {
3
3
  let name: String
4
4
  public static let medium = PresentationDetent(name: "medium")
5
5
  public static let large = PresentationDetent(name: "large")
6
+ /// A sheet this many points tall (`"height:<points>"`, capped at the large height).
7
+ public static func height(_ height: CGFloat) -> PresentationDetent { PresentationDetent(name: "height:\(Double(height))") }
8
+ /// A sheet this fraction of the screen tall (`"fraction:<f>"`, capped at the large height).
9
+ public static func fraction(_ fraction: CGFloat) -> PresentationDetent { PresentationDetent(name: "fraction:\(Double(fraction))") }
10
+
11
+ /// Orders detents smallest first (a height counts against an 852pt screen).
12
+ var _order: Double {
13
+ if name == "medium" { return 0.5 }
14
+ if name.hasPrefix("height:") { return (Double(name.dropFirst(7)) ?? 852) / 852 }
15
+ if name.hasPrefix("fraction:") { return Double(name.dropFirst(9)) ?? 1 }
16
+ return 1
17
+ }
6
18
  }
7
19
 
8
20
  /// Views that present a sheet. The runtime mounts the sheet content as a
9
21
  /// second child and emits it as a root-level `sheet` element while presented.
10
- protocol _SheetPresenting {
22
+ protocol _SheetPresenting: _TraitBearing {
11
23
  var _isPresented: Binding<Bool> { get }
12
24
  var _onDismiss: (@MainActor () -> Void)? { get }
13
25
  var _base: any View { get }
@@ -36,7 +48,7 @@ extension _SheetView: _SheetPresenting {
36
48
  var _fullScreen: Bool { fullScreen }
37
49
  }
38
50
 
39
- protocol _DetentsModifying {
51
+ protocol _DetentsModifying: _TraitBearing {
40
52
  var _detents: [String] { get }
41
53
  }
42
54
 
@@ -91,8 +103,9 @@ extension View {
91
103
  }
92
104
 
93
105
  public func presentationDetents(_ detents: Set<PresentationDetent>) -> some View {
94
- let order = ["medium", "large"]
95
- return _DetentsView(content: self, detents: order.filter { name in detents.contains { $0.name == name } })
106
+ // Smallest first: the page presents the sheet at the first.
107
+ let sorted = detents.sorted { ($0._order, $0.name) < ($1._order, $1.name) }
108
+ return _DetentsView(content: self, detents: sorted.map(\.name))
96
109
  }
97
110
  }
98
111
 
@@ -0,0 +1,60 @@
1
+ // Sheet and transition modifiers accepted for source compatibility. The
2
+ // page's sheet keeps its system background, corner radius and drag (to
3
+ // dismiss, and between detents); a navigation push or sheet keeps its own
4
+ // slide instead of iOS 18's zoom from a source view.
5
+ //
6
+ // `.presentationBackground`, `.presentationCornerRadius`,
7
+ // `.presentationBackgroundInteraction`, `.presentationSizing`,
8
+ // `.presentationDragIndicator`, `.interactiveDismissDisabled` (the sheet can
9
+ // still be dragged down), `.navigationTransition` and
10
+ // `.matchedTransitionSource` add nothing to the tree.
11
+
12
+ public struct PresentationBackgroundInteraction: Sendable {
13
+ let name: String
14
+ public static let automatic = PresentationBackgroundInteraction(name: "automatic")
15
+ public static let enabled = PresentationBackgroundInteraction(name: "enabled")
16
+ public static func enabled(upThrough detent: PresentationDetent) -> PresentationBackgroundInteraction { .enabled }
17
+ public static let disabled = PresentationBackgroundInteraction(name: "disabled")
18
+ }
19
+
20
+ public struct PresentationSizing: Sendable {
21
+ let name: String
22
+ public static let automatic = PresentationSizing(name: "automatic")
23
+ public static let page = PresentationSizing(name: "page")
24
+ public static let form = PresentationSizing(name: "form")
25
+ public static let fitted = PresentationSizing(name: "fitted")
26
+ }
27
+
28
+ /// A navigation transition (iOS 18); the page keeps the standard one.
29
+ public struct NavigationTransition: Sendable {
30
+ let name: String
31
+ public static let automatic = NavigationTransition(name: "automatic")
32
+ public static func zoom<ID: Hashable>(sourceID: ID, in namespace: Namespace.ID) -> NavigationTransition {
33
+ NavigationTransition(name: "zoom")
34
+ }
35
+ }
36
+
37
+ /// What `matchedTransitionSource(id:in:configuration:)` configures; unused.
38
+ public struct EmptyMatchedTransitionSourceConfiguration: Sendable {
39
+ public func background(_ style: Color) -> EmptyMatchedTransitionSourceConfiguration { self }
40
+ public func clipShape(_ shape: RoundedRectangle) -> EmptyMatchedTransitionSourceConfiguration { self }
41
+ public func shadow(color: Color = .black, radius: CGFloat, x: CGFloat = 0, y: CGFloat = 0)
42
+ -> EmptyMatchedTransitionSourceConfiguration { self }
43
+ }
44
+
45
+ nonisolated extension View {
46
+ public func presentationBackground<S: ShapeStyle>(_ style: S) -> some View { self }
47
+ public func presentationBackground<V: View>(alignment: Alignment = .center, @ViewBuilder content: () -> V) -> some View { self }
48
+ public func presentationCornerRadius(_ cornerRadius: CGFloat?) -> some View { self }
49
+ public func presentationBackgroundInteraction(_ interaction: PresentationBackgroundInteraction) -> some View { self }
50
+ public func presentationSizing(_ sizing: PresentationSizing) -> some View { self }
51
+ public func presentationDragIndicator(_ visibility: Visibility) -> some View { self }
52
+ public func interactiveDismissDisabled(_ isDisabled: Bool = true) -> some View { self }
53
+
54
+ public func navigationTransition(_ style: NavigationTransition) -> some View { self }
55
+ public func matchedTransitionSource<ID: Hashable>(id: ID, in namespace: Namespace.ID) -> some View { self }
56
+ public func matchedTransitionSource<ID: Hashable>(
57
+ id: ID, in namespace: Namespace.ID,
58
+ configuration: (EmptyMatchedTransitionSourceConfiguration) -> EmptyMatchedTransitionSourceConfiguration
59
+ ) -> some View { self }
60
+ }