260 lines
10 KiB
Swift
260 lines
10 KiB
Swift
// Copyright 2020-2021 Tokamak contributors
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
//
|
|
// Created by Jed Fox on 7/18/20.
|
|
//
|
|
|
|
import TokamakCore
|
|
|
|
// MARK: Environment & State
|
|
|
|
public typealias DynamicProperty = TokamakCore.DynamicProperty
|
|
|
|
public typealias Environment = TokamakCore.Environment
|
|
public typealias EnvironmentKey = TokamakCore.EnvironmentKey
|
|
public typealias EnvironmentObject = TokamakCore.EnvironmentObject
|
|
public typealias EnvironmentValues = TokamakCore.EnvironmentValues
|
|
|
|
public typealias PreferenceKey = TokamakCore.PreferenceKey
|
|
|
|
public typealias Binding = TokamakCore.Binding
|
|
public typealias ObservableObject = TokamakCore.ObservableObject
|
|
public typealias ObservedObject = TokamakCore.ObservedObject
|
|
public typealias Published = TokamakCore.Published
|
|
public typealias State = TokamakCore.State
|
|
public typealias StateObject = TokamakCore.StateObject
|
|
|
|
// MARK: Modifiers & Styles
|
|
|
|
public typealias ViewModifier = TokamakCore.ViewModifier
|
|
public typealias ModifiedContent = TokamakCore.ModifiedContent
|
|
|
|
public typealias DefaultTextFieldStyle = TokamakCore.DefaultTextFieldStyle
|
|
public typealias PlainTextFieldStyle = TokamakCore.PlainTextFieldStyle
|
|
public typealias RoundedBorderTextFieldStyle = TokamakCore.RoundedBorderTextFieldStyle
|
|
public typealias SquareBorderTextFieldStyle = TokamakCore.SquareBorderTextFieldStyle
|
|
|
|
public typealias DefaultListStyle = TokamakCore.DefaultListStyle
|
|
public typealias PlainListStyle = TokamakCore.PlainListStyle
|
|
public typealias InsetListStyle = TokamakCore.InsetListStyle
|
|
public typealias GroupedListStyle = TokamakCore.GroupedListStyle
|
|
public typealias InsetGroupedListStyle = TokamakCore.InsetGroupedListStyle
|
|
public typealias SidebarListStyle = TokamakCore.SidebarListStyle
|
|
|
|
public typealias DefaultPickerStyle = TokamakCore.DefaultPickerStyle
|
|
public typealias PopUpButtonPickerStyle = TokamakCore.PopUpButtonPickerStyle
|
|
public typealias RadioGroupPickerStyle = TokamakCore.RadioGroupPickerStyle
|
|
public typealias SegmentedPickerStyle = TokamakCore.SegmentedPickerStyle
|
|
public typealias WheelPickerStyle = TokamakCore.WheelPickerStyle
|
|
|
|
public typealias ToggleStyle = TokamakCore.ToggleStyle
|
|
public typealias ToggleStyleConfiguration = TokamakCore.ToggleStyleConfiguration
|
|
|
|
public typealias ButtonStyle = TokamakCore.ButtonStyle
|
|
public typealias ButtonStyleConfiguration = TokamakCore.ButtonStyleConfiguration
|
|
public typealias DefaultButtonStyle = TokamakCore.DefaultButtonStyle
|
|
public typealias PlainButtonStyle = TokamakCore.PlainButtonStyle
|
|
public typealias BorderedButtonStyle = TokamakCore.BorderedButtonStyle
|
|
public typealias BorderedProminentButtonStyle = TokamakCore.BorderedProminentButtonStyle
|
|
public typealias BorderlessButtonStyle = TokamakCore.BorderlessButtonStyle
|
|
public typealias LinkButtonStyle = TokamakCore.LinkButtonStyle
|
|
|
|
public typealias ControlGroupStyle = TokamakCore.ControlGroupStyle
|
|
public typealias AutomaticControlGroupStyle = TokamakCore.AutomaticControlGroupStyle
|
|
public typealias NavigationControlGroupStyle = TokamakCore.NavigationControlGroupStyle
|
|
|
|
public typealias TextFieldStyle = TokamakCore.TextFieldStyle
|
|
|
|
public typealias FillStyle = TokamakCore.FillStyle
|
|
public typealias ShapeStyle = TokamakCore.ShapeStyle
|
|
public typealias StrokeStyle = TokamakCore.StrokeStyle
|
|
|
|
public typealias ColorScheme = TokamakCore.ColorScheme
|
|
|
|
// MARK: Shapes
|
|
|
|
public typealias Shape = TokamakCore.Shape
|
|
|
|
public typealias Capsule = TokamakCore.Capsule
|
|
public typealias Circle = TokamakCore.Circle
|
|
public typealias Ellipse = TokamakCore.Ellipse
|
|
public typealias Path = TokamakCore.Path
|
|
public typealias Rectangle = TokamakCore.Rectangle
|
|
public typealias RoundedRectangle = TokamakCore.RoundedRectangle
|
|
public typealias ContainerRelativeShape = TokamakCore.ContainerRelativeShape
|
|
|
|
// MARK: Shape Styles
|
|
|
|
public typealias HierarchicalShapeStyle = TokamakCore.HierarchicalShapeStyle
|
|
|
|
public typealias ForegroundStyle = TokamakCore.ForegroundStyle
|
|
public typealias BackgroundStyle = TokamakCore.BackgroundStyle
|
|
|
|
public typealias Material = TokamakCore.Material
|
|
|
|
public typealias Gradient = TokamakCore.Gradient
|
|
public typealias LinearGradient = TokamakCore.LinearGradient
|
|
public typealias RadialGradient = TokamakCore.RadialGradient
|
|
public typealias EllipticalGradient = TokamakCore.EllipticalGradient
|
|
public typealias AngularGradient = TokamakCore.AngularGradient
|
|
|
|
// MARK: Primitive values
|
|
|
|
public typealias Color = TokamakCore.Color
|
|
public typealias Font = TokamakCore.Font
|
|
|
|
#if !canImport(CoreGraphics)
|
|
public typealias CGAffineTransform = TokamakCore.CGAffineTransform
|
|
#endif
|
|
|
|
public typealias Angle = TokamakCore.Angle
|
|
public typealias Axis = TokamakCore.Axis
|
|
public typealias UnitPoint = TokamakCore.UnitPoint
|
|
|
|
public typealias Edge = TokamakCore.Edge
|
|
|
|
public typealias Prominence = TokamakCore.Prominence
|
|
|
|
public typealias GraphicsContext = TokamakCore.GraphicsContext
|
|
|
|
public typealias TimelineSchedule = TokamakCore.TimelineSchedule
|
|
public typealias TimelineScheduleMode = TokamakCore.TimelineScheduleMode
|
|
public typealias AnimationTimelineSchedule = TokamakCore.AnimationTimelineSchedule
|
|
public typealias EveryMinuteTimelineSchedule = TokamakCore.EveryMinuteTimelineSchedule
|
|
public typealias ExplicitTimelineSchedule = TokamakCore.ExplicitTimelineSchedule
|
|
public typealias PeriodicTimelineSchedule = TokamakCore.PeriodicTimelineSchedule
|
|
|
|
public typealias HorizontalAlignment = TokamakCore.HorizontalAlignment
|
|
public typealias VerticalAlignment = TokamakCore.VerticalAlignment
|
|
|
|
// MARK: Views
|
|
|
|
public typealias Alignment = TokamakCore.Alignment
|
|
public typealias Button = TokamakCore.Button
|
|
public typealias Canvas = TokamakCore.Canvas
|
|
public typealias ControlGroup = TokamakCore.ControlGroup
|
|
public typealias ControlSize = TokamakCore.ControlSize
|
|
public typealias DatePicker = TokamakCore.DatePicker
|
|
public typealias DisclosureGroup = TokamakCore.DisclosureGroup
|
|
public typealias Divider = TokamakCore.Divider
|
|
public typealias ForEach = TokamakCore.ForEach
|
|
public typealias GeometryReader = TokamakCore.GeometryReader
|
|
public typealias GridItem = TokamakCore.GridItem
|
|
public typealias Group = TokamakCore.Group
|
|
public typealias HStack = TokamakCore.HStack
|
|
public typealias Image = TokamakCore.Image
|
|
public typealias LazyHGrid = TokamakCore.LazyHGrid
|
|
public typealias LazyVGrid = TokamakCore.LazyVGrid
|
|
public typealias Link = TokamakCore.Link
|
|
public typealias List = TokamakCore.List
|
|
public typealias NavigationLink = TokamakCore.NavigationLink
|
|
public typealias NavigationView = TokamakCore.NavigationView
|
|
public typealias OutlineGroup = TokamakCore.OutlineGroup
|
|
public typealias Picker = TokamakCore.Picker
|
|
public typealias ProgressView = TokamakCore.ProgressView
|
|
public typealias ScrollView = TokamakCore.ScrollView
|
|
public typealias Section = TokamakCore.Section
|
|
public typealias SecureField = TokamakCore.SecureField
|
|
public typealias Slider = TokamakCore.Slider
|
|
public typealias Spacer = TokamakCore.Spacer
|
|
public typealias Text = TokamakCore.Text
|
|
public typealias TextEditor = TokamakCore.TextEditor
|
|
public typealias TextField = TokamakCore.TextField
|
|
public typealias TimelineView = TokamakCore.TimelineView
|
|
public typealias Toggle = TokamakCore.Toggle
|
|
public typealias VStack = TokamakCore.VStack
|
|
public typealias ZStack = TokamakCore.ZStack
|
|
|
|
public typealias Grid = TokamakCore.Grid
|
|
public typealias GridRow = TokamakCore.GridRow
|
|
|
|
// MARK: Special Views
|
|
|
|
public typealias View = TokamakCore.View
|
|
public typealias AnyView = TokamakCore.AnyView
|
|
public typealias EmptyView = TokamakCore.EmptyView
|
|
|
|
// MARK: Layout
|
|
|
|
public typealias Layout = TokamakCore.Layout
|
|
public typealias AnyLayout = TokamakCore.AnyLayout
|
|
public typealias LayoutProperties = TokamakCore.LayoutProperties
|
|
public typealias LayoutSubviews = TokamakCore.LayoutSubviews
|
|
public typealias LayoutSubview = TokamakCore.LayoutSubview
|
|
public typealias LayoutValueKey = TokamakCore.LayoutValueKey
|
|
public typealias ProposedViewSize = TokamakCore.ProposedViewSize
|
|
public typealias ViewSpacing = TokamakCore.ViewSpacing
|
|
|
|
// MARK: Toolbars
|
|
|
|
public typealias ToolbarItem = TokamakCore.ToolbarItem
|
|
public typealias ToolbarItemGroup = TokamakCore.ToolbarItemGroup
|
|
public typealias ToolbarItemPlacement = TokamakCore.ToolbarItemPlacement
|
|
public typealias ToolbarContentBuilder = TokamakCore.ToolbarContentBuilder
|
|
|
|
// MARK: Text
|
|
|
|
public typealias TextAlignment = TokamakCore.TextAlignment
|
|
|
|
// MARK: App & Scene
|
|
|
|
public typealias App = TokamakCore.App
|
|
public typealias _AppConfiguration = TokamakCore._AppConfiguration
|
|
public typealias Scene = TokamakCore.Scene
|
|
public typealias WindowGroup = TokamakCore.WindowGroup
|
|
public typealias ScenePhase = TokamakCore.ScenePhase
|
|
public typealias AppStorage = TokamakCore.AppStorage
|
|
public typealias SceneStorage = TokamakCore.SceneStorage
|
|
|
|
// MARK: Misc
|
|
|
|
public typealias ViewBuilder = TokamakCore.ViewBuilder
|
|
|
|
// MARK: Animation
|
|
|
|
public typealias Animation = TokamakCore.Animation
|
|
public typealias Transaction = TokamakCore.Transaction
|
|
|
|
public typealias Animatable = TokamakCore.Animatable
|
|
public typealias AnimatablePair = TokamakCore.AnimatablePair
|
|
public typealias EmptyAnimatableData = TokamakCore.EmptyAnimatableData
|
|
|
|
public typealias AnimatableModifier = TokamakCore.AnimatableModifier
|
|
|
|
public typealias AnyTransition = TokamakCore.AnyTransition
|
|
|
|
public func withTransaction<Result>(
|
|
_ transaction: Transaction,
|
|
_ body: () throws -> Result
|
|
) rethrows -> Result {
|
|
try TokamakCore.withTransaction(transaction, body)
|
|
}
|
|
|
|
public func withAnimation<Result>(
|
|
_ animation: Animation? = .default,
|
|
_ body: () throws -> Result
|
|
) rethrows -> Result {
|
|
try TokamakCore.withAnimation(animation, body)
|
|
}
|
|
|
|
// FIXME: I would put this inside TokamakCore, but for
|
|
// some reason it doesn't get exported with the typealias
|
|
public extension Text {
|
|
static func + (lhs: Self, rhs: Self) -> Self {
|
|
_concatenating(lhs: lhs, rhs: rhs)
|
|
}
|
|
}
|
|
|
|
public typealias PreviewProvider = TokamakCore.PreviewProvider
|