diff --git a/.gitignore b/.gitignore index 75a3954..f7e314e 100644 --- a/.gitignore +++ b/.gitignore @@ -31,4 +31,5 @@ # Credentials fastlane-service-account.json firebase-service-account.json -google-services.json \ No newline at end of file +google-services.json +GoogleService-Info.plist diff --git a/ios/.gitignore b/ios/.gitignore index d386c40..53b31b4 100644 --- a/ios/.gitignore +++ b/ios/.gitignore @@ -56,7 +56,7 @@ playground.xcworkspace # you should judge for yourself, the pros and cons are mentioned at: # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control # -# Pods/ +Pods/ # # Add this line if you want to avoid checking in source code from the Xcode workspace # *.xcworkspace diff --git a/ios/circolapp/Podfile b/ios/circolapp/Podfile index ab2b1c5..9aaf8e5 100644 --- a/ios/circolapp/Podfile +++ b/ios/circolapp/Podfile @@ -4,4 +4,6 @@ target 'circolapp' do platform :ios, '14.2' # Pods for iosApp pod 'shared', :path => '../../shared' -end \ No newline at end of file + pod 'Firebase/Messaging' + pod 'Firebase/AppDistribution' +end diff --git a/ios/circolapp/Podfile.lock b/ios/circolapp/Podfile.lock index ec5b81a..bf1849f 100644 --- a/ios/circolapp/Podfile.lock +++ b/ios/circolapp/Podfile.lock @@ -1,23 +1,112 @@ PODS: + - Firebase/AppDistribution (7.1.0): + - Firebase/CoreOnly + - FirebaseAppDistribution (~> 7.1.0-beta) + - Firebase/CoreOnly (7.1.0): + - FirebaseCore (= 7.1.0) + - Firebase/Messaging (7.1.0): + - Firebase/CoreOnly + - FirebaseMessaging (~> 7.1.0) + - FirebaseAppDistribution (7.1.0-beta): + - FirebaseCore (~> 7.0) + - FirebaseInstallations (~> 7.0) + - GoogleDataTransport (~> 8.0) + - GoogleUtilities/AppDelegateSwizzler (~> 7.0) + - GoogleUtilities/UserDefaults (~> 7.0) + - FirebaseCore (7.1.0): + - FirebaseCoreDiagnostics (~> 7.0) + - GoogleUtilities/Environment (~> 7.0) + - GoogleUtilities/Logger (~> 7.0) + - FirebaseCoreDiagnostics (7.1.0): + - GoogleDataTransport (~> 8.0) + - GoogleUtilities/Environment (~> 7.0) + - GoogleUtilities/Logger (~> 7.0) + - nanopb (~> 2.30906.0) + - FirebaseInstallations (7.1.0): + - FirebaseCore (~> 7.0) + - GoogleUtilities/Environment (~> 7.0) + - GoogleUtilities/UserDefaults (~> 7.0) + - PromisesObjC (~> 1.2) + - FirebaseInstanceID (7.1.0): + - FirebaseCore (~> 7.0) + - FirebaseInstallations (~> 7.0) + - GoogleUtilities/Environment (~> 7.0) + - GoogleUtilities/UserDefaults (~> 7.0) + - FirebaseMessaging (7.1.0): + - FirebaseCore (~> 7.0) + - FirebaseInstanceID (~> 7.0) + - GoogleUtilities/AppDelegateSwizzler (~> 7.0) + - GoogleUtilities/Environment (~> 7.0) + - GoogleUtilities/Reachability (~> 7.0) + - GoogleUtilities/UserDefaults (~> 7.0) + - GoogleDataTransport (8.0.1): + - nanopb (~> 2.30906.0) + - GoogleUtilities/AppDelegateSwizzler (7.1.1): + - GoogleUtilities/Environment + - GoogleUtilities/Logger + - GoogleUtilities/Network + - GoogleUtilities/Environment (7.1.1): + - PromisesObjC (~> 1.2) + - GoogleUtilities/Logger (7.1.1): + - GoogleUtilities/Environment + - GoogleUtilities/Network (7.1.1): + - GoogleUtilities/Logger + - "GoogleUtilities/NSData+zlib" + - GoogleUtilities/Reachability + - "GoogleUtilities/NSData+zlib (7.1.1)" + - GoogleUtilities/Reachability (7.1.1): + - GoogleUtilities/Logger + - GoogleUtilities/UserDefaults (7.1.1): + - GoogleUtilities/Logger - HTMLKit (3.1.0) + - nanopb (2.30906.0): + - nanopb/decode (= 2.30906.0) + - nanopb/encode (= 2.30906.0) + - nanopb/decode (2.30906.0) + - nanopb/encode (2.30906.0) + - PromisesObjC (1.2.11) - shared (1.0): - HTMLKit (~> 3.1.0) DEPENDENCIES: + - Firebase/AppDistribution + - Firebase/Messaging - shared (from `../../shared`) SPEC REPOS: trunk: + - Firebase + - FirebaseAppDistribution + - FirebaseCore + - FirebaseCoreDiagnostics + - FirebaseInstallations + - FirebaseInstanceID + - FirebaseMessaging + - GoogleDataTransport + - GoogleUtilities - HTMLKit + - nanopb + - PromisesObjC EXTERNAL SOURCES: shared: :path: "../../shared" SPEC CHECKSUMS: + Firebase: 78e8dd2e39d653de6270432ad84fe8b59f7bf4e8 + FirebaseAppDistribution: 055561ff2d0682e92492c00f4bd2acf562f9eb6f + FirebaseCore: 20046127eef0fcb8fa25df7fc12f7b97d4e48611 + FirebaseCoreDiagnostics: 872cdb9b749b23346dddd5c1014d1babd2257de3 + FirebaseInstallations: 3de38553e86171b5f81d83cdeef63473d37bfdb0 + FirebaseInstanceID: 61e8d10a4192a582c6239378169d10e504ca8d91 + FirebaseMessaging: 076054895c9260f82c7304cc7709dbf19b8f3e4a + GoogleDataTransport: e4085e6762f36a6141738f46b0153473ce57fb18 + GoogleUtilities: 3dc4ff0d5e4840e2fa8eef0889620e8c33d4218c HTMLKit: 4ed10a911462cbf972329ec6aaaa827208dfd70c + nanopb: 1bf24dd71191072e120b83dd02d08f3da0d65e53 + PromisesObjC: 8c196f5a328c2cba3e74624585467a557dcb482f shared: fb3154b4def038b2b13aa88e01dd9f91bb2de9b5 -PODFILE CHECKSUM: 90ac34abdd7012dde25705873407c94d0f26fa6b +PODFILE CHECKSUM: 1abad2a06d57697aaa30bdc69168ab8d888a7fe2 COCOAPODS: 1.10.0 diff --git a/ios/circolapp/Pods/HTMLKit/LICENSE b/ios/circolapp/Pods/HTMLKit/LICENSE deleted file mode 100644 index f6d94e3..0000000 --- a/ios/circolapp/Pods/HTMLKit/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Iskandar Abudiab - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/ios/circolapp/Pods/HTMLKit/README.md b/ios/circolapp/Pods/HTMLKit/README.md deleted file mode 100644 index bb2a1f7..0000000 --- a/ios/circolapp/Pods/HTMLKit/README.md +++ /dev/null @@ -1,325 +0,0 @@ -# HTMLKit - -![HTMLKit Logo](https://raw.githubusercontent.com/iabudiab/HTMLKit/master/HTMLKit.png) - -An Objective-C framework for your everyday HTML needs. - -[![Build Status](https://img.shields.io/travis/iabudiab/HTMLKit/develop.svg?style=flat)](https://travis-ci.org/iabudiab/HTMLKit) -[![codecov](https://codecov.io/gh/iabudiab/HTMLKit/branch/develop/graph/badge.svg)](https://codecov.io/gh/iabudiab/HTMLKit) -[![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) -[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/HTMLKit.svg?style=flat)](https://cocoapods.org/pods/HTMLKit) -[![CocoaDocs](https://img.shields.io/cocoapods/metrics/doc-percent/HTMLKit.svg?style=flat)](http://cocoadocs.org/docsets/HTMLKit) -[![Platform](https://img.shields.io/cocoapods/p/HTMLKit.svg?style=flat)](http://cocoadocs.org/docsets/HTMLKit) -[![License MIT](https://img.shields.io/badge/license-MIT-4481C7.svg?style=flat)](https://opensource.org/licenses/MIT) - -- [Quick Overview](#overview) -- [Installation](#installation) -- [Parsing](#parsing) -- [The DOM](#the-dom) -- [CSS3 Selectors](#css3-selectors) - -# Quick Overview - -HTMLKit is a [WHATWG specification](https://html.spec.whatwg.org/multipage/)-compliant framework for parsing and serializing HTML documents and document fragments for iOS and OSX. HTMLKit parses real-world HTML the same way modern web browsers would. - -HTMLKit provides a rich DOM implementation for manipulating and navigating the document tree. It also understands [CSS3 selectors](http://www.w3.org/TR/css3-selectors/) making node-selection and querying the DOM a piece of cake. - -## DOM Validation - -DOM mutations are validated as described in the [WHATWG DOM Standard](https://dom.spec.whatwg.org). Invalid DOM manipulations throw hierarchy-related exceptions. You can disable these validations, which will also increase the performance by about 20-30%, by defining the `HTMLKIT_NO_DOM_CHECKS` compiler constant. - -## Tests - -HTMLKit passes all of the [HTML5Lib](https://github.com/html5lib/html5lib-tests) Tokenizer and Tree Construction tests. The `html5lib-tests` is configured as a git-submodule. If you plan to run the tests, do not forget to pull it too. - -The CSS3 Selector implementation is tested with an adapted version of the [CSS3 Selectors Test Suite](http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/full/flat/index.html), ignoring the tests that require user interaction, session history, and scripting. - -## Does it Swift? - -Check out the playground! - -# Installation - -## Carthage - -[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. - -If you don't have Carthage yet, you can install it with Homebrew using the following command: - -```bash -$ brew update -$ brew install carthage -``` - -To add `HTMLKit` as a dependency into your project using Carthage just add the following line in your `Cartfile`: - -``` -github "iabudiab/HTMLKit" -``` - -Then run the following command to build the framework and drag the built `HTMLKit.framework` into your Xcode project. - -```bash -$ carthage update -``` - -## CocoaPods - -[CocoaPods](http://cocoapods.org) is a dependency manager for Cocoa projects. - -If you don't have CocoaPods yet, you can install it with the following command: - -```bash -$ gem install cocoapods -``` - -To add `HTMLKit` as a dependency into your project using CocoaPods just add the following in your `Podfile`: - -```ruby -target 'MyTarget' do - pod 'HTMLKit', '~> 3.1' -end -``` - -Then, run the following command: - -```bash -$ pod install -``` - -## Swift Package Manager - -[Swift Package Manager](https://github.com/apple/swift-package-manager) is the package manager for the Swift programming language. - -Add `HTMLKit` to your `Package.swift` dependecies: - -```swift -.Package(url: "https://github.com/iabudiab/HTMLKit", majorVersion: 3) -``` - -Then run: - -```bash -$ swift build -``` - -## Manually - -1- Add `HTMLKit` as git submodule - -```bash -$ git submodule add https://github.com/iabudiab/HTMLKit.git -``` - -2- Open the `HTMLKit` folder and drag'n'drop the `HTMLKit.xcodeproj` into the Project Navigator in Xcode to add it as a sub-project. - -3- In the General panel of your target add `HTMLKit.framework` under the `Embedded Binaries` - -# Parsing - -## Parsing Documents - -Given some HTML content, you can parse it either via the `HTMLParser` or instatiate a `HTMLDocument` directly: - -```objective-c -NSString *htmlString = @"

HTMLKit

Hello there!

"; - -// Via parser -HTMLParser *parser = [[HTMLParser alloc] initWithString:htmlString]; -HTMLDocument *document = [parser parseDocument]; - -// Via static initializer -HTMLDocument *document = [HTMLDocument documentWithString:htmlString]; -``` - -## Parsing Fragments - -You can also prase HTML content as a document fragment with a specified context element: - -```objective-c -NSString *htmlString = @"

HTMLKit

Hello there!

"; - -HTMLParser *parser = [[HTMLParser alloc] initWithString: htmlString]; - -HTMLElement *tableContext = [[HTMLElement alloc] initWithTagName:@"table"]; -NSArray *nodes = [parser parseFragmentWithContextElement:tableContext]; - -for (HTMLNode *node in nodes) { - NSLog(@"%@", node.outerHTML); -} - -// The same parser instance can be reusued: -HTMLElement *bodyContext = [[HTMLElement alloc] initWithTagName:@"body"]; -nodes = [parser parseFragmentWithContextElement:bodyContext]; -``` - -# The DOM - -The DOM tree can be manipulated in several ways, here are just a few: - -* Create new elements and assign attributes - -```objective-c -HTMLElement *description = [[HTMLElement alloc] initWithTagName:@"meta" attributes: @{@"name": @"description"}]; -description[@"content"] = @"HTMLKit for iOS & OSX"; -``` - -* Append nodes to the document - -```objective-c -HTMLElement *head = document.head; -[head appendNode:description]; - -HTMLElement *body = document.body; -NSArray *nodes = @[ - [[HTMLElement alloc] initWithTagName:@"div" attributes: @{@"class": @"red"}], - [[HTMLElement alloc] initWithTagName:@"div" attributes: @{@"class": @"green"}], - [[HTMLElement alloc] initWithTagName:@"div" attributes: @{@"class": @"blue"}] -]; -[body appendNodes:nodes]; -``` - -* Enumerate child elements and perform DOM editing - -```objective-c -[body enumerateChildElementsUsingBlock:^(HTMLElement *element, NSUInteger idx, BOOL *stop) { - if ([element.tagName isEqualToString:@"div"]) { - HTMLElement *lorem = [[HTMLElement alloc] initWithTagName:@"p"]; - lorem.textContent = [NSString stringWithFormat:@"Lorem ipsum: %lu", (unsigned long)idx]; - [element appendNode:lorem]; - } -}]; -``` - -* Remove nodes from the document - -```objective-c -[body removeChildNodeAtIndex:1]; -[head removeAllChildNodes]; -[body.lastChild removeFromParentNode]; -``` - -* Manipulate the HTML directly - -```objective-c -greenDiv.innerHTML = @"