├── .gitignore ├── .sourcery.yml ├── .swift-version ├── .swiftlint.yml ├── .travis.yml ├── ABOUT.md ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Example ├── Example.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── ViewComposer-Example.xcscheme └── Source │ ├── AppDelegate.swift │ ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ ├── Contents.json │ ├── red.imageset │ │ ├── Contents.json │ │ └── red.pdf │ └── white.imageset │ │ ├── Contents.json │ │ └── white.pdf │ ├── Base.lproj │ └── LaunchScreen.storyboard │ ├── Extensions │ ├── String+Attributed.swift │ └── UIImage+UIColor.swift │ ├── Info.plist │ ├── ViewControllers │ ├── TableViewController.swift │ ├── TableViewControllerModel.swift │ ├── Vanilla │ │ ├── VanillaLabelsViewController.swift │ │ ├── VanillaLoginViewController.swift │ │ └── VanillaNestedStackViewsViewController.swift │ └── ViewComposer │ │ ├── ImageViewController.swift │ │ ├── LabelsViewController.swift │ │ ├── LoginViewController.swift │ │ ├── MakeableCollectionViewController.swift │ │ ├── MakeableUIWebViewViewController.swift │ │ ├── MakeableWKWebViewViewController.swift │ │ ├── MixedViewsViewController.swift │ │ ├── NestedStackViewsViewController.swift │ │ ├── SimpleCustomAttributeViewController.swift │ │ └── TriangleViewController.swift │ └── Views │ ├── FooLabel.swift │ ├── MyCollectionViewCell.swift │ ├── Protocols │ ├── SingleSubviewOwner.swift │ └── StackViewOwner.swift │ ├── TriangleView.swift │ ├── UIView_Extension.swift │ └── Validating.swift ├── Gemfile ├── Gemfile.lock ├── LICENSE ├── Package.swift ├── Podfile ├── Podfile.lock ├── Pods ├── Manifest.lock ├── Pods.xcodeproj │ └── project.pbxproj ├── Sourcery │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── Resources │ │ ├── daemon.gif │ │ └── icon-128.png │ ├── Sourcery.docset │ │ └── Contents │ │ │ ├── Info.plist │ │ │ └── Resources │ │ │ ├── Documents │ │ │ ├── Classes │ │ │ │ ├── ArrayType.html │ │ │ │ ├── AssociatedValue.html │ │ │ │ ├── Attribute.html │ │ │ │ ├── Class.html │ │ │ │ ├── ClosureType.html │ │ │ │ ├── DictionaryType.html │ │ │ │ ├── Enum.html │ │ │ │ ├── EnumCase.html │ │ │ │ ├── GenericType.html │ │ │ │ ├── GenericTypeParameter.html │ │ │ │ ├── Method.html │ │ │ │ ├── MethodParameter.html │ │ │ │ ├── Protocol.html │ │ │ │ ├── Struct.html │ │ │ │ ├── Subscript.html │ │ │ │ ├── TupleElement.html │ │ │ │ ├── TupleType.html │ │ │ │ ├── Type.html │ │ │ │ ├── TypeName.html │ │ │ │ ├── Types.html │ │ │ │ └── Variable.html │ │ │ ├── Examples.html │ │ │ ├── Extensions │ │ │ │ └── Typealias.html │ │ │ ├── Guides.html │ │ │ ├── Other Extensions.html │ │ │ ├── Other Protocols.html │ │ │ ├── Protocols │ │ │ │ ├── Annotated.html │ │ │ │ ├── Definition.html │ │ │ │ └── Typed.html │ │ │ ├── Types.html │ │ │ ├── badge.svg │ │ │ ├── css │ │ │ │ ├── highlight.css │ │ │ │ └── jazzy.css │ │ │ ├── decorator.html │ │ │ ├── diffable.html │ │ │ ├── enum-cases.html │ │ │ ├── equatable.html │ │ │ ├── hashable.html │ │ │ ├── img │ │ │ │ ├── carat.png │ │ │ │ ├── dash.png │ │ │ │ └── gh.png │ │ │ ├── index.html │ │ │ ├── installing.html │ │ │ ├── js │ │ │ │ ├── jazzy.js │ │ │ │ └── jquery.min.js │ │ │ ├── lenses.html │ │ │ ├── linuxmain.html │ │ │ ├── mocks.html │ │ │ ├── search.json │ │ │ ├── undocumented.json │ │ │ ├── usage.html │ │ │ └── writing-templates.html │ │ │ └── docSet.dsidx │ ├── Templates │ │ ├── AutoCases.stencil │ │ ├── AutoEquatable.stencil │ │ ├── AutoHashable.stencil │ │ ├── AutoLenses.stencil │ │ ├── AutoMockable.stencil │ │ ├── Decorator.swifttemplate │ │ └── LinuxMain.stencil │ └── bin │ │ ├── Sourcery.app │ │ └── Contents │ │ │ ├── Frameworks │ │ │ ├── AEXML.framework │ │ │ │ ├── AEXML │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── AEXML │ │ │ │ │ └── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── Current │ │ │ │ │ ├── AEXML │ │ │ │ │ └── Resources │ │ │ │ │ └── Info.plist │ │ │ ├── Commander.framework │ │ │ │ ├── Commander │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Commander │ │ │ │ │ └── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── Current │ │ │ │ │ ├── Commander │ │ │ │ │ └── Resources │ │ │ │ │ └── Info.plist │ │ │ ├── CommonCrypto.framework │ │ │ │ ├── CommonCrypto │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── CommonCrypto │ │ │ │ │ └── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── Current │ │ │ │ │ ├── CommonCrypto │ │ │ │ │ └── Resources │ │ │ │ │ └── Info.plist │ │ │ ├── PathKit.framework │ │ │ │ ├── PathKit │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── PathKit │ │ │ │ │ └── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── Current │ │ │ │ │ ├── PathKit │ │ │ │ │ └── Resources │ │ │ │ │ └── Info.plist │ │ │ ├── SWXMLHash.framework │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── SWXMLHash │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SWXMLHash │ │ │ │ │ └── Current │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SWXMLHash │ │ │ ├── SourceKittenFramework.framework │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── SourceKittenFramework │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SourceKittenFramework │ │ │ │ │ └── Current │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SourceKittenFramework │ │ │ ├── SourceryJS.framework │ │ │ │ ├── Headers │ │ │ │ │ ├── SourceryJS-Swift.h │ │ │ │ │ └── SourceryJS.h │ │ │ │ ├── Modules │ │ │ │ │ ├── SourceryJS.swiftmodule │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ └── module.modulemap │ │ │ │ ├── Resources │ │ │ │ │ ├── Info.plist │ │ │ │ │ └── ejs.js │ │ │ │ ├── SourceryJS │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── SourceryJS-Swift.h │ │ │ │ │ │ └── SourceryJS.h │ │ │ │ │ ├── Modules │ │ │ │ │ │ ├── SourceryJS.swiftmodule │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ ├── Resources │ │ │ │ │ │ ├── Info.plist │ │ │ │ │ │ └── ejs.js │ │ │ │ │ └── SourceryJS │ │ │ │ │ └── Current │ │ │ │ │ ├── Headers │ │ │ │ │ ├── SourceryJS-Swift.h │ │ │ │ │ └── SourceryJS.h │ │ │ │ │ ├── Modules │ │ │ │ │ ├── SourceryJS.swiftmodule │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ └── module.modulemap │ │ │ │ │ ├── Resources │ │ │ │ │ ├── Info.plist │ │ │ │ │ └── ejs.js │ │ │ │ │ └── SourceryJS │ │ │ ├── SourceryRuntime.framework │ │ │ │ ├── Headers │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ ├── Modules │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ └── module.modulemap │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── SourceryRuntime │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ ├── Modules │ │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SourceryRuntime │ │ │ │ │ └── Current │ │ │ │ │ ├── Headers │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ ├── Modules │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ └── module.modulemap │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SourceryRuntime │ │ │ ├── SourcerySwift.framework │ │ │ │ ├── Headers │ │ │ │ │ ├── SourcerySwift-Swift.h │ │ │ │ │ └── SourcerySwift.h │ │ │ │ ├── Modules │ │ │ │ │ ├── SourcerySwift.swiftmodule │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ └── module.modulemap │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── SourcerySwift │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Frameworks │ │ │ │ │ │ └── SourceryRuntime.framework │ │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ │ │ ├── Modules │ │ │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ │ ├── SourceryRuntime │ │ │ │ │ │ │ └── Versions │ │ │ │ │ │ │ ├── A │ │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ │ │ ├── Modules │ │ │ │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ │ └── SourceryRuntime │ │ │ │ │ │ │ └── Current │ │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ │ │ ├── Modules │ │ │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ │ └── SourceryRuntime │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── SourcerySwift-Swift.h │ │ │ │ │ │ └── SourcerySwift.h │ │ │ │ │ ├── Modules │ │ │ │ │ │ ├── SourcerySwift.swiftmodule │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SourcerySwift │ │ │ │ │ └── Current │ │ │ │ │ ├── Frameworks │ │ │ │ │ └── SourceryRuntime.framework │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ │ ├── Modules │ │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ ├── SourceryRuntime │ │ │ │ │ │ └── Versions │ │ │ │ │ │ ├── A │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ │ ├── Modules │ │ │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ └── SourceryRuntime │ │ │ │ │ │ └── Current │ │ │ │ │ │ ├── Headers │ │ │ │ │ │ ├── SourceryRuntime-Swift.h │ │ │ │ │ │ └── SourceryRuntime.h │ │ │ │ │ │ ├── Modules │ │ │ │ │ │ ├── SourceryRuntime.swiftmodule │ │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ │ └── module.modulemap │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ └── SourceryRuntime │ │ │ │ │ ├── Headers │ │ │ │ │ ├── SourcerySwift-Swift.h │ │ │ │ │ └── SourcerySwift.h │ │ │ │ │ ├── Modules │ │ │ │ │ ├── SourcerySwift.swiftmodule │ │ │ │ │ │ ├── x86_64.swiftdoc │ │ │ │ │ │ └── x86_64.swiftmodule │ │ │ │ │ └── module.modulemap │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SourcerySwift │ │ │ ├── Stencil.framework │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── Stencil │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── Stencil │ │ │ │ │ └── Current │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── Stencil │ │ │ ├── StencilSwiftKit.framework │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── StencilSwiftKit │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── StencilSwiftKit │ │ │ │ │ └── Current │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── StencilSwiftKit │ │ │ ├── SwiftTryCatch.framework │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── SwiftTryCatch │ │ │ │ └── Versions │ │ │ │ │ ├── A │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SwiftTryCatch │ │ │ │ │ └── Current │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── SwiftTryCatch │ │ │ ├── Yams.framework │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ ├── Versions │ │ │ │ │ ├── A │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ └── Yams │ │ │ │ │ └── Current │ │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ │ └── Yams │ │ │ │ └── Yams │ │ │ ├── libswiftAppKit.dylib │ │ │ ├── libswiftCore.dylib │ │ │ ├── libswiftCoreData.dylib │ │ │ ├── libswiftCoreFoundation.dylib │ │ │ ├── libswiftCoreGraphics.dylib │ │ │ ├── libswiftCoreImage.dylib │ │ │ ├── libswiftDarwin.dylib │ │ │ ├── libswiftDispatch.dylib │ │ │ ├── libswiftFoundation.dylib │ │ │ ├── libswiftIOKit.dylib │ │ │ ├── libswiftMetal.dylib │ │ │ ├── libswiftObjectiveC.dylib │ │ │ ├── libswiftQuartzCore.dylib │ │ │ ├── libswiftXPC.dylib │ │ │ ├── libswiftos.dylib │ │ │ └── xcproj.framework │ │ │ │ ├── Resources │ │ │ │ └── Info.plist │ │ │ │ ├── Versions │ │ │ │ ├── A │ │ │ │ │ ├── Resources │ │ │ │ │ │ └── Info.plist │ │ │ │ │ └── xcproj │ │ │ │ └── Current │ │ │ │ │ ├── Resources │ │ │ │ │ └── Info.plist │ │ │ │ │ └── xcproj │ │ │ │ └── xcproj │ │ │ ├── Info.plist │ │ │ ├── MacOS │ │ │ └── Sourcery │ │ │ ├── PkgInfo │ │ │ └── Resources │ │ │ └── libswiftRemoteMirror.dylib │ │ └── sourcery ├── SwiftLint │ ├── LICENSE │ └── swiftlint └── Target Support Files │ ├── Pods-ViewComposer │ ├── Info.plist │ ├── Pods-ViewComposer-acknowledgements.markdown │ ├── Pods-ViewComposer-acknowledgements.plist │ ├── Pods-ViewComposer-dummy.m │ ├── Pods-ViewComposer-resources.sh │ ├── Pods-ViewComposer-umbrella.h │ ├── Pods-ViewComposer.debug.xcconfig │ ├── Pods-ViewComposer.modulemap │ └── Pods-ViewComposer.release.xcconfig │ └── Pods-ViewComposerTests │ ├── Info.plist │ ├── Pods-ViewComposerTests-acknowledgements.markdown │ ├── Pods-ViewComposerTests-acknowledgements.plist │ ├── Pods-ViewComposerTests-dummy.m │ ├── Pods-ViewComposerTests-frameworks.sh │ ├── Pods-ViewComposerTests-resources.sh │ ├── Pods-ViewComposerTests-umbrella.h │ ├── Pods-ViewComposerTests.debug.xcconfig │ ├── Pods-ViewComposerTests.modulemap │ └── Pods-ViewComposerTests.release.xcconfig ├── README.md ├── Source ├── Classes │ ├── Attributed │ │ ├── Attributed+Array+Mergeable.swift │ │ ├── Attributed+AssociatedValueEnumExtractor.swift │ │ ├── Attributed+AssociatedValueStrippable.swift │ │ ├── Attributed+Collection.swift │ │ ├── Attributed+CustomAttributeMerger.swift │ │ ├── Attributed+Mergeable.swift │ │ ├── Attributed+Optional.swift │ │ └── Attributed.swift │ ├── BaseAttributed │ │ └── BaseAttributed.swift │ ├── Composable │ │ ├── Composable+Styleable.swift │ │ ├── Composable+UIView.swift │ │ └── Composable.swift │ ├── EmptyInitializable │ │ └── EmptyInitializable.swift │ ├── Extensions │ │ ├── Array+Optional.swift │ │ └── Dictionary_Extensions.swift │ ├── Macros.swift │ ├── Makeable │ │ ├── Makeable+Mergeable.swift │ │ ├── Makeable+Styleable.swift │ │ └── Makeable.swift │ ├── MergeOperators │ │ ├── MergeOperatorReturningAttributed.swift │ │ ├── MergeOperatorReturningComposable.swift │ │ ├── MergeOperatorReturningMakable.swift │ │ └── MergeOperators.swift │ ├── Styleable │ │ ├── Styleable+UIView+ViewStyle.swift │ │ └── Styleable.swift │ ├── ViewAttribute │ │ ├── AttributedValues │ │ │ ├── Actor.swift │ │ │ ├── Case.swift │ │ │ ├── CellRegisterable.swift │ │ │ ├── CollectionTableView.swift │ │ │ ├── ControlState.swift │ │ │ ├── ControlStateHolder.swift │ │ │ ├── CornerRounding.swift │ │ │ ├── DataSourceOwner.swift │ │ │ ├── DelegatesOwner.swift │ │ │ ├── FontSizeAdjusting.swift │ │ │ ├── ImageHolder.swift │ │ │ ├── LayoutPriority.swift │ │ │ ├── MergableAttribute.swift │ │ │ ├── PlaceholderOwner.swift │ │ │ ├── Segment.swift │ │ │ ├── Targetable.swift │ │ │ ├── TextHolder.swift │ │ │ ├── TextInputTraitable.swift │ │ │ ├── TextInputting.swift │ │ │ ├── ThumbTintColorOwner.swift │ │ │ └── WebView.swift │ │ ├── ViewAttribute+Mergeable+Array.swift │ │ ├── ViewAttribute+Mergeable.swift │ │ ├── ViewAttribute+Operators.swift │ │ └── ViewAttribute.swift │ ├── ViewStyle │ │ ├── UIView+ViewStyle │ │ │ ├── UIActivityIndicatorView+ViewStyle.swift │ │ │ ├── UIButton+ViewStyle.swift │ │ │ ├── UICollectionView+ViewStyle.swift │ │ │ ├── UIControl+ViewStyle.swift │ │ │ ├── UILabel+ViewStyle.swift │ │ │ ├── UIPageControl+ViewStyle.swift │ │ │ ├── UIProgressView+ViewStyle.swift │ │ │ ├── UIScrollView+ViewStyle.swift │ │ │ ├── UISearchBar+ViewStyle.swift │ │ │ ├── UISegmentedControl+ViewStyle.swift │ │ │ ├── UISlider+ViewStyle.swift │ │ │ ├── UIStackView+ViewStyle.swift │ │ │ ├── UISwitch+ViewStyle.swift │ │ │ ├── UITableView+ViewStyle.swift │ │ │ ├── UITextField+ViewStyle.swift │ │ │ └── UITextView+ViewStyle.swift │ │ ├── ViewStyle+Optional+Operators.swift │ │ └── ViewStyle.swift │ └── Views │ │ └── Makeable │ │ ├── UIActivityIndicatorView+Makeable.swift │ │ ├── UIButton+Makeable.swift │ │ ├── UICollectionView+Makeable.swift │ │ ├── UIImageView+Makeable.swift │ │ ├── UILabel+Makeable.swift │ │ ├── UIPageControl+Makeable.swift │ │ ├── UIPickerView+Makeable.swift │ │ ├── UIProgressView+Makeable.swift │ │ ├── UISearchBar+Makeable.swift │ │ ├── UISegmentedControl+Makeable.swift │ │ ├── UISlider+Makeable.swift │ │ ├── UIStackView+Makeable.swift │ │ ├── UISwitch+Makeable.swift │ │ ├── UITableView+Makeable.swift │ │ ├── UITextField+Makeable.swift │ │ ├── UITextView+Makeable.swift │ │ ├── UIWebView+Makeable.swift │ │ └── WKWebView+Makeable.swift ├── Composables │ ├── Button.swift │ ├── ImageView.swift │ ├── Label.swift │ ├── StackView.swift │ ├── TextField.swift │ └── TextView.swift ├── Configuration │ └── Config.xcconfig ├── Info.plist ├── Sourcery │ ├── Generated │ │ └── AutoAssociatedValueEnum.generated.swift │ ├── Rules │ │ └── SourceryRules.swift │ └── Templates │ │ └── AutoAssociatedValueEnum.swifttemplate └── ViewComposer.h ├── Tests ├── BaseXCTest.swift ├── ControlStateMergingTests.swift ├── DuplicatesHandlerTests.swift ├── Info.plist ├── MakeableFromStyleTests.swift ├── MakeableTests.swift ├── MergeInterceptorsTests.swift ├── MergeOfOptionalsUsingOperatorsTests.swift ├── MergeOperatorAssociativityTests.swift ├── MergingViewAttributeArraysTests.swift ├── MergingViewStyleWithArraysTests.swift ├── ProcessControlStatesTests.swift ├── StrippedEquatableComparableTests.swift └── UtilitiesTests.swift ├── ViewComposer.podspec ├── ViewComposer.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ └── contents.xcworkspacedata └── xcshareddata │ └── xcschemes │ └── ViewComposer.xcscheme └── ViewComposer.xcworkspace ├── contents.xcworkspacedata └── xcshareddata └── IDEWorkspaceChecks.plist /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata/ 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | Carthage 26 | 27 | # XCode workspaces - more detailed 28 | *.xcodeproj/* 29 | !*.xcodeproj/project.pbxproj 30 | !*.xcodeproj/xcshareddata/ 31 | !*.xcworkspace/contents.xcworkspacedata 32 | 33 | default.profraw -------------------------------------------------------------------------------- /.sourcery.yml: -------------------------------------------------------------------------------- 1 | sources: 2 | - Source/Sourcery/Rules 3 | - Source/Classes 4 | templates: 5 | - Source/Sourcery/Templates 6 | output: Source/Sourcery/Generated 7 | args: 8 | disableCache: true 9 | prune: true 10 | verbose: true 11 | importViewComposerInTemplate: false -------------------------------------------------------------------------------- /.swift-version: -------------------------------------------------------------------------------- 1 | 4.1 -------------------------------------------------------------------------------- /.swiftlint.yml: -------------------------------------------------------------------------------- 1 | disabled_rules: 2 | - trailing_newline 3 | - trailing_whitespace 4 | - todo 5 | - closure_parameter_position 6 | - unused_closure_parameter 7 | - mark 8 | - weak_delegate 9 | - identifier_name 10 | - empty_parameters 11 | included: 12 | - Source 13 | excluded: 14 | - Source/Sourcery 15 | - Pods 16 | line_length: 300 17 | type_name: 18 | min_length: 3 19 | max_length: 20 | warning: 40 21 | error: 45 22 | 23 | file_length: 24 | - 300 # warning 25 | - 400 # error 26 | 27 | variable_name: 28 | min_length: 2 29 | max_length: 30 | warning: 35 31 | error: 45 32 | 33 | type_body_length: 34 | - 100 # warning 35 | - 200 # error 36 | 37 | function_parameter_count: 38 | - 4 # warning 39 | - 5 # error 40 | 41 | function_body_length: 42 | - 25 # warning 43 | - 40 # error 44 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # references: 2 | # * http://www.objc.io/issue-6/travis-ci.html 3 | # * https://github.com/supermarin/xcpretty#usage 4 | 5 | osx_image: xcode7.3 6 | language: objective-c 7 | # cache: cocoapods 8 | # podfile: Example/Podfile 9 | # before_install: 10 | # - gem install cocoapods # Since Travis is not always on latest version 11 | # - pod install --project-directory=Example 12 | script: 13 | - set -o pipefail && xcodebuild test -workspace Example/ViewComposer.xcworkspace -scheme ViewComposer-Example -sdk iphonesimulator9.3 ONLY_ACTIVE_ARCH=NO | xcpretty 14 | - pod lib lint 15 | -------------------------------------------------------------------------------- /ABOUT.md: -------------------------------------------------------------------------------- 1 | ## What is ViewComposer? 2 | _**ViewComposer** allows you to create views programmatically using enums declared in a list._ 3 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # ViewComposer CHANGELOG -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to ViewComposer 2 | 3 | ViewComposer is an open source project started by Alexander Cyon and open to the entire Cocoa community. 4 | 5 | I really appreciate your help! 6 | 7 | ## Filing issues 8 | 9 | When filing an issue, make sure to answer these five questions: 10 | 11 | 1. What version of Swift are you using (`swift --version`)? 12 | 2. What did you do? 13 | 3. What did you expect to see? 14 | 4. What did you see instead? 15 | 16 | ## Contributing code 17 | 18 | Before submitting changes, please follow these guidelines: 19 | 20 | 1. Check the open issues and pull requests for existing discussions. 21 | 2. Open an issue to discuss a new feature. 22 | 3. Write tests. 23 | 4. Make sure your changes pass existing tests. 24 | 5. Make sure the entire test suite passes locally and on Travis CI. 25 | 6. Open a Pull Request. 26 | 27 | Unless otherwise noted, the ViewComposer source files are distributed under 28 | the MIT-style [LICENSE](LICENSE). 29 | 30 | [Please review our Code of Conduct](https://github.com/Sajjon/ViewComposer/blob/master/CODE_OF_CONDUCT.md) 31 | -------------------------------------------------------------------------------- /Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/Source/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // ViewComposer-Example 4 | // 5 | // Created by Alexander Cyon on 2017-05-30. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import ViewComposer 11 | 12 | @UIApplicationMain 13 | class AppDelegate: UIResponder { 14 | var window: UIWindow? 15 | } 16 | 17 | extension AppDelegate: UIApplicationDelegate { 18 | func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 19 | setupWindow() 20 | ViewStyle.customStyler = AnyCustomStyler(CustomStylerExample()) 21 | return true 22 | } 23 | } 24 | 25 | struct CustomStylerExample: CustomStyler { 26 | 27 | func customStyle(_ styleable: Any, with style: ViewStyle) { 28 | if styleable is UITableView { 29 | print("Styleable is TableView") 30 | } 31 | } 32 | } 33 | 34 | //MARK: Private Methods 35 | private extension AppDelegate { 36 | 37 | func setupWindow() { 38 | let window = UIWindow(frame: UIScreen.main.bounds) 39 | window.makeKeyAndVisible() 40 | window.backgroundColor = UIColor.white 41 | 42 | let rootViewController = TableViewController() 43 | let navigationController = UINavigationController(rootViewController: rootViewController) 44 | window.rootViewController = navigationController 45 | self.window = window 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /Example/Source/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /Example/Source/Assets.xcassets/red.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "red.pdf" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Example/Source/Assets.xcassets/red.imageset/red.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Example/Source/Assets.xcassets/red.imageset/red.pdf -------------------------------------------------------------------------------- /Example/Source/Assets.xcassets/white.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "white.pdf" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /Example/Source/Assets.xcassets/white.imageset/white.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Example/Source/Assets.xcassets/white.imageset/white.pdf -------------------------------------------------------------------------------- /Example/Source/Extensions/String+Attributed.swift: -------------------------------------------------------------------------------- 1 | // 2 | // String+Attributed.swift 3 | // Example 4 | // 5 | // Created by Oscar Silver on 2017-09-03. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | 11 | extension String { 12 | func applyAttributes(_ attributes: [NSAttributedStringKey: AnyObject], toSubstring substring: String) -> NSMutableAttributedString { 13 | let wholeStringAttributed = NSMutableAttributedString(string: self) 14 | return wholeStringAttributed.applyAttributes(attributes, toSubstring: substring) 15 | } 16 | } 17 | 18 | extension NSMutableAttributedString { 19 | func applyAttributes(_ attributes: [NSAttributedStringKey: Any], toSubstring substring: String) -> NSMutableAttributedString { 20 | let range = (string as NSString).range(of: substring) 21 | self.beginEditing() 22 | self.addAttributes(attributes, range: range) 23 | self.endEditing() 24 | return self 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Example/Source/Extensions/UIImage+UIColor.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+UIColor.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-22. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | extension UIImage { 12 | static func withColor(_ color: UIColor, size: CGSize) -> UIImage { 13 | let rect = CGRect(x: 0, y: 0, width: size.width, height: size.height) 14 | UIGraphicsBeginImageContextWithOptions(size, false, 0) 15 | color.setFill() 16 | UIRectFill(rect) 17 | let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()! 18 | UIGraphicsEndImageContext() 19 | return image 20 | } 21 | } 22 | 23 | extension UIColor { 24 | func toImage(sized size: CGSize) -> UIImage { 25 | return UIImage.withColor(self, size: size) 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Example/Source/ViewControllers/ViewComposer/ImageViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ImageViewController.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-09-05. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | import ViewComposer 11 | 12 | private let imageSize: CGFloat = 300 13 | let imageStyle: ViewStyle = [.image(#imageLiteral(resourceName: "white")), .highlightedImage(#imageLiteral(resourceName: "red")), .height(imageSize), .width(imageSize), .contentMode(.scaleAspectFit)] 14 | final class ImageViewController: UIViewController, StackViewOwner { 15 | 16 | lazy var imageView: UIImageView = imageStyle <<- .highlighted(true) 17 | 18 | lazy var button: UIButton = imageStyle <<- .target(self.target(#selector(pressed))) 19 | 20 | var views: [UIView] { return [imageView, button] } 21 | lazy var stackView: UIStackView = .axis(.vertical) <- .views(self.views) 22 | <- [.spacing(20), .spacing(10), .distribution(.fillProportionally)] 23 | 24 | override func viewDidLoad() { 25 | super.viewDidLoad() 26 | setupViews() 27 | title = "ViewComposer - ImageViewController" 28 | } 29 | } 30 | 31 | private extension ImageViewController { 32 | 33 | @objc func pressed() { 34 | print("pressed") 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Example/Source/ViewControllers/ViewComposer/MakeableUIWebViewViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // MakeableUIWebViewViewController.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | final class MakeableUIWebViewViewController: UIViewController { 12 | 13 | lazy var webView: UIWebView = [.color(.red)] 14 | 15 | override func viewDidLoad() { 16 | super.viewDidLoad() 17 | setupViews() 18 | loadWebview() 19 | } 20 | } 21 | 22 | extension MakeableUIWebViewViewController: SingleSubviewOwner { var subview: UIWebView { return webView } } 23 | 24 | private extension MakeableUIWebViewViewController { 25 | func loadWebview() { 26 | webView.loadRequest(.github) 27 | } 28 | } 29 | 30 | extension URLRequest { 31 | @nonobjc static let github = URLRequest(url: URL(string: "https://github.com/Sajjon/ViewComposer")!) 32 | } 33 | -------------------------------------------------------------------------------- /Example/Source/ViewControllers/ViewComposer/NestedStackViewsViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // NestedStackViewsViewController.swift 3 | // ViewComposer-Example 4 | // 5 | // Created by Alexander Cyon on 2017-05-30. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import ViewComposer 11 | 12 | class NestedStackViewsViewController: UIViewController, StackViewOwner { 13 | 14 | lazy var fooLabel: UILabel = [.text("Foo"), .textColor(.blue), .color(.red), .textAlignment(.center)] 15 | lazy var barLabel: UILabel = [.text("Bar"), .textColor(.red), .color(.green), .textAlignment(.center)] 16 | lazy var labels: UIStackView = [.views([self.fooLabel, self.barLabel]), .distribution(.fillEqually)] 17 | 18 | lazy var button: UIButton = [.text("Baz"), .color(.cyan), .textColor(.red)] 19 | 20 | lazy var stackView: UIStackView = [.views([self.labels, self.button]), .axis(.vertical), .distribution(.fillEqually)] 21 | 22 | init() { 23 | super.init(nibName: nil, bundle: nil) 24 | view.backgroundColor = .white 25 | } 26 | 27 | required init?(coder aDecoder: NSCoder) { 28 | fatalError("init(coder:) has not been implemented") 29 | } 30 | 31 | override func viewDidLoad() { 32 | super.viewDidLoad() 33 | setupViews() 34 | title = "ViewComposer - Nested StackViews" 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Example/Source/ViewControllers/ViewComposer/SimpleCustomAttributeViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // SimpleCustomAttributeViewController.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-03. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import ViewComposer 11 | 12 | 13 | final class SimpleCustomAttributeViewController: UIViewController, StackViewOwner { 14 | 15 | private lazy var fooLabel: FooLabel = [.custom(FooStyle([.foo("Foobar")])), .textColor(.red), .color(.cyan)] 16 | lazy var stackView: UIStackView = [.views([self.fooLabel])] 17 | 18 | init() { 19 | super.init(nibName: nil, bundle: nil) 20 | view.backgroundColor = .white 21 | } 22 | 23 | required init?(coder aDecoder: NSCoder) { 24 | fatalError("init(coder:) has not been implemented") 25 | } 26 | 27 | override func viewDidLoad() { 28 | super.viewDidLoad() 29 | setupViews() 30 | title = "ViewComposer - FooLabel" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Example/Source/ViewControllers/ViewComposer/TriangleViewController.swift: -------------------------------------------------------------------------------- 1 | // 2 | // TriangleViewController.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-02. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import ViewComposer 11 | 12 | class TriangleViewController: UIViewController, StackViewOwner { 13 | private lazy var triangleViewA: TriangleView = [.custom(TriangleViewStyle([.fillColor(.green), .fillStyle(.lowerAcute)])), .color(.red)] 14 | private lazy var triangleViewB: TriangleView = [.custom(TriangleViewStyle([.fillColor(.green), .fillStyle(.lowerGrave)]))] 15 | private lazy var triangleViewC: TriangleView = [.custom(TriangleViewStyle([.fillColor(.yellow)])), .color(.orange)] 16 | private lazy var triangleViewD = TriangleView([]) //using `default` ViewStyle in TriangleView 17 | 18 | lazy var stackView: UIStackView = [.views([self.triangleViewA, self.triangleViewB, self.triangleViewC, self.triangleViewD]), .axis(.vertical), .distribution(.fillEqually)] 19 | 20 | init() { 21 | super.init(nibName: nil, bundle: nil) 22 | view.backgroundColor = .white 23 | } 24 | 25 | required init?(coder aDecoder: NSCoder) { 26 | fatalError("init(coder:) has not been implemented") 27 | } 28 | 29 | override func viewDidLoad() { 30 | super.viewDidLoad() 31 | setupViews() 32 | title = "ViewComposer - TriangleView" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Example/Source/Views/MyCollectionViewCell.swift: -------------------------------------------------------------------------------- 1 | // 2 | // MyCollectionViewCell.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import ViewComposer 11 | 12 | private let labelStyle: ViewStyle = [.textAlignment(.center)] 13 | final class MyCollectionViewCell: UICollectionViewCell { 14 | lazy var sectionLabel: UILabel = labelStyle <<- [.color(.blue), .textColor(.red)] 15 | lazy var rowLabel: UILabel = labelStyle <<- [.color(.red), .textColor(.blue)] 16 | lazy var stackView: StackView = [.views([self.sectionLabel, self.rowLabel]), .axis(.vertical)]^ 17 | required init(coder: NSCoder) { fatalError("required init") } 18 | 19 | override init(frame: CGRect) { 20 | super.init(frame: frame) 21 | setupViews() 22 | } 23 | } 24 | 25 | extension MyCollectionViewCell: StackViewOwner { 26 | var parentView: UIView { return contentView } 27 | } 28 | 29 | extension MyCollectionViewCell { 30 | func configure(with indexPath: IndexPath) { 31 | sectionLabel.text = "Section: \(indexPath.section)" 32 | rowLabel.text = "Row: \(indexPath.row)" 33 | } 34 | } 35 | 36 | -------------------------------------------------------------------------------- /Example/Source/Views/Protocols/SingleSubviewOwner.swift: -------------------------------------------------------------------------------- 1 | // 2 | // StackViewOwner.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | import ViewComposer 11 | 12 | protocol SingleSubviewOwner { 13 | associatedtype SubviewType: UIView 14 | var subview: SubviewType { get } 15 | var parentView: UIView { get } 16 | func specialConfig() 17 | } 18 | 19 | extension SingleSubviewOwner { 20 | func specialConfig() {} 21 | } 22 | 23 | 24 | extension SingleSubviewOwner where Self: UIViewController { 25 | var parentView: UIView { return self.view } 26 | 27 | func specialConfig() { 28 | view.backgroundColor = .white 29 | edgesForExtendedLayout = [] 30 | automaticallyAdjustsScrollViewInsets = false 31 | } 32 | } 33 | 34 | extension SingleSubviewOwner { 35 | func setupViews() { 36 | parentView.addSubview(subview) 37 | parentView.addConstraint(subview.topAnchor.constraint(equalTo: parentView.topAnchor)) 38 | parentView.addConstraint(subview.leadingAnchor.constraint(equalTo: parentView.leadingAnchor)) 39 | parentView.addConstraint(subview.trailingAnchor.constraint(equalTo: parentView.trailingAnchor)) 40 | let bottom = subview.bottomAnchor.constraint(equalTo: parentView.bottomAnchor) 41 | bottom.priority = .defaultHigh 42 | parentView.addConstraint(bottom) 43 | 44 | specialConfig() 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /Example/Source/Views/Protocols/StackViewOwner.swift: -------------------------------------------------------------------------------- 1 | // 2 | // StackViewOwner.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | protocol StackViewOwner: SingleSubviewOwner { 12 | associatedtype StackViewType: UIStackView 13 | associatedtype SubviewType = StackViewType 14 | var stackView: StackViewType { get set } 15 | } 16 | 17 | extension StackViewOwner where Self.SubviewType == Self.StackViewType { 18 | var subview: SubviewType { 19 | get { return stackView } 20 | set { stackView = newValue } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Example/Source/Views/UIView_Extension.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIView_Extension.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | extension UIView { 12 | func pinEdges(to view: UIView) { 13 | view.addConstraint(self.topAnchor.constraint(equalTo: view.topAnchor)) 14 | view.addConstraint(self.leadingAnchor.constraint(equalTo: view.leadingAnchor)) 15 | view.addConstraint(self.trailingAnchor.constraint(equalTo: view.trailingAnchor)) 16 | view.addConstraint(self.bottomAnchor.constraint(equalTo: view.bottomAnchor)) 17 | } 18 | } 19 | 20 | 21 | extension UIView { 22 | static var spacer: UIView { return spacer(.clear) } 23 | static func spacer(_ color: UIColor) -> UIView { 24 | let view = UIView() 25 | view.translatesAutoresizingMaskIntoConstraints = false 26 | view.setContentCompressionResistancePriority(.defaultLow, for: .vertical) 27 | view.setContentCompressionResistancePriority(.defaultLow, for: .horizontal) 28 | view.backgroundColor = color 29 | return view 30 | } 31 | } 32 | 33 | -------------------------------------------------------------------------------- /Example/Source/Views/Validating.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Validating.swift 3 | // Example 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // Copyright © 2017 Alexander Cyon. All rights reserved. 7 | // 8 | 9 | import UIKit 10 | 11 | protocol Validating { 12 | associatedtype ValidationData 13 | var validationData: ValidationData? { get } 14 | 15 | func validate() 16 | var isValid: Bool { get } 17 | } 18 | 19 | extension UITextField: Validating { 20 | 21 | typealias ValidationData = String 22 | var validationData: ValidationData? { return text } 23 | 24 | func validate() { 25 | let borderColor: UIColor = isValid ? .green : .red 26 | layer.borderColor = borderColor.cgColor 27 | } 28 | 29 | var isValid: Bool { 30 | guard let data = validationData, !data.isEmpty else { return false } 31 | return true 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | source "https://rubygems.org" 3 | 4 | gem 'cocoapods' -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Alexander Cyon 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Package.swift: -------------------------------------------------------------------------------- 1 | import PackageDescription 2 | 3 | let package = Package( 4 | name: "ViewComposer", 5 | dependencies : [], 6 | exclude: ["Tests"] 7 | ) -------------------------------------------------------------------------------- /Podfile: -------------------------------------------------------------------------------- 1 | source 'https://github.com/CocoaPods/Specs.git' 2 | platform :ios, '10.0' 3 | use_frameworks! 4 | inhibit_all_warnings! 5 | 6 | def pods 7 | pod 'SwiftLint' 8 | pod 'Sourcery', '> 0.8' 9 | end 10 | 11 | target 'ViewComposer' do 12 | pods 13 | end 14 | 15 | target 'ViewComposerTests' do 16 | pods 17 | end 18 | 19 | post_install do |installer| 20 | installer.pods_project.targets.each do |target| 21 | if target.name.start_with? "Pods-" 22 | puts "Updating #{target.name}" 23 | target.build_configurations.each do |config| 24 | xcconfig_path = config.base_configuration_reference.real_path 25 | to_write = "#include \"../../../Source/Configuration/Config.xcconfig\"\n\n" 26 | xcconfig_contents = "" 27 | File.open(xcconfig_path, 'r') do |fd| 28 | xcconfig_contents = to_write << fd.read 29 | end 30 | # Overwrite file but now with prepended string on it 31 | File.open(xcconfig_path, 'w') do |fd| 32 | fd.write(xcconfig_contents) 33 | end 34 | end 35 | end 36 | end 37 | end 38 | -------------------------------------------------------------------------------- /Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - Sourcery (0.12.0) 3 | - SwiftLint (0.25.1) 4 | 5 | DEPENDENCIES: 6 | - Sourcery (> 0.8) 7 | - SwiftLint 8 | 9 | SPEC REPOS: 10 | https://github.com/CocoaPods/Specs.git: 11 | - Sourcery 12 | - SwiftLint 13 | 14 | SPEC CHECKSUMS: 15 | Sourcery: 10fa92cd8890864856ee3657ca460d597ebc064b 16 | SwiftLint: ce933681be10c3266e82576dad676fa815a602e9 17 | 18 | PODFILE CHECKSUM: 8daaa4726f3a6a7e2f4c5722cc88106bc62b1efa 19 | 20 | COCOAPODS: 1.5.0 21 | -------------------------------------------------------------------------------- /Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - Sourcery (0.12.0) 3 | - SwiftLint (0.25.1) 4 | 5 | DEPENDENCIES: 6 | - Sourcery (> 0.8) 7 | - SwiftLint 8 | 9 | SPEC REPOS: 10 | https://github.com/CocoaPods/Specs.git: 11 | - Sourcery 12 | - SwiftLint 13 | 14 | SPEC CHECKSUMS: 15 | Sourcery: 10fa92cd8890864856ee3657ca460d597ebc064b 16 | SwiftLint: ce933681be10c3266e82576dad676fa815a602e9 17 | 18 | PODFILE CHECKSUM: 8daaa4726f3a6a7e2f4c5722cc88106bc62b1efa 19 | 20 | COCOAPODS: 1.5.0 21 | -------------------------------------------------------------------------------- /Pods/Sourcery/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Krzysztof Zabłocki 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Pods/Sourcery/Resources/daemon.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/Resources/daemon.gif -------------------------------------------------------------------------------- /Pods/Sourcery/Resources/icon-128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/Resources/icon-128.png -------------------------------------------------------------------------------- /Pods/Sourcery/Sourcery.docset/Contents/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleIdentifier 6 | com.jazzy.sourcery 7 | CFBundleName 8 | Sourcery 9 | DocSetPlatformFamily 10 | sourcery 11 | isDashDocset 12 | 13 | dashIndexFilePath 14 | index.html 15 | isJavaScriptEnabled 16 | 17 | DashDocSetFamily 18 | dashtoc 19 | 20 | 21 | -------------------------------------------------------------------------------- /Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/badge.svg: -------------------------------------------------------------------------------- 1 | documentationdocumentation100%100% -------------------------------------------------------------------------------- /Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/img/carat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/img/carat.png -------------------------------------------------------------------------------- /Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/img/dash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/img/dash.png -------------------------------------------------------------------------------- /Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/img/gh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/img/gh.png -------------------------------------------------------------------------------- /Pods/Sourcery/Sourcery.docset/Contents/Resources/Documents/undocumented.json: -------------------------------------------------------------------------------- 1 | { 2 | "warnings": [ 3 | 4 | ], 5 | "source_directory": "/Users/ilyapuchka/dev/Sourcery" 6 | } -------------------------------------------------------------------------------- /Pods/Sourcery/Sourcery.docset/Contents/Resources/docSet.dsidx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/Sourcery.docset/Contents/Resources/docSet.dsidx -------------------------------------------------------------------------------- /Pods/Sourcery/Templates/AutoCases.stencil: -------------------------------------------------------------------------------- 1 | {% for enum in types.implementing.AutoCases|enum %} 2 | {{ enum.accessLevel }} extension {{ enum.name }} { 3 | static let count: Int = {{ enum.cases.count }} 4 | {% if not enum.hasAssociatedValues %} 5 | static let allCases: [{{ enum.name }}] = [ 6 | {% for case in enum.cases %} .{{ case.name }}{% if not forloop.last %},{% endif %} 7 | {% endfor %}] 8 | {% endif %} 9 | } 10 | {% endfor %} 11 | -------------------------------------------------------------------------------- /Pods/Sourcery/Templates/AutoLenses.stencil: -------------------------------------------------------------------------------- 1 | // swiftlint:disable variable_name 2 | infix operator *~: MultiplicationPrecedence 3 | infix operator |>: AdditionPrecedence 4 | 5 | struct Lens { 6 | let get: (Whole) -> Part 7 | let set: (Part, Whole) -> Whole 8 | } 9 | 10 | func * (lhs: Lens, rhs: Lens) -> Lens { 11 | return Lens( 12 | get: { a in rhs.get(lhs.get(a)) }, 13 | set: { (c, a) in lhs.set(rhs.set(c, lhs.get(a)), a) } 14 | ) 15 | } 16 | 17 | func *~ (lhs: Lens, rhs: B) -> (A) -> A { 18 | return { a in lhs.set(rhs, a) } 19 | } 20 | 21 | func |> (x: A, f: (A) -> B) -> B { 22 | return f(x) 23 | } 24 | 25 | func |> (f: @escaping (A) -> B, g: @escaping (B) -> C) -> (A) -> C { 26 | return { g(f($0)) } 27 | } 28 | 29 | {% for type in types.implementing.AutoLenses|struct %} 30 | extension {{ type.name }} { 31 | {% for variable in type.storedVariables %} 32 | static let {{ variable.name }}Lens = Lens<{{type.name}}, {{variable.typeName}}>( 33 | get: { $0.{{variable.name}} }, 34 | set: { {{variable.name}}, {{type.name|lowercase}} in 35 | {{type.name}}({% for argument in type.storedVariables %}{{argument.name}}: {% if variable.name == argument.name %}{{variable.name}}{% else %}{{type.name|lowercase}}.{{argument.name}}{% endif %}{% if not forloop.last %}, {% endif %}{% endfor %}) 36 | } 37 | ){% endfor %} 38 | } 39 | {% endfor %} 40 | -------------------------------------------------------------------------------- /Pods/Sourcery/Templates/LinuxMain.stencil: -------------------------------------------------------------------------------- 1 | import XCTest 2 | 3 | {{ argument.testimports }} 4 | {% for type in types.classes|based:"XCTestCase" %} 5 | {% if not type.annotations.disableTests %}extension {{ type.name }} { 6 | static var allTests: [(String, ({{ type.name }}) -> () throws -> Void)] = [ 7 | {% for method in type.methods %}{% if method.parameters.count == 0 and method.shortName|hasPrefix:"test" %} ("{{ method.shortName }}", {{ method.shortName }}){% if not forloop.last %},{% endif %} 8 | {% endif %}{% endfor %}] 9 | } 10 | {% endif %}{% endfor %} 11 | 12 | // swiftlint:disable trailing_comma 13 | XCTMain([ 14 | {% for type in types.classes|based:"XCTestCase" %}{% if not type.annotations.disableTests %} testCase({{ type.name }}.allTests), 15 | {% endif %}{% endfor %}]) 16 | // swiftlint:enable trailing_comma 17 | 18 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/AEXML: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/AEXML -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | AEXML 11 | CFBundleIdentifier 12 | org.cocoapods.AEXML 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | AEXML 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.2.2 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/Versions/A/AEXML: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/Versions/A/AEXML -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | AEXML 11 | CFBundleIdentifier 12 | org.cocoapods.AEXML 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | AEXML 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.2.2 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/Versions/Current/AEXML: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/Versions/Current/AEXML -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/AEXML.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | AEXML 11 | CFBundleIdentifier 12 | org.cocoapods.AEXML 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | AEXML 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.2.2 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Commander: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Commander -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Commander 11 | CFBundleIdentifier 12 | org.cocoapods.Commander 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Commander 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.6.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Versions/A/Commander: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Versions/A/Commander -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Commander 11 | CFBundleIdentifier 12 | org.cocoapods.Commander 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Commander 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.6.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Versions/Current/Commander: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Versions/Current/Commander -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Commander.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Commander 11 | CFBundleIdentifier 12 | org.cocoapods.Commander 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Commander 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.6.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/CommonCrypto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/CommonCrypto -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | CommonCrypto 11 | CFBundleIdentifier 12 | org.cocoapods.CommonCrypto 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | CommonCrypto 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.1.1 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/Versions/A/CommonCrypto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/Versions/A/CommonCrypto -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | CommonCrypto 11 | CFBundleIdentifier 12 | org.cocoapods.CommonCrypto 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | CommonCrypto 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.1.1 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/Versions/Current/CommonCrypto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/Versions/Current/CommonCrypto -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/CommonCrypto.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | CommonCrypto 11 | CFBundleIdentifier 12 | org.cocoapods.CommonCrypto 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | CommonCrypto 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.1.1 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/PathKit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/PathKit -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | PathKit 11 | CFBundleIdentifier 12 | org.cocoapods.PathKit 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | PathKit 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.8.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/Versions/A/PathKit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/Versions/A/PathKit -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | PathKit 11 | CFBundleIdentifier 12 | org.cocoapods.PathKit 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | PathKit 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.8.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/Versions/Current/PathKit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/Versions/Current/PathKit -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/PathKit.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | PathKit 11 | CFBundleIdentifier 12 | org.cocoapods.PathKit 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | PathKit 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.8.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SWXMLHash 11 | CFBundleIdentifier 12 | org.cocoapods.SWXMLHash 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SWXMLHash 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.6.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/SWXMLHash: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/SWXMLHash -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SWXMLHash 11 | CFBundleIdentifier 12 | org.cocoapods.SWXMLHash 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SWXMLHash 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.6.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/Versions/A/SWXMLHash: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/Versions/A/SWXMLHash -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SWXMLHash 11 | CFBundleIdentifier 12 | org.cocoapods.SWXMLHash 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SWXMLHash 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.6.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/Versions/Current/SWXMLHash: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SWXMLHash.framework/Versions/Current/SWXMLHash -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SourceKittenFramework 11 | CFBundleIdentifier 12 | org.cocoapods.SourceKittenFramework 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SourceKittenFramework 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.20.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/SourceKittenFramework: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/SourceKittenFramework -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SourceKittenFramework 11 | CFBundleIdentifier 12 | org.cocoapods.SourceKittenFramework 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SourceKittenFramework 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.20.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/Versions/A/SourceKittenFramework: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/Versions/A/SourceKittenFramework -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/Versions/Current/SourceKittenFramework: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceKittenFramework.framework/Versions/Current/SourceKittenFramework -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Headers/SourceryJS.h: -------------------------------------------------------------------------------- 1 | // 2 | // SourceryJS.h 3 | // SourceryJS 4 | // 5 | // Created by Ilya Puchka on 25/01/2018. 6 | // Copyright © 2018 Pixle. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SourceryJS. 12 | FOUNDATION_EXPORT double SourceryJSVersionNumber; 13 | 14 | //! Project version string for SourceryJS. 15 | FOUNDATION_EXPORT const unsigned char SourceryJSVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Modules/SourceryJS.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Modules/SourceryJS.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Modules/SourceryJS.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Modules/SourceryJS.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryJS { 2 | umbrella header "SourceryJS.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryJS.Swift { 9 | header "SourceryJS-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | English 9 | CFBundleExecutable 10 | SourceryJS 11 | CFBundleIdentifier 12 | Pixle.SourceryJS 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SourceryJS 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 1 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 9E145 31 | DTPlatformVersion 32 | GM 33 | DTSDKBuild 34 | 17E189 35 | DTSDKName 36 | macosx10.13 37 | DTXcode 38 | 0930 39 | DTXcodeBuild 40 | 9E145 41 | NSHumanReadableCopyright 42 | Copyright © 2018 Pixle. All rights reserved. 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/SourceryJS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/SourceryJS -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/Headers/SourceryJS.h: -------------------------------------------------------------------------------- 1 | // 2 | // SourceryJS.h 3 | // SourceryJS 4 | // 5 | // Created by Ilya Puchka on 25/01/2018. 6 | // Copyright © 2018 Pixle. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SourceryJS. 12 | FOUNDATION_EXPORT double SourceryJSVersionNumber; 13 | 14 | //! Project version string for SourceryJS. 15 | FOUNDATION_EXPORT const unsigned char SourceryJSVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/Modules/SourceryJS.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/Modules/SourceryJS.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/Modules/SourceryJS.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/Modules/SourceryJS.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryJS { 2 | umbrella header "SourceryJS.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryJS.Swift { 9 | header "SourceryJS-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | English 9 | CFBundleExecutable 10 | SourceryJS 11 | CFBundleIdentifier 12 | Pixle.SourceryJS 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SourceryJS 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 1 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 9E145 31 | DTPlatformVersion 32 | GM 33 | DTSDKBuild 34 | 17E189 35 | DTSDKName 36 | macosx10.13 37 | DTXcode 38 | 0930 39 | DTXcodeBuild 40 | 9E145 41 | NSHumanReadableCopyright 42 | Copyright © 2018 Pixle. All rights reserved. 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/SourceryJS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/A/SourceryJS -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/Headers/SourceryJS.h: -------------------------------------------------------------------------------- 1 | // 2 | // SourceryJS.h 3 | // SourceryJS 4 | // 5 | // Created by Ilya Puchka on 25/01/2018. 6 | // Copyright © 2018 Pixle. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SourceryJS. 12 | FOUNDATION_EXPORT double SourceryJSVersionNumber; 13 | 14 | //! Project version string for SourceryJS. 15 | FOUNDATION_EXPORT const unsigned char SourceryJSVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/Modules/SourceryJS.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/Modules/SourceryJS.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/Modules/SourceryJS.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/Modules/SourceryJS.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryJS { 2 | umbrella header "SourceryJS.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryJS.Swift { 9 | header "SourceryJS-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | English 9 | CFBundleExecutable 10 | SourceryJS 11 | CFBundleIdentifier 12 | Pixle.SourceryJS 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SourceryJS 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 1 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 9E145 31 | DTPlatformVersion 32 | GM 33 | DTSDKBuild 34 | 17E189 35 | DTSDKName 36 | macosx10.13 37 | DTXcode 38 | 0930 39 | DTXcodeBuild 40 | 9E145 41 | NSHumanReadableCopyright 42 | Copyright © 2018 Pixle. All rights reserved. 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/SourceryJS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryJS.framework/Versions/Current/SourceryJS -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/A/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourceryRuntime.framework/Versions/Current/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Headers/SourcerySwift.h: -------------------------------------------------------------------------------- 1 | // 2 | // SourcerySwift.h 3 | // SourcerySwift 4 | // 5 | // Created by Ilya Puchka on 29/01/2018. 6 | // Copyright © 2018 Pixle. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SourcerySwift. 12 | FOUNDATION_EXPORT double SourcerySwiftVersionNumber; 13 | 14 | //! Project version string for SourcerySwift. 15 | FOUNDATION_EXPORT const unsigned char SourcerySwiftVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Modules/SourcerySwift.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Modules/SourcerySwift.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Modules/SourcerySwift.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Modules/SourcerySwift.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourcerySwift { 2 | umbrella header "SourcerySwift.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourcerySwift.Swift { 9 | header "SourcerySwift-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | English 9 | CFBundleExecutable 10 | SourcerySwift 11 | CFBundleIdentifier 12 | Pixle.SourcerySwift 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SourcerySwift 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSupportedPlatforms 22 | 23 | MacOSX 24 | 25 | CFBundleVersion 26 | 1 27 | DTCompiler 28 | com.apple.compilers.llvm.clang.1_0 29 | DTPlatformBuild 30 | 9E145 31 | DTPlatformVersion 32 | GM 33 | DTSDKBuild 34 | 17E189 35 | DTSDKName 36 | macosx10.13 37 | DTXcode 38 | 0930 39 | DTXcodeBuild 40 | 9E145 41 | NSHumanReadableCopyright 42 | Copyright © 2018 Pixle. All rights reserved. 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/SourcerySwift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/SourcerySwift -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/A/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Frameworks/SourceryRuntime.framework/Versions/Current/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Headers/SourcerySwift.h: -------------------------------------------------------------------------------- 1 | // 2 | // SourcerySwift.h 3 | // SourcerySwift 4 | // 5 | // Created by Ilya Puchka on 29/01/2018. 6 | // Copyright © 2018 Pixle. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SourcerySwift. 12 | FOUNDATION_EXPORT double SourcerySwiftVersionNumber; 13 | 14 | //! Project version string for SourcerySwift. 15 | FOUNDATION_EXPORT const unsigned char SourcerySwiftVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Modules/SourcerySwift.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Modules/SourcerySwift.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Modules/SourcerySwift.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Modules/SourcerySwift.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourcerySwift { 2 | umbrella header "SourcerySwift.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourcerySwift.Swift { 9 | header "SourcerySwift-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/SourcerySwift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/A/SourcerySwift -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/A/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/Headers/SourceryRuntime.h: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | //! Project version number for SourceryRuntime. 4 | FOUNDATION_EXPORT double SourceryRuntimeVersionNumber; 5 | 6 | //! Project version string for SourceryRuntime. 7 | FOUNDATION_EXPORT const unsigned char SourceryRuntimeVersionString[]; 8 | 9 | // In this header, you should import all the public headers of your framework using statements like #import 10 | 11 | 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/SourceryRuntime.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourceryRuntime { 2 | umbrella header "SourceryRuntime.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourceryRuntime.Swift { 9 | header "SourceryRuntime-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/SourceryRuntime: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Frameworks/SourceryRuntime.framework/Versions/Current/SourceryRuntime -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Headers/SourcerySwift.h: -------------------------------------------------------------------------------- 1 | // 2 | // SourcerySwift.h 3 | // SourcerySwift 4 | // 5 | // Created by Ilya Puchka on 29/01/2018. 6 | // Copyright © 2018 Pixle. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for SourcerySwift. 12 | FOUNDATION_EXPORT double SourcerySwiftVersionNumber; 13 | 14 | //! Project version string for SourcerySwift. 15 | FOUNDATION_EXPORT const unsigned char SourcerySwiftVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Modules/SourcerySwift.swiftmodule/x86_64.swiftdoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Modules/SourcerySwift.swiftmodule/x86_64.swiftdoc -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Modules/SourcerySwift.swiftmodule/x86_64.swiftmodule: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Modules/SourcerySwift.swiftmodule/x86_64.swiftmodule -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module SourcerySwift { 2 | umbrella header "SourcerySwift.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | 8 | module SourcerySwift.Swift { 9 | header "SourcerySwift-Swift.h" 10 | requires objc 11 | } 12 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/SourcerySwift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SourcerySwift.framework/Versions/Current/SourcerySwift -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Stencil 11 | CFBundleIdentifier 12 | org.cocoapods.Stencil 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Stencil 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.10.1 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Stencil: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Stencil -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Stencil 11 | CFBundleIdentifier 12 | org.cocoapods.Stencil 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Stencil 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.10.1 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Versions/A/Stencil: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Versions/A/Stencil -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Stencil 11 | CFBundleIdentifier 12 | org.cocoapods.Stencil 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Stencil 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.10.1 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Versions/Current/Stencil: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Stencil.framework/Versions/Current/Stencil -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | StencilSwiftKit 11 | CFBundleIdentifier 12 | org.cocoapods.StencilSwiftKit 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | StencilSwiftKit 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 2.4.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/StencilSwiftKit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/StencilSwiftKit -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | StencilSwiftKit 11 | CFBundleIdentifier 12 | org.cocoapods.StencilSwiftKit 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | StencilSwiftKit 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 2.4.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/Versions/A/StencilSwiftKit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/Versions/A/StencilSwiftKit -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | StencilSwiftKit 11 | CFBundleIdentifier 12 | org.cocoapods.StencilSwiftKit 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | StencilSwiftKit 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 2.4.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/Versions/Current/StencilSwiftKit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/StencilSwiftKit.framework/Versions/Current/StencilSwiftKit -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SwiftTryCatch 11 | CFBundleIdentifier 12 | org.cocoapods.SwiftTryCatch 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SwiftTryCatch 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/SwiftTryCatch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/SwiftTryCatch -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SwiftTryCatch 11 | CFBundleIdentifier 12 | org.cocoapods.SwiftTryCatch 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SwiftTryCatch 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/Versions/A/SwiftTryCatch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/Versions/A/SwiftTryCatch -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | SwiftTryCatch 11 | CFBundleIdentifier 12 | org.cocoapods.SwiftTryCatch 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | SwiftTryCatch 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/Versions/Current/SwiftTryCatch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/SwiftTryCatch.framework/Versions/Current/SwiftTryCatch -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Yams 11 | CFBundleIdentifier 12 | org.cocoapods.Yams 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Yams 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.7.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Yams 11 | CFBundleIdentifier 12 | org.cocoapods.Yams 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Yams 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.7.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Versions/A/Yams: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Versions/A/Yams -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Yams 11 | CFBundleIdentifier 12 | org.cocoapods.Yams 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Yams 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 0.7.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Versions/Current/Yams: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Versions/Current/Yams -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Yams: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/Yams.framework/Yams -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftAppKit.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftAppKit.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCore.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCore.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreData.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreData.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreFoundation.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreFoundation.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreGraphics.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreGraphics.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreImage.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftCoreImage.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftDarwin.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftDarwin.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftDispatch.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftDispatch.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftFoundation.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftFoundation.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftIOKit.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftIOKit.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftMetal.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftMetal.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftObjectiveC.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftObjectiveC.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftQuartzCore.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftQuartzCore.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftXPC.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftXPC.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftos.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/libswiftos.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | xcproj 11 | CFBundleIdentifier 12 | org.cocoapods.xcproj 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | xcproj 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.2.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | xcproj 11 | CFBundleIdentifier 12 | org.cocoapods.xcproj 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | xcproj 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.2.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/Versions/A/xcproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/Versions/A/xcproj -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/Versions/Current/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 17E199 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | xcproj 11 | CFBundleIdentifier 12 | org.cocoapods.xcproj 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | xcproj 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 4.2.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 9E145 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 17E189 37 | DTSDKName 38 | macosx10.13 39 | DTXcode 40 | 0930 41 | DTXcodeBuild 42 | 9E145 43 | 44 | 45 | -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/Versions/Current/xcproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/Versions/Current/xcproj -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/xcproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Frameworks/xcproj.framework/xcproj -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/MacOS/Sourcery: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/MacOS/Sourcery -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/PkgInfo: -------------------------------------------------------------------------------- 1 | APPL???? -------------------------------------------------------------------------------- /Pods/Sourcery/bin/Sourcery.app/Contents/Resources/libswiftRemoteMirror.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/Sourcery/bin/Sourcery.app/Contents/Resources/libswiftRemoteMirror.dylib -------------------------------------------------------------------------------- /Pods/Sourcery/bin/sourcery: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # This file serves just as a link 3 | 4 | parent_path=$( cd "$(dirname "${BASH_SOURCE}")" ; pwd -P ) 5 | 6 | "${parent_path}"/Sourcery.app/Contents/MacOS/Sourcery "$@" 7 | -------------------------------------------------------------------------------- /Pods/SwiftLint/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Realm Inc. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Pods/SwiftLint/swiftlint: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sajjon/ViewComposer/02c7eb77148ff7a36c2d4c06379879e6994e064d/Pods/SwiftLint/swiftlint -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposer/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposer/Pods-ViewComposer-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_ViewComposer : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_ViewComposer 5 | @end 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposer/Pods-ViewComposer-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_ViewComposerVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_ViewComposerVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposer/Pods-ViewComposer.debug.xcconfig: -------------------------------------------------------------------------------- 1 | #include "../../../Source/Configuration/Config.xcconfig" 2 | 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' '@executable_path/../../Frameworks' 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposer/Pods-ViewComposer.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_ViewComposer { 2 | umbrella header "Pods-ViewComposer-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposer/Pods-ViewComposer.release.xcconfig: -------------------------------------------------------------------------------- 1 | #include "../../../Source/Configuration/Config.xcconfig" 2 | 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' '@executable_path/../../Frameworks' 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposerTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposerTests/Pods-ViewComposerTests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_ViewComposerTests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_ViewComposerTests 5 | @end 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposerTests/Pods-ViewComposerTests-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_ViewComposerTestsVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_ViewComposerTestsVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposerTests/Pods-ViewComposerTests.debug.xcconfig: -------------------------------------------------------------------------------- 1 | #include "../../../Source/Configuration/Config.xcconfig" 2 | 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposerTests/Pods-ViewComposerTests.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_ViewComposerTests { 2 | umbrella header "Pods-ViewComposerTests-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-ViewComposerTests/Pods-ViewComposerTests.release.xcconfig: -------------------------------------------------------------------------------- 1 | #include "../../../Source/Configuration/Config.xcconfig" 2 | 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' 5 | PODS_BUILD_DIR = ${BUILD_DIR} 6 | PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 7 | PODS_PODFILE_DIR_PATH = ${SRCROOT}/. 8 | PODS_ROOT = ${SRCROOT}/Pods 9 | -------------------------------------------------------------------------------- /Source/Classes/Attributed/Attributed+Array+Mergeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Attributed+Array+Mergeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Array where Element: AssociatedValueStrippable { 12 | func filter(stripped: [Element.Stripped]) -> [Element] { 13 | var filtered = [Element]() 14 | for attribute in self { 15 | guard stripped.contains(attribute.stripped) && !(filtered.map { $0.stripped }.contains(attribute.stripped)) else { continue } 16 | filtered.append(attribute) 17 | } 18 | return filtered 19 | } 20 | 21 | func merge(slave: A) -> A where A.Attribute == Element { 22 | return A(self).merge(slave: slave) 23 | } 24 | 25 | func merge(master: A) -> A where A.Attribute == Element { 26 | return A(self).merge(master: master) 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Source/Classes/Attributed/Attributed+AssociatedValueEnumExtractor.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Attributed+AssociatedValueEnumExtractor.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Attributed { 12 | func value(_ stripped: Attribute.Stripped) -> AssociatedValue? { 13 | return attributes.associatedValue(stripped) 14 | } 15 | 16 | func contains(_ attribute: Attribute.Stripped) -> Bool { 17 | return stripped.contains(attribute) 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Source/Classes/Attributed/Attributed+AssociatedValueStrippable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Attributed+AssociatedValueStrippable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Attributed { 12 | typealias Stripped = Attribute.Stripped 13 | var stripped: [Stripped] { return attributes.map { $0.stripped } } 14 | } 15 | -------------------------------------------------------------------------------- /Source/Classes/Attributed/Attributed+Collection.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Attributed+Collection.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Attributed { 12 | public var endIndex: Int { return count } 13 | public var count: Int { return attributes.count } 14 | public var isEmpty: Bool { return attributes.isEmpty } 15 | 16 | public subscript (position: Int) -> Self.Attribute { return attributes[position] } 17 | 18 | public func index(after index: Int) -> Int { 19 | guard index < endIndex else { return endIndex } 20 | return index + 1 21 | } 22 | 23 | public func index(before index: Int) -> Int { 24 | guard index > startIndex else { return startIndex } 25 | return index - 1 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Source/Classes/Attributed/Attributed+CustomAttributeMerger.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Attributed+CustomAttributeMerger.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public protocol CustomAttributeMerger { 12 | associatedtype CustomAttribute: Attributed 13 | associatedtype Style: Attributed 14 | func customMerge(slave: Style, into master: Style) -> Style 15 | } 16 | 17 | extension CustomAttributeMerger where Self: Attributed, Self.Attribute == ViewAttribute { 18 | public func customMerge(slave: ViewStyle, into master: ViewStyle) -> ViewStyle { 19 | let merged = master.merge(slave: slave) 20 | if let customStyle: CustomAttribute = master.value(.custom), let slaveCustomStyle: CustomAttribute = slave.value(.custom) { 21 | let customMerge = customStyle.merge(slave: slaveCustomStyle) 22 | return ViewStyle([.custom(customMerge)]).merge(slave: merged) 23 | } else { 24 | return merged 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Source/Classes/Attributed/Attributed+Optional.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Attributed+Optional.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Optional where Wrapped: Attributed { 12 | func merge(slave: Wrapped) -> Wrapped { 13 | guard let `self` = self else { return slave } 14 | return self.merge(slave: slave) 15 | } 16 | 17 | func merge(master: Wrapped) -> Wrapped { 18 | guard let `self` = self else { return master } 19 | return self.merge(master: master) 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Source/Classes/BaseAttributed/BaseAttributed.swift: -------------------------------------------------------------------------------- 1 | // 2 | // BaseAttributed.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public protocol BaseAttributed { 12 | func install(on styleable: Any) 13 | } 14 | -------------------------------------------------------------------------------- /Source/Classes/Composable/Composable+Styleable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Composable+Styleable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | /// Makes it possible to instantiate and style `Composable` from array literal like this: `let myComposableView: MyComposableView = [.text("foo")]` 12 | public extension Styleable where Self: Composable, Self.Style.Attribute == Element { 13 | init(arrayLiteral elements: Self.Element...) { 14 | self.init(Style(Self.Style.removeDuplicatesIfNeededAndAble(elements))) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Composable/Composable+UIView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Composable+UIView.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Composable where Self: UIView, Style == ViewStyle { 12 | func compose(with style: Style) { 13 | setup(with: style) /* Calling `setup` method in `Styleable` protocl */ 14 | setupSubviews(with: style) /* Calling "optional" method in `Composable` */ 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Extensions/Array+Optional.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Array+Optional.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-18. 6 | // 7 | 8 | import Foundation 9 | 10 | protocol OptionalType { 11 | associatedtype Wrapped 12 | var optional: Wrapped? { get } 13 | } 14 | 15 | extension Optional: OptionalType { 16 | var optional: Wrapped? { return self } 17 | } 18 | 19 | extension Sequence where Iterator.Element: OptionalType { 20 | func removeNils() -> [Iterator.Element.Wrapped] { 21 | return compactMap { $0.optional } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Source/Classes/Extensions/Dictionary_Extensions.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Dictionary_Extensions.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-25. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension Dictionary { 12 | init(_ pairs: [Element]) { 13 | self.init() 14 | for (k, v) in pairs { 15 | self[k] = v 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Source/Classes/Macros.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Macros.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-30. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | func requiredInit() -> Never { 12 | fatalError("Needed by compiler") 13 | } 14 | 15 | func abstractMethod() -> Never { 16 | fatalError("This method should be implemented by subclass") 17 | } 18 | 19 | var notSupported: Never { 20 | fatalError("Not supported") 21 | } 22 | -------------------------------------------------------------------------------- /Source/Classes/Makeable/Makeable+Mergeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Makeable+Mergeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-09. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Attributed { 12 | 13 | func merge(slave: Self) -> M where M.Styled == M, M.Style == Self { 14 | return M.make(merge(slave: slave)) 15 | } 16 | 17 | func merge(master: Self) -> M where M.Styled == M, M.Style == Self { 18 | return master.merge(slave: self) 19 | } 20 | 21 | func merge(slave: Attribute) -> M where M.Styled == M, M.Style == Self { 22 | return merge(slave: Self([slave])) 23 | } 24 | 25 | func merge(master: Attribute) -> M where M.Styled == M, M.Style == Self { 26 | return merge(master: Self([master])) 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Source/Classes/Makeable/Makeable+Styleable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Makeable+Styleable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | /// Makes it possible to instantiate and style `Makeable` from array literal like this: `let label: UILabel = [.text("foo")]` 12 | public extension Styleable where Self: Makeable, Self.Styled == Self, Self.Style.Attribute == Element { 13 | init(arrayLiteral elements: Self.Element...) { 14 | self = Self.make(Self.Style.removeDuplicatesIfNeededAndAble(elements)) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/MergeOperators/MergeOperators.swift: -------------------------------------------------------------------------------- 1 | // 2 | // MergeOperators.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | precedencegroup StyleablePrecedence { 12 | higherThan: CastingPrecedence 13 | associativity: right 14 | } 15 | 16 | infix operator <- : StyleablePrecedence // merge operator returning `Styleable` 17 | infix operator <<- : StyleablePrecedence // force merge operator returning `Styleable` 18 | -------------------------------------------------------------------------------- /Source/Classes/Styleable/Styleable+UIView+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Styleable+UIView+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-06. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Styleable where Self: UIView, Style == ViewStyle { 12 | func setup(with style: Style) { 13 | translatesAutoresizingMaskIntoConstraints = false 14 | style.install(on: self) 15 | setupConstraints(with: style) 16 | } 17 | 18 | func layoutSubviews(with style: Style) { 19 | privateLayoutSubviews(with: style) 20 | customLayoutSubviews(with: style) 21 | } 22 | 23 | func customLayoutSubviews(with style: Style) {} 24 | } 25 | 26 | public extension Styleable where Self: UIView, Style == ViewStyle { 27 | func privateLayoutSubviews(with style: Style) { 28 | guard let rounding: CornerRounding = style.value(.roundedBy) else { return } 29 | rounding.apply(to: self) 30 | } 31 | 32 | func setupConstraints(with style: Style) { 33 | if let height: CGFloat = style.value(.height) { 34 | addConstraint(heightAnchor.constraint(equalToConstant: height)) 35 | } 36 | 37 | if let width: CGFloat = style.value(.width) { 38 | addConstraint(widthAnchor.constraint(equalToConstant: width)) 39 | } 40 | } 41 | } 42 | 43 | -------------------------------------------------------------------------------- /Source/Classes/Styleable/Styleable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Styleable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public protocol Styleable: ExpressibleByArrayLiteral { 12 | associatedtype Style: Attributed 13 | associatedtype Element = Style.Attribute 14 | func setup(with style: Style) 15 | } 16 | 17 | public extension Styleable { 18 | func setup(with style: Style) { 19 | style.install(on: self) 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/Actor.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Actor.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public struct Actor { 12 | let target: NSObject 13 | let selector: Selector 14 | let event: UIControlEvents 15 | public init(_ target: NSObject, selector: Selector, event: UIControlEvents = .primaryActionTriggered) { 16 | self.target = target 17 | self.selector = selector 18 | self.event = event 19 | } 20 | } 21 | 22 | public extension NSObject { 23 | func target(_ selector: Selector, event: UIControlEvents = .primaryActionTriggered) -> Actor { 24 | return Actor(self, selector: selector, event: event) 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/CornerRounding.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Radius.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public enum CornerRounding { 12 | case height 13 | case halfHeight 14 | case width 15 | case halfWidth 16 | } 17 | 18 | extension CornerRounding { 19 | func apply(to view: UIView) { 20 | view.layer.cornerRadius = cornerRadius(for: view) 21 | } 22 | 23 | func cornerRadius(for view: UIView) -> CGFloat { 24 | let halfHeight: CGFloat = view.bounds.height / 2 25 | let halfWidth: CGFloat = view.bounds.width / 2 26 | switch self { 27 | case .height: 28 | return halfHeight 29 | case .halfHeight: 30 | return halfHeight / 2 31 | case .width: 32 | return halfWidth 33 | case .halfWidth: 34 | return halfWidth / 2 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/FontSizeAdjusting.swift: -------------------------------------------------------------------------------- 1 | // 2 | // FontSizeAdjusting.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-10. 6 | // 7 | // 8 | 9 | import UIKit 10 | 11 | public protocol FontSizeAdjusting: class { 12 | var adjustsFontSizeToFitWidth: Bool { get set } 13 | } 14 | 15 | extension UILabel: FontSizeAdjusting {} 16 | extension UITextField: FontSizeAdjusting {} 17 | 18 | internal extension FontSizeAdjusting { 19 | func apply(_ style: ViewStyle) { 20 | style.attributes.forEach { 21 | switch $0 { 22 | case .adjustsFontSizeToFitWidth(let adjustsFontSizeToFitWidth): 23 | self.adjustsFontSizeToFitWidth = adjustsFontSizeToFitWidth 24 | default: 25 | break 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/LayoutPriority.swift: -------------------------------------------------------------------------------- 1 | // 2 | // LayoutPriority.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public enum LayoutPriority { 12 | case required 13 | case low 14 | case high 15 | case custom(Float) 16 | } 17 | 18 | extension LayoutPriority { 19 | var value: UILayoutPriority { 20 | switch self { 21 | case .required: 22 | return .required 23 | case .low: 24 | return .defaultLow 25 | case .high: 26 | return .defaultHigh 27 | case .custom(let prio): 28 | return UILayoutPriority(rawValue: prio) 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/MergableAttribute.swift: -------------------------------------------------------------------------------- 1 | // 2 | // MergableAttribute.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-08-03. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public protocol MergeableAttribute { 12 | func merge(overwrittenBy other: Self) -> Self 13 | } 14 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/PlaceholderOwner.swift: -------------------------------------------------------------------------------- 1 | // 2 | // PlaceholderOwner.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-01. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public protocol PlaceholderOwner: class { 12 | var placeholder: String? { get set } 13 | } 14 | 15 | internal extension PlaceholderOwner { 16 | func apply(_ style: ViewStyle) { 17 | style.attributes.forEach { 18 | switch $0 { 19 | case .placeholder(let placeholder): 20 | self.placeholder = placeholder 21 | default: 22 | break 23 | } 24 | } 25 | } 26 | } 27 | 28 | extension UITextField: PlaceholderOwner {} 29 | extension UISearchBar: PlaceholderOwner {} 30 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/Segment.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Segment.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public enum Segment { 12 | case title(String) 13 | case image(UIImage) 14 | } 15 | 16 | public extension UISegmentedControl { 17 | 18 | func insertSegment(_ segment: Segment, at index: Int, animated: Bool = false) { 19 | switch segment { 20 | case .title(let title): 21 | insertSegment(withTitle: title, at: index, animated: animated) 22 | case .image(let image): 23 | insertSegment(with: image, at: index, animated: animated) 24 | } 25 | } 26 | } 27 | 28 | extension Array where Element == Segment { 29 | func add(to control: UISegmentedControl, animated: Bool = false) { 30 | for (index, segment) in enumerated() { 31 | control.insertSegment(segment, at: index, animated: animated) 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/Targetable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Targetable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-10. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public protocol Targetable: class { 12 | func addTarget(using actor: Actor) 13 | } 14 | 15 | extension UIControl: Targetable { 16 | public func addTarget(using actor: Actor) { 17 | addTarget(actor.target, action: actor.selector, for: actor.event) 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/ThumbTintColorOwner.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ThumbTintColorOwner.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public protocol ThumbTintColorOwner: class { 12 | var thumbTintColor: UIColor? { get set} 13 | } 14 | 15 | extension UISlider: ThumbTintColorOwner {} 16 | extension UISwitch: ThumbTintColorOwner {} 17 | 18 | internal extension ThumbTintColorOwner { 19 | func apply(_ style: ViewStyle) { 20 | style.attributes.forEach { 21 | switch $0 { 22 | case .thumbTintColor(let color): 23 | self.thumbTintColor = color 24 | default: 25 | break 26 | } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/AttributedValues/WebView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // WebView.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import UIKit 10 | import WebKit 11 | 12 | protocol WebView { 13 | @discardableResult 14 | func load(_ request: URLRequest) -> WKNavigation? 15 | } 16 | 17 | extension WKWebView: WebView {} 18 | extension UIWebView: WebView { 19 | @discardableResult 20 | func load(_ request: URLRequest) -> WKNavigation? { 21 | loadRequest(request) 22 | return nil 23 | } 24 | } 25 | 26 | internal extension WebView { 27 | func apply(_ style: ViewStyle) { 28 | style.attributes.forEach { 29 | switch $0 { 30 | case .webPage(let request): 31 | load(request) 32 | default: 33 | break 34 | } 35 | } 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/ViewAttribute+Mergeable+Array.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewAttribute+Mergeable+Array.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-10. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public extension Array where Element == ViewAttribute { 12 | func merge(master: [ViewAttribute]) -> ViewStyle { 13 | return ViewStyle(self).merge(master: master) 14 | } 15 | 16 | func merge(master: ViewAttribute) -> ViewStyle { 17 | return merge(master: [master]) 18 | } 19 | 20 | func merge(slave: [ViewAttribute]) -> ViewStyle { 21 | return ViewStyle(self).merge(slave: slave) 22 | } 23 | 24 | func merge(slave: ViewAttribute) -> ViewStyle { 25 | return merge(slave: [slave]) 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/ViewAttribute+Mergeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewAttribute+Mergeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-10. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension ViewAttribute { 12 | func merge(master: ViewStyle) -> ViewStyle { 13 | return self <<- master 14 | } 15 | 16 | func merge(master: [ViewAttribute]) -> ViewStyle { 17 | return self <<- master 18 | } 19 | 20 | func merge(master: ViewAttribute) -> ViewStyle { 21 | return self <<- master 22 | } 23 | 24 | func merge(slave: ViewStyle) -> ViewStyle { 25 | return self <- slave 26 | } 27 | 28 | func merge(slave: [ViewAttribute]) -> ViewStyle { 29 | return self <- slave 30 | } 31 | 32 | func merge(slave: ViewAttribute) -> ViewStyle { 33 | return self <- slave 34 | } 35 | } 36 | 37 | -------------------------------------------------------------------------------- /Source/Classes/ViewAttribute/ViewAttribute+Operators.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewAttribute+Operators.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-04. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | //MARK: RHS `[ViewAttribute]` 12 | // RHS MASTER 13 | public func <<- (lhs: [ViewAttribute], rhs: [ViewAttribute]) -> ViewStyle { 14 | return lhs.merge(master: rhs) 15 | } 16 | 17 | // RHS SLAVE 18 | public func <- (lhs: [ViewAttribute], rhs: [ViewAttribute]) -> ViewStyle { 19 | return lhs.merge(slave: rhs) 20 | } 21 | 22 | //MARK: RHS `ViewAttribute` 23 | // RHS MASTER 24 | public func <<- (lhs: [ViewAttribute], rhs: ViewAttribute) -> ViewStyle { 25 | return lhs <<- [rhs] 26 | } 27 | 28 | // RHS SLAVE 29 | public func <- (lhs: [ViewAttribute], rhs: ViewAttribute) -> ViewStyle { 30 | return lhs <- [rhs] 31 | } 32 | 33 | //MARK: RHS `[ViewAttribute]` 34 | // RHS MASTER 35 | public func <<- (lhs: ViewAttribute, rhs: [ViewAttribute]) -> ViewStyle { 36 | return [lhs] <<- rhs 37 | } 38 | 39 | // RHS SLAVE 40 | public func <- (lhs: ViewAttribute, rhs: [ViewAttribute]) -> ViewStyle { 41 | return [lhs] <- rhs 42 | } 43 | 44 | //MARK: RHS `ViewAttribute` 45 | // RHS MASTER 46 | public func <<- (lhs: ViewAttribute, rhs: ViewAttribute) -> ViewStyle { 47 | return [lhs] <<- rhs 48 | } 49 | 50 | // RHS SLAVE 51 | public func <- (lhs: ViewAttribute, rhs: ViewAttribute) -> ViewStyle { 52 | return [lhs] <- rhs 53 | } 54 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UIActivityIndicatorView+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIActivityIndicatorView+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UIActivityIndicatorView { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .spin(let animating): 16 | if animating { 17 | startAnimating() 18 | } else { 19 | stopAnimating() 20 | } 21 | case .hidesWhenStopped(let hides): 22 | hidesWhenStopped = hides 23 | case .spinnerStyle(let style): 24 | activityIndicatorViewStyle = style 25 | case .spinnerScale(let scaleFactor): 26 | scale(factor: scaleFactor) 27 | default: 28 | break 29 | } 30 | } 31 | } 32 | } 33 | 34 | extension UIActivityIndicatorView { 35 | func scale(factor: CGFloat) { 36 | guard factor > 0.0 else { return } 37 | transform = CGAffineTransform(scaleX: factor, y: factor) 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UIButton+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UIButton { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .contentEdgeInsets(let insets): 16 | self.contentEdgeInsets = insets 17 | case .titleEdgeInsets(let insets): 18 | self.titleEdgeInsets = insets 19 | case .reversesTitleShadowWhenHighlighted(let reverses): 20 | self.reversesTitleShadowWhenHighlighted = reverses 21 | case .imageEdgeInsets(let insets): 22 | self.imageEdgeInsets = insets 23 | case .adjustsImageWhenHighlighted(let adjusts): 24 | self.adjustsImageWhenHighlighted = adjusts 25 | case .adjustsImageWhenDisabled(let adjusts): 26 | self.adjustsImageWhenDisabled = adjusts 27 | case .showsTouchWhenHighlighted(let show): 28 | self.showsTouchWhenHighlighted = show 29 | case .states(let states): 30 | setControlStates(states) 31 | default: 32 | break 33 | } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UICollectionView+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UICollectionView+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UICollectionView { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .itemSize(let itemSize): 16 | guard let flowLayout = collectionViewLayout as? UICollectionViewFlowLayout else { break } 17 | flowLayout.itemSize = itemSize 18 | case .collectionViewLayout(let layout): 19 | collectionViewLayout = layout 20 | case .isPrefetchingEnabled(let enabled): 21 | guard #available(iOS 10.0, *) else { return } 22 | isPrefetchingEnabled = enabled 23 | default: 24 | break 25 | } 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UIControl+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIControl+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-22. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UIControl { 12 | func applyToSuperclass(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .contentVerticalAlignment(let alignment): 16 | contentVerticalAlignment = alignment 17 | case .contentHorizontalAlignment(let alignment): 18 | contentHorizontalAlignment = alignment 19 | case .enabled(let enabled): 20 | isEnabled = enabled 21 | case .selected(let selected): 22 | isSelected = selected 23 | case .highlighted(let highlighted): 24 | isHighlighted = highlighted 25 | case .targets(let actors): 26 | actors.forEach { addTarget(using: $0) } 27 | default: 28 | break 29 | } 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UILabel+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UILabel+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UILabel { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .numberOfLines(let numberOfLines): 16 | self.numberOfLines = numberOfLines 17 | case .highlightedTextColor(let highlightedTextColor): 18 | self.highlightedTextColor = highlightedTextColor 19 | case .minimumScaleFactor(let minimumScaleFactor): 20 | self.minimumScaleFactor = minimumScaleFactor 21 | case .baselineAdjustment(let baselineAdjustment): 22 | self.baselineAdjustment = baselineAdjustment 23 | case .shadowColor(let shadowColor): 24 | self.shadowColor = shadowColor 25 | case .shadowOffset(let shadowOffset): 26 | self.shadowOffset = shadowOffset 27 | case .attributedText(let attributedText): 28 | self.attributedText = attributedText 29 | default: 30 | break 31 | } 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UIPageControl+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIPageControl+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UIPageControl { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .currentPage(let page): 16 | currentPage = page 17 | case .numberOfPages(let pageCount): 18 | numberOfPages = pageCount 19 | case .hidesForSinglePage(let hides): 20 | hidesForSinglePage = hides 21 | case .pageIndicatorTintColor(let color): 22 | pageIndicatorTintColor = color 23 | case .currentPageIndicatorTintColor(let color): 24 | currentPageIndicatorTintColor = color 25 | default: 26 | break 27 | } 28 | } 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UIProgressView+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIProgressView+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UIProgressView { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .progressViewStyle(let style): 16 | progressViewStyle = style 17 | case .progress(let progress): 18 | self.progress = progress 19 | case .progressTintColor(let color): 20 | progressTintColor = color 21 | case .progressImage(let image): 22 | progressImage = image 23 | case .trackTintColor(let color): 24 | trackTintColor = color 25 | case .trackImage(let image): 26 | trackImage = image 27 | default: 28 | break 29 | } 30 | } 31 | } 32 | } 33 | 34 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UISearchBar+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISearchBar+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UISearchBar { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .prompt(let prompt): 16 | self.prompt = prompt 17 | case .searchBarStyle(let style): 18 | self.searchBarStyle = style 19 | default: 20 | break 21 | } 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UISegmentedControl+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISegmentedControl+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UISegmentedControl { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .segments(let segments): 16 | segments.add(to: self) 17 | default: 18 | break 19 | } 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UISlider+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISlider+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UISlider { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .sliderValue(let value): 16 | self.value = Float(value) 17 | case .sliderRange(let range): 18 | self.minimumValue = Float(range.lowerBound) 19 | self.maximumValue = Float(range.upperBound) 20 | default: 21 | break 22 | } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UIStackView+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIStackView+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UIStackView { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .alignment(let alignment): 16 | self.alignment = alignment 17 | case .axis(let axis): 18 | self.axis = axis 19 | case .spacing(let spacing): 20 | self.spacing = spacing 21 | case .distribution(let distribution): 22 | self.distribution = distribution 23 | case .baselineRelative(let isBaselineRelativeArrangement): 24 | self.isBaselineRelativeArrangement = isBaselineRelativeArrangement 25 | case .marginsRelative(let isLayoutMarginsRelativeArrangement): 26 | self.isLayoutMarginsRelativeArrangement = isLayoutMarginsRelativeArrangement 27 | case .margin(let marginExpressible): 28 | let margin = marginExpressible.margin 29 | self.layoutMargins = margin.insets 30 | self.isLayoutMarginsRelativeArrangement = margin.isRelative 31 | default: 32 | break 33 | } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UISwitch+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISwitch+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UISwitch { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .on(let isOn): 16 | self.isOn = isOn 17 | case .onTintColor(let color): 18 | self.onTintColor = color 19 | case .onImage(let image): 20 | self.onImage = image 21 | case .offImge(let image): 22 | self.offImage = image 23 | default: 24 | break 25 | } 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UITextField+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UITextField+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UITextField { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .borderStyle(let style): 16 | borderStyle = style 17 | case .background(let image): 18 | background = image 19 | case .disabledBackground(let image): 20 | disabledBackground = image 21 | case .clearButtonMode(let mode): 22 | clearButtonMode = mode 23 | case .leftView(let view): 24 | leftView = view 25 | case .leftViewMode(let mode): 26 | leftViewMode = mode 27 | case .rightView(let view): 28 | rightView = view 29 | case .rightViewMode(let mode): 30 | rightViewMode = mode 31 | default: 32 | break 33 | } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/UIView+ViewStyle/UITextView+ViewStyle.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UITextView+ViewStyle.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-15. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | internal extension UITextView { 12 | func apply(_ style: ViewStyle) { 13 | style.attributes.forEach { 14 | switch $0 { 15 | case .selectedRange(let range): 16 | selectedRange = range 17 | case .linkTextAttributes(let attributes): 18 | linkTextAttributes = attributes 19 | case .textContainerInset(let inset): 20 | textContainerInset = inset 21 | case .dataDetectorTypes(let types): 22 | self.dataDetectorTypes = types 23 | default: 24 | break 25 | } 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /Source/Classes/ViewStyle/ViewStyle+Optional+Operators.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ViewStyle+Optional+Operators.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-08. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | public func <<- (lhs: ViewStyle?, rhs: ViewAttribute) -> ViewStyle { 12 | return lhs.merge(master: ViewStyle([rhs])) 13 | } 14 | 15 | public func <<- (lhs: ViewAttribute, rhs: ViewStyle?) -> ViewStyle { 16 | return rhs <- lhs 17 | } 18 | 19 | public func <- (lhs: ViewStyle?, rhs: ViewAttribute) -> ViewStyle { 20 | return lhs.merge(slave: ViewStyle([rhs])) 21 | } 22 | 23 | public func <- (lhs: ViewAttribute, rhs: ViewStyle?) -> ViewStyle { 24 | return rhs <<- lhs 25 | } 26 | 27 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIActivityIndicatorView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIActivityIndicatorView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIActivityIndicatorView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIActivityIndicatorView { 14 | let activityIndicator = UIActivityIndicatorView(activityIndicatorStyle: .gray) 15 | activityIndicator.startAnimating() 16 | return activityIndicator 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIButton+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIButton: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIButton { 14 | return UIButton(type: .custom) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UICollectionView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UICollectionView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UICollectionView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UICollectionView { 14 | return UICollectionView(frame: .zero, collectionViewLayout: UICollectionViewFlowLayout()) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIImageView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIImageView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIImageView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIImageView { 14 | return UIImageView(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UILabel+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UILabel+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UILabel: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UILabel { 14 | return UILabel(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIPageControl+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIPageControl+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIPageControl: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIPageControl { 14 | return UIPageControl(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIPickerView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIPickerView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIPickerView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIPickerView { 14 | return UIPickerView(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIProgressView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIProgressView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIProgressView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIProgressView { 14 | return UIProgressView(progressViewStyle: .default) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UISearchBar+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISearchBar+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UISearchBar: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UISearchBar { 14 | return UISearchBar(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UISegmentedControl+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISegmentedControl+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UISegmentedControl: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UISegmentedControl { 14 | return UISegmentedControl(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UISlider+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISlider+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UISlider: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UISlider { 14 | return UISlider(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIStackView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIStackView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIStackView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIStackView { 14 | return UIStackView(frame: .zero) 15 | } 16 | 17 | public func postMake(_ style: Style) { 18 | setupArrangedSubviews(with: style) 19 | } 20 | } 21 | 22 | extension UIStackView { 23 | public func setupArrangedSubviews(with style: ViewStyle) { 24 | guard let optionalViews: [UIView?] = style.value(.views) else { return } 25 | let views: [UIView] = optionalViews.removeNils() 26 | views.forEach { addArrangedSubview($0) } 27 | } 28 | } 29 | 30 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UISwitch+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UISwitch+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UISwitch: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UISwitch { 14 | return UISwitch(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UITableView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UITableView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-11. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UITableView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UITableView { 14 | return UITableView(frame: .zero, style: .plain) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UITextField+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UITextField+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UITextField: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UITextField { 14 | return UITextField(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UITextView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UITextView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UITextView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UITextView { 14 | return UITextView(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/UIWebView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UIWebView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | extension UIWebView: Makeable { 12 | public typealias Style = ViewStyle 13 | public static func createEmpty() -> UIWebView { 14 | return UIWebView(frame: .zero) 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /Source/Classes/Views/Makeable/WKWebView+Makeable.swift: -------------------------------------------------------------------------------- 1 | // 2 | // WKWebView+Makeable.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-06-13. 6 | // 7 | // 8 | 9 | import UIKit 10 | import WebKit 11 | 12 | extension WKWebView: Makeable { 13 | public typealias Style = ViewStyle 14 | public static func createEmpty() -> WKWebView { 15 | return WKWebView(frame: .zero) 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Source/Composables/ImageView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ImageView.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | open class ImageView: UIImageView, Composable { 12 | 13 | open let style: ViewStyle 14 | 15 | required public init(_ style: ViewStyle? = nil) { 16 | let style = style.merge(slave: .default) 17 | self.style = style 18 | super.init(frame: .zero) 19 | compose(with: style) 20 | } 21 | 22 | required public init?(coder: NSCoder) { requiredInit() } 23 | } 24 | 25 | private extension ViewStyle { 26 | @nonobjc static let `default`: ViewStyle = [] 27 | } 28 | -------------------------------------------------------------------------------- /Source/Composables/Label.swift: -------------------------------------------------------------------------------- 1 | // 2 | // Label.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | open class Label: UILabel, Composable { 12 | 13 | open let style: ViewStyle 14 | 15 | required public init(_ style: ViewStyle? = nil) { 16 | let style = style.merge(slave: .default) 17 | self.style = style 18 | super.init(frame: .zero) 19 | compose(with: style) 20 | } 21 | 22 | required public init?(coder: NSCoder) { requiredInit() } 23 | } 24 | 25 | private extension ViewStyle { 26 | @nonobjc static let `default`: ViewStyle = [] 27 | } 28 | -------------------------------------------------------------------------------- /Source/Composables/TextField.swift: -------------------------------------------------------------------------------- 1 | // 2 | // TextField.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | open class TextField: UITextView, Composable { 12 | 13 | open let style: ViewStyle 14 | 15 | required public init(_ style: ViewStyle? = nil) { 16 | let style = style.merge(slave: .default) 17 | self.style = style 18 | super.init(frame: .zero, textContainer: nil) 19 | compose(with: style) 20 | } 21 | 22 | required public init?(coder: NSCoder) { requiredInit() } 23 | } 24 | 25 | private extension ViewStyle { 26 | @nonobjc static let `default`: ViewStyle = [] 27 | } 28 | -------------------------------------------------------------------------------- /Source/Composables/TextView.swift: -------------------------------------------------------------------------------- 1 | // 2 | // TextView.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import UIKit 10 | 11 | open class TextView: UITextView, Composable { 12 | 13 | open let style: ViewStyle 14 | 15 | required public init(_ style: ViewStyle? = nil) { 16 | let style = style.merge(slave: .default) 17 | self.style = style 18 | super.init(frame: .zero, textContainer: nil) 19 | compose(with: style) 20 | } 21 | 22 | required public init?(coder: NSCoder) { requiredInit() } 23 | } 24 | 25 | private extension ViewStyle { 26 | @nonobjc static let `default`: ViewStyle = [] 27 | } 28 | 29 | -------------------------------------------------------------------------------- /Source/Configuration/Config.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // Config.xcconfig 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | // CUSTOM VARIABLES 10 | _DEBUG = DEBUG 11 | 12 | // SETTINGS 13 | SWIFT_VERSION = 3.1 14 | IPHONEOS_DEPLOYMENT_TARGET = 9.0 15 | CLANG_MODULES_AUTOLINK = YES 16 | GCC_OPTIMIZATION_LEVEL = s 17 | SWIFT_OPTIMIZATION_LEVEL = -Owholemodule 18 | 19 | SWIFT_ACTIVE_COMPILATION_CONDITIONS[config=Debug][sdk=iphoneos*] = $(_DEBUG) 20 | GCC_PREPROCESSOR_DEFINITIONS[config=Debug] = $(_DEBUG) 21 | GCC_OPTIMIZATION_LEVEL[config=Debug] = 0 22 | SWIFT_OPTIMIZATION_LEVEL[config=Debug] = -Onone 23 | -------------------------------------------------------------------------------- /Source/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | $(CURRENT_PROJECT_VERSION) 21 | NSPrincipalClass 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Source/Sourcery/Rules/SourceryRules.swift: -------------------------------------------------------------------------------- 1 | // 2 | // SourceryRules.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | 11 | protocol AutoAssociatedValueEnum {} 12 | 13 | extension ViewAttribute: AutoAssociatedValueEnum {} 14 | 15 | -------------------------------------------------------------------------------- /Source/ViewComposer.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewComposer.h 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-30. 6 | // 7 | // 8 | 9 | #import 10 | 11 | //! Project version number for ViewComposer. 12 | FOUNDATION_EXPORT double ViewComposerVersionNumber; 13 | 14 | //! Project version string for ViewComposer. 15 | FOUNDATION_EXPORT const unsigned char ViewComposerVersionString[]; 16 | 17 | // In this header, you should import all the public headers of your framework using statements like #import 18 | 19 | 20 | -------------------------------------------------------------------------------- /Tests/BaseXCTest.swift: -------------------------------------------------------------------------------- 1 | // 2 | // BaseXCTest.swift 3 | // ViewComposer 4 | // 5 | // Created by Alexander Cyon on 2017-05-31. 6 | // 7 | // 8 | 9 | import Foundation 10 | import XCTest 11 | @testable import ViewComposer 12 | 13 | let text: String = "foobar" 14 | let fooText: String = "foo" 15 | let barText: String = "bar" 16 | let bazText: String = "baz" 17 | let isHidden = true 18 | let color: UIColor = .red 19 | let cornerRadius: CGFloat = 3.1415 20 | let fooRadius: CGFloat = 42 21 | let barRadius: CGFloat = 237 22 | let spacing: CGFloat = 42 23 | var image: UIImage { return UIImage() } 24 | var arrangedSubviews: [UIView] { return [UILabel(), UIView(), UIButton()] } 25 | 26 | func assertIs(_ optional: Value?, `is` expected: Value) { 27 | guard let actual = optional else { 28 | XCTFail("Value should not be nil") 29 | return 30 | } 31 | XCTAssert(actual == expected, "Expected '\(expected)', was: '\(actual)'") 32 | } 33 | 34 | 35 | class BaseXCTest: XCTestCase { 36 | 37 | override func setUp() { 38 | ViewStyle.mergeInterceptors = [] 39 | ViewStyle.duplicatesHandler = nil 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Tests/UtilitiesTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // UtilitiesTests.swift 3 | // ViewComposerTests 4 | // 5 | // Created by Alexander Cyon on 2017-06-18. 6 | // 7 | 8 | import XCTest 9 | @testable import ViewComposer 10 | 11 | class UtilitiesTests: XCTestCase { 12 | 13 | func testRemoveNils() { 14 | let optionalString: String? = nil 15 | let strings: [String?] = ["Foo", optionalString, "Bar", optionalString, "Baz"] 16 | XCTAssert(strings.count == 5) 17 | XCTAssert(strings.removeNils().count == 3) 18 | let integers: [Int?] = [2, nil, 4, nil, nil, 5] 19 | XCTAssert(integers.count == 6) 20 | XCTAssert(integers.removeNils().count == 3) 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ViewComposer.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | 3 | s.name = "ViewComposer" 4 | s.version = "0.2.32" 5 | s.summary = "Compose views using enums swiftly" 6 | 7 | s.description = <<-DESC 8 | Declare Buttons, Labels, StackViews etc as a list of enums. 9 | DESC 10 | 11 | s.homepage = "https://github.com/sajjon/ViewComposer" 12 | s.license = 'MIT' 13 | s.author = { "Alexander Cyon" => "alex.cyon@gmail.com" } 14 | s.social_media_url = "https://twitter.com/Redrum_237" 15 | s.source = { :git => 'https://github.com/Sajjon/ViewComposer.git', :tag => s.version } 16 | s.source_files = 'Source/Classes/**/*.swift', 'Source/Sourcery/Generated/*.swift' 17 | s.dependency 'Sourcery', '>= 0.12' 18 | s.ios.resources = 'Source/Sourcery/Templates/*.swifttemplate' 19 | s.ios.deployment_target = '9.0' 20 | end 21 | -------------------------------------------------------------------------------- /ViewComposer.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ViewComposer.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ViewComposer.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | --------------------------------------------------------------------------------