Skip to content

swift-man/LaunchingView

Repository files navigation

LaunchingView

This is a SwiftUI view based on The The Composable Architecture.

Badge Badge Badge - Version Badge - Swift Package Manager Badge - Platform Badge - Platform Badge - License


Document Web Site

LaunchingView

Feature

  • AsyncLaunchingView
  • AppLife Cycle - Become Active

Setup View

Sync Process

import LaunchingView

@main
struct YourApp: App {
  var body: some Scene {
    WindowGroup {
      LaunchingView<ContentView, LaunchScreenView>(
        contentView: {
          ContentView()
        },
        launchScreen: {
          LaunchScreenView()
        })
    }
  }
}

Sync Process Animation or Task

import LaunchingView

@main
struct YourApp: App {
  @State
  var isFinished = false
  
  var body: some Scene {
    WindowGroup {
      LaunchingView<ContentView, VStack>(
        contentView: {
          ContentView()
        },
        launchScreen: {
          VStack {
            Image("ImageName")
            Button {
              isFinished = true
            } label: {
              Text("Task Finish!!").foregroundColor(Color.red)
            }
          }
        },
        isFinished: $isFinished
      )
    }
  }
}

Async Process

import LaunchingView

@main
struct YourApp: App {
  var body: some Scene {
    WindowGroup {
      AsyncLaunchingView<ContentView> {
          ContentView()
      }
    }
  }
}

Dependencies

LaunchingService calls api using FirebaseRemoteConfig.

Custom Your Keys

import Dependencies
import LaunchingService

extension RemoteConfigRegisterdKeys: DependencyKey {
  public static var liveValue = RemoteConfigRegisterdKeys(#...#) 
}

Custom Your Alert Default Text

import Dependencies
import LaunchingView

extension LaunchingAlertDefaultText: DependencyKey {
  public static var liveValue = LaunchingAlertDefaultText(#...#)
}

Installation

Swift Package Manager

The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler.

Once you have your Swift package set up, adding Alamofire as a dependency is as easy as adding it to the dependencies value of your Package.swift.

dependencies: [
    .package(url: "https://github.com/swift-man/LaunchingView.git", .from: "0.8.2")
]

About

This is a SwiftUI view based on The The Composable Architecture.

Resources

License

Stars

Watchers

Forks

Packages

No packages published