[Add] RapidKitFoundation_MacOS 2024.1230.1857.641
[CocoaPods.git] / Specs / 6 / c / 0 / YatLib / 0.1.4 / YatLib.podspec.json
blob04fb9a4d6da407abf39b34a6a73d2592485d88c8
2   "name": "YatLib",
3   "version": "0.1.4",
4   "summary": "y.at partner integration library for iOS.",
5   "description": "# Yat Partner Integration iOS Framework\n\nThis framework is designed to make it easy for Yat partners to integrate the Yat purchase or connect flows into their apps.\n\n## Requirements\n\n- iOS 13.0+\n- Swift 5\n\n## Installation\n\n### Using Cocoapods\n\nYou can use [CocoaPods](http://cocoapods.org/) to install `YatLib` by adding it to your `Podfile`:\n\n```ruby\nuse_frameworks!\n\ntarget 'MyApp' do\n    pod 'YatLib', '0.1.4'\nend\n```\n\n## Usage\n\n1. Create your app, add `YatLib` as a pod dependency as described above, and do a `pod install`.\n\n2. `YatLib` uses deep links to return from the Yat web application back to the application. URL scheme of the deep link is agreed upon in between the Yat development team and the integration partner. Currently used scheme is `{partner_key}://y.at?{query_params}`. Setup your deep links in your project accordingly.\n\n    1. Select your project in the project browser.\n    2. Select your app target under `Targets`.\n    3. Select the `Info` tab and expand the `URL types` section.\n    4. Click the `+` button, and enter the app's URL scheme into the `URL Schemes` text box.\n\n3. Open `SceneDelegate.swift` file, and update and add the below functions:\n\n    ```swift\n    import UIKit\n    import YatLib\n\n    class SceneDelegate: UIResponder, UIWindowSceneDelegate {\n\n        func scene(_ scene: UIScene,\n                   willConnectTo session: UISceneSession,\n                   options connectionOptions: UIScene.ConnectionOptions\n        ) {\n            guard let _ = (scene as? UIWindowScene) else { return }\n\t        self.scene(scene, openURLContexts: connectionOptions.urlContexts)\n\t    }\n\n        internal func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {\n            if let url = URLContexts.first?.url {\n                YatLib.processDeepLink(url)\n            }\n        }\n\n        // ... rest of the implementation ...\n\n    }\n\t```\n\n4. Define and set the app-specific constants, which will be delivered to you by the Yat development team, and define the crypto records to be linked to the Yat.\n\n    ```swift\n    import YatLib\n\n    class MyViewController: UIViewController {\n        /**\n        * These values are provided to the app developer by the Yat development team.\n        */\n        private let yatAppConfig = YatAppConfig(\n            name: \"Super Cool Wallet\",\n            sourceName: \"SCW\",\n            pathKey: \"scw\",\n            pubKey: \"{64 character hex public key}\",\n            code: \"66b6a5aa-11b4-12a9-1c1e-84765ef174ab\",\n            authToken: \"AppToken84765783\"\n        )\n        /**\n        * Sample data that will be attached to the Yat.\n        */\n        private let yatRecords = [\n            YatRecord(\n                type: .BTCAddress,\n                value: \"1NDyJtNTjmwk5xPNhjgAMu4HDHigtobu1s\"\n            ),\n            YatRecord(\n                type: .ETHAddress,\n                value: \"108dEFa0272dC118EF03a7993e4fC7A8AcF3a3d1\"\n            ),\n            YatRecord(\n                type: .XTRAddress,\n                value: \"d2e4db6dac593a9af36987a35676838ede4f69684ba433baeed68bce048e111b\".uppercased()\n            ),\n            YatRecord(\n                type: .XMRStandardAddress,\n                value: \"4AdUndXHHZ6cfufTMvppY6JwXNouMBzSkbLYfpAV5Usx3skxNgYeYTRj5UzqtReoS44qo9mtmXCqY45DJ852K5Jv2684Rge\"\n            )\n        ]\n    }\n    ```\n\n6. Implement a delegate for the library:\n\n    ```swift\n    extension ViewController: YatLibDelegate {\n    \n        func onYatIntegrationComplete(yat: String) {\n            // ... your code ...\n        }\n        \n    }\n    ```\n\n5. Initialize the library using the values defined in the previous steps:\n\n    ```swift\n    YatLib.initialize(\n        appConfig: yatAppConfig,\n        /* random user id */\n        userId: UUID().uuidString,\n        /* random password */\n        userPassword: UUID().uuidString,\n        colorMode: .dark,\n        delegate: self,\n        records: yatRecords\n    )\n    ```\n\n6. Launch the library with a host view controller that will present the root view controller of the library:\n\n    ```swift\n    YatLib.start(hostViewController: self)\n    ```\n\n7. Library will call its delegate's `onYatIntegrationComplete(yat: String)` function on successful completion, and will exit silently if the user cancels the flow.",
6   "homepage": "https://github.com/yat-labs/yat-lib-ios",
7   "license": "3-Clause BSD License",
8   "authors": {
9     "The Tari Development Team": "info@tari.com"
10   },
11   "platforms": {
12     "ios": "13.0"
13   },
14   "swift_versions": "5",
15   "source": {
16     "git": "https://github.com/yat-labs/yat-lib-ios.git",
17     "tag": "0.1.4"
18   },
19   "source_files": "YatLib/**/*.{h,swift}",
20   "resources": "YatLib/**/*.{lproj,xcassets,otf}",
21   "swift_version": "5"