added the loader view

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2023-07-05 15:16:56 -05:00
parent 2ec49f4a1d
commit 92521eca74
4 changed files with 44 additions and 2 deletions

View File

@ -79,6 +79,7 @@
EAD062A32A3913920015965D /* DropShawdowViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD062A22A3913920015965D /* DropShawdowViewController.swift */; };
EAD062A52A3B5CDF0015965D /* Slider.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD062A42A3B5CDF0015965D /* Slider.swift */; };
EAD062AD2A3B86950015965D /* BadgeIndicatorViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD062AC2A3B86950015965D /* BadgeIndicatorViewController.swift */; };
EAD068902A55FC11002E3A2D /* LoaderViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD0688F2A55FC11002E3A2D /* LoaderViewController.swift */; };
EAF7F07D2899698800B287F5 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = EAF7F07B2899698800B287F5 /* Assets.xcassets */; };
EAF7F09C2899B92400B287F5 /* CheckboxViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAF7F09B2899B92400B287F5 /* CheckboxViewController.swift */; };
EAF7F0CA289DA24F00B287F5 /* ArtifactoryItems.txt in Resources */ = {isa = PBXBuildFile; fileRef = EAF7F0C5289DA24F00B287F5 /* ArtifactoryItems.txt */; };
@ -169,6 +170,7 @@
EAD062A22A3913920015965D /* DropShawdowViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DropShawdowViewController.swift; sourceTree = "<group>"; };
EAD062A42A3B5CDF0015965D /* Slider.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Slider.swift; sourceTree = "<group>"; };
EAD062AC2A3B86950015965D /* BadgeIndicatorViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BadgeIndicatorViewController.swift; sourceTree = "<group>"; };
EAD0688F2A55FC11002E3A2D /* LoaderViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoaderViewController.swift; sourceTree = "<group>"; };
EAF7F07B2899698800B287F5 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
EAF7F09B2899B92400B287F5 /* CheckboxViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CheckboxViewController.swift; sourceTree = "<group>"; };
EAF7F0C5289DA24F00B287F5 /* ArtifactoryItems.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = ArtifactoryItems.txt; sourceTree = "<group>"; };
@ -308,6 +310,7 @@
EAA5EEAC28EB6924003B3210 /* InputFieldViewController.swift */,
EAB1D2D328AC409F00DAE764 /* LabelViewController.swift */,
44604AD829CE1CF900E62B51 /* LineViewController.swift */,
EAD0688F2A55FC11002E3A2D /* LoaderViewController.swift */,
445BA07929C088470036A7C5 /* NotificationViewController.swift */,
EA89201828B56DF5006B9984 /* RadioBoxGroupViewController.swift */,
EAF7F11928A14A0E00B287F5 /* RadioButtonViewController.swift */,
@ -508,6 +511,7 @@
EA5F86CE2A1E863F00BC83E4 /* TabsContainerViewController.swift in Sources */,
EA985C01296CC21C00F2FF2E /* IconViewController.swift in Sources */,
EAC9258029119FC400091998 /* TextLinkViewController.swift in Sources */,
EAD068902A55FC11002E3A2D /* LoaderViewController.swift in Sources */,
EAD062A52A3B5CDF0015965D /* Slider.swift in Sources */,
EAB1D2D428AC409F00DAE764 /* LabelViewController.swift in Sources */,
EA89204B28B66CE2006B9984 /* ScrollViewKeyboardAvoider.swift in Sources */,

View File

@ -10,8 +10,6 @@ import VDS
class LineViewController: BaseViewController<Line> {
let lineView = Line()
lazy var lineStylePickerView = {
PickerSelectorView(title: "primary",
picker: self.picker,

View File

@ -0,0 +1,39 @@
//
// LoaderViewController.swift
// VDSSample
//
// Created by Matt Bruce on 7/5/23.
//
import Foundation
import VDS
class LoaderViewController: BaseViewController<Loader> {
var isActive = Toggle().with { $0.isOn = true }
override func viewDidLoad() {
super.viewDidLoad()
contentTopView.height(constant: 200)
addContentTopView(view: component)
setupPicker()
}
override func setupForm() {
super.setupForm()
addFormRow(label: "Surface", view: surfacePickerSelectorView)
addFormRow(label: "Active", view: .makeWrapper(for: isActive))
isActive.publisher(for: .valueChanged)
.sink { [weak self] toggle in
self?.component.isActive = toggle.isOn
}.store(in: &subscribers)
}
func setupPicker() {
surfacePickerSelectorView.onPickerDidSelect = { [weak self] item in
self?.component.surface = item
self?.contentTopView.backgroundColor = item.color
}
}
}

View File

@ -89,6 +89,7 @@ class MenuViewController: UITableViewController, TooltipLaunchable {
MenuComponent(title: "InputField", completed: false, viewController: InputFieldViewController.self),
MenuComponent(title: "Label", completed: true, viewController: LabelViewController.self),
MenuComponent(title: "Line", completed: true, viewController: LineViewController.self),
MenuComponent(title: "Loader", completed: true, viewController: LoaderViewController.self),
MenuComponent(title: "Notification", completed: true, viewController: NotificationViewController.self),
MenuComponent(title: "RadioBoxGroup", completed: true, viewController: RadioBoxGroupViewController.self),
MenuComponent(title: "RadioButtonGroup", completed: true, viewController: RadioButtonViewController.self),