diff --git a/KakaoLoginExample/.babelrc b/KakaoLoginExample/.babelrc deleted file mode 100644 index d4b74b5..0000000 --- a/KakaoLoginExample/.babelrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "presets": ["module:metro-react-native-babel-preset"] -} diff --git a/KakaoLoginExample/.eslintrc.js b/KakaoLoginExample/.eslintrc.js index 5abadc5..40c6dcd 100644 --- a/KakaoLoginExample/.eslintrc.js +++ b/KakaoLoginExample/.eslintrc.js @@ -1,30 +1,4 @@ module.exports = { - "extends": "standard", - "env": { - "browser": true - }, - "rules": { - "no-unused-expressions": 0, - "no-unused-vars": 0, - "no-return-assign": 0, - "comma-dangle": ["error", { - "arrays": "only-multiline", - "objects": "only-multiline", - "imports": "only-multiline", - "exports": "only-multiline", - "functions": "only-multiline", - }], - "semi": [2, "always"], - "arrow-parens": ["error", "always"], - "space-before-function-paren": ["error", "never"], - "standard/object-curly-even-spacing": 0, - "no-new-object": "error", - "no-array-constructor": "error", - "no-cond-assign": 0, - }, - "plugins": [ - "standard", - "promise", - ], - "parser": "babel-eslint" -}; \ No newline at end of file + root: true, + extends: '@react-native-community', +}; diff --git a/KakaoLoginExample/.flowconfig b/KakaoLoginExample/.flowconfig index 2f13324..1319ea1 100644 --- a/KakaoLoginExample/.flowconfig +++ b/KakaoLoginExample/.flowconfig @@ -11,10 +11,20 @@ ; Ignore duplicate module providers ; For RN Apps installed via npm, "Libraries" folder is inside ; "node_modules/react-native" but in the source repo it is in the root -.*/Libraries/react-native/React.js +node_modules/react-native/Libraries/react-native/React.js ; Ignore polyfills -.*/Libraries/polyfills/.* +node_modules/react-native/Libraries/polyfills/.* + +; These should not be required directly +; require from fbjs/lib instead: require('fbjs/lib/warning') +node_modules/warning/.* + +; Flow doesn't support platforms +.*/Libraries/Utilities/HMRLoadingView.js + +[untyped] +.*/node_modules/@react-native-community/cli/.*/.* [include] @@ -25,7 +35,30 @@ node_modules/react-native/flow/ [options] emoji=true +esproposal.optional_chaining=enable +esproposal.nullish_coalescing=enable + +module.file_ext=.js +module.file_ext=.json +module.file_ext=.ios.js + module.system=haste +module.system.haste.use_name_reducers=true +# get basename +module.system.haste.name_reducers='^.*/\([a-zA-Z0-9$_.-]+\.js\(\.flow\)?\)$' -> '\1' +# strip .js or .js.flow suffix +module.system.haste.name_reducers='^\(.*\)\.js\(\.flow\)?$' -> '\1' +# strip .ios suffix +module.system.haste.name_reducers='^\(.*\)\.ios$' -> '\1' +module.system.haste.name_reducers='^\(.*\)\.android$' -> '\1' +module.system.haste.name_reducers='^\(.*\)\.native$' -> '\1' +module.system.haste.paths.blacklist=.*/__tests__/.* +module.system.haste.paths.blacklist=.*/__mocks__/.* +module.system.haste.paths.whitelist=/node_modules/react-native/Libraries/.* +module.system.haste.paths.whitelist=/node_modules/react-native/RNTester/.* +module.system.haste.paths.whitelist=/node_modules/react-native/IntegrationTests/.* +module.system.haste.paths.blacklist=/node_modules/react-native/Libraries/react-native/react-native-implementation.js +module.system.haste.paths.blacklist=/node_modules/react-native/Libraries/Animated/src/polyfills/.* munge_underscores=true @@ -35,14 +68,32 @@ suppress_type=$FlowIssue suppress_type=$FlowFixMe suppress_type=$FlowFixMeProps suppress_type=$FlowFixMeState -suppress_type=$FixMe -suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(5[0-7]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) -suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(5[0-7]\\|[1-4][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+ -suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy +suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(\\)? *\\(site=[a-z,_]*react_native\\(_ios\\)?_\\(oss\\|fb\\)[a-z,_]*\\)?)\\) +suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(\\)? *\\(site=[a-z,_]*react_native\\(_ios\\)?_\\(oss\\|fb\\)[a-z,_]*\\)?)\\)?:? #[0-9]+ suppress_comment=\\(.\\|\n\\)*\\$FlowExpectedError -unsafe.enable_getters_and_setters=true +[lints] +sketchy-null-number=warn +sketchy-null-mixed=warn +sketchy-number=warn +untyped-type-import=warn +nonstrict-import=warn +deprecated-type=warn +unsafe-getters-setters=warn +inexact-spread=warn +unnecessary-invariant=warn +signature-verification-failure=warn +deprecated-utility=error + +[strict] +deprecated-type +nonstrict-import +sketchy-null +unclear-type +unsafe-getters-setters +untyped-import +untyped-type-import [version] -^0.57.0 +^0.98.0 diff --git a/KakaoLoginExample/.gitignore b/KakaoLoginExample/.gitignore index 0826423..828cc88 100644 --- a/KakaoLoginExample/.gitignore +++ b/KakaoLoginExample/.gitignore @@ -51,3 +51,9 @@ buck-out/ */fastlane/report.xml */fastlane/Preview.html */fastlane/screenshots + +# Bundle artifact +*.jsbundle + +# CocoaPods +/ios/Pods/ diff --git a/KakaoLoginExample/.prettierrc.js b/KakaoLoginExample/.prettierrc.js new file mode 100644 index 0000000..5c4de1a --- /dev/null +++ b/KakaoLoginExample/.prettierrc.js @@ -0,0 +1,6 @@ +module.exports = { + bracketSpacing: false, + jsxBracketSameLine: true, + singleQuote: true, + trailingComma: 'all', +}; diff --git a/KakaoLoginExample/App.js b/KakaoLoginExample/App.js index eb27f66..072f605 100644 --- a/KakaoLoginExample/App.js +++ b/KakaoLoginExample/App.js @@ -1,96 +1,120 @@ -import React, { Component } from 'react'; -import { - Platform, - Alert, - StyleSheet, - Text, - View, - NativeModules, -} from 'react-native'; +import React, {useState} from 'react'; +import {Platform, StyleSheet, Text, View, Image} from 'react-native'; -// const { RNKakaoLogins } = NativeModules; import RNKakaoLogins from 'react-native-kakao-logins'; import NativeButton from 'apsl-react-native-button'; -export default class App extends Component<}{}> { - constructor(props) { - super(props); - this.state = { - isKakaoLogging: false, - token: 'token has not fetched', - }; - if (!RNKakaoLogins) { - console.log('Not Linked'); - } - } +if (!RNKakaoLogins) { + console.error('Module is Not Linked'); +} + +const logCallback = (log, callback) => { + console.log(log); + callback; +}; + +const TOKEN_EMPTY = 'token has not fetched'; +const PROFILE_EMPTY = { + id: 'profile has not fetched', + email: 'profile has not fetched', + profile_image_path: null, +}; + +export default function App() { + const [loginLoading, setLoginLoading] = useState(false); + const [logoutLoading, setLogoutLoading] = useState(false); + const [profileLoading, setProfileLoading] = useState(false); + + const [token, setToken] = useState(TOKEN_EMPTY); + const [profile, setProfile] = useState(PROFILE_EMPTY); + + const kakaoLogin = () => { + logCallback('Login Start', setLoginLoading(true)); - // 카카오 로그인 시작. - kakaoLogin() { - console.log(' kakaoLogin '); RNKakaoLogins.login((err, result) => { - if (err){ - Alert.alert('error', err.toString()); - return; + if (err) { + return logCallback( + `Login Failed:${err.toString()}`, + setLoginLoading(false), + ); } - Alert.alert('result', result); + setToken(result.token); + logCallback(`Login Finished:${result.token}`, setLoginLoading(false)); }); - } + }; + + const kakaoLogout = () => { + logCallback('Logout Start', setLogoutLoading(true)); - kakaoLogout() { - console.log(' kakaoLogout '); RNKakaoLogins.logout((err, result) => { - if (err){ - Alert.alert('error', err.toString()); - return; + if (err) { + return logCallback( + `Logout Failed:${err.toString()}`, + setLogoutLoading(false), + ); } - Alert.alert('result', result); + setToken(TOKEN_EMPTY); + setProfile(PROFILE_EMPTY); + logCallback(`Logout Finished:${result}`, setLogoutLoading(false)); }); - } + }; + + const getProfile = () => { + logCallback('Get Profile Start', setProfileLoading(true)); - // 로그인 후 내 프로필 가져오기. - getProfile() { - console.log('getKakaoProfile'); RNKakaoLogins.getProfile((err, result) => { - if (err){ - Alert.alert('error', err.toString()); - return; + if (err) { + return logCallback( + `Get Profile Failed:${err.toString()}`, + setProfileLoading(false), + ); } - Alert.alert('result', result); + setProfile(result); + logCallback( + `Get Profile Finished:${JSON.stringify(result)}`, + setProfileLoading(false), + ); }); - } + }; + + const {id, email, profile_image_path: photo} = profile; - render() { - return ( - - - LOGIN - - - this.kakaoLogin()} - activeOpacity={0.5} - style={styles.btnKakaoLogin} - textStyle={styles.txtNaverLogin} - >LOGIN - {this.state.token} - this.kakaoLogout()} - activeOpacity={0.5} - style={styles.btnKakaoLogin} - textStyle={styles.txtNaverLogin} - >Logout - this.getProfile()} - activeOpacity={0.5} - style={styles.btnKakaoLogin} - textStyle={styles.txtNaverLogin} - >getProfile - + return ( + + + + {`id : ${id}`} + {`email : ${email}`} + + + {token} + + LOGIN + + + Logout + + + getProfile + - ); - } + + ); } const styles = StyleSheet.create({ @@ -101,24 +125,36 @@ const styles = StyleSheet.create({ paddingTop: Platform.OS === 'ios' ? 24 : 0, backgroundColor: 'white', }, - header: { - flex: 8.8, - flexDirection: 'row', - alignSelf: 'stretch', - justifyContent: 'center', + profile: { + flex: 4, alignItems: 'center', + justifyContent: 'flex-end', + }, + profilePhoto: { + width: 120, + height: 120, + borderWidth: 1, + borderColor: 'black', }, content: { - flex: 87.5, - flexDirection: 'column', - justifyContent: 'center', - alignSelf: 'stretch', + flex: 6, + justifyContent: 'flex-start', alignItems: 'center', }, title: { fontSize: 24, fontWeight: 'bold', }, + token: { + width: 200, + fontSize: 12, + padding: 5, + borderRadius: 8, + marginVertical: 20, + backgroundColor: 'grey', + color: 'white', + textAlign: 'center', + }, btnKakaoLogin: { height: 48, width: 240, @@ -127,7 +163,7 @@ const styles = StyleSheet.create({ borderRadius: 0, borderWidth: 0, }, - txtNaverLogin: { + txtKakaoLogin: { fontSize: 16, color: '#3d3d3d', }, diff --git a/KakaoLoginExample/__tests__/App.js b/KakaoLoginExample/__tests__/App-test.js similarity index 81% rename from KakaoLoginExample/__tests__/App.js rename to KakaoLoginExample/__tests__/App-test.js index d0b9ee3..1784766 100644 --- a/KakaoLoginExample/__tests__/App.js +++ b/KakaoLoginExample/__tests__/App-test.js @@ -1,3 +1,7 @@ +/** + * @format + */ + import 'react-native'; import React from 'react'; import App from '../App'; @@ -6,7 +10,5 @@ import App from '../App'; import renderer from 'react-test-renderer'; it('renders correctly', () => { - const tree = renderer.create( - - ); + renderer.create(); }); diff --git a/KakaoLoginExample/android/app/BUCK b/KakaoLoginExample/android/app/BUCK index 4c437dc..e5ea0ca 100644 --- a/KakaoLoginExample/android/app/BUCK +++ b/KakaoLoginExample/android/app/BUCK @@ -8,23 +8,13 @@ # - `buck install -r android/app` - compile, install and run application # +load(":build_defs.bzl", "create_aar_targets", "create_jar_targets") + lib_deps = [] -for jarfile in glob(['libs/*.jar']): - name = 'jars__' + jarfile[jarfile.rindex('/') + 1: jarfile.rindex('.jar')] - lib_deps.append(':' + name) - prebuilt_jar( - name = name, - binary_jar = jarfile, - ) +create_aar_targets(glob(["libs/*.aar"])) -for aarfile in glob(['libs/*.aar']): - name = 'aars__' + aarfile[aarfile.rindex('/') + 1: aarfile.rindex('.aar')] - lib_deps.append(':' + name) - android_prebuilt_aar( - name = name, - aar = aarfile, - ) +create_jar_targets(glob(["libs/*.jar"])) android_library( name = "all-libs", diff --git a/KakaoLoginExample/android/app/build.gradle b/KakaoLoginExample/android/app/build.gradle index dec3db2..8c4f295 100644 --- a/KakaoLoginExample/android/app/build.gradle +++ b/KakaoLoginExample/android/app/build.gradle @@ -18,6 +18,9 @@ import com.android.build.OutputFile * // the entry file for bundle generation * entryFile: "index.android.js", * + * // https://facebook.github.io/react-native/docs/performance#enable-the-ram-format + * bundleCommand: "ram-bundle", + * * // whether to bundle JS and assets in debug mode * bundleInDebug: false, * @@ -73,7 +76,8 @@ import com.android.build.OutputFile */ project.ext.react = [ - entryFile: "index.js" + entryFile: "index.js", + enableHermes: false, // clean and rebuild if changing ] apply from: "../../node_modules/react-native/react.gradle" @@ -93,61 +97,107 @@ def enableSeparateBuildPerCPUArchitecture = false */ def enableProguardInReleaseBuilds = false -def DEFAULT_COMPILE_SDK_VERSION = 27 -def DEFAULT_BUILD_TOOLS_VERSION = "27.0.3" -def DEFAULT_MIN_SDK_VERSION = 16 -def DEFAULT_TARGET_SDK_VERSION = 26 +/** + * The preferred build flavor of JavaScriptCore. + * + * For example, to use the international variant, you can use: + * `def jscFlavor = 'org.webkit:android-jsc-intl:+'` + * + * The international variant includes ICU i18n library and necessary data + * allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that + * give correct results when using with locales other than en-US. Note that + * this variant is about 6MiB larger per architecture than default. + */ +def jscFlavor = 'org.webkit:android-jsc:+' + +/** + * Whether to enable the Hermes VM. + * + * This should be set on project.ext.react and mirrored here. If it is not set + * on project.ext.react, JavaScript will not be compiled to Hermes Bytecode + * and the benefits of using Hermes will therefore be sharply reduced. + */ +def enableHermes = project.ext.react.get("enableHermes", false); android { - compileSdkVersion rootProject.ext.hasProperty('compileSdkVersion') ? rootProject.ext.compileSdkVersion : DEFAULT_COMPILE_SDK_VERSION - buildToolsVersion rootProject.ext.hasProperty('buildToolsVersion') ? rootProject.ext.buildToolsVersion : DEFAULT_BUILD_TOOLS_VERSION - - defaultConfig { - applicationId "com.kakaologinexample" - minSdkVersion rootProject.ext.hasProperty('minSdkVersion') ? rootProject.ext.minSdkVersion : DEFAULT_MIN_SDK_VERSION - targetSdkVersion rootProject.ext.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : DEFAULT_TARGET_SDK_VERSION - - versionCode 1 - versionName "1.0" - ndk { - abiFilters "armeabi-v7a", "x86" + compileSdkVersion rootProject.ext.compileSdkVersion + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 } - } - splits { - abi { - reset() - enable enableSeparateBuildPerCPUArchitecture - universalApk false // If true, also generate a universal APK - include "armeabi-v7a", "x86" + + defaultConfig { + applicationId "com.kakaologinexample" + minSdkVersion rootProject.ext.minSdkVersion + targetSdkVersion rootProject.ext.targetSdkVersion + versionCode 1 + versionName "1.0" + } + splits { + abi { + reset() + enable enableSeparateBuildPerCPUArchitecture + universalApk false // If true, also generate a universal APK + include "armeabi-v7a", "x86", "arm64-v8a", "x86_64" + } } - } - buildTypes { - release { - minifyEnabled enableProguardInReleaseBuilds - proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" + signingConfigs { + debug { + storeFile file('debug.keystore') + storePassword 'android' + keyAlias 'androiddebugkey' + keyPassword 'android' + } } - } - // applicationVariants are e.g. debug, release - applicationVariants.all { variant -> - variant.outputs.each { output -> - // For each separate APK per architecture, set a unique version code as described here: - // http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits - def versionCodes = ["armeabi-v7a":1, "x86":2] - def abi = output.getFilter(OutputFile.ABI) - if (abi != null) { // null for the universal-debug, universal-release variants - output.versionCodeOverride = - versionCodes.get(abi) * 1048576 + defaultConfig.versionCode - } + buildTypes { + debug { + signingConfig signingConfigs.debug + } + release { + // Caution! In production, you need to generate your own keystore file. + // see https://facebook.github.io/react-native/docs/signed-apk-android. + signingConfig signingConfigs.debug + minifyEnabled enableProguardInReleaseBuilds + proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" + } + } + // applicationVariants are e.g. debug, release + applicationVariants.all { variant -> + variant.outputs.each { output -> + // For each separate APK per architecture, set a unique version code as described here: + // https://developer.android.com/studio/build/configure-apk-splits.html + def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4] + def abi = output.getFilter(OutputFile.ABI) + if (abi != null) { // null for the universal-debug, universal-release variants + output.versionCodeOverride = + versionCodes.get(abi) * 1048576 + defaultConfig.versionCode + } + + } + } + + packagingOptions { + pickFirst '**/armeabi-v7a/libc++_shared.so' + pickFirst '**/x86/libc++_shared.so' + pickFirst '**/arm64-v8a/libc++_shared.so' + pickFirst '**/x86_64/libc++_shared.so' + pickFirst '**/x86/libjsc.so' + pickFirst '**/armeabi-v7a/libjsc.so' } - } } dependencies { - implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:appcompat-v7:27.1.1' - implementation 'com.facebook.react:react-native:+' - // From node_modules - implementation project(':react-native-kakao-logins') + implementation fileTree(dir: "libs", include: ["*.jar"]) + implementation "com.facebook.react:react-native:+" // From node_modules + + if (enableHermes) { + def hermesPath = "../../node_modules/hermesvm/android/"; + debugImplementation files(hermesPath + "hermes-debug.aar") + releaseImplementation files(hermesPath + "hermes-release.aar") + } else { + implementation jscFlavor + } } // Run this once to be able to run the application with BUCK @@ -156,3 +206,5 @@ task copyDownloadableDepsToLibs(type: Copy) { from configurations.compile into 'libs' } + +apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) diff --git a/KakaoLoginExample/android/app/build_defs.bzl b/KakaoLoginExample/android/app/build_defs.bzl new file mode 100644 index 0000000..fff270f --- /dev/null +++ b/KakaoLoginExample/android/app/build_defs.bzl @@ -0,0 +1,19 @@ +"""Helper definitions to glob .aar and .jar targets""" + +def create_aar_targets(aarfiles): + for aarfile in aarfiles: + name = "aars__" + aarfile[aarfile.rindex("/") + 1:aarfile.rindex(".aar")] + lib_deps.append(":" + name) + android_prebuilt_aar( + name = name, + aar = aarfile, + ) + +def create_jar_targets(jarfiles): + for jarfile in jarfiles: + name = "jars__" + jarfile[jarfile.rindex("/") + 1:jarfile.rindex(".jar")] + lib_deps.append(":" + name) + prebuilt_jar( + name = name, + binary_jar = jarfile, + ) diff --git a/KakaoLoginExample/android/app/proguard-rules.pro b/KakaoLoginExample/android/app/proguard-rules.pro index 6e8516c..17a15de 100644 --- a/KakaoLoginExample/android/app/proguard-rules.pro +++ b/KakaoLoginExample/android/app/proguard-rules.pro @@ -9,62 +9,11 @@ # Add any project specific keep options here: -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Disabling obfuscation is useful if you collect stack traces from production crashes -# (unless you are using a system that supports de-obfuscate the stack traces). --dontobfuscate - -# React Native - -# Keep our interfaces so they can be used by other ProGuard rules. -# See http://sourceforge.net/p/proguard/bugs/466/ --keep,allowobfuscation @interface com.facebook.proguard.annotations.DoNotStrip --keep,allowobfuscation @interface com.facebook.proguard.annotations.KeepGettersAndSetters --keep,allowobfuscation @interface com.facebook.common.internal.DoNotStrip - -# Do not strip any method/class that is annotated with @DoNotStrip --keep @com.facebook.proguard.annotations.DoNotStrip class * --keep @com.facebook.common.internal.DoNotStrip class * +# [Optional] RNKakaoLogins +-keep class com.kakao.** { *; } +-keepattributes Signature -keepclassmembers class * { - @com.facebook.proguard.annotations.DoNotStrip *; - @com.facebook.common.internal.DoNotStrip *; -} - --keepclassmembers @com.facebook.proguard.annotations.KeepGettersAndSetters class * { - void set*(***); - *** get*(); + public static ; + public *; } - --keep class * extends com.facebook.react.bridge.JavaScriptModule { *; } --keep class * extends com.facebook.react.bridge.NativeModule { *; } --keepclassmembers,includedescriptorclasses class * { native ; } --keepclassmembers class * { @com.facebook.react.uimanager.UIProp ; } --keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactProp ; } --keepclassmembers class * { @com.facebook.react.uimanager.annotations.ReactPropGroup ; } - --dontwarn com.facebook.react.** - -# TextLayoutBuilder uses a non-public Android constructor within StaticLayout. -# See libs/proxy/src/main/java/com/facebook/fbui/textlayoutbuilder/proxy for details. --dontwarn android.text.StaticLayout - -# okhttp - --keepattributes Signature --keepattributes *Annotation* --keep class okhttp3.** { *; } --keep interface okhttp3.** { *; } --dontwarn okhttp3.** - -# okio - --keep class sun.misc.Unsafe { *; } --dontwarn java.nio.file.* --dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement --dontwarn okio.** +-dontwarn android.support.v4.**,org.slf4j.**,com.google.android.gms.** \ No newline at end of file diff --git a/KakaoLoginExample/android/app/src/debug/AndroidManifest.xml b/KakaoLoginExample/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..fa26aa5 --- /dev/null +++ b/KakaoLoginExample/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,8 @@ + + + + + + + diff --git a/KakaoLoginExample/android/app/src/main/AndroidManifest.xml b/KakaoLoginExample/android/app/src/main/AndroidManifest.xml index c453d32..f438e9b 100644 --- a/KakaoLoginExample/android/app/src/main/AndroidManifest.xml +++ b/KakaoLoginExample/android/app/src/main/AndroidManifest.xml @@ -1,32 +1,27 @@ + package="com.kakaologinexample"> - - - - - - - - - - + android:icon="@mipmap/ic_launcher" + android:roundIcon="@mipmap/ic_launcher_round" + android:allowBackup="true" + android:theme="@style/AppTheme"> + + + + + + + + diff --git a/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainActivity.java b/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainActivity.java index 389277f..f5b0e13 100644 --- a/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainActivity.java +++ b/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainActivity.java @@ -1,15 +1,9 @@ package com.kakaologinexample; -import android.content.Intent; -import android.util.Log; -import android.widget.Toast; - -import com.dooboolab.kakaologins.RNKakaoLoginsModule; import com.facebook.react.ReactActivity; public class MainActivity extends ReactActivity { - private RNKakaoLoginsModule.SessionCallback callback; /** * Returns the name of the main component registered from JavaScript. * This is used to schedule rendering of the component. diff --git a/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainApplication.java b/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainApplication.java index 74b3e9d..a5feed7 100644 --- a/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainApplication.java +++ b/KakaoLoginExample/android/app/src/main/java/com/kakaologinexample/MainApplication.java @@ -1,19 +1,19 @@ package com.kakaologinexample; +import android.app.Application; +import android.util.Log; + +import com.facebook.react.PackageList; +import com.facebook.hermes.reactexecutor.HermesExecutorFactory; +import com.facebook.react.bridge.JavaScriptExecutorFactory; import com.facebook.react.ReactApplication; import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactPackage; -import com.facebook.react.shell.MainReactPackage; import com.facebook.soloader.SoLoader; -import com.dooboolab.kakaologins.GlobalApplication; -import com.dooboolab.kakaologins.RNKakaoLoginsPackage; -import java.util.Arrays; import java.util.List; - -// dooboolab ==> manually change Application to GlobalApplication -public class MainApplication extends GlobalApplication implements ReactApplication { +public class MainApplication extends Application implements ReactApplication { private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) { @Override @@ -23,10 +23,11 @@ public boolean getUseDeveloperSupport() { @Override protected List getPackages() { - return Arrays.asList( - new MainReactPackage(), - new RNKakaoLoginsPackage() - ); + @SuppressWarnings("UnnecessaryLocalVariable") + List packages = new PackageList(this).getPackages(); + // Packages that cannot be autolinked yet can be added manually here, for example: + // packages.add(new MyReactNativePackage()); + return packages; } @Override diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/KakaoLoginExample/android/app/src/main/res/mipmap-hdpi/ic_launcher.png index cde69bc..a2f5908 100644 Binary files a/KakaoLoginExample/android/app/src/main/res/mipmap-hdpi/ic_launcher.png and b/KakaoLoginExample/android/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/KakaoLoginExample/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 0000000..1b52399 Binary files /dev/null and b/KakaoLoginExample/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/KakaoLoginExample/android/app/src/main/res/mipmap-mdpi/ic_launcher.png index c133a0c..ff10afd 100644 Binary files a/KakaoLoginExample/android/app/src/main/res/mipmap-mdpi/ic_launcher.png and b/KakaoLoginExample/android/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/KakaoLoginExample/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png new file mode 100644 index 0000000..115a4c7 Binary files /dev/null and b/KakaoLoginExample/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/KakaoLoginExample/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png index bfa42f0..dcd3cd8 100644 Binary files a/KakaoLoginExample/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png and b/KakaoLoginExample/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/KakaoLoginExample/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png new file mode 100644 index 0000000..459ca60 Binary files /dev/null and b/KakaoLoginExample/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/KakaoLoginExample/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png index 324e72c..8ca12fe 100644 Binary files a/KakaoLoginExample/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and b/KakaoLoginExample/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/KakaoLoginExample/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000..8e19b41 Binary files /dev/null and b/KakaoLoginExample/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/KakaoLoginExample/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000..b824ebd Binary files /dev/null and b/KakaoLoginExample/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/KakaoLoginExample/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png new file mode 100644 index 0000000..4c19a13 Binary files /dev/null and b/KakaoLoginExample/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png differ diff --git a/KakaoLoginExample/android/app/src/main/res/values/strings.xml b/KakaoLoginExample/android/app/src/main/res/values/strings.xml index 01b27b9..0e84d93 100644 --- a/KakaoLoginExample/android/app/src/main/res/values/strings.xml +++ b/KakaoLoginExample/android/app/src/main/res/values/strings.xml @@ -1,3 +1,4 @@ - KakaoLoginExample + KakaoLoginExample + a166c2caca4cc21f9268a40a29f5a645 diff --git a/KakaoLoginExample/android/app/src/main/res/values/styles.xml b/KakaoLoginExample/android/app/src/main/res/values/styles.xml index 319eb0c..62fe59f 100644 --- a/KakaoLoginExample/android/app/src/main/res/values/styles.xml +++ b/KakaoLoginExample/android/app/src/main/res/values/styles.xml @@ -3,6 +3,7 @@ diff --git a/KakaoLoginExample/android/build.gradle b/KakaoLoginExample/android/build.gradle index 9a965c8..c1d3e11 100644 --- a/KakaoLoginExample/android/build.gradle +++ b/KakaoLoginExample/android/build.gradle @@ -1,12 +1,19 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { + ext { + buildToolsVersion = "28.0.3" + minSdkVersion = 16 + compileSdkVersion = 28 + targetSdkVersion = 28 + supportLibVersion = "28.0.0" + } repositories { + google() jcenter() - google() } dependencies { - classpath 'com.android.tools.build:gradle:3.1.2' + classpath("com.android.tools.build:gradle:3.4.1") // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files @@ -16,24 +23,20 @@ buildscript { allprojects { repositories { mavenLocal() - jcenter() maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm - url "$rootDir/../node_modules/react-native/android" + url("$rootDir/../node_modules/react-native/android") + } + maven { + // Android JSC is installed from npm + url("$rootDir/../node_modules/jsc-android/dist") + } + maven { + // Dooboolab ==> Manually add + url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' } - google() - } -} - -// Dooboolab ==> Manually add - -subprojects { - repositories { - mavenCentral() - maven { url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' } - } -} -task clean(type: Delete) { - delete rootProject.buildDir -} + google() + jcenter() + } +} \ No newline at end of file diff --git a/KakaoLoginExample/android/gradle.properties b/KakaoLoginExample/android/gradle.properties index 1fd964e..45830ca 100644 --- a/KakaoLoginExample/android/gradle.properties +++ b/KakaoLoginExample/android/gradle.properties @@ -17,4 +17,8 @@ # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true -android.useDeprecatedNdk=true +KAKAO_SDK_GROUP=com.kakao.sdk +KAKAO_SDK_VERSION=1.15.1 + +android.useAndroidX=true +android.enableJetifier=true diff --git a/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.jar b/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.jar index b5166da..5c2d1cf 100644 Binary files a/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.jar and b/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.jar differ diff --git a/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.properties b/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.properties index c45e0a7..ee69dd6 100644 --- a/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.properties +++ b/KakaoLoginExample/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ -#Mon Jun 04 21:58:18 KST 2018 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip diff --git a/KakaoLoginExample/android/gradlew b/KakaoLoginExample/android/gradlew index 91a7e26..b0d6d0a 100755 --- a/KakaoLoginExample/android/gradlew +++ b/KakaoLoginExample/android/gradlew @@ -1,4 +1,20 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ############################################################################## ## @@ -6,20 +22,38 @@ ## ############################################################################## -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn ( ) { +warn () { echo "$*" } -die ( ) { +die () { echo echo "$*" echo @@ -30,6 +64,7 @@ die ( ) { cygwin=false msys=false darwin=false +nonstop=false case "`uname`" in CYGWIN* ) cygwin=true @@ -40,31 +75,11 @@ case "`uname`" in MINGW* ) msys=true ;; + NONSTOP* ) + nonstop=true + ;; esac -# For Cygwin, ensure paths are in UNIX format before anything is touched. -if $cygwin ; then - [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` -fi - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >&- -APP_HOME="`pwd -P`" -cd "$SAVED" >&- - CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar # Determine the Java command to use to start the JVM. @@ -90,7 +105,7 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then @@ -114,6 +129,7 @@ fi if $cygwin ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` @@ -154,11 +170,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/KakaoLoginExample/android/gradlew.bat b/KakaoLoginExample/android/gradlew.bat index aec9973..15e1ee3 100644 --- a/KakaoLoginExample/android/gradlew.bat +++ b/KakaoLoginExample/android/gradlew.bat @@ -1,3 +1,19 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem http://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + @if "%DEBUG%" == "" @echo off @rem ########################################################################## @rem @@ -8,14 +24,14 @@ @rem Set local scope for the variables with windows NT shell if "%OS%"=="Windows_NT" setlocal -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - set DIRNAME=%~dp0 if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome @@ -46,10 +62,9 @@ echo location of your Java installation. goto fail :init -@rem Get command-line arguments, handling Windowz variants +@rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. @@ -60,11 +75,6 @@ set _SKIP=2 if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ :execute @rem Setup the command line diff --git a/KakaoLoginExample/android/keystores/BUCK b/KakaoLoginExample/android/keystores/BUCK deleted file mode 100644 index 88e4c31..0000000 --- a/KakaoLoginExample/android/keystores/BUCK +++ /dev/null @@ -1,8 +0,0 @@ -keystore( - name = "debug", - properties = "debug.keystore.properties", - store = "debug.keystore", - visibility = [ - "PUBLIC", - ], -) diff --git a/KakaoLoginExample/android/keystores/debug.keystore.properties b/KakaoLoginExample/android/keystores/debug.keystore.properties deleted file mode 100644 index 121bfb4..0000000 --- a/KakaoLoginExample/android/keystores/debug.keystore.properties +++ /dev/null @@ -1,4 +0,0 @@ -key.store=debug.keystore -key.alias=androiddebugkey -key.store.password=android -key.alias.password=android diff --git a/KakaoLoginExample/android/react-native-kakao-logins/build.gradle b/KakaoLoginExample/android/react-native-kakao-logins/build.gradle deleted file mode 100644 index f906c94..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/build.gradle +++ /dev/null @@ -1,40 +0,0 @@ -buildscript { - repositories { - jcenter() - google() - } - - dependencies { - classpath 'com.android.tools.build:gradle:3.1.2' - } -} - -allprojects { - repositories { - google() - jcenter() - mavenCentral() - maven { url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' } - } -} - -apply plugin: 'com.android.library' - -android { - compileSdkVersion 27 - buildToolsVersion '27.0.3' - - defaultConfig { - minSdkVersion 16 - targetSdkVersion 27 - versionCode 1 - versionName "1.0" - } -} - -dependencies { - implementation 'com.android.support.constraint:constraint-layout:1.0.2' - implementation 'com.facebook.react:react-native:+' - implementation 'com.android.support:appcompat-v7:27.0.2' - implementation group: project.KAKAO_SDK_GROUP, name: 'usermgmt', version: project.KAKAO_SDK_VERSION -} diff --git a/KakaoLoginExample/android/react-native-kakao-logins/gradle.properties b/KakaoLoginExample/android/react-native-kakao-logins/gradle.properties deleted file mode 100644 index 933e890..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/gradle.properties +++ /dev/null @@ -1,18 +0,0 @@ -# Project-wide Gradle settings. - -# IDE (e.g. Android Studio) users: -# Gradle settings configured through the IDE *will override* -# any settings specified in this file. - -# For more details on how to configure your build environment visit -# http://www.gradle.org/docs/current/userguide/build_environment.html - -# Specifies the JVM arguments used for the daemon process. -# The setting is particularly useful for tweaking memory settings. -KAKAO_SDK_GROUP=com.kakao.sdk -KAKAO_SDK_VERSION=1.15.1 - -# When configured, Gradle will run in incubating parallel mode. -# This option should only be used with decoupled projects. More details, visit -# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects -# org.gradle.parallel=true diff --git a/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle-wrapper.jar b/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 13372ae..0000000 Binary files a/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle-wrapper.jar and /dev/null differ diff --git a/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle-wrapper.properties b/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index 6ebf8bc..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,6 +0,0 @@ -#Wed Dec 13 00:30:36 KST 2017 -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.2-all.zip diff --git a/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle.properties b/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle.properties deleted file mode 100644 index 933e890..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/gradle/wrapper/gradle.properties +++ /dev/null @@ -1,18 +0,0 @@ -# Project-wide Gradle settings. - -# IDE (e.g. Android Studio) users: -# Gradle settings configured through the IDE *will override* -# any settings specified in this file. - -# For more details on how to configure your build environment visit -# http://www.gradle.org/docs/current/userguide/build_environment.html - -# Specifies the JVM arguments used for the daemon process. -# The setting is particularly useful for tweaking memory settings. -KAKAO_SDK_GROUP=com.kakao.sdk -KAKAO_SDK_VERSION=1.15.1 - -# When configured, Gradle will run in incubating parallel mode. -# This option should only be used with decoupled projects. More details, visit -# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects -# org.gradle.parallel=true diff --git a/KakaoLoginExample/android/react-native-kakao-logins/gradlew b/KakaoLoginExample/android/react-native-kakao-logins/gradlew deleted file mode 100644 index 9d82f78..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/gradlew +++ /dev/null @@ -1,160 +0,0 @@ -#!/usr/bin/env bash - -############################################################################## -## -## Gradle start up script for UN*X -## -############################################################################## - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" - -APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" - -warn ( ) { - echo "$*" -} - -die ( ) { - echo - echo "$*" - echo - exit 1 -} - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; -esac - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD="java" - which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." -fi - -# Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=$((i+1)) - done - case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; - esac -fi - -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") -} -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" - -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/KakaoLoginExample/android/react-native-kakao-logins/gradlew.bat b/KakaoLoginExample/android/react-native-kakao-logins/gradlew.bat deleted file mode 100644 index aec9973..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/gradlew.bat +++ /dev/null @@ -1,90 +0,0 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windowz variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/AndroidManifest.xml b/KakaoLoginExample/android/react-native-kakao-logins/src/main/AndroidManifest.xml deleted file mode 100644 index f5ba716..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/AndroidManifest.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/GlobalApplication.java b/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/GlobalApplication.java deleted file mode 100644 index 47929d2..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/GlobalApplication.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.dooboolab.kakaologins; - -/** - * Created by hyochan on 2017. 12. 12.. - */ - -import android.app.Application; -import android.content.Context; - -import com.kakao.auth.ApprovalType; -import com.kakao.auth.AuthType; -import com.kakao.auth.IApplicationConfig; -import com.kakao.auth.ISessionConfig; -import com.kakao.auth.KakaoAdapter; -import com.kakao.auth.KakaoSDK; -import com.kakao.auth.Session; - -public class GlobalApplication extends Application { - private static Context context; - - private static class KakaoSDKAdapter extends KakaoAdapter { - /** - * Session Config에 대해서는 default값들이 존재한다. - * 필요한 상황에서만 override해서 사용하면 됨. - * @return Session의 설정값. - */ - @Override - public ISessionConfig getSessionConfig() { - return new ISessionConfig() { - @Override - public AuthType[] getAuthTypes() { - return new AuthType[] {AuthType.KAKAO_LOGIN_ALL}; - } - - @Override - public boolean isUsingWebviewTimer() { - return false; - } - - @Override - public boolean isSecureMode() { - return false; - } - - @Override - public ApprovalType getApprovalType() { - return ApprovalType.INDIVIDUAL; - } - - @Override - public boolean isSaveFormData() { - return true; - } - }; - } - - @Override - public IApplicationConfig getApplicationConfig() { - return new IApplicationConfig() { - @Override - public Context getApplicationContext() { - return context; - } - }; - } - } - - @Override - public void onCreate() { - super.onCreate(); - context = this.getApplicationContext(); - KakaoSDK.init(new KakaoSDKAdapter()); - } - - @Override - public void onTerminate() { - super.onTerminate(); - Session.getCurrentSession().removeCallback(RNKakaoLoginsModule.callback); - } - - -} \ No newline at end of file diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/RNKakaoLoginsModule.java b/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/RNKakaoLoginsModule.java deleted file mode 100644 index 0d59c6a..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/RNKakaoLoginsModule.java +++ /dev/null @@ -1,351 +0,0 @@ - -package com.dooboolab.kakaologins; - -import android.app.Activity; -import android.app.Dialog; -import android.content.Context; -import android.content.Intent; -import android.os.Build; -import android.util.Log; -import android.view.Gravity; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.view.Window; -import android.widget.AdapterView; -import android.widget.ArrayAdapter; -import android.widget.Button; -import android.widget.ImageView; -import android.widget.ListAdapter; -import android.widget.ListView; -import android.widget.TextView; - -import com.facebook.react.bridge.ActivityEventListener; -import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.bridge.ReactContextBaseJavaModule; -import com.facebook.react.bridge.ReactMethod; -import com.facebook.react.bridge.Callback; -import com.facebook.react.bridge.UiThreadUtil; -import com.kakao.auth.AccessTokenCallback; -import com.kakao.auth.AuthType; -import com.kakao.auth.ISessionCallback; -import com.kakao.auth.KakaoSDK; -import com.kakao.auth.Session; -import com.kakao.network.ErrorResult; -import com.kakao.usermgmt.UserManagement; -import com.kakao.usermgmt.callback.LogoutResponseCallback; -import com.kakao.usermgmt.callback.MeResponseCallback; -import com.kakao.usermgmt.callback.MeV2ResponseCallback; -import com.kakao.usermgmt.response.MeV2Response; -import com.kakao.usermgmt.response.model.UserProfile; -import com.kakao.util.exception.KakaoException; -import com.kakao.util.helper.log.Logger; - -import org.json.JSONException; -import org.json.JSONObject; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public class RNKakaoLoginsModule extends ReactContextBaseJavaModule implements ActivityEventListener{ - - private static final String TAG = "RNKakaoLoginModule"; - private final ReactApplicationContext reactContext; - public static SessionCallback callback; - private static Callback loginCallback; - - private static class Item { - final int textId; - public final int icon; - final int contentDescId; - final AuthType authType; - Item(final int textId, final Integer icon, final int contentDescId, final AuthType authType) { - this.textId = textId; - this.icon = icon; - this.contentDescId = contentDescId; - this.authType = authType; - } - } - - private List getAuthTypes() { - final List availableAuthTypes = new ArrayList<>(); - if (Session.getCurrentSession().getAuthCodeManager().isTalkLoginAvailable()) { - availableAuthTypes.add(AuthType.KAKAO_TALK); - } - if (Session.getCurrentSession().getAuthCodeManager().isStoryLoginAvailable()) { - availableAuthTypes.add(AuthType.KAKAO_STORY); - } - availableAuthTypes.add(AuthType.KAKAO_ACCOUNT); - - AuthType[] authTypes = KakaoSDK.getAdapter().getSessionConfig().getAuthTypes(); - if (authTypes == null || authTypes.length == 0 || (authTypes.length == 1 && authTypes[0] == AuthType.KAKAO_LOGIN_ALL)) { - authTypes = AuthType.values(); - } - availableAuthTypes.retainAll(Arrays.asList(authTypes)); - - // 개발자가 설정한 것과 available 한 타입이 없다면 직접계정 입력이 뜨도록 한다. - if(availableAuthTypes.size() == 0){ - availableAuthTypes.add(AuthType.KAKAO_ACCOUNT); - } - - return availableAuthTypes; - } - - private Item[] createAuthItemArray(final List authTypes) { - final List itemList = new ArrayList(); - if(authTypes.contains(AuthType.KAKAO_TALK)) { - itemList.add(new Item(com.kakao.usermgmt.R.string.com_kakao_kakaotalk_account, com.kakao.usermgmt.R.drawable.talk, com.kakao.usermgmt.R.string.com_kakao_kakaotalk_account_tts, AuthType.KAKAO_TALK)); - } - if(authTypes.contains(AuthType.KAKAO_STORY)) { - itemList.add(new Item(com.kakao.usermgmt.R.string.com_kakao_kakaostory_account, com.kakao.usermgmt.R.drawable.story, com.kakao.usermgmt.R.string.com_kakao_kakaostory_account_tts, AuthType.KAKAO_STORY)); - } - if(authTypes.contains(AuthType.KAKAO_ACCOUNT)){ - itemList.add(new Item(com.kakao.usermgmt.R.string.com_kakao_other_kakaoaccount, com.kakao.usermgmt.R.drawable.account, com.kakao.usermgmt.R.string.com_kakao_other_kakaoaccount_tts, AuthType.KAKAO_ACCOUNT)); - } - - return itemList.toArray(new Item[itemList.size()]); - } - - @SuppressWarnings("deprecation") - private ListAdapter createLoginAdapter(final Item[] authItems) { - /* - 가능한 auth type들을 유저에게 보여주기 위한 준비. - */ - return new ArrayAdapter( - reactContext, - android.R.layout.select_dialog_item, - android.R.id.text1, authItems){ - @Override - public View getView(int position, View convertView, ViewGroup parent) { - if (convertView == null) { - LayoutInflater inflater = (LayoutInflater) getContext() - .getSystemService(Context.LAYOUT_INFLATER_SERVICE); - convertView = inflater.inflate(com.kakao.usermgmt.R.layout.layout_login_item, parent, false); - } - ImageView imageView = convertView.findViewById(com.kakao.usermgmt.R.id.login_method_icon); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - imageView.setImageDrawable(reactContext.getResources().getDrawable(authItems[position].icon, getContext().getTheme())); - } else { - imageView.setImageDrawable(reactContext.getResources().getDrawable(authItems[position].icon)); - } - TextView textView = convertView.findViewById(com.kakao.usermgmt.R.id.login_method_text); - textView.setText(authItems[position].textId); - return convertView; - } - }; - } - - /** - * 실제로 유저에게 보여질 dialog 객체를 생성한다. - * @param authItems 가능한 AuthType들의 정보를 담고 있는 Item array - * @param adapter Dialog의 list view에 쓰일 adapter - * @return 로그인 방법들을 팝업으로 보여줄 dialog - */ - private Dialog createLoginDialog(final Item[] authItems, final ListAdapter adapter) { - final Dialog dialog = new Dialog(reactContext.getCurrentActivity(), com.kakao.usermgmt.R.style.LoginDialog); - dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); - dialog.setContentView(com.kakao.usermgmt.R.layout.layout_login_dialog); - if (dialog.getWindow() != null) { - dialog.getWindow().setGravity(Gravity.CENTER); - } - -// TextView textView = (TextView) dialog.findViewById(R.id.login_title_text); -// Typeface customFont = Typeface.createFromAsset(getContext().getAssets(), "fonts/KakaoOTFRegular.otf"); -// if (customFont != null) { -// textView.setTypeface(customFont); -// } - - ListView listView = dialog.findViewById(com.kakao.usermgmt.R.id.login_list_view); - listView.setAdapter(adapter); - listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { - @Override - public void onItemClick(AdapterView parent, View view, int position, long id) { - final AuthType authType = authItems[position].authType; - if (authType != null) { - openSession(authType); - } - dialog.dismiss(); - } - }); - - Button closeButton = dialog.findViewById(com.kakao.usermgmt.R.id.login_close_button); - closeButton.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - dialog.dismiss(); - } - }); - return dialog; - } - - public void openSession(final AuthType authType) { - Log.d(TAG, "openSession: " + authType.toString()); - if (reactContext.getCurrentActivity() == null) { - Log.d(TAG, "getCurrentActivity is null."); - } - Session.getCurrentSession().open(authType, reactContext.getCurrentActivity()); - } - - public RNKakaoLoginsModule(ReactApplicationContext reactContext) { - super(reactContext); - this.reactContext = reactContext; - reactContext.addActivityEventListener(this); - callback = new SessionCallback(); - Session.getCurrentSession().addCallback(callback); - Session.getCurrentSession().checkAndImplicitOpen(); - } - - @Override - public String getName() { - return "RNKakaoLogins"; - } - - @ReactMethod - private void login(final Callback cb) { - loginCallback = cb; - // btnKakaoLogin.callOnClick(); - final List authTypes = getAuthTypes(); - if (authTypes.size() == 1) { - Session.getCurrentSession().open(authTypes.get(0), reactContext.getCurrentActivity()); - } else { - final Item[] authItems = createAuthItemArray(authTypes); - ListAdapter adapter = createLoginAdapter(authItems); - final Dialog dialog = createLoginDialog(authItems, adapter); - dialog.show(); - } - } - - @ReactMethod - private void logout(final Callback cb) { - UserManagement.getInstance().requestLogout(new LogoutResponseCallback() { - @Override - public void onSessionClosed(ErrorResult errorResult) { - Log.w(TAG, "sessionClosed!!\n" + errorResult.getErrorMessage()); - cb.invoke(errorResult.getErrorMessage(), null); - } - @Override - public void onNotSignedUp() { - Log.w(TAG, "NotSignedUp!!"); - } - @Override - public void onSuccess(Long result) { - Log.d(TAG, "Logout!"); - cb.invoke(null, String.valueOf(result)); - } - @Override - public void onCompleteLogout() { - Log.d(TAG, "Complete Logout!"); - cb.invoke(null, "Logged out"); - } - }); - } - - @ReactMethod - private void getProfile(final Callback cb) { - Log.d(TAG, "getProfile"); - UserManagement.getInstance().me(new MeV2ResponseCallback() { - @Override - public void onSessionClosed(ErrorResult errorResult) { - - } - - @Override - public void onSuccess(MeV2Response result) { - try { - JSONObject jsonObject = new JSONObject(); - jsonObject.put("id", result.getId()); - jsonObject.put("nickname", result.getNickname()); - jsonObject.put("email", result.getKakaoAccount().getEmail()); - jsonObject.put("display_id", result.getKakaoAccount().getDisplayId()); - jsonObject.put("phone_number", result.getKakaoAccount().getPhoneNumber()); - jsonObject.put("email_verified", result.getKakaoAccount().isEmailVerified()); - jsonObject.put("kakaotalk_user", result.getKakaoAccount().isKakaoTalkUser()); - jsonObject.put("profile_image_path", result.getProfileImagePath()); - jsonObject.put("thumb_image_path", result.getThumbnailImagePath()); - jsonObject.put("has_signed_up", result.hasSignedUp()); - cb.invoke(null, jsonObject.toString()); - } catch (JSONException e) { - cb.invoke(e.getMessage(), null); - } - } - }); - - /* - UserManagement.getInstance().requestMe(new MeResponseCallback() { - @Override - public void onFailure(ErrorResult errorResult) { - String message = "failed to get user info. msg=" + errorResult; - Log.e(TAG, message); - cb.invoke(message, null); - } - - @Override - public void onSessionClosed(ErrorResult errorResult) { - Log.e(TAG, "sessionClosed"); - } - - @Override - public void onSuccess(UserProfile userProfile) { - try { - JSONObject jsonObject = new JSONObject(); - jsonObject.put("nickname", userProfile.getNickname()); - jsonObject.put("email", userProfile.getEmail()); - jsonObject.put("emailVerified", userProfile.getEmailVerified()); - jsonObject.put("thumbImagePath", userProfile.getThumbnailImagePath()); - jsonObject.put("profileImagePath", userProfile.getProfileImagePath()); - jsonObject.put("uuid", userProfile.getUUID()); - jsonObject.put("serviceUserId", userProfile.getServiceUserId()); - jsonObject.put("remainingInviteCount", userProfile.getRemainingInviteCount()); - jsonObject.put("remainingGroupMsgCount", userProfile.getRemainingGroupMsgCount()); - jsonObject.put("properties", userProfile.getProperties()); - cb.invoke(null, jsonObject.toString()); - } catch (JSONException e) { - cb.invoke(e.toString(), null); - } - } - - @Override - public void onNotSignedUp() { - cb.invoke("NotSignedUp", null); - } - }); - */ - } - - public static class SessionCallback implements ISessionCallback { - @Override - public void onSessionOpened() { - Log.d(TAG, "Logged in!\ntoken: " + Session.getCurrentSession().getAccessToken()); - - if (loginCallback != null) { - loginCallback.invoke(null, Session.getCurrentSession().getAccessToken()); - loginCallback = null; - } - } - - @Override - public void onSessionOpenFailed(KakaoException exception) { - if(exception != null) { - if (loginCallback != null) { - loginCallback.invoke(exception.getMessage(), null); - loginCallback = null; - } - Log.e(TAG, "Logged in!\nSessionOpenFailed"); - Logger.e(exception); - } - } - } - - @Override - public void onActivityResult(Activity activity, int requestCode, int resultCode, Intent data) { - if (Session.getCurrentSession().handleActivityResult(requestCode, resultCode, data)){ - return; - } - } - - @Override - public void onNewIntent(Intent intent) { - - } -} \ No newline at end of file diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/RNKakaoLoginsPackage.java b/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/RNKakaoLoginsPackage.java deleted file mode 100644 index 9195e75..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/java/com/dooboolab/kakaologins/RNKakaoLoginsPackage.java +++ /dev/null @@ -1,28 +0,0 @@ - -package com.dooboolab.kakaologins; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import com.facebook.react.ReactPackage; -import com.facebook.react.bridge.NativeModule; -import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.uimanager.ViewManager; -import com.facebook.react.bridge.JavaScriptModule; -public class RNKakaoLoginsPackage implements ReactPackage { - @Override - public List createNativeModules(ReactApplicationContext reactContext) { - return Arrays.asList(new RNKakaoLoginsModule(reactContext)); - } - - // Deprecated from RN 0.47 - public List> createJSModules() { - return Collections.emptyList(); - } - - @Override - public List createViewManagers(ReactApplicationContext reactContext) { - return Collections.emptyList(); - } -} \ No newline at end of file diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/colors.xml b/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/colors.xml deleted file mode 100644 index 5a077b3..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/colors.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - #3F51B5 - #303F9F - #FF4081 - diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/kakao_strings.xml b/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/kakao_strings.xml deleted file mode 100644 index 2cf1904..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/kakao_strings.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - f25af6b78693a6f92ecd5cf91b9afb34 - \ No newline at end of file diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/strings.xml b/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/strings.xml deleted file mode 100644 index 55344e5..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/strings.xml +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/styles.xml b/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/styles.xml deleted file mode 100644 index d30593e..0000000 --- a/KakaoLoginExample/android/react-native-kakao-logins/src/main/res/values/styles.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - diff --git a/KakaoLoginExample/android/settings.gradle b/KakaoLoginExample/android/settings.gradle index faf6efc..bfb88af 100644 --- a/KakaoLoginExample/android/settings.gradle +++ b/KakaoLoginExample/android/settings.gradle @@ -1,3 +1,3 @@ rootProject.name = 'KakaoLoginExample' - -include ':app', ':react-native-kakao-logins' +apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) +include ':app' \ No newline at end of file diff --git a/KakaoLoginExample/babel.config.js b/KakaoLoginExample/babel.config.js new file mode 100644 index 0000000..f842b77 --- /dev/null +++ b/KakaoLoginExample/babel.config.js @@ -0,0 +1,3 @@ +module.exports = { + presets: ['module:metro-react-native-babel-preset'], +}; diff --git a/KakaoLoginExample/index.js b/KakaoLoginExample/index.js index 717885b..a850d03 100644 --- a/KakaoLoginExample/index.js +++ b/KakaoLoginExample/index.js @@ -1,4 +1,9 @@ -import { AppRegistry } from 'react-native'; +/** + * @format + */ + +import {AppRegistry} from 'react-native'; import App from './App'; +import {name as appName} from './app.json'; -AppRegistry.registerComponent('KakaoLoginExample', () => App); +AppRegistry.registerComponent(appName, () => App); diff --git a/KakaoLoginExample/ios/KakaoLoginExample-tvOS/Info.plist b/KakaoLoginExample/ios/KakaoLoginExample-tvOS/Info.plist index 2fb6a11..ecbd496 100644 --- a/KakaoLoginExample/ios/KakaoLoginExample-tvOS/Info.plist +++ b/KakaoLoginExample/ios/KakaoLoginExample-tvOS/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName @@ -22,6 +22,19 @@ 1 LSRequiresIPhoneOS + NSAppTransportSecurity + + NSExceptionDomains + + localhost + + NSExceptionAllowsInsecureHTTPLoads + + + + + NSLocationWhenInUseUsageDescription + UILaunchStoryboardName LaunchScreen UIRequiredDeviceCapabilities @@ -36,19 +49,5 @@ UIViewControllerBasedStatusBarAppearance - NSLocationWhenInUseUsageDescription - - NSAppTransportSecurity - - - NSExceptionDomains - - localhost - - NSExceptionAllowsInsecureHTTPLoads - - - - diff --git a/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/project.pbxproj b/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/project.pbxproj index ba93964..b130615 100644 --- a/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/project.pbxproj +++ b/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/project.pbxproj @@ -7,76 +7,22 @@ objects = { /* Begin PBXBuildFile section */ - 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */; }; - 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */; }; - 00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302C01ABCB91800DB3ED1 /* libRCTImage.a */; }; - 00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */; }; - 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */; }; 00E356F31AD99517003FC87E /* KakaoLoginExampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* KakaoLoginExampleTests.m */; }; - 0E37DF6220E27251003A89E8 /* KakaoOpenSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0E37DF3D20E27251003A89E8 /* KakaoOpenSDK.framework */; }; - 133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 78C398B91ACF4ADC00677621 /* libRCTLinking.a */; }; - 139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139105C11AF99BAD00B5F7CC /* libRCTSettings.a */; }; - 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 139FDEF41B06529B00C62182 /* libRCTWebSocket.a */; }; 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 13B07FBD1A68108700A75B9A /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB11A68108700A75B9A /* LaunchScreen.xib */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; - 140ED2AC1D01E1AD002B40FF /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; - 146834051AC3E58100842450 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 146834041AC3E56700842450 /* libReact.a */; }; + 24F9A6E276C45F97DEE83DA2 /* libPods-KakaoLoginExample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 69BF4DDC2C8FDA32FE64BC3E /* libPods-KakaoLoginExample.a */; }; + 29D1552A54F70936E45C1CBF /* libPods-KakaoLoginExampleTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = A9AF18054DC2C799F0F4B829 /* libPods-KakaoLoginExampleTests.a */; }; 2D02E4BC1E0B4A80006451C7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; - 2D02E4C21E0B4AEC006451C7 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157351DD0AC6500FF2AA8 /* libRCTAnimation.a */; }; - 2D02E4C31E0B4AEC006451C7 /* libRCTImage-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E841DF850E9000B6D8A /* libRCTImage-tvOS.a */; }; - 2D02E4C41E0B4AEC006451C7 /* libRCTLinking-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E881DF850E9000B6D8A /* libRCTLinking-tvOS.a */; }; - 2D02E4C51E0B4AEC006451C7 /* libRCTNetwork-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E8C1DF850E9000B6D8A /* libRCTNetwork-tvOS.a */; }; - 2D02E4C61E0B4AEC006451C7 /* libRCTSettings-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E901DF850E9000B6D8A /* libRCTSettings-tvOS.a */; }; - 2D02E4C71E0B4AEC006451C7 /* libRCTText-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E941DF850E9000B6D8A /* libRCTText-tvOS.a */; }; - 2D02E4C81E0B4AEC006451C7 /* libRCTWebSocket-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3E991DF850E9000B6D8A /* libRCTWebSocket-tvOS.a */; }; - 2D02E4C91E0B4AEC006451C7 /* libReact.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DAD3EA31DF850E9000B6D8A /* libReact.a */; }; 2DCD954D1E0B4F2C00145EB5 /* KakaoLoginExampleTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* KakaoLoginExampleTests.m */; }; - 56D8264709DB489480D346EA /* libRNKakaoLogins.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 39E93003A0E44A33A9ADB969 /* libRNKakaoLogins.a */; }; - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */; }; - 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 832341B51AAA6A8300B99B32 /* libRCTText.a */; }; - ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */; }; + 5CB5AC448003012861156FBA /* libPods-KakaoLoginExample-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D3B914825B0D9E5DF55357A5 /* libPods-KakaoLoginExample-tvOS.a */; }; + 756F50E399929481F5164019 /* libPods-KakaoLoginExample-tvOSTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D0DE0C3DDDC0C7B8F761720 /* libPods-KakaoLoginExample-tvOSTests.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 00C302AB1ABCB8CE00DB3ED1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTActionSheet; - }; - 00C302B91ABCB90400DB3ED1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTGeolocation; - }; - 00C302BF1ABCB91800DB3ED1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5115D1A9E6B3D00147676; - remoteInfo = RCTImage; - }; - 00C302DB1ABCB9D200DB3ED1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B511DB1A9E6C8500147676; - remoteInfo = RCTNetwork; - }; - 00C302E31ABCB9EE00DB3ED1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 832C81801AAF6DEF007FA2F7; - remoteInfo = RCTVibration; - }; 00E356F41AD99517003FC87E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; @@ -84,97 +30,6 @@ remoteGlobalIDString = 13B07F861A680F5B00A75B9A; remoteInfo = KakaoLoginExample; }; - 0E29C02D20C58AAD00F03D0A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = ADD01A681E09402E00F6D226; - remoteInfo = "RCTBlob-tvOS"; - }; - 0E29C03F20C58AAD00F03D0A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3DBE0D001F3B181A0099AA32; - remoteInfo = fishhook; - }; - 0E29C04120C58AAD00F03D0A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3DBE0D0D1F3B181C0099AA32; - remoteInfo = "fishhook-tvOS"; - }; - 0E29C04620C58AAD00F03D0A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = F2A53257389343EE98B46014 /* RNKakaoLogins.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RNKakaoLogins; - }; - 0E7AC51420C65D0D00746EC1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 139D7ECE1E25DB7D00323FB7; - remoteInfo = "third-party"; - }; - 0E7AC51620C65D0D00746EC1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D383D3C1EBD27B6005632C8; - remoteInfo = "third-party-tvOS"; - }; - 0E7AC51820C65D0D00746EC1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 139D7E881E25C6D100323FB7; - remoteInfo = "double-conversion"; - }; - 0E7AC51A20C65D0D00746EC1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D383D621EBD27B9005632C8; - remoteInfo = "double-conversion-tvOS"; - }; - 0E7AC51C20C65D0D00746EC1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 9936F3131F5F2E4B0010BF04; - remoteInfo = privatedata; - }; - 0E7AC51E20C65D0D00746EC1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 9936F32F1F5F2E5B0010BF04; - remoteInfo = "privatedata-tvOS"; - }; - 139105C01AF99BAD00B5F7CC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTSettings; - }; - 139FDEF31B06529B00C62182 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3C86DF461ADF2C930047B81A; - remoteInfo = RCTWebSocket; - }; - 146834031AC3E56700842450 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 83CBBA2E1A601D0E00E9B192; - remoteInfo = React; - }; 2D02E4911E0B4A5D006451C7 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; @@ -182,147 +37,13 @@ remoteGlobalIDString = 2D02E47A1E0B4A5D006451C7; remoteInfo = "KakaoLoginExample-tvOS"; }; - 3DAD3E831DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A283A1D9B042B00D4039D; - remoteInfo = "RCTImage-tvOS"; - }; - 3DAD3E871DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A28471D9B043800D4039D; - remoteInfo = "RCTLinking-tvOS"; - }; - 3DAD3E8B1DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A28541D9B044C00D4039D; - remoteInfo = "RCTNetwork-tvOS"; - }; - 3DAD3E8F1DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A28611D9B046600D4039D; - remoteInfo = "RCTSettings-tvOS"; - }; - 3DAD3E931DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A287B1D9B048500D4039D; - remoteInfo = "RCTText-tvOS"; - }; - 3DAD3E981DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A28881D9B049200D4039D; - remoteInfo = "RCTWebSocket-tvOS"; - }; - 3DAD3EA21DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A28131D9B038B00D4039D; - remoteInfo = "React-tvOS"; - }; - 3DAD3EA41DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D3C059A1DE3340900C268FA; - remoteInfo = yoga; - }; - 3DAD3EA61DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D3C06751DE3340C00C268FA; - remoteInfo = "yoga-tvOS"; - }; - 3DAD3EA81DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D3CD9251DE5FBEC00167DC4; - remoteInfo = cxxreact; - }; - 3DAD3EAA1DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D3CD9321DE5FBEE00167DC4; - remoteInfo = "cxxreact-tvOS"; - }; - 3DAD3EAC1DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D3CD90B1DE5FBD600167DC4; - remoteInfo = jschelpers; - }; - 3DAD3EAE1DF850E9000B6D8A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 146833FF1AC3E56700842450 /* React.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 3D3CD9181DE5FBD800167DC4; - remoteInfo = "jschelpers-tvOS"; - }; - 5E9157321DD0AC6500FF2AA8 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTAnimation; - }; - 5E9157341DD0AC6500FF2AA8 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 2D2A28201D9B03D100D4039D; - remoteInfo = "RCTAnimation-tvOS"; - }; - 78C398B81ACF4ADC00677621 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 134814201AA4EA6300B7C361; - remoteInfo = RCTLinking; - }; - 832341B41AAA6A8300B99B32 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 58B5119B1A9E6C1200147676; - remoteInfo = RCTText; - }; - ADBDB9261DFEBF0700ED6528 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */; - proxyType = 2; - remoteGlobalIDString = 358F4ED71D1E81A9004DF814; - remoteInfo = RCTBlob; - }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ 008F07F21AC5B25A0029DE68 /* main.jsbundle */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = main.jsbundle; sourceTree = ""; }; - 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTActionSheet.xcodeproj; path = "../node_modules/react-native/Libraries/ActionSheetIOS/RCTActionSheet.xcodeproj"; sourceTree = ""; }; - 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTGeolocation.xcodeproj; path = "../node_modules/react-native/Libraries/Geolocation/RCTGeolocation.xcodeproj"; sourceTree = ""; }; - 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTImage.xcodeproj; path = "../node_modules/react-native/Libraries/Image/RCTImage.xcodeproj"; sourceTree = ""; }; - 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTNetwork.xcodeproj; path = "../node_modules/react-native/Libraries/Network/RCTNetwork.xcodeproj"; sourceTree = ""; }; - 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTVibration.xcodeproj; path = "../node_modules/react-native/Libraries/Vibration/RCTVibration.xcodeproj"; sourceTree = ""; }; 00E356EE1AD99517003FC87E /* KakaoLoginExampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = KakaoLoginExampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* KakaoLoginExampleTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KakaoLoginExampleTests.m; sourceTree = ""; }; - 0E37DF3D20E27251003A89E8 /* KakaoOpenSDK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = KakaoOpenSDK.framework; sourceTree = ""; }; - 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTSettings.xcodeproj; path = "../node_modules/react-native/Libraries/Settings/RCTSettings.xcodeproj"; sourceTree = ""; }; - 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTWebSocket.xcodeproj; path = "../node_modules/react-native/Libraries/WebSocket/RCTWebSocket.xcodeproj"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* KakaoLoginExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = KakaoLoginExample.app; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = KakaoLoginExample/AppDelegate.h; sourceTree = ""; }; 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = KakaoLoginExample/AppDelegate.m; sourceTree = ""; }; @@ -330,15 +51,22 @@ 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = KakaoLoginExample/Images.xcassets; sourceTree = ""; }; 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = KakaoLoginExample/Info.plist; sourceTree = ""; }; 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = KakaoLoginExample/main.m; sourceTree = ""; }; - 146833FF1AC3E56700842450 /* React.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = React.xcodeproj; path = "../node_modules/react-native/React/React.xcodeproj"; sourceTree = ""; }; + 16B9A5427A380E36BE016B32 /* Pods-KakaoLoginExampleTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExampleTests.release.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExampleTests/Pods-KakaoLoginExampleTests.release.xcconfig"; sourceTree = ""; }; + 18539049C41134D36855F41A /* Pods-KakaoLoginExample-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExample-tvOS.debug.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExample-tvOS/Pods-KakaoLoginExample-tvOS.debug.xcconfig"; sourceTree = ""; }; 2D02E47B1E0B4A5D006451C7 /* KakaoLoginExample-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "KakaoLoginExample-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 2D02E4901E0B4A5D006451C7 /* KakaoLoginExample-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "KakaoLoginExample-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - 39E93003A0E44A33A9ADB969 /* libRNKakaoLogins.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNKakaoLogins.a; sourceTree = ""; }; - 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTAnimation.xcodeproj; path = "../node_modules/react-native/Libraries/NativeAnimation/RCTAnimation.xcodeproj"; sourceTree = ""; }; - 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTLinking.xcodeproj; path = "../node_modules/react-native/Libraries/LinkingIOS/RCTLinking.xcodeproj"; sourceTree = ""; }; - 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTText.xcodeproj; path = "../node_modules/react-native/Libraries/Text/RCTText.xcodeproj"; sourceTree = ""; }; - ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = RCTBlob.xcodeproj; path = "../node_modules/react-native/Libraries/Blob/RCTBlob.xcodeproj"; sourceTree = ""; }; - F2A53257389343EE98B46014 /* RNKakaoLogins.xcodeproj */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "wrapper.pb-project"; name = RNKakaoLogins.xcodeproj; path = "../node_modules/react-native-kakao-logins/ios/RNKakaoLogins.xcodeproj"; sourceTree = ""; }; + 69BF4DDC2C8FDA32FE64BC3E /* libPods-KakaoLoginExample.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-KakaoLoginExample.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6F79FB5BC59E6F62119B24C7 /* Pods-KakaoLoginExampleTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExampleTests.debug.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExampleTests/Pods-KakaoLoginExampleTests.debug.xcconfig"; sourceTree = ""; }; + 7D0DE0C3DDDC0C7B8F761720 /* libPods-KakaoLoginExample-tvOSTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-KakaoLoginExample-tvOSTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + A9AF18054DC2C799F0F4B829 /* libPods-KakaoLoginExampleTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-KakaoLoginExampleTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + AF8CDAD3E80CF5694A83B3E7 /* Pods-KakaoLoginExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExample.release.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExample/Pods-KakaoLoginExample.release.xcconfig"; sourceTree = ""; }; + B1AAED1AF5004432C56C267F /* Pods-KakaoLoginExample-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExample-tvOS.release.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExample-tvOS/Pods-KakaoLoginExample-tvOS.release.xcconfig"; sourceTree = ""; }; + D3B914825B0D9E5DF55357A5 /* libPods-KakaoLoginExample-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-KakaoLoginExample-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + D3D38D18009854D2FE15A13A /* Pods-KakaoLoginExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExample.debug.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExample/Pods-KakaoLoginExample.debug.xcconfig"; sourceTree = ""; }; + DC3E5FC8C852587431AA9F49 /* Pods-KakaoLoginExample-tvOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExample-tvOSTests.debug.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExample-tvOSTests/Pods-KakaoLoginExample-tvOSTests.debug.xcconfig"; sourceTree = ""; }; + ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; + ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; + FE2524B973BFBC587A2DEC26 /* Pods-KakaoLoginExample-tvOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KakaoLoginExample-tvOSTests.release.xcconfig"; path = "Target Support Files/Pods-KakaoLoginExample-tvOSTests/Pods-KakaoLoginExample-tvOSTests.release.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -346,7 +74,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 140ED2AC1D01E1AD002B40FF /* libReact.a in Frameworks */, + 29D1552A54F70936E45C1CBF /* libPods-KakaoLoginExampleTests.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -354,21 +82,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - ADBDB9381DFEBF1600ED6528 /* libRCTBlob.a in Frameworks */, - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */, - 0E37DF6220E27251003A89E8 /* KakaoOpenSDK.framework in Frameworks */, - 146834051AC3E58100842450 /* libReact.a in Frameworks */, - 5E9157361DD0AC6A00FF2AA8 /* libRCTAnimation.a in Frameworks */, - 00C302E51ABCBA2D00DB3ED1 /* libRCTActionSheet.a in Frameworks */, - 00C302E71ABCBA2D00DB3ED1 /* libRCTGeolocation.a in Frameworks */, - 00C302E81ABCBA2D00DB3ED1 /* libRCTImage.a in Frameworks */, - 133E29F31AD74F7200F7D852 /* libRCTLinking.a in Frameworks */, - 00C302E91ABCBA2D00DB3ED1 /* libRCTNetwork.a in Frameworks */, - 139105C61AF99C1200B5F7CC /* libRCTSettings.a in Frameworks */, - 832341BD1AAA6AB300B99B32 /* libRCTText.a in Frameworks */, - 00C302EA1ABCBA2D00DB3ED1 /* libRCTVibration.a in Frameworks */, - 139FDEF61B0652A700C62182 /* libRCTWebSocket.a in Frameworks */, - 56D8264709DB489480D346EA /* libRNKakaoLogins.a in Frameworks */, + 24F9A6E276C45F97DEE83DA2 /* libPods-KakaoLoginExample.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -376,14 +90,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 2D02E4C91E0B4AEC006451C7 /* libReact.a in Frameworks */, - 2D02E4C21E0B4AEC006451C7 /* libRCTAnimation.a in Frameworks */, - 2D02E4C31E0B4AEC006451C7 /* libRCTImage-tvOS.a in Frameworks */, - 2D02E4C41E0B4AEC006451C7 /* libRCTLinking-tvOS.a in Frameworks */, - 2D02E4C51E0B4AEC006451C7 /* libRCTNetwork-tvOS.a in Frameworks */, - 2D02E4C61E0B4AEC006451C7 /* libRCTSettings-tvOS.a in Frameworks */, - 2D02E4C71E0B4AEC006451C7 /* libRCTText-tvOS.a in Frameworks */, - 2D02E4C81E0B4AEC006451C7 /* libRCTWebSocket-tvOS.a in Frameworks */, + 5CB5AC448003012861156FBA /* libPods-KakaoLoginExample-tvOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -391,54 +98,13 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 756F50E399929481F5164019 /* libPods-KakaoLoginExample-tvOSTests.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 00C302A81ABCB8CE00DB3ED1 /* Products */ = { - isa = PBXGroup; - children = ( - 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */, - ); - name = Products; - sourceTree = ""; - }; - 00C302B61ABCB90400DB3ED1 /* Products */ = { - isa = PBXGroup; - children = ( - 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */, - ); - name = Products; - sourceTree = ""; - }; - 00C302BC1ABCB91800DB3ED1 /* Products */ = { - isa = PBXGroup; - children = ( - 00C302C01ABCB91800DB3ED1 /* libRCTImage.a */, - 3DAD3E841DF850E9000B6D8A /* libRCTImage-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; - 00C302D41ABCB9D200DB3ED1 /* Products */ = { - isa = PBXGroup; - children = ( - 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */, - 3DAD3E8C1DF850E9000B6D8A /* libRCTNetwork-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; - 00C302E01ABCB9EE00DB3ED1 /* Products */ = { - isa = PBXGroup; - children = ( - 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */, - ); - name = Products; - sourceTree = ""; - }; 00E356EF1AD99517003FC87E /* KakaoLoginExampleTests */ = { isa = PBXGroup; children = ( @@ -456,48 +122,19 @@ name = "Supporting Files"; sourceTree = ""; }; - 0E29C02720C58AAD00F03D0A /* Recovered References */ = { + 0E3841F6D27A4EC6F4154E4F /* Pods */ = { isa = PBXGroup; children = ( - 39E93003A0E44A33A9ADB969 /* libRNKakaoLogins.a */, - ); - name = "Recovered References"; - sourceTree = ""; - }; - 0E29C04320C58AAD00F03D0A /* Products */ = { - isa = PBXGroup; - children = ( - 0E29C04720C58AAD00F03D0A /* libRNKakaoLogins.a */, - ); - name = Products; - sourceTree = ""; - }; - 0E7AC4EF20C65D0D00746EC1 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 0E37DF3D20E27251003A89E8 /* KakaoOpenSDK.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - 139105B71AF99BAD00B5F7CC /* Products */ = { - isa = PBXGroup; - children = ( - 139105C11AF99BAD00B5F7CC /* libRCTSettings.a */, - 3DAD3E901DF850E9000B6D8A /* libRCTSettings-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; - 139FDEE71B06529A00C62182 /* Products */ = { - isa = PBXGroup; - children = ( - 139FDEF41B06529B00C62182 /* libRCTWebSocket.a */, - 3DAD3E991DF850E9000B6D8A /* libRCTWebSocket-tvOS.a */, - 0E29C04020C58AAD00F03D0A /* libfishhook.a */, - 0E29C04220C58AAD00F03D0A /* libfishhook-tvOS.a */, - ); - name = Products; + D3D38D18009854D2FE15A13A /* Pods-KakaoLoginExample.debug.xcconfig */, + AF8CDAD3E80CF5694A83B3E7 /* Pods-KakaoLoginExample.release.xcconfig */, + 18539049C41134D36855F41A /* Pods-KakaoLoginExample-tvOS.debug.xcconfig */, + B1AAED1AF5004432C56C267F /* Pods-KakaoLoginExample-tvOS.release.xcconfig */, + DC3E5FC8C852587431AA9F49 /* Pods-KakaoLoginExample-tvOSTests.debug.xcconfig */, + FE2524B973BFBC587A2DEC26 /* Pods-KakaoLoginExample-tvOSTests.release.xcconfig */, + 6F79FB5BC59E6F62119B24C7 /* Pods-KakaoLoginExampleTests.debug.xcconfig */, + 16B9A5427A380E36BE016B32 /* Pods-KakaoLoginExampleTests.release.xcconfig */, + ); + path = Pods; sourceTree = ""; }; 13B07FAE1A68108700A75B9A /* KakaoLoginExample */ = { @@ -514,74 +151,26 @@ name = KakaoLoginExample; sourceTree = ""; }; - 146834001AC3E56700842450 /* Products */ = { - isa = PBXGroup; - children = ( - 146834041AC3E56700842450 /* libReact.a */, - 3DAD3EA31DF850E9000B6D8A /* libReact.a */, - 3DAD3EA51DF850E9000B6D8A /* libyoga.a */, - 3DAD3EA71DF850E9000B6D8A /* libyoga.a */, - 3DAD3EA91DF850E9000B6D8A /* libcxxreact.a */, - 3DAD3EAB1DF850E9000B6D8A /* libcxxreact.a */, - 3DAD3EAD1DF850E9000B6D8A /* libjschelpers.a */, - 3DAD3EAF1DF850E9000B6D8A /* libjschelpers.a */, - 0E7AC51520C65D0D00746EC1 /* libthird-party.a */, - 0E7AC51720C65D0D00746EC1 /* libthird-party.a */, - 0E7AC51920C65D0D00746EC1 /* libdouble-conversion.a */, - 0E7AC51B20C65D0D00746EC1 /* libdouble-conversion.a */, - 0E7AC51D20C65D0D00746EC1 /* libprivatedata.a */, - 0E7AC51F20C65D0D00746EC1 /* libprivatedata-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; - 5E91572E1DD0AC6500FF2AA8 /* Products */ = { - isa = PBXGroup; - children = ( - 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */, - 5E9157351DD0AC6500FF2AA8 /* libRCTAnimation.a */, - ); - name = Products; - sourceTree = ""; - }; - 78C398B11ACF4ADC00677621 /* Products */ = { + 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { isa = PBXGroup; children = ( - 78C398B91ACF4ADC00677621 /* libRCTLinking.a */, - 3DAD3E881DF850E9000B6D8A /* libRCTLinking-tvOS.a */, + ED297162215061F000B7C4FE /* JavaScriptCore.framework */, + ED2971642150620600B7C4FE /* JavaScriptCore.framework */, + 69BF4DDC2C8FDA32FE64BC3E /* libPods-KakaoLoginExample.a */, + D3B914825B0D9E5DF55357A5 /* libPods-KakaoLoginExample-tvOS.a */, + 7D0DE0C3DDDC0C7B8F761720 /* libPods-KakaoLoginExample-tvOSTests.a */, + A9AF18054DC2C799F0F4B829 /* libPods-KakaoLoginExampleTests.a */, ); - name = Products; + name = Frameworks; sourceTree = ""; }; 832341AE1AAA6A7D00B99B32 /* Libraries */ = { isa = PBXGroup; children = ( - 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */, - 146833FF1AC3E56700842450 /* React.xcodeproj */, - 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */, - ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */, - 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */, - 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */, - 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */, - 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */, - 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */, - 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */, - 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */, - 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */, - F2A53257389343EE98B46014 /* RNKakaoLogins.xcodeproj */, ); name = Libraries; sourceTree = ""; }; - 832341B11AAA6A8300B99B32 /* Products */ = { - isa = PBXGroup; - children = ( - 832341B51AAA6A8300B99B32 /* libRCTText.a */, - 3DAD3E941DF850E9000B6D8A /* libRCTText-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; 83CBB9F61A601CBA00E9B192 = { isa = PBXGroup; children = ( @@ -589,8 +178,8 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */, 00E356EF1AD99517003FC87E /* KakaoLoginExampleTests */, 83CBBA001A601CBA00E9B192 /* Products */, - 0E29C02720C58AAD00F03D0A /* Recovered References */, - 0E7AC4EF20C65D0D00746EC1 /* Frameworks */, + 2D16E6871FA4F8E400B85C8A /* Frameworks */, + 0E3841F6D27A4EC6F4154E4F /* Pods */, ); indentWidth = 2; sourceTree = ""; @@ -608,15 +197,6 @@ name = Products; sourceTree = ""; }; - ADBDB9201DFEBF0600ED6528 /* Products */ = { - isa = PBXGroup; - children = ( - ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */, - 0E29C02E20C58AAD00F03D0A /* libRCTBlob-tvOS.a */, - ); - name = Products; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -624,6 +204,7 @@ isa = PBXNativeTarget; buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "KakaoLoginExampleTests" */; buildPhases = ( + 97C114D8163AC33F621C7CD8 /* [CP] Check Pods Manifest.lock */, 00E356EA1AD99517003FC87E /* Sources */, 00E356EB1AD99517003FC87E /* Frameworks */, 00E356EC1AD99517003FC87E /* Resources */, @@ -642,6 +223,8 @@ isa = PBXNativeTarget; buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "KakaoLoginExample" */; buildPhases = ( + BE97AC82ED43CAD911EDED8F /* [CP] Check Pods Manifest.lock */, + FD10A7F022414F080027D42C /* Start Packager */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, @@ -652,7 +235,7 @@ dependencies = ( ); name = KakaoLoginExample; - productName = "Hello World"; + productName = KakaoLoginExample; productReference = 13B07F961A680F5B00A75B9A /* KakaoLoginExample.app */; productType = "com.apple.product-type.application"; }; @@ -660,6 +243,8 @@ isa = PBXNativeTarget; buildConfigurationList = 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "KakaoLoginExample-tvOS" */; buildPhases = ( + 4ED5C86F6A308D9186C081D6 /* [CP] Check Pods Manifest.lock */, + FD10A7F122414F3F0027D42C /* Start Packager */, 2D02E4771E0B4A5D006451C7 /* Sources */, 2D02E4781E0B4A5D006451C7 /* Frameworks */, 2D02E4791E0B4A5D006451C7 /* Resources */, @@ -678,6 +263,7 @@ isa = PBXNativeTarget; buildConfigurationList = 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "KakaoLoginExample-tvOSTests" */; buildPhases = ( + BD0D75E244CA4A43EAFD607D /* [CP] Check Pods Manifest.lock */, 2D02E48C1E0B4A5D006451C7 /* Sources */, 2D02E48D1E0B4A5D006451C7 /* Frameworks */, 2D02E48E1E0B4A5D006451C7 /* Resources */, @@ -698,7 +284,7 @@ 83CBB9F71A601CBA00E9B192 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 610; + LastUpgradeCheck = 0940; ORGANIZATIONNAME = Facebook; TargetAttributes = { 00E356ED1AD99517003FC87E = { @@ -721,66 +307,13 @@ developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( + English, en, Base, ); mainGroup = 83CBB9F61A601CBA00E9B192; productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; projectDirPath = ""; - projectReferences = ( - { - ProductGroup = 00C302A81ABCB8CE00DB3ED1 /* Products */; - ProjectRef = 00C302A71ABCB8CE00DB3ED1 /* RCTActionSheet.xcodeproj */; - }, - { - ProductGroup = 5E91572E1DD0AC6500FF2AA8 /* Products */; - ProjectRef = 5E91572D1DD0AC6500FF2AA8 /* RCTAnimation.xcodeproj */; - }, - { - ProductGroup = ADBDB9201DFEBF0600ED6528 /* Products */; - ProjectRef = ADBDB91F1DFEBF0600ED6528 /* RCTBlob.xcodeproj */; - }, - { - ProductGroup = 00C302B61ABCB90400DB3ED1 /* Products */; - ProjectRef = 00C302B51ABCB90400DB3ED1 /* RCTGeolocation.xcodeproj */; - }, - { - ProductGroup = 00C302BC1ABCB91800DB3ED1 /* Products */; - ProjectRef = 00C302BB1ABCB91800DB3ED1 /* RCTImage.xcodeproj */; - }, - { - ProductGroup = 78C398B11ACF4ADC00677621 /* Products */; - ProjectRef = 78C398B01ACF4ADC00677621 /* RCTLinking.xcodeproj */; - }, - { - ProductGroup = 00C302D41ABCB9D200DB3ED1 /* Products */; - ProjectRef = 00C302D31ABCB9D200DB3ED1 /* RCTNetwork.xcodeproj */; - }, - { - ProductGroup = 139105B71AF99BAD00B5F7CC /* Products */; - ProjectRef = 139105B61AF99BAD00B5F7CC /* RCTSettings.xcodeproj */; - }, - { - ProductGroup = 832341B11AAA6A8300B99B32 /* Products */; - ProjectRef = 832341B01AAA6A8300B99B32 /* RCTText.xcodeproj */; - }, - { - ProductGroup = 00C302E01ABCB9EE00DB3ED1 /* Products */; - ProjectRef = 00C302DF1ABCB9EE00DB3ED1 /* RCTVibration.xcodeproj */; - }, - { - ProductGroup = 139FDEE71B06529A00C62182 /* Products */; - ProjectRef = 139FDEE61B06529A00C62182 /* RCTWebSocket.xcodeproj */; - }, - { - ProductGroup = 146834001AC3E56700842450 /* Products */; - ProjectRef = 146833FF1AC3E56700842450 /* React.xcodeproj */; - }, - { - ProductGroup = 0E29C04320C58AAD00F03D0A /* Products */; - ProjectRef = F2A53257389343EE98B46014 /* RNKakaoLogins.xcodeproj */; - }, - ); projectRoot = ""; targets = ( 13B07F861A680F5B00A75B9A /* KakaoLoginExample */, @@ -791,261 +324,6 @@ }; /* End PBXProject section */ -/* Begin PBXReferenceProxy section */ - 00C302AC1ABCB8CE00DB3ED1 /* libRCTActionSheet.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTActionSheet.a; - remoteRef = 00C302AB1ABCB8CE00DB3ED1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 00C302BA1ABCB90400DB3ED1 /* libRCTGeolocation.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTGeolocation.a; - remoteRef = 00C302B91ABCB90400DB3ED1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 00C302C01ABCB91800DB3ED1 /* libRCTImage.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTImage.a; - remoteRef = 00C302BF1ABCB91800DB3ED1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 00C302DC1ABCB9D200DB3ED1 /* libRCTNetwork.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTNetwork.a; - remoteRef = 00C302DB1ABCB9D200DB3ED1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 00C302E41ABCB9EE00DB3ED1 /* libRCTVibration.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTVibration.a; - remoteRef = 00C302E31ABCB9EE00DB3ED1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E29C02E20C58AAD00F03D0A /* libRCTBlob-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTBlob-tvOS.a"; - remoteRef = 0E29C02D20C58AAD00F03D0A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E29C04020C58AAD00F03D0A /* libfishhook.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libfishhook.a; - remoteRef = 0E29C03F20C58AAD00F03D0A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E29C04220C58AAD00F03D0A /* libfishhook-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libfishhook-tvOS.a"; - remoteRef = 0E29C04120C58AAD00F03D0A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E29C04720C58AAD00F03D0A /* libRNKakaoLogins.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRNKakaoLogins.a; - remoteRef = 0E29C04620C58AAD00F03D0A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E7AC51520C65D0D00746EC1 /* libthird-party.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libthird-party.a"; - remoteRef = 0E7AC51420C65D0D00746EC1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E7AC51720C65D0D00746EC1 /* libthird-party.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libthird-party.a"; - remoteRef = 0E7AC51620C65D0D00746EC1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E7AC51920C65D0D00746EC1 /* libdouble-conversion.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libdouble-conversion.a"; - remoteRef = 0E7AC51820C65D0D00746EC1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E7AC51B20C65D0D00746EC1 /* libdouble-conversion.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libdouble-conversion.a"; - remoteRef = 0E7AC51A20C65D0D00746EC1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E7AC51D20C65D0D00746EC1 /* libprivatedata.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libprivatedata.a; - remoteRef = 0E7AC51C20C65D0D00746EC1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 0E7AC51F20C65D0D00746EC1 /* libprivatedata-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libprivatedata-tvOS.a"; - remoteRef = 0E7AC51E20C65D0D00746EC1 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 139105C11AF99BAD00B5F7CC /* libRCTSettings.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTSettings.a; - remoteRef = 139105C01AF99BAD00B5F7CC /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 139FDEF41B06529B00C62182 /* libRCTWebSocket.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTWebSocket.a; - remoteRef = 139FDEF31B06529B00C62182 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 146834041AC3E56700842450 /* libReact.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libReact.a; - remoteRef = 146834031AC3E56700842450 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3E841DF850E9000B6D8A /* libRCTImage-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTImage-tvOS.a"; - remoteRef = 3DAD3E831DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3E881DF850E9000B6D8A /* libRCTLinking-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTLinking-tvOS.a"; - remoteRef = 3DAD3E871DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3E8C1DF850E9000B6D8A /* libRCTNetwork-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTNetwork-tvOS.a"; - remoteRef = 3DAD3E8B1DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3E901DF850E9000B6D8A /* libRCTSettings-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTSettings-tvOS.a"; - remoteRef = 3DAD3E8F1DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3E941DF850E9000B6D8A /* libRCTText-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTText-tvOS.a"; - remoteRef = 3DAD3E931DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3E991DF850E9000B6D8A /* libRCTWebSocket-tvOS.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = "libRCTWebSocket-tvOS.a"; - remoteRef = 3DAD3E981DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3EA31DF850E9000B6D8A /* libReact.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libReact.a; - remoteRef = 3DAD3EA21DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3EA51DF850E9000B6D8A /* libyoga.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libyoga.a; - remoteRef = 3DAD3EA41DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3EA71DF850E9000B6D8A /* libyoga.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libyoga.a; - remoteRef = 3DAD3EA61DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3EA91DF850E9000B6D8A /* libcxxreact.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libcxxreact.a; - remoteRef = 3DAD3EA81DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3EAB1DF850E9000B6D8A /* libcxxreact.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libcxxreact.a; - remoteRef = 3DAD3EAA1DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3EAD1DF850E9000B6D8A /* libjschelpers.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libjschelpers.a; - remoteRef = 3DAD3EAC1DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 3DAD3EAF1DF850E9000B6D8A /* libjschelpers.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libjschelpers.a; - remoteRef = 3DAD3EAE1DF850E9000B6D8A /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 5E9157331DD0AC6500FF2AA8 /* libRCTAnimation.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTAnimation.a; - remoteRef = 5E9157321DD0AC6500FF2AA8 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 5E9157351DD0AC6500FF2AA8 /* libRCTAnimation.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTAnimation.a; - remoteRef = 5E9157341DD0AC6500FF2AA8 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 78C398B91ACF4ADC00677621 /* libRCTLinking.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTLinking.a; - remoteRef = 78C398B81ACF4ADC00677621 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - 832341B51AAA6A8300B99B32 /* libRCTText.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTText.a; - remoteRef = 832341B41AAA6A8300B99B32 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; - ADBDB9271DFEBF0700ED6528 /* libRCTBlob.a */ = { - isa = PBXReferenceProxy; - fileType = archive.ar; - path = libRCTBlob.a; - remoteRef = ADBDB9261DFEBF0700ED6528 /* PBXContainerItemProxy */; - sourceTree = BUILT_PRODUCTS_DIR; - }; -/* End PBXReferenceProxy section */ - /* Begin PBXResourcesBuildPhase section */ 00E356EC1AD99517003FC87E /* Resources */ = { isa = PBXResourcesBuildPhase; @@ -1109,6 +387,132 @@ shellPath = /bin/sh; shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh"; }; + 4ED5C86F6A308D9186C081D6 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-KakaoLoginExample-tvOS-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 97C114D8163AC33F621C7CD8 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-KakaoLoginExampleTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + BD0D75E244CA4A43EAFD607D /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-KakaoLoginExample-tvOSTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + BE97AC82ED43CAD911EDED8F /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-KakaoLoginExample-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + FD10A7F022414F080027D42C /* Start Packager */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Start Packager"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; + showEnvVarsInLog = 0; + }; + FD10A7F122414F3F0027D42C /* Start Packager */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = "Start Packager"; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "export RCT_METRO_PORT=\"${RCT_METRO_PORT:=8081}\"\necho \"export RCT_METRO_PORT=${RCT_METRO_PORT}\" > \"${SRCROOT}/../node_modules/react-native/scripts/.packager.env\"\nif [ -z \"${RCT_NO_LAUNCH_PACKAGER+xxx}\" ] ; then\n if nc -w 5 -z localhost ${RCT_METRO_PORT} ; then\n if ! curl -s \"http://localhost:${RCT_METRO_PORT}/status\" | grep -q \"packager-status:running\" ; then\n echo \"Port ${RCT_METRO_PORT} already in use, packager is either not running or not running correctly\"\n exit 2\n fi\n else\n open \"$SRCROOT/../node_modules/react-native/scripts/launchPackager.command\" || echo \"Can't start packager automatically\"\n fi\nfi\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -1176,27 +580,22 @@ /* Begin XCBuildConfiguration section */ 00E356F61AD99517003FC87E /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 6F79FB5BC59E6F62119B24C7 /* Pods-KakaoLoginExampleTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", ); - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/**", - ); INFOPLIST_FILE = KakaoLoginExampleTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/$(TARGET_NAME)\"", - ); OTHER_LDFLAGS = ( "-ObjC", "-lc++", + "$(inherited)", ); + PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/KakaoLoginExample.app/KakaoLoginExample"; }; @@ -1204,24 +603,19 @@ }; 00E356F71AD99517003FC87E /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 16B9A5427A380E36BE016B32 /* Pods-KakaoLoginExampleTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; COPY_PHASE_STRIP = NO; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/**", - ); INFOPLIST_FILE = KakaoLoginExampleTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/$(TARGET_NAME)\"", - ); OTHER_LDFLAGS = ( "-ObjC", "-lc++", + "$(inherited)", ); + PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/KakaoLoginExample.app/KakaoLoginExample"; }; @@ -1229,27 +623,19 @@ }; 13B07F941A680F5B00A75B9A /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = D3D38D18009854D2FE15A13A /* Pods-KakaoLoginExample.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CURRENT_PROJECT_VERSION = 1; DEAD_CODE_STRIPPING = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)", - ); - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/**", - ); INFOPLIST_FILE = KakaoLoginExample/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", "-lc++", - "-all_load", ); - PRODUCT_BUNDLE_IDENTIFIER = com.dooboolab.test; + PRODUCT_BUNDLE_IDENTIFIER = org.rn.seoul.kakao.logins; PRODUCT_NAME = KakaoLoginExample; VERSIONING_SYSTEM = "apple-generic"; }; @@ -1257,26 +643,18 @@ }; 13B07F951A680F5B00A75B9A /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = AF8CDAD3E80CF5694A83B3E7 /* Pods-KakaoLoginExample.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CURRENT_PROJECT_VERSION = 1; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)", - ); - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/**", - ); INFOPLIST_FILE = KakaoLoginExample/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", "-lc++", - "-all_load", ); - PRODUCT_BUNDLE_IDENTIFIER = com.dooboolab.test; + PRODUCT_BUNDLE_IDENTIFIER = org.rn.seoul.kakao.logins; PRODUCT_NAME = KakaoLoginExample; VERSIONING_SYSTEM = "apple-generic"; }; @@ -1284,6 +662,7 @@ }; 2D02E4971E0B4A5E006451C7 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 18539049C41134D36855F41A /* Pods-KakaoLoginExample-tvOS.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; @@ -1294,17 +673,10 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_TESTABILITY = YES; GCC_NO_COMMON_BLOCKS = YES; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/**", - ); INFOPLIST_FILE = "KakaoLoginExample-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/$(TARGET_NAME)\"", - ); OTHER_LDFLAGS = ( + "$(inherited)", "-ObjC", "-lc++", ); @@ -1318,6 +690,7 @@ }; 2D02E4981E0B4A5E006451C7 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = B1AAED1AF5004432C56C267F /* Pods-KakaoLoginExample-tvOS.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; @@ -1328,17 +701,10 @@ COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_NO_COMMON_BLOCKS = YES; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/**", - ); INFOPLIST_FILE = "KakaoLoginExample-tvOS/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/$(TARGET_NAME)\"", - ); OTHER_LDFLAGS = ( + "$(inherited)", "-ObjC", "-lc++", ); @@ -1352,6 +718,7 @@ }; 2D02E4991E0B4A5E006451C7 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = DC3E5FC8C852587431AA9F49 /* Pods-KakaoLoginExample-tvOSTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; @@ -1363,9 +730,10 @@ GCC_NO_COMMON_BLOCKS = YES; INFOPLIST_FILE = "KakaoLoginExample-tvOSTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( + OTHER_LDFLAGS = ( "$(inherited)", - "\"$(SRCROOT)/$(TARGET_NAME)\"", + "-ObjC", + "-lc++", ); PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.KakaoLoginExample-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1377,6 +745,7 @@ }; 2D02E49A1E0B4A5E006451C7 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = FE2524B973BFBC587A2DEC26 /* Pods-KakaoLoginExample-tvOSTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; @@ -1388,9 +757,10 @@ GCC_NO_COMMON_BLOCKS = YES; INFOPLIST_FILE = "KakaoLoginExample-tvOSTests/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - LIBRARY_SEARCH_PATHS = ( + OTHER_LDFLAGS = ( "$(inherited)", - "\"$(SRCROOT)/$(TARGET_NAME)\"", + "-ObjC", + "-lc++", ); PRODUCT_BUNDLE_IDENTIFIER = "com.facebook.REACT.KakaoLoginExample-tvOSTests"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1408,20 +778,32 @@ CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -1434,7 +816,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -1449,13 +831,23 @@ CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; @@ -1463,13 +855,14 @@ ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; VALIDATE_PRODUCT = YES; diff --git a/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/xcshareddata/xcschemes/KakaoLoginExample-tvOS.xcscheme b/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/xcshareddata/xcschemes/KakaoLoginExample-tvOS.xcscheme index c61f1ee..45ce424 100644 --- a/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/xcshareddata/xcschemes/KakaoLoginExample-tvOS.xcscheme +++ b/KakaoLoginExample/ios/KakaoLoginExample.xcodeproj/xcshareddata/xcschemes/KakaoLoginExample-tvOS.xcscheme @@ -1,6 +1,6 @@ + + + + + + diff --git a/KakaoLoginExample/ios/KakaoLoginExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/KakaoLoginExample/ios/KakaoLoginExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/KakaoLoginExample/ios/KakaoLoginExample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.h b/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.h index a9654d5..2726d5e 100644 --- a/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.h +++ b/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.h @@ -1,15 +1,14 @@ /** - * Copyright (c) 2015-present, Facebook, Inc. - * All rights reserved. + * Copyright (c) Facebook, Inc. and its affiliates. * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. */ +#import #import -@interface AppDelegate : UIResponder +@interface AppDelegate : UIResponder @property (nonatomic, strong) UIWindow *window; diff --git a/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.m b/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.m index 58d149e..a810c3a 100644 --- a/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.m +++ b/KakaoLoginExample/ios/KakaoLoginExample/AppDelegate.m @@ -1,29 +1,26 @@ /** - * Copyright (c) 2015-present, Facebook, Inc. - * All rights reserved. + * Copyright (c) Facebook, Inc. and its affiliates. * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. */ #import "AppDelegate.h" +#import #import #import +#import @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - NSURL *jsCodeLocation; + RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions]; + RCTRootView *rootView = [[RCTRootView alloc] initWithBridge:bridge + moduleName:@"KakaoLoginExample" + initialProperties:nil]; - jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil]; - - RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation - moduleName:@"KakaoLoginExample" - initialProperties:nil - launchOptions:launchOptions]; rootView.backgroundColor = [[UIColor alloc] initWithRed:1.0f green:1.0f blue:1.0f alpha:1]; self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; @@ -34,4 +31,36 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( return YES; } +- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge +{ +#if DEBUG + return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil]; +#else + return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; +#endif +} + +- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url + sourceApplication:(NSString *)sourceApplication + annotation:(id)annotation { + if ([KOSession isKakaoAccountLoginCallback:url]) { + return [KOSession handleOpenURL:url]; + } + + return false; +} + +- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url + options:(NSDictionary *)options { + if ([KOSession isKakaoAccountLoginCallback:url]) { + return [KOSession handleOpenURL:url]; + } + + return false; +} + +- (void)applicationDidBecomeActive:(UIApplication *)application +{ + [KOSession handleDidBecomeActive]; +} @end diff --git a/KakaoLoginExample/ios/KakaoLoginExample/Info.plist b/KakaoLoginExample/ios/KakaoLoginExample/Info.plist index 9794cd8..99c2a7b 100644 --- a/KakaoLoginExample/ios/KakaoLoginExample/Info.plist +++ b/KakaoLoginExample/ios/KakaoLoginExample/Info.plist @@ -27,14 +27,14 @@ Editor CFBundleURLSchemes - kakaof25af6b78693a6f92ecd5cf91b9afb34 + kakaoa166c2caca4cc21f9268a40a29f5a645 CFBundleVersion 1 KAKAO_APP_KEY - f25af6b78693a6f92ecd5cf91b9afb34 + a166c2caca4cc21f9268a40a29f5a645 LSApplicationQueriesSchemes kakao0123456789abcdefghijklmn @@ -49,6 +49,8 @@ NSAppTransportSecurity + NSAllowsArbitraryLoads + NSExceptionDomains localhost diff --git a/KakaoLoginExample/ios/KakaoLoginExample/main.m b/KakaoLoginExample/ios/KakaoLoginExample/main.m index 3d767fc..c316cf8 100644 --- a/KakaoLoginExample/ios/KakaoLoginExample/main.m +++ b/KakaoLoginExample/ios/KakaoLoginExample/main.m @@ -1,10 +1,8 @@ /** - * Copyright (c) 2015-present, Facebook, Inc. - * All rights reserved. + * Copyright (c) Facebook, Inc. and its affiliates. * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. */ #import diff --git a/KakaoLoginExample/ios/KakaoLoginExampleTests/Info.plist b/KakaoLoginExample/ios/KakaoLoginExampleTests/Info.plist index 886825c..ba72822 100644 --- a/KakaoLoginExample/ios/KakaoLoginExampleTests/Info.plist +++ b/KakaoLoginExample/ios/KakaoLoginExampleTests/Info.plist @@ -7,7 +7,7 @@ CFBundleExecutable $(EXECUTABLE_NAME) CFBundleIdentifier - org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) + $(PRODUCT_BUNDLE_IDENTIFIER) CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/KakaoLoginExample/ios/KakaoLoginExampleTests/KakaoLoginExampleTests.m b/KakaoLoginExample/ios/KakaoLoginExampleTests/KakaoLoginExampleTests.m index 307c15f..7d25090 100644 --- a/KakaoLoginExample/ios/KakaoLoginExampleTests/KakaoLoginExampleTests.m +++ b/KakaoLoginExample/ios/KakaoLoginExampleTests/KakaoLoginExampleTests.m @@ -1,10 +1,8 @@ /** - * Copyright (c) 2015-present, Facebook, Inc. - * All rights reserved. + * Copyright (c) Facebook, Inc. and its affiliates. * - * This source code is licensed under the BSD-style license found in the - * LICENSE file in the root directory of this source tree. An additional grant - * of patent rights can be found in the PATENTS file in the same directory. + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. */ #import diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Headers b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Headers deleted file mode 120000 index 4ef7404..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Headers +++ /dev/null @@ -1 +0,0 @@ -./Versions/Current/Headers \ No newline at end of file diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/KakaoOpenSDK b/KakaoLoginExample/ios/KakaoOpenSDK.framework/KakaoOpenSDK deleted file mode 120000 index c0e6250..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/KakaoOpenSDK +++ /dev/null @@ -1 +0,0 @@ -./Versions/Current/Resources/KakaoOpenSDK \ No newline at end of file diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Resources b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Resources deleted file mode 120000 index 3d2dc19..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -./Versions/Current/Resources \ No newline at end of file diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAccessTokenInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAccessTokenInfo.h deleted file mode 100644 index 30c8ad2..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAccessTokenInfo.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAccessTokenInfo.h - access token의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOAccessTokenInfo - @discussion access token의 정보를 담고 있는 구조체. - */ -@interface KOAccessTokenInfo : NSObject - -/*! - @property ID - @abstract 해당 access token에 해당되는 사용자의 ID - */ -@property(nonatomic, readonly) NSNumber *ID; - -/*! - @property expiresInMillis - @abstract 해당 access token의 남은 만료시간. 0보다 큰 milli-second가 반환됨. - */ -@property(nonatomic, readonly) NSNumber *expiresInMillis; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAgeAuthQueryStringBuilder.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAgeAuthQueryStringBuilder.h deleted file mode 100644 index 041a9af..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAgeAuthQueryStringBuilder.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAgeAuthQueryStringBuilder.h - @abstract 연령인증시 필요한 파라미터입니다. - */ - -#ifndef KOAgeAuthQueryStringBuilder_h -#define KOAgeAuthQueryStringBuilder_h - -#import "KOSession.h" - -/*! - @class KOAgeAuthQueryStringBuilder - @abstract 연령인증시 필요한 파라미터를 Builder pattern 을 이용해서 세팅한다. - */ -@interface KOAgeAuthQueryStringBuilder : NSObject - -/*! - @property level - @abstract 연령 인증 레벨 - */ -@property (nonatomic) KOAgeAuthLevel level; - -/*! - @property limit - @abstract 연령 인증 제한 나이 - */ -@property (nonatomic) KOAgeAuthLimit limit; - -/*! - @property isWesternAge - @abstract 나이의 기준이 한국식인지 외국식인지의 여부(optional, default false) - */ -@property (nonatomic) BOOL isWesternAge; - -/*! - @property isSkipTerm - @abstract 동의하기 안내화면 skip 여부(optional, default false) - */ -@property (nonatomic) BOOL isSkipTerm; // 동의하기 안내화면 skip 여부. - -/*! - @property authFrom - @abstract 서비스 이름(optional, client_id or app_id or service_name) - */ -@property (nonatomic, copy) NSString *authFrom; - -- (NSString *) build; - -@end - -#endif /* KOAgeAuthQueryStringBuilder_h */ diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAppFriend.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAppFriend.h deleted file mode 100644 index 959cfea..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOAppFriend.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface KOAppFriend : NSObject - -/*! - * @property ID - * @abstract 친구의 사용자 아이디 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property nickname - * @abstract 친구의 닉네임 - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; - -- (NSDictionary *)dictionary; -+ (instancetype)appFriendWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOBaseContext.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOBaseContext.h deleted file mode 100644 index 4d831b8..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOBaseContext.h +++ /dev/null @@ -1,103 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOBaseContext.h - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context를 정의한다. - */ -#import - -/*! - @abstract KOOrdering 정렬 정보. - @constant KOOrderingAscending 오름차순 정렬. - @constant KOOrderingDescending 내림차순 정렬. - */ -typedef NS_ENUM(NSInteger, KOOrdering) { - KOOrderingAscending = 0, - KOOrderingDescending = 1 -}; - -extern NSString* convertOrderingString(KOOrdering type); - -/*! - @class KOBaseContext - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context. - */ -@interface KOBaseContext : NSObject - -/*! - @property secureResource - @abstract 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - */ -@property (nonatomic, readonly) BOOL secureResource; - -/*! - @property limit - @abstract 요청 시 제한하는 친구의 수. - */ -@property (nonatomic, readonly) NSInteger limit; - -/*! - @property ordering - @abstract 정렬 방법. - */ -@property (nonatomic, readonly) KOOrdering ordering; - -/*! - @property totalCount - @abstract 목록의 전체 수. - */ -@property (nonatomic, readonly) NSNumber *totalCount; - -/*! - @property beforeURL - @abstract 이전 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *beforeURL; - -/*! - @property afterURL - @abstract 이후 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *afterURL; - -/*! - @property hasMoreItems - @abstract 이후 페이지 목록이 존재하는지의 여부. - */ -@property (nonatomic, readonly) BOOL hasMoreItems; - -/*! - @property contextID - @abstract 현재 요청에 대한 식별자 - */ -@property (nonatomic, readonly) NSString *contextID; - -+ (instancetype)context; -+ (instancetype)contextWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -+ (instancetype)contextWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -- (void)parseDictionary:(NSDictionary *)dictionary; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOChat.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOChat.h deleted file mode 100644 index b294173..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOChat.h +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -/*! - @header KOChat.h - @abstract 카카오톡 내의 채팅방을 나타내는 정보. - */ - -/*! - @class KOChat - @abstract 카카오톡 내의 채팅방을 나타내는 정보 구조체. - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜. - */ -@interface KOChat : NSObject - -/*! - @property ID - @abstract 카카오톡 채팅방 ID. - */ -@property (nonatomic, readonly) NSNumber *ID; - -/*! - @property title - @abstract 카카오톡 채팅방 Title. - */ -@property (nonatomic, readonly) NSString *title; - -/*! - @property thumbnailURL - @abstract 카카오톡 채팅방 썸네일 이미지 URL. - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property memberCount - @abstract 카카오톡 채팅방 참여자의 수. - */ -@property (nonatomic, readonly) NSNumber *memberCount; - -/*! - @property displayMemberImages - @abstract 이미지가 존재하는 카카오톡 채팅방 멤버들의 썸네일 이미지 URL List. (최대 5대 까지) - */ -@property (nonatomic, readonly) NSArray *displayMemberImages; - -/*! - @property chatType - @abstract 카카오톡 채팅방의 종류(오픈채팅(open), 일반채팅(regular)). - */ -@property (nonatomic, readonly) NSString *chatType; - -@property (nonatomic, readonly) NSArray *memberImageURLs DEPRECATED_MSG_ATTRIBUTE("Use 'displayMemberImages' property."); - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOChatContext.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOChatContext.h deleted file mode 100644 index a94f400..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOChatContext.h +++ /dev/null @@ -1,122 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOChatContext.h - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -DEPRECATED_MSG_ATTRIBUTE("Use 'KOChatFilters' enum.") -typedef NS_ENUM(NSInteger, KOChatType) { - KOChatTypeGroup = 0 -}; - -extern NSString* convertChatTypeString(KOChatType type) DEPRECATED_ATTRIBUTE; - -/*! - @abstract KOChatFilter 챗목록 필터링 옵션들. - @constant KOChatFilterNone 필터링 하지 않는다 (서버에서 내려주는 목록을 그대로 결과로 받는다). - @constant KOChatFilterDirect 1:1 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterMulti 그룹 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterRegular 일반 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterOpen 오픈 채팅방만 필터링하여 결과에 포함시킨다. - */ -typedef NS_ENUM(NSInteger, KOChatFilters) { - KOChatFilterNone = 0, - KOChatFilterDirect = 1, - KOChatFilterMulti = 1 << 1, - KOChatFilterRegular = 1 << 2, - KOChatFilterOpen = 1 << 3 -}; - -NSString* convertChatFilterString(KOChatFilters filters); - -/*! - @class KOChatContext - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOChatContext : KOBaseContext - -/*! - @property chatFilters - @abstract 챗리스트 필터링 옵션. - */ -@property (nonatomic, readonly) KOChatFilters chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - - - -@property (nonatomic, readonly) KOChatType chatType DEPRECATED_MSG_ATTRIBUTE("Use 'chatFilters' property."); - -- (instancetype)initWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'initWithChatFilters:secureResource:limit:ordering:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:limit:ordering:' method."); - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOError.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOError.h deleted file mode 100644 index 28585dd..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOError.h +++ /dev/null @@ -1,131 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOError.h - KakaoOpenSDK 를 통해 카카오계정을 인증하거나 API를 호출할 때 발생하는 오류들을 정의합니다. - */ -#import - -extern NSString *const KOErrorDomain; - -/*! - @abstract 오류 코드 정의 - @constant KOErrorUnknown 알 수 없는 오류 - @constant KOErrorCancelled 오퍼레이션 취소를 나타냄 - @constant KOErrorOperationInProgress 오퍼레이션이 진행 중간에 있음을 나타냄 - @constant KOErrorTokenNotFound 로그인 상태를 기대하는 상황에서 인증 토큰이 없는 오류 - @constant KOErrorDeactivatedSession 세션이 만료된(access_token, refresh_token이 모두 만료된 경우) 상태 - @constant KOErrorAlreadyLoginedUser 로그인 된 상태(access_token, refresh_token이 존재 하는 경우)에서 다시 로그인 하려고 할때 발생하는 오류 - @constant KOErrorBadResponse 요청에 대한 응답에 기대하는 값이 없거나 문제가 있음 - @constant KOErrorNetworkError 네트워크 오류 - @constant KOErrorHTTP http 프로토콜 오류 - @constant KOErrorNotSupported 지원하지 않는 기능 - @constant KOErrorBadParameter 파라미터 이상 - @constant KOErrorIllegalState 작업을 실행하기에 적절하지 않은 상태 - @constant KOServerErrorUnknown 일반적인 서버 오류 응답. message를 확인해야 함 - @constant KOServerErrorBadParameter 파라미터 이상 - @constant KOServerErrorUnSupportedApi 지원되지 않은 API 호출 - @constant KOServerErrorBlocked 계정 제재 또는 특정 서비스에서 해당 사용자의 제재로 인해 API 호출이 금지된 경우 - @constant KOServerErrorPermission 해당 API에 대한 권한/퍼미션이 없는 경우 - @constant KOServerErrorMisConfigured 개발환경 설정 오류 (bundle id 등) - @constant KOServerErrorInternal 내부 서버 오류 - @constant KOServerErrorApiLimitExceed API 호출 횟수가 제한을 초과 - @constant KOServerErrorNotSignedUpUser 미가입(가가입) 사용자 - @constant KOServerErrorAlreadySignedUpUser 이미 가입된 사용자. 가입된 사용자에 대해 다시 가입 요청(앱 연결 요청)을 한 경우 - @constant KOServerErrorNotKakaoAccountUser 카카오계정 유저가 아닐때 - @constant KOServerErrorInvalidUserPropertyKey 등록되지 않은 user property key - @constant KOServerErrorNoSuchApp 존재하지 않는 앱 - @constant KOServerErrorInvalidAccessToken access_token이 비정상적이거나 만료된 경우 - @constant KOServerErrorInsufficientScope 해당 API에 대한 사용자의 동의 퍼미션이 없는 경우 - @constant KOServerErrorNotAgeAuthorized 연령인증이 필요한 경우 - @constant KOServerErrorLowerAgeLimit 현재 앱의 연령제한보다 사용자의 연령이 낮은 경우 - @constant KOServerErrorAlreadyAgeAuthorized 이미 연령인증이 완료된 경우 - @constant KOServerErrorAgeCheckLimitExceed 연령인증 최대 횟수를 초과한 경우 - @constant KOServerErrorAgeResultMismatched 이전에 인증했던 정보와 불일치 한 경우 - @constant KOServerErrorCIResultMismatched CI 정보가 불일치 할 경우 - @constant KOServerErrorNotTalkUser 카카오톡 유저가 아닐때 - @constant KOServerErrorUserDeviceUnsupported 유저 디바이스가 해당 기능을 지원하지 않는 경우 - @constant KOServerErrorTalkMessageDisabled 받는이가 메시지 수신 거부를 설정한 경우 - @constant KOServerErrorTalkSendMessageMonthlyLimitExceed 한명이 특정앱에 대해 특정인에게 보낼 수 있는 한달 쿼터 초과시 발생 - @constant KOServerErrorTalkSendMessageDailyLimitExceed 한명이 특정앱에 대해 보낼 수 있는 하루 쿼터(받는 사람 관계없이) 초과시 발생 - @constant KOServerErrorNotStoryUser 카카오스토리 유저가 아닐때 - @constant KOServerErrorStoryImageUploadSizeExceed 카카오스토리 이미지 업로드 사이즈 제한 초과 - @constant KOServerErrorStoryUploadTimeout 카카오스토리 이미지 업로드시 타임아웃 - @constant KOServerErrorStoryInvalidScrapUrl 카카오스토리 스크랩시 잘못된 스크랩 URL로 호출할 경우 - @constant KOServerErrorStoryInvalidPostId 카카오스토리의 내정보 요청시 잘못된 내스토리 아이디(포스트 아이디)로 호출할 경우 - @constant KOServerErrorStoryMaxUploadNumberExceed 카카오스토리 이미지 업로드시 허용된 업로드 파일 수가 넘을 경우 - @constant KOServerErrorPushNotExistPushToken 존재하지 않는 푸시 토큰으로 푸시 전송을 하였을 경우 - @constant KOServerErrorUnderMaintenance 서버 점검중 - */ -typedef enum { - KOErrorUnknown = 1, - KOErrorCancelled = 2, - KOErrorOperationInProgress = 3, - KOErrorTokenNotFound = 4, - KOErrorDeactivatedSession = 5, - KOErrorAlreadyLoginedUser = 6, - KOErrorBadResponse = 7, - KOErrorNetworkError = 8, - KOErrorHTTP = 9, - KOErrorNotSupported = 10, - KOErrorBadParameter = 11, - KOErrorIllegalState = 14, - - KOServerErrorUnknown = -1, - KOServerErrorBadParameter = -2, - KOServerErrorUnSupportedApi = -3, - KOServerErrorBlocked = -4, - KOServerErrorPermission = -5, - KOServerErrorMisConfigured = -6, - KOServerErrorInternal = -9, - KOServerErrorApiLimitExceed = -10, - - KOServerErrorNotSignedUpUser = -101, - KOServerErrorAlreadySignedUpUser = -102, - KOServerErrorNotKakaoAccountUser = -103, - - KOServerErrorInvalidUserPropertyKey = -201, - - KOServerErrorNoSuchApp = -301, - - KOServerErrorInvalidAccessToken = -401, - KOServerErrorInsufficientScope = -402, - KOServerErrorNotAgeAuthorized = -450, - KOServerErrorLowerAgeLimit = -451, - KOServerErrorAlreadyAgeAuthorized = -452, - KOServerErrorAgeCheckLimitExceed = -453, - KOServerErrorAgeResultMismatched = -480, - KOServerErrorCIResultMismatched = -481, - - KOServerErrorNotTalkUser = -501, - KOServerErrorUserDeviceUnsupported = -504, - KOServerErrorTalkMessageDisabled = -530, - KOServerErrorTalkSendMessageMonthlyLimitExceed = -531, - KOServerErrorTalkSendMessageDailyLimitExceed = -532, - - KOServerErrorNotStoryUser = -601, - KOServerErrorStoryImageUploadSizeExceed = -602, - KOServerErrorStoryUploadTimeout = -603, - KOServerErrorStoryInvalidScrapUrl = -604, - KOServerErrorStoryInvalidPostId = -605, - KOServerErrorStoryMaxUploadNumberExceed = -606, - - KOServerErrorPushNotExistPushToken = -901, - - KOServerErrorUnderMaintenance = -9798, - -} KOErrorCode; diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriend.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriend.h deleted file mode 100644 index 1382e94..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriend.h +++ /dev/null @@ -1,101 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriend.h - @abstract 카카오톡, 카카오스토리 친구 정보 관련 기능을 정의합니다. - */ -#import -#import "KOUserInfo.h" - -/*! - @abstract KOOSPropertyType 카카오톡 사용자의 디바이스 OS 타입 - @constant KOOSPropertyTypeUnknown 알수없음 - @constant KOOSPropertyTypeIOS ios - @constant KOOSPropertyTypeAndroid 안드로이드 - */ -typedef NS_ENUM(NSInteger, KOOSPropertyType) { - KOOSPropertyTypeUnknown = 0, - KOOSPropertyTypeIOS = 1, - KOOSPropertyTypeAndroid = 2 -}; - -/*! - @abstract KORelationValue 친구 관계 - @constant KORelationValueFriend 친구인 상태 - @constant KORelationValueNotFriend 친구가 아닌 상태 - @constant KORelationValueNotAvailable 친구인지 아닌지 알 수 없는 상태 (카카오톡 친구를 요청 했을 때, 카카오스토리 친구 관계를 알 수 없게 된다.) - */ -typedef NS_ENUM(NSInteger, KORelationValue) { - KORelationValueFriend = 0, - KORelationValueNotFriend = 1, - KORelationValueNotAvailable = 2 -}; - -extern NSString* convertOSPropertyTypeString(KOOSPropertyType type); - -/*! - @class KOFriend - @abstract 카카오톡, 카카오스토리 친구 정보를 담는 구조체 - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@interface KOFriend : KOUserInfo - -/*! - @property appRegistered - @abstract 친구의 앱 가입 여부 - */ -@property (nonatomic, readonly, getter=isAppRegistered) BOOL appRegistered; - -/*! - @property nickName - @abstract 친구의 대표 프로필 닉네임. 앱 가입친구의 경우 앱에서 설정한 닉네임. 미가입친구의 경우 톡 또는 스토리의 닉네임 - */ -@property (nonatomic, readonly) NSString *nickName; - -/*! - @property thumbnailURL - @abstract 친구의 썸네일 이미지 - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property talkOS - @abstract 톡에 가입된 기기의 os 정보 (android / ios) - */ -@property (nonatomic, readonly) KOOSPropertyType talkOS; - -/*! - @property allowedTalkMessaging - @abstract 메시지 수신이 허용되었는지 여부. 앱가입 친구의 경우는 feed msg에 해당. 앱미가입친구는 invite msg에 해당 - */ -@property (nonatomic, readonly, getter=isAllowedTalkMessaging) BOOL allowedTalkMessaging; - -/*! - @property talkRelation - @abstract 나와의 카카오톡 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue talkRelation; - -/*! - @property storyRelation - @abstract 나와의 카카오스토리 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue storyRelation; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendContext.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendContext.h deleted file mode 100644 index 72762f6..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendContext.h +++ /dev/null @@ -1,140 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendContext.h - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendServiceType 서비스 친구 타입. - @constant KOFriendServiceTypeTalk 카카오톡 친구. - @constant KOFriendServiceTypeStory 카카오스토리 친구. - @constant KOFriendServiceTypeTalkAndStory 카카오톡 + 카카오스토리 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendServiceType) { - KOFriendServiceTypeTalk = 0, - KOFriendServiceTypeStory = 1, - KOFriendServiceTypeTalkAndStory = 2 -}; - -/*! - @abstract KOFriendFilterType 친구 필터링 타입. - @constant KOFriendFilterTypeAll 전체 친구. - @constant KOFriendFilterTypeRegistered 앱 가입 친구. - @constant KOFriendFilterTypeInvitableNotRegistered 앱 미가입 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendFilterType) { - KOFriendFilterTypeAll = 0, - KOFriendFilterTypeRegistered = 1, - KOFriendFilterTypeInvitableNotRegistered = 2 -}; - -/*! - @abstract KOFriendOrderType 친구 정렬 타입. - @constant KOFriendOrderTypeNickName 닉네임 정렬. - @constant KOFriendOrderTypeRecentChatting 최근 채팅시간 정렬. - @constant KOFriendOrderTypeTalkUserCreatedAt 카카오톡 가입시간 정렬. - @constant KOFriendOrderTypeAge 나이 정렬. - @constant KOFriendOrderTypeAffinity 친밀도 정렬. - */ -typedef NS_ENUM(NSInteger, KOFriendOrderType) { - KOFriendOrderTypeNickName = 0, - KOFriendOrderTypeRecentChatting = 1, - KOFriendOrderTypeTalkUserCreatedAt = 2, - KOFriendOrderTypeAge = 3, - KOFriendOrderTypeAffinity = 4 -}; - -extern NSString* convertFriendServiceTypeString(KOFriendServiceType type); -extern NSString* convertFriendFilterTypeString(KOFriendFilterType type); -extern NSString* convertFriendOrderTypeString(KOFriendOrderType type); - -/*! - @class KOFriendContext - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOFriendContext : KOBaseContext - -/*! - @property serviceType - @abstract 서비스 친구 타입. - */ -@property (nonatomic, readonly) KOFriendServiceType serviceType; - -/*! - @property filterType - @abstract 친구 필터링 타입. - */ -@property (nonatomic, readonly) KOFriendFilterType filterType; - -/*! - @property orderType - @abstract 친구 정렬 타입. - */ -@property (nonatomic, readonly) KOFriendOrderType orderType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param limit 요청 시 제한하는 친구의 수. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - limit:(NSInteger)limit; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -- (instancetype)initWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendOperation.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendOperation.h deleted file mode 100644 index 08ddb95..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendOperation.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendOperation.h - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendOperationType 친구 목록 연산 타입. - @constant KOFriendOperationTypeIntersection 교집합. - @constant KOFriendOperationTypeUnion 합집합. - @constant KOFriendOperationTypeSubtraction 차집합. - */ -typedef NS_ENUM(NSInteger, KOFriendOperationType) { - KOFriendOperationTypeIntersection = 0, - KOFriendOperationTypeUnion = 1, - KOFriendOperationTypeSubtraction = 2 -}; - -extern NSString* convertriendOperationTypeString(KOFriendOperationType type); - -@class KOFriendContext; - -/*! - @class KOFriendOperation - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOFriendOperation : KOBaseContext - -/*! - @property leftContext - @abstract Left Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *leftContext; - -/*! - @property rightContext - @abstract Right Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *rightContext; - -/*! - @property operationType - @abstract 연산 타입. - */ -@property (nonatomic, readonly) KOFriendOperationType operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -- (instancetype)initWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOHTTPMethod.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOHTTPMethod.h deleted file mode 100644 index 439e5df..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOHTTPMethod.h +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOHTTPMethod_h -#define kakao_open_sdk_ios_KOHTTPMethod_h - -typedef enum : NSInteger { - KORequestHTTPMethodGet = 0, - KORequestHTTPMethodPost = 1, - KORequestHTTPMethodDelete = 2 -} KORequestHTTPMethod; - -#endif diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOImages.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOImages.h deleted file mode 100644 index 796001a..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOImages.h +++ /dev/null @@ -1,68 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header - 카카오 관련 이미지들 - */ -#import -#import - -/*! - 카카오 관련 이미지들 - */ -@interface KOImages : NSObject - -/*! - 버튼용 카카오 미니로고 - */ -+ (UIImage *)kakaoLogoForButton; - -/*! - 카카오 로고 - */ -+ (UIImage *)kakaoLogo; - -/*! - 카카오톡 아이콘 - */ -+ (UIImage *)kakaoTalkIconForButton; - -/*! - 카카오스토리 아이콘 - */ -+ (UIImage *)kakaoStoryIconForButton; - -/*! - 카카오계정 아이콘 - */ -+ (UIImage *)kakaoAccountIconForButton; - -/*! - 로그인 선택취소 아이콘 - */ -+ (UIImage *)kakaoLoginSelectCancelIconForButton; - -/*! - 웹뷰용 - */ -+ (UIImage *)webViewBackButton; - -+ (UIImage *)webViewButton; - -+ (UIImage *)webViewHead; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOLoginButton.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOLoginButton.h deleted file mode 100644 index dd2fdc7..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOLoginButton.h +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOLoginButton.h - '카카오계정으로 로그인' 버튼 - */ -#import - -/*! - @abstract '카카오계정으로 로그인' 버튼 - */ -@interface KOLoginButton : UIButton - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOPushTokenInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOPushTokenInfo.h deleted file mode 100644 index 9dff18c..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOPushTokenInfo.h +++ /dev/null @@ -1,73 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOPushTokenInfo.h - 푸시 토큰의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOPushTokenInfo - @discussion 푸시 토큰의 정보를 담고 있는 구조체. - */ -@interface KOPushTokenInfo : NSObject - -/*! - @property userId - @abstract 해당 사용자의 아이디 - */ -@property(nonatomic, readonly) NSString *userId; - -/*! - @property deviceId - @abstract 해당 사용자의 등록된 디바이스 아이디 - */ -@property(nonatomic, readonly) NSString *deviceId; - -/*! - @property pushType - @abstract 푸시 토큰의 타입. "apns" 또는 "gcm" - */ -@property(nonatomic, readonly) NSString *pushType; - -/*! - @property pushToken - @abstract 푸시 토큰 - */ -@property(nonatomic, readonly) NSString *pushToken; - -/*! - @property createdAt - @abstract 푸시 토큰의 생성 시간 - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property updatedAt - @abstract 푸시 토큰의 수정된 시간 - */ -@property(nonatomic, readonly) NSString *updatedAt; - -- (id)initWithUserId:(NSString *)userId - deviceId:(NSString *)deviceId - pushType:(NSString *)pushType - pushToken:(NSString *)pushToken - createdAt:(NSString *)createdAt - updatedAt:(NSString *)updatedAt; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSession.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSession.h deleted file mode 100644 index 72eab7a..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSession.h +++ /dev/null @@ -1,293 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSession.h - @abstract 카카오계정을 통해 인증 및 로그아웃할 수 있는 기능을 제공합니다. - */ - -#import -#import -#import - -/*! - @abstract KOSessionState Kakao 인증시의 내부 상태값 - @constant KOSessionStateNotOpen 세션이 열리지 않은 상태. 인증이 되지 않은 상태. - @constant KOSessionStateOpening 세션을 열기위한 진행중의 상태. 인증 진행중의 상태. - @constant KOSessionStateOpen 세션이 성공적으로 열린 상태. 인증이 완료된 상태. - */ -typedef NS_ENUM(NSInteger, KOSessionState) { - KOSessionStateNotOpen = 0, - KOSessionStateOpening = 1, - KOSessionStateOpen = 2 -}; - -/*! - @typedef KOSessionCompletionHandler - @abstract Kakao 인증 완료시 실행될 Completion Handler - @param error 오류 정보 - */ -typedef void(^KOSessionCompletionHandler)(NSError *error); - -/*! - @typedef KOCompletionSuccessHandler - @abstract Kakao API의 비동기 호출 성공 여부를 받아 처리해주는 Completion Handler - @param success 성공 여부 - @param error 오류 정보 - */ -typedef void(^KOCompletionSuccessHandler)(BOOL success, NSError *error); - -/*! - @abstract KOAuthType 카카오계정 로그인시의 인증 타입 - @constant KOAuthTypeTalk 카카오톡으로 간편 인증 - @constant KOAuthTypeStory 카카오스토리로 간편 인증 - @constant KOAuthTypeAccount 카카오계정으로 직접 ID, Password로 인증 - */ -typedef NS_ENUM(NSInteger, KOAuthType) { - KOAuthTypeTalk = 1 << 1, - KOAuthTypeStory = 1 << 2, - KOAuthTypeAccount = 1 << 3 -}; - -/*! - @abstract KOOptionalBoolean null을 가질 수 있는 boolean 타입 - @constant KOOptionalBooleanNull 참, 거짓을 알 수 없는 상태 - @constant KOOptionalBooleanFalse 거짓 - @constant KOOptionalBooleanTrue 참 - */ -typedef NS_ENUM(NSInteger, KOOptionalBoolean) { - KOOptionalBooleanNull = 0, - KOOptionalBooleanFalse = -1, - KOOptionalBooleanTrue = 1, -}; - -/*! - @abstract KOAgeAuthLevel 연령인증 시 인증 레벨. - @constant KOAgeAuthLevelType1 1차 인증 레벨. - @constant KOAgeAuthLevelType2 2차 인증 레벨. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLevel) { - KOAgeAuthLevelType1 = 10, - KOAgeAuthLevelType2 = 20 -}; - -/*! - @abstract KOAgeAuthLimit 연령인증 시 인증 나이. - @constant KOAgeAuthLimitType12 12세 인증. - @constant KOAgeAuthLimitType15 15세 인증. - @constant KOAgeAuthLimitType18 18세 인증. - @constant KOAgeAuthLimitType19 19세 인증. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLimit) { - KOAgeAuthLimitTypeNone = 0, - KOAgeAuthLimitType12 = 12, - KOAgeAuthLimitType15 = 15, - KOAgeAuthLimitType18 = 18, - KOAgeAuthLimitType19 = 19 -}; - -/*! - @abstract KOAgeAuthProperty 연령인증 정보 요청시 추가로 더 요청할 수 있는 목록 - @constant KOAgeAuthPropertyAccountCi "account_ci" 를 의미. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthProperty) { - KOAgeAuthPropertyAccountCi = 1 -}; - -@class KOAgeAuthQueryStringBuilder; - -/*! - * @class KOSession - * @abstract 인증 관리 클래스. - */ -@interface KOSession : NSObject - -/*! - * @property appKey - * @abstract 카카오에서 발급한 클라이언트 아이디. (네이티브 앱키) - * @discussion .plist 파일 내에 있는 KAKAO_APP_KEY 값을 읽어옵니다. 해당 키 값이 없거나 빈 문자열인 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - */ -@property(nonatomic, readonly) NSString *appKey; -/*! - * @property redirectUri - * @abstract 클라이언트 실행을 위한 커스텀 스킴 주소 - * @discussion "kakao${KAKAO_APP_KEY}://oauth" 형식의 OAuth 리다이렉트 URI입니다. .plist 파일에 URL Scheme으로 kakao${KAKAO_APP_KEY} 값을 설정해야 합니다. 설정하지 않을 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - * @seealso appKey - */ -@property(nonatomic, readonly) NSString *redirectUri; - -@property(nonatomic, readonly, copy) NSString *accessToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. accessToken을 얻고 싶은 경우 token.accessToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSString *refreshToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. refreshToken을 얻고 싶은 경우 token.refreshToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSDate *expiresAccessTokenTime DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. access token 만료시각을 얻고 싶은 경우 token.accessTokenExpiresAt을 사용해주세요. 추가적으로 refresh token의 만료시각도 제공됩니다."); -/*! - * @property token - * @abstract 로그인 기반 API 인증에 사용되는 OAuth 토큰 - * @discussion KOSessionTask에 있는 API 사용시 자동으로 Authroization 헤더에 현재 access token을 채워줍니다.
- * 발급 받은 토큰은 NSUserDefaults에 저장되고 앱을 종료하고 다시 시작할 경우 세션이 초기화 될 때(ex. sharedSession 최초 호출) 로드됩니다. - * 세션 초기화 시 저장된 토큰을 읽어오는데 성공하면 세션은 open 상태가 되며 일반적인 state 변경 상황과 동일하게 KOSessionDidChangeNotification 알림을 전달 받을 수 있습니다.

- * - * 토큰을 좀 더 안전하게 저장하고 싶을 경우 .plist 파일에 KAKAO_SECURE_MODE를 YES로 설정하여 accessToken과 refreshToken을 암호화 할 수 있습니다. - * 암호화 방식은 SDK 버전에 따라 다르게 제공될 수 있으며 최신 버전에 사용되고 있는 암호화 방식은 1.5.1 버전에서 마지막으로 수정되었습니다. - * KAKAO_SECURE_MODE 설정을 바꾸어서 앱을 배포하고 사용자의 기기에서 업데이트 했을 때 다음 케이스에 대해 마이그레이션을 지원합니다.

- * - * - 평문토큰 to 암호문토큰: KAKAO_SECURE_MODE를 사용하지 않다가 활성화시킨 상태로 업데이트한 경우 등
- * - 암호문토큰 to 평문토큰: KAKAO_SECURE_MODE를 YES로 사용하다가 NO로 변경한 경우 등
- * - (old)암호문토큰 to (new)암호문토큰: KAKAO_SECURE_MODE를 YES로 설정하고 변경하지 않았으나 오래된 버전의 SDK에서 최신(1.5.1이상) SDK로 업데이트한 경우

- * - * 위 케이스에는 앱을 업데이트하고 재시작해도 로그인이 유지되며 이외 케이스는 토큰을 읽어올 수 없으므로 세션이 닫힌 상태로 초기화됩니다. - */ -@property(readonly) KOToken *token; -/*! - * @property state - * @abstract 인증 상태 - */ -@property(nonatomic, readonly) KOSessionState state; -/*! - * @property clientSecret - * @abstract 클라이언트 시크릿. AppDelegate의 application:didFinishLaunchingWithOptions: 메소드에서 값을 설정해주어야 한다. - */ -@property(nonatomic, copy) NSString *clientSecret; - -/*! - * @property automaticPeriodicRefresh - * @abstract access token의 자동 주기적 갱신 여부 설정. 해당 값이 YES일 경우 handleDidBecomeActive시 및 특정 시간 주기로 필요시 토큰을 자동 갱신함. - * @discussion 값을 설정하면 현재 토큰 상태에 따라 타이머를 설정하거나 갱신이 필요할 경우 바로 갱신합니다. 이 속성 값은 기기에 저장되지 않고 메모리에서만 유지되므로 AppDelegate의 application:didFinishLaunchingWithOptions: 메소드 내에서 설정하는 것을 권장합니다. iOS 특성상 앱이 백그라운드로 내려가거나 suspend 상태가 되면 갱신이 불가능합니다. - * @seealso token - */ -@property (nonatomic, getter=isAutomaticPeriodicRefresh) BOOL automaticPeriodicRefresh; - -/*! - * @property presentingViewController - * @abstract login view 가 present 될 뷰컨트롤러를 설정. 지정하지 않을 경우 SDK 자체적으로 최상단 뷰컨트롤러를 탐색합니다. - */ -@property (nonatomic, weak) UIViewController *presentingViewController; - -@property (nonatomic, assign) UIStatusBarStyle presentedViewStatusBarStyle; -@property (nonatomic, strong) UIColor *presentedViewBarTitleColor; -@property (nonatomic, strong) UIColor *presentedViewBarTintColor; -@property (nonatomic, strong) UIColor *presentedViewBarButtonTintColor; -@property (nonatomic, strong) UIImage *presentedViewBarBackgroundImage; - - -/*! - @abstract 현재 session 정보 - */ - -+ (KOSession *)sharedSession; - -/*! - 카카오계정 로그인 callback인지 여부 - @param url 카카오 계정 인증 요청 code 또는 오류정보를 담은 url - */ -+ (BOOL)isKakaoAccountLoginCallback:(NSURL *)url; - -/*! - 카카오계정 연령인증 callback인지 여부 - @param url 카카오 연령인증 요청결과를 담은 url - */ -+ (BOOL)isKakaoAgeAuthCallback:(NSURL *)url; - -/*! - KakaoLink 메시지의 Action인지 여부 - @param url KakaoLink 메시지의 execparam 을 담은 url - */ -+ (BOOL)isKakaoLinkCallback:(NSURL *)url DEPRECATED_ATTRIBUTE; - -/*! - KakaoStory Post의 Action인지 여부 - @param url KakaoStory Post 메시지의 execparam 을 담은 url - */ -+ (BOOL)isStoryPostCallback:(NSURL *)url; - -/*! - url에 포함된 code 정보로 oauth 인증 토큰을 요청한다. 인증 토큰 요청이 완료되면 completionHandler를 실행한다. - @param url 인증 요청 code 또는 오류 정보(error, error_description)를 담은 url - */ -+ (BOOL)handleOpenURL:(NSURL *)url; - -/*! - openWithCompletionHandler로 인증 도중에 빠져나와 앱으로 돌아올때의 인증처리를 취소한다. 보통 applicationDidBecomeActive에서 해당 부분을 호출한다. - */ -+ (void)handleDidBecomeActive; - -/*! - application이 background 상태로 변경시 알려준다. 보통 applicationDidEnterBackground에서 해당 부분을 호출한다. - */ -+ (void)handleDidEnterBackground; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authType 로그인 요청시의 인증 타입(KOAuthType)의 array(var arguments로서 nil-terminated list). 주의) list의 마지막은 꼭 nil로 끝나야함. 예) KOAuthTypeTalk, KOAuthTypeStory, KOAuthTypeAccount, nil - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authType:(KOAuthType)authType, ...; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authTypes 로그인 요청시의 인증 타입(KOAuthType)의 array. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authTypes:(NSArray *)authTypes; - -/*! - @method updateScopes:completionHandler: - @abstract 현재 로그인된 사용자에게 새로운 scope이 필요할 경우 지정된 동의항목에 대한 동의창을 노출하고 사용자 동의를 유도합니다. 사용자가 동의 버튼을 누르면 해당 scope이 적용된 새로운 토큰으로 세션을 갱신합니다. - @param scopes 요청할 scope 목록 - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 갱신 완료 작업을 수행한다. - */ -- (void)updateScopes:(NSArray *)scopes completionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 현재 기기에서만 로그아웃한다. - @param completionHandler 요청 완료시 실행될 block. - */ -- (void)logoutAndCloseWithCompletionHandler:(KOCompletionSuccessHandler)completionHandler; - -/*! - 인증 토큰을 제거하여 session을 무효화한다. - */ -- (void)close; - -/*! - 인증되어 있는지 여부. [token canRefresh]와 동일한 결과를 리턴합니다. - */ -- (BOOL)isOpen; - -/*! - 세션을 유효한 access token으로 유지하기 위해 서버로 토큰을 요청하고 현재 세션을 갱신한다. - @param completionHandler 갱신 완료시 실행될 block. - */ -- (void)refreshAccessTokenWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 새로운 연령 인증이 필요할 경우 사용자에게 연령 인증관련 창을 띄워서 연령 인증을 유도합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -- (void)showAgeAuthWithAuthLevel:(KOAgeAuthQueryStringBuilder *) ageAuthQueryStringBuilder - completionHandler:(KOCompletionSuccessHandler)completionHandler; - -@end - -// notifications -/*! - 로그인 인증 정보 변경 노티피케이션 이름 - */ -extern NSString *const KOSessionDidChangeNotification; diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AgeAuthAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AgeAuthAPI.h deleted file mode 100644 index 780fc6e..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AgeAuthAPI.h +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h -#define kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h - -/*! - @header KOSessionTask+AgeAuthAPI.h - 인증된 세션정보로 연령인증 관련 API를 정의합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ - -#import "KOSession.h" -#import "KOSessionTask.h" - -/*! - 인증된 세션정보로 연령인증 관련 API를 정의한다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -@interface KOSessionTask (AgeAuthAPI) - -/*! - @abstract 연령인증 정보를 얻는다. (일부 앱에서만 제한적 허용/deprecated 될 예정) - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 해당 유저의 연령인증 정보를 얻는다. - @param ageLimit response의 bypass_age_limit(true/false)를 판단하는 기준 제한 연령. default 는 앱에 설정된 제한 연령기준. - 앱에 설정이 없고 param 으로 주어지지 않으면 bypass_age_limit 은 response 에 포함되지 않음. - @param propertyKeys 추가 동의가 필요로 하는 인증정보를 response 에 포함하고 싶은 경우 해당 KOAgeAuthProperty 셋. - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler: (KOAgeAuthLimit)ageLimit - propertyKeys: (NSSet *)propertyKeys - completionHandler: (KOSessionTaskCompletionHandler)completionHandler; - - -@end - -// AgeAuth Results Keys -/*! - 연령인증 정보 확인 시 인증레벨 코드에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelCodeKey; - -/*! - 연령인증 정보 확인 시 인증레벨 타이틀에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelKey; - -/*! - 연령인증 정보 확인 시 연령제한 통과 여부에 대한 키 이름 - */ -extern NSString *const KOAgeAuthBypassLimitKey; - -/*! - 연령인증 정보 확인 시 CI값에 대한 키 이름 - */ -extern NSString *const KOAgeAuthCIKey; - -/*! - 연령인증 정보 확인 시 인증날짜에 대한 키 이름 - */ -extern NSString *const KOAgeAuthDateKey; - - -#endif diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AppFriendAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AppFriendAPI.h deleted file mode 100644 index 8cda243..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AppFriendAPI.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAppFriend.h" -#import "KOBaseContext.h" - -@class KOAppFriendContext; - -/*! - @abstract App Friend API 요청 완료시 호출되는 콜백 핸들러. - @param appFriends 앱 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOAppFriendsTaskCompletionHandler)(NSError *error, NSArray *appFriends); - -@interface KOSessionTask (AppFriendAPI) - -/*! - @abstract 앱에 가입한 카카오톡 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 앱 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)appFriendsWithContext:(KOAppFriendContext *)context - completionHandler:(KOAppFriendsTaskCompletionHandler)completionHandler; - -@end - -/*! - @class KOAppFriendContext - @abstract 앱 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOAppFriendContext : KOBaseContext - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+FriendAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+FriendAPI.h deleted file mode 100644 index a3f9641..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+FriendAPI.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+FriendAPI.h - 인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -#import "KOSessionTask.h" -#import "KOFriend.h" -#import "KOFriendContext.h" -#import "KOFriendOperation.h" - -/*! - @abstract Friend API 요청 완료시 호출되는 콜백 핸들러. - @param friends 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOSessionFriendsTaskCompletionHandler)(NSArray *friends, NSError *error); - -/*! -인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. -*/ -@interface KOSessionTask (FriendAPI) - -/*! - @abstract 현재 로그인된 사용자의 카카오 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithContext:(KOFriendContext *)context - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -/*! - @abstract 카카오 친구 목록들의 연산된 결과를 얻어온다. - @param operation 친구 목록 페이징 Operation. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithOperation:(KOFriendOperation *)operation - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+PushAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+PushAPI.h deleted file mode 100644 index 2691889..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+PushAPI.h +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOPushTokenInfo.h" -#import "KakaoPushMessageObject.h" - -@class KakaoPushMessageObject; - -/*! - @header KOSessionTask+PushAPI.h - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ - -/*! - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (PushAPI) - -#pragma mark - Push - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 등록합니다. /v1/user/me 에 해당하는 유저의 ID로 자동 등록하게 됩니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러. expiredAt은 등록한 푸시 토큰의 만료까지 남은 기간을 뜻합니다. 보통 30이 리턴되며 30일 남았음을 뜻합니다. - */ -+ (instancetype)pushRegisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSInteger expiredAt, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 삭제합니다. 로그아웃할 때, 해당 기기에서 Push 알림 끄기 등의 상황에서 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushDeregisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰을 삭제합니다. 서비스 탈퇴 시 같이 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - */ -+ (instancetype)pushDeregisterAllDeviceWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract Push를 전송합니다(테스트용). 해당 API는 테스트 목적으로 만들어졌으며, 해당 기기로 Push를 전송합니다. 실제 다른 사용자들에게 Push를 전송하기 위해서는 AdminKey 방식의 Push 전송 REST API를 사용해야 합니다. - @param pushMsg Push 전송에 필요한 각종 메타 데이터 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushSendMsg:(KakaoPushMessageObject *)pushMsg - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰들에 대한 정보를 얻을 수 있습니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - @param completionHandler Push 토큰의 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)pushGetTokensTaskWithCompletionHandler:(void (^)(NSArray *tokens, NSError *error))completionHandler; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+StoryAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+StoryAPI.h deleted file mode 100644 index 24d3191..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+StoryAPI.h +++ /dev/null @@ -1,386 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+StoryAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOStoryProfile.h" -#import "KOStoryPostInfo.h" -#import "KOStoryLinkInfo.h" -#import "KOStoryMyStoryInfo.h" -#import "KOStoryMyStoryImageInfo.h" -#import "KOStoryLikeInfo.h" -#import "KOStoryCommentInfo.h" - -/*! - @abstract KOStoryPostPermission 스토리 포스팅 공개 범위 - @constant KOStoryPostPermissionPublic 전체공개 - @constant KOStoryPostPermissionFriend 친구공개 - @constant KOStoryPostPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPostPermission) { - KOStoryPostPermissionPublic = 0, - KOStoryPostPermissionFriend = 1, - KOStoryPostPermissionOnlyMe = 2 -}; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (StoryAPI) - -#pragma mark - KakaoStory - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 로컬 이미지 파일을 카카오스토리에 업로드합니다. - @param image (UIImage *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImage:(UIImage *)image - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImages in v1.0.7"); - -/*! - @abstract 로컬 이미지 파일을 데이타 형식으로 카카오스토리에 업로드합니다. - @param imageData (NSData *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImageData:(NSData *)imageData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImageData in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 얻을 수 있습니다. comments, likes등의 상세정보도 포함됩니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(KOStoryMyStoryInfo *myStory, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 복수개의 내스토리 정보들을 얻을 수 있습니다. 단, comments, likes등의 상세정보는 없으며 이는 내스토리 정보 요청(storyGetMyStoryTaskWithMyStoryId)을 통해 얻을 수 있습니다. - @param lastMyStoryId 복수개의 내스토리 정보들을 얻기 위한 가장 최근의 내스토리 정보(myStory)의 id(포스트 id). 주어진 id의 시간을 기준으로 해당 id를 제외한 약 18개정도의 하위 myStory들이 반환된다. optional. - @param completionHandler 내스토리 정보들을 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoriesTaskWithLastMyStoryId:(NSString *)lastMyStoryId - completionHandler:(void (^)(NSArray *myStories, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 스크랩을 하기 위한 링크 정보를 얻을 수 있습니다. - @param url 스크랩을 하여 링크 정보를 얻기 위한 url. required. - @param completionHandler 스토리 링크 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetLinkInfoTaskWithUrl:(NSString *)url - completionHandler:(void (^)(KOStoryLinkInfo *link, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 로컬 이미지 파일 여러장을 카카오스토리에 업로드합니다. - @param images jpeg을 위한 (UIImage *) 또는 gif를 위한 (NSData *) 형식의 여러장의 이미지 array. 최대 5개까지 허용. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyMultiImagesUploadTaskWithImages:(NSArray *)images - completionHandler:(void (^)(NSArray *imageUrls, NSError *error))completionHandler; - -/*! - @abstract 해당 사용자가 카카오스토리 사용자인지 아닌지를 판별합니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyIsStoryUserTaskWithCompletionHandler:(void (^)(BOOL isStoryUser, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 지울 수 있습니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보에 대한 삭제의 결과를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyDeleteMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(NSError *error))completionHandler; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TalkAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TalkAPI.h deleted file mode 100644 index a849c46..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TalkAPI.h +++ /dev/null @@ -1,185 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+TalkAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOTalkProfile.h" -#import "KOChatContext.h" - -#import "KOUser.h" -#import "KOChat.h" -#import "KOFriend.h" - -DEPRECATED_ATTRIBUTE -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverType) { - KOTalkMessageReceiverTypeUser = 0, - KOTalkMessageReceiverTypeFriend = 1, - KOTalkMessageReceiverTypeChat = 2 -}; - -/*! - @abstract KOTalkMessageReceiverIDType - @constant KOTalkMessageReceiverIDTypeUUID 메시지 수신 대상의 UUID. KOUserInfo.uuid - @constant KOTalkMessageReceiverIDTypeUser 메시지 수신 대상의 사용자 ID. KOUserInfo.ID - @constant KOTalkMessageReceiverIDTypeChat 메시지 수신 대상 채팅방 ID. KOChat.ID - */ -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverIDType) { - KOTalkMessageReceiverIDTypeUser = 1, - KOTalkMessageReceiverIDTypeChat = 2, - KOTalkMessageReceiverIDTypeUUID = 3, -}; - -@class KMTTemplate; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (TalkAPI) - -#pragma mark - Send Message v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplate:(KMTTemplate *)templateObj - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Send Memo v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Profile - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - - -#pragma mark - Chat List - -/*! - @abstract 카카오톡 채팅방 목록을 가져옵니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param context 채팅방 목록을 불러올 때, 페이징 정보를 처리하기 위한 context. - @param completionHandler 카카오톡 채팅방 목록을 가져와서 처리하는 핸들러. - */ -+ (instancetype)talkChatListTaskWithContext:(KOChatContext *)context - completionHandler:(void (^)(NSArray *chats, NSError *error))completionHandler; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TokenAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TokenAPI.h deleted file mode 100644 index 473c1d9..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TokenAPI.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAccessTokenInfo.h" - -/*! - @header KOSessionTask+TokenAPI.h - 인증된 access token 정보를 얻어올 수 있습니다. - */ - -/*! - @abstract access token 정보를 얻을 때 사용하는 완료 콜백 핸들러 - @param accessTokenInfo 해당 access token의 정보 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionAccessTokenInfoTaskCompletionHandler)(KOAccessTokenInfo *accessTokenInfo, NSError *error); - -/*! - 인증된 access token 정보를 얻어올 수 있습니다. - */ -@interface KOSessionTask (TokenAPI) - -/*! - @abstract 현재 로그인된 사용자의 AccessTokenInfo 정보를 얻을 수 있습니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)accessTokenInfoTaskWithCompletionHandler:(KOSessionAccessTokenInfoTaskCompletionHandler)completionHandler; - - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+UserManagementAPI.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+UserManagementAPI.h deleted file mode 100644 index a0794b4..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+UserManagementAPI.h +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOUser.h" -#import "KOUserMe.h" - -/*! - @header KOSessionTask+UserManagementAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ - -typedef void (^KOSessionTaskUserMeCompletionHandler)(NSError *error, KOUserMe *me); - -/*! - 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (UserManagementAPI) -#pragma mark - UserManagement - -/*! - * @method userMeTaskWithCompletion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithCompletion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - * @method userMeTaskWithPropertyKeys:completion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param propertyKeys 특정 프로퍼티를 지정하여 받고 싶을 경우 요청할 프로퍼티 키 이름 목록. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithPropertyKeys:(NSArray *)propertyKeys completion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - @abstract 현재 로그인된 사용자의 속성(Property)를 설정할 수 있습니다. - @param properties 갱신할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)profileUpdateTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱을 연결합니다(가입). - @param properties 가입시 함께 설정할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)signupTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱 연결을 해제합니다(탈퇴). - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)unlinkTaskWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - - - -+ (instancetype)meTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 카카오계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithPropertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - propertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask.h deleted file mode 100644 index 58a86fc..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask.h +++ /dev/null @@ -1,116 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOHTTPMethod.h" - -/*! - @typedef KOSessionTaskCompletionHandler - @abstract 각종 API 요청 완료시 호출되는 콜백 핸들러 - @param result 해당 API 요청의 결과 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionTaskCompletionHandler)(id result, NSError *error); - -@interface KOSessionTask : NSObject - -- (id)initWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/* - @abstract 해당 API 요청을 취소 - */ -- (void)cancel; - -/* - @abstract 해당 API 요청을 취소 - @param error 취소할 때 발생시키고자 하는(원인) NSError. - */ -- (void)cancelWithError:(NSError *)error; - -/* - @abstract API 요청시의 타임아웃을 설정 - @param timeoutInterval second단위의 타임아웃 값(NSTimeInterval). 기본 30초. - */ -+ (void)setRequestTimeoutInterval:(NSTimeInterval)timeoutInterval; -+ (NSTimeInterval)requestTimeoutInterval; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStorageImageInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStorageImageInfo.h deleted file mode 100644 index eefdf1a..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStorageImageInfo.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStorageImageInfo.h - Storage API를 통해서 이미지를 업로드 후, 이미지 URL 정보를 얻을 수 있습니다. - */ - -#import - -/*! - @class KOStorageImageInfo - @discussion 저장소에 업로드된 이미지 URL 정보를 얻을 수 있습니다. - */ - -@interface KOStorageImageInfo : NSObject - -/*! - @property originImageURL - @abstract 원본 이미지 URL - */ -@property (nonatomic, readonly) NSString *originImageURL; - -/*! - @property profileImageURL - @abstract 프로필 이미지 URL. 사이즈 640px * 640px - */ -@property (nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailImageURL - @abstract 썸네일 이미지 URL. 사이즈 110px * 110px - */ -@property (nonatomic, readonly) NSString *thumbnailImageURL; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryActorInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryActorInfo.h deleted file mode 100644 index ea595fb..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryActorInfo.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryActorInfo.h - 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryActorInfo - @discussion 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ -@interface KOStoryActorInfo : NSObject - -/*! - @property profileThumbnailUrl - @abstract 작성자의 썸네일에 대한 URL - */ -@property(nonatomic, readonly) NSString *profileThumbnailUrl; - -/*! - @property displayName - @abstract 작성자의 표시되는 이름 - */ -@property(nonatomic, readonly) NSString *displayName; - -- (id)initWithProfileThumbnailUrl:(NSString *)profileThumbnailUrl - displayName:(NSString *)displayName; - -- (id)copyWithZone:(NSZone *)zone; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryCommentInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryCommentInfo.h deleted file mode 100644 index 1893a70..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryCommentInfo.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryCommentInfo.h - 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @class KOStoryCommentInfo - @discussion 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ -@interface KOStoryCommentInfo : NSObject - -/*! - @property text - @abstract 댓글의 텍스트 내용 - */ -@property(nonatomic, readonly) NSString *text; - -/*! - @property writer - @abstract 댓글의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *writer; - -- (id)initWithText:(NSString *)text - writer:(KOStoryActorInfo *)writer; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLikeInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLikeInfo.h deleted file mode 100644 index ecce523..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLikeInfo.h +++ /dev/null @@ -1,66 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLikeInfo.h - @abstract 카카오스토리의 내스토리 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @abstract KOStoryEmotion 느낌(감정표현)에 대한 정의. - @constant KOStoryEmotionUnknown 알수 없는 형식 - @constant KOStoryEmotionLike 좋아요 - @constant KOStoryEmotionCool 멋져요 - @constant KOStoryEmotionHappy 기뻐요 - @constant KOStoryEmotionSad 슬퍼요 - @constant KOStoryEmotionCheerUp 힘내요 - */ -typedef NS_ENUM(NSInteger, KOStoryEmotion) { - KOStoryEmotionUnknown = 0, - KOStoryEmotionLike = 1, - KOStoryEmotionCool = 2, - KOStoryEmotionHappy = 3, - KOStoryEmotionSad = 4, - KOStoryEmotionCheerUp = 5 -}; - -/*! - @class KOStoryLikeInfo - @abstract 카카오스토리의 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ -@interface KOStoryLikeInfo : NSObject - -/*! - @property emotion - @abstract 느낌에 대한 정보. 예) 좋아요, 멋져요, 기뻐요, 슬퍼요, 힘내요 - */ -@property(nonatomic, readonly) KOStoryEmotion emotion; - -/*! - @property actor - @abstract 느낌의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *actor; - -- (id)initWithEmotion:(KOStoryEmotion)emotion - actor:(KOStoryActorInfo *)actor; - -- (NSString *)convertEmotionToString:(KOStoryEmotion)emotion; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLinkInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLinkInfo.h deleted file mode 100644 index 5f9c97d..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLinkInfo.h +++ /dev/null @@ -1,88 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLinkInfo.h - 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryLinkInfo - @discussion 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -@interface KOStoryLinkInfo : NSObject - -/*! - @property url - @abstract 스크랩 한 주소의 URL. shorten URL의 경우 resolution한 실제 URL - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property requestedUrl - @abstract 요청시의 URL 원본. resolution을 하기 전의 URL - */ -@property(nonatomic, readonly) NSString *requestedUrl; - -/*! - @property host - @abstract 스크랩한 host - */ -@property(nonatomic, readonly) NSString *host; - -/*! - @property title - @abstract 해당 웹 페이지의 제목 - */ -@property(nonatomic, readonly) NSString *title; - -/*! - @property image - @abstract 해당 웹 페이지의 대표 이미지 주소의 url array. 최대 3개. - */ -@property(nonatomic, readonly) NSArray *image; - -/*! - @property desc - @abstract 해당 웹 페이지의 설명 - */ -@property(nonatomic, readonly) NSString *desc; - -/*! - @property section - @abstract 해당 웹 페이지의 섹션 정보 - */ -@property(nonatomic, readonly) NSString *section; - -/*! - @property type - @abstract 해당 웹 페이지의 콘텐츠 타입. 예) video, music, book, article, profile, website 등. - */ -@property(nonatomic, readonly) NSString *type; - -- (id)initWithUrl:(NSString *)url - requestedUrl:(NSString *)requestedUrl - host:(NSString *)host - title:(NSString *)title - image:(NSArray *)image - desc:(NSString *)desc - section:(NSString *)section - type:(NSString *)type; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryImageInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryImageInfo.h deleted file mode 100644 index 6dd280e..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryImageInfo.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryImageInfo.h - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryMyStoryImageInfo - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ -@interface KOStoryMyStoryImageInfo : NSObject - -/*! - @property original - @abstract 원본 이미지의 url - */ -@property(nonatomic, readonly) NSString *original; - -/*! - @property xlarge - @abstract xlarge 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *xlarge; - -/*! - @property large - @abstract large 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *large; - -/*! - @property medium - @abstract medium 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *medium; - -/*! - @property small - @abstract small 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *small; - - -- (id)initWithOriginal:(NSString *)original - xlarge:(NSString *)xlarge - large:(NSString *)large - medium:(NSString *)medium - small:(NSString *)small; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryInfo.h deleted file mode 100644 index f4a2386..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryInfo.h +++ /dev/null @@ -1,146 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryInfo.h - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -#import - -/*! - @abstract KOStoryMediaType 스토리의 미디어 형식 - @constant KOStoryMediaTypeUnknown 알수 없는 미디어 형식 - @constant KOStoryMediaTypeNotSupported 지원되지 않는 미디어 형식 - @constant KOStoryMediaTypeNote 텍스트 같은 노트 형식 - @constant KOStoryMediaTypePhoto 사진 이미지 같은 포토 형식 - */ -typedef NS_ENUM(NSInteger, KOStoryMediaType) { - KOStoryMediaTypeUnknown = 0, - KOStoryMediaTypeNotSupported = 1, - KOStoryMediaTypeNote = 2, - KOStoryMediaTypePhoto = 3 -}; - -/*! - @abstract KOStoryPermission 스토리의 공개 범위 - @constant KOStoryPermissionUnknown 알수 없는 공개 범위 - @constant KOStoryPermissionPublic 전체공개 - @constant KOStoryPermissionFriend 친구공개 - @constant KOStoryPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPermission) { - KOStoryPermissionUnknown = 0, - KOStoryPermissionPublic = 1, - KOStoryPermissionFriend = 2, - KOStoryPermissionOnlyMe = 3 -}; - -@class KOStoryMyStoryImageInfo; -@class KOStoryCommentInfo; -@class KOStoryLikeInfo; - -/*! - @class KOStoryMyStoryInfo - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -@interface KOStoryMyStoryInfo : NSObject - -/*! - @property ID - @abstract 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -/*! - @property content - @abstract 내스토리 정보의 내용 - */ -@property(nonatomic, readonly) NSString *content; - -/*! - @property mediaType - @abstract 내스토리 정보의 미디어타입. 예) NOTE, PHOTO, LINK, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryMediaType mediaType; - -/*! - @property createdAt - @abstract 내스토리 정보의 생성시간. RFC3339를 따름. - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property media - @abstract 내스토리 정보의 미디어타입이 PHOTO일 경우 이미지 내용의 array. KOStoryMyStoryImageInfo 객체의 array. - */ -@property(nonatomic, readonly) NSArray *media; - -/*! - @property url - @abstract 내스토리 정보의 url - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property commentCount - @abstract 내스토리 정보의 comment 숫자 - */ -@property(nonatomic, readonly) NSNumber *commentCount; - -/*! - @property likeCount - @abstract 내스토리 정보의 like 숫자 - */ -@property(nonatomic, readonly) NSNumber *likeCount; - -/*! - @property comments - @abstract 댓글 정보들을 담고 있는 array. KOStoryCommentInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *comments; - -/*! - @property likes - @abstract 좋아요 등 느낌(감성표현)에 대한 정보들을 담고 있는 array. KOStoryLikeInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *likes; - -/*! - @property permission - @abstract 내스토리 정보의 공개 범위. 예) PUBLIC, FRIEND, ONLY_ME, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryPermission permission; - - -- (id)initWithID:(NSString *)myStoryID - content:(NSString *)content - mediaType:(KOStoryMediaType)mediaType - createdAt:(NSString *)createdAt - media:(NSArray *)media - url:(NSString *)url - commentCount:(NSNumber *)commentCount - likeCount:(NSNumber *)likeCount - comments:(NSArray *)comments - likes:(NSArray *)likes - permission:(KOStoryPermission)permission; - -- (NSString *)convertMediaTypeToString:(KOStoryMediaType)mediaType; - -- (NSString *)convertPermissionToString:(KOStoryPermission)permission; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryPostInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryPostInfo.h deleted file mode 100644 index 4300005..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryPostInfo.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryPostInfo.h - 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryPostInfo - @discussion 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -@interface KOStoryPostInfo : NSObject - -/*! - @property ID - @abstract 포스팅 한 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -- (id)initWithID:(NSString *)myStoryID; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryProfile.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryProfile.h deleted file mode 100644 index 33b5fb5..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryProfile.h +++ /dev/null @@ -1,86 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryProfile.h - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @abstract KOStoryProfileBirthdayType 스토리 프로필의 생일 타입 - @constant KOStoryProfileBirthdayTypeSolar 양력 - @constant KOStoryProfileBirthdayTypeLunar 음력 - */ -typedef NS_ENUM(NSInteger, KOStoryProfileBirthdayType) { - KOStoryProfileBirthdayTypeSolar = 0, - KOStoryProfileBirthdayTypeLunar = 1 -}; - -/*! - @class KOStoryProfile - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -@interface KOStoryProfile : NSObject - -/*! - * @property nickName - * @abstract 카카오스토리 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; -/*! - * @property profileImageURL - * @abstract 카카오스토리 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; -/*! - * @property thumbnailURL - * @abstract 카카오스토리 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; -/*! - * @property bgImageURL - * @abstract 카카오스토리 배경이미지 URL - */ -@property(nonatomic, readonly) NSString *bgImageURL; - -/*! - @property birthday - @abstract 생일. MMdd - */ -@property(nonatomic, readonly) NSString *birthday; - -/*! - @property birthdayType - @abstract 생일 타입. SOLAR 또는 LUNAR - */ -@property(nonatomic, readonly) KOStoryProfileBirthdayType birthdayType; - -/*! - @property permalink - @abstract 내 스토리를 방문할 수 있는 웹 page의 URL - */ -@property(nonatomic, readonly) NSString *permalink; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - bgImageURL:(NSString *)bgImageURL - birthday:(NSString *)birthday - birthdayType:(KOStoryProfileBirthdayType)birthdayType - permalink:(NSString *)permalink; -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkMessageSending.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkMessageSending.h deleted file mode 100644 index 550fdbe..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkMessageSending.h +++ /dev/null @@ -1,120 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkMessageSending.h - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜입니다. - */ - -#ifndef kakao_open_sdk_ios_KOTalkMessageSending_h -#define kakao_open_sdk_ios_KOTalkMessageSending_h - -#import "KOSessionTask.h" - -@class KMTTemplate; - -/*! - @protocol KOTalkMessageSending - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@protocol KOTalkMessageSending - -@required - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - -@optional - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -@end - -#endif diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkProfile.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkProfile.h deleted file mode 100644 index 351157b..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkProfile.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkProfile.h - 카카오톡 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @class KOTalkProfile - @discussion 카카오톡 사용자 정보를 담고 있는 구조체. - */ -@interface KOTalkProfile : NSObject - -/*! - @property nickName - @abstract 카카오톡 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; - -/*! - @property profileImageURL - @abstract 카카오톡 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailURL - @abstract 카카오톡 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property countryISO - @abstract 카카오톡 국가 코드 - */ -@property(nonatomic, readonly) NSString *countryISO; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - countryISO:(NSString *)countryISO; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOToken.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOToken.h deleted file mode 100644 index 1b86847..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOToken.h +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOToken.h - 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/*! - * @class KOToken - * @abstract 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ -@interface KOToken : NSObject - -/*! - * @property accessToken - * @abstract 카카오 API를 이용하여 특정 사용자의 리소스에 접근하기 위한 OAuth 토큰. - */ -@property (readonly) NSString *accessToken; -/*! - * @property refreshToken - * @abstract accessToken을 갱신하기 위한 토큰. - */ -@property (readonly) NSString *refreshToken; -/*! - * @property accessTokenExpiresAt - * @abstract accessToken이 만료되는 시각. 네이티브 앱키로 요청한 accessToken 기본 만료시간: 12시간. - */ -@property (readonly) NSDate *accessTokenExpiresAt; -/*! - * @property refreshTokenExpiresAt - * @abstract refreshToken이 만료되는 시각. 네이티브 앱키로 요청한 refreshToken 기본 만료시간: 30일. - * @discussion 이 속성은 1.8.0 버전부터 제공되고 있습니다.
- * 만약 앱 업데이트 전에 구버전 SDK로 발급 받았던 토큰이 남아 있어서 KOSession.token을 통해 접근하는 경우 새로 로그인하거나 refreshToken이 갱신되기 전까지 값이 없을 수 있습니다. - * 값이 없는 경우는 구버전 토큰으로 가정하여 갱신 가능한 상태로 판단합니다.(canRefresh = YES) 그러나 실제로 서버로 갱신을 요청했을 때 리프레시 토큰이 만료되었다면 갱신에 실패합니다. - * @seealso canRefresh - */ -@property (readonly, nullable) NSDate *refreshTokenExpiresAt; -/*! - * @property scopes - * @abstract 현재 로그인된 사용자가 동의한 scope 목록 - */ -@property (readonly) NSArray *scopes; - -/*! - * @method canRefresh - * @abstract refresh token이 사용 가능한 상태인지 여부. 이 값이 YES이면 access token을 계속 갱신하여 사용 가능함. - * @discussion 클라이언트가 가지고 있는 access token 및 refresh token의 만료 시간은 서버와 정확히 일치하지 않을 수 있으며 - * 토큰 발급을 위해 로그인한 카카오계정 상태에 변동이 있는 경우 당시의 카카오 정책에 따라 일괄적으로 만료될 수 있습니다. - * 예를 들어 카카오계정의 비밀번호가 변경되면 현재 발급되어 있는 모든 토큰이 만료됩니다. - * 따라서 실제 토큰 유효성 여부는 토큰 갱신 등을 서버로 요청해야만 정확한 확인이 가능하며 클라이언트의 만료시간을 보고 토큰이 유효하다고 판단하는 것은 권장하지 않습니다. - * @return refreshToken이 있고 현재 시간이 refreshTokenExpiresAt보다 과거인 경우 YES
- * refreshToken이 있고 refreshTokenExpiresAt가 nil인 경우(구버전 SDK에서 발급받은 토큰) YES
- * 아니면 NO - * @seealso refreshTokenExpiresAt - */ -- (BOOL)canRefresh; -/*! - * @method remainingExpireTime - * @abstract accessTokenExpiresAt 까지 남은 시간 - * @return 음수이면 accessToken이 만료되었음을 의미함 - * @seealso - */ -- (NSTimeInterval)remainingExpireTime; - -- (nullable instancetype)initWithAccessToken:(NSString *)accessToken - refeshToken:(NSString *)refreshToken - accessTokenExpiresAt:(NSDate *)accessTokenExpiresAt - refreshTokenExpiresAt:(nullable NSDate *)refreshTokenExpiresAt - scopes:(nullable NSArray *)scopes; - -@end - -NS_ASSUME_NONNULL_END diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUser.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUser.h deleted file mode 100644 index 04f57aa..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUser.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUser.h - 사용자 정보를 담고 있는 구조체. - */ -#import -#import "KOUserInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -DEPRECATED_MSG_ATTRIBUTE("이 클래스는 v1 user/me용 클래스입니다. v2가 적용된 KOSessionTask.userMeTask 메소드와 KOUserMe 클래스를 사용해주세요.") -@interface KOUser : KOUserInfo - -@property(nonatomic, readonly, nullable) NSString *email; -@property(nonatomic, readonly, getter=isVerifiedEmail) BOOL verifiedEmail; -@property(nonatomic, readonly, nullable) NSDictionary *properties; - -- (id)propertyForKey:(NSString *)key; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end - -/*! - 프로퍼티 키 이름 - */ -extern NSString *const KOUserNicknamePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserProfileImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserThumbnailImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserEmailPropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserIsVerifiedEmailPropertyKey DEPRECATED_ATTRIBUTE; - -NS_ASSUME_NONNULL_END diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUserInfo.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUserInfo.h deleted file mode 100644 index e31634f..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUserInfo.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -extern NSString const *EXTRA_KEY_SERVICE_USER_ID; -extern NSString const *EXTRA_KEY_INVITE_MESSAGE_REMAINING_COUNT; -extern NSString const *EXTRA_KEY_GROUP_CHAT_MESSAGE_REMAINING_COUNT; - -@interface KOUserInfo : NSObject - -- (instancetype)initWithDictionary:(NSDictionary *)dictionary; - -/* - @property ID - @abstract 가입자에 대한 앱내 고유한 사용자 ID. 해당 사용자가 앱 연결 해제(탈퇴)를 하지 않는 한 변하지 않는 고유한 식별자입니다. 미가입자의 경우 해당 정보가 존재하지 않습니다. - */ -@property (nonatomic, readonly) NSNumber *ID; - - -/* - @property uuid - @abstract 가입 여부와 관계없는 앱내 고유한 ID. 카카오 서비스의 회원임을 앱내에서 식별 할 수 있지만, 사용자의 계정 상태에 따라 이 정보는 바뀔 수 있습니다. 앱내의 사용자 식별자로 저장 사용되는 것은 권장하지 않습니다. 앱의 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSString *uuid; - -/* - @property extras - @abstract User extra 정보. 앱의 특정 카테고리나 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSDictionary *extras; - - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUserMe.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUserMe.h deleted file mode 100644 index bb945f6..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUserMe.h +++ /dev/null @@ -1,321 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - * @header KOUserMe.h - * @abstract 사용자 정보 요청(user/me) API로 얻어오는 사용자 정보 관련 클래스 - */ - -#import -#import "KOTalkMessageSending.h" -#import "KOSession.h" - -NS_ASSUME_NONNULL_BEGIN - -@class KOUserMeAccount; - -/*! - * @class KOUserMe - * @abstract 사용자 정보를 나타내는 최상위 클래스. ID, 카카오계정 정보, 프로퍼티 등으로 구성됩니다. - */ -@interface KOUserMe : NSObject - -/*! - * @property hasSignedUp - * @abstract 현재 로그인한 사용자가 앱에 연결(signup)되어 있는지 여부 - * @discussion 사용자관리 설정에서 자동연결 옵션을 off한 앱에서만 사용되는 값입니다. 자동연결의 기본값은 on이며 이 경우 값이 null로 반환되고 이미 연결되어 있음을 의미합니다. - */ -@property (readonly) KOOptionalBoolean hasSignedUp; -/*! - * @property ID - * @abstract 사용자의 고유 아이디 - * @discussion 사용자 ID는 앱 연결(signup)을 기준으로 발급됩니다.
- * 1. 최초 로그인했을 때 발급
- * 2. 자동연결을 off한 상태로 signup 호출에 성공했을 때 발급
- * 3. 연결해제(unlink) 이후 1,2번 작업을 다시 수행하면 다른 값으로 재발급 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property account - * @abstract 로그인한 카카오계정 정보. 이메일 등 - * @seealso KOUserMeAccount - */ -@property (readonly, nullable) KOUserMeAccount *account; -/*! - * @property nickname - * @abstract 사용자의 닉네임 - * @discussion properties에서 "nickname" 값을 가져옵니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 닉네임으로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property profileImageURL - * @abstract 원본 프로필 이미지 URL - * @discussion properties에 있는 "profile_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 프로필 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *profileImageURL; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - * @discussion properties에 있는 "thumbnail_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 썸네일 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; -/*! - * @property properties - * @abstract 앱 별로 제공되는 사용자 정보 데이터베이스 - * @discussion 사용자에 대해 추가 정보를 저장할 수 있도록 데이터베이스를 제공합니다.
- * 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 있는 닉네임과 프로필 이미지 정보를 앱 연결 시점에 복사하여 초기값으로 제공되며 이후 해당 프로필 정보와 동기화되지 않습니다.
- * 1. nickname : 카카오톡 또는 카카오스토리에 설정된 닉네임
- * 2. profile_image : 프로필 이미지 URL 문자열
- * 3. thumbnail_image : 썸네일 사이즈의 프로필 이미지 URL 문자열 - */ -@property (readonly, nullable) NSDictionary *properties; -/*! - * @property forPartner - * @abstract 제휴를 통해 권한이 부여된 특정 앱에서 사용 - */ -@property (readonly, nullable) NSDictionary *forPartner; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)meWithDictionary:(NSDictionary *)dictionary; - -@end - - - -/*! - * @abstract KOUserAgeRange 연령대 정보 - * @constant KOUserAgeRangeNull 연령대 값이 없음 - * @constant KOUserAgeRangeType15 15세~19세 - * @constant KOUserAgeRangeType20 20세~29세 - * @constant KOUserAgeRangeType30 30세~39세 - * @constant KOUserAgeRangeType40 40세~49세 - * @constant KOUserAgeRangeType50 50세~59세 - * @constant KOUserAgeRangeType60 60세~69세 - * @constant KOUserAgeRangeType70 70세~79세 - * @constant KOUserAgeRangeType80 80세~89세 - * @constant KOUserAgeRangeType90 90세 이상 - */ -typedef NS_ENUM(NSUInteger, KOUserAgeRange) { - KOUserAgeRangeNull, - KOUserAgeRangeType15, - KOUserAgeRangeType20, - KOUserAgeRangeType30, - KOUserAgeRangeType40, - KOUserAgeRangeType50, - KOUserAgeRangeType60, - KOUserAgeRangeType70, - KOUserAgeRangeType80, - KOUserAgeRangeType90, -}; - -/*! - * @abstract KOUserGender 성별 정보 - * @constant KOUserGenderNull 성별 값이 없음 - * @constant KOUserGenderMale 남자 - * @constant KOUserGenderFemale 여자 - */ -typedef NS_ENUM(NSUInteger, KOUserGender) { - KOUserGenderNull, - KOUserGenderMale, - KOUserGenderFemale, -}; - -/*! - * @class KOUserMeAccount - * @abstract 카카오계정 정보를 나타내는 클래스 - * @discussion 사용자의 동의를 받지 않은 개인정보는 값이 반환되지 않을 수 있습니다. - * 동의를 받지 않아도 값의 존재여부는 has- 프로퍼티로 확인할 수 있습니다.
- * 값이 내려오지 않은 정보의 has- 프로퍼티가 true인 경우 사용자 동의가 필요한 상황임을 의미하며 KOSession의 updateScopes 메소드를 이용하여 동의를 받을 수 있습니다. 동의를 받은 후 user/me를 다시 호출하면 해당 값이 반환될 것입니다.
- * has- 프로퍼티가 false라면 현재 로그인한 계정에 해당 정보가 등록되지 않은 상태이며 사용자의 동의도 요청할 수 없습니다. - */ -@interface KOUserMeAccount : NSObject - -/*! - * @property email - * @abstract 카카오계정에 등록한 이메일 정보 - * @discussion 7.2.0 이상 카카오톡을 설치하고 전화번호 인증을 완료하면 이메일이 없는 카카오계정이 생성됩니다. 해당 카카오계정으로 간편로그인이나 전화번호 로그인을 할 경우 이메일 값이 nil로 반환됩니다.
- * 이메일이 있는 카카오계정이라도 사용자로부터 이메일 제공에 대한 동의를 받지 않으면 값이 nil로 반환됩니다. 등록된 이메일이 존재하지만 동의를 받지 않은 경우 hasEmail값이 true이고 사용자에게 이메일 제공에 대한 동의를 요청할 수 있습니다. - * @seealso hasEmail - * @seealso isEmailVerified - */ -@property (readonly, nullable) NSString *email; -/*! - * @property isEmailVerified - * @abstract 카카오계정에 이메일 등록 시 이메일 인증을 받았는지 여부 - * @seealso email - */ -@property (readonly) KOOptionalBoolean isEmailVerified; -/*! - * @property hasEmail - * @abstract 이메일 보유 여부 - * @discussion email이 nil이고 hasEmail이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 이메일 제공에 대한 동의를 받을 수 있습니다.
- * 이메일 제공동의 scope ID는 "account_email"입니다. - * @seealso email - */ -@property (readonly) KOOptionalBoolean hasEmail; - - - -/*! - * @property isKakaotalkUser - * @abstract 카카오톡 서비스 가입 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * 카카오톡 카카오계정 설정에 연결되어 있는 카카오계정은 true가 반환됩니다.
- * 사용자에게 동의를 받지 않았을 경우 null이 반환되며 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 카카오톡 가입 여부에 대한 동의를 받을 수 있습니다.
- * 카카오톡 서비스 가입 여부 scope ID는 "is_kakaotalk_user"입니다. - */ -@property (readonly) KOOptionalBoolean isKakaotalkUser; - - - -/*! - * @property phoneNumber - * @abstract 카카오톡에서 인증한 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다.
- * 카카오톡에 연결되어 있지 않은 카카오계정은 전화번호가 존재하지 않습니다. - * @seealso hasPhoneNumber - */ -@property (readonly, nullable) NSString *phoneNumber; -/*! - * @property hasPhoneNumber - * @abstract 전화번호 보유 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * phoneNumber가 nil이고 hasPhoneNumber가 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 전화번호 제공에 대한 동의를 받을 수 있습니다.
- * 전화번호 제공동의 scope ID는 "phone_number"입니다. - * @seealso phoneNumber - */ -@property (readonly) KOOptionalBoolean hasPhoneNumber; - - - -/*! - * @property displayID - * @abstract 카카오계정의 대표 정보. 이메일 또는 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 계정 상태에 이상이 생긴 경우 텍스트 일부가 마스킹 처리되어 반환됩니다. - * @seealso email - * @seealso phoneNumber - */ -@property (readonly, nullable) NSString *displayID; - - - -/*! - * @property ageRange - * @abstract 사용자의 연령대 정보 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasAgeRange - */ -@property (readonly) KOUserAgeRange ageRange; -/*! - * @property hasAgeRange - * @abstract 카카오계정의 연령대 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 연령대 제공에 대한 동의를 받을 수 있습니다.
- * 연령대 제공동의 scope ID는 "age_range"입니다. - * @seealso ageRange - */ -@property (readonly) KOOptionalBoolean hasAgeRange; -/*! - * @property birthday - * @abstract 사용자의 생일 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다. (MMDD형식)
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasBirthday - */ -@property (readonly, nullable) NSString *birthday; -/*! - * @property hasBirthday - * @abstract 카카오계정의 생일 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 생일 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "birthday"입니다. - * @seealso birthday - */ -@property (readonly) KOOptionalBoolean hasBirthday; -/*! - * @property gender - * @abstract 사용자 카카오계정의 성별 - * @discussion 카카오계정에 등록된 사용자의 성별 정보가 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasGender - */ -@property (readonly) KOUserGender gender; -/*! - * @property hasGender - * @abstract 카카오계정의 성별 보유 여부 - * @discussion gender가 nil이고 hasGender이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 성별 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "gender"입니다. - * @seealso gender - */ -@property (readonly) KOOptionalBoolean hasGender; - -/*! - * @method needsScopeAccountEmail - * @abstract 이메일을 가져오기 위한 사용자 동의 "account_email" 필요 여부 - * @seealso email - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAccountEmail; -/*! - * @method needsScopePhoneNumber - * @abstract 전화번호를 가져오기 위한 사용자 동의 "phone_number" 필요 여부 - * @seealso phoneNumber - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopePhoneNumber; -/*! - * @method needsScopeAgeRange - * @abstract 연령대 정보를 가져오기 위한 사용자 동의 "age_range" 필요 여부 - * @seealso ageRange - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAgeRange; -/*! - * @method needsScopeBirthday - * @abstract 생일을 가져오기 위한 사용자 동의 "birthday" 필요 여부 - * @seealso birthday - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeBirthday; -/*! - * @method needsScopeGender - * @abstract 성별을 가져오기 위한 사용자 동의 "gender" 필요 여부 - * @seealso gender - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeGender; -/*! - * @method needsScopeIsKakaotalkUser - * @abstract 카카오톡 가입 여부를 가져오기 위한 사용자 동의 "is_kakaotalk_user" 필요 여부 - * @seealso isKakaotalkUser - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeIsKakaotalkUser; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)accountWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUtils.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUtils.h deleted file mode 100644 index 9ba8e48..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KOUtils.h +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUtils - 카카오 SDK Util 클래스. - */ - -#import -#import - -@interface KOUtils : NSObject - -/* - @abstract 카카오링크 콜백 URL 정보를 얻는다. - */ -+ (NSString *)kakaoLinkCallbackURL DEPRECATED_ATTRIBUTE; - -/* - @abstract SDK 기본 헤더 정보를 얻는다. - */ -+ (NSString *)kaHeader; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoOpenSDK.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoOpenSDK.h deleted file mode 100644 index 857e34f..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoOpenSDK.h +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright 2015-2017 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import -#import -#import -#import -#import - -#import -#import -#import -#import -#import -#import -#import -#import - -#define KAKAO_SDK_IOS_VERSION_STRING @"1.8.2" diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessageObject.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessageObject.h deleted file mode 100644 index 16f8fb9..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessageObject.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessageObject.h - Push 전송 시 보낼 메시지 객체 - */ -#import "KakaoPushMessagePropertyForApns.h" -#import "KakaoPushMessagePropertyForGcm.h" - -/*! - @class KakaoPushMessageObject - @discussion Push 전송 시 보낼 메시지 객체 - */ -@interface KakaoPushMessageObject : NSObject - -/*! - * @property forApns - * @abstract iOS 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForApns *forApns; - -/*! - * @property forGcm - * @abstract Android 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForGcm *forGcm; - -- (id)initWithApnsProperty:(KakaoPushMessagePropertyForApns *)forApns - gcmProperty:(KakaoPushMessagePropertyForGcm *)forGcm; - -- (NSDictionary *)asDictionary; - -@end - diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForApns.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForApns.h deleted file mode 100644 index 95992f6..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForApns.h +++ /dev/null @@ -1,119 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForApns.h - Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForApns - @discussion Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ -@interface KakaoPushMessagePropertyForApns : NSObject - -/*! - * @property message - * @abstract 알림 센터에 표시할 메시지. aps의 alert에 해당 됨. NSString 혹은 NSDictionary가 들어감. 참조: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html - */ -@property(nonatomic, readonly) NSObject *message; - -/*! - * @property topic - * @abstract VoIP(Voice over Internet Protocol)를 사용할 경우에 "voip"로 설정 - */ -@property(nonatomic, copy, nullable) NSString *topic; - -/*! - * @property mutableContent - * @abstract 기기에 보여지기 전, payload를 변경하고자 할 때 사용 - */ -@property(nonatomic, assign) BOOL mutableContent; - -/*! - * @property expiration - * @abstract 푸시 수신이 불가능한 경우, 해당 기간(단위: 초)동안 재시도 함 - */ -@property(nonatomic, assign) NSUInteger expiration; - -/*! - * @property collapse - * @abstract 푸시 메시지 구분자. 같은 collapse 을 가지는 푸시가 여러개 쌓여있다면 하나의 푸시로 단말에게 전송됨 - */ -@property(nonatomic, copy, nullable) NSString *collapse; - -/*! - * @property badgeCount - * @abstract 앱 배치에 표시할 숫자. 음수일 경우 무시됨, 기본 값 -1 - */ -@property(nonatomic, assign) NSInteger badgeCount; - -/*! - * @property sound - * @abstract 푸시 수신 시 재생할 알림음. "default"를 입력하거나 앱에 해당 알림음 파일이 없으면 기본 알림음 재생됨 - */ -@property(nonatomic, copy, nullable) NSString *sound; - -/*! - * @property pushAlert - * @abstract false(NO)일 경우 음소거, 알림센터에 뜨지 않는 상태로 Push 전송. 푸시 음소거 및 알림센터에 띄우지는 않되, badge 수는 바꾸고 싶을 때 사용. 기본 값 true(YES) - */ -@property(nonatomic, assign) BOOL pushAlert; - -/*! - * @property contentAvailable - * @abstract 백그라운드 업데이트 알림(Silent Notification)을 사용하고 싶을 때 설정 - */ -@property(nonatomic, assign) BOOL contentAvailable; - -/*! - * @property category - * @abstract 알림의 유형을 나타내는 문자열. aps의 category-identifier - */ -@property(nonatomic, copy, nullable) NSString *category; - -/*! - * @property customField - * @abstract 푸시 알림을 통해 앱 실행 시 같이 넘길 파라미터들 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - * @property returnUrl - * @abstract 푸시 알림의 전송 실패("BadDeviceToken", "Unregistered", "DeviceTokenNotForTopic")에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageString:(NSString *)message - customField:(nullable NSDictionary *)customField; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageDictionary:(NSDictionary *)message - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - -@end - -NS_ASSUME_NONNULL_END diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForGcm.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForGcm.h deleted file mode 100644 index dc2cc32..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForGcm.h +++ /dev/null @@ -1,85 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForGcm.h - Push 전송 시 보낼 메시지 객체 (Android 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForGcm - @abstract Push 전송 시 보낼 메시지 객체 (Android 파트) - */ -@interface KakaoPushMessagePropertyForGcm : NSObject - -/*! - @property collapse - @abstract 푸시 메시지 구분자. 같은 값을 가지는 푸시 알림이 여러 개일 때 마지막 하나만 사용자 기기로 전송 - */ -@property(nonatomic, readonly) NSString *collapse; - -/*! - @property timeToLive - @abstract GCM에 저장될 미전송메시지 보관주기 (단위:초), 0 또는 음수를 입력할 경우 무시됨, 기본값 4주 - */ -@property(nonatomic, assign) NSInteger timeToLive; - -/*! - @property dryRun - @abstract 테스트를 위해 사용. 실제 단말에 전송되지 않는다 - */ -@property(nonatomic, assign) BOOL dryRun; - -/*! - @property priority - @abstract 단말이 도즈모드 상태에서도 푸시를 받을 수 있도록 한다. "high" 또는 "normal", 서버 기본값 "normal" - */ -@property(nonatomic, copy) NSString *priority; - -/*! - @property customField - @abstract 메시지 외 앱에 부가적인 정보를 전달하고자 할 때 사용. APNS와 다르게 푸시 알림 한 건당 custom_field 전체 길이가 4KB까지 가능 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - @property notification - @abstract 사용자에게 표시되는 사전 정의된 알림 페이로드의 키-값 쌍을 지정. 사전 정의된 키는 https://firebase.google.com/docs/cloud-messaging/http-server-ref '표 2a/2b/2c' 참고 - */ -@property(nonatomic, copy) NSDictionary *notification; - -/*! - @property returnUrl - @abstract 푸시 알림의 전송 실패에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithCollapse:(nullable NSString *)collapse - delayWhileIdle:(BOOL)delayWhileIdle - returnUrl:(nullable NSString *)returnUrl - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - - -@property(nonatomic, assign) BOOL delayWhileIdle DEPRECATED_MSG_ATTRIBUTE("The value of this property will be ignored."); - -@end - -NS_ASSUME_NONNULL_END diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/NSDictionary+SafeValue.h b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/NSDictionary+SafeValue.h deleted file mode 100644 index 551ac80..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Headers/NSDictionary+SafeValue.h +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOSession.h" - -@interface NSDictionary (SafeValue) - -- (id)safeValueForKey:(NSString *)key; -- (id)safeObjectForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key floatingPoint:(BOOL)floatingPoint; -- (NSDictionary *)safeValueDictionary; -- (KOOptionalBoolean)optionalBooleanForKey:(NSString *)key; - -@end diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Resources/KakaoOpenSDK b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Resources/KakaoOpenSDK deleted file mode 100644 index 44d5329..0000000 Binary files a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/A/Resources/KakaoOpenSDK and /dev/null differ diff --git a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/Current b/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/Current deleted file mode 120000 index 044dcb9..0000000 --- a/KakaoLoginExample/ios/KakaoOpenSDK.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -./A \ No newline at end of file diff --git a/KakaoLoginExample/ios/Podfile b/KakaoLoginExample/ios/Podfile new file mode 100644 index 0000000..420213e --- /dev/null +++ b/KakaoLoginExample/ios/Podfile @@ -0,0 +1,46 @@ +platform :ios, '9.0' +require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' + +target 'KakaoLoginExample' do + # Pods for KakaoLoginExample + pod 'React', :path => '../node_modules/react-native/' + pod 'React-Core', :path => '../node_modules/react-native/React' + pod 'React-DevSupport', :path => '../node_modules/react-native/React' + pod 'React-RCTActionSheet', :path => '../node_modules/react-native/Libraries/ActionSheetIOS' + pod 'React-RCTAnimation', :path => '../node_modules/react-native/Libraries/NativeAnimation' + pod 'React-RCTBlob', :path => '../node_modules/react-native/Libraries/Blob' + pod 'React-RCTImage', :path => '../node_modules/react-native/Libraries/Image' + pod 'React-RCTLinking', :path => '../node_modules/react-native/Libraries/LinkingIOS' + pod 'React-RCTNetwork', :path => '../node_modules/react-native/Libraries/Network' + pod 'React-RCTSettings', :path => '../node_modules/react-native/Libraries/Settings' + pod 'React-RCTText', :path => '../node_modules/react-native/Libraries/Text' + pod 'React-RCTVibration', :path => '../node_modules/react-native/Libraries/Vibration' + pod 'React-RCTWebSocket', :path => '../node_modules/react-native/Libraries/WebSocket' + + pod 'React-cxxreact', :path => '../node_modules/react-native/ReactCommon/cxxreact' + pod 'React-jsi', :path => '../node_modules/react-native/ReactCommon/jsi' + pod 'React-jsiexecutor', :path => '../node_modules/react-native/ReactCommon/jsiexecutor' + pod 'React-jsinspector', :path => '../node_modules/react-native/ReactCommon/jsinspector' + pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga' + + pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec' + pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec' + pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec' + + target 'KakaoLoginExampleTests' do + inherit! :search_paths + # Pods for testing + end + + use_native_modules! +end + +target 'KakaoLoginExample-tvOS' do + # Pods for KakaoLoginExample-tvOS + + target 'KakaoLoginExample-tvOSTests' do + inherit! :search_paths + # Pods for testing + end + +end diff --git a/KakaoLoginExample/ios/Podfile.lock b/KakaoLoginExample/ios/Podfile.lock new file mode 100644 index 0000000..94a56b4 --- /dev/null +++ b/KakaoLoginExample/ios/Podfile.lock @@ -0,0 +1,203 @@ +PODS: + - boost-for-react-native (1.63.0) + - DoubleConversion (1.1.6) + - Folly (2018.10.22.00): + - boost-for-react-native + - DoubleConversion + - Folly/Default (= 2018.10.22.00) + - glog + - Folly/Default (2018.10.22.00): + - boost-for-react-native + - DoubleConversion + - glog + - glog (0.3.5) + - KakaoOpenSDK (1.16.0): + - KakaoOpenSDK/KakaoCommon (= 1.16.0) + - KakaoOpenSDK/KakaoLink (= 1.16.0) + - KakaoOpenSDK/KakaoMessageTemplate (= 1.16.0) + - KakaoOpenSDK/KakaoNavi (= 1.16.0) + - KakaoOpenSDK/KakaoOpenSDK (= 1.16.0) + - KakaoOpenSDK/KakaoCommon (1.16.0) + - KakaoOpenSDK/KakaoLink (1.16.0): + - KakaoOpenSDK/KakaoCommon + - KakaoOpenSDK/KakaoMessageTemplate (1.16.0) + - KakaoOpenSDK/KakaoNavi (1.16.0): + - KakaoOpenSDK/KakaoCommon + - KakaoOpenSDK/KakaoOpenSDK (1.16.0) + - React (0.60.5): + - React-Core (= 0.60.5) + - React-DevSupport (= 0.60.5) + - React-RCTActionSheet (= 0.60.5) + - React-RCTAnimation (= 0.60.5) + - React-RCTBlob (= 0.60.5) + - React-RCTImage (= 0.60.5) + - React-RCTLinking (= 0.60.5) + - React-RCTNetwork (= 0.60.5) + - React-RCTSettings (= 0.60.5) + - React-RCTText (= 0.60.5) + - React-RCTVibration (= 0.60.5) + - React-RCTWebSocket (= 0.60.5) + - React-Core (0.60.5): + - Folly (= 2018.10.22.00) + - React-cxxreact (= 0.60.5) + - React-jsiexecutor (= 0.60.5) + - yoga (= 0.60.5.React) + - React-cxxreact (0.60.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsinspector (= 0.60.5) + - React-DevSupport (0.60.5): + - React-Core (= 0.60.5) + - React-RCTWebSocket (= 0.60.5) + - React-jsi (0.60.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsi/Default (= 0.60.5) + - React-jsi/Default (0.60.5): + - boost-for-react-native (= 1.63.0) + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-jsiexecutor (0.60.5): + - DoubleConversion + - Folly (= 2018.10.22.00) + - glog + - React-cxxreact (= 0.60.5) + - React-jsi (= 0.60.5) + - React-jsinspector (0.60.5) + - react-native-kakao-logins (1.3.7): + - KakaoOpenSDK (~> 1.16.0) + - React + - React-RCTActionSheet (0.60.5): + - React-Core (= 0.60.5) + - React-RCTAnimation (0.60.5): + - React-Core (= 0.60.5) + - React-RCTBlob (0.60.5): + - React-Core (= 0.60.5) + - React-RCTNetwork (= 0.60.5) + - React-RCTWebSocket (= 0.60.5) + - React-RCTImage (0.60.5): + - React-Core (= 0.60.5) + - React-RCTNetwork (= 0.60.5) + - React-RCTLinking (0.60.5): + - React-Core (= 0.60.5) + - React-RCTNetwork (0.60.5): + - React-Core (= 0.60.5) + - React-RCTSettings (0.60.5): + - React-Core (= 0.60.5) + - React-RCTText (0.60.5): + - React-Core (= 0.60.5) + - React-RCTVibration (0.60.5): + - React-Core (= 0.60.5) + - React-RCTWebSocket (0.60.5): + - React-Core (= 0.60.5) + - yoga (0.60.5.React) + +DEPENDENCIES: + - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) + - Folly (from `../node_modules/react-native/third-party-podspecs/Folly.podspec`) + - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) + - React (from `../node_modules/react-native/`) + - React-Core (from `../node_modules/react-native/React`) + - React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`) + - React-DevSupport (from `../node_modules/react-native/React`) + - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) + - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) + - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`) + - react-native-kakao-logins (from `../node_modules/react-native-kakao-logins`) + - React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`) + - React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`) + - React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`) + - React-RCTImage (from `../node_modules/react-native/Libraries/Image`) + - React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`) + - React-RCTNetwork (from `../node_modules/react-native/Libraries/Network`) + - React-RCTSettings (from `../node_modules/react-native/Libraries/Settings`) + - React-RCTText (from `../node_modules/react-native/Libraries/Text`) + - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) + - React-RCTWebSocket (from `../node_modules/react-native/Libraries/WebSocket`) + - yoga (from `../node_modules/react-native/ReactCommon/yoga`) + +SPEC REPOS: + https://github.com/cocoapods/specs.git: + - boost-for-react-native + - KakaoOpenSDK + +EXTERNAL SOURCES: + DoubleConversion: + :podspec: "../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec" + Folly: + :podspec: "../node_modules/react-native/third-party-podspecs/Folly.podspec" + glog: + :podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec" + React: + :path: "../node_modules/react-native/" + React-Core: + :path: "../node_modules/react-native/React" + React-cxxreact: + :path: "../node_modules/react-native/ReactCommon/cxxreact" + React-DevSupport: + :path: "../node_modules/react-native/React" + React-jsi: + :path: "../node_modules/react-native/ReactCommon/jsi" + React-jsiexecutor: + :path: "../node_modules/react-native/ReactCommon/jsiexecutor" + React-jsinspector: + :path: "../node_modules/react-native/ReactCommon/jsinspector" + react-native-kakao-logins: + :path: "../node_modules/react-native-kakao-logins" + React-RCTActionSheet: + :path: "../node_modules/react-native/Libraries/ActionSheetIOS" + React-RCTAnimation: + :path: "../node_modules/react-native/Libraries/NativeAnimation" + React-RCTBlob: + :path: "../node_modules/react-native/Libraries/Blob" + React-RCTImage: + :path: "../node_modules/react-native/Libraries/Image" + React-RCTLinking: + :path: "../node_modules/react-native/Libraries/LinkingIOS" + React-RCTNetwork: + :path: "../node_modules/react-native/Libraries/Network" + React-RCTSettings: + :path: "../node_modules/react-native/Libraries/Settings" + React-RCTText: + :path: "../node_modules/react-native/Libraries/Text" + React-RCTVibration: + :path: "../node_modules/react-native/Libraries/Vibration" + React-RCTWebSocket: + :path: "../node_modules/react-native/Libraries/WebSocket" + yoga: + :path: "../node_modules/react-native/ReactCommon/yoga" + +SPEC CHECKSUMS: + boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c + DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2 + Folly: 30e7936e1c45c08d884aa59369ed951a8e68cf51 + glog: 1f3da668190260b06b429bb211bfbee5cd790c28 + KakaoOpenSDK: 453413b65b71ef3c732c070606d3a557ac4e01d1 + React: 53c53c4d99097af47cf60594b8706b4e3321e722 + React-Core: ba421f6b4f4cbe2fb17c0b6fc675f87622e78a64 + React-cxxreact: 8384287780c4999351ad9b6e7a149d9ed10a2395 + React-DevSupport: 197fb409737cff2c4f9986e77c220d7452cb9f9f + React-jsi: 4d8c9efb6312a9725b18d6fc818ffc103f60fec2 + React-jsiexecutor: 90ad2f9db09513fc763bc757fdc3c4ff8bde2a30 + React-jsinspector: e08662d1bf5b129a3d556eb9ea343a3f40353ae4 + react-native-kakao-logins: 7343ceff8f648689b2f4711624927f0f5606725f + React-RCTActionSheet: b0f1ea83f4bf75fb966eae9bfc47b78c8d3efd90 + React-RCTAnimation: 359ba1b5690b1e87cc173558a78e82d35919333e + React-RCTBlob: 5e2b55f76e9a1c7ae52b826923502ddc3238df24 + React-RCTImage: f5f1c50922164e89bdda67bcd0153952a5cfe719 + React-RCTLinking: d0ecbd791e9ddddc41fa1f66b0255de90e8ee1e9 + React-RCTNetwork: e26946300b0ab7bb6c4a6348090e93fa21f33a9d + React-RCTSettings: d0d37cb521b7470c998595a44f05847777cc3f42 + React-RCTText: b074d89033583d4f2eb5faf7ea2db3a13c7553a2 + React-RCTVibration: 2105b2e0e2b66a6408fc69a46c8a7fb5b2fdade0 + React-RCTWebSocket: cd932a16b7214898b6b7f788c8bddb3637246ac4 + yoga: 312528f5bbbba37b4dcea5ef00e8b4033fdd9411 + +PODFILE CHECKSUM: d0eed8782467d6c06f8755e17a4d5b7a9e3d0180 + +COCOAPODS: 1.7.1 diff --git a/KakaoLoginExample/metro.config.js b/KakaoLoginExample/metro.config.js new file mode 100644 index 0000000..13a9642 --- /dev/null +++ b/KakaoLoginExample/metro.config.js @@ -0,0 +1,17 @@ +/** + * Metro configuration for React Native + * https://github.com/facebook/react-native + * + * @format + */ + +module.exports = { + transformer: { + getTransformOptions: async () => ({ + transform: { + experimentalImportSupport: false, + inlineRequires: false, + }, + }), + }, +}; diff --git a/KakaoLoginExample/package.json b/KakaoLoginExample/package.json index c6f2119..e309492 100644 --- a/KakaoLoginExample/package.json +++ b/KakaoLoginExample/package.json @@ -11,33 +11,27 @@ "ios": "node node_modules/react-native/local-cli/cli.js run-ios", "jest": "jest", "ios:reset": "rm -rf ios/build/ModuleCache", - "lint": "eslint -c .eslintrc.js './src/**/*.js'", + "lint": "eslint -c .eslintrc.js './*.js'", "build:ios": "react-native bundle --entry-file index.ios.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios", "build:android": "react-native bundle --entry-file index.android.js --platform android --dev false --bundle-output android/main.jsbundle --assets-dest android" }, "dependencies": { "apsl-react-native-button": "^3.1.1", - "react": "^16.6.3", - "react-native": "^0.57.8", + "react": "16.8.6", + "react-native": "0.60.5", "react-native-extended-stylesheet": "^0.11.1", - "react-native-kakao-logins": "^1.3.0", + "react-native-kakao-logins": "file:../", "react-navigation": "^3.0.8" }, "devDependencies": { - "metro-react-native-babel-preset": "^0.50.0", - "@babel/cli": "^7.2.0", - "@babel/core": "^7.2.2", - "babel-core": "^7.0.0-bridge.0", - "babel-eslint": "^10.0.1", - "babel-jest": "^23.6.0", - "babel-preset-react-native": "^4.0.1", - "eslint": "^5.10.0", - "eslint-config-airbnb-base": "^13.1.0", - "eslint-plugin-import": "^2.14.0", - "eslint-plugin-node": "^8.0.0", - "eslint-plugin-promise": "^4.0.1", - "jest": "23.6.0", - "react-test-renderer": "^16.6.3" + "@babel/core": "^7.5.5", + "@babel/runtime": "^7.5.5", + "@react-native-community/eslint-config": "^0.0.5", + "babel-jest": "^24.9.0", + "eslint": "^6.2.1", + "jest": "^24.9.0", + "metro-react-native-babel-preset": "^0.56.0", + "react-test-renderer": "16.8.6" }, "jest": { "preset": "react-native" diff --git a/KakaoLoginExample/yarn.lock b/KakaoLoginExample/yarn.lock index b479c04..670b2c9 100644 --- a/KakaoLoginExample/yarn.lock +++ b/KakaoLoginExample/yarn.lock @@ -2,58 +2,41 @@ # yarn lockfile v1 -"@babel/cli@^7.2.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.4.4.tgz#5454bb7112f29026a4069d8e6f0e1794e651966c" - integrity sha512-XGr5YjQSjgTa6OzQZY57FAJsdeVSAKR/u/KA5exWIz66IKtv/zXtHy+fIZcMry/EgYegwuHE7vzGnrFhjdIAsQ== - dependencies: - commander "^2.8.1" - convert-source-map "^1.1.0" - fs-readdir-recursive "^1.1.0" - glob "^7.0.0" - lodash "^4.17.11" - mkdirp "^0.5.1" - output-file-sync "^2.0.0" - slash "^2.0.0" - source-map "^0.5.0" - optionalDependencies: - chokidar "^2.0.4" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.0.0-beta.35": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz#bc0782f6d69f7b7d49531219699b988f669a8f9d" + integrity sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw== dependencies: "@babel/highlight" "^7.0.0" -"@babel/core@^7.0.0", "@babel/core@^7.2.2": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.4.5.tgz#081f97e8ffca65a9b4b0fdc7e274e703f000c06a" - integrity sha512-OvjIh6aqXtlsA8ujtGKfC7LYWksYSX8yQcM8Ay3LuvVeQ63lcOKgoZWVqcpFwkd29aYU9rVx7jxhfhiEDV9MZA== +"@babel/core@^7.0.0", "@babel/core@^7.1.0", "@babel/core@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.5.5.tgz#17b2686ef0d6bc58f963dddd68ab669755582c30" + integrity sha512-i4qoSr2KTtce0DmkuuQBV4AuQgGPUcPXMr9L5MyYAtk06z068lQ10a4O009fe5OB/DfNV+h+qqT7ddNV8UnRjg== dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.4" - "@babel/helpers" "^7.4.4" - "@babel/parser" "^7.4.5" + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.5.5" + "@babel/helpers" "^7.5.5" + "@babel/parser" "^7.5.5" "@babel/template" "^7.4.4" - "@babel/traverse" "^7.4.5" - "@babel/types" "^7.4.4" + "@babel/traverse" "^7.5.5" + "@babel/types" "^7.5.5" convert-source-map "^1.1.0" debug "^4.1.0" json5 "^2.1.0" - lodash "^4.17.11" + lodash "^4.17.13" resolve "^1.3.2" semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.0.0", "@babel/generator@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.4.4.tgz#174a215eb843fc392c7edcaabeaa873de6e8f041" - integrity sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ== +"@babel/generator@^7.0.0", "@babel/generator@^7.4.0", "@babel/generator@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.5.5.tgz#873a7f936a3c89491b43536d12245b626664e3cf" + integrity sha512-ETI/4vyTSxTzGnU2c49XHv2zhExkv9JHLTwDAFz85kmcwuShvYG2H08FwgIguQf4JC75CBnXAUM5PqeF4fj0nQ== dependencies: - "@babel/types" "^7.4.4" + "@babel/types" "^7.5.5" jsesc "^2.5.1" - lodash "^4.17.11" + lodash "^4.17.13" source-map "^0.5.0" trim-right "^1.0.1" @@ -89,26 +72,26 @@ "@babel/traverse" "^7.4.4" "@babel/types" "^7.4.4" -"@babel/helper-create-class-features-plugin@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.4.4.tgz#fc3d690af6554cc9efc607364a82d48f58736dba" - integrity sha512-UbBHIa2qeAGgyiNR9RszVF7bUHEdgS4JAUNT8SiqrAN6YJVxlOxeLr5pBzb5kan302dejJ9nla4RyKcR1XT6XA== +"@babel/helper-create-class-features-plugin@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.5.5.tgz#401f302c8ddbc0edd36f7c6b2887d8fa1122e5a4" + integrity sha512-ZsxkyYiRA7Bg+ZTRpPvB6AbOFKTFFK4LrvTet8lInm0V468MWCaSYJE+I7v2z2r8KNLtYiV+K5kTCnR7dvyZjg== dependencies: "@babel/helper-function-name" "^7.1.0" - "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-member-expression-to-functions" "^7.5.5" "@babel/helper-optimise-call-expression" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.4.4" + "@babel/helper-replace-supers" "^7.5.5" "@babel/helper-split-export-declaration" "^7.4.4" -"@babel/helper-define-map@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.4.4.tgz#6969d1f570b46bdc900d1eba8e5d59c48ba2c12a" - integrity sha512-IX3Ln8gLhZpSuqHJSnTNBWGDE9kdkTEWl21A/K7PQ00tseBwbqCHTvNLHSBd9M0R5rER4h5Rsvj9vw0R5SieBg== +"@babel/helper-define-map@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.5.5.tgz#3dec32c2046f37e09b28c93eb0b103fd2a25d369" + integrity sha512-fTfxx7i0B5NJqvUOBBGREnrqbTxRh7zinBANpZXAVDlsZxYdclDp467G1sQ8VZYMnAURY3RpBUAgOYT9GfzHBg== dependencies: "@babel/helper-function-name" "^7.1.0" - "@babel/types" "^7.4.4" - lodash "^4.17.11" + "@babel/types" "^7.5.5" + lodash "^4.17.13" "@babel/helper-explode-assignable-expression@^7.1.0": version "7.1.0" @@ -141,12 +124,12 @@ dependencies: "@babel/types" "^7.4.4" -"@babel/helper-member-expression-to-functions@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" - integrity sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg== +"@babel/helper-member-expression-to-functions@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz#1fb5b8ec4453a93c439ee9fe3aeea4a84b76b590" + integrity sha512-5qZ3D1uMclSNqYcXqiHoA0meVdv+xUEex9em2fqMnrk/scphGlGgg66zjMrPJESPwrFJ6sbfFQYUSa0Mz7FabA== dependencies: - "@babel/types" "^7.0.0" + "@babel/types" "^7.5.5" "@babel/helper-module-imports@^7.0.0": version "7.0.0" @@ -156,16 +139,16 @@ "@babel/types" "^7.0.0" "@babel/helper-module-transforms@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.4.4.tgz#96115ea42a2f139e619e98ed46df6019b94414b8" - integrity sha512-3Z1yp8TVQf+B4ynN7WoHPKS8EkdTbgAEy0nU0rs/1Kw4pDgmvYH3rz3aI11KgxKCba2cn7N+tqzV1mY2HMN96w== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz#f84ff8a09038dcbca1fd4355661a500937165b4a" + integrity sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-simple-access" "^7.1.0" "@babel/helper-split-export-declaration" "^7.4.4" "@babel/template" "^7.4.4" - "@babel/types" "^7.4.4" - lodash "^4.17.11" + "@babel/types" "^7.5.5" + lodash "^4.17.13" "@babel/helper-optimise-call-expression@^7.0.0": version "7.0.0" @@ -180,11 +163,11 @@ integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== "@babel/helper-regex@^7.0.0", "@babel/helper-regex@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.4.4.tgz#a47e02bc91fb259d2e6727c2a30013e3ac13c4a2" - integrity sha512-Y5nuB/kESmR3tKjU8Nkn1wMGEx1tjJX076HBMeL3XLQCu6vA/YRzuTW0bbb+qRnXvQGn+d6Rx953yffl8vEy7Q== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.5.5.tgz#0aa6824f7100a2e0e89c1527c23936c152cab351" + integrity sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw== dependencies: - lodash "^4.17.11" + lodash "^4.17.13" "@babel/helper-remap-async-to-generator@^7.1.0": version "7.1.0" @@ -197,15 +180,15 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.0.0" -"@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.4.4.tgz#aee41783ebe4f2d3ab3ae775e1cc6f1a90cefa27" - integrity sha512-04xGEnd+s01nY1l15EuMS1rfKktNF+1CkKmHoErDppjAAZL+IUBZpzT748x262HF7fibaQPhbvWUl5HeSt1EXg== +"@babel/helper-replace-supers@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz#f84ce43df031222d2bad068d2626cb5799c34bc2" + integrity sha512-XvRFWrNnlsow2u7jXDuH4jDDctkxbS7gXssrP4q2nUD606ukXHRvydj346wmNg+zAgpFx4MWf4+usfC93bElJg== dependencies: - "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-member-expression-to-functions" "^7.5.5" "@babel/helper-optimise-call-expression" "^7.0.0" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/traverse" "^7.5.5" + "@babel/types" "^7.5.5" "@babel/helper-simple-access@^7.1.0": version "7.1.0" @@ -232,28 +215,28 @@ "@babel/traverse" "^7.1.0" "@babel/types" "^7.2.0" -"@babel/helpers@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.4.4.tgz#868b0ef59c1dd4e78744562d5ce1b59c89f2f2a5" - integrity sha512-igczbR/0SeuPR8RFfC7tGrbdTbFL3QTvH6D+Z6zNxnTe//GyqmtHmDkzrqDmyZ3eSwPqB/LhyKoU5DXsp+Vp2A== +"@babel/helpers@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.5.5.tgz#63908d2a73942229d1e6685bc2a0e730dde3b75e" + integrity sha512-nRq2BUhxZFnfEn/ciJuhklHvFOqjJUD5wpx+1bxUF2axL9C+v4DE/dmp5sT2dKnpOs4orZWzpAZqlCy8QqE/7g== dependencies: "@babel/template" "^7.4.4" - "@babel/traverse" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/traverse" "^7.5.5" + "@babel/types" "^7.5.5" "@babel/highlight@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" - integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz#56d11312bd9248fa619591d02472be6e8cb32540" + integrity sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ== dependencies: chalk "^2.0.0" esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@^7.0.0", "@babel/parser@^7.4.4", "@babel/parser@^7.4.5": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.4.5.tgz#04af8d5d5a2b044a2a1bffacc1e5e6673544e872" - integrity sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew== +"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.5.5.tgz#02f077ac8817d3df4a832ef59de67565e71cca4b" + integrity sha512-E5BN68cqR7dhKan1SfqgPGhQ178bkVKpXTPEXnFJBrEt8/DKRZlybmy+IgYLTeN7tp1R5Ccmbm2rBk17sHYU3g== "@babel/plugin-external-helpers@^7.0.0": version "7.2.0" @@ -263,17 +246,17 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-class-properties@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.4.4.tgz#93a6486eed86d53452ab9bab35e368e9461198ce" - integrity sha512-WjKTI8g8d5w1Bc9zgwSz2nfrsNQsXcCf9J9cdCvrJV6RF56yztwm4TmJC0MgJ9tvwO9gUA/mcYe89bLdGfiXFg== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.5.5.tgz#a974cfae1e37c3110e71f3c6a2e48b8e71958cd4" + integrity sha512-AF79FsnWFxjlaosgdi421vmYG6/jg79bVD0dpD44QdgobzHKuLZ6S3vl8la9qIeSwGi8i1fS0O1mfuDAAdo1/A== dependencies: - "@babel/helper-create-class-features-plugin" "^7.4.4" + "@babel/helper-create-class-features-plugin" "^7.5.5" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-proposal-export-default-from@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.2.0.tgz#737b0da44b9254b6152fe29bb99c64e5691f6f68" - integrity sha512-NVfNe7F6nsasG1FnvcFxh2FN0l04ZNe75qTOAVOILWPam0tw9a63RtT/Dab8dPjedZa4fTQaQ83yMMywF9OSug== + version "7.5.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-export-default-from/-/plugin-proposal-export-default-from-7.5.2.tgz#2c0ac2dcc36e3b2443fead2c3c5fc796fb1b5145" + integrity sha512-wr9Itk05L1/wyyZKVEmXWCdcsp/e185WUNl6AfYZeEKYaUPPvHXRDqO5K1VH7/UamYqGJowFRuCv30aDYZawsg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-export-default-from" "^7.2.0" @@ -287,9 +270,9 @@ "@babel/plugin-syntax-nullish-coalescing-operator" "^7.2.0" "@babel/plugin-proposal-object-rest-spread@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.4.4.tgz#1ef173fcf24b3e2df92a678f027673b55e7e3005" - integrity sha512-dMBG6cSPBbHeEBdFXeQ2QLc5gUpg4Vkaz8octD4aoW/ISO+jBOcsuxYL7bsb5WSu8RLP6boxrBIALEHgoHtO9g== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz#61939744f71ba76a3ae46b5eea18a54c16d22e58" + integrity sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-object-rest-spread" "^7.2.0" @@ -388,9 +371,9 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-async-to-generator@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.4.4.tgz#a3f1d01f2f21cadab20b33a82133116f14fb5894" - integrity sha512-YiqW2Li8TXmzgbXw+STsSqPBPFnGviiaSp6CYOq55X8GQ2SGVLrXB6pNid8HkqkZAzOH6knbai3snhP7v0fNwA== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz#89a3848a0166623b5bc481164b5936ab947e887e" + integrity sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" @@ -404,24 +387,24 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-block-scoping@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.4.4.tgz#c13279fabf6b916661531841a23c4b7dae29646d" - integrity sha512-jkTUyWZcTrwxu5DD4rWz6rDB5Cjdmgz6z7M7RLXOJyCUkFBawssDGcGh8M/0FTSB87avyJI1HsTwUXp9nKA1PA== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.5.5.tgz#a35f395e5402822f10d2119f6f8e045e3639a2ce" + integrity sha512-82A3CLRRdYubkG85lKwhZB0WZoHxLGsJdux/cOVaJCJpvYFl1LVzAIFyRsa7CvXqW8rBM4Zf3Bfn8PHt5DP0Sg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - lodash "^4.17.11" + lodash "^4.17.13" "@babel/plugin-transform-classes@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.4.4.tgz#0ce4094cdafd709721076d3b9c38ad31ca715eb6" - integrity sha512-/e44eFLImEGIpL9qPxSRat13I5QNRgBLu2hOQJCF7VLy/otSM/sypV1+XaIw5+502RX/+6YaSAPmldk+nhHDPw== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz#d094299d9bd680a14a2a0edae38305ad60fb4de9" + integrity sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg== dependencies: "@babel/helper-annotate-as-pure" "^7.0.0" - "@babel/helper-define-map" "^7.4.4" + "@babel/helper-define-map" "^7.5.5" "@babel/helper-function-name" "^7.1.0" "@babel/helper-optimise-call-expression" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.4.4" + "@babel/helper-replace-supers" "^7.5.5" "@babel/helper-split-export-declaration" "^7.4.4" globals "^11.1.0" @@ -433,9 +416,9 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-destructuring@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.4.4.tgz#9d964717829cc9e4b601fc82a26a71a4d8faf20f" - integrity sha512-/aOx+nW0w8eHiEHm+BTERB2oJn5D127iye/SUQl7NjHy0lf+j7h4MKMMSOwdazGq9OxgiNADncE+SRJkCxjZpQ== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.5.0.tgz#f6c09fdfe3f94516ff074fe877db7bc9ef05855a" + integrity sha512-YbYgbd3TryYYLGyC7ZR+Tq8H/+bCmwoaxHfJHupom5ECstzbRLTch6gOQbhEY9Z4hiCNHEURgq06ykFv9JZ/QQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -485,13 +468,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-modules-commonjs@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.4.4.tgz#0bef4713d30f1d78c2e59b3d6db40e60192cac1e" - integrity sha512-4sfBOJt58sEo9a2BQXnZq+Q3ZTSAUXyK3E30o36BOGnJ+tvJ6YSxF0PG6kERvbeISgProodWuI9UVG3/FMY6iw== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.5.0.tgz#425127e6045231360858eeaa47a71d75eded7a74" + integrity sha512-xmHq0B+ytyrWJvQTc5OWAC4ii6Dhr0s22STOoydokG51JjWhyYo5mRPXoi+ZmtHQhZZwuXNN+GG5jy5UZZJxIQ== dependencies: "@babel/helper-module-transforms" "^7.4.4" "@babel/helper-plugin-utils" "^7.0.0" "@babel/helper-simple-access" "^7.1.0" + babel-plugin-dynamic-import-node "^2.3.0" "@babel/plugin-transform-object-assign@^7.0.0": version "7.2.0" @@ -501,12 +485,12 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-object-super@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz#b35d4c10f56bab5d650047dad0f1d8e8814b6598" - integrity sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz#c70021df834073c65eb613b8679cc4a381d1a9f9" + integrity sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/helper-replace-supers" "^7.1.0" + "@babel/helper-replace-supers" "^7.5.5" "@babel/plugin-transform-parameters@^7.0.0": version "7.4.4" @@ -532,9 +516,9 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-react-jsx-source@^7.0.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.2.0.tgz#20c8c60f0140f5dd3cd63418d452801cf3f7180f" - integrity sha512-A32OkKTp4i5U6aE88GwwcuV4HAprUgHcTq0sSafLxjr6AW0QahrCRCjxogkbbcdtpbXkuTOlgpjophCxb6sh5g== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.5.0.tgz#583b10c49cf057e237085bcbd8cc960bd83bd96b" + integrity sha512-58Q+Jsy4IDCZx7kqEZuSDdam/1oW8OdDX8f+Loo6xyxdfg1yF0GE2XNJQSTZCaMol93+FBzpWiPEwtbMloAcPg== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.2.0" @@ -556,9 +540,9 @@ regenerator-transform "^0.14.0" "@babel/plugin-transform-runtime@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.4.4.tgz#a50f5d16e9c3a4ac18a1a9f9803c107c380bce08" - integrity sha512-aMVojEjPszvau3NRg+TIH14ynZLvPewH4xhlCW1w6A3rkxTS1m4uwzRclYR9oS+rl/dr+kT+pzbfHuAWP/lc7Q== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.5.5.tgz#a6331afbfc59189d2135b2e09474457a8e3d28bc" + integrity sha512-6Xmeidsun5rkwnGfMOp6/z9nSzWpHFNVr2Jx7kwoq4mVatQfQx5S56drBgEHF+XQbKOdIaOiMIINvp/kAwMN+w== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/helper-plugin-utils" "^7.0.0" @@ -596,10 +580,11 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-transform-typescript@^7.0.0": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.4.5.tgz#ab3351ba35307b79981993536c93ff8be050ba28" - integrity sha512-RPB/YeGr4ZrFKNwfuQRlMf2lxoCUaU01MTw39/OFE/RiL8HDjtn68BwEPft1P7JN4akyEmjGWAMNldOV7o9V2g== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.5.5.tgz#6d862766f09b2da1cb1f7d505fe2aedab6b7d4b8" + integrity sha512-pehKf4m640myZu5B2ZviLaiBlxMCjSZ1qTEO459AXKX5GnPueyulJeCqZFs1nz/Ya2dDzXQ1NxZ/kKNWyD4h6w== dependencies: + "@babel/helper-create-class-features-plugin" "^7.5.5" "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-typescript" "^7.2.0" @@ -613,25 +598,25 @@ regexpu-core "^4.5.4" "@babel/register@^7.0.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.4.4.tgz#370a68ba36f08f015a8b35d4864176c6b65d7a23" - integrity sha512-sn51H88GRa00+ZoMqCVgOphmswG4b7mhf9VOB0LUBAieykq2GnRFerlN+JQkO/ntT7wz4jaHNSRPg9IdMPEUkA== + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.5.5.tgz#40fe0d474c8c8587b28d6ae18a03eddad3dac3c1" + integrity sha512-pdd5nNR+g2qDkXZlW1yRCWFlNrAn2PPdnZUB72zjX4l1Vv4fMRRLwyf+n/idFCLI1UgVGboUU8oVziwTBiyNKQ== dependencies: core-js "^3.0.0" find-cache-dir "^2.0.0" - lodash "^4.17.11" + lodash "^4.17.13" mkdirp "^0.5.1" pirates "^4.0.0" source-map-support "^0.5.9" -"@babel/runtime@^7.0.0": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.4.5.tgz#582bb531f5f9dc67d2fcb682979894f75e253f12" - integrity sha512-TuI4qpWZP6lGOGIuGWtp9sPluqYICmbk8T/1vpSysqJxRPkudh/ofFWyqdcMsDf2s7KvDL4/YHgKyvcS3g9CJQ== +"@babel/runtime@^7.0.0", "@babel/runtime@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" + integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== dependencies: regenerator-runtime "^0.13.2" -"@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.4.4": +"@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" integrity sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw== @@ -640,30 +625,306 @@ "@babel/parser" "^7.4.4" "@babel/types" "^7.4.4" -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.4.5": - version "7.4.5" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.4.5.tgz#4e92d1728fd2f1897dafdd321efbff92156c3216" - integrity sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A== +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.5.5.tgz#f664f8f368ed32988cd648da9f72d5ca70f165bb" + integrity sha512-MqB0782whsfffYfSjH4TM+LMjrJnhCNEDMDIjeTpl+ASaUvxcjoiVCo/sM1GhS1pHOXYfWVCYneLjMckuUxDaQ== dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.4" + "@babel/code-frame" "^7.5.5" + "@babel/generator" "^7.5.5" "@babel/helper-function-name" "^7.1.0" "@babel/helper-split-export-declaration" "^7.4.4" - "@babel/parser" "^7.4.5" - "@babel/types" "^7.4.4" + "@babel/parser" "^7.5.5" + "@babel/types" "^7.5.5" debug "^4.1.0" globals "^11.1.0" - lodash "^4.17.11" + lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.2.0", "@babel/types@^7.3.0", "@babel/types@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.4.4.tgz#8db9e9a629bb7c29370009b4b779ed93fe57d5f0" - integrity sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ== +"@babel/types@^7.0.0", "@babel/types@^7.2.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.5.5": + version "7.5.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.5.5.tgz#97b9f728e182785909aa4ab56264f090a028d18a" + integrity sha512-s63F9nJioLqOlW3UkyMd+BYhXt44YuaFm/VV0VwuteqjYwRrObkU7ra9pY4wAJR3oXi8hJrMcrcJdO/HH33vtw== dependencies: esutils "^2.0.2" - lodash "^4.17.11" + lodash "^4.17.13" to-fast-properties "^2.0.0" +"@cnakazawa/watch@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz#099139eaec7ebf07a27c1786a3ff64f39464d2ef" + integrity sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + +"@hapi/address@2.x.x": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@hapi/address/-/address-2.0.0.tgz#9f05469c88cb2fd3dcd624776b54ee95c312126a" + integrity sha512-mV6T0IYqb0xL1UALPFplXYQmR0twnXG0M6jUswpquqT2sD12BOiCiLy3EvMp/Fy7s3DZElC4/aPjEjo2jeZpvw== + +"@hapi/bourne@1.x.x": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@hapi/bourne/-/bourne-1.3.2.tgz#0a7095adea067243ce3283e1b56b8a8f453b242a" + integrity sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA== + +"@hapi/hoek@8.x.x": + version "8.2.1" + resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-8.2.1.tgz#924af04cbb22e17359c620d2a9c946e63f58eb77" + integrity sha512-JPiBy+oSmsq3St7XlipfN5pNA6bDJ1kpa73PrK/zR29CVClDVqy04AanM/M/qx5bSF+I61DdCfAvRrujau+zRg== + +"@hapi/joi@^15.0.3": + version "15.1.1" + resolved "https://registry.yarnpkg.com/@hapi/joi/-/joi-15.1.1.tgz#c675b8a71296f02833f8d6d243b34c57b8ce19d7" + integrity sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ== + dependencies: + "@hapi/address" "2.x.x" + "@hapi/bourne" "1.x.x" + "@hapi/hoek" "8.x.x" + "@hapi/topo" "3.x.x" + +"@hapi/topo@3.x.x": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-3.1.3.tgz#c7a02e0d936596d29f184e6d7fdc07e8b5efce11" + integrity sha512-JmS9/vQK6dcUYn7wc2YZTqzIKubAQcJKu2KCKAru6es482U5RT5fP1EXCPtlXpiK7PR0On/kpQKI4fRKkzpZBQ== + dependencies: + "@hapi/hoek" "8.x.x" + +"@jest/console@^24.7.1", "@jest/console@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0" + integrity sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ== + dependencies: + "@jest/source-map" "^24.9.0" + chalk "^2.0.1" + slash "^2.0.0" + +"@jest/core@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4" + integrity sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A== + dependencies: + "@jest/console" "^24.7.1" + "@jest/reporters" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + ansi-escapes "^3.0.0" + chalk "^2.0.1" + exit "^0.1.2" + graceful-fs "^4.1.15" + jest-changed-files "^24.9.0" + jest-config "^24.9.0" + jest-haste-map "^24.9.0" + jest-message-util "^24.9.0" + jest-regex-util "^24.3.0" + jest-resolve "^24.9.0" + jest-resolve-dependencies "^24.9.0" + jest-runner "^24.9.0" + jest-runtime "^24.9.0" + jest-snapshot "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + jest-watcher "^24.9.0" + micromatch "^3.1.10" + p-each-series "^1.0.0" + realpath-native "^1.1.0" + rimraf "^2.5.4" + slash "^2.0.0" + strip-ansi "^5.0.0" + +"@jest/environment@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.9.0.tgz#21e3afa2d65c0586cbd6cbefe208bafade44ab18" + integrity sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ== + dependencies: + "@jest/fake-timers" "^24.9.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + jest-mock "^24.9.0" + +"@jest/fake-timers@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93" + integrity sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A== + dependencies: + "@jest/types" "^24.9.0" + jest-message-util "^24.9.0" + jest-mock "^24.9.0" + +"@jest/reporters@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43" + integrity sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw== + dependencies: + "@jest/environment" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + chalk "^2.0.1" + exit "^0.1.2" + glob "^7.1.2" + istanbul-lib-coverage "^2.0.2" + istanbul-lib-instrument "^3.0.1" + istanbul-lib-report "^2.0.4" + istanbul-lib-source-maps "^3.0.1" + istanbul-reports "^2.2.6" + jest-haste-map "^24.9.0" + jest-resolve "^24.9.0" + jest-runtime "^24.9.0" + jest-util "^24.9.0" + jest-worker "^24.6.0" + node-notifier "^5.4.2" + slash "^2.0.0" + source-map "^0.6.0" + string-length "^2.0.0" + +"@jest/source-map@^24.3.0", "@jest/source-map@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714" + integrity sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.1.15" + source-map "^0.6.0" + +"@jest/test-result@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca" + integrity sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA== + dependencies: + "@jest/console" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/istanbul-lib-coverage" "^2.0.0" + +"@jest/test-sequencer@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31" + integrity sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A== + dependencies: + "@jest/test-result" "^24.9.0" + jest-haste-map "^24.9.0" + jest-runner "^24.9.0" + jest-runtime "^24.9.0" + +"@jest/transform@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.9.0.tgz#4ae2768b296553fadab09e9ec119543c90b16c56" + integrity sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^24.9.0" + babel-plugin-istanbul "^5.1.0" + chalk "^2.0.1" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.1.15" + jest-haste-map "^24.9.0" + jest-regex-util "^24.9.0" + jest-util "^24.9.0" + micromatch "^3.1.10" + pirates "^4.0.1" + realpath-native "^1.1.0" + slash "^2.0.0" + source-map "^0.6.1" + write-file-atomic "2.4.1" + +"@jest/types@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" + integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^1.1.1" + "@types/yargs" "^13.0.0" + +"@react-native-community/cli-platform-android@^2.6.0", "@react-native-community/cli-platform-android@^2.9.0": + version "2.9.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-2.9.0.tgz#28831e61ce565a2c7d1905852fce1eecfd33cb5e" + integrity sha512-VEQs4Q6R5tnlYFrQIFoPEWjLc43whRHC9HeH+idbFymwDqysLVUffQbb9D6PJUj+C/AvrDhBhU6S3tDjGbSsag== + dependencies: + "@react-native-community/cli-tools" "^2.8.3" + chalk "^2.4.2" + execa "^1.0.0" + jetifier "^1.6.2" + logkitty "^0.6.0" + slash "^3.0.0" + xmldoc "^1.1.2" + +"@react-native-community/cli-platform-ios@^2.4.1", "@react-native-community/cli-platform-ios@^2.9.0": + version "2.9.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-2.9.0.tgz#21adb8ee813d6ca6fd9d4d9be63f92024f7e2fe7" + integrity sha512-vg6EOamtFaaQ02FiWu+jzJTfeTJ0OVjJSAoR2rhJKNye6RgJLoQlfp0Hg3waF6XrO72a7afYZsPdKSlN3ewlHg== + dependencies: + "@react-native-community/cli-tools" "^2.8.3" + chalk "^2.4.2" + xcode "^2.0.0" + +"@react-native-community/cli-tools@^2.8.3": + version "2.8.3" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-2.8.3.tgz#0e2249f48cf4603fb8d740a9f0715c31ac131ceb" + integrity sha512-N5Pz+pR+GFq3JApjd0SW4jp9KC7kbKsMH65QLRh30JNsxdPvNkYox6/ZZdkvdXaI5ev3EckR7eqlcwi5gpVTYQ== + dependencies: + chalk "^2.4.2" + lodash "^4.17.5" + mime "^2.4.1" + node-fetch "^2.5.0" + +"@react-native-community/cli@^2.6.0": + version "2.9.0" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-2.9.0.tgz#f0d18dc3e5a8f68e3d6ad353c444dc2f08d3fbdc" + integrity sha512-6TYkrR1pwIEPpiPZnOYscCGr5Xh8RijqBPVAOGTaEdpQQpc/J7GDPrePwbyTzwmCPtiK6XT+T5+1AiAK5bz/sw== + dependencies: + "@hapi/joi" "^15.0.3" + "@react-native-community/cli-platform-android" "^2.9.0" + "@react-native-community/cli-platform-ios" "^2.9.0" + "@react-native-community/cli-tools" "^2.8.3" + chalk "^2.4.2" + commander "^2.19.0" + compression "^1.7.1" + connect "^3.6.5" + cosmiconfig "^5.1.0" + deepmerge "^3.2.0" + envinfo "^7.1.0" + errorhandler "^1.5.0" + execa "^1.0.0" + fs-extra "^7.0.1" + glob "^7.1.1" + graceful-fs "^4.1.3" + inquirer "^3.0.6" + lodash "^4.17.5" + metro "^0.54.1" + metro-config "^0.54.1" + metro-core "^0.54.1" + metro-react-native-babel-transformer "^0.54.1" + minimist "^1.2.0" + mkdirp "^0.5.1" + morgan "^1.9.0" + node-notifier "^5.2.1" + open "^6.2.0" + ora "^3.4.0" + plist "^3.0.0" + semver "^5.0.3" + serve-static "^1.13.1" + shell-quote "1.6.1" + ws "^1.1.0" + +"@react-native-community/eslint-config@^0.0.5": + version "0.0.5" + resolved "https://registry.yarnpkg.com/@react-native-community/eslint-config/-/eslint-config-0.0.5.tgz#584f6493258202a57efc22e7be66966e43832795" + integrity sha512-jwO2tnKaTPTLX5XYXMHGEnFdf543SU7jz98/OF5mDH3b7lP+BOaCD+jVfqqHoDRkcqyPlYiR1CgwVGWpi0vMWg== + dependencies: + "@typescript-eslint/eslint-plugin" "^1.5.0" + "@typescript-eslint/parser" "^1.5.0" + babel-eslint "10.0.1" + eslint-plugin-eslint-comments "^3.1.1" + eslint-plugin-flowtype "2.50.3" + eslint-plugin-jest "22.4.1" + eslint-plugin-prettier "2.6.2" + eslint-plugin-react "7.12.4" + eslint-plugin-react-hooks "^1.5.1" + eslint-plugin-react-native "3.6.0" + prettier "1.16.4" + "@react-navigation/core@~3.4.1": version "3.4.2" resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-3.4.2.tgz#bec563e94fde40fbab3730cdc97f22afbb2a1498" @@ -683,6 +944,124 @@ react-native-safe-area-view "^0.14.1" react-native-screens "^1.0.0 || ^1.0.0-alpha" +"@types/babel__core@^7.1.0": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.2.tgz#608c74f55928033fce18b99b213c16be4b3d114f" + integrity sha512-cfCCrFmiGY/yq0NuKNxIQvZFy9kY/1immpSpTngOnyIbD4+eJOG5mxphhHDv3CHL9GltO4GcKr54kGBg3RNdbg== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.0.2.tgz#d2112a6b21fad600d7674274293c85dce0cb47fc" + integrity sha512-NHcOfab3Zw4q5sEE2COkpfXjoE7o+PmqD9DQW4koUT3roNxwziUdXGnRndMat/LJNUtePwn1TlP4do3uoe3KZQ== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307" + integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": + version "7.0.7" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.7.tgz#2496e9ff56196cc1429c72034e07eab6121b6f3f" + integrity sha512-CeBpmX1J8kWLcDEnI3Cl2Eo6RfbGvzUctA+CjZUhOKDFbLfcr7fc4usEqLNWetrlJd7RhAkyYe2czXop4fICpw== + dependencies: + "@babel/types" "^7.3.0" + +"@types/eslint-visitor-keys@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d" + integrity sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag== + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" + integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg== + +"@types/istanbul-lib-report@*": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz#e5471e7fa33c61358dd38426189c037a58433b8c" + integrity sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz#7a8cbf6a406f36c8add871625b278eaf0b0d255a" + integrity sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA== + dependencies: + "@types/istanbul-lib-coverage" "*" + "@types/istanbul-lib-report" "*" + +"@types/json-schema@^7.0.3": + version "7.0.3" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.3.tgz#bdfd69d61e464dcc81b25159c270d75a73c1a636" + integrity sha512-Il2DtDVRGDcqjDtE+rF8iqg1CArehSK84HZJCT7AMITlyXRBpuPhqGLDQMowraqqu1coEaimg4ZOqggt6L6L+A== + +"@types/stack-utils@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" + integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw== + +"@types/yargs-parser@*": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.0.0.tgz#453743c5bbf9f1bed61d959baab5b06be029b2d0" + integrity sha512-wBlsw+8n21e6eTd4yVv8YD/E3xq0O6nNnJIquutAsFGE7EyMKz7W6RNT6BRu1SmdgmlCZ9tb0X+j+D6HGr8pZw== + +"@types/yargs@^13.0.0": + version "13.0.2" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.2.tgz#a64674fc0149574ecd90ba746e932b5a5f7b3653" + integrity sha512-lwwgizwk/bIIU+3ELORkyuOgDjCh7zuWDFqRtPPhhVgq9N1F7CvLNKg1TX4f2duwtKQ0p044Au9r1PLIXHrIzQ== + dependencies: + "@types/yargs-parser" "*" + +"@typescript-eslint/eslint-plugin@^1.5.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-1.13.0.tgz#22fed9b16ddfeb402fd7bcde56307820f6ebc49f" + integrity sha512-WQHCozMnuNADiqMtsNzp96FNox5sOVpU8Xt4meaT4em8lOG1SrOv92/mUbEHQVh90sldKSfcOc/I0FOb/14G1g== + dependencies: + "@typescript-eslint/experimental-utils" "1.13.0" + eslint-utils "^1.3.1" + functional-red-black-tree "^1.0.1" + regexpp "^2.0.1" + tsutils "^3.7.0" + +"@typescript-eslint/experimental-utils@1.13.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-1.13.0.tgz#b08c60d780c0067de2fb44b04b432f540138301e" + integrity sha512-zmpS6SyqG4ZF64ffaJ6uah6tWWWgZ8m+c54XXgwFtUv0jNz8aJAVx8chMCvnk7yl6xwn8d+d96+tWp7fXzTuDg== + dependencies: + "@types/json-schema" "^7.0.3" + "@typescript-eslint/typescript-estree" "1.13.0" + eslint-scope "^4.0.0" + +"@typescript-eslint/parser@^1.5.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-1.13.0.tgz#61ac7811ea52791c47dc9fd4dd4a184fae9ac355" + integrity sha512-ITMBs52PCPgLb2nGPoeT4iU3HdQZHcPaZVw+7CsFagRJHUhyeTgorEwHXhFf3e7Evzi8oujKNpHc8TONth8AdQ== + dependencies: + "@types/eslint-visitor-keys" "^1.0.0" + "@typescript-eslint/experimental-utils" "1.13.0" + "@typescript-eslint/typescript-estree" "1.13.0" + eslint-visitor-keys "^1.0.0" + +"@typescript-eslint/typescript-estree@1.13.0": + version "1.13.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-1.13.0.tgz#8140f17d0f60c03619798f1d628b8434913dc32e" + integrity sha512-b5rCmd2e6DCC6tCTN9GSUAuxdYwCM/k/2wdjHGrIRGPSJotWMCe/dGpi66u42bhuh8q3QBzqM4TMA1GUUCJvdw== + dependencies: + lodash.unescape "4.0.1" + semver "5.5.0" + abab@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.0.tgz#aba0ab4c5eee2d4c79d3487d85450fb2376ebb0f" @@ -693,6 +1072,13 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== + dependencies: + event-target-shim "^5.0.0" + absolute-path@^0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/absolute-path/-/absolute-path-0.0.0.tgz#a78762fbdadfb5297be99b15d35a785b2f095bf7" @@ -707,37 +1093,42 @@ accepts@~1.3.5, accepts@~1.3.7: negotiator "0.6.2" acorn-globals@^4.1.0: - version "4.3.2" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.2.tgz#4e2c2313a597fd589720395f6354b41cd5ec8006" - integrity sha512-BbzvZhVtZP+Bs1J1HcwrQe8ycfO0wStkSGxuul3He3GkHOIZ6eTqOkPuw9IP1X3+IkOo4wiJmwkobzXYz4wewQ== + version "4.3.3" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.3.tgz#a86f75b69680b8780d30edd21eee4e0ea170c05e" + integrity sha512-vkR40VwS2SYO98AIeFvzWWh+xyc2qi9s7OoXSFEGIP/rOJKzjnhykaZJNnHdoq4BL2gGxI5EZOU16z896EYnOQ== dependencies: acorn "^6.0.1" acorn-walk "^6.0.1" acorn-jsx@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e" - integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg== + version "5.0.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.2.tgz#84b68ea44b373c4f8686023a551f61a21b7c4a4f" + integrity sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw== acorn-walk@^6.0.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913" - integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw== + version "6.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" + integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== acorn@^5.5.3: version "5.7.3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279" integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw== -acorn@^6.0.1, acorn@^6.0.7: - version "6.1.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.1.1.tgz#7d25ae05bb8ad1f9b699108e1094ecd7884adc1f" - integrity sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA== +acorn@^6.0.1: + version "6.3.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz#0087509119ffa4fc0a0041d1e93a417e68cb856e" + integrity sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA== + +acorn@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.0.0.tgz#26b8d1cd9a9b700350b71c0905546f64d1284e7a" + integrity sha512-PaF/MduxijYYt7unVGRuds1vBC9bFxbNf+VWqhOClfdgy7RlVkQqt610ig1/yxTgsDIfW1cWDel5EBbOy3jdtQ== -ajv@^6.5.5, ajv@^6.9.1: - version "6.10.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1" - integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg== +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: + version "6.10.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz#d3cea04d6b017b2894ad69040fec8b623eb4bd52" + integrity sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw== dependencies: fast-deep-equal "^2.0.1" fast-json-stable-stringify "^2.0.0" @@ -758,11 +1149,27 @@ ansi-cyan@^0.1.1: dependencies: ansi-wrap "0.1.0" -ansi-escapes@^3.0.0, ansi-escapes@^3.2.0: +ansi-escapes@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== +ansi-escapes@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.2.1.tgz#4dccdb846c3eee10f6d64dea66273eab90c37228" + integrity sha512-Cg3ymMAdN10wOk/VYfLV7KCQyv7EDirJ64500sU7n9UlmioEtDuU5Gd+hj73hXSU/ex7tHJSssmyftDdkMLO8Q== + dependencies: + type-fest "^0.5.2" + +ansi-fragments@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/ansi-fragments/-/ansi-fragments-0.2.1.tgz#24409c56c4cc37817c3d7caa99d8969e2de5a05e" + integrity sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w== + dependencies: + colorette "^1.0.7" + slice-ansi "^2.0.0" + strip-ansi "^5.0.0" + ansi-gray@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ansi-gray/-/ansi-gray-0.1.1.tgz#2962cf54ec9792c48510a3deb524436861ef7251" @@ -787,16 +1194,11 @@ ansi-regex@^3.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= -ansi-regex@^4.1.0: +ansi-regex@^4.0.0, ansi-regex@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== -ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= - ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -809,11 +1211,6 @@ ansi-wrap@0.1.0, ansi-wrap@^0.1.0: resolved "https://registry.yarnpkg.com/ansi-wrap/-/ansi-wrap-0.1.0.tgz#a82250ddb0015e9a27ca82e82ea603bbfa45efaf" integrity sha1-qCJQ3bABXponyoLoLqYDu/pF768= -ansi@^0.3.0, ansi@~0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/ansi/-/ansi-0.3.1.tgz#0c42d4fb17160d5a9af1e484bace1c66922c1b21" - integrity sha1-DELU+xcWDVqa8eSEus4cZpIsGyE= - anymatch@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" @@ -822,13 +1219,6 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -append-transform@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" - integrity sha1-126/jKlNJ24keja61EpLdKthGZE= - dependencies: - default-require-extensions "^1.0.0" - aproba@^1.0.3: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" @@ -865,13 +1255,6 @@ arr-diff@^1.0.1: arr-flatten "^1.0.1" array-slice "^0.2.3" -arr-diff@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" - integrity sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= - dependencies: - arr-flatten "^1.0.1" - arr-diff@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" @@ -925,21 +1308,11 @@ array-slice@^0.2.3: resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-0.2.3.tgz#dd3cfb80ed7973a75117cdac69b0b99ec86186f5" integrity sha1-3Tz7gO15c6dRF82sabC5nshhhvU= -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" - integrity sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= - array-unique@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= -arrify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= - art@^0.10.0: version "0.10.3" resolved "https://registry.yarnpkg.com/art/-/art-0.10.3.tgz#b01d84a968ccce6208df55a733838c96caeeaea2" @@ -972,22 +1345,17 @@ astral-regex@^1.0.0: resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== -async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== - async-limiter@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" - integrity sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg== + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" + integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== -async@^2.1.4, async@^2.4.0: - version "2.6.2" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381" - integrity sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg== +async@^2.4.0: + version "2.6.3" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" + integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== dependencies: - lodash "^4.17.11" + lodash "^4.17.14" asynckit@^0.4.0: version "0.4.0" @@ -1009,46 +1377,7 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== -babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@^6.0.0, babel-core@^6.26.0: - version "6.26.3" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" - integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== - dependencies: - babel-code-frame "^6.26.0" - babel-generator "^6.26.0" - babel-helpers "^6.24.1" - babel-messages "^6.23.0" - babel-register "^6.26.0" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - convert-source-map "^1.5.1" - debug "^2.6.9" - json5 "^0.5.1" - lodash "^4.17.4" - minimatch "^3.0.4" - path-is-absolute "^1.0.1" - private "^0.1.8" - slash "^1.0.0" - source-map "^0.5.7" - -babel-core@^7.0.0-bridge.0: - version "7.0.0-bridge.0" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" - integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== - -babel-eslint@^10.0.1: +babel-eslint@10.0.1: version "10.0.1" resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz#919681dc099614cd7d31d45c8908695092a1faed" integrity sha512-z7OT1iNV+TjOwHNLLyJk+HN+YVWX+CLE6fPD2SymJZOZQBs+QIexFjhm4keGTm8MW9xr4EC9Q0PbaLB24V5GoQ== @@ -1060,408 +1389,49 @@ babel-eslint@^10.0.1: eslint-scope "3.7.1" eslint-visitor-keys "^1.0.0" -babel-generator@^6.18.0, babel-generator@^6.26.0: - version "6.26.1" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" - integrity sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA== - dependencies: - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.17.4" - source-map "^0.5.7" - trim-right "^1.0.1" - -babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - integrity sha1-zORReto1b0IgvK6KAsKzRvmlZmQ= +babel-jest@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.9.0.tgz#3fc327cb8467b89d14d7bc70e315104a783ccd54" + integrity sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw== dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/babel__core" "^7.1.0" + babel-plugin-istanbul "^5.1.0" + babel-preset-jest "^24.9.0" + chalk "^2.4.2" + slash "^2.0.0" -babel-helper-builder-react-jsx@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz#39ff8313b75c8b65dceff1f31d383e0ff2a408a0" - integrity sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA= +babel-plugin-dynamic-import-node@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz#f00f507bdaa3c3e3ff6e7e5e98d90a7acab96f7f" + integrity sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ== dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - esutils "^2.0.2" + object.assign "^4.1.0" -babel-helper-call-delegate@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - integrity sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340= - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-define-map@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" - integrity sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8= - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-explode-assignable-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - integrity sha1-8luCz33BBDPFX3BZLVdGQArCLKo= - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - integrity sha1-00dbjAPtmCQqJbSDUasYOZ01gKk= - dependencies: - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-get-function-arity@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - integrity sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-hoist-variables@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - integrity sha1-HssnaJydJVE+rbyZFKc/VAi+enY= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-optimise-call-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - integrity sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-replace-supers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - integrity sha1-v22/5Dk40XNpohPKiov3S2qQqxo= - dependencies: - babel-helper-optimise-call-expression "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helpers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" - integrity sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-jest@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-23.6.0.tgz#a644232366557a2240a0c083da6b25786185a2f1" - integrity sha512-lqKGG6LYXYu+DQh/slrQ8nxXQkEkhugdXsU6St7GmhVS7Ilc/22ArwqXNJrf0QaOBjZB0360qZMwXqDYQHXaew== - dependencies: - babel-plugin-istanbul "^4.1.6" - babel-preset-jest "^23.2.0" - -babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-check-es2015-constants@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - integrity sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-istanbul@^4.1.6: - version "4.1.6" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz#36c59b2192efce81c5b378321b74175add1c9a45" - integrity sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ== - dependencies: - babel-plugin-syntax-object-rest-spread "^6.13.0" - find-up "^2.1.0" - istanbul-lib-instrument "^1.10.1" - test-exclude "^4.2.1" - -babel-plugin-jest-hoist@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-23.2.0.tgz#e61fae05a1ca8801aadee57a6d66b8cefaf44167" - integrity sha1-5h+uBaHKiAGq3uV6bWa4zvr0QWc= - -babel-plugin-react-transform@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-react-transform/-/babel-plugin-react-transform-3.0.0.tgz#402f25137b7bb66e9b54ead75557dfbc7ecaaa74" - integrity sha512-4vJGddwPiHAOgshzZdGwYy4zRjjIr5SMY7gkOaCyIASjgpcsyLTlZNuB5rHOFoaTvGlhfo8/g4pobXPyHqm/3w== +babel-plugin-istanbul@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz#df4ade83d897a92df069c4d9a25cf2671293c854" + integrity sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw== dependencies: - lodash "^4.6.1" + "@babel/helper-plugin-utils" "^7.0.0" + find-up "^3.0.0" + istanbul-lib-instrument "^3.3.0" + test-exclude "^5.2.3" -babel-plugin-syntax-async-functions@^6.5.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - integrity sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU= - -babel-plugin-syntax-class-properties@^6.5.0, babel-plugin-syntax-class-properties@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" - integrity sha1-1+sjt5oxf4VDlixQW4J8fWysJ94= - -babel-plugin-syntax-dynamic-import@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" - integrity sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo= - -babel-plugin-syntax-exponentiation-operator@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - integrity sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= - -babel-plugin-syntax-flow@^6.18.0, babel-plugin-syntax-flow@^6.5.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" - integrity sha1-TDqyCiryaqIM0lmVw5jE63AxDI0= - -babel-plugin-syntax-jsx@^6.5.0, babel-plugin-syntax-jsx@^6.8.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" - integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= - -babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - integrity sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= - -babel-plugin-syntax-trailing-function-commas@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - integrity sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM= +babel-plugin-jest-hoist@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756" + integrity sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw== + dependencies: + "@types/babel__traverse" "^7.0.6" babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: version "7.0.0-beta.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== -babel-plugin-transform-class-properties@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" - integrity sha1-anl2PqYdM9NvN7YRqp3vgagbRqw= - dependencies: - babel-helper-function-name "^6.24.1" - babel-plugin-syntax-class-properties "^6.8.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-arrow-functions@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - integrity sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.5.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" - integrity sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8= - dependencies: - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-plugin-transform-es2015-classes@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - integrity sha1-WkxYpQyclGHlZLSyo7+ryXolhNs= - dependencies: - babel-helper-define-map "^6.24.1" - babel-helper-function-name "^6.24.1" - babel-helper-optimise-call-expression "^6.24.1" - babel-helper-replace-supers "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-computed-properties@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" - integrity sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM= - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-destructuring@^6.5.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - integrity sha1-mXux8auWf2gtKwh2/jWNYOdlxW0= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-for-of@^6.5.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - integrity sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-function-name@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" - integrity sha1-g0yJhTvDaxrw86TF26qU/Y6sqos= - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-literals@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - integrity sha1-T1SgLWzWbPkVKAAZox0xklN3yi4= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-modules-commonjs@^6.5.0: - version "6.26.2" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" - integrity sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q== - dependencies: - babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-types "^6.26.0" - -babel-plugin-transform-es2015-parameters@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - integrity sha1-V6w1GrScrxSpfNE7CfZv3wpiXys= - dependencies: - babel-helper-call-delegate "^6.24.1" - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-shorthand-properties@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" - integrity sha1-JPh11nIch2YbvZmkYi5R8U3jiqA= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-spread@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - integrity sha1-1taKmfia7cRTbIGlQujdnxdG+NE= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-template-literals@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - integrity sha1-qEs0UPfp+PH2g51taH2oS7EjbY0= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-exponentiation-operator@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - integrity sha1-KrDJx/MJj6SJB3cruBP+QejeOg4= - dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" - babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-flow-strip-types@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" - integrity sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988= - dependencies: - babel-plugin-syntax-flow "^6.18.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-object-assign@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-assign/-/babel-plugin-transform-object-assign-6.22.0.tgz#f99d2f66f1a0b0d498e346c5359684740caa20ba" - integrity sha1-+Z0vZvGgsNSY40bFNZaEdAyqILo= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-object-rest-spread@^6.5.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - integrity sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY= - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-react-display-name@^6.5.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1" - integrity sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE= - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx-source@^6.5.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6" - integrity sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY= - dependencies: - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx@^6.5.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3" - integrity sha1-hAoCjn30YN/DotKfDA2R9jduZqM= - dependencies: - babel-helper-builder-react-jsx "^6.24.1" - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-regenerator@^6.5.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" - integrity sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8= - dependencies: - regenerator-transform "^0.10.0" - -babel-plugin-transform-strict-mode@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-preset-fbjs@^3.0.1, babel-preset-fbjs@^3.2.0: +babel-preset-fbjs@^3.1.2, babel-preset-fbjs@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.2.0.tgz#c0e6347d3e0379ed84b3c2434d3467567aa05297" integrity sha512-5Jo+JeWiVz2wHUUyAlvb/sSYnXNig9r+HqGAOSfh5Fzxp7SnAaR/tEGRJ1ZX7C77kfk82658w6R5Z+uPATTD9g== @@ -1494,128 +1464,23 @@ babel-preset-fbjs@^3.0.1, babel-preset-fbjs@^3.2.0: "@babel/plugin-transform-template-literals" "^7.0.0" babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" -babel-preset-jest@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-23.2.0.tgz#8ec7a03a138f001a1a8fb1e8113652bf1a55da46" - integrity sha1-jsegOhOPABoaj7HoETZSvxpV2kY= - dependencies: - babel-plugin-jest-hoist "^23.2.0" - babel-plugin-syntax-object-rest-spread "^6.13.0" - -babel-preset-react-native@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-react-native/-/babel-preset-react-native-4.0.1.tgz#14ff07bdb6c8df9408082c0c18b2ce8e3392e76a" - integrity sha512-uhFXnl1WbEWNG4W8QB/jeQaVXkd0a0AD+wh4D2VqtdRnEyvscahqyHExnwKLU9N0sXRYwDyed4JfbiBtiOSGgA== - dependencies: - babel-plugin-check-es2015-constants "^6.5.0" - babel-plugin-react-transform "^3.0.0" - babel-plugin-syntax-async-functions "^6.5.0" - babel-plugin-syntax-class-properties "^6.5.0" - babel-plugin-syntax-dynamic-import "^6.18.0" - babel-plugin-syntax-flow "^6.5.0" - babel-plugin-syntax-jsx "^6.5.0" - babel-plugin-syntax-trailing-function-commas "^6.5.0" - babel-plugin-transform-class-properties "^6.5.0" - babel-plugin-transform-es2015-arrow-functions "^6.5.0" - babel-plugin-transform-es2015-block-scoping "^6.5.0" - babel-plugin-transform-es2015-classes "^6.5.0" - babel-plugin-transform-es2015-computed-properties "^6.5.0" - babel-plugin-transform-es2015-destructuring "^6.5.0" - babel-plugin-transform-es2015-for-of "^6.5.0" - babel-plugin-transform-es2015-function-name "^6.5.0" - babel-plugin-transform-es2015-literals "^6.5.0" - babel-plugin-transform-es2015-modules-commonjs "^6.5.0" - babel-plugin-transform-es2015-parameters "^6.5.0" - babel-plugin-transform-es2015-shorthand-properties "^6.5.0" - babel-plugin-transform-es2015-spread "^6.5.0" - babel-plugin-transform-es2015-template-literals "^6.5.0" - babel-plugin-transform-exponentiation-operator "^6.5.0" - babel-plugin-transform-flow-strip-types "^6.5.0" - babel-plugin-transform-object-assign "^6.5.0" - babel-plugin-transform-object-rest-spread "^6.5.0" - babel-plugin-transform-react-display-name "^6.5.0" - babel-plugin-transform-react-jsx "^6.5.0" - babel-plugin-transform-react-jsx-source "^6.5.0" - babel-plugin-transform-regenerator "^6.5.0" - babel-template "^6.24.1" - react-transform-hmr "^1.0.4" - -babel-register@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" - integrity sha1-btAhFz4vy0htestFxgCahW9kcHE= +babel-preset-jest@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc" + integrity sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg== dependencies: - babel-core "^6.26.0" - babel-runtime "^6.26.0" - core-js "^2.5.0" - home-or-tmp "^2.0.0" - lodash "^4.17.4" - mkdirp "^0.5.1" - source-map-support "^0.4.15" - -babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.0.0, babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.0.0, babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== + "@babel/plugin-syntax-object-rest-spread" "^7.0.0" + babel-plugin-jest-hoist "^24.9.0" balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -base64-js@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.1.2.tgz#d6400cac1c4c660976d90d07a04351d89395f5e8" - integrity sha1-1kAMrBxMZgl22Q0HoENR2JOV9eg= - base64-js@^1.1.2, base64-js@^1.2.3: - version "1.3.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" - integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== + version "1.3.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" + integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== base@^0.11.1: version "0.11.2" @@ -1645,14 +1510,9 @@ bcrypt-pbkdf@^1.0.0: tweetnacl "^0.14.3" big-integer@^1.6.7: - version "1.6.43" - resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.43.tgz#8ac15bf13e93e509500859061233e19d8d0d99d1" - integrity sha512-9dULc9jsKmXl0Aeunug8wbF+58n+hQoFjqClN7WeZwGLh0XJUWyJJ9Ee+Ep+Ql/J9fRsTVaeThp8MhiCCrY0Jg== - -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== + version "1.6.44" + resolved "https://registry.yarnpkg.com/big-integer/-/big-integer-1.6.44.tgz#4ee9ae5f5839fc11ade338fea216b4513454a539" + integrity sha512-7MzElZPTyJ2fNvBkPxtFQ2fWIkVmuzw41+BZHSzpEq3ymB2MfeKp1+yXl/tS75xCx+WnyV+yb0kp+K1C3UNwmQ== bplist-creator@0.0.7: version "0.0.7" @@ -1676,16 +1536,7 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^1.8.2: - version "1.8.5" - resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" - integrity sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= - dependencies: - expand-range "^1.8.1" - preserve "^0.2.0" - repeat-element "^1.1.2" - -braces@^2.3.1, braces@^2.3.2: +braces@^2.3.1: version "2.3.2" resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== @@ -1714,12 +1565,17 @@ browser-resolve@^1.11.3: resolve "1.1.7" bser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" - integrity sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk= + version "2.1.0" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.0.tgz#65fc784bf7f87c009b973c12db6546902fa9c7b5" + integrity sha512-8zsjWrQkkBoLK6uxASk1nJ2SKv97ltiGDo6A3wA0/yRPz+CwmEyDo0hUrhIuukG2JHpAl3bvFIixw2/3Hi0DOg== dependencies: node-int64 "^0.4.0" +buffer-crc32@^0.2.13: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= + buffer-from@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" @@ -1774,29 +1630,23 @@ camelcase@^4.1.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= -capture-exit@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-1.2.0.tgz#1c5fcc489fd0ab00d4f1ac7ae1072e3173fbab6f" - integrity sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28= +camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== dependencies: - rsvp "^3.3.3" + rsvp "^4.8.4" caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= -chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= - dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" - chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -1816,34 +1666,15 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -chokidar@^2.0.4: - version "2.1.6" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.6.tgz#b6cad653a929e244ce8a834244164d241fa954c5" - integrity sha512-V2jUo67OKkc6ySiRpJrjlpJKl9kDuG+Xb8VgsGzb+aEouhgS1D0weyPU4lEzdAcsCAvrih2J2BqyXqHWvVLw5g== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - chownr@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== + version "1.1.2" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.2.tgz#a18f1e0b269c8a6a5d3c86eb298beb14c3dd7bf6" + integrity sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A== -ci-info@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" - integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== class-utils@^0.3.5: version "0.3.6" @@ -1862,6 +1693,18 @@ cli-cursor@^2.1.0: dependencies: restore-cursor "^2.0.0" +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== + dependencies: + restore-cursor "^3.1.0" + +cli-spinners@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.2.0.tgz#e8b988d9206c692302d8ee834e7a85c0144d8f77" + integrity sha512-tgU3fKwzYjiLEQgPMD9Jt+JjHVL9kW93FiIMX/l7rivvOD4/LL0Mf7gda3+4U2KJBloybwgj5KEoQgGRioMiKQ== + cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" @@ -1885,6 +1728,20 @@ cliui@^4.0.0: strip-ansi "^4.0.0" wrap-ansi "^2.0.0" +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -1920,6 +1777,11 @@ color-support@^1.1.3: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== +colorette@^1.0.7: + version "1.1.0" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.1.0.tgz#1f943e5a357fac10b4e0f5aaef3b14cdc1af6ec7" + integrity sha512-6S062WDQUXi6hOfkO/sBPVwE5ASXY4G2+b4atvhJfSsuUUhIaUKlkjLe9692Ipyt5/a+IPF5aVTu3V5gvXq5cg== + combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -1927,7 +1789,7 @@ combined-stream@^1.0.6, combined-stream@~1.0.6: dependencies: delayed-stream "~1.0.0" -commander@^2.8.1, commander@^2.9.0, commander@~2.20.0: +commander@^2.19.0, commander@~2.20.0: version "2.20.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== @@ -1997,12 +1859,7 @@ console-control-strings@^1.0.0, console-control-strings@~1.1.0: resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= -contains-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= - -convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.1: +convert-source-map@^1.1.0, convert-source-map@^1.4.0: version "1.6.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== @@ -2019,22 +1876,22 @@ core-js@^1.0.0: resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY= -core-js@^2.2.2, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: +core-js@^2.2.2, core-js@^2.4.1: version "2.6.9" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== core-js@^3.0.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.1.3.tgz#95700bca5f248f5f78c0ec63e784eca663ec4138" - integrity sha512-PWZ+ZfuaKf178BIAg+CRsljwjIMRV8MY00CbZczkR6Zk5LfkSkjGoaab3+bqRQWVITNZxQB7TFYz+CFcyuamvA== + version "3.2.1" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.2.1.tgz#cd41f38534da6cc59f7db050fe67307de9868b09" + integrity sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw== core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= -cosmiconfig@^5.0.5: +cosmiconfig@^5.0.5, cosmiconfig@^5.1.0: version "5.2.1" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== @@ -2062,7 +1919,7 @@ cross-spawn@^5.0.1, cross-spawn@^5.1.0: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^6.0.5: +cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== @@ -2079,14 +1936,14 @@ css-mediaquery@^0.1.2: integrity sha1-aiw3NEkoYYYxxUvTPO3TAdoYvqA= cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": - version "0.3.6" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.6.tgz#f85206cee04efa841f3c5982a74ba96ab20d65ad" - integrity sha512-DtUeseGk9/GBW0hl0vVPpU22iHL6YB5BUX7ml1hB+GMpo0NX5G4voX3kdWiMSEguFtcW3Vh3djqNF4aIe6ne0A== + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== cssstyle@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.2.2.tgz#427ea4d585b18624f6fdbf9de7a2a1a3ba713077" - integrity sha512-43wY3kl1CVQSvL7wUY1qXkxVGkStjpkDmVjiIKX8R97uhajy8Bybay78uOtqvh7Q5GK75dNPfW0geWjE6qQQow== + version "1.4.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.4.0.tgz#9d31328229d3c565c61e586b02041a28fccdccf1" + integrity sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA== dependencies: cssom "0.3.x" @@ -2106,28 +1963,38 @@ data-urls@^1.0.0: whatwg-mimetype "^2.2.0" whatwg-url "^7.0.0" -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: +dayjs@^1.8.15: + version "1.8.15" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.8.15.tgz#7121bc04e6a7f2621ed6db566be4a8aaf8c3913e" + integrity sha512-HYHCI1nohG52B45vCQg8Re3hNDZbMroWPkhz50yaX7Lu0ATyjGsTdoYZBpjED9ar6chqTx2dmSmM8A51mojnAg== + +debounce@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.0.tgz#44a540abc0ea9943018dc0eaa95cce87f65cd131" + integrity sha512-mYtLl1xfZLi1m4RtQYlZgJUNQjl4ZxVnHzIR8nLLgi4q1YT8o/WM+MK/f8yfcc9s5Ir5zRaPZyZU6xs1Syoocg== + +debug@2.6.9, debug@^2.2.0, debug@^2.3.3: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@^3.1.0, debug@^3.2.6: +debug@^3.2.6: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== dependencies: ms "^2.1.1" -debug@^4.0.1, debug@^4.1.0: +debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== dependencies: ms "^2.1.1" -decamelize@^1.1.1: +decamelize@^1.1.1, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= @@ -2147,14 +2014,19 @@ deep-is@~0.1.3: resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= -default-require-extensions@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" - integrity sha1-836hXT4T/9m0N9M+GnW1+5eHTLg= +deepmerge@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-3.3.0.tgz#d3c47fd6f3a93d517b14426b0628a17b0125f5f7" + integrity sha512-GRQOafGHwMHpjPx9iCvTgpu9NojZ49q794EEL94JVEw6VaeA8XTUyBKvAkOOjBX9oJNiV6G3P+T+tihFjo2TqA== + +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= dependencies: - strip-bom "^2.0.0" + clone "^1.0.2" -define-properties@^1.1.2, define-properties@^1.1.3: +define-properties@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== @@ -2208,13 +2080,6 @@ destroy@~1.0.4: resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - integrity sha1-920GQ1LN9Docts5hnE7jqUdd4gg= - dependencies: - repeating "^2.0.0" - detect-libc@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" @@ -2225,18 +2090,17 @@ detect-newline@^2.1.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= -diff@^3.2.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" - integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== +diff-sequences@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" + integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== -doctrine@1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== dependencies: esutils "^2.0.2" - isarray "^1.0.0" doctrine@^3.0.0: version "3.0.0" @@ -2282,6 +2146,11 @@ emoji-regex@^7.0.1: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -2294,10 +2163,17 @@ encoding@^0.1.11: dependencies: iconv-lite "~0.4.13" -envinfo@^5.7.0: - version "5.12.1" - resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-5.12.1.tgz#83068c33e0972eb657d6bc69a6df30badefb46ef" - integrity sha512-pwdo0/G3CIkQ0y6PCXq4RdkvId2elvtPCJMG0konqlrfkWQbf1DWeH9K2b/cvu2YgGvPPTOnonZxXM1gikFu1w== +end-of-stream@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== + dependencies: + once "^1.4.0" + +envinfo@^7.1.0: + version "7.3.1" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.3.1.tgz#892e42f7bf858b3446d9414ad240dbaf8da52f09" + integrity sha512-GvXiDTqLYrORVSCuJCsWHPXF5BFvoWMQA9xX4YVjPT1jyS3aZEHUBwjzxU/6LTPF9ReHgVEbX7IEN5UvSXHw/A== error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.2" @@ -2314,7 +2190,7 @@ errorhandler@^1.5.0: accepts "~1.3.7" escape-html "~1.0.3" -es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0: +es-abstract@^1.11.0, es-abstract@^1.5.1, es-abstract@^1.7.0: version "1.13.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== @@ -2340,15 +2216,15 @@ escape-html@~1.0.3: resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= escodegen@^1.9.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.11.1.tgz#c485ff8d6b4cdb89e27f4a856e91f118401ca510" - integrity sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw== + version "1.12.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.12.0.tgz#f763daf840af172bb3a2b6dd7219c0e17f7ff541" + integrity sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg== dependencies: esprima "^3.1.3" estraverse "^4.2.0" @@ -2357,77 +2233,63 @@ escodegen@^1.9.1: optionalDependencies: source-map "~0.6.1" -eslint-config-airbnb-base@^13.1.0: - version "13.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.1.0.tgz#b5a1b480b80dfad16433d6c4ad84e6605052c05c" - integrity sha512-XWwQtf3U3zIoKO1BbHh6aUhJZQweOwSt4c2JrPDg9FP3Ltv3+YfEv7jIDB8275tVnO/qOHbfuYg3kzw6Je7uWw== +eslint-plugin-eslint-comments@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.1.2.tgz#4ef6c488dbe06aa1627fea107b3e5d059fc8a395" + integrity sha512-QexaqrNeteFfRTad96W+Vi4Zj1KFbkHHNMMaHZEYcovKav6gdomyGzaxSDSL3GoIyUOo078wRAdYlu1caiauIQ== dependencies: - eslint-restricted-globals "^0.1.1" - object.assign "^4.1.0" - object.entries "^1.0.4" + escape-string-regexp "^1.0.5" + ignore "^5.0.5" -eslint-import-resolver-node@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" - integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== +eslint-plugin-flowtype@2.50.3: + version "2.50.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.50.3.tgz#61379d6dce1d010370acd6681740fd913d68175f" + integrity sha512-X+AoKVOr7Re0ko/yEXyM5SSZ0tazc6ffdIOocp2fFUlWoDt7DV0Bz99mngOkAFLOAWjqRA5jPwqUCbrx13XoxQ== dependencies: - debug "^2.6.9" - resolve "^1.5.0" + lodash "^4.17.10" -eslint-module-utils@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.0.tgz#8b93499e9b00eab80ccb6614e69f03678e84e09a" - integrity sha512-14tltLm38Eu3zS+mt0KvILC3q8jyIAH518MlG+HO0p+yK885Lb1UHTY/UgR91eOyGdmxAPb+OLoW4znqIT6Ndw== +eslint-plugin-jest@22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.4.1.tgz#a5fd6f7a2a41388d16f527073b778013c5189a9c" + integrity sha512-gcLfn6P2PrFAVx3AobaOzlIEevpAEf9chTpFZz7bYfc7pz8XRv7vuKTIE4hxPKZSha6XWKKplDQ0x9Pq8xX2mg== + +eslint-plugin-prettier@2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.6.2.tgz#71998c60aedfa2141f7bfcbf9d1c459bf98b4fad" + integrity sha512-tGek5clmW5swrAx1mdPYM8oThrBE83ePh7LeseZHBWfHVGrHPhKn7Y5zgRMbU/9D5Td9K4CEmUPjGxA7iw98Og== dependencies: - debug "^2.6.8" - pkg-dir "^2.0.0" + fast-diff "^1.1.1" + jest-docblock "^21.0.0" -eslint-plugin-es@^1.3.1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6" - integrity sha512-XfFmgFdIUDgvaRAlaXUkxrRg5JSADoRC8IkKLc/cISeR3yHVMefFHQZpcyXXEUUPHfy5DwviBcrfqlyqEwlQVw== +eslint-plugin-react-hooks@^1.5.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz#6210b6d5a37205f0b92858f895a4e827020a7d04" + integrity sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA== + +eslint-plugin-react-native-globals@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-native-globals/-/eslint-plugin-react-native-globals-0.1.2.tgz#ee1348bc2ceb912303ce6bdbd22e2f045ea86ea2" + integrity sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g== + +eslint-plugin-react-native@3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-native/-/eslint-plugin-react-native-3.6.0.tgz#7cad3b7c6159df6d26fe3252c6c5417a17f27b4b" + integrity sha512-BEQcHZ06hZSBYWFVuNEq0xuui5VEsWpHDsZGBtfadHfCRqRMUrkYPgdDb3bpc60qShHE83kqIv59uKdinEg91Q== dependencies: - eslint-utils "^1.3.0" - regexpp "^2.0.1" + eslint-plugin-react-native-globals "^0.1.1" -eslint-plugin-import@^2.14.0: - version "2.17.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.17.3.tgz#00548b4434c18faebaba04b24ae6198f280de189" - integrity sha512-qeVf/UwXFJbeyLbxuY8RgqDyEKCkqV7YC+E5S5uOjAp4tOc8zj01JP3ucoBM8JcEqd1qRasJSg6LLlisirfy0Q== +eslint-plugin-react@7.12.4: + version "7.12.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.12.4.tgz#b1ecf26479d61aee650da612e425c53a99f48c8c" + integrity sha512-1puHJkXJY+oS1t467MjbqjvX53uQ05HXwjqDgdbGBqf5j9eeydI54G3KwiJmWciQ0HTBacIKw2jgwSBSH3yfgQ== dependencies: array-includes "^3.0.3" - contains-path "^0.1.0" - debug "^2.6.9" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.2" - eslint-module-utils "^2.4.0" + doctrine "^2.1.0" has "^1.0.3" - lodash "^4.17.11" - minimatch "^3.0.4" - read-pkg-up "^2.0.0" - resolve "^1.11.0" - -eslint-plugin-node@^8.0.0: - version "8.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-8.0.1.tgz#55ae3560022863d141fa7a11799532340a685964" - integrity sha512-ZjOjbjEi6jd82rIpFSgagv4CHWzG9xsQAVp1ZPlhRnnYxcTgENUVBvhYmkQ7GvT1QFijUSo69RaiOJKhMu6i8w== - dependencies: - eslint-plugin-es "^1.3.1" - eslint-utils "^1.3.1" - ignore "^5.0.2" - minimatch "^3.0.4" - resolve "^1.8.1" - semver "^5.5.0" - -eslint-plugin-promise@^4.0.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.1.1.tgz#1e08cb68b5b2cd8839f8d5864c796f56d82746db" - integrity sha512-faAHw7uzlNPy7b45J1guyjazw28M+7gJokKUjC5JSFoYfUEyy6Gw/i7YQvmv2Yk00sUjWcmzXQLpU1Ki/C2IZQ== - -eslint-restricted-globals@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7" - integrity sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc= + jsx-ast-utils "^2.0.1" + object.fromentries "^2.0.0" + prop-types "^15.6.2" + resolve "^1.9.0" eslint-scope@3.7.1: version "3.7.1" @@ -2437,7 +2299,7 @@ eslint-scope@3.7.1: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-scope@^4.0.3: +eslint-scope@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== @@ -2445,66 +2307,77 @@ eslint-scope@^4.0.3: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-utils@^1.3.0, eslint-utils@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512" - integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q== +eslint-scope@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.0.0.tgz#e87c8887c73e8d1ec84f1ca591645c358bfc8fb9" + integrity sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw== + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" -eslint-visitor-keys@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" - integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ== +eslint-utils@^1.3.1, eslint-utils@^1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab" + integrity sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q== + dependencies: + eslint-visitor-keys "^1.0.0" + +eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" + integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== -eslint@^5.10.0: - version "5.16.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.16.0.tgz#a1e3ac1aae4a3fbd8296fcf8f7ab7314cbb6abea" - integrity sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg== +eslint@^6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.2.1.tgz#66c2e4fe8b6356b9f01e828adc3ad04030122df1" + integrity sha512-ES7BzEzr0Q6m5TK9i+/iTpKjclXitOdDK4vT07OqbkBT2/VcN/gO9EL1C4HlK3TAOXYv2ItcmbVR9jO1MR0fJg== dependencies: "@babel/code-frame" "^7.0.0" - ajv "^6.9.1" + ajv "^6.10.0" chalk "^2.1.0" cross-spawn "^6.0.5" debug "^4.0.1" doctrine "^3.0.0" - eslint-scope "^4.0.3" - eslint-utils "^1.3.1" - eslint-visitor-keys "^1.0.0" - espree "^5.0.1" + eslint-scope "^5.0.0" + eslint-utils "^1.4.2" + eslint-visitor-keys "^1.1.0" + espree "^6.1.0" esquery "^1.0.1" esutils "^2.0.2" file-entry-cache "^5.0.1" functional-red-black-tree "^1.0.1" - glob "^7.1.2" + glob-parent "^5.0.0" globals "^11.7.0" ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^6.2.2" - js-yaml "^3.13.0" + inquirer "^6.4.1" + is-glob "^4.0.0" + js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.3.0" - lodash "^4.17.11" + lodash "^4.17.14" minimatch "^3.0.4" mkdirp "^0.5.1" natural-compare "^1.4.0" optionator "^0.8.2" - path-is-inside "^1.0.2" progress "^2.0.0" regexpp "^2.0.1" - semver "^5.5.1" - strip-ansi "^4.0.0" - strip-json-comments "^2.0.1" + semver "^6.1.2" + strip-ansi "^5.2.0" + strip-json-comments "^3.0.1" table "^5.2.3" text-table "^0.2.0" + v8-compile-cache "^2.0.3" -espree@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.1.tgz#5d6526fa4fc7f0788a5cf75b15f30323e2f81f7a" - integrity sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A== +espree@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-6.1.0.tgz#a1e8aa65bf29a331d70351ed814a80e7534e0884" + integrity sha512-boA7CHRLlVWUSg3iL5Kmlt/xT3Q+sXnKoRYYzj1YeM10A76TEJBbotV5pKbnK42hEUIr121zTv+QLRM5LsCPXQ== dependencies: - acorn "^6.0.7" + acorn "^7.0.0" acorn-jsx "^5.0.0" - eslint-visitor-keys "^1.0.0" + eslint-visitor-keys "^1.1.0" esprima@^3.1.3: version "3.1.3" @@ -2531,36 +2404,34 @@ esrecurse@^4.1.0: estraverse "^4.1.0" estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" - integrity sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== esutils@^2.0.0, esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= -event-target-shim@^1.0.5: - version "1.1.1" - resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-1.1.1.tgz#a86e5ee6bdaa16054475da797ccddf0c55698491" - integrity sha1-qG5e5r2qFgVEddp5fM3fDFVphJE= +event-target-shim@^5.0.0, event-target-shim@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== eventemitter3@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== -exec-sh@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36" - integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw== - dependencies: - merge "^1.2.0" +exec-sh@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.2.tgz#6738de2eb7c8e671d0366aea0b0db8c6f7d7391b" + integrity sha512-9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg== execa@^0.7.0: version "0.7.0" @@ -2575,18 +2446,24 @@ execa@^0.7.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expand-brackets@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" - integrity sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= - dependencies: - is-posix-bracket "^0.1.0" - expand-brackets@^2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" @@ -2600,24 +2477,17 @@ expand-brackets@^2.1.4: snapdragon "^0.8.1" to-regex "^3.0.1" -expand-range@^1.8.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" - integrity sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= - dependencies: - fill-range "^2.1.0" - -expect@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-23.6.0.tgz#1e0c8d3ba9a581c87bd71fb9bc8862d443425f98" - integrity sha512-dgSoOHgmtn/aDGRVFWclQyPDKl2CQRq0hmIEoUAuQs/2rn2NcvCWcSCovm6BLeuB/7EZuLGu2QfnR+qRt5OM4w== +expect@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" + integrity sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q== dependencies: + "@jest/types" "^24.9.0" ansi-styles "^3.2.0" - jest-diff "^23.6.0" - jest-get-type "^22.1.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" + jest-get-type "^24.9.0" + jest-matcher-utils "^24.9.0" + jest-message-util "^24.9.0" + jest-regex-util "^24.9.0" extend-shallow@^1.1.2: version "1.1.4" @@ -2656,21 +2526,14 @@ external-editor@^2.0.4: tmp "^0.0.33" external-editor@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" - integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: chardet "^0.7.0" iconv-lite "^0.4.24" tmp "^0.0.33" -extglob@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" - integrity sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= - dependencies: - is-extglob "^1.0.0" - extglob@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" @@ -2710,6 +2573,11 @@ fast-deep-equal@^2.0.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= +fast-diff@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== + fast-json-stable-stringify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" @@ -2732,7 +2600,7 @@ fbjs-css-vars@^1.0.0: resolved "https://registry.yarnpkg.com/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz#216551136ae02fe255932c3ec8775f18e2c078b8" integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== -fbjs-scripts@^1.0.0: +fbjs-scripts@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/fbjs-scripts/-/fbjs-scripts-1.2.0.tgz#069a0c0634242d10031c6460ef1fccefcdae8b27" integrity sha512-5krZ8T0Bf8uky0abPoCLrfa7Orxd8UH4Qq8hRUF2RZYNMu+FmEOrBc7Ib3YVONmxTXTlLAvyrrdrVmksDb2OqQ== @@ -2782,6 +2650,13 @@ figures@^2.0.0: dependencies: escape-string-regexp "^1.0.5" +figures@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.0.0.tgz#756275c964646163cc6f9197c7a0295dbfd04de9" + integrity sha512-HKri+WoWoUgr83pehn/SIgLOMZ9nAWC6dcGj26RY2R4F50u4+RTUz0RCrUlOV3nKRAICW1UGzyb+kcX2qK1S/g== + dependencies: + escape-string-regexp "^1.0.5" + file-entry-cache@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" @@ -2789,30 +2664,6 @@ file-entry-cache@^5.0.1: dependencies: flat-cache "^2.0.1" -filename-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" - integrity sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= - -fileset@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" - integrity sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA= - dependencies: - glob "^7.0.3" - minimatch "^3.0.3" - -fill-range@^2.1.0: - version "2.2.4" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" - integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== - dependencies: - is-number "^2.1.0" - isobject "^2.0.0" - randomatic "^3.0.0" - repeat-element "^1.1.2" - repeat-string "^1.5.2" - fill-range@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" @@ -2845,15 +2696,7 @@ find-cache-dir@^2.0.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0, find-up@^2.1.0: +find-up@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= @@ -2877,22 +2720,15 @@ flat-cache@^2.0.1: write "1.0.3" flatted@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.0.tgz#55122b6536ea496b4b44893ee2608141d10d9916" - integrity sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg== + version "2.0.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.1.tgz#69e57caa8f0eacbc281d2e2cb458d46fdb449e08" + integrity sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg== -for-in@^1.0.1, for-in@^1.0.2: +for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= -for-own@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" - integrity sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= - dependencies: - for-in "^1.0.1" - forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -2928,6 +2764,15 @@ fs-extra@^1.0.0: jsonfile "^2.1.0" klaw "^1.0.0" +fs-extra@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" + integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + fs-minipass@^1.2.5: version "1.2.6" resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.6.tgz#2c5cc30ded81282bfe8a0d7c7c1853ddeb102c07" @@ -2935,17 +2780,12 @@ fs-minipass@^1.2.5: dependencies: minipass "^2.2.1" -fs-readdir-recursive@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27" - integrity sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA== - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@^1.2.3, fsevents@^1.2.7: +fsevents@^1.2.7: version "1.2.9" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.9.tgz#3f5ed66583ccd6f400b5a00db6f7e861363e388f" integrity sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw== @@ -2963,17 +2803,6 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= -gauge@~1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-1.2.7.tgz#e9cec5483d3d4ee0ef44b60a7d99e4935e136d93" - integrity sha1-6c7FSD09TuDvRLYKfZnkk14TbZM= - dependencies: - ansi "^0.3.0" - has-unicode "^2.0.0" - lodash.pad "^4.1.0" - lodash.padend "^4.1.0" - lodash.padstart "^4.1.0" - gauge@~2.7.3: version "2.7.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" @@ -2993,11 +2822,23 @@ get-caller-file@^1.0.1: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== +get-caller-file@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -3010,30 +2851,14 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" -glob-base@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" - integrity sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= - dependencies: - glob-parent "^2.0.0" - is-glob "^2.0.0" - -glob-parent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" - integrity sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= - dependencies: - is-glob "^2.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= +glob-parent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.0.0.tgz#1dc99f0f39b006d3e92c2c284068382f0c20e954" + integrity sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg== dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" + is-glob "^4.0.1" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: +glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: version "7.1.4" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A== @@ -3046,34 +2871,29 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: path-is-absolute "^1.0.0" global@^4.3.0: - version "4.3.2" - resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" - integrity sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8= + version "4.4.0" + resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" + integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w== dependencies: min-document "^2.19.0" - process "~0.5.1" + process "^0.11.10" globals@^11.1.0, globals@^11.7.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9: - version "4.1.15" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" - integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9: + version "4.2.2" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz#6f0952605d0140c1cfdb138ed005775b92d67b02" + integrity sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q== growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= -handlebars@^4.0.3: +handlebars@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67" integrity sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw== @@ -3097,18 +2917,6 @@ har-validator@~5.1.0: ajv "^6.5.5" har-schema "^2.0.0" -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -3162,6 +2970,11 @@ has@^1.0.1, has@^1.0.3: dependencies: function-bind "^1.1.1" +hermesvm@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/hermesvm/-/hermesvm-0.1.0.tgz#4bfaf4ac682a2fd407b862ab641eb8deb232de83" + integrity sha512-GbP6dKaVW/V2QpB+DZPxcmhBhJVFa9cHS/xRX7FD1MGfa6Z1aHHD83VDCwo3SgcqNj5yHlVbe9UgrK1PFGCXpw== + hoist-non-react-statics@^2.3.1, hoist-non-react-statics@^2.5.0: version "2.5.5" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47" @@ -3172,20 +2985,12 @@ hoist-non-react-statics@^3.0.1, hoist-non-react-statics@^3.3.0: resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b" integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA== dependencies: - react-is "^16.7.0" - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" - integrity sha1-42w/LSyufXRqhX440Y1fMqeILbg= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" + react-is "^16.7.0" hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== + version "2.8.4" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.4.tgz#44119abaf4bc64692a16ace34700fed9c03e2546" + integrity sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ== html-encoding-sniffer@^1.0.2: version "1.0.2" @@ -3195,12 +3000,12 @@ html-encoding-sniffer@^1.0.2: whatwg-encoding "^1.0.1" http-errors@~1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" - integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== + version "1.7.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== dependencies: depd "~1.1.2" - inherits "2.0.3" + inherits "2.0.4" setprototypeof "1.1.1" statuses ">= 1.5.0 < 2" toidentifier "1.0.0" @@ -3233,10 +3038,10 @@ ignore@^4.0.6: resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== -ignore@^5.0.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.2.tgz#e28e584d43ad7e92f96995019cc43b9e1ac49558" - integrity sha512-vdqWBp7MyzdmHkkRWV5nY+PfGRbYbahfuvsBCh277tq+w9zyNi7h5CYJCK0kmzti9kU+O/cB7sE8HvKv6aXAKQ== +ignore@^5.0.5: + version "5.1.4" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.4.tgz#84b7b3dbe64552b6ef0eca99f6743dbec6d97adf" + integrity sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A== image-size@^0.6.0: version "0.6.3" @@ -3252,19 +3057,19 @@ import-fresh@^2.0.0: resolve-from "^3.0.0" import-fresh@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.0.0.tgz#a3d897f420cab0e671236897f75bc14b4885c390" - integrity sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ== + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.1.0.tgz#6d33fa1dcef6df930fae003446f33415af905118" + integrity sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" -import-local@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" - integrity sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ== +import-local@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" + integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== dependencies: - pkg-dir "^2.0.0" + pkg-dir "^3.0.0" resolve-cwd "^2.0.0" imurmurhash@^0.1.4: @@ -3280,10 +3085,10 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.3, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= +inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== ini@~1.3.0: version "1.3.5" @@ -3310,26 +3115,26 @@ inquirer@^3.0.6: strip-ansi "^4.0.0" through "^2.3.6" -inquirer@^6.2.2: - version "6.3.1" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.3.1.tgz#7a413b5e7950811013a3db491c61d1f3b776e8e7" - integrity sha512-MmL624rfkFt4TG9y/Jvmt8vdmOo836U7Y0Hxr2aFk3RelZEGX4Igk0KabWrcaaZaTv9uzglOqWh1Vly+FAWAXA== +inquirer@^6.4.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.1.tgz#8bfb7a5ac02dac6ff641ac4c5ff17da112fcdb42" + integrity sha512-uxNHBeQhRXIoHWTSNYUFhQVrHYFThIt6IVo2fFmSe8aBwdR3/w6b58hJpiL/fMukFkvGzjg+hSxFtwvVmKZmXw== dependencies: - ansi-escapes "^3.2.0" + ansi-escapes "^4.2.1" chalk "^2.4.2" - cli-cursor "^2.1.0" + cli-cursor "^3.1.0" cli-width "^2.0.0" external-editor "^3.0.3" - figures "^2.0.0" - lodash "^4.17.11" - mute-stream "0.0.7" + figures "^3.0.0" + lodash "^4.17.15" + mute-stream "0.0.8" run-async "^2.2.0" rxjs "^6.4.0" - string-width "^2.1.0" + string-width "^4.1.0" strip-ansi "^5.1.0" through "^2.3.6" -invariant@^2.2.2, invariant@^2.2.4: +invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== @@ -3341,6 +3146,11 @@ invert-kv@^1.0.0: resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= +invert-kv@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" + integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== + is-accessor-descriptor@^0.1.6: version "0.1.6" resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" @@ -3360,13 +3170,6 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= - dependencies: - binary-extensions "^1.0.0" - is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" @@ -3377,12 +3180,12 @@ is-callable@^1.1.4: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== -is-ci@^1.0.10: - version "1.2.1" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" - integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== dependencies: - ci-info "^1.5.0" + ci-info "^2.0.0" is-data-descriptor@^0.1.4: version "0.1.4" @@ -3426,18 +3229,6 @@ is-directory@^0.3.1: resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= -is-dotfile@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" - integrity sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= - -is-equal-shallow@^0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" - integrity sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= - dependencies: - is-primitive "^2.0.0" - is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -3450,23 +3241,11 @@ is-extendable@^1.0.1: dependencies: is-plain-object "^2.0.4" -is-extglob@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" - integrity sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= - -is-extglob@^2.1.0, is-extglob@^2.1.1: +is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - integrity sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= - dependencies: - number-is-nan "^1.0.0" - is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" @@ -3479,39 +3258,23 @@ is-fullwidth-code-point@^2.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= -is-generator-fn@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" - integrity sha1-lp1J4bszKfa7fwkIm+JleLLd1Go= - -is-glob@^2.0.0, is-glob@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" - integrity sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= - dependencies: - is-extglob "^1.0.0" +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= - dependencies: - is-extglob "^2.1.0" +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== -is-glob@^4.0.0: +is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== dependencies: is-extglob "^2.1.1" -is-number@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" - integrity sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= - dependencies: - kind-of "^3.0.2" - is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -3519,33 +3282,13 @@ is-number@^3.0.0: dependencies: kind-of "^3.0.2" -is-number@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" - integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== - -is-plain-obj@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= - -is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== dependencies: isobject "^3.0.1" -is-posix-bracket@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" - integrity sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= - -is-primitive@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" - integrity sha1-IHurkWOEmcB7Kt8kCkGochADRXU= - is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" @@ -3575,11 +3318,6 @@ is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" - integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= - is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -3595,7 +3333,7 @@ isarray@0.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: +isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= @@ -3630,418 +3368,421 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -istanbul-api@^1.3.1: - version "1.3.7" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.3.7.tgz#a86c770d2b03e11e3f778cd7aedd82d2722092aa" - integrity sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA== - dependencies: - async "^2.1.4" - fileset "^2.0.2" - istanbul-lib-coverage "^1.2.1" - istanbul-lib-hook "^1.2.2" - istanbul-lib-instrument "^1.10.2" - istanbul-lib-report "^1.1.5" - istanbul-lib-source-maps "^1.2.6" - istanbul-reports "^1.5.1" - js-yaml "^3.7.0" - mkdirp "^0.5.1" - once "^1.4.0" - -istanbul-lib-coverage@^1.2.0, istanbul-lib-coverage@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz#ccf7edcd0a0bb9b8f729feeb0930470f9af664f0" - integrity sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ== - -istanbul-lib-hook@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz#bc6bf07f12a641fbf1c85391d0daa8f0aea6bf86" - integrity sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw== - dependencies: - append-transform "^0.4.0" - -istanbul-lib-instrument@^1.10.1, istanbul-lib-instrument@^1.10.2: - version "1.10.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz#1f55ed10ac3c47f2bdddd5307935126754d0a9ca" - integrity sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A== - dependencies: - babel-generator "^6.18.0" - babel-template "^6.16.0" - babel-traverse "^6.18.0" - babel-types "^6.18.0" - babylon "^6.18.0" - istanbul-lib-coverage "^1.2.1" - semver "^5.3.0" - -istanbul-lib-report@^1.1.5: - version "1.1.5" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz#f2a657fc6282f96170aaf281eb30a458f7f4170c" - integrity sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw== - dependencies: - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - path-parse "^1.0.5" - supports-color "^3.1.2" +istanbul-lib-coverage@^2.0.2, istanbul-lib-coverage@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" + integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== -istanbul-lib-source-maps@^1.2.4, istanbul-lib-source-maps@^1.2.6: - version "1.2.6" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz#37b9ff661580f8fca11232752ee42e08c6675d8f" - integrity sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg== - dependencies: - debug "^3.1.0" - istanbul-lib-coverage "^1.2.1" - mkdirp "^0.5.1" - rimraf "^2.6.1" - source-map "^0.5.3" +istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" + integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA== + dependencies: + "@babel/generator" "^7.4.0" + "@babel/parser" "^7.4.3" + "@babel/template" "^7.4.0" + "@babel/traverse" "^7.4.3" + "@babel/types" "^7.4.0" + istanbul-lib-coverage "^2.0.5" + semver "^6.0.0" + +istanbul-lib-report@^2.0.4: + version "2.0.8" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" + integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ== + dependencies: + istanbul-lib-coverage "^2.0.5" + make-dir "^2.1.0" + supports-color "^6.1.0" + +istanbul-lib-source-maps@^3.0.1: + version "3.0.6" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" + integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^2.0.5" + make-dir "^2.1.0" + rimraf "^2.6.3" + source-map "^0.6.1" -istanbul-reports@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.5.1.tgz#97e4dbf3b515e8c484caea15d6524eebd3ff4e1a" - integrity sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw== +istanbul-reports@^2.2.6: + version "2.2.6" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af" + integrity sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA== dependencies: - handlebars "^4.0.3" + handlebars "^4.1.2" -jest-changed-files@^23.4.2: - version "23.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-23.4.2.tgz#1eed688370cd5eebafe4ae93d34bb3b64968fe83" - integrity sha512-EyNhTAUWEfwnK0Is/09LxoqNDOn7mU7S3EHskG52djOFS/z+IT0jT3h3Ql61+dklcG7bJJitIWEMB4Sp1piHmA== +jest-changed-files@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039" + integrity sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg== dependencies: + "@jest/types" "^24.9.0" + execa "^1.0.0" throat "^4.0.0" -jest-cli@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-23.6.0.tgz#61ab917744338f443ef2baa282ddffdd658a5da4" - integrity sha512-hgeD1zRUp1E1zsiyOXjEn4LzRLWdJBV//ukAHGlx6s5mfCNJTbhbHjgxnDUXA8fsKWN/HqFFF6X5XcCwC/IvYQ== +jest-cli@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af" + integrity sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg== dependencies: - ansi-escapes "^3.0.0" + "@jest/core" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" chalk "^2.0.1" exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.1.11" - import-local "^1.0.0" - is-ci "^1.0.10" - istanbul-api "^1.3.1" - istanbul-lib-coverage "^1.2.0" - istanbul-lib-instrument "^1.10.1" - istanbul-lib-source-maps "^1.2.4" - jest-changed-files "^23.4.2" - jest-config "^23.6.0" - jest-environment-jsdom "^23.4.0" - jest-get-type "^22.1.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve-dependencies "^23.6.0" - jest-runner "^23.6.0" - jest-runtime "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - jest-watcher "^23.4.0" - jest-worker "^23.2.0" - micromatch "^2.3.11" - node-notifier "^5.2.1" - prompts "^0.1.9" - realpath-native "^1.0.0" - rimraf "^2.5.4" - slash "^1.0.0" - string-length "^2.0.0" - strip-ansi "^4.0.0" - which "^1.2.12" - yargs "^11.0.0" - -jest-config@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-23.6.0.tgz#f82546a90ade2d8c7026fbf6ac5207fc22f8eb1d" - integrity sha512-i8V7z9BeDXab1+VNo78WM0AtWpBRXJLnkT+lyT+Slx/cbP5sZJ0+NDuLcmBE5hXAoK0aUp7vI+MOxR+R4d8SRQ== - dependencies: - babel-core "^6.0.0" - babel-jest "^23.6.0" + import-local "^2.0.0" + is-ci "^2.0.0" + jest-config "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + prompts "^2.0.1" + realpath-native "^1.1.0" + yargs "^13.3.0" + +jest-config@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5" + integrity sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^24.9.0" + "@jest/types" "^24.9.0" + babel-jest "^24.9.0" chalk "^2.0.1" glob "^7.1.1" - jest-environment-jsdom "^23.4.0" - jest-environment-node "^23.4.0" - jest-get-type "^22.1.0" - jest-jasmine2 "^23.6.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - pretty-format "^23.6.0" - -jest-diff@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-23.6.0.tgz#1500f3f16e850bb3d71233408089be099f610c7d" - integrity sha512-Gz9l5Ov+X3aL5L37IT+8hoCUsof1CVYBb2QEkOupK64XyRR3h+uRpYIm97K7sY8diFxowR8pIGEdyfMKTixo3g== + jest-environment-jsdom "^24.9.0" + jest-environment-node "^24.9.0" + jest-get-type "^24.9.0" + jest-jasmine2 "^24.9.0" + jest-regex-util "^24.3.0" + jest-resolve "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + micromatch "^3.1.10" + pretty-format "^24.9.0" + realpath-native "^1.1.0" + +jest-diff@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" + integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== dependencies: chalk "^2.0.1" - diff "^3.2.0" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" + diff-sequences "^24.9.0" + jest-get-type "^24.9.0" + pretty-format "^24.9.0" -jest-docblock@23.2.0, jest-docblock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-23.2.0.tgz#f085e1f18548d99fdd69b20207e6fd55d91383a7" - integrity sha1-8IXh8YVI2Z/dabICB+b9VdkTg6c= +jest-docblock@^21.0.0: + version "21.2.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414" + integrity sha512-5IZ7sY9dBAYSV+YjQ0Ovb540Ku7AO9Z5o2Cg789xj167iQuZ2cG+z0f3Uct6WeYLbU6aQiM2pCs7sZ+4dotydw== + +jest-docblock@^24.3.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.9.0.tgz#7970201802ba560e1c4092cc25cbedf5af5a8ce2" + integrity sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA== dependencies: detect-newline "^2.1.0" -jest-each@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-23.6.0.tgz#ba0c3a82a8054387016139c733a05242d3d71575" - integrity sha512-x7V6M/WGJo6/kLoissORuvLIeAoyo2YqLOoCDkohgJ4XOXSqOtyvr8FbInlAWS77ojBsZrafbozWoKVRdtxFCg== +jest-each@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05" + integrity sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog== dependencies: + "@jest/types" "^24.9.0" chalk "^2.0.1" - pretty-format "^23.6.0" - -jest-environment-jsdom@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-23.4.0.tgz#056a7952b3fea513ac62a140a2c368c79d9e6023" - integrity sha1-BWp5UrP+pROsYqFAosNox52eYCM= - dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" + jest-get-type "^24.9.0" + jest-util "^24.9.0" + pretty-format "^24.9.0" + +jest-environment-jsdom@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b" + integrity sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA== + dependencies: + "@jest/environment" "^24.9.0" + "@jest/fake-timers" "^24.9.0" + "@jest/types" "^24.9.0" + jest-mock "^24.9.0" + jest-util "^24.9.0" jsdom "^11.5.1" -jest-environment-node@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-23.4.0.tgz#57e80ed0841dea303167cce8cd79521debafde10" - integrity sha1-V+gO0IQd6jAxZ8zozXlSHeuv3hA= +jest-environment-node@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3" + integrity sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA== dependencies: - jest-mock "^23.2.0" - jest-util "^23.4.0" + "@jest/environment" "^24.9.0" + "@jest/fake-timers" "^24.9.0" + "@jest/types" "^24.9.0" + jest-mock "^24.9.0" + jest-util "^24.9.0" -jest-get-type@^22.1.0: - version "22.4.3" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" - integrity sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w== +jest-get-type@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" + integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== -jest-haste-map@23.5.0: - version "23.5.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.5.0.tgz#d4ca618188bd38caa6cb20349ce6610e194a8065" - integrity sha512-bt9Swigb6KZ6ZQq/fQDUwdUeHenVvZ6G/lKwJjwRGp+Fap8D4B3bND3FaeJg7vXVsLX8hXshRArbVxLop/5wLw== +jest-haste-map@^24.7.1, jest-haste-map@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d" + integrity sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ== dependencies: + "@jest/types" "^24.9.0" + anymatch "^2.0.0" fb-watchman "^2.0.0" - graceful-fs "^4.1.11" + graceful-fs "^4.1.15" invariant "^2.2.4" - jest-docblock "^23.2.0" - jest-serializer "^23.0.1" - jest-worker "^23.2.0" - micromatch "^2.3.11" - sane "^2.0.0" + jest-serializer "^24.9.0" + jest-util "^24.9.0" + jest-worker "^24.9.0" + micromatch "^3.1.10" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^1.2.7" -jest-haste-map@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-23.6.0.tgz#2e3eb997814ca696d62afdb3f2529f5bbc935e16" - integrity sha512-uyNhMyl6dr6HaXGHp8VF7cK6KpC6G9z9LiMNsst+rJIZ8l7wY0tk8qwjPmEghczojZ2/ZhtEdIabZ0OQRJSGGg== +jest-jasmine2@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0" + integrity sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw== dependencies: - fb-watchman "^2.0.0" - graceful-fs "^4.1.11" - invariant "^2.2.4" - jest-docblock "^23.2.0" - jest-serializer "^23.0.1" - jest-worker "^23.2.0" - micromatch "^2.3.11" - sane "^2.0.0" - -jest-jasmine2@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-23.6.0.tgz#840e937f848a6c8638df24360ab869cc718592e0" - integrity sha512-pe2Ytgs1nyCs8IvsEJRiRTPC0eVYd8L/dXJGU08GFuBwZ4sYH/lmFDdOL3ZmvJR8QKqV9MFuwlsAi/EWkFUbsQ== - dependencies: - babel-traverse "^6.0.0" + "@babel/traverse" "^7.1.0" + "@jest/environment" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" chalk "^2.0.1" co "^4.6.0" - expect "^23.6.0" - is-generator-fn "^1.0.0" - jest-diff "^23.6.0" - jest-each "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - pretty-format "^23.6.0" - -jest-leak-detector@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-23.6.0.tgz#e4230fd42cf381a1a1971237ad56897de7e171de" - integrity sha512-f/8zA04rsl1Nzj10HIyEsXvYlMpMPcy0QkQilVZDFOaPbv2ur71X5u2+C4ZQJGyV/xvVXtCCZ3wQ99IgQxftCg== - dependencies: - pretty-format "^23.6.0" - -jest-matcher-utils@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-23.6.0.tgz#726bcea0c5294261a7417afb6da3186b4b8cac80" - integrity sha512-rosyCHQfBcol4NsckTn01cdelzWLU9Cq7aaigDf8VwwpIRvWE/9zLgX2bON+FkEW69/0UuYslUe22SOdEf2nog== + expect "^24.9.0" + is-generator-fn "^2.0.0" + jest-each "^24.9.0" + jest-matcher-utils "^24.9.0" + jest-message-util "^24.9.0" + jest-runtime "^24.9.0" + jest-snapshot "^24.9.0" + jest-util "^24.9.0" + pretty-format "^24.9.0" + throat "^4.0.0" + +jest-leak-detector@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a" + integrity sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA== + dependencies: + jest-get-type "^24.9.0" + pretty-format "^24.9.0" + +jest-matcher-utils@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" + integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA== dependencies: chalk "^2.0.1" - jest-get-type "^22.1.0" - pretty-format "^23.6.0" + jest-diff "^24.9.0" + jest-get-type "^24.9.0" + pretty-format "^24.9.0" -jest-message-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-23.4.0.tgz#17610c50942349508d01a3d1e0bda2c079086a9f" - integrity sha1-F2EMUJQjSVCNAaPR4L2iwHkIap8= +jest-message-util@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3" + integrity sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw== dependencies: - "@babel/code-frame" "^7.0.0-beta.35" + "@babel/code-frame" "^7.0.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/stack-utils" "^1.0.1" chalk "^2.0.1" - micromatch "^2.3.11" - slash "^1.0.0" + micromatch "^3.1.10" + slash "^2.0.0" stack-utils "^1.0.1" -jest-mock@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-23.2.0.tgz#ad1c60f29e8719d47c26e1138098b6d18b261134" - integrity sha1-rRxg8p6HGdR8JuETgJi20YsmETQ= +jest-mock@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6" + integrity sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w== + dependencies: + "@jest/types" "^24.9.0" + +jest-pnp-resolver@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" + integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ== -jest-regex-util@^23.3.0: - version "23.3.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-23.3.0.tgz#5f86729547c2785c4002ceaa8f849fe8ca471bc5" - integrity sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U= +jest-regex-util@^24.3.0, jest-regex-util@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" + integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA== -jest-resolve-dependencies@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-23.6.0.tgz#b4526af24c8540d9a3fab102c15081cf509b723d" - integrity sha512-EkQWkFWjGKwRtRyIwRwI6rtPAEyPWlUC2MpzHissYnzJeHcyCn1Hc8j7Nn1xUVrS5C6W5+ZL37XTem4D4pLZdA== +jest-resolve-dependencies@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab" + integrity sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g== dependencies: - jest-regex-util "^23.3.0" - jest-snapshot "^23.6.0" + "@jest/types" "^24.9.0" + jest-regex-util "^24.3.0" + jest-snapshot "^24.9.0" -jest-resolve@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-23.6.0.tgz#cf1d1a24ce7ee7b23d661c33ba2150f3aebfa0ae" - integrity sha512-XyoRxNtO7YGpQDmtQCmZjum1MljDqUCob7XlZ6jy9gsMugHdN2hY4+Acz9Qvjz2mSsOnPSH7skBmDYCHXVZqkA== +jest-resolve@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.9.0.tgz#dff04c7687af34c4dd7e524892d9cf77e5d17321" + integrity sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ== dependencies: + "@jest/types" "^24.9.0" browser-resolve "^1.11.3" chalk "^2.0.1" - realpath-native "^1.0.0" - -jest-runner@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-23.6.0.tgz#3894bd219ffc3f3cb94dc48a4170a2e6f23a5a38" - integrity sha512-kw0+uj710dzSJKU6ygri851CObtCD9cN8aNkg8jWJf4ewFyEa6kwmiH/r/M1Ec5IL/6VFa0wnAk6w+gzUtjJzA== - dependencies: + jest-pnp-resolver "^1.2.1" + realpath-native "^1.1.0" + +jest-runner@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42" + integrity sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg== + dependencies: + "@jest/console" "^24.7.1" + "@jest/environment" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + chalk "^2.4.2" exit "^0.1.2" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-docblock "^23.2.0" - jest-haste-map "^23.6.0" - jest-jasmine2 "^23.6.0" - jest-leak-detector "^23.6.0" - jest-message-util "^23.4.0" - jest-runtime "^23.6.0" - jest-util "^23.4.0" - jest-worker "^23.2.0" + graceful-fs "^4.1.15" + jest-config "^24.9.0" + jest-docblock "^24.3.0" + jest-haste-map "^24.9.0" + jest-jasmine2 "^24.9.0" + jest-leak-detector "^24.9.0" + jest-message-util "^24.9.0" + jest-resolve "^24.9.0" + jest-runtime "^24.9.0" + jest-util "^24.9.0" + jest-worker "^24.6.0" source-map-support "^0.5.6" throat "^4.0.0" -jest-runtime@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-23.6.0.tgz#059e58c8ab445917cd0e0d84ac2ba68de8f23082" - integrity sha512-ycnLTNPT2Gv+TRhnAYAQ0B3SryEXhhRj1kA6hBPSeZaNQkJ7GbZsxOLUkwg6YmvWGdX3BB3PYKFLDQCAE1zNOw== - dependencies: - babel-core "^6.0.0" - babel-plugin-istanbul "^4.1.6" +jest-runtime@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac" + integrity sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw== + dependencies: + "@jest/console" "^24.7.1" + "@jest/environment" "^24.9.0" + "@jest/source-map" "^24.3.0" + "@jest/transform" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/yargs" "^13.0.0" chalk "^2.0.1" - convert-source-map "^1.4.0" exit "^0.1.2" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.1.11" - jest-config "^23.6.0" - jest-haste-map "^23.6.0" - jest-message-util "^23.4.0" - jest-regex-util "^23.3.0" - jest-resolve "^23.6.0" - jest-snapshot "^23.6.0" - jest-util "^23.4.0" - jest-validate "^23.6.0" - micromatch "^2.3.11" - realpath-native "^1.0.0" - slash "^1.0.0" - strip-bom "3.0.0" - write-file-atomic "^2.1.0" - yargs "^11.0.0" - -jest-serializer@23.0.1, jest-serializer@^23.0.1: - version "23.0.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-23.0.1.tgz#a3776aeb311e90fe83fab9e533e85102bd164165" - integrity sha1-o3dq6zEekP6D+rnlM+hRAr0WQWU= - -jest-snapshot@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-23.6.0.tgz#f9c2625d1b18acda01ec2d2b826c0ce58a5aa17a" - integrity sha512-tM7/Bprftun6Cvj2Awh/ikS7zV3pVwjRYU2qNYS51VZHgaAMBs5l4o/69AiDHhQrj5+LA2Lq4VIvK7zYk/bswg== - dependencies: - babel-types "^6.0.0" + glob "^7.1.3" + graceful-fs "^4.1.15" + jest-config "^24.9.0" + jest-haste-map "^24.9.0" + jest-message-util "^24.9.0" + jest-mock "^24.9.0" + jest-regex-util "^24.3.0" + jest-resolve "^24.9.0" + jest-snapshot "^24.9.0" + jest-util "^24.9.0" + jest-validate "^24.9.0" + realpath-native "^1.1.0" + slash "^2.0.0" + strip-bom "^3.0.0" + yargs "^13.3.0" + +jest-serializer@^24.4.0, jest-serializer@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73" + integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ== + +jest-snapshot@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba" + integrity sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^24.9.0" chalk "^2.0.1" - jest-diff "^23.6.0" - jest-matcher-utils "^23.6.0" - jest-message-util "^23.4.0" - jest-resolve "^23.6.0" + expect "^24.9.0" + jest-diff "^24.9.0" + jest-get-type "^24.9.0" + jest-matcher-utils "^24.9.0" + jest-message-util "^24.9.0" + jest-resolve "^24.9.0" mkdirp "^0.5.1" natural-compare "^1.4.0" - pretty-format "^23.6.0" - semver "^5.5.0" - -jest-util@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-23.4.0.tgz#4d063cb927baf0a23831ff61bec2cbbf49793561" - integrity sha1-TQY8uSe68KI4Mf9hvsLLv0l5NWE= - dependencies: - callsites "^2.0.0" + pretty-format "^24.9.0" + semver "^6.2.0" + +jest-util@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162" + integrity sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg== + dependencies: + "@jest/console" "^24.9.0" + "@jest/fake-timers" "^24.9.0" + "@jest/source-map" "^24.9.0" + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + callsites "^3.0.0" chalk "^2.0.1" - graceful-fs "^4.1.11" - is-ci "^1.0.10" - jest-message-util "^23.4.0" + graceful-fs "^4.1.15" + is-ci "^2.0.0" mkdirp "^0.5.1" - slash "^1.0.0" + slash "^2.0.0" source-map "^0.6.0" -jest-validate@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-23.6.0.tgz#36761f99d1ed33fcd425b4e4c5595d62b6597474" - integrity sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A== +jest-validate@^24.7.0, jest-validate@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" + integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ== dependencies: + "@jest/types" "^24.9.0" + camelcase "^5.3.1" chalk "^2.0.1" - jest-get-type "^22.1.0" - leven "^2.1.0" - pretty-format "^23.6.0" - -jest-watcher@^23.4.0: - version "23.4.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-23.4.0.tgz#d2e28ce74f8dad6c6afc922b92cabef6ed05c91c" - integrity sha1-0uKM50+NrWxq/JIrksq+9u0FyRw= - dependencies: + jest-get-type "^24.9.0" + leven "^3.1.0" + pretty-format "^24.9.0" + +jest-watcher@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b" + integrity sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw== + dependencies: + "@jest/test-result" "^24.9.0" + "@jest/types" "^24.9.0" + "@types/yargs" "^13.0.0" ansi-escapes "^3.0.0" chalk "^2.0.1" + jest-util "^24.9.0" string-length "^2.0.0" -jest-worker@23.2.0, jest-worker@^23.2.0: - version "23.2.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-23.2.0.tgz#faf706a8da36fae60eb26957257fa7b5d8ea02b9" - integrity sha1-+vcGqNo2+uYOsmlXJX+ntdjqArk= +jest-worker@^24.6.0, jest-worker@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" + integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw== dependencies: - merge-stream "^1.0.1" + merge-stream "^2.0.0" + supports-color "^6.1.0" -jest@23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-23.6.0.tgz#ad5835e923ebf6e19e7a1d7529a432edfee7813d" - integrity sha512-lWzcd+HSiqeuxyhG+EnZds6iO3Y3ZEnMrfZq/OTGvF/C+Z4fPMCdhWTGSAiO2Oym9rbEXfwddHhh6jqrTF3+Lw== +jest@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-24.9.0.tgz#987d290c05a08b52c56188c1002e368edb007171" + integrity sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw== dependencies: - import-local "^1.0.0" - jest-cli "^23.6.0" + import-local "^2.0.0" + jest-cli "^24.9.0" + +jetifier@^1.6.2: + version "1.6.4" + resolved "https://registry.yarnpkg.com/jetifier/-/jetifier-1.6.4.tgz#6159db8e275d97980d26162897a0648b6d4a3222" + integrity sha512-+f/4OLeqY8RAmXnonI1ffeY1DR8kMNJPhv5WMFehchf7U71cjMQVKkOz1n6asz6kfVoAqKNWJz1A/18i18AcXA== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-tokens@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= - -js-yaml@^3.13.0, js-yaml@^3.13.1, js-yaml@^3.7.0: +js-yaml@^3.13.1: version "3.13.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== @@ -4054,6 +3795,11 @@ jsbn@~0.1.0: resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= +jsc-android@245459.0.0: + version "245459.0.0" + resolved "https://registry.yarnpkg.com/jsc-android/-/jsc-android-245459.0.0.tgz#e584258dd0b04c9159a27fb104cd5d491fd202c9" + integrity sha512-wkjURqwaB1daNkDi2OYYbsLnIdC/lUM2nPXQKRs5pqEU9chDg435bjvo+LSaHotDENygHQDHe+ntUkkw2gwMtg== + jsdom@^11.5.1: version "11.12.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8" @@ -4086,11 +3832,6 @@ jsdom@^11.5.1: ws "^5.2.0" xml-name-validator "^3.0.0" -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - integrity sha1-RsP+yMGJKxKwgz25vHYiF226s0s= - jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -4133,11 +3874,6 @@ json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= -json5@^0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= - json5@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" @@ -4152,6 +3888,13 @@ jsonfile@^2.1.0: optionalDependencies: graceful-fs "^4.1.6" +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" @@ -4167,6 +3910,14 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" +jsx-ast-utils@^2.0.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz#4d4973ebf8b9d2837ee91a8208cc66f3a2776cfb" + integrity sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ== + dependencies: + array-includes "^3.0.3" + object.assign "^4.1.0" + kind-of@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-1.1.0.tgz#140a3d2d41a36d2efcfa9377b62c24f8495a5c44" @@ -4203,10 +3954,10 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -kleur@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-2.0.2.tgz#b704f4944d95e255d038f0cb05fb8a602c55a300" - integrity sha512-77XF9iTllATmG9lSlIv0qdQ2BQ/h9t0bJllHlbvsQ0zUWfU7Yi0S8L5JXzPZgkefIiajLmBJJ4BsMJmqcf7oxQ== +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== lcid@^1.0.0: version "1.0.0" @@ -4215,15 +3966,22 @@ lcid@^1.0.0: dependencies: invert-kv "^1.0.0" +lcid@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" + integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== + dependencies: + invert-kv "^2.0.0" + left-pad@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e" integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA== -leven@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" - integrity sha1-wuep93IJTe6dNCAq6KzORoeHVYA= +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== levn@^0.3.0, levn@~0.3.0: version "0.3.0" @@ -4233,17 +3991,6 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - load-json-file@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" @@ -4254,6 +4001,16 @@ load-json-file@^2.0.0: pify "^2.0.0" strip-bom "^3.0.0" +load-json-file@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= + dependencies: + graceful-fs "^4.1.2" + parse-json "^4.0.0" + pify "^3.0.0" + strip-bom "^3.0.0" + locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -4275,21 +4032,6 @@ lodash.isequal@^4.1.4: resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= -lodash.pad@^4.1.0: - version "4.5.1" - resolved "https://registry.yarnpkg.com/lodash.pad/-/lodash.pad-4.5.1.tgz#4330949a833a7c8da22cc20f6a26c4d59debba70" - integrity sha1-QzCUmoM6fI2iLMIPaibE1Z3runA= - -lodash.padend@^4.1.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padend/-/lodash.padend-4.6.1.tgz#53ccba047d06e158d311f45da625f4e49e6f166e" - integrity sha1-U8y6BH0G4VjTEfRdpiX05J5vFm4= - -lodash.padstart@^4.1.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/lodash.padstart/-/lodash.padstart-4.6.1.tgz#d2e3eebff0d9d39ad50f5cbd1b52a7bce6bb611b" - integrity sha1-0uPuv/DZ05rVD1y9G1KnvOa7YRs= - lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -4300,10 +4042,31 @@ lodash.throttle@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz#c23e91b710242ac70c37f1e1cda9274cc39bf2f4" integrity sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ= -lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.3.0, lodash@^4.6.1: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== +lodash.unescape@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.unescape/-/lodash.unescape-4.0.1.tgz#bf2249886ce514cda112fae9218cdc065211fc9c" + integrity sha1-vyJJiGzlFM2hEvrpIYzcBlIR/Jw= + +lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.5, lodash@^4.3.0, lodash@^4.6.1: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + +log-symbols@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" + integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== + dependencies: + chalk "^2.0.1" + +logkitty@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/logkitty/-/logkitty-0.6.0.tgz#e327d4b144dd5c11d912d002cf57ac9fbae20e15" + integrity sha512-+F1ROENmfG3b4N9WGlRz5QGTBw/xgjZe2JzZLADYeCmzdId5c+QI7WTGRofs/10hwP84aAmjK2WStx+/oQVnwA== + dependencies: + ansi-fragments "^0.2.1" + dayjs "^1.8.15" + yargs "^12.0.5" loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" @@ -4320,7 +4083,7 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" -make-dir@^2.0.0: +make-dir@^2.0.0, make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== @@ -4335,6 +4098,13 @@ makeerror@1.0.x: dependencies: tmpl "1.0.x" +map-age-cleaner@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + map-cache@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" @@ -4347,11 +4117,6 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -math-random@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/math-random/-/math-random-1.0.4.tgz#5dd6943c938548267016d4e34f057583080c514c" - integrity sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A== - mem@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" @@ -4359,6 +4124,15 @@ mem@^1.1.0: dependencies: mimic-fn "^1.0.0" +mem@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" + integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== + dependencies: + map-age-cleaner "^0.1.1" + mimic-fn "^2.0.0" + p-is-promise "^2.0.0" + merge-stream@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" @@ -4366,15 +4140,15 @@ merge-stream@^1.0.1: dependencies: readable-stream "^2.0.1" -merge@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" - integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== -metro-babel-register@^0.48.1: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-babel-register/-/metro-babel-register-0.48.5.tgz#ece8131f959a1f7acf37af83c8e5696bfd0a448e" - integrity sha512-bJCessd7THqEfXrKEoj284XVjg9AGYbGqZiyV622l6ex9TvtVi1lToDY0TuAAuDXOm+V4vQXV7/HvR6JPP0dTQ== +metro-babel-register@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-babel-register/-/metro-babel-register-0.54.1.tgz#7d2bfe444b1ccef8de99aedc7d9330891d806076" + integrity sha512-j3VydgncUG8HP6AZala6GTIt3V01nptodnnOke3JMYLqgk8EJ1LOVOdotK9pXi80o7EmmNKFs/LyyH8z+uAJzQ== dependencies: "@babel/core" "^7.0.0" "@babel/plugin-proposal-class-properties" "^7.0.0" @@ -4389,67 +4163,74 @@ metro-babel-register@^0.48.1: core-js "^2.2.2" escape-string-regexp "^1.0.5" -metro-babel7-plugin-react-transform@0.48.5: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.48.5.tgz#312eb0adf3764357c79b79acc6eb92646051b349" - integrity sha512-S0cA0msHBGw7PSwB6nAsvtHEpQXVwzKBaE4AibLpaBiIVdWkYpIOok653zs9x+E9QvQgcghAnlVnDV+MDM+rSw== +metro-babel-transformer@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.54.1.tgz#371ffa2d1118b22cc9e40b3c3ea6738c49dae9dc" + integrity sha512-2aiAnuYBdcLV1VINb8ENAA4keIaJIepHgR9+iRvIde+9GSjKnexqx4nNmJN392285gRDp1fVZ7uY0uQawK/A5g== dependencies: - "@babel/helper-module-imports" "^7.0.0" + "@babel/core" "^7.0.0" -metro-babel7-plugin-react-transform@0.50.0: - version "0.50.0" - resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.50.0.tgz#a2f8eb879cf79f2251a23751f09520f63f525167" - integrity sha512-qKc0ecMFBr7mXwdjrSXmTszL4aJPYHGlIc2O+oYxDt+AAtPe++AjVBb6Mbup098U7KQ6xtz/wK0pshog+sbOzg== +metro-babel7-plugin-react-transform@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-babel7-plugin-react-transform/-/metro-babel7-plugin-react-transform-0.54.1.tgz#5335b810284789724886dc483d5bde9c149a1996" + integrity sha512-jWm5myuMoZAOhoPsa8ItfDxdTcOzKhTTzzhFlbZnRamE7i9qybeMdrZt8KHQpF7i2p/mKzE9Yhf4ouOz5K/jHg== dependencies: "@babel/helper-module-imports" "^7.0.0" -metro-cache@0.48.5: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.48.5.tgz#5ab3ad13c9df527f4196f0de096a3d496db97a6b" - integrity sha512-vlUf3A6+U3LXcf6wAn42N22q1h7MMoopA25w5KR4Flwd0xKVokxHwsTo9v06vpn4gqFtpXWCpEJSBaYRrWYJwg== +metro-cache@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.54.1.tgz#2e9017cbd11106837b8c385c9eb8c8175469a8c1" + integrity sha512-RxCFoNcANHXZYi4MIQNnqh68gUnC3bMpzCFJY5pBoqqdrkkn8ibYglBweA0/DW7hx1OZTJWelwS1Dp8xxmE2CA== dependencies: - jest-serializer "23.0.1" - metro-core "0.48.5" + jest-serializer "^24.4.0" + metro-core "0.54.1" mkdirp "^0.5.1" rimraf "^2.5.4" -metro-config@0.48.5: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.48.5.tgz#05624064617eb648ee6e336951b60ac665230a45" - integrity sha512-b+EmFgBOAEUM5THjJ2EU6CJxnULLC5V1Q8S8dz4xX4v96eLIsRCLPrXgYKATHJTVi0qw99ATVRsOBZVZ77fwjg== +metro-config@0.54.1, metro-config@^0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.54.1.tgz#808b4e17625d9f4e9afa34232778fdf8e63cc8dd" + integrity sha512-FpxrA+63rGkPGvGI653dvuSreJzU+eOTILItVnnhmqwn2SAK5V00N/qGTOIJe2YIuWEFXwCzw9lXmANrXbwuGg== dependencies: cosmiconfig "^5.0.5" - metro "0.48.5" - metro-cache "0.48.5" - metro-core "0.48.5" - pretty-format "^23.4.1" - -metro-core@0.48.5, metro-core@^0.48.1: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.48.5.tgz#eef57d0ea947cfd2e44d86b20592a321ca234b89" - integrity sha512-Yp0BOAHhxf/qdNkwJhemVdD2Y59iyaTjwxUimCmeD8u5VEL6mLgEC1S0KczyWEiAgX3Fs48rezCAcx3mo67wXg== - dependencies: - jest-haste-map "23.5.0" + jest-validate "^24.7.0" + metro "0.54.1" + metro-cache "0.54.1" + metro-core "0.54.1" + pretty-format "^24.7.0" + +metro-core@0.54.1, metro-core@^0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.54.1.tgz#17f6ecc167918da8819d4af5726349e55714954b" + integrity sha512-8oz3Ck7QFBzW9dG9tKFhrXHKPu2Ajx3R7eatf61Gl6Jf/tF7PNouv3wHxPsJW3oXDFiwKLszd89+OgleTGkB5g== + dependencies: + jest-haste-map "^24.7.1" lodash.throttle "^4.1.1" - metro-resolver "0.48.5" + metro-resolver "0.54.1" wordwrap "^1.0.0" -metro-memory-fs@^0.48.1: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.48.5.tgz#ae390f494ff0d54f2fb60531a3e4b83282a6b66d" - integrity sha512-dxN0dBtMOR1CvyRIOM/NE+uFirybWb4y2PZke0Z8bpYn6ttmv8ZF3PVdFxJf9v9irVBSOIPD0mD5zllxQkXzhg== +metro-inspector-proxy@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-inspector-proxy/-/metro-inspector-proxy-0.54.1.tgz#0ef48ee3feb11c6da47aa100151a9bf2a7c358ee" + integrity sha512-sf6kNu7PgFW6U+hU7YGZfbAUKAPVvCJhY8YVu/A1RMKH9nNULrCo+jlWh0gWgmFfWRQiAPCElevROg+5somk8A== + dependencies: + connect "^3.6.5" + debug "^2.2.0" + rxjs "^5.4.3" + ws "^1.1.5" + yargs "^9.0.0" -metro-minify-uglify@0.48.5: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.48.5.tgz#c8e878ce31adc1f9af3550917da7028b9eb91bc1" - integrity sha512-tiHVYlUMuL91YjQPx9BzzzXy5jAAA5SWLqlvWfmM6m9faWtFeCv8Se27vVNuPDkOPYyL8qPCRhUpZMUhA0yN2g== +metro-minify-uglify@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-minify-uglify/-/metro-minify-uglify-0.54.1.tgz#54ed1cb349245ce82dba8cc662bbf69fbca142c3" + integrity sha512-z+pOPna/8IxD4OhjW6Xo1mV2EszgqqQHqBm1FdmtdF6IpWkQp33qpDBNEi9NGZTOr7pp2bvcxZnvNJdC2lrK9Q== dependencies: uglify-es "^3.1.9" -metro-react-native-babel-preset@0.48.5: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.48.5.tgz#cafa1c3ea326a447a89031928b0932f38a65815c" - integrity sha512-ldG1bsusB5zlS1fhAiSLRjUA7I/Chn/dniaXTlkUpgiqyEAaDDmqhkDJ8gyZw3rhlLMVswlBd3o6I8yYti+57w== +metro-react-native-babel-preset@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.54.1.tgz#b8f03865c381841d7f8912e7ba46804ea3a928b8" + integrity sha512-Hfr32+u5yYl3qhYQJU8NQ26g4kQlc3yFMg7keVR/3H8rwBIbFqXgsKt8oe0dOrv7WvrMqBHhDtVdU9ls3sSq8g== dependencies: "@babel/plugin-proposal-class-properties" "^7.0.0" "@babel/plugin-proposal-export-default-from" "^7.0.0" @@ -4459,6 +4240,7 @@ metro-react-native-babel-preset@0.48.5: "@babel/plugin-proposal-optional-chaining" "^7.0.0" "@babel/plugin-syntax-dynamic-import" "^7.0.0" "@babel/plugin-syntax-export-default-from" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.2.0" "@babel/plugin-transform-arrow-functions" "^7.0.0" "@babel/plugin-transform-block-scoping" "^7.0.0" "@babel/plugin-transform-classes" "^7.0.0" @@ -4484,13 +4266,13 @@ metro-react-native-babel-preset@0.48.5: "@babel/plugin-transform-typescript" "^7.0.0" "@babel/plugin-transform-unicode-regex" "^7.0.0" "@babel/template" "^7.0.0" - metro-babel7-plugin-react-transform "0.48.5" + metro-babel7-plugin-react-transform "0.54.1" react-transform-hmr "^1.0.4" -metro-react-native-babel-preset@^0.50.0: - version "0.50.0" - resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.50.0.tgz#591daebea81ecb3fba76c5ff1afa3cceb9ed4509" - integrity sha512-ycofvgp6mgP3T5TgoEqI+B0GKJgkWX/5ELBPjSoaqS6W53L9jHuT4hccJmUPVpSzH3JjtayLuHFQX6DctKI8bA== +metro-react-native-babel-preset@^0.56.0: + version "0.56.0" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.56.0.tgz#fa47dfd5f7678e89cffd1249020b8add6938fc48" + integrity sha512-MAo1fm0dNn6MVZmylaz6k2HC1MINHLTLfE7O3a9Xz3fAtbGbApisp06rBUfK5uUqIJDmAaKgbiT34lHJSIiE6Q== dependencies: "@babel/plugin-proposal-class-properties" "^7.0.0" "@babel/plugin-proposal-export-default-from" "^7.0.0" @@ -4500,6 +4282,7 @@ metro-react-native-babel-preset@^0.50.0: "@babel/plugin-proposal-optional-chaining" "^7.0.0" "@babel/plugin-syntax-dynamic-import" "^7.0.0" "@babel/plugin-syntax-export-default-from" "^7.0.0" + "@babel/plugin-syntax-flow" "^7.2.0" "@babel/plugin-transform-arrow-functions" "^7.0.0" "@babel/plugin-transform-block-scoping" "^7.0.0" "@babel/plugin-transform-classes" "^7.0.0" @@ -4525,27 +4308,61 @@ metro-react-native-babel-preset@^0.50.0: "@babel/plugin-transform-typescript" "^7.0.0" "@babel/plugin-transform-unicode-regex" "^7.0.0" "@babel/template" "^7.0.0" - metro-babel7-plugin-react-transform "0.50.0" - react-transform-hmr "^1.0.4" + react-refresh "^0.4.0" + +metro-react-native-babel-transformer@0.54.1, metro-react-native-babel-transformer@^0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.54.1.tgz#45b56db004421134e10e739f69e8de50775fef17" + integrity sha512-ECw7xG91t8dk/PHdiyoC5SP1s9OQzfmJzG5m0YOZaKtHMe534qTDbncxaKfTI3CP99yti2maXFBRVj+xyvph/g== + dependencies: + "@babel/core" "^7.0.0" + babel-preset-fbjs "^3.1.2" + metro-babel-transformer "0.54.1" + metro-react-native-babel-preset "0.54.1" -metro-resolver@0.48.5: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.48.5.tgz#d2ff84afab13ec3962685953ebd03d878e1f4c36" - integrity sha512-lScSpLJKZMmNPRwvcY6zj28AwMOcI1M5bCCv+m06VWcISCTq1KlaKVwqLKmFgUtPkoFtFLD+PVKRKCRUxj1opg== +metro-resolver@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.54.1.tgz#0295b38624b678b88b16bf11d47288845132b087" + integrity sha512-Byv1LIawYAASy9CFRwzrncYnqaFGLe8vpw178EtzStqP05Hu6hXSqkNTrfoXa+3V9bPFGCrVzFx2NY3gFp2btg== dependencies: absolute-path "^0.0.0" -metro-source-map@0.48.5: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.48.5.tgz#ab738f5cea4627fdae839d09237f85dd13d972ab" - integrity sha512-+BbcU9vfEl/XhMlVV0RwuHuEkai4lq7RmlQkxgoOoWl1u0yXCAPRZ5sqa326fPlJzElOR3cp0y7+Oc2nbIguyg== +metro-source-map@0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.54.1.tgz#e17bad53c11978197d3c05c9168d799c2e04dcc5" + integrity sha512-E9iSYMSUSq5qYi1R2hTQtxH4Mxjzfgr/jaSmQIWi7h3fG2P1qOZNNSzeaeUeTK+s2N/ksVlkcL5kMikol8CDrQ== + dependencies: + "@babel/traverse" "^7.0.0" + "@babel/types" "^7.0.0" + source-map "^0.5.6" + +metro-source-map@0.55.0, metro-source-map@^0.55.0: + version "0.55.0" + resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.55.0.tgz#1f6289905f08277c398f2b9b9c13e7e0e5a6f540" + integrity sha512-HZODA0KPl5onJNGIztfTHHWurR2nL6Je/X8wwj+bL4ZBB/hSMVeDk7rWReCAvO3twVz7Ztp8Si0jfMmmH4Ruuw== + dependencies: + "@babel/traverse" "^7.0.0" + "@babel/types" "^7.0.0" + invariant "^2.2.4" + metro-symbolicate "0.55.0" + ob1 "0.55.0" + source-map "^0.5.6" + vlq "^1.0.0" + +metro-symbolicate@0.55.0: + version "0.55.0" + resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.55.0.tgz#4086a2adae54b5e44a4911ca572d8a7b03c71fa1" + integrity sha512-3r3Gpv5L4U7rBGpIqw5S1nun5MelfUMLRiScJsPRGZVTX3WY1w+zpaQKlWBi5yuHf5dMQ+ZUVbhb02IdrfJ2Fg== dependencies: + metro-source-map "0.55.0" source-map "^0.5.6" + through2 "^2.0.1" + vlq "^1.0.0" -metro@0.48.5, metro@^0.48.1: - version "0.48.5" - resolved "https://registry.yarnpkg.com/metro/-/metro-0.48.5.tgz#94fb4476ea18d3cf2e96e5c37dc85a21b69b4bf1" - integrity sha512-aCarzjxdYqh+9I40bF+Hh1ayrwfPrnDwVOvpQg3VZFWU4wfeMiJb+tzeRN9p94cC/MKhBTOjRmUF3plzrHoe0w== +metro@0.54.1, metro@^0.54.1: + version "0.54.1" + resolved "https://registry.yarnpkg.com/metro/-/metro-0.54.1.tgz#a629be00abee5a450a25a8f71c24745f70cc9b44" + integrity sha512-6ODPT4mEo4FCpbExRNnQAcZmf1VeNvYOTMj2Na03FjGqhNODHhI2U/wF/Ul5gqTyJ2dVdkXeyvKW3gl/LrnJRg== dependencies: "@babel/core" "^7.0.0" "@babel/generator" "^7.0.0" @@ -4556,8 +4373,9 @@ metro@0.48.5, metro@^0.48.1: "@babel/types" "^7.0.0" absolute-path "^0.0.0" async "^2.4.0" - babel-preset-fbjs "^3.0.1" - chalk "^1.1.1" + babel-preset-fbjs "^3.1.2" + buffer-crc32 "^0.2.13" + chalk "^2.4.1" concat-stream "^1.6.0" connect "^3.6.5" debug "^2.2.0" @@ -4567,19 +4385,22 @@ metro@0.48.5, metro@^0.48.1: fs-extra "^1.0.0" graceful-fs "^4.1.3" image-size "^0.6.0" - jest-docblock "23.2.0" - jest-haste-map "23.5.0" - jest-worker "23.2.0" + invariant "^2.2.4" + jest-haste-map "^24.7.1" + jest-worker "^24.6.0" json-stable-stringify "^1.0.1" lodash.throttle "^4.1.1" merge-stream "^1.0.1" - metro-cache "0.48.5" - metro-config "0.48.5" - metro-core "0.48.5" - metro-minify-uglify "0.48.5" - metro-react-native-babel-preset "0.48.5" - metro-resolver "0.48.5" - metro-source-map "0.48.5" + metro-babel-register "0.54.1" + metro-babel-transformer "0.54.1" + metro-cache "0.54.1" + metro-config "0.54.1" + metro-core "0.54.1" + metro-inspector-proxy "0.54.1" + metro-minify-uglify "0.54.1" + metro-react-native-babel-preset "0.54.1" + metro-resolver "0.54.1" + metro-source-map "0.54.1" mime-types "2.1.11" mkdirp "^0.5.1" node-fetch "^2.2.0" @@ -4593,29 +4414,10 @@ metro@0.48.5, metro@^0.48.1: throat "^4.1.0" wordwrap "^1.0.0" write-file-atomic "^1.2.0" - ws "^1.1.0" + ws "^1.1.5" xpipe "^1.0.5" yargs "^9.0.0" -micromatch@^2.3.11: - version "2.3.11" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" - integrity sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= - dependencies: - arr-diff "^2.0.0" - array-unique "^0.2.1" - braces "^1.8.2" - expand-brackets "^0.1.4" - extglob "^0.3.1" - filename-regex "^2.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.1" - kind-of "^3.0.2" - normalize-path "^2.0.1" - object.omit "^2.0.0" - parse-glob "^3.0.4" - regex-cache "^0.4.2" - micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" @@ -4659,16 +4461,26 @@ mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24: dependencies: mime-db "1.40.0" -mime@1.6.0, mime@^1.3.4: +mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== +mime@^2.4.1: + version "2.4.4" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5" + integrity sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA== + mimic-fn@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== +mimic-fn@^2.0.0, mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + min-document@^2.19.0: version "2.19.0" resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" @@ -4676,7 +4488,7 @@ min-document@^2.19.0: dependencies: dom-walk "^0.1.0" -minimatch@^3.0.3, minimatch@^3.0.4: +minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== @@ -4714,9 +4526,9 @@ minizlib@^1.2.1: minipass "^2.2.1" mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" - integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ== + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== dependencies: for-in "^1.0.2" is-extendable "^1.0.1" @@ -4744,16 +4556,26 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= -ms@2.1.1, ms@^2.1.1: +ms@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== +ms@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= +mute-stream@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== + nan@^2.12.1: version "2.14.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" @@ -4813,7 +4635,7 @@ node-fetch@^1.0.1: encoding "^0.1.11" is-stream "^1.0.1" -node-fetch@^2.2.0: +node-fetch@^2.2.0, node-fetch@^2.5.0: version "2.6.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== @@ -4828,10 +4650,10 @@ node-modules-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= -node-notifier@^5.2.1: - version "5.4.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.0.tgz#7b455fdce9f7de0c63538297354f3db468426e6a" - integrity sha512-SUDEb+o71XR5lXSTyivXd9J7fCloE3SyP4lSgt3lU2oSANiox+SxlNRGPjDKrwU1YN3ix2KN/VGGCg0t01rttQ== +node-notifier@^5.2.1, node-notifier@^5.4.2: + version "5.4.3" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.3.tgz#cb72daf94c93904098e28b9c590fd866e464bd50" + integrity sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q== dependencies: growly "^1.3.0" is-wsl "^1.1.0" @@ -4873,27 +4695,22 @@ normalize-package-data@^2.3.2: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-path@^2.0.1, normalize-path@^2.1.1: +normalize-path@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= dependencies: remove-trailing-separator "^1.0.1" -normalize-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - npm-bundled@^1.0.1: version "1.0.6" resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz#e7ba9aadcef962bb61248f91721cd932b3fe6bdd" integrity sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g== npm-packlist@^1.1.6: - version "1.4.1" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.1.tgz#19064cdf988da80ea3cee45533879d90192bbfbc" - integrity sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw== + version "1.4.4" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.4.tgz#866224233850ac534b63d1a6e76050092b5d2f44" + integrity sha512-zTLo8UcVYtDU3gdeaFu2Xu0n0EvelfHDGuqtNIn5RO7yQj4H1TqNdBc/yZjxnWA0PVB8D3Woyp0i5B43JwQ6Vw== dependencies: ignore-walk "^3.0.1" npm-bundled "^1.0.1" @@ -4905,15 +4722,6 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npmlog@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-2.0.4.tgz#98b52530f2514ca90d09ec5b22c8846722375692" - integrity sha1-mLUlMPJRTKkNCexbIsiEZyI3VpI= - dependencies: - ansi "~0.3.1" - are-we-there-yet "~1.1.2" - gauge "~1.2.5" - npmlog@^4.0.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" @@ -4944,6 +4752,11 @@ oauth-sign@~0.9.0: resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== +ob1@0.55.0: + version "0.55.0" + resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.55.0.tgz#e393b4ae786ef442b3ef2a298ab70d6ec353dbdd" + integrity sha512-pfyiMVsUItl8WiRKMT15eCi662pCRAuYTq2+V3UpE+PpFErJI/TvRh/M/l/9TaLlbFr7krJ7gdl+FXJNcybmvw== + object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" @@ -4985,15 +4798,15 @@ object.assign@^4.1.0: has-symbols "^1.0.0" object-keys "^1.0.11" -object.entries@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519" - integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA== +object.fromentries@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab" + integrity sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA== dependencies: - define-properties "^1.1.3" - es-abstract "^1.12.0" + define-properties "^1.1.2" + es-abstract "^1.11.0" function-bind "^1.1.1" - has "^1.0.3" + has "^1.0.1" object.getownpropertydescriptors@^2.0.3: version "2.0.3" @@ -5003,14 +4816,6 @@ object.getownpropertydescriptors@^2.0.3: define-properties "^1.1.2" es-abstract "^1.5.1" -object.omit@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" - integrity sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= - dependencies: - for-own "^0.1.4" - is-extendable "^0.1.1" - object.pick@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" @@ -5030,7 +4835,7 @@ on-headers@~1.0.1, on-headers@~1.0.2: resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== -once@^1.3.0, once@^1.4.0: +once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= @@ -5044,12 +4849,19 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" -opn@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/opn/-/opn-3.0.3.tgz#b6d99e7399f78d65c3baaffef1fb288e9b85243a" - integrity sha1-ttmec5n3jWXDuq/+8fsojpuFJDo= +onetime@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" + integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== dependencies: - object-assign "^4.0.1" + mimic-fn "^2.1.0" + +open@^6.2.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/open/-/open-6.4.0.tgz#5c13e96d0dc894686164f18965ecfe889ecfc8a9" + integrity sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg== + dependencies: + is-wsl "^1.1.0" optimist@^0.6.1: version "0.6.1" @@ -5076,6 +4888,18 @@ options@>=0.0.5: resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" integrity sha1-7CLTEoBrtT5zF3Pnza788cZDEo8= +ora@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" + integrity sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg== + dependencies: + chalk "^2.4.2" + cli-cursor "^2.1.0" + cli-spinners "^2.0.0" + log-symbols "^2.2.0" + strip-ansi "^5.2.0" + wcwidth "^1.0.1" + os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" @@ -5090,7 +4914,16 @@ os-locale@^2.0.0: lcid "^1.0.0" mem "^1.1.0" -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: +os-locale@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" + integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== + dependencies: + execa "^1.0.0" + lcid "^2.0.0" + mem "^4.0.0" + +os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= @@ -5103,20 +4936,28 @@ osenv@^0.1.4: os-homedir "^1.0.0" os-tmpdir "^1.0.0" -output-file-sync@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-2.0.1.tgz#f53118282f5f553c2799541792b723a4c71430c0" - integrity sha512-mDho4qm7WgIXIGf4eYU1RHN2UU5tPfVYVSRwDJw0uTmj35DQUt/eNp19N7v6T3SrR0ESTEf2up2CGO73qI35zQ== +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= + +p-each-series@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71" + integrity sha1-kw89Et0fUOdDRFeiLNbwSsatf3E= dependencies: - graceful-fs "^4.1.11" - is-plain-obj "^1.1.0" - mkdirp "^0.5.1" + p-reduce "^1.0.0" p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= +p-is-promise@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + p-limit@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" @@ -5125,9 +4966,9 @@ p-limit@^1.1.0: p-try "^1.0.0" p-limit@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.0.tgz#417c9941e6027a9abcba5092dd2904e255b5fbc2" - integrity sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ== + version "2.2.1" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz#aa07a788cc3151c939b5131f63570f0dd2009537" + integrity sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg== dependencies: p-try "^2.0.0" @@ -5145,6 +4986,11 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-reduce@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" + integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -5162,16 +5008,6 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-glob@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" - integrity sha1-ssN2z7EfNVE7rdFz7wu246OIORw= - dependencies: - glob-base "^0.3.0" - is-dotfile "^1.0.0" - is-extglob "^1.0.0" - is-glob "^2.0.0" - parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" @@ -5207,39 +5043,22 @@ pascalcase@^0.1.1: resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= - dependencies: - pinkie-promise "^2.0.0" - path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= -path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: +path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= - path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= -path-parse@^1.0.5, path-parse@^1.0.6: +path-parse@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== @@ -5251,15 +5070,6 @@ path-to-regexp@^1.7.0: dependencies: isarray "0.0.1" -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" - path-type@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" @@ -5267,6 +5077,13 @@ path-type@^2.0.0: dependencies: pify "^2.0.0" +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== + dependencies: + pify "^3.0.0" + performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" @@ -5277,37 +5094,23 @@ pify@^2.0.0: resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + pify@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pinkie-promise@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" - integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= - dependencies: - pinkie "^2.0.0" - -pinkie@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" - integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= - -pirates@^4.0.0: +pirates@^4.0.0, pirates@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== dependencies: node-modules-regexp "^1.0.0" -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - pkg-dir@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" @@ -5315,16 +5118,7 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" -plist@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/plist/-/plist-2.0.1.tgz#0a32ca9481b1c364e92e18dc55c876de9d01da8b" - integrity sha1-CjLKlIGxw2TpLhjcVch23p0B2os= - dependencies: - base64-js "1.1.2" - xmlbuilder "8.2.2" - xmldom "0.1.x" - -plist@^3.0.0: +plist@^3.0.0, plist@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.1.tgz#a9b931d17c304e8912ef0ba3bdd6182baf2e1f8c" integrity sha512-GpgvHHocGRyQm74b6FWEZZVRroHKE1I0/BTjAmySaohK+cUn+hZpbqXkc3KWgW3gQYkqcQej35FohcT0FRlkRQ== @@ -5359,38 +5153,35 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -preserve@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" - integrity sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= +prettier@1.16.4: + version "1.16.4" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.16.4.tgz#73e37e73e018ad2db9c76742e2647e21790c9717" + integrity sha512-ZzWuos7TI5CKUeQAtFd6Zhm2s6EpAD/ZLApIhsF9pRvRtM1RFo61dM/4MSRUA0SuLugA/zgrZD8m0BaY46Og7g== -pretty-format@^23.4.1, pretty-format@^23.6.0: - version "23.6.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-23.6.0.tgz#5eaac8eeb6b33b987b7fe6097ea6a8a146ab5760" - integrity sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw== +pretty-format@^24.7.0, pretty-format@^24.9.0: + version "24.9.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" + integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== dependencies: - ansi-regex "^3.0.0" + "@jest/types" "^24.9.0" + ansi-regex "^4.0.0" ansi-styles "^3.2.0" + react-is "^16.8.4" -pretty-format@^4.2.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-4.3.1.tgz#530be5c42b3c05b36414a7a2a4337aa80acd0e8d" - integrity sha1-UwvlxCs8BbNkFKeipDN6qArNDo0= - -private@^0.1.6, private@^0.1.8: +private@^0.1.6: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== -process@~0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" - integrity sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8= +process@^0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= progress@^2.0.0: version "2.0.3" @@ -5404,15 +5195,15 @@ promise@^7.1.1: dependencies: asap "~2.0.3" -prompts@^0.1.9: - version "0.1.14" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-0.1.14.tgz#a8e15c612c5c9ec8f8111847df3337c9cbd443b2" - integrity sha512-rxkyiE9YH6zAz/rZpywySLKkpaj0NMVyNw1qhsubdbjjSgcayjTShDreZGlFMcGSu5sab3bAKPfFk78PB90+8w== +prompts@^2.0.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.2.1.tgz#f901dd2a2dfee080359c0e20059b24188d75ad35" + integrity sha512-VObPvJiWPhpZI6C5m60XOzTfnYg/xc/an+r9VYymj9WJW3B/DIH+REzjpAACPf8brwPeP+7vz3bIim3S+AaMjw== dependencies: - kleur "^2.0.1" - sisteransi "^0.1.1" + kleur "^3.0.3" + sisteransi "^1.0.3" -prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.1, prop-types@^15.6.2: +prop-types@^15.5.10, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== @@ -5427,9 +5218,17 @@ pseudomap@^1.0.2: integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= psl@^1.1.24, psl@^1.1.28: - version "1.1.32" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.32.tgz#3f132717cf2f9c169724b2b6caf373cf694198db" - integrity sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g== + version "1.3.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.3.0.tgz#e1ebf6a3b5564fa8376f3da2275da76d875ca1bd" + integrity sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" punycode@^1.4.1: version "1.4.1" @@ -5447,23 +5246,14 @@ qs@~6.5.2: integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== query-string@^6.4.2: - version "6.6.0" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.6.0.tgz#a6b7dfd57ad67e346b143d033df2b1e4cfb6b53a" - integrity sha512-Xhvaa80rZzfvI7gYXF6ism5otKTyea90XROstBTBKiWE/tDfnIDbQwkGLguJaQBNweVCW4T9DoTe5eyox0CbZQ== + version "6.8.2" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.8.2.tgz#36cb7e452ae11a4b5e9efee83375e0954407b2f6" + integrity sha512-J3Qi8XZJXh93t2FiKyd/7Ec6GNifsjKXUsVFkSBj/kjLsDylWhnCz4NT1bkPcKotttPW+QbKGqqPH8OoI2pdqw== dependencies: decode-uri-component "^0.2.0" split-on-first "^1.0.0" strict-uri-encode "^2.0.0" -randomatic@^3.0.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed" - integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== - dependencies: - is-number "^4.0.0" - kind-of "^6.0.0" - math-random "^1.0.1" - range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" @@ -5479,28 +5269,23 @@ rc@^1.2.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -react-clone-referenced-element@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/react-clone-referenced-element/-/react-clone-referenced-element-1.1.0.tgz#9cdda7f2aeb54fea791f3ab8c6ab96c7a77d0158" - integrity sha512-FKOsfKbBkPxYE8576EM6uAfHC4rnMpLyH6/TJUL4WcHUEB3EUn8AxPjnnV/IiwSSzsClvHYK+sDELKN/EJ0WYg== - react-deep-force-update@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/react-deep-force-update/-/react-deep-force-update-1.1.2.tgz#3d2ae45c2c9040cbb1772be52f8ea1ade6ca2ee1" integrity sha512-WUSQJ4P/wWcusaH+zZmbECOk7H5N2pOIl0vzheeornkIMhu+qrNdGFm0bDZLCb0hSF0jf/kH1SgkNGfBdTc4wA== -react-devtools-core@^3.4.2: - version "3.6.1" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.6.1.tgz#51af81ceada65209bbccb8b547a01187cd1cbf04" - integrity sha512-I/LSX+tpeTrGKaF1wXSfJ/kP+6iaP2JfshEjW8LtQBdz6c6HhzOJtjZXhqOUrAdysuey8M1/JgPY1flSVVt8Ig== +react-devtools-core@^3.6.1: + version "3.6.3" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-3.6.3.tgz#977d95b684c6ad28205f0c62e1e12c5f16675814" + integrity sha512-+P+eFy/yo8Z/UH9J0DqHZuUM5+RI2wl249TNvMx3J2jpUomLQa4Zxl56GEotGfw3PIP1eI+hVf1s53FlUONStQ== dependencies: shell-quote "^1.6.1" ws "^3.3.1" -react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.6: - version "16.8.6" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" - integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== +react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6: + version "16.9.0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.9.0.tgz#21ca9561399aad0ff1a7701c01683e8ca981edcb" + integrity sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw== react-lifecycles-compat@^3.0.4: version "3.0.4" @@ -5515,24 +5300,24 @@ react-native-extended-stylesheet@^0.11.1: css-mediaquery "^0.1.2" object-resolve-path "^1.1.0" -react-native-kakao-logins@^1.3.0: - version "1.3.6" - resolved "https://registry.yarnpkg.com/react-native-kakao-logins/-/react-native-kakao-logins-1.3.6.tgz#58b11f272bc1b16c5df23c5b42b1ead7c93f75e4" - integrity sha512-ZMKm9MVabapk2wOfHXJwzqxlx2UCjAcDkQ/FwXinREOFxlzmgz+bbNp8+tyYZh4TG3ucaATFx8k4ZQuN2bYQtQ== +"react-native-kakao-logins@file:..": + version "1.3.7" dependencies: dooboolab-welcome "^1.1.0" react-native-safe-area-view@^0.14.1: - version "0.14.4" - resolved "https://registry.yarnpkg.com/react-native-safe-area-view/-/react-native-safe-area-view-0.14.4.tgz#1647fa74fd452cb8cee4f47bd08de3829451bf5d" - integrity sha512-ypDQVoAyNHBhMR1IGfadm8kskNzPg5czrDAzQEu5MXG9Ahoi5f1cL/rT2KO+R9f6xRjf6b1IjY53m0B0xHRd0A== + version "0.14.7" + resolved "https://registry.yarnpkg.com/react-native-safe-area-view/-/react-native-safe-area-view-0.14.7.tgz#e1dd1c4d25a90677df2c15347fdddb2306ba5971" + integrity sha512-fmuBYpvKDJK33bimo4JXrK2BN2CGw7nof1y1LDRgzqv+FZ3eADSDGshprN8WeQqSZjQ20hJx1CiWk28Edg/v4Q== dependencies: hoist-non-react-statics "^2.3.1" "react-native-screens@^1.0.0 || ^1.0.0-alpha": - version "1.0.0-alpha.22" - resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-1.0.0-alpha.22.tgz#7a120377b52aa9bbb94d0b8541a014026be9289b" - integrity sha512-kSyAt0AeVU6N7ZonfV6dP6iZF8B7Bce+tk3eujXhzBGsLg0VSLnU7uE9VqJF0xdQrHR91ZjGgVMieo/8df9KTA== + version "1.0.0-alpha.23" + resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-1.0.0-alpha.23.tgz#25d7ea4d11bda4fcde2d1da7ae50271c6aa636e0" + integrity sha512-tOxHGQUN83MTmQB4ghoQkibqOdGiX4JQEmeyEv96MKWO/x8T2PJv84ECUos9hD3blPRQwVwSpAid1PPPhrVEaw== + dependencies: + debounce "^1.2.0" react-native-tab-view@^1.2.0, react-native-tab-view@^1.4.1: version "1.4.1" @@ -5541,63 +5326,39 @@ react-native-tab-view@^1.2.0, react-native-tab-view@^1.4.1: dependencies: prop-types "^15.6.1" -react-native@^0.57.8: - version "0.57.8" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.57.8.tgz#1a840fbe144cd3902cc14313a783ce28efc48cb9" - integrity sha512-K6DAMTPTq+lxVYC73y4Kh/bgLajddBaIKzwsVeV4JOoS1Fdq48/ISXD3vApV+x+/IBVTXnrT9qlA+9U6MMZCqA== +react-native@0.60.5: + version "0.60.5" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.60.5.tgz#3c1d9c06a0fbab9807220b6acac09488d39186ee" + integrity sha512-cZwI0XzzihACN+7an1Dy46A83FRaAe2Xyd7laCalFFAppZIYeMVphZQWrVljJk5kIZBNtYG35TY1VsghQ0Oc2Q== dependencies: "@babel/runtime" "^7.0.0" - absolute-path "^0.0.0" + "@react-native-community/cli" "^2.6.0" + "@react-native-community/cli-platform-android" "^2.6.0" + "@react-native-community/cli-platform-ios" "^2.4.1" + abort-controller "^3.0.0" art "^0.10.0" base64-js "^1.1.2" - chalk "^1.1.1" - commander "^2.9.0" - compression "^1.7.1" connect "^3.6.5" create-react-class "^15.6.3" - debug "^2.2.0" - denodeify "^1.2.1" - envinfo "^5.7.0" - errorhandler "^1.5.0" escape-string-regexp "^1.0.5" - event-target-shim "^1.0.5" + event-target-shim "^5.0.1" fbjs "^1.0.0" - fbjs-scripts "^1.0.0" - fs-extra "^1.0.0" - glob "^7.1.1" - graceful-fs "^4.1.3" - inquirer "^3.0.6" - lodash "^4.17.5" - metro "^0.48.1" - metro-babel-register "^0.48.1" - metro-core "^0.48.1" - metro-memory-fs "^0.48.1" - mime "^1.3.4" - minimist "^1.2.0" - mkdirp "^0.5.1" - morgan "^1.9.0" - node-fetch "^2.2.0" - node-notifier "^5.2.1" - npmlog "^2.0.4" - opn "^3.0.2" - optimist "^0.6.1" - plist "^3.0.0" - pretty-format "^4.2.1" + fbjs-scripts "^1.1.0" + hermesvm "^0.1.0" + invariant "^2.2.4" + jsc-android "245459.0.0" + metro-babel-register "0.54.1" + metro-react-native-babel-transformer "0.54.1" + metro-source-map "^0.55.0" + nullthrows "^1.1.0" + pretty-format "^24.7.0" promise "^7.1.1" - prop-types "^15.5.8" - react-clone-referenced-element "^1.0.1" - react-devtools-core "^3.4.2" - react-timer-mixin "^0.13.2" - regenerator-runtime "^0.11.0" - rimraf "^2.5.4" - semver "^5.0.3" - serve-static "^1.13.1" - shell-quote "1.6.1" + prop-types "^15.7.2" + react-devtools-core "^3.6.1" + regenerator-runtime "^0.13.2" + scheduler "0.14.0" stacktrace-parser "^0.1.3" - ws "^1.1.5" - xcode "^1.0.0" - xmldoc "^0.4.0" - yargs "^9.0.0" + whatwg-fetch "^3.0.0" react-navigation-drawer@~1.2.1: version "1.2.1" @@ -5622,9 +5383,9 @@ react-navigation-tabs@~1.1.4: react-native-tab-view "^1.4.1" react-navigation@^3.0.8: - version "3.11.0" - resolved "https://registry.yarnpkg.com/react-navigation/-/react-navigation-3.11.0.tgz#2c82217c452d07d8b9b0929bc7e77e2bcfaf9388" - integrity sha512-wlPcDtNiIdPeYxNQ/MN4arY5Xe9EphD2QVpRuvvuPWW+BamF3AJaIy060r3Yz59DODAoWllscabat/yqnih8Tg== + version "3.11.1" + resolved "https://registry.yarnpkg.com/react-navigation/-/react-navigation-3.11.1.tgz#ba696ad6b512088a97a20cc7e6a250c53dbddd26" + integrity sha512-n64HxLG5s5ucVFo1Gs+D9ujChhHDd98lpQ1p27wL7gq8V1PaRJMvsBEIsguhtc2rTIL/TWDynOesXQDG+Eg6FQ== dependencies: "@react-navigation/core" "~3.4.1" "@react-navigation/native" "~3.5.0" @@ -5640,7 +5401,12 @@ react-proxy@^1.1.7: lodash "^4.6.1" react-deep-force-update "^1.0.0" -react-test-renderer@^16.6.3: +react-refresh@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.4.0.tgz#d421f9bd65e0e4b9822a399f14ac56bda9c92292" + integrity sha512-bacjSio8GOtzNZKZZM6EWqbhlbb6pr28JWJWFTLwEBKvPIBRo6/Ob68D2EWZA2VyTdQxAh+TRnCYOPNKsQiXTA== + +react-test-renderer@16.8.6: version "16.8.6" resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.8.6.tgz#188d8029b8c39c786f998aa3efd3ffe7642d5ba1" integrity sha512-H2srzU5IWYT6cZXof6AhUcx/wEyJddQ8l7cLM/F7gDXYyPr4oq+vCIxJYXVGhId1J706sqziAjuOEjyNkfgoEw== @@ -5650,11 +5416,6 @@ react-test-renderer@^16.6.3: react-is "^16.8.6" scheduler "^0.13.6" -react-timer-mixin@^0.13.2: - version "0.13.4" - resolved "https://registry.yarnpkg.com/react-timer-mixin/-/react-timer-mixin-0.13.4.tgz#75a00c3c94c13abe29b43d63b4c65a88fc8264d3" - integrity sha512-4+ow23tp/Tv7hBM5Az5/Be/eKKF7DIvJ09voz5LyHGQaqqz9WV8YMs31eFvcYQs7d451LSg7kDJV70XYN/Ug/Q== - react-transform-hmr@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/react-transform-hmr/-/react-transform-hmr-1.0.4.tgz#e1a40bd0aaefc72e8dfd7a7cda09af85066397bb" @@ -5663,7 +5424,7 @@ react-transform-hmr@^1.0.4: global "^4.3.0" react-proxy "^1.1.7" -react@^16.6.3: +react@16.8.6: version "16.8.6" resolved "https://registry.yarnpkg.com/react/-/react-16.8.6.tgz#ad6c3a9614fd3a4e9ef51117f54d888da01f2bbe" integrity sha512-pC0uMkhLaHm11ZSJULfOBqV4tIZkx87ZLvbbQYunNixAAvjnC+snJCg0XQXn9VIsttVsbZP/H/ewzgsd5fxKXw== @@ -5673,14 +5434,6 @@ react@^16.6.3: prop-types "^15.6.2" scheduler "^0.13.6" -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - read-pkg-up@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" @@ -5689,14 +5442,13 @@ read-pkg-up@^2.0.0: find-up "^2.0.0" read-pkg "^2.0.0" -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= +read-pkg-up@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" + integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA== dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" + find-up "^3.0.0" + read-pkg "^3.0.0" read-pkg@^2.0.0: version "2.0.0" @@ -5707,7 +5459,16 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" -readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@~2.3.6: +read-pkg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= + dependencies: + load-json-file "^4.0.0" + normalize-package-data "^2.3.2" + path-type "^3.0.0" + +readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@~2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== @@ -5720,23 +5481,14 @@ readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -realpath-native@^1.0.0: +realpath-native@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.1.0.tgz#2003294fea23fb0672f2476ebe22fcf498a2d65c" integrity sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA== dependencies: util.promisify "^1.0.0" -regenerate-unicode-properties@^8.0.2: +regenerate-unicode-properties@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e" integrity sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA== @@ -5748,39 +5500,18 @@ regenerate@^1.4.0: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== - regenerator-runtime@^0.13.2: - version "0.13.2" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz#32e59c9a6fb9b1a4aff09b4930ca2d4477343447" - integrity sha512-S/TQAZJO+D3m9xeN1WTI8dLKBBiRgXBlTJvbWjCThHWZj9EvHK70Ff50/tYj2J/fvBY6JtFVwRuazHN2E7M9BA== - -regenerator-transform@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" - integrity sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q== - dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" - private "^0.1.6" + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5" + integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw== regenerator-transform@^0.14.0: - version "0.14.0" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.0.tgz#2ca9aaf7a2c239dd32e4761218425b8c7a86ecaf" - integrity sha512-rtOelq4Cawlbmq9xuMR5gdFmv7ku/sFoB7sRiywx7aq53bc52b4j6zvH7Te1Vt/X2YveDKnCGUbioieU7FEL3w== + version "0.14.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.1.tgz#3b2fce4e1ab7732c08f665dfdb314749c7ddd2fb" + integrity sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ== dependencies: private "^0.1.6" -regex-cache@^0.4.2: - version "0.4.4" - resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" - integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== - dependencies: - is-equal-shallow "^0.1.3" - regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" @@ -5795,12 +5526,12 @@ regexpp@^2.0.1: integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== regexpu-core@^4.5.4: - version "4.5.4" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.4.tgz#080d9d02289aa87fe1667a4f5136bc98a6aebaae" - integrity sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ== + version "4.5.5" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.5.tgz#aaffe61c2af58269b3e516b61a73790376326411" + integrity sha512-FpI67+ky9J+cDizQUJlIlNZFKual/lUkFr1AG6zOCpwZ9cLrg8UUVakyUQJD7fCDIe9Z2nwTQJNPyonatNmDFQ== dependencies: regenerate "^1.4.0" - regenerate-unicode-properties "^8.0.2" + regenerate-unicode-properties "^8.1.0" regjsgen "^0.5.0" regjsparser "^0.6.0" unicode-match-property-ecmascript "^1.0.4" @@ -5828,18 +5559,11 @@ repeat-element@^1.1.2: resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== -repeat-string@^1.5.2, repeat-string@^1.6.1: +repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= - dependencies: - is-finite "^1.0.0" - request-promise-core@1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.2.tgz#339f6aababcafdb31c799ff158700336301d3346" @@ -5892,6 +5616,11 @@ require-main-filename@^1.0.1: resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + resolve-cwd@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" @@ -5919,10 +5648,10 @@ resolve@1.1.7: resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= -resolve@^1.10.0, resolve@^1.11.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.11.1.tgz#ea10d8110376982fef578df8fc30b9ac30a07a3e" - integrity sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw== +resolve@^1.10.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1, resolve@^1.9.0: + version "1.12.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" + integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== dependencies: path-parse "^1.0.6" @@ -5934,27 +5663,42 @@ restore-cursor@^2.0.0: onetime "^2.0.0" signal-exit "^3.0.2" +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== + dependencies: + onetime "^5.1.0" + signal-exit "^3.0.2" + ret@~0.1.10: version "0.1.15" resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== -rimraf@2.6.3, rimraf@^2.5.4, rimraf@^2.6.1: +rimraf@2.6.3: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== dependencies: glob "^7.1.3" +rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + rimraf@~2.2.6: version "2.2.8" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.2.8.tgz#e439be2aaee327321952730f99a8929e4fc50582" integrity sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI= -rsvp@^3.3.3: - version "3.6.2" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.6.2.tgz#2e96491599a96cde1b515d5674a8f7a91452926a" - integrity sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw== +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== run-async@^2.2.0: version "2.3.0" @@ -5975,6 +5719,13 @@ rx-lite@*, rx-lite@^4.0.8: resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" integrity sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ= +rxjs@^5.4.3: + version "5.5.12" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.12.tgz#6fa61b8a77c3d793dbaf270bee2f43f652d741cc" + integrity sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw== + dependencies: + symbol-observable "1.0.1" + rxjs@^6.4.0: version "6.5.2" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.2.tgz#2e35ce815cd46d84d02a209fb4e5921e051dbec7" @@ -5982,11 +5733,16 @@ rxjs@^6.4.0: dependencies: tslib "^1.9.0" -safe-buffer@5.1.2, safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@^5.0.1, safe-buffer@^5.1.2: + version "5.2.0" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" + integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== + safe-regex@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" @@ -5999,31 +5755,33 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane@^2.0.0: - version "2.5.2" - resolved "https://registry.yarnpkg.com/sane/-/sane-2.5.2.tgz#b4dc1861c21b427e929507a3e751e2a2cb8ab3fa" - integrity sha1-tNwYYcIbQn6SlQej51HiosuKs/o= +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== dependencies: + "@cnakazawa/watch" "^1.0.3" anymatch "^2.0.0" - capture-exit "^1.2.0" - exec-sh "^0.2.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" fb-watchman "^2.0.0" micromatch "^3.1.4" minimist "^1.1.1" walker "~1.0.5" - watch "~0.18.0" - optionalDependencies: - fsevents "^1.2.3" -sax@^1.2.4: +sax@^1.2.1, sax@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -sax@~1.1.1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.1.6.tgz#5d616be8a5e607d54e114afae55b7eaf2fcc3240" - integrity sha1-XWFr6KXmB9VOEUr65Vt+ry/MMkA= +scheduler@0.14.0: + version "0.14.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.14.0.tgz#b392c23c9c14bfa2933d4740ad5603cc0d59ea5b" + integrity sha512-9CgbS06Kki2f4R9FjLSITjZo5BZxPsryiRNyL3LpvrM9WxcVmhlqAOc9E+KQbeI2nqej4JIIbOsfdL51cNb4Iw== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" scheduler@^0.13.6: version "0.13.6" @@ -6034,9 +5792,19 @@ scheduler@^0.13.6: object-assign "^4.1.1" "semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0: - version "5.7.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" - integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" + integrity sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA== + +semver@^6.0.0, semver@^6.1.2, semver@^6.2.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== send@0.17.1: version "0.17.1" @@ -6077,20 +5845,10 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= -set-value@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== dependencies: extend-shallow "^2.0.1" is-extendable "^0.1.1" @@ -6119,7 +5877,7 @@ shebang-regex@^1.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= -shell-quote@1.6.1, shell-quote@^1.6.1: +shell-quote@1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" integrity sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c= @@ -6129,6 +5887,11 @@ shell-quote@1.6.1, shell-quote@^1.6.1: array-reduce "~0.0.0" jsonify "~0.0.0" +shell-quote@^1.6.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.1.tgz#3161d969886fb14f9140c65245a5dd19b6f0b06b" + integrity sha512-2kUqeAGnMAu6YrTPX4E3LfxacH9gKljzVjlkUeSqY0soGwK4KLl7TURXCem712tkhBCeeaFP9QK4dKn88s3Icg== + shellwords@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" @@ -6139,31 +5902,31 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= -simple-plist@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/simple-plist/-/simple-plist-0.2.1.tgz#71766db352326928cf3a807242ba762322636723" - integrity sha1-cXZts1IyaSjPOoByQrp2IyJjZyM= +simple-plist@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-plist/-/simple-plist-1.0.0.tgz#bed3085633b22f371e111f45d159a1ccf94b81eb" + integrity sha512-043L2rO80LVF7zfZ+fqhsEkoJFvW8o59rt/l4ctx1TJWoTx7/jkiS1R5TatD15Z1oYnuLJytzE7gcnnBuIPL2g== dependencies: bplist-creator "0.0.7" bplist-parser "0.1.1" - plist "2.0.1" - -sisteransi@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce" - integrity sha512-PmGOd02bM9YO5ifxpw36nrNMBTptEtfRl4qUYl9SndkolplkrZZOW7PGHjrZL53QvMVj9nQ+TKqUnRsw4tJa4g== + plist "^3.0.1" -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= +sisteransi@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.3.tgz#98168d62b79e3a5e758e27ae63c4a053d748f4eb" + integrity sha512-SbEG75TzH8G7eVXFSN5f9EExILKfly7SUvVY5DhhYLvfhKqhDFY0OzevWa/zwak0RLRfWS5AvfMWpd9gJvr5Yg== slash@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== -slice-ansi@^2.1.0: +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^2.0.0, slice-ansi@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== @@ -6218,17 +5981,10 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.4.15: - version "0.4.18" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" - integrity sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA== - dependencies: - source-map "^0.5.6" - source-map-support@^0.5.6, source-map-support@^0.5.9: - version "0.5.12" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" - integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== + version "0.5.13" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -6238,7 +5994,7 @@ source-map-url@^0.4.0: resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7: +source-map@^0.5.0, source-map@^0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= @@ -6270,9 +6026,9 @@ spdx-expression-parse@^3.0.0: spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.4" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1" - integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA== + version "3.0.5" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" + integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== split-on-first@^1.0.0: version "1.1.0" @@ -6371,7 +6127,7 @@ string-width@^1.0.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string-width@^3.0.0: +string-width@^3.0.0, string-width@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== @@ -6380,6 +6136,15 @@ string-width@^3.0.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" +string-width@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.1.0.tgz#ba846d1daa97c3c596155308063e075ed1c99aff" + integrity sha512-NrX+1dVVh+6Y9dnQ19pR0pP4FiEIlUvdTGn8pw6CKTNq5sgib2nIhmUNT5TAmhWmvKr3WcxBcP3E8nWezuipuQ== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^5.2.0" + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -6401,47 +6166,33 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-ansi@^5.1.0: +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== dependencies: ansi-regex "^4.1.0" -strip-bom@3.0.0, strip-bom@^3.0.0: +strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" - integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= - dependencies: - is-utf8 "^0.2.0" - strip-eof@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= -strip-json-comments@^2.0.1, strip-json-comments@~2.0.1: +strip-json-comments@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7" + integrity sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw== + +strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= - -supports-color@^3.1.2: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= - dependencies: - has-flag "^1.0.0" - supports-color@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" @@ -6449,18 +6200,30 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== + dependencies: + has-flag "^3.0.0" + +symbol-observable@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" + integrity sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ= + symbol-tree@^3.2.2: - version "3.2.2" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" - integrity sha1-rifbOPZgp64uHDt9G8KQgZuFGeY= + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== table@^5.2.3: - version "5.4.0" - resolved "https://registry.yarnpkg.com/table/-/table-5.4.0.tgz#d772a3216e68829920a41a32c18eda286c95d780" - integrity sha512-nHFDrxmbrkU7JAFKqKbDJXfzrX2UBsWmrieXFTGxiI5e4ncg3VqsZeI4EzNmX0ncp4XNGVeoxIWJXfCIXwrsvw== + version "5.4.6" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" + integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== dependencies: - ajv "^6.9.1" - lodash "^4.17.11" + ajv "^6.10.2" + lodash "^4.17.14" slice-ansi "^2.1.0" string-width "^3.0.0" @@ -6485,16 +6248,15 @@ temp@0.8.3: os-tmpdir "^1.0.0" rimraf "~2.2.6" -test-exclude@^4.2.1: - version "4.2.3" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.3.tgz#a9a5e64474e4398339245a0a769ad7c2f4a97c20" - integrity sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA== +test-exclude@^5.2.3: + version "5.2.3" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" + integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g== dependencies: - arrify "^1.0.1" - micromatch "^2.3.11" - object-assign "^4.1.0" - read-pkg-up "^1.0.1" - require-main-filename "^1.0.1" + glob "^7.1.3" + minimatch "^3.0.4" + read-pkg-up "^4.0.0" + require-main-filename "^2.0.0" text-table@^0.2.0: version "0.2.0" @@ -6506,7 +6268,7 @@ throat@^4.0.0, throat@^4.1.0: resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= -through2@^2.0.0: +through2@^2.0.0, through2@^2.0.1: version "2.0.5" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== @@ -6536,11 +6298,6 @@ tmpl@1.0.x: resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= -to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= - to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" @@ -6604,10 +6361,17 @@ trim-right@^1.0.1: resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= -tslib@^1.9.0: - version "1.9.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" - integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== +tslib@^1.8.1, tslib@^1.9.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" + integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== + +tsutils@^3.7.0: + version "3.17.1" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759" + integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== + dependencies: + tslib "^1.8.1" tunnel-agent@^0.6.0: version "0.6.0" @@ -6633,15 +6397,20 @@ type-fest@^0.3.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== +type-fest@^0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.5.2.tgz#d6ef42a0356c6cd45f49485c3b6281fc148e48a2" + integrity sha512-DWkS49EQKVX//Tbupb9TFa19c7+MK1XmzkrZUR8TAktmE/DizXoaoJV6TZ/tSIPXipqNiRI6CyAe7x69Jb6RSw== + typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= ua-parser-js@^0.7.18: - version "0.7.19" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.19.tgz#94151be4c0a7fb1d001af7022fdaca4642659e4b" - integrity sha512-T3PVJ6uz8i0HzPxOF9SWzWAlfN/DavlpQqepn22xgve/5QecC+XMCAtmUNnY7C9StehaV6exjUCI801lOI7QlQ== + version "0.7.20" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.20.tgz#7527178b82f6a62a0f243d1f94fd30e3e3c21098" + integrity sha512-8OaIKfzL5cpx8eCMAhhvTlft8GYF8b2eQr6JkCyVdrgjcytyOmPCXrqXFcUnhonRpLlh5yxEZVohm6mzaowUOw== uglify-es@^3.1.9: version "3.3.9" @@ -6693,14 +6462,19 @@ unicode-property-aliases-ecmascript@^1.0.4: integrity sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw== union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== dependencies: arr-union "^3.1.0" get-value "^2.0.6" is-extendable "^0.1.1" - set-value "^0.4.3" + set-value "^2.0.1" + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== unpipe@~1.0.0: version "1.0.0" @@ -6715,11 +6489,6 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" -upath@^1.1.1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.1.2.tgz#3db658600edaeeccbe6db5e684d67ee8c2acd068" - integrity sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q== - uri-js@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" @@ -6756,9 +6525,14 @@ utils-merge@1.0.1: integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== + version "3.3.3" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" + integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== + +v8-compile-cache@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" + integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== validate-npm-package-license@^3.0.1: version "3.0.4" @@ -6782,6 +6556,11 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" +vlq@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vlq/-/vlq-1.0.1.tgz#c003f6e7c0b4c1edd623fd6ee50bbc0d6a1de468" + integrity sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w== + w3c-hr-time@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" @@ -6789,20 +6568,19 @@ w3c-hr-time@^1.0.1: dependencies: browser-process-hrtime "^0.1.2" -walker@~1.0.5: +walker@^1.0.7, walker@~1.0.5: version "1.0.7" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= dependencies: makeerror "1.0.x" -watch@~0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" - integrity sha1-KAlUdsbffJDJYxOJkMClQj60uYY= +wcwidth@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= dependencies: - exec-sh "^0.2.0" - minimist "^1.2.0" + defaults "^1.0.3" webidl-conversions@^4.0.2: version "4.0.2" @@ -6816,7 +6594,7 @@ whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: dependencies: iconv-lite "0.4.24" -whatwg-fetch@>=0.10.0: +whatwg-fetch@>=0.10.0, whatwg-fetch@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb" integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q== @@ -6849,7 +6627,7 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@^1.2.12, which@^1.2.9, which@^1.3.0: +which@^1.2.9, which@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -6881,11 +6659,29 @@ wrap-ansi@^2.0.0: string-width "^1.0.1" strip-ansi "^3.0.1" +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= +write-file-atomic@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.1.tgz#d0b05463c188ae804396fd5ab2a370062af87529" + integrity sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg== + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + write-file-atomic@^1.2.0: version "1.3.4" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.4.tgz#f807a4f0b1d9e913ae7a48112e6cc3af1991b45f" @@ -6895,15 +6691,6 @@ write-file-atomic@^1.2.0: imurmurhash "^0.1.4" slide "^1.1.5" -write-file-atomic@^2.1.0: - version "2.4.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" - integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - write@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" @@ -6935,12 +6722,12 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" -xcode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/xcode/-/xcode-1.1.0.tgz#9fcb63f417a9af377bfb743a5c22afce4e1da964" - integrity sha512-hllHFtfsNu5WbVzj8KbGNdI3NgOYmTLZqyF4a9c9J1aGMhAdxmLLsXlpG0Bz8fEtKh6I3pyargRXN0ZlLpcF5w== +xcode@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/xcode/-/xcode-2.0.0.tgz#134f1f94c26fbfe8a9aaa9724bfb2772419da1a2" + integrity sha512-5xF6RCjAdDEiEsbbZaS/gBRt3jZ/177otZcpoLCjGN/u1LrfgH7/Sgeeavpr/jELpyDqN2im3AKosl2G2W8hfw== dependencies: - simple-plist "^0.2.1" + simple-plist "^1.0.0" uuid "^3.3.2" xml-name-validator@^3.0.0: @@ -6948,22 +6735,17 @@ xml-name-validator@^3.0.0: resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== -xmlbuilder@8.2.2: - version "8.2.2" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-8.2.2.tgz#69248673410b4ba42e1a6136551d2922335aa773" - integrity sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M= - xmlbuilder@^9.0.7: version "9.0.7" resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0= -xmldoc@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-0.4.0.tgz#d257224be8393eaacbf837ef227fd8ec25b36888" - integrity sha1-0lciS+g5PqrL+DfvIn/Y7CWzaIg= +xmldoc@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/xmldoc/-/xmldoc-1.1.2.tgz#6666e029fe25470d599cd30e23ff0d1ed50466d7" + integrity sha512-ruPC/fyPNck2BD1dpz0AZZyrEwMOrWTO5lDdIXS91rs3wtm4j+T8Rp2o+zoOYkkAxJTZRPOSnOGei1egoRmKMQ== dependencies: - sax "~1.1.1" + sax "^1.2.1" xmldom@0.1.x: version "0.1.27" @@ -6976,15 +6758,20 @@ xpipe@^1.0.5: integrity sha1-jdi/Rfw/f1Xw4FS4ePQ6YmFNr98= xtend@~4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= +"y18n@^3.2.1 || ^4.0.0", y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== + yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" @@ -6995,6 +6782,22 @@ yallist@^3.0.0, yallist@^3.0.3: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.0.3.tgz#b4b049e314be545e3ce802236d6cd22cd91c3de9" integrity sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A== +yargs-parser@^11.1.1: + version "11.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" + integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^13.1.1: + version "13.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" + integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + yargs-parser@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" @@ -7002,30 +6805,39 @@ yargs-parser@^7.0.0: dependencies: camelcase "^4.1.0" -yargs-parser@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" - integrity sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc= - dependencies: - camelcase "^4.1.0" - -yargs@^11.0.0: - version "11.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.1.0.tgz#90b869934ed6e871115ea2ff58b03f4724ed2d77" - integrity sha512-NwW69J42EsCSanF8kyn5upxvjp5ds+t3+udGBeTbFnERA+lF541DDpMawzo4z6W/QrzNM18D+BPMiOBibnFV5A== +yargs@^12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== dependencies: cliui "^4.0.0" - decamelize "^1.1.1" - find-up "^2.1.0" + decamelize "^1.2.0" + find-up "^3.0.0" get-caller-file "^1.0.1" - os-locale "^2.0.0" + os-locale "^3.0.0" require-directory "^2.1.1" require-main-filename "^1.0.1" set-blocking "^2.0.0" string-width "^2.0.0" which-module "^2.0.0" - y18n "^3.2.1" - yargs-parser "^9.0.2" + y18n "^3.2.1 || ^4.0.0" + yargs-parser "^11.1.1" + +yargs@^13.3.0: + version "13.3.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83" + integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.1" yargs@^9.0.0: version "9.0.1" diff --git a/README.md b/README.md index 7ae36f1..4fe234a 100644 --- a/README.md +++ b/README.md @@ -15,24 +15,62 @@ React Native 카카오 로그인 라이브러리 입니다. 세부 예제는 KakaoLoginExample 폴더 안의 예제 프로젝트를 확인해주시면 감사하겠습니다. `react-native-kakao-login`과 `react-native-kakao-signin`이 관리가 안되고 오래되어 최신 버전 kakao sdk로 새로 만들었습니다. + ## Getting started `$ npm install react-native-kakao-logins --save` -### Mostly automatic installation +OR `$ yarn add react-native-kakao-logins --save` + + +### Automatic installation + +##### RN >= 0.60 +Auto linking or Manually below + +##### RN < 0.60 +`$ react-native link react-native-kakao-logins` or Manually below -`$ react-native link react-native-kakao-logins` ### Manual installation +##### [RN >= 0.60] Pre-setting is needed If you want Manual installation +make `react-native.config.js` to your project root +```js +// react-native.config.js +module.exports = { + dependencies: { + 'react-native-kakao-logins': { + //Set null on platform that you want manual installation + platforms: { + ios: null, + android: null + }, + } + }, +}; +``` + + #### iOS -1. In XCode, in the project navigator, right click `Libraries` ➜ `Add Files to [your project's name]` -2. Go to `node_modules` ➜ `react-native-kakao-logins` and add `RNKakaoLogins.xcodeproj` -3. In XCode, in the project navigator, select your project. Add `libRNKakaoLogins.a` to your project's `Build Phases` ➜ `Link Binary With Libraries` -4. Add paths as below - - Header Search Paths: `"$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/**"` - - Framework search Paths `"$(SRCROOT)/../node_modules/react-native-kakao-logins/ios/Frameworks"` +1. Install iOS KakaoOpenSDK via CocoaPods or Download + - Install via CocoaPods + + Append the following lines to `ios/Podfile` + ```ruby + target 'yourApp' do + ... + pod 'KakaoOpenSDK', '~> 1.16.0' //append this line + end + ``` + + - Install via Download + + download and import framework to your Project [link](https://developers.kakao.com/docs/ios/getting-started#kakao-sdk-설치) +2. In XCode, in the project navigator, right click `Libraries` ➜ `Add Files to [your project's name]` +3. Go to `node_modules` ➜ `react-native-kakao-logins` and add `RNKakaoLogins.xcodeproj` +4. In XCode, in the project navigator, select your project. Add `libRNKakaoLogins.a` to your project's `Build Phases` ➜ `Link Binary With Libraries` 5. Refer to `Post installation` #### Android @@ -45,7 +83,7 @@ React Native 카카오 로그인 라이브러리 입니다. 2. Append the following lines to `android/settings.gradle`: ``` include ':react-native-kakao-logins' - project(':react-native-kakao-logins').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-kakao-logins/android') + project(':react-native-kakao-logins').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-kakao-logins/android') ``` 3. Insert the following lines inside the dependencies block in `android/app/build.gradle`: ``` @@ -56,10 +94,11 @@ React Native 카카오 로그인 라이브러리 입니다. #### iOS -1. xcode를 열고 Libraries 안에 있는 KakaoOpenSDK.framework를 project의 `Framework`폴더 안으로 복사합니다. -2. ios 카카오 sdk 설치 후의 설정과 관련해서는 [카카오 개발자 페이지 - 앱생성](https://developers.kakao.com/docs/ios/getting-started#앱-생성)을 참고해주세요. 앱생성 가이드를 따라하고 성공적으로 build가 되는 것을 확인하시면 아래를 진행하시면 됩니다. +1. 프로젝트의 ios 폴더에서 `$ pod install` 명령어를 실행합니다. +2. ios 카카오 sdk 설치 후의 설정과 관련해서는 [공식문서 - 앱생성](https://developers.kakao.com/docs/ios/getting-started#앱-생성) 을 참고해주세요. 앱생성 가이드를 따라하고 성공적으로 build가 되는 것을 확인하시면 아래를 진행하시면 됩니다. 3. Project => Targets 아래 앱 선택 => General 탭으로 이동해서 Bundle Identifier가 본인의 카카오 앱과 동일한지 확인해주세요. -4. [SDK의 공식문서](https://developers.kakao.com/docs/ios/user-management#%EB%A1%9C%EA%B7%B8%EC%9D%B8)를 참조하여 `AppDelegate.m` 파일에 아래와 같은 내용을 추가합니다. +3. [공식문서 - 개발 프로젝트 설정](https://developers.kakao.com/docs/ios/getting-started#%EA%B0%9C%EB%B0%9C%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%EC%84%A4%EC%A0%95) 을 참고하여 `info.plist`, `URL Types` 및 커스텀 스킴 추가 등 기타 필요한 세팅들을 프로젝트에 추가해줍니다. +4. [공식문서 - 로그인](https://developers.kakao.com/docs/ios/user-management#%EB%A1%9C%EA%B7%B8%EC%9D%B8) 을 참고하여 `AppDelegate.m` 파일에 아래와 같은 내용을 추가합니다. ``` #import @@ -89,45 +128,39 @@ React Native 카카오 로그인 라이브러리 입니다. } ``` -5. Expo Kit을 사용하여 개발하는 경우 `RNNaverLogin.xcodeproj`의 Build Settings => Header Search Paths에 `$(SRCROOT)/../../../ios/Pods/Headers/Public`를 `recursive`로 추가해주셔야 합니다. +5. Expo Kit을 사용하여 개발하는 경우 `RNKakaoLogin.xcodeproj`의 Build Settings => Header Search Paths에 `$(SRCROOT)/../../../ios/Pods/Headers/Public`를 `recursive`로 추가해주셔야 합니다. 6. 잘 안되시면 Example Project를 확인하여 비교해보시면 되겠습니다. #### Android 1. 안드로이드에서는 카카오 SDK가 모듈의 gradle 경로에 잡혀있어서 별도로 sdk를 설치하지 않아도 됩니다. -2. 아래를 `build.gradle`에 추가해주세요. - ``` - subprojects { - repositories { - mavenCentral() - maven { url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' } - } - } - ``` -3. manifest 파일에서 allowBackup을 true로 설정해주세요. +2. manifest 파일에서 allowBackup을 true로 설정해주세요. +3. `android/build.gradle` 에 아래 내용을 추가합니다. +``` +subprojects { + repositories { + ... + mavenCentral() + maven { url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' } + } +} +``` 4. 안드로이드 카카오 SDK 설치 후의 설정과 관련해서는 [카카오 개발자 페이지 - 앱생성](https://developers.kakao.com/docs/android/getting-started#앱-생성)을 참고해주세요. 앱생성 가이드를 따라하고 성공적으로 build가 되는 것을 확인하시면 아래를 진행하시면 됩니다. -5. `react-native-kakao-logins`에서 `kakao_strings.xml`을 열어 `kakao_app_key`를 본인의 application key로 바꿔주세요. - -6. ~~`MainApplication.java`에서 `MainApplication` 클래스를 다음과 같이 만들어주세요. `com.dooboolab.kakaologins.GlobalApplication`를 `extend` 받아야 합니다.~~ - ~~public class MainApplication extends GlobalApplication implements ReactApplication {~~ - -7. getPackages()에 new RNKakaoLoginsPackage()를 등록해주세요. - ``` - protected List getPackages() { - return Arrays.<~>asList( - ... - new RNKakaoLoginsPackage() - ); - } - ``` -8. 컴파일 에러가 나면 `build.gradle`에서 android sdk compile version 등 빌드 sdk 버전을 맞춰주세요. - -9. 아래와 같은 에러가 발생할 경우 [키 해시 등록](https://developers.kakao.com/docs/android/getting-started#키해시-등록)을 진행해주세요. 자바 코드로 구하는 방법이 제일 확실합니다. - - ``` - AUTHORIZATION_FAILED: invalid android_key_hash or ios_bundle_id or web_site_url - ``` +5. `app/src/main/res/values/strings.xml` 을 열어 `kakao_app_key` 에 본인의 application key를 등록합니다. +```xml + + KakaoLoginExample + your_app_key + +``` +6. 컴파일 에러가 나면 `build.gradle`에서 android sdk compile version 등 빌드 sdk 버전을 맞춰주세요. +7. 아래와 같은 에러가 발생할 경우 [키 해시 등록](https://developers.kakao.com/docs/android/getting-started#키해시-등록)을 진행해주세요. 자바 코드로 구하는 방법이 제일 확실합니다. +``` +AUTHORIZATION_FAILED: invalid android_key_hash or ios_bundle_id or web_site_url +``` +|React Native 0.60.x 부터 기본적으로 포함되는 디버깅 키의 해시는 다음과 같습니다. +`Xo8WBi6jzSxKDVR4drqm84yr9iU=` ## Changelogs @@ -140,7 +173,7 @@ React Native 카카오 로그인 라이브러리 입니다. | :--------- | :---: | :----------------------------------------------------: | :--------------- | | login | | `callback (err: string, result: JSONObject in string)` | 로그인. | | getProfile | | `callback (err: string, result: JSONObject in string)` | 프로필 불러오기. | -| logout | | `callback (err: string, result: string)` | 로그아웃. | +| logout | | `callback (err: string, result: null)` | 로그아웃. | #### params in result when `getProfile` @@ -161,86 +194,106 @@ React Native 카카오 로그인 라이브러리 입니다. ## Usage -아래 예제는 `KakaoLoginExample` 프로젝트의 `App.js`파일과 동일합니다. 로그인 후 result에 들어오는 결과값음 `accessToken`입니다. +아래 예제는 `KakaoLoginExample` 프로젝트의 `App.js`파일과 동일합니다. 로그인 후 result에 들어오는 결과값은 `{token:kakao_token}`입니다. -```javascript +```jsx +import React, {useState} from 'react'; import RNKakaoLogins from 'react-native-kakao-logins'; -export default class App extends Component<{}> { - constructor(props) { - super(props); - this.state = { - isKakaoLogging: false, - token: 'token has not fetched', - }; - } - - // 카카오 로그인 시작. - kakaoLogin() { - console.log(' kakaoLogin '); +export default function App() { + const [loginLoading, setLoginLoading] = useState(false); + const [logoutLoading, setLogoutLoading] = useState(false); + const [profileLoading, setProfileLoading] = useState(false); + + const [token, setToken] = useState(TOKEN_EMPTY); + const [profile, setProfile] = useState(PROFILE_EMPTY); + + const kakaoLogin = () => { + logCallback('Login Start', setLoginLoading(true)); + RNKakaoLogins.login((err, result) => { if (err) { - console.log(err.toString()); - return; + return logCallback( + `Login Failed:${err.toString()}`, + setLoginLoading(false), + ); } - Alert.alert('result', result); + setToken(result.token); + logCallback(`Login Finished:${result.token}`, setLoginLoading(false)); }); - } + }; + + const kakaoLogout = () => { + logCallback('Logout Start', setLogoutLoading(true)); - kakaoLogout() { - console.log(' kakaoLogout '); RNKakaoLogins.logout((err, result) => { if (err) { - console.log(err.toString()); - return; + return logCallback( + `Logout Failed:${err.toString()}`, + setLogoutLoading(false), + ); } - Alert.alert('result', result); + setToken(TOKEN_EMPTY); + setProfile(PROFILE_EMPTY); + logCallback(`Logout Finished:${result}`, setLogoutLoading(false)); }); - } + }; + + const getProfile = () => { + logCallback('Get Profile Start', setProfileLoading(true)); - // 로그인 후 내 프로필 가져오기. - getProfile() { - console.log('getKakaoProfile'); RNKakaoLogins.getProfile((err, result) => { if (err) { - console.log(err.toString()); - return; + return logCallback( + `Get Profile Failed:${err.toString()}`, + setProfileLoading(false), + ); } - Alert.alert('result', result); + setProfile(result); + logCallback( + `Get Profile Finished:${JSON.stringify(result)}`, + setProfileLoading(false), + ); }); - } - - render() { - return ( - - - LOGIN - - - this.kakaoLogin()} - activeOpacity={0.5} - style={styles.btnKakaoLogin} - textStyle={styles.txtNaverLogin} - >LOGIN - {this.state.token} - this.kakaoLogout()} - activeOpacity={0.5} - style={styles.btnKakaoLogin} - textStyle={styles.txtNaverLogin} - >Logout - this.getProfile()} - activeOpacity={0.5} - style={styles.btnKakaoLogin} - textStyle={styles.txtNaverLogin} - >getProfile - + }; + + const {id, email, profile_image_path: photo} = profile; + + return ( + + + + {`id : ${id}`} + {`email : ${email}`} + + + {token} + + LOGIN + + + Logout + + + getProfile + - ); - } + + ); } ``` diff --git a/android/gradle.properties b/android/gradle.properties index 933e890..d95f8f8 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -10,7 +10,7 @@ # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. KAKAO_SDK_GROUP=com.kakao.sdk -KAKAO_SDK_VERSION=1.15.1 +KAKAO_SDK_VERSION=1.23.0 # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit diff --git a/android/gradle/wrapper/gradle.properties b/android/gradle/wrapper/gradle.properties index 933e890..d95f8f8 100644 --- a/android/gradle/wrapper/gradle.properties +++ b/android/gradle/wrapper/gradle.properties @@ -10,7 +10,7 @@ # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. KAKAO_SDK_GROUP=com.kakao.sdk -KAKAO_SDK_VERSION=1.15.1 +KAKAO_SDK_VERSION=1.23.0 # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAccessTokenInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAccessTokenInfo.h deleted file mode 100644 index 30c8ad2..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAccessTokenInfo.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAccessTokenInfo.h - access token의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOAccessTokenInfo - @discussion access token의 정보를 담고 있는 구조체. - */ -@interface KOAccessTokenInfo : NSObject - -/*! - @property ID - @abstract 해당 access token에 해당되는 사용자의 ID - */ -@property(nonatomic, readonly) NSNumber *ID; - -/*! - @property expiresInMillis - @abstract 해당 access token의 남은 만료시간. 0보다 큰 milli-second가 반환됨. - */ -@property(nonatomic, readonly) NSNumber *expiresInMillis; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAgeAuthQueryStringBuilder.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAgeAuthQueryStringBuilder.h deleted file mode 100644 index 041a9af..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAgeAuthQueryStringBuilder.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAgeAuthQueryStringBuilder.h - @abstract 연령인증시 필요한 파라미터입니다. - */ - -#ifndef KOAgeAuthQueryStringBuilder_h -#define KOAgeAuthQueryStringBuilder_h - -#import "KOSession.h" - -/*! - @class KOAgeAuthQueryStringBuilder - @abstract 연령인증시 필요한 파라미터를 Builder pattern 을 이용해서 세팅한다. - */ -@interface KOAgeAuthQueryStringBuilder : NSObject - -/*! - @property level - @abstract 연령 인증 레벨 - */ -@property (nonatomic) KOAgeAuthLevel level; - -/*! - @property limit - @abstract 연령 인증 제한 나이 - */ -@property (nonatomic) KOAgeAuthLimit limit; - -/*! - @property isWesternAge - @abstract 나이의 기준이 한국식인지 외국식인지의 여부(optional, default false) - */ -@property (nonatomic) BOOL isWesternAge; - -/*! - @property isSkipTerm - @abstract 동의하기 안내화면 skip 여부(optional, default false) - */ -@property (nonatomic) BOOL isSkipTerm; // 동의하기 안내화면 skip 여부. - -/*! - @property authFrom - @abstract 서비스 이름(optional, client_id or app_id or service_name) - */ -@property (nonatomic, copy) NSString *authFrom; - -- (NSString *) build; - -@end - -#endif /* KOAgeAuthQueryStringBuilder_h */ diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAppFriend.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAppFriend.h deleted file mode 100644 index 959cfea..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOAppFriend.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface KOAppFriend : NSObject - -/*! - * @property ID - * @abstract 친구의 사용자 아이디 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property nickname - * @abstract 친구의 닉네임 - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; - -- (NSDictionary *)dictionary; -+ (instancetype)appFriendWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOBaseContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOBaseContext.h deleted file mode 100644 index 4d831b8..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOBaseContext.h +++ /dev/null @@ -1,103 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOBaseContext.h - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context를 정의한다. - */ -#import - -/*! - @abstract KOOrdering 정렬 정보. - @constant KOOrderingAscending 오름차순 정렬. - @constant KOOrderingDescending 내림차순 정렬. - */ -typedef NS_ENUM(NSInteger, KOOrdering) { - KOOrderingAscending = 0, - KOOrderingDescending = 1 -}; - -extern NSString* convertOrderingString(KOOrdering type); - -/*! - @class KOBaseContext - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context. - */ -@interface KOBaseContext : NSObject - -/*! - @property secureResource - @abstract 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - */ -@property (nonatomic, readonly) BOOL secureResource; - -/*! - @property limit - @abstract 요청 시 제한하는 친구의 수. - */ -@property (nonatomic, readonly) NSInteger limit; - -/*! - @property ordering - @abstract 정렬 방법. - */ -@property (nonatomic, readonly) KOOrdering ordering; - -/*! - @property totalCount - @abstract 목록의 전체 수. - */ -@property (nonatomic, readonly) NSNumber *totalCount; - -/*! - @property beforeURL - @abstract 이전 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *beforeURL; - -/*! - @property afterURL - @abstract 이후 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *afterURL; - -/*! - @property hasMoreItems - @abstract 이후 페이지 목록이 존재하는지의 여부. - */ -@property (nonatomic, readonly) BOOL hasMoreItems; - -/*! - @property contextID - @abstract 현재 요청에 대한 식별자 - */ -@property (nonatomic, readonly) NSString *contextID; - -+ (instancetype)context; -+ (instancetype)contextWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -+ (instancetype)contextWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -- (void)parseDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOChat.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOChat.h deleted file mode 100644 index b294173..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOChat.h +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -/*! - @header KOChat.h - @abstract 카카오톡 내의 채팅방을 나타내는 정보. - */ - -/*! - @class KOChat - @abstract 카카오톡 내의 채팅방을 나타내는 정보 구조체. - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜. - */ -@interface KOChat : NSObject - -/*! - @property ID - @abstract 카카오톡 채팅방 ID. - */ -@property (nonatomic, readonly) NSNumber *ID; - -/*! - @property title - @abstract 카카오톡 채팅방 Title. - */ -@property (nonatomic, readonly) NSString *title; - -/*! - @property thumbnailURL - @abstract 카카오톡 채팅방 썸네일 이미지 URL. - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property memberCount - @abstract 카카오톡 채팅방 참여자의 수. - */ -@property (nonatomic, readonly) NSNumber *memberCount; - -/*! - @property displayMemberImages - @abstract 이미지가 존재하는 카카오톡 채팅방 멤버들의 썸네일 이미지 URL List. (최대 5대 까지) - */ -@property (nonatomic, readonly) NSArray *displayMemberImages; - -/*! - @property chatType - @abstract 카카오톡 채팅방의 종류(오픈채팅(open), 일반채팅(regular)). - */ -@property (nonatomic, readonly) NSString *chatType; - -@property (nonatomic, readonly) NSArray *memberImageURLs DEPRECATED_MSG_ATTRIBUTE("Use 'displayMemberImages' property."); - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOChatContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOChatContext.h deleted file mode 100644 index a94f400..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOChatContext.h +++ /dev/null @@ -1,122 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOChatContext.h - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -DEPRECATED_MSG_ATTRIBUTE("Use 'KOChatFilters' enum.") -typedef NS_ENUM(NSInteger, KOChatType) { - KOChatTypeGroup = 0 -}; - -extern NSString* convertChatTypeString(KOChatType type) DEPRECATED_ATTRIBUTE; - -/*! - @abstract KOChatFilter 챗목록 필터링 옵션들. - @constant KOChatFilterNone 필터링 하지 않는다 (서버에서 내려주는 목록을 그대로 결과로 받는다). - @constant KOChatFilterDirect 1:1 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterMulti 그룹 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterRegular 일반 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterOpen 오픈 채팅방만 필터링하여 결과에 포함시킨다. - */ -typedef NS_ENUM(NSInteger, KOChatFilters) { - KOChatFilterNone = 0, - KOChatFilterDirect = 1, - KOChatFilterMulti = 1 << 1, - KOChatFilterRegular = 1 << 2, - KOChatFilterOpen = 1 << 3 -}; - -NSString* convertChatFilterString(KOChatFilters filters); - -/*! - @class KOChatContext - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOChatContext : KOBaseContext - -/*! - @property chatFilters - @abstract 챗리스트 필터링 옵션. - */ -@property (nonatomic, readonly) KOChatFilters chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - - - -@property (nonatomic, readonly) KOChatType chatType DEPRECATED_MSG_ATTRIBUTE("Use 'chatFilters' property."); - -- (instancetype)initWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'initWithChatFilters:secureResource:limit:ordering:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:limit:ordering:' method."); - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOError.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOError.h deleted file mode 100644 index 28585dd..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOError.h +++ /dev/null @@ -1,131 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOError.h - KakaoOpenSDK 를 통해 카카오계정을 인증하거나 API를 호출할 때 발생하는 오류들을 정의합니다. - */ -#import - -extern NSString *const KOErrorDomain; - -/*! - @abstract 오류 코드 정의 - @constant KOErrorUnknown 알 수 없는 오류 - @constant KOErrorCancelled 오퍼레이션 취소를 나타냄 - @constant KOErrorOperationInProgress 오퍼레이션이 진행 중간에 있음을 나타냄 - @constant KOErrorTokenNotFound 로그인 상태를 기대하는 상황에서 인증 토큰이 없는 오류 - @constant KOErrorDeactivatedSession 세션이 만료된(access_token, refresh_token이 모두 만료된 경우) 상태 - @constant KOErrorAlreadyLoginedUser 로그인 된 상태(access_token, refresh_token이 존재 하는 경우)에서 다시 로그인 하려고 할때 발생하는 오류 - @constant KOErrorBadResponse 요청에 대한 응답에 기대하는 값이 없거나 문제가 있음 - @constant KOErrorNetworkError 네트워크 오류 - @constant KOErrorHTTP http 프로토콜 오류 - @constant KOErrorNotSupported 지원하지 않는 기능 - @constant KOErrorBadParameter 파라미터 이상 - @constant KOErrorIllegalState 작업을 실행하기에 적절하지 않은 상태 - @constant KOServerErrorUnknown 일반적인 서버 오류 응답. message를 확인해야 함 - @constant KOServerErrorBadParameter 파라미터 이상 - @constant KOServerErrorUnSupportedApi 지원되지 않은 API 호출 - @constant KOServerErrorBlocked 계정 제재 또는 특정 서비스에서 해당 사용자의 제재로 인해 API 호출이 금지된 경우 - @constant KOServerErrorPermission 해당 API에 대한 권한/퍼미션이 없는 경우 - @constant KOServerErrorMisConfigured 개발환경 설정 오류 (bundle id 등) - @constant KOServerErrorInternal 내부 서버 오류 - @constant KOServerErrorApiLimitExceed API 호출 횟수가 제한을 초과 - @constant KOServerErrorNotSignedUpUser 미가입(가가입) 사용자 - @constant KOServerErrorAlreadySignedUpUser 이미 가입된 사용자. 가입된 사용자에 대해 다시 가입 요청(앱 연결 요청)을 한 경우 - @constant KOServerErrorNotKakaoAccountUser 카카오계정 유저가 아닐때 - @constant KOServerErrorInvalidUserPropertyKey 등록되지 않은 user property key - @constant KOServerErrorNoSuchApp 존재하지 않는 앱 - @constant KOServerErrorInvalidAccessToken access_token이 비정상적이거나 만료된 경우 - @constant KOServerErrorInsufficientScope 해당 API에 대한 사용자의 동의 퍼미션이 없는 경우 - @constant KOServerErrorNotAgeAuthorized 연령인증이 필요한 경우 - @constant KOServerErrorLowerAgeLimit 현재 앱의 연령제한보다 사용자의 연령이 낮은 경우 - @constant KOServerErrorAlreadyAgeAuthorized 이미 연령인증이 완료된 경우 - @constant KOServerErrorAgeCheckLimitExceed 연령인증 최대 횟수를 초과한 경우 - @constant KOServerErrorAgeResultMismatched 이전에 인증했던 정보와 불일치 한 경우 - @constant KOServerErrorCIResultMismatched CI 정보가 불일치 할 경우 - @constant KOServerErrorNotTalkUser 카카오톡 유저가 아닐때 - @constant KOServerErrorUserDeviceUnsupported 유저 디바이스가 해당 기능을 지원하지 않는 경우 - @constant KOServerErrorTalkMessageDisabled 받는이가 메시지 수신 거부를 설정한 경우 - @constant KOServerErrorTalkSendMessageMonthlyLimitExceed 한명이 특정앱에 대해 특정인에게 보낼 수 있는 한달 쿼터 초과시 발생 - @constant KOServerErrorTalkSendMessageDailyLimitExceed 한명이 특정앱에 대해 보낼 수 있는 하루 쿼터(받는 사람 관계없이) 초과시 발생 - @constant KOServerErrorNotStoryUser 카카오스토리 유저가 아닐때 - @constant KOServerErrorStoryImageUploadSizeExceed 카카오스토리 이미지 업로드 사이즈 제한 초과 - @constant KOServerErrorStoryUploadTimeout 카카오스토리 이미지 업로드시 타임아웃 - @constant KOServerErrorStoryInvalidScrapUrl 카카오스토리 스크랩시 잘못된 스크랩 URL로 호출할 경우 - @constant KOServerErrorStoryInvalidPostId 카카오스토리의 내정보 요청시 잘못된 내스토리 아이디(포스트 아이디)로 호출할 경우 - @constant KOServerErrorStoryMaxUploadNumberExceed 카카오스토리 이미지 업로드시 허용된 업로드 파일 수가 넘을 경우 - @constant KOServerErrorPushNotExistPushToken 존재하지 않는 푸시 토큰으로 푸시 전송을 하였을 경우 - @constant KOServerErrorUnderMaintenance 서버 점검중 - */ -typedef enum { - KOErrorUnknown = 1, - KOErrorCancelled = 2, - KOErrorOperationInProgress = 3, - KOErrorTokenNotFound = 4, - KOErrorDeactivatedSession = 5, - KOErrorAlreadyLoginedUser = 6, - KOErrorBadResponse = 7, - KOErrorNetworkError = 8, - KOErrorHTTP = 9, - KOErrorNotSupported = 10, - KOErrorBadParameter = 11, - KOErrorIllegalState = 14, - - KOServerErrorUnknown = -1, - KOServerErrorBadParameter = -2, - KOServerErrorUnSupportedApi = -3, - KOServerErrorBlocked = -4, - KOServerErrorPermission = -5, - KOServerErrorMisConfigured = -6, - KOServerErrorInternal = -9, - KOServerErrorApiLimitExceed = -10, - - KOServerErrorNotSignedUpUser = -101, - KOServerErrorAlreadySignedUpUser = -102, - KOServerErrorNotKakaoAccountUser = -103, - - KOServerErrorInvalidUserPropertyKey = -201, - - KOServerErrorNoSuchApp = -301, - - KOServerErrorInvalidAccessToken = -401, - KOServerErrorInsufficientScope = -402, - KOServerErrorNotAgeAuthorized = -450, - KOServerErrorLowerAgeLimit = -451, - KOServerErrorAlreadyAgeAuthorized = -452, - KOServerErrorAgeCheckLimitExceed = -453, - KOServerErrorAgeResultMismatched = -480, - KOServerErrorCIResultMismatched = -481, - - KOServerErrorNotTalkUser = -501, - KOServerErrorUserDeviceUnsupported = -504, - KOServerErrorTalkMessageDisabled = -530, - KOServerErrorTalkSendMessageMonthlyLimitExceed = -531, - KOServerErrorTalkSendMessageDailyLimitExceed = -532, - - KOServerErrorNotStoryUser = -601, - KOServerErrorStoryImageUploadSizeExceed = -602, - KOServerErrorStoryUploadTimeout = -603, - KOServerErrorStoryInvalidScrapUrl = -604, - KOServerErrorStoryInvalidPostId = -605, - KOServerErrorStoryMaxUploadNumberExceed = -606, - - KOServerErrorPushNotExistPushToken = -901, - - KOServerErrorUnderMaintenance = -9798, - -} KOErrorCode; diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriend.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriend.h deleted file mode 100644 index 1382e94..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriend.h +++ /dev/null @@ -1,101 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriend.h - @abstract 카카오톡, 카카오스토리 친구 정보 관련 기능을 정의합니다. - */ -#import -#import "KOUserInfo.h" - -/*! - @abstract KOOSPropertyType 카카오톡 사용자의 디바이스 OS 타입 - @constant KOOSPropertyTypeUnknown 알수없음 - @constant KOOSPropertyTypeIOS ios - @constant KOOSPropertyTypeAndroid 안드로이드 - */ -typedef NS_ENUM(NSInteger, KOOSPropertyType) { - KOOSPropertyTypeUnknown = 0, - KOOSPropertyTypeIOS = 1, - KOOSPropertyTypeAndroid = 2 -}; - -/*! - @abstract KORelationValue 친구 관계 - @constant KORelationValueFriend 친구인 상태 - @constant KORelationValueNotFriend 친구가 아닌 상태 - @constant KORelationValueNotAvailable 친구인지 아닌지 알 수 없는 상태 (카카오톡 친구를 요청 했을 때, 카카오스토리 친구 관계를 알 수 없게 된다.) - */ -typedef NS_ENUM(NSInteger, KORelationValue) { - KORelationValueFriend = 0, - KORelationValueNotFriend = 1, - KORelationValueNotAvailable = 2 -}; - -extern NSString* convertOSPropertyTypeString(KOOSPropertyType type); - -/*! - @class KOFriend - @abstract 카카오톡, 카카오스토리 친구 정보를 담는 구조체 - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@interface KOFriend : KOUserInfo - -/*! - @property appRegistered - @abstract 친구의 앱 가입 여부 - */ -@property (nonatomic, readonly, getter=isAppRegistered) BOOL appRegistered; - -/*! - @property nickName - @abstract 친구의 대표 프로필 닉네임. 앱 가입친구의 경우 앱에서 설정한 닉네임. 미가입친구의 경우 톡 또는 스토리의 닉네임 - */ -@property (nonatomic, readonly) NSString *nickName; - -/*! - @property thumbnailURL - @abstract 친구의 썸네일 이미지 - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property talkOS - @abstract 톡에 가입된 기기의 os 정보 (android / ios) - */ -@property (nonatomic, readonly) KOOSPropertyType talkOS; - -/*! - @property allowedTalkMessaging - @abstract 메시지 수신이 허용되었는지 여부. 앱가입 친구의 경우는 feed msg에 해당. 앱미가입친구는 invite msg에 해당 - */ -@property (nonatomic, readonly, getter=isAllowedTalkMessaging) BOOL allowedTalkMessaging; - -/*! - @property talkRelation - @abstract 나와의 카카오톡 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue talkRelation; - -/*! - @property storyRelation - @abstract 나와의 카카오스토리 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue storyRelation; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriendContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriendContext.h deleted file mode 100644 index 72762f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriendContext.h +++ /dev/null @@ -1,140 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendContext.h - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendServiceType 서비스 친구 타입. - @constant KOFriendServiceTypeTalk 카카오톡 친구. - @constant KOFriendServiceTypeStory 카카오스토리 친구. - @constant KOFriendServiceTypeTalkAndStory 카카오톡 + 카카오스토리 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendServiceType) { - KOFriendServiceTypeTalk = 0, - KOFriendServiceTypeStory = 1, - KOFriendServiceTypeTalkAndStory = 2 -}; - -/*! - @abstract KOFriendFilterType 친구 필터링 타입. - @constant KOFriendFilterTypeAll 전체 친구. - @constant KOFriendFilterTypeRegistered 앱 가입 친구. - @constant KOFriendFilterTypeInvitableNotRegistered 앱 미가입 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendFilterType) { - KOFriendFilterTypeAll = 0, - KOFriendFilterTypeRegistered = 1, - KOFriendFilterTypeInvitableNotRegistered = 2 -}; - -/*! - @abstract KOFriendOrderType 친구 정렬 타입. - @constant KOFriendOrderTypeNickName 닉네임 정렬. - @constant KOFriendOrderTypeRecentChatting 최근 채팅시간 정렬. - @constant KOFriendOrderTypeTalkUserCreatedAt 카카오톡 가입시간 정렬. - @constant KOFriendOrderTypeAge 나이 정렬. - @constant KOFriendOrderTypeAffinity 친밀도 정렬. - */ -typedef NS_ENUM(NSInteger, KOFriendOrderType) { - KOFriendOrderTypeNickName = 0, - KOFriendOrderTypeRecentChatting = 1, - KOFriendOrderTypeTalkUserCreatedAt = 2, - KOFriendOrderTypeAge = 3, - KOFriendOrderTypeAffinity = 4 -}; - -extern NSString* convertFriendServiceTypeString(KOFriendServiceType type); -extern NSString* convertFriendFilterTypeString(KOFriendFilterType type); -extern NSString* convertFriendOrderTypeString(KOFriendOrderType type); - -/*! - @class KOFriendContext - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOFriendContext : KOBaseContext - -/*! - @property serviceType - @abstract 서비스 친구 타입. - */ -@property (nonatomic, readonly) KOFriendServiceType serviceType; - -/*! - @property filterType - @abstract 친구 필터링 타입. - */ -@property (nonatomic, readonly) KOFriendFilterType filterType; - -/*! - @property orderType - @abstract 친구 정렬 타입. - */ -@property (nonatomic, readonly) KOFriendOrderType orderType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param limit 요청 시 제한하는 친구의 수. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - limit:(NSInteger)limit; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -- (instancetype)initWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriendOperation.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriendOperation.h deleted file mode 100644 index 08ddb95..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOFriendOperation.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendOperation.h - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendOperationType 친구 목록 연산 타입. - @constant KOFriendOperationTypeIntersection 교집합. - @constant KOFriendOperationTypeUnion 합집합. - @constant KOFriendOperationTypeSubtraction 차집합. - */ -typedef NS_ENUM(NSInteger, KOFriendOperationType) { - KOFriendOperationTypeIntersection = 0, - KOFriendOperationTypeUnion = 1, - KOFriendOperationTypeSubtraction = 2 -}; - -extern NSString* convertriendOperationTypeString(KOFriendOperationType type); - -@class KOFriendContext; - -/*! - @class KOFriendOperation - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOFriendOperation : KOBaseContext - -/*! - @property leftContext - @abstract Left Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *leftContext; - -/*! - @property rightContext - @abstract Right Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *rightContext; - -/*! - @property operationType - @abstract 연산 타입. - */ -@property (nonatomic, readonly) KOFriendOperationType operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -- (instancetype)initWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOHTTPMethod.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOHTTPMethod.h deleted file mode 100644 index 439e5df..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOHTTPMethod.h +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOHTTPMethod_h -#define kakao_open_sdk_ios_KOHTTPMethod_h - -typedef enum : NSInteger { - KORequestHTTPMethodGet = 0, - KORequestHTTPMethodPost = 1, - KORequestHTTPMethodDelete = 2 -} KORequestHTTPMethod; - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOImages.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOImages.h deleted file mode 100644 index 796001a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOImages.h +++ /dev/null @@ -1,68 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header - 카카오 관련 이미지들 - */ -#import -#import - -/*! - 카카오 관련 이미지들 - */ -@interface KOImages : NSObject - -/*! - 버튼용 카카오 미니로고 - */ -+ (UIImage *)kakaoLogoForButton; - -/*! - 카카오 로고 - */ -+ (UIImage *)kakaoLogo; - -/*! - 카카오톡 아이콘 - */ -+ (UIImage *)kakaoTalkIconForButton; - -/*! - 카카오스토리 아이콘 - */ -+ (UIImage *)kakaoStoryIconForButton; - -/*! - 카카오계정 아이콘 - */ -+ (UIImage *)kakaoAccountIconForButton; - -/*! - 로그인 선택취소 아이콘 - */ -+ (UIImage *)kakaoLoginSelectCancelIconForButton; - -/*! - 웹뷰용 - */ -+ (UIImage *)webViewBackButton; - -+ (UIImage *)webViewButton; - -+ (UIImage *)webViewHead; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOLoginButton.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOLoginButton.h deleted file mode 100644 index dd2fdc7..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOLoginButton.h +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOLoginButton.h - '카카오계정으로 로그인' 버튼 - */ -#import - -/*! - @abstract '카카오계정으로 로그인' 버튼 - */ -@interface KOLoginButton : UIButton - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOPushTokenInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOPushTokenInfo.h deleted file mode 100644 index 9dff18c..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOPushTokenInfo.h +++ /dev/null @@ -1,73 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOPushTokenInfo.h - 푸시 토큰의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOPushTokenInfo - @discussion 푸시 토큰의 정보를 담고 있는 구조체. - */ -@interface KOPushTokenInfo : NSObject - -/*! - @property userId - @abstract 해당 사용자의 아이디 - */ -@property(nonatomic, readonly) NSString *userId; - -/*! - @property deviceId - @abstract 해당 사용자의 등록된 디바이스 아이디 - */ -@property(nonatomic, readonly) NSString *deviceId; - -/*! - @property pushType - @abstract 푸시 토큰의 타입. "apns" 또는 "gcm" - */ -@property(nonatomic, readonly) NSString *pushType; - -/*! - @property pushToken - @abstract 푸시 토큰 - */ -@property(nonatomic, readonly) NSString *pushToken; - -/*! - @property createdAt - @abstract 푸시 토큰의 생성 시간 - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property updatedAt - @abstract 푸시 토큰의 수정된 시간 - */ -@property(nonatomic, readonly) NSString *updatedAt; - -- (id)initWithUserId:(NSString *)userId - deviceId:(NSString *)deviceId - pushType:(NSString *)pushType - pushToken:(NSString *)pushToken - createdAt:(NSString *)createdAt - updatedAt:(NSString *)updatedAt; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSession.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSession.h deleted file mode 100644 index 72eab7a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSession.h +++ /dev/null @@ -1,293 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSession.h - @abstract 카카오계정을 통해 인증 및 로그아웃할 수 있는 기능을 제공합니다. - */ - -#import -#import -#import - -/*! - @abstract KOSessionState Kakao 인증시의 내부 상태값 - @constant KOSessionStateNotOpen 세션이 열리지 않은 상태. 인증이 되지 않은 상태. - @constant KOSessionStateOpening 세션을 열기위한 진행중의 상태. 인증 진행중의 상태. - @constant KOSessionStateOpen 세션이 성공적으로 열린 상태. 인증이 완료된 상태. - */ -typedef NS_ENUM(NSInteger, KOSessionState) { - KOSessionStateNotOpen = 0, - KOSessionStateOpening = 1, - KOSessionStateOpen = 2 -}; - -/*! - @typedef KOSessionCompletionHandler - @abstract Kakao 인증 완료시 실행될 Completion Handler - @param error 오류 정보 - */ -typedef void(^KOSessionCompletionHandler)(NSError *error); - -/*! - @typedef KOCompletionSuccessHandler - @abstract Kakao API의 비동기 호출 성공 여부를 받아 처리해주는 Completion Handler - @param success 성공 여부 - @param error 오류 정보 - */ -typedef void(^KOCompletionSuccessHandler)(BOOL success, NSError *error); - -/*! - @abstract KOAuthType 카카오계정 로그인시의 인증 타입 - @constant KOAuthTypeTalk 카카오톡으로 간편 인증 - @constant KOAuthTypeStory 카카오스토리로 간편 인증 - @constant KOAuthTypeAccount 카카오계정으로 직접 ID, Password로 인증 - */ -typedef NS_ENUM(NSInteger, KOAuthType) { - KOAuthTypeTalk = 1 << 1, - KOAuthTypeStory = 1 << 2, - KOAuthTypeAccount = 1 << 3 -}; - -/*! - @abstract KOOptionalBoolean null을 가질 수 있는 boolean 타입 - @constant KOOptionalBooleanNull 참, 거짓을 알 수 없는 상태 - @constant KOOptionalBooleanFalse 거짓 - @constant KOOptionalBooleanTrue 참 - */ -typedef NS_ENUM(NSInteger, KOOptionalBoolean) { - KOOptionalBooleanNull = 0, - KOOptionalBooleanFalse = -1, - KOOptionalBooleanTrue = 1, -}; - -/*! - @abstract KOAgeAuthLevel 연령인증 시 인증 레벨. - @constant KOAgeAuthLevelType1 1차 인증 레벨. - @constant KOAgeAuthLevelType2 2차 인증 레벨. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLevel) { - KOAgeAuthLevelType1 = 10, - KOAgeAuthLevelType2 = 20 -}; - -/*! - @abstract KOAgeAuthLimit 연령인증 시 인증 나이. - @constant KOAgeAuthLimitType12 12세 인증. - @constant KOAgeAuthLimitType15 15세 인증. - @constant KOAgeAuthLimitType18 18세 인증. - @constant KOAgeAuthLimitType19 19세 인증. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLimit) { - KOAgeAuthLimitTypeNone = 0, - KOAgeAuthLimitType12 = 12, - KOAgeAuthLimitType15 = 15, - KOAgeAuthLimitType18 = 18, - KOAgeAuthLimitType19 = 19 -}; - -/*! - @abstract KOAgeAuthProperty 연령인증 정보 요청시 추가로 더 요청할 수 있는 목록 - @constant KOAgeAuthPropertyAccountCi "account_ci" 를 의미. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthProperty) { - KOAgeAuthPropertyAccountCi = 1 -}; - -@class KOAgeAuthQueryStringBuilder; - -/*! - * @class KOSession - * @abstract 인증 관리 클래스. - */ -@interface KOSession : NSObject - -/*! - * @property appKey - * @abstract 카카오에서 발급한 클라이언트 아이디. (네이티브 앱키) - * @discussion .plist 파일 내에 있는 KAKAO_APP_KEY 값을 읽어옵니다. 해당 키 값이 없거나 빈 문자열인 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - */ -@property(nonatomic, readonly) NSString *appKey; -/*! - * @property redirectUri - * @abstract 클라이언트 실행을 위한 커스텀 스킴 주소 - * @discussion "kakao${KAKAO_APP_KEY}://oauth" 형식의 OAuth 리다이렉트 URI입니다. .plist 파일에 URL Scheme으로 kakao${KAKAO_APP_KEY} 값을 설정해야 합니다. 설정하지 않을 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - * @seealso appKey - */ -@property(nonatomic, readonly) NSString *redirectUri; - -@property(nonatomic, readonly, copy) NSString *accessToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. accessToken을 얻고 싶은 경우 token.accessToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSString *refreshToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. refreshToken을 얻고 싶은 경우 token.refreshToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSDate *expiresAccessTokenTime DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. access token 만료시각을 얻고 싶은 경우 token.accessTokenExpiresAt을 사용해주세요. 추가적으로 refresh token의 만료시각도 제공됩니다."); -/*! - * @property token - * @abstract 로그인 기반 API 인증에 사용되는 OAuth 토큰 - * @discussion KOSessionTask에 있는 API 사용시 자동으로 Authroization 헤더에 현재 access token을 채워줍니다.
- * 발급 받은 토큰은 NSUserDefaults에 저장되고 앱을 종료하고 다시 시작할 경우 세션이 초기화 될 때(ex. sharedSession 최초 호출) 로드됩니다. - * 세션 초기화 시 저장된 토큰을 읽어오는데 성공하면 세션은 open 상태가 되며 일반적인 state 변경 상황과 동일하게 KOSessionDidChangeNotification 알림을 전달 받을 수 있습니다.

- * - * 토큰을 좀 더 안전하게 저장하고 싶을 경우 .plist 파일에 KAKAO_SECURE_MODE를 YES로 설정하여 accessToken과 refreshToken을 암호화 할 수 있습니다. - * 암호화 방식은 SDK 버전에 따라 다르게 제공될 수 있으며 최신 버전에 사용되고 있는 암호화 방식은 1.5.1 버전에서 마지막으로 수정되었습니다. - * KAKAO_SECURE_MODE 설정을 바꾸어서 앱을 배포하고 사용자의 기기에서 업데이트 했을 때 다음 케이스에 대해 마이그레이션을 지원합니다.

- * - * - 평문토큰 to 암호문토큰: KAKAO_SECURE_MODE를 사용하지 않다가 활성화시킨 상태로 업데이트한 경우 등
- * - 암호문토큰 to 평문토큰: KAKAO_SECURE_MODE를 YES로 사용하다가 NO로 변경한 경우 등
- * - (old)암호문토큰 to (new)암호문토큰: KAKAO_SECURE_MODE를 YES로 설정하고 변경하지 않았으나 오래된 버전의 SDK에서 최신(1.5.1이상) SDK로 업데이트한 경우

- * - * 위 케이스에는 앱을 업데이트하고 재시작해도 로그인이 유지되며 이외 케이스는 토큰을 읽어올 수 없으므로 세션이 닫힌 상태로 초기화됩니다. - */ -@property(readonly) KOToken *token; -/*! - * @property state - * @abstract 인증 상태 - */ -@property(nonatomic, readonly) KOSessionState state; -/*! - * @property clientSecret - * @abstract 클라이언트 시크릿. AppDelegate의 application:didFinishLaunchingWithOptions: 메소드에서 값을 설정해주어야 한다. - */ -@property(nonatomic, copy) NSString *clientSecret; - -/*! - * @property automaticPeriodicRefresh - * @abstract access token의 자동 주기적 갱신 여부 설정. 해당 값이 YES일 경우 handleDidBecomeActive시 및 특정 시간 주기로 필요시 토큰을 자동 갱신함. - * @discussion 값을 설정하면 현재 토큰 상태에 따라 타이머를 설정하거나 갱신이 필요할 경우 바로 갱신합니다. 이 속성 값은 기기에 저장되지 않고 메모리에서만 유지되므로 AppDelegate의 application:didFinishLaunchingWithOptions: 메소드 내에서 설정하는 것을 권장합니다. iOS 특성상 앱이 백그라운드로 내려가거나 suspend 상태가 되면 갱신이 불가능합니다. - * @seealso token - */ -@property (nonatomic, getter=isAutomaticPeriodicRefresh) BOOL automaticPeriodicRefresh; - -/*! - * @property presentingViewController - * @abstract login view 가 present 될 뷰컨트롤러를 설정. 지정하지 않을 경우 SDK 자체적으로 최상단 뷰컨트롤러를 탐색합니다. - */ -@property (nonatomic, weak) UIViewController *presentingViewController; - -@property (nonatomic, assign) UIStatusBarStyle presentedViewStatusBarStyle; -@property (nonatomic, strong) UIColor *presentedViewBarTitleColor; -@property (nonatomic, strong) UIColor *presentedViewBarTintColor; -@property (nonatomic, strong) UIColor *presentedViewBarButtonTintColor; -@property (nonatomic, strong) UIImage *presentedViewBarBackgroundImage; - - -/*! - @abstract 현재 session 정보 - */ - -+ (KOSession *)sharedSession; - -/*! - 카카오계정 로그인 callback인지 여부 - @param url 카카오 계정 인증 요청 code 또는 오류정보를 담은 url - */ -+ (BOOL)isKakaoAccountLoginCallback:(NSURL *)url; - -/*! - 카카오계정 연령인증 callback인지 여부 - @param url 카카오 연령인증 요청결과를 담은 url - */ -+ (BOOL)isKakaoAgeAuthCallback:(NSURL *)url; - -/*! - KakaoLink 메시지의 Action인지 여부 - @param url KakaoLink 메시지의 execparam 을 담은 url - */ -+ (BOOL)isKakaoLinkCallback:(NSURL *)url DEPRECATED_ATTRIBUTE; - -/*! - KakaoStory Post의 Action인지 여부 - @param url KakaoStory Post 메시지의 execparam 을 담은 url - */ -+ (BOOL)isStoryPostCallback:(NSURL *)url; - -/*! - url에 포함된 code 정보로 oauth 인증 토큰을 요청한다. 인증 토큰 요청이 완료되면 completionHandler를 실행한다. - @param url 인증 요청 code 또는 오류 정보(error, error_description)를 담은 url - */ -+ (BOOL)handleOpenURL:(NSURL *)url; - -/*! - openWithCompletionHandler로 인증 도중에 빠져나와 앱으로 돌아올때의 인증처리를 취소한다. 보통 applicationDidBecomeActive에서 해당 부분을 호출한다. - */ -+ (void)handleDidBecomeActive; - -/*! - application이 background 상태로 변경시 알려준다. 보통 applicationDidEnterBackground에서 해당 부분을 호출한다. - */ -+ (void)handleDidEnterBackground; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authType 로그인 요청시의 인증 타입(KOAuthType)의 array(var arguments로서 nil-terminated list). 주의) list의 마지막은 꼭 nil로 끝나야함. 예) KOAuthTypeTalk, KOAuthTypeStory, KOAuthTypeAccount, nil - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authType:(KOAuthType)authType, ...; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authTypes 로그인 요청시의 인증 타입(KOAuthType)의 array. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authTypes:(NSArray *)authTypes; - -/*! - @method updateScopes:completionHandler: - @abstract 현재 로그인된 사용자에게 새로운 scope이 필요할 경우 지정된 동의항목에 대한 동의창을 노출하고 사용자 동의를 유도합니다. 사용자가 동의 버튼을 누르면 해당 scope이 적용된 새로운 토큰으로 세션을 갱신합니다. - @param scopes 요청할 scope 목록 - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 갱신 완료 작업을 수행한다. - */ -- (void)updateScopes:(NSArray *)scopes completionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 현재 기기에서만 로그아웃한다. - @param completionHandler 요청 완료시 실행될 block. - */ -- (void)logoutAndCloseWithCompletionHandler:(KOCompletionSuccessHandler)completionHandler; - -/*! - 인증 토큰을 제거하여 session을 무효화한다. - */ -- (void)close; - -/*! - 인증되어 있는지 여부. [token canRefresh]와 동일한 결과를 리턴합니다. - */ -- (BOOL)isOpen; - -/*! - 세션을 유효한 access token으로 유지하기 위해 서버로 토큰을 요청하고 현재 세션을 갱신한다. - @param completionHandler 갱신 완료시 실행될 block. - */ -- (void)refreshAccessTokenWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 새로운 연령 인증이 필요할 경우 사용자에게 연령 인증관련 창을 띄워서 연령 인증을 유도합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -- (void)showAgeAuthWithAuthLevel:(KOAgeAuthQueryStringBuilder *) ageAuthQueryStringBuilder - completionHandler:(KOCompletionSuccessHandler)completionHandler; - -@end - -// notifications -/*! - 로그인 인증 정보 변경 노티피케이션 이름 - */ -extern NSString *const KOSessionDidChangeNotification; diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+AgeAuthAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+AgeAuthAPI.h deleted file mode 100644 index 780fc6e..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+AgeAuthAPI.h +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h -#define kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h - -/*! - @header KOSessionTask+AgeAuthAPI.h - 인증된 세션정보로 연령인증 관련 API를 정의합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ - -#import "KOSession.h" -#import "KOSessionTask.h" - -/*! - 인증된 세션정보로 연령인증 관련 API를 정의한다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -@interface KOSessionTask (AgeAuthAPI) - -/*! - @abstract 연령인증 정보를 얻는다. (일부 앱에서만 제한적 허용/deprecated 될 예정) - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 해당 유저의 연령인증 정보를 얻는다. - @param ageLimit response의 bypass_age_limit(true/false)를 판단하는 기준 제한 연령. default 는 앱에 설정된 제한 연령기준. - 앱에 설정이 없고 param 으로 주어지지 않으면 bypass_age_limit 은 response 에 포함되지 않음. - @param propertyKeys 추가 동의가 필요로 하는 인증정보를 response 에 포함하고 싶은 경우 해당 KOAgeAuthProperty 셋. - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler: (KOAgeAuthLimit)ageLimit - propertyKeys: (NSSet *)propertyKeys - completionHandler: (KOSessionTaskCompletionHandler)completionHandler; - - -@end - -// AgeAuth Results Keys -/*! - 연령인증 정보 확인 시 인증레벨 코드에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelCodeKey; - -/*! - 연령인증 정보 확인 시 인증레벨 타이틀에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelKey; - -/*! - 연령인증 정보 확인 시 연령제한 통과 여부에 대한 키 이름 - */ -extern NSString *const KOAgeAuthBypassLimitKey; - -/*! - 연령인증 정보 확인 시 CI값에 대한 키 이름 - */ -extern NSString *const KOAgeAuthCIKey; - -/*! - 연령인증 정보 확인 시 인증날짜에 대한 키 이름 - */ -extern NSString *const KOAgeAuthDateKey; - - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+AppFriendAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+AppFriendAPI.h deleted file mode 100644 index 8cda243..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+AppFriendAPI.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAppFriend.h" -#import "KOBaseContext.h" - -@class KOAppFriendContext; - -/*! - @abstract App Friend API 요청 완료시 호출되는 콜백 핸들러. - @param appFriends 앱 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOAppFriendsTaskCompletionHandler)(NSError *error, NSArray *appFriends); - -@interface KOSessionTask (AppFriendAPI) - -/*! - @abstract 앱에 가입한 카카오톡 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 앱 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)appFriendsWithContext:(KOAppFriendContext *)context - completionHandler:(KOAppFriendsTaskCompletionHandler)completionHandler; - -@end - -/*! - @class KOAppFriendContext - @abstract 앱 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOAppFriendContext : KOBaseContext - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+FriendAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+FriendAPI.h deleted file mode 100644 index a3f9641..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+FriendAPI.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+FriendAPI.h - 인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -#import "KOSessionTask.h" -#import "KOFriend.h" -#import "KOFriendContext.h" -#import "KOFriendOperation.h" - -/*! - @abstract Friend API 요청 완료시 호출되는 콜백 핸들러. - @param friends 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOSessionFriendsTaskCompletionHandler)(NSArray *friends, NSError *error); - -/*! -인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. -*/ -@interface KOSessionTask (FriendAPI) - -/*! - @abstract 현재 로그인된 사용자의 카카오 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithContext:(KOFriendContext *)context - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -/*! - @abstract 카카오 친구 목록들의 연산된 결과를 얻어온다. - @param operation 친구 목록 페이징 Operation. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithOperation:(KOFriendOperation *)operation - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+PushAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+PushAPI.h deleted file mode 100644 index 2691889..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+PushAPI.h +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOPushTokenInfo.h" -#import "KakaoPushMessageObject.h" - -@class KakaoPushMessageObject; - -/*! - @header KOSessionTask+PushAPI.h - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ - -/*! - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (PushAPI) - -#pragma mark - Push - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 등록합니다. /v1/user/me 에 해당하는 유저의 ID로 자동 등록하게 됩니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러. expiredAt은 등록한 푸시 토큰의 만료까지 남은 기간을 뜻합니다. 보통 30이 리턴되며 30일 남았음을 뜻합니다. - */ -+ (instancetype)pushRegisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSInteger expiredAt, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 삭제합니다. 로그아웃할 때, 해당 기기에서 Push 알림 끄기 등의 상황에서 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushDeregisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰을 삭제합니다. 서비스 탈퇴 시 같이 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - */ -+ (instancetype)pushDeregisterAllDeviceWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract Push를 전송합니다(테스트용). 해당 API는 테스트 목적으로 만들어졌으며, 해당 기기로 Push를 전송합니다. 실제 다른 사용자들에게 Push를 전송하기 위해서는 AdminKey 방식의 Push 전송 REST API를 사용해야 합니다. - @param pushMsg Push 전송에 필요한 각종 메타 데이터 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushSendMsg:(KakaoPushMessageObject *)pushMsg - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰들에 대한 정보를 얻을 수 있습니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - @param completionHandler Push 토큰의 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)pushGetTokensTaskWithCompletionHandler:(void (^)(NSArray *tokens, NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+StoryAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+StoryAPI.h deleted file mode 100644 index 24d3191..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+StoryAPI.h +++ /dev/null @@ -1,386 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+StoryAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOStoryProfile.h" -#import "KOStoryPostInfo.h" -#import "KOStoryLinkInfo.h" -#import "KOStoryMyStoryInfo.h" -#import "KOStoryMyStoryImageInfo.h" -#import "KOStoryLikeInfo.h" -#import "KOStoryCommentInfo.h" - -/*! - @abstract KOStoryPostPermission 스토리 포스팅 공개 범위 - @constant KOStoryPostPermissionPublic 전체공개 - @constant KOStoryPostPermissionFriend 친구공개 - @constant KOStoryPostPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPostPermission) { - KOStoryPostPermissionPublic = 0, - KOStoryPostPermissionFriend = 1, - KOStoryPostPermissionOnlyMe = 2 -}; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (StoryAPI) - -#pragma mark - KakaoStory - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 로컬 이미지 파일을 카카오스토리에 업로드합니다. - @param image (UIImage *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImage:(UIImage *)image - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImages in v1.0.7"); - -/*! - @abstract 로컬 이미지 파일을 데이타 형식으로 카카오스토리에 업로드합니다. - @param imageData (NSData *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImageData:(NSData *)imageData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImageData in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 얻을 수 있습니다. comments, likes등의 상세정보도 포함됩니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(KOStoryMyStoryInfo *myStory, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 복수개의 내스토리 정보들을 얻을 수 있습니다. 단, comments, likes등의 상세정보는 없으며 이는 내스토리 정보 요청(storyGetMyStoryTaskWithMyStoryId)을 통해 얻을 수 있습니다. - @param lastMyStoryId 복수개의 내스토리 정보들을 얻기 위한 가장 최근의 내스토리 정보(myStory)의 id(포스트 id). 주어진 id의 시간을 기준으로 해당 id를 제외한 약 18개정도의 하위 myStory들이 반환된다. optional. - @param completionHandler 내스토리 정보들을 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoriesTaskWithLastMyStoryId:(NSString *)lastMyStoryId - completionHandler:(void (^)(NSArray *myStories, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 스크랩을 하기 위한 링크 정보를 얻을 수 있습니다. - @param url 스크랩을 하여 링크 정보를 얻기 위한 url. required. - @param completionHandler 스토리 링크 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetLinkInfoTaskWithUrl:(NSString *)url - completionHandler:(void (^)(KOStoryLinkInfo *link, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 로컬 이미지 파일 여러장을 카카오스토리에 업로드합니다. - @param images jpeg을 위한 (UIImage *) 또는 gif를 위한 (NSData *) 형식의 여러장의 이미지 array. 최대 5개까지 허용. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyMultiImagesUploadTaskWithImages:(NSArray *)images - completionHandler:(void (^)(NSArray *imageUrls, NSError *error))completionHandler; - -/*! - @abstract 해당 사용자가 카카오스토리 사용자인지 아닌지를 판별합니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyIsStoryUserTaskWithCompletionHandler:(void (^)(BOOL isStoryUser, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 지울 수 있습니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보에 대한 삭제의 결과를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyDeleteMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+TalkAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+TalkAPI.h deleted file mode 100644 index a849c46..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+TalkAPI.h +++ /dev/null @@ -1,185 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+TalkAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOTalkProfile.h" -#import "KOChatContext.h" - -#import "KOUser.h" -#import "KOChat.h" -#import "KOFriend.h" - -DEPRECATED_ATTRIBUTE -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverType) { - KOTalkMessageReceiverTypeUser = 0, - KOTalkMessageReceiverTypeFriend = 1, - KOTalkMessageReceiverTypeChat = 2 -}; - -/*! - @abstract KOTalkMessageReceiverIDType - @constant KOTalkMessageReceiverIDTypeUUID 메시지 수신 대상의 UUID. KOUserInfo.uuid - @constant KOTalkMessageReceiverIDTypeUser 메시지 수신 대상의 사용자 ID. KOUserInfo.ID - @constant KOTalkMessageReceiverIDTypeChat 메시지 수신 대상 채팅방 ID. KOChat.ID - */ -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverIDType) { - KOTalkMessageReceiverIDTypeUser = 1, - KOTalkMessageReceiverIDTypeChat = 2, - KOTalkMessageReceiverIDTypeUUID = 3, -}; - -@class KMTTemplate; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (TalkAPI) - -#pragma mark - Send Message v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplate:(KMTTemplate *)templateObj - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Send Memo v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Profile - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - - -#pragma mark - Chat List - -/*! - @abstract 카카오톡 채팅방 목록을 가져옵니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param context 채팅방 목록을 불러올 때, 페이징 정보를 처리하기 위한 context. - @param completionHandler 카카오톡 채팅방 목록을 가져와서 처리하는 핸들러. - */ -+ (instancetype)talkChatListTaskWithContext:(KOChatContext *)context - completionHandler:(void (^)(NSArray *chats, NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+TokenAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+TokenAPI.h deleted file mode 100644 index 473c1d9..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+TokenAPI.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAccessTokenInfo.h" - -/*! - @header KOSessionTask+TokenAPI.h - 인증된 access token 정보를 얻어올 수 있습니다. - */ - -/*! - @abstract access token 정보를 얻을 때 사용하는 완료 콜백 핸들러 - @param accessTokenInfo 해당 access token의 정보 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionAccessTokenInfoTaskCompletionHandler)(KOAccessTokenInfo *accessTokenInfo, NSError *error); - -/*! - 인증된 access token 정보를 얻어올 수 있습니다. - */ -@interface KOSessionTask (TokenAPI) - -/*! - @abstract 현재 로그인된 사용자의 AccessTokenInfo 정보를 얻을 수 있습니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)accessTokenInfoTaskWithCompletionHandler:(KOSessionAccessTokenInfoTaskCompletionHandler)completionHandler; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+UserManagementAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+UserManagementAPI.h deleted file mode 100644 index a0794b4..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask+UserManagementAPI.h +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOUser.h" -#import "KOUserMe.h" - -/*! - @header KOSessionTask+UserManagementAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ - -typedef void (^KOSessionTaskUserMeCompletionHandler)(NSError *error, KOUserMe *me); - -/*! - 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (UserManagementAPI) -#pragma mark - UserManagement - -/*! - * @method userMeTaskWithCompletion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithCompletion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - * @method userMeTaskWithPropertyKeys:completion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param propertyKeys 특정 프로퍼티를 지정하여 받고 싶을 경우 요청할 프로퍼티 키 이름 목록. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithPropertyKeys:(NSArray *)propertyKeys completion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - @abstract 현재 로그인된 사용자의 속성(Property)를 설정할 수 있습니다. - @param properties 갱신할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)profileUpdateTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱을 연결합니다(가입). - @param properties 가입시 함께 설정할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)signupTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱 연결을 해제합니다(탈퇴). - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)unlinkTaskWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - - - -+ (instancetype)meTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 카카오계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithPropertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - propertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask.h deleted file mode 100644 index 58a86fc..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOSessionTask.h +++ /dev/null @@ -1,116 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOHTTPMethod.h" - -/*! - @typedef KOSessionTaskCompletionHandler - @abstract 각종 API 요청 완료시 호출되는 콜백 핸들러 - @param result 해당 API 요청의 결과 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionTaskCompletionHandler)(id result, NSError *error); - -@interface KOSessionTask : NSObject - -- (id)initWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/* - @abstract 해당 API 요청을 취소 - */ -- (void)cancel; - -/* - @abstract 해당 API 요청을 취소 - @param error 취소할 때 발생시키고자 하는(원인) NSError. - */ -- (void)cancelWithError:(NSError *)error; - -/* - @abstract API 요청시의 타임아웃을 설정 - @param timeoutInterval second단위의 타임아웃 값(NSTimeInterval). 기본 30초. - */ -+ (void)setRequestTimeoutInterval:(NSTimeInterval)timeoutInterval; -+ (NSTimeInterval)requestTimeoutInterval; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStorageImageInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStorageImageInfo.h deleted file mode 100644 index eefdf1a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStorageImageInfo.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStorageImageInfo.h - Storage API를 통해서 이미지를 업로드 후, 이미지 URL 정보를 얻을 수 있습니다. - */ - -#import - -/*! - @class KOStorageImageInfo - @discussion 저장소에 업로드된 이미지 URL 정보를 얻을 수 있습니다. - */ - -@interface KOStorageImageInfo : NSObject - -/*! - @property originImageURL - @abstract 원본 이미지 URL - */ -@property (nonatomic, readonly) NSString *originImageURL; - -/*! - @property profileImageURL - @abstract 프로필 이미지 URL. 사이즈 640px * 640px - */ -@property (nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailImageURL - @abstract 썸네일 이미지 URL. 사이즈 110px * 110px - */ -@property (nonatomic, readonly) NSString *thumbnailImageURL; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryActorInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryActorInfo.h deleted file mode 100644 index ea595fb..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryActorInfo.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryActorInfo.h - 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryActorInfo - @discussion 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ -@interface KOStoryActorInfo : NSObject - -/*! - @property profileThumbnailUrl - @abstract 작성자의 썸네일에 대한 URL - */ -@property(nonatomic, readonly) NSString *profileThumbnailUrl; - -/*! - @property displayName - @abstract 작성자의 표시되는 이름 - */ -@property(nonatomic, readonly) NSString *displayName; - -- (id)initWithProfileThumbnailUrl:(NSString *)profileThumbnailUrl - displayName:(NSString *)displayName; - -- (id)copyWithZone:(NSZone *)zone; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryCommentInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryCommentInfo.h deleted file mode 100644 index 1893a70..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryCommentInfo.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryCommentInfo.h - 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @class KOStoryCommentInfo - @discussion 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ -@interface KOStoryCommentInfo : NSObject - -/*! - @property text - @abstract 댓글의 텍스트 내용 - */ -@property(nonatomic, readonly) NSString *text; - -/*! - @property writer - @abstract 댓글의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *writer; - -- (id)initWithText:(NSString *)text - writer:(KOStoryActorInfo *)writer; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryLikeInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryLikeInfo.h deleted file mode 100644 index ecce523..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryLikeInfo.h +++ /dev/null @@ -1,66 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLikeInfo.h - @abstract 카카오스토리의 내스토리 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @abstract KOStoryEmotion 느낌(감정표현)에 대한 정의. - @constant KOStoryEmotionUnknown 알수 없는 형식 - @constant KOStoryEmotionLike 좋아요 - @constant KOStoryEmotionCool 멋져요 - @constant KOStoryEmotionHappy 기뻐요 - @constant KOStoryEmotionSad 슬퍼요 - @constant KOStoryEmotionCheerUp 힘내요 - */ -typedef NS_ENUM(NSInteger, KOStoryEmotion) { - KOStoryEmotionUnknown = 0, - KOStoryEmotionLike = 1, - KOStoryEmotionCool = 2, - KOStoryEmotionHappy = 3, - KOStoryEmotionSad = 4, - KOStoryEmotionCheerUp = 5 -}; - -/*! - @class KOStoryLikeInfo - @abstract 카카오스토리의 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ -@interface KOStoryLikeInfo : NSObject - -/*! - @property emotion - @abstract 느낌에 대한 정보. 예) 좋아요, 멋져요, 기뻐요, 슬퍼요, 힘내요 - */ -@property(nonatomic, readonly) KOStoryEmotion emotion; - -/*! - @property actor - @abstract 느낌의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *actor; - -- (id)initWithEmotion:(KOStoryEmotion)emotion - actor:(KOStoryActorInfo *)actor; - -- (NSString *)convertEmotionToString:(KOStoryEmotion)emotion; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryLinkInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryLinkInfo.h deleted file mode 100644 index 5f9c97d..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryLinkInfo.h +++ /dev/null @@ -1,88 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLinkInfo.h - 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryLinkInfo - @discussion 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -@interface KOStoryLinkInfo : NSObject - -/*! - @property url - @abstract 스크랩 한 주소의 URL. shorten URL의 경우 resolution한 실제 URL - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property requestedUrl - @abstract 요청시의 URL 원본. resolution을 하기 전의 URL - */ -@property(nonatomic, readonly) NSString *requestedUrl; - -/*! - @property host - @abstract 스크랩한 host - */ -@property(nonatomic, readonly) NSString *host; - -/*! - @property title - @abstract 해당 웹 페이지의 제목 - */ -@property(nonatomic, readonly) NSString *title; - -/*! - @property image - @abstract 해당 웹 페이지의 대표 이미지 주소의 url array. 최대 3개. - */ -@property(nonatomic, readonly) NSArray *image; - -/*! - @property desc - @abstract 해당 웹 페이지의 설명 - */ -@property(nonatomic, readonly) NSString *desc; - -/*! - @property section - @abstract 해당 웹 페이지의 섹션 정보 - */ -@property(nonatomic, readonly) NSString *section; - -/*! - @property type - @abstract 해당 웹 페이지의 콘텐츠 타입. 예) video, music, book, article, profile, website 등. - */ -@property(nonatomic, readonly) NSString *type; - -- (id)initWithUrl:(NSString *)url - requestedUrl:(NSString *)requestedUrl - host:(NSString *)host - title:(NSString *)title - image:(NSArray *)image - desc:(NSString *)desc - section:(NSString *)section - type:(NSString *)type; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryMyStoryImageInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryMyStoryImageInfo.h deleted file mode 100644 index 6dd280e..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryMyStoryImageInfo.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryImageInfo.h - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryMyStoryImageInfo - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ -@interface KOStoryMyStoryImageInfo : NSObject - -/*! - @property original - @abstract 원본 이미지의 url - */ -@property(nonatomic, readonly) NSString *original; - -/*! - @property xlarge - @abstract xlarge 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *xlarge; - -/*! - @property large - @abstract large 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *large; - -/*! - @property medium - @abstract medium 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *medium; - -/*! - @property small - @abstract small 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *small; - - -- (id)initWithOriginal:(NSString *)original - xlarge:(NSString *)xlarge - large:(NSString *)large - medium:(NSString *)medium - small:(NSString *)small; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryMyStoryInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryMyStoryInfo.h deleted file mode 100644 index f4a2386..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryMyStoryInfo.h +++ /dev/null @@ -1,146 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryInfo.h - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -#import - -/*! - @abstract KOStoryMediaType 스토리의 미디어 형식 - @constant KOStoryMediaTypeUnknown 알수 없는 미디어 형식 - @constant KOStoryMediaTypeNotSupported 지원되지 않는 미디어 형식 - @constant KOStoryMediaTypeNote 텍스트 같은 노트 형식 - @constant KOStoryMediaTypePhoto 사진 이미지 같은 포토 형식 - */ -typedef NS_ENUM(NSInteger, KOStoryMediaType) { - KOStoryMediaTypeUnknown = 0, - KOStoryMediaTypeNotSupported = 1, - KOStoryMediaTypeNote = 2, - KOStoryMediaTypePhoto = 3 -}; - -/*! - @abstract KOStoryPermission 스토리의 공개 범위 - @constant KOStoryPermissionUnknown 알수 없는 공개 범위 - @constant KOStoryPermissionPublic 전체공개 - @constant KOStoryPermissionFriend 친구공개 - @constant KOStoryPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPermission) { - KOStoryPermissionUnknown = 0, - KOStoryPermissionPublic = 1, - KOStoryPermissionFriend = 2, - KOStoryPermissionOnlyMe = 3 -}; - -@class KOStoryMyStoryImageInfo; -@class KOStoryCommentInfo; -@class KOStoryLikeInfo; - -/*! - @class KOStoryMyStoryInfo - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -@interface KOStoryMyStoryInfo : NSObject - -/*! - @property ID - @abstract 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -/*! - @property content - @abstract 내스토리 정보의 내용 - */ -@property(nonatomic, readonly) NSString *content; - -/*! - @property mediaType - @abstract 내스토리 정보의 미디어타입. 예) NOTE, PHOTO, LINK, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryMediaType mediaType; - -/*! - @property createdAt - @abstract 내스토리 정보의 생성시간. RFC3339를 따름. - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property media - @abstract 내스토리 정보의 미디어타입이 PHOTO일 경우 이미지 내용의 array. KOStoryMyStoryImageInfo 객체의 array. - */ -@property(nonatomic, readonly) NSArray *media; - -/*! - @property url - @abstract 내스토리 정보의 url - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property commentCount - @abstract 내스토리 정보의 comment 숫자 - */ -@property(nonatomic, readonly) NSNumber *commentCount; - -/*! - @property likeCount - @abstract 내스토리 정보의 like 숫자 - */ -@property(nonatomic, readonly) NSNumber *likeCount; - -/*! - @property comments - @abstract 댓글 정보들을 담고 있는 array. KOStoryCommentInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *comments; - -/*! - @property likes - @abstract 좋아요 등 느낌(감성표현)에 대한 정보들을 담고 있는 array. KOStoryLikeInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *likes; - -/*! - @property permission - @abstract 내스토리 정보의 공개 범위. 예) PUBLIC, FRIEND, ONLY_ME, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryPermission permission; - - -- (id)initWithID:(NSString *)myStoryID - content:(NSString *)content - mediaType:(KOStoryMediaType)mediaType - createdAt:(NSString *)createdAt - media:(NSArray *)media - url:(NSString *)url - commentCount:(NSNumber *)commentCount - likeCount:(NSNumber *)likeCount - comments:(NSArray *)comments - likes:(NSArray *)likes - permission:(KOStoryPermission)permission; - -- (NSString *)convertMediaTypeToString:(KOStoryMediaType)mediaType; - -- (NSString *)convertPermissionToString:(KOStoryPermission)permission; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryPostInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryPostInfo.h deleted file mode 100644 index 4300005..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryPostInfo.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryPostInfo.h - 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryPostInfo - @discussion 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -@interface KOStoryPostInfo : NSObject - -/*! - @property ID - @abstract 포스팅 한 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -- (id)initWithID:(NSString *)myStoryID; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryProfile.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryProfile.h deleted file mode 100644 index 33b5fb5..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOStoryProfile.h +++ /dev/null @@ -1,86 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryProfile.h - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @abstract KOStoryProfileBirthdayType 스토리 프로필의 생일 타입 - @constant KOStoryProfileBirthdayTypeSolar 양력 - @constant KOStoryProfileBirthdayTypeLunar 음력 - */ -typedef NS_ENUM(NSInteger, KOStoryProfileBirthdayType) { - KOStoryProfileBirthdayTypeSolar = 0, - KOStoryProfileBirthdayTypeLunar = 1 -}; - -/*! - @class KOStoryProfile - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -@interface KOStoryProfile : NSObject - -/*! - * @property nickName - * @abstract 카카오스토리 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; -/*! - * @property profileImageURL - * @abstract 카카오스토리 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; -/*! - * @property thumbnailURL - * @abstract 카카오스토리 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; -/*! - * @property bgImageURL - * @abstract 카카오스토리 배경이미지 URL - */ -@property(nonatomic, readonly) NSString *bgImageURL; - -/*! - @property birthday - @abstract 생일. MMdd - */ -@property(nonatomic, readonly) NSString *birthday; - -/*! - @property birthdayType - @abstract 생일 타입. SOLAR 또는 LUNAR - */ -@property(nonatomic, readonly) KOStoryProfileBirthdayType birthdayType; - -/*! - @property permalink - @abstract 내 스토리를 방문할 수 있는 웹 page의 URL - */ -@property(nonatomic, readonly) NSString *permalink; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - bgImageURL:(NSString *)bgImageURL - birthday:(NSString *)birthday - birthdayType:(KOStoryProfileBirthdayType)birthdayType - permalink:(NSString *)permalink; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOTalkMessageSending.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOTalkMessageSending.h deleted file mode 100644 index 550fdbe..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOTalkMessageSending.h +++ /dev/null @@ -1,120 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkMessageSending.h - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜입니다. - */ - -#ifndef kakao_open_sdk_ios_KOTalkMessageSending_h -#define kakao_open_sdk_ios_KOTalkMessageSending_h - -#import "KOSessionTask.h" - -@class KMTTemplate; - -/*! - @protocol KOTalkMessageSending - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@protocol KOTalkMessageSending - -@required - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - -@optional - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -@end - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOTalkProfile.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOTalkProfile.h deleted file mode 100644 index 351157b..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOTalkProfile.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkProfile.h - 카카오톡 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @class KOTalkProfile - @discussion 카카오톡 사용자 정보를 담고 있는 구조체. - */ -@interface KOTalkProfile : NSObject - -/*! - @property nickName - @abstract 카카오톡 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; - -/*! - @property profileImageURL - @abstract 카카오톡 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailURL - @abstract 카카오톡 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property countryISO - @abstract 카카오톡 국가 코드 - */ -@property(nonatomic, readonly) NSString *countryISO; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - countryISO:(NSString *)countryISO; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOToken.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOToken.h deleted file mode 100644 index 1b86847..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOToken.h +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOToken.h - 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/*! - * @class KOToken - * @abstract 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ -@interface KOToken : NSObject - -/*! - * @property accessToken - * @abstract 카카오 API를 이용하여 특정 사용자의 리소스에 접근하기 위한 OAuth 토큰. - */ -@property (readonly) NSString *accessToken; -/*! - * @property refreshToken - * @abstract accessToken을 갱신하기 위한 토큰. - */ -@property (readonly) NSString *refreshToken; -/*! - * @property accessTokenExpiresAt - * @abstract accessToken이 만료되는 시각. 네이티브 앱키로 요청한 accessToken 기본 만료시간: 12시간. - */ -@property (readonly) NSDate *accessTokenExpiresAt; -/*! - * @property refreshTokenExpiresAt - * @abstract refreshToken이 만료되는 시각. 네이티브 앱키로 요청한 refreshToken 기본 만료시간: 30일. - * @discussion 이 속성은 1.8.0 버전부터 제공되고 있습니다.
- * 만약 앱 업데이트 전에 구버전 SDK로 발급 받았던 토큰이 남아 있어서 KOSession.token을 통해 접근하는 경우 새로 로그인하거나 refreshToken이 갱신되기 전까지 값이 없을 수 있습니다. - * 값이 없는 경우는 구버전 토큰으로 가정하여 갱신 가능한 상태로 판단합니다.(canRefresh = YES) 그러나 실제로 서버로 갱신을 요청했을 때 리프레시 토큰이 만료되었다면 갱신에 실패합니다. - * @seealso canRefresh - */ -@property (readonly, nullable) NSDate *refreshTokenExpiresAt; -/*! - * @property scopes - * @abstract 현재 로그인된 사용자가 동의한 scope 목록 - */ -@property (readonly) NSArray *scopes; - -/*! - * @method canRefresh - * @abstract refresh token이 사용 가능한 상태인지 여부. 이 값이 YES이면 access token을 계속 갱신하여 사용 가능함. - * @discussion 클라이언트가 가지고 있는 access token 및 refresh token의 만료 시간은 서버와 정확히 일치하지 않을 수 있으며 - * 토큰 발급을 위해 로그인한 카카오계정 상태에 변동이 있는 경우 당시의 카카오 정책에 따라 일괄적으로 만료될 수 있습니다. - * 예를 들어 카카오계정의 비밀번호가 변경되면 현재 발급되어 있는 모든 토큰이 만료됩니다. - * 따라서 실제 토큰 유효성 여부는 토큰 갱신 등을 서버로 요청해야만 정확한 확인이 가능하며 클라이언트의 만료시간을 보고 토큰이 유효하다고 판단하는 것은 권장하지 않습니다. - * @return refreshToken이 있고 현재 시간이 refreshTokenExpiresAt보다 과거인 경우 YES
- * refreshToken이 있고 refreshTokenExpiresAt가 nil인 경우(구버전 SDK에서 발급받은 토큰) YES
- * 아니면 NO - * @seealso refreshTokenExpiresAt - */ -- (BOOL)canRefresh; -/*! - * @method remainingExpireTime - * @abstract accessTokenExpiresAt 까지 남은 시간 - * @return 음수이면 accessToken이 만료되었음을 의미함 - * @seealso - */ -- (NSTimeInterval)remainingExpireTime; - -- (nullable instancetype)initWithAccessToken:(NSString *)accessToken - refeshToken:(NSString *)refreshToken - accessTokenExpiresAt:(NSDate *)accessTokenExpiresAt - refreshTokenExpiresAt:(nullable NSDate *)refreshTokenExpiresAt - scopes:(nullable NSArray *)scopes; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUser.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUser.h deleted file mode 100644 index 04f57aa..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUser.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUser.h - 사용자 정보를 담고 있는 구조체. - */ -#import -#import "KOUserInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -DEPRECATED_MSG_ATTRIBUTE("이 클래스는 v1 user/me용 클래스입니다. v2가 적용된 KOSessionTask.userMeTask 메소드와 KOUserMe 클래스를 사용해주세요.") -@interface KOUser : KOUserInfo - -@property(nonatomic, readonly, nullable) NSString *email; -@property(nonatomic, readonly, getter=isVerifiedEmail) BOOL verifiedEmail; -@property(nonatomic, readonly, nullable) NSDictionary *properties; - -- (id)propertyForKey:(NSString *)key; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end - -/*! - 프로퍼티 키 이름 - */ -extern NSString *const KOUserNicknamePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserProfileImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserThumbnailImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserEmailPropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserIsVerifiedEmailPropertyKey DEPRECATED_ATTRIBUTE; - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUserInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUserInfo.h deleted file mode 100644 index e31634f..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUserInfo.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -extern NSString const *EXTRA_KEY_SERVICE_USER_ID; -extern NSString const *EXTRA_KEY_INVITE_MESSAGE_REMAINING_COUNT; -extern NSString const *EXTRA_KEY_GROUP_CHAT_MESSAGE_REMAINING_COUNT; - -@interface KOUserInfo : NSObject - -- (instancetype)initWithDictionary:(NSDictionary *)dictionary; - -/* - @property ID - @abstract 가입자에 대한 앱내 고유한 사용자 ID. 해당 사용자가 앱 연결 해제(탈퇴)를 하지 않는 한 변하지 않는 고유한 식별자입니다. 미가입자의 경우 해당 정보가 존재하지 않습니다. - */ -@property (nonatomic, readonly) NSNumber *ID; - - -/* - @property uuid - @abstract 가입 여부와 관계없는 앱내 고유한 ID. 카카오 서비스의 회원임을 앱내에서 식별 할 수 있지만, 사용자의 계정 상태에 따라 이 정보는 바뀔 수 있습니다. 앱내의 사용자 식별자로 저장 사용되는 것은 권장하지 않습니다. 앱의 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSString *uuid; - -/* - @property extras - @abstract User extra 정보. 앱의 특정 카테고리나 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSDictionary *extras; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUserMe.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUserMe.h deleted file mode 100644 index bb945f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUserMe.h +++ /dev/null @@ -1,321 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - * @header KOUserMe.h - * @abstract 사용자 정보 요청(user/me) API로 얻어오는 사용자 정보 관련 클래스 - */ - -#import -#import "KOTalkMessageSending.h" -#import "KOSession.h" - -NS_ASSUME_NONNULL_BEGIN - -@class KOUserMeAccount; - -/*! - * @class KOUserMe - * @abstract 사용자 정보를 나타내는 최상위 클래스. ID, 카카오계정 정보, 프로퍼티 등으로 구성됩니다. - */ -@interface KOUserMe : NSObject - -/*! - * @property hasSignedUp - * @abstract 현재 로그인한 사용자가 앱에 연결(signup)되어 있는지 여부 - * @discussion 사용자관리 설정에서 자동연결 옵션을 off한 앱에서만 사용되는 값입니다. 자동연결의 기본값은 on이며 이 경우 값이 null로 반환되고 이미 연결되어 있음을 의미합니다. - */ -@property (readonly) KOOptionalBoolean hasSignedUp; -/*! - * @property ID - * @abstract 사용자의 고유 아이디 - * @discussion 사용자 ID는 앱 연결(signup)을 기준으로 발급됩니다.
- * 1. 최초 로그인했을 때 발급
- * 2. 자동연결을 off한 상태로 signup 호출에 성공했을 때 발급
- * 3. 연결해제(unlink) 이후 1,2번 작업을 다시 수행하면 다른 값으로 재발급 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property account - * @abstract 로그인한 카카오계정 정보. 이메일 등 - * @seealso KOUserMeAccount - */ -@property (readonly, nullable) KOUserMeAccount *account; -/*! - * @property nickname - * @abstract 사용자의 닉네임 - * @discussion properties에서 "nickname" 값을 가져옵니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 닉네임으로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property profileImageURL - * @abstract 원본 프로필 이미지 URL - * @discussion properties에 있는 "profile_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 프로필 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *profileImageURL; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - * @discussion properties에 있는 "thumbnail_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 썸네일 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; -/*! - * @property properties - * @abstract 앱 별로 제공되는 사용자 정보 데이터베이스 - * @discussion 사용자에 대해 추가 정보를 저장할 수 있도록 데이터베이스를 제공합니다.
- * 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 있는 닉네임과 프로필 이미지 정보를 앱 연결 시점에 복사하여 초기값으로 제공되며 이후 해당 프로필 정보와 동기화되지 않습니다.
- * 1. nickname : 카카오톡 또는 카카오스토리에 설정된 닉네임
- * 2. profile_image : 프로필 이미지 URL 문자열
- * 3. thumbnail_image : 썸네일 사이즈의 프로필 이미지 URL 문자열 - */ -@property (readonly, nullable) NSDictionary *properties; -/*! - * @property forPartner - * @abstract 제휴를 통해 권한이 부여된 특정 앱에서 사용 - */ -@property (readonly, nullable) NSDictionary *forPartner; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)meWithDictionary:(NSDictionary *)dictionary; - -@end - - - -/*! - * @abstract KOUserAgeRange 연령대 정보 - * @constant KOUserAgeRangeNull 연령대 값이 없음 - * @constant KOUserAgeRangeType15 15세~19세 - * @constant KOUserAgeRangeType20 20세~29세 - * @constant KOUserAgeRangeType30 30세~39세 - * @constant KOUserAgeRangeType40 40세~49세 - * @constant KOUserAgeRangeType50 50세~59세 - * @constant KOUserAgeRangeType60 60세~69세 - * @constant KOUserAgeRangeType70 70세~79세 - * @constant KOUserAgeRangeType80 80세~89세 - * @constant KOUserAgeRangeType90 90세 이상 - */ -typedef NS_ENUM(NSUInteger, KOUserAgeRange) { - KOUserAgeRangeNull, - KOUserAgeRangeType15, - KOUserAgeRangeType20, - KOUserAgeRangeType30, - KOUserAgeRangeType40, - KOUserAgeRangeType50, - KOUserAgeRangeType60, - KOUserAgeRangeType70, - KOUserAgeRangeType80, - KOUserAgeRangeType90, -}; - -/*! - * @abstract KOUserGender 성별 정보 - * @constant KOUserGenderNull 성별 값이 없음 - * @constant KOUserGenderMale 남자 - * @constant KOUserGenderFemale 여자 - */ -typedef NS_ENUM(NSUInteger, KOUserGender) { - KOUserGenderNull, - KOUserGenderMale, - KOUserGenderFemale, -}; - -/*! - * @class KOUserMeAccount - * @abstract 카카오계정 정보를 나타내는 클래스 - * @discussion 사용자의 동의를 받지 않은 개인정보는 값이 반환되지 않을 수 있습니다. - * 동의를 받지 않아도 값의 존재여부는 has- 프로퍼티로 확인할 수 있습니다.
- * 값이 내려오지 않은 정보의 has- 프로퍼티가 true인 경우 사용자 동의가 필요한 상황임을 의미하며 KOSession의 updateScopes 메소드를 이용하여 동의를 받을 수 있습니다. 동의를 받은 후 user/me를 다시 호출하면 해당 값이 반환될 것입니다.
- * has- 프로퍼티가 false라면 현재 로그인한 계정에 해당 정보가 등록되지 않은 상태이며 사용자의 동의도 요청할 수 없습니다. - */ -@interface KOUserMeAccount : NSObject - -/*! - * @property email - * @abstract 카카오계정에 등록한 이메일 정보 - * @discussion 7.2.0 이상 카카오톡을 설치하고 전화번호 인증을 완료하면 이메일이 없는 카카오계정이 생성됩니다. 해당 카카오계정으로 간편로그인이나 전화번호 로그인을 할 경우 이메일 값이 nil로 반환됩니다.
- * 이메일이 있는 카카오계정이라도 사용자로부터 이메일 제공에 대한 동의를 받지 않으면 값이 nil로 반환됩니다. 등록된 이메일이 존재하지만 동의를 받지 않은 경우 hasEmail값이 true이고 사용자에게 이메일 제공에 대한 동의를 요청할 수 있습니다. - * @seealso hasEmail - * @seealso isEmailVerified - */ -@property (readonly, nullable) NSString *email; -/*! - * @property isEmailVerified - * @abstract 카카오계정에 이메일 등록 시 이메일 인증을 받았는지 여부 - * @seealso email - */ -@property (readonly) KOOptionalBoolean isEmailVerified; -/*! - * @property hasEmail - * @abstract 이메일 보유 여부 - * @discussion email이 nil이고 hasEmail이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 이메일 제공에 대한 동의를 받을 수 있습니다.
- * 이메일 제공동의 scope ID는 "account_email"입니다. - * @seealso email - */ -@property (readonly) KOOptionalBoolean hasEmail; - - - -/*! - * @property isKakaotalkUser - * @abstract 카카오톡 서비스 가입 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * 카카오톡 카카오계정 설정에 연결되어 있는 카카오계정은 true가 반환됩니다.
- * 사용자에게 동의를 받지 않았을 경우 null이 반환되며 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 카카오톡 가입 여부에 대한 동의를 받을 수 있습니다.
- * 카카오톡 서비스 가입 여부 scope ID는 "is_kakaotalk_user"입니다. - */ -@property (readonly) KOOptionalBoolean isKakaotalkUser; - - - -/*! - * @property phoneNumber - * @abstract 카카오톡에서 인증한 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다.
- * 카카오톡에 연결되어 있지 않은 카카오계정은 전화번호가 존재하지 않습니다. - * @seealso hasPhoneNumber - */ -@property (readonly, nullable) NSString *phoneNumber; -/*! - * @property hasPhoneNumber - * @abstract 전화번호 보유 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * phoneNumber가 nil이고 hasPhoneNumber가 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 전화번호 제공에 대한 동의를 받을 수 있습니다.
- * 전화번호 제공동의 scope ID는 "phone_number"입니다. - * @seealso phoneNumber - */ -@property (readonly) KOOptionalBoolean hasPhoneNumber; - - - -/*! - * @property displayID - * @abstract 카카오계정의 대표 정보. 이메일 또는 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 계정 상태에 이상이 생긴 경우 텍스트 일부가 마스킹 처리되어 반환됩니다. - * @seealso email - * @seealso phoneNumber - */ -@property (readonly, nullable) NSString *displayID; - - - -/*! - * @property ageRange - * @abstract 사용자의 연령대 정보 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasAgeRange - */ -@property (readonly) KOUserAgeRange ageRange; -/*! - * @property hasAgeRange - * @abstract 카카오계정의 연령대 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 연령대 제공에 대한 동의를 받을 수 있습니다.
- * 연령대 제공동의 scope ID는 "age_range"입니다. - * @seealso ageRange - */ -@property (readonly) KOOptionalBoolean hasAgeRange; -/*! - * @property birthday - * @abstract 사용자의 생일 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다. (MMDD형식)
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasBirthday - */ -@property (readonly, nullable) NSString *birthday; -/*! - * @property hasBirthday - * @abstract 카카오계정의 생일 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 생일 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "birthday"입니다. - * @seealso birthday - */ -@property (readonly) KOOptionalBoolean hasBirthday; -/*! - * @property gender - * @abstract 사용자 카카오계정의 성별 - * @discussion 카카오계정에 등록된 사용자의 성별 정보가 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasGender - */ -@property (readonly) KOUserGender gender; -/*! - * @property hasGender - * @abstract 카카오계정의 성별 보유 여부 - * @discussion gender가 nil이고 hasGender이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 성별 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "gender"입니다. - * @seealso gender - */ -@property (readonly) KOOptionalBoolean hasGender; - -/*! - * @method needsScopeAccountEmail - * @abstract 이메일을 가져오기 위한 사용자 동의 "account_email" 필요 여부 - * @seealso email - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAccountEmail; -/*! - * @method needsScopePhoneNumber - * @abstract 전화번호를 가져오기 위한 사용자 동의 "phone_number" 필요 여부 - * @seealso phoneNumber - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopePhoneNumber; -/*! - * @method needsScopeAgeRange - * @abstract 연령대 정보를 가져오기 위한 사용자 동의 "age_range" 필요 여부 - * @seealso ageRange - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAgeRange; -/*! - * @method needsScopeBirthday - * @abstract 생일을 가져오기 위한 사용자 동의 "birthday" 필요 여부 - * @seealso birthday - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeBirthday; -/*! - * @method needsScopeGender - * @abstract 성별을 가져오기 위한 사용자 동의 "gender" 필요 여부 - * @seealso gender - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeGender; -/*! - * @method needsScopeIsKakaotalkUser - * @abstract 카카오톡 가입 여부를 가져오기 위한 사용자 동의 "is_kakaotalk_user" 필요 여부 - * @seealso isKakaotalkUser - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeIsKakaotalkUser; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)accountWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUtils.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUtils.h deleted file mode 100644 index 9ba8e48..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KOUtils.h +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUtils - 카카오 SDK Util 클래스. - */ - -#import -#import - -@interface KOUtils : NSObject - -/* - @abstract 카카오링크 콜백 URL 정보를 얻는다. - */ -+ (NSString *)kakaoLinkCallbackURL DEPRECATED_ATTRIBUTE; - -/* - @abstract SDK 기본 헤더 정보를 얻는다. - */ -+ (NSString *)kaHeader; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoOpenSDK.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoOpenSDK.h deleted file mode 100644 index 857e34f..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoOpenSDK.h +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright 2015-2017 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import -#import -#import -#import -#import - -#import -#import -#import -#import -#import -#import -#import -#import - -#define KAKAO_SDK_IOS_VERSION_STRING @"1.8.2" diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessageObject.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessageObject.h deleted file mode 100644 index 16f8fb9..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessageObject.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessageObject.h - Push 전송 시 보낼 메시지 객체 - */ -#import "KakaoPushMessagePropertyForApns.h" -#import "KakaoPushMessagePropertyForGcm.h" - -/*! - @class KakaoPushMessageObject - @discussion Push 전송 시 보낼 메시지 객체 - */ -@interface KakaoPushMessageObject : NSObject - -/*! - * @property forApns - * @abstract iOS 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForApns *forApns; - -/*! - * @property forGcm - * @abstract Android 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForGcm *forGcm; - -- (id)initWithApnsProperty:(KakaoPushMessagePropertyForApns *)forApns - gcmProperty:(KakaoPushMessagePropertyForGcm *)forGcm; - -- (NSDictionary *)asDictionary; - -@end - diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessagePropertyForApns.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessagePropertyForApns.h deleted file mode 100644 index 95992f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessagePropertyForApns.h +++ /dev/null @@ -1,119 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForApns.h - Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForApns - @discussion Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ -@interface KakaoPushMessagePropertyForApns : NSObject - -/*! - * @property message - * @abstract 알림 센터에 표시할 메시지. aps의 alert에 해당 됨. NSString 혹은 NSDictionary가 들어감. 참조: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html - */ -@property(nonatomic, readonly) NSObject *message; - -/*! - * @property topic - * @abstract VoIP(Voice over Internet Protocol)를 사용할 경우에 "voip"로 설정 - */ -@property(nonatomic, copy, nullable) NSString *topic; - -/*! - * @property mutableContent - * @abstract 기기에 보여지기 전, payload를 변경하고자 할 때 사용 - */ -@property(nonatomic, assign) BOOL mutableContent; - -/*! - * @property expiration - * @abstract 푸시 수신이 불가능한 경우, 해당 기간(단위: 초)동안 재시도 함 - */ -@property(nonatomic, assign) NSUInteger expiration; - -/*! - * @property collapse - * @abstract 푸시 메시지 구분자. 같은 collapse 을 가지는 푸시가 여러개 쌓여있다면 하나의 푸시로 단말에게 전송됨 - */ -@property(nonatomic, copy, nullable) NSString *collapse; - -/*! - * @property badgeCount - * @abstract 앱 배치에 표시할 숫자. 음수일 경우 무시됨, 기본 값 -1 - */ -@property(nonatomic, assign) NSInteger badgeCount; - -/*! - * @property sound - * @abstract 푸시 수신 시 재생할 알림음. "default"를 입력하거나 앱에 해당 알림음 파일이 없으면 기본 알림음 재생됨 - */ -@property(nonatomic, copy, nullable) NSString *sound; - -/*! - * @property pushAlert - * @abstract false(NO)일 경우 음소거, 알림센터에 뜨지 않는 상태로 Push 전송. 푸시 음소거 및 알림센터에 띄우지는 않되, badge 수는 바꾸고 싶을 때 사용. 기본 값 true(YES) - */ -@property(nonatomic, assign) BOOL pushAlert; - -/*! - * @property contentAvailable - * @abstract 백그라운드 업데이트 알림(Silent Notification)을 사용하고 싶을 때 설정 - */ -@property(nonatomic, assign) BOOL contentAvailable; - -/*! - * @property category - * @abstract 알림의 유형을 나타내는 문자열. aps의 category-identifier - */ -@property(nonatomic, copy, nullable) NSString *category; - -/*! - * @property customField - * @abstract 푸시 알림을 통해 앱 실행 시 같이 넘길 파라미터들 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - * @property returnUrl - * @abstract 푸시 알림의 전송 실패("BadDeviceToken", "Unregistered", "DeviceTokenNotForTopic")에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageString:(NSString *)message - customField:(nullable NSDictionary *)customField; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageDictionary:(NSDictionary *)message - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessagePropertyForGcm.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessagePropertyForGcm.h deleted file mode 100644 index dc2cc32..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/KakaoPushMessagePropertyForGcm.h +++ /dev/null @@ -1,85 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForGcm.h - Push 전송 시 보낼 메시지 객체 (Android 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForGcm - @abstract Push 전송 시 보낼 메시지 객체 (Android 파트) - */ -@interface KakaoPushMessagePropertyForGcm : NSObject - -/*! - @property collapse - @abstract 푸시 메시지 구분자. 같은 값을 가지는 푸시 알림이 여러 개일 때 마지막 하나만 사용자 기기로 전송 - */ -@property(nonatomic, readonly) NSString *collapse; - -/*! - @property timeToLive - @abstract GCM에 저장될 미전송메시지 보관주기 (단위:초), 0 또는 음수를 입력할 경우 무시됨, 기본값 4주 - */ -@property(nonatomic, assign) NSInteger timeToLive; - -/*! - @property dryRun - @abstract 테스트를 위해 사용. 실제 단말에 전송되지 않는다 - */ -@property(nonatomic, assign) BOOL dryRun; - -/*! - @property priority - @abstract 단말이 도즈모드 상태에서도 푸시를 받을 수 있도록 한다. "high" 또는 "normal", 서버 기본값 "normal" - */ -@property(nonatomic, copy) NSString *priority; - -/*! - @property customField - @abstract 메시지 외 앱에 부가적인 정보를 전달하고자 할 때 사용. APNS와 다르게 푸시 알림 한 건당 custom_field 전체 길이가 4KB까지 가능 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - @property notification - @abstract 사용자에게 표시되는 사전 정의된 알림 페이로드의 키-값 쌍을 지정. 사전 정의된 키는 https://firebase.google.com/docs/cloud-messaging/http-server-ref '표 2a/2b/2c' 참고 - */ -@property(nonatomic, copy) NSDictionary *notification; - -/*! - @property returnUrl - @abstract 푸시 알림의 전송 실패에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithCollapse:(nullable NSString *)collapse - delayWhileIdle:(BOOL)delayWhileIdle - returnUrl:(nullable NSString *)returnUrl - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - - -@property(nonatomic, assign) BOOL delayWhileIdle DEPRECATED_MSG_ATTRIBUTE("The value of this property will be ignored."); - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Headers/NSDictionary+SafeValue.h b/ios/Frameworks/KakaoOpenSDK.framework/Headers/NSDictionary+SafeValue.h deleted file mode 100644 index 551ac80..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Headers/NSDictionary+SafeValue.h +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOSession.h" - -@interface NSDictionary (SafeValue) - -- (id)safeValueForKey:(NSString *)key; -- (id)safeObjectForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key floatingPoint:(BOOL)floatingPoint; -- (NSDictionary *)safeValueDictionary; -- (KOOptionalBoolean)optionalBooleanForKey:(NSString *)key; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/KakaoOpenSDK b/ios/Frameworks/KakaoOpenSDK.framework/KakaoOpenSDK deleted file mode 100644 index 44d5329..0000000 Binary files a/ios/Frameworks/KakaoOpenSDK.framework/KakaoOpenSDK and /dev/null differ diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Resources/KakaoOpenSDK b/ios/Frameworks/KakaoOpenSDK.framework/Resources/KakaoOpenSDK deleted file mode 100644 index 44d5329..0000000 Binary files a/ios/Frameworks/KakaoOpenSDK.framework/Resources/KakaoOpenSDK and /dev/null differ diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAccessTokenInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAccessTokenInfo.h deleted file mode 100644 index 30c8ad2..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAccessTokenInfo.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAccessTokenInfo.h - access token의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOAccessTokenInfo - @discussion access token의 정보를 담고 있는 구조체. - */ -@interface KOAccessTokenInfo : NSObject - -/*! - @property ID - @abstract 해당 access token에 해당되는 사용자의 ID - */ -@property(nonatomic, readonly) NSNumber *ID; - -/*! - @property expiresInMillis - @abstract 해당 access token의 남은 만료시간. 0보다 큰 milli-second가 반환됨. - */ -@property(nonatomic, readonly) NSNumber *expiresInMillis; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAgeAuthQueryStringBuilder.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAgeAuthQueryStringBuilder.h deleted file mode 100644 index 041a9af..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAgeAuthQueryStringBuilder.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAgeAuthQueryStringBuilder.h - @abstract 연령인증시 필요한 파라미터입니다. - */ - -#ifndef KOAgeAuthQueryStringBuilder_h -#define KOAgeAuthQueryStringBuilder_h - -#import "KOSession.h" - -/*! - @class KOAgeAuthQueryStringBuilder - @abstract 연령인증시 필요한 파라미터를 Builder pattern 을 이용해서 세팅한다. - */ -@interface KOAgeAuthQueryStringBuilder : NSObject - -/*! - @property level - @abstract 연령 인증 레벨 - */ -@property (nonatomic) KOAgeAuthLevel level; - -/*! - @property limit - @abstract 연령 인증 제한 나이 - */ -@property (nonatomic) KOAgeAuthLimit limit; - -/*! - @property isWesternAge - @abstract 나이의 기준이 한국식인지 외국식인지의 여부(optional, default false) - */ -@property (nonatomic) BOOL isWesternAge; - -/*! - @property isSkipTerm - @abstract 동의하기 안내화면 skip 여부(optional, default false) - */ -@property (nonatomic) BOOL isSkipTerm; // 동의하기 안내화면 skip 여부. - -/*! - @property authFrom - @abstract 서비스 이름(optional, client_id or app_id or service_name) - */ -@property (nonatomic, copy) NSString *authFrom; - -- (NSString *) build; - -@end - -#endif /* KOAgeAuthQueryStringBuilder_h */ diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAppFriend.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAppFriend.h deleted file mode 100644 index 959cfea..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOAppFriend.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface KOAppFriend : NSObject - -/*! - * @property ID - * @abstract 친구의 사용자 아이디 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property nickname - * @abstract 친구의 닉네임 - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; - -- (NSDictionary *)dictionary; -+ (instancetype)appFriendWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOBaseContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOBaseContext.h deleted file mode 100644 index 4d831b8..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOBaseContext.h +++ /dev/null @@ -1,103 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOBaseContext.h - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context를 정의한다. - */ -#import - -/*! - @abstract KOOrdering 정렬 정보. - @constant KOOrderingAscending 오름차순 정렬. - @constant KOOrderingDescending 내림차순 정렬. - */ -typedef NS_ENUM(NSInteger, KOOrdering) { - KOOrderingAscending = 0, - KOOrderingDescending = 1 -}; - -extern NSString* convertOrderingString(KOOrdering type); - -/*! - @class KOBaseContext - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context. - */ -@interface KOBaseContext : NSObject - -/*! - @property secureResource - @abstract 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - */ -@property (nonatomic, readonly) BOOL secureResource; - -/*! - @property limit - @abstract 요청 시 제한하는 친구의 수. - */ -@property (nonatomic, readonly) NSInteger limit; - -/*! - @property ordering - @abstract 정렬 방법. - */ -@property (nonatomic, readonly) KOOrdering ordering; - -/*! - @property totalCount - @abstract 목록의 전체 수. - */ -@property (nonatomic, readonly) NSNumber *totalCount; - -/*! - @property beforeURL - @abstract 이전 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *beforeURL; - -/*! - @property afterURL - @abstract 이후 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *afterURL; - -/*! - @property hasMoreItems - @abstract 이후 페이지 목록이 존재하는지의 여부. - */ -@property (nonatomic, readonly) BOOL hasMoreItems; - -/*! - @property contextID - @abstract 현재 요청에 대한 식별자 - */ -@property (nonatomic, readonly) NSString *contextID; - -+ (instancetype)context; -+ (instancetype)contextWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -+ (instancetype)contextWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -- (void)parseDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOChat.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOChat.h deleted file mode 100644 index b294173..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOChat.h +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -/*! - @header KOChat.h - @abstract 카카오톡 내의 채팅방을 나타내는 정보. - */ - -/*! - @class KOChat - @abstract 카카오톡 내의 채팅방을 나타내는 정보 구조체. - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜. - */ -@interface KOChat : NSObject - -/*! - @property ID - @abstract 카카오톡 채팅방 ID. - */ -@property (nonatomic, readonly) NSNumber *ID; - -/*! - @property title - @abstract 카카오톡 채팅방 Title. - */ -@property (nonatomic, readonly) NSString *title; - -/*! - @property thumbnailURL - @abstract 카카오톡 채팅방 썸네일 이미지 URL. - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property memberCount - @abstract 카카오톡 채팅방 참여자의 수. - */ -@property (nonatomic, readonly) NSNumber *memberCount; - -/*! - @property displayMemberImages - @abstract 이미지가 존재하는 카카오톡 채팅방 멤버들의 썸네일 이미지 URL List. (최대 5대 까지) - */ -@property (nonatomic, readonly) NSArray *displayMemberImages; - -/*! - @property chatType - @abstract 카카오톡 채팅방의 종류(오픈채팅(open), 일반채팅(regular)). - */ -@property (nonatomic, readonly) NSString *chatType; - -@property (nonatomic, readonly) NSArray *memberImageURLs DEPRECATED_MSG_ATTRIBUTE("Use 'displayMemberImages' property."); - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOChatContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOChatContext.h deleted file mode 100644 index a94f400..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOChatContext.h +++ /dev/null @@ -1,122 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOChatContext.h - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -DEPRECATED_MSG_ATTRIBUTE("Use 'KOChatFilters' enum.") -typedef NS_ENUM(NSInteger, KOChatType) { - KOChatTypeGroup = 0 -}; - -extern NSString* convertChatTypeString(KOChatType type) DEPRECATED_ATTRIBUTE; - -/*! - @abstract KOChatFilter 챗목록 필터링 옵션들. - @constant KOChatFilterNone 필터링 하지 않는다 (서버에서 내려주는 목록을 그대로 결과로 받는다). - @constant KOChatFilterDirect 1:1 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterMulti 그룹 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterRegular 일반 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterOpen 오픈 채팅방만 필터링하여 결과에 포함시킨다. - */ -typedef NS_ENUM(NSInteger, KOChatFilters) { - KOChatFilterNone = 0, - KOChatFilterDirect = 1, - KOChatFilterMulti = 1 << 1, - KOChatFilterRegular = 1 << 2, - KOChatFilterOpen = 1 << 3 -}; - -NSString* convertChatFilterString(KOChatFilters filters); - -/*! - @class KOChatContext - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOChatContext : KOBaseContext - -/*! - @property chatFilters - @abstract 챗리스트 필터링 옵션. - */ -@property (nonatomic, readonly) KOChatFilters chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - - - -@property (nonatomic, readonly) KOChatType chatType DEPRECATED_MSG_ATTRIBUTE("Use 'chatFilters' property."); - -- (instancetype)initWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'initWithChatFilters:secureResource:limit:ordering:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:limit:ordering:' method."); - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOError.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOError.h deleted file mode 100644 index 28585dd..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOError.h +++ /dev/null @@ -1,131 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOError.h - KakaoOpenSDK 를 통해 카카오계정을 인증하거나 API를 호출할 때 발생하는 오류들을 정의합니다. - */ -#import - -extern NSString *const KOErrorDomain; - -/*! - @abstract 오류 코드 정의 - @constant KOErrorUnknown 알 수 없는 오류 - @constant KOErrorCancelled 오퍼레이션 취소를 나타냄 - @constant KOErrorOperationInProgress 오퍼레이션이 진행 중간에 있음을 나타냄 - @constant KOErrorTokenNotFound 로그인 상태를 기대하는 상황에서 인증 토큰이 없는 오류 - @constant KOErrorDeactivatedSession 세션이 만료된(access_token, refresh_token이 모두 만료된 경우) 상태 - @constant KOErrorAlreadyLoginedUser 로그인 된 상태(access_token, refresh_token이 존재 하는 경우)에서 다시 로그인 하려고 할때 발생하는 오류 - @constant KOErrorBadResponse 요청에 대한 응답에 기대하는 값이 없거나 문제가 있음 - @constant KOErrorNetworkError 네트워크 오류 - @constant KOErrorHTTP http 프로토콜 오류 - @constant KOErrorNotSupported 지원하지 않는 기능 - @constant KOErrorBadParameter 파라미터 이상 - @constant KOErrorIllegalState 작업을 실행하기에 적절하지 않은 상태 - @constant KOServerErrorUnknown 일반적인 서버 오류 응답. message를 확인해야 함 - @constant KOServerErrorBadParameter 파라미터 이상 - @constant KOServerErrorUnSupportedApi 지원되지 않은 API 호출 - @constant KOServerErrorBlocked 계정 제재 또는 특정 서비스에서 해당 사용자의 제재로 인해 API 호출이 금지된 경우 - @constant KOServerErrorPermission 해당 API에 대한 권한/퍼미션이 없는 경우 - @constant KOServerErrorMisConfigured 개발환경 설정 오류 (bundle id 등) - @constant KOServerErrorInternal 내부 서버 오류 - @constant KOServerErrorApiLimitExceed API 호출 횟수가 제한을 초과 - @constant KOServerErrorNotSignedUpUser 미가입(가가입) 사용자 - @constant KOServerErrorAlreadySignedUpUser 이미 가입된 사용자. 가입된 사용자에 대해 다시 가입 요청(앱 연결 요청)을 한 경우 - @constant KOServerErrorNotKakaoAccountUser 카카오계정 유저가 아닐때 - @constant KOServerErrorInvalidUserPropertyKey 등록되지 않은 user property key - @constant KOServerErrorNoSuchApp 존재하지 않는 앱 - @constant KOServerErrorInvalidAccessToken access_token이 비정상적이거나 만료된 경우 - @constant KOServerErrorInsufficientScope 해당 API에 대한 사용자의 동의 퍼미션이 없는 경우 - @constant KOServerErrorNotAgeAuthorized 연령인증이 필요한 경우 - @constant KOServerErrorLowerAgeLimit 현재 앱의 연령제한보다 사용자의 연령이 낮은 경우 - @constant KOServerErrorAlreadyAgeAuthorized 이미 연령인증이 완료된 경우 - @constant KOServerErrorAgeCheckLimitExceed 연령인증 최대 횟수를 초과한 경우 - @constant KOServerErrorAgeResultMismatched 이전에 인증했던 정보와 불일치 한 경우 - @constant KOServerErrorCIResultMismatched CI 정보가 불일치 할 경우 - @constant KOServerErrorNotTalkUser 카카오톡 유저가 아닐때 - @constant KOServerErrorUserDeviceUnsupported 유저 디바이스가 해당 기능을 지원하지 않는 경우 - @constant KOServerErrorTalkMessageDisabled 받는이가 메시지 수신 거부를 설정한 경우 - @constant KOServerErrorTalkSendMessageMonthlyLimitExceed 한명이 특정앱에 대해 특정인에게 보낼 수 있는 한달 쿼터 초과시 발생 - @constant KOServerErrorTalkSendMessageDailyLimitExceed 한명이 특정앱에 대해 보낼 수 있는 하루 쿼터(받는 사람 관계없이) 초과시 발생 - @constant KOServerErrorNotStoryUser 카카오스토리 유저가 아닐때 - @constant KOServerErrorStoryImageUploadSizeExceed 카카오스토리 이미지 업로드 사이즈 제한 초과 - @constant KOServerErrorStoryUploadTimeout 카카오스토리 이미지 업로드시 타임아웃 - @constant KOServerErrorStoryInvalidScrapUrl 카카오스토리 스크랩시 잘못된 스크랩 URL로 호출할 경우 - @constant KOServerErrorStoryInvalidPostId 카카오스토리의 내정보 요청시 잘못된 내스토리 아이디(포스트 아이디)로 호출할 경우 - @constant KOServerErrorStoryMaxUploadNumberExceed 카카오스토리 이미지 업로드시 허용된 업로드 파일 수가 넘을 경우 - @constant KOServerErrorPushNotExistPushToken 존재하지 않는 푸시 토큰으로 푸시 전송을 하였을 경우 - @constant KOServerErrorUnderMaintenance 서버 점검중 - */ -typedef enum { - KOErrorUnknown = 1, - KOErrorCancelled = 2, - KOErrorOperationInProgress = 3, - KOErrorTokenNotFound = 4, - KOErrorDeactivatedSession = 5, - KOErrorAlreadyLoginedUser = 6, - KOErrorBadResponse = 7, - KOErrorNetworkError = 8, - KOErrorHTTP = 9, - KOErrorNotSupported = 10, - KOErrorBadParameter = 11, - KOErrorIllegalState = 14, - - KOServerErrorUnknown = -1, - KOServerErrorBadParameter = -2, - KOServerErrorUnSupportedApi = -3, - KOServerErrorBlocked = -4, - KOServerErrorPermission = -5, - KOServerErrorMisConfigured = -6, - KOServerErrorInternal = -9, - KOServerErrorApiLimitExceed = -10, - - KOServerErrorNotSignedUpUser = -101, - KOServerErrorAlreadySignedUpUser = -102, - KOServerErrorNotKakaoAccountUser = -103, - - KOServerErrorInvalidUserPropertyKey = -201, - - KOServerErrorNoSuchApp = -301, - - KOServerErrorInvalidAccessToken = -401, - KOServerErrorInsufficientScope = -402, - KOServerErrorNotAgeAuthorized = -450, - KOServerErrorLowerAgeLimit = -451, - KOServerErrorAlreadyAgeAuthorized = -452, - KOServerErrorAgeCheckLimitExceed = -453, - KOServerErrorAgeResultMismatched = -480, - KOServerErrorCIResultMismatched = -481, - - KOServerErrorNotTalkUser = -501, - KOServerErrorUserDeviceUnsupported = -504, - KOServerErrorTalkMessageDisabled = -530, - KOServerErrorTalkSendMessageMonthlyLimitExceed = -531, - KOServerErrorTalkSendMessageDailyLimitExceed = -532, - - KOServerErrorNotStoryUser = -601, - KOServerErrorStoryImageUploadSizeExceed = -602, - KOServerErrorStoryUploadTimeout = -603, - KOServerErrorStoryInvalidScrapUrl = -604, - KOServerErrorStoryInvalidPostId = -605, - KOServerErrorStoryMaxUploadNumberExceed = -606, - - KOServerErrorPushNotExistPushToken = -901, - - KOServerErrorUnderMaintenance = -9798, - -} KOErrorCode; diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriend.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriend.h deleted file mode 100644 index 1382e94..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriend.h +++ /dev/null @@ -1,101 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriend.h - @abstract 카카오톡, 카카오스토리 친구 정보 관련 기능을 정의합니다. - */ -#import -#import "KOUserInfo.h" - -/*! - @abstract KOOSPropertyType 카카오톡 사용자의 디바이스 OS 타입 - @constant KOOSPropertyTypeUnknown 알수없음 - @constant KOOSPropertyTypeIOS ios - @constant KOOSPropertyTypeAndroid 안드로이드 - */ -typedef NS_ENUM(NSInteger, KOOSPropertyType) { - KOOSPropertyTypeUnknown = 0, - KOOSPropertyTypeIOS = 1, - KOOSPropertyTypeAndroid = 2 -}; - -/*! - @abstract KORelationValue 친구 관계 - @constant KORelationValueFriend 친구인 상태 - @constant KORelationValueNotFriend 친구가 아닌 상태 - @constant KORelationValueNotAvailable 친구인지 아닌지 알 수 없는 상태 (카카오톡 친구를 요청 했을 때, 카카오스토리 친구 관계를 알 수 없게 된다.) - */ -typedef NS_ENUM(NSInteger, KORelationValue) { - KORelationValueFriend = 0, - KORelationValueNotFriend = 1, - KORelationValueNotAvailable = 2 -}; - -extern NSString* convertOSPropertyTypeString(KOOSPropertyType type); - -/*! - @class KOFriend - @abstract 카카오톡, 카카오스토리 친구 정보를 담는 구조체 - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@interface KOFriend : KOUserInfo - -/*! - @property appRegistered - @abstract 친구의 앱 가입 여부 - */ -@property (nonatomic, readonly, getter=isAppRegistered) BOOL appRegistered; - -/*! - @property nickName - @abstract 친구의 대표 프로필 닉네임. 앱 가입친구의 경우 앱에서 설정한 닉네임. 미가입친구의 경우 톡 또는 스토리의 닉네임 - */ -@property (nonatomic, readonly) NSString *nickName; - -/*! - @property thumbnailURL - @abstract 친구의 썸네일 이미지 - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property talkOS - @abstract 톡에 가입된 기기의 os 정보 (android / ios) - */ -@property (nonatomic, readonly) KOOSPropertyType talkOS; - -/*! - @property allowedTalkMessaging - @abstract 메시지 수신이 허용되었는지 여부. 앱가입 친구의 경우는 feed msg에 해당. 앱미가입친구는 invite msg에 해당 - */ -@property (nonatomic, readonly, getter=isAllowedTalkMessaging) BOOL allowedTalkMessaging; - -/*! - @property talkRelation - @abstract 나와의 카카오톡 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue talkRelation; - -/*! - @property storyRelation - @abstract 나와의 카카오스토리 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue storyRelation; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendContext.h deleted file mode 100644 index 72762f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendContext.h +++ /dev/null @@ -1,140 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendContext.h - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendServiceType 서비스 친구 타입. - @constant KOFriendServiceTypeTalk 카카오톡 친구. - @constant KOFriendServiceTypeStory 카카오스토리 친구. - @constant KOFriendServiceTypeTalkAndStory 카카오톡 + 카카오스토리 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendServiceType) { - KOFriendServiceTypeTalk = 0, - KOFriendServiceTypeStory = 1, - KOFriendServiceTypeTalkAndStory = 2 -}; - -/*! - @abstract KOFriendFilterType 친구 필터링 타입. - @constant KOFriendFilterTypeAll 전체 친구. - @constant KOFriendFilterTypeRegistered 앱 가입 친구. - @constant KOFriendFilterTypeInvitableNotRegistered 앱 미가입 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendFilterType) { - KOFriendFilterTypeAll = 0, - KOFriendFilterTypeRegistered = 1, - KOFriendFilterTypeInvitableNotRegistered = 2 -}; - -/*! - @abstract KOFriendOrderType 친구 정렬 타입. - @constant KOFriendOrderTypeNickName 닉네임 정렬. - @constant KOFriendOrderTypeRecentChatting 최근 채팅시간 정렬. - @constant KOFriendOrderTypeTalkUserCreatedAt 카카오톡 가입시간 정렬. - @constant KOFriendOrderTypeAge 나이 정렬. - @constant KOFriendOrderTypeAffinity 친밀도 정렬. - */ -typedef NS_ENUM(NSInteger, KOFriendOrderType) { - KOFriendOrderTypeNickName = 0, - KOFriendOrderTypeRecentChatting = 1, - KOFriendOrderTypeTalkUserCreatedAt = 2, - KOFriendOrderTypeAge = 3, - KOFriendOrderTypeAffinity = 4 -}; - -extern NSString* convertFriendServiceTypeString(KOFriendServiceType type); -extern NSString* convertFriendFilterTypeString(KOFriendFilterType type); -extern NSString* convertFriendOrderTypeString(KOFriendOrderType type); - -/*! - @class KOFriendContext - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOFriendContext : KOBaseContext - -/*! - @property serviceType - @abstract 서비스 친구 타입. - */ -@property (nonatomic, readonly) KOFriendServiceType serviceType; - -/*! - @property filterType - @abstract 친구 필터링 타입. - */ -@property (nonatomic, readonly) KOFriendFilterType filterType; - -/*! - @property orderType - @abstract 친구 정렬 타입. - */ -@property (nonatomic, readonly) KOFriendOrderType orderType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param limit 요청 시 제한하는 친구의 수. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - limit:(NSInteger)limit; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -- (instancetype)initWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendOperation.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendOperation.h deleted file mode 100644 index 08ddb95..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOFriendOperation.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendOperation.h - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendOperationType 친구 목록 연산 타입. - @constant KOFriendOperationTypeIntersection 교집합. - @constant KOFriendOperationTypeUnion 합집합. - @constant KOFriendOperationTypeSubtraction 차집합. - */ -typedef NS_ENUM(NSInteger, KOFriendOperationType) { - KOFriendOperationTypeIntersection = 0, - KOFriendOperationTypeUnion = 1, - KOFriendOperationTypeSubtraction = 2 -}; - -extern NSString* convertriendOperationTypeString(KOFriendOperationType type); - -@class KOFriendContext; - -/*! - @class KOFriendOperation - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOFriendOperation : KOBaseContext - -/*! - @property leftContext - @abstract Left Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *leftContext; - -/*! - @property rightContext - @abstract Right Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *rightContext; - -/*! - @property operationType - @abstract 연산 타입. - */ -@property (nonatomic, readonly) KOFriendOperationType operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -- (instancetype)initWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOHTTPMethod.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOHTTPMethod.h deleted file mode 100644 index 439e5df..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOHTTPMethod.h +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOHTTPMethod_h -#define kakao_open_sdk_ios_KOHTTPMethod_h - -typedef enum : NSInteger { - KORequestHTTPMethodGet = 0, - KORequestHTTPMethodPost = 1, - KORequestHTTPMethodDelete = 2 -} KORequestHTTPMethod; - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOImages.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOImages.h deleted file mode 100644 index 796001a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOImages.h +++ /dev/null @@ -1,68 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header - 카카오 관련 이미지들 - */ -#import -#import - -/*! - 카카오 관련 이미지들 - */ -@interface KOImages : NSObject - -/*! - 버튼용 카카오 미니로고 - */ -+ (UIImage *)kakaoLogoForButton; - -/*! - 카카오 로고 - */ -+ (UIImage *)kakaoLogo; - -/*! - 카카오톡 아이콘 - */ -+ (UIImage *)kakaoTalkIconForButton; - -/*! - 카카오스토리 아이콘 - */ -+ (UIImage *)kakaoStoryIconForButton; - -/*! - 카카오계정 아이콘 - */ -+ (UIImage *)kakaoAccountIconForButton; - -/*! - 로그인 선택취소 아이콘 - */ -+ (UIImage *)kakaoLoginSelectCancelIconForButton; - -/*! - 웹뷰용 - */ -+ (UIImage *)webViewBackButton; - -+ (UIImage *)webViewButton; - -+ (UIImage *)webViewHead; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOLoginButton.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOLoginButton.h deleted file mode 100644 index dd2fdc7..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOLoginButton.h +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOLoginButton.h - '카카오계정으로 로그인' 버튼 - */ -#import - -/*! - @abstract '카카오계정으로 로그인' 버튼 - */ -@interface KOLoginButton : UIButton - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOPushTokenInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOPushTokenInfo.h deleted file mode 100644 index 9dff18c..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOPushTokenInfo.h +++ /dev/null @@ -1,73 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOPushTokenInfo.h - 푸시 토큰의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOPushTokenInfo - @discussion 푸시 토큰의 정보를 담고 있는 구조체. - */ -@interface KOPushTokenInfo : NSObject - -/*! - @property userId - @abstract 해당 사용자의 아이디 - */ -@property(nonatomic, readonly) NSString *userId; - -/*! - @property deviceId - @abstract 해당 사용자의 등록된 디바이스 아이디 - */ -@property(nonatomic, readonly) NSString *deviceId; - -/*! - @property pushType - @abstract 푸시 토큰의 타입. "apns" 또는 "gcm" - */ -@property(nonatomic, readonly) NSString *pushType; - -/*! - @property pushToken - @abstract 푸시 토큰 - */ -@property(nonatomic, readonly) NSString *pushToken; - -/*! - @property createdAt - @abstract 푸시 토큰의 생성 시간 - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property updatedAt - @abstract 푸시 토큰의 수정된 시간 - */ -@property(nonatomic, readonly) NSString *updatedAt; - -- (id)initWithUserId:(NSString *)userId - deviceId:(NSString *)deviceId - pushType:(NSString *)pushType - pushToken:(NSString *)pushToken - createdAt:(NSString *)createdAt - updatedAt:(NSString *)updatedAt; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSession.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSession.h deleted file mode 100644 index 72eab7a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSession.h +++ /dev/null @@ -1,293 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSession.h - @abstract 카카오계정을 통해 인증 및 로그아웃할 수 있는 기능을 제공합니다. - */ - -#import -#import -#import - -/*! - @abstract KOSessionState Kakao 인증시의 내부 상태값 - @constant KOSessionStateNotOpen 세션이 열리지 않은 상태. 인증이 되지 않은 상태. - @constant KOSessionStateOpening 세션을 열기위한 진행중의 상태. 인증 진행중의 상태. - @constant KOSessionStateOpen 세션이 성공적으로 열린 상태. 인증이 완료된 상태. - */ -typedef NS_ENUM(NSInteger, KOSessionState) { - KOSessionStateNotOpen = 0, - KOSessionStateOpening = 1, - KOSessionStateOpen = 2 -}; - -/*! - @typedef KOSessionCompletionHandler - @abstract Kakao 인증 완료시 실행될 Completion Handler - @param error 오류 정보 - */ -typedef void(^KOSessionCompletionHandler)(NSError *error); - -/*! - @typedef KOCompletionSuccessHandler - @abstract Kakao API의 비동기 호출 성공 여부를 받아 처리해주는 Completion Handler - @param success 성공 여부 - @param error 오류 정보 - */ -typedef void(^KOCompletionSuccessHandler)(BOOL success, NSError *error); - -/*! - @abstract KOAuthType 카카오계정 로그인시의 인증 타입 - @constant KOAuthTypeTalk 카카오톡으로 간편 인증 - @constant KOAuthTypeStory 카카오스토리로 간편 인증 - @constant KOAuthTypeAccount 카카오계정으로 직접 ID, Password로 인증 - */ -typedef NS_ENUM(NSInteger, KOAuthType) { - KOAuthTypeTalk = 1 << 1, - KOAuthTypeStory = 1 << 2, - KOAuthTypeAccount = 1 << 3 -}; - -/*! - @abstract KOOptionalBoolean null을 가질 수 있는 boolean 타입 - @constant KOOptionalBooleanNull 참, 거짓을 알 수 없는 상태 - @constant KOOptionalBooleanFalse 거짓 - @constant KOOptionalBooleanTrue 참 - */ -typedef NS_ENUM(NSInteger, KOOptionalBoolean) { - KOOptionalBooleanNull = 0, - KOOptionalBooleanFalse = -1, - KOOptionalBooleanTrue = 1, -}; - -/*! - @abstract KOAgeAuthLevel 연령인증 시 인증 레벨. - @constant KOAgeAuthLevelType1 1차 인증 레벨. - @constant KOAgeAuthLevelType2 2차 인증 레벨. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLevel) { - KOAgeAuthLevelType1 = 10, - KOAgeAuthLevelType2 = 20 -}; - -/*! - @abstract KOAgeAuthLimit 연령인증 시 인증 나이. - @constant KOAgeAuthLimitType12 12세 인증. - @constant KOAgeAuthLimitType15 15세 인증. - @constant KOAgeAuthLimitType18 18세 인증. - @constant KOAgeAuthLimitType19 19세 인증. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLimit) { - KOAgeAuthLimitTypeNone = 0, - KOAgeAuthLimitType12 = 12, - KOAgeAuthLimitType15 = 15, - KOAgeAuthLimitType18 = 18, - KOAgeAuthLimitType19 = 19 -}; - -/*! - @abstract KOAgeAuthProperty 연령인증 정보 요청시 추가로 더 요청할 수 있는 목록 - @constant KOAgeAuthPropertyAccountCi "account_ci" 를 의미. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthProperty) { - KOAgeAuthPropertyAccountCi = 1 -}; - -@class KOAgeAuthQueryStringBuilder; - -/*! - * @class KOSession - * @abstract 인증 관리 클래스. - */ -@interface KOSession : NSObject - -/*! - * @property appKey - * @abstract 카카오에서 발급한 클라이언트 아이디. (네이티브 앱키) - * @discussion .plist 파일 내에 있는 KAKAO_APP_KEY 값을 읽어옵니다. 해당 키 값이 없거나 빈 문자열인 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - */ -@property(nonatomic, readonly) NSString *appKey; -/*! - * @property redirectUri - * @abstract 클라이언트 실행을 위한 커스텀 스킴 주소 - * @discussion "kakao${KAKAO_APP_KEY}://oauth" 형식의 OAuth 리다이렉트 URI입니다. .plist 파일에 URL Scheme으로 kakao${KAKAO_APP_KEY} 값을 설정해야 합니다. 설정하지 않을 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - * @seealso appKey - */ -@property(nonatomic, readonly) NSString *redirectUri; - -@property(nonatomic, readonly, copy) NSString *accessToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. accessToken을 얻고 싶은 경우 token.accessToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSString *refreshToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. refreshToken을 얻고 싶은 경우 token.refreshToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSDate *expiresAccessTokenTime DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. access token 만료시각을 얻고 싶은 경우 token.accessTokenExpiresAt을 사용해주세요. 추가적으로 refresh token의 만료시각도 제공됩니다."); -/*! - * @property token - * @abstract 로그인 기반 API 인증에 사용되는 OAuth 토큰 - * @discussion KOSessionTask에 있는 API 사용시 자동으로 Authroization 헤더에 현재 access token을 채워줍니다.
- * 발급 받은 토큰은 NSUserDefaults에 저장되고 앱을 종료하고 다시 시작할 경우 세션이 초기화 될 때(ex. sharedSession 최초 호출) 로드됩니다. - * 세션 초기화 시 저장된 토큰을 읽어오는데 성공하면 세션은 open 상태가 되며 일반적인 state 변경 상황과 동일하게 KOSessionDidChangeNotification 알림을 전달 받을 수 있습니다.

- * - * 토큰을 좀 더 안전하게 저장하고 싶을 경우 .plist 파일에 KAKAO_SECURE_MODE를 YES로 설정하여 accessToken과 refreshToken을 암호화 할 수 있습니다. - * 암호화 방식은 SDK 버전에 따라 다르게 제공될 수 있으며 최신 버전에 사용되고 있는 암호화 방식은 1.5.1 버전에서 마지막으로 수정되었습니다. - * KAKAO_SECURE_MODE 설정을 바꾸어서 앱을 배포하고 사용자의 기기에서 업데이트 했을 때 다음 케이스에 대해 마이그레이션을 지원합니다.

- * - * - 평문토큰 to 암호문토큰: KAKAO_SECURE_MODE를 사용하지 않다가 활성화시킨 상태로 업데이트한 경우 등
- * - 암호문토큰 to 평문토큰: KAKAO_SECURE_MODE를 YES로 사용하다가 NO로 변경한 경우 등
- * - (old)암호문토큰 to (new)암호문토큰: KAKAO_SECURE_MODE를 YES로 설정하고 변경하지 않았으나 오래된 버전의 SDK에서 최신(1.5.1이상) SDK로 업데이트한 경우

- * - * 위 케이스에는 앱을 업데이트하고 재시작해도 로그인이 유지되며 이외 케이스는 토큰을 읽어올 수 없으므로 세션이 닫힌 상태로 초기화됩니다. - */ -@property(readonly) KOToken *token; -/*! - * @property state - * @abstract 인증 상태 - */ -@property(nonatomic, readonly) KOSessionState state; -/*! - * @property clientSecret - * @abstract 클라이언트 시크릿. AppDelegate의 application:didFinishLaunchingWithOptions: 메소드에서 값을 설정해주어야 한다. - */ -@property(nonatomic, copy) NSString *clientSecret; - -/*! - * @property automaticPeriodicRefresh - * @abstract access token의 자동 주기적 갱신 여부 설정. 해당 값이 YES일 경우 handleDidBecomeActive시 및 특정 시간 주기로 필요시 토큰을 자동 갱신함. - * @discussion 값을 설정하면 현재 토큰 상태에 따라 타이머를 설정하거나 갱신이 필요할 경우 바로 갱신합니다. 이 속성 값은 기기에 저장되지 않고 메모리에서만 유지되므로 AppDelegate의 application:didFinishLaunchingWithOptions: 메소드 내에서 설정하는 것을 권장합니다. iOS 특성상 앱이 백그라운드로 내려가거나 suspend 상태가 되면 갱신이 불가능합니다. - * @seealso token - */ -@property (nonatomic, getter=isAutomaticPeriodicRefresh) BOOL automaticPeriodicRefresh; - -/*! - * @property presentingViewController - * @abstract login view 가 present 될 뷰컨트롤러를 설정. 지정하지 않을 경우 SDK 자체적으로 최상단 뷰컨트롤러를 탐색합니다. - */ -@property (nonatomic, weak) UIViewController *presentingViewController; - -@property (nonatomic, assign) UIStatusBarStyle presentedViewStatusBarStyle; -@property (nonatomic, strong) UIColor *presentedViewBarTitleColor; -@property (nonatomic, strong) UIColor *presentedViewBarTintColor; -@property (nonatomic, strong) UIColor *presentedViewBarButtonTintColor; -@property (nonatomic, strong) UIImage *presentedViewBarBackgroundImage; - - -/*! - @abstract 현재 session 정보 - */ - -+ (KOSession *)sharedSession; - -/*! - 카카오계정 로그인 callback인지 여부 - @param url 카카오 계정 인증 요청 code 또는 오류정보를 담은 url - */ -+ (BOOL)isKakaoAccountLoginCallback:(NSURL *)url; - -/*! - 카카오계정 연령인증 callback인지 여부 - @param url 카카오 연령인증 요청결과를 담은 url - */ -+ (BOOL)isKakaoAgeAuthCallback:(NSURL *)url; - -/*! - KakaoLink 메시지의 Action인지 여부 - @param url KakaoLink 메시지의 execparam 을 담은 url - */ -+ (BOOL)isKakaoLinkCallback:(NSURL *)url DEPRECATED_ATTRIBUTE; - -/*! - KakaoStory Post의 Action인지 여부 - @param url KakaoStory Post 메시지의 execparam 을 담은 url - */ -+ (BOOL)isStoryPostCallback:(NSURL *)url; - -/*! - url에 포함된 code 정보로 oauth 인증 토큰을 요청한다. 인증 토큰 요청이 완료되면 completionHandler를 실행한다. - @param url 인증 요청 code 또는 오류 정보(error, error_description)를 담은 url - */ -+ (BOOL)handleOpenURL:(NSURL *)url; - -/*! - openWithCompletionHandler로 인증 도중에 빠져나와 앱으로 돌아올때의 인증처리를 취소한다. 보통 applicationDidBecomeActive에서 해당 부분을 호출한다. - */ -+ (void)handleDidBecomeActive; - -/*! - application이 background 상태로 변경시 알려준다. 보통 applicationDidEnterBackground에서 해당 부분을 호출한다. - */ -+ (void)handleDidEnterBackground; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authType 로그인 요청시의 인증 타입(KOAuthType)의 array(var arguments로서 nil-terminated list). 주의) list의 마지막은 꼭 nil로 끝나야함. 예) KOAuthTypeTalk, KOAuthTypeStory, KOAuthTypeAccount, nil - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authType:(KOAuthType)authType, ...; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authTypes 로그인 요청시의 인증 타입(KOAuthType)의 array. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authTypes:(NSArray *)authTypes; - -/*! - @method updateScopes:completionHandler: - @abstract 현재 로그인된 사용자에게 새로운 scope이 필요할 경우 지정된 동의항목에 대한 동의창을 노출하고 사용자 동의를 유도합니다. 사용자가 동의 버튼을 누르면 해당 scope이 적용된 새로운 토큰으로 세션을 갱신합니다. - @param scopes 요청할 scope 목록 - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 갱신 완료 작업을 수행한다. - */ -- (void)updateScopes:(NSArray *)scopes completionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 현재 기기에서만 로그아웃한다. - @param completionHandler 요청 완료시 실행될 block. - */ -- (void)logoutAndCloseWithCompletionHandler:(KOCompletionSuccessHandler)completionHandler; - -/*! - 인증 토큰을 제거하여 session을 무효화한다. - */ -- (void)close; - -/*! - 인증되어 있는지 여부. [token canRefresh]와 동일한 결과를 리턴합니다. - */ -- (BOOL)isOpen; - -/*! - 세션을 유효한 access token으로 유지하기 위해 서버로 토큰을 요청하고 현재 세션을 갱신한다. - @param completionHandler 갱신 완료시 실행될 block. - */ -- (void)refreshAccessTokenWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 새로운 연령 인증이 필요할 경우 사용자에게 연령 인증관련 창을 띄워서 연령 인증을 유도합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -- (void)showAgeAuthWithAuthLevel:(KOAgeAuthQueryStringBuilder *) ageAuthQueryStringBuilder - completionHandler:(KOCompletionSuccessHandler)completionHandler; - -@end - -// notifications -/*! - 로그인 인증 정보 변경 노티피케이션 이름 - */ -extern NSString *const KOSessionDidChangeNotification; diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AgeAuthAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AgeAuthAPI.h deleted file mode 100644 index 780fc6e..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AgeAuthAPI.h +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h -#define kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h - -/*! - @header KOSessionTask+AgeAuthAPI.h - 인증된 세션정보로 연령인증 관련 API를 정의합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ - -#import "KOSession.h" -#import "KOSessionTask.h" - -/*! - 인증된 세션정보로 연령인증 관련 API를 정의한다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -@interface KOSessionTask (AgeAuthAPI) - -/*! - @abstract 연령인증 정보를 얻는다. (일부 앱에서만 제한적 허용/deprecated 될 예정) - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 해당 유저의 연령인증 정보를 얻는다. - @param ageLimit response의 bypass_age_limit(true/false)를 판단하는 기준 제한 연령. default 는 앱에 설정된 제한 연령기준. - 앱에 설정이 없고 param 으로 주어지지 않으면 bypass_age_limit 은 response 에 포함되지 않음. - @param propertyKeys 추가 동의가 필요로 하는 인증정보를 response 에 포함하고 싶은 경우 해당 KOAgeAuthProperty 셋. - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler: (KOAgeAuthLimit)ageLimit - propertyKeys: (NSSet *)propertyKeys - completionHandler: (KOSessionTaskCompletionHandler)completionHandler; - - -@end - -// AgeAuth Results Keys -/*! - 연령인증 정보 확인 시 인증레벨 코드에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelCodeKey; - -/*! - 연령인증 정보 확인 시 인증레벨 타이틀에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelKey; - -/*! - 연령인증 정보 확인 시 연령제한 통과 여부에 대한 키 이름 - */ -extern NSString *const KOAgeAuthBypassLimitKey; - -/*! - 연령인증 정보 확인 시 CI값에 대한 키 이름 - */ -extern NSString *const KOAgeAuthCIKey; - -/*! - 연령인증 정보 확인 시 인증날짜에 대한 키 이름 - */ -extern NSString *const KOAgeAuthDateKey; - - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AppFriendAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AppFriendAPI.h deleted file mode 100644 index 8cda243..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+AppFriendAPI.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAppFriend.h" -#import "KOBaseContext.h" - -@class KOAppFriendContext; - -/*! - @abstract App Friend API 요청 완료시 호출되는 콜백 핸들러. - @param appFriends 앱 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOAppFriendsTaskCompletionHandler)(NSError *error, NSArray *appFriends); - -@interface KOSessionTask (AppFriendAPI) - -/*! - @abstract 앱에 가입한 카카오톡 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 앱 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)appFriendsWithContext:(KOAppFriendContext *)context - completionHandler:(KOAppFriendsTaskCompletionHandler)completionHandler; - -@end - -/*! - @class KOAppFriendContext - @abstract 앱 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOAppFriendContext : KOBaseContext - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+FriendAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+FriendAPI.h deleted file mode 100644 index a3f9641..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+FriendAPI.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+FriendAPI.h - 인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -#import "KOSessionTask.h" -#import "KOFriend.h" -#import "KOFriendContext.h" -#import "KOFriendOperation.h" - -/*! - @abstract Friend API 요청 완료시 호출되는 콜백 핸들러. - @param friends 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOSessionFriendsTaskCompletionHandler)(NSArray *friends, NSError *error); - -/*! -인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. -*/ -@interface KOSessionTask (FriendAPI) - -/*! - @abstract 현재 로그인된 사용자의 카카오 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithContext:(KOFriendContext *)context - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -/*! - @abstract 카카오 친구 목록들의 연산된 결과를 얻어온다. - @param operation 친구 목록 페이징 Operation. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithOperation:(KOFriendOperation *)operation - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+PushAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+PushAPI.h deleted file mode 100644 index 2691889..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+PushAPI.h +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOPushTokenInfo.h" -#import "KakaoPushMessageObject.h" - -@class KakaoPushMessageObject; - -/*! - @header KOSessionTask+PushAPI.h - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ - -/*! - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (PushAPI) - -#pragma mark - Push - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 등록합니다. /v1/user/me 에 해당하는 유저의 ID로 자동 등록하게 됩니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러. expiredAt은 등록한 푸시 토큰의 만료까지 남은 기간을 뜻합니다. 보통 30이 리턴되며 30일 남았음을 뜻합니다. - */ -+ (instancetype)pushRegisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSInteger expiredAt, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 삭제합니다. 로그아웃할 때, 해당 기기에서 Push 알림 끄기 등의 상황에서 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushDeregisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰을 삭제합니다. 서비스 탈퇴 시 같이 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - */ -+ (instancetype)pushDeregisterAllDeviceWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract Push를 전송합니다(테스트용). 해당 API는 테스트 목적으로 만들어졌으며, 해당 기기로 Push를 전송합니다. 실제 다른 사용자들에게 Push를 전송하기 위해서는 AdminKey 방식의 Push 전송 REST API를 사용해야 합니다. - @param pushMsg Push 전송에 필요한 각종 메타 데이터 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushSendMsg:(KakaoPushMessageObject *)pushMsg - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰들에 대한 정보를 얻을 수 있습니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - @param completionHandler Push 토큰의 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)pushGetTokensTaskWithCompletionHandler:(void (^)(NSArray *tokens, NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+StoryAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+StoryAPI.h deleted file mode 100644 index 24d3191..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+StoryAPI.h +++ /dev/null @@ -1,386 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+StoryAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOStoryProfile.h" -#import "KOStoryPostInfo.h" -#import "KOStoryLinkInfo.h" -#import "KOStoryMyStoryInfo.h" -#import "KOStoryMyStoryImageInfo.h" -#import "KOStoryLikeInfo.h" -#import "KOStoryCommentInfo.h" - -/*! - @abstract KOStoryPostPermission 스토리 포스팅 공개 범위 - @constant KOStoryPostPermissionPublic 전체공개 - @constant KOStoryPostPermissionFriend 친구공개 - @constant KOStoryPostPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPostPermission) { - KOStoryPostPermissionPublic = 0, - KOStoryPostPermissionFriend = 1, - KOStoryPostPermissionOnlyMe = 2 -}; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (StoryAPI) - -#pragma mark - KakaoStory - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 로컬 이미지 파일을 카카오스토리에 업로드합니다. - @param image (UIImage *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImage:(UIImage *)image - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImages in v1.0.7"); - -/*! - @abstract 로컬 이미지 파일을 데이타 형식으로 카카오스토리에 업로드합니다. - @param imageData (NSData *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImageData:(NSData *)imageData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImageData in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 얻을 수 있습니다. comments, likes등의 상세정보도 포함됩니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(KOStoryMyStoryInfo *myStory, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 복수개의 내스토리 정보들을 얻을 수 있습니다. 단, comments, likes등의 상세정보는 없으며 이는 내스토리 정보 요청(storyGetMyStoryTaskWithMyStoryId)을 통해 얻을 수 있습니다. - @param lastMyStoryId 복수개의 내스토리 정보들을 얻기 위한 가장 최근의 내스토리 정보(myStory)의 id(포스트 id). 주어진 id의 시간을 기준으로 해당 id를 제외한 약 18개정도의 하위 myStory들이 반환된다. optional. - @param completionHandler 내스토리 정보들을 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoriesTaskWithLastMyStoryId:(NSString *)lastMyStoryId - completionHandler:(void (^)(NSArray *myStories, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 스크랩을 하기 위한 링크 정보를 얻을 수 있습니다. - @param url 스크랩을 하여 링크 정보를 얻기 위한 url. required. - @param completionHandler 스토리 링크 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetLinkInfoTaskWithUrl:(NSString *)url - completionHandler:(void (^)(KOStoryLinkInfo *link, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 로컬 이미지 파일 여러장을 카카오스토리에 업로드합니다. - @param images jpeg을 위한 (UIImage *) 또는 gif를 위한 (NSData *) 형식의 여러장의 이미지 array. 최대 5개까지 허용. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyMultiImagesUploadTaskWithImages:(NSArray *)images - completionHandler:(void (^)(NSArray *imageUrls, NSError *error))completionHandler; - -/*! - @abstract 해당 사용자가 카카오스토리 사용자인지 아닌지를 판별합니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyIsStoryUserTaskWithCompletionHandler:(void (^)(BOOL isStoryUser, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 지울 수 있습니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보에 대한 삭제의 결과를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyDeleteMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TalkAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TalkAPI.h deleted file mode 100644 index a849c46..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TalkAPI.h +++ /dev/null @@ -1,185 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+TalkAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOTalkProfile.h" -#import "KOChatContext.h" - -#import "KOUser.h" -#import "KOChat.h" -#import "KOFriend.h" - -DEPRECATED_ATTRIBUTE -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverType) { - KOTalkMessageReceiverTypeUser = 0, - KOTalkMessageReceiverTypeFriend = 1, - KOTalkMessageReceiverTypeChat = 2 -}; - -/*! - @abstract KOTalkMessageReceiverIDType - @constant KOTalkMessageReceiverIDTypeUUID 메시지 수신 대상의 UUID. KOUserInfo.uuid - @constant KOTalkMessageReceiverIDTypeUser 메시지 수신 대상의 사용자 ID. KOUserInfo.ID - @constant KOTalkMessageReceiverIDTypeChat 메시지 수신 대상 채팅방 ID. KOChat.ID - */ -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverIDType) { - KOTalkMessageReceiverIDTypeUser = 1, - KOTalkMessageReceiverIDTypeChat = 2, - KOTalkMessageReceiverIDTypeUUID = 3, -}; - -@class KMTTemplate; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (TalkAPI) - -#pragma mark - Send Message v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplate:(KMTTemplate *)templateObj - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Send Memo v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Profile - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - - -#pragma mark - Chat List - -/*! - @abstract 카카오톡 채팅방 목록을 가져옵니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param context 채팅방 목록을 불러올 때, 페이징 정보를 처리하기 위한 context. - @param completionHandler 카카오톡 채팅방 목록을 가져와서 처리하는 핸들러. - */ -+ (instancetype)talkChatListTaskWithContext:(KOChatContext *)context - completionHandler:(void (^)(NSArray *chats, NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TokenAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TokenAPI.h deleted file mode 100644 index 473c1d9..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+TokenAPI.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAccessTokenInfo.h" - -/*! - @header KOSessionTask+TokenAPI.h - 인증된 access token 정보를 얻어올 수 있습니다. - */ - -/*! - @abstract access token 정보를 얻을 때 사용하는 완료 콜백 핸들러 - @param accessTokenInfo 해당 access token의 정보 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionAccessTokenInfoTaskCompletionHandler)(KOAccessTokenInfo *accessTokenInfo, NSError *error); - -/*! - 인증된 access token 정보를 얻어올 수 있습니다. - */ -@interface KOSessionTask (TokenAPI) - -/*! - @abstract 현재 로그인된 사용자의 AccessTokenInfo 정보를 얻을 수 있습니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)accessTokenInfoTaskWithCompletionHandler:(KOSessionAccessTokenInfoTaskCompletionHandler)completionHandler; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+UserManagementAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+UserManagementAPI.h deleted file mode 100644 index a0794b4..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask+UserManagementAPI.h +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOUser.h" -#import "KOUserMe.h" - -/*! - @header KOSessionTask+UserManagementAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ - -typedef void (^KOSessionTaskUserMeCompletionHandler)(NSError *error, KOUserMe *me); - -/*! - 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (UserManagementAPI) -#pragma mark - UserManagement - -/*! - * @method userMeTaskWithCompletion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithCompletion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - * @method userMeTaskWithPropertyKeys:completion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param propertyKeys 특정 프로퍼티를 지정하여 받고 싶을 경우 요청할 프로퍼티 키 이름 목록. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithPropertyKeys:(NSArray *)propertyKeys completion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - @abstract 현재 로그인된 사용자의 속성(Property)를 설정할 수 있습니다. - @param properties 갱신할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)profileUpdateTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱을 연결합니다(가입). - @param properties 가입시 함께 설정할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)signupTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱 연결을 해제합니다(탈퇴). - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)unlinkTaskWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - - - -+ (instancetype)meTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 카카오계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithPropertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - propertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask.h deleted file mode 100644 index 58a86fc..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOSessionTask.h +++ /dev/null @@ -1,116 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOHTTPMethod.h" - -/*! - @typedef KOSessionTaskCompletionHandler - @abstract 각종 API 요청 완료시 호출되는 콜백 핸들러 - @param result 해당 API 요청의 결과 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionTaskCompletionHandler)(id result, NSError *error); - -@interface KOSessionTask : NSObject - -- (id)initWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/* - @abstract 해당 API 요청을 취소 - */ -- (void)cancel; - -/* - @abstract 해당 API 요청을 취소 - @param error 취소할 때 발생시키고자 하는(원인) NSError. - */ -- (void)cancelWithError:(NSError *)error; - -/* - @abstract API 요청시의 타임아웃을 설정 - @param timeoutInterval second단위의 타임아웃 값(NSTimeInterval). 기본 30초. - */ -+ (void)setRequestTimeoutInterval:(NSTimeInterval)timeoutInterval; -+ (NSTimeInterval)requestTimeoutInterval; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStorageImageInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStorageImageInfo.h deleted file mode 100644 index eefdf1a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStorageImageInfo.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStorageImageInfo.h - Storage API를 통해서 이미지를 업로드 후, 이미지 URL 정보를 얻을 수 있습니다. - */ - -#import - -/*! - @class KOStorageImageInfo - @discussion 저장소에 업로드된 이미지 URL 정보를 얻을 수 있습니다. - */ - -@interface KOStorageImageInfo : NSObject - -/*! - @property originImageURL - @abstract 원본 이미지 URL - */ -@property (nonatomic, readonly) NSString *originImageURL; - -/*! - @property profileImageURL - @abstract 프로필 이미지 URL. 사이즈 640px * 640px - */ -@property (nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailImageURL - @abstract 썸네일 이미지 URL. 사이즈 110px * 110px - */ -@property (nonatomic, readonly) NSString *thumbnailImageURL; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryActorInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryActorInfo.h deleted file mode 100644 index ea595fb..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryActorInfo.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryActorInfo.h - 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryActorInfo - @discussion 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ -@interface KOStoryActorInfo : NSObject - -/*! - @property profileThumbnailUrl - @abstract 작성자의 썸네일에 대한 URL - */ -@property(nonatomic, readonly) NSString *profileThumbnailUrl; - -/*! - @property displayName - @abstract 작성자의 표시되는 이름 - */ -@property(nonatomic, readonly) NSString *displayName; - -- (id)initWithProfileThumbnailUrl:(NSString *)profileThumbnailUrl - displayName:(NSString *)displayName; - -- (id)copyWithZone:(NSZone *)zone; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryCommentInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryCommentInfo.h deleted file mode 100644 index 1893a70..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryCommentInfo.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryCommentInfo.h - 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @class KOStoryCommentInfo - @discussion 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ -@interface KOStoryCommentInfo : NSObject - -/*! - @property text - @abstract 댓글의 텍스트 내용 - */ -@property(nonatomic, readonly) NSString *text; - -/*! - @property writer - @abstract 댓글의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *writer; - -- (id)initWithText:(NSString *)text - writer:(KOStoryActorInfo *)writer; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLikeInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLikeInfo.h deleted file mode 100644 index ecce523..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLikeInfo.h +++ /dev/null @@ -1,66 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLikeInfo.h - @abstract 카카오스토리의 내스토리 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @abstract KOStoryEmotion 느낌(감정표현)에 대한 정의. - @constant KOStoryEmotionUnknown 알수 없는 형식 - @constant KOStoryEmotionLike 좋아요 - @constant KOStoryEmotionCool 멋져요 - @constant KOStoryEmotionHappy 기뻐요 - @constant KOStoryEmotionSad 슬퍼요 - @constant KOStoryEmotionCheerUp 힘내요 - */ -typedef NS_ENUM(NSInteger, KOStoryEmotion) { - KOStoryEmotionUnknown = 0, - KOStoryEmotionLike = 1, - KOStoryEmotionCool = 2, - KOStoryEmotionHappy = 3, - KOStoryEmotionSad = 4, - KOStoryEmotionCheerUp = 5 -}; - -/*! - @class KOStoryLikeInfo - @abstract 카카오스토리의 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ -@interface KOStoryLikeInfo : NSObject - -/*! - @property emotion - @abstract 느낌에 대한 정보. 예) 좋아요, 멋져요, 기뻐요, 슬퍼요, 힘내요 - */ -@property(nonatomic, readonly) KOStoryEmotion emotion; - -/*! - @property actor - @abstract 느낌의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *actor; - -- (id)initWithEmotion:(KOStoryEmotion)emotion - actor:(KOStoryActorInfo *)actor; - -- (NSString *)convertEmotionToString:(KOStoryEmotion)emotion; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLinkInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLinkInfo.h deleted file mode 100644 index 5f9c97d..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryLinkInfo.h +++ /dev/null @@ -1,88 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLinkInfo.h - 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryLinkInfo - @discussion 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -@interface KOStoryLinkInfo : NSObject - -/*! - @property url - @abstract 스크랩 한 주소의 URL. shorten URL의 경우 resolution한 실제 URL - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property requestedUrl - @abstract 요청시의 URL 원본. resolution을 하기 전의 URL - */ -@property(nonatomic, readonly) NSString *requestedUrl; - -/*! - @property host - @abstract 스크랩한 host - */ -@property(nonatomic, readonly) NSString *host; - -/*! - @property title - @abstract 해당 웹 페이지의 제목 - */ -@property(nonatomic, readonly) NSString *title; - -/*! - @property image - @abstract 해당 웹 페이지의 대표 이미지 주소의 url array. 최대 3개. - */ -@property(nonatomic, readonly) NSArray *image; - -/*! - @property desc - @abstract 해당 웹 페이지의 설명 - */ -@property(nonatomic, readonly) NSString *desc; - -/*! - @property section - @abstract 해당 웹 페이지의 섹션 정보 - */ -@property(nonatomic, readonly) NSString *section; - -/*! - @property type - @abstract 해당 웹 페이지의 콘텐츠 타입. 예) video, music, book, article, profile, website 등. - */ -@property(nonatomic, readonly) NSString *type; - -- (id)initWithUrl:(NSString *)url - requestedUrl:(NSString *)requestedUrl - host:(NSString *)host - title:(NSString *)title - image:(NSArray *)image - desc:(NSString *)desc - section:(NSString *)section - type:(NSString *)type; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryImageInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryImageInfo.h deleted file mode 100644 index 6dd280e..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryImageInfo.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryImageInfo.h - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryMyStoryImageInfo - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ -@interface KOStoryMyStoryImageInfo : NSObject - -/*! - @property original - @abstract 원본 이미지의 url - */ -@property(nonatomic, readonly) NSString *original; - -/*! - @property xlarge - @abstract xlarge 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *xlarge; - -/*! - @property large - @abstract large 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *large; - -/*! - @property medium - @abstract medium 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *medium; - -/*! - @property small - @abstract small 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *small; - - -- (id)initWithOriginal:(NSString *)original - xlarge:(NSString *)xlarge - large:(NSString *)large - medium:(NSString *)medium - small:(NSString *)small; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryInfo.h deleted file mode 100644 index f4a2386..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryMyStoryInfo.h +++ /dev/null @@ -1,146 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryInfo.h - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -#import - -/*! - @abstract KOStoryMediaType 스토리의 미디어 형식 - @constant KOStoryMediaTypeUnknown 알수 없는 미디어 형식 - @constant KOStoryMediaTypeNotSupported 지원되지 않는 미디어 형식 - @constant KOStoryMediaTypeNote 텍스트 같은 노트 형식 - @constant KOStoryMediaTypePhoto 사진 이미지 같은 포토 형식 - */ -typedef NS_ENUM(NSInteger, KOStoryMediaType) { - KOStoryMediaTypeUnknown = 0, - KOStoryMediaTypeNotSupported = 1, - KOStoryMediaTypeNote = 2, - KOStoryMediaTypePhoto = 3 -}; - -/*! - @abstract KOStoryPermission 스토리의 공개 범위 - @constant KOStoryPermissionUnknown 알수 없는 공개 범위 - @constant KOStoryPermissionPublic 전체공개 - @constant KOStoryPermissionFriend 친구공개 - @constant KOStoryPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPermission) { - KOStoryPermissionUnknown = 0, - KOStoryPermissionPublic = 1, - KOStoryPermissionFriend = 2, - KOStoryPermissionOnlyMe = 3 -}; - -@class KOStoryMyStoryImageInfo; -@class KOStoryCommentInfo; -@class KOStoryLikeInfo; - -/*! - @class KOStoryMyStoryInfo - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -@interface KOStoryMyStoryInfo : NSObject - -/*! - @property ID - @abstract 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -/*! - @property content - @abstract 내스토리 정보의 내용 - */ -@property(nonatomic, readonly) NSString *content; - -/*! - @property mediaType - @abstract 내스토리 정보의 미디어타입. 예) NOTE, PHOTO, LINK, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryMediaType mediaType; - -/*! - @property createdAt - @abstract 내스토리 정보의 생성시간. RFC3339를 따름. - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property media - @abstract 내스토리 정보의 미디어타입이 PHOTO일 경우 이미지 내용의 array. KOStoryMyStoryImageInfo 객체의 array. - */ -@property(nonatomic, readonly) NSArray *media; - -/*! - @property url - @abstract 내스토리 정보의 url - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property commentCount - @abstract 내스토리 정보의 comment 숫자 - */ -@property(nonatomic, readonly) NSNumber *commentCount; - -/*! - @property likeCount - @abstract 내스토리 정보의 like 숫자 - */ -@property(nonatomic, readonly) NSNumber *likeCount; - -/*! - @property comments - @abstract 댓글 정보들을 담고 있는 array. KOStoryCommentInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *comments; - -/*! - @property likes - @abstract 좋아요 등 느낌(감성표현)에 대한 정보들을 담고 있는 array. KOStoryLikeInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *likes; - -/*! - @property permission - @abstract 내스토리 정보의 공개 범위. 예) PUBLIC, FRIEND, ONLY_ME, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryPermission permission; - - -- (id)initWithID:(NSString *)myStoryID - content:(NSString *)content - mediaType:(KOStoryMediaType)mediaType - createdAt:(NSString *)createdAt - media:(NSArray *)media - url:(NSString *)url - commentCount:(NSNumber *)commentCount - likeCount:(NSNumber *)likeCount - comments:(NSArray *)comments - likes:(NSArray *)likes - permission:(KOStoryPermission)permission; - -- (NSString *)convertMediaTypeToString:(KOStoryMediaType)mediaType; - -- (NSString *)convertPermissionToString:(KOStoryPermission)permission; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryPostInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryPostInfo.h deleted file mode 100644 index 4300005..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryPostInfo.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryPostInfo.h - 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryPostInfo - @discussion 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -@interface KOStoryPostInfo : NSObject - -/*! - @property ID - @abstract 포스팅 한 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -- (id)initWithID:(NSString *)myStoryID; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryProfile.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryProfile.h deleted file mode 100644 index 33b5fb5..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOStoryProfile.h +++ /dev/null @@ -1,86 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryProfile.h - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @abstract KOStoryProfileBirthdayType 스토리 프로필의 생일 타입 - @constant KOStoryProfileBirthdayTypeSolar 양력 - @constant KOStoryProfileBirthdayTypeLunar 음력 - */ -typedef NS_ENUM(NSInteger, KOStoryProfileBirthdayType) { - KOStoryProfileBirthdayTypeSolar = 0, - KOStoryProfileBirthdayTypeLunar = 1 -}; - -/*! - @class KOStoryProfile - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -@interface KOStoryProfile : NSObject - -/*! - * @property nickName - * @abstract 카카오스토리 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; -/*! - * @property profileImageURL - * @abstract 카카오스토리 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; -/*! - * @property thumbnailURL - * @abstract 카카오스토리 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; -/*! - * @property bgImageURL - * @abstract 카카오스토리 배경이미지 URL - */ -@property(nonatomic, readonly) NSString *bgImageURL; - -/*! - @property birthday - @abstract 생일. MMdd - */ -@property(nonatomic, readonly) NSString *birthday; - -/*! - @property birthdayType - @abstract 생일 타입. SOLAR 또는 LUNAR - */ -@property(nonatomic, readonly) KOStoryProfileBirthdayType birthdayType; - -/*! - @property permalink - @abstract 내 스토리를 방문할 수 있는 웹 page의 URL - */ -@property(nonatomic, readonly) NSString *permalink; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - bgImageURL:(NSString *)bgImageURL - birthday:(NSString *)birthday - birthdayType:(KOStoryProfileBirthdayType)birthdayType - permalink:(NSString *)permalink; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkMessageSending.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkMessageSending.h deleted file mode 100644 index 550fdbe..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkMessageSending.h +++ /dev/null @@ -1,120 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkMessageSending.h - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜입니다. - */ - -#ifndef kakao_open_sdk_ios_KOTalkMessageSending_h -#define kakao_open_sdk_ios_KOTalkMessageSending_h - -#import "KOSessionTask.h" - -@class KMTTemplate; - -/*! - @protocol KOTalkMessageSending - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@protocol KOTalkMessageSending - -@required - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - -@optional - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -@end - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkProfile.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkProfile.h deleted file mode 100644 index 351157b..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOTalkProfile.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkProfile.h - 카카오톡 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @class KOTalkProfile - @discussion 카카오톡 사용자 정보를 담고 있는 구조체. - */ -@interface KOTalkProfile : NSObject - -/*! - @property nickName - @abstract 카카오톡 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; - -/*! - @property profileImageURL - @abstract 카카오톡 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailURL - @abstract 카카오톡 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property countryISO - @abstract 카카오톡 국가 코드 - */ -@property(nonatomic, readonly) NSString *countryISO; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - countryISO:(NSString *)countryISO; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOToken.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOToken.h deleted file mode 100644 index 1b86847..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOToken.h +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOToken.h - 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/*! - * @class KOToken - * @abstract 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ -@interface KOToken : NSObject - -/*! - * @property accessToken - * @abstract 카카오 API를 이용하여 특정 사용자의 리소스에 접근하기 위한 OAuth 토큰. - */ -@property (readonly) NSString *accessToken; -/*! - * @property refreshToken - * @abstract accessToken을 갱신하기 위한 토큰. - */ -@property (readonly) NSString *refreshToken; -/*! - * @property accessTokenExpiresAt - * @abstract accessToken이 만료되는 시각. 네이티브 앱키로 요청한 accessToken 기본 만료시간: 12시간. - */ -@property (readonly) NSDate *accessTokenExpiresAt; -/*! - * @property refreshTokenExpiresAt - * @abstract refreshToken이 만료되는 시각. 네이티브 앱키로 요청한 refreshToken 기본 만료시간: 30일. - * @discussion 이 속성은 1.8.0 버전부터 제공되고 있습니다.
- * 만약 앱 업데이트 전에 구버전 SDK로 발급 받았던 토큰이 남아 있어서 KOSession.token을 통해 접근하는 경우 새로 로그인하거나 refreshToken이 갱신되기 전까지 값이 없을 수 있습니다. - * 값이 없는 경우는 구버전 토큰으로 가정하여 갱신 가능한 상태로 판단합니다.(canRefresh = YES) 그러나 실제로 서버로 갱신을 요청했을 때 리프레시 토큰이 만료되었다면 갱신에 실패합니다. - * @seealso canRefresh - */ -@property (readonly, nullable) NSDate *refreshTokenExpiresAt; -/*! - * @property scopes - * @abstract 현재 로그인된 사용자가 동의한 scope 목록 - */ -@property (readonly) NSArray *scopes; - -/*! - * @method canRefresh - * @abstract refresh token이 사용 가능한 상태인지 여부. 이 값이 YES이면 access token을 계속 갱신하여 사용 가능함. - * @discussion 클라이언트가 가지고 있는 access token 및 refresh token의 만료 시간은 서버와 정확히 일치하지 않을 수 있으며 - * 토큰 발급을 위해 로그인한 카카오계정 상태에 변동이 있는 경우 당시의 카카오 정책에 따라 일괄적으로 만료될 수 있습니다. - * 예를 들어 카카오계정의 비밀번호가 변경되면 현재 발급되어 있는 모든 토큰이 만료됩니다. - * 따라서 실제 토큰 유효성 여부는 토큰 갱신 등을 서버로 요청해야만 정확한 확인이 가능하며 클라이언트의 만료시간을 보고 토큰이 유효하다고 판단하는 것은 권장하지 않습니다. - * @return refreshToken이 있고 현재 시간이 refreshTokenExpiresAt보다 과거인 경우 YES
- * refreshToken이 있고 refreshTokenExpiresAt가 nil인 경우(구버전 SDK에서 발급받은 토큰) YES
- * 아니면 NO - * @seealso refreshTokenExpiresAt - */ -- (BOOL)canRefresh; -/*! - * @method remainingExpireTime - * @abstract accessTokenExpiresAt 까지 남은 시간 - * @return 음수이면 accessToken이 만료되었음을 의미함 - * @seealso - */ -- (NSTimeInterval)remainingExpireTime; - -- (nullable instancetype)initWithAccessToken:(NSString *)accessToken - refeshToken:(NSString *)refreshToken - accessTokenExpiresAt:(NSDate *)accessTokenExpiresAt - refreshTokenExpiresAt:(nullable NSDate *)refreshTokenExpiresAt - scopes:(nullable NSArray *)scopes; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUser.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUser.h deleted file mode 100644 index 04f57aa..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUser.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUser.h - 사용자 정보를 담고 있는 구조체. - */ -#import -#import "KOUserInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -DEPRECATED_MSG_ATTRIBUTE("이 클래스는 v1 user/me용 클래스입니다. v2가 적용된 KOSessionTask.userMeTask 메소드와 KOUserMe 클래스를 사용해주세요.") -@interface KOUser : KOUserInfo - -@property(nonatomic, readonly, nullable) NSString *email; -@property(nonatomic, readonly, getter=isVerifiedEmail) BOOL verifiedEmail; -@property(nonatomic, readonly, nullable) NSDictionary *properties; - -- (id)propertyForKey:(NSString *)key; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end - -/*! - 프로퍼티 키 이름 - */ -extern NSString *const KOUserNicknamePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserProfileImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserThumbnailImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserEmailPropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserIsVerifiedEmailPropertyKey DEPRECATED_ATTRIBUTE; - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUserInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUserInfo.h deleted file mode 100644 index e31634f..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUserInfo.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -extern NSString const *EXTRA_KEY_SERVICE_USER_ID; -extern NSString const *EXTRA_KEY_INVITE_MESSAGE_REMAINING_COUNT; -extern NSString const *EXTRA_KEY_GROUP_CHAT_MESSAGE_REMAINING_COUNT; - -@interface KOUserInfo : NSObject - -- (instancetype)initWithDictionary:(NSDictionary *)dictionary; - -/* - @property ID - @abstract 가입자에 대한 앱내 고유한 사용자 ID. 해당 사용자가 앱 연결 해제(탈퇴)를 하지 않는 한 변하지 않는 고유한 식별자입니다. 미가입자의 경우 해당 정보가 존재하지 않습니다. - */ -@property (nonatomic, readonly) NSNumber *ID; - - -/* - @property uuid - @abstract 가입 여부와 관계없는 앱내 고유한 ID. 카카오 서비스의 회원임을 앱내에서 식별 할 수 있지만, 사용자의 계정 상태에 따라 이 정보는 바뀔 수 있습니다. 앱내의 사용자 식별자로 저장 사용되는 것은 권장하지 않습니다. 앱의 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSString *uuid; - -/* - @property extras - @abstract User extra 정보. 앱의 특정 카테고리나 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSDictionary *extras; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUserMe.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUserMe.h deleted file mode 100644 index bb945f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUserMe.h +++ /dev/null @@ -1,321 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - * @header KOUserMe.h - * @abstract 사용자 정보 요청(user/me) API로 얻어오는 사용자 정보 관련 클래스 - */ - -#import -#import "KOTalkMessageSending.h" -#import "KOSession.h" - -NS_ASSUME_NONNULL_BEGIN - -@class KOUserMeAccount; - -/*! - * @class KOUserMe - * @abstract 사용자 정보를 나타내는 최상위 클래스. ID, 카카오계정 정보, 프로퍼티 등으로 구성됩니다. - */ -@interface KOUserMe : NSObject - -/*! - * @property hasSignedUp - * @abstract 현재 로그인한 사용자가 앱에 연결(signup)되어 있는지 여부 - * @discussion 사용자관리 설정에서 자동연결 옵션을 off한 앱에서만 사용되는 값입니다. 자동연결의 기본값은 on이며 이 경우 값이 null로 반환되고 이미 연결되어 있음을 의미합니다. - */ -@property (readonly) KOOptionalBoolean hasSignedUp; -/*! - * @property ID - * @abstract 사용자의 고유 아이디 - * @discussion 사용자 ID는 앱 연결(signup)을 기준으로 발급됩니다.
- * 1. 최초 로그인했을 때 발급
- * 2. 자동연결을 off한 상태로 signup 호출에 성공했을 때 발급
- * 3. 연결해제(unlink) 이후 1,2번 작업을 다시 수행하면 다른 값으로 재발급 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property account - * @abstract 로그인한 카카오계정 정보. 이메일 등 - * @seealso KOUserMeAccount - */ -@property (readonly, nullable) KOUserMeAccount *account; -/*! - * @property nickname - * @abstract 사용자의 닉네임 - * @discussion properties에서 "nickname" 값을 가져옵니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 닉네임으로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property profileImageURL - * @abstract 원본 프로필 이미지 URL - * @discussion properties에 있는 "profile_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 프로필 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *profileImageURL; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - * @discussion properties에 있는 "thumbnail_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 썸네일 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; -/*! - * @property properties - * @abstract 앱 별로 제공되는 사용자 정보 데이터베이스 - * @discussion 사용자에 대해 추가 정보를 저장할 수 있도록 데이터베이스를 제공합니다.
- * 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 있는 닉네임과 프로필 이미지 정보를 앱 연결 시점에 복사하여 초기값으로 제공되며 이후 해당 프로필 정보와 동기화되지 않습니다.
- * 1. nickname : 카카오톡 또는 카카오스토리에 설정된 닉네임
- * 2. profile_image : 프로필 이미지 URL 문자열
- * 3. thumbnail_image : 썸네일 사이즈의 프로필 이미지 URL 문자열 - */ -@property (readonly, nullable) NSDictionary *properties; -/*! - * @property forPartner - * @abstract 제휴를 통해 권한이 부여된 특정 앱에서 사용 - */ -@property (readonly, nullable) NSDictionary *forPartner; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)meWithDictionary:(NSDictionary *)dictionary; - -@end - - - -/*! - * @abstract KOUserAgeRange 연령대 정보 - * @constant KOUserAgeRangeNull 연령대 값이 없음 - * @constant KOUserAgeRangeType15 15세~19세 - * @constant KOUserAgeRangeType20 20세~29세 - * @constant KOUserAgeRangeType30 30세~39세 - * @constant KOUserAgeRangeType40 40세~49세 - * @constant KOUserAgeRangeType50 50세~59세 - * @constant KOUserAgeRangeType60 60세~69세 - * @constant KOUserAgeRangeType70 70세~79세 - * @constant KOUserAgeRangeType80 80세~89세 - * @constant KOUserAgeRangeType90 90세 이상 - */ -typedef NS_ENUM(NSUInteger, KOUserAgeRange) { - KOUserAgeRangeNull, - KOUserAgeRangeType15, - KOUserAgeRangeType20, - KOUserAgeRangeType30, - KOUserAgeRangeType40, - KOUserAgeRangeType50, - KOUserAgeRangeType60, - KOUserAgeRangeType70, - KOUserAgeRangeType80, - KOUserAgeRangeType90, -}; - -/*! - * @abstract KOUserGender 성별 정보 - * @constant KOUserGenderNull 성별 값이 없음 - * @constant KOUserGenderMale 남자 - * @constant KOUserGenderFemale 여자 - */ -typedef NS_ENUM(NSUInteger, KOUserGender) { - KOUserGenderNull, - KOUserGenderMale, - KOUserGenderFemale, -}; - -/*! - * @class KOUserMeAccount - * @abstract 카카오계정 정보를 나타내는 클래스 - * @discussion 사용자의 동의를 받지 않은 개인정보는 값이 반환되지 않을 수 있습니다. - * 동의를 받지 않아도 값의 존재여부는 has- 프로퍼티로 확인할 수 있습니다.
- * 값이 내려오지 않은 정보의 has- 프로퍼티가 true인 경우 사용자 동의가 필요한 상황임을 의미하며 KOSession의 updateScopes 메소드를 이용하여 동의를 받을 수 있습니다. 동의를 받은 후 user/me를 다시 호출하면 해당 값이 반환될 것입니다.
- * has- 프로퍼티가 false라면 현재 로그인한 계정에 해당 정보가 등록되지 않은 상태이며 사용자의 동의도 요청할 수 없습니다. - */ -@interface KOUserMeAccount : NSObject - -/*! - * @property email - * @abstract 카카오계정에 등록한 이메일 정보 - * @discussion 7.2.0 이상 카카오톡을 설치하고 전화번호 인증을 완료하면 이메일이 없는 카카오계정이 생성됩니다. 해당 카카오계정으로 간편로그인이나 전화번호 로그인을 할 경우 이메일 값이 nil로 반환됩니다.
- * 이메일이 있는 카카오계정이라도 사용자로부터 이메일 제공에 대한 동의를 받지 않으면 값이 nil로 반환됩니다. 등록된 이메일이 존재하지만 동의를 받지 않은 경우 hasEmail값이 true이고 사용자에게 이메일 제공에 대한 동의를 요청할 수 있습니다. - * @seealso hasEmail - * @seealso isEmailVerified - */ -@property (readonly, nullable) NSString *email; -/*! - * @property isEmailVerified - * @abstract 카카오계정에 이메일 등록 시 이메일 인증을 받았는지 여부 - * @seealso email - */ -@property (readonly) KOOptionalBoolean isEmailVerified; -/*! - * @property hasEmail - * @abstract 이메일 보유 여부 - * @discussion email이 nil이고 hasEmail이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 이메일 제공에 대한 동의를 받을 수 있습니다.
- * 이메일 제공동의 scope ID는 "account_email"입니다. - * @seealso email - */ -@property (readonly) KOOptionalBoolean hasEmail; - - - -/*! - * @property isKakaotalkUser - * @abstract 카카오톡 서비스 가입 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * 카카오톡 카카오계정 설정에 연결되어 있는 카카오계정은 true가 반환됩니다.
- * 사용자에게 동의를 받지 않았을 경우 null이 반환되며 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 카카오톡 가입 여부에 대한 동의를 받을 수 있습니다.
- * 카카오톡 서비스 가입 여부 scope ID는 "is_kakaotalk_user"입니다. - */ -@property (readonly) KOOptionalBoolean isKakaotalkUser; - - - -/*! - * @property phoneNumber - * @abstract 카카오톡에서 인증한 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다.
- * 카카오톡에 연결되어 있지 않은 카카오계정은 전화번호가 존재하지 않습니다. - * @seealso hasPhoneNumber - */ -@property (readonly, nullable) NSString *phoneNumber; -/*! - * @property hasPhoneNumber - * @abstract 전화번호 보유 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * phoneNumber가 nil이고 hasPhoneNumber가 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 전화번호 제공에 대한 동의를 받을 수 있습니다.
- * 전화번호 제공동의 scope ID는 "phone_number"입니다. - * @seealso phoneNumber - */ -@property (readonly) KOOptionalBoolean hasPhoneNumber; - - - -/*! - * @property displayID - * @abstract 카카오계정의 대표 정보. 이메일 또는 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 계정 상태에 이상이 생긴 경우 텍스트 일부가 마스킹 처리되어 반환됩니다. - * @seealso email - * @seealso phoneNumber - */ -@property (readonly, nullable) NSString *displayID; - - - -/*! - * @property ageRange - * @abstract 사용자의 연령대 정보 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasAgeRange - */ -@property (readonly) KOUserAgeRange ageRange; -/*! - * @property hasAgeRange - * @abstract 카카오계정의 연령대 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 연령대 제공에 대한 동의를 받을 수 있습니다.
- * 연령대 제공동의 scope ID는 "age_range"입니다. - * @seealso ageRange - */ -@property (readonly) KOOptionalBoolean hasAgeRange; -/*! - * @property birthday - * @abstract 사용자의 생일 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다. (MMDD형식)
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasBirthday - */ -@property (readonly, nullable) NSString *birthday; -/*! - * @property hasBirthday - * @abstract 카카오계정의 생일 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 생일 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "birthday"입니다. - * @seealso birthday - */ -@property (readonly) KOOptionalBoolean hasBirthday; -/*! - * @property gender - * @abstract 사용자 카카오계정의 성별 - * @discussion 카카오계정에 등록된 사용자의 성별 정보가 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasGender - */ -@property (readonly) KOUserGender gender; -/*! - * @property hasGender - * @abstract 카카오계정의 성별 보유 여부 - * @discussion gender가 nil이고 hasGender이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 성별 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "gender"입니다. - * @seealso gender - */ -@property (readonly) KOOptionalBoolean hasGender; - -/*! - * @method needsScopeAccountEmail - * @abstract 이메일을 가져오기 위한 사용자 동의 "account_email" 필요 여부 - * @seealso email - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAccountEmail; -/*! - * @method needsScopePhoneNumber - * @abstract 전화번호를 가져오기 위한 사용자 동의 "phone_number" 필요 여부 - * @seealso phoneNumber - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopePhoneNumber; -/*! - * @method needsScopeAgeRange - * @abstract 연령대 정보를 가져오기 위한 사용자 동의 "age_range" 필요 여부 - * @seealso ageRange - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAgeRange; -/*! - * @method needsScopeBirthday - * @abstract 생일을 가져오기 위한 사용자 동의 "birthday" 필요 여부 - * @seealso birthday - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeBirthday; -/*! - * @method needsScopeGender - * @abstract 성별을 가져오기 위한 사용자 동의 "gender" 필요 여부 - * @seealso gender - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeGender; -/*! - * @method needsScopeIsKakaotalkUser - * @abstract 카카오톡 가입 여부를 가져오기 위한 사용자 동의 "is_kakaotalk_user" 필요 여부 - * @seealso isKakaotalkUser - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeIsKakaotalkUser; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)accountWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUtils.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUtils.h deleted file mode 100644 index 9ba8e48..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KOUtils.h +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUtils - 카카오 SDK Util 클래스. - */ - -#import -#import - -@interface KOUtils : NSObject - -/* - @abstract 카카오링크 콜백 URL 정보를 얻는다. - */ -+ (NSString *)kakaoLinkCallbackURL DEPRECATED_ATTRIBUTE; - -/* - @abstract SDK 기본 헤더 정보를 얻는다. - */ -+ (NSString *)kaHeader; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoOpenSDK.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoOpenSDK.h deleted file mode 100644 index 857e34f..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoOpenSDK.h +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright 2015-2017 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import -#import -#import -#import -#import - -#import -#import -#import -#import -#import -#import -#import -#import - -#define KAKAO_SDK_IOS_VERSION_STRING @"1.8.2" diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessageObject.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessageObject.h deleted file mode 100644 index 16f8fb9..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessageObject.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessageObject.h - Push 전송 시 보낼 메시지 객체 - */ -#import "KakaoPushMessagePropertyForApns.h" -#import "KakaoPushMessagePropertyForGcm.h" - -/*! - @class KakaoPushMessageObject - @discussion Push 전송 시 보낼 메시지 객체 - */ -@interface KakaoPushMessageObject : NSObject - -/*! - * @property forApns - * @abstract iOS 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForApns *forApns; - -/*! - * @property forGcm - * @abstract Android 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForGcm *forGcm; - -- (id)initWithApnsProperty:(KakaoPushMessagePropertyForApns *)forApns - gcmProperty:(KakaoPushMessagePropertyForGcm *)forGcm; - -- (NSDictionary *)asDictionary; - -@end - diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForApns.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForApns.h deleted file mode 100644 index 95992f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForApns.h +++ /dev/null @@ -1,119 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForApns.h - Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForApns - @discussion Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ -@interface KakaoPushMessagePropertyForApns : NSObject - -/*! - * @property message - * @abstract 알림 센터에 표시할 메시지. aps의 alert에 해당 됨. NSString 혹은 NSDictionary가 들어감. 참조: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html - */ -@property(nonatomic, readonly) NSObject *message; - -/*! - * @property topic - * @abstract VoIP(Voice over Internet Protocol)를 사용할 경우에 "voip"로 설정 - */ -@property(nonatomic, copy, nullable) NSString *topic; - -/*! - * @property mutableContent - * @abstract 기기에 보여지기 전, payload를 변경하고자 할 때 사용 - */ -@property(nonatomic, assign) BOOL mutableContent; - -/*! - * @property expiration - * @abstract 푸시 수신이 불가능한 경우, 해당 기간(단위: 초)동안 재시도 함 - */ -@property(nonatomic, assign) NSUInteger expiration; - -/*! - * @property collapse - * @abstract 푸시 메시지 구분자. 같은 collapse 을 가지는 푸시가 여러개 쌓여있다면 하나의 푸시로 단말에게 전송됨 - */ -@property(nonatomic, copy, nullable) NSString *collapse; - -/*! - * @property badgeCount - * @abstract 앱 배치에 표시할 숫자. 음수일 경우 무시됨, 기본 값 -1 - */ -@property(nonatomic, assign) NSInteger badgeCount; - -/*! - * @property sound - * @abstract 푸시 수신 시 재생할 알림음. "default"를 입력하거나 앱에 해당 알림음 파일이 없으면 기본 알림음 재생됨 - */ -@property(nonatomic, copy, nullable) NSString *sound; - -/*! - * @property pushAlert - * @abstract false(NO)일 경우 음소거, 알림센터에 뜨지 않는 상태로 Push 전송. 푸시 음소거 및 알림센터에 띄우지는 않되, badge 수는 바꾸고 싶을 때 사용. 기본 값 true(YES) - */ -@property(nonatomic, assign) BOOL pushAlert; - -/*! - * @property contentAvailable - * @abstract 백그라운드 업데이트 알림(Silent Notification)을 사용하고 싶을 때 설정 - */ -@property(nonatomic, assign) BOOL contentAvailable; - -/*! - * @property category - * @abstract 알림의 유형을 나타내는 문자열. aps의 category-identifier - */ -@property(nonatomic, copy, nullable) NSString *category; - -/*! - * @property customField - * @abstract 푸시 알림을 통해 앱 실행 시 같이 넘길 파라미터들 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - * @property returnUrl - * @abstract 푸시 알림의 전송 실패("BadDeviceToken", "Unregistered", "DeviceTokenNotForTopic")에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageString:(NSString *)message - customField:(nullable NSDictionary *)customField; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageDictionary:(NSDictionary *)message - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForGcm.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForGcm.h deleted file mode 100644 index dc2cc32..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/KakaoPushMessagePropertyForGcm.h +++ /dev/null @@ -1,85 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForGcm.h - Push 전송 시 보낼 메시지 객체 (Android 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForGcm - @abstract Push 전송 시 보낼 메시지 객체 (Android 파트) - */ -@interface KakaoPushMessagePropertyForGcm : NSObject - -/*! - @property collapse - @abstract 푸시 메시지 구분자. 같은 값을 가지는 푸시 알림이 여러 개일 때 마지막 하나만 사용자 기기로 전송 - */ -@property(nonatomic, readonly) NSString *collapse; - -/*! - @property timeToLive - @abstract GCM에 저장될 미전송메시지 보관주기 (단위:초), 0 또는 음수를 입력할 경우 무시됨, 기본값 4주 - */ -@property(nonatomic, assign) NSInteger timeToLive; - -/*! - @property dryRun - @abstract 테스트를 위해 사용. 실제 단말에 전송되지 않는다 - */ -@property(nonatomic, assign) BOOL dryRun; - -/*! - @property priority - @abstract 단말이 도즈모드 상태에서도 푸시를 받을 수 있도록 한다. "high" 또는 "normal", 서버 기본값 "normal" - */ -@property(nonatomic, copy) NSString *priority; - -/*! - @property customField - @abstract 메시지 외 앱에 부가적인 정보를 전달하고자 할 때 사용. APNS와 다르게 푸시 알림 한 건당 custom_field 전체 길이가 4KB까지 가능 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - @property notification - @abstract 사용자에게 표시되는 사전 정의된 알림 페이로드의 키-값 쌍을 지정. 사전 정의된 키는 https://firebase.google.com/docs/cloud-messaging/http-server-ref '표 2a/2b/2c' 참고 - */ -@property(nonatomic, copy) NSDictionary *notification; - -/*! - @property returnUrl - @abstract 푸시 알림의 전송 실패에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithCollapse:(nullable NSString *)collapse - delayWhileIdle:(BOOL)delayWhileIdle - returnUrl:(nullable NSString *)returnUrl - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - - -@property(nonatomic, assign) BOOL delayWhileIdle DEPRECATED_MSG_ATTRIBUTE("The value of this property will be ignored."); - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/NSDictionary+SafeValue.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/NSDictionary+SafeValue.h deleted file mode 100644 index 551ac80..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Headers/NSDictionary+SafeValue.h +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOSession.h" - -@interface NSDictionary (SafeValue) - -- (id)safeValueForKey:(NSString *)key; -- (id)safeObjectForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key floatingPoint:(BOOL)floatingPoint; -- (NSDictionary *)safeValueDictionary; -- (KOOptionalBoolean)optionalBooleanForKey:(NSString *)key; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Resources/KakaoOpenSDK b/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Resources/KakaoOpenSDK deleted file mode 100644 index 44d5329..0000000 Binary files a/ios/Frameworks/KakaoOpenSDK.framework/Versions/A/Resources/KakaoOpenSDK and /dev/null differ diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAccessTokenInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAccessTokenInfo.h deleted file mode 100644 index 30c8ad2..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAccessTokenInfo.h +++ /dev/null @@ -1,45 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAccessTokenInfo.h - access token의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOAccessTokenInfo - @discussion access token의 정보를 담고 있는 구조체. - */ -@interface KOAccessTokenInfo : NSObject - -/*! - @property ID - @abstract 해당 access token에 해당되는 사용자의 ID - */ -@property(nonatomic, readonly) NSNumber *ID; - -/*! - @property expiresInMillis - @abstract 해당 access token의 남은 만료시간. 0보다 큰 milli-second가 반환됨. - */ -@property(nonatomic, readonly) NSNumber *expiresInMillis; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAgeAuthQueryStringBuilder.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAgeAuthQueryStringBuilder.h deleted file mode 100644 index 041a9af..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAgeAuthQueryStringBuilder.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOAgeAuthQueryStringBuilder.h - @abstract 연령인증시 필요한 파라미터입니다. - */ - -#ifndef KOAgeAuthQueryStringBuilder_h -#define KOAgeAuthQueryStringBuilder_h - -#import "KOSession.h" - -/*! - @class KOAgeAuthQueryStringBuilder - @abstract 연령인증시 필요한 파라미터를 Builder pattern 을 이용해서 세팅한다. - */ -@interface KOAgeAuthQueryStringBuilder : NSObject - -/*! - @property level - @abstract 연령 인증 레벨 - */ -@property (nonatomic) KOAgeAuthLevel level; - -/*! - @property limit - @abstract 연령 인증 제한 나이 - */ -@property (nonatomic) KOAgeAuthLimit limit; - -/*! - @property isWesternAge - @abstract 나이의 기준이 한국식인지 외국식인지의 여부(optional, default false) - */ -@property (nonatomic) BOOL isWesternAge; - -/*! - @property isSkipTerm - @abstract 동의하기 안내화면 skip 여부(optional, default false) - */ -@property (nonatomic) BOOL isSkipTerm; // 동의하기 안내화면 skip 여부. - -/*! - @property authFrom - @abstract 서비스 이름(optional, client_id or app_id or service_name) - */ -@property (nonatomic, copy) NSString *authFrom; - -- (NSString *) build; - -@end - -#endif /* KOAgeAuthQueryStringBuilder_h */ diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAppFriend.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAppFriend.h deleted file mode 100644 index 959cfea..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOAppFriend.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface KOAppFriend : NSObject - -/*! - * @property ID - * @abstract 친구의 사용자 아이디 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property nickname - * @abstract 친구의 닉네임 - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; - -- (NSDictionary *)dictionary; -+ (instancetype)appFriendWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOBaseContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOBaseContext.h deleted file mode 100644 index 4d831b8..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOBaseContext.h +++ /dev/null @@ -1,103 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOBaseContext.h - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context를 정의한다. - */ -#import - -/*! - @abstract KOOrdering 정렬 정보. - @constant KOOrderingAscending 오름차순 정렬. - @constant KOOrderingDescending 내림차순 정렬. - */ -typedef NS_ENUM(NSInteger, KOOrdering) { - KOOrderingAscending = 0, - KOOrderingDescending = 1 -}; - -extern NSString* convertOrderingString(KOOrdering type); - -/*! - @class KOBaseContext - @abstract 목록 페이징의 정보를 처리하기 위한 기본 Context. - */ -@interface KOBaseContext : NSObject - -/*! - @property secureResource - @abstract 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - */ -@property (nonatomic, readonly) BOOL secureResource; - -/*! - @property limit - @abstract 요청 시 제한하는 친구의 수. - */ -@property (nonatomic, readonly) NSInteger limit; - -/*! - @property ordering - @abstract 정렬 방법. - */ -@property (nonatomic, readonly) KOOrdering ordering; - -/*! - @property totalCount - @abstract 목록의 전체 수. - */ -@property (nonatomic, readonly) NSNumber *totalCount; - -/*! - @property beforeURL - @abstract 이전 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *beforeURL; - -/*! - @property afterURL - @abstract 이후 페이지 목록의 요청 URL. - */ -@property (nonatomic, readonly) NSString *afterURL; - -/*! - @property hasMoreItems - @abstract 이후 페이지 목록이 존재하는지의 여부. - */ -@property (nonatomic, readonly) BOOL hasMoreItems; - -/*! - @property contextID - @abstract 현재 요청에 대한 식별자 - */ -@property (nonatomic, readonly) NSString *contextID; - -+ (instancetype)context; -+ (instancetype)contextWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -+ (instancetype)contextWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithLimit:(NSInteger)limit - ordering:(KOOrdering)ordering; -- (instancetype)initWithSecureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -- (void)parseDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOChat.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOChat.h deleted file mode 100644 index b294173..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOChat.h +++ /dev/null @@ -1,72 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -/*! - @header KOChat.h - @abstract 카카오톡 내의 채팅방을 나타내는 정보. - */ - -/*! - @class KOChat - @abstract 카카오톡 내의 채팅방을 나타내는 정보 구조체. - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜. - */ -@interface KOChat : NSObject - -/*! - @property ID - @abstract 카카오톡 채팅방 ID. - */ -@property (nonatomic, readonly) NSNumber *ID; - -/*! - @property title - @abstract 카카오톡 채팅방 Title. - */ -@property (nonatomic, readonly) NSString *title; - -/*! - @property thumbnailURL - @abstract 카카오톡 채팅방 썸네일 이미지 URL. - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property memberCount - @abstract 카카오톡 채팅방 참여자의 수. - */ -@property (nonatomic, readonly) NSNumber *memberCount; - -/*! - @property displayMemberImages - @abstract 이미지가 존재하는 카카오톡 채팅방 멤버들의 썸네일 이미지 URL List. (최대 5대 까지) - */ -@property (nonatomic, readonly) NSArray *displayMemberImages; - -/*! - @property chatType - @abstract 카카오톡 채팅방의 종류(오픈채팅(open), 일반채팅(regular)). - */ -@property (nonatomic, readonly) NSString *chatType; - -@property (nonatomic, readonly) NSArray *memberImageURLs DEPRECATED_MSG_ATTRIBUTE("Use 'displayMemberImages' property."); - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOChatContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOChatContext.h deleted file mode 100644 index a94f400..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOChatContext.h +++ /dev/null @@ -1,122 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOChatContext.h - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -DEPRECATED_MSG_ATTRIBUTE("Use 'KOChatFilters' enum.") -typedef NS_ENUM(NSInteger, KOChatType) { - KOChatTypeGroup = 0 -}; - -extern NSString* convertChatTypeString(KOChatType type) DEPRECATED_ATTRIBUTE; - -/*! - @abstract KOChatFilter 챗목록 필터링 옵션들. - @constant KOChatFilterNone 필터링 하지 않는다 (서버에서 내려주는 목록을 그대로 결과로 받는다). - @constant KOChatFilterDirect 1:1 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterMulti 그룹 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterRegular 일반 채팅방만 필터링하여 결과에 포함시킨다. - @constant KOChatFilterOpen 오픈 채팅방만 필터링하여 결과에 포함시킨다. - */ -typedef NS_ENUM(NSInteger, KOChatFilters) { - KOChatFilterNone = 0, - KOChatFilterDirect = 1, - KOChatFilterMulti = 1 << 1, - KOChatFilterRegular = 1 << 2, - KOChatFilterOpen = 1 << 3 -}; - -NSString* convertChatFilterString(KOChatFilters filters); - -/*! - @class KOChatContext - @abstract 채팅방 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOChatContext : KOBaseContext - -/*! - @property chatFilters - @abstract 챗리스트 필터링 옵션. - */ -@property (nonatomic, readonly) KOChatFilters chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -- (instancetype)initWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 채팅방 페이징 Context 를 생성한다. - @param chatFilters 챗리스트 필터링 옵션. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 채팅방의 수. (채팅방은 30개 까지만 가져올 수 있습니다.) - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithChatFilters:(KOChatFilters)chatFilters - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - - - -@property (nonatomic, readonly) KOChatType chatType DEPRECATED_MSG_ATTRIBUTE("Use 'chatFilters' property."); - -- (instancetype)initWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'initWithChatFilters:secureResource:limit:ordering:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:' method."); -+ (instancetype)contextWithChatType:(KOChatType)chatType - limit:(NSInteger)limit - ordering:(KOOrdering)ordering DEPRECATED_MSG_ATTRIBUTE("Use 'contextWithChatFilters:limit:ordering:' method."); - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOError.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOError.h deleted file mode 100644 index 28585dd..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOError.h +++ /dev/null @@ -1,131 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOError.h - KakaoOpenSDK 를 통해 카카오계정을 인증하거나 API를 호출할 때 발생하는 오류들을 정의합니다. - */ -#import - -extern NSString *const KOErrorDomain; - -/*! - @abstract 오류 코드 정의 - @constant KOErrorUnknown 알 수 없는 오류 - @constant KOErrorCancelled 오퍼레이션 취소를 나타냄 - @constant KOErrorOperationInProgress 오퍼레이션이 진행 중간에 있음을 나타냄 - @constant KOErrorTokenNotFound 로그인 상태를 기대하는 상황에서 인증 토큰이 없는 오류 - @constant KOErrorDeactivatedSession 세션이 만료된(access_token, refresh_token이 모두 만료된 경우) 상태 - @constant KOErrorAlreadyLoginedUser 로그인 된 상태(access_token, refresh_token이 존재 하는 경우)에서 다시 로그인 하려고 할때 발생하는 오류 - @constant KOErrorBadResponse 요청에 대한 응답에 기대하는 값이 없거나 문제가 있음 - @constant KOErrorNetworkError 네트워크 오류 - @constant KOErrorHTTP http 프로토콜 오류 - @constant KOErrorNotSupported 지원하지 않는 기능 - @constant KOErrorBadParameter 파라미터 이상 - @constant KOErrorIllegalState 작업을 실행하기에 적절하지 않은 상태 - @constant KOServerErrorUnknown 일반적인 서버 오류 응답. message를 확인해야 함 - @constant KOServerErrorBadParameter 파라미터 이상 - @constant KOServerErrorUnSupportedApi 지원되지 않은 API 호출 - @constant KOServerErrorBlocked 계정 제재 또는 특정 서비스에서 해당 사용자의 제재로 인해 API 호출이 금지된 경우 - @constant KOServerErrorPermission 해당 API에 대한 권한/퍼미션이 없는 경우 - @constant KOServerErrorMisConfigured 개발환경 설정 오류 (bundle id 등) - @constant KOServerErrorInternal 내부 서버 오류 - @constant KOServerErrorApiLimitExceed API 호출 횟수가 제한을 초과 - @constant KOServerErrorNotSignedUpUser 미가입(가가입) 사용자 - @constant KOServerErrorAlreadySignedUpUser 이미 가입된 사용자. 가입된 사용자에 대해 다시 가입 요청(앱 연결 요청)을 한 경우 - @constant KOServerErrorNotKakaoAccountUser 카카오계정 유저가 아닐때 - @constant KOServerErrorInvalidUserPropertyKey 등록되지 않은 user property key - @constant KOServerErrorNoSuchApp 존재하지 않는 앱 - @constant KOServerErrorInvalidAccessToken access_token이 비정상적이거나 만료된 경우 - @constant KOServerErrorInsufficientScope 해당 API에 대한 사용자의 동의 퍼미션이 없는 경우 - @constant KOServerErrorNotAgeAuthorized 연령인증이 필요한 경우 - @constant KOServerErrorLowerAgeLimit 현재 앱의 연령제한보다 사용자의 연령이 낮은 경우 - @constant KOServerErrorAlreadyAgeAuthorized 이미 연령인증이 완료된 경우 - @constant KOServerErrorAgeCheckLimitExceed 연령인증 최대 횟수를 초과한 경우 - @constant KOServerErrorAgeResultMismatched 이전에 인증했던 정보와 불일치 한 경우 - @constant KOServerErrorCIResultMismatched CI 정보가 불일치 할 경우 - @constant KOServerErrorNotTalkUser 카카오톡 유저가 아닐때 - @constant KOServerErrorUserDeviceUnsupported 유저 디바이스가 해당 기능을 지원하지 않는 경우 - @constant KOServerErrorTalkMessageDisabled 받는이가 메시지 수신 거부를 설정한 경우 - @constant KOServerErrorTalkSendMessageMonthlyLimitExceed 한명이 특정앱에 대해 특정인에게 보낼 수 있는 한달 쿼터 초과시 발생 - @constant KOServerErrorTalkSendMessageDailyLimitExceed 한명이 특정앱에 대해 보낼 수 있는 하루 쿼터(받는 사람 관계없이) 초과시 발생 - @constant KOServerErrorNotStoryUser 카카오스토리 유저가 아닐때 - @constant KOServerErrorStoryImageUploadSizeExceed 카카오스토리 이미지 업로드 사이즈 제한 초과 - @constant KOServerErrorStoryUploadTimeout 카카오스토리 이미지 업로드시 타임아웃 - @constant KOServerErrorStoryInvalidScrapUrl 카카오스토리 스크랩시 잘못된 스크랩 URL로 호출할 경우 - @constant KOServerErrorStoryInvalidPostId 카카오스토리의 내정보 요청시 잘못된 내스토리 아이디(포스트 아이디)로 호출할 경우 - @constant KOServerErrorStoryMaxUploadNumberExceed 카카오스토리 이미지 업로드시 허용된 업로드 파일 수가 넘을 경우 - @constant KOServerErrorPushNotExistPushToken 존재하지 않는 푸시 토큰으로 푸시 전송을 하였을 경우 - @constant KOServerErrorUnderMaintenance 서버 점검중 - */ -typedef enum { - KOErrorUnknown = 1, - KOErrorCancelled = 2, - KOErrorOperationInProgress = 3, - KOErrorTokenNotFound = 4, - KOErrorDeactivatedSession = 5, - KOErrorAlreadyLoginedUser = 6, - KOErrorBadResponse = 7, - KOErrorNetworkError = 8, - KOErrorHTTP = 9, - KOErrorNotSupported = 10, - KOErrorBadParameter = 11, - KOErrorIllegalState = 14, - - KOServerErrorUnknown = -1, - KOServerErrorBadParameter = -2, - KOServerErrorUnSupportedApi = -3, - KOServerErrorBlocked = -4, - KOServerErrorPermission = -5, - KOServerErrorMisConfigured = -6, - KOServerErrorInternal = -9, - KOServerErrorApiLimitExceed = -10, - - KOServerErrorNotSignedUpUser = -101, - KOServerErrorAlreadySignedUpUser = -102, - KOServerErrorNotKakaoAccountUser = -103, - - KOServerErrorInvalidUserPropertyKey = -201, - - KOServerErrorNoSuchApp = -301, - - KOServerErrorInvalidAccessToken = -401, - KOServerErrorInsufficientScope = -402, - KOServerErrorNotAgeAuthorized = -450, - KOServerErrorLowerAgeLimit = -451, - KOServerErrorAlreadyAgeAuthorized = -452, - KOServerErrorAgeCheckLimitExceed = -453, - KOServerErrorAgeResultMismatched = -480, - KOServerErrorCIResultMismatched = -481, - - KOServerErrorNotTalkUser = -501, - KOServerErrorUserDeviceUnsupported = -504, - KOServerErrorTalkMessageDisabled = -530, - KOServerErrorTalkSendMessageMonthlyLimitExceed = -531, - KOServerErrorTalkSendMessageDailyLimitExceed = -532, - - KOServerErrorNotStoryUser = -601, - KOServerErrorStoryImageUploadSizeExceed = -602, - KOServerErrorStoryUploadTimeout = -603, - KOServerErrorStoryInvalidScrapUrl = -604, - KOServerErrorStoryInvalidPostId = -605, - KOServerErrorStoryMaxUploadNumberExceed = -606, - - KOServerErrorPushNotExistPushToken = -901, - - KOServerErrorUnderMaintenance = -9798, - -} KOErrorCode; diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriend.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriend.h deleted file mode 100644 index 1382e94..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriend.h +++ /dev/null @@ -1,101 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriend.h - @abstract 카카오톡, 카카오스토리 친구 정보 관련 기능을 정의합니다. - */ -#import -#import "KOUserInfo.h" - -/*! - @abstract KOOSPropertyType 카카오톡 사용자의 디바이스 OS 타입 - @constant KOOSPropertyTypeUnknown 알수없음 - @constant KOOSPropertyTypeIOS ios - @constant KOOSPropertyTypeAndroid 안드로이드 - */ -typedef NS_ENUM(NSInteger, KOOSPropertyType) { - KOOSPropertyTypeUnknown = 0, - KOOSPropertyTypeIOS = 1, - KOOSPropertyTypeAndroid = 2 -}; - -/*! - @abstract KORelationValue 친구 관계 - @constant KORelationValueFriend 친구인 상태 - @constant KORelationValueNotFriend 친구가 아닌 상태 - @constant KORelationValueNotAvailable 친구인지 아닌지 알 수 없는 상태 (카카오톡 친구를 요청 했을 때, 카카오스토리 친구 관계를 알 수 없게 된다.) - */ -typedef NS_ENUM(NSInteger, KORelationValue) { - KORelationValueFriend = 0, - KORelationValueNotFriend = 1, - KORelationValueNotAvailable = 2 -}; - -extern NSString* convertOSPropertyTypeString(KOOSPropertyType type); - -/*! - @class KOFriend - @abstract 카카오톡, 카카오스토리 친구 정보를 담는 구조체 - @see KOTalkMessageSending 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@interface KOFriend : KOUserInfo - -/*! - @property appRegistered - @abstract 친구의 앱 가입 여부 - */ -@property (nonatomic, readonly, getter=isAppRegistered) BOOL appRegistered; - -/*! - @property nickName - @abstract 친구의 대표 프로필 닉네임. 앱 가입친구의 경우 앱에서 설정한 닉네임. 미가입친구의 경우 톡 또는 스토리의 닉네임 - */ -@property (nonatomic, readonly) NSString *nickName; - -/*! - @property thumbnailURL - @abstract 친구의 썸네일 이미지 - */ -@property (nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property talkOS - @abstract 톡에 가입된 기기의 os 정보 (android / ios) - */ -@property (nonatomic, readonly) KOOSPropertyType talkOS; - -/*! - @property allowedTalkMessaging - @abstract 메시지 수신이 허용되었는지 여부. 앱가입 친구의 경우는 feed msg에 해당. 앱미가입친구는 invite msg에 해당 - */ -@property (nonatomic, readonly, getter=isAllowedTalkMessaging) BOOL allowedTalkMessaging; - -/*! - @property talkRelation - @abstract 나와의 카카오톡 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue talkRelation; - -/*! - @property storyRelation - @abstract 나와의 카카오스토리 친구 관계 - */ -@property (nonatomic, readonly) KORelationValue storyRelation; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriendContext.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriendContext.h deleted file mode 100644 index 72762f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriendContext.h +++ /dev/null @@ -1,140 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendContext.h - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendServiceType 서비스 친구 타입. - @constant KOFriendServiceTypeTalk 카카오톡 친구. - @constant KOFriendServiceTypeStory 카카오스토리 친구. - @constant KOFriendServiceTypeTalkAndStory 카카오톡 + 카카오스토리 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendServiceType) { - KOFriendServiceTypeTalk = 0, - KOFriendServiceTypeStory = 1, - KOFriendServiceTypeTalkAndStory = 2 -}; - -/*! - @abstract KOFriendFilterType 친구 필터링 타입. - @constant KOFriendFilterTypeAll 전체 친구. - @constant KOFriendFilterTypeRegistered 앱 가입 친구. - @constant KOFriendFilterTypeInvitableNotRegistered 앱 미가입 친구. - */ -typedef NS_ENUM(NSInteger, KOFriendFilterType) { - KOFriendFilterTypeAll = 0, - KOFriendFilterTypeRegistered = 1, - KOFriendFilterTypeInvitableNotRegistered = 2 -}; - -/*! - @abstract KOFriendOrderType 친구 정렬 타입. - @constant KOFriendOrderTypeNickName 닉네임 정렬. - @constant KOFriendOrderTypeRecentChatting 최근 채팅시간 정렬. - @constant KOFriendOrderTypeTalkUserCreatedAt 카카오톡 가입시간 정렬. - @constant KOFriendOrderTypeAge 나이 정렬. - @constant KOFriendOrderTypeAffinity 친밀도 정렬. - */ -typedef NS_ENUM(NSInteger, KOFriendOrderType) { - KOFriendOrderTypeNickName = 0, - KOFriendOrderTypeRecentChatting = 1, - KOFriendOrderTypeTalkUserCreatedAt = 2, - KOFriendOrderTypeAge = 3, - KOFriendOrderTypeAffinity = 4 -}; - -extern NSString* convertFriendServiceTypeString(KOFriendServiceType type); -extern NSString* convertFriendFilterTypeString(KOFriendFilterType type); -extern NSString* convertFriendOrderTypeString(KOFriendOrderType type); - -/*! - @class KOFriendContext - @abstract 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOFriendContext : KOBaseContext - -/*! - @property serviceType - @abstract 서비스 친구 타입. - */ -@property (nonatomic, readonly) KOFriendServiceType serviceType; - -/*! - @property filterType - @abstract 친구 필터링 타입. - */ -@property (nonatomic, readonly) KOFriendFilterType filterType; - -/*! - @property orderType - @abstract 친구 정렬 타입. - */ -@property (nonatomic, readonly) KOFriendOrderType orderType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param limit 요청 시 제한하는 친구의 수. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - limit:(NSInteger)limit; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -+ (instancetype)contextWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; - -/*! - 친구 페이징 Context 를 생성한다. - @param serviceType 서비스 친구 타입. - @param filterType 친구 필터링 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param orderType 친구 정렬 타입. - @param ordering 정렬 방법. - */ -- (instancetype)initWithServiceType:(KOFriendServiceType)serviceType - filterType:(KOFriendFilterType)filterType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - orderType:(KOFriendOrderType)orderType - ordering:(KOOrdering)ordering; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriendOperation.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriendOperation.h deleted file mode 100644 index 08ddb95..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOFriendOperation.h +++ /dev/null @@ -1,104 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOFriendOperation.h - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context를 정의한다. - */ -#import "KOBaseContext.h" - -/*! - @abstract KOFriendOperationType 친구 목록 연산 타입. - @constant KOFriendOperationTypeIntersection 교집합. - @constant KOFriendOperationTypeUnion 합집합. - @constant KOFriendOperationTypeSubtraction 차집합. - */ -typedef NS_ENUM(NSInteger, KOFriendOperationType) { - KOFriendOperationTypeIntersection = 0, - KOFriendOperationTypeUnion = 1, - KOFriendOperationTypeSubtraction = 2 -}; - -extern NSString* convertriendOperationTypeString(KOFriendOperationType type); - -@class KOFriendContext; - -/*! - @class KOFriendOperation - @abstract 연산된 친구 목록 페이징의 정보를 처리하기 위한 Context. - */ -@interface KOFriendOperation : KOBaseContext - -/*! - @property leftContext - @abstract Left Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *leftContext; - -/*! - @property rightContext - @abstract Right Operand Context. - */ -@property (nonatomic, readonly) KOFriendContext *rightContext; - -/*! - @property operationType - @abstract 연산 타입. - */ -@property (nonatomic, readonly) KOFriendOperationType operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -+ (instancetype)operationWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; - -/*! - 친구 목록 연산 페이징 Context 를 생성한다. - @param leftContext Left Operand Context. - @param rightContext Right Operand Context. - @param operationType 연산 타입. - @param secureResource 프로필 이미지, 썸네일 등의 리소스 url을 https로 반환할지 여부. - @param limit 요청 시 제한하는 친구의 수. - @param ordering 정렬 방법. - */ -- (instancetype)initWithLeftContext:(KOFriendContext *)leftContext - rightContext:(KOFriendContext *)rightContext - operationType:(KOFriendOperationType)operationType - secureResource:(BOOL)secureResource - limit:(NSInteger)limit - ordering:(KOOrdering)ordering; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOHTTPMethod.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOHTTPMethod.h deleted file mode 100644 index 439e5df..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOHTTPMethod.h +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOHTTPMethod_h -#define kakao_open_sdk_ios_KOHTTPMethod_h - -typedef enum : NSInteger { - KORequestHTTPMethodGet = 0, - KORequestHTTPMethodPost = 1, - KORequestHTTPMethodDelete = 2 -} KORequestHTTPMethod; - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOImages.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOImages.h deleted file mode 100644 index 796001a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOImages.h +++ /dev/null @@ -1,68 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header - 카카오 관련 이미지들 - */ -#import -#import - -/*! - 카카오 관련 이미지들 - */ -@interface KOImages : NSObject - -/*! - 버튼용 카카오 미니로고 - */ -+ (UIImage *)kakaoLogoForButton; - -/*! - 카카오 로고 - */ -+ (UIImage *)kakaoLogo; - -/*! - 카카오톡 아이콘 - */ -+ (UIImage *)kakaoTalkIconForButton; - -/*! - 카카오스토리 아이콘 - */ -+ (UIImage *)kakaoStoryIconForButton; - -/*! - 카카오계정 아이콘 - */ -+ (UIImage *)kakaoAccountIconForButton; - -/*! - 로그인 선택취소 아이콘 - */ -+ (UIImage *)kakaoLoginSelectCancelIconForButton; - -/*! - 웹뷰용 - */ -+ (UIImage *)webViewBackButton; - -+ (UIImage *)webViewButton; - -+ (UIImage *)webViewHead; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOLoginButton.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOLoginButton.h deleted file mode 100644 index dd2fdc7..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOLoginButton.h +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOLoginButton.h - '카카오계정으로 로그인' 버튼 - */ -#import - -/*! - @abstract '카카오계정으로 로그인' 버튼 - */ -@interface KOLoginButton : UIButton - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOPushTokenInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOPushTokenInfo.h deleted file mode 100644 index 9dff18c..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOPushTokenInfo.h +++ /dev/null @@ -1,73 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOPushTokenInfo.h - 푸시 토큰의 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOPushTokenInfo - @discussion 푸시 토큰의 정보를 담고 있는 구조체. - */ -@interface KOPushTokenInfo : NSObject - -/*! - @property userId - @abstract 해당 사용자의 아이디 - */ -@property(nonatomic, readonly) NSString *userId; - -/*! - @property deviceId - @abstract 해당 사용자의 등록된 디바이스 아이디 - */ -@property(nonatomic, readonly) NSString *deviceId; - -/*! - @property pushType - @abstract 푸시 토큰의 타입. "apns" 또는 "gcm" - */ -@property(nonatomic, readonly) NSString *pushType; - -/*! - @property pushToken - @abstract 푸시 토큰 - */ -@property(nonatomic, readonly) NSString *pushToken; - -/*! - @property createdAt - @abstract 푸시 토큰의 생성 시간 - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property updatedAt - @abstract 푸시 토큰의 수정된 시간 - */ -@property(nonatomic, readonly) NSString *updatedAt; - -- (id)initWithUserId:(NSString *)userId - deviceId:(NSString *)deviceId - pushType:(NSString *)pushType - pushToken:(NSString *)pushToken - createdAt:(NSString *)createdAt - updatedAt:(NSString *)updatedAt; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSession.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSession.h deleted file mode 100644 index 72eab7a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSession.h +++ /dev/null @@ -1,293 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSession.h - @abstract 카카오계정을 통해 인증 및 로그아웃할 수 있는 기능을 제공합니다. - */ - -#import -#import -#import - -/*! - @abstract KOSessionState Kakao 인증시의 내부 상태값 - @constant KOSessionStateNotOpen 세션이 열리지 않은 상태. 인증이 되지 않은 상태. - @constant KOSessionStateOpening 세션을 열기위한 진행중의 상태. 인증 진행중의 상태. - @constant KOSessionStateOpen 세션이 성공적으로 열린 상태. 인증이 완료된 상태. - */ -typedef NS_ENUM(NSInteger, KOSessionState) { - KOSessionStateNotOpen = 0, - KOSessionStateOpening = 1, - KOSessionStateOpen = 2 -}; - -/*! - @typedef KOSessionCompletionHandler - @abstract Kakao 인증 완료시 실행될 Completion Handler - @param error 오류 정보 - */ -typedef void(^KOSessionCompletionHandler)(NSError *error); - -/*! - @typedef KOCompletionSuccessHandler - @abstract Kakao API의 비동기 호출 성공 여부를 받아 처리해주는 Completion Handler - @param success 성공 여부 - @param error 오류 정보 - */ -typedef void(^KOCompletionSuccessHandler)(BOOL success, NSError *error); - -/*! - @abstract KOAuthType 카카오계정 로그인시의 인증 타입 - @constant KOAuthTypeTalk 카카오톡으로 간편 인증 - @constant KOAuthTypeStory 카카오스토리로 간편 인증 - @constant KOAuthTypeAccount 카카오계정으로 직접 ID, Password로 인증 - */ -typedef NS_ENUM(NSInteger, KOAuthType) { - KOAuthTypeTalk = 1 << 1, - KOAuthTypeStory = 1 << 2, - KOAuthTypeAccount = 1 << 3 -}; - -/*! - @abstract KOOptionalBoolean null을 가질 수 있는 boolean 타입 - @constant KOOptionalBooleanNull 참, 거짓을 알 수 없는 상태 - @constant KOOptionalBooleanFalse 거짓 - @constant KOOptionalBooleanTrue 참 - */ -typedef NS_ENUM(NSInteger, KOOptionalBoolean) { - KOOptionalBooleanNull = 0, - KOOptionalBooleanFalse = -1, - KOOptionalBooleanTrue = 1, -}; - -/*! - @abstract KOAgeAuthLevel 연령인증 시 인증 레벨. - @constant KOAgeAuthLevelType1 1차 인증 레벨. - @constant KOAgeAuthLevelType2 2차 인증 레벨. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLevel) { - KOAgeAuthLevelType1 = 10, - KOAgeAuthLevelType2 = 20 -}; - -/*! - @abstract KOAgeAuthLimit 연령인증 시 인증 나이. - @constant KOAgeAuthLimitType12 12세 인증. - @constant KOAgeAuthLimitType15 15세 인증. - @constant KOAgeAuthLimitType18 18세 인증. - @constant KOAgeAuthLimitType19 19세 인증. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthLimit) { - KOAgeAuthLimitTypeNone = 0, - KOAgeAuthLimitType12 = 12, - KOAgeAuthLimitType15 = 15, - KOAgeAuthLimitType18 = 18, - KOAgeAuthLimitType19 = 19 -}; - -/*! - @abstract KOAgeAuthProperty 연령인증 정보 요청시 추가로 더 요청할 수 있는 목록 - @constant KOAgeAuthPropertyAccountCi "account_ci" 를 의미. - */ -typedef NS_ENUM(NSInteger, KOAgeAuthProperty) { - KOAgeAuthPropertyAccountCi = 1 -}; - -@class KOAgeAuthQueryStringBuilder; - -/*! - * @class KOSession - * @abstract 인증 관리 클래스. - */ -@interface KOSession : NSObject - -/*! - * @property appKey - * @abstract 카카오에서 발급한 클라이언트 아이디. (네이티브 앱키) - * @discussion .plist 파일 내에 있는 KAKAO_APP_KEY 값을 읽어옵니다. 해당 키 값이 없거나 빈 문자열인 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - */ -@property(nonatomic, readonly) NSString *appKey; -/*! - * @property redirectUri - * @abstract 클라이언트 실행을 위한 커스텀 스킴 주소 - * @discussion "kakao${KAKAO_APP_KEY}://oauth" 형식의 OAuth 리다이렉트 URI입니다. .plist 파일에 URL Scheme으로 kakao${KAKAO_APP_KEY} 값을 설정해야 합니다. 설정하지 않을 경우 KOSession 인스턴스를 초기화 할 수 없으며 sharedSession 호출 시 nil을 반환합니다. - * @seealso appKey - */ -@property(nonatomic, readonly) NSString *redirectUri; - -@property(nonatomic, readonly, copy) NSString *accessToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. accessToken을 얻고 싶은 경우 token.accessToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSString *refreshToken DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. refreshToken을 얻고 싶은 경우 token.refreshToken을 사용해주세요."); -@property(nonatomic, readonly, copy) NSDate *expiresAccessTokenTime DEPRECATED_MSG_ATTRIBUTE("KOToken 타입의 token 속성으로 통합되었습니다. access token 만료시각을 얻고 싶은 경우 token.accessTokenExpiresAt을 사용해주세요. 추가적으로 refresh token의 만료시각도 제공됩니다."); -/*! - * @property token - * @abstract 로그인 기반 API 인증에 사용되는 OAuth 토큰 - * @discussion KOSessionTask에 있는 API 사용시 자동으로 Authroization 헤더에 현재 access token을 채워줍니다.
- * 발급 받은 토큰은 NSUserDefaults에 저장되고 앱을 종료하고 다시 시작할 경우 세션이 초기화 될 때(ex. sharedSession 최초 호출) 로드됩니다. - * 세션 초기화 시 저장된 토큰을 읽어오는데 성공하면 세션은 open 상태가 되며 일반적인 state 변경 상황과 동일하게 KOSessionDidChangeNotification 알림을 전달 받을 수 있습니다.

- * - * 토큰을 좀 더 안전하게 저장하고 싶을 경우 .plist 파일에 KAKAO_SECURE_MODE를 YES로 설정하여 accessToken과 refreshToken을 암호화 할 수 있습니다. - * 암호화 방식은 SDK 버전에 따라 다르게 제공될 수 있으며 최신 버전에 사용되고 있는 암호화 방식은 1.5.1 버전에서 마지막으로 수정되었습니다. - * KAKAO_SECURE_MODE 설정을 바꾸어서 앱을 배포하고 사용자의 기기에서 업데이트 했을 때 다음 케이스에 대해 마이그레이션을 지원합니다.

- * - * - 평문토큰 to 암호문토큰: KAKAO_SECURE_MODE를 사용하지 않다가 활성화시킨 상태로 업데이트한 경우 등
- * - 암호문토큰 to 평문토큰: KAKAO_SECURE_MODE를 YES로 사용하다가 NO로 변경한 경우 등
- * - (old)암호문토큰 to (new)암호문토큰: KAKAO_SECURE_MODE를 YES로 설정하고 변경하지 않았으나 오래된 버전의 SDK에서 최신(1.5.1이상) SDK로 업데이트한 경우

- * - * 위 케이스에는 앱을 업데이트하고 재시작해도 로그인이 유지되며 이외 케이스는 토큰을 읽어올 수 없으므로 세션이 닫힌 상태로 초기화됩니다. - */ -@property(readonly) KOToken *token; -/*! - * @property state - * @abstract 인증 상태 - */ -@property(nonatomic, readonly) KOSessionState state; -/*! - * @property clientSecret - * @abstract 클라이언트 시크릿. AppDelegate의 application:didFinishLaunchingWithOptions: 메소드에서 값을 설정해주어야 한다. - */ -@property(nonatomic, copy) NSString *clientSecret; - -/*! - * @property automaticPeriodicRefresh - * @abstract access token의 자동 주기적 갱신 여부 설정. 해당 값이 YES일 경우 handleDidBecomeActive시 및 특정 시간 주기로 필요시 토큰을 자동 갱신함. - * @discussion 값을 설정하면 현재 토큰 상태에 따라 타이머를 설정하거나 갱신이 필요할 경우 바로 갱신합니다. 이 속성 값은 기기에 저장되지 않고 메모리에서만 유지되므로 AppDelegate의 application:didFinishLaunchingWithOptions: 메소드 내에서 설정하는 것을 권장합니다. iOS 특성상 앱이 백그라운드로 내려가거나 suspend 상태가 되면 갱신이 불가능합니다. - * @seealso token - */ -@property (nonatomic, getter=isAutomaticPeriodicRefresh) BOOL automaticPeriodicRefresh; - -/*! - * @property presentingViewController - * @abstract login view 가 present 될 뷰컨트롤러를 설정. 지정하지 않을 경우 SDK 자체적으로 최상단 뷰컨트롤러를 탐색합니다. - */ -@property (nonatomic, weak) UIViewController *presentingViewController; - -@property (nonatomic, assign) UIStatusBarStyle presentedViewStatusBarStyle; -@property (nonatomic, strong) UIColor *presentedViewBarTitleColor; -@property (nonatomic, strong) UIColor *presentedViewBarTintColor; -@property (nonatomic, strong) UIColor *presentedViewBarButtonTintColor; -@property (nonatomic, strong) UIImage *presentedViewBarBackgroundImage; - - -/*! - @abstract 현재 session 정보 - */ - -+ (KOSession *)sharedSession; - -/*! - 카카오계정 로그인 callback인지 여부 - @param url 카카오 계정 인증 요청 code 또는 오류정보를 담은 url - */ -+ (BOOL)isKakaoAccountLoginCallback:(NSURL *)url; - -/*! - 카카오계정 연령인증 callback인지 여부 - @param url 카카오 연령인증 요청결과를 담은 url - */ -+ (BOOL)isKakaoAgeAuthCallback:(NSURL *)url; - -/*! - KakaoLink 메시지의 Action인지 여부 - @param url KakaoLink 메시지의 execparam 을 담은 url - */ -+ (BOOL)isKakaoLinkCallback:(NSURL *)url DEPRECATED_ATTRIBUTE; - -/*! - KakaoStory Post의 Action인지 여부 - @param url KakaoStory Post 메시지의 execparam 을 담은 url - */ -+ (BOOL)isStoryPostCallback:(NSURL *)url; - -/*! - url에 포함된 code 정보로 oauth 인증 토큰을 요청한다. 인증 토큰 요청이 완료되면 completionHandler를 실행한다. - @param url 인증 요청 code 또는 오류 정보(error, error_description)를 담은 url - */ -+ (BOOL)handleOpenURL:(NSURL *)url; - -/*! - openWithCompletionHandler로 인증 도중에 빠져나와 앱으로 돌아올때의 인증처리를 취소한다. 보통 applicationDidBecomeActive에서 해당 부분을 호출한다. - */ -+ (void)handleDidBecomeActive; - -/*! - application이 background 상태로 변경시 알려준다. 보통 applicationDidEnterBackground에서 해당 부분을 호출한다. - */ -+ (void)handleDidEnterBackground; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authType 로그인 요청시의 인증 타입(KOAuthType)의 array(var arguments로서 nil-terminated list). 주의) list의 마지막은 꼭 nil로 끝나야함. 예) KOAuthTypeTalk, KOAuthTypeStory, KOAuthTypeAccount, nil - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authType:(KOAuthType)authType, ...; - -/*! - 기기의 로그인 수행 가능한 카카오 앱에 로그인 요청을 전달한다. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 로그인 완료 작업을 수행한다. - @param authTypes 로그인 요청시의 인증 타입(KOAuthType)의 array. - */ -- (void)openWithCompletionHandler:(KOSessionCompletionHandler)completionHandler authTypes:(NSArray *)authTypes; - -/*! - @method updateScopes:completionHandler: - @abstract 현재 로그인된 사용자에게 새로운 scope이 필요할 경우 지정된 동의항목에 대한 동의창을 노출하고 사용자 동의를 유도합니다. 사용자가 동의 버튼을 누르면 해당 scope이 적용된 새로운 토큰으로 세션을 갱신합니다. - @param scopes 요청할 scope 목록 - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 갱신 완료 작업을 수행한다. - */ -- (void)updateScopes:(NSArray *)scopes completionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 현재 기기에서만 로그아웃한다. - @param completionHandler 요청 완료시 실행될 block. - */ -- (void)logoutAndCloseWithCompletionHandler:(KOCompletionSuccessHandler)completionHandler; - -/*! - 인증 토큰을 제거하여 session을 무효화한다. - */ -- (void)close; - -/*! - 인증되어 있는지 여부. [token canRefresh]와 동일한 결과를 리턴합니다. - */ -- (BOOL)isOpen; - -/*! - 세션을 유효한 access token으로 유지하기 위해 서버로 토큰을 요청하고 현재 세션을 갱신한다. - @param completionHandler 갱신 완료시 실행될 block. - */ -- (void)refreshAccessTokenWithCompletionHandler:(KOSessionCompletionHandler)completionHandler; - -/*! - 새로운 연령 인증이 필요할 경우 사용자에게 연령 인증관련 창을 띄워서 연령 인증을 유도합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -- (void)showAgeAuthWithAuthLevel:(KOAgeAuthQueryStringBuilder *) ageAuthQueryStringBuilder - completionHandler:(KOCompletionSuccessHandler)completionHandler; - -@end - -// notifications -/*! - 로그인 인증 정보 변경 노티피케이션 이름 - */ -extern NSString *const KOSessionDidChangeNotification; diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+AgeAuthAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+AgeAuthAPI.h deleted file mode 100644 index 780fc6e..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+AgeAuthAPI.h +++ /dev/null @@ -1,80 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h -#define kakao_open_sdk_ios_KOSessionTask_AgeAuthAPI_h - -/*! - @header KOSessionTask+AgeAuthAPI.h - 인증된 세션정보로 연령인증 관련 API를 정의합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ - -#import "KOSession.h" -#import "KOSessionTask.h" - -/*! - 인증된 세션정보로 연령인증 관련 API를 정의한다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -@interface KOSessionTask (AgeAuthAPI) - -/*! - @abstract 연령인증 정보를 얻는다. (일부 앱에서만 제한적 허용/deprecated 될 예정) - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 해당 유저의 연령인증 정보를 얻는다. - @param ageLimit response의 bypass_age_limit(true/false)를 판단하는 기준 제한 연령. default 는 앱에 설정된 제한 연령기준. - 앱에 설정이 없고 param 으로 주어지지 않으면 bypass_age_limit 은 response 에 포함되지 않음. - @param propertyKeys 추가 동의가 필요로 하는 인증정보를 response 에 포함하고 싶은 경우 해당 KOAgeAuthProperty 셋. - @param completionHandler 연령인증 정보를 가져와서 처리하는 핸들러. - */ -+ (instancetype)ageAuthTaskWithCompletionHandler: (KOAgeAuthLimit)ageLimit - propertyKeys: (NSSet *)propertyKeys - completionHandler: (KOSessionTaskCompletionHandler)completionHandler; - - -@end - -// AgeAuth Results Keys -/*! - 연령인증 정보 확인 시 인증레벨 코드에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelCodeKey; - -/*! - 연령인증 정보 확인 시 인증레벨 타이틀에 대한 키 이름 - */ -extern NSString *const KOAgeAuthLevelKey; - -/*! - 연령인증 정보 확인 시 연령제한 통과 여부에 대한 키 이름 - */ -extern NSString *const KOAgeAuthBypassLimitKey; - -/*! - 연령인증 정보 확인 시 CI값에 대한 키 이름 - */ -extern NSString *const KOAgeAuthCIKey; - -/*! - 연령인증 정보 확인 시 인증날짜에 대한 키 이름 - */ -extern NSString *const KOAgeAuthDateKey; - - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+AppFriendAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+AppFriendAPI.h deleted file mode 100644 index 8cda243..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+AppFriendAPI.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAppFriend.h" -#import "KOBaseContext.h" - -@class KOAppFriendContext; - -/*! - @abstract App Friend API 요청 완료시 호출되는 콜백 핸들러. - @param appFriends 앱 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOAppFriendsTaskCompletionHandler)(NSError *error, NSArray *appFriends); - -@interface KOSessionTask (AppFriendAPI) - -/*! - @abstract 앱에 가입한 카카오톡 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 앱 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)appFriendsWithContext:(KOAppFriendContext *)context - completionHandler:(KOAppFriendsTaskCompletionHandler)completionHandler; - -@end - -/*! - @class KOAppFriendContext - @abstract 앱 친구 목록 페이징의 정보를 처리하기 위한 Context - */ -@interface KOAppFriendContext : KOBaseContext - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+FriendAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+FriendAPI.h deleted file mode 100644 index a3f9641..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+FriendAPI.h +++ /dev/null @@ -1,54 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+FriendAPI.h - 인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - */ -#import "KOSessionTask.h" -#import "KOFriend.h" -#import "KOFriendContext.h" -#import "KOFriendOperation.h" - -/*! - @abstract Friend API 요청 완료시 호출되는 콜백 핸들러. - @param friends 친구 목록. - @param error 호출 실패시의 오류 정보. - */ -typedef void(^KOSessionFriendsTaskCompletionHandler)(NSArray *friends, NSError *error); - -/*! -인증된 session 정보를 바탕으로 Friend 관련 API를 호출할 수 있습니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. -*/ -@interface KOSessionTask (FriendAPI) - -/*! - @abstract 현재 로그인된 사용자의 카카오 친구 목록을 얻어온다. - @param context 친구 목록 페이징 Context. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithContext:(KOFriendContext *)context - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -/*! - @abstract 카카오 친구 목록들의 연산된 결과를 얻어온다. - @param operation 친구 목록 페이징 Operation. - @param completionHandler 카카오 친구 목록 정보를 얻어 처리하는 핸들러. - */ -+ (instancetype)friendsWithOperation:(KOFriendOperation *)operation - completionHandler:(KOSessionFriendsTaskCompletionHandler)completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+PushAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+PushAPI.h deleted file mode 100644 index 2691889..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+PushAPI.h +++ /dev/null @@ -1,70 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOPushTokenInfo.h" -#import "KakaoPushMessageObject.h" - -@class KakaoPushMessageObject; - -/*! - @header KOSessionTask+PushAPI.h - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ - -/*! - 인증된 session 정보를 바탕으로 각종 푸시 알림 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (PushAPI) - -#pragma mark - Push - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 등록합니다. /v1/user/me 에 해당하는 유저의 ID로 자동 등록하게 됩니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러. expiredAt은 등록한 푸시 토큰의 만료까지 남은 기간을 뜻합니다. 보통 30이 리턴되며 30일 남았음을 뜻합니다. - */ -+ (instancetype)pushRegisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSInteger expiredAt, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 Push 토큰을 삭제합니다. 로그아웃할 때, 해당 기기에서 Push 알림 끄기 등의 상황에서 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken 기반으로 요청합니다. - @param deviceToken APNS에 등록된 Device Token. 이 값이 Device ID로도 활용됨 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushDeregisterDeviceWithToken:(NSData *)deviceToken - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰을 삭제합니다. 서비스 탈퇴 시 같이 사용 가능합니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - */ -+ (instancetype)pushDeregisterAllDeviceWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract Push를 전송합니다(테스트용). 해당 API는 테스트 목적으로 만들어졌으며, 해당 기기로 Push를 전송합니다. 실제 다른 사용자들에게 Push를 전송하기 위해서는 AdminKey 방식의 Push 전송 REST API를 사용해야 합니다. - @param pushMsg Push 전송에 필요한 각종 메타 데이터 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)pushSendMsg:(KakaoPushMessageObject *)pushMsg - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 모든 Push 토큰들에 대한 정보를 얻을 수 있습니다. 해당 API는 AdminKey가 아닌 AccessToken을 기반으로 요청합니다. - @param completionHandler Push 토큰의 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)pushGetTokensTaskWithCompletionHandler:(void (^)(NSArray *tokens, NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+StoryAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+StoryAPI.h deleted file mode 100644 index 24d3191..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+StoryAPI.h +++ /dev/null @@ -1,386 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+StoryAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOStoryProfile.h" -#import "KOStoryPostInfo.h" -#import "KOStoryLinkInfo.h" -#import "KOStoryMyStoryInfo.h" -#import "KOStoryMyStoryImageInfo.h" -#import "KOStoryLikeInfo.h" -#import "KOStoryCommentInfo.h" - -/*! - @abstract KOStoryPostPermission 스토리 포스팅 공개 범위 - @constant KOStoryPostPermissionPublic 전체공개 - @constant KOStoryPostPermissionFriend 친구공개 - @constant KOStoryPostPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPostPermission) { - KOStoryPostPermissionPublic = 0, - KOStoryPostPermissionFriend = 1, - KOStoryPostPermissionOnlyMe = 2 -}; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오스토리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (StoryAPI) - -#pragma mark - KakaoStory - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오스토리 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 스토리 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 로컬 이미지 파일을 카카오스토리에 업로드합니다. - @param image (UIImage *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImage:(UIImage *)image - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImages in v1.0.7"); - -/*! - @abstract 로컬 이미지 파일을 데이타 형식으로 카카오스토리에 업로드합니다. - @param imageData (NSData *) 형식의 한장의 이미지 - */ -+ (instancetype)storyImageUploadTaskWithImageData:(NSData *)imageData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyMultiImageUploadTaskWithImageData in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오 스토리에 포스팅합니다. - @param content 내용 - @param imageUrl 이미지 url(storyImageUploadTaskWithImage 호출 후 반환되는 url을 설정) - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - imageUrl:(NSString *)imageUrl - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler DEPRECATED_MSG_ATTRIBUTE("Replaced by storyPostNoteTaskWithContent or storyPostPhotoTaskWithImageUrls in v1.0.7"); - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 얻을 수 있습니다. comments, likes등의 상세정보도 포함됩니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(KOStoryMyStoryInfo *myStory, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 복수개의 내스토리 정보들을 얻을 수 있습니다. 단, comments, likes등의 상세정보는 없으며 이는 내스토리 정보 요청(storyGetMyStoryTaskWithMyStoryId)을 통해 얻을 수 있습니다. - @param lastMyStoryId 복수개의 내스토리 정보들을 얻기 위한 가장 최근의 내스토리 정보(myStory)의 id(포스트 id). 주어진 id의 시간을 기준으로 해당 id를 제외한 약 18개정도의 하위 myStory들이 반환된다. optional. - @param completionHandler 내스토리 정보들을 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetMyStoriesTaskWithLastMyStoryId:(NSString *)lastMyStoryId - completionHandler:(void (^)(NSArray *myStories, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 스크랩을 하기 위한 링크 정보를 얻을 수 있습니다. - @param url 스크랩을 하여 링크 정보를 얻기 위한 url. required. - @param completionHandler 스토리 링크 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyGetLinkInfoTaskWithUrl:(NSString *)url - completionHandler:(void (^)(KOStoryLinkInfo *link, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 글(노트)을 포스팅합니다. - @param content 내용. required. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostNoteTaskWithContent:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 사진(들)을 포스팅합니다. - @param imageUrls 이미지 url들을 포함한 array(storyMultiImageUploadTaskWithImages 호출 후 반환되는 url들을 설정). required. - @param content 사진과 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정. optional. - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정. optional. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostPhotoTaskWithImageUrls:(NSArray *)imageUrls - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParam 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParam iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParam 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParam iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParam:(NSDictionary *)androidMarketParam - iosMarketParam:(NSDictionary *)iosMarketParam - androidExecParam:(NSDictionary *)androidExecParam - iosExecParam:(NSDictionary *)iosExecParam - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리에 링크(스크랩 정보)를 포스팅합니다. - @param linkInfo 스크랩(storyGetLinkInfoTaskWithUrl)을 통해 얻은 링크 객체. requried. - @param content 스크랩을 통해 얻은 링크를 포스팅할 때 함께 할 내용. optional. - @param permission permission으로 친구공개(KOStoryPostPermissionFriend) 또는 전체공개(KOStoryPostPermissionPublic) 또는 나만보기(KOStoryPostPermissionOnlyMe). default KOStoryPostPermissionPublic. optional. - @param sharable permission이 친구공개(KOStoryPostPermissionFriend)에 한해서 공유를 허용할지 안할지의 여부. default NO. optional. - @param androidMarketParamString 안드로이드 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param iosMarketParamString iOS 앱연결 시 마켓으로 이동할 링크에 추가할 파라미터 설정. optional. - @param androidExecParamString 안드로이드 앱연결 링크에 추가할 파라미터 설정 - @param iosExecParamString iOS 앱연결 링크에 추가할 파라미터 설정 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyPostLinkTaskWithLinkInfo:(KOStoryLinkInfo *)linkInfo - content:(NSString *)content - permission:(KOStoryPostPermission)permission - sharable:(BOOL)sharable - androidMarketParamString:(NSString *)androidMarketParamString - iosMarketParamString:(NSString *)iosMarketParamString - androidExecParamString:(NSString *)androidExecParamString - iosExecParamString:(NSString *)iosExecParamString - completionHandler:(void (^)(KOStoryPostInfo *post, NSError *error))completionHandler; - -/*! - @abstract 로컬 이미지 파일 여러장을 카카오스토리에 업로드합니다. - @param images jpeg을 위한 (UIImage *) 또는 gif를 위한 (NSData *) 형식의 여러장의 이미지 array. 최대 5개까지 허용. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyMultiImagesUploadTaskWithImages:(NSArray *)images - completionHandler:(void (^)(NSArray *imageUrls, NSError *error))completionHandler; - -/*! - @abstract 해당 사용자가 카카오스토리 사용자인지 아닌지를 판별합니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)storyIsStoryUserTaskWithCompletionHandler:(void (^)(BOOL isStoryUser, NSError *error))completionHandler; - -/*! - @abstract 카카오스토리의 특정 내스토리 정보를 지울 수 있습니다. - @param myStoryId 내스토리 정보(myStory)의 id(포스트 id). required. - @param completionHandler 내스토리 정보에 대한 삭제의 결과를 얻어 처리하는 핸들러 - */ -+ (instancetype)storyDeleteMyStoryTaskWithMyStoryId:(NSString *)myStoryId - completionHandler:(void (^)(NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+TalkAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+TalkAPI.h deleted file mode 100644 index a849c46..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+TalkAPI.h +++ /dev/null @@ -1,185 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOSessionTask+TalkAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ - -#import "KOSessionTask.h" -#import "KOTalkProfile.h" -#import "KOChatContext.h" - -#import "KOUser.h" -#import "KOChat.h" -#import "KOFriend.h" - -DEPRECATED_ATTRIBUTE -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverType) { - KOTalkMessageReceiverTypeUser = 0, - KOTalkMessageReceiverTypeFriend = 1, - KOTalkMessageReceiverTypeChat = 2 -}; - -/*! - @abstract KOTalkMessageReceiverIDType - @constant KOTalkMessageReceiverIDTypeUUID 메시지 수신 대상의 UUID. KOUserInfo.uuid - @constant KOTalkMessageReceiverIDTypeUser 메시지 수신 대상의 사용자 ID. KOUserInfo.ID - @constant KOTalkMessageReceiverIDTypeChat 메시지 수신 대상 채팅방 ID. KOChat.ID - */ -typedef NS_ENUM(NSInteger, KOTalkMessageReceiverIDType) { - KOTalkMessageReceiverIDTypeUser = 1, - KOTalkMessageReceiverIDTypeChat = 2, - KOTalkMessageReceiverIDTypeUUID = 3, -}; - -@class KMTTemplate; - -/*! - 인증된 session 정보를 바탕으로 각종 카카오톡 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (TalkAPI) - -#pragma mark - Send Message v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplate:(KMTTemplate *)templateObj - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param receiverType 메시지 수신 대상 ID의 타입. - @param receiverId 메시지를 수신할 대상(채팅방 또는 사용자)의 ID. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMessageSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - receiverType:(KOTalkMessageReceiverIDType)receiverType - receiverId:(id)receiverId - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Send Memo v2 - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(v2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -+ (instancetype)talkMemoSendTaskWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - - -#pragma mark - Profile - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/*! - @abstract 현재 로그인된 사용자의 카카오톡 프로필 정보를 얻을 수 있습니다. - @param secureResource 프로필, 썸네일 이미지 등의 리소스 정보들에 대해 https를 지원하는 형식으로 응답을 받을지의 여부. YES일 경우 https지원, NO일 경우 http지원. - @param completionHandler 카카오톡 프로필 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)talkProfileTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - - -#pragma mark - Chat List - -/*! - @abstract 카카오톡 채팅방 목록을 가져옵니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param context 채팅방 목록을 불러올 때, 페이징 정보를 처리하기 위한 context. - @param completionHandler 카카오톡 채팅방 목록을 가져와서 처리하는 핸들러. - */ -+ (instancetype)talkChatListTaskWithContext:(KOChatContext *)context - completionHandler:(void (^)(NSArray *chats, NSError *error))completionHandler; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+TokenAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+TokenAPI.h deleted file mode 100644 index 473c1d9..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+TokenAPI.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOAccessTokenInfo.h" - -/*! - @header KOSessionTask+TokenAPI.h - 인증된 access token 정보를 얻어올 수 있습니다. - */ - -/*! - @abstract access token 정보를 얻을 때 사용하는 완료 콜백 핸들러 - @param accessTokenInfo 해당 access token의 정보 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionAccessTokenInfoTaskCompletionHandler)(KOAccessTokenInfo *accessTokenInfo, NSError *error); - -/*! - 인증된 access token 정보를 얻어올 수 있습니다. - */ -@interface KOSessionTask (TokenAPI) - -/*! - @abstract 현재 로그인된 사용자의 AccessTokenInfo 정보를 얻을 수 있습니다. - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)accessTokenInfoTaskWithCompletionHandler:(KOSessionAccessTokenInfoTaskCompletionHandler)completionHandler; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+UserManagementAPI.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+UserManagementAPI.h deleted file mode 100644 index a0794b4..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask+UserManagementAPI.h +++ /dev/null @@ -1,82 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import "KOSessionTask.h" -#import "KOUser.h" -#import "KOUserMe.h" - -/*! - @header KOSessionTask+UserManagementAPI.h - @abstract 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ - -typedef void (^KOSessionTaskUserMeCompletionHandler)(NSError *error, KOUserMe *me); - -/*! - 인증된 session 정보를 바탕으로 각종 사용자 관리 API를 호출할 수 있습니다. - */ -@interface KOSessionTask (UserManagementAPI) -#pragma mark - UserManagement - -/*! - * @method userMeTaskWithCompletion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithCompletion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - * @method userMeTaskWithPropertyKeys:completion: - * @abstract 현재 로그인된 사용자에 대한 정보를 얻을 수 있습니다. - * @param propertyKeys 특정 프로퍼티를 지정하여 받고 싶을 경우 요청할 프로퍼티 키 이름 목록. - * @param completion 사용자 정보를 얻어 처리하는 핸들러 - */ -+ (instancetype)userMeTaskWithPropertyKeys:(NSArray *)propertyKeys completion:(KOSessionTaskUserMeCompletionHandler)completion; - -/*! - @abstract 현재 로그인된 사용자의 속성(Property)를 설정할 수 있습니다. - @param properties 갱신할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)profileUpdateTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱을 연결합니다(가입). - @param properties 가입시 함께 설정할 사용자 정보 - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)signupTaskWithProperties:(NSDictionary *)properties - completionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - -/*! - @abstract 카카오 플랫폼 서비스와 앱 연결을 해제합니다(탈퇴). - @param completionHandler 요청 완료시 실행될 핸들러 - */ -+ (instancetype)unlinkTaskWithCompletionHandler:(void (^)(BOOL success, NSError *error))completionHandler; - - - -+ (instancetype)meTaskWithCompletionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 카카오계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithPropertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); -+ (instancetype)meTaskWithSecureResource:(BOOL)secureResource - propertyKeys:(NSArray *)propertyKeys - completionHandler:(KOSessionTaskCompletionHandler)completionHandler DEPRECATED_MSG_ATTRIBUTE("전화번호 로그인이 오픈되면서 이메일이 없는 계정이 존재할 수 있습니다. 다양한 상황에 대처할 수 있는 /v2/user/me가 적용된 userMeTaskWithCompletion: 메소드를 사용해주세요."); - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask.h deleted file mode 100644 index 58a86fc..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOSessionTask.h +++ /dev/null @@ -1,116 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOHTTPMethod.h" - -/*! - @typedef KOSessionTaskCompletionHandler - @abstract 각종 API 요청 완료시 호출되는 콜백 핸들러 - @param result 해당 API 요청의 결과 - @param error 호출 실패시의 오류 정보 - */ -typedef void(^KOSessionTaskCompletionHandler)(id result, NSError *error); - -@interface KOSessionTask : NSObject - -- (id)initWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -- (id)initWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod -multipartFormData:(BOOL)multipartFormData -completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithPath:(NSString *)path - version:(NSUInteger)version - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -+ (instancetype)taskWithURL:(NSURL *)URL - headers:(NSDictionary *)headers - parameters:(NSDictionary *)parameters - httpMethod:(KORequestHTTPMethod)httpMethod - multipartFormData:(BOOL)multipartFormData - completionHandler:(KOSessionTaskCompletionHandler)completionHandler; - -/* - @abstract 해당 API 요청을 취소 - */ -- (void)cancel; - -/* - @abstract 해당 API 요청을 취소 - @param error 취소할 때 발생시키고자 하는(원인) NSError. - */ -- (void)cancelWithError:(NSError *)error; - -/* - @abstract API 요청시의 타임아웃을 설정 - @param timeoutInterval second단위의 타임아웃 값(NSTimeInterval). 기본 30초. - */ -+ (void)setRequestTimeoutInterval:(NSTimeInterval)timeoutInterval; -+ (NSTimeInterval)requestTimeoutInterval; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStorageImageInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStorageImageInfo.h deleted file mode 100644 index eefdf1a..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStorageImageInfo.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStorageImageInfo.h - Storage API를 통해서 이미지를 업로드 후, 이미지 URL 정보를 얻을 수 있습니다. - */ - -#import - -/*! - @class KOStorageImageInfo - @discussion 저장소에 업로드된 이미지 URL 정보를 얻을 수 있습니다. - */ - -@interface KOStorageImageInfo : NSObject - -/*! - @property originImageURL - @abstract 원본 이미지 URL - */ -@property (nonatomic, readonly) NSString *originImageURL; - -/*! - @property profileImageURL - @abstract 프로필 이미지 URL. 사이즈 640px * 640px - */ -@property (nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailImageURL - @abstract 썸네일 이미지 URL. 사이즈 110px * 110px - */ -@property (nonatomic, readonly) NSString *thumbnailImageURL; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryActorInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryActorInfo.h deleted file mode 100644 index ea595fb..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryActorInfo.h +++ /dev/null @@ -1,47 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryActorInfo.h - 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryActorInfo - @discussion 카카오스토리의 작성자 정보를 담고 있는 구조체. - */ -@interface KOStoryActorInfo : NSObject - -/*! - @property profileThumbnailUrl - @abstract 작성자의 썸네일에 대한 URL - */ -@property(nonatomic, readonly) NSString *profileThumbnailUrl; - -/*! - @property displayName - @abstract 작성자의 표시되는 이름 - */ -@property(nonatomic, readonly) NSString *displayName; - -- (id)initWithProfileThumbnailUrl:(NSString *)profileThumbnailUrl - displayName:(NSString *)displayName; - -- (id)copyWithZone:(NSZone *)zone; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryCommentInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryCommentInfo.h deleted file mode 100644 index 1893a70..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryCommentInfo.h +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryCommentInfo.h - 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @class KOStoryCommentInfo - @discussion 카카오스토리의 댓글 정보를 담고 있는 구조체. - */ -@interface KOStoryCommentInfo : NSObject - -/*! - @property text - @abstract 댓글의 텍스트 내용 - */ -@property(nonatomic, readonly) NSString *text; - -/*! - @property writer - @abstract 댓글의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *writer; - -- (id)initWithText:(NSString *)text - writer:(KOStoryActorInfo *)writer; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryLikeInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryLikeInfo.h deleted file mode 100644 index ecce523..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryLikeInfo.h +++ /dev/null @@ -1,66 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLikeInfo.h - @abstract 카카오스토리의 내스토리 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ - -#import -#import "KOStoryActorInfo.h" - -/*! - @abstract KOStoryEmotion 느낌(감정표현)에 대한 정의. - @constant KOStoryEmotionUnknown 알수 없는 형식 - @constant KOStoryEmotionLike 좋아요 - @constant KOStoryEmotionCool 멋져요 - @constant KOStoryEmotionHappy 기뻐요 - @constant KOStoryEmotionSad 슬퍼요 - @constant KOStoryEmotionCheerUp 힘내요 - */ -typedef NS_ENUM(NSInteger, KOStoryEmotion) { - KOStoryEmotionUnknown = 0, - KOStoryEmotionLike = 1, - KOStoryEmotionCool = 2, - KOStoryEmotionHappy = 3, - KOStoryEmotionSad = 4, - KOStoryEmotionCheerUp = 5 -}; - -/*! - @class KOStoryLikeInfo - @abstract 카카오스토리의 좋아요 등 느낌(감정표현)에 대한 정보를 담고 있는 구조체. - */ -@interface KOStoryLikeInfo : NSObject - -/*! - @property emotion - @abstract 느낌에 대한 정보. 예) 좋아요, 멋져요, 기뻐요, 슬퍼요, 힘내요 - */ -@property(nonatomic, readonly) KOStoryEmotion emotion; - -/*! - @property actor - @abstract 느낌의 작성자 - */ -@property(nonatomic, readonly) KOStoryActorInfo *actor; - -- (id)initWithEmotion:(KOStoryEmotion)emotion - actor:(KOStoryActorInfo *)actor; - -- (NSString *)convertEmotionToString:(KOStoryEmotion)emotion; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryLinkInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryLinkInfo.h deleted file mode 100644 index 5f9c97d..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryLinkInfo.h +++ /dev/null @@ -1,88 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryLinkInfo.h - 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryLinkInfo - @discussion 카카오스토리의 스크랩한 링크 정보를 담고 있는 구조체. - */ - -@interface KOStoryLinkInfo : NSObject - -/*! - @property url - @abstract 스크랩 한 주소의 URL. shorten URL의 경우 resolution한 실제 URL - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property requestedUrl - @abstract 요청시의 URL 원본. resolution을 하기 전의 URL - */ -@property(nonatomic, readonly) NSString *requestedUrl; - -/*! - @property host - @abstract 스크랩한 host - */ -@property(nonatomic, readonly) NSString *host; - -/*! - @property title - @abstract 해당 웹 페이지의 제목 - */ -@property(nonatomic, readonly) NSString *title; - -/*! - @property image - @abstract 해당 웹 페이지의 대표 이미지 주소의 url array. 최대 3개. - */ -@property(nonatomic, readonly) NSArray *image; - -/*! - @property desc - @abstract 해당 웹 페이지의 설명 - */ -@property(nonatomic, readonly) NSString *desc; - -/*! - @property section - @abstract 해당 웹 페이지의 섹션 정보 - */ -@property(nonatomic, readonly) NSString *section; - -/*! - @property type - @abstract 해당 웹 페이지의 콘텐츠 타입. 예) video, music, book, article, profile, website 등. - */ -@property(nonatomic, readonly) NSString *type; - -- (id)initWithUrl:(NSString *)url - requestedUrl:(NSString *)requestedUrl - host:(NSString *)host - title:(NSString *)title - image:(NSArray *)image - desc:(NSString *)desc - section:(NSString *)section - type:(NSString *)type; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryMyStoryImageInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryMyStoryImageInfo.h deleted file mode 100644 index 6dd280e..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryMyStoryImageInfo.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryImageInfo.h - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryMyStoryImageInfo - @abstract 카카오스토리의 내스토리 정보 중 이미지 내용을 담고 있는 구조체. - */ -@interface KOStoryMyStoryImageInfo : NSObject - -/*! - @property original - @abstract 원본 이미지의 url - */ -@property(nonatomic, readonly) NSString *original; - -/*! - @property xlarge - @abstract xlarge 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *xlarge; - -/*! - @property large - @abstract large 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *large; - -/*! - @property medium - @abstract medium 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *medium; - -/*! - @property small - @abstract small 사이즈 이미지의 url - */ -@property(nonatomic, readonly) NSString *small; - - -- (id)initWithOriginal:(NSString *)original - xlarge:(NSString *)xlarge - large:(NSString *)large - medium:(NSString *)medium - small:(NSString *)small; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryMyStoryInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryMyStoryInfo.h deleted file mode 100644 index f4a2386..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryMyStoryInfo.h +++ /dev/null @@ -1,146 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryMyStoryInfo.h - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -#import - -/*! - @abstract KOStoryMediaType 스토리의 미디어 형식 - @constant KOStoryMediaTypeUnknown 알수 없는 미디어 형식 - @constant KOStoryMediaTypeNotSupported 지원되지 않는 미디어 형식 - @constant KOStoryMediaTypeNote 텍스트 같은 노트 형식 - @constant KOStoryMediaTypePhoto 사진 이미지 같은 포토 형식 - */ -typedef NS_ENUM(NSInteger, KOStoryMediaType) { - KOStoryMediaTypeUnknown = 0, - KOStoryMediaTypeNotSupported = 1, - KOStoryMediaTypeNote = 2, - KOStoryMediaTypePhoto = 3 -}; - -/*! - @abstract KOStoryPermission 스토리의 공개 범위 - @constant KOStoryPermissionUnknown 알수 없는 공개 범위 - @constant KOStoryPermissionPublic 전체공개 - @constant KOStoryPermissionFriend 친구공개 - @constant KOStoryPermissionOnlyMe 나만보기 - */ -typedef NS_ENUM(NSInteger, KOStoryPermission) { - KOStoryPermissionUnknown = 0, - KOStoryPermissionPublic = 1, - KOStoryPermissionFriend = 2, - KOStoryPermissionOnlyMe = 3 -}; - -@class KOStoryMyStoryImageInfo; -@class KOStoryCommentInfo; -@class KOStoryLikeInfo; - -/*! - @class KOStoryMyStoryInfo - @abstract 카카오스토리의 내스토리 정보를 담고 있는 구조체. - */ - -@interface KOStoryMyStoryInfo : NSObject - -/*! - @property ID - @abstract 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -/*! - @property content - @abstract 내스토리 정보의 내용 - */ -@property(nonatomic, readonly) NSString *content; - -/*! - @property mediaType - @abstract 내스토리 정보의 미디어타입. 예) NOTE, PHOTO, LINK, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryMediaType mediaType; - -/*! - @property createdAt - @abstract 내스토리 정보의 생성시간. RFC3339를 따름. - */ -@property(nonatomic, readonly) NSString *createdAt; - -/*! - @property media - @abstract 내스토리 정보의 미디어타입이 PHOTO일 경우 이미지 내용의 array. KOStoryMyStoryImageInfo 객체의 array. - */ -@property(nonatomic, readonly) NSArray *media; - -/*! - @property url - @abstract 내스토리 정보의 url - */ -@property(nonatomic, readonly) NSString *url; - -/*! - @property commentCount - @abstract 내스토리 정보의 comment 숫자 - */ -@property(nonatomic, readonly) NSNumber *commentCount; - -/*! - @property likeCount - @abstract 내스토리 정보의 like 숫자 - */ -@property(nonatomic, readonly) NSNumber *likeCount; - -/*! - @property comments - @abstract 댓글 정보들을 담고 있는 array. KOStoryCommentInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *comments; - -/*! - @property likes - @abstract 좋아요 등 느낌(감성표현)에 대한 정보들을 담고 있는 array. KOStoryLikeInfo 객체의 array. 내스토리 정보 요청을 통해 값이 채워짐. - */ -@property(nonatomic, readonly) NSArray *likes; - -/*! - @property permission - @abstract 내스토리 정보의 공개 범위. 예) PUBLIC, FRIEND, ONLY_ME, UNKNOWN - */ -@property(nonatomic, readonly) KOStoryPermission permission; - - -- (id)initWithID:(NSString *)myStoryID - content:(NSString *)content - mediaType:(KOStoryMediaType)mediaType - createdAt:(NSString *)createdAt - media:(NSArray *)media - url:(NSString *)url - commentCount:(NSNumber *)commentCount - likeCount:(NSNumber *)likeCount - comments:(NSArray *)comments - likes:(NSArray *)likes - permission:(KOStoryPermission)permission; - -- (NSString *)convertMediaTypeToString:(KOStoryMediaType)mediaType; - -- (NSString *)convertPermissionToString:(KOStoryPermission)permission; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryPostInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryPostInfo.h deleted file mode 100644 index 4300005..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryPostInfo.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryPostInfo.h - 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -#import - -/*! - @class KOStoryPostInfo - @discussion 카카오스토리에 포스팅 한 정보를 담고 있는 구조체. - */ - -@interface KOStoryPostInfo : NSObject - -/*! - @property ID - @abstract 포스팅 한 내스토리 정보의 id(포스트 id) - */ -@property(nonatomic, readonly) NSString *ID; - -- (id)initWithID:(NSString *)myStoryID; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryProfile.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryProfile.h deleted file mode 100644 index 33b5fb5..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOStoryProfile.h +++ /dev/null @@ -1,86 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOStoryProfile.h - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @abstract KOStoryProfileBirthdayType 스토리 프로필의 생일 타입 - @constant KOStoryProfileBirthdayTypeSolar 양력 - @constant KOStoryProfileBirthdayTypeLunar 음력 - */ -typedef NS_ENUM(NSInteger, KOStoryProfileBirthdayType) { - KOStoryProfileBirthdayTypeSolar = 0, - KOStoryProfileBirthdayTypeLunar = 1 -}; - -/*! - @class KOStoryProfile - @abstract 카카오스토리 사용자 정보를 담고 있는 구조체. - */ -@interface KOStoryProfile : NSObject - -/*! - * @property nickName - * @abstract 카카오스토리 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; -/*! - * @property profileImageURL - * @abstract 카카오스토리 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; -/*! - * @property thumbnailURL - * @abstract 카카오스토리 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; -/*! - * @property bgImageURL - * @abstract 카카오스토리 배경이미지 URL - */ -@property(nonatomic, readonly) NSString *bgImageURL; - -/*! - @property birthday - @abstract 생일. MMdd - */ -@property(nonatomic, readonly) NSString *birthday; - -/*! - @property birthdayType - @abstract 생일 타입. SOLAR 또는 LUNAR - */ -@property(nonatomic, readonly) KOStoryProfileBirthdayType birthdayType; - -/*! - @property permalink - @abstract 내 스토리를 방문할 수 있는 웹 page의 URL - */ -@property(nonatomic, readonly) NSString *permalink; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - bgImageURL:(NSString *)bgImageURL - birthday:(NSString *)birthday - birthdayType:(KOStoryProfileBirthdayType)birthdayType - permalink:(NSString *)permalink; -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOTalkMessageSending.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOTalkMessageSending.h deleted file mode 100644 index 550fdbe..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOTalkMessageSending.h +++ /dev/null @@ -1,120 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkMessageSending.h - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜입니다. - */ - -#ifndef kakao_open_sdk_ios_KOTalkMessageSending_h -#define kakao_open_sdk_ios_KOTalkMessageSending_h - -#import "KOSessionTask.h" - -@class KMTTemplate; - -/*! - @protocol KOTalkMessageSending - @abstract 카카오톡 메시지를 전송하기 위해 구현해야 하는 프로토콜 - */ -@protocol KOTalkMessageSending - -@required - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡으로 메시지를 전송합니다. 제휴를 통해 권한이 부여된 특정 앱에서만 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMessageWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - - -@optional - -/*! - @abstract 기본 제공되는 템플릿을 이용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @discussion KMTTemplate 클래스는 KakaoMessageTemplate.framework에 포함되어 있습니다. 이 메소드를 사용하기 위해서는 Build Phases > Link Binary With Libraries 설정에 KakaoMessageTemplate.framework를 추가해야 합니다. - @param templateObj 전송할 메시지 템플릿 오브젝트. KMTTemplate 클래스를 직접 생성해서 사용할 수 없고 원하는 템플릿에 맞는 적절한 하위 클래스로 오브젝트를 생성해야 함. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplate:(KMTTemplate *)templateObj - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 지정된 URL을 스크랩하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param URL 스크랩할 URL. 개발자사이트 앱 설정에 등록된 도메인만 허용됨. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithURL:(NSURL *)URL - templateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -/*! - @abstract 미리 지정된 메시지 템플릿(V2)을 사용하여, 카카오톡의 "나와의 채팅방"으로 메시지를 전송합니다. 모든 앱에서 호출 가능합니다. - @param templateId 전송할 메시지 템플릿 ID. - @param templateArgs 메시지 템플릿을 완성하기 위해 필요한 추가 파라미터 정보. - @param completionHandler 요청 완료시 실행될 block. 오류 처리와 전송 완료 시 수행된다. - */ -- (KOSessionTask *)sendMemoWithTemplateId:(NSString *)templateId - templateArgs:(NSDictionary *)templateArgs - completionHandler:(void (^)(NSError *error))completionHandler; - -@end - -#endif diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOTalkProfile.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOTalkProfile.h deleted file mode 100644 index 351157b..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOTalkProfile.h +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOTalkProfile.h - 카카오톡 사용자 정보를 담고 있는 구조체. - */ -#import - -/*! - @class KOTalkProfile - @discussion 카카오톡 사용자 정보를 담고 있는 구조체. - */ -@interface KOTalkProfile : NSObject - -/*! - @property nickName - @abstract 카카오톡 닉네임 - */ -@property(nonatomic, readonly) NSString *nickName; - -/*! - @property profileImageURL - @abstract 카카오톡 프로필 이미지 URL - */ -@property(nonatomic, readonly) NSString *profileImageURL; - -/*! - @property thumbnailURL - @abstract 카카오톡 프로필 이미지 썸네일 URL - */ -@property(nonatomic, readonly) NSString *thumbnailURL; - -/*! - @property countryISO - @abstract 카카오톡 국가 코드 - */ -@property(nonatomic, readonly) NSString *countryISO; - - -- (id)initWithNickname:(NSString *)nickName - profileImageURL:(NSString *)profileImageURL - thumbnailURL:(NSString *)thumbnailURL - countryISO:(NSString *)countryISO; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOToken.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOToken.h deleted file mode 100644 index 1b86847..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOToken.h +++ /dev/null @@ -1,91 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOToken.h - 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ - -#import - -NS_ASSUME_NONNULL_BEGIN - -/*! - * @class KOToken - * @abstract 카카오 API에서 제공하는 OAuth 토큰 클래스입니다. - */ -@interface KOToken : NSObject - -/*! - * @property accessToken - * @abstract 카카오 API를 이용하여 특정 사용자의 리소스에 접근하기 위한 OAuth 토큰. - */ -@property (readonly) NSString *accessToken; -/*! - * @property refreshToken - * @abstract accessToken을 갱신하기 위한 토큰. - */ -@property (readonly) NSString *refreshToken; -/*! - * @property accessTokenExpiresAt - * @abstract accessToken이 만료되는 시각. 네이티브 앱키로 요청한 accessToken 기본 만료시간: 12시간. - */ -@property (readonly) NSDate *accessTokenExpiresAt; -/*! - * @property refreshTokenExpiresAt - * @abstract refreshToken이 만료되는 시각. 네이티브 앱키로 요청한 refreshToken 기본 만료시간: 30일. - * @discussion 이 속성은 1.8.0 버전부터 제공되고 있습니다.
- * 만약 앱 업데이트 전에 구버전 SDK로 발급 받았던 토큰이 남아 있어서 KOSession.token을 통해 접근하는 경우 새로 로그인하거나 refreshToken이 갱신되기 전까지 값이 없을 수 있습니다. - * 값이 없는 경우는 구버전 토큰으로 가정하여 갱신 가능한 상태로 판단합니다.(canRefresh = YES) 그러나 실제로 서버로 갱신을 요청했을 때 리프레시 토큰이 만료되었다면 갱신에 실패합니다. - * @seealso canRefresh - */ -@property (readonly, nullable) NSDate *refreshTokenExpiresAt; -/*! - * @property scopes - * @abstract 현재 로그인된 사용자가 동의한 scope 목록 - */ -@property (readonly) NSArray *scopes; - -/*! - * @method canRefresh - * @abstract refresh token이 사용 가능한 상태인지 여부. 이 값이 YES이면 access token을 계속 갱신하여 사용 가능함. - * @discussion 클라이언트가 가지고 있는 access token 및 refresh token의 만료 시간은 서버와 정확히 일치하지 않을 수 있으며 - * 토큰 발급을 위해 로그인한 카카오계정 상태에 변동이 있는 경우 당시의 카카오 정책에 따라 일괄적으로 만료될 수 있습니다. - * 예를 들어 카카오계정의 비밀번호가 변경되면 현재 발급되어 있는 모든 토큰이 만료됩니다. - * 따라서 실제 토큰 유효성 여부는 토큰 갱신 등을 서버로 요청해야만 정확한 확인이 가능하며 클라이언트의 만료시간을 보고 토큰이 유효하다고 판단하는 것은 권장하지 않습니다. - * @return refreshToken이 있고 현재 시간이 refreshTokenExpiresAt보다 과거인 경우 YES
- * refreshToken이 있고 refreshTokenExpiresAt가 nil인 경우(구버전 SDK에서 발급받은 토큰) YES
- * 아니면 NO - * @seealso refreshTokenExpiresAt - */ -- (BOOL)canRefresh; -/*! - * @method remainingExpireTime - * @abstract accessTokenExpiresAt 까지 남은 시간 - * @return 음수이면 accessToken이 만료되었음을 의미함 - * @seealso - */ -- (NSTimeInterval)remainingExpireTime; - -- (nullable instancetype)initWithAccessToken:(NSString *)accessToken - refeshToken:(NSString *)refreshToken - accessTokenExpiresAt:(NSDate *)accessTokenExpiresAt - refreshTokenExpiresAt:(nullable NSDate *)refreshTokenExpiresAt - scopes:(nullable NSArray *)scopes; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUser.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUser.h deleted file mode 100644 index 04f57aa..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUser.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUser.h - 사용자 정보를 담고 있는 구조체. - */ -#import -#import "KOUserInfo.h" - -NS_ASSUME_NONNULL_BEGIN - -DEPRECATED_MSG_ATTRIBUTE("이 클래스는 v1 user/me용 클래스입니다. v2가 적용된 KOSessionTask.userMeTask 메소드와 KOUserMe 클래스를 사용해주세요.") -@interface KOUser : KOUserInfo - -@property(nonatomic, readonly, nullable) NSString *email; -@property(nonatomic, readonly, getter=isVerifiedEmail) BOOL verifiedEmail; -@property(nonatomic, readonly, nullable) NSDictionary *properties; - -- (id)propertyForKey:(NSString *)key; - -+ (instancetype)responseWithDictionary:(NSDictionary *)dictionary; - -@end - -/*! - 프로퍼티 키 이름 - */ -extern NSString *const KOUserNicknamePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserProfileImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserThumbnailImagePropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserEmailPropertyKey DEPRECATED_ATTRIBUTE; -extern NSString *const KOUserIsVerifiedEmailPropertyKey DEPRECATED_ATTRIBUTE; - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUserInfo.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUserInfo.h deleted file mode 100644 index e31634f..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUserInfo.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOTalkMessageSending.h" - -extern NSString const *EXTRA_KEY_SERVICE_USER_ID; -extern NSString const *EXTRA_KEY_INVITE_MESSAGE_REMAINING_COUNT; -extern NSString const *EXTRA_KEY_GROUP_CHAT_MESSAGE_REMAINING_COUNT; - -@interface KOUserInfo : NSObject - -- (instancetype)initWithDictionary:(NSDictionary *)dictionary; - -/* - @property ID - @abstract 가입자에 대한 앱내 고유한 사용자 ID. 해당 사용자가 앱 연결 해제(탈퇴)를 하지 않는 한 변하지 않는 고유한 식별자입니다. 미가입자의 경우 해당 정보가 존재하지 않습니다. - */ -@property (nonatomic, readonly) NSNumber *ID; - - -/* - @property uuid - @abstract 가입 여부와 관계없는 앱내 고유한 ID. 카카오 서비스의 회원임을 앱내에서 식별 할 수 있지만, 사용자의 계정 상태에 따라 이 정보는 바뀔 수 있습니다. 앱내의 사용자 식별자로 저장 사용되는 것은 권장하지 않습니다. 앱의 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSString *uuid; - -/* - @property extras - @abstract User extra 정보. 앱의 특정 카테고리나 특정 권한에 한 해 존재합니다. - */ -@property (nonatomic, readonly) NSDictionary *extras; - - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUserMe.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUserMe.h deleted file mode 100644 index bb945f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUserMe.h +++ /dev/null @@ -1,321 +0,0 @@ -/** - * Copyright 2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - * @header KOUserMe.h - * @abstract 사용자 정보 요청(user/me) API로 얻어오는 사용자 정보 관련 클래스 - */ - -#import -#import "KOTalkMessageSending.h" -#import "KOSession.h" - -NS_ASSUME_NONNULL_BEGIN - -@class KOUserMeAccount; - -/*! - * @class KOUserMe - * @abstract 사용자 정보를 나타내는 최상위 클래스. ID, 카카오계정 정보, 프로퍼티 등으로 구성됩니다. - */ -@interface KOUserMe : NSObject - -/*! - * @property hasSignedUp - * @abstract 현재 로그인한 사용자가 앱에 연결(signup)되어 있는지 여부 - * @discussion 사용자관리 설정에서 자동연결 옵션을 off한 앱에서만 사용되는 값입니다. 자동연결의 기본값은 on이며 이 경우 값이 null로 반환되고 이미 연결되어 있음을 의미합니다. - */ -@property (readonly) KOOptionalBoolean hasSignedUp; -/*! - * @property ID - * @abstract 사용자의 고유 아이디 - * @discussion 사용자 ID는 앱 연결(signup)을 기준으로 발급됩니다.
- * 1. 최초 로그인했을 때 발급
- * 2. 자동연결을 off한 상태로 signup 호출에 성공했을 때 발급
- * 3. 연결해제(unlink) 이후 1,2번 작업을 다시 수행하면 다른 값으로 재발급 - */ -@property (readonly, nullable) NSString *ID; -/*! - * @property account - * @abstract 로그인한 카카오계정 정보. 이메일 등 - * @seealso KOUserMeAccount - */ -@property (readonly, nullable) KOUserMeAccount *account; -/*! - * @property nickname - * @abstract 사용자의 닉네임 - * @discussion properties에서 "nickname" 값을 가져옵니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 닉네임으로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSString *nickname; -/*! - * @property profileImageURL - * @abstract 원본 프로필 이미지 URL - * @discussion properties에 있는 "profile_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 프로필 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *profileImageURL; -/*! - * @property thumbnailImageURL - * @abstract 썸네일 이미지 URL - * @discussion properties에 있는 "thumbnail_image" 값을 이용하여 생성된 NSURL 인스턴스를 제공합니다.
- * 초기 값은 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 설정된 썸네일 이미지 URL로 저장되며 이후 해당 프로필 정보와 동기화되지 않습니다. - * 카카오톡이나 카카오스토리의 최신 프로필 정보를 가져오려면 talkProfileTaskWithCompletionHandler:, storyProfileTaskWithCompletionHandler: 를 이용해주세요. - * @seealso properties - */ -@property (readonly, nullable) NSURL *thumbnailImageURL; -/*! - * @property properties - * @abstract 앱 별로 제공되는 사용자 정보 데이터베이스 - * @discussion 사용자에 대해 추가 정보를 저장할 수 있도록 데이터베이스를 제공합니다.
- * 개발자사이트의 사용자 관리 > 앱 연동 설정에 따라 카카오톡 또는 카카오스토리에 있는 닉네임과 프로필 이미지 정보를 앱 연결 시점에 복사하여 초기값으로 제공되며 이후 해당 프로필 정보와 동기화되지 않습니다.
- * 1. nickname : 카카오톡 또는 카카오스토리에 설정된 닉네임
- * 2. profile_image : 프로필 이미지 URL 문자열
- * 3. thumbnail_image : 썸네일 사이즈의 프로필 이미지 URL 문자열 - */ -@property (readonly, nullable) NSDictionary *properties; -/*! - * @property forPartner - * @abstract 제휴를 통해 권한이 부여된 특정 앱에서 사용 - */ -@property (readonly, nullable) NSDictionary *forPartner; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)meWithDictionary:(NSDictionary *)dictionary; - -@end - - - -/*! - * @abstract KOUserAgeRange 연령대 정보 - * @constant KOUserAgeRangeNull 연령대 값이 없음 - * @constant KOUserAgeRangeType15 15세~19세 - * @constant KOUserAgeRangeType20 20세~29세 - * @constant KOUserAgeRangeType30 30세~39세 - * @constant KOUserAgeRangeType40 40세~49세 - * @constant KOUserAgeRangeType50 50세~59세 - * @constant KOUserAgeRangeType60 60세~69세 - * @constant KOUserAgeRangeType70 70세~79세 - * @constant KOUserAgeRangeType80 80세~89세 - * @constant KOUserAgeRangeType90 90세 이상 - */ -typedef NS_ENUM(NSUInteger, KOUserAgeRange) { - KOUserAgeRangeNull, - KOUserAgeRangeType15, - KOUserAgeRangeType20, - KOUserAgeRangeType30, - KOUserAgeRangeType40, - KOUserAgeRangeType50, - KOUserAgeRangeType60, - KOUserAgeRangeType70, - KOUserAgeRangeType80, - KOUserAgeRangeType90, -}; - -/*! - * @abstract KOUserGender 성별 정보 - * @constant KOUserGenderNull 성별 값이 없음 - * @constant KOUserGenderMale 남자 - * @constant KOUserGenderFemale 여자 - */ -typedef NS_ENUM(NSUInteger, KOUserGender) { - KOUserGenderNull, - KOUserGenderMale, - KOUserGenderFemale, -}; - -/*! - * @class KOUserMeAccount - * @abstract 카카오계정 정보를 나타내는 클래스 - * @discussion 사용자의 동의를 받지 않은 개인정보는 값이 반환되지 않을 수 있습니다. - * 동의를 받지 않아도 값의 존재여부는 has- 프로퍼티로 확인할 수 있습니다.
- * 값이 내려오지 않은 정보의 has- 프로퍼티가 true인 경우 사용자 동의가 필요한 상황임을 의미하며 KOSession의 updateScopes 메소드를 이용하여 동의를 받을 수 있습니다. 동의를 받은 후 user/me를 다시 호출하면 해당 값이 반환될 것입니다.
- * has- 프로퍼티가 false라면 현재 로그인한 계정에 해당 정보가 등록되지 않은 상태이며 사용자의 동의도 요청할 수 없습니다. - */ -@interface KOUserMeAccount : NSObject - -/*! - * @property email - * @abstract 카카오계정에 등록한 이메일 정보 - * @discussion 7.2.0 이상 카카오톡을 설치하고 전화번호 인증을 완료하면 이메일이 없는 카카오계정이 생성됩니다. 해당 카카오계정으로 간편로그인이나 전화번호 로그인을 할 경우 이메일 값이 nil로 반환됩니다.
- * 이메일이 있는 카카오계정이라도 사용자로부터 이메일 제공에 대한 동의를 받지 않으면 값이 nil로 반환됩니다. 등록된 이메일이 존재하지만 동의를 받지 않은 경우 hasEmail값이 true이고 사용자에게 이메일 제공에 대한 동의를 요청할 수 있습니다. - * @seealso hasEmail - * @seealso isEmailVerified - */ -@property (readonly, nullable) NSString *email; -/*! - * @property isEmailVerified - * @abstract 카카오계정에 이메일 등록 시 이메일 인증을 받았는지 여부 - * @seealso email - */ -@property (readonly) KOOptionalBoolean isEmailVerified; -/*! - * @property hasEmail - * @abstract 이메일 보유 여부 - * @discussion email이 nil이고 hasEmail이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 이메일 제공에 대한 동의를 받을 수 있습니다.
- * 이메일 제공동의 scope ID는 "account_email"입니다. - * @seealso email - */ -@property (readonly) KOOptionalBoolean hasEmail; - - - -/*! - * @property isKakaotalkUser - * @abstract 카카오톡 서비스 가입 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * 카카오톡 카카오계정 설정에 연결되어 있는 카카오계정은 true가 반환됩니다.
- * 사용자에게 동의를 받지 않았을 경우 null이 반환되며 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 카카오톡 가입 여부에 대한 동의를 받을 수 있습니다.
- * 카카오톡 서비스 가입 여부 scope ID는 "is_kakaotalk_user"입니다. - */ -@property (readonly) KOOptionalBoolean isKakaotalkUser; - - - -/*! - * @property phoneNumber - * @abstract 카카오톡에서 인증한 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다.
- * 카카오톡에 연결되어 있지 않은 카카오계정은 전화번호가 존재하지 않습니다. - * @seealso hasPhoneNumber - */ -@property (readonly, nullable) NSString *phoneNumber; -/*! - * @property hasPhoneNumber - * @abstract 전화번호 보유 여부 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 제휴되어 있지 않은 경우 null이 반환됩니다.
- * phoneNumber가 nil이고 hasPhoneNumber가 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 전화번호 제공에 대한 동의를 받을 수 있습니다.
- * 전화번호 제공동의 scope ID는 "phone_number"입니다. - * @seealso phoneNumber - */ -@property (readonly) KOOptionalBoolean hasPhoneNumber; - - - -/*! - * @property displayID - * @abstract 카카오계정의 대표 정보. 이메일 또는 전화번호 - * @discussion 제휴를 통해 권한이 부여된 특정 앱에서만 획득할 수 있습니다. 계정 상태에 이상이 생긴 경우 텍스트 일부가 마스킹 처리되어 반환됩니다. - * @seealso email - * @seealso phoneNumber - */ -@property (readonly, nullable) NSString *displayID; - - - -/*! - * @property ageRange - * @abstract 사용자의 연령대 정보 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasAgeRange - */ -@property (readonly) KOUserAgeRange ageRange; -/*! - * @property hasAgeRange - * @abstract 카카오계정의 연령대 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 연령대 제공에 대한 동의를 받을 수 있습니다.
- * 연령대 제공동의 scope ID는 "age_range"입니다. - * @seealso ageRange - */ -@property (readonly) KOOptionalBoolean hasAgeRange; -/*! - * @property birthday - * @abstract 사용자의 생일 - * @discussion 카카오계정에 등록된 사용자의 생일 정보를 기반으로 제공됩니다. (MMDD형식)
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasBirthday - */ -@property (readonly, nullable) NSString *birthday; -/*! - * @property hasBirthday - * @abstract 카카오계정의 생일 보유 여부 - * @discussion birthday가 nil이고 hasBirthday이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 생일 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "birthday"입니다. - * @seealso birthday - */ -@property (readonly) KOOptionalBoolean hasBirthday; -/*! - * @property gender - * @abstract 사용자 카카오계정의 성별 - * @discussion 카카오계정에 등록된 사용자의 성별 정보가 제공됩니다.
- * 카카오톡 더보기 > 설정 > 개인/보안 > 카카오계정 메뉴로 들어가거나 https://accounts.kakao.com 에 접속하여 정보를 등록할 수 있습니다. - * @seealso hasGender - */ -@property (readonly) KOUserGender gender; -/*! - * @property hasGender - * @abstract 카카오계정의 성별 보유 여부 - * @discussion gender가 nil이고 hasGender이 true이면 KOSession의 updateScopes 메소드를 이용하여 사용자로부터 성별 제공에 대한 동의를 받을 수 있습니다.
- * 생일 제공동의 scope ID는 "gender"입니다. - * @seealso gender - */ -@property (readonly) KOOptionalBoolean hasGender; - -/*! - * @method needsScopeAccountEmail - * @abstract 이메일을 가져오기 위한 사용자 동의 "account_email" 필요 여부 - * @seealso email - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAccountEmail; -/*! - * @method needsScopePhoneNumber - * @abstract 전화번호를 가져오기 위한 사용자 동의 "phone_number" 필요 여부 - * @seealso phoneNumber - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopePhoneNumber; -/*! - * @method needsScopeAgeRange - * @abstract 연령대 정보를 가져오기 위한 사용자 동의 "age_range" 필요 여부 - * @seealso ageRange - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeAgeRange; -/*! - * @method needsScopeBirthday - * @abstract 생일을 가져오기 위한 사용자 동의 "birthday" 필요 여부 - * @seealso birthday - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeBirthday; -/*! - * @method needsScopeGender - * @abstract 성별을 가져오기 위한 사용자 동의 "gender" 필요 여부 - * @seealso gender - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeGender; -/*! - * @method needsScopeIsKakaotalkUser - * @abstract 카카오톡 가입 여부를 가져오기 위한 사용자 동의 "is_kakaotalk_user" 필요 여부 - * @seealso isKakaotalkUser - * @seealso updateScopes:completionHandler: - */ -- (BOOL)needsScopeIsKakaotalkUser; - -- (nonnull NSDictionary *)dictionary; -+ (instancetype)accountWithDictionary:(NSDictionary *)dictionary; - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUtils.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUtils.h deleted file mode 100644 index 9ba8e48..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KOUtils.h +++ /dev/null @@ -1,37 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KOUtils - 카카오 SDK Util 클래스. - */ - -#import -#import - -@interface KOUtils : NSObject - -/* - @abstract 카카오링크 콜백 URL 정보를 얻는다. - */ -+ (NSString *)kakaoLinkCallbackURL DEPRECATED_ATTRIBUTE; - -/* - @abstract SDK 기본 헤더 정보를 얻는다. - */ -+ (NSString *)kaHeader; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoOpenSDK.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoOpenSDK.h deleted file mode 100644 index 857e34f..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoOpenSDK.h +++ /dev/null @@ -1,33 +0,0 @@ -/** - * Copyright 2015-2017 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import -#import -#import -#import -#import - -#import -#import -#import -#import -#import -#import -#import -#import - -#define KAKAO_SDK_IOS_VERSION_STRING @"1.8.2" diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessageObject.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessageObject.h deleted file mode 100644 index 16f8fb9..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessageObject.h +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessageObject.h - Push 전송 시 보낼 메시지 객체 - */ -#import "KakaoPushMessagePropertyForApns.h" -#import "KakaoPushMessagePropertyForGcm.h" - -/*! - @class KakaoPushMessageObject - @discussion Push 전송 시 보낼 메시지 객체 - */ -@interface KakaoPushMessageObject : NSObject - -/*! - * @property forApns - * @abstract iOS 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForApns *forApns; - -/*! - * @property forGcm - * @abstract Android 기기에 보낼 메시지 - */ -@property(nonatomic, readonly) KakaoPushMessagePropertyForGcm *forGcm; - -- (id)initWithApnsProperty:(KakaoPushMessagePropertyForApns *)forApns - gcmProperty:(KakaoPushMessagePropertyForGcm *)forGcm; - -- (NSDictionary *)asDictionary; - -@end - diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessagePropertyForApns.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessagePropertyForApns.h deleted file mode 100644 index 95992f6..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessagePropertyForApns.h +++ /dev/null @@ -1,119 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForApns.h - Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForApns - @discussion Push 전송 시 보낼 메시지 객체 (iOS 파트) - */ -@interface KakaoPushMessagePropertyForApns : NSObject - -/*! - * @property message - * @abstract 알림 센터에 표시할 메시지. aps의 alert에 해당 됨. NSString 혹은 NSDictionary가 들어감. 참조: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html - */ -@property(nonatomic, readonly) NSObject *message; - -/*! - * @property topic - * @abstract VoIP(Voice over Internet Protocol)를 사용할 경우에 "voip"로 설정 - */ -@property(nonatomic, copy, nullable) NSString *topic; - -/*! - * @property mutableContent - * @abstract 기기에 보여지기 전, payload를 변경하고자 할 때 사용 - */ -@property(nonatomic, assign) BOOL mutableContent; - -/*! - * @property expiration - * @abstract 푸시 수신이 불가능한 경우, 해당 기간(단위: 초)동안 재시도 함 - */ -@property(nonatomic, assign) NSUInteger expiration; - -/*! - * @property collapse - * @abstract 푸시 메시지 구분자. 같은 collapse 을 가지는 푸시가 여러개 쌓여있다면 하나의 푸시로 단말에게 전송됨 - */ -@property(nonatomic, copy, nullable) NSString *collapse; - -/*! - * @property badgeCount - * @abstract 앱 배치에 표시할 숫자. 음수일 경우 무시됨, 기본 값 -1 - */ -@property(nonatomic, assign) NSInteger badgeCount; - -/*! - * @property sound - * @abstract 푸시 수신 시 재생할 알림음. "default"를 입력하거나 앱에 해당 알림음 파일이 없으면 기본 알림음 재생됨 - */ -@property(nonatomic, copy, nullable) NSString *sound; - -/*! - * @property pushAlert - * @abstract false(NO)일 경우 음소거, 알림센터에 뜨지 않는 상태로 Push 전송. 푸시 음소거 및 알림센터에 띄우지는 않되, badge 수는 바꾸고 싶을 때 사용. 기본 값 true(YES) - */ -@property(nonatomic, assign) BOOL pushAlert; - -/*! - * @property contentAvailable - * @abstract 백그라운드 업데이트 알림(Silent Notification)을 사용하고 싶을 때 설정 - */ -@property(nonatomic, assign) BOOL contentAvailable; - -/*! - * @property category - * @abstract 알림의 유형을 나타내는 문자열. aps의 category-identifier - */ -@property(nonatomic, copy, nullable) NSString *category; - -/*! - * @property customField - * @abstract 푸시 알림을 통해 앱 실행 시 같이 넘길 파라미터들 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - * @property returnUrl - * @abstract 푸시 알림의 전송 실패("BadDeviceToken", "Unregistered", "DeviceTokenNotForTopic")에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageString:(NSString *)message - customField:(nullable NSDictionary *)customField; - -- (id)initWithBadgeCount:(NSInteger)badgeCount - sound:(nullable NSString *)sound - pushAlert:(BOOL)pushAlert - messageDictionary:(NSDictionary *)message - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessagePropertyForGcm.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessagePropertyForGcm.h deleted file mode 100644 index dc2cc32..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/KakaoPushMessagePropertyForGcm.h +++ /dev/null @@ -1,85 +0,0 @@ -/** - * Copyright 2015-2018 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/*! - @header KakaoPushMessagePropertyForGcm.h - Push 전송 시 보낼 메시지 객체 (Android 파트) - */ - -NS_ASSUME_NONNULL_BEGIN - -/*! - @class KakaoPushMessagePropertyForGcm - @abstract Push 전송 시 보낼 메시지 객체 (Android 파트) - */ -@interface KakaoPushMessagePropertyForGcm : NSObject - -/*! - @property collapse - @abstract 푸시 메시지 구분자. 같은 값을 가지는 푸시 알림이 여러 개일 때 마지막 하나만 사용자 기기로 전송 - */ -@property(nonatomic, readonly) NSString *collapse; - -/*! - @property timeToLive - @abstract GCM에 저장될 미전송메시지 보관주기 (단위:초), 0 또는 음수를 입력할 경우 무시됨, 기본값 4주 - */ -@property(nonatomic, assign) NSInteger timeToLive; - -/*! - @property dryRun - @abstract 테스트를 위해 사용. 실제 단말에 전송되지 않는다 - */ -@property(nonatomic, assign) BOOL dryRun; - -/*! - @property priority - @abstract 단말이 도즈모드 상태에서도 푸시를 받을 수 있도록 한다. "high" 또는 "normal", 서버 기본값 "normal" - */ -@property(nonatomic, copy) NSString *priority; - -/*! - @property customField - @abstract 메시지 외 앱에 부가적인 정보를 전달하고자 할 때 사용. APNS와 다르게 푸시 알림 한 건당 custom_field 전체 길이가 4KB까지 가능 - */ -@property(nonatomic, copy, nullable) NSDictionary *customField; - -/*! - @property notification - @abstract 사용자에게 표시되는 사전 정의된 알림 페이로드의 키-값 쌍을 지정. 사전 정의된 키는 https://firebase.google.com/docs/cloud-messaging/http-server-ref '표 2a/2b/2c' 참고 - */ -@property(nonatomic, copy) NSDictionary *notification; - -/*! - @property returnUrl - @abstract 푸시 알림의 전송 실패에 대한 피드백 처리가 필요할 때 사용 - */ -@property(nonatomic, copy, nullable) NSString *returnUrl; - -- (id)initWithCollapse:(nullable NSString *)collapse - delayWhileIdle:(BOOL)delayWhileIdle - returnUrl:(nullable NSString *)returnUrl - customField:(nullable NSDictionary *)customField; - -- (NSDictionary *)asDictionary; - - - -@property(nonatomic, assign) BOOL delayWhileIdle DEPRECATED_MSG_ATTRIBUTE("The value of this property will be ignored."); - -@end - -NS_ASSUME_NONNULL_END diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/NSDictionary+SafeValue.h b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/NSDictionary+SafeValue.h deleted file mode 100644 index 551ac80..0000000 --- a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Headers/NSDictionary+SafeValue.h +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Copyright 2015-2016 Kakao Corp. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#import -#import "KOSession.h" - -@interface NSDictionary (SafeValue) - -- (id)safeValueForKey:(NSString *)key; -- (id)safeObjectForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key; -- (NSNumber *)safeNumberForKey:(NSString *)key floatingPoint:(BOOL)floatingPoint; -- (NSDictionary *)safeValueDictionary; -- (KOOptionalBoolean)optionalBooleanForKey:(NSString *)key; - -@end diff --git a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Resources/KakaoOpenSDK b/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Resources/KakaoOpenSDK deleted file mode 100644 index 44d5329..0000000 Binary files a/ios/Frameworks/KakaoOpenSDK.framework/Versions/Current/Resources/KakaoOpenSDK and /dev/null differ diff --git a/ios/Frameworks/kakao-ios-sdk-1.8.2 b/ios/Frameworks/kakao-ios-sdk-1.8.2 deleted file mode 100644 index e69de29..0000000 diff --git a/ios/RNKakaoLogins.podspec b/ios/RNKakaoLogins.podspec deleted file mode 100644 index 471ce46..0000000 --- a/ios/RNKakaoLogins.podspec +++ /dev/null @@ -1,24 +0,0 @@ - -Pod::Spec.new do |s| - s.name = "RNKakaoLogins" - s.version = "1.0.0" - s.summary = "RNKakaoLogins" - s.description = <<-DESC - RNKakaoLogins - DESC - s.homepage = "https://github.com/react-native-seoul/react-native-kakao-logins" - s.license = "MIT" - # s.license = { :type => "MIT", :file => "FILE_LICENSE" } - s.author = { "author" => "author@domain.cn" } - s.platform = :ios, "9.0" - s.source = { :git => "https://github.com/react-native-seoul/react-native-kakao-logins.git", :tag => "master" } - s.source_files = "RNKakaoLogins/**/*.{h,m}" - s.requires_arc = true - - - s.dependency "React" - #s.dependency "others" - -end - - diff --git a/ios/RNKakaoLogins.xcodeproj/project.pbxproj b/ios/RNKakaoLogins.xcodeproj/project.pbxproj index d3d3c8f..ccc23ba 100644 --- a/ios/RNKakaoLogins.xcodeproj/project.pbxproj +++ b/ios/RNKakaoLogins.xcodeproj/project.pbxproj @@ -7,7 +7,6 @@ objects = { /* Begin PBXBuildFile section */ - 0E7AC4E120C65BC900746EC1 /* KakaoOpenSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0E7AC4E020C65BC900746EC1 /* KakaoOpenSDK.framework */; }; B3E7B58A1CC2AC0600A0062D /* RNKakaoLogins.m in Sources */ = {isa = PBXBuildFile; fileRef = B3E7B5891CC2AC0600A0062D /* RNKakaoLogins.m */; }; /* End PBXBuildFile section */ @@ -24,7 +23,6 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 0E7AC4E020C65BC900746EC1 /* KakaoOpenSDK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = KakaoOpenSDK.framework; sourceTree = ""; }; 134814201AA4EA6300B7C361 /* libRNKakaoLogins.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRNKakaoLogins.a; sourceTree = BUILT_PRODUCTS_DIR; }; B3E7B5881CC2AC0600A0062D /* RNKakaoLogins.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RNKakaoLogins.h; sourceTree = ""; }; B3E7B5891CC2AC0600A0062D /* RNKakaoLogins.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RNKakaoLogins.m; sourceTree = ""; }; @@ -35,37 +33,36 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 0E7AC4E120C65BC900746EC1 /* KakaoOpenSDK.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 0E7AC4DF20C65BB700746EC1 /* Frameworks */ = { + 134814211AA4EA7D00B7C361 /* Products */ = { isa = PBXGroup; children = ( - 0E7AC4E020C65BC900746EC1 /* KakaoOpenSDK.framework */, + 134814201AA4EA6300B7C361 /* libRNKakaoLogins.a */, ); - path = Frameworks; + name = Products; sourceTree = ""; }; - 134814211AA4EA7D00B7C361 /* Products */ = { + 58B511D21A9E6C8500147676 = { isa = PBXGroup; children = ( - 134814201AA4EA6300B7C361 /* libRNKakaoLogins.a */, + D7EC4CC7230E69A800453A35 /* New Group */, + 134814211AA4EA7D00B7C361 /* Products */, ); - name = Products; sourceTree = ""; }; - 58B511D21A9E6C8500147676 = { + D7EC4CC7230E69A800453A35 /* New Group */ = { isa = PBXGroup; children = ( - 0E7AC4DF20C65BB700746EC1 /* Frameworks */, B3E7B5881CC2AC0600A0062D /* RNKakaoLogins.h */, B3E7B5891CC2AC0600A0062D /* RNKakaoLogins.m */, - 134814211AA4EA7D00B7C361 /* Products */, ); + name = "New Group"; + path = RNKakaoLogins; sourceTree = ""; }; /* End PBXGroup section */ @@ -107,6 +104,7 @@ developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( + English, en, ); mainGroup = 58B511D21A9E6C8500147676; @@ -168,7 +166,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -205,7 +203,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; VALIDATE_PRODUCT = YES; diff --git a/ios/RNKakaoLogins.xcworkspace/contents.xcworkspacedata b/ios/RNKakaoLogins.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 7504fc1..0000000 --- a/ios/RNKakaoLogins.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,9 +0,0 @@ -// !$*UTF8*$! - - - - - - \ No newline at end of file diff --git a/ios/RNKakaoLogins.h b/ios/RNKakaoLogins/RNKakaoLogins.h similarity index 100% rename from ios/RNKakaoLogins.h rename to ios/RNKakaoLogins/RNKakaoLogins.h diff --git a/ios/RNKakaoLogins.m b/ios/RNKakaoLogins/RNKakaoLogins.m similarity index 87% rename from ios/RNKakaoLogins.m rename to ios/RNKakaoLogins/RNKakaoLogins.m index dfefcf4..6793a65 100644 --- a/ios/RNKakaoLogins.m +++ b/ios/RNKakaoLogins/RNKakaoLogins.m @@ -36,8 +36,16 @@ - (NSString *) quotedStringOrNull: (NSString *)originalString } RCT_EXPORT_METHOD(logout:(RCTResponseSenderBlock)callback) { - [[KOSession sharedSession] close]; - callback(@[[NSNull null], @"logged out"]); + KOSession *session = [KOSession sharedSession]; + + [session logoutAndCloseWithCompletionHandler:^(BOOL success, NSError *error) { + if(success){ + callback(@[[NSNull null], [NSNull null]]); + } else { + RCTLogInfo(@"Error=%@", error); + callback(@[@"Logout failed.\n", [NSNull null]]); + } + }]; } RCT_EXPORT_METHOD(getProfile:(RCTResponseSenderBlock)callback) { diff --git a/react-native-kakao-logins.podspec b/react-native-kakao-logins.podspec new file mode 100644 index 0000000..97beb16 --- /dev/null +++ b/react-native-kakao-logins.podspec @@ -0,0 +1,22 @@ +require 'json' + +package = JSON.parse(File.read(File.join(__dir__, 'package.json'))) + +Pod::Spec.new do |s| + s.name = "react-native-kakao-logins" + s.version = package['version'] + s.summary = "Kakao Login Module for React Native (iOS and Android)" + + s.authors = { "author" => "dooboolab@gmail.com" } + s.homepage = "https://github.com/react-native-seoul/react-native-kakao-logins" + s.license = package['license'] + s.platform = :ios, "9.0" + + s.source = { :git => "https://github.com/react-native-seoul/react-native-kakao-logins.git", :tag => "#{s.version}" } + s.source_files = "ios/**/*.{h,m}" + + s.static_framework = true + + s.dependency 'React' + s.dependency 'KakaoOpenSDK', '~> 1.16.0' +end