@swiftbrowser/swift 0.0.0-stage → 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.
- package/Package.swift +214 -0
- package/README.md +10 -2
- package/Sources/AVFoundation/AVFoundation.swift +131 -0
- package/Sources/AVFoundation/Asset.swift +487 -0
- package/Sources/AVFoundation/AudioSession.swift +144 -0
- package/Sources/AVFoundation/CMTime.swift +303 -0
- package/Sources/AVFoundation/Capture.swift +688 -0
- package/Sources/AVFoundation/Player.swift +749 -0
- package/Sources/AVFoundation/PlayerView.swift +117 -0
- package/Sources/AVKit/AVKit.swift +132 -0
- package/Sources/Accelerate/Accelerate.swift +122 -0
- package/Sources/AppIntents/AppIntents.swift +144 -0
- package/Sources/AppIntents/Parameters.swift +220 -0
- package/Sources/AppIntents/Shortcuts.swift +159 -0
- package/Sources/AudioToolbox/AudioToolbox.swift +55 -0
- package/Sources/AuthenticationServices/AuthenticationServices.swift +257 -0
- package/Sources/AuthenticationServices/Authorization.swift +251 -0
- package/Sources/Charts/Charts.swift +61 -0
- package/Sources/Combine/AnyCancellable.swift +65 -0
- package/Sources/Combine/AnyPublisher.swift +148 -0
- package/Sources/Combine/AnySubscriber.swift +230 -0
- package/Sources/Combine/Cancellable.swift +35 -0
- package/Sources/Combine/Codable.swift +29 -0
- package/Sources/Combine/CombineIdentifier.swift +45 -0
- package/Sources/Combine/Concurrency/ConcurrencyHelpers.swift +24 -0
- package/Sources/Combine/Concurrency/Future+Concurrency.swift +136 -0
- package/Sources/Combine/Concurrency/GENERATED-Publisher+Concurrency.swift +397 -0
- package/Sources/Combine/CurrentValueSubject.swift +252 -0
- package/Sources/Combine/CustomCombineIdentifierConvertible.swift +28 -0
- package/Sources/Combine/Future.swift +228 -0
- package/Sources/Combine/GENERATED-RootProtocols.swift +426 -0
- package/Sources/Combine/Helpers/ConduitBase.swift +40 -0
- package/Sources/Combine/Helpers/ConduitList.swift +59 -0
- package/Sources/Combine/Helpers/DebugHook.swift +177 -0
- package/Sources/Combine/Helpers/FilterProducer.swift +174 -0
- package/Sources/Combine/Helpers/Locking.swift +30 -0
- package/Sources/Combine/Helpers/PartialCompletion.swift +26 -0
- package/Sources/Combine/Helpers/ReduceProducer.swift +249 -0
- package/Sources/Combine/Helpers/SubjectSubscriber.swift +96 -0
- package/Sources/Combine/Helpers/SubscriberTap.swift +69 -0
- package/Sources/Combine/Helpers/SubscriptionStatus.swift +33 -0
- package/Sources/Combine/Helpers/SubscriptionTap.swift +33 -0
- package/Sources/Combine/Helpers/Utils.swift +30 -0
- package/Sources/Combine/Helpers/Violations.swift +33 -0
- package/Sources/Combine/ImmediateScheduler.swift +178 -0
- package/Sources/Combine/LICENSE +21 -0
- package/Sources/Combine/NotificationPublisher.swift +48 -0
- package/Sources/Combine/ObjectWillChange.swift +46 -0
- package/Sources/Combine/PassthroughSubject.swift +222 -0
- package/Sources/Combine/Publisher+Subscribe.swift +53 -0
- package/Sources/Combine/Publishers/Deferred.swift +48 -0
- package/Sources/Combine/Publishers/Empty.swift +54 -0
- package/Sources/Combine/Publishers/Fail.swift +42 -0
- package/Sources/Combine/Publishers/GENERATED-Publishers.Catch.swift +673 -0
- package/Sources/Combine/Publishers/GENERATED-Publishers.Encode.swift +388 -0
- package/Sources/Combine/Publishers/GENERATED-Publishers.MapKeyPath.swift +384 -0
- package/Sources/Combine/Publishers/Just.swift +313 -0
- package/Sources/Combine/Publishers/Optional.Publisher.swift +315 -0
- package/Sources/Combine/Publishers/Publishers.AllSatisfy.swift +217 -0
- package/Sources/Combine/Publishers/Publishers.AssertNoFailure.swift +158 -0
- package/Sources/Combine/Publishers/Publishers.Autoconnect.swift +193 -0
- package/Sources/Combine/Publishers/Publishers.Breakpoint.swift +231 -0
- package/Sources/Combine/Publishers/Publishers.Buffer.swift +356 -0
- package/Sources/Combine/Publishers/Publishers.Collect.swift +102 -0
- package/Sources/Combine/Publishers/Publishers.CollectByCount.swift +195 -0
- package/Sources/Combine/Publishers/Publishers.CompactMap.swift +241 -0
- package/Sources/Combine/Publishers/Publishers.Comparison.swift +371 -0
- package/Sources/Combine/Publishers/Publishers.Concatenate.swift +474 -0
- package/Sources/Combine/Publishers/Publishers.Contains.swift +293 -0
- package/Sources/Combine/Publishers/Publishers.Count.swift +87 -0
- package/Sources/Combine/Publishers/Publishers.Debounce.swift +332 -0
- package/Sources/Combine/Publishers/Publishers.Delay.swift +269 -0
- package/Sources/Combine/Publishers/Publishers.Drop.swift +155 -0
- package/Sources/Combine/Publishers/Publishers.DropUntilOutput.swift +283 -0
- package/Sources/Combine/Publishers/Publishers.DropWhile.swift +378 -0
- package/Sources/Combine/Publishers/Publishers.Filter.swift +248 -0
- package/Sources/Combine/Publishers/Publishers.First.swift +261 -0
- package/Sources/Combine/Publishers/Publishers.FlatMap.swift +533 -0
- package/Sources/Combine/Publishers/Publishers.HandleEvents.swift +260 -0
- package/Sources/Combine/Publishers/Publishers.IgnoreOutput.swift +109 -0
- package/Sources/Combine/Publishers/Publishers.Last.swift +252 -0
- package/Sources/Combine/Publishers/Publishers.MakeConnectable.swift +82 -0
- package/Sources/Combine/Publishers/Publishers.Map.swift +351 -0
- package/Sources/Combine/Publishers/Publishers.MapError.swift +140 -0
- package/Sources/Combine/Publishers/Publishers.MeasureInterval.swift +187 -0
- package/Sources/Combine/Publishers/Publishers.Multicast.swift +284 -0
- package/Sources/Combine/Publishers/Publishers.Output.swift +241 -0
- package/Sources/Combine/Publishers/Publishers.PrefixUntilOutput.swift +197 -0
- package/Sources/Combine/Publishers/Publishers.PrefixWhile.swift +176 -0
- package/Sources/Combine/Publishers/Publishers.Print.swift +206 -0
- package/Sources/Combine/Publishers/Publishers.ReceiveOn.swift +227 -0
- package/Sources/Combine/Publishers/Publishers.Reduce.swift +204 -0
- package/Sources/Combine/Publishers/Publishers.RemoveDuplicates.swift +264 -0
- package/Sources/Combine/Publishers/Publishers.ReplaceEmpty.swift +201 -0
- package/Sources/Combine/Publishers/Publishers.ReplaceError.swift +211 -0
- package/Sources/Combine/Publishers/Publishers.Retry.swift +274 -0
- package/Sources/Combine/Publishers/Publishers.Scan.swift +331 -0
- package/Sources/Combine/Publishers/Publishers.Sequence.swift +437 -0
- package/Sources/Combine/Publishers/Publishers.SetFailureType.swift +120 -0
- package/Sources/Combine/Publishers/Publishers.Share.swift +104 -0
- package/Sources/Combine/Publishers/Publishers.SubscribeOn.swift +197 -0
- package/Sources/Combine/Publishers/Publishers.SwitchToLatest.swift +444 -0
- package/Sources/Combine/Publishers/Publishers.Throttle.swift +359 -0
- package/Sources/Combine/Publishers/Publishers.Timeout.swift +301 -0
- package/Sources/Combine/Publishers/Publishers.Zip.swift +720 -0
- package/Sources/Combine/Publishers/Publishers.swift +13 -0
- package/Sources/Combine/Publishers/Record.swift +237 -0
- package/Sources/Combine/Publishers/Result.Publisher.swift +337 -0
- package/Sources/Combine/Result.swift +46 -0
- package/Sources/Combine/Scheduler.swift +89 -0
- package/Sources/Combine/Schedulers.swift +211 -0
- package/Sources/Combine/Subject+Void.swift +17 -0
- package/Sources/Combine/Subscriber+Void.swift +20 -0
- package/Sources/Combine/Subscribers/Subscribers.Assign.swift +175 -0
- package/Sources/Combine/Subscribers/Subscribers.Completion.swift +90 -0
- package/Sources/Combine/Subscribers/Subscribers.Demand.swift +476 -0
- package/Sources/Combine/Subscribers/Subscribers.Sink.swift +206 -0
- package/Sources/Combine/Subscribers/Subscribers.swift +9 -0
- package/Sources/Combine/Subscription.swift +22 -0
- package/Sources/Combine/Subscriptions.swift +42 -0
- package/Sources/Combine/SwiftUIObservation.swift +10 -0
- package/Sources/Combine/_Introspection.swift +107 -0
- package/Sources/CommonCrypto/CommonCrypto.swift +80 -0
- package/Sources/Compression/Compression.swift +365 -0
- package/Sources/Compression/Deflate.swift +407 -0
- package/Sources/Compression/Zlib.swift +179 -0
- package/Sources/CoreFoundationTypes/CoreFoundationTypes.swift +101 -0
- package/Sources/CoreGraphics/CoreGraphics.swift +411 -0
- package/Sources/CoreGraphics/ProjectionTransforms.swift +28 -0
- package/Sources/CoreHaptics/CoreHaptics.swift +399 -0
- package/Sources/CoreImage/CIColor.swift +41 -0
- package/Sources/CoreImage/CIContext.swift +31 -0
- package/Sources/CoreImage/CIDetector.swift +57 -0
- package/Sources/CoreImage/CIFilter.swift +243 -0
- package/Sources/CoreImage/CIFilterBuiltins.swift +136 -0
- package/Sources/CoreImage/CIImage.swift +162 -0
- package/Sources/CoreImage/QRCode.swift +393 -0
- package/Sources/CoreLocation/Coordinate.swift +30 -0
- package/Sources/CoreLocation/Location.swift +65 -0
- package/Sources/CoreML/Evaluation.swift +414 -0
- package/Sources/CoreML/FeatureValue.swift +266 -0
- package/Sources/CoreML/Model.swift +269 -0
- package/Sources/CoreML/MultiArray.swift +92 -0
- package/Sources/CoreML/Specification.swift +233 -0
- package/Sources/CoreText/CoreText.swift +64 -0
- package/Sources/CoreTransferable/CoreTransferable.swift +606 -0
- package/Sources/CryptoKit/ChaChaPoly.swift +258 -0
- package/Sources/CryptoKit/CryptoKit.swift +375 -0
- package/Sources/CryptoKit/Curve25519.swift +317 -0
- package/Sources/CryptoKit/P256.swift +321 -0
- package/Sources/FoundationBridge/AppStorage.swift +165 -0
- package/Sources/FoundationBridge/AssetResources.swift +90 -0
- package/Sources/FoundationBridge/AsyncBytes.swift +128 -0
- package/Sources/FoundationBridge/AsyncImage.swift +116 -0
- package/Sources/FoundationBridge/AttributedStrings.swift +16 -0
- package/Sources/FoundationBridge/Bundle.swift +119 -0
- package/Sources/FoundationBridge/CombineExports.swift +8 -0
- package/Sources/FoundationBridge/CoreFoundation.swift +77 -0
- package/Sources/FoundationBridge/Dispatch.swift +458 -0
- package/Sources/FoundationBridge/EnvironmentFoundation.swift +41 -0
- package/Sources/FoundationBridge/FileImporter.swift +128 -0
- package/Sources/FoundationBridge/FileSystem.swift +68 -0
- package/Sources/FoundationBridge/FoundationBridge.swift +29 -0
- package/Sources/FoundationBridge/HostResolution.swift +31 -0
- package/Sources/FoundationBridge/ItemProvider.swift +655 -0
- package/Sources/FoundationBridge/KeyValueObserving.swift +138 -0
- package/Sources/FoundationBridge/Links.swift +127 -0
- package/Sources/FoundationBridge/ListFormatter.swift +32 -0
- package/Sources/FoundationBridge/Locale.swift +86 -0
- package/Sources/FoundationBridge/Localization.swift +149 -0
- package/Sources/FoundationBridge/Locks.swift +50 -0
- package/Sources/FoundationBridge/Markdown.swift +527 -0
- package/Sources/FoundationBridge/MeasurementFormat.swift +95 -0
- package/Sources/FoundationBridge/NotificationCenter.swift +154 -0
- package/Sources/FoundationBridge/OpenURLHandlers.swift +60 -0
- package/Sources/FoundationBridge/Operation.swift +195 -0
- package/Sources/FoundationBridge/ProcessInfo.swift +32 -0
- package/Sources/FoundationBridge/RelativeDateTimeFormatter.swift +136 -0
- package/Sources/FoundationBridge/SceneStorage.swift +78 -0
- package/Sources/FoundationBridge/SecurityExports.swift +8 -0
- package/Sources/FoundationBridge/Selector.swift +226 -0
- package/Sources/FoundationBridge/StringComparators.swift +17 -0
- package/Sources/FoundationBridge/Table.swift +211 -0
- package/Sources/FoundationBridge/TextAttributes.swift +42 -0
- package/Sources/FoundationBridge/Timer.swift +53 -0
- package/Sources/FoundationBridge/UITextChecker.swift +30 -0
- package/Sources/FoundationBridge/URLSession.swift +718 -0
- package/Sources/FoundationBridge/UserDefaults.swift +183 -0
- package/Sources/FoundationBridge/WebAuthRedirects.swift +227 -0
- package/Sources/FoundationBridge/WebSocket.swift +187 -0
- package/Sources/FoundationModels/FoundationModels.swift +1098 -0
- package/Sources/ImageIO/GIF.swift +72 -0
- package/Sources/ImageIO/ImageIO.swift +248 -0
- package/Sources/ImageIO/ImageTypes.swift +28 -0
- package/Sources/LinkPresentation/LinkPresentation.swift +249 -0
- package/Sources/LocalAuthentication/LAContext.swift +86 -0
- package/Sources/MapKit/Geometry.swift +223 -0
- package/Sources/MapKit/Map.swift +638 -0
- package/Sources/MapKit/MapView.swift +229 -0
- package/Sources/MobileCoreServices/MobileCoreServices.swift +28 -0
- package/Sources/NaturalLanguage/LanguageIdentifier.swift +317 -0
- package/Sources/NaturalLanguage/NaturalLanguage.swift +135 -0
- package/Sources/OSLog/OSLog.swift +6 -0
- package/Sources/Photos/Photos.swift +572 -0
- package/Sources/PhotosUI/PhotosPicker.swift +248 -0
- package/Sources/PhotosUI/PhotosPickerItem.swift +261 -0
- package/Sources/QuickLook/QuickLook.swift +168 -0
- package/Sources/SafariServices/SafariServices.swift +106 -0
- package/Sources/Security/Security.swift +332 -0
- package/Sources/StoreKit/AppStore.swift +207 -0
- package/Sources/StoreKit/Products.swift +280 -0
- package/Sources/StoreKit/RequestReview.swift +28 -0
- package/Sources/StoreKit/StoreKit1.swift +486 -0
- package/Sources/StoreKit/StoreViews.swift +428 -0
- package/Sources/StoreKit/Transactions.swift +197 -0
- package/Sources/SwiftData/Macros.swift +58 -0
- package/Sources/SwiftData/ModelActor.swift +38 -0
- package/Sources/SwiftData/ModelContainer.swift +129 -0
- package/Sources/SwiftData/ModelContext.swift +451 -0
- package/Sources/SwiftData/PersistentModel.swift +238 -0
- package/Sources/SwiftData/Properties.swift +261 -0
- package/Sources/SwiftData/Query.swift +256 -0
- package/Sources/SwiftData/Schema.swift +192 -0
- package/Sources/SwiftData/Store.swift +146 -0
- package/Sources/SwiftData/StringPredicates.swift +125 -0
- package/Sources/SwiftDataMacros/EntryMacro.swift +82 -0
- package/Sources/SwiftDataMacros/GenerableMacro.swift +183 -0
- package/Sources/SwiftDataMacros/ModelActorMacro.swift +46 -0
- package/Sources/SwiftDataMacros/ModelMacro.swift +260 -0
- package/Sources/SwiftDataMacros/Plugin.swift +18 -0
- package/Sources/SwiftDataMacros/PredicateMacro.swift +1244 -0
- package/Sources/SwiftUI/API/Accessibility.swift +181 -0
- package/Sources/SwiftUI/API/AccessibilityExtras.swift +33 -0
- package/Sources/SwiftUI/API/AccessibilityFocus.swift +63 -0
- package/Sources/SwiftUI/API/Alert.swift +221 -0
- package/Sources/SwiftUI/API/AlignmentGuides.swift +65 -0
- package/Sources/SwiftUI/API/Animation.swift +285 -0
- package/Sources/SwiftUI/API/App.swift +87 -0
- package/Sources/SwiftUI/API/BindingCollections.swift +35 -0
- package/Sources/SwiftUI/API/BindingForEach.swift +27 -0
- package/Sources/SwiftUI/API/Bitmaps.swift +254 -0
- package/Sources/SwiftUI/API/ButtonStyles.swift +96 -0
- package/Sources/SwiftUI/API/Canvas.swift +337 -0
- package/Sources/SwiftUI/API/Color.swift +237 -0
- package/Sources/SwiftUI/API/ColorEffects.swift +52 -0
- package/Sources/SwiftUI/API/ColorPickerAndLabeledContent.swift +138 -0
- package/Sources/SwiftUI/API/ColorSpaces.swift +161 -0
- package/Sources/SwiftUI/API/Commands.swift +106 -0
- package/Sources/SwiftUI/API/ContainerBackground.swift +28 -0
- package/Sources/SwiftUI/API/ContentShape.swift +33 -0
- package/Sources/SwiftUI/API/ContentSizeCategory.swift +35 -0
- package/Sources/SwiftUI/API/ContentUnavailable.swift +101 -0
- package/Sources/SwiftUI/API/Controls.swift +300 -0
- package/Sources/SwiftUI/API/CustomLayout.swift +442 -0
- package/Sources/SwiftUI/API/CustomToolbarContent.swift +46 -0
- package/Sources/SwiftUI/API/Decorations.swift +92 -0
- package/Sources/SwiftUI/API/EditMode.swift +212 -0
- package/Sources/SwiftUI/API/Effects.swift +388 -0
- package/Sources/SwiftUI/API/Entry.swift +8 -0
- package/Sources/SwiftUI/API/Environment.swift +439 -0
- package/Sources/SwiftUI/API/EnvironmentSendable.swift +6 -0
- package/Sources/SwiftUI/API/Focus.swift +137 -0
- package/Sources/SwiftUI/API/Font.swift +131 -0
- package/Sources/SwiftUI/API/Gauge.swift +290 -0
- package/Sources/SwiftUI/API/Geometry.swift +89 -0
- package/Sources/SwiftUI/API/GeometryEffects.swift +232 -0
- package/Sources/SwiftUI/API/GeometryReader.swift +135 -0
- package/Sources/SwiftUI/API/GestureState.swift +65 -0
- package/Sources/SwiftUI/API/Gestures.swift +342 -0
- package/Sources/SwiftUI/API/Glass.swift +127 -0
- package/Sources/SwiftUI/API/Grid.swift +188 -0
- package/Sources/SwiftUI/API/GroupBoxAndControlGroup.swift +130 -0
- package/Sources/SwiftUI/API/KeyPress.swift +54 -0
- package/Sources/SwiftUI/API/LabelStyle.swift +124 -0
- package/Sources/SwiftUI/API/Layout.swift +220 -0
- package/Sources/SwiftUI/API/LazyStacks.swift +49 -0
- package/Sources/SwiftUI/API/LegacyAlert.swift +97 -0
- package/Sources/SwiftUI/API/Lists.swift +331 -0
- package/Sources/SwiftUI/API/Menu.swift +58 -0
- package/Sources/SwiftUI/API/Modifiers.swift +313 -0
- package/Sources/SwiftUI/API/MoreModifiers.swift +100 -0
- package/Sources/SwiftUI/API/Namespace.swift +44 -0
- package/Sources/SwiftUI/API/Navigation.swift +386 -0
- package/Sources/SwiftUI/API/NavigationDestinationBindings.swift +55 -0
- package/Sources/SwiftUI/API/ObservableObject.swift +293 -0
- package/Sources/SwiftUI/API/OnChange.swift +48 -0
- package/Sources/SwiftUI/API/Path.swift +543 -0
- package/Sources/SwiftUI/API/Phase8Controls.swift +411 -0
- package/Sources/SwiftUI/API/PhaseAnimator.swift +130 -0
- package/Sources/SwiftUI/API/Picker.swift +185 -0
- package/Sources/SwiftUI/API/PointerAndKeyboard.swift +77 -0
- package/Sources/SwiftUI/API/Popover.swift +41 -0
- package/Sources/SwiftUI/API/Preferences.swift +262 -0
- package/Sources/SwiftUI/API/Presentation.swift +122 -0
- package/Sources/SwiftUI/API/PresentationExtras.swift +60 -0
- package/Sources/SwiftUI/API/Primitives.swift +517 -0
- package/Sources/SwiftUI/API/Publishers.swift +107 -0
- package/Sources/SwiftUI/API/Redaction.swift +75 -0
- package/Sources/SwiftUI/API/RowActions.swift +84 -0
- package/Sources/SwiftUI/API/Scenes.swift +131 -0
- package/Sources/SwiftUI/API/ScrollModifiers.swift +132 -0
- package/Sources/SwiftUI/API/ScrollTargets.swift +104 -0
- package/Sources/SwiftUI/API/ScrollViewReader.swift +144 -0
- package/Sources/SwiftUI/API/SectionSupplements.swift +96 -0
- package/Sources/SwiftUI/API/Shape.swift +214 -0
- package/Sources/SwiftUI/API/ShapeStyle.swift +409 -0
- package/Sources/SwiftUI/API/ShapeTrim.swift +78 -0
- package/Sources/SwiftUI/API/Sharing.swift +193 -0
- package/Sources/SwiftUI/API/StackLayouts.swift +199 -0
- package/Sources/SwiftUI/API/State.swift +144 -0
- package/Sources/SwiftUI/API/StatusGaps.swift +121 -0
- package/Sources/SwiftUI/API/StrokeStyle.swift +30 -0
- package/Sources/SwiftUI/API/SymbolEffects.swift +203 -0
- package/Sources/SwiftUI/API/TabContent.swift +841 -0
- package/Sources/SwiftUI/API/Table.swift +382 -0
- package/Sources/SwiftUI/API/Tabs.swift +263 -0
- package/Sources/SwiftUI/API/Tasks.swift +35 -0
- package/Sources/SwiftUI/API/Text.swift +386 -0
- package/Sources/SwiftUI/API/TextDates.swift +61 -0
- package/Sources/SwiftUI/API/TextDecorations.swift +52 -0
- package/Sources/SwiftUI/API/TextFieldAxis.swift +103 -0
- package/Sources/SwiftUI/API/TextFieldCommit.swift +52 -0
- package/Sources/SwiftUI/API/Timeline.swift +212 -0
- package/Sources/SwiftUI/API/Toolbar.swift +251 -0
- package/Sources/SwiftUI/API/Transfer.swift +145 -0
- package/Sources/SwiftUI/API/UnevenRoundedRectangle.swift +66 -0
- package/Sources/SwiftUI/API/Video.swift +64 -0
- package/Sources/SwiftUI/API/View.swift +215 -0
- package/Sources/SwiftUI/API/ViewModifier.swift +43 -0
- package/Sources/SwiftUI/API/VisualEffect.swift +155 -0
- package/Sources/SwiftUI/API/Windows.swift +25 -0
- package/Sources/SwiftUI/Charts/Axis.swift +325 -0
- package/Sources/SwiftUI/Charts/AxisFormatsAndRanges.swift +68 -0
- package/Sources/SwiftUI/Charts/Chart.swift +660 -0
- package/Sources/SwiftUI/Charts/ChartContent.swift +376 -0
- package/Sources/SwiftUI/Charts/ChartProxy.swift +57 -0
- package/Sources/SwiftUI/Charts/Marks.swift +204 -0
- package/Sources/SwiftUI/Charts/Plottable.swift +99 -0
- package/Sources/SwiftUI/Charts/Scales.swift +326 -0
- package/Sources/SwiftUI/Localization/Localization.swift +498 -0
- package/Sources/SwiftUI/Localization/PluralRules.swift +127 -0
- package/Sources/SwiftUI/Runtime/Executor.swift +85 -0
- package/Sources/SwiftUI/Runtime/Exports.swift +101 -0
- package/Sources/SwiftUI/Runtime/ImageSource.swift +310 -0
- package/Sources/SwiftUI/Runtime/JSON.swift +143 -0
- package/Sources/SwiftUI/Runtime/JSONParser.swift +443 -0
- package/Sources/SwiftUI/Runtime/LazyRows.swift +99 -0
- package/Sources/SwiftUI/Runtime/Measurements.swift +140 -0
- package/Sources/SwiftUI/Runtime/Ops.swift +152 -0
- package/Sources/SwiftUI/Runtime/Reconciler.swift +219 -0
- package/Sources/SwiftUI/Runtime/Replay.swift +382 -0
- package/Sources/SwiftUI/Runtime/Runtime.swift +2146 -0
- package/Sources/SwiftUI/Runtime/Sameness.swift +152 -0
- package/Sources/SwiftUI/Runtime/ViewPath.swift +89 -0
- package/Sources/SwiftUI/Runtime/ViewTraits.swift +175 -0
- package/Sources/SwiftUI/Runtime/WebAuthHeadless.swift +49 -0
- package/Sources/Symbols/Symbols.swift +25 -0
- package/Sources/Translation/Translation.swift +423 -0
- package/Sources/UIKit/Activity.swift +213 -0
- package/Sources/UIKit/Alerts.swift +69 -0
- package/Sources/UIKit/AppDelegate.swift +222 -0
- package/Sources/UIKit/Appearance.swift +84 -0
- package/Sources/UIKit/ColorConversions.swift +70 -0
- package/Sources/UIKit/Controls.swift +225 -0
- package/Sources/UIKit/Device.swift +200 -0
- package/Sources/UIKit/Feedback.swift +65 -0
- package/Sources/UIKit/Font.swift +307 -0
- package/Sources/UIKit/Graphics.swift +204 -0
- package/Sources/UIKit/HostingController.swift +185 -0
- package/Sources/UIKit/Identity.swift +24 -0
- package/Sources/UIKit/Introspectable.swift +510 -0
- package/Sources/UIKit/Pasteboard.swift +363 -0
- package/Sources/UIKit/PhotoAlbum.swift +81 -0
- package/Sources/UIKit/RemoteNotifications.swift +15 -0
- package/Sources/UIKit/Representable.swift +288 -0
- package/Sources/UIKit/SafeArea.swift +12 -0
- package/Sources/UIKit/SceneDelegates.swift +132 -0
- package/Sources/UIKit/Scenes.swift +40 -0
- package/Sources/UIKit/ScrollView.swift +157 -0
- package/Sources/UIKit/ShortcutItems.swift +67 -0
- package/Sources/UIKit/SymbolConfiguration.swift +124 -0
- package/Sources/UIKit/TargetAction.swift +123 -0
- package/Sources/UIKit/TextPaste.swift +161 -0
- package/Sources/UIKit/TextView.swift +538 -0
- package/Sources/UIKit/UIKit.swift +292 -0
- package/Sources/UIKit/UIView.swift +855 -0
- package/Sources/UIKit/ViewTranslation.swift +311 -0
- package/Sources/UniformTypeIdentifiers/UTType.swift +196 -0
- package/Sources/UserNotifications/Content.swift +370 -0
- package/Sources/UserNotifications/NotificationCenter.swift +309 -0
- package/Sources/WeatherKit/WeatherKit.swift +228 -0
- package/Sources/WebKit/WebKit.swift +245 -0
- package/Sources/os/os.swift +376 -0
- package/Sources/zlib/zlib.swift +6 -0
- package/index.d.ts +2 -0
- package/index.mjs +16 -0
- package/manifest.d.mts +2 -0
- package/manifest.mjs +39 -0
- package/package.json +30 -4
- package/sync-sources.mjs +33 -0
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
// `import UIKit` for the browser: the part of UIKit that code shared with
|
|
2
|
+
// SwiftUI apps leans on. `UIImage` is the SwiftUI shim's (re-exported, as on
|
|
3
|
+
// iOS SwiftUI uses UIKit's), with `UIColor`, `UIScreen`, and
|
|
4
|
+
// `UIApplication`'s lifecycle notifications. Views, view controllers and
|
|
5
|
+
// the rest are not here: code that needs them is a compile error in the
|
|
6
|
+
// browser build (keep it behind `#if !SWIFTBROWSER`).
|
|
7
|
+
|
|
8
|
+
// On iOS, UIKit brings Foundation, Core Graphics and Image I/O along.
|
|
9
|
+
@_exported import Foundation
|
|
10
|
+
@_exported import CoreGraphics
|
|
11
|
+
@_exported import ImageIO
|
|
12
|
+
// As on iOS, where UIKit brings Core Image along (CIImage, CIFilter).
|
|
13
|
+
@_exported import CoreImage
|
|
14
|
+
// iOS's UIKit brings UserNotifications along (`UNUserNotificationCenter` with `import UIKit`).
|
|
15
|
+
@_exported import UserNotifications
|
|
16
|
+
@_exported import class SwiftUI.UIImage
|
|
17
|
+
// UIKit tracks `@Observable` objects (iOS 18), so `@Observable` comes with it.
|
|
18
|
+
@_exported import Observation
|
|
19
|
+
import FoundationBridge
|
|
20
|
+
import SwiftUI
|
|
21
|
+
|
|
22
|
+
// MARK: - Colors
|
|
23
|
+
|
|
24
|
+
/// A color: RGBA in 0…1 (extended sRGB).
|
|
25
|
+
public final class UIColor: Hashable, @unchecked Sendable {
|
|
26
|
+
public let red: CGFloat
|
|
27
|
+
public let green: CGFloat
|
|
28
|
+
public let blue: CGFloat
|
|
29
|
+
public let alpha: CGFloat
|
|
30
|
+
/// For a semantic color (`label`, `systemGroupedBackground`…), its name and
|
|
31
|
+
/// the opacity applied on top of it: `Color(uiColor:)` hands the name to
|
|
32
|
+
/// the page, which draws it in the color scheme's appearance. The
|
|
33
|
+
/// components are its light appearance.
|
|
34
|
+
let semantic: (name: String, opacity: CGFloat)?
|
|
35
|
+
|
|
36
|
+
public init(red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat) {
|
|
37
|
+
(self.red, self.green, self.blue, self.alpha) = (red, green, blue, alpha)
|
|
38
|
+
semantic = nil
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
init(semantic name: String, opacity: CGFloat = 1, red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat) {
|
|
42
|
+
(self.red, self.green, self.blue, self.alpha) = (red, green, blue, alpha)
|
|
43
|
+
semantic = (name, opacity)
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/// The semantic color `name` with the components of its light appearance.
|
|
47
|
+
private static func named(_ name: String, _ red: CGFloat, _ green: CGFloat, _ blue: CGFloat, _ alpha: CGFloat = 1) -> UIColor {
|
|
48
|
+
UIColor(semantic: name, red: red, green: green, blue: blue, alpha: alpha)
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
public convenience init(white: CGFloat, alpha: CGFloat) {
|
|
52
|
+
self.init(red: white, green: white, blue: white, alpha: alpha)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
public convenience init(displayP3Red red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat) {
|
|
56
|
+
self.init(red: red, green: green, blue: blue, alpha: alpha)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/// A color that depends on the traits. The provider is asked once, with
|
|
60
|
+
/// the current traits; a semantic color it returns stays semantic, so the
|
|
61
|
+
/// page still draws it in the color scheme's appearance.
|
|
62
|
+
public convenience init(dynamicProvider: @escaping (UITraitCollection) -> UIColor) {
|
|
63
|
+
let color = dynamicProvider(UITraitCollection.current)
|
|
64
|
+
if let semantic = color.semantic {
|
|
65
|
+
self.init(semantic: semantic.name, opacity: semantic.opacity, red: color.red, green: color.green, blue: color.blue, alpha: color.alpha)
|
|
66
|
+
} else {
|
|
67
|
+
self.init(red: color.red, green: color.green, blue: color.blue, alpha: color.alpha)
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/// The color for `traitCollection`: this one (the page has one appearance).
|
|
72
|
+
public func resolvedColor(with traitCollection: UITraitCollection) -> UIColor { self }
|
|
73
|
+
|
|
74
|
+
public convenience init(cgColor: CGColor) {
|
|
75
|
+
let c = cgColor.components ?? [0, 0, 0, 1]
|
|
76
|
+
self.init(red: c[0], green: c.count > 1 ? c[1] : c[0], blue: c.count > 2 ? c[2] : c[0], alpha: c.last ?? 1)
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/// Hue, saturation and brightness in 0…1.
|
|
80
|
+
public convenience init(hue: CGFloat, saturation: CGFloat, brightness: CGFloat, alpha: CGFloat) {
|
|
81
|
+
let h = (hue - hue.rounded(.down)) * 6
|
|
82
|
+
let c = brightness * saturation
|
|
83
|
+
let x = c * (1 - abs(h.truncatingRemainder(dividingBy: 2) - 1))
|
|
84
|
+
let m = brightness - c
|
|
85
|
+
let (r, g, b): (CGFloat, CGFloat, CGFloat) = switch Int(h) {
|
|
86
|
+
case 0: (c, x, 0)
|
|
87
|
+
case 1: (x, c, 0)
|
|
88
|
+
case 2: (0, c, x)
|
|
89
|
+
case 3: (0, x, c)
|
|
90
|
+
case 4: (x, 0, c)
|
|
91
|
+
default: (c, 0, x)
|
|
92
|
+
}
|
|
93
|
+
self.init(red: r + m, green: g + m, blue: b + m, alpha: alpha)
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
public var cgColor: CGColor { CGColor(red: red, green: green, blue: blue, alpha: alpha) }
|
|
97
|
+
|
|
98
|
+
public func withAlphaComponent(_ alpha: CGFloat) -> UIColor {
|
|
99
|
+
guard let semantic, self.alpha > 0 else { return UIColor(red: red, green: green, blue: blue, alpha: alpha) }
|
|
100
|
+
// The semantic color's own alpha is the token's; the new one scales it.
|
|
101
|
+
return UIColor(semantic: semantic.name, opacity: semantic.opacity * alpha / self.alpha, red: red, green: green, blue: blue, alpha: alpha)
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
@discardableResult
|
|
105
|
+
public func getRed(_ red: UnsafeMutablePointer<CGFloat>?, green: UnsafeMutablePointer<CGFloat>?, blue: UnsafeMutablePointer<CGFloat>?, alpha: UnsafeMutablePointer<CGFloat>?) -> Bool {
|
|
106
|
+
red?.pointee = self.red
|
|
107
|
+
green?.pointee = self.green
|
|
108
|
+
blue?.pointee = self.blue
|
|
109
|
+
alpha?.pointee = self.alpha
|
|
110
|
+
return true
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
public static func == (lhs: UIColor, rhs: UIColor) -> Bool {
|
|
114
|
+
(lhs.red, lhs.green, lhs.blue, lhs.alpha) == (rhs.red, rhs.green, rhs.blue, rhs.alpha)
|
|
115
|
+
&& lhs.semantic?.name == rhs.semantic?.name
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
public func hash(into hasher: inout Hasher) {
|
|
119
|
+
hasher.combine(red); hasher.combine(green); hasher.combine(blue); hasher.combine(alpha)
|
|
120
|
+
hasher.combine(semantic?.name)
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
public static let black = UIColor(white: 0, alpha: 1)
|
|
124
|
+
public static let darkGray = UIColor(white: 1.0 / 3, alpha: 1)
|
|
125
|
+
public static let lightGray = UIColor(white: 2.0 / 3, alpha: 1)
|
|
126
|
+
public static let white = UIColor(white: 1, alpha: 1)
|
|
127
|
+
public static let gray = UIColor(white: 0.5, alpha: 1)
|
|
128
|
+
public static let clear = UIColor(white: 0, alpha: 0)
|
|
129
|
+
public static let red = UIColor(red: 1, green: 0, blue: 0, alpha: 1)
|
|
130
|
+
public static let green = UIColor(red: 0, green: 1, blue: 0, alpha: 1)
|
|
131
|
+
public static let blue = UIColor(red: 0, green: 0, blue: 1, alpha: 1)
|
|
132
|
+
public static let cyan = UIColor(red: 0, green: 1, blue: 1, alpha: 1)
|
|
133
|
+
public static let yellow = UIColor(red: 1, green: 1, blue: 0, alpha: 1)
|
|
134
|
+
public static let magenta = UIColor(red: 1, green: 0, blue: 1, alpha: 1)
|
|
135
|
+
public static let orange = UIColor(red: 1, green: 0.5, blue: 0, alpha: 1)
|
|
136
|
+
public static let purple = UIColor(red: 0.5, green: 0, blue: 0.5, alpha: 1)
|
|
137
|
+
public static let brown = UIColor(red: 0.6, green: 0.4, blue: 0.2, alpha: 1)
|
|
138
|
+
|
|
139
|
+
// The light-mode system colors.
|
|
140
|
+
public static let systemBackground = named("systemBackground", 1, 1, 1)
|
|
141
|
+
public static let secondarySystemBackground = named("secondarySystemBackground", 0.949, 0.949, 0.969)
|
|
142
|
+
public static let tertiarySystemBackground = named("tertiarySystemBackground", 1, 1, 1)
|
|
143
|
+
public static let systemGroupedBackground = named("systemGroupedBackground", 0.949, 0.949, 0.969)
|
|
144
|
+
public static let label = named("label", 0, 0, 0)
|
|
145
|
+
public static let secondaryLabel = named("secondaryLabel", 0.235, 0.235, 0.263, 0.6)
|
|
146
|
+
public static let separator = named("separator", 0.235, 0.235, 0.263, 0.29)
|
|
147
|
+
public static let systemGray = named("gray", 0.557, 0.557, 0.576)
|
|
148
|
+
public static let systemBlue = named("blue", 0, 0.478, 1)
|
|
149
|
+
public static let systemRed = named("red", 1, 0.231, 0.188)
|
|
150
|
+
public static let systemGreen = named("green", 0.204, 0.78, 0.349)
|
|
151
|
+
public static let tintColor = UIColor.systemBlue
|
|
152
|
+
|
|
153
|
+
// The rest of iOS's semantic and system colors (components: light mode).
|
|
154
|
+
public static let secondarySystemGroupedBackground = named("secondarySystemGroupedBackground", 1, 1, 1)
|
|
155
|
+
public static let tertiarySystemGroupedBackground = named("tertiarySystemGroupedBackground", 0.949, 0.949, 0.969)
|
|
156
|
+
public static let tertiaryLabel = named("tertiaryLabel", 0.235, 0.235, 0.263, 0.3)
|
|
157
|
+
public static let quaternaryLabel = named("quaternaryLabel", 0.235, 0.235, 0.263, 0.18)
|
|
158
|
+
public static let placeholderText = named("placeholderText", 0.235, 0.235, 0.263, 0.3)
|
|
159
|
+
public static let opaqueSeparator = named("opaqueSeparator", 0.776, 0.776, 0.784)
|
|
160
|
+
public static let link = UIColor.systemBlue
|
|
161
|
+
public static let systemFill = named("systemFill", 0.471, 0.471, 0.502, 0.2)
|
|
162
|
+
public static let secondarySystemFill = named("secondarySystemFill", 0.471, 0.471, 0.502, 0.16)
|
|
163
|
+
public static let tertiarySystemFill = named("tertiarySystemFill", 0.463, 0.463, 0.502, 0.12)
|
|
164
|
+
public static let quaternarySystemFill = named("quaternarySystemFill", 0.455, 0.455, 0.502, 0.08)
|
|
165
|
+
public static let systemGray2 = named("systemGray2", 0.682, 0.682, 0.698)
|
|
166
|
+
public static let systemGray3 = named("systemGray3", 0.78, 0.78, 0.8)
|
|
167
|
+
public static let systemGray4 = named("systemGray4", 0.82, 0.82, 0.839)
|
|
168
|
+
public static let systemGray5 = named("systemGray5", 0.898, 0.898, 0.918)
|
|
169
|
+
public static let systemGray6 = named("systemGray6", 0.949, 0.949, 0.969)
|
|
170
|
+
public static let systemOrange = named("orange", 1, 0.584, 0)
|
|
171
|
+
public static let systemYellow = named("yellow", 1, 0.8, 0)
|
|
172
|
+
public static let systemPink = named("pink", 1, 0.176, 0.333)
|
|
173
|
+
public static let systemPurple = named("purple", 0.686, 0.322, 0.871)
|
|
174
|
+
public static let systemTeal = named("teal", 0.188, 0.69, 0.78)
|
|
175
|
+
public static let systemIndigo = named("indigo", 0.345, 0.337, 0.839)
|
|
176
|
+
public static let systemMint = named("mint", 0, 0.78, 0.745)
|
|
177
|
+
public static let systemCyan = named("cyan", 0.196, 0.678, 0.902)
|
|
178
|
+
public static let systemBrown = named("brown", 0.635, 0.518, 0.369)
|
|
179
|
+
public static let lightText = UIColor(white: 1, alpha: 0.6)
|
|
180
|
+
public static let darkText = UIColor.black
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
extension Color {
|
|
184
|
+
/// A SwiftUI color from a `UIColor`.
|
|
185
|
+
public init(uiColor: UIColor) {
|
|
186
|
+
if let semantic = uiColor.semantic {
|
|
187
|
+
self.init(_semantic: semantic.name, opacity: semantic.opacity)
|
|
188
|
+
} else {
|
|
189
|
+
self.init(red: uiColor.red, green: uiColor.green, blue: uiColor.blue, opacity: uiColor.alpha)
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
public init(_ color: UIColor) {
|
|
194
|
+
self.init(uiColor: color)
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// MARK: - Screen and application
|
|
199
|
+
|
|
200
|
+
/// The screen the page stands for: an iPhone's (3x).
|
|
201
|
+
public final class UIScreen: @unchecked Sendable {
|
|
202
|
+
nonisolated(unsafe) public static let main = UIScreen()
|
|
203
|
+
public var scale: CGFloat { 3 }
|
|
204
|
+
public var nativeScale: CGFloat { 3 }
|
|
205
|
+
public var bounds: CGRect { CGRect(x: 0, y: 0, width: 393, height: 852) }
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
/// The application, as code that observes its lifecycle uses it. The page
|
|
209
|
+
/// posts no lifecycle notifications (use SwiftUI's `scenePhase`).
|
|
210
|
+
/// `@preconcurrency`, like `UIDevice`.
|
|
211
|
+
@preconcurrency @MainActor
|
|
212
|
+
public final class UIApplication {
|
|
213
|
+
public static let shared = UIApplication()
|
|
214
|
+
|
|
215
|
+
/// Key-value coding on the class, as SDKs that may run in an app
|
|
216
|
+
/// extension reach the application (`value(forKey: "sharedApplication")`,
|
|
217
|
+
/// where `UIApplication.shared` is unavailable): the shared application
|
|
218
|
+
/// for that key, else nil.
|
|
219
|
+
public nonisolated static func value(forKey key: String) -> Any? {
|
|
220
|
+
key == "sharedApplication" ? MainActor.assumeIsolated { shared } : nil
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
public enum State: Int, Sendable { case active, inactive, background }
|
|
224
|
+
|
|
225
|
+
public var applicationState: State { .active }
|
|
226
|
+
public var applicationIconBadgeNumber = 0
|
|
227
|
+
public var isIdleTimerDisabled = false
|
|
228
|
+
|
|
229
|
+
/// Opens a web or mail URL on the page, in a new tab (as SwiftUI's
|
|
230
|
+
/// `openURL` does). Other schemes (another app's, the settings') have
|
|
231
|
+
/// nothing to open them, so the handler is told they did not open.
|
|
232
|
+
public func open(_ url: URL, options: [OpenExternalURLOptionsKey: Any] = [:], completionHandler: (@MainActor @Sendable (Bool) -> Void)? = nil) {
|
|
233
|
+
// The app's own scheme goes to its `onOpenURL` handlers (FoundationBridge).
|
|
234
|
+
if _OpenURLHandlers.deliver(url) {
|
|
235
|
+
completionHandler?(true)
|
|
236
|
+
return
|
|
237
|
+
}
|
|
238
|
+
guard canOpenURL(url) else {
|
|
239
|
+
completionHandler?(false)
|
|
240
|
+
return
|
|
241
|
+
}
|
|
242
|
+
_Runtime.shared._openLinkOnPage(url.absoluteString)
|
|
243
|
+
completionHandler?(true)
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
public func open(_ url: URL, options: [OpenExternalURLOptionsKey: Any] = [:]) async -> Bool {
|
|
247
|
+
if _OpenURLHandlers.deliver(url) { return true }
|
|
248
|
+
guard canOpenURL(url) else { return false }
|
|
249
|
+
_Runtime.shared._openLinkOnPage(url.absoluteString)
|
|
250
|
+
return true
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
/// Whether `open` can open it: web and mail URLs.
|
|
254
|
+
public func canOpenURL(_ url: URL) -> Bool {
|
|
255
|
+
["http", "https", "mailto", "tel", "sms"].contains(url.scheme?.lowercased() ?? "")
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
public struct OpenExternalURLOptionsKey: Hashable, RawRepresentable, Sendable {
|
|
259
|
+
public let rawValue: String
|
|
260
|
+
public init(rawValue: String) { self.rawValue = rawValue }
|
|
261
|
+
public static let universalLinksOnly = OpenExternalURLOptionsKey(rawValue: "UIApplicationOpenURLOptionUniversalLinksOnly")
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
public static let openSettingsURLString = "app-settings:"
|
|
265
|
+
|
|
266
|
+
nonisolated public static let didEnterBackgroundNotification = Notification.Name("UIApplicationDidEnterBackgroundNotification")
|
|
267
|
+
nonisolated public static let willEnterForegroundNotification = Notification.Name("UIApplicationWillEnterForegroundNotification")
|
|
268
|
+
nonisolated public static let didBecomeActiveNotification = Notification.Name("UIApplicationDidBecomeActiveNotification")
|
|
269
|
+
nonisolated public static let willResignActiveNotification = Notification.Name("UIApplicationWillResignActiveNotification")
|
|
270
|
+
nonisolated public static let willTerminateNotification = Notification.Name("UIApplicationWillTerminateNotification")
|
|
271
|
+
nonisolated public static let didReceiveMemoryWarningNotification = Notification.Name("UIApplicationDidReceiveMemoryWarningNotification")
|
|
272
|
+
nonisolated public static let significantTimeChangeNotification = Notification.Name("UIApplicationSignificantTimeChangeNotification")
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
// MARK: - Images
|
|
276
|
+
|
|
277
|
+
extension UIImage {
|
|
278
|
+
/// Nil: the browser build cannot encode images.
|
|
279
|
+
public func pngData() -> Data? { nil }
|
|
280
|
+
|
|
281
|
+
/// Nil: the browser build cannot encode images.
|
|
282
|
+
public func jpegData(compressionQuality: CGFloat) -> Data? { nil }
|
|
283
|
+
|
|
284
|
+
/// The image ready to draw (iOS 15): the page decodes images itself, so it is the image.
|
|
285
|
+
public func preparingForDisplay() -> UIImage? { self }
|
|
286
|
+
public func byPreparingForDisplay() async -> UIImage? { self }
|
|
287
|
+
public func prepareForDisplay(completionHandler: @escaping @Sendable (UIImage?) -> Void) { completionHandler(self) }
|
|
288
|
+
|
|
289
|
+
/// Not animated: an animated file is one image the page animates by itself.
|
|
290
|
+
public var images: [UIImage]? { nil }
|
|
291
|
+
public var duration: TimeInterval { 0 }
|
|
292
|
+
}
|